@panphora/hyper-cms 0.11.1 → 0.11.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/hypercms.min.js +44 -43
- package/package.json +3 -3
- package/src/lib/content-dom.js +4 -2
package/dist/hypercms.min.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
var hypercms=(()=>{var Qo=Object.defineProperty;var _c=Object.getOwnPropertyDescriptor;var Cc=Object.getOwnPropertyNames;var Oc=Object.prototype.hasOwnProperty;var ei=(e,t)=>{for(var n in t)Qo(e,n,{get:t[n],enumerable:!0})},Nc=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cc(t))!Oc.call(e,o)&&o!==n&&Qo(e,o,{get:()=>t[o],enumerable:!(r=_c(t,o))||r.enumerable});return e};var Rc=e=>Nc(Qo({},"__esModule",{value:!0}),e);var Wh={};ei(Wh,{cms:()=>zh,default:()=>Vh});function St(e){let t=0,n=null,r=-1;for(let o=0;o<e.length;o++){let i=e[o];i==="\\"?o++:n?i===n&&(n=null):i==='"'||i==="'"?n=i:i==="["||i==="("?t++:i==="]"||i===")"?t>0&&t--:i==="@"&&t===0&&(r=o)}return r}function oo(e){let t=St(e);return t===-1?{selector:e,prop:null}:{selector:e.slice(0,t),prop:e.slice(t+1)||null}}function io(e,t){if(typeof e=="string"){let n=t&&t.defaultView,r=n&&n.DOMParser||globalThis.DOMParser;return new r().parseFromString(e,"text/html")}if(e&&e.nodeType===9)return e;throw new TypeError("expected an HTML string or a Document")}function ti(e){let t=new Map;return(n,r)=>{if(typeof r!="string")return io(r,e);let o=t.get(n);if(o&&o.text===r)return o.doc;let i=io(r,e);return t.set(n,{text:r,doc:i}),i}}function As(e,t){let n=t.doctype;if(!n)return!1;let r=e.doctype;if(r&&r.name===n.name&&r.publicId===n.publicId&&r.systemId===n.systemId)return!1;let o=e.implementation.createDocumentType(n.name,n.publicId,n.systemId);return r?e.replaceChild(o,r):e.insertBefore(o,e.documentElement),!0}function ni(e,t=[]){if(typeof e!="function")return()=>!1;let n=new WeakMap,r=new Set(t);return o=>{if(!o||o.nodeType!==1)return!1;let i=n.get(o);if(i!==void 0)return i;let s=[],l=o,a=!1;for(;l&&l.nodeType===1;){let h=n.get(l);if(h!==void 0){a=h;break}if(s.push(l),e(l,r.has(l))){a=!0;break}if(r.has(l))break;l=l.parentElement}for(let h of s)n.set(h,a);return a}}function ri(e,t){let n=new WeakMap;if(!e||!t||typeof t!="object"||Array.isArray(t))return n;let r=t["~"],o=typeof r=="string"?r.split(",").map(Number):null,i=o&&typeof t["^"]=="string"?t["^"].split(","):null,s=b=>Number.isInteger(b)&&b>=0,l=0,a=!1,h=b=>{let f=b;for(;f>0;){let u=o[l++];if(l>o.length||!s(u))return!1;f+=u-1}return!0},d=(b,f)=>{if(a)return;if(o){let p=l++,v=o[p];if(p>=o.length||!s(v)){a=!0;return}let A=!i||i[p]===b.tagName.toLowerCase();if(!A||v!==b.children.length){let M=A&&t[f];typeof M=="string"&&M&&n.set(b,M),h(v)||(a=!0);return}}let u=t[f];typeof u=="string"&&u&&n.set(b,u);let m=b.children;for(let p=0;p<m.length;p++)d(m[p],f===""?String(p):`${f}.${p}`)};return d(e,""),n}function Ss(e){return t=>{for(let n of e){let r=n(t);if(typeof r=="string"&&r!=="")return r}return null}}var In=Ss([e=>e.getAttribute("data-id"),e=>e.getAttribute("id")]);function so(e,t,n,r=null){let o=new Map,i=new Set,s=l=>{if(n(l))return;let a=t(l);a&&(o.has(a)?i.add(a):o.set(a,l))};if(r){let l=a=>{for(let h of a.querySelectorAll(r))s(h);for(let h of a.querySelectorAll("template"))h.content&&l(h.content)};s(e),l(e.tagName==="TEMPLATE"&&e.content?e.content:e)}else{let l=a=>{s(a);let h=a.tagName==="TEMPLATE"&&a.content?a.content.children:a.children;for(let d=0;d<h.length;d++)l(h[d])};l(e)}for(let l of i)o.delete(l),l.startsWith("merge:")&&console.warn(`[hyper-morph] merge disabled for duplicate identity "${l.slice(l.indexOf(":",6)+1)}"`);return o}var Lc=new Set(["href","src","name","type","role"]),Es=new Set(["SCRIPT","STYLE","TEXTAREA","TEMPLATE","IFRAME","OBJECT","CANVAS","VIDEO","AUDIO","svg","SVG"]);function Vn(e,t=5381){let n=t;for(let r=0;r<e.length;r++)n=(n<<5)+n^e.charCodeAt(r);return n>>>0}function Ts(e){return e.replace(/\s+/g," ")}function _s({ignored:e=()=>!1,ignoreAttribute:t=()=>!1}={}){let n=new WeakMap,r=new WeakMap;function o(f){let u=f.attributes,m=u.length;if(m===0)return{all:"",sig:f.tagName+"|"};let p=[],v="",A=[];for(let M=0;M<m;M++){let L=u[M],H=L.name;t(f,H)||p.push(H+"="+L.value),H==="class"?v=L.value.indexOf(" ")<0?L.value:L.value.split(/\s+/).filter(Boolean).sort().join(" "):Lc.has(H)&&A.push(H+"="+L.value)}return p.length>1&&p.sort(),A.length>1&&A.sort(),{all:p.join(""),sig:f.tagName+"|"+v+(A.length?"|"+A.join("|"):"")}}function i(f){return f.nodeType===1&&f.tagName==="TEMPLATE"&&f.content?f.content.childNodes:f.childNodes}function s(f){let u=n.get(f);if(u)return u;if(f.nodeType===3)u={hash:"T"+Vn(f.nodeValue),hint:Ts(f.nodeValue).slice(0,64),sig:null,tok:null};else if(f.nodeType===8)u={hash:"C"+Vn(f.nodeValue),hint:"",sig:null,tok:null};else if(f.nodeType===1){let m=o(f),p=Vn(f.tagName+""+m.all),v="";for(let A of a(f))if(A.nodeType===1){let M=s(A);p=Vn(M.hash,p),v.length<64&&(v+=" "+M.hint)}else p=Vn(h(A),p),A.kind==="text"&&v.length<64&&(v+=A.value.slice(0,64));u={hash:"E"+p,hint:Ts(v).trim().slice(0,64),sig:m.sig,tok:null}}else u={hash:"N"+f.nodeType,hint:"",sig:null,tok:null};return n.set(f,u),u}function l(f){if(!f.tok){f.tok=new Set;for(let u of f.hint.toLowerCase().split(/[^\p{L}\p{N}]+/u))u&&f.tok.add(u)}return f.tok}function a(f){let u=r.get(f);if(u)return u;u=[];let m=null,p=()=>{m&&(m.value=m.nodes.map(v=>v.nodeValue).join(""),u.push(m),m=null)};for(let v of i(f)){if(v.nodeType===3){m||(m={kind:"text",nodes:[],value:"",parent:f,hash:void 0}),m.nodes.push(v);continue}p(),v.nodeType===8?u.push({kind:"comment",nodes:[v],value:v.nodeValue,parent:f,hash:void 0}):v.nodeType===1&&!e(v)&&u.push(v)}return p(),r.set(f,u),u}function h(f){return f.nodeType===1?s(f).hash:(f.hash===void 0&&(f.hash=(f.kind==="text"?"T":"C")+Vn(f.value)),f.hash)}function d(f,u){let m=l(s(f)),p=l(s(u));if(m.size===0&&p.size===0)return{coef:1,share:1};if(m.size===0||p.size===0)return null;let v=0;for(let A of m)p.has(A)&&v++;return{coef:v/Math.min(m.size,p.size),share:v/Math.max(m.size,p.size)}}function b(f,u){let m=d(f,u);return!!m&&m.coef>=.5}return{meta:s,unitsOf:a,unitHash:h,similar:b,score:d,childrenOf:i}}var Cs=16,Ic=2e3,jc=3,Dc={align:0};function oi(e,t,n){let{meta:r,unitsOf:o,unitHash:i,similar:s,score:l}=n.analyzer,a=n.baseId||(()=>null),h=n.sideId||(()=>null),d=new Map,b=new Map,f=new Set,u=new Map,m=new Set,p=new Set,v=new Set,A=[],M=[],L=[],H=[],B=Ic,te=new Map,re=new Map,K=(k,g)=>{d.set(k,g),b.set(g,k)},W=k=>!!k&&k.nodeType===1,he=(k,g)=>{let y=u.get(k);return!!y&&y.has(g)},V=k=>Es.has(k.tagName),xe=(k,g)=>{let y=a(k);if(!y)return!0;let O=h(g);return!O||y===O},We=globalThis.__hyperMorphProfile,at=We?performance.now():0;We&&(r(e),r(t),We.meta=(We.meta||0)+(performance.now()-at),at=performance.now()),K(e,t);for(let[k,g]of n.baseIndex){let y=n.sideIndex.get(k);y&&y.tagName===g.tagName&&!d.has(g)&&!b.has(y)&&K(g,y)}H.push([e,t]);for(let[k,g]of d)W(k)&&k!==e&&H.push([k,g]);return dt(),Nt(),We&&(We.align=(We.align||0)+(performance.now()-at)),{map:d,reverse:b,moved:m,identical:p,pairIdenticalChildren:G,weak:f,unpair:xt,rematch:Nt,insertedByHash:_e};function Nt(){ut(),dt();for(let k=0;k<L.length;){let g=L.length;nt(k,g),k=g,dt(),ut(),dt()}}function xt(k){let g=d.get(k);if(!g)return;u.has(k)||u.set(k,new Set),u.get(k).add(g);let y=(_,E)=>{d.delete(_),b.delete(E),m.delete(_),p.delete(_),f.delete(_),v.delete(_)},O=(_,E)=>{for(let I of o(_)){let N=d.get(I);!N||!(W(N)?E.contains(N):E.contains(N.nodes[0]))||(y(I,N),W(I)&&O(I,N))}};y(k,g),W(k)&&O(k,g),A.push(k),M.push(g)}function _e(){let k=new Map;for(let g of new Set(M)){if(b.has(g))continue;let y=r(g).hash;k.has(y)||k.set(y,[]),k.get(y).push(g)}return k}function dt(){for(;H.length;){let[k,g]=H.shift();v.has(k)||p.has(k)||Rt(k,g)}}function Ze(k,g){if(!V(k))for(let y of o(k))W(y)&&(g.push(y),Ze(y,g))}function Rt(k,g){v.add(k);let y=o(k),O=o(g);Dc.align+=y.length+O.length,te=new Map,re=new Map;for(let j=0;j<y.length;j++)te.set(y[j],j);for(let j=0;j<O.length;j++)re.set(O[j],j);if(k.tagName==="HTML")for(let j of["HEAD","BODY"]){let J=y.find(ce=>W(ce)&&ce.tagName===j),$=O.find(ce=>W(ce)&&ce.tagName===j);J&&$&&!d.has(J)&&!b.has($)&&K(J,$)}for(let j=0;j<y.length&&j<O.length;j++){let J=y[j],$=O[j];d.has(J)||b.has($)||(W(J)?W($)&&J.tagName===$.tagName&&J.isEqualNode($)&&C(J,$):!W($)&&J.kind===$.kind&&J.value===$.value&&C(J,$))}et(y,O);let _=y.filter(j=>!d.has(j)),E=O.filter(j=>!b.has(j));_.length&&E.length&&(ct(_,E),ye(_,E),se(_,E,y,O),Ve(y,O));let I=!1,N=!1;for(let j of y){if(!d.has(j)){W(j)&&(A.push(j),Ze(j,A),I=!0);continue}W(j)&&!p.has(j)&&H.push([j,d.get(j)])}for(let j of O)!b.has(j)&&W(j)&&(M.push(j),Ze(j,M),N=!0);I&&N&&L.push([k,g])}function nt(k,g){for(let y=k;y<g;y++){let[O,_]=L[y],E=o(O),I=o(_),N=new Map,j=new Map,J=null;for(let $ of E)W($)&&(d.has($)?J=$:(N.has(J)||N.set(J,[]),N.get(J).push($)));J=null;for(let $ of I)W($)&&(b.has($)?J=b.get($):(j.has(J)||j.set(J,[]),j.get(J).push($)));for(let[$,ce]of N){let ge=j.get($);if(!(!ge||ce.length!==ge.length)&&ce.every((ht,ft)=>ge[ft].tagName===ht.tagName&&xe(ht,ge[ft])&&!he(ht,ge[ft])))for(let ht=0;ht<ce.length;ht++)Qe(ce[ht],ge[ht])}}}function Qe(k,g){K(k,g),f.add(k),H.push([k,g]),dt()}function ct(k,g){let y=Wn(k,i),O=Wn(g,i),_=new Map;for(let E of g){let I=i(E);O.get(I)===1&&_.set(I,E)}for(let E of k){if(d.has(E))continue;let I=i(E);if(y.get(I)!==1)continue;let N=_.get(I);N&&!b.has(N)&&C(E,N)}}function C(k,g){K(k,g),p.add(k),W(k)&&v.add(k)}function G(k){let g=d.get(k);if(!g||!W(k))return;let y=o(k),O=o(g);for(let _=0;_<y.length&&_<O.length;_++)d.has(y[_])||C(y[_],O[_])}function ye(k,g){let y=I=>W(I)&&!V(I)?r(I).sig+""+r(I).hint:null,O=Wn(k,y),_=Wn(g,y),E=new Map;for(let I of g){let N=y(I);N!=null&&_.get(N)===1&&E.set(N,I)}for(let I of k){if(d.has(I))continue;let N=y(I);if(N==null||O.get(N)!==1)continue;let j=E.get(N);j&&!b.has(j)&&xe(I,j)&&K(I,j)}}function se(k,g,y,O){let _=new Map;for(let I of g){if(!W(I)||b.has(I)||V(I))continue;let N=r(I).sig;_.has(N)||_.set(N,[]),_.get(N).push({el:I,index:re.get(I)})}let E=[];for(let I of k){if(d.has(I)||!W(I)||V(I))continue;let N=_.get(r(I).sig);if(!N||!N.length)continue;let j=te.get(I),J=N.filter($=>!b.has($.el)).map($=>({c:$,d:Math.abs($.index-j)}));J.sort(($,ce)=>$.d-ce.d),J.length>Cs&&(J=J.slice(0,Cs));for(let{c:$,d:ce}of J){if(!xe(I,$.el))continue;let ge=l(I,$.el);ge&&ge.coef>=.5&&E.push({b:I,s:$.el,coef:ge.coef,share:ge.share,d:ce,bi:j})}}E.sort((I,N)=>N.coef-I.coef||N.share-I.share||I.d-N.d||I.bi-N.bi);for(let I of E)!d.has(I.b)&&!b.has(I.s)&&K(I.b,I.s)}function Ce(k,g){return W(k)!==W(g)?!1:W(k)?k.tagName!==g.tagName||!xe(k,g)?!1:V(k)||r(k).hint===""||r(g).hint===""?!0:s(k,g):k.kind===g.kind}function rt(k,g){let y=(_,E)=>{let I=E===null?-1:_===g?re.get(E):te.get(E),N=_[I+1];return N&&!W(N)?N:null},O=null;for(let _ of k){if(W(_)){O=_;continue}if(d.has(_))continue;let E=O===null?null:d.get(O);if(O!==null&&!E)continue;let I=y(g,E);I&&!b.has(I)&&I.kind===_.kind&&K(_,I)}}function Ve(k,g){rt(k,g);let y=Ke(k,g),O=(E,I)=>W(E)&&r(E).hint!==""&&r(I).hint===""&&!!I.querySelector("br")&&!y(E,I),_=0;for(let E of k){if(d.has(E)){let N=re.get(d.get(E));N!==void 0&&N>=_&&(_=N+1);continue}let I=0;for(let N=_;N<g.length&&I<jc;N++){let j=g[N];if(!b.has(j)&&(I++,Ce(E,j)&&!he(E,j)&&!O(E,j))){K(E,j),W(E)&&(r(E).hint===""||r(j).hint==="")&&f.add(E),_=N+1;break}}}et(k,g)}function Ke(k,g){let y=(O,_,E)=>{for(let I=_-1;I>=0;I--)if(W(O[I])&&E(O[I]))return O[I];return null};return(O,_)=>{let E=te.get(O),I=re.get(_);if(E===I)return!0;let N=y(k,E,J=>d.has(J)),j=y(g,I,J=>b.has(J));return N?d.get(N)===j:!j}}function et(k,g){let y=k.filter(N=>W(N)&&!d.has(N)),O=g.filter(N=>W(N)&&!b.has(N));if(!y.length||!O.length)return;let _=Wn(y,N=>N.tagName),E=Wn(O,N=>N.tagName),I=Ke(k,g);for(let N of y){let j=N.tagName;if(_.get(j)!==1||E.get(j)!==1)continue;let J=O.find($=>$.tagName===j);J&&!b.has(J)&&I(N,J)&&xe(N,J)&&!he(N,J)&&(K(N,J),f.add(N))}}function ut(){let k=new Map;for(let N of f)if(W(N)&&W(d.get(N))){let j=r(N).hash;k.has(j)||k.set(j,[]),k.get(j).push(N)}if(k.size)for(let N of M){if(b.has(N)||!W(N))continue;let j=k.get(r(N).hash),J=j&&j.find($=>f.has($)&&!he($,N)&&xe($,N));J&&(xt(J),C(J,N),m.add(J))}let g=new Map,y=new Map,O=new Map;for(let N of f){let j=d.get(N);W(N)&&W(j)&&O.set(j,N)}let _=(N,j)=>{if(!b.has(N))return!0;let J=O.get(N);return J===b.get(N)&&J!==j&&!J.contains(j)},E=N=>{if(b.has(N)){let j=O.get(N);O.delete(N),xt(j)}};for(let N of[...M,...O.keys()]){if(b.has(N)&&!O.has(N))continue;let j=r(N).hash;if(g.has(j)||g.set(j,[]),g.get(j).push(N),V(N))continue;let J=r(N).sig;y.has(J)||y.set(J,[]),y.get(J).push(N)}let I=new Set;for(let N of f){let j=d.get(N);!W(N)||!W(j)||V(N)||r(N).hint===""||r(j).hint===""||s(N,j)||I.add(N)}for(let N of[...A,...I]){let j=d.get(N);if(j&&!(f.has(N)&&I.has(N)))continue;let J=ft=>{j&&xt(N),E(ft)},$=g.get(r(N).hash);if($){let ft=$.find(ue=>ue!==j&&_(ue,N)&&!he(N,ue));if(ft){J(ft),C(N,ft),m.add(N);continue}}if(V(N)||B<=0)continue;let ce=y.get(r(N).sig);if(!ce)continue;let ge=null,ht=0;for(let ft of ce)if(!(ft===j||!_(ft,N)||!xe(N,ft)||he(N,ft))&&(B--<=0||s(N,ft)&&(ht++,ge=ft,ht>1)))break;ht===1&&(J(ge),K(N,ge),m.add(N),H.push([N,ge]))}}}function Wn(e,t){let n=new Map;for(let r of e){let o=t(r);o!=null&&n.set(o,(n.get(o)||0)+1)}return n}var Pc={diff:0},Os=typeof Intl<"u"&&typeof Intl.Segmenter=="function"?new Intl.Segmenter(void 0,{granularity:"word"}):null,Fc=/[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Thai}\p{Script=Lao}\p{Script=Khmer}\p{Script=Myanmar}]/u,qc=/[\p{L}\p{M}\p{N}_'’]+|\s+|[\s\S]/gu,Bc=/\P{M}\p{M}*/gu;function ci(e){if(e==="")return[];if(Os){let n=[];for(let r of Os.segment(e))n.push(r.segment);return n}let t=[];for(let n of e.match(qc))if(Fc.test(n))for(let r of n.match(Bc))t.push(r);else t.push(n);return t}var Hc=/^[ ]+$/,$c=e=>Hc.test(e)?" ".repeat(e.length):e,Sr=e=>typeof e.k=="string"&&/^\s+$/.test(e.k),it="",Ns=e=>e.every(t=>Sr(t)||t.k===it),Uc=/^[\x00-\x7f\u00A0]*$/,zc=/[A-Za-z0-9_']+|[ \u00A0]+|\s|./g;function Vc(e){return e===""?[]:e.match(zc)}function jn(e,t=!1){return(t?Vc(e):ci(e)).map(n=>({k:$c(n),raw:n,len:n.length}))}var lo=(...e)=>e.every(t=>Uc.test(t));function ii(e,t,n){let r=e.length,o=t.length,i=Math.min(r+o,n),s=i+1,l=new Int32Array(2*i+3),a=[],h=r===0&&o===0;for(let u=0;u<=i&&!h;u++){a.push(l.slice(s-u,s+u+1));for(let m=-u;m<=u;m+=2){let p;m===-u||m!==u&&l[s+m-1]<l[s+m+1]?p=l[s+m+1]:p=l[s+m-1]+1;let v=p-m,A=p;for(;p<r&&v<o&&e[p].k===t[v].k;)p++,v++;if(Pc.diff+=1+p-A,l[s+m]=p,p>=r&&v>=o){h=!0;break}}}if(!h)return null;let d=[],b=r,f=o;for(let u=a.length-1;u>0;u--){let m=a[u],p=b-f,v=p+u,A=p===-u||p!==u&&m[v-1]<m[v+1]?p+1:p-1,M=m[A+u],L=M-A;for(;b>M&&f>L;)d.push([0,b-1,f-1]),b--,f--;b===M?(d.push([1,b,f-1]),f--):(d.push([-1,b-1,f]),b--)}for(;b>0&&f>0;)d.push([0,b-1,f-1]),b--,f--;return d.reverse(),d}function Wc(e,t,n){let r=b=>b.k===it;if(!e.some(r)&&!t.some(r))return ii(e,t,n);let o=[],i=[];for(let b=0;b<e.length;b++)r(e[b])||o.push(b);for(let b=0;b<t.length;b++)r(t[b])||i.push(b);let s=ii(o.map(b=>e[b]),i.map(b=>t[b]),n);if(!s)return null;let l=[],a=0,h=0,d=(b,f)=>{for(;a<b&&h<f&&e[a].k===t[h].k;)l.push([0,a++,h++]);let u=ii(e.slice(a,b),t.slice(h,f),n);if(!u)return!1;for(let[m,p,v]of u)l.push([m,p+a,v+h]);return a=b,h=f,!0};for(let[b,f,u]of s)if(b===0){if(!d(o[f],i[u]))return null;l.push([0,a,h]),a++,h++}return d(e.length,t.length)?l:null}function Kn(e,t,n=4e3){let r=[],o=0;for(;o<e.length&&o<t.length&&e[o].k===t[o].k;)e[o].raw!==t[o].raw&&r.push({bi:o,tok:t[o]}),o++;let i=0;for(;i<e.length-o&&i<t.length-o&&e[e.length-1-i].k===t[t.length-1-i].k;)e[e.length-1-i].raw!==t[t.length-1-i].raw&&r.push({bi:e.length-1-i,tok:t[t.length-1-i]}),i++;let s=e.slice(o,e.length-i),l=t.slice(o,t.length-i),a=Zc(s,l)?null:Wc(s,l,n);if(!a){let A=s.length||l.length?[{bs:o,be:o+s.length,toks:l}]:[];return{hunks:A,cosmetic:r,coarse:!0,parts:A.map(M=>({...M,gap:[],group:0})),cosmeticEq:r}}let h=[],d=(A,M)=>{s[A].raw!==l[M].raw&&r.push({bi:o+A,tok:l[M]})},b=null,f=[],u=0,m=0,p=()=>{b&&h.push(b),b=null;for(let[A,M]of f)d(A,M);f=[],u++};for(let[A,M,L]of a){if(A===0){b&&Sr(s[M])&&!s[M].k.includes(`
|
|
2
|
-
`)?f.push([M,L]):(p(),d(M,L)),m=M+1;continue}(!b||f.length)&&(b&&h.push(b),b={bs:o+m,be:o+m,toks:[],gap:f.map(([H,B])=>({bi:o+H,tok:l[B]})),group:u},f=[]),A===-1?(b.be=o+m+1,m=M+1):b.toks.push(l[L])}p(),Kc(h,e);let v=li(h);return{hunks:v.hunks,cosmetic:r.concat(v.cosmetic),parts:h,cosmeticEq:r}}function Kc(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r.gap.length)continue;let o=n+1<e.length?e[n+1].bs:1/0;if(r.toks.length){if(r.bs===r.be)for(;r.bs+1<o&&r.bs<t.length&&r.toks[0].k===it&&t[r.bs].k===it;)r.toks=[...r.toks.slice(1),r.toks[0]],r.bs++,r.be++}else for(;r.be+1<o&&r.be<t.length&&t[r.bs].k===it&&t[r.be].k===it;)r.bs++,r.be++}}function li(e,t=()=>!1){let n=[],r=[],o=null,i=-1;for(let s of e){let l=t(s);if(o&&!o.alone&&!l&&s.group===i){o.be=s.be;for(let a of s.gap)o.toks.push(a.tok);for(let a of s.toks)o.toks.push(a);continue}o&&n.push({bs:o.bs,be:o.be,toks:o.toks});for(let a of s.gap)r.push(a);o={bs:s.bs,be:s.be,toks:s.toks.slice(),alone:l},i=s.group}return o&&n.push({bs:o.bs,be:o.be,toks:o.toks}),{hunks:n,cosmetic:r}}var Gc=(e,t)=>e.bs===t.bs&&e.be===t.be&&fi(e.toks,t.toks);function ui(e,t,n){let r=d=>b=>d.some(f=>Gc(b,f)),o=li(e.parts,r(t.parts)),i=li(t.parts,r(e.parts)),s=e.cosmeticEq.concat(o.cosmetic),l=t.cosmeticEq.concat(i.cosmetic),[a,h]=n?Yc(o.hunks,i.hunks,n,s,l):[o.hunks,i.hunks];return{lh:a,rh:h,cosL:s,cosR:l}}function Yc(e,t,n,r,o){let i=(u,m)=>u.k===m.k&&u.raw===m.raw,s=[{list:e.map(u=>({...u})),resp:new Set(r.map(u=>u.bi))},{list:t.map(u=>({...u})),resp:new Set(o.map(u=>u.bi))}],l=u=>u.bs===u.be,a=(u,m,p,v)=>{let A=u.list[m];if(!l(A))return v(A)===p?A.toks:null;let M=m?u.list[m-1].be:0,L=m+1<u.list.length?u.list[m+1].bs:n.length;if(p<M||p>L)return null;let H=A.toks,B=A.bs;for(;B>p;){let te=H[H.length-1];if(!i(te,n[B-1])||u.resp.has(B-1))return null;H=[te,...H.slice(0,-1)],B--}for(;B<p;){if(!i(H[0],n[B])||u.resp.has(B))return null;H=[...H.slice(1),H[0]],B++}return H},h=(u,m,p,v,A,M)=>{let L=u.list[m],H=A?p.slice(p.length-v):p.slice(0,v),B=A?p.slice(0,p.length-v):p.slice(v),te={bs:M,be:M,toks:H};if(l(L)){if(!B.length){u.list[m]=te;return}let K={bs:M,be:M,toks:B};A&&(K.lead=!0),u.list.splice(m,1,...A?[K,te]:[te,K]);return}let re={bs:L.bs,be:L.be,toks:B};u.list.splice(m,1,...A?[re,te]:[te,re])},d=(u,m,p,v,A)=>{let M=u.list[m],L=A?p.slice(p.length-v):p.slice(0,v),H=A?p.slice(0,p.length-v):p.slice(v),B={bs:M.bs,be:M.be,toks:L};if(!H.length){u.list[m]=B;return}let te=A?{bs:M.bs,be:M.bs,toks:H,lead:!0}:{bs:M.be,be:M.be,toks:H};u.list.splice(m,1,...A?[te,B]:[B,te])},b=s[0],f=s[1];for(let u=0;u<64;u++){let m=!1;e:for(let p=0;p<b.list.length;p++)for(let v=0;v<f.list.length;v++){let A=b.list[p],M=f.list[v];if(!(A.bs===M.bs&&A.be===M.be&&fi(A.toks,M.toks)))for(let L of[!0,!1]){let H=te=>L?te.be:te.bs,B=l(A)?[H(M),A.bs]:[H(A)];for(let te of B){let re=a(b,p,te,H),K=re&&a(f,v,te,H);if(!K)continue;let W=(at,Nt)=>L?at[at.length-1-Nt]:at[Nt],he=0;for(;he<re.length&&he<K.length&&W(re,he).k===W(K,he).k;)he++;if(!he)continue;let V=L?re.slice(0,re.length-he):re.slice(he),xe=L?K.slice(0,K.length-he):K.slice(he);if(!(he<re.length&&he<K.length&&!Ns(V)&&!Ns(xe)&&(l(A)&&l(M)||A.bs===M.bs&&A.be===M.be)||!(L?re.slice(re.length-he):re.slice(0,he)).some(at=>!Sr(at)))){if(he===re.length&&he===K.length&&l(A)&&l(M)){if(A.bs===te&&M.bs===te)continue;b.list[p]={bs:te,be:te,toks:re},f.list[v]={bs:te,be:te,toks:K}}else!l(A)&&A.bs===M.bs&&A.be===M.be?(d(b,p,re,he,L),d(f,v,K,he,L)):(h(b,p,re,he,L,te),h(f,v,K,he,L,te));m=!0;break e}}}}if(!m)break}return[b.list,f.list]}var Xc=48,Jc=.3;function Zc(e,t){let n=e.filter(s=>!Sr(s)),r=t.filter(s=>!Sr(s));if(Math.min(n.length,r.length)<Xc)return!1;let o=new Map;for(let s of n)o.set(s.k,(o.get(s.k)||0)+1);let i=0;for(let s of r){let l=o.get(s.k);l>0&&(i++,o.set(s.k,l-1))}return i/Math.min(n.length,r.length)<Jc}var Qc=(e,t)=>{let n=new Set;for(let r of e.toks)typeof r.k!="string"&&n.add(r.k.el);for(let r=e.bs;r<e.be;r++)typeof t[r].k!="string"&&n.add(t[r].k.el);return n},fi=(e,t)=>e.length===t.length&&e.every((n,r)=>n.k===t[r].k);function Rs(e,t,n,r="remote"){let o=Kn(e,t),i=Kn(e,n),{lh:s,rh:l,cosL:a,cosR:h}=ui(o,i,e),d=C=>C.bs===C.be,b=C=>C.toks.some(G=>typeof G.k=="string"),f=C=>d(C)&&!b(C),u=(C,G)=>G.bs<C.be&&C.bs<G.be,m=(C,G)=>!u(C,G)&&G.bs<=C.be&&C.bs<=G.be&&(d(C)&&b(C)||d(G)&&b(G))&&!(d(C)&&d(G)),p=(C,G)=>C.bs===G.bs&&C.be===G.be&&fi(C.toks,G.toks),v=[],A=new Set;for(let C of s){let G=l.find(ye=>!A.has(ye)&&p(C,ye));G?(A.add(G),v.push({bs:C.bs,be:C.be,side:"both",l:C,r:G,toks:C.toks})):v.push({bs:C.bs,be:C.be,side:"L",l:C,toks:C.toks,lead:!!C.lead})}for(let C of l)A.has(C)||v.push({bs:C.bs,be:C.be,side:"R",r:C,toks:C.toks,lead:!!C.lead});v.sort((C,G)=>C.bs-G.bs||C.be-G.be||G.lead-C.lead);let M=0,L=0;for(let C of v)C.side==="both"&&(M+=C.toks.length-(C.be-C.bs));let H=v.map((C,G)=>G),B=C=>H[C]===C?C:H[C]=B(H[C]),te=(C,G)=>(C=B(C),G=B(G),C===G?!1:(H[C]=G,!0)),re=v.map(C=>Qc({bs:C.bs,be:C.be,toks:C.toks},e)),K={L:new Map,R:new Map};v.forEach((C,G)=>{let ye=C.side==="both"?["L","R"]:[C.side];for(let se of ye)for(let Ce of re[G])K[se].has(Ce)||K[se].set(Ce,[]),K[se].get(Ce).push(G)});for(let C of[K.L,K.R])for(let G of C.values())for(let ye=1;ye<G.length;ye++)te(G[0],G[ye]);for(let C=0;C<v.length;C++)for(let G=C+1;G<v.length;G++){let ye=v[C],se=v[G];ye.side===se.side&&ye.side!=="both"||ye.bs>se.be||(u(ye,se)||m(ye,se)?te(C,G):ye.bs===se.bs&&d(ye)&&d(se)&&L++)}let W=(C,G)=>{let ye=C==="L"?s:l;for(let se of ye)if(se.toks.some(Ce=>Ce.kind==="close"&&Ce.k.el===G.el))return se.bs;for(let se=0;se<e.length;se++)if(e[se].kind==="close"&&e[se].k.el===G.el)return se;return-1};v.forEach((C,G)=>{if(!(!f(C)||C.side==="both"))for(let ye of C.toks){if(ye.kind!=="open")continue;let se=W(C.side,ye.k);if(se<=C.bs)continue;let Ce=new Uint8Array(se-C.bs),rt=[];if(v.forEach((Ve,Ke)=>{if(!(Ve.side===C.side||d(Ve))&&Ve.bs<se&&Ve.be>C.bs){rt.push(Ke);for(let et=Math.max(Ve.bs,C.bs);et<Math.min(Ve.be,se);et++)Ce[et-C.bs]=1}}),rt.length&&Ce.every(Ve=>Ve===1))for(let Ve of rt)te(G,Ve)}});let he=!0;for(;he;){he=!1;let C=new Map;v.forEach((G,ye)=>{let se=B(ye),Ce=C.get(se)||{bs:G.bs,be:G.be,L:!1,R:!1};Ce.bs=Math.min(Ce.bs,G.bs),Ce.be=Math.max(Ce.be,G.be),G.side!=="R"&&(Ce.L=!0),G.side!=="L"&&(Ce.R=!0),C.set(se,Ce)}),v.forEach((G,ye)=>{for(let[se,Ce]of C){if(B(ye)===B(se)||!(Ce.L&&Ce.R))continue;let rt=G.bs<Ce.be&&G.be>Ce.bs,Ve=d(G)&&b(G)&&(G.bs===Ce.be||G.bs===Ce.bs);(rt||Ve)&&te(ye,se)&&(he=!0)}})}let V=new Map;v.forEach((C,G)=>{let ye=B(G);V.has(ye)||V.set(ye,[]),V.get(ye).push(C)});let xe=[];for(let C of V.values()){let G=C.some(se=>se.side==="L"),ye=C.some(se=>se.side==="R");if(G&&ye){let se=Math.min(...C.map(Ke=>Ke.bs)),Ce=Math.max(...C.map(Ke=>Ke.be)),rt=C.filter(Ke=>Ke.side!=="R").map(Ke=>Ke.l).sort((Ke,et)=>Ke.bs-et.bs),Ve=C.filter(Ke=>Ke.side!=="L").map(Ke=>Ke.r).sort((Ke,et)=>Ke.bs-et.bs);xe.push({bs:se,be:Ce,kind:"conflict",localHunks:rt,remoteHunks:Ve})}else for(let se of C)xe.push({bs:se.bs,be:se.be,kind:se.side,u:se})}let We=(C,G)=>{let ye=C==="L"?s:l;for(let se of ye)if(se.toks.some(Ce=>Ce.kind==="close"&&Ce.k.el===G.el))return se.bs+.5;for(let se=0;se<e.length;se++)if(e[se].kind==="close"&&e[se].k.el===G.el)return se;return 1/0},at=(C,G)=>{let ye=C==="L"?s:l;for(let se of ye)if(se.toks.some(Ce=>Ce.kind==="open"&&Ce.k.el===G.el))return se.bs-.5;for(let se=0;se<e.length;se++)if(e[se].kind==="open"&&e[se].k.el===G.el)return se;return-1/0},Nt=C=>C.kind==="R"?"R":"L",xt=C=>C.kind==="R"?1:0;xe.sort((C,G)=>{if(C.bs!==G.bs)return C.bs-G.bs;let ye=C.bs===C.be,se=G.bs===G.be;if(ye!==se)return ye?-1:1;if(ye&&se&&C.kind!=="conflict"&&G.kind!=="conflict"){let rt=C.u.toks,Ve=G.u.toks,Ke=ut=>ut.length&&ut.every(k=>k.kind==="open"),et=ut=>ut.length&&ut.every(k=>k.kind==="close");if(Ke(rt)&&Ke(Ve)){let ut=Math.max(...rt.map(g=>We(Nt(C),g.k))),k=Math.max(...Ve.map(g=>We(Nt(G),g.k)));if(ut!==k)return k-ut}if(et(rt)&&et(Ve)){let ut=Math.min(...rt.map(g=>at(Nt(C),g.k))),k=Math.min(...Ve.map(g=>at(Nt(G),g.k)));return ut!==k?k-ut:xt(G)-xt(C)}}let Ce=rt=>rt.u&&rt.u.lead?1:0;return Ce(G)-Ce(C)||xt(C)-xt(G)||C.be-G.be});let _e=[],dt=[],Ze=0,Rt=C=>{C>Ze&&(_e.push({bs:Ze,be:C,toks:e.slice(Ze,C),source:"base"}),Ze=C)};for(let C of xe){if(Rt(C.bs),C.kind==="conflict"){let G=ai(e,C.localHunks,C.bs,C.be),ye=ai(e,C.remoteHunks,C.bs,C.be),se=r==="local"?G:r==="both"?G.concat(ye):ye;dt.push({bs:C.bs,be:C.be,base:e.slice(C.bs,C.be),local:G,remote:ye,resolved:se}),_e.push({bs:C.bs,be:C.be,toks:se,source:"conflict",localHunks:C.localHunks,localToks:G,keepsLocal:r!=="remote"})}else _e.push({bs:C.bs,be:C.be,toks:C.u.toks,source:C.kind==="R"?"remote":"local",localHunks:C.kind==="R"?[]:[C.u.l]});Ze=Math.max(Ze,C.be)}Rt(e.length);let nt=new Map(a.map(C=>[C.bi,C.tok])),Qe=new Map(h.map(C=>[C.bi,C.tok])),ct=[];for(let C of _e){C.source==="base"&&(C.toks=C.toks.map((G,ye)=>{let se=C.bs+ye,Ce=nt.get(se),rt=Qe.get(se),Ve=Ce&&rt?r==="remote"?rt:Ce:Ce||rt||G;return Ve===G?G:{...Ve,cosmetic:!0}}));for(let G of C.toks)ct.push({...G,src:C.source})}return{tokens:ct,segments:_e,conflicts:dt,localHunks:s,remoteHunks:l,collapsedDelta:M,samePoint:L,mapLocalOffset:eu(e,s,_e)}}function ai(e,t,n,r){let o=[],i=n;for(let s of t)o=o.concat(e.slice(i,s.bs),s.toks),i=s.be;return o.concat(e.slice(i,r))}var si=e=>e.reduce((t,n)=>t+n.len,0);function eu(e,t,n){let r=new Int32Array(e.length+1);for(let s=0;s<e.length;s++)r[s+1]=r[s]+e[s].len;let o=t.map(s=>({bs:r[s.bs],be:r[s.be],text:s.toks.map(l=>l.raw).join(""),ref:s})),i=n.map(s=>({bs:r[s.bs],be:r[s.be],len:si(s.toks),source:s.source,localHunks:s.localHunks||[],localLen:s.localToks?si(s.localToks):0,keepsLocal:s.keepsLocal,ref:s}));return s=>{let l=null,a=null,h=0,d=0,b=0;for(let u of o){let m=u.bs-b;if(s<=d+m){l=b+(s-d);break}if(d+=m,b=u.bs,s<=d+u.text.length){a=u,h=s-d,l=u.bs;break}d+=u.text.length,b=u.be}l===null&&(l=b+(s-d));let f=0;for(let u of i){if(!a&&l<=u.bs)return f;if(!(a?u.localHunks.includes(a.ref):l<u.be)){f+=u.len;continue}if(u.source==="base")return f+(l-u.bs);if(u.source==="remote")return f+u.len;if(u.source==="local")return f+Math.min(h,u.len);if(!u.keepsLocal||!a)return f+u.len;let p=u.localHunks.indexOf(a.ref),v=si(ai(e,u.localHunks.slice(0,p),u.ref.bs,a.ref.bs));return f+Math.min(v+h,u.localLen)}return f}}function Tr(e,t,n,r="remote"){if(t===n||n===e)return{text:t,conflicts:[],mapLocalOffset:u=>Math.min(u,t.length),granularity:"word"};let o=lo(e,t,n),i=jn(e,o),s=jn(t,o),l=jn(n,o),a=i.length<=2e4&&s.length<=2e4&&l.length<=2e4?Rs(i,s,l,r):null,h="word",d=i;if(!a){let u=m=>m.split(/(?<=\n)/).map(p=>({k:p,raw:p,len:p.length}));d=u(e),a=Rs(d,u(t),u(n),r),h="line"}let b=u=>u.map(m=>m.raw).join(""),f=[0];for(let u of d)f.push(f[f.length-1]+u.len);return{text:b(a.tokens),conflicts:a.conflicts.map(u=>({bs:f[u.bs],be:f[u.be],base:b(u.base),local:b(u.local),remote:b(u.remote),resolved:b(u.resolved)})),mapLocalOffset:a.mapLocalOffset,granularity:h}}function Er(e,t,n=4e3){if(e===t)return[];let r=lo(e,t),o=jn(e,r),i=jn(t,r),s=Kn(o,i,n),l=[0];for(let a of o)l.push(l[l.length-1]+a.len);return s.hunks.map(a=>({bs:l[a.bs],be:l[a.be],text:a.toks.map(h=>h.raw).join("")}))}var Yn="\uFFFC";var tu={caret:0},mn=new Set("A ABBR B BDI BDO CITE CODE DATA DEL DFN EM FONT I INS KBD MARK Q S SAMP SMALL SPAN STRIKE STRONG SUB SUP TIME TT U VAR".split(" ")),Ps=new Set(["BR","WBR","IMG"]),nu=new Set("ADDRESS ARTICLE ASIDE AUDIO BLOCKQUOTE BODY CANVAS CAPTION CENTER COL COLGROUP DD DETAILS DIALOG DIR DIV DL DT FIELDSET FIGCAPTION FIGURE FOOTER FORM FRAME FRAMESET H1 H2 H3 H4 H5 H6 HEAD HEADER HGROUP HR HTML IFRAME LEGEND LI MAIN MATH MENU NAV NOSCRIPT OBJECT OL OPTGROUP OPTION P PRE SCRIPT SECTION SELECT STYLE SUMMARY SVG TABLE TBODY TD TEMPLATE TEXTAREA TFOOT TH THEAD TITLE TR UL VIDEO".split(" "));function Dn(e,t={}){if(e.nodeType===3)return!0;if(e.nodeType!==1)return!1;if(t.ignored&&t.ignored(e)||Ps.has(e.tagName))return!0;if(!mn.has(e.tagName))return!nu.has(e.tagName);if(t.remoteWins&&t.remoteWins(e))return!1;let n=t.inlineCache&&t.inlineCache.get(e);if(n!==void 0)return n;let r=!0;for(let o of e.childNodes)if(!Dn(o,t)){r=!1;break}return t.inlineCache&&t.inlineCache.set(e,r),r}function ru(e){return!e.firstChild||e.textContent===""&&!e.querySelector("br,img,wbr")}function _r(e,t={}){let n={text:"",marks:[],atoms:[],nodes:[],stackAt:[],pins:[],placeholder:null},r=(o,i)=>{for(let s of o){if(s.nodeType===3){let d=s.nodeValue;if(!d)continue;n.nodes.push({node:s,s:n.text.length,e:n.text.length+d.length}),n.text+=d;for(let b=0;b<d.length;b++)n.stackAt.push(i);continue}if(s.nodeType!==1)continue;if(t.ignored&&t.ignored(s)){n.pins.push({el:s,i:n.text.length});continue}if(t.skip&&t.skip.has(s))continue;let l=s.tagName;if(t.blocks&&t.blocks.has(s)){n.text.length&&n.text[n.text.length-1]!==it&&(n.stackAt.push(i),n.text+=it);let d={el:s,tag:l,from:n.text.length,to:-1,depth:i.length,block:!0};n.marks.push(d);let b=i.concat([d]);r(s.childNodes,b),n.stackAt.push(b),n.text+=it,d.to=n.text.length;continue}let a=mn.has(l)&&ru(s);if(Ps.has(l)||!mn.has(l)||t.remoteWins&&t.remoteWins(s)||t.atomize&&t.atomize(s)||a){n.atoms.push({i:n.text.length,el:s,key:a?l+":empty":l,stack:i}),n.stackAt.push(i),n.text+=Yn;continue}let h={el:s,tag:l,from:n.text.length,to:-1,depth:i.length};n.marks.push(h),r(s.childNodes,i.concat([h])),h.to=n.text.length}};if(r(e,[]),n.atoms.length===1&&n.atoms[0].el.tagName==="BR"&&n.marks.length===0&&ao(n).trim()===""){let o=n.atoms[0];n.placeholder=o.el,n.text=n.text.slice(0,o.i)+n.text.slice(o.i+1),n.stackAt.splice(o.i,1);for(let i of n.nodes)i.s>o.i&&(i.s--,i.e--);n.atoms=[]}return n.atomAt=new Map(n.atoms.map(o=>[o.i,o])),n}function ou(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/ /g," ")}function iu(e){let t="<"+e.tagName.toLowerCase();for(let n of e.attributes)t+=` ${n.name}="${n.value.replace(/"/g,""")}"`;return t+">"}function hi(e,t,n){let r="",o=[];for(let i=t;i<n;i++){let s=e.stackAt[i],l=0;for(;l<o.length&&l<s.length&&o[l]===s[l];)l++;for(;o.length>l;)r+=`</${o.pop().tag.toLowerCase()}>`;for(;o.length<s.length;){let h=s[o.length];r+=iu(h.el),o.push(h)}let a=e.atomAt.get(i);r+=a?a.el.outerHTML:e.text[i]===it?"":ou(e.text[i])}for(;o.length;)r+=`</${o.pop().tag.toLowerCase()}>`;return r}function su(e,t){let n=[...e.el.attributes].filter(r=>!t(e.el,r.name)).map(r=>r.name+"="+r.value).sort().join("");return e.tag+"|"+n}function Fs(e,t){let n=[...e.attributes].filter(r=>!t(e,r.name)).map(r=>r.name+"="+r.value).sort().join("");return e.tagName+"|"+n+"|"+e.innerHTML}function Ms(e,t=()=>!1){let n=new Map,r=i=>{let s=n.get(i);return s===void 0&&(s="{"+i.map(l=>su(l,t)).sort().join(",")+"}",n.set(i,s)),s},o="";for(let i=0;i<e.text.length;i++){let s=e.atomAt.get(i);o+=(s?"["+Fs(s.el,t)+"]":e.text[i])+r(e.stackAt[i])}return e.text.length===0&&e.placeholder&&(o+="[br]"),o}function Gn(e,t,n,r=o=>o.key){let o=[],i=e.text,s=0,l=a=>{if(a<=s)return;let h=i.slice(s,a);if(n)for(let d of h.split(/(?<=\n)/))o.push({k:d,raw:d,len:d.length});else for(let d of jn(h,t))o.push(d)};for(let a of e.atoms)l(a.i),o.push({k:"\0"+r(a),raw:Yn,len:1,atom:!0}),s=a.i+1;return l(i.length),o}function ao(e){if(!e.atoms.length)return e.text;let t="",n=0;for(let r of e.atoms)t+=e.text.slice(n,r.i),n=r.i+1;return t+e.text.slice(n)}var mi=e=>{let t=new Int32Array(e.length+1);for(let n=0;n<e.length;n++)t[n+1]=t[n]+e[n].len;return t};function Ls(e,t,n,r){let o=mi(t),i=mi(n),s=[],l=0,a=0;for(let d of r.hunks){a+=d.bs-l;let b=a+d.toks.length;s.push({bs:o[d.bs],be:o[d.be],ss:i[a],se:i[b],text:e.text.slice(i[a],i[b]),toks:d.toks,lead:!!d.lead}),a=b,l=d.be}let h=new Map;for(let d of r.cosmetic)h.set(d.bi,d.tok.raw);return{hunks:s,respell:h}}function Is(e,t,n){let r=s=>s===it||/\s/.test(s),o=s=>s.replace(/[\u001E\s]/g,""),i=[];for(let s of e){let l=t.slice(s.bs,s.be),a=n.slice(s.ss,s.se);if(!l.includes(it)&&!a.includes(it)||l.includes(Yn)||a.includes(Yn)||o(l)!==o(a)){i.push(s);continue}let h=0,d=0;for(;;){let b=h,f=d;for(;b<l.length&&r(l[b]);)b++;for(;f<a.length&&r(a[f]);)f++;let u=h,m=d;for(;u<b&&m<f&&l[u]===a[m];)u++,m++;let p=b,v=f;for(;p>u&&v>m&&l[p-1]===a[v-1];)p--,v--;if(p>u||v>m){let A=a.slice(m,v);i.push({bs:s.bs+u,be:s.bs+p,ss:s.ss+m,se:s.ss+v,text:A,toks:[...A].map(M=>({k:M,raw:M,len:1})),lead:s.lead})}if(b>=l.length)break;h=b+1,d=f+1}}return i}function js(e,t,n){let r=new Int32Array(t+1).fill(-1),o=new Int32Array(n+1).fill(-1),i=0,s=0,l=a=>{for(;i<a;)r[i]=s,o[s]=i,i++,s++};for(let a of e)l(a.bs),i=a.be,s=a.se;return l(t),r[t]=s,o[s]=t,{bTo:r,toB:o}}function Ds(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function pi(e){let{out:t,policy:n="remote",L:r,R:o}=e,i=e.provenance||new WeakMap,s=e.textMappers||new WeakMap,l=e.conflicts||[],a=e.decisions||[],h=l.length,d=!!(r&&r.reverse&&r.map&&o&&o.reverse&&o.map),b={base:null,local:null,remote:null};if(d&&e.moveIn){let c=ne=>Ae=>ne.some(ee=>ee===Ae||ee.nodeType===1&&ee.contains(Ae)),x=c(e.local),S=c(e.remote),w=c(e.base),R=new Set,P=ne=>{if(!mn.has(ne.tagName))return;let Ae=r.map.get(ne),ee=o.map.get(ne);(Ae&&!x(Ae)||ee&&!S(ee))&&R.add(ne);for(let ae of ne.children)P(ae)};for(let ne of e.base)ne.nodeType===1&&P(ne);let X=ne=>Ae=>{if(!mn.has(Ae.tagName))return!1;let ee=ne.reverse.get(Ae);return!!ee&&(R.has(ee)||!w(ee))};R.size&&(b.base=ne=>R.has(ne)),b.local=X(r),b.remote=X(o)}let f={base:new Set,local:new Set,remote:new Set};if(d&&e.moveIn){let c=w=>R=>w.some(P=>P===R||P.nodeType===1&&P.contains(R)),x=c(e.local),S=c(e.remote);for(let w of _r(e.base,{...e,atomize:b.base}).atoms){let R=r.map.get(w.el),P=o.map.get(w.el),X=!!R&&!x(R),ne=!!P&&!S(P);!X&&!ne||(f.base.add(w.el),R&&!X&&f.local.add(R),P&&!ne&&f.remote.add(P),x(w.el)&&f.local.add(w.el),S(w.el)&&f.remote.add(w.el))}}let u=_r(e.base,{...e,atomize:b.base,skip:f.base}),m=_r(e.local,{...e,atomize:b.local,skip:f.local}),p=_r(e.remote,{...e,atomize:b.remote,skip:f.remote}),v=new Map(u.atoms.map(c=>[c.el,c])),A=(c,x,S)=>{x.namespaceURI?c.setAttributeNS(x.namespaceURI,x.name,S):c.setAttribute(x.name,S)},M=(c,x,S,w)=>{if(!x&&(!S||!w)){for(let P of(S||w).attributes)A(c,P,P.value);return}let R=new Map;for(let P of[x,S,w])if(P)for(let X of P.attributes)R.set(X.name,X);for(let[P,X]of R){let ne=x?x.getAttribute(P):null,Ae=S?S.getAttribute(P):ne,ee=w?w.getAttribute(P):ne,ae;Ae===ee?ae=Ae:Ae===ne?(ae=ee,a.push({kind:"attr",el:c,name:P,source:"remote"})):ee===ne?(ae=Ae,a.push({kind:"attr",el:c,name:P,source:"local"})):(ae=n==="local"?Ae:ee,l.push({kind:"attr",el:c,name:P,base:ne,local:Ae,remote:ee,resolved:ae}),a.push({kind:"attr",el:c,name:P,source:"both"})),ae!=null&&A(c,X,ae)}},L=(c,x,S,w)=>c&&e.mergeAttrs?e.mergeAttrs(c,x,S,w):M(w,c,x,S),H=e.mergeElement||((c,x,S)=>{let w=t.createElement(c.tagName);L(c,x,S,w);let R=x||c,P=S||c,X=n==="local"?R.isEqualNode(c)?P:R:P.isEqualNode(c)?R:P;for(let ne of X.childNodes)w.appendChild(t.importNode(ne,!0));return i.set(w,{base:c,local:x,remote:S}),w}),B=e.cloneUnit||((c,x)=>{let S=t.importNode(c,!0);return i.set(S,{base:null,local:x==="local"?c:null,remote:x==="remote"?c:null}),S}),te=e.atomKey||(c=>Fs(c,()=>!1)),re=(c,x)=>{let S=new Map;for(let w of c.atoms)if(e.remoteWins&&e.remoteWins(w.el)&&mn.has(w.el.tagName))S.set(w,"w"+w.el.tagName+"#"+(w.el.id||""));else if(!d)S.set(w,w.key);else if(c===u)S.set(w,"="+te(w.el));else{let R=x.reverse.get(w.el),P=R?v.get(R):null;P?S.set(w,"="+te(P.el)):R?S.set(w,"m"+te(w.el)):S.set(w,"="+te(w.el))}return w=>S.get(w)},K=re(u,null),W=re(m,r),he=re(p,o),V=lo(ao(u),ao(m),ao(p)),xe=Gn(u,V,!1,K),We=Gn(m,V,!1,W),at=Gn(p,V,!1,he),Nt=xe.length>2e4||We.length>2e4||at.length>2e4;Nt&&(xe=Gn(u,V,!0,K),We=Gn(m,V,!0,W),at=Gn(p,V,!0,he));let xt=ui(Kn(xe,We),Kn(xe,at),xe),_e=Ls(m,xe,We,{hunks:xt.lh,cosmetic:xt.cosL}),dt=Ls(p,xe,at,{hunks:xt.rh,cosmetic:xt.cosR});_e.hunks=Is(_e.hunks,u.text,m.text),dt.hunks=Is(dt.hunks,u.text,p.text);let Ze=js(_e.hunks,u.text.length,m.text.length),Rt=js(dt.hunks,u.text.length,p.text.length),nt=u.text.length,Qe=c=>new Map(c.atoms.map(x=>[x.el,x])),ct=Qe(m),C=Qe(p),G=(c,x,S)=>{let w=new Set;if(!d)return w;for(let R of c.atoms){let P=v.get(x.reverse.get(R.el));P&&S.bTo[P.i]<0&&w.add(P)}return w},ye=G(m,r,Ze),se=G(p,o,Rt),Ce=c=>!Dn(c,{...e,remoteWins:null}),rt=new Set;if(d)for(let c of u.atoms){if(!Ce(c.el))continue;let x=r.map.get(c.el)||null,S=o.map.get(c.el)||null,w=x&&!S?x:S&&!x?S:null;w&&(ct.has(w)||C.has(w))&&!w.isEqualNode(c.el)&&rt.add(c)}let Ve=1,Ke=(c,x)=>({id:Ve++,tag:c,base:null,local:null,remote:null,rank:x}),et=new Map,ut=[];for(let c of u.marks){let x=Ke(c.tag,c.depth);x.block=!!c.block,x.base=c.el,x.baseMark=c,et.set(c.el,x),ut.push(x)}let k=(c,x)=>{let S=-1,w=-1;for(let R=c.from;R<c.to;R++){let P=x[R];P>=0&&(S<0&&(S=P),w=P+1)}return S<0?null:[S,w]},g=(c,x,S,w)=>{for(let R of c.marks){let P=S?S.reverse.get(R.el):null;P&&S.identical.has(P)&&S.pairIdenticalChildren&&S.pairIdenticalChildren(P);let X=P?et.get(P):null;if(X&&X[x]&&(X=null),!X){let ne=k(R,w),Ae=0;if(ne)for(let ee of ut){if(ee.tag!==R.tag||ee[x]||!!ee.block!=!!R.block)continue;let ae=Math.min(ne[1],ee.baseMark.to)-Math.max(ne[0],ee.baseMark.from);(ae>Ae||ae===Ae&&ae>0&&Math.abs(ee.rank-R.depth)<Math.abs(X.rank-R.depth))&&(X=ee,Ae=ae)}}X||(X=Ke(R.tag,R.depth),X.block=!!R.block,X.new=x),X[x]=R.el,X[x+"Mark"]=R,et.set(R.el,X)}};g(m,"local",r,Ze.toB),g(p,"remote",o,Rt.toB);let y=c=>c.merged||c,O=c=>{let x=new Set;for(let S of c)S.block||x.add(et.get(S.el));return x},_=new Map,E=c=>{let x=_.get(c);return x||(x=O(c),_.set(c,x)),x},I=(c,x)=>{let S=[],w=null;for(let R=0;R<nt;R++){let P=x[R];if(P<0){w&&S.push(w),w=null;continue}let X=E(u.stackAt[R]),ne=E(c.stackAt[P]),Ae=new Set,ee=new Set;for(let ae of ne)X.has(ae)||Ae.add(ae);for(let ae of X)ne.has(ae)||ee.add(ae);if(!Ae.size&&!ee.size){w&&S.push(w),w=null;continue}if(w&&Ds(w.added,Ae)&&Ds(w.removed,ee)){w.be=R+1;continue}w&&S.push(w),w={bs:R,be:R+1,added:Ae,removed:ee}}return w&&S.push(w),S},N=I(m,Ze.bTo),j=I(p,Rt.bTo),J=c=>c.be>c.bs?[c.bs,c.be-1]:[c.bs-1,c.bs],$=(c,x)=>{if(nt===0)return null;let[S,w]=J(c);for(let R of x){if(R.be<=S)continue;if(R.bs>w)break;let P=R.bs<=S&&w<R.be;return P&&c.text===""&&R.bs===c.bs&&R.be===c.be?"straddle":P?R:c.be>c.bs?"straddle":null}return null},ce=c=>c.bs===c.be,ge=(c,x)=>{let S=!1;for(let w=c.bs;w<c.be;w++){let R=u.text[w];if(R===it)S=!0;else if(!/\s/.test(R))return!1}for(let w=c.ss;w<c.se;w++){let R=x.text[w];if(R===it)S=!0;else if(!/\s/.test(R))return!1}return S},ht=(c,x)=>c.bs<x.be&&x.bs<c.be,ft=(c,x)=>c.bs<=x.be&&x.bs<=c.be&&ce(c)!==ce(x),ue=(c,x)=>u.text.slice(c.bs,c.be).includes(it)||x.text.slice(c.ss,c.se).includes(it),Ge=c=>{if(ce(c))return!1;let x=c.bs,S=c.be;for(;x>0&&/\s/.test(u.text[x-1]);)x--;for(;S<u.text.length&&/\s/.test(u.text[S]);)S++;return(x===0||u.text[x-1]===it)&&(S===u.text.length||u.text[S]===it)},Ft=(c,x)=>!ue(c,x)&&!Ge(c),vt=(c,x)=>ht(c,x)||ft(c,x)&&!(ge(c,m)&&Ft(x,p))&&!(ge(x,p)&&Ft(c,m)),Ht=(c,x)=>{if(c.bs!==x.bs||c.be!==x.be||c.toks.length!==x.toks.length)return!1;let S=c.ss,w=x.ss;for(let R=0;R<c.toks.length;R++){let P=c.toks[R],X=x.toks[R];if(P.k!==X.k||P.atom&&!m.atomAt.get(S).el.isEqualNode(p.atomAt.get(w).el))return!1;S+=P.len,w+=X.len}return!0},Wt=(c,x,S,w)=>{for(let R of u.atoms){if(R.i<c.bs||R.i>=c.be||w.has(R)||rt.has(R))continue;let P=x.bTo[R.i],X=P>=0?S.atomAt.get(P):null;if(X&&!X.el.isEqualNode(R.el))return!0}return!1},Tt=[],Et=_e.hunks,T=dt.hunks,D=0,F=0,z=0,q=0,U=0,Q=c=>{c>z&&(Tt.push({src:"base",from:z,to:c,dL:q,dR:U}),z=c)};for(;D<Et.length||F<T.length;){let c=Et[D],x=T[F],S=!!c&&(!x||c.bs<x.bs||c.bs===x.bs&&c.be<=x.be&&!x.lead);if(c&&x&&c.bs===x.bs&&ce(c)&&ce(x)){let Ot=ge(c,m),Ln=ge(x,p);Ot!==Ln&&(S=Ln)}let w=S?c:x,R=S?x:c,P=!!R&&Ht(c,x),X=!!R&&(S?!!Et[D+1]&&Ht(Et[D+1],x):!!T[F+1]&&Ht(c,T[F+1])),ne=!!R&&!P&&!X&&(nt===0||vt(c,x)),Ae=ne,ee=$(w,S?j:N);if(ee==="straddle"&&(Ae=!0),!Ae&&w.be>w.bs&&(Ae=Wt(w,S?Rt:Ze,S?p:m,S?ye:se)),!Ae&&P){Q(w.bs),Tt.push({src:"both",lfrom:c.ss,rfrom:x.ss,len:w.text.length}),z=w.be,q+=w.text.length-(w.be-w.bs),U+=w.text.length-(w.be-w.bs),D++,F++;continue}if(!Ae){Q(w.bs),Tt.push({src:S?"local":"remote",from:w.ss,to:w.se,inherit:ee&&ee!=="straddle"?ee:null}),z=w.be,S?(q+=w.text.length-(w.be-w.bs),D++):(U+=w.text.length-(w.be-w.bs),F++);continue}let ae=w.bs,Be=w.be,Me=D,qe=F,kt=Ot=>Ot.bs<Be&&Ot.be>ae||ce(Ot)&&(Ot.bs===ae||Ot.bs===Be);S?Me++:qe++,ne&&(ae=Math.min(ae,R.bs),Be=Math.max(Be,R.be),S?qe++:Me++);let lt=!0;for(;lt;){for(lt=!1;Me<Et.length&&kt(Et[Me]);)ae=Math.min(ae,Et[Me].bs),Be=Math.max(Be,Et[Me].be),Me++,lt=!0;for(;qe<T.length&&kt(T[qe]);)ae=Math.min(ae,T[qe].bs),Be=Math.max(Be,T[qe].be),qe++,lt=!0}let Xt=ae+q,Bt=ae+U,sn=Be-ae,cn=Be-ae;for(let Ot=D;Ot<Me;Ot++)sn+=Et[Ot].text.length-(Et[Ot].be-Et[Ot].bs);for(let Ot=F;Ot<qe;Ot++)cn+=T[Ot].text.length-(T[Ot].be-T[Ot].bs);let gn=Xt+sn,bn=Bt+cn;Q(ae);let Ct={kind:"text",node:e.node||null,base:hi(u,ae,Be),local:hi(m,Xt,gn),remote:hi(p,Bt,bn),resolved:null,range:null,bs:ae,be:Be,lss:Xt,lse:gn,rss:Bt,rse:bn};Ct.resolved=n==="local"?Ct.local:n==="remote"?Ct.remote:Ct.local+Ct.remote,n!=="remote"&&Tt.push({src:"local",from:Xt,to:gn,conflict:Ct}),n!=="local"&&Tt.push({src:"remote",from:Bt,to:bn,conflict:Ct}),l.push(Ct),z=Be,q+=sn-(Be-ae),U+=cn-(Be-ae),D=Me,F=qe}Q(nt);let le=u.text,ke=[];if(_e.respell.size||dt.respell.size){let c=mi(xe),x=[];for(let S=0;S<xe.length;S++){let w=xe[S].raw,R=_e.respell.get(S)??w,P=dt.respell.get(S)??w;(R!==w||P!==w)&&ke.push([c[S],R!==w&&P!==w?"both":R!==w?"local":"remote"]),x.push(R===P?R:R===w?P:P===w||n==="local"?R:P)}le=x.join("")}let me="",ve=[],Pe=[],je=[],wt=[];for(let c of Tt){let x=me.length;if(c.src==="base"){for(let S=c.from;S<c.to;S++)ve.push(S),Pe.push(S+c.dL),je.push(S+c.dR),wt.push(c);me+=le.slice(c.from,c.to)}else if(c.src==="both"){for(let S=0;S<c.len;S++)ve.push(-1),Pe.push(c.lfrom+S),je.push(c.rfrom+S),wt.push(c);me+=m.text.slice(c.lfrom,c.lfrom+c.len)}else{let S=c.src==="local"?m:p;for(let w=c.from;w<c.to;w++)ve.push(-1),Pe.push(c.src==="local"?w:-1),je.push(c.src==="remote"?w:-1),wt.push(c);me+=S.text.slice(c.from,c.to)}c.ms=x,c.me=me.length,c.conflict&&(c.conflict.range||(c.conflict.range=[x,x]),c.conflict.range[1]=me.length)}let pe=me.length,Xe=new Int32Array(nt+1).fill(-1),Ee=new Int32Array(m.text.length+1).fill(-1),Dt=new Int32Array(p.text.length+1).fill(-1);for(let c=0;c<pe;c++)ve[c]>=0&&(Xe[ve[c]]=c),Pe[c]>=0&&(Ee[Pe[c]]=c),je[c]>=0&&(Dt[je[c]]=c);let At=(c,x)=>{let S=-1,w=-1;for(let R=c.from;R<c.to;R++){let P=x[R];P>=0&&(S<0&&(S=P),w=P+1)}return S<0?null:[S,w]},Mt=[],gt=[];for(let c of new Set(et.values()))c.new==="local"?Mt.push(c):c.new==="remote"&>.push(c);let xr=(c,x)=>{c.remote=x.remote,c.remoteMark=x.remoteMark,c.new="both",x.merged=c,et.set(x.remote,c)};if(Mt.length&>.length){let c=e.idOf;for(let x of Mt){let S=c?c.local(x.local):null;if(!S)continue;let w=gt.find(R=>!R.merged&&R.tag===x.tag&&!!R.block==!!x.block&&c.remote(R.remote)===S);w&&xr(x,w)}for(let x of Mt){if(x.remote)continue;let S=At(x.localMark,Ee);if(S)for(let w of gt){if(w.merged||w.tag!==x.tag||!!w.block!=!!x.block)continue;let R=At(w.remoteMark,Dt);if(R&&Math.min(S[1],R[1])-Math.max(S[0],R[0])>0){xr(x,w);break}}}}_.clear();let vr=c=>{for(let x of c)if(x.block)return y(et.get(x.el));return null},hn=u.marks.some(c=>c.block)||m.marks.some(c=>c.block)||p.marks.some(c=>c.block),nn=new Array(pe).fill(null),Un=new Set;if(hn){let c=(ee,ae,Be)=>{let Me=new Set([ee,ae,Be]);Me.delete(null);let qe=[];for(let lt of Me){let Xt=lt===ee,Bt=lt===ae,sn=lt===Be;(Bt===sn?Bt:Bt===Xt?sn:Bt)&&qe.push(lt)}if(qe.length<=1)return qe[0]||null;let kt=n==="local"?ae:Be;return qe.includes(kt)?kt:qe[0]},x=(ee,ae)=>ae>=0?vr(ee.stackAt[ae]):null,S=new Map;for(let ee=0;ee<pe;ee++){if(me[ee]!==it)continue;let ae=ve[ee]>=0?x(u,ve[ee]):null,Be=x(m,Pe[ee]),Me=x(p,je[ee]);S.set(ee,[ae,ve[ee]>=0?c(ae,Be,Me):Be||Me])}let w=new Set([...S.values()].map(ee=>ee[1])),R=ee=>ee!==it&&ee!==Yn&&!/\s/.test(ee),P=(ee,ae)=>{let Be=ee;for(;Be<ae&&!R(me[Be]);)Be++;return Be<ae&&ve[Be]>=0?x(u,ve[Be]):null},X=new Map,ne=0;for(let ee=0;ee<pe;ee++){if(me[ee]!==it)continue;let[ae,Be]=S.get(ee),Me=P(ne,ee),qe=Be,kt=X.get(qe)===qe&&Me===qe;qe&&X.has(qe)&&!kt&&ae&&!X.has(ae)&&!w.has(ae)&&(qe=ae),qe&&!X.has(qe)&&X.set(qe,Me);for(let lt=ne;lt<=ee;lt++)nn[lt]=qe;ne=ee+1}let Ae=ee=>{for(let ae=0;ae<ee.text.length;ae++)if(R(ee.text[ae])&&!x(ee,ae))return!0;return!1};if(!Ae(u)&&!Ae(m)&&!Ae(p)){let ee=[],ae=0;for(let Me=0;Me<pe;Me++)(me[Me]===it||Me===pe-1)&&(ee.push([ae,Me]),ae=Me+1);let Be=new Set(nn);for(let Me=0;Me<ee.length;Me++){let[qe,kt]=ee[Me];if(nn[kt])continue;let lt=qe;for(;lt<=kt&&!R(me[lt]);)lt++;if(lt>kt)continue;let Xt=x(u,ve[lt]),Bt=x(m,Pe[lt]),sn=x(p,je[lt]),cn=c(Xt,Bt,sn)||Bt||sn||Xt;if(cn&&!Be.has(cn)){Be.add(cn);for(let Ct=qe;Ct<=kt;Ct++)nn[Ct]=cn;continue}let gn=Me>0&&nn[ee[Me-1][1]],bn=Me+1<ee.length&&nn[ee[Me+1][1]];if(gn)Un.add(ee[Me-1][1]);else if(bn&&me[kt]===it)Un.add(kt);else continue;for(let Ct=qe;Ct<=kt;Ct++)nn[Ct]=gn||bn}}}let Qr=new Map,eo=c=>{let x=Qr.get(c);if(x)return x;x=[1/0,-1/0];for(let[S,w]of[[c.baseMark,Xe],[c.localMark,Ee],[c.remoteMark,Dt]]){let R=S&&At(S,w);R&&(x[0]=Math.min(x[0],R[0]),x[1]=Math.max(x[1],R[1]))}return Qr.set(c,x),x},to=(c,x,S)=>{let w=-1,R=-1;for(let P=0;P<c.length;P++){let X=et.get(c[P].el);X===x&&(w=P),X===S&&(R=P)}return w>=0&&R>=0?w-R:0},zn=(c,x)=>[...c].sort((S,w)=>{for(let X of x){let ne=to(X,S,w);if(ne)return ne}let R=eo(S),P=eo(w);return R[0]-P[0]||P[1]-R[1]||S.rank-w.rank||S.id-w.id}),no=new Map,Y=new Map,Te=c=>{let x=ve[c],S=Pe[c],w=je[c],R=wt[c];if(x>=0){let Me=u.stackAt[x],qe=m.stackAt[S],kt=p.stackAt[w],lt=no.get(Me);lt||no.set(Me,lt=new Map);let Xt=lt.get(qe);Xt||lt.set(qe,Xt=new Map);let Bt=Xt.get(kt);if(Bt)return Bt;let sn=E(Me),cn=E(qe),gn=E(kt),bn=new Set;for(let Ct of new Set([...sn,...cn,...gn])){let Ot=sn.has(Ct),Ln=cn.has(Ct),xs=gn.has(Ct);(Ln===xs?Ln:Ln===Ot?xs:Ln)&&bn.add(Ct)}return Bt=zn(bn,[qe,kt,Me]),Xt.set(kt,Bt),Bt}if(R.src==="both"){let Me=m.stackAt[S],qe=p.stackAt[w];return zn(new Set([...E(Me),...E(qe)]),[Me,qe])}let X=(R.src==="local"?m:p).stackAt[R.src==="local"?S:w];if(!R.inherit)return zn(E(X),[X]);let ne=Y.get(R);ne||Y.set(R,ne=new Map);let Ae=ne.get(X);if(Ae)return Ae;let ee=new Set(E(X));for(let Me of R.inherit.added)ee.add(y(Me));for(let Me of R.inherit.removed)ee.delete(y(Me));let ae=R.src==="local"?p:m,Be=(R.src==="local"?Rt.bTo:Ze.bTo)[R.inherit.bs];return Ae=zn(ee,[X,ae.stackAt[Be]]),ne.set(X,Ae),Ae},be=new Int32Array(m.text.length+1);be[m.text.length]=pe;for(let c=m.text.length-1;c>=0;c--)be[c]=Ee[c]>=0?Ee[c]:be[c+1];tu.caret+=m.text.length;let Ne=c=>c<=0?0:(c>m.text.length&&(c=m.text.length),Ee[c-1]>=0?Ee[c-1]+1:be[c]),$e=[],ie=[],Se=null,oe=[],Re="",Fe=-1,Pt=c=>{Se?Se.appendChild(c):$e.push(c)},rn=c=>{if(!Re)return;let x=t.createTextNode(Re);Pt(x),ie.push({node:x,ms:Fe,me:c,local:[],u:oe.length?oe[oe.length-1].u:null}),Re=""},pn=new Set,Ut=new Map,wn=new Set,De=c=>{let x=t.createElement(c.tag);if(c.block&&Ar.add(x),!Ut.has(c)){Ut.set(c,x),L(c.base,c.local,c.remote,x),i.set(x,{base:c.base,local:c.local,remote:c.remote});let w=(X,ne)=>d&&c[ne]&&X.reverse.get(c[ne])?ne:null,R=!c.base&&(w(r,"local")||w(o,"remote"));if(R){let X=R==="local"?r.reverse.get(c.local):o.reverse.get(c.remote),ne=i.get(x);ne.local=ne.local||r.map.get(X)||null,ne.remote=ne.remote||o.map.get(X)||null,a.push({kind:"move",el:x,source:R})}else c.base||a.push({kind:"insert",el:x,source:c.local&&c.remote?"both":c.local?"local":"remote"});let P=i.get(x);P.local&&(wn.has(P.local)?P.local=null:wn.add(P.local))}else{let w=Ut.get(c);for(let R of w.attributes)R.name!=="id"&&R.name!=="data-id"&&A(x,R,R.value);i.set(x,{base:null,local:null,remote:null})}Pt(x),oe.push({u:c,el:x}),Se=x},Ue=new Set,Z=new Map;for(let c of m.pins){let x=Ne(c.i);Z.has(x)||Z.set(x,[]),Z.get(x).push(c)}let de=c=>{let x=Z.get(c);if(x){rn(c);for(let S of x){let w=S.el.namespaceURI&&S.el.namespaceURI!=="http://www.w3.org/1999/xhtml"?t.createElementNS(S.el.namespaceURI,S.el.tagName):t.createElement(S.el.tagName);i.set(w,{base:null,local:S.el,remote:null,pinned:!0}),Ue.add(w),Pt(w)}}},we=u.atoms.length||m.atoms.length||p.atoms.length,Ie=c=>{if(!we)return null;let x=ve[c]>=0?u.atomAt.get(ve[c]):null,S=Pe[c]>=0?m.atomAt.get(Pe[c]):null,w=je[c]>=0?p.atomAt.get(je[c]):null;return x||S||w?{ab:x,al:S,ar:w}:null},Oe=(c,x,S,w)=>{if(!c||!d)return null;let R=v.get(x.reverse.get(c.el))||null;return!R||R===w||(w?R.el.isEqualNode(w.el):S.bTo[R.i]>=0)?null:R},Ye=(c,x)=>{if(!c||!d||!e.moveIn)return null;let S=x.reverse.get(c.el);return S&&!v.has(S)?S:null},ot=(c,x)=>{let S=new Map;for(let w of c.atoms)S.set(x(w),(S.get(x(w))||0)+1);return S},qt=ot(u,K),zt=ot(m,W),Jt=ot(p,he),_t=c=>{let x=K(c);return qt.get(x)===1&&(zt.get(x)||0)<=1&&(Jt.get(x)||0)<=1},Zt=new Map,mt=new Set,bt=new Set,Qt=new Set;for(let c=0;c<pe;c++){let x=Ie(c);if(!x)continue;let{ab:S,al:w,ar:R}=x,P=Oe(R,o,Rt,S),X=Oe(w,r,Ze,S),ne=S,Ae=null;if(P?(ne=P,Ae="remote"):X&&(ne=X,Ae="local"),ne){mt.has(ne)?Zt.set(c,{dup:ne.el}):(mt.add(ne),Zt.set(c,{bk:ne,from:Ae,al:w,ar:R}));continue}let ee=Ye(R,o),ae=Ye(w,r),Be=ee||ae;if(Be){bt.has(Be)?Zt.set(c,{dup:Be}):(bt.add(Be),Zt.set(c,{moveIn:Be,side:ee?"remote":"local",sideEl:ee?R.el:w.el}));continue}let Me=(kt,lt)=>kt&&d&&v.get(lt.reverse.get(kt.el))||null,qe=Me(R,o)||Me(w,r);if(qe&&(Qt.add(qe),wt[c].conflict&&_t(qe))){if(mt.has(qe)){Zt.set(c,{dup:qe.el});continue}mt.add(qe)}Zt.set(c,{al:w,ar:R})}let ln=new Map,ro=(c,x)=>{if(c[x]>=0)return c[x];for(let S=x-1;S>=0;S--)if(c[S]>=0)return c[S]+1;return 0};if(d)for(let c of u.atoms){if(mt.has(c)||Qt.has(c))continue;let x=r.map.get(c.el)||null,S=o.map.get(c.el)||null,w=x&&ct.get(x),R=S&&C.get(S);if(x&&!w||S&&!R)continue;let P=!(w&&R)&&rt.has(c);if(!P&&!(w&&R&&_t(c)))continue;let X=n==="local"?[[w,Ee],[R,Dt]]:[[R,Dt],[w,Ee]],[ne,Ae]=X.find(([ae])=>ae),ee=ro(Ae,ne.i);ln.has(ee)||ln.set(ee,[]),ln.get(ee).push({a:c,lt:x,rt:S,edited:P}),mt.add(c)}if(d&&e.moveIn){let c=[[m,r,Ee,"local"],[p,o,Dt,"remote"]];n!=="local"&&c.reverse();for(let[x,S,w,R]of c)for(let P of x.atoms){let X=Ye(P,S);if(!X||bt.has(X))continue;bt.add(X);let ne=ro(w,P.i);ln.has(ne)||ln.set(ne,[]),ln.get(ne).push({move:X,side:R,sideEl:P.el})}}let wr=c=>{let x=ln.get(c);if(x){if(rn(c),x.some(S=>Ce(S.move?S.sideEl:S.a.el)))for(;oe.length;)oe.pop(),Se=oe.length?oe[oe.length-1].el:null;for(let{a:S,lt:w,rt:R,edited:P,move:X,side:ne,sideEl:Ae}of x){if(X){let ae=e.moveIn(X,ne,Ae);ae&&Pt(ae);continue}pn.add(S);let ee=H(S.el,w,R);P&&(l.push({kind:"structure",el:ee,detail:"edit-beats-delete",base:S.el}),a.push({kind:"insert",el:ee,source:w?"local":"remote"})),Pt(ee)}}},Ar=new Set;for(let c=0;c<pe;c++){let x=Ie(c),w=!!x&&Ce((x.ab||x.al||x.ar).el)?[]:nn[c]?[nn[c],...Te(c)]:Te(c),R=0;for(;R<oe.length&&R<w.length&&oe[R].u===w[R];)R++;if(R<oe.length)for(rn(c);oe.length>R;)oe.pop(),Se=oe.length?oe[oe.length-1].el:null;if(de(c),wr(c),w.length>oe.length)for(rn(c);oe.length<w.length;)De(w[oe.length]);if(me[c]===it){if(Un.has(c))continue;rn(c);let P=oe.length;for(;P>0&&!oe[P-1].u.block;)P--;if(P>0)for(;oe.length>=P;)oe.pop(),Se=oe.length?oe[oe.length-1].el:null;continue}if(x){rn(c);let P=Zt.get(c),X;if(P.dup){l.push({kind:"structure",el:null,detail:"both-moved",base:P.dup});continue}if(P.moveIn){if(X=e.moveIn(P.moveIn,P.side,P.sideEl),!X)continue}else if(P.bk){let ne=P.bk;if(pn.add(ne),ne===x.ab)X=H(ne.el,P.al.el,P.ar.el);else{let Ae=r.map.get(ne.el)||null,ee=o.map.get(ne.el)||null;X=H(ne.el,Ae,ee),(!Ae||!ee)&&l.push({kind:"structure",el:null,detail:"move-beats-delete",base:ne.el}),a.push({kind:"move",el:X,source:P.from})}}else P.al?(X=B(P.al.el,"local"),P.ar&&(i.get(X).remote=P.ar.el),a.push({kind:"insert",el:X,source:P.ar?"both":"local"})):(X=B(P.ar.el,"remote"),a.push({kind:"insert",el:X,source:"remote"}));Pt(X);continue}Re||(Fe=c),Re+=me[c]}if(rn(pe),(Z.has(pe)||ln.has(pe))&&(oe.length=0,Se=null,de(pe),wr(pe)),pe===0&&(m.placeholder||p.placeholder||u.placeholder)){let c=t.createElement("br");i.set(c,{base:u.placeholder,local:m.placeholder,remote:p.placeholder}),$e.push(c)}let fe=0,ze=c=>{for(;fe>0&&ie[fe-1].me>=c;)fe--;for(;fe<ie.length&&ie[fe].me<c;)fe++;let x=ie[fe];if(!x)return ie[ie.length-1]||null;let S=ie[fe+1];return x.me===c&&S&&S.ms===c?S:x},st=new Map,tt={},Je=(c,x,S)=>{let w=ze(c)||(S?tt:null);if(!w)return;let R=st.get(w)||{l:!1,r:!1};x!=="remote"&&(R.l=!0),x!=="local"&&(R.r=!0),st.set(w,R)},an=c=>{if(c.conflict)return!0;let x=c.src==="local"?m.text:c.src==="remote"?p.text:"";for(let S=c.from;S<c.to;S++)if(x[S]!==Yn&&x[S]!==it)return!0;return!1};for(let c of Tt)c.src!=="base"&&Je(c.ms,c.conflict?"both":c.src,an(c));for(let[c,x]of ke)Xe[c]>=0&&Je(Xe[c],x);for(let c of ie.length?ie:[tt]){let x=st.get(c);x&&a.push({kind:"text",node:c.node||null,source:x.l&&x.r?"both":x.l?"local":"remote"})}for(let c of ut){if(Ut.has(c))continue;let x=!c.local&&!(d&&r.map.get(c.base)),S=!c.remote&&!(d&&o.map.get(c.base));!x&&!S||a.push({kind:"remove",source:x&&S?"both":x?"local":"remote",base:c.base})}let on=(c,x,S)=>{if(x<=c)return!1;for(let w=c;w<x;w++)if(S[w]>=0)return!1;return!0};for(let c of ut)for(let x of["local","remote"]){let S=c[x+"Mark"],w=c.baseMark;if(!S)continue;let R=x==="local"?Ze:Rt;if(!on(w.from,w.to,R.bTo)||!on(S.from,S.to,R.toB))continue;let P=(x==="local"?Et:T).find(X=>X.ss<=S.from&&S.from<X.se);P&&(P.be<=w.from||P.bs>=w.to)&&a.push({kind:"move",el:Ut.get(c)||null,source:x})}let An=c=>{let x=et.get(c.node.parentNode);return x?y(x):null};for(let c of m.nodes){let x=-1;for(let w=c.s;w<c.e;w++)if(Ee[w]>=0){x=Ee[w];break}let S;if(x>=0)S=ze(x);else{let w=Ne(c.s),R=An(c);S=ie.find(P=>P.u===R&&P.me>=w)||ie.filter(P=>P.u===R).pop()}S&&S.local.push(c)}let en=new Map,$t=ie[ie.length-1]||null,Yt=0;for(let c of m.nodes){let x=null;for(let S=c.s;S<=c.e;S++){let w=Ne(S);for(;Yt>0&&ie[Yt-1].me>=w;)Yt--;for(;Yt<ie.length&&ie[Yt].me<w;)Yt++;let R=X=>X&&w>=X.ms&&w<=X.me&&(w<X.me||S===c.e||X===x),P=R(ie[Yt])?ie[Yt]:R(ie[Yt+1])?ie[Yt+1]:ie[Yt]||$t;if(!P)break;if(x===P){let X=en.get(P);X[X.length-1].to=S-c.s;continue}x=P,en.has(P)||en.set(P,[]),en.get(P).push({node:c.node,from:S-c.s,to:S-c.s,flatStart:c.s})}}for(let c of ie){let x=c.local,S=!1;for(let X of x)for(let ne=X.s;ne<X.e&&!S;ne++)(Ee[ne]<c.ms||Ee[ne]>=c.me)&&(S=!0);i.set(c.node,{base:null,local:x.map(X=>X.node),remote:null,caret:en.get(c)||[],partial:S});let w=c.ms,R=c.me-c.ms,P=X=>{let ne=0,Ae=-1;for(let ee of x){let ae=ee.e-ee.s;if(X<=ne+ae){Ae=ee.s+(X-ne);break}ne+=ae}return Ae<0&&(Ae=x.length?x[x.length-1].e:0),Math.max(0,Math.min(Ne(Ae)-w,R))};P.flat=X=>Math.max(0,Math.min(Ne(X)-w,R)),s.set(c.node,P)}function Sc(){if(!m.text.includes(it))return[{flatLocal:m.text,localNodes:m.nodes,textNodes:ie,lToM:Ee,mapLocal:Ne}];let c=[],x=0,S=0;for(let w=0;w<=m.text.length;w++){if(w<m.text.length&&m.text[w]!==it)continue;let R=x,P=w;if(P>R){let X=[];for(;S<m.nodes.length&&m.nodes[S].e<=R;)S++;for(let ne=S;ne<m.nodes.length&&m.nodes[ne].s<P;ne++){let Ae=m.nodes[ne],ee=Math.max(Ae.s,R),ae=Math.min(Ae.e,P);ee<ae&&X.push({node:Ae.node,s:ee-R,e:ae-R})}c.push({flatLocal:m.text.slice(R,P),localNodes:X,textNodes:ie,lToM:Ee.subarray?Ee.subarray(R,P+1):Ee.slice(R,P+1),mapLocal:ne=>Ne(R+Math.max(0,Math.min(ne,P-R)))})}x=w+1}return c}let Tc={...e,blocks:Ar,ignored:c=>Ue.has(c)||(e.ignored?e.ignored(c):!1)},ys=e.ignoreAttribute||(()=>!1),Ec=Ms(_r($e,Tc),ys)!==Ms(p,ys);return{nodes:$e,text:me,textNodes:ie,localDiverged:Ec,mapLocal:Ne,conflicts:l.slice(h),granularity:Nt?"line":"word",segments:Sc(),localHunks:Et,remoteHunks:T,lToM:Ee}}var lu="http://www.w3.org/1999/xhtml";function au(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t^e.charCodeAt(n);return(t>>>0).toString(36)}function Kt(e){return!!e&&e.nodeType===1&&e.tagName==="SCRIPT"&&e.namespaceURI===lu}function cu(e){let t=(e.getAttribute("type")||"").split(";")[0].trim().toLowerCase();return t==="application/json"||t.endsWith("+json")}function co(e,t){let n=e.getAttribute("src"),r=(e.getAttribute("type")||"text/javascript").split(";")[0].trim().toLowerCase();if(n){let o=n;try{let i=new URL(n,t);o=i.origin+i.pathname+i.search}catch{}return"script|src|"+r+"|"+o}return"script|inline|"+r+"|"+au(e.textContent.trim())}var uu={match:e=>e.hasAttribute("merge"),identity:e=>e.getAttribute("merge")};function Xn(e,t=[],n=!1){if(!Kt(e)||e.hasAttribute("src"))return null;let r=[uu,...t];for(let o=0;o<r.length;o++){let i=r[o];if(!i.match(e))continue;if(!cu(e))return n&&console.warn("[hyper-morph] merge ignored: script type is not JSON",e),null;let s=i.identity(e);return s==null||s===""?null:{key:o+":"+s,raw:s,recognizer:i}}return null}function qs(e,t,n){let r=new Set,o=i=>{Kt(i)&&!t(i)&&r.add(co(i,n))};o(e);for(let i of e.querySelectorAll("script"))o(i);return r}function Cr(e,t){let n=t.createElement("div");n.innerHTML="<script><\/script>";let r=n.firstChild;for(let o of e.attributes)r.setAttribute(o.name,o.value);return r.textContent=e.textContent,r}function Bs(e,t,n){let r=[],o=[],i=Array.from(e.querySelectorAll("script"));Kt(e)&&i.unshift(e);for(let s of i){if(!Kt(s)||n.ignored(s)||n.skip.has(s)||t.has(co(s,n.baseURI)))continue;let l=s.ownerDocument.createElement("script");for(let a of s.attributes)l.setAttribute(a.name,a.value);l.textContent=s.textContent,n.beforeNodeAdded(l)!==!1&&(l.hasAttribute("src")&&o.push(new Promise(a=>{l.addEventListener("load",()=>a()),l.addEventListener("error",()=>a())})),s.replaceWith(l),n.afterNodeAdded(l),r.push(l))}return{executed:r,loads:o}}function fu(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t^e.charCodeAt(n);return(t>>>0).toString(36)}function du(e,t){try{let n=new URL(e,t);return n.origin+n.pathname+n.search}catch{return e}}function Hs(e,t){let n=e.tagName;if(n==="TITLE"||n==="BASE")return n;if(n==="SCRIPT")return co(e,t);if(n==="LINK"){let r=e.getAttribute("href");return r?"link|"+(e.getAttribute("rel")||"")+"|"+du(r,t):e.outerHTML}if(n==="META"){for(let r of["charset","name","property","http-equiv","itemprop"])if(e.hasAttribute(r))return"meta|"+r+"="+e.getAttribute(r);return e.outerHTML}return n==="STYLE"?"style|"+fu(e.textContent):e.outerHTML}function gi(e,t){for(;;){for(;t<e.length&&/\s/.test(e[t]);)t++;if(e[t]==="/"&&e[t+1]==="/"){for(;t<e.length&&e[t]!==`
|
|
3
|
-
`;)t++;continue}if(e[t]==="/"&&e[t+1]==="*"){let n=e.indexOf("*/",t+2);if(n===-1)return e.length;t=n+2;continue}return t}}function hu(e){return e.replace(/\\'/g,"'").replace(/(\\*)"/g,(t,n)=>n.length%2===0?n+'\\"':t)}var mu=/^-?(0|[1-9]\d*)(\.\d+)?([eE][+-]?\d+)?$/,pu=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function bi(e){try{return JSON.parse(e)}catch{return JSON.parse(gu(e))}}function gu(e){let t="",n=0,r=(o,i)=>{throw new Error(`Invalid relaxed JSON: ${o} at position ${i}`)};for(;n<e.length&&(n=gi(e,n),!(n>=e.length));){let o=e[n];if("{}[]:".includes(o)){t+=o,n++;continue}if(o===","){let l=gi(e,n+1);if(e[l]==="}"||e[l]==="]"){n++;continue}t+=o,n++;continue}if(o==='"'||o==="'"){let l=n+1;for(;l<e.length&&e[l]!==o;)e[l]==="\\"&&l++,l++;l>=e.length&&r("unterminated string",n);let a=e.slice(n+1,l);o==="'"&&(a=hu(a)),t+='"'+a+'"',n=l+1;continue}let i=n;for(;i<e.length&&/[A-Za-z0-9_$.+\-]/.test(e[i]);)i++;i===n&&r("unexpected character "+JSON.stringify(o),n);let s=e.slice(n,i);if(s==="true"||s==="false"||s==="null"||mu.test(s)){t+=s,n=i;continue}if(pu.test(s)){if(e[gi(e,i)]===":"){t+='"'+s+'"',n=i;continue}r("unquoted value "+JSON.stringify(s),n)}r("invalid token "+JSON.stringify(s),n)}return t}var yt=Symbol("hyper-morph-json-merge:missing"),$s=["id","_id","uuid","key","slug","code","name"];function Jn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Or(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function bu(e,t,n){Object.defineProperty(e,t,{value:n,enumerable:!0,writable:!0,configurable:!0})}function Sn(e,t){if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!Sn(e[n],t[n]))return!1;return!0}if(Jn(e)&&Jn(t)){let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!Or(t,r)||!Sn(e[r],t[r]))return!1;return!0}return!1}function Us(e,t,n,r){return Sn(t,n)?t:Sn(t,e)?n:Sn(n,e)?t:Jn(t)&&Jn(n)?ku(Jn(e)?e:{},t,n,r):Array.isArray(t)&&Array.isArray(n)?wu(Array.isArray(e)?e:[],t,n,r):n}function zs(e,t,n,r){return t===yt&&n===yt?yt:t===yt?e===yt?n:Sn(n,e)?yt:n:n===yt?e===yt?t:yt:Us(e,t,n,r)}function ku(e,t,n,r){let o={},i=new Set([...Object.keys(e),...Object.keys(t),...Object.keys(n)]);for(let s of i){let l=zs(Or(e,s)?e[s]:yt,Or(t,s)?t[s]:yt,Or(n,s)?n[s]:yt,r);l!==yt&&bu(o,s,l)}return o}function yu(e){return e===null||typeof e!="object"}function uo(e){return typeof e+":"+String(e)}function xu(e,t){for(let n of t){let r=new Set;for(let o of n){if(!Or(o,e))return!1;let i=o[e];if(typeof i!="string"&&typeof i!="number")return!1;let s=uo(i);if(r.has(s))return!1;r.add(s)}}return!0}function vu(e,t,n,r){let o=[e,t,n],i=!0;for(let s of o)for(let l of s)Jn(l)||(i=!1);if(i){for(let s of r.keyCandidates)if(xu(s,o))return{kind:"keyed",field:s};return null}for(let s of o){let l=new Set;for(let a of s){if(!yu(a))return null;let h=uo(a);if(l.has(h))return null;l.add(h)}}return{kind:"self"}}function wu(e,t,n,r){let o=vu(e,t,n,r);if(!o)return n;let i=o.kind==="self"?uo:u=>uo(u[o.field]),s=u=>{let m=new Map;for(let p of u)m.set(i(p),p);return m},l=s(e),a=s(t),h=s(n),d=new Map,b=new Set([...l.keys(),...a.keys(),...h.keys()]);for(let u of b){let m=zs(l.has(u)?l.get(u):yt,a.has(u)?a.get(u):yt,h.has(u)?h.get(u):yt,r);m!==yt&&d.set(u,m)}let f=[];for(let u of n){let m=i(u);d.has(m)&&f.push(m)}for(let u=0;u<t.length;u++){let m=i(t[u]);if(!d.has(m)||f.includes(m))continue;let p=0;for(let v=u-1;v>=0;v--){let A=f.indexOf(i(t[v]));if(A!==-1){p=A+1;break}}f.splice(p,0,m)}return f.map(u=>d.get(u))}function Vs(e,t,n,r={}){let o=r.keyCandidates?[...r.keyCandidates,...$s]:$s;return Us(e===void 0?yt:e,t,n,{keyCandidates:o})}function ki(e,t,n,r={}){let o=r.parse||bi,i=[],s=(b,f)=>{if(typeof b!="string")return yt;try{return o(b)}catch(u){return i.push(`${f} side is not valid JSON (${u.message})`),yt}},l=s(t,"local"),a=s(n,"remote");if(l===yt)return{text:n,warnings:i};if(a===yt)return{text:t,warnings:i};let h=s(e,"base"),d=Vs(h===yt?void 0:h,l,a,r);return Sn(d,a)?{text:n,warnings:i}:Sn(d,l)?{text:t,warnings:i}:{text:JSON.stringify(d,null,2),warnings:i}}var Le=e=>!!e&&e.nodeType===1,Au=new Set("P H1 H2 H3 H4 H5 H6 DIV LI DD DT BLOCKQUOTE FIGCAPTION SUMMARY ADDRESS".split(" ")),Ws=5e4;function yi(e,t,n,r){let o=r.ignored,i=_s({ignored:o,ignoreAttribute:r.ignoreAttribute}),{unitsOf:s,meta:l}=i,a=r.baseURI,h=r.mergeTags!==null,d=T=>D=>{if(h&&D.tagName==="SCRIPT"){let F=Xn(D,r.mergeTags);if(F)return"merge:"+F.key}return D.parentElement&&D.parentElement.tagName==="HEAD"?Hs(D,a):T(D)},b=d(r.identity.base),f=d(r.identity.local),u=d(r.identity.remote),m=r.authored||r.identity,p=T=>T&&T.nodeType===9?T.documentElement:T,v=p(e),A=p(t),M=p(n),L=globalThis.__hyperMorphProfile,H=L?performance.now():0,B="[id],[data-id],script,head>*",te=T=>T===In?B:null,re=so(v,b,o,te(r.identity.base)),K=r.localIsBase?Gs():oi(v,A,{analyzer:i,baseIndex:re,sideIndex:so(A,f,o,te(r.identity.local)),baseId:m.base,sideId:m.local}),W=oi(v,M,{analyzer:i,baseIndex:re,sideIndex:so(M,u,o,te(r.identity.remote)),baseId:m.base,sideId:m.remote});Ve(),Ke(K,W),Ke(W,K),L&&(L.alignTotal=(L.alignTotal||0)+(performance.now()-H),H=performance.now());let he=v.ownerDocument.implementation.createHTMLDocument(""),V=new WeakMap,xe=new WeakMap,We=[],at=[],Nt=new Set,xt=[],_e=new Set,dt=new Set,Ze=new Set,Rt=new WeakMap,nt=r.conflicts||"remote",Qe=T=>We.push(T),ct=T=>We.push(T),C=T=>at.push(T),G=Ce(),ye=y(v,K.map.get(v),W.map.get(v),!!r.localIsBase,!!r.childrenOnly);ye.tagName==="HTML"?he.replaceChild(ye,he.documentElement):he.body.appendChild(ye),L&&(L.build=(L.build||0)+(performance.now()-H));let se=r.childrenOnly?!Ge(ft(ye),ft(M)):!ht(ye,M);return{doc:he,root:ye,provenance:V,textMappers:xe,decisions:We,conflicts:at,localDiverged:se,mergedScripts:Nt,segments:xt,remoteIdOf:r.identity.remote,customIdentity:r.identity.remote!==In,L:K,R:W};function Ce(){let T=new Map,D=new Set;if(r.localIsBase||!K.insertedByHash)return{partner:T,drop:D};let F=K.insertedByHash(),z=W.insertedByHash();if(!F.size||!z.size)return{partner:T,drop:D};let q={ignored:o,remoteWins:r.remoteWins,inlineCache:Rt},U=pe=>{let Xe=0;for(let Ee=pe.parentNode;Ee;Ee=Ee.parentNode)Xe++;return Xe},Q=[],le=pe=>{let Xe=pe.textContent.trim();return Xe.split(/\s+/).length>=3||Xe.replace(/\s/g,"").length>=12},ke=pe=>{let Xe=K.map.get(pe),Ee=W.map.get(pe);return Xe&&K.reverse.get(Xe.parentNode)!==pe.parentNode||Ee&&W.reverse.get(Ee.parentNode)!==pe.parentNode},me=(pe,Xe,Ee)=>{for(let At of Ee.parentNode.children){let Mt=At!==Ee&&pe.reverse.get(At);if(Mt&&ke(Mt))return!0}let Dt=pe.reverse.get(Ee.parentNode);if(Dt){for(let At of Dt.children)if(!Xe.map.has(At)&&!o(At))return!0}return!1};for(let[pe,Xe]of F){let Ee=z.get(pe);if(!Ee)continue;let Dt=Xe.length===1&&Ee.length===1;for(let At of Xe)Dn(At,q)||Q.push([At,Ee,U(At),Dt&&(le(At)||me(K,W,At)||me(W,K,Ee[0]))])}if(!Q.length)return{partner:T,drop:D};Q.sort((pe,Xe)=>pe[2]-Xe[2]);let ve=new Set,Pe=new Set,je=pe=>{for(let Xe of pe.querySelectorAll("*"))ve.add(Xe)},wt=(pe,Xe)=>pe.reverse.get(Xe.parentNode)||null;for(let[pe,Xe,,Ee]of Q){if(ve.has(pe))continue;let Dt=wt(K,pe),At=gt=>!Pe.has(gt)&&!ve.has(gt)&>.tagName===pe.tagName,Mt=Xe.find(gt=>At(gt)&&Dt&&wt(W,gt)===Dt)||(Ee?Xe.find(At):null);Mt&&(Pe.add(Mt),je(pe),je(Mt),!(Dt&&wt(W,Mt)===Dt)&&(T.set(pe,Mt),T.set(Mt,pe),D.add(nt==="local"?Mt:pe)))}return{partner:T,drop:D}}function rt(T,D,F){if(_e.add(T),G.drop.has(T))return null;_e.add(F);let z=D==="local"?T:F,q=D==="local"?F:T,U;return i.unitHash(z)===i.unitHash(q)?(U=ce(z,"local",!0),V.get(U).remote=q):U=$(z,q),C({kind:"structure",el:U,detail:"both-moved",base:null,local:z,remote:q}),Qe({kind:"insert",el:U,source:"both"}),U}function Ve(){if(!K.weak||!W.weak||!K.weak.size||!W.weak.size||!K.unpair)return;let T=new Map;for(let F of K.weak){let z=K.map.get(F);Le(F)&&Le(z)&&T.set(i.unitHash(z),F)}let D=!1;for(let F of Array.from(W.weak)){let z=W.map.get(F);if(!Le(F)||!Le(z))continue;let q=T.get(i.unitHash(z));!q||q===F||!K.weak.has(q)||K.map.has(F)&&W.map.has(q)||K.map.get(q).tagName===z.tagName&&(K.unpair(q),W.unpair(F),D=!0)}D&&(K.rematch(),W.rematch())}function Ke(T,D){if(!T.weak||!T.weak.size||!D.insertedByHash)return;let F=D.insertedByHash();if(!F.size)return;let z=!1;for(let q of Array.from(T.weak)){let U=T.map.get(q);if(!U)continue;let Q=F.get(i.unitHash(U));Q&&Q.some(le=>le.tagName===U.tagName)&&(T.unpair(q),z=!0)}z&&T.rematch()}function et(T,D){if(T.map.has(D))return T.map.get(D);let F=[];for(let q=D.parentNode;q&&!T.map.has(q);q=q.parentNode)F.push(q);let z=F.length?F[F.length-1].parentNode:D.parentNode;if(!z||!T.identical.has(z))return null;T.pairIdenticalChildren(z);for(let q=F.length-1;q>=0;q--)T.pairIdenticalChildren(F[q]);return T.map.get(D)||null}function ut(T,D,F){if(dt.has(T)||Ze.has(T))return C({kind:"structure",el:null,detail:"both-moved",base:T}),dt.has(T)?null:ce(F,D);let z=et(K,T),q=et(W,T);(!z||!q)&&C({kind:"structure",el:null,detail:"move-beats-delete",base:T});let U=y(T,z,q,!1);return(D==="local"?Qe:ct)({kind:"move",el:U,source:D}),U}function k(T,D,F,z){return z||!D||D===F?{el:F,asBase:!0,twin:q=>q,baseOf:q=>q,units:s(F),here:()=>!0,parentOfTwin:()=>F}:{el:D,asBase:!1,twin:q=>T.map.get(q),baseOf:q=>T.reverse.get(q),units:s(D),here:q=>Le(q)?q.parentNode===D||D.tagName==="TEMPLATE"&&q.parentNode===D.content:q.parent===D||D.tagName==="TEMPLATE"&&q.parent===D.content}}function g(T,D,F){return!D||F&&F.identical.has(T)?!1:Le(T)?l(T).hash!==l(D).hash:T.value!==D.value}function y(T,D,F,z,q=!1){let U=z||r.remoteWins(T),Q=T.namespaceURI&&T.namespaceURI!=="http://www.w3.org/1999/xhtml"?he.createElementNS(T.namespaceURI,T.tagName):he.createElement(T.tagName),le={base:T,local:D||null,remote:F||null};if(V.set(Q,le),_e.add(T),dt.add(T),D&&_e.add(D),F&&_e.add(F),r.skipUnchanged&&!q&&(r.localIsBase||K.identical.has(T))&&F&&W.identical.has(T)&&!r.remoteWins(T)){le.unchanged=!0;for(let me of T.attributes)me.namespaceURI?Q.setAttributeNS(me.namespaceURI,me.name,me.value):Q.setAttribute(me.name,me.value);return Q}Ze.add(T),q||E(T,U?T:D,F,Q);let ke=T.tagName;if(Kt(T))_(T,U?T:D,F,Q);else if(ke==="TEXTAREA")Q.textContent=O(T.textContent,(U?T:D)?(U?T:D).textContent:T.textContent,F?F.textContent:T.textContent,Q,"text");else{let me=ge(T,D,F,U,Q),ve=ke==="TEMPLATE"&&Q.content?Q.content:Q;for(let Pe of me)ve.appendChild(Pe)}return Ze.delete(T),Q}function O(T,D,F,z,q){if(D===F)return D;if(D===T)return F!==T&&ct({kind:q,node:z,source:"remote"}),F;if(F===T)return Qe({kind:q,node:z,source:"local"}),D;let U=nt==="local"?D:F;return C({kind:q,node:z,base:T,local:D,remote:F,resolved:U}),We.push({kind:q,node:z,source:"both"}),U}function _(T,D,F,z){let q=T.textContent,U=D?D.textContent:q,Q=F?F.textContent:q,le=h?Xn(T,r.mergeTags,!0):null;if(le&&U!==Q){let ke=F&&F.getAttribute("merge-key")||T.getAttribute("merge-key"),{text:me,warnings:ve}=ki(r.localIsBase?void 0:q,U,Q,{parse:le.recognizer.parse,keyCandidates:ke?ke.split(/[\s,]+/).filter(Boolean):void 0});for(let Pe of ve)console.warn(`[hyper-morph] merge "${le.raw}": ${Pe}`);z.textContent=me,Nt.add(z),me!==Q?Qe({kind:"text",node:z,source:me===U?"local":"both"}):me!==q&&ct({kind:"text",node:z,source:"remote"});return}z.textContent=O(q,U,Q,z,"text")}function E(T,D,F,z){let q=new Map;for(let U of[T,D,F])if(U)for(let Q of U.attributes)r.ignoreAttribute(U,Q.name)||q.set(Q.name,Q);for(let[U,Q]of q){let le=T?T.getAttribute(U):null,ke=D?D.getAttribute(U):le,me=F?F.getAttribute(U):le,ve;ke===me?ve=ke:ke===le?(ve=me,ct({kind:"attr",el:z,name:U,source:"remote"})):me===le?(ve=ke,Qe({kind:"attr",el:z,name:U,source:"local"})):(ve=I(U,le,ke,me),ve===void 0&&(ve=nt==="local"?ke:me,C({kind:"attr",el:z,name:U,base:le,local:ke,remote:me,resolved:ve})),We.push({kind:"attr",el:z,name:U,source:"both"})),ve!=null&&(Q.namespaceURI?z.setAttributeNS(Q.namespaceURI,Q.name,ve):z.setAttribute(U,ve))}}function I(T,D,F,z){if(T==="class"){let q=me=>new Set((me||"").split(/\s+/).filter(Boolean)),U=q(D),Q=q(F),le=q(z),ke=new Set;for(let me of new Set([...U,...Q,...le])){let ve=U.has(me),Pe=Q.has(me),je=le.has(me);(Pe===je?Pe:Pe===ve?je:Pe)&&ke.add(me)}return[...ke].join(" ")}if(T==="style"){let q=ve=>{let Pe=new Map;if(!ve)return Pe;let je=0,wt=null,pe="",Xe=()=>{let Ee=pe.indexOf(":");Ee>0&&Pe.set(pe.slice(0,Ee).trim(),pe.slice(Ee+1).trim()),pe=""};for(let Ee of ve){if(wt){pe+=Ee,Ee===wt&&(wt=null);continue}if(Ee==='"'||Ee==="'"){wt=Ee,pe+=Ee;continue}if(Ee==="("?je++:Ee===")"&&je--,Ee===";"&&je===0){Xe();continue}pe+=Ee}return pe.trim()&&Xe(),Pe},U=q(D),Q=q(F),le=q(z),ke=new Map,me=!1;for(let ve of new Set([...U.keys(),...Q.keys(),...le.keys()])){let Pe=U.get(ve)??null,je=Q.get(ve)??null,wt=le.get(ve)??null,pe;je===wt?pe=je:je===Pe?pe=wt:wt===Pe?pe=je:(pe=nt==="local"?je:wt,me=!0),pe!=null&&ke.set(ve,pe)}return me?void 0:[...ke].map(([ve,Pe])=>`${ve}: ${Pe}`).join("; ")}}function N(T,D,F,z){let q=T.value,U=z?q:D?D.value:"",Q=F?F.value:"";_e.add(T),D&&_e.add(D),F&&_e.add(F);let le=Tr(q,U,Q,nt),ke=le.text===""?null:he.createTextNode(le.text);ke&&(V.set(ke,{base:T.nodes,local:D?D.nodes:null,remote:F?F.nodes:null}),xe.set(ke,le.mapLocalOffset)),U!==q&&Q!==q?We.push({kind:"text",node:ke,source:"both"}):U!==q?Qe({kind:"text",node:ke,source:"local"}):Q!==q&&ct({kind:"text",node:ke,source:"remote"});for(let me of le.conflicts)C({kind:"text",node:ke,base:q.slice(me.bs,me.be),local:me.local,remote:me.remote,resolved:me.resolved});return ke}function j(T,D){return Er(T,D).every(F=>F.bs===F.be)}function J(T,D){let F=T?T.value:"",z=D?D.value:"",q;if(F===z||!z?q=F:F?j(F,z)?q=z:j(z,F)?q=F:(q=nt==="local"?F:nt==="both"?F+z:z,C({kind:"structure",el:null,detail:"insert-collision",local:F,remote:z,resolved:q})):q=z,T&&_e.add(T),D&&_e.add(D),q==="")return null;let U=he.createTextNode(q);return V.set(U,{base:null,local:T?T.nodes:null,remote:D?D.nodes:null}),F?Qe({kind:"insert",el:U,source:z&&F===z?"both":"local"}):ct({kind:"insert",el:U,source:"remote"}),U}function $(T,D){let F={ignored:o,remoteWins:r.remoteWins,inlineCache:Rt},z=le=>s(le).every(ke=>Le(ke)?Dn(ke,F):ke.kind==="text"),q=null;if(z(T)&&z(D)){let le=T.textContent,ke=D.textContent;le===ke||j(ke,le)?q=D:j(le,ke)&&(q=T)}if(!q){let le=nt==="local",ke=ce(le?T:D,le?"local":"remote",!0),me=V.get(ke);return le?me.remote=D:me.local=T,C({kind:"structure",el:ke,detail:"insert-collision",local:T,remote:D,resolved:le?T:D}),ke}let U=T.namespaceURI&&T.namespaceURI!=="http://www.w3.org/1999/xhtml"?he.createElementNS(T.namespaceURI,T.tagName):he.createElement(T.tagName);E(null,T,D,U),V.set(U,{base:null,local:T,remote:D}),_e.add(T),_e.add(D);let Q=pi({base:Array.from(q.childNodes),local:Array.from(T.childNodes),remote:Array.from(D.childNodes),out:he,policy:nt,idOf:{local:f,remote:u},ignored:o,ignoreAttribute:r.ignoreAttribute,remoteWins:r.remoteWins,provenance:V,textMappers:xe,conflicts:at,decisions:We,node:U});xt.push(...Q.segments);for(let le of Q.nodes)U.appendChild(le);return U}function ce(T,D,F=!1){if(!F&&Le(T)){let Q=G.partner.get(T);if(Q)return rt(T,D,Q)}if(!Le(T)){if(T.value==="")return null;let Q=T.kind==="comment"?he.createComment(T.value):he.createTextNode(T.value);return V.set(Q,{base:null,local:D==="local"?T.nodes:null,remote:D==="remote"?T.nodes:null}),_e.add(T),Q}let z=T.namespaceURI&&T.namespaceURI!=="http://www.w3.org/1999/xhtml"?he.createElementNS(T.namespaceURI,T.tagName):he.createElement(T.tagName);for(let Q of T.attributes)Q.namespaceURI?z.setAttributeNS(Q.namespaceURI,Q.name,Q.value):z.setAttribute(Q.name,Q.value);V.set(z,{base:null,local:D==="local"?T:null,remote:D==="remote"?T:null}),_e.add(T);let q=T.tagName==="TEMPLATE"&&z.content?z.content:z,U=D==="local"?K:W;for(let Q of s(T)){let le=Le(Q)?U.reverse.get(Q):null;if(le&&dt.has(le)){C({kind:"structure",el:null,detail:"both-moved",base:le});continue}if(le&&!Ze.has(le)){let me=K.map.get(le)||null,ve=W.map.get(le)||null;if(me||ve){let Pe=y(le,me,ve,!1);D==="local"?Qe({kind:"move",el:Pe,source:"local"}):ct({kind:"move",el:Pe,source:"remote"}),q.appendChild(Pe);continue}}let ke=ce(Q,D);ke&&q.appendChild(ke)}return z}function ge(T,D,F,z,q){D&&K.identical.has(T)&&K.pairIdenticalChildren(T),F&&W.identical.has(T)&&W.pairIdenticalChildren(T);let U=k(K,D,T,z),Q=k(W,F,T,!1),le=s(T),ke=new Set(le),me=new Map;for(let Y=0;Y<le.length;Y++)me.set(le[Y],Y);let ve=[],Pe=new Set,je=new Map,wt=new Set,pe=new Set,Xe=[];no();let Ee=Y=>{let Te=[];for(let be of Y.units){if(pe.has(be))continue;let Ne=Y.baseOf(be);Ne&&ke.has(Ne)&&Te.push(me.get(Ne))}return Te},Dt=Y=>Y.every((Te,be)=>be===0||Te>=Y[be-1]),At=!U.asBase&&!Dt(Ee(U)),Mt=!Q.asBase&&!Dt(Ee(Q));At&&Mt&&C({kind:"structure",el:null,detail:"both-reordered",base:T});let gt=Mt||!At?{V:Q,A:W,side:"remote",other:U,otherA:K,otherSide:"local"}:{V:U,A:K,side:"local",other:Q,otherA:W,otherSide:"remote"};At?Qe({kind:"move",el:null,source:Mt?"both":"local",base:T}):Mt&&ct({kind:"move",el:null,source:"remote",base:T});let xr=U.asBase?[]:U.units.filter(Y=>!U.baseOf(Y)&&!pe.has(Y)&&!G.partner.has(Y)),vr=Q.asBase?[]:Q.units.filter(Y=>!Q.baseOf(Y)&&!pe.has(Y)&&!G.partner.has(Y)),hn=new Map;if(xr.length&&vr.length){let Y=new Map,Te=new Map;for(let ie of vr){if(Le(ie)){let oe=u(ie);oe&&Y.set(oe,ie)}let Se=i.unitHash(ie);Te.has(Se)||Te.set(Se,[]),Te.get(Se).push(ie)}let be=(ie,Se)=>{let oe=ie.units.indexOf(Se);for(let Re=oe-1;Re>=0;Re--){let Fe=ie.baseOf(ie.units[Re]);if(Fe)return Fe}return"start"},Ne=new Map,$e=new Map;for(let ie of vr){let Se=be(Q,ie);Le(ie)?($e.has(Se)||$e.set(Se,[]),$e.get(Se).push(ie)):ie.kind==="text"&&!Ne.has(Se)&&Ne.set(Se,ie)}for(let ie of xr){let Se=null;if(Le(ie)){let oe=f(ie);oe&&Y.has(oe)&&!hn.has(Y.get(oe))&&(Se=Y.get(oe))}else if(ie.kind==="text"){let oe=Ne.get(be(U,ie));oe&&!hn.has(oe)&&(Se=oe)}if(!Se){let oe=Te.get(i.unitHash(ie));oe&&(Se=oe.find(Re=>!hn.has(Re)&&Le(Re)===Le(ie)&&(Le(Re)?Re.tagName===ie.tagName:Re.kind===ie.kind))||null)}if(!Se&&Le(ie)){let oe=m.local(ie),Re=($e.get(be(U,ie))||[]).filter(Fe=>{let Pt=m.remote(Fe);return!hn.has(Fe)&&Fe.tagName===ie.tagName&&!(oe&&Pt&&oe!==Pt)&&i.similar(ie,Fe)});Re.length===1&&(Se=Re[0])}Se&&(hn.set(Se,ie),hn.set(ie,Se))}}let nn=Y=>{if(_e.has(Y))return je.get(Y)||null;let Te=U.twin(Y),be=Q.twin(Y),Ne=Te&&!U.asBase&&!U.here(Te),$e=be&&!Q.asBase&&!Q.here(be);if(Ne||$e){if((!Te||!be)&&C({kind:"structure",el:null,detail:"move-beats-delete",base:Y}),!Wt(Y))return _e.add(Y),null;C({kind:"structure",el:null,detail:"both-moved",base:Y})}if(!Te&&!be)return _e.add(Y),ct({kind:"remove",source:"both",base:Y}),null;if(!Te&&!g(Y,be,W))return _e.add(Y),Qe({kind:"remove",source:"local",base:Y}),null;if(!be&&!g(Y,Te,K))return _e.add(Y),ct({kind:"remove",source:"remote",base:Y}),null;let ie=!Te||!be,Se=U.asBase?K.map.get(Y)||null:Te,oe;return Le(Y)?oe=y(Y,Se,be,U.asBase):Y.kind==="comment"?oe=vt(Y,Se,be,U.asBase):oe=N(Y,Se,be,U.asBase),_e.add(Y),oe&&(je.set(Y,oe),Te&&je.set(Te,oe),be&&je.set(be,oe),ie&&(C({kind:"structure",el:oe,detail:"edit-beats-delete",base:Y}),Te?Qe({kind:"insert",el:oe,source:"local"}):ct({kind:"insert",el:oe,source:"remote"}))),oe},Un=(Y,Te,be,Ne)=>{if(_e.has(Y))return je.get(Y)||null;let $e=Te.baseOf(Y);if($e&&ke.has($e))return pe.has($e)&&!pe.has(Y)?Qr($e,Y,Ne):nn($e);if($e)return eo($e,Y,Ne);let ie=hn.get(Y);if(ie){let oe=Ne==="local"?Y:ie,Re=Ne==="local"?ie:Y,Fe;return Le(oe)?i.unitHash(oe)===i.unitHash(Re)?(Fe=ce(oe,"local"),V.get(Fe).remote=Re):Fe=$(oe,Re):Fe=J(oe,Re),_e.add(oe),_e.add(Re),Fe&&(je.set(oe,Fe),je.set(Re,Fe),Le(oe)&&Qe({kind:"insert",el:Fe,source:"both"})),Fe}let Se=ce(Y,Ne);return Se&&(je.set(Y,Se),Ne==="local"?Qe({kind:"insert",el:Se,source:"local"}):ct({kind:"insert",el:Se,source:"remote"})),Se},Qr=(Y,Te,be)=>{let Ne;return Le(Y)?(Ne=ut(Y,be,Te),Ne&&_e.add(Te)):(Ne=ce(Te,be),_e.add(Te),Ne&&(be==="local"?Qe:ct)({kind:"insert",el:Ne,source:be})),Ne&&je.set(Te,Ne),Ne},eo=(Y,Te,be)=>{let $e=(be==="local"?W:K).map.get(Y),ie=Te,Se=$e?Tt($e,be==="local"?F:D,be==="local"?W:K):!1,oe=$e&&!Se&&!Et(Y,$e);if(oe&&be===gt.otherSide)return C({kind:"structure",el:null,detail:"both-moved",base:Y}),null;if(oe&&C({kind:"structure",el:null,detail:"both-moved",base:Y}),$e||C({kind:"structure",el:null,detail:"move-beats-delete",base:Y}),Ze.has(Y)){C({kind:"structure",el:null,detail:"both-moved",base:Y});let Fe=ce(ie,be);return Fe&&je.set(Te,Fe),Fe}let Re=Le(Y)?y(Y,be==="local"?ie:K.map.get(Y)||null,be==="remote"?ie:W.map.get(Y)||null,!1):null;return Re&&(je.set(Y,Re),je.set(Te,Re),$e&&je.set($e,Re),be==="local"?Qe({kind:"move",el:Re,source:"local"}):ct({kind:"move",el:Re,source:"remote"})),Re};for(let Y of gt.V.units){if(pe.has(Y)){let be=je.get(Y);Pe.has(be)||(ve.push(be),Pe.add(be));continue}if(_e.has(Y)&&!(je.get(Y)&&Pe.has(je.get(Y)))){let be=gt.V.baseOf(Y);be&&!ke.has(be)&&C({kind:"structure",el:null,detail:"both-moved",base:be});continue}let Te=Un(Y,gt.V,gt.A,gt.side);Te&&!Pe.has(Te)&&(ve.push(Te),Pe.add(Te),!gt.V.baseOf(Y)&&!hn.has(Y)&&!pe.has(Y)&&wt.add(Te))}for(let Y of Xe)Pe.has(Y.frag)||(ve.splice(to(Y.at),0,Y.frag),Pe.add(Y.frag));if(!gt.other.asBase){let Y=gt.other,Te=gt.otherSide,be=gt.otherA,Ne=null,$e=0,ie=null;for(let Se of Y.units){let oe=je.get(Se);if(oe&&Pe.has(oe)){Ne=oe,ie=null;continue}if(_e.has(Se)){let Pt=Y.baseOf(Se);Pt&&!ke.has(Pt)&&C({kind:"structure",el:null,detail:"both-moved",base:Pt});continue}let Re=Un(Se,Y,be,Te);if(!Re)continue;let Fe;if(ie)Fe=ve.indexOf(ie)+1;else if(Ne){if(Fe=ve.indexOf(Ne)+1,Te==="remote")for(;Fe<ve.length&&wt.has(ve[Fe]);)Fe++}else Fe=$e++;ve.splice(Fe,0,Re),Pe.add(Re),ie=Re}}for(let Y=0;Y<le.length;Y++){let Te=le[Y];if(_e.has(Te))continue;let be=nn(Te);be&&ve.splice(to(Y),0,be)}return ve;function to(Y){for(let Te=Y-1;Te>=0;Te--){let be=je.get(le[Te]);if(be){let Ne=ve.indexOf(be);if(Ne>=0)return Ne+1}}return 0}function zn(Y){let Te={ignored:o,remoteWins:()=>!1},be=Z=>Y(Z)||Le(Z)&&r.remoteWins(Z)&&mn.has(Z.tagName)&&Dn(Z,Te),Ne=new Map,$e=Z=>{if(!Le(Z)||!Au.has(Z.tagName))return!1;let de=Ne.get(Z);return de===void 0&&(de=!o(Z)&&!r.remoteWins(Z)&&s(Z).every(be),Ne.set(Z,de)),de},ie=Z=>!Le(Z)&&Z.kind==="text",Se=null,oe=new Map,Re=Z=>{let de=oe.get(Z);if(de)return de;let we=Le(Z)?Z.textContent:Z.value;de=new Set;let Ie=we.toLowerCase();if(!(we.length>Ws))if(/^[\x00-\x7f]*$/.test(Ie))for(let Oe of Ie.split(/[^\p{L}\p{N}]+/u))Oe&&de.add(Oe);else for(let Oe of ci(Ie))/^[\s\p{P}]+$/u.test(Oe)||de.add(Oe);return oe.set(Z,de),de},Fe=Z=>(Le(Z)?Z.textContent:Z.value).toLowerCase().replace(/\s+/g," ").trim(),Pt=new Map,rn=Z=>{let de=Pt.get(Z);if(de)return de;de=new Set(Re(Z));let we=Oe=>{if(Oe)for(let Ye of Re(Oe))de.add(Ye)},Ie=ke.has(Z)?Z:!U.asBase&&U.baseOf(Z)||!Q.asBase&&Q.baseOf(Z);return Ie&&(we(Ie),we(K.map.get(Ie)),we(W.map.get(Ie))),Pt.set(Z,de),de},pn=(Z,de)=>{let we=Fe(de),Ie=ke.has(Z)?Z:!U.asBase&&U.baseOf(Z)||!Q.asBase&&Q.baseOf(Z),Oe=mt=>we?mt.split(we).length-1:0;if(Ie&&Le(de)&&!ke.has(de)){let mt=Oe(Fe(Ie));for(let bt of[K.map.get(Ie),W.map.get(Ie)]){if(!bt||bt===de||bt.ownerDocument!==de.ownerDocument)continue;let Qt=Fe(bt);if(Qt.length>we.length&&Oe(Qt)>=mt&&(Qt.startsWith(we)||Qt.endsWith(we)))return!1}}let Ye=Re(de),ot=rn(Z),qt=0;for(let mt of Ye)ot.has(mt)&&qt++;if(Ye.size&&qt*2>=Ye.size)return!0;if(!we||we.length>Ws)return!1;let zt=Ie?[Z,Ie,K.map.get(Ie),W.map.get(Ie)]:[Z],Jt=(mt,bt)=>mt!==bt&&(mt.startsWith(bt)||mt.endsWith(bt));if(zt.some(mt=>mt&&Jt(Fe(mt),we)))return!0;if(!ke.has(de)||!Ie)return!1;let _t=Fe(Z),Zt=Fe(Ie);return[K.map.get(de),W.map.get(de)].some(mt=>{let bt=mt&&Fe(mt);return!!bt&&_t!==bt&&(_t.startsWith(bt)&&!Zt.startsWith(bt)||_t.endsWith(bt)&&!Zt.endsWith(bt))})},Ut=Z=>{Se||(Se=new Set),Se.add(Z)},wn=Z=>{Ut(Z);for(let[de,we]of[[K,U],[W,Q]]){if(we.asBase)continue;let Ie=de.map.get(Z);Ie&&we.here(Ie)&&Ut(Ie)}},De=(Z,de)=>Z.asBase||le.every(we=>!Le(we)||de.identical.has(we)&&Z.here(de.map.get(we)))&&Z.units.every(we=>!Le(we)||Z.baseOf(we));if(De(U,K)&&De(Q,W))return null;let Ue=Z=>{if(Z.asBase)return!1;let de=-1;for(let we of Z.units){let Ie=Le(we)?Z.baseOf(we):null;if(!Ie||!ke.has(Ie))continue;let Oe=me.get(Ie);if(Oe<de)return!0;de=Oe}return!1};if(Ue(U)||Ue(Q))return null;for(let[Z,de]of[[U,K],[Q,W]]){if(Z.asBase||De(Z,de))continue;let we=Z.units,Ie=de===K?m.local:m.remote,Oe=(fe,ze)=>{let st=Le(fe)&&m.base(fe),tt=Le(ze)&&Ie(ze);return!st||!tt||st===tt},Ye=new Map;for(let fe=0;fe<we.length;fe++)Ye.set(we[fe],fe);let ot=fe=>!!fe&&(Le(fe)?Z.here(fe):Ye.has(fe)),qt=fe=>{let ze=Z.twin(fe);return ot(ze)?ze:null},zt=le.filter(fe=>!Z.twin(fe)&&$e(fe)),Jt=we.filter(fe=>!Z.baseOf(fe)&&$e(fe)),_t=(fe,ze)=>ze===le?!!qt(fe):ke.has(Z.baseOf(fe)),Zt=fe=>{let ze=new Int32Array(fe.length),st=new Int32Array(fe.length),tt=-1;for(let Je=0;Je<fe.length;Je++)ze[Je]=tt,_t(fe[Je],fe)&&(tt=Je);tt=fe.length;for(let Je=fe.length-1;Je>=0;Je--)st[Je]=tt,_t(fe[Je],fe)&&(tt=Je);return{prev:ze,next:st}},mt=Zt(we),bt=Zt(le),Qt=(fe,ze)=>{wn(fe),Ut(ze)};for(let fe of Jt){let ze=Ye.get(fe),st=mt.prev[ze],tt=mt.next[ze],Je=st>=0?Z.baseOf(we[st]):null,an=tt<we.length?Z.baseOf(we[tt]):null,on=Je?me.get(Je):-1,An=an?me.get(an):le.length;for(let en=Math.max(0,on);en<=Math.min(An,le.length-1);en++){let $t=le[en];($e($t)||ie($t))&&(!Oe($t,fe)||!pn($t,fe)||(ie($t)?Ut(fe):Qt($t,fe)))}}let ln=(fe,ze,st)=>{for(let tt=ze+st;tt>=0&&tt<fe.length;tt+=st){let Je=fe[tt];if($e(Je))return Je;if(Le(Je)||Je.value.trim())return null}return null},ro=fe=>{let ze=new Set;for(let st of s(fe))if(!Le(st)&&st.kind==="text")for(let tt of Re(st))ze.add(tt);return ze},wr=(fe,ze)=>{let st=Re(ze),tt=new Set;for(let Je of ro(fe))st.has(Je)||tt.add(Je);return tt},Ar=(fe,ze)=>{if(!fe.size)return!1;let st=Re(ze),tt=0;for(let Je of fe)st.has(Je)&&tt++;return tt*2>=fe.size};for(let fe of le){if(de.identical.has(fe)||!$e(fe))continue;let ze=qt(fe);if(!ze||!$e(ze))continue;let st=wr(ze,fe),tt=wr(fe,ze);for(let Je of[-1,1]){let an=ln(le,me.get(fe),Je);an&&Ar(st,an)&&(Qt(fe,ze),wn(an));let on=ln(we,Ye.get(ze)??-1,Je);if(on&&Ar(tt,on)){Qt(fe,ze);let An=Z.baseOf(on);An?Qt(An,on):Ut(on)}}}for(let fe of zt){let ze=me.get(fe),st=bt.prev[ze],tt=bt.next[ze],Je=st>=0?qt(le[st]):null,an=tt<le.length?qt(le[tt]):null,on=Je?Ye.get(Je)??-1:-1,An=an?Ye.get(an)??-1:we.length;for(let en=Math.max(0,on);en<=Math.min(An,we.length-1);en++){let $t=we[en];if(($e($t)||ie($t))&&!(!Oe(fe,$t)||!pn($t,fe))&&(wn(fe),!ie($t))){let Yt=Z.baseOf($t);Yt?Qt(Yt,$t):Ut($t)}}}}if(!Se)return null;for(let Z of Array.from(Se))if(ke.has(Z))for(let de of[K,W]){let we=de.map.get(Z);we&&we.parentNode!==(de===K?D:F)&&!(de===K?U:Q).asBase&&Se.delete(Z)}return Se.size?Se:null}function no(){if((U.asBase||K.identical.has(T))&&(Q.asBase||W.identical.has(T)))return;let Y={ignored:o,remoteWins:r.remoteWins,inlineCache:Rt},Te=De=>Le(De)?Dn(De,Y):De.kind==="text",be=zn(Te),Ne=De=>be&&be.has(De)||Te(De),$e=le.map(Ne);if(!$e.includes(!0))return;let ie=De=>{let Ue=De.units,Z=new Map;for(let ot=0;ot<Ue.length;ot++)Z.set(Ue[ot],ot);let de=[],we=-1;for(let ot=0;ot<le.length;ot++){if($e[ot])continue;let qt=De.twin(le[ot]),zt=qt?Z.get(qt):void 0;zt===void 0||zt<=we||Ne(qt)||(de.push([ot,zt]),we=zt)}let Ie=[],Oe=-1,Ye=-1;for(let ot=0;ot<=de.length;ot++){let[qt,zt]=ot<de.length?de[ot]:[le.length,Ue.length],Jt={bLo:-1,bHi:-1,sLo:-1,sHi:-1,next:zt};for(let _t=Oe+1;_t<qt;_t++)$e[_t]&&(Jt.bLo<0&&(Jt.bLo=_t),Jt.bHi=_t);for(let _t=Ye+1;_t<zt;_t++)Ne(Ue[_t])&&(Jt.sLo<0&&(Jt.sLo=_t),Jt.sHi=_t);Ie.push(Jt),Oe=qt,Ye=zt}return{units:Ue,list:Ie}},Se=ie(U),oe=ie(Q),Re=[];for(let De of[Se,oe])for(let Ue of De.list)Ue.bLo>=0&&Re.push([Ue.bLo,Ue.bHi]);Re.sort((De,Ue)=>De[0]-Ue[0]);let Fe=[];for(let[De,Ue]of Re){let Z=Fe[Fe.length-1];Z&&De<=Z.hi?Z.hi=Math.max(Z.hi,Ue):Fe.push({lo:De,hi:Ue})}let Pt=(De,Ue)=>{let Z=-1,de=-1;for(let Oe=0;Oe<De.list.length;Oe++){let Ye=De.list[Oe];Ye.bLo<Ue.lo||Ye.bLo>Ue.hi||(Z<0&&(Z=Oe),de=Oe)}let we=1/0,Ie=-1;for(let Oe=Z;Oe>=0&&Oe<=de;Oe++){let Ye=De.list[Oe];Ye.sLo>=0&&(we=Math.min(we,Ye.sLo),Ie=Math.max(Ie,Ye.sHi)),Oe<de&&(we=Math.min(we,Ye.next),Ie=Math.max(Ie,Ye.next))}return Ie<0?[]:De.units.slice(we,Ie+1)},rn=(De,Ue)=>De.length===Ue.length&&De.every((Z,de)=>i.unitHash(Z)===i.unitHash(Ue[de])),pn=De=>!Le(De)&&De.kind==="comment",Ut=De=>{if(!De.length)return[];let Ue=(Oe,Ye)=>Le(Oe)?Oe:Oe.nodes[Ye?Oe.nodes.length-1:0],Z=Ue(De[0]),de=Ue(De[De.length-1],!0),we=Oe=>Oe&&Le(Oe)&&o(Oe);for(;we(Z.previousSibling);)Z=Z.previousSibling;for(;we(de.nextSibling);)de=de.nextSibling;let Ie=[];for(let Oe=Z;Oe&&(Ie.push(Oe),Oe!==de);Oe=Oe.nextSibling);return Ie},wn=De=>De.some(Ue=>Le(Ue)&&o(Ue));for(let De of Fe){let Ue=le.slice(De.lo,De.hi+1),Z=U.asBase?null:Pt(Se,De),de=Q.asBase?null:Pt(oe,De);if(Ue.some(pn)||Z&&Z.some(pn)||de&&de.some(pn))continue;let we=Ut(Z||Ue),Ie=Ut(de||Ue);if((!Z||rn(Ue,Z))&&(!de||rn(Ue,de))&&!(Z&&wn(we)))continue;let Oe=pi({base:Ut(Ue),local:we,remote:Ie,out:he,policy:nt,blocks:be,L:Z?K:Ks(K,T),R:de?W:Ks(W,T),idOf:{local:f,remote:u},ignored:o,ignoreAttribute:r.ignoreAttribute,remoteWins:r.remoteWins,mergeElement:(ot,qt,zt)=>y(ot,qt,zt,!1),cloneUnit:ce,mergeAttrs:E,atomKey:i.unitHash,moveIn:ut,provenance:V,textMappers:xe,conflicts:at,decisions:We,node:q});xt.push(...Oe.segments);let Ye=he.createDocumentFragment();for(let ot of Oe.nodes)Ye.appendChild(ot);for(let ot of[...Ue,...Z||[],...de||[]])_e.add(ot),pe.add(ot),je.set(ot,Ye);Xe.push({frag:Ye,at:De.lo})}}}function ht(T,D){let F=V.get(T);return F&&F.unchanged?!0:T.tagName!==D.tagName||!ue(T,D)?!1:Ge(ft(T),ft(D))}function ft(T){return T.tagName==="TEMPLATE"&&T.content?T.content:T}function ue(T,D){let F=0;for(let z of T.attributes)if(!r.ignoreAttribute(T,z.name)&&(F++,D.getAttribute(z.name)!==z.value))return!1;for(let z of D.attributes)r.ignoreAttribute(D,z.name)||F--;return F===0}function Ge(T,D){let F=Ft(T,q=>{let U=V.get(q);return!!(U&&U.pinned)}),z=Ft(D,o);if(F.length!==z.length)return!1;for(let q=0;q<F.length;q++){let U=F[q],Q=z[q];if(typeof U=="string"||typeof Q=="string"){if(U!==Q)return!1}else{if(U.nodeType!==Q.nodeType)return!1;if(U.nodeType===1){if(!ht(U,Q))return!1}else if(U.nodeValue!==Q.nodeValue)return!1}}return!0}function Ft(T,D){let F=[],z=null;for(let q=T.firstChild;q;q=q.nextSibling){if(q.nodeType===3){z=z===null?q.nodeValue:z+q.nodeValue;continue}q.nodeType===1&&D(q)||(z!==null&&(z!==""&&F.push(z),z=null),F.push(q))}return z!==null&&z!==""&&F.push(z),F}function vt(T,D,F,z){let q=T.value,U=z?q:D?D.value:"",Q=F?F.value:"";_e.add(T),D&&_e.add(D),F&&_e.add(F);let le=U===Q?U:U===q?Q:Q===q||nt==="local"?U:Q;if(U!==q&&Q!==q&&U!==Q&&C({kind:"text",node:null,base:q,local:U,remote:Q,resolved:le}),!D&&!F)return null;let ke=he.createComment(le);return V.set(ke,{base:T.nodes,local:D?D.nodes:null,remote:F?F.nodes:null}),ke}function Ht(T,D){let F=D.map.get(T);if(!F)return null;let z=Le(F)?F.parentNode:F.parent,q=Le(T)?T.parentNode:T.parent;return D.map.get(q)===z?null:D.reverse.get(z)||null}function Wt(T){let D=new Set([T]),F=T;for(let z=0;z<64;z++){let q=Ht(F,K)||Ht(F,W);if(!q)return!1;if(q===T||Le(T)&&Le(q)&&T.contains(q)||D.has(q))return!0;D.add(q),F=q}return!0}function Tt(T,D,F){if(!D)return!1;let z=Le(T)?T.parentNode:T.parent;return z===D||D.tagName==="TEMPLATE"&&z===D.content}function Et(T,D){let F=Le(T)?T.parentNode:T.parent,z=Le(D)?D.parentNode:D.parent;return!!(K.map.get(F)===z?K:W.map.get(F)===z?W:null)}}function Ks(e,t){return e.map.get(t)?Gs():{map:{get:r=>r&&r.nodeType===1&&e.map.get(r)||r,has:()=>!0},reverse:{get:r=>e.reverse.get(r)||r,has:()=>!0},moved:new Set,identical:{has:()=>!0},pairIdenticalChildren:()=>{}}}function Gs(){let e={get:t=>t,has:()=>!0};return{map:e,reverse:e,moved:new Set,identical:{has:()=>!0},pairIdenticalChildren:()=>{}}}var Ys=new Set(["INPUT","OPTION","TEXTAREA"]);function Xs(e,t,n,r){let o=e.ownerDocument,{provenance:i,textMappers:s}=n,l=r.hooks,a=[],h=[],d=[],b=new Set,f=[],u=[],m=new Set,p=new Map,v=k=>!!k&&(k===e||e.contains(k)||e.nodeType===1&&e.tagName==="TEMPLATE"&&e.content.contains(k)),A=new Map,M=new Map,L=new Map,H=new Map;(function k(g){let y=i.get(g);if(y){if(g.nodeType===1){let _=y.local?r.toLive(y.local):null;_&&v(_)&&_.nodeType===1&&(A.set(g,_),M.set(_,g))}else if(Array.isArray(y.local)){let _=K(y.local,y.local.map(E=>r.toLive(E)).filter(E=>E&&v(E)&&E.nodeType===g.nodeType));if(_.length&&(A.set(g,_[0]),M.set(_[0],g),L.set(g,_)),Array.isArray(y.caret))for(let E of y.caret){let I=r.toLive(E.node);if(!I||!v(I)||I.nodeType!==3)continue;let N=H.get(I);Array.isArray(N)||H.set(I,N=[]),N.push({merged:g,from:E.from,to:E.to,flatStart:E.flatStart})}else{let E=0;for(let I of _)H.set(I,{merged:g,shift:E}),E+=I.nodeValue.length}}}let O=g.nodeType===1&&g.tagName==="TEMPLATE"&&g.content?g.content.childNodes:g.childNodes;for(let _ of O)k(_)})(t);let B=new Set;for(let k of A.values())B.add(k);for(let k of L.values())for(let g of k)B.add(g);for(let k of n.segments||[])W(k);let te=r.restoreFocus===!1?null:Su(o,H);r.childrenOnly?We(he(e),he(t)):V(e,t);for(let{node:k,parent:g}of f)b.has(k)||!k.parentNode||k.nodeType===1&&(r.ignored(k)||at(k))||ct(k,g);return Tu(o,te,H,s,L,p),{applied:a,moved:h,replaced:d,identities:u,mergedScriptsLive:m,liveOf:A};function re(k,g){let y=k.slice(g.bs,g.be),O=0;for(;O<y.length&&O<g.text.length&&y[O]===g.text[O];)O++;let _=0;for(;_<y.length-O&&_<g.text.length-O&&y[y.length-1-_]===g.text[g.text.length-1-_];)_++;return{bs:g.bs+O,be:g.be-_,text:g.text.slice(O,g.text.length-_)}}function K(k,g){if(!g.length)return g;let y=new Set;for(let _ of k){let E=_.parentNode;if(E)for(let I=E.firstChild;I;I=I.nextSibling)I.nodeType===3&&y.add(r.toLive(I))}let O=[];for(let _ of g){O.push(_);for(let E=_.nextSibling;E&&E.nodeType===3&&!y.has(E)&&!O.includes(E);E=E.nextSibling)O.push(E)}return O}function W(k){let g=[];for(let ue of k.localNodes){let Ge=r.toLive(ue.node);if(!Ge||!v(Ge)||Ge.nodeType!==3)return;g.push(Ge)}let y=K(k.localNodes.map(ue=>ue.node),g);if(!y.length)return;let O=y.map(ue=>ue.nodeValue).join(""),{flatLocal:_,lToM:E,mapLocal:I}=k;if(O===_)return;let N=k.textNodes.map(ue=>({node:ue.node,ms:ue.ms,me:ue.me})),j=[],J=0;for(let ue of y)j.push(J),J+=ue.nodeValue.length;let $=(ue,Ge)=>y.find((Ft,vt)=>j[vt]<=ue&&ue+Ge<=j[vt]+Ft.nodeValue.length)||null,ce=[],ge=0;for(let ue of Er(_,O).map(Ge=>re(_,Ge))){let Ge=ue.bs+ge;ge+=ue.text.length-(ue.be-ue.bs);let Ft,vt;if(ue.be>ue.bs){Ft=E[ue.bs];let Ht=Ft>=0;for(let Wt=ue.bs;Ht&&Wt<ue.be;Wt++)E[Wt]!==Ft+(Wt-ue.bs)&&(Ht=!1);if(!Ht)continue;vt=Ft+(ue.be-ue.bs)}else{let Ht=ue.bs>0?E[ue.bs-1]:0,Wt=ue.bs<_.length?E[ue.bs]:0;if(Ht<0||Wt<0)continue;Ft=vt=I(ue.bs)}ce.push({ms:Ft,me:vt,text:ue.text,live:vt===Ft?$(Ge,ue.text.length):null})}ce.sort((ue,Ge)=>Ge.ms-ue.ms);let ht=(ue,Ge)=>(L.get(ue.node)||[A.get(ue.node)]).includes(Ge),ft=ue=>!!ue&&ue.nodeType===1&&mn.has(ue.tagName);for(let ue of ce){let Ge=N.find(vt=>vt.ms<=ue.ms&&ue.me<=vt.me&&ue.ms<vt.me);if(Ge&&ue.live&&Ge.ms===ue.ms&&!ht(Ge,ue.live)){let vt=N.find(Ht=>Ht.me===ue.ms&&ht(Ht,ue.live));vt&&(Ge=vt)}if(!Ge&&ue.me===ue.ms){let vt=N.find(Et=>Et.me===ue.ms),Ht=N.find(Et=>Et.ms===ue.ms),Wt=vt||Ht;if(!Wt)continue;let Tt=Wt.node;for(;ft(Tt.parentNode)&&(vt?Tt.parentNode.lastChild:Tt.parentNode.firstChild)===Tt;)Tt=Tt.parentNode;if(Tt===Wt.node)Ge=Wt;else{let Et=Tt.ownerDocument.createTextNode(ue.text);Tt.parentNode.insertBefore(Et,vt?Tt.nextSibling:Tt);continue}}if(!Ge)continue;let Ft=Ge.node.nodeValue;Ge.node.nodeValue=Ft.slice(0,ue.ms-Ge.ms)+ue.text+Ft.slice(ue.me-Ge.ms),Ge.me+=ue.text.length-(ue.me-ue.ms)}}function he(k){return k.nodeType===1&&k.tagName==="TEMPLATE"&&k.content?k.content:k}function V(k,g){b.add(k);let y=i.get(g);if(y&&y.remote&&n.remoteIdOf){let _=n.remoteIdOf(y.remote);_&&u.push([k,_])}if(y&&y.unchanged){n.customIdentity&&y.remote&&dt(k,y.remote),y.remote&&_e(k,y.remote);return}if(l.beforeNodeMorphed(k,g)===!1)return;ye(k,g);let O=k.tagName;if(Kt(k))k.textContent!==g.textContent&&(a.push({kind:"text",node:k,before:k.textContent,after:g.textContent}),k.textContent=g.textContent),n.mergedScripts.has(g)&&m.add(k);else if(O==="TEXTAREA")ut(k,g,y);else{Ke(k,g,y);let _=O==="TEMPLATE"&&k.content?k.content:k,E=O==="TEMPLATE"&&g.content?g.content:g;r.protectFocusedValue==="subtree"&&Ce(k)&&k!==o.body?xe(_):We(_,E)}l.afterNodeMorphed(k,g)}function xe(k){for(let g=k.firstChild;g;g=g.nextSibling){let y=M.get(g);y&&A.get(y.parentNode)!==k||(b.add(g),g.nodeType===1&&xe(g))}}function We(k,g){let y=nt(k.firstChild),O=new Set;for(let _ of Array.from(g.childNodes)){let E=A.get(_);E&&b.has(E)&&!O.has(E)&&(E=null);let I=i.get(_);if(I&&I.pinned){E&&E.nodeType===1&&((E.parentNode!==k||nt(E.nextSibling)!==y)&&Qe(k,E,y),b.add(E),O.add(E));continue}if(E&&E.nodeType===1){if(E!==y){let J=E.parentNode;if(J===k&&y&&rt(E)){let $=E.nextSibling;for(let ce=y;ce&&ce!==E;){let ge=ce.nextSibling;Qe(k,ce,$),ce=ge}}else Qe(k,E,y),J!==k&&(h.push(E),a.push({kind:"move",el:E,from:J,to:k}))}O.add(E),V(E,_),y=nt(E.nextSibling);continue}if(E&&E.nodeType!==1){let J=L.get(_)||[E];E!==y&&Qe(k,E,y);let $=_.nodeValue;if(_.nodeType===3){let ce=Nt(_),ge=J.map(ht=>ht.nodeValue).join("");ce!=null&&ge!==ce&&($=Tr(ce,ge,_.nodeValue).text)}l.beforeNodeMorphed(E,_)!==!1&&(E.nodeValue!==$&&(a.push({kind:"text",node:E,before:E.nodeValue,after:$}),E.nodeValue=$),l.afterNodeMorphed(E,_)),b.add(E),O.add(E),p.set(_,E),y=nt(E.nextSibling);continue}if(_.nodeType===3&&y&&y.nodeType===3&&!b.has(y)&&!H.has(y)){y.nodeValue!==_.nodeValue&&(a.push({kind:"text",node:y,before:y.nodeValue,after:_.nodeValue}),y.nodeValue=_.nodeValue),b.add(y),p.set(_,y),y=nt(y.nextSibling);continue}let N=i.get(_),j=C(N&&N.unchanged&&N.remote?N.remote:_);l.beforeNodeAdded(j)!==!1&&(k.insertBefore(j,y),b.add(j),j.nodeType===3&&p.set(_,j),j.nodeType===1&&(d.push(j),Rt(j,_),Kt(j)||G(j,_),r.formState==="property"&&Ve(N)&&_e(j,N.remote)),y=nt(j.nextSibling),a.push({kind:"insert",node:j,parent:k}),l.afterNodeAdded(j))}for(let _ of Array.from(k.childNodes))b.has(_)||O.has(_)||_.nodeType===1&&(r.ignored(_)||at(_))||(B.has(_)?f.push({node:_,parent:k}):ct(_,k))}function at(k){return r.preserve&&k.parentNode&&k.parentNode.nodeType===1&&k.parentNode.tagName==="HEAD"&&r.preserve(k)===!0}function Nt(k){let g=i.get(k);return!g||!Array.isArray(g.local)?null:g.local.map(y=>y.nodeValue).join("")}function xt(k){return i.get(k)}function _e(k,g){if(!Ys.has(k.tagName)&&!k.querySelector("input,option,textarea"))return;let y=(O,_)=>{if(O.tagName!==_.tagName)return;O.tagName==="TEXTAREA"?ut(O,_,{remote:_}):Ys.has(O.tagName)&&Ke(O,_,{remote:_});let E=Ze(O),I=Ze(_);if(E.length===I.length)for(let N=0;N<E.length;N++)y(E[N],I[N])};y(k,g)}function dt(k,g){let y=Ze(k),O=Ze(g);if(y.length===O.length)for(let _=0;_<y.length;_++){let E=n.remoteIdOf(O[_]);E&&u.push([y[_],E]),dt(y[_],O[_])}}function Ze(k){let g=k.tagName==="TEMPLATE"&&k.content?k.content:k;return Array.from(g.children).filter(y=>!r.ignored(y))}function Rt(k,g){if(!n.remoteIdOf)return;let y=(O,_)=>{let E=i.get(_);if(E&&E.remote&&_.nodeType===1){let j=n.remoteIdOf(E.remote);j&&u.push([O,j])}let I=O.childNodes,N=_.childNodes;for(let j=0;j<I.length&&j<N.length;j++)y(I[j],N[j])};y(k,g)}function nt(k){for(;k&&k.nodeType===1&&r.ignored(k);)k=k.nextSibling;return k}function Qe(k,g,y){if(typeof k.moveBefore=="function"&&g.ownerDocument===k.ownerDocument)try{k.moveBefore(g,y);return}catch{}k.insertBefore(g,y)}function ct(k,g){l.beforeNodeRemoved(k)!==!1&&(k.parentNode.removeChild(k),a.push({kind:"remove",node:k,parent:g}),l.afterNodeRemoved(k))}function C(k){if(Kt(k))return Cr(k,o);let g=o.importNode(k,!0);if(g.nodeType===1)for(let y of Array.from(g.querySelectorAll("script")))Kt(y)&&y.replaceWith(Cr(y,o));return g}function G(k,g){let y=k.tagName==="TEMPLATE"&&k.content?k.content:k,O=g.tagName==="TEMPLATE"&&g.content?g.content:g,_=Array.from(y.childNodes),E=Array.from(O.childNodes);for(let I=0;I<E.length&&I<_.length;I++){let N=E[I],j=_[I],J=A.get(N);J&&b.has(J)&&(J=null);let $=i.get(N);if($&&$.pinned){if(J&&J.nodeType===1){let ce=J.parentNode;Qe(y,J,j),ce!==y&&(h.push(J),a.push({kind:"move",el:J,from:ce,to:y})),b.add(J)}j.remove();continue}if(J){let ce=J.parentNode;Qe(y,J,j),j.remove(),J.nodeType===1?(ce!==y&&(h.push(J),a.push({kind:"move",el:J,from:ce,to:y})),V(J,N)):(b.add(J),p.set(N,J),J.nodeValue!==N.nodeValue&&(a.push({kind:"text",node:J,before:J.nodeValue,after:N.nodeValue}),J.nodeValue=N.nodeValue));continue}b.add(j),j.nodeType===3&&p.set(N,j),N.nodeType===1&&!Kt(N)&&G(j,N)}}function ye(k,g){for(let y of Array.from(g.attributes)){if(se(k,y.name)||r.ignoreAttribute(k,y.name))continue;let O=y.namespaceURI?k.getAttributeNS(y.namespaceURI,y.localName):k.getAttribute(y.name);O!==y.value&&l.beforeAttributeUpdated(y.name,k,"update")!==!1&&(y.namespaceURI?k.setAttributeNS(y.namespaceURI,y.name,y.value):k.setAttribute(y.name,y.value),a.push({kind:"attr",el:k,name:y.name,before:O,after:y.value}))}for(let y of Array.from(k.attributes)){if(se(k,y.name)||r.ignoreAttribute(k,y.name)||(y.namespaceURI?g.hasAttributeNS(y.namespaceURI,y.localName):g.hasAttribute(y.name))||l.beforeAttributeUpdated(y.name,k,"remove")===!1)continue;let _=y.value;y.namespaceURI?k.removeAttributeNS(y.namespaceURI,y.localName):k.removeAttribute(y.name),a.push({kind:"attr",el:k,name:y.name,before:_,after:null})}}function se(k,g){let y=k.tagName;return y==="INPUT"?g==="value"||g==="checked"||g==="disabled":y==="OPTION"?g==="selected":!1}function Ce(k){return k===o.activeElement}function rt(k){let g=o.activeElement;return!!g&&g!==o.body&&k.contains(g)}function Ve(k){let g=k&&k.remote;return g&&g.nodeType===1?g:null}function Ke(k,g,y){let O=k.tagName,_=Ve(y),E=r.formState==="property"&&_?_:g;if(O==="INPUT"){let I=r.protectFocusedValue&&Ce(k),N=(k.getAttribute("type")||"").toLowerCase(),j=N!=="file"&&N!=="checkbox"&&N!=="radio",J=_&&_.hasAttribute("value")&&_.value!==_.getAttribute("value")?_.value:null;if(j&&!I)if(r.formState==="property"){let $=g.getAttribute("value"),ce=k.getAttribute("value");(ce!==$||k.value!==E.value)&&l.beforeAttributeUpdated("value",k,$==null?"remove":"update")!==!1&&(ce!==$&&($==null?k.removeAttribute("value"):k.setAttribute("value",$),a.push({kind:"attr",el:k,name:"value",before:ce,after:$})),k.value!==E.value&&(k.value=E.value))}else if(g.hasAttribute("value")||J!=null){let $=J??g.getAttribute("value");k.getAttribute("value")!==$&&l.beforeAttributeUpdated("value",k,"update")!==!1?(k.setAttribute("value",$),k.value!==$&&(k.value=$),a.push({kind:"attr",el:k,name:"value",before:null,after:$})):k.value!==$&&k.getAttribute("value")===$&&(k.value=$)}else(k.hasAttribute("value")||k.value!=="")&&l.beforeAttributeUpdated("value",k,"remove")!==!1&&(k.removeAttribute("value"),k.value="",a.push({kind:"attr",el:k,name:"value",before:"",after:null}));if(!j&&N!=="file"){let $=g.getAttribute("value");$==null?k.hasAttribute("value")&&l.beforeAttributeUpdated("value",k,"remove")!==!1&&k.removeAttribute("value"):k.getAttribute("value")!==$&&l.beforeAttributeUpdated("value",k,"update")!==!1&&k.setAttribute("value",$)}I||(et(k,E,"checked"),r.formState==="property"&&k.indeterminate!==E.indeterminate&&(k.indeterminate=E.indeterminate)),et(k,E,"disabled")}else if(O==="OPTION"){let I=k.parentNode&&k.closest("select");r.protectFocusedValue&&I&&Ce(I)||et(k,E,"selected")}}function et(k,g,y){let O=r.formState==="property"?!!g[y]:g.hasAttribute(y);if(r.formState!=="property"){let _=k.hasAttribute(y);if(_!==O){if(l.beforeAttributeUpdated(y,k,O?"update":"remove")===!1)return;O?k.setAttribute(y,""):k.removeAttribute(y),a.push({kind:"attr",el:k,name:y,before:_?"":null,after:O?"":null})}}k[y]!==O&&(k[y]=O)}function ut(k,g,y){if(r.protectFocusedValue&&Ce(k)||l.beforeAttributeUpdated("value",k,"update")===!1)return;let O=Ve(y),_=g.textContent,E=O&&O.value!==O.defaultValue?O.value:_;r.formState!=="property"&&k.textContent!==_&&(a.push({kind:"text",node:k,before:k.textContent,after:_}),k.textContent=_),k.value!==E&&(k.value=E)}}function Su(e,t){let n=e.activeElement;if(!n||n===e.body||n===e.documentElement)return null;let r={el:n,id:n.getAttribute&&n.getAttribute("id"),scrollTop:n.scrollTop,scrollLeft:n.scrollLeft};if(n.tagName==="INPUT"||n.tagName==="TEXTAREA"){try{r.selection=[n.selectionStart,n.selectionEnd,n.selectionDirection]}catch{}return r}let o=e.getSelection&&e.getSelection();if(o&&o.rangeCount){let i=o.getRangeAt(0);r.range={sc:i.startContainer,so:i.startOffset,ec:i.endContainer,eo:i.endOffset}}return r}function Tu(e,t,n,r,o,i){if(!t)return;let s=t.el;if(!s.isConnected&&t.id&&(s=e.getElementById(t.id)),!s||!s.isConnected)return;if(e.activeElement!==s)try{s.focus({preventScroll:!0})}catch{}try{s.scrollTop=t.scrollTop,s.scrollLeft=t.scrollLeft}catch{}if(t.selection){try{s.setSelectionRange&&!s.selectionEnd&&t.selection[1]!=null&&s.setSelectionRange(t.selection[0],t.selection[1],t.selection[2]||"none")}catch{}return}if(!t.range)return;let l=(d,b)=>{let f=n.get(d);if(Array.isArray(f)){let u=f.find(A=>b>=A.from&&b<A.to)||f.find(A=>b===A.to)||f[f.length-1],m=i.get(u.merged);if(!m||!m.isConnected)return null;let p=r.get(u.merged),v=p&&p.flat?p.flat(u.flatStart+b):b;return[m,Math.max(0,Math.min(v,m.nodeValue.length))]}if(f){let u=(o.get(f.merged)||[d])[0];if(!u.isConnected)return null;let m=r.get(f.merged),p=f.shift+b,v=m?m(p):p;return[u,Math.max(0,Math.min(v,u.nodeValue.length))]}return d.isConnected?[d,Math.min(b,d.nodeType===3?d.nodeValue.length:d.childNodes.length)]:null},a=l(t.range.sc,t.range.so),h=l(t.range.ec,t.range.eo);if(!(!a||!h))try{let d=e.createRange();d.setStart(a[0],a[1]),d.setEnd(h[0],h[1]);let b=e.getSelection();b.removeAllRanges(),b.addRange(d)}catch{}}var jm=Symbol("hyper-morph-duplicate-key");var Eu='[editor-ui],[clay~="editor-ui"],[save-ignore],[snapshot-remove],[no-snapshot],[no-save],[save-remove],[freeze],[save-freeze],[clay~="no-save"],[clay~="no-snapshot"],[clay~="freeze"]',_u='[editor-ui],[clay~="editor-ui"],[no-undo],[clay~="no-undo"]',Cu='[no-undo]:not([editor-ui]):not([clay~="editor-ui"]),[clay~="no-undo"]:not([editor-ui]):not([clay~="editor-ui"])';function Ou(e){if(e.tagName!=="LINK"&&e.tagName!=="SCRIPT")return!1;let t=e.getAttribute("src")||e.getAttribute("href")||"";return/^(chrome|moz|safari-web)-extension:/.test(t)}function Nu(e,t,n,r){if(t==null)return;if(typeof t=="string")return t;let o=t;if(o.nodeType===9){let i=e.getAttribute("id");o=i&&o.getElementById(i)||(e.tagName==="BODY"?o.body:e.tagName==="HTML"?o.documentElement:o.body&&o.body.firstElementChild)}if((!o||o.nodeType!==1||o.tagName!==e.tagName)&&(o=Ru(e,t,r)),!!o)return n?Array.from(o.childNodes):o}function Ru(e,t,n){let r=t.nodeType===9?t.documentElement:t;if(!r||r.nodeType!==1)return null;let o=new Map,i=[r,...r.querySelectorAll("script")];for(let a of i){let h=Xn(a,n);h&&!o.has(h.key)&&o.set(h.key,a.textContent)}if(!o.size)return null;let s=e.cloneNode(!0),l=!1;for(let a of[s,...s.querySelectorAll("script")]){let h=Xn(a,n);h&&o.has(h.key)&&(a.textContent=o.get(h.key),l=!0)}return l?s:null}function Js(e,t){if(typeof e=="string"||e.nodeType===9)return e;if(e.nodeType===1&&e===e.ownerDocument.documentElement)return e.ownerDocument;let n=t.implementation.createHTMLDocument(""),r=e.nodeType===1&&e.tagName==="HTML"?e:null;if(r)return n.replaceChild(n.adoptNode(r),n.documentElement),n;let o=e.nodeType===11?Array.from(e.childNodes):e.nodeType?[e]:Array.from(e);for(let i of o)n.body.appendChild(n.adoptNode(i));return n}function Tn(e,t,n={}){let r=n||{};if(!r.head?.block)return Zs(e,t,r);try{return Zs(e,t,r)}catch(o){return Promise.reject(o)}}function Zs(e,t,n){let r=n.policy||"sync",o=r==="raw"?void 0:(a,h)=>Ou(a)||(r==="history"?!(h&&a.matches(Cu))&&a.matches(_u):a.matches(Eu)),i=n.callbacks||{},s={ignore:o,hooks:i,protectFocusedValue:n.ignoreActiveValue===!0?"subtree":!1,restoreFocus:n.restoreFocus!==!1,formState:n.formStateSync||"attribute",scripts:{execute:n.scripts?.handle!==!1,merge:n.scripts?.merge!==!1,mergeTags:n.scripts?.mergeTags||[]},head:{awaitLoads:!!n.head?.block,preserve:n.head?.shouldPreserve||(()=>!1)}};if(typeof n.key=="function"&&(s.identity={base:n.key,local:n.key,remote:n.key}),e&&e.nodeType===9)return Nr(Object.assign({},s,{live:e,base:n.scripts?.mergeBase||null,remote:Js(t,e)}));if(e.tagName==="HTML"&&e.parentNode&&e.parentNode.nodeType===9){let a=Object.assign({},s,{live:e.ownerDocument,base:n.scripts?.mergeBase||null,remote:Js(t,e.ownerDocument)});return Nr(a)}n.morphStyle==="innerHTML"&&(s.children=!0);let l=Nu(e,n.scripts?.mergeBase,!!s.children,s.scripts.mergeTags);return l!==void 0&&(s.base=l),xi(e,t,s)}var Mu=new Set(["live","base","remote","local","identity","ignore","remoteWins","ignoreAttribute","conflicts","protectFocusedValue","restoreFocus","head","scripts","formState","children","hooks","beforeApply"]),un=()=>{};function Rr(e,t=[]){if(!e||typeof e!="object")throw new TypeError("options object required");for(let s of Object.keys(e))if(!Mu.has(s))throw new TypeError(`unknown option "${s}"`);let n=Object.assign({beforeNodeAdded:un,afterNodeAdded:un,beforeNodeRemoved:un,afterNodeRemoved:un,beforeNodeMorphed:un,afterNodeMorphed:un,beforeAttributeUpdated:un},e.hooks||{}),r=e.conflicts||"remote";if(!["remote","local","both"].includes(r))throw new TypeError("conflicts must be remote, local or both");let o=e.formState||"attribute";if(!["attribute","property"].includes(o))throw new TypeError("formState must be attribute or property");let i=e.protectFocusedValue;if(i!==void 0&&typeof i!="boolean"&&i!=="subtree")throw new TypeError('protectFocusedValue must be a boolean or "subtree"');return{ignored:ni(e.ignore,t),remoteWins:ni(e.remoteWins,t),ignoreAttribute:typeof e.ignoreAttribute=="function"?e.ignoreAttribute:()=>!1,conflicts:r,protectFocusedValue:i===void 0?!0:i,restoreFocus:e.restoreFocus!==!1,head:Object.assign({awaitLoads:!1,preserve:()=>!1},e.head||{}),scripts:Object.assign({execute:!0,merge:!0,mergeTags:[]},e.scripts||{}),formState:o,hooks:n,children:!!e.children,beforeApply:typeof e.beforeApply=="function"?e.beforeApply:null}}function Zn(e){if(typeof e=="function")return e;if(e&&typeof e=="object"&&e.map){if(typeof e.first=="function")return e.first;if(typeof e.then=="function")return e.then}return In}function Qn(e,t){if(typeof e=="function")return e;if(e&&typeof e=="object"&&e.map){let n=ri(t,e.map),r=typeof e.then=="function"?e.then:In;if(typeof e.first=="function"){let o=e.first;return i=>o(i)||n.get(i)||r(i)}return o=>n.get(o)||r(o)}return In}function Lu(e,t,n,r={}){let o=b=>b&&b.nodeType===9?b.documentElement:b,i=o(t),s=o(n),l=o(e)||i,a=Object.assign({},r);delete a.live,delete a.base,delete a.remote;let h=Rr(a,[l,i,s].filter(Boolean)),d=r.identity||{};return yi(l,i,s,{identity:{base:Qn(d.base,l),local:Qn(d.local,i),remote:Qn(d.remote,s)},authored:{base:Zn(d.base),local:Zn(d.local),remote:Zn(d.remote)},skipUnchanged:h.hooks.beforeNodeMorphed===un&&h.hooks.afterNodeMorphed===un,ignored:h.ignored,remoteWins:h.remoteWins,ignoreAttribute:h.ignoreAttribute,conflicts:h.conflicts,mergeTags:h.scripts.merge===!1?null:h.scripts.mergeTags,baseURI:i.ownerDocument&&i.ownerDocument.baseURI||"about:blank",localIsBase:!e||e===t,childrenOnly:h.children})}function vi({liveRoot:e,baseRoot:t,localRoot:n,remoteRoot:r,toLive:o,options:i,identity:s,childrenOnly:l,isDocument:a}){let h=Rr(i,[e,t,n,r].filter(Boolean));if(h.ignored(e))return{report:wi(),loads:[]};let d=e.ownerDocument,b=h.scripts.execute?qs(e,h.ignored,d.baseURI):null,f=yi(t||n,n,r,{identity:{base:Qn(s.base,t||n),local:Qn(s.local,n),remote:Qn(s.remote,r)},authored:{base:Zn(s.base),local:Zn(s.local),remote:Zn(s.remote)},ignored:h.ignored,remoteWins:h.remoteWins,ignoreAttribute:h.ignoreAttribute,conflicts:h.conflicts,mergeTags:h.scripts.merge===!1?null:h.scripts.mergeTags,baseURI:d.baseURI,localIsBase:!t,childrenOnly:l,skipUnchanged:h.hooks.beforeNodeMorphed===un&&h.hooks.afterNodeMorphed===un});h.beforeApply&&h.beforeApply(f.doc);let u=globalThis.__hyperMorphProfile,m=u?performance.now():0,p=Xs(e,f.root,f,{toLive:o,ignored:h.ignored,ignoreAttribute:h.ignoreAttribute,formState:h.formState,protectFocusedValue:h.protectFocusedValue,restoreFocus:h.restoreFocus,preserve:h.head.preserve,hooks:h.hooks,childrenOnly:l});u&&(u.apply=(u.apply||0)+(performance.now()-m));let v=[];if(h.head.awaitLoads)for(let L of p.applied){if(L.kind!=="insert"||L.node.nodeType!==1)continue;let H=L.node;H.tagName==="LINK"&&/\bstylesheet\b/i.test(H.getAttribute("rel")||"")&&H.getAttribute("href")&&H.closest("head")&&v.push(new Promise(te=>{H.addEventListener("load",()=>te()),H.addEventListener("error",()=>te())}))}if(b){let L=Bs(e,b,{ignored:h.ignored,skip:p.mergedScriptsLive,baseURI:d.baseURI,beforeNodeAdded:h.hooks.beforeNodeAdded,afterNodeAdded:h.hooks.afterNodeAdded});v.push(...L.loads)}let A=L=>L&&p.liveOf&&p.liveOf.get(L)||null;return{report:{applied:p.applied,decisions:f.decisions.map(L=>Object.assign({},L,{node:L.node?A(L.node):null,el:L.el?A(L.el):null,applied:!!(L.node?A(L.node):L.el&&A(L.el))})),conflicts:f.conflicts.map(L=>Object.assign({},L,{node:L.node?A(L.node):L.node,el:L.el?A(L.el):L.el})),localDiverged:f.localDiverged,identities:p.identities,moved:p.moved,replaced:p.replaced},loads:v}}var Qs=new WeakMap;function wi(){return{applied:[],decisions:[],conflicts:[],localDiverged:!1,identities:[],moved:[],replaced:[]}}function Nr(e){let t=e||{},n=t.live;if(!n||n.nodeType!==9)throw new TypeError("live must be a Document");let r=Qs.get(n);r||(r=ti(n),Qs.set(n,r));let o=r("remote",t.remote),i=typeof t.base=="string"&&t.base===""?null:t.base,s=i?r("base",i):null,l=t.local?t.local.root:n.documentElement,a=t.local?t.local.toLive:b=>b;As(n,o);let{report:h,loads:d}=vi({liveRoot:n.documentElement,baseRoot:s?s.documentElement:null,localRoot:l,remoteRoot:o.documentElement,toLive:a,options:t,identity:t.identity||{},childrenOnly:!1,isDocument:!0});return Promise.all(d).then(()=>h)}function Iu(e,t,n={}){return Nr(Object.assign({},n,{live:e,base:null,remote:t}))}function el(e,t){if(e==null)return{root:t.createElement("template"),first:null};if(typeof e=="string"){let r=/^\s*(?:<!--[\s\S]*?-->\s*)*(?:<!doctype[^>]*>\s*)?<(html|body)[\s>]/i.exec(e);if(r){let i=io(e,t),s=r[1].toLowerCase()==="html"?i.documentElement:i.body;return{root:s,first:s}}let o=t.createElement("template");return o.innerHTML=e,{root:o,first:o.content.firstElementChild}}if(e.nodeType===9)return{root:e.documentElement,first:e.documentElement};if(e.nodeType===1){let r=t.createElement("template"),o=e.isConnected;return r.content.appendChild(o?t.importNode(e,!0):e),{root:r,first:e}}if(e.nodeType===11){let r=t.createElement("template");return r.content.appendChild(e),{root:r,first:r.content.firstElementChild}}let n=t.createElement("template");for(let r of Array.from(e))n.content.appendChild(r.parentNode?t.importNode(r,!0):r);return{root:n,first:n.content.firstElementChild}}function xi(e,t,n={}){if(!e||e.nodeType!==1)throw new TypeError("oldEl must be an Element");let r=e.ownerDocument,{base:o,...i}=n,s=!!i.children;if(Rr(i,[e]).ignored(e))return Promise.resolve(wi());let l=el(t,r),a=o!=null?el(o,r):null,h,d=null;if(s)h=l.root,d=a?a.root:null;else{if(h=l.first,d=a?a.first:null,!h){let u=Rr(i);return u.hooks.beforeNodeRemoved(e)!==!1&&(e.remove(),u.hooks.afterNodeRemoved(e)),Promise.resolve({applied:[{kind:"remove",node:e,parent:null}],decisions:[],conflicts:[],localDiverged:!1,identities:[],moved:[],replaced:[e]})}if(h.tagName!==e.tagName){let u=Rr(i,[e,h]);if(u.hooks.beforeNodeMorphed(e,h)===!1)return Promise.resolve(wi());let m=vi({liveRoot:e,baseRoot:d&&d.tagName===e.tagName?d:null,localRoot:e,remoteRoot:h,toLive:v=>v,options:i,identity:i.identity||{},childrenOnly:!0,isDocument:!1}),p=Kt(h)?Cr(h,r):r.importNode(h,!1);if(!Kt(p))for(;e.firstChild;)p.appendChild(e.firstChild);return u.hooks.beforeNodeAdded(p)===!1||u.hooks.beforeNodeRemoved(e)===!1?Promise.resolve(m.report):(e.replaceWith(p),u.hooks.afterNodeRemoved(e),u.hooks.afterNodeAdded(p),u.hooks.afterNodeMorphed(e,h),m.report.replaced.push(p),m.report.applied.push({kind:"insert",node:p,parent:p.parentNode},{kind:"remove",node:e,parent:p.parentNode}),Promise.all(m.loads).then(()=>m.report))}}let{report:b,loads:f}=vi({liveRoot:e,baseRoot:d,localRoot:e,remoteRoot:h,toLive:u=>u,options:i,identity:i.identity||{},childrenOnly:s,isDocument:!1});return Promise.all(f).then(()=>b)}var Ai={mergeDocument:Nr,morphDocument:Iu,morphElement:xi,merge3:Lu,morph:Tn};var fo=["textContent","innerText","innerHTML","outerHTML","value","checked","selected","disabled","readOnly","type","tagName","nodeName","nodeType","nodeValue","childElementCount","id","className","classList","baseURI","offsetWidth","offsetHeight","clientWidth","clientHeight","scrollWidth","scrollHeight","dataset","currentSrc","duration","paused","title","documentURI","contentType"],Si=new Set(fo),tl=new Set(["textContent","innerText","innerHTML","value","checked","selected","disabled","readOnly","type","id","className","title"]),Mr=new Set(["tagName","nodeName","nodeType","nodeValue","childElementCount","classList","baseURI","documentURI","contentType","offsetWidth","offsetHeight","clientWidth","clientHeight","scrollWidth","scrollHeight","currentSrc","duration","paused","dataset"]);var mo={};ei(mo,{EmptyListInsert:()=>Ir,MAX_RULE_DEPTH:()=>nr,MaxRuleDepthExceeded:()=>Pn,NoRulesTag:()=>Ti,RuleTargetReadOnly:()=>jr,RulesParseError:()=>er,ShapeMismatch:()=>Lr,UnknownRulesVersion:()=>tr,WriteRefused:()=>ho,WriteRejected:()=>Ei});var er=class extends Error{constructor(t,n){super(t),this.name="RulesParseError",this.cause=n}},tr=class extends Error{constructor(t){super(`unknown rules version: ${t}. Library supports "1".`),this.name="UnknownRulesVersion",this.version=t}},nr=20,Pn=class extends Error{constructor(t){super(`rule depth exceeded ${nr} at path: ${t.join(".")}`),this.name="MaxRuleDepthExceeded",this.path=t}},Lr=class extends Error{constructor(t){super(`shape mismatch: ${t.length} field(s) failed validation`),this.name="ShapeMismatch",this.mismatches=t}},Ir=class extends Error{constructor(t){super(`cannot add items to empty list at "${t.join(".")}" \u2014 no sibling to clone as template. Seed the list with a hidden item first.`),this.name="EmptyListInsert",this.path=t}},jr=class extends Error{constructor(t){super(`cannot write to read-only DOM property "${t}"`),this.name="RuleTargetReadOnly",this.target=t}},ho=class extends Error{constructor(t){super(`write refused: ${t.length} write(s) broke the content-only policy`),this.name="WriteRefused",this.refusals=t}},Ti=class extends Error{constructor(t){super(`no <script data-rules-name~="${t}"> rules tag in this document`),this.name="NoRulesTag",this.token=t}},Ei=class extends Error{constructor(t,n){super(`write rejected: ${t.length} unknown key(s), ${n.length} rule(s) with no matching element`),this.name="WriteRejected",this.unknownKeys=t,this.unmatched=n}};function En(e,t,n,r={}){if(Object.prototype.hasOwnProperty.call(r,"exclude")&&e.semanticExclude===!1)throw new Error("This adapter does not support semantic exclude queries; omit exclude or use the DOM adapter.");return _i(e,t,n,{depth:0,path:[]},r)}function _i(e,t,n,r,o){if(r.depth>nr)throw new Pn(r.path);if(typeof n=="string")return qu(e,t,n,r,o);if(Array.isArray(n)){let[i,s]=n,l=e.find(t,i,o);return rl(o,r,l),l.map((a,h)=>_i(e,a,s,{depth:r.depth+1,path:[...r.path,h]},o))}if(typeof n=="object"&&n!==null){let i={};for(let[s,l]of Object.entries(n))i[s]=_i(e,t,l,{depth:r.depth+1,path:[...r.path,s]},o);return i}return null}function qu(e,t,n,r,o){if(n.endsWith("[]")){let l=n.slice(0,-2),a=e.find(t,l,o);return rl(o,r,a),a.map(h=>e.text(h))}if(n.startsWith("@"))return nl(e,t,n.slice(1));let i=St(n);if(i!==-1){let l=n.slice(0,i),a=n.slice(i+1),h=l?e.find(t,l,o):[t];return h.length===0?null:nl(e,h[0],a)}if(n===".")return e.text(t);let s=e.find(t,n,o);return s.length===0?null:e.text(s[0])}function rl(e,t,n){if(typeof e.onRowsRead=="function")try{e.onRowsRead(t.path.slice(),n)}catch(r){console.warn(`[hyper-html-api] onRowsRead threw at "${t.path.join(".")||"(root)"}"`,r)}}function nl(e,t,n){if(Si.has(n)){let o=e.prop(t,n);return o==null?null:String(o)}let r=e.attr(t,n);return r||null}var ol=Object.freeze({data:Object.freeze({tokens:["no-data"],bundles:["editor-ui"]}),save:Object.freeze({tokens:["no-save"],bundles:["editor-ui"]}),snapshot:Object.freeze({tokens:["no-snapshot"],bundles:["editor-ui"]}),watch:Object.freeze({tokens:["no-watch"],bundles:["editor-ui"]}),undo:Object.freeze({tokens:["no-undo"],bundles:["editor-ui"]}),history:Object.freeze({tokens:[],bundles:["editor-ui"]})}),Bu=Object.freeze({"editor-ui":Object.freeze(["no-data","no-save","no-snapshot","no-watch","no-undo"])}),il=Object.freeze(["no-save","no-snapshot","no-trigger-autosave","no-dirty","no-watch","no-undo","no-data","freeze","editor-ui"]);function Ci(e,t){if(!e||e.nodeType!==1)return!1;let n=e.getAttribute?.("clay");return!!(n&&n.split(/\s+/).includes(t)||e.hasAttribute?.(t))}function Hu(e,t){if(Ci(e,t))return!0;for(let[n,r]of Object.entries(Bu))if(r.includes(t)&&Ci(e,n))return!0;return!1}function Dr(e){let t=ol[e];if(!t)throw new Error(`Unknown region capability: ${e}`);return[...t.tokens,...t.bundles].flatMap(n=>[`[clay~="${n}"]`,`[${n}]`]).join(", ")}function $u(e,t){let n=e&&e.nodeType===1?e:e?.parentElement;for(;n&&n.nodeType===1;){let r=ol[t];if(!r)throw new Error(`Unknown region capability: ${t}`);if(r.tokens.some(o=>Hu(n,o))||r.bundles.some(o=>Ci(n,o)))return n;n=n.parentElement}return null}function sl(e,t){return!!$u(e,t)}var Uu=/:(?:focus(?:-within|-visible)?|hover|active|visited|defined)\b/i;function ll(e,t){if(!/^(INPUT|TEXTAREA|SELECT|OPTION)$/.test(e.tagName||""))return;let n=(e.getAttribute?.("type")||"").toLowerCase();if("value"in e&&"value"in t&&e.tagName!=="OPTION"&&n!=="checkbox"&&n!=="radio"&&(t.value=e.value),"checked"in e&&"checked"in t&&(t.checked=e.checked),"selected"in e&&"selected"in t&&(t.selected=e.selected),e.tagName==="SELECT")for(let r=0;r<e.options.length;r++)t.options[r].selected=e.options[r].selected;"indeterminate"in e&&"indeterminate"in t&&(t.indeterminate=e.indeterminate)}function al(e,t,n,r){if(r)return!!e.closest?.(t);let o=e;for(;o?.nodeType===1;){if(o.matches(t))return!0;if(o===n)break;o=o.parentElement}return!1}function cl(e,t,n,r,o,i,s,l){if(e.nodeType===1&&((s?sl(e,n):al(e,r,i,!1))||o&&al(e,o,i,s)))return null;let a=t.importNode(e,!1);l.cloneToLive.set(a,e),l.liveToClone.set(e,a);let h=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,d=a.nodeType===1&&a.tagName==="TEMPLATE"?a.content:a;h!==e&&(l.cloneToLive.set(d,h),l.liveToClone.set(h,d));for(let b of h.childNodes||[]){let f=cl(b,t,n,r,o,i,s,l);f&&(d.appendChild(f),b.nodeType===1&&ll(b,f))}return e.nodeType===1&&ll(e,a),a}function Pr(e,{capability:t="data",exclude:n=null,inherit:r=!0}={}){if(!e)throw new TypeError("createContentView requires a DOM context");let o=e.nodeType===9?e:e.ownerDocument;if(!o?.implementation?.createHTMLDocument)throw new TypeError("createContentView requires an HTML DOM implementation");let i=o.implementation.createHTMLDocument(""),s=new WeakMap,l=new WeakMap,a=e.nodeType===9?e.documentElement:e;n&&i.documentElement.matches(n);let h=Dr(t),d=cl(a,i,t,h,n,a,r,{cloneToLive:s,liveToClone:l});e.nodeType===9&&d&&(i.replaceChild(d,i.documentElement),l.set(e,i),s.set(i,e));let b=f=>{if(Uu.test(f))throw new Error(`Filtered content queries do not support stateful selector: ${f}`)};return{root:d,document:i,capability:t,selector:Dr(t),cloneToLive:s,liveToClone:l,original(f){return s.get(f)||null},cloneOf(f){return l.get(f)||null},query(f,u=d){return b(f),Array.from(u.querySelectorAll(f),m=>s.get(m)||m)},text(f=d){return(f===d?d:l.get(f))?.textContent||""},html(f=d){return(f===d?d:l.get(f))?.innerHTML??""},clone(f=d){let u=f===d?d:l.get(f);return u?i.importNode(u,!0):null}}}function ul(e){return e&&e.nodeType===1&&e.tagName==="SCRIPT"&&e.hasAttribute&&e.hasAttribute("data-rules-name")}function zu(e){return e?(e.nodeType===9||e.nodeType===11,e):null}var Lt={semanticExclude:!0,find(e,t,n={}){let r=zu(e);if(!r||!r.querySelectorAll)return[];let o=Array.from(r.querySelectorAll(t));n.includeRulesTag||(o=o.filter(l=>!ul(l)));let i=[];n.skip&&i.push(n.skip);let s=n.templateAttr===null?null:n.templateAttr||"cms-template";if(s&&i.push("["+s+"]"),i.length){let l=i.join(", ");o=o.filter(a=>!a.closest||!a.closest(l))}return o},parent(e){return e?e.parentElement:null},children(e){return e?Array.from(e.children):[]},text(e,t){if(t===void 0)return(e.textContent||"").trim();e.textContent=t},attr(e,t,n){if(n===void 0)return e.hasAttribute&&e.hasAttribute(t)?e.getAttribute(t):null;e.setAttribute(t,n)},removeAttr(e,t){e&&e.removeAttribute&&e.removeAttribute(t)},prop(e,t,n){if(n===void 0){let r=e?e[t]:void 0;return r!==void 0?r:null}e[t]=n},clone(e){return e.cloneNode(!0)},insertAt(e,t,n){let r=e.children[n]||null;e.insertBefore(t,r)},remove(e){e&&e.parentNode&&e.parentNode.removeChild(e)},replaceWith(e,t){if(!e||!e.parentNode)throw new Error("dom.replaceWith: node has no parent");let r=e.ownerDocument.createElement("template");r.innerHTML=t;let o=r.content.firstElementChild;if(!o)throw new Error("dom.replaceWith: html did not parse to an element");return e.parentNode.replaceChild(o,e),o},stripIds(e){let t=0;return e.id&&(e.removeAttribute("id"),t++),(e.querySelectorAll?e.querySelectorAll("[id]"):[]).forEach(r=>{r.removeAttribute("id"),t++}),t},sameNode(e,t){return e===t}};function kn(e,t={}){if(t.exclude===null)return Lt;let n=[Dr("data"),t.exclude].filter(Boolean).join(", "),r=e.nodeType===9?e:e.ownerDocument||e,o=e.nodeType===9?e.documentElement:e;if(!t._write&&!o?.matches?.(n)&&!o?.querySelector?.(n)&&!r?.querySelector?.(n))return Lt;let i=e.nodeType===9||!e.isConnected?e:e.ownerDocument,s=e.nodeType===9?e:e.ownerDocument,l=null,a=()=>l||(l=Pr(i,{capability:"data",exclude:t.exclude||null})),h=m=>{let p=a();return m===e?p.cloneOf(e):p.cloneOf(m)||m},d=m=>l?.original(m)||m,b=(m,p)=>{a().liveToClone.set(m,p),a().cloneToLive.set(p,m);let v=m.childNodes||[],A=p.childNodes||[];for(let M=0;M<Math.min(v.length,A.length);M++)b(v[M],A[M])},f=(m,p,v,A)=>{let M=Array.from(m.childNodes).filter(re=>l.cloneOf(re)),H=M[0];for(;H&&M.includes(H);)H=H.nextSibling;for(let re of M)re.remove();if(v==="innerHTML"){let re=s.createElement("template");re.innerHTML=A;for(let K of Array.from(re.content.childNodes))m.insertBefore(K,H||null)}else m.insertBefore(s.createTextNode(A),H||null);let B=Pr(m,{capability:"data",exclude:t.exclude||null});p.replaceChildren(...Array.from(B.root?.childNodes||[]));let te=re=>{let K=B.original(re);K&&(l.liveToClone.set(K,re),l.cloneToLive.set(re,K));for(let W of Array.from(re.childNodes||[]))te(W)};for(let re of Array.from(p.childNodes))te(re)},u={...Lt,find(m,p,v={}){let A=h(m);if(!A?.querySelectorAll)return[];let M=a().query(p,A);v.includeRulesTag||(M=M.filter(B=>!ul(B)));let L=[];v.skip&&L.push(v.skip);let H=v.templateAttr===null?null:v.templateAttr||"cms-template";if(H&&L.push(`[${H}]`),L.length){let B=L.join(", ");M=M.filter(te=>!te.closest?.(B))}return M},parent(m){let p=h(m)?.parentElement;return p?d(p):null},children(m){return Array.from(h(m)?.children||[],d)},text(m,p){if(p===void 0){let M=d(m);return!M?.matches?.(n)&&!M?.querySelector?.(n)?Lt.text(M):(h(m)?.textContent||"").trim()}let v=d(m);if(!v?.matches?.(n)&&!v?.querySelector?.(n)&&!l){Lt.text(v,p);return}let A=a().cloneOf(v);A?f(v,A,"textContent",p):Lt.text(v,p)},attr(m,p,v){let A=d(m);if(v===void 0)return Lt.attr(A,p);Lt.attr(A,p,v);let M=l?.cloneOf(A);M&&(Lt.attr(M,p,v),Pr(A,{capability:"data",exclude:t.exclude||null}).root===null&&(M.remove(),l.liveToClone.delete(A),l.cloneToLive.delete(M)))},removeAttr(m,p){let v=d(m);Lt.removeAttr(v,p);let A=l?.cloneOf(v);A&&Lt.removeAttr(A,p)},prop(m,p,v){let A=d(m);if(v===void 0)return p==="innerHTML"||p==="outerHTML"||p==="textContent"||p==="innerText"?Lt.prop(h(A),p):Lt.prop(A,p);let M=p==="innerHTML"||p==="textContent"||p==="innerText",L=M?a().cloneOf(A):l?.cloneOf(A);L&&M?f(A,L,p,v):(Lt.prop(A,p,v),L&&Lt.prop(L,p,v))},clone(m){let p=h(m);return p===m?Lt.clone(m):s.importNode(p,!0)},insertAt(m,p,v){let A=d(m),L=u.children(A)[v]||(()=>{for(let te=A.children.length-1;te>=0;te--){let re=A.children[te];if(a().cloneOf(re))return re.nextElementSibling}return A.firstElementChild})(),H=d(p);A.insertBefore(H,L||null);let B=a().cloneOf(A);if(B){let te=a().cloneOf(H);te||(te=s.importNode(H,!0),b(H,te));let re=Array.from(B.children);B.insertBefore(te,re[v]||null)}},remove(m){let p=d(m),v=a().cloneOf(p);Lt.remove(p),v&&Lt.remove(v)},replaceWith(m,p){let v=d(m),A=a().cloneOf(v),M=Lt.replaceWith(v,p);if(A){let L=Pr(M,{capability:"data",exclude:t.exclude||null});if(!L.root)A.remove();else{A.replaceWith(L.root);let H=B=>{let te=L.original(B);te&&(l.liveToClone.set(te,B),l.cloneToLive.set(B,te));for(let re of Array.from(B.childNodes||[]))H(re)};H(L.root)}}return M}};return u}var rr=Lt;function Oi(e){try{return JSON.parse(e)}catch(t){throw new er(`Invalid strict JSON: ${t.message}`,t)}}function or(e){try{return JSON.parse(e)}catch{}let t={BRACE_OPEN:"{",BRACE_CLOSE:"}",BRACKET_OPEN:"[",BRACKET_CLOSE:"]",COLON:":",COMMA:",",STRING:"STRING",SELECTOR:"SELECTOR",IDENTIFIER:"IDENTIFIER",NUMBER:"NUMBER",BOOLEAN:"BOOLEAN"};function n(o){let i=[],s=0;for(;s<o.length;){let l=o[s];if(/\s/.test(l)){s++;continue}if("{}".includes(l)){i.push({type:l,value:l}),s++;continue}if(l==="["){let b=!1,f=s+1;for(;f<o.length&&/\s/.test(o[f]);)f++;if(f<o.length&&/[a-zA-Z_]/.test(o[f])&&(b=!0),!b){i.push({type:l,value:l}),s++;continue}}if(l==="]"){i.push({type:l,value:l}),s++;continue}if(l===":"){i.push({type:t.COLON,value:l}),s++;continue}if(l===","){i.push({type:t.COMMA,value:l}),s++;continue}if(l==='"'||l==="'"){let b=l,f=s+1;for(;f<o.length&&o[f]!==b;)o[f]==="\\"&&f++,f++;i.push({type:t.STRING,value:o.substring(s+1,f),quoted:!0,sourceQuote:b}),s=f+1;continue}let a=s,h;for(;a<o.length&&!/[{},]/.test(o[a]);)if(o[a]===":"){let b=[":first",":last",":nth-child",":nth-of-type",":first-child",":last-child",":first-of-type",":last-of-type",":only-child",":only-of-type",":hover",":focus",":active",":visited",":disabled",":enabled",":checked",":empty",":root",":target",":not",":before",":after",":nth-last-child",":nth-last-of-type"],f=!1;for(let u of b){let m=u.substring(1);if(o.substring(a+1,a+1+m.length)===m){f=!0,a+=m.length;break}}if(!f)break}else if(o[a]==="["){for(a++;a<o.length&&o[a]!=="]";){if(o[a]==='"'||o[a]==="'"){let b=o[a];for(a++;a<o.length&&o[a]!==b;)o[a]==="\\"&&a++,a++}a++}a<o.length&&o[a]==="]"&&a++}else a++;h=o.substring(s,a);let d=t.IDENTIFIER;/^-?\d+(\.\d+)?$/.test(h)?d=t.NUMBER:h==="true"||h==="false"||h==="null"?d=t.BOOLEAN:/^[.#@\[]|[.#@\[]| /.test(h)&&(d=t.SELECTOR),i.push({type:d,value:h,quoted:!1}),s=a}return i}function r(o){let i="";for(let s=0;s<o.length;s++){let l=o[s];if("{}".includes(l.type)||"[]".includes(l.type)){i+=l.value;continue}if(l.type===t.COLON){i+=l.value;continue}if(l.type===t.COMMA){let a=o[s+1];if(a&&(a.type==="}"||a.type==="]"))continue;i+=l.value;continue}if(l.type===t.STRING&&l.quoted){let a=l.value;l.sourceQuote==="'"&&(a=a.replace(/\\'/g,"'"),a=a.replace(/(\\*)"/g,(h,d)=>d.length%2===0?d+'\\"':h)),i+=`"${a}"`;continue}if(l.type===t.NUMBER||l.type===t.BOOLEAN){i+=l.value;continue}if(l.type===t.SELECTOR||l.type===t.IDENTIFIER){i+=`"${l.value}"`;continue}i+=`"${l.value}"`}return i}try{let o=n(e),i=r(o);return JSON.parse(i)}catch(o){throw new er("Invalid extraction rules syntax: "+o.message,o)}}var dl="1",fl=/^[a-zA-Z0-9_-]+$/;function Fr(e,t,n){let r;if(n===void 0)r="script[data-rules-name]";else{if(typeof n!="string"||!fl.test(n))throw new Error(`hyper-html-api: invalid rules token ${JSON.stringify(n)} (must match ${fl})`);r=`script[data-rules-name~="${n}"]`}let o=e.find(t,r,{includeRulesTag:!0});if(o.length===0)return null;n!==void 0&&o.length>1&&console.warn(`hyper-html-api: ${o.length} rules tags match data-rules-name~="${n}"; using the first.`);let i=o[0],s=e.attr(i,"data-rules-version");if(s!==dl)throw new tr(s);return{rules:or(e.text(i)),tagNode:i}}var Bp=new Function("url","return import(url)");function kl(e,t,n,r){let o=e.length,i=t.length,s=new Array(o).fill(-1);if(r){let v=new Set;for(let A=0;A<o;A++){let M=r[A];!(M>=0&&M<i)||v.has(M)||(s[A]=M,v.add(M))}}if(o===0||i===0)return s;let l=e.map(v=>gl(v,n)),a=t.map(v=>gl(v,n)),h=new Array(i).fill(!1);for(let v of s)v>=0&&(h[v]=!0);let d=new Map;a.forEach((v,A)=>{h[A]||d.set(v,d.has(v)?-1:A)});let b=new Map;l.forEach((v,A)=>{s[A]>=0||b.set(v,(b.get(v)||0)+1)}),l.forEach((v,A)=>{if(s[A]>=0||b.get(v)!==1)return;let M=d.get(v);M===void 0||M===-1||h[M]||(s[A]=M,h[M]=!0)});let f=[];for(let v=0;v<o;v++)s[v]<0&&f.push(v);let u=[];for(let v=0;v<i;v++)h[v]||u.push(v);if(f.length===0||u.length===0)return s;let m=o*i+1,p=(v,A)=>Wu(e[v],t[A],n)*m+Math.abs(v-A);for(let[v,A]of Ku(f,u,p))s[v]=A;return s}var yl=e=>typeof e=="object"&&e!==null;function gl(e,t){if(!yl(t))return e==null?" null":String(e);let n=Object.keys(t);return JSON.stringify(n.map(r=>{let o=JSON.stringify(e?.[r]);return o===void 0?" undef":o}))}function Wu(e,t,n){if(!yl(n))return e===t?0:1;let r=Object.keys(n);if(r.length===0)return 0;let o=0;for(let i of r){let s=JSON.stringify(e?.[i]),l=JSON.stringify(t?.[i]);s!==l&&o++}return o}function Ku(e,t,n){return e.length<=t.length?bl(e,t,n,!1):bl(t,e,(r,o)=>n(o,r),!0)}function bl(e,t,n,r){let o=e.length,i=t.length,s=[];for(let b=0;b<=o;b++)s.push(new Float64Array(i+1).fill(1/0));let l=[];for(let b=0;b<=o;b++)l.push(new Uint8Array(i+1));for(let b=0;b<=i;b++)s[o][b]=0;for(let b=o-1;b>=0;b--)for(let f=i-1;f>=0;f--){let u=n(e[b],t[f])+s[b+1][f+1],m=s[b][f+1];u<=m?(s[b][f]=u,l[b][f]=1):s[b][f]=m}let a=[],h=0,d=0;for(;h<o&&d<i;)l[h][d]&&(a.push(r?[t[d],e[h]]:[e[h],t[d]]),h++),d++;return a}function Ri(e,t,n,r,o,i,s,l={}){let a=e.find(t,n,l);if(o.length===0){a.forEach(B=>e.remove(B)),Ni(l,"onRowsApplied",i.path,[]);return}let h=o.length>a.length,d=a[0]||null;if(h&&!d&&(d=Ju(e,t,n,l),!d))throw new Ir(i.path);let b=a.map(B=>Xu(e,B,r,l)),f=null;if(h&&d){f=e.clone(d),l.templateAttr&&e.removeAttr(f,l.templateAttr);let B=e.stripIds(f);B>0&&console.warn(`[hyper-html-api] stripped ${B} id attribute(s) from cloned template at "${i.path.join(".")||"(root)"}"`)}let u=kl(o,b,r,Gu(e,a,o,i,l)),m=a[0]||d,p=e.parent(m),v=a.length>0?xl(e,p,m):0,A=Zu(e,a),M=new Set,L=[],H=o.map((B,te)=>{let re=u[te];if(re>=0)return M.add(re),L.push(!1),a[re];L.push(!0);let K=e.clone(f);return e.stripIds(K),K});a.forEach((B,te)=>{M.has(te)||e.remove(B)}),A?H.forEach((B,te)=>{let re=v+te;e.children(p).findIndex(he=>e.sameNode(he,B))!==re&&e.insertAt(p,B,re)}):Qu(e,H,L,p,v),Yu(e,H,r,o,i,s,l),Ni(l,"onRowsApplied",i.path,H)}function Ni(e,t,n,r){if(typeof e[t]=="function")try{return e[t](n.slice(),r)}catch(o){console.warn(`[hyper-html-api] ${t} threw at "${n.join(".")||"(root)"}"`,o);return}}function Gu(e,t,n,r,o){let i=Ni(o,"identifyRows",r.path,n);if(!Array.isArray(i))return null;let s=new Array(n.length).fill(-1),l=new Set;for(let a=0;a<n.length;a++)if(i[a]){for(let h=0;h<t.length;h++)if(!(l.has(h)||!e.sameNode(t[h],i[a]))){s[a]=h,l.add(h);break}}return s}function Yu(e,t,n,r,o,i,s){t.forEach((l,a)=>{if(n===null){let h=r[a],d=h==null?"":String(h);e.text(l)!==d&&e.text(l,d)}else{let h=i(e,l,n,r[a],{depth:o.depth+1,path:[...o.path,a]},s);h&&h!==l&&(t[a]=h)}})}function Xu(e,t,n,r){return n===null?e.text(t):En(e,t,n,r.onRowsRead?{...r,onRowsRead:void 0}:r)}function xl(e,t,n){let r=e.children(t);for(let o=0;o<r.length;o++)if(e.sameNode(r[o],n))return o;return-1}function Ju(e,t,n,r){if(!r.templateAttr)return null;let o=t;for(;o;){let i=e.find(o,n,{includeRulesTag:!1,templateAttr:null});for(let s of i)if(e.attr(s,r.templateAttr)!=null)return s;o=e.parent(o)}return null}function Zu(e,t){if(t.length<=1)return!0;let n=e.parent(t[0]);if(!n)return!1;let r=e.children(n),o=[];for(let i of t){let s=r.findIndex(l=>e.sameNode(l,i));if(s===-1)return!1;o.push(s)}return o.sort((i,s)=>i-s),o[o.length-1]-o[0]===o.length-1}function Qu(e,t,n,r,o){let i=null,s=o;for(let l=0;l<t.length;l++){if(!n[l]){i=t[l];continue}let a=i?e.parent(i):r;if(!a)continue;let h=i?xl(e,a,i)+1:s++;e.insertAt(a,t[l],h),i=t[l]}}var vl=new Set(["checked","selected","disabled","readOnly","paused"]);function ir(e,t,n,r,o={}){if(Object.prototype.hasOwnProperty.call(o,"exclude")&&e.semanticExclude===!1)throw new Error("This adapter does not support semantic exclude queries; omit exclude or use the DOM adapter.");let i=[];if(Mi(n,r,[],i),i.length)throw new Lr(i);po(e,t,n,r,{depth:0,path:[]},o)}function po(e,t,n,r,o,i={}){if(o.depth>nr)throw new Pn(o.path);if(r===void 0)return t;if(typeof n=="string")return ef(e,t,n,r,o,i);if(Array.isArray(n)){let[s,l]=n;return Ri(e,t,s,l,r,o,po,i),t}if(typeof n=="object"&&n!==null){for(let[s,l]of Object.entries(n)){let a=po(e,t,l,r==null?r:r[s],{depth:o.depth+1,path:[...o.path,s]},i);a&&a!==t&&(t=a)}return t}return t}function ef(e,t,n,r,o,i){if(n.endsWith("[]")){let a=n.slice(0,-2);return Ri(e,t,a,null,r,o,po,i),t}if(n.startsWith("@"))return Al(e,t,n.slice(1),r);let s=St(n);if(s!==-1){let a=n.slice(0,s),h=n.slice(s+1),d=a?e.find(t,a,i):[t];return d.length===0||Al(e,d[0],h,r),t}if(n===".")return wl(e,t,r),t;let l=e.find(t,n,i);return l.length===0||wl(e,l[0],r),t}function wl(e,t,n){let r=n==null?"":String(n);e.text(t)!==r&&e.text(t,r)}function Al(e,t,n,r){if(Mr.has(n)){let i=e.prop(t,n);if(i===r||i!=null&&r!=null&&String(i)===String(r))return t;throw new jr(n)}if(n==="outerHTML"){let i=r==null?"":String(r);return e.replaceWith(t,i)}if(tl.has(n)){let i=tf(n,r);return e.prop(t,n)!==i&&e.prop(t,n,i),t}let o=r==null?"":String(r);return e.attr(t,n)!==o&&e.attr(t,n,o),t}function tf(e,t){return t==null?vl.has(e)?!1:"":vl.has(e)?t==="false"?!1:!!t:t}function Mi(e,t,n,r){if(t!==void 0){if(typeof e=="string"){if(e.endsWith("[]")){Array.isArray(t)?t.forEach((o,i)=>{typeof o=="object"&&o!==null&&r.push({path:Br([...n,i]),expected:"scalar",got:qr(o)})}):r.push({path:Br(n),expected:"array",got:qr(t)});return}t!==null&&typeof t=="object"&&r.push({path:Br(n),expected:"scalar",got:qr(t)});return}if(Array.isArray(e)){if(!Array.isArray(t)){r.push({path:Br(n),expected:"array",got:qr(t)});return}let o=e[1];t.forEach((i,s)=>Mi(o,i,[...n,s],r));return}if(typeof e=="object"&&e!==null){if(t===null||Array.isArray(t)||typeof t!="object"){r.push({path:Br(n),expected:"object",got:qr(t)});return}for(let[o,i]of Object.entries(e))Mi(i,t[o],[...n,o],r)}}}function qr(e){return e===null?"null":Array.isArray(e)?"array":typeof e}function Br(e){return e.join(".")}var mf=Object.freeze({refusedRuleForms:["innerHTML","outerHTML"],refusedTargets:["script","style","template","noscript","iframe","object","embed","xmp","plaintext","noembed","noframes","meta","link","base","animate","set","animatemotion","animatetransform"],refusedAttributes:["style","srcdoc","is","http-equiv","sandbox","allow","nonce","integrity","charset","htmlclaytoken","htmlclayid","data-rules-name","data-rules-version","clay","contenteditable",...il],refusedAttributePrefixes:["on"],urlAttributes:["href","src","srcset","action","formaction","poster","cite","data","ping","background","longdesc","usemap","xlink:href","manifest","codebase","icon"],refusedSchemes:["javascript","vbscript","data"]});function Li(e,t,n){if(n&&typeof n=="object")return{rules:n,tagNode:null};if(typeof n=="string"){let r=t&&t.ownerDocument?t.ownerDocument:t;return Fr(e,r,n)}return null}var Vt={extract:(e,t,n={})=>En(kn(e,n),e,t,n),apply:(e,t,n,r={})=>ir(kn(e,{...r,_write:!0}),e,t,n,r),findRulesIn:(e,t)=>Fr(rr,e,t),findRules:(e,t)=>Li(rr,e,t),bind:(e,t,n={})=>{let r=Li(rr,e,t);if(!r){let o=typeof t=="string"?`data-rules-name~="${t}"`:"the provided rules object";throw new Error(`hyper-html-api: could not resolve rules for ${o}`)}return{...r,get:()=>En(kn(e,n),e,r.rules,n),set:o=>ir(kn(e,{...n,_write:!0}),e,r.rules,o,n)}},parseStrict:Oi,parseRelaxed:or,ruleAttrIndex:St,splitRule:oo,errors:mo,DOM_PROPERTIES:fo};var ji={};ei(ji,{fromString:()=>yn,getRuleAtPath:()=>Fn,getValueAtPath:()=>bf,setAtPath:()=>Ii,toString:()=>gf});function gf(e){return e.map(String).join(".")}function yn(e){return e===""?[]:e.split(".").map(t=>/^\d+$/.test(t)?Number(t):t)}function Fn(e,t){let n=e;for(let r of t){if(n==null)return;if(typeof n=="string"){if(n.endsWith("[]")&&(typeof r=="number"||r==="*")){n=n.slice(0,-2);continue}return}if(Array.isArray(n)){if(typeof r!="number"&&r!=="*")return;n=n[1];continue}if(typeof n=="object"){if(typeof r=="number"||!(r in n))return;n=n[r];continue}return}return n}function bf(e,t){let n=e;for(let r of t){if(n==null)return;n=n[r]}return n}function Ii(e,t,n){if(t.length===0)return n;let[r,...o]=t;if(typeof r=="number"){let i=Array.isArray(e)?[...e]:[];return i[r]=Ii(i[r],o,n),i}return{...e&&typeof e=="object"?e:{},[r]:Ii((e||{})[r],o,n)}}function Hr(e){if(typeof e=="string")return e.endsWith("[]")?[]:"";if(Array.isArray(e))return[];if(typeof e=="object"&&e!==null){let t={};for(let[n,r]of Object.entries(e))t[n]=Hr(r);return t}return""}function go(e,t,{ignoreActiveValue:n=!0}={}){Ai.morph(e,t,{morphStyle:"innerHTML",ignoreActiveValue:n,restoreFocus:!0,formStateSync:"property",policy:"raw"})}var Tl=new WeakMap,Di=e=>e.map(String).join(".");function kf(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}function El(e,t){if(!e||!e.querySelector)return null;let n=e.querySelector(`[data-hcms-path="${kf(t)}"]`),r=n&&n.querySelector(".hcms-array-items");return r?Array.from(r.children).filter(o=>o.matches&&o.matches("[data-hcms-card], [data-hcms-array-item]")):null}function _l(e,t,n){let r=El(e,t);!r||r.length!==n.length||r.forEach((o,i)=>{n[i]&&Tl.set(o,n[i])})}function bo(){let e=new Map;return{hooks:{onRowsRead(t,n){e.set(Di(t),n)}},seed(t){for(let[n,r]of e)_l(t,n,r);e.clear()}}}function Cl(e){return{identifyRows(t,n){let r=El(e,Di(t));return!r||r.length!==n.length?null:r.map(o=>Tl.get(o)||null)},onRowsApplied(t,n){_l(e,Di(t),n)}}}var Ol={skip:"[data-hcms-shell]",templateAttr:"cms-template"},Pi="data-hcms-rollback-ui",yf=0;function Nl(e,t,n,r={}){return xf(e,t,n,r)}function xf(e,t,n,r){let{shellRoot:o,structural:i,structuralPath:s,formRoot:l}=r,a=l?{...Ol,...Cl(l)}:Ol;if(!i)try{return Vt.apply(e,t,n,a),{ok:!0}}catch(f){return{ok:!1,error:f}}let h=vf(e,t,s),d=h?Af(h):null,b=h?null:Tf(e,o);try{return Vt.apply(e,t,n,a),{ok:!0}}catch(f){return d?Sf(h,d):b&&Ef(e,o,b),{ok:!1,error:f}}}function vf(e,t,n){if(!n||!e)return null;let r=yn(n),o=[],i=t;for(let s of r){if(typeof i=="string"||i==null||Array.isArray(i))break;if(typeof i=="object"&&s in i){if(o.push(s),i=i[s],Array.isArray(i)||typeof i=="string"&&i.endsWith("[]"))break}else return null}return!Array.isArray(i)&&!(typeof i=="string"&&i.endsWith("[]"))?null:wf(e,t,o)}function wf(e,t,n){if(n.length===0)return null;let r=e,o=t;for(let i=0;i<n.length;i++){let s=n[i];if(!o||typeof o!="object"||Array.isArray(o))return null;let l=o[s];if(l==null)return null;if(i===n.length-1){if(Array.isArray(l)){let[a]=l;return r.querySelector?.(a)?.parentElement||null}if(typeof l=="string"&&l.endsWith("[]")){let a=l.slice(0,-2);return r.querySelector?.(a)?.parentElement||null}return null}o=l}return null}function Af(e){let t=[],n=[];for(let r of Array.from(e.childNodes))t.push(Fi(r,n));return{nodes:t,retained:n}}function Sf(e,t){let n=e.cloneNode(!1);for(let r of t.nodes)n.appendChild(r);Tn(e,Array.from(n.childNodes),Ml()),Rl(e,t.retained)}function Tf(e,t){let n=[],r=[];for(let o of Array.from(e.childNodes))o===t||t&&o.contains?.(t)||n.push(Fi(o,r));return{nodes:n,retained:r}}function Ef(e,t,n){let r=e.cloneNode(!1);for(let o of n.nodes)r.appendChild(o);Tn(e,Array.from(r.childNodes),Ml()),Rl(e,n.retained)}function Fi(e,t){let n=e.cloneNode(!1);if(e.nodeType===1&&e.matches('[editor-ui],[clay~="editor-ui"]')){let i=String(++yf);n.setAttribute(Pi,i),t.push({id:i,node:e})}let r=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,o=n.nodeType===1&&n.tagName==="TEMPLATE"?n.content:n;for(let i of Array.from(r.childNodes||[]))o.appendChild(Fi(i,t));return n}function Rl(e,t){for(let{id:n,node:r}of t){let o=e.querySelector(`[${Pi}="${n}"]`);o===r?r.removeAttribute(Pi):r.isConnected?o?.remove():o?.replaceWith(r)}}function Ml(){return{morphStyle:"innerHTML",policy:"raw",restoreFocus:!1,scripts:{handle:!1,merge:!1}}}function yo(e){return e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replace(/[-_]/g," ").replace(/\s+/g," ").trim().replace(/^./,t=>t.toUpperCase())}var _f='<div class="hcms-drag-handle mirk-sortable__grip" aria-hidden="true"><div class="mirk-sortable__dots"><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span></div></div>',qi='<svg class="hcms-x" viewBox="0 0 16 16" shape-rendering="crispEdges" aria-hidden="true"><path d="M4 4 L12 12 M12 4 L4 12" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="square"></path></svg>',jl={"@scalar":`
|
|
1
|
+
var hypercms=(()=>{var ws=Object.defineProperty;var iu=Object.getOwnPropertyDescriptor;var lu=Object.getOwnPropertyNames;var au=Object.prototype.hasOwnProperty;var As=(e,t)=>{for(var n in t)ws(e,n,{get:t[n],enumerable:!0})},cu=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of lu(t))!au.call(e,o)&&o!==n&&ws(e,o,{get:()=>t[o],enumerable:!(r=iu(t,o))||r.enumerable});return e};var uu=e=>cu(ws({},"__esModule",{value:!0}),e);var Om={};As(Om,{cms:()=>Em,default:()=>_m});function Vt(e){let t=0,n=null,r=-1;for(let o=0;o<e.length;o++){let s=e[o];s==="\\"?o++:n?s===n&&(n=null):s==='"'||s==="'"?n=s:s==="["||s==="("?t++:s==="]"||s===")"?t>0&&t--:s==="@"&&t===0&&(r=o)}return r}function To(e){let t=Vt(e);return t===-1?{selector:e,prop:null}:{selector:e.slice(0,t),prop:e.slice(t+1)||null}}function Eo(e,t){if(typeof e=="string"){let n=t&&t.defaultView,r=n&&n.DOMParser||globalThis.DOMParser;return new r().parseFromString(e,"text/html")}if(e&&e.nodeType===9)return e;throw new TypeError("expected an HTML string or a Document")}function Ss(e){let t=new Map;return(n,r)=>{if(typeof r!="string")return Eo(r,e);let o=t.get(n);if(o&&o.text===r)return o.doc;let s=Eo(r,e);return t.set(n,{text:r,doc:s}),s}}function Xi(e,t){let n=t.doctype;if(!n)return!1;let r=e.doctype;if(r&&r.name===n.name&&r.publicId===n.publicId&&r.systemId===n.systemId)return!1;let o=e.implementation.createDocumentType(n.name,n.publicId,n.systemId);return r?e.replaceChild(o,r):e.insertBefore(o,e.documentElement),!0}var Ts=()=>!1;function Es(e,t=[]){if(typeof e!="function")return Ts;let n=new WeakMap,r=new Set(t);return o=>{if(!o||o.nodeType!==1)return!1;let s=n.get(o);if(s!==void 0)return s;let i=[],l=o,a=!1;for(;l&&l.nodeType===1;){let u=n.get(l);if(u!==void 0){a=u;break}if(i.push(l),e(l,r.has(l))){a=!0;break}if(r.has(l))break;l=l.parentElement}for(let u of i)n.set(u,a);return a}}var Vm=Object.freeze(["root-tag","equal","root-attrs","root-level","not-in-body","ignored-ancestor","remote-wins-ancestor","form-ancestor","script-or-template","no-live-twin","live-detached","ancestor-live","sibling-live","outside-id-changed","chain-unpaired"]);function Un(){return{lazyTwins:0,hashRejected:0,similarTiesStrict:0,similarTiesLoose:0,ambiguousMoves:0,certificationPairs:0,certificationVisited:0,fastPathAttempted:0,fastPathTaken:0,fastPathFallback:null}}function _s(e,t){let n=new WeakMap;if(!e||!t||typeof t!="object"||Array.isArray(t))return n;let r=t["~"],o=typeof r=="string"?r.split(",").map(Number):null,s=o&&typeof t["^"]=="string"?t["^"].split(","):null,i=h=>Number.isInteger(h)&&h>=0,l=0,a=!1,u=h=>{let f=h;for(;f>0;){let p=o[l++];if(l>o.length||!i(p))return!1;f+=p-1}return!0},d=(h,f)=>{if(a)return;if(o){let v=l++,m=o[v];if(v>=o.length||!i(m)){a=!0;return}let g=!s||s[v]===h.tagName.toLowerCase();if(!g||m!==h.children.length){let y=g&&t[f];typeof y=="string"&&y&&n.set(h,y),u(m)||(a=!0);return}}let p=t[f];typeof p=="string"&&p&&n.set(h,p);let b=h.children;for(let v=0;v<b.length;v++)d(b[v],f===""?String(v):`${f}.${v}`)};return d(e,""),n}function Ji(e){return t=>{for(let n of e){let r=n(t);if(typeof r=="string"&&r!=="")return r}return null}}var bn=Ji([e=>e.getAttribute("data-id"),e=>e.getAttribute("id")]);function _o(e,t,n,r=null){let o=new Map,s=new Set,i=l=>{if(n(l))return;let a=t(l);a&&(o.has(a)?s.add(a):o.set(a,l))};if(r){let l=a=>{for(let u of a.querySelectorAll(r))i(u);for(let u of a.querySelectorAll("template"))u.content&&l(u.content)};i(e),l(e.tagName==="TEMPLATE"&&e.content?e.content:e)}else{let l=a=>{i(a);let u=a.tagName==="TEMPLATE"&&a.content?a.content.children:a.children;for(let d=0;d<u.length;d++)l(u[d])};l(e)}for(let l of s)o.delete(l),Os(l);return o}function Os(e){e.startsWith("merge:")&&console.warn(`[hyper-morph] merge disabled for duplicate identity "${e.slice(e.indexOf(":",6)+1)}"`)}var du=new Set(["href","src","name","type","role"]),Qi=new Set(["SCRIPT","STYLE","TEXTAREA","TEMPLATE","IFRAME","OBJECT","CANVAS","VIDEO","AUDIO","svg","SVG"]);function pr(e,t=5381){let n=t;for(let r=0;r<e.length;r++)n=(n<<5)+n^e.charCodeAt(r);return n>>>0}function Zi(e){return e.replace(/\s+/g," ")}var hu=0;function el({ignored:e=()=>!1,ignoreAttribute:t=()=>!1,stats:n=null}={}){let r=new WeakMap,o=new WeakMap;function s(H){let z=H.attributes,ae=z.length;if(ae===0)return{all:"",sig:H.tagName+"|"};let me=[],Q="",L=[];for(let Ee=0;Ee<ae;Ee++){let xe=z[Ee],se=xe.name;t(H,se)||me.push(se+"="+xe.value),se==="class"?Q=xe.value.indexOf(" ")<0?xe.value:xe.value.split(/\s+/).filter(Boolean).sort().join(" "):du.has(se)&&L.push(se+"="+xe.value)}return me.length>1&&me.sort(),L.length>1&&L.sort(),{all:me.join(""),sig:H.tagName+"|"+Q+(L.length?"|"+L.join("|"):"")}}function i(H){return H.nodeType===1&&H.tagName==="TEMPLATE"&&H.content?H.content.childNodes:H.childNodes}function l(H){let z=r.get(H);if(z)return z;if(H.nodeType===3)z={hash:"T"+pr(H.nodeValue),hint:Zi(H.nodeValue).slice(0,64),sig:null,tok:null};else if(H.nodeType===8)z={hash:"C"+pr(H.nodeValue),hint:"",sig:null,tok:null};else if(H.nodeType===1){let ae=s(H),me=pr(H.tagName+""+ae.all),Q="";for(let L of u(H))if(L.nodeType===1){let Ee=l(L);me=pr(Ee.hash,me),Q.length<64&&(Q+=" "+Ee.hint)}else me=pr(d(L),me),L.kind==="text"&&Q.length<64&&(Q+=L.value.slice(0,64));z={hash:"E"+me,hint:Zi(Q).trim().slice(0,64),sig:ae.sig,tok:null}}else z={hash:"N"+H.nodeType,hint:"",sig:null,tok:null};return r.set(H,z),z}function a(H){if(!H.tok){H.tok=new Set;for(let z of H.hint.toLowerCase().split(/[^\p{L}\p{N}]+/u))z&&H.tok.add(z)}return H.tok}function u(H){let z=o.get(H);if(z)return z;z=[];let ae=null,me=()=>{ae&&(ae.value=ae.nodes.map(Q=>Q.nodeValue).join(""),z.push(ae),ae=null)};for(let Q of i(H)){if(Q.nodeType===3){ae||(ae={kind:"text",nodes:[],value:"",parent:H,hash:void 0}),ae.nodes.push(Q);continue}me(),Q.nodeType===8?z.push({kind:"comment",nodes:[Q],value:Q.nodeValue,parent:H,hash:void 0}):Q.nodeType===1&&!e(Q)&&z.push(Q)}return me(),o.set(H,z),z}function d(H){return H.nodeType===1?l(H).hash:(H.hash===void 0&&(H.hash=(H.kind==="text"?"T":"C")+pr(H.value)),H.hash)}function h(H,z){let ae=a(l(H)),me=a(l(z));if(ae.size===0&&me.size===0)return{coef:1,share:1};if(ae.size===0||me.size===0)return null;let Q=0;for(let L of ae)me.has(L)&&Q++;return{coef:Q/Math.min(ae.size,me.size),share:Q/Math.max(ae.size,me.size)}}function f(H,z){let ae=h(H,z);return!!ae&&ae.coef>=.5}let p=new WeakMap;function b(H){let z=p.get(H);if(z)return z;z=[];for(let ae of H.attributes)t(H,ae.name)||z.push([ae.namespaceURI||"",ae.localName,ae.value]);return z.sort((ae,me)=>ae[0]<me[0]?-1:ae[0]>me[0]?1:ae[1]<me[1]?-1:ae[1]>me[1]?1:0),p.set(H,z),z}let v=new WeakMap;function m(H,z){if(H===z)return!0;if(d(H)!==d(z))return!1;let ae=v.get(H);if(ae&&ae.has(z))return ae.get(z);let me=v.get(z);if(me&&me.has(H))return me.get(H);let Q=g(H,z),L=Q===!0;return Q===!1&&n&&n.hashRejected++,ae||v.set(H,ae=new WeakMap),ae.set(z,L),L}function g(H,z){if(H.nodeType===1){if(z.nodeType!==1||H.tagName!==z.tagName||H.namespaceURI!==z.namespaceURI)return!1;let ae=b(H),me=b(z);if(ae.length!==me.length)return!1;for(let Ee=0;Ee<ae.length;Ee++)if(ae[Ee][0]!==me[Ee][0]||ae[Ee][1]!==me[Ee][1]||ae[Ee][2]!==me[Ee][2])return!1;let Q=u(H),L=u(z);if(Q.length!==L.length)return!1;for(let Ee=0;Ee<Q.length;Ee++){if(d(Q[Ee])!==d(L[Ee]))return!1;if(!m(Q[Ee],L[Ee]))return hu}return!0}return z.nodeType===1?!1:H.kind===z.kind&&H.value===z.value}let y=new WeakMap,I=new Map,Y=0;function $(H){let z=y.get(H);if(z)return z;let ae=d(H),me=I.get(ae);me||I.set(ae,me=[]);let Q=me.find(L=>m(L.unit,H));return z=Q?Q.key:"K"+Y++,Q||me.push({unit:H,key:z}),y.set(H,z),z}return{meta:l,unitsOf:u,unitHash:d,similar:f,score:h,childrenOf:i,equalUnits:m,exactUnitKey:$,ignored:e}}var tl=16,mu=2e3,pu=3,Ns={align:0,certifyVisited:0,certifyScheduled:0};function Cs(e,t,n){let{meta:r,unitsOf:o,unitHash:s,similar:i,score:l,childrenOf:a,equalUnits:u,ignored:d}=n.analyzer,h=n.baseId||(()=>null),f=n.sideId||(()=>null),p=n.stats||null,b=p?new Set:null,v=p?new Set:null,m=new Map,g=new Map,y=new Set,I=new Map,Y=new Set,$=new Set,H=new Set,z=[],ae=[],me=[],Q=[],L=mu,Ee=new Map,xe=new Map,se=(x,A)=>{m.set(x,A),g.set(A,x)},V=new Set,Se=new Set,ve=null,Me=x=>{let A=x.nodeType?x.parentNode:x.parent;if(!A||A.nodeType!==11)return A;if(!ve){ve=new WeakMap;let j=G=>{for(let q of G.querySelectorAll("template"))q.content&&(ve.set(q.content,q),j(q.content))};for(let G of[e,t])j(G.tagName==="TEMPLATE"&&G.content?G.content:G)}return ve.get(A)||null},He=(x,A)=>{for(let j=Me(x);j&&!V.has(j);j=Me(j))V.add(j);for(let j=Me(A);j&&!Se.has(j);j=Me(j))Se.add(j)},Ve=x=>{for(let A=Me(x);A;A=Me(A))if(m.has(A))return $.has(A);return!1},it=x=>{for(let A=Me(x);A;A=Me(A)){let j=g.get(A);if(j!==void 0)return $.has(j)}return!1},le=x=>!!x&&x.nodeType===1,yt=(x,A)=>{let j=I.get(x);return!!j&&j.has(A)},et=x=>Qi.has(x.tagName),Oe=n.comparisons||n.scope,_=(x,A)=>{if(Oe){if(Oe.same.get(x)===A)return!0;if(Oe.differ.get(x)===A)return!1}if(!x.isEqualNode(A))return!1;if(x.tagName==="TEMPLATE")return u(x,A);let j=x.getElementsByTagName("template");if(j.length===0)return!0;let G=A.getElementsByTagName("template");if(j.length!==G.length)return!1;for(let q=0;q<j.length;q++)if(!u(j[q],G[q]))return!1;return!0},B=(x,A)=>{let j=h(x);if(!j)return!0;let G=f(A);return!G||j===G},fe=globalThis.__hyperMorphProfile,Ae=fe?performance.now():0;fe&&!n.scope&&(r(e),r(t),fe.meta=(fe.meta||0)+(performance.now()-Ae),Ae=performance.now()),se(e,t);let pe=new Set;for(let[x,A]of n.baseIndex){let j=n.sideIndex.get(x);j&&j.tagName===A.tagName&&!m.has(A)&&!g.has(j)&&(se(A,j),He(A,j),pe.add(A))}if(pe.size){let x=[];if(n.scope)for(let q of n.scope.chain)pe.has(q)&&x.push(q);let A=[n.scope?n.scope.root:e];for(;A.length;){let q=A.pop();pe.has(q)&&x.push(q);let X=a(q);for(let O=X.length-1;O>=0;O--)X[O].nodeType===1&&A.push(X[O])}let j=new Set;for(let q=x.length-1;q>=0;q--){let X=x[q];n.scope&&n.scope.onChain.has(X)?j.add(X):kt(X,m.get(X),j)?($.add(X),H.add(X),p&&p.certificationPairs++):j.add(X)}let G=new Set;for(let q of x)$.has(q)&&!G.has(q)&&Qe(q,G)}n.scope&&n.scope.head&&ht(n.scope.head[0],n.scope.head[1]);function Qe(x,A){let j=[x];for(;j.length;){let G=j.pop();if(!A.has(G)){A.add(G),T(G);for(let q of o(G))le(q)&&m.has(q)&&j.push(q)}}}Q.push([e,t]);for(let[x,A]of m)le(x)&&x!==e&&Q.push([x,A]);return ee(),qe(),fe&&(fe.align=(fe.align||0)+(performance.now()-Ae)),{map:m,reverse:g,moved:Y,identical:$,pairIdenticalChildren:T,weak:y,unpair:rt,rematch:qe,insertedByHash:lt,refused:v,identityPaired:pe};function qe(){P(),ee();for(let x=0;x<me.length;){let A=me.length;Ue(x,A),x=A,ee(),P(),ee()}}function rt(x){let A=m.get(x);if(!A)return;I.has(x)||I.set(x,new Set),I.get(x).add(A);let j=(q,X)=>{m.delete(q),g.delete(X),Y.delete(q),$.delete(q),y.delete(q),H.delete(q)},G=(q,X)=>{for(let O of o(q)){let C=m.get(O);!C||pe.has(O)||!(le(C)?X.contains(C):X.contains(C.nodes[0]))||(j(O,C),le(O)&&G(O,C))}};j(x,A),le(x)&&G(x,A),z.push(x),ae.push(A)}function lt(){let x=new Map;for(let A of new Set(ae)){if(g.has(A))continue;let j=r(A).hash;x.has(j)||x.set(j,[]),x.get(j).push(A)}return x}function ee(){for(;Q.length;){let[x,A]=Q.shift();m.get(x)!==A||H.has(x)||$.has(x)||ge(x,A)}}function ce(x,A){if(!et(x))for(let j of o(x))le(j)&&(A.push(j),ce(j,A))}function ge(x,A){H.add(x);let j=o(x),G=o(A);Ns.align+=j.length+G.length,Ee=new Map,xe=new Map;for(let Z=0;Z<j.length;Z++)Ee.set(j[Z],Z);for(let Z=0;Z<G.length;Z++)xe.set(G[Z],Z);if(x.tagName==="HTML")for(let Z of["HEAD","BODY"]){let ye=j.find(k=>le(k)&&k.tagName===Z),Re=G.find(k=>le(k)&&k.tagName===Z);ye&&Re&&!m.has(ye)&&!g.has(Re)&&se(ye,Re)}for(let Z=0;Z<j.length&&Z<G.length;Z++){let ye=j[Z],Re=G[Z];m.has(ye)||g.has(Re)||(le(ye)?le(Re)&&ye.tagName===Re.tagName&&_(ye,Re)&&ht(ye,Re):!le(Re)&&ye.kind===Re.kind&&ye.value===Re.value&&ht(ye,Re))}E(j,G);let q=j.filter(Z=>!m.has(Z)),X=G.filter(Z=>!g.has(Z));q.length&&X.length&&(Je(q,X),re(q,X),oe(q,X,j,G),he(j,G));let O=!1,C=!1;for(let Z of j){if(!m.has(Z)){le(Z)&&(z.push(Z),ce(Z,z),O=!0);continue}le(Z)&&!$.has(Z)&&Q.push([Z,m.get(Z)])}for(let Z of G)!g.has(Z)&&le(Z)&&(ae.push(Z),ce(Z,ae),C=!0);O&&C&&me.push([x,A])}function Ue(x,A){for(let j=x;j<A;j++){let[G,q]=me[j];if(m.get(G)!==q)continue;let X=o(G),O=o(q),C=new Map,Z=new Map,ye=null;for(let Re of X)le(Re)&&(m.has(Re)?ye=Re:(C.has(ye)||C.set(ye,[]),C.get(ye).push(Re)));ye=null;for(let Re of O)le(Re)&&(g.has(Re)?ye=g.get(Re):(Z.has(ye)||Z.set(ye,[]),Z.get(ye).push(Re)));for(let[Re,k]of C){let N=Z.get(Re);if(!(!N||k.length!==N.length)&&k.every((D,U)=>N[U].tagName===D.tagName&&B(D,N[U])&&!yt(D,N[U])))for(let D=0;D<k.length;D++)ke(k[D],N[D])}}}function ke(x,A){se(x,A),y.add(x),Q.push([x,A]),ee()}function Je(x,A){let j=gr(x,s),G=gr(A,s),q=new Map;for(let X of A){let O=s(X);G.get(O)===1&&q.set(O,X)}for(let X of x){if(m.has(X))continue;let O=s(X);if(j.get(O)!==1)continue;let C=q.get(O);C&&!g.has(C)&&u(X,C)&&ht(X,C)}}function kt(x,A,j){let G=[[x,A]];for(;G.length;){let[q,X]=G.pop();if(Ns.certifyVisited++,p&&p.certificationVisited++,q.nodeType!==X.nodeType)return!1;if(q.nodeType===3||q.nodeType===8){if(q.nodeValue!==X.nodeValue)return!1;continue}if(q.nodeType!==1){if(!q.isEqualNode(X))return!1;continue}if(q.tagName!==X.tagName||q.namespaceURI!==X.namespaceURI||d(q)!==d(X))return!1;let O=q.attributes,C=X.attributes;if(O.length!==C.length)return!1;for(let N=0;N<O.length;N++){let D=O[N];if(X.getAttributeNS(D.namespaceURI,D.localName)!==D.value)return!1}let Z=m.get(q);if(Z!==void 0&&Z!==X)return!1;let ye=g.get(X);if(ye!==void 0&&ye!==q)return!1;if(q!==x){if($.has(q))continue;if(j.has(q))return!1}let Re=a(q),k=a(X);if(Re.length!==k.length)return!1;Ns.certifyScheduled+=Re.length;for(let N=Re.length-1;N>=0;N--)G.push([Re[N],k[N]])}return!0}function ht(x,A){if(le(x)&&(V.has(x)||Se.has(A))){let j=ze(x,A);if(!j){se(x,A),Q.push([x,A]);return}for(let G=0;G<j.length;G+=2){let q=j[G],X=j[G+1],O=m.get(q);O!==void 0&&O!==X&&wt(q,O);let C=g.get(X);C!==void 0&&C!==q&&wt(C,X),m.get(q)===X&&(Y.delete(q),y.delete(q),$.add(q),H.add(q))}}Ot(x,A)}function wt(x,A){m.delete(x),g.delete(A),Y.delete(x),$.delete(x),y.delete(x),H.delete(x)}function ze(x,A){let j=[x,A,!1],G=[];for(;j.length;){let q=j.pop(),X=j.pop(),O=j.pop(),C=m.get(O),Z=g.get(X);if(O!==x&&(C!==void 0&&C!==X&&pe.has(O)||Z!==void 0&&Z!==O&&pe.has(Z)))return null;if(!(C===X&&$.has(O))&&((C!==void 0||Z!==void 0)&&G.push(O,X),!!le(O))){if(q||C!==void 0&&C!==X||Z!==void 0&&Z!==O){let ye=o(O),Re=o(X);for(let k=0;k<ye.length&&k<Re.length;k++)j.push(ye[k],Re[k],!0)}else if(V.has(O)||Se.has(X)){let ye=O.tagName==="TEMPLATE"?O.content:O,Re=X.tagName==="TEMPLATE"?X.content:X;for(let k=ye.firstElementChild,N=Re.firstElementChild;k&&N;){if(d(k)){k=k.nextElementSibling;continue}if(d(N)){N=N.nextElementSibling;continue}(m.has(k)||g.has(N)||V.has(k)||Se.has(N))&&j.push(k,N,!1),k=k.nextElementSibling,N=N.nextElementSibling}}}}return G}function Ot(x,A){se(x,A),$.add(x),le(x)&&H.add(x)}function T(x){let A=m.get(x);if(!A||!le(x))return;let j=o(x),G=o(A);for(let q=0;q<j.length&&q<G.length;q++)m.has(j[q])||Ot(j[q],G[q])}function re(x,A){let j=O=>le(O)&&!et(O)?r(O).sig+""+r(O).hint:null,G=gr(x,j),q=gr(A,j),X=new Map;for(let O of A){let C=j(O);C!=null&&q.get(C)===1&&X.set(C,O)}for(let O of x){if(m.has(O))continue;let C=j(O);if(C==null||G.get(C)!==1)continue;let Z=X.get(C);Z&&!g.has(Z)&&B(O,Z)&&se(O,Z)}}function oe(x,A,j,G){let q=new Map;for(let O of A){if(!le(O)||g.has(O)||et(O))continue;let C=r(O).sig;q.has(C)||q.set(C,[]),q.get(C).push({el:O,index:xe.get(O)})}let X=[];for(let O of x){if(m.has(O)||!le(O)||et(O))continue;let C=q.get(r(O).sig);if(!C||!C.length)continue;let Z=Ee.get(O),ye=C.filter(Re=>!g.has(Re.el)).map(Re=>({c:Re,d:Math.abs(Re.index-Z)}));ye.sort((Re,k)=>Re.d-k.d),ye.length>tl&&(ye=ye.slice(0,tl));for(let{c:Re,d:k}of ye){if(!B(O,Re.el))continue;let N=l(O,Re.el);N&&N.coef>=.5&&X.push({b:O,s:Re.el,coef:N.coef,share:N.share,d:k,bi:Z})}}if(X.sort((O,C)=>C.coef-O.coef||C.share-O.share||O.d-C.d||O.bi-C.bi),p&&X.length>1){let O=new Map;for(let C of X){let Z=O.get(C.b);Z?Z.coef===C.coef&&(Z.share===C.share?Z.strict++:Z.loose++):O.set(C.b,{coef:C.coef,share:C.share,strict:0,loose:0})}for(let[C,Z]of O)b.has(C)||!(Z.strict||Z.loose)||(b.add(C),Z.strict?p.similarTiesStrict++:p.similarTiesLoose++)}for(let O of X)!m.has(O.b)&&!g.has(O.s)&&se(O.b,O.s)}function de(x,A){return le(x)!==le(A)?!1:le(x)?x.tagName!==A.tagName||!B(x,A)?!1:et(x)||r(x).hint===""||r(A).hint===""?!0:i(x,A):x.kind===A.kind}function ie(x,A){let j=(q,X)=>{let O=X===null?-1:q===A?xe.get(X):Ee.get(X),C=q[O+1];return C&&!le(C)?C:null},G=null;for(let q of x){if(le(q)){G=q;continue}if(m.has(q))continue;let X=G===null?null:m.get(G);if(G!==null&&!X)continue;let O=j(A,X);O&&!g.has(O)&&O.kind===q.kind&&se(q,O)}}function he(x,A){ie(x,A);let j=w(x,A),G=(X,O)=>le(X)&&r(X).hint!==""&&r(O).hint===""&&!!O.querySelector("br")&&!j(X,O),q=0;for(let X of x){if(m.has(X)){let C=xe.get(m.get(X));C!==void 0&&C>=q&&(q=C+1);continue}let O=0;for(let C=q;C<A.length&&O<pu;C++){let Z=A[C];if(!g.has(Z)&&(O++,de(X,Z)&&!yt(X,Z)&&!G(X,Z))){se(X,Z),le(X)&&(r(X).hint===""||r(Z).hint==="")&&y.add(X),q=C+1;break}}}E(x,A)}function w(x,A){let j=(G,q,X)=>{for(let O=q-1;O>=0;O--)if(le(G[O])&&X(G[O]))return G[O];return null};return(G,q)=>{let X=Ee.get(G),O=xe.get(q);if(X===O)return!0;let C=j(x,X,ye=>m.has(ye)),Z=j(A,O,ye=>g.has(ye));return C?m.get(C)===Z:!Z}}function E(x,A){let j=x.filter(C=>le(C)&&!m.has(C)),G=A.filter(C=>le(C)&&!g.has(C));if(!j.length||!G.length)return;let q=gr(j,C=>C.tagName),X=gr(G,C=>C.tagName),O=w(x,A);for(let C of j){let Z=C.tagName;if(q.get(Z)!==1||X.get(Z)!==1)continue;let ye=G.find(Re=>Re.tagName===Z);ye&&!g.has(ye)&&O(C,ye)&&B(C,ye)&&!yt(C,ye)&&(u(C,ye)?ht(C,ye):(se(C,ye),y.add(C)))}}function P(){let x=new Map;for(let C of y)if(le(C)&&le(m.get(C))){let Z=r(C).hash;x.has(Z)||x.set(Z,[]),x.get(Z).push(C)}if(x.size)for(let C of ae){if(g.has(C)||!le(C)||it(C))continue;let Z=x.get(r(C).hash),ye=Z&&Z.find(Re=>y.has(Re)&&!yt(Re,C)&&B(Re,C)&&u(Re,C));ye&&(rt(ye),ht(ye,C),He(ye,C),Y.add(ye))}let A=new Map,j=new Map,G=new Map;for(let C of y){let Z=m.get(C);le(C)&&le(Z)&&G.set(Z,C)}let q=(C,Z)=>{if(!g.has(C))return!it(C);let ye=G.get(C);return ye===g.get(C)&&ye!==Z&&!ye.contains(Z)},X=C=>{if(g.has(C)){let Z=G.get(C);G.delete(C),rt(Z)}};for(let C of[...ae,...G.keys()]){if(g.has(C)&&!G.has(C))continue;let Z=r(C).hash;if(A.has(Z)||A.set(Z,[]),A.get(Z).push(C),et(C))continue;let ye=r(C).sig;j.has(ye)||j.set(ye,[]),j.get(ye).push(C)}let O=new Set;for(let C of y){let Z=m.get(C);!le(C)||!le(Z)||et(C)||r(C).hint===""||r(Z).hint===""||i(C,Z)||O.add(C)}for(let C of[...z,...O]){let Z=m.get(C);if(Z?!(y.has(C)&&O.has(C)):Ve(C))continue;let ye=U=>{Z&&rt(C),X(U)},Re=A.get(r(C).hash);if(Re){let U=Re.find(W=>W!==Z&&q(W,C)&&!yt(C,W)&&u(C,W));if(U){ye(U),ht(C,U),He(C,U),Y.add(C);continue}}if(et(C)||L<=0)continue;let k=j.get(r(C).sig);if(!k)continue;let N=null,D=0;for(let U of k)if(!(U===Z||!q(U,C)||!B(C,U)||yt(C,U))&&(L--<=0||i(C,U)&&(D++,N=U,D>1)))break;D>1&&v&&v.add(C),D===1&&(ye(N),se(C,N),He(C,N),Y.add(C),Q.push([C,N]))}}}function gr(e,t){let n=new Map;for(let r of e){let o=t(r);o!=null&&n.set(o,(n.get(o)||0)+1)}return n}var gu={diff:0},nl=typeof Intl<"u"&&typeof Intl.Segmenter=="function"?new Intl.Segmenter(void 0,{granularity:"word"}):null,bu=/[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Thai}\p{Script=Lao}\p{Script=Khmer}\p{Script=Myanmar}]/u,ku=/[\p{L}\p{M}\p{N}_'’]+|\s+|[\s\S]/gu,yu=/\P{M}\p{M}*/gu;function Ps(e){if(e==="")return[];if(nl){let n=[];for(let r of nl.segment(e))n.push(r.segment);return n}let t=[];for(let n of e.match(ku))if(bu.test(n))for(let r of n.match(yu))t.push(r);else t.push(n);return t}var xu=/^[ ]+$/,vu=e=>xu.test(e)?" ".repeat(e.length):e,zn=e=>typeof e.k=="string"&&/^\s+$/.test(e.k),Et="",Ms=e=>e.every(t=>zn(t)||t.k===Et),wu=/^[\x00-\x7f\u00A0]*$/,Au=/[A-Za-z0-9_']+|[ \u00A0]+|\s|./g;function Su(e){return e===""?[]:e.match(Au)}function rr(e,t=!1){return(t?Su(e):Ps(e)).map(n=>({k:vu(n),raw:n,len:n.length}))}var Oo=(...e)=>e.every(t=>wu.test(t));function Rs(e,t,n){let r=e.length,o=t.length,s=Math.min(r+o,n),i=s+1,l=new Int32Array(2*s+3),a=[],u=r===0&&o===0;for(let p=0;p<=s&&!u;p++){a.push(l.slice(i-p,i+p+1));for(let b=-p;b<=p;b+=2){let v;b===-p||b!==p&&l[i+b-1]<l[i+b+1]?v=l[i+b+1]:v=l[i+b-1]+1;let m=v-b,g=v;for(;v<r&&m<o&&e[v].k===t[m].k;)v++,m++;if(gu.diff+=1+v-g,l[i+b]=v,v>=r&&m>=o){u=!0;break}}}if(!u)return null;let d=[],h=r,f=o;for(let p=a.length-1;p>0;p--){let b=a[p],v=h-f,m=v+p,g=v===-p||v!==p&&b[m-1]<b[m+1]?v+1:v-1,y=b[g+p],I=y-g;for(;h>y&&f>I;)d.push([0,h-1,f-1]),h--,f--;h===y?(d.push([1,h,f-1]),f--):(d.push([-1,h-1,f]),h--)}for(;h>0&&f>0;)d.push([0,h-1,f-1]),h--,f--;return d.reverse(),d}function Tu(e,t,n){let r=h=>h.k===Et;if(!e.some(r)&&!t.some(r))return Rs(e,t,n);let o=[],s=[];for(let h=0;h<e.length;h++)r(e[h])||o.push(h);for(let h=0;h<t.length;h++)r(t[h])||s.push(h);let i=Rs(o.map(h=>e[h]),s.map(h=>t[h]),n);if(!i)return null;let l=[],a=0,u=0,d=(h,f)=>{for(;a<h&&u<f&&e[a].k===t[u].k;)l.push([0,a++,u++]);let p=Rs(e.slice(a,h),t.slice(u,f),n);if(!p)return!1;for(let[b,v,m]of p)l.push([b,v+a,m+u]);return a=h,u=f,!0};for(let[h,f,p]of i)if(h===0){if(!d(o[f],s[p]))return null;l.push([0,a,u]),a++,u++}return d(e.length,t.length)?l:null}function br(e,t,n=4e3){let r=[],o=0;for(;o<e.length&&o<t.length&&e[o].k===t[o].k;)e[o].raw!==t[o].raw&&r.push({bi:o,tok:t[o]}),o++;let s=0;for(;s<e.length-o&&s<t.length-o&&e[e.length-1-s].k===t[t.length-1-s].k;)e[e.length-1-s].raw!==t[t.length-1-s].raw&&r.push({bi:e.length-1-s,tok:t[t.length-1-s]}),s++;let i=e.slice(o,e.length-s),l=t.slice(o,t.length-s),a=Mu(i,l)?null:Tu(i,l,n);if(!a){let g=i.length||l.length?[{bs:o,be:o+i.length,toks:l}]:[];return{hunks:g,cosmetic:r,coarse:!0,parts:g.map(y=>({...y,gap:[],group:0})),cosmeticEq:r}}let u=[],d=(g,y)=>{i[g].raw!==l[y].raw&&r.push({bi:o+g,tok:l[y]})},h=null,f=[],p=0,b=0,v=()=>{h&&u.push(h),h=null;for(let[g,y]of f)d(g,y);f=[],p++};for(let[g,y,I]of a){if(g===0){h&&zn(i[y])&&!i[y].k.includes(`
|
|
2
|
+
`)?f.push([y,I]):(v(),d(y,I)),b=y+1;continue}(!h||f.length)&&(h&&u.push(h),h={bs:o+b,be:o+b,toks:[],gap:f.map(([Y,$])=>({bi:o+Y,tok:l[$]})),group:p},f=[]),g===-1?(h.be=o+b+1,b=y+1):h.toks.push(l[I])}v(),Eu(u,e);let m=Is(u);return{hunks:m.hunks,cosmetic:r.concat(m.cosmetic),parts:u,cosmeticEq:r}}function Eu(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r.gap.length)continue;let o=n+1<e.length?e[n+1].bs:1/0;if(r.toks.length){if(r.bs===r.be)for(;r.bs+1<o&&r.bs<t.length&&r.toks[0].k===Et&&t[r.bs].k===Et;)r.toks=[...r.toks.slice(1),r.toks[0]],r.bs++,r.be++}else for(;r.be+1<o&&r.be<t.length&&t[r.bs].k===Et&&t[r.be].k===Et;)r.bs++,r.be++}}function Is(e,t=()=>!1){let n=[],r=[],o=null,s=-1;for(let i of e){let l=t(i);if(o&&!o.alone&&!l&&i.group===s){o.be=i.be;for(let a of i.gap)o.toks.push(a.tok);for(let a of i.toks)o.toks.push(a);continue}o&&n.push({bs:o.bs,be:o.be,toks:o.toks});for(let a of i.gap)r.push(a);o={bs:i.bs,be:i.be,toks:i.toks.slice(),alone:l},s=i.group}return o&&n.push({bs:o.bs,be:o.be,toks:o.toks}),{hunks:n,cosmetic:r}}var _u=(e,t)=>e.bs===t.bs&&e.be===t.be&&Fs(e.toks,t.toks);function Ds(e,t,n){let r=d=>h=>d.some(f=>_u(h,f)),o=Is(e.parts,r(t.parts)),s=Is(t.parts,r(e.parts)),i=e.cosmeticEq.concat(o.cosmetic),l=t.cosmeticEq.concat(s.cosmetic),[a,u]=n?Ou(o.hunks,s.hunks,n,i,l):[o.hunks,s.hunks];return{lh:a,rh:u,cosL:i,cosR:l}}function Ou(e,t,n,r,o){let s=(b,v)=>b.k===v.k&&b.raw===v.raw,i=[{list:e.map(b=>({...b})),resp:new Set(r.map(b=>b.bi)),raw:new Map(r.map(b=>[b.bi,b.tok]))},{list:t.map(b=>({...b})),resp:new Set(o.map(b=>b.bi)),raw:new Map(o.map(b=>[b.bi,b.tok]))}],l=b=>b.bs===b.be,a=(b,v,m,g)=>{let y=b.list[v];if(!l(y))return g(y)===m?y.toks:null;let I=v?b.list[v-1].be:0,Y=v+1<b.list.length?b.list[v+1].bs:n.length;if(m<I||m>Y)return null;let $=y.toks,H=y.bs;for(;H>m;){let z=$[$.length-1];if(!s(z,n[H-1])||b.resp.has(H-1))return null;$=[z,...$.slice(0,-1)],H--}for(;H<m;){if(!s($[0],n[H])||b.resp.has(H))return null;$=[...$.slice(1),$[0]],H++}return $},u=(b,v,m,g,y,I)=>{let Y=b.list[v],$=y?m.slice(m.length-g):m.slice(0,g),H=y?m.slice(0,m.length-g):m.slice(g),z={bs:I,be:I,toks:$};if(l(Y)){if(!H.length){b.list[v]=z;return}let me={bs:I,be:I,toks:H};y&&(me.lead=!0),b.list.splice(v,1,...y?[me,z]:[z,me]);return}let ae={bs:Y.bs,be:Y.be,toks:H};b.list.splice(v,1,...y?[ae,z]:[z,ae])},d=(b,v,m,g,y)=>{let I=b.list[v],Y=y?m.slice(m.length-g):m.slice(0,g),$=y?m.slice(0,m.length-g):m.slice(g),H={bs:I.bs,be:I.be,toks:Y};if(!$.length){b.list[v]=H;return}let z=y?{bs:I.bs,be:I.bs,toks:$,lead:!0}:{bs:I.be,be:I.be,toks:$};b.list.splice(v,1,...y?[z,H]:[H,z])},h=(b,v,m,g)=>{let y=b.list[v],I=m.list[g],Y=y.be,$=I.bs;if(Y>=$||v+1<b.list.length&&b.list[v+1].bs<=I.be||g>0&&m.list[g-1].be>=y.bs)return!1;for(let ve=Y;ve<$;ve++)if(!zn(n[ve])||n[ve].k.includes(`
|
|
3
|
+
`))return!1;let H=ve=>n.slice(Y,$).map((Me,He)=>ve.raw.get(Y+He)||Me),z=[...y.toks,...H(b)],ae=[...H(m),...I.toks],me=(ve,Me,He)=>Me>=0&&Me+He.length<=ve.length&&He.every((Ve,it)=>ve[Me+it].k===Ve.k),Q=(ve,Me,He)=>Ms(ve)&&n.slice(Me,He).some(Ve=>!zn(Ve)),L=ve=>ve.some(Me=>!zn(Me)),Ee,xe,se,V;if(l(y)&&L(y.toks)&&me(ae,0,y.toks)){let ve=ae.slice(y.toks.length);Q(ve,Y,I.be)||(Ee=Y,xe=y.toks,se=ae.slice(0,y.toks.length),V=[null,{bs:Y,be:I.be,toks:ve}])}if(Ee===void 0&&l(I)&&L(I.toks)){let ve=z.length-I.toks.length,Me=z.slice(0,ve);me(z,ve,I.toks)&&!Q(Me,y.bs,$)&&(Ee=$,xe=z.slice(ve),se=I.toks,V=[{bs:y.bs,be:$,toks:Me},null])}if(Ee===void 0)return!1;let Se=ve=>ve&&(ve.bs<ve.be||ve.toks.length);return b.list.splice(v,1,...[V[0],{bs:Ee,be:Ee,toks:xe}].filter(Se)),m.list.splice(g,1,...[{bs:Ee,be:Ee,toks:se},V[1]].filter(Se)),!0},f=i[0],p=i[1];for(let b=0;b<64;b++){let v=!1;e:for(let m=0;m<f.list.length;m++)for(let g=0;g<p.list.length;g++){let y=f.list[m],I=p.list[g];if(!(y.bs===I.bs&&y.be===I.be&&Fs(y.toks,I.toks))){for(let Y of[!0,!1]){let $=z=>Y?z.be:z.bs,H=l(y)?[$(I),y.bs]:[$(y)];for(let z of H){let ae=a(f,m,z,$),me=ae&&a(p,g,z,$);if(!me)continue;let Q=(V,Se)=>Y?V[V.length-1-Se]:V[Se],L=0;for(;L<ae.length&&L<me.length&&Q(ae,L).k===Q(me,L).k;)L++;if(!L)continue;let Ee=Y?ae.slice(0,ae.length-L):ae.slice(L),xe=Y?me.slice(0,me.length-L):me.slice(L);if(!(L<ae.length&&L<me.length&&!Ms(Ee)&&!Ms(xe)&&(l(y)&&l(I)||y.bs===I.bs&&y.be===I.be)||!(Y?ae.slice(ae.length-L):ae.slice(0,L)).some(V=>!zn(V)))){if(L===ae.length&&L===me.length&&l(y)&&l(I)){if(y.bs===z&&I.bs===z)continue;f.list[m]={bs:z,be:z,toks:ae},p.list[g]={bs:z,be:z,toks:me}}else!l(y)&&y.bs===I.bs&&y.be===I.be?(d(f,m,ae,L,Y),d(p,g,me,L,Y)):(u(f,m,ae,L,Y,z),u(p,g,me,L,Y,z));v=!0;break e}}}if(h(f,m,p,g)||h(p,g,f,m)){v=!0;break e}}}if(!v)break}return[f.list,p.list]}var Nu=48,Cu=.3;function Mu(e,t){let n=e.filter(i=>!zn(i)),r=t.filter(i=>!zn(i));if(Math.min(n.length,r.length)<Nu)return!1;let o=new Map;for(let i of n)o.set(i.k,(o.get(i.k)||0)+1);let s=0;for(let i of r){let l=o.get(i.k);l>0&&(s++,o.set(i.k,l-1))}return s/Math.min(n.length,r.length)<Cu}var Ru=(e,t)=>{let n=new Set;for(let r of e.toks)typeof r.k!="string"&&n.add(r.k.el);for(let r=e.bs;r<e.be;r++)typeof t[r].k!="string"&&n.add(t[r].k.el);return n},Fs=(e,t)=>e.length===t.length&&e.every((n,r)=>n.k===t[r].k);function rl(e,t,n,r="remote"){let o=br(e,t),s=br(e,n),{lh:i,rh:l,cosL:a,cosR:u}=Ds(o,s,e),d=_=>_.bs===_.be,h=_=>_.toks.some(B=>typeof B.k=="string"),f=_=>d(_)&&!h(_),p=(_,B)=>B.bs<_.be&&_.bs<B.be,b=(_,B)=>!p(_,B)&&B.bs<=_.be&&_.bs<=B.be&&(d(_)&&h(_)||d(B)&&h(B))&&!(d(_)&&d(B)),v=(_,B)=>_.bs===B.bs&&_.be===B.be&&Fs(_.toks,B.toks),m=[],g=new Set;for(let _ of i){let B=l.find(fe=>!g.has(fe)&&v(_,fe));B?(g.add(B),m.push({bs:_.bs,be:_.be,side:"both",l:_,r:B,toks:_.toks})):m.push({bs:_.bs,be:_.be,side:"L",l:_,toks:_.toks,lead:!!_.lead})}for(let _ of l)g.has(_)||m.push({bs:_.bs,be:_.be,side:"R",r:_,toks:_.toks,lead:!!_.lead});m.sort((_,B)=>_.bs-B.bs||_.be-B.be||B.lead-_.lead);let y=0,I=0;for(let _ of m)_.side==="both"&&(y+=_.toks.length-(_.be-_.bs));let Y=m.map((_,B)=>B),$=_=>Y[_]===_?_:Y[_]=$(Y[_]),H=(_,B)=>(_=$(_),B=$(B),_===B?!1:(Y[_]=B,!0)),z=m.map(_=>Ru({bs:_.bs,be:_.be,toks:_.toks},e)),ae={L:new Map,R:new Map};m.forEach((_,B)=>{let fe=_.side==="both"?["L","R"]:[_.side];for(let Ae of fe)for(let pe of z[B])ae[Ae].has(pe)||ae[Ae].set(pe,[]),ae[Ae].get(pe).push(B)});for(let _ of[ae.L,ae.R])for(let B of _.values())for(let fe=1;fe<B.length;fe++)H(B[0],B[fe]);for(let _=0;_<m.length;_++)for(let B=_+1;B<m.length;B++){let fe=m[_],Ae=m[B];fe.side===Ae.side&&fe.side!=="both"||fe.bs>Ae.be||(p(fe,Ae)||b(fe,Ae)?H(_,B):fe.bs===Ae.bs&&d(fe)&&d(Ae)&&I++)}let me=(_,B)=>{let fe=_==="L"?i:l;for(let Ae of fe)if(Ae.toks.some(pe=>pe.kind==="close"&&pe.k.el===B.el))return Ae.bs;for(let Ae=0;Ae<e.length;Ae++)if(e[Ae].kind==="close"&&e[Ae].k.el===B.el)return Ae;return-1};m.forEach((_,B)=>{if(!(!f(_)||_.side==="both"))for(let fe of _.toks){if(fe.kind!=="open")continue;let Ae=me(_.side,fe.k);if(Ae<=_.bs)continue;let pe=new Uint8Array(Ae-_.bs),Qe=[];if(m.forEach((qe,rt)=>{if(!(qe.side===_.side||d(qe))&&qe.bs<Ae&&qe.be>_.bs){Qe.push(rt);for(let lt=Math.max(qe.bs,_.bs);lt<Math.min(qe.be,Ae);lt++)pe[lt-_.bs]=1}}),Qe.length&&pe.every(qe=>qe===1))for(let qe of Qe)H(B,qe)}});let Q=!0;for(;Q;){Q=!1;let _=new Map;m.forEach((B,fe)=>{let Ae=$(fe),pe=_.get(Ae)||{bs:B.bs,be:B.be,L:!1,R:!1};pe.bs=Math.min(pe.bs,B.bs),pe.be=Math.max(pe.be,B.be),B.side!=="R"&&(pe.L=!0),B.side!=="L"&&(pe.R=!0),_.set(Ae,pe)}),m.forEach((B,fe)=>{for(let[Ae,pe]of _){if($(fe)===$(Ae)||!(pe.L&&pe.R))continue;let Qe=B.bs<pe.be&&B.be>pe.bs,qe=d(B)&&h(B)&&(B.bs===pe.be||B.bs===pe.bs);(Qe||qe)&&H(fe,Ae)&&(Q=!0)}})}let L=new Map;m.forEach((_,B)=>{let fe=$(B);L.has(fe)||L.set(fe,[]),L.get(fe).push(_)});let Ee=[];for(let _ of L.values()){let B=_.some(Ae=>Ae.side==="L"),fe=_.some(Ae=>Ae.side==="R");if(B&&fe){let Ae=Math.min(..._.map(rt=>rt.bs)),pe=Math.max(..._.map(rt=>rt.be)),Qe=_.filter(rt=>rt.side!=="R").map(rt=>rt.l).sort((rt,lt)=>rt.bs-lt.bs),qe=_.filter(rt=>rt.side!=="L").map(rt=>rt.r).sort((rt,lt)=>rt.bs-lt.bs);Ee.push({bs:Ae,be:pe,kind:"conflict",localHunks:Qe,remoteHunks:qe})}else for(let Ae of _)Ee.push({bs:Ae.bs,be:Ae.be,kind:Ae.side,u:Ae})}let xe=(_,B)=>{let fe=_==="L"?i:l;for(let Ae of fe)if(Ae.toks.some(pe=>pe.kind==="close"&&pe.k.el===B.el))return Ae.bs+.5;for(let Ae=0;Ae<e.length;Ae++)if(e[Ae].kind==="close"&&e[Ae].k.el===B.el)return Ae;return 1/0},se=(_,B)=>{let fe=_==="L"?i:l;for(let Ae of fe)if(Ae.toks.some(pe=>pe.kind==="open"&&pe.k.el===B.el))return Ae.bs-.5;for(let Ae=0;Ae<e.length;Ae++)if(e[Ae].kind==="open"&&e[Ae].k.el===B.el)return Ae;return-1/0},V=_=>_.kind==="R"?"R":"L",Se=_=>_.kind==="R"?1:0;Ee.sort((_,B)=>{if(_.bs!==B.bs)return _.bs-B.bs;let fe=_.bs===_.be,Ae=B.bs===B.be;if(fe!==Ae)return fe?-1:1;if(fe&&Ae&&_.kind!=="conflict"&&B.kind!=="conflict"){let Qe=_.u.toks,qe=B.u.toks,rt=ee=>ee.length&&ee.every(ce=>ce.kind==="open"),lt=ee=>ee.length&&ee.every(ce=>ce.kind==="close");if(rt(Qe)&&rt(qe)){let ee=Math.max(...Qe.map(ge=>xe(V(_),ge.k))),ce=Math.max(...qe.map(ge=>xe(V(B),ge.k)));if(ee!==ce)return ce-ee}if(lt(Qe)&<(qe)){let ee=Math.min(...Qe.map(ge=>se(V(_),ge.k))),ce=Math.min(...qe.map(ge=>se(V(B),ge.k)));return ee!==ce?ce-ee:Se(B)-Se(_)}}let pe=Qe=>Qe.u&&Qe.u.lead?1:0;return pe(B)-pe(_)||Se(_)-Se(B)||_.be-B.be});let ve=[],Me=[],He=0,Ve=_=>{_>He&&(ve.push({bs:He,be:_,toks:e.slice(He,_),source:"base"}),He=_)};for(let _ of Ee){if(Ve(_.bs),_.kind==="conflict"){let B=js(e,_.localHunks,_.bs,_.be),fe=js(e,_.remoteHunks,_.bs,_.be),Ae=r==="local"?B:r==="both"?B.concat(fe):fe,pe=(rt,lt)=>{let ee=0;for(let ce of rt)ce.be<=_.bs&&!lt.includes(ce)&&(ee+=ce.toks.length-(ce.be-ce.bs));return ee},Qe=_.bs+pe(i,_.localHunks),qe=_.bs+pe(l,_.remoteHunks);Me.push({bs:_.bs,be:_.be,ls:Qe,le:Qe+B.length,rs:qe,re:qe+fe.length,ms:0,me:0,base:e.slice(_.bs,_.be),local:B,remote:fe,resolved:Ae}),ve.push({bs:_.bs,be:_.be,toks:Ae,source:"conflict",localHunks:_.localHunks,localToks:B,keepsLocal:r!=="remote"})}else ve.push({bs:_.bs,be:_.be,toks:_.u.toks,source:_.kind==="R"?"remote":"local",localHunks:_.kind==="R"?[]:[_.u.l]});He=Math.max(He,_.be)}Ve(e.length);let it=0,le=0;for(let _ of ve)_.source==="conflict"&&(Me[le].ms=it,Me[le].me=it+_.toks.length,le++),it+=_.toks.length;let yt=new Map(a.map(_=>[_.bi,_.tok])),et=new Map(u.map(_=>[_.bi,_.tok])),Oe=[];for(let _ of ve){_.source==="base"&&(_.toks=_.toks.map((B,fe)=>{let Ae=_.bs+fe,pe=yt.get(Ae),Qe=et.get(Ae),qe=pe&&Qe?r==="remote"?Qe:pe:pe||Qe||B;return qe===B?B:{...qe,cosmetic:!0}}));for(let B of _.toks)Oe.push({...B,src:_.source})}return{tokens:Oe,segments:ve,conflicts:Me,localHunks:i,remoteHunks:l,collapsedDelta:y,samePoint:I,mapLocalOffset:Lu(e,i,ve)}}function js(e,t,n,r){let o=[],s=n;for(let i of t)o=o.concat(e.slice(s,i.bs),i.toks),s=i.be;return o.concat(e.slice(s,r))}var Ls=e=>e.reduce((t,n)=>t+n.len,0);function Lu(e,t,n){let r=new Int32Array(e.length+1);for(let i=0;i<e.length;i++)r[i+1]=r[i]+e[i].len;let o=t.map(i=>({bs:r[i.bs],be:r[i.be],text:i.toks.map(l=>l.raw).join(""),ref:i})),s=n.map(i=>({bs:r[i.bs],be:r[i.be],len:Ls(i.toks),source:i.source,localHunks:i.localHunks||[],localLen:i.localToks?Ls(i.localToks):0,keepsLocal:i.keepsLocal,ref:i}));return i=>{let l=null,a=null,u=0,d=0,h=0;for(let p of o){let b=p.bs-h;if(i<=d+b){l=h+(i-d);break}if(d+=b,h=p.bs,i<=d+p.text.length){a=p,u=i-d,l=p.bs;break}d+=p.text.length,h=p.be}l===null&&(l=h+(i-d));let f=0;for(let p of s){if(!a&&l<=p.bs)return f;if(!(a?p.localHunks.includes(a.ref):l<p.be)){f+=p.len;continue}if(p.source==="base")return f+(l-p.bs);if(p.source==="remote")return f+p.len;if(p.source==="local")return f+Math.min(u,p.len);if(!p.keepsLocal||!a)return f+p.len;let v=p.localHunks.indexOf(a.ref),m=Ls(js(e,p.localHunks.slice(0,v),p.ref.bs,a.ref.bs));return f+Math.min(m+u,p.localLen)}return f}}function Kr(e,t,n,r="remote"){if(t===n||n===e)return{text:t,conflicts:[],mapLocalOffset:g=>Math.min(g,t.length),granularity:"word"};let o=Oo(e,t,n),s=rr(e,o),i=rr(t,o),l=rr(n,o),a=s.length<=2e4&&i.length<=2e4&&l.length<=2e4?rl(s,i,l,r):null,u="word",d=s;if(!a){let g=y=>y.split(/(?<=\n)/).map(I=>({k:I,raw:I,len:I.length}));d=g(e),a=rl(d,g(t),g(n),r),u="line"}let h=g=>g.map(y=>y.raw).join(""),f=g=>{let y=[0];for(let I of g)y.push(y[y.length-1]+I.len);return y},p=f(d),b=null,v=null,m=null;if(a.conflicts.length){let g=y=>y.split(/(?<=\n)/).map(I=>({k:I,raw:I,len:I.length}));b=f(u==="line"?g(t):i),v=f(u==="line"?g(n):l),m=f(a.tokens)}return{text:h(a.tokens),conflicts:a.conflicts.map(g=>({bs:p[g.bs],be:p[g.be],ls:b[g.ls],le:b[g.le],rs:v[g.rs],re:v[g.re],ms:m[g.ms],me:m[g.me],base:h(g.base),local:h(g.local),remote:h(g.remote),resolved:h(g.resolved)})),mapLocalOffset:a.mapLocalOffset,granularity:u}}function Gr(e,t,n=4e3){if(e===t)return[];let r=Oo(e,t),o=rr(e,r),s=rr(t,r),i=br(o,s,n),l=[0];for(let a of o)l.push(l[l.length-1]+a.len);return i.hunks.map(a=>({bs:l[a.bs],be:l[a.be],text:a.toks.map(u=>u.raw).join("")}))}var xr="\uFFFC";var Iu={caret:0},Mn=new Set("A ABBR B BDI BDO CITE CODE DATA DEL DFN EM FONT I INS KBD MARK Q S SAMP SMALL SPAN STRIKE STRONG SUB SUP TIME TT U VAR".split(" ")),cl=new Set(["BR","WBR","IMG"]),Hs=new Set("ADDRESS ARTICLE ASIDE AUDIO BLOCKQUOTE BODY CANVAS CAPTION CENTER COL COLGROUP DD DETAILS DIALOG DIR DIV DL DT FIELDSET FIGCAPTION FIGURE FOOTER FORM FRAME FRAMESET H1 H2 H3 H4 H5 H6 HEAD HEADER HGROUP HR HTML IFRAME LEGEND LI MAIN MATH MENU NAV NOSCRIPT OBJECT OL OPTGROUP OPTION P PRE SCRIPT SECTION SELECT STYLE SUMMARY SVG TABLE TBODY TD TEMPLATE TEXTAREA TFOOT TH THEAD TITLE TR UL VIDEO".split(" "));function or(e,t={}){if(e.nodeType===3)return!0;if(e.nodeType!==1)return!1;if(t.ignored&&t.ignored(e)||cl.has(e.tagName))return!0;if(!Mn.has(e.tagName))return!Hs.has(e.tagName);if(t.remoteWins&&t.remoteWins(e))return!1;let n=t.inlineCache&&t.inlineCache.get(e);if(n!==void 0)return n;let r=!0;for(let o of e.childNodes)if(!or(o,t)){r=!1;break}return t.inlineCache&&t.inlineCache.set(e,r),r}function ju(e){return!e.firstChild||e.textContent===""&&!e.querySelector("br,img,wbr")}function In(e,t={}){let n={text:"",marks:[],atoms:[],nodes:[],stackAt:[],pins:[],placeholder:null,via:null},r=(o,s)=>{for(let i of o){if(i.nodeType===3){let h=i.nodeValue;if(!h)continue;n.nodes.push({node:i,s:n.text.length,e:n.text.length+h.length}),n.text+=h;for(let f=0;f<h.length;f++)n.stackAt.push(s);continue}if(i.nodeType!==1)continue;if(t.ignored&&t.ignored(i)){n.pins.push({el:i,i:n.text.length});continue}if(t.skip&&t.skip.has(i))continue;let l=t.via&&t.via(i)||i;l!==i&&(n.via||(n.via=new Map)).set(l,i);let a=i.tagName;if(t.blocks&&t.blocks.has(i)){n.text.length&&n.text[n.text.length-1]!==Et&&(n.stackAt.push(s),n.text+=Et);let h={el:i,tag:a,from:n.text.length,to:-1,depth:s.length,block:!0};n.marks.push(h);let f=s.concat([h]);r(l.childNodes,f),n.stackAt.push(f),n.text+=Et,h.to=n.text.length;continue}let u=Mn.has(a)&&ju(l);if(cl.has(a)||!Mn.has(a)||t.remoteWins&&t.remoteWins(i)||t.atomize&&t.atomize(i)||u){n.atoms.push({i:n.text.length,el:i,key:u?a+":empty":a,stack:s}),n.stackAt.push(s),n.text+=xr;continue}let d={el:i,tag:a,from:n.text.length,to:-1,depth:s.length};n.marks.push(d),r(l.childNodes,s.concat([d])),d.to=n.text.length}};if(r(e,[]),n.atoms.length===1&&n.atoms[0].el.tagName==="BR"&&n.marks.length===0&&No(n).trim()===""){let o=n.atoms[0];n.placeholder=o.el,n.text=n.text.slice(0,o.i)+n.text.slice(o.i+1),n.stackAt.splice(o.i,1);for(let s of n.nodes)s.s>o.i&&(s.s--,s.e--);n.atoms=[]}return n.atomAt=new Map(n.atoms.map(o=>[o.i,o])),n}function Pu(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/ /g," ")}function Du(e){let t="<"+e.tagName.toLowerCase();for(let n of e.attributes)t+=` ${n.name}="${n.value.replace(/"/g,""")}"`;return t+">"}function yr(e,t,n){let r="",o=[];for(let s=t;s<n;s++){let i=e.stackAt[s],l=0;for(;l<o.length&&l<i.length&&o[l]===i[l];)l++;for(;o.length>l;)r+=`</${o.pop().tag.toLowerCase()}>`;for(;o.length<i.length;){let u=i[o.length];r+=Du(u.el),o.push(u)}let a=e.atomAt.get(s);r+=a?a.el.outerHTML:e.text[s]===Et?"":Pu(e.text[s])}for(;o.length;)r+=`</${o.pop().tag.toLowerCase()}>`;return r}function Fu(e,t){let n=[...e.el.attributes].filter(r=>!t(e.el,r.name)).map(r=>r.name+"="+r.value).sort().join("");return e.tag+"|"+n}function ul(e,t){let n=[...e.attributes].filter(r=>!t(e,r.name)).map(r=>r.name+"="+r.value).sort().join("");return e.tagName+"|"+n+"|"+e.innerHTML}function ol(e,t=()=>!1){let n=new Map,r=s=>{let i=n.get(s);return i===void 0&&(i="{"+s.map(l=>Fu(l,t)).sort().join(",")+"}",n.set(s,i)),i},o="";for(let s=0;s<e.text.length;s++){let i=e.atomAt.get(s);o+=(i?"["+ul(i.el,t)+"]":e.text[s])+r(e.stackAt[s])}return e.text.length===0&&e.placeholder&&(o+="[br]"),o}function kr(e,t,n,r=o=>o.key){let o=[],s=e.text,i=0,l=a=>{if(a<=i)return;let u=s.slice(i,a);if(n)for(let d of u.split(/(?<=\n)/))o.push({k:d,raw:d,len:d.length});else for(let d of rr(u,t))o.push(d)};for(let a of e.atoms)l(a.i),o.push({k:"\0"+r(a),raw:xr,len:1,atom:!0}),i=a.i+1;return l(s.length),o}function No(e){if(!e.atoms.length)return e.text;let t="",n=0;for(let r of e.atoms)t+=e.text.slice(n,r.i),n=r.i+1;return t+e.text.slice(n)}var Bs=e=>{let t=new Int32Array(e.length+1);for(let n=0;n<e.length;n++)t[n+1]=t[n]+e[n].len;return t};function sl(e,t,n,r){let o=Bs(t),s=Bs(n),i=[],l=0,a=0;for(let d of r.hunks){a+=d.bs-l;let h=a+d.toks.length;i.push({bs:o[d.bs],be:o[d.be],ss:s[a],se:s[h],text:e.text.slice(s[a],s[h]),toks:d.toks,lead:!!d.lead}),a=h,l=d.be}let u=new Map;for(let d of r.cosmetic)u.set(d.bi,d.tok.raw);return{hunks:i,respell:u}}function il(e,t,n){let r=i=>i===Et||/\s/.test(i),o=i=>i.replace(/[\u001E\s]/g,""),s=[];for(let i of e){let l=t.slice(i.bs,i.be),a=n.slice(i.ss,i.se);if(!l.includes(Et)&&!a.includes(Et)||l.includes(xr)||a.includes(xr)||o(l)!==o(a)){s.push(i);continue}let u=0,d=0;for(;;){let h=u,f=d;for(;h<l.length&&r(l[h]);)h++;for(;f<a.length&&r(a[f]);)f++;let p=u,b=d;for(;p<h&&b<f&&l[p]===a[b];)p++,b++;let v=h,m=f;for(;v>p&&m>b&&l[v-1]===a[m-1];)v--,m--;if(v>p||m>b){let g=a.slice(b,m);s.push({bs:i.bs+p,be:i.bs+v,ss:i.ss+b,se:i.ss+m,text:g,toks:[...g].map(y=>({k:y,raw:y,len:1})),lead:i.lead})}if(h>=l.length)break;u=h+1,d=f+1}}return s}function ll(e,t,n){let r=new Int32Array(t+1).fill(-1),o=new Int32Array(n+1).fill(-1),s=0,i=0,l=a=>{for(;s<a;)r[s]=i,o[i]=s,s++,i++};for(let a of e)l(a.bs),s=a.be,i=a.se;return l(t),r[t]=i,o[i]=t,{bTo:r,toB:o}}function al(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function $s(e){let{out:t,policy:n="remote",L:r,R:o}=e,s=e.provenance||new WeakMap,i=e.textMappers||new WeakMap,l=e.conflicts||[],a=e.decisions||[],u=l.length,d=e.conflict||(c=>l.push(c)),h={textNodes:null,text:"",out:null,atomOut:new Map,breakOut:new Map,node:e.node||null},f=[],p=!!(r&&r.reverse&&r.map&&o&&o.reverse&&o.map),b={base:null,local:null,remote:null};if(p&&e.moveIn){let c=_e=>Ge=>_e.some(Te=>Te===Ge||Te.nodeType===1&&Te.contains(Ge)),S=c(e.local),R=c(e.remote),M=c(e.base),F=new Set,J=_e=>{if(!Mn.has(_e.tagName))return;let Ge=r.map.get(_e),Te=o.map.get(_e);(Ge&&!S(Ge)||Te&&!R(Te))&&F.add(_e);for(let Ie of _e.children)J(Ie)};for(let _e of e.base)_e.nodeType===1&&J(_e);let be=_e=>Ge=>{if(!Mn.has(Ge.tagName))return!1;let Te=_e.reverse.get(Ge);return!!Te&&(F.has(Te)||!M(Te))};F.size&&(b.base=_e=>F.has(_e)),b.local=be(r),b.remote=be(o)}let v={base:new Set,local:new Set,remote:new Set};if(p&&e.moveIn){let c=M=>F=>M.some(J=>J===F||J.nodeType===1&&J.contains(F)),S=c(e.local),R=c(e.remote);for(let M of In(e.base,{...e,atomize:b.base}).atoms){let F=r.map.get(M.el),J=o.map.get(M.el),be=!!F&&!S(F),_e=!!J&&!R(J);!be&&!_e||(v.base.add(M.el),F&&!be&&v.local.add(F),J&&!_e&&v.remote.add(J),S(M.el)&&v.local.add(M.el),R(M.el)&&v.remote.add(M.el))}}let m=In(e.base,{...e,atomize:b.base,skip:v.base}),g=In(e.local,{...e,atomize:b.local,skip:v.local}),y=In(e.remote,{...e,atomize:b.remote,skip:v.remote}),I=new Map(m.atoms.map(c=>[c.el,c])),Y={},$=c=>v[c].size?(Y[c]||(Y[c]=In(e[c],{...e,atomize:b[c]})),Y[c]):null,H=(c,S,R)=>{S.namespaceURI?c.setAttributeNS(S.namespaceURI,S.name,R):c.setAttribute(S.name,R)},z=(c,S,R,M)=>{if(!S&&(!R||!M)){for(let J of(R||M).attributes)H(c,J,J.value);return}let F=new Map;for(let J of[S,R,M])if(J)for(let be of J.attributes)F.set(be.name,be);for(let[J,be]of F){let _e=S?S.getAttribute(J):null,Ge=R?R.getAttribute(J):_e,Te=M?M.getAttribute(J):_e,Ie;Ge===Te?Ie=Ge:Ge===_e?(Ie=Te,a.push({kind:"attr",el:c,name:J,source:"remote"})):Te===_e?(Ie=Ge,a.push({kind:"attr",el:c,name:J,source:"local"})):(Ie=n==="local"?Ge:Te,d({kind:"attr",el:c,name:J,base:_e,local:Ge,remote:Te,resolved:Ie},{el:c,sample:be}),a.push({kind:"attr",el:c,name:J,source:"both"})),Ie!=null&&H(c,be,Ie)}},ae=(c,S,R,M)=>c&&e.mergeAttrs?e.mergeAttrs(c,S,R,M):z(M,c,S,R),me=e.mergeElement||((c,S,R)=>{let M=t.createElement(c.tagName);ae(c,S,R,M);let F=S||c,J=R||c,be=n==="local"?F.isEqualNode(c)?J:F:J.isEqualNode(c)?F:J;for(let _e of be.childNodes)M.appendChild(t.importNode(_e,!0));return s.set(M,{base:c,local:S,remote:R}),M}),Q=e.cloneUnit||((c,S)=>{let R=t.importNode(c,!0);return s.set(R,{base:null,local:S==="local"?c:null,remote:S==="remote"?c:null}),R}),L=e.atomKey||(c=>ul(c,()=>!1)),Ee=(c,S)=>{let R=new Map;for(let M of c.atoms)if(e.remoteWins&&e.remoteWins(M.el)&&Mn.has(M.el.tagName))R.set(M,"w"+M.el.tagName+"#"+(M.el.id||""));else if(!p)R.set(M,M.key);else if(c===m)R.set(M,"="+L(M.el));else{let F=S.reverse.get(M.el),J=F?I.get(F):null;J?R.set(M,"="+L(J.el)):F?R.set(M,"m"+L(M.el)):R.set(M,"="+L(M.el))}return M=>R.get(M)},xe=Ee(m,null),se=Ee(g,r),V=Ee(y,o),Se=Oo(No(m),No(g),No(y)),ve=kr(m,Se,!1,xe),Me=kr(g,Se,!1,se),He=kr(y,Se,!1,V),Ve=ve.length>2e4||Me.length>2e4||He.length>2e4;Ve&&(ve=kr(m,Se,!0,xe),Me=kr(g,Se,!0,se),He=kr(y,Se,!0,V));let it=Ds(br(ve,Me),br(ve,He),ve),le=sl(g,ve,Me,{hunks:it.lh,cosmetic:it.cosL}),yt=sl(y,ve,He,{hunks:it.rh,cosmetic:it.cosR});le.hunks=il(le.hunks,m.text,g.text),yt.hunks=il(yt.hunks,m.text,y.text);let et=ll(le.hunks,m.text.length,g.text.length),Oe=ll(yt.hunks,m.text.length,y.text.length),_=m.text.length,B=c=>new Map(c.atoms.map(S=>[S.el,S])),fe=B(g),Ae=B(y),pe=(c,S,R)=>{let M=new Set;if(!p)return M;for(let F of c.atoms){let J=I.get(S.reverse.get(F.el));J&&R.bTo[J.i]<0&&M.add(J)}return M},Qe=pe(g,r,et),qe=pe(y,o,Oe),rt=c=>!or(c,{...e,remoteWins:null}),lt=new Set;if(p)for(let c of m.atoms){if(!rt(c.el))continue;let S=r.map.get(c.el)||null,R=o.map.get(c.el)||null,M=S&&!R?S:R&&!S?R:null;M&&(fe.has(M)||Ae.has(M))&&!M.isEqualNode(c.el)&<.add(c)}let ee=1,ce=(c,S)=>({id:ee++,tag:c,base:null,local:null,remote:null,rank:S}),ge=new Map,Ue=[];for(let c of m.marks){let S=ce(c.tag,c.depth);S.block=!!c.block,S.base=c.el,S.baseMark=c,ge.set(c.el,S),Ue.push(S)}let ke=(c,S)=>{let R=-1,M=-1;for(let F=c.from;F<c.to;F++){let J=S[F];J>=0&&(R<0&&(R=J),M=J+1)}return R<0?null:[R,M]},Je=(c,S,R,M)=>{for(let F of c.marks){let J=R?R.reverse.get(F.el):null;J&&R.identical.has(J)&&R.pairIdenticalChildren&&R.pairIdenticalChildren(J);let be=J?ge.get(J):null;if(be&&be[S]&&(be=null),!be){let _e=ke(F,M),Ge=0;if(_e)for(let Te of Ue){if(Te.tag!==F.tag||Te[S]||!!Te.block!=!!F.block)continue;let Ie=Math.min(_e[1],Te.baseMark.to)-Math.max(_e[0],Te.baseMark.from);(Ie>Ge||Ie===Ge&&Ie>0&&Math.abs(Te.rank-F.depth)<Math.abs(be.rank-F.depth))&&(be=Te,Ge=Ie)}}be||(be=ce(F.tag,F.depth),be.block=!!F.block,be.new=S),be[S]=F.el,be[S+"Mark"]=F,ge.set(F.el,be)}};Je(g,"local",r,et.toB),Je(y,"remote",o,Oe.toB);let kt=c=>c.merged||c,ht=c=>{let S=new Set;for(let R of c)R.block||S.add(ge.get(R.el));return S},wt=new Map,ze=c=>{let S=wt.get(c);return S||(S=ht(c),wt.set(c,S)),S},Ot=(c,S)=>{let R=[],M=null;for(let F=0;F<_;F++){let J=S[F];if(J<0){M&&R.push(M),M=null;continue}let be=ze(m.stackAt[F]),_e=ze(c.stackAt[J]),Ge=new Set,Te=new Set;for(let Ie of _e)be.has(Ie)||Ge.add(Ie);for(let Ie of be)_e.has(Ie)||Te.add(Ie);if(!Ge.size&&!Te.size){M&&R.push(M),M=null;continue}if(M&&al(M.added,Ge)&&al(M.removed,Te)){M.be=F+1;continue}M&&R.push(M),M={bs:F,be:F+1,added:Ge,removed:Te}}return M&&R.push(M),R},T=Ot(g,et.bTo),re=Ot(y,Oe.bTo),oe=c=>c.be>c.bs?[c.bs,c.be-1]:[c.bs-1,c.bs],de=(c,S)=>{if(_===0)return null;let[R,M]=oe(c);for(let F of S){if(F.be<=R)continue;if(F.bs>M)break;let J=F.bs<=R&&M<F.be;return J&&c.text===""&&F.bs===c.bs&&F.be===c.be?"straddle":J?F:c.be>c.bs?"straddle":null}return null},ie=c=>c.bs===c.be,he=(c,S)=>{let R=!1;for(let M=c.bs;M<c.be;M++){let F=m.text[M];if(F===Et)R=!0;else if(!/\s/.test(F))return!1}for(let M=c.ss;M<c.se;M++){let F=S.text[M];if(F===Et)R=!0;else if(!/\s/.test(F))return!1}return R},w=(c,S)=>c.bs<S.be&&S.bs<c.be,E=(c,S)=>c.bs<=S.be&&S.bs<=c.be&&ie(c)!==ie(S),P=(c,S)=>m.text.slice(c.bs,c.be).includes(Et)||S.text.slice(c.ss,c.se).includes(Et),x=c=>{if(ie(c))return!1;let S=c.bs,R=c.be;for(;S>0&&/\s/.test(m.text[S-1]);)S--;for(;R<m.text.length&&/\s/.test(m.text[R]);)R++;return(S===0||m.text[S-1]===Et)&&(R===m.text.length||m.text[R]===Et)},A=(c,S)=>!P(c,S)&&!x(c),j=(c,S)=>w(c,S)||E(c,S)&&!(he(c,g)&&A(S,y))&&!(he(S,y)&&A(c,g)),G=(c,S)=>{if(c.bs!==S.bs||c.be!==S.be||c.toks.length!==S.toks.length)return!1;let R=c.ss,M=S.ss;for(let F=0;F<c.toks.length;F++){let J=c.toks[F],be=S.toks[F];if(J.k!==be.k||J.atom&&!g.atomAt.get(R).el.isEqualNode(y.atomAt.get(M).el))return!1;R+=J.len,M+=be.len}return!0},q=(c,S,R,M)=>{for(let F of m.atoms){if(F.i<c.bs||F.i>=c.be||M.has(F)||lt.has(F))continue;let J=S.bTo[F.i],be=J>=0?R.atomAt.get(J):null;if(be&&!be.el.isEqualNode(F.el))return!0}return!1},X=[],O=le.hunks,C=yt.hunks,Z=0,ye=0,Re=0,k=0,N=0,D=c=>{c>Re&&(X.push({src:"base",from:Re,to:c,dL:k,dR:N}),Re=c)};for(;Z<O.length||ye<C.length;){let c=O[Z],S=C[ye],R=!!c&&(!S||c.bs<S.bs||c.bs===S.bs&&c.be<=S.be&&!S.lead);if(c&&S&&c.bs===S.bs&&ie(c)&&ie(S)){let qt=he(c,g),Wr=he(S,y);qt!==Wr&&(R=Wr)}let M=R?c:S,F=R?S:c,J=!!F&&G(c,S),be=!!F&&(R?!!O[Z+1]&&G(O[Z+1],S):!!C[ye+1]&&G(c,C[ye+1])),_e=!!F&&!J&&!be&&(_===0||j(c,S)),Ge=_e,Te=de(M,R?re:T);if(Te==="straddle"&&(Ge=!0),!Ge&&M.be>M.bs&&(Ge=q(M,R?Oe:et,R?y:g,R?Qe:qe)),!Ge&&J){D(M.bs),X.push({src:"both",lfrom:c.ss,rfrom:S.ss,len:M.text.length}),Re=M.be,k+=M.text.length-(M.be-M.bs),N+=M.text.length-(M.be-M.bs),Z++,ye++;continue}if(!Ge){D(M.bs),X.push({src:R?"local":"remote",from:M.ss,to:M.se,inherit:Te&&Te!=="straddle"?Te:null}),Re=M.be,R?(k+=M.text.length-(M.be-M.bs),Z++):(N+=M.text.length-(M.be-M.bs),ye++);continue}let Ie=M.bs,gt=M.be,nt=Z,dt=ye,$t=qt=>qt.bs<gt&&qt.be>Ie||ie(qt)&&(qt.bs===Ie||qt.bs===gt);R?nt++:dt++,_e&&(Ie=Math.min(Ie,F.bs),gt=Math.max(gt,F.be),R?dt++:nt++);let Lt=!0;for(;Lt;){for(Lt=!1;nt<O.length&&$t(O[nt]);)Ie=Math.min(Ie,O[nt].bs),gt=Math.max(gt,O[nt].be),nt++,Lt=!0;for(;dt<C.length&&$t(C[dt]);)Ie=Math.min(Ie,C[dt].bs),gt=Math.max(gt,C[dt].be),dt++,Lt=!0}let hn=Ie+k,on=Ie+N,vn=gt-Ie,Tn=gt-Ie;for(let qt=Z;qt<nt;qt++)vn+=O[qt].text.length-(O[qt].be-O[qt].bs);for(let qt=ye;qt<dt;qt++)Tn+=C[qt].text.length-(C[qt].be-C[qt].bs);let Rn=hn+vn,Ln=on+Tn;D(Ie);let Yt={kind:"text",node:e.node||null,base:yr(m,Ie,gt),local:yr(g,hn,Rn),remote:yr(y,on,Ln),resolved:null,range:null,bs:Ie,be:gt,lss:hn,lse:Rn,rss:on,rse:Ln};Yt.resolved=n==="local"?Yt.local:n==="remote"?Yt.remote:Yt.local+Yt.remote,n!=="remote"&&X.push({src:"local",from:hn,to:Rn,conflict:Yt}),n!=="local"&&X.push({src:"remote",from:on,to:Ln,conflict:Yt});let So={site:"inline",fb:m,fl:g,fr:y,scope:e.scope||null,synthetic:!!e.synthetic,full:$,merged:h};f.push(So),d(Yt,So),Re=gt,k+=vn-(gt-Ie),N+=Tn-(gt-Ie),Z=nt,ye=dt}D(_);let U=m.text,W=[];if(le.respell.size||yt.respell.size){let c=Bs(ve),S=[];for(let R=0;R<ve.length;R++){let M=ve[R].raw,F=le.respell.get(R)??M,J=yt.respell.get(R)??M;(F!==M||J!==M)&&W.push([c[R],F!==M&&J!==M?"both":F!==M?"local":"remote"]),S.push(F===J?F:F===M?J:J===M||n==="local"?F:J)}U=S.join("")}let K="",te=[],ue=[],Ce=[],Pe=[];for(let c of X){let S=K.length;if(c.src==="base"){for(let R=c.from;R<c.to;R++)te.push(R),ue.push(R+c.dL),Ce.push(R+c.dR),Pe.push(c);K+=U.slice(c.from,c.to)}else if(c.src==="both"){for(let R=0;R<c.len;R++)te.push(-1),ue.push(c.lfrom+R),Ce.push(c.rfrom+R),Pe.push(c);K+=g.text.slice(c.lfrom,c.lfrom+c.len)}else{let R=c.src==="local"?g:y;for(let M=c.from;M<c.to;M++)te.push(-1),ue.push(c.src==="local"?M:-1),Ce.push(c.src==="remote"?M:-1),Pe.push(c);K+=R.text.slice(c.from,c.to)}c.ms=S,c.me=K.length,c.conflict&&(c.conflict.range||(c.conflict.range=[S,S]),c.conflict.range[1]=K.length)}let Le=K.length,at=new Int32Array(_+1).fill(-1),Be=new Int32Array(g.text.length+1).fill(-1),It=new Int32Array(y.text.length+1).fill(-1);for(let c=0;c<Le;c++)te[c]>=0&&(at[te[c]]=c),ue[c]>=0&&(Be[ue[c]]=c),Ce[c]>=0&&(It[Ce[c]]=c);let We=(c,S)=>{let R=-1,M=-1;for(let F=c.from;F<c.to;F++){let J=S[F];J>=0&&(R<0&&(R=J),M=J+1)}return R<0?null:[R,M]},St=[],mt=[];for(let c of new Set(ge.values()))c.new==="local"?St.push(c):c.new==="remote"&&mt.push(c);let tn=(c,S)=>{c.remote=S.remote,c.remoteMark=S.remoteMark,c.new="both",S.merged=c,ge.set(S.remote,c)};if(St.length&&mt.length){let c=e.idOf;for(let S of St){let R=c?c.local(S.local):null;if(!R)continue;let M=mt.find(F=>!F.merged&&F.tag===S.tag&&!!F.block==!!S.block&&c.remote(F.remote)===R);M&&tn(S,M)}for(let S of St){if(S.remote)continue;let R=We(S.localMark,Be);if(R)for(let M of mt){if(M.merged||M.tag!==S.tag||!!M.block!=!!S.block)continue;let F=We(M.remoteMark,It);if(F&&Math.min(R[1],F[1])-Math.max(R[0],F[0])>0){tn(S,M);break}}}}wt.clear();let Bt=c=>{for(let S of c)if(S.block)return kt(ge.get(S.el));return null},Qt=m.marks.some(c=>c.block)||g.marks.some(c=>c.block)||y.marks.some(c=>c.block),Dt=new Array(Le).fill(null),xt=new Set;if(Qt){let c=(Te,Ie,gt)=>{let nt=new Set([Te,Ie,gt]);nt.delete(null);let dt=[];for(let Lt of nt){let hn=Lt===Te,on=Lt===Ie,vn=Lt===gt;(on===vn?on:on===hn?vn:on)&&dt.push(Lt)}if(dt.length<=1)return dt[0]||null;let $t=n==="local"?Ie:gt;return dt.includes($t)?$t:dt[0]},S=(Te,Ie)=>Ie>=0?Bt(Te.stackAt[Ie]):null,R=new Map;for(let Te=0;Te<Le;Te++){if(K[Te]!==Et)continue;let Ie=te[Te]>=0?S(m,te[Te]):null,gt=S(g,ue[Te]),nt=S(y,Ce[Te]);R.set(Te,[Ie,te[Te]>=0?c(Ie,gt,nt):gt||nt])}let M=new Set([...R.values()].map(Te=>Te[1])),F=Te=>Te!==Et&&Te!==xr&&!/\s/.test(Te),J=(Te,Ie)=>{let gt=Te;for(;gt<Ie&&!F(K[gt]);)gt++;return gt<Ie&&te[gt]>=0?S(m,te[gt]):null},be=new Map,_e=0;for(let Te=0;Te<Le;Te++){if(K[Te]!==Et)continue;let[Ie,gt]=R.get(Te),nt=J(_e,Te),dt=gt,$t=be.get(dt)===dt&&nt===dt;dt&&be.has(dt)&&!$t&&Ie&&!be.has(Ie)&&!M.has(Ie)&&(dt=Ie),dt&&!be.has(dt)&&be.set(dt,nt);for(let Lt=_e;Lt<=Te;Lt++)Dt[Lt]=dt;_e=Te+1}let Ge=Te=>{for(let Ie=0;Ie<Te.text.length;Ie++)if(F(Te.text[Ie])&&!S(Te,Ie))return!0;return!1};if(!Ge(m)&&!Ge(g)&&!Ge(y)){let Te=[],Ie=0;for(let nt=0;nt<Le;nt++)(K[nt]===Et||nt===Le-1)&&(Te.push([Ie,nt]),Ie=nt+1);let gt=new Set(Dt);for(let nt=0;nt<Te.length;nt++){let[dt,$t]=Te[nt];if(Dt[$t])continue;let Lt=dt;for(;Lt<=$t&&!F(K[Lt]);)Lt++;if(Lt>$t)continue;let hn=S(m,te[Lt]),on=S(g,ue[Lt]),vn=S(y,Ce[Lt]),Tn=c(hn,on,vn)||on||vn||hn;if(Tn&&!gt.has(Tn)){gt.add(Tn);for(let Yt=dt;Yt<=$t;Yt++)Dt[Yt]=Tn;continue}let Rn=nt>0&&Dt[Te[nt-1][1]],Ln=nt+1<Te.length&&Dt[Te[nt+1][1]];if(Rn)xt.add(Te[nt-1][1]);else if(Ln&&K[$t]===Et)xt.add($t);else continue;for(let Yt=dt;Yt<=$t;Yt++)Dt[Yt]=Rn||Ln}}}let Rt=new Map,Mt=c=>{let S=Rt.get(c);if(S)return S;S=[1/0,-1/0];for(let[R,M]of[[c.baseMark,at],[c.localMark,Be],[c.remoteMark,It]]){let F=R&&We(R,M);F&&(S[0]=Math.min(S[0],F[0]),S[1]=Math.max(S[1],F[1]))}return Rt.set(c,S),S},zt=(c,S,R)=>{let M=-1,F=-1;for(let J=0;J<c.length;J++){let be=ge.get(c[J].el);be===S&&(M=J),be===R&&(F=J)}return M>=0&&F>=0?M-F:0},an=(c,S)=>[...c].sort((R,M)=>{for(let be of S){let _e=zt(be,R,M);if(_e)return _e}let F=Mt(R),J=Mt(M);return F[0]-J[0]||J[1]-F[1]||R.rank-M.rank||R.id-M.id}),yn=new Map,qn=new Map,Bn=c=>{let S=te[c],R=ue[c],M=Ce[c],F=Pe[c];if(S>=0){let nt=m.stackAt[S],dt=g.stackAt[R],$t=y.stackAt[M],Lt=yn.get(nt);Lt||yn.set(nt,Lt=new Map);let hn=Lt.get(dt);hn||Lt.set(dt,hn=new Map);let on=hn.get($t);if(on)return on;let vn=ze(nt),Tn=ze(dt),Rn=ze($t),Ln=new Set;for(let Yt of new Set([...vn,...Tn,...Rn])){let So=vn.has(Yt),qt=Tn.has(Yt),Wr=Rn.has(Yt);(qt===Wr?qt:qt===So?Wr:qt)&&Ln.add(Yt)}return on=an(Ln,[dt,$t,nt]),hn.set($t,on),on}if(F.src==="both"){let nt=g.stackAt[R],dt=y.stackAt[M];return an(new Set([...ze(nt),...ze(dt)]),[nt,dt])}let be=(F.src==="local"?g:y).stackAt[F.src==="local"?R:M];if(!F.inherit)return an(ze(be),[be]);let _e=qn.get(F);_e||qn.set(F,_e=new Map);let Ge=_e.get(be);if(Ge)return Ge;let Te=new Set(ze(be));for(let nt of F.inherit.added)Te.add(kt(nt));for(let nt of F.inherit.removed)Te.delete(kt(nt));let Ie=F.src==="local"?y:g,gt=(F.src==="local"?Oe.bTo:et.bTo)[F.inherit.bs];return Ge=an(Te,[be,Ie.stackAt[gt]]),_e.set(be,Ge),Ge},Nn=new Int32Array(g.text.length+1);Nn[g.text.length]=Le;for(let c=g.text.length-1;c>=0;c--)Nn[c]=Be[c]>=0?Be[c]:Nn[c+1];Iu.caret+=g.text.length;let mn=c=>c<=0?0:(c>g.text.length&&(c=g.text.length),Be[c-1]>=0?Be[c-1]+1:Nn[c]),nn=[],ne=[],De=null,Ne=[],tt="",pt=-1,$e=c=>{De?De.appendChild(c):nn.push(c)},Ye=c=>{if(!tt)return;let S=t.createTextNode(tt);$e(S),ne.push({node:S,ms:pt,me:c,local:[],u:Ne.length?Ne[Ne.length-1].u:null}),tt=""},ct=new Set,Ke=new Map,ft=new Set,cn=c=>{let S=t.createElement(c.tag);if(c.block&&Kt.add(S),!Ke.has(c)){Ke.set(c,S),ae(c.base,c.local,c.remote,S),s.set(S,{base:c.base,local:c.local,remote:c.remote});let M=(be,_e)=>p&&c[_e]&&be.reverse.get(c[_e])?_e:null,F=!c.base&&(M(r,"local")||M(o,"remote"));if(F){let be=F==="local"?r.reverse.get(c.local):o.reverse.get(c.remote),_e=s.get(S);_e.local=_e.local||r.map.get(be)||null,_e.remote=_e.remote||o.map.get(be)||null,a.push({kind:"move",el:S,source:F})}else c.base||a.push({kind:"insert",el:S,source:c.local&&c.remote?"both":c.local?"local":"remote"});let J=s.get(S);J.local&&(ft.has(J.local)?J.local=null:ft.add(J.local))}else{let M=Ke.get(c);for(let F of M.attributes)F.name!=="id"&&F.name!=="data-id"&&H(S,F,F.value);s.set(S,{base:null,local:null,remote:null})}$e(S),Ne.push({u:c,el:S}),De=S},tr=new Set,xn=new Map;for(let c of g.pins){let S=mn(c.i);xn.has(S)||xn.set(S,[]),xn.get(S).push(c)}let pn=c=>{let S=xn.get(c);if(S){Ye(c);for(let R of S){let M=R.el.namespaceURI&&R.el.namespaceURI!=="http://www.w3.org/1999/xhtml"?t.createElementNS(R.el.namespaceURI,R.el.tagName):t.createElement(R.el.tagName);s.set(M,{base:null,local:R.el,remote:null,pinned:!0}),tr.add(M),$e(M)}}},nr=m.atoms.length||g.atoms.length||y.atoms.length,ot=c=>{if(!nr)return null;let S=te[c]>=0?m.atomAt.get(te[c]):null,R=ue[c]>=0?g.atomAt.get(ue[c]):null,M=Ce[c]>=0?y.atomAt.get(Ce[c]):null;return S||R||M?{ab:S,al:R,ar:M}:null},vt=(c,S,R,M)=>{if(!c||!p)return null;let F=I.get(S.reverse.get(c.el))||null;return!F||F===M||(M?F.el.isEqualNode(M.el):R.bTo[F.i]>=0)?null:F},we=(c,S)=>{if(!c||!p||!e.moveIn)return null;let R=S.reverse.get(c.el);return R&&!I.has(R)?R:null},je=(c,S)=>{let R=new Map;for(let M of c.atoms)R.set(S(M),(R.get(S(M))||0)+1);return R},Xe=je(m,xe),ut=je(g,se),Ze=je(y,V),Nt=c=>{let S=xe(c);return Xe.get(S)===1&&(ut.get(S)||0)<=1&&(Ze.get(S)||0)<=1},_t=new Map,Ht=new Set,en=new Set,dn=new Set;for(let c=0;c<Le;c++){let S=ot(c);if(!S)continue;let{ab:R,al:M,ar:F}=S,J=vt(F,o,Oe,R),be=vt(M,r,et,R),_e=R,Ge=null;if(J?(_e=J,Ge="remote"):be&&(_e=be,Ge="local"),_e){Ht.has(_e)?_t.set(c,{dup:_e.el}):(Ht.add(_e),_t.set(c,{bk:_e,from:Ge,al:M,ar:F}));continue}let Te=we(F,o),Ie=we(M,r),gt=Te||Ie;if(gt){en.has(gt)?_t.set(c,{dup:gt}):(en.add(gt),_t.set(c,{moveIn:gt,side:Te?"remote":"local",sideEl:Te?F.el:M.el}));continue}let nt=($t,Lt)=>$t&&p&&I.get(Lt.reverse.get($t.el))||null,dt=nt(F,o)||nt(M,r);if(dt&&(dn.add(dt),Pe[c].conflict&&Nt(dt))){if(Ht.has(dt)){_t.set(c,{dup:dt.el});continue}Ht.add(dt)}_t.set(c,{al:M,ar:F})}let jt=new Map,Hn=(c,S)=>{if(c[S]>=0)return c[S];for(let R=S-1;R>=0;R--)if(c[R]>=0)return c[R]+1;return 0};if(p)for(let c of m.atoms){if(Ht.has(c)||dn.has(c))continue;let S=r.map.get(c.el)||null,R=o.map.get(c.el)||null,M=S&&fe.get(S),F=R&&Ae.get(R);if(S&&!M||R&&!F)continue;let J=!(M&&F)&<.has(c);if(!J&&!(M&&F&&Nt(c)))continue;let be=n==="local"?[[M,Be],[F,It]]:[[F,It],[M,Be]],[_e,Ge]=be.find(([Ie])=>Ie),Te=Hn(Ge,_e.i);jt.has(Te)||jt.set(Te,[]),jt.get(Te).push({a:c,lt:S,rt:R,edited:J}),Ht.add(c)}if(p&&e.moveIn){let c=[[g,r,Be,"local"],[y,o,It,"remote"]];n!=="local"&&c.reverse();for(let[S,R,M,F]of c)for(let J of S.atoms){let be=we(J,R);if(!be||en.has(be))continue;en.add(be);let _e=Hn(M,J.i);jt.has(_e)||jt.set(_e,[]),jt.get(_e).push({move:be,side:F,sideEl:J.el})}}let Wt=c=>{let S=jt.get(c);if(S){if(Ye(c),S.some(R=>rt(R.move?R.sideEl:R.a.el)))for(;Ne.length;)Ne.pop(),De=Ne.length?Ne[Ne.length-1].el:null;for(let{a:R,lt:M,rt:F,edited:J,move:be,side:_e,sideEl:Ge}of S){if(be){let Ie=e.moveIn(be,_e,Ge);Ie&&$e(Ie);continue}ct.add(R);let Te=me(R.el,M,F);J&&(d({kind:"structure",el:Te,detail:"edit-beats-delete",base:R.el},{subject:R.el,deleted:M?"remote":"local"}),a.push({kind:"insert",el:Te,source:M?"local":"remote"})),$e(Te)}}},Kt=new Set,gn=l.length>u;for(let c=0;c<Le;c++){let S=ot(c),M=!!S&&rt((S.ab||S.al||S.ar).el)?[]:Dt[c]?[Dt[c],...Bn(c)]:Bn(c),F=0;for(;F<Ne.length&&F<M.length&&Ne[F].u===M[F];)F++;if(F<Ne.length)for(Ye(c);Ne.length>F;)Ne.pop(),De=Ne.length?Ne[Ne.length-1].el:null;if(pn(c),Wt(c),M.length>Ne.length)for(Ye(c);Ne.length<M.length;)cn(M[Ne.length]);if(K[c]===Et){if(xt.has(c))continue;Ye(c);let J=Ne.length;for(;J>0&&!Ne[J-1].u.block;)J--;if(J>0)for(gn&&h.breakOut.set(c,Ne[J-1].el);Ne.length>=J;)Ne.pop(),De=Ne.length?Ne[Ne.length-1].el:null;continue}if(S){Ye(c);let J=_t.get(c),be;if(J.dup){d({kind:"structure",el:null,detail:"both-moved",base:J.dup},{subject:J.dup});continue}if(J.moveIn){if(be=e.moveIn(J.moveIn,J.side,J.sideEl),!be)continue}else if(J.bk){let _e=J.bk;if(ct.add(_e),_e===S.ab)be=me(_e.el,J.al.el,J.ar.el);else{let Ge=r.map.get(_e.el)||null,Te=o.map.get(_e.el)||null;be=me(_e.el,Ge,Te),(!Ge||!Te)&&d({kind:"structure",el:null,detail:"move-beats-delete",base:_e.el},{subject:_e.el,deleted:Ge?"remote":"local"}),a.push({kind:"move",el:be,source:J.from})}}else J.al?(be=Q(J.al.el,"local"),J.ar&&(s.get(be).remote=J.ar.el),a.push({kind:"insert",el:be,source:J.ar?"both":"local"})):(be=Q(J.ar.el,"remote"),a.push({kind:"insert",el:be,source:"remote"}));gn&&h.atomOut.set(c,be),$e(be);continue}tt||(pt=c),tt+=K[c]}if(Ye(Le),(xn.has(Le)||jt.has(Le))&&(Ne.length=0,De=null,pn(Le),Wt(Le)),Le===0&&(g.placeholder||y.placeholder||m.placeholder)){let c=t.createElement("br");s.set(c,{base:m.placeholder,local:g.placeholder,remote:y.placeholder}),nn.push(c)}let An=0,wo=c=>{for(;An>0&&ne[An-1].me>=c;)An--;for(;An<ne.length&&ne[An].me<c;)An++;let S=ne[An];if(!S)return ne[ne.length-1]||null;let R=ne[An+1];return S.me===c&&R&&R.ms===c?R:S},mr=new Map,Vr={},Fe=(c,S,R)=>{let M=wo(c)||(R?Vr:null);if(!M)return;let F=mr.get(M)||{l:!1,r:!1};S!=="remote"&&(F.l=!0),S!=="local"&&(F.r=!0),mr.set(M,F)},At=c=>{if(c.conflict)return!0;let S=c.src==="local"?g.text:c.src==="remote"?y.text:"";for(let R=c.from;R<c.to;R++)if(S[R]!==xr&&S[R]!==Et)return!0;return!1};for(let c of X)c.src!=="base"&&Fe(c.ms,c.conflict?"both":c.src,At(c));for(let[c,S]of W)at[c]>=0&&Fe(at[c],S);for(let c of ne.length?ne:[Vr]){let S=mr.get(c);S&&a.push({kind:"text",node:c.node||null,source:S.l&&S.r?"both":S.l?"local":"remote"})}for(let c of Ue){if(Ke.has(c))continue;let S=!c.local&&!(p&&r.map.get(c.base)),R=!c.remote&&!(p&&o.map.get(c.base));!S&&!R||a.push({kind:"remove",source:S&&R?"both":S?"local":"remote",base:c.base})}let Pt=(c,S,R)=>{if(S<=c)return!1;for(let M=c;M<S;M++)if(R[M]>=0)return!1;return!0};for(let c of Ue)for(let S of["local","remote"]){let R=c[S+"Mark"],M=c.baseMark;if(!R)continue;let F=S==="local"?et:Oe;if(!Pt(M.from,M.to,F.bTo)||!Pt(R.from,R.to,F.toB))continue;let J=(S==="local"?O:C).find(be=>be.ss<=R.from&&R.from<be.se);J&&(J.be<=M.from||J.bs>=M.to)&&a.push({kind:"move",el:Ke.get(c)||null,source:S})}let Ct=c=>{let S=ge.get(c.node.parentNode);return S?kt(S):null};for(let c of g.nodes){let S=-1;for(let M=c.s;M<c.e;M++)if(Be[M]>=0){S=Be[M];break}let R;if(S>=0)R=wo(S);else{let M=mn(c.s),F=Ct(c);R=ne.find(J=>J.u===F&&J.me>=M)||ne.filter(J=>J.u===F).pop()}R&&R.local.push(c)}let Tt=new Map,Sn=ne[ne.length-1]||null,Gt=0;for(let c of g.nodes){let S=null;for(let R=c.s;R<=c.e;R++){let M=mn(R);for(;Gt>0&&ne[Gt-1].me>=M;)Gt--;for(;Gt<ne.length&&ne[Gt].me<M;)Gt++;let F=be=>be&&M>=be.ms&&M<=be.me&&(M<be.me||R===c.e||be===S),J=F(ne[Gt])?ne[Gt]:F(ne[Gt+1])?ne[Gt+1]:ne[Gt]||Sn;if(!J)break;if(S===J){let be=Tt.get(J);be[be.length-1].to=R-c.s;continue}S=J,Tt.has(J)||Tt.set(J,[]),Tt.get(J).push({node:c.node,from:R-c.s,to:R-c.s,flatStart:c.s})}}for(let c of ne){let S=c.local,R=!1;for(let be of S)for(let _e=be.s;_e<be.e&&!R;_e++)(Be[_e]<c.ms||Be[_e]>=c.me)&&(R=!0);s.set(c.node,{base:null,local:S.map(be=>be.node),remote:null,caret:Tt.get(c)||[],partial:R});let M=c.ms,F=c.me-c.ms,J=be=>{let _e=0,Ge=-1;for(let Te of S){let Ie=Te.e-Te.s;if(be<=_e+Ie){Ge=Te.s+(be-_e);break}_e+=Ie}return Ge<0&&(Ge=S.length?S[S.length-1].e:0),Math.max(0,Math.min(mn(Ge)-M,F))};J.flat=be=>Math.max(0,Math.min(mn(be)-M,F)),i.set(c.node,J)}function $n(){if(!g.text.includes(Et))return[{flatLocal:g.text,localNodes:g.nodes,textNodes:ne,lToM:Be,mapLocal:mn}];let c=[],S=0,R=0;for(let M=0;M<=g.text.length;M++){if(M<g.text.length&&g.text[M]!==Et)continue;let F=S,J=M;if(J>F){let be=[];for(;R<g.nodes.length&&g.nodes[R].e<=F;)R++;for(let _e=R;_e<g.nodes.length&&g.nodes[_e].s<J;_e++){let Ge=g.nodes[_e],Te=Math.max(Ge.s,F),Ie=Math.min(Ge.e,J);Te<Ie&&be.push({node:Ge.node,s:Te-F,e:Ie-F})}c.push({flatLocal:g.text.slice(F,J),localNodes:be,textNodes:ne,lToM:Be.subarray?Be.subarray(F,J+1):Be.slice(F,J+1),mapLocal:_e=>mn(F+Math.max(0,Math.min(_e,J-F)))})}S=M+1}return c}let Cn={...e,blocks:Kt,ignored:c=>tr.has(c)||(e.ignored?e.ignored(c):!1)},rn=e.ignoreAttribute||(()=>!1),Ao=ol(In(nn,Cn),rn)!==ol(y,rn);if(f.length){let c=S=>{let R=s.get(S);return R&&R.unchanged?R.remote:null};h.text=K,h.textNodes=ne,h.out=In(nn,{...Cn,via:c})}return{nodes:nn,text:K,textNodes:ne,localDiverged:Ao,mapLocal:mn,conflicts:l.slice(u),granularity:Ve?"line":"word",segments:$n(),localHunks:O,remoteHunks:C,lToM:Be}}var qu="http://www.w3.org/1999/xhtml";function Bu(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t^e.charCodeAt(n);return(t>>>0).toString(36)}function un(e){return!!e&&e.nodeType===1&&e.tagName==="SCRIPT"&&e.namespaceURI===qu}function Hu(e){let t=(e.getAttribute("type")||"").split(";")[0].trim().toLowerCase();return t==="application/json"||t.endsWith("+json")}function Co(e,t){let n=e.getAttribute("src"),r=(e.getAttribute("type")||"text/javascript").split(";")[0].trim().toLowerCase();if(n){let o=n;try{let s=new URL(n,t);o=s.origin+s.pathname+s.search}catch{}return"script|src|"+r+"|"+o}return"script|inline|"+r+"|"+Bu(e.textContent.trim())}var $u={match:e=>e.hasAttribute("merge"),identity:e=>e.getAttribute("merge")};function vr(e,t=[],n=!1){if(!un(e)||e.hasAttribute("src"))return null;let r=[$u,...t];for(let o=0;o<r.length;o++){let s=r[o];if(!s.match(e))continue;if(!Hu(e))return n&&console.warn("[hyper-morph] merge ignored: script type is not JSON",e),null;let i=s.identity(e);return i==null||i===""?null:{key:o+":"+i,raw:i,recognizer:s}}return null}function fl(e,t,n){let r=new Set,o=s=>{un(s)&&!t(s)&&r.add(Co(s,n))};o(e);for(let s of e.querySelectorAll("script"))o(s);return r}function Yr(e,t){let n=t.createElement("div");n.innerHTML="<script><\/script>";let r=n.firstChild;for(let o of e.attributes)r.setAttribute(o.name,o.value);return r.textContent=e.textContent,r}function dl(e,t,n){let r=[],o=[],s=new Map,i=n.trackRecovery?new Set:null,l=Array.from(e.querySelectorAll("script"));un(e)&&l.unshift(e);for(let a of l){if(!un(a)||n.ignored(a)||n.skip.has(a)||t.has(Co(a,n.baseURI)))continue;let u=a.ownerDocument.createElement("script");for(let d of a.attributes)u.setAttribute(d.name,d.value);if(u.textContent=a.textContent,n.beforeNodeAdded(u)===!1){i?.add(a);continue}u.hasAttribute("src")&&o.push(new Promise(d=>{u.addEventListener("load",()=>d()),u.addEventListener("error",()=>d())})),a.replaceWith(u),s.set(a,u),n.afterNodeAdded(u),r.push(u)}return{executed:r,loads:o,swapped:s,vetoed:i}}function Uu(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t^e.charCodeAt(n);return(t>>>0).toString(36)}function zu(e,t){try{let n=new URL(e,t);return n.origin+n.pathname+n.search}catch{return e}}function hl(e,t){let n=e.tagName;if(n==="TITLE"||n==="BASE")return n;if(n==="SCRIPT")return Co(e,t);if(n==="LINK"){let r=e.getAttribute("href");return r?"link|"+(e.getAttribute("rel")||"")+"|"+zu(r,t):e.outerHTML}if(n==="META"){for(let r of["charset","name","property","http-equiv","itemprop"])if(e.hasAttribute(r))return"meta|"+r+"="+e.getAttribute(r);return e.outerHTML}return n==="STYLE"?"style|"+Uu(e.textContent):e.outerHTML}function Us(e,t){for(;;){for(;t<e.length&&/\s/.test(e[t]);)t++;if(e[t]==="/"&&e[t+1]==="/"){for(;t<e.length&&e[t]!==`
|
|
4
|
+
`;)t++;continue}if(e[t]==="/"&&e[t+1]==="*"){let n=e.indexOf("*/",t+2);if(n===-1)return e.length;t=n+2;continue}return t}}function Vu(e){return e.replace(/\\'/g,"'").replace(/(\\*)"/g,(t,n)=>n.length%2===0?n+'\\"':t)}var Wu=/^-?(0|[1-9]\d*)(\.\d+)?([eE][+-]?\d+)?$/,Ku=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function zs(e){try{return JSON.parse(e)}catch{return JSON.parse(Gu(e))}}function Gu(e){let t="",n=0,r=(o,s)=>{throw new Error(`Invalid relaxed JSON: ${o} at position ${s}`)};for(;n<e.length&&(n=Us(e,n),!(n>=e.length));){let o=e[n];if("{}[]:".includes(o)){t+=o,n++;continue}if(o===","){let l=Us(e,n+1);if(e[l]==="}"||e[l]==="]"){n++;continue}t+=o,n++;continue}if(o==='"'||o==="'"){let l=n+1;for(;l<e.length&&e[l]!==o;)e[l]==="\\"&&l++,l++;l>=e.length&&r("unterminated string",n);let a=e.slice(n+1,l);o==="'"&&(a=Vu(a)),t+='"'+a+'"',n=l+1;continue}let s=n;for(;s<e.length&&/[A-Za-z0-9_$.+\-]/.test(e[s]);)s++;s===n&&r("unexpected character "+JSON.stringify(o),n);let i=e.slice(n,s);if(i==="true"||i==="false"||i==="null"||Wu.test(i)){t+=i,n=s;continue}if(Ku.test(i)){if(e[Us(e,s)]===":"){t+='"'+i+'"',n=s;continue}r("unquoted value "+JSON.stringify(i),n)}r("invalid token "+JSON.stringify(i),n)}return t}var Ut=Symbol("hyper-morph-json-merge:missing"),ml=["id","_id","uuid","key","slug","code","name"];function wr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Xr(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Yu(e,t,n){Object.defineProperty(e,t,{value:n,enumerable:!0,writable:!0,configurable:!0})}function Vn(e,t){if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!Vn(e[n],t[n]))return!1;return!0}if(wr(e)&&wr(t)){let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!Xr(t,r)||!Vn(e[r],t[r]))return!1;return!0}return!1}function pl(e,t,n,r){return Vn(t,n)?t:Vn(t,e)?n:Vn(n,e)?t:wr(t)&&wr(n)?Xu(wr(e)?e:{},t,n,r):Array.isArray(t)&&Array.isArray(n)?ef(Array.isArray(e)?e:[],t,n,r):n}function gl(e,t,n,r){return t===Ut&&n===Ut?Ut:t===Ut?e===Ut?n:Vn(n,e)?Ut:n:n===Ut?e===Ut?t:Ut:pl(e,t,n,r)}function Xu(e,t,n,r){let o={},s=new Set([...Object.keys(e),...Object.keys(t),...Object.keys(n)]);for(let i of s){let l=gl(Xr(e,i)?e[i]:Ut,Xr(t,i)?t[i]:Ut,Xr(n,i)?n[i]:Ut,r);l!==Ut&&Yu(o,i,l)}return o}function Ju(e){return e===null||typeof e!="object"}function Mo(e){return typeof e+":"+String(e)}function Zu(e,t){for(let n of t){let r=new Set;for(let o of n){if(!Xr(o,e))return!1;let s=o[e];if(typeof s!="string"&&typeof s!="number")return!1;let i=Mo(s);if(r.has(i))return!1;r.add(i)}}return!0}function Qu(e,t,n,r){let o=[e,t,n],s=!0;for(let i of o)for(let l of i)wr(l)||(s=!1);if(s){for(let i of r.keyCandidates)if(Zu(i,o))return{kind:"keyed",field:i};return null}for(let i of o){let l=new Set;for(let a of i){if(!Ju(a))return null;let u=Mo(a);if(l.has(u))return null;l.add(u)}}return{kind:"self"}}function ef(e,t,n,r){let o=Qu(e,t,n,r);if(!o)return n;let s=o.kind==="self"?Mo:p=>Mo(p[o.field]),i=p=>{let b=new Map;for(let v of p)b.set(s(v),v);return b},l=i(e),a=i(t),u=i(n),d=new Map,h=new Set([...l.keys(),...a.keys(),...u.keys()]);for(let p of h){let b=gl(l.has(p)?l.get(p):Ut,a.has(p)?a.get(p):Ut,u.has(p)?u.get(p):Ut,r);b!==Ut&&d.set(p,b)}let f=[];for(let p of n){let b=s(p);d.has(b)&&f.push(b)}for(let p=0;p<t.length;p++){let b=s(t[p]);if(!d.has(b)||f.includes(b))continue;let v=0;for(let m=p-1;m>=0;m--){let g=f.indexOf(s(t[m]));if(g!==-1){v=g+1;break}}f.splice(v,0,b)}return f.map(p=>d.get(p))}function bl(e,t,n,r={}){let o=r.keyCandidates?[...r.keyCandidates,...ml]:ml;return pl(e===void 0?Ut:e,t,n,{keyCandidates:o})}function Vs(e,t,n,r={}){let o=r.parse||zs,s=[],i=(h,f)=>{if(typeof h!="string")return Ut;try{return o(h)}catch(p){return s.push(`${f} side is not valid JSON (${p.message})`),Ut}},l=i(t,"local"),a=i(n,"remote");if(l===Ut)return{text:n,warnings:s};if(a===Ut)return{text:t,warnings:s};let u=i(e,"base"),d=bl(u===Ut?void 0:u,l,a,r);return Vn(d,a)?{text:n,warnings:s}:Vn(d,l)?{text:t,warnings:s}:{text:JSON.stringify(d,null,2),warnings:s}}var kl=e=>e.nodeType===3||e.nodeType===8?e.nodeValue.length:e.childNodes.length;function ir(e){if(!e)return!1;let{startContainer:t,startOffset:n,endContainer:r,endOffset:o}=e;if(!t||!r||!Number.isInteger(n)||!Number.isInteger(o)||n<0||o<0||n>kl(t)||o>kl(r)||t.getRootNode()!==r.getRootNode())return!1;let s=t.ownerDocument.createRange();return s.setStart(t,n),s.setEnd(r,o),s.startContainer===t&&s.startOffset===n}function Wn(e,t,n={}){if(!ir(e))return null;let{startContainer:r,startOffset:o,endContainer:s,endOffset:i}=e;if(r===s&&(r.nodeType===3||r.nodeType===8))return r.nodeValue.slice(o,i);if(r===s&&o===i)return"";let l=new Set;for(let m=r;m;m=m.parentNode)l.add(m);let a=s;for(;!l.has(a);)a=a.parentNode;let u=(m,g)=>{let y=a.ownerDocument.createRange(),I=a.ownerDocument.createRange();return y.setStart(m[0],m[1]),y.collapse(!0),I.setStart(g[0],g[1]),I.collapse(!0),y.compareBoundaryPoints(0,I)},d=(m,g=!1)=>[m.parentNode,Array.prototype.indexOf.call(m.parentNode.childNodes,m)+Number(g)],h=[],f;if(t==="plain"){f="";let m=g=>{if(g.nodeType===3||g.nodeType===8){let y=f.length;f+=g.nodeValue,h.push({s:y,e:f.length,a:[g,0],b:[g,g.nodeValue.length],node:g})}else for(let y of g.childNodes)m(y)};m(a)}else{let m=n.blocks;if(!m){m=new Set;let y=I=>{I!==a&&I.nodeType===1&&Hs.has(I.tagName)&&m.add(I);for(let Y of I.childNodes)y(Y)};y(a)}let g=In(Array.from(a.childNodes),{blocks:m,atomize:y=>!!n.atoms?.has(y),ignored:n.ignored});f=g.text;for(let y of g.nodes)h.push({s:y.s,e:y.e,a:[y.node,0],b:[y.node,y.e-y.s],node:y.node});for(let y of g.atoms)h.push({s:y.i,e:y.i+1,a:d(y.el),b:d(y.el,!0)});for(let y=0;y<g.text.length;y++){if(g.text[y]!==Et)continue;let I=g.marks.find($=>$.block&&$.to===y+1),Y=g.marks.find($=>$.block&&$.from===y+1);if(I)h.push({s:y,e:y+1,a:[I.el,I.el.childNodes.length],b:d(I.el,!0)});else if(Y)h.push({s:y,e:y+1,a:d(Y.el),b:[Y.el,0]});else return null}}h.sort((m,g)=>m.s-g.s);let p=m=>{if(m[0].nodeType===3||m[0].nodeType===8){let y=h.find(I=>I.node===m[0]);return y?y.s+m[1]:null}let g=0;for(let y of h){if(u(m,y.a)<=0)return y.s;if(u(m,y.b)<0)return null;g=y.e}return g},b=p([r,o]),v=p([s,i]);return b!==null&&v!==null&&b<=v?f.slice(b,v):null}function sr(e,t){let n=e;for(let r of t.path)if(n=r==="content"?n?.content:n?.childNodes[r],!n)return null;return[n,t.offset]}function yl(e,t){if(!e||!t)return null;let n=sr(e,t.start),r=sr(e,t.end);return n&&r?{startContainer:n[0],startOffset:n[1],endContainer:r[0],endOffset:r[1]}:null}var xl=e=>e.nodeType===1?e.outerHTML:e.nodeValue;function vl(e,t,n){if(!t)return;let r=new Map,o=new Map,s=l=>{if(!l)return null;if(o.has(l))return o.get(l);let u=l.local.map(d=>sr(t.localRoot,{path:d,offset:0})?.[0]).map(d=>d&&n(d)).filter(Boolean).map(d=>({node:d,parent:d.parentNode,previous:d.previousSibling,next:d.nextSibling,fragment:xl(d)}));return o.set(l,u),u},i=l=>{let a=yl(t.localRoot,l);if(!a)return null;let u=n(a.startContainer),d=n(a.endContainer);if(!u||!d)return null;let h={...a,startContainer:u,endContainer:d};return ir(h)?h:null};for(let l of e){let a=l.recovery;if(r.has(a))continue;let u={subject:s(a.subject),span:null,scope:null,touched:new Set};if(a.text){u.span=i(a.text.local.span),u.scope=i(a.text.local.scope);let d=u.span;if(d){let h=d.startContainer.ownerDocument.createRange();h.setStart(d.startContainer,d.startOffset),h.setEnd(d.endContainer,d.endOffset);let f=p=>{if(h.intersectsNode(p)){u.touched.add(p);for(let b of p.childNodes)f(b)}};f(h.commonAncestorContainer)}}if(a.structure){for(let d of[a.structure.localPlacement])d&&(s(d.parent),d.before.forEach(s),d.after.forEach(s));for(let d of a.structure.localOrder||[])s(d)}r.set(a,u)}t.localState={states:r,refs:o}}function wl(e,t,n,r){let o=n.localState?.states.get(e);if(!o)return!1;let s=l=>{let a=l.node;if(!r(a)||a.parentNode!==l.parent)return!1;let u=d=>Array.prototype.indexOf.call(a.parentNode.childNodes,d);return!(l.previous&&r(l.previous)&&l.previous.parentNode===a.parentNode&&u(l.previous)>=u(a)||l.next&&r(l.next)&&l.next.parentNode===a.parentNode&&u(l.next)<=u(a))};if(e.structure?.localAction==="deleted")return e.subject.live.length===0;if(!o.subject.length||!o.subject.every(s))return!1;if(e.text){let l=e.text.local,a=u=>u&&r(u.startContainer)&&r(u.endContainer);return a(o.span)&&a(o.scope)&&Wn(o.scope,e.text.encoding)===l.text&&Wn(o.span,e.text.encoding)===l.text.slice(l.start,l.end)}if(e.attribute){let l=e.attribute,a=o.subject[0].node;return(l.namespaceURI?a.getAttributeNS(l.namespaceURI,l.localName):a.getAttribute(l.qualifiedName))===t.local}let i=e.structure;if(i.localOrder){let l=-1,a=null;for(let u of i.localOrder){let d=n.localState.refs.get(u)?.[0]?.node;if(!d||!r(d)||a&&d.parentNode!==a)return!1;let h=Array.prototype.indexOf.call(d.parentNode.childNodes,d);if(h<=l)return!1;a=d.parentNode,l=h}return!0}return i.localAction==="moved"||o.subject.every(l=>xl(l.node)===l.fragment)}var tf=1,sn=e=>!!e&&e.nodeType===1,Ro=e=>sn(e)&&e.tagName==="TEMPLATE"&&!!e.content;function lr(e,t=null,n=null){let r=new Map,o=new Map,s=d=>{if(!t){t=new WeakMap;let h=[e];for(;h.length;){let f=h.pop();Ro(f)&&(t.set(f.content,f),h.push(f.content));for(let p=f.firstChild;p;p=p.nextSibling)p.nodeType===1&&h.push(p)}}return t.get(d)||null},i=(d,h)=>{let f=o.get(d);if(!f){f=new Map;let p=0;for(let b=d.firstChild;b;b=b.nextSibling)f.set(b,p++);o.set(d,f)}return f.get(h)},l=d=>{if(!d)return null;if(n&&n.has(d))return l(n.get(d));if(d===e)return[];let h=r.get(d);if(h!==void 0)return h;let f=d.parentNode,p=null;if(f&&f.nodeType===11){let b=s(f),v=b?l(b):null;v&&(p=v.concat(["content",i(f,d)]))}else if(f){let b=l(f);b&&(p=b.concat([i(f,d)]))}return r.set(d,p),p};return{root:e,pathOf:l,logicalParent:d=>{let h=d.parentNode;return h&&h.nodeType===11?s(h):h},indexIn:i,containerPath:d=>{if(d.nodeType===11){let f=s(d),p=l(f);return p?p.concat(["content"]):null}let h=l(d);return h&&Ro(d)?h.concat(["content"]):h},ownerOf:s}}var En=e=>Ro(e)?e.content:e;function Al(e){let{L:t,R:n,unitsOf:r,provenance:o,policy:s}=e,i=[];return{note:(d,h)=>{i.push([d,h])},finish:d=>i.length?u(d):null};function u(d){let h={base:lr(e.roots.base),local:lr(e.roots.local),remote:lr(e.roots.remote)},f=w=>w==="local"?t:n,p=(w,E)=>{if(!E)return null;if(w.map.has(E))return w.map.get(E);let P=[],x=sn(E)?h.base.logicalParent(E):E.parent;for(;x&&!w.map.has(x);x=h.base.logicalParent(x))P.push(x);if(!x||!w.identical.has(x))return null;let A=w.map.get(x);for(let j=P.length-1;j>=0&&A;j--)A=En(A).childNodes[h.base.indexIn(P[j].parentNode,P[j])];return A?sn(E)?En(A).childNodes[h.base.indexIn(E.parentNode,E)]||null:r(A)[r(E.parent).indexOf(E)]||null:null},b=new Map,v=new Map,m=new WeakMap,g=0,y=(w,E)=>{let P=b.get(w);P||b.set(w,P=[]),P.push(E)};(function w(E){v.set(E,g++);let P=o.get(E);if(P&&!P.pinned){for(let x of[P.base,P.local,P.remote])if(x)if(Array.isArray(x))for(let A of x)y(A,E);else y(x,E)}if(Ro(E)){m.set(E.content,E);for(let x=E.content.firstChild;x;x=x.nextSibling)w(x)}for(let x=E.firstChild;x;x=x.nextSibling)w(x)})(d);let I=new Map;h.out=lr(d,m,I);let Y={refs:new Map,spans:new Map,anchors:new Map,via:I,outOwners:m,outRoot:d,localRoot:e.roots.local},$=w=>sn(w)?[w]:w.nodes,H=(w,E)=>{let P=h[E].logicalParent(w);if(!P)return null;for(let x of r(P))if(!sn(x)&&x.nodes.includes(w))return x;return null},z=(w,E)=>w==null?null:Array.isArray(w)?w.length?H(w[0],E):null:w,ae=w=>{let E=new Set,P=[];for(let x of w)for(let A of b.get(x)||[])E.has(A)||(E.add(A),P.push(A));return P.sort((x,A)=>v.get(x)-v.get(A))},me=new Map,Q=w=>{let E=w.b||w.l||w.r,P=me.get(E);if(P)return P;let x=[];for(let A of[w.b,w.l,w.r])A&&x.push(...$(A));return P=ae(x),me.set(E,P),P},L=w=>({b:w,l:p(t,w),r:p(n,w)}),Ee=(w,E)=>{let P=f(E).reverse.get(w);if(P)return L(P);for(let x of ae($(w))){let A=o.get(x);if(A&&!A.base&&A.local&&A.remote)return{b:null,l:z(A.local,"local"),r:z(A.remote,"remote")}}return E==="local"?{b:null,l:w,r:null}:{b:null,l:null,r:w}},xe=new Map,se=w=>{let E=o.get(w);if(!E||E.pinned)return null;let P=z(E.base,"base");if(P)return L(P);let x=z(E.local,"local"),A=z(E.remote,"remote");if(x){let j=t.reverse.get(x);if(j)return L(j)}if(A){let j=n.reverse.get(A);if(j)return L(j)}return x||A?{b:null,l:x,r:A}:null},V=w=>(xe.has(w)||xe.set(w,se(w)),xe.get(w)),Se=(w,E)=>sn(w)?h[E].logicalParent(w):w.parent,ve=new Map,Me=new Map,He=(w,E)=>(sn(w)?[h[E].pathOf(w)]:w.nodes.map(P=>h[E].pathOf(P))).filter(Boolean),Ve=w=>{let E=w.b||w.l||w.r,P=w.b?"base":w.l?"local":"remote",x=Me.get(E);if(x)return x;let A=!sn(E),j=He(E,P)[0],G=`${P[0]}:${JSON.stringify(j===void 0?null:j)}${A?":run":""}`,q=ve.get(G);if(q)return Me.set(E,q),q;let X=Q(w);return q={key:G,nodeType:sn(E)?1:E.kind==="comment"?8:3,base:w.b?He(w.b,"base"):[],local:w.l?He(w.l,"local"):[],remote:w.r?He(w.r,"remote"):[],merged:X.map(O=>h.out.pathOf(O)).filter(Boolean),live:[]},ve.set(G,q),Me.set(E,q),Y.refs.set(q,X),q},it={base:new Map,local:new Map,remote:new Map},le=new Map,yt=(w,E)=>{let P=Se(w,E);if(!P||P.nodeType!==1)return null;let x=it[E].get(P);if(!x){let j=r(P),G=q=>Ve(E==="base"?L(q):Ee(q,E));x={parent:G(P),refs:j.map(G),index:new Map(j.map((q,X)=>[q,X]))},it[E].set(P,x)}let A=x.index.get(w)??-1;return{parent:x.parent,before:x.refs.slice(A+1),after:x.refs.slice(0,Math.max(0,A)).reverse()}},et=w=>{let E=w.parentNode;if(!E)return null;let P=le.get(E);if(!P){let A=E.nodeType===11?m.get(E):E,j=A&&A.nodeType===1?V(A):null;if(!j)return null;let G=[],q=[],X=new Map;for(let C of E.childNodes){let Z=V(C),ye=Z&&Ve(Z),Re=G.length,k=G.length-1;ye&&ye!==G[k]&&(G.push(ye),k++);let N={ref:ye,group:k,after:Re};q.push(N),X.set(C,N)}let O=G.length;for(let C=q.length-1;C>=0;C--){let Z=q[C];Z.before=O,Z.ref&&(O=Z.group)}P={parent:Ve(j),refs:G,index:X},le.set(E,P)}let x=P.index.get(w);return{parent:P.parent,before:P.refs.slice(x.before),after:P.refs.slice(0,x.after).reverse()}},Oe=w=>sn(w)?w.outerHTML:w.value,_=w=>sn(w)?"element":w.kind==="comment"?"comment":"text",B=(w,E)=>({path:w,offset:E}),fe=(w,E,P)=>{if(!w)return null;let x=h[P],A=0;if(E){let j=sn(E)?E:E.nodes[E.nodes.length-1];j.parentNode&&(A=x.indexIn(j.parentNode,j)+1)}return B(x.containerPath(w),A)},Ae=(w,E)=>{let P=Se(w,"base"),x=P?p(f(E),P):null;if(!sn(x))return null;let A=r(P),j=null;for(let G=A.indexOf(w)-1;G>=0&&!j;G--){let q=p(f(E),A[G]);q&&Se(q,E)===x&&(j=q)}return fe(x,j,E)},pe=(w,E,P,x)=>{let A=h[x],j=0;for(let G=0;G<w.nodes.length;G++){let q=w.nodes[G],X=q.nodeValue.length,O=G===w.nodes.length-1;if((P==="start"?E<j+X:E<=j+X)||O)return B(A.pathOf(q),Math.max(0,Math.min(E-j,X)));j+=X}return null},Qe=(w,E)=>{let P=h[E],x=w.firstChild,A=w.lastChild;return x&&x.nodeType===3&&A.nodeType===3?{start:B(P.pathOf(x),0),end:B(P.pathOf(A),A.nodeValue.length)}:{start:B(P.pathOf(w),0),end:B(P.pathOf(w),w.childNodes.length)}},qe=(w,E,P)=>{for(let G of w.nodes)if(P==="start"?G.s<=E&&E<G.e:G.s<E&&E<=G.e)return{kind:"text",node:G.node,offset:E-G.s};let x=P==="start"?E:E-1,A=()=>{for(let G of w.nodes)if(G.s===E||G.e===E)return{kind:"text",node:G.node,offset:E-G.s};return null},j=w.atomAt.get(x);if(j)return{kind:P==="start"?"before":"after",node:j.el};if(w.text[x]===Et){let G=w.marks.find(X=>X.block&&X.to===x+1);if(G)return P==="start"?{kind:"end",node:G.el}:{kind:"after",node:G.el};let q=w.marks.find(X=>X.block&&X.from===x+1);if(q)return P==="start"?{kind:"before",node:q.el}:{kind:"startOf",node:q.el}}return A()},rt=(w,E)=>qe(w,E,"end")||qe(w,E,"start"),lt=(w,E)=>{switch(E.kind){case"text":return B(w.pathOf(E.node),E.offset);case"end":return B(w.containerPath(E.node),En(E.node).childNodes.length);case"startOf":return B(w.containerPath(E.node),0);default:{let P=E.node.parentNode;return B(w.containerPath(P),w.indexIn(P,E.node)+(E.kind==="after"?1:0))}}},ee=(w,E,P,x,A)=>{let j=qe(w,E,P);return j?lt(h[x],j):A()},ce=(w,E,P,x)=>{let A=w.textNodes.map(O=>({s:O.ms,e:O.me,start:{kind:"text",node:O.node,offset:0},end:{kind:"text",node:O.node,offset:O.me-O.ms}}));for(let[O,C]of w.atomOut)A.push({s:O,e:O+1,start:{kind:"before",node:C},end:{kind:"after",node:C}});for(let[O,C]of w.breakOut)A.push({s:O,e:O+1,start:{kind:"end",node:C},end:{kind:"after",node:C}});for(let O of A)if(O.start.kind==="text"&&O.s<E&&E<O.e)return{kind:"text",node:O.start.node,offset:E-O.s};if(P!=="empty"){let O=A.find(C=>P==="start"?C.s===E:C.e===E);if(O)return P==="start"?O.start:O.end}let j=A.find(O=>O.e===E);if(j)return j.end;let G=A.find(O=>O.s===E);if(G)return G.start;let q=null,X=null;for(let O of A)O.e<=E&&(!q||O.e>q.e)&&(q=O),O.s>=E&&(!X||O.s<X.s)&&(X=O);return q?q.end:X?X.start:x()},ge=(w,E)=>{if(!E)return null;if(E.kind==="text"){let A=w.nodes.find(j=>j.node===E.node);return A?A.s+Math.min(E.offset,A.e-A.s):null}let P=w.atoms.find(A=>A.el===E.node);if(P)return E.kind==="after"?P.i+1:P.i;let x=w.marks.find(A=>A.el===E.node);return x?E.kind==="before"&&x.block&&w.text[x.from-1]===Et&&!w.marks.some(A=>A.block&&A.to===x.from)?x.from-1:E.kind==="startOf"||E.kind==="before"?x.from:E.kind==="end"&&x.block?x.to-1:x.to:null},Ue=(w,E,P,x)=>{for(let q of w.nodes)if(P==="start"?q.s<=E&&E<q.e:q.s<E&&E<=q.e)return{kind:"text",node:q.node,offset:E-q.s};let A=P==="start"?E:E-1;if(!w.atomAt.has(A)&&w.text[A]!==Et){for(let q of w.nodes)if(q.s===E||q.e===E)return{kind:"text",node:q.node,offset:E-q.s}}let j=w.atomAt.get(A);if(j)return{kind:P==="start"?"before":"after",node:j.el};if(w.text[A]===Et){let q=w.marks.find(O=>O.block&&O.to===A+1);if(q)return P==="start"?{kind:"end",node:q.el}:{kind:"after",node:q.el};let X=w.marks.find(O=>O.block&&O.from===A+1);if(X)return P==="start"?{kind:"before",node:X.el}:{kind:"startOf",node:X.el}}let G=w.marks.find(q=>q.block&&q.from===E);return G?{kind:"startOf",node:G.el}:x?{kind:P==="start"?"startOf":"end",node:x}:null},ke=w=>{if(!w)return null;if(w.kind==="wholeStart"||w.kind==="wholeEnd"){let E=Je(w.node);return w.kind==="wholeStart"?E.start:E.end}return lt(h.out,w)},Je=w=>{let E=w.firstChild,P=w.lastChild;return E&&E.nodeType===3&&P.nodeType===3?{start:B(h.out.pathOf(E),0),end:B(h.out.pathOf(P),P.nodeValue.length)}:{start:B(h.out.pathOf(w),0),end:B(h.out.pathOf(w),w.childNodes.length)}},kt=w=>{let E=Se(w,"base"),P=E?Q(L(E))[0]:null;if(!P)return null;let x=En(P),A=r(E);for(let j=A.indexOf(w)-1;j>=0;j--){let G=Q(L(A[j])).filter(q=>q.parentNode===x);if(G.length)return{kind:"after",node:G[G.length-1]}}return{kind:"startOf",node:P}},ht=(w,E,P,x,A,j)=>({text:w,start:E,end:P,fragment:x,span:A,scope:j}),wt=(w,E,P,x,A)=>ht(w,E,P,w.slice(E,P),x,A),ze=(w,E,P,x,A)=>(Y.spans.set(w,{start:E,end:P,scopeStart:x,scopeEnd:A}),w),Ot=new Map,T=new Map,re=(w,E,P)=>{let x=`text:${w.key}:${E}:${P}`,A=T.get(x)||0;return T.set(x,A+1),`${x}:${A}`},oe=(w,E)=>{let P,x,A,j="plain",G,q,X,O,C,Z=(k,N,D,U,W)=>{if(!k){let K=Ae(W,U);return wt("",0,0,{start:K,end:K},{start:K,end:K})}return wt(k.value,N,D,{start:pe(k,N,N===D?"end":"start",U),end:pe(k,D,"end",U)},{start:pe(k,0,"start",U),end:pe(k,k.value.length,"end",U)})};if(E.site==="run"){let{bRun:k,lRun:N,rRun:D,node:U,c:W}=E;P=L(k),x=W.bs,A=W.be,G=Z(k,W.bs,W.be,"base",k),q=Z(N,W.ls,W.le,"local",k),X=Z(D,W.rs,W.re,"remote",k);let K=U?U.nodeValue:"",te=ue=>U?{kind:"text",node:U,offset:ue}:kt(k);O=ze(wt(K,W.ms,W.me,{start:ke(te(W.ms)),end:ke(te(W.me))},{start:ke(te(0)),end:ke(te(K.length))}),te(W.ms),te(W.me),te(0),te(K.length)),C=U||(kt(k)||{}).node||null}else if(E.site==="whole"){let k=E.el,N=o.get(k);P=L(N.base),x=0,A=w.base.length;let D=(W,K,te)=>{let ue=Qe(K,te);return wt(W,0,W.length,ue,ue)};G=D(w.base,N.base,"base"),q=D(w.local,N.local,"local"),X=D(w.remote,N.remote,"remote");let U=Je(k);O=ze(wt(w.resolved,0,w.resolved.length,U,U),{kind:"wholeStart",node:k},{kind:"wholeEnd",node:k},{kind:"wholeStart",node:k},{kind:"wholeEnd",node:k}),C=k}else if(E.site==="comment"){let{bRun:k,lRun:N,rRun:D,node:U}=E;P=L(k),x=0,A=w.base.length;let W=(Ce,Pe)=>{if(!Ce){let Be=Ae(k,Pe);return wt("",0,0,{start:Be,end:Be},{start:Be,end:Be})}let Le=Ce.nodes[0],at={start:B(h[Pe].pathOf(Le),0),end:B(h[Pe].pathOf(Le),Ce.value.length)};return wt(Ce.value,0,Ce.value.length,at,at)};G=W(k,"base"),q=W(N,"local"),X=W(D,"remote");let K=w.resolved,te=Ce=>U?{kind:"text",node:U,offset:Ce}:kt(k),ue={start:ke(te(0)),end:ke(te(K.length))};O=ze(wt(K,0,K.length,ue,ue),te(0),te(K.length),te(0),te(K.length)),C=U||(kt(k)||{}).node||null}else{let{fb:k,fl:N,fr:D,scope:U}=E,W=E.merged;j="html",P=U.base?L(U.base):Ee(U.local,"local"),x=w.bs,A=w.be;let K=xt=>{let Rt=U[xt];for(let Mt=U.at-1;Mt>=0;Mt--){let zt=U.units[Mt],an=xt==="base"?zt:p(f(xt),zt);if(an&&Se(an,xt)===Rt)return an}return null},te=xt=>()=>fe(U[xt],K(xt),xt),ue=(xt,Rt,Mt,zt,an)=>{let yn=$e=>$e?lt(h[an],$e):te(an)(),qn=Rt===Mt?rt(xt,Rt):qe(xt,Rt,"start"),Bn=Rt===Mt?rt(xt,Rt):qe(xt,Mt,"end"),Nn=yn(qn),mn={start:Nn,end:Rt===Mt?Nn:yn(Bn)},nn=E.full?E.full(an):null;if(!nn)return ht(xt.text,Rt,Mt,zt,mn,{start:yn(qe(xt,0,"start")),end:yn(qe(xt,xt.text.length,"end"))});let ne=qn?ge(nn,qn):null,De=Bn?ge(nn,Bn):null,Ne=ne===null?0:ne,tt=Math.max(Ne,De===null?nn.text.length:De),pt=yn(qe(nn,0,"start"));return ht(nn.text,Ne,tt,yr(nn,Ne,tt),mn,{start:pt,end:nn.text.length?yn(qe(nn,nn.text.length,"end")):pt})};G=E.synthetic?null:ue(k,w.bs,w.be,w.base,"base"),q=ue(N,w.lss,w.lse,w.local,"local"),X=ue(D,w.rss,w.rse,w.remote,"remote");let[Ce,Pe]=w.range||[0,0],Le=W.out,at=()=>{let xt=En(W.node);for(let Rt=U.at-1;Rt>=0;Rt--){let Mt=Q(L(U.units[Rt])).filter(zt=>zt.parentNode===xt);if(Mt.length)return{kind:"after",node:Mt[Mt.length-1]}}for(let Rt=U.at;Rt<U.units.length;Rt++){let Mt=Q(L(U.units[Rt])).filter(zt=>zt.parentNode===xt);if(Mt.length)return{kind:"before",node:Mt[0]}}return{kind:"startOf",node:W.node}};if(Le.via)for(let[xt,Rt]of Le.via)I.set(xt,Rt);let Be=ce(W,Ce,Ce===Pe?"empty":"start",at),It=Ce===Pe?Be:ce(W,Pe,"end",at),We=Le.text.length?Ue(Le,0,"start",W.node):at(),St=Le.text.length?Ue(Le,Le.text.length,"end",W.node):We,mt=ge(Le,Be),tn=ge(Le,It),Bt=mt===null?0:mt,Qt=Math.max(Bt,tn===null?Le.text.length:tn);O=ze(ht(Le.text,Bt,Qt,yr(Le,Bt,Qt),{start:ke(Be),end:ke(It)},{start:ke(We),end:ke(St)}),Be,It,We,St);let Dt=Y.spans.get(O);if(Dt.flat=Le,!Le.text.length){let xt=ke(We),Rt=sr(d,xt),Mt=Rt[0],zt=Rt[1];Dt.empty={parent:Mt.nodeType===11?m.get(Mt):Mt,previous:Mt.childNodes[zt-1]||null,next:Mt.childNodes[zt]||null}}C=Be?Be.node:W.node}let ye=Ve(P),Re=(E.site==="whole"||E.site==="comment"||s!=="both")&&w.resolved!==w.local;return{key:E.site==="comment"&&Ot.get(P.b||P.l||P.r)||re(ye,x,A),subject:ye,localLost:Re,anchor:C,text:{encoding:j,base:G,local:q,remote:X,merged:O,liveSpan:null,liveScope:null}}},de=(w,E)=>{let P=V(E.el),x=Ve(P),A=E.sample;return{key:`attr:${x.key}:${A.namespaceURI||""}:${A.localName}`,subject:x,localLost:w.resolved!==w.local,anchor:E.el,attribute:{namespaceURI:A.namespaceURI||null,localName:A.localName,qualifiedName:A.name}}},ie=(w,E)=>{let P=w.detail,x=E.unit||L(E.subject),A=Ve(x),j=Y.refs.get(A),G=x.l?yt(x.l,"local"):null,q=x.r?yt(x.r,"remote"):null,X=j.length?et(j[0]):null,O,C,Z,ye=null,Re=null,k=E.deleted;switch(P){case"both-reordered":{O=C="reordered";let N=new Set(E.rKept),D=E.lKept.filter(ue=>N.has(ue)&&Q(L(ue)).length),U=ue=>v.get(Q(L(ue))[0]);ye=D.map(ue=>Ve(L(ue))),Re=D.slice().sort((ue,Ce)=>U(ue)-U(Ce)).map(ue=>Ve(L(ue)));let W=ue=>!sn(ue)&&ue.kind!=="comment"&&ue.nodes.every(Ce=>!/[^\t\n\f\r ]/.test(Ce.data)),K=D.filter(ue=>!W(ue)),te=K.slice().sort((ue,Ce)=>U(ue)-U(Ce));Z=K.some((ue,Ce)=>ue!==te[Ce]);break}case"both-moved":O=C="moved",Z=!G||!j.some(N=>{let D=N===j[0]?X:et(N);return D&&D.parent===G.parent});break;case"edit-beats-delete":O=k==="local"?"deleted":"edited",C=k==="remote"?"deleted":"edited",Z=k==="local";break;case"move-beats-delete":O=k==="local"?"deleted":"moved",C=k==="remote"?"deleted":"moved",Z=k==="local";break;default:O=C="inserted",Z=E.localLost}return{key:`structure:${A.key}:${P}`,subject:A,localLost:Z,anchor:j[0]||null,structure:{localAction:O,remoteAction:C,localPlacement:G,remotePlacement:q,mergedPlacement:X,localOrder:ye,mergedOrder:Re,localFragment:P==="both-reordered"||!x.l?null:Oe(x.l),fragmentKind:_(x.b||x.l||x.r)}}};for(let[w,E]of i){if(w.kind!=="structure")continue;let P=E.unit||L(E.subject),x=P.b||P.l||P.r;!sn(x)&&x.kind==="comment"&&Ot.set(x,`structure:${Ve(P).key}:${w.detail}`)}let he=new Map;for(let[w,E]of i){if(w.kind==="structure"){let j=Ve(E.unit||L(E.subject)),G=`structure:${j.key}:${w.detail}`,q=he.get(G);if(q&&q.structure){w.recovery=q;let X=Y.refs.get(j);w.el==null&&X.length&&(w.el=sn(X[0])?X[0]:h.out.logicalParent(X[0]));continue}}let P=w.kind==="text"?oe(w,E):w.kind==="attr"?de(w,E):ie(w,E),x=he.get(P.key);x||(x={version:tf,key:P.key,localLost:P.localLost,subject:P.subject,applied:!1,unavailable:null},he.set(P.key,x),Y.anchors.set(x,P.anchor)),P.text&&(x.text=P.text),P.attribute&&(x.attribute=P.attribute),P.structure&&(x.structure=P.structure),P.text&&(x.localLost=P.localLost),w.recovery=x;let A=Y.refs.get(P.subject);w.kind==="structure"&&w.el==null&&A.length&&(w.el=sn(A[0])?A[0]:h.out.logicalParent(A[0])),w.kind==="text"&&w.node==null&&A.length&&P.subject.nodeType===8&&(w.node=A[0])}return Y}}function Sl(e,t,n){if(!t)return;let{lookup:r,vetoed:o,vetoedAttrs:s,liveAttr:i}=n,l=n.ignored||(()=>!1),a=lr(n.liveRoot),u=se=>!!se&&a.containerPath(se)!==null,d=se=>{let V=se.parentNode;return V&&V.nodeType===11?t.outOwners.get(V)||null:V},h=se=>{for(let V=se;V;V=d(V))if(t.via.has(V)&&(V=t.via.get(V)),o.has(V)||n.vetoedLive?.has(g(V)))return!0;return!1},f=se=>Array.from(En(se).children).filter(V=>!l(V)),p=(se,V)=>f(se)[f(V.parentNode).indexOf(V)],b=(se,V)=>{let Se=null,ve=null,Me=0;for(let le=V.previousSibling;le;le=le.previousSibling){if(le.nodeType===1&&!l(le)){Se=le;break}le.nodeType===3&&(Me+=le.nodeValue.length)}for(let le=V.nextSibling;le&&!ve;le=le.nextSibling)le.nodeType===1&&!l(le)&&(ve=le);let He=Se?p(se,Se):null,Ve=ve?p(se,ve):null;if(Se&&!He||ve&&!Ve)return null;let it=[];for(let le=He?He.nextSibling:En(se).firstChild;le&&le!==Ve;le=le.nextSibling)le.nodeType===3&&it.push(le);return it.length?{nodes:it,lead:Me}:null},v=se=>{let V=[],Se=se;for(;Se&&!t.via.has(Se);Se=Se.parentNode)V.push(Se);if(!Se||!V.length)return null;let ve=g(t.via.get(Se));for(let Ve=V.length-1;Ve>0&&ve;Ve--)ve=p(ve,V[Ve]);if(!ve)return null;let Me=V[0];if(Me.nodeType===3)return b(ve,Me);let He=Me.nodeType===1?p(ve,Me):null;return He?{nodes:[He],lead:0}:null},m=se=>{let V=r(se),Se=V?{nodes:Array.isArray(V)?V:[V],lead:0}:t.via.size?v(se):null;if(!Se)return null;let ve=Se.nodes.filter(u);return ve.length?{nodes:ve,lead:Se.lead}:null},g=se=>{let V=m(se);return V?V.nodes[0]:null},y=se=>{if(!se)return null;if(se.kind==="text"){let Me=m(se.node);if(!Me)return null;let He=Me.nodes,Ve=se.offset+Me.lead,it=0;for(let le=0;le<He.length;le++){let yt=He[le].nodeValue.length;if(Ve<=it+yt||le===He.length-1)return Ve>=it&&Ve<=it+yt?[He[le],Ve-it]:null;it+=yt}return null}let V=g(se.node);if(!V)return null;if(se.kind==="end")return[En(V),En(V).childNodes.length];if(se.kind==="startOf")return[En(V),0];if(se.kind==="wholeStart")return V.firstChild?[V.firstChild,0]:[V,0];if(se.kind==="wholeEnd")return V.lastChild?[V.lastChild,V.lastChild.nodeValue.length]:[V,V.childNodes.length];let Se=V.parentNode;if(!Se)return null;let ve=Array.prototype.indexOf.call(Se.childNodes,V);return[Se,se.kind==="after"?ve+1:ve]},I=se=>({blocks:new Set((se.flat?.marks||[]).filter(V=>V.block).map(V=>g(V.el)).filter(Boolean)),atoms:new Set((se.flat?.atoms||[]).map(V=>g(V.el)).filter(Boolean)),ignored:l}),Y=(se,V,Se,ve)=>{if(!se||!V||!ir(se)||!ir(V))return!1;for(let Ve of[se,V])if(!u(Ve.startContainer)||!u(Ve.endContainer))return!1;let Me=Se.merged;if(Me.start===Me.end&&(se.startContainer!==se.endContainer||se.startOffset!==se.endOffset))return!1;let He=I(ve);return Wn(V,Se.encoding,He)===Me.text&&Wn(se,Se.encoding,He)===Me.text.slice(Me.start,Me.end)},$=new Map,H=se=>{let V=se.parentNode;return V?($.has(V)||$.set(V,new Map(Array.from(V.childNodes,(Se,ve)=>[Se,ve]))),$.get(V).get(se)):-1},z=(se,V)=>{if(!V)return!1;let Se=a.logicalParent(se);if(!V.parent.live.includes(Se))return!1;let ve=H(se);for(let[Me,He]of[["before",1],["after",-1]]){let Ve=ve;for(let it of V[Me]){if(it.live.includes(se))continue;let le=it.live.filter(et=>et!==se&&et.parentNode===se.parentNode);if(!le.length)continue;let yt=He===1?Math.min(...le.map(H)):Math.max(...le.map(H));if(He*(yt-Ve)<=0)return!1;Ve=yt}}return!0},ae=se=>{let V=se.structure;if(V.mergedOrder){let Se=new Set(se.subject.live.map(En)),ve=null,Me=-1;for(let He of V.mergedOrder){let Ve=He.live.find(it=>Se.has(it.parentNode));if(!Ve||ve&&Ve.parentNode!==ve||H(Ve)<=Me)return!1;ve=Ve.parentNode,Me=H(Ve)}return se.subject.live.length>0}return se.subject.live.some(Se=>z(Se,V.mergedPlacement))},me=(se,V)=>{let Se=y(se),ve=y(V);return Se&&ve?{startContainer:Se[0],startOffset:Se[1],endContainer:ve[0],endOffset:ve[1]}:null},Q=new Set,L=se=>{if(!se||Q.has(se))return;Q.add(se);let V=[];for(let Se of t.refs.get(se)||[]){let ve=m(Se);if(ve)for(let Me of ve.nodes)V.includes(Me)||V.push(Me)}se.live=V},Ee=se=>{se&&(L(se.parent),se.before.forEach(L),se.after.forEach(L))},xe=new Set;for(let se of e){let V=se.recovery;if(!V||xe.has(V))continue;xe.add(V),L(V.subject),V.structure&&(Ee(V.structure.localPlacement),Ee(V.structure.remotePlacement),Ee(V.structure.mergedPlacement),(V.structure.localOrder||[]).forEach(L),(V.structure.mergedOrder||[]).forEach(L));let Se=t.anchors.get(V),ve=Se?g(Se):null,Me=!!ve;if(V.text){let _=t.spans.get(V.text.merged),B=_?me(_.start,_.end):null,fe=_?me(_.scopeStart,_.scopeEnd):null;if(_?.empty){let Ae=_.empty,pe=Ae.previous?{kind:"after",node:Ae.previous}:{kind:"startOf",node:Ae.parent},Qe=Ae.next?{kind:"before",node:Ae.next}:{kind:"end",node:Ae.parent},qe=me(pe,Qe);!qe||qe.startContainer!==qe.endContainer||qe.startOffset!==qe.endOffset?B=null:B=fe=qe}Y(B,fe,V.text,_)||(B=fe=null),V.text.liveSpan=B,V.text.liveScope=B?fe:null,B||(Me=!1)}V.structure&&Me&&(Me=ae(V)),V.attribute&&Me&&(Me=i(ve,V.attribute,se.resolved));let He=(!!V.attribute||!!V.text&&ve?.tagName==="TEXTAREA")&&!!s&&[Se,ve].some(_=>s.get(_)?.has(V.attribute?V.attribute.qualifiedName:"value")),Ve=t.localState?.states.get(V),it=!!V.text&&[...n.removedVetoes||[]].some(_=>Ve?.touched.has(_)),le=V.structure?.localAction==="inserted"&&[...o].some(_=>_===Se||Se?.contains(_)),yt=Se&&h(Se)||He||it||le,et=yt&&wl(V,se,t,u);et&&(it||le&&V.localLost)&&(Me=!1);let Oe=!Me&&et&&yt;V.applied=Me,V.unavailable=Me?null:Oe?"hook-veto":"missing-output",Oe&&(V.localLost=!1),!Me&&V.text&&(V.text.liveSpan=V.text.liveScope=null)}}function Lo(e,t,n){let r=lr(t),o=lr(n),s=h=>!!h&&o.containerPath(h)!==null,i=h=>{if(h===t)return n;let f=r.pathOf(h);if(f&&t!==n){let p=sr(n,{path:f,offset:0});if(p&&p[0].nodeType===h.nodeType)return p[0]}return h},l=new Set,a=h=>{!h||l.has(h)||(l.add(h),h.live=h.live.map(i).filter(s))},u=h=>{h&&(h.startContainer=i(h.startContainer),h.endContainer=i(h.endContainer))},d=new Set;for(let h of e){h.node===t&&n.tagName==="SCRIPT"&&(h.node=n),h.el===t&&h.kind==="structure"&&(h.el=n);let f=h.recovery;if(!f||d.has(f))continue;if(d.add(f),a(f.subject),f.text){u(f.text.liveSpan),u(f.text.liveScope);let b=f.text.liveSpan,v=f.text.liveScope,m=f.text.merged,g=y=>!!y&&ir(y)&&s(y.startContainer)&&s(y.endContainer);(!g(b)||!g(v)||Wn(v,f.text.encoding)!==m.text||Wn(b,f.text.encoding)!==m.text.slice(m.start,m.end))&&(f.text.liveSpan=null,f.text.liveScope=null,f.applied=!1,f.unavailable="missing-output")}let p=f.structure;if(p){for(let b of[p.localPlacement,p.remotePlacement,p.mergedPlacement])b&&(a(b.parent),b.before.forEach(a),b.after.forEach(a));(p.localOrder||[]).forEach(a),(p.mergedOrder||[]).forEach(a),f.subject.live.length||(f.applied=!1,f.unavailable="missing-output")}}}var st=e=>!!e&&e.nodeType===1,nf=new Set("P H1 H2 H3 H4 H5 H6 DIV LI DD DT BLOCKQUOTE FIGCAPTION SUMMARY ADDRESS".split(" ")),Tl=5e4,Jr="[id],[data-id],script,head>*";function Ws(e,t){return n=>{if(e!==null&&n.tagName==="SCRIPT"){let r=vr(n,e);if(r)return"merge:"+r.key}return n.parentElement&&n.parentElement.tagName==="HEAD"?hl(n,t):null}}function Io(e,t,n,r){let o=r.ignored,s=r.stats||Un(),i=el({ignored:o,ignoreAttribute:r.ignoreAttribute,stats:s}),{unitsOf:l,meta:a}=i,u=r.baseURI,d=r.mergeTags!==null,h=Ws(r.mergeTags,u),f=k=>N=>{let D=h(N);return D!==null?D:k(N)},p=f(r.identity.base),b=f(r.identity.local),v=f(r.identity.remote),m=r.authored||r.identity,g=k=>k&&k.nodeType===9?k.documentElement:k,y=g(e),I=g(t),Y=g(n),$=globalThis.__hyperMorphProfile,H=$?performance.now():0,z=k=>k===bn?Jr:null,ae=r.scope||null,me=ae?ae.baseIndex:_o(y,p,o,z(r.identity.base)),Q=r.localIsBase||y===I?_l():Cs(y,I,{analyzer:i,baseIndex:me,sideIndex:_o(I,b,o,z(r.identity.local)),baseId:m.base,sideId:m.local,stats:s}),L=Cs(y,Y,{analyzer:i,baseIndex:me,sideIndex:ae?ae.remoteIndex:_o(Y,v,o,z(r.identity.remote)),baseId:m.base,sideId:m.remote,stats:s,scope:ae,comparisons:r.comparisons});if(ae){if(!ae.held(L))return null;for(let k of ae.dropped)Os(k)}let Ee=null;function xe(k){if(!Ee){Ee=new WeakMap;let N=[y];for(;N.length;){let D=N.pop();D.tagName==="TEMPLATE"&&D.content&&Ee.set(D.content,D);for(let U of i.childrenOf(D))U.nodeType===1&&N.push(U)}}return Ee.get(k)||null}let se=k=>{let N=st(k)||k.nodeType?k.parentNode:k.parent;return N&&N.nodeType===11?xe(N):N};ge(),Ue(Q,L),Ue(L,Q);for(let k of[Q,L])if(k.refused)for(let N of k.refused)k.moved.has(N)||s.ambiguousMoves++;$&&($.alignTotal=($.alignTotal||0)+(performance.now()-H),H=performance.now());let V=y.ownerDocument.implementation.createHTMLDocument(""),Se=new WeakMap,ve=new WeakMap,Me=[],He=[],Ve=new Set,it=[],le=new Set,yt=new Set,et=new Set,Oe=new WeakMap,_=r.conflicts||"remote",B=k=>Me.push(k),fe=k=>Me.push(k),Ae=Al({roots:{base:y,local:I,remote:Y},L:Q,R:L,unitsOf:l,provenance:Se,policy:_}),pe=(k,N)=>{He.push(k),N&&Ae.note(k,N)},Qe=ee(),qe=wt(y,Q.map.get(y),L.map.get(y),!!r.localIsBase,!!r.childrenOnly);qe.tagName==="HTML"?V.replaceChild(qe,V.documentElement):V.body.appendChild(qe),$&&($.build=($.build||0)+(performance.now()-H));let rt=r.childrenOnly?!q(j(qe),j(Y)):!P(qe,Y),lt=Ae.finish(qe);return{doc:V,root:qe,provenance:Se,textMappers:ve,decisions:Me,conflicts:He,recoveryLinks:lt,localDiverged:rt,mergedScripts:Ve,segments:it,remoteIdOf:r.identity.remote,customIdentity:r.identity.remote!==bn,L:Q,R:L,stats:s};function ee(){let k=new Map,N=new Set;if(r.localIsBase||!Q.insertedByHash)return{partner:k,drop:N};let D=Q.insertedByHash(),U=L.insertedByHash();if(!D.size||!U.size)return{partner:k,drop:N};let W={ignored:o,remoteWins:r.remoteWins,inlineCache:Oe},K=We=>{let St=0;for(let mt=We.parentNode;mt;mt=mt.parentNode)St++;return St},te=[],ue=We=>{let St=We.textContent.trim();return St.split(/\s+/).length>=3||St.replace(/\s/g,"").length>=12},Ce=We=>{let St=ke(Q,We),mt=ke(L,We);return St&&Q.reverse.get(St.parentNode)!==We.parentNode||mt&&L.reverse.get(mt.parentNode)!==We.parentNode},Pe=(We,St,mt)=>{for(let Bt of mt.parentNode.children){let Qt=Bt!==mt&&We.reverse.get(Bt);if(Qt&&Ce(Qt))return!0}let tn=We.reverse.get(mt.parentNode);if(tn){for(let Bt of tn.children)if(!ke(St,Bt)&&!o(Bt))return!0}return!1};for(let[We,St]of D){let mt=U.get(We);if(!mt)continue;let tn=St.length===1&&mt.length===1;for(let Bt of St)or(Bt,W)||te.push([Bt,mt,K(Bt),tn&&(ue(Bt)||Pe(Q,L,Bt)||Pe(L,Q,mt[0]))])}if(!te.length)return{partner:k,drop:N};te.sort((We,St)=>We[2]-St[2]);let Le=new Set,at=new Set,Be=We=>{for(let St of We.querySelectorAll("*"))Le.add(St)},It=(We,St)=>We.reverse.get(St.parentNode)||null;for(let[We,St,,mt]of te){if(Le.has(We))continue;let tn=It(Q,We),Bt=Dt=>!at.has(Dt)&&!Le.has(Dt)&&Dt.tagName===We.tagName&&i.equalUnits(We,Dt),Qt=St.find(Dt=>tn&&It(L,Dt)===tn&&Bt(Dt))||(mt?St.find(Bt):null);Qt&&(at.add(Qt),Be(We),Be(Qt),!(tn&&It(L,Qt)===tn)&&(k.set(We,Qt),k.set(Qt,We),N.add(_==="local"?Qt:We)))}return{partner:k,drop:N}}function ce(k,N,D){if(le.add(k),Qe.drop.has(k))return null;le.add(D);let U=N==="local"?k:D,W=N==="local"?D:k,K;return i.equalUnits(U,W)?(K=w(U,"local",!0),Se.get(K).remote=W):K=he(U,W),pe({kind:"structure",el:K,detail:"both-moved",base:null,local:U,remote:W},{unit:{b:null,l:U,r:W}}),B({kind:"insert",el:K,source:"both"}),K}function ge(){if(!Q.weak||!L.weak||!Q.weak.size||!L.weak.size||!Q.unpair)return;let k=new Map;for(let D of Q.weak){let U=ke(Q,D);st(D)&&st(U)&&k.set(i.unitHash(U),D)}let N=!1;for(let D of Array.from(L.weak)){let U=ke(L,D);if(!st(D)||!st(U))continue;let W=k.get(i.unitHash(U));if(!W||W===D||!Q.weak.has(W)||ke(Q,D)&&ke(L,W))continue;let K=ke(Q,W);K.tagName===U.tagName&&i.equalUnits(K,U)&&(Q.unpair(W),L.unpair(D),N=!0)}N&&(Q.rematch(),L.rematch())}function Ue(k,N){if(!k.weak||!k.weak.size||!N.insertedByHash)return;let D=N.insertedByHash();if(!D.size)return;let U=!1;for(let W of Array.from(k.weak)){let K=ke(k,W);if(!K)continue;let te=D.get(i.unitHash(K));te&&te.some(ue=>ue.tagName===K.tagName&&i.equalUnits(ue,K))&&(k.unpair(W),U=!0)}U&&k.rematch()}function ke(k,N){if(!N)return null;if(k.map.has(N))return k.map.get(N);let D=[],U=se(N);for(;U&&!k.map.has(U);U=se(U))D.push(U);let W=U;if(!W||!k.identical.has(W))return null;k.pairIdenticalChildren(W);for(let te=D.length-1;te>=0;te--)k.pairIdenticalChildren(D[te]);let K=k.map.get(N)||null;return K&&s.lazyTwins++,K}function Je(k,N,D){if(yt.has(k)||et.has(k))return pe({kind:"structure",el:null,detail:"both-moved",base:k},{subject:k}),yt.has(k)?null:w(D,N);let U=ke(Q,k),W=ke(L,k);(!U||!W)&&pe({kind:"structure",el:null,detail:"move-beats-delete",base:k},{subject:k,deleted:U?"remote":"local"});let K=wt(k,U,W,!1);return(N==="local"?B:fe)({kind:"move",el:K,source:N}),K}function kt(k,N,D,U){return U||!N||N===D?{el:D,asBase:!0,twin:W=>W,baseOf:W=>W,units:l(D),here:()=>!0,parentOfTwin:()=>D}:{el:N,asBase:!1,twin:W=>ke(k,W),baseOf:W=>k.reverse.get(W),units:l(N),here:W=>st(W)?W.parentNode===N||N.tagName==="TEMPLATE"&&W.parentNode===N.content:W.parent===N||N.tagName==="TEMPLATE"&&W.parent===N.content}}function ht(k,N,D){return!N||D&&D.identical.has(k)?!1:st(k)?!i.equalUnits(k,N):k.value!==N.value}function wt(k,N,D,U,W=!1){let K=U||r.remoteWins(k),te=k.namespaceURI&&k.namespaceURI!=="http://www.w3.org/1999/xhtml"?V.createElementNS(k.namespaceURI,k.tagName):V.createElement(k.tagName),ue={base:k,local:N||null,remote:D||null};if(Se.set(te,ue),le.add(k),yt.add(k),N&&le.add(N),D&&le.add(D),r.skipUnchanged&&!W&&(r.localIsBase||Q.identical.has(k))&&D&&L.identical.has(k)&&!r.remoteWins(k)){ue.unchanged=!0;for(let Pe of k.attributes)Pe.namespaceURI?te.setAttributeNS(Pe.namespaceURI,Pe.name,Pe.value):te.setAttribute(Pe.name,Pe.value);return te}et.add(k),W||T(k,K?k:N,D,te);let Ce=k.tagName;if(un(k))Ot(k,K?k:N,D,te);else if(Ce==="TEXTAREA")te.textContent=ze(k.textContent,(K?k:N)?(K?k:N).textContent:k.textContent,D?D.textContent:k.textContent,te,"text");else{let Pe=E(k,N,D,K,te),Le=Ce==="TEMPLATE"&&te.content?te.content:te;for(let at of Pe)Le.appendChild(at)}return et.delete(k),te}function ze(k,N,D,U,W){if(N===D)return N;if(N===k)return D!==k&&fe({kind:W,node:U,source:"remote"}),D;if(D===k)return B({kind:W,node:U,source:"local"}),N;let K=_==="local"?N:D;return pe({kind:W,node:U,base:k,local:N,remote:D,resolved:K},{site:"whole",el:U}),Me.push({kind:W,node:U,source:"both"}),K}function Ot(k,N,D,U){let W=k.textContent,K=N?N.textContent:W,te=D?D.textContent:W,ue=d?vr(k,r.mergeTags,!0):null;if(ue&&K!==te){let Ce=D&&D.getAttribute("merge-key")||k.getAttribute("merge-key"),{text:Pe,warnings:Le}=Vs(r.localIsBase?void 0:W,K,te,{parse:ue.recognizer.parse,keyCandidates:Ce?Ce.split(/[\s,]+/).filter(Boolean):void 0});for(let at of Le)console.warn(`[hyper-morph] merge "${ue.raw}": ${at}`);U.textContent=Pe,Ve.add(U),Pe!==te?B({kind:"text",node:U,source:Pe===K?"local":"both"}):Pe!==W&&fe({kind:"text",node:U,source:"remote"});return}U.textContent=ze(W,K,te,U,"text")}function T(k,N,D,U){let W=new Map;for(let K of[k,N,D])if(K)for(let te of K.attributes)r.ignoreAttribute(K,te.name)||W.set(te.name,te);for(let[K,te]of W){let ue=k?k.getAttribute(K):null,Ce=N?N.getAttribute(K):ue,Pe=D?D.getAttribute(K):ue,Le;Ce===Pe?Le=Ce:Ce===ue?(Le=Pe,fe({kind:"attr",el:U,name:K,source:"remote"})):Pe===ue?(Le=Ce,B({kind:"attr",el:U,name:K,source:"local"})):(Le=re(K,ue,Ce,Pe),Le===void 0&&(Le=_==="local"?Ce:Pe,pe({kind:"attr",el:U,name:K,base:ue,local:Ce,remote:Pe,resolved:Le},{el:U,sample:te})),Me.push({kind:"attr",el:U,name:K,source:"both"})),Le!=null&&(te.namespaceURI?U.setAttributeNS(te.namespaceURI,te.name,Le):U.setAttribute(K,Le))}}function re(k,N,D,U){if(k==="class"){let W=Pe=>new Set((Pe||"").split(/\s+/).filter(Boolean)),K=W(N),te=W(D),ue=W(U),Ce=new Set;for(let Pe of new Set([...K,...te,...ue])){let Le=K.has(Pe),at=te.has(Pe),Be=ue.has(Pe);(at===Be?at:at===Le?Be:at)&&Ce.add(Pe)}return[...Ce].join(" ")}if(k==="style"){let W=Le=>{let at=new Map;if(!Le)return at;let Be=0,It=null,We="",St=()=>{let mt=We.indexOf(":");mt>0&&at.set(We.slice(0,mt).trim(),We.slice(mt+1).trim()),We=""};for(let mt of Le){if(It){We+=mt,mt===It&&(It=null);continue}if(mt==='"'||mt==="'"){It=mt,We+=mt;continue}if(mt==="("?Be++:mt===")"&&Be--,mt===";"&&Be===0){St();continue}We+=mt}return We.trim()&&St(),at},K=W(N),te=W(D),ue=W(U),Ce=new Map,Pe=!1;for(let Le of new Set([...K.keys(),...te.keys(),...ue.keys()])){let at=K.get(Le)??null,Be=te.get(Le)??null,It=ue.get(Le)??null,We;Be===It?We=Be:Be===at?We=It:It===at?We=Be:(We=_==="local"?Be:It,Pe=!0),We!=null&&Ce.set(Le,We)}return Pe?void 0:[...Ce].map(([Le,at])=>`${Le}: ${at}`).join("; ")}}function oe(k,N,D,U){let W=k.value,K=U?W:N?N.value:"",te=D?D.value:"";le.add(k),N&&le.add(N),D&&le.add(D);let ue=Kr(W,K,te,_),Ce=ue.text===""?null:V.createTextNode(ue.text);Ce&&(Se.set(Ce,{base:k.nodes,local:N?N.nodes:null,remote:D?D.nodes:null}),ve.set(Ce,ue.mapLocalOffset)),K!==W&&te!==W?Me.push({kind:"text",node:Ce,source:"both"}):K!==W?B({kind:"text",node:Ce,source:"local"}):te!==W&&fe({kind:"text",node:Ce,source:"remote"});for(let Pe of ue.conflicts)pe({kind:"text",node:Ce,base:W.slice(Pe.bs,Pe.be),local:Pe.local,remote:Pe.remote,resolved:Pe.resolved},{site:"run",bRun:k,lRun:N,rRun:D,node:Ce,c:Pe});return Ce}function de(k,N){return Gr(k,N).every(D=>D.bs===D.be)}function ie(k,N){let D=k?k.value:"",U=N?N.value:"",W;if(D===U||!U?W=D:D?de(D,U)?W=U:de(U,D)?W=D:(W=_==="local"?D:_==="both"?D+U:U,pe({kind:"structure",el:null,detail:"insert-collision",local:D,remote:U,resolved:W},{unit:{b:null,l:k,r:N},localLost:_==="remote"})):W=U,k&&le.add(k),N&&le.add(N),W==="")return null;let K=V.createTextNode(W);return Se.set(K,{base:null,local:k?k.nodes:null,remote:N?N.nodes:null}),D?B({kind:"insert",el:K,source:U&&D===U?"both":"local"}):fe({kind:"insert",el:K,source:"remote"}),K}function he(k,N){let D={ignored:o,remoteWins:r.remoteWins,inlineCache:Oe},U=ue=>l(ue).every(Ce=>st(Ce)?or(Ce,D):Ce.kind==="text"),W=null;if(U(k)&&U(N)){let ue=k.textContent,Ce=N.textContent;ue===Ce||de(Ce,ue)?W=N:de(ue,Ce)&&(W=k)}if(!W){let ue=_==="local",Ce=w(ue?k:N,ue?"local":"remote",!0),Pe=Se.get(Ce);return ue?Pe.remote=N:Pe.local=k,pe({kind:"structure",el:Ce,detail:"insert-collision",local:k,remote:N,resolved:ue?k:N},{unit:{b:null,l:k,r:N},localLost:!ue}),Ce}let K=k.namespaceURI&&k.namespaceURI!=="http://www.w3.org/1999/xhtml"?V.createElementNS(k.namespaceURI,k.tagName):V.createElement(k.tagName);T(null,k,N,K),Se.set(K,{base:null,local:k,remote:N}),le.add(k),le.add(N);let te=$s({base:Array.from(W.childNodes),local:Array.from(k.childNodes),remote:Array.from(N.childNodes),out:V,policy:_,idOf:{local:b,remote:v},ignored:o,ignoreAttribute:r.ignoreAttribute,remoteWins:r.remoteWins,provenance:Se,textMappers:ve,conflicts:He,conflict:pe,scope:{base:null,local:k,remote:N,units:[],at:0},synthetic:!0,decisions:Me,node:K});it.push(...te.segments);for(let ue of te.nodes)K.appendChild(ue);return K}function w(k,N,D=!1){if(!D&&st(k)){let te=Qe.partner.get(k);if(te)return ce(k,N,te)}if(!st(k)){if(k.value==="")return null;let te=k.kind==="comment"?V.createComment(k.value):V.createTextNode(k.value);return Se.set(te,{base:null,local:N==="local"?k.nodes:null,remote:N==="remote"?k.nodes:null}),le.add(k),te}let U=k.namespaceURI&&k.namespaceURI!=="http://www.w3.org/1999/xhtml"?V.createElementNS(k.namespaceURI,k.tagName):V.createElement(k.tagName);for(let te of k.attributes)te.namespaceURI?U.setAttributeNS(te.namespaceURI,te.name,te.value):U.setAttribute(te.name,te.value);Se.set(U,{base:null,local:N==="local"?k:null,remote:N==="remote"?k:null}),le.add(k);let W=k.tagName==="TEMPLATE"&&U.content?U.content:U,K=N==="local"?Q:L;for(let te of l(k)){let ue=st(te)?K.reverse.get(te):null;if(ue&&yt.has(ue)){pe({kind:"structure",el:null,detail:"both-moved",base:ue},{subject:ue});continue}if(ue&&!et.has(ue)){let Pe=ke(Q,ue)||null,Le=ke(L,ue)||null;if(Pe||Le){let at=wt(ue,Pe,Le,!1);N==="local"?B({kind:"move",el:at,source:"local"}):fe({kind:"move",el:at,source:"remote"}),W.appendChild(at);continue}}let Ce=w(te,N);Ce&&W.appendChild(Ce)}return U}function E(k,N,D,U,W){N&&Q.identical.has(k)&&Q.pairIdenticalChildren(k),D&&L.identical.has(k)&&L.pairIdenticalChildren(k);let K=kt(Q,N,k,U),te=kt(L,D,k,!1),ue=l(k),Ce=new Set(ue),Pe=new Map;for(let ne=0;ne<ue.length;ne++)Pe.set(ue[ne],ne);let Le=[],at=new Set,Be=new Map,It=new Set,We=new Set,St=[];nn();let mt=ne=>{let De=[];for(let Ne of ne.units){if(We.has(Ne))continue;let tt=ne.baseOf(Ne);tt&&Ce.has(tt)&&De.push(tt)}return De},tn=ne=>mt(ne).map(De=>Pe.get(De)),Bt=ne=>ne.every((De,Ne)=>Ne===0||De>=ne[Ne-1]),Qt=!K.asBase&&!Bt(tn(K)),Dt=!te.asBase&&!Bt(tn(te));Qt&&Dt&&pe({kind:"structure",el:W,detail:"both-reordered",base:k},{subject:k,lKept:mt(K),rKept:mt(te)});let xt=Dt||!Qt?{V:te,A:L,side:"remote",other:K,otherA:Q,otherSide:"local"}:{V:K,A:Q,side:"local",other:te,otherA:L,otherSide:"remote"};Qt?B({kind:"move",el:null,source:Dt?"both":"local",base:k}):Dt&&fe({kind:"move",el:null,source:"remote",base:k});let Rt=K.asBase?[]:K.units.filter(ne=>!K.baseOf(ne)&&!We.has(ne)&&!Qe.partner.has(ne)),Mt=te.asBase?[]:te.units.filter(ne=>!te.baseOf(ne)&&!We.has(ne)&&!Qe.partner.has(ne)),zt=new Map;if(Rt.length&&Mt.length){let ne=new Map,De=new Map;for(let $e of Mt){if(st($e)){let ct=v($e);ct&&ne.set(ct,$e)}let Ye=i.unitHash($e);De.has(Ye)||De.set(Ye,[]),De.get(Ye).push($e)}let Ne=($e,Ye)=>{let ct=$e.units.indexOf(Ye);for(let Ke=ct-1;Ke>=0;Ke--){let ft=$e.baseOf($e.units[Ke]);if(ft)return ft}return"start"},tt=new Map,pt=new Map;for(let $e of Mt){let Ye=Ne(te,$e);st($e)?(pt.has(Ye)||pt.set(Ye,[]),pt.get(Ye).push($e)):$e.kind==="text"&&!tt.has(Ye)&&tt.set(Ye,$e)}for(let $e of Rt){let Ye=null;if(st($e)){let ct=b($e);ct&&ne.has(ct)&&!zt.has(ne.get(ct))&&(Ye=ne.get(ct))}else if($e.kind==="text"){let ct=tt.get(Ne(K,$e));ct&&!zt.has(ct)&&(Ye=ct)}if(!Ye){let ct=De.get(i.unitHash($e));ct&&(Ye=ct.find(Ke=>!zt.has(Ke)&&st(Ke)===st($e)&&(st(Ke)?Ke.tagName===$e.tagName:Ke.kind===$e.kind)&&i.equalUnits($e,Ke))||null)}if(!Ye&&st($e)){let ct=m.local($e),Ke=(pt.get(Ne(K,$e))||[]).filter(ft=>{let cn=m.remote(ft);return!zt.has(ft)&&ft.tagName===$e.tagName&&!(ct&&cn&&ct!==cn)&&i.similar($e,ft)});Ke.length===1&&(Ye=Ke[0])}Ye&&(zt.set(Ye,$e),zt.set($e,Ye))}}let an=ne=>{if(le.has(ne))return Be.get(ne)||null;let De=K.twin(ne),Ne=te.twin(ne),tt=De&&!K.asBase&&!K.here(De),pt=Ne&&!te.asBase&&!te.here(Ne);if(tt||pt){if((!De||!Ne)&&pe({kind:"structure",el:null,detail:"move-beats-delete",base:ne},{subject:ne,deleted:De?"remote":"local"}),!Z(ne))return le.add(ne),null;pe({kind:"structure",el:null,detail:"both-moved",base:ne},{subject:ne})}if(!De&&!Ne)return le.add(ne),fe({kind:"remove",source:"both",base:ne}),null;if(!De&&!ht(ne,Ne,L))return le.add(ne),B({kind:"remove",source:"local",base:ne}),null;if(!Ne&&!ht(ne,De,Q))return le.add(ne),fe({kind:"remove",source:"remote",base:ne}),null;let $e=!De||!Ne,Ye=K.asBase?ke(Q,ne)||null:De,ct=te.asBase&&st(ne)&&(L.identityPaired.has(ne)||!m.base(ne))&&ke(L,ne)||Ne,Ke;return st(ne)?Ke=wt(ne,Ye,ct,K.asBase):ne.kind==="comment"?Ke=O(ne,Ye,Ne,K.asBase):Ke=oe(ne,Ye,Ne,K.asBase),le.add(ne),Ke&&(Be.set(ne,Ke),De&&Be.set(De,Ke),Ne&&Be.set(Ne,Ke),$e&&(pe({kind:"structure",el:Ke,detail:"edit-beats-delete",base:ne},{subject:ne,deleted:De?"remote":"local"}),De?B({kind:"insert",el:Ke,source:"local"}):fe({kind:"insert",el:Ke,source:"remote"}))),Ke},yn=(ne,De,Ne,tt)=>{if(le.has(ne))return Be.get(ne)||null;let pt=De.baseOf(ne);if(pt&&Ce.has(pt))return We.has(pt)&&!We.has(ne)?qn(pt,ne,tt):an(pt);if(pt)return Bn(pt,ne,tt);let $e=zt.get(ne);if($e){let ct=tt==="local"?ne:$e,Ke=tt==="local"?$e:ne,ft;return st(ct)?i.equalUnits(ct,Ke)?(ft=w(ct,"local"),Se.get(ft).remote=Ke):ft=he(ct,Ke):ft=ie(ct,Ke),le.add(ct),le.add(Ke),ft&&(Be.set(ct,ft),Be.set(Ke,ft),st(ct)&&B({kind:"insert",el:ft,source:"both"})),ft}let Ye=w(ne,tt);return Ye&&(Be.set(ne,Ye),tt==="local"?B({kind:"insert",el:Ye,source:"local"}):fe({kind:"insert",el:Ye,source:"remote"})),Ye},qn=(ne,De,Ne)=>{let tt;return st(ne)?(tt=Je(ne,Ne,De),tt&&le.add(De)):(tt=w(De,Ne),le.add(De),tt&&(Ne==="local"?B:fe)({kind:"insert",el:tt,source:Ne})),tt&&Be.set(De,tt),tt},Bn=(ne,De,Ne)=>{let pt=ke(Ne==="local"?L:Q,ne),$e=De,Ye=pt?ye(pt,Ne==="local"?D:N,Ne==="local"?L:Q):!1,ct=pt&&!Ye&&!Re(ne,pt);if(ct&&Ne===xt.otherSide)return pe({kind:"structure",el:null,detail:"both-moved",base:ne},{subject:ne}),null;if(ct&&pe({kind:"structure",el:null,detail:"both-moved",base:ne},{subject:ne}),pt||pe({kind:"structure",el:null,detail:"move-beats-delete",base:ne},{subject:ne,deleted:Ne==="local"?"remote":"local"}),et.has(ne)){pe({kind:"structure",el:null,detail:"both-moved",base:ne},{subject:ne});let ft=w($e,Ne);return ft&&Be.set(De,ft),ft}let Ke=st(ne)?wt(ne,Ne==="local"?$e:ke(Q,ne)||null,Ne==="remote"?$e:ke(L,ne)||null,!1):null;return Ke&&(Be.set(ne,Ke),Be.set(De,Ke),pt&&Be.set(pt,Ke),Ne==="local"?B({kind:"move",el:Ke,source:"local"}):fe({kind:"move",el:Ke,source:"remote"})),Ke};for(let ne of xt.V.units){if(We.has(ne)){let Ne=Be.get(ne);at.has(Ne)||(Le.push(Ne),at.add(Ne));continue}if(le.has(ne)&&!(Be.get(ne)&&at.has(Be.get(ne)))){let Ne=xt.V.baseOf(ne);Ne&&!Ce.has(Ne)&&pe({kind:"structure",el:null,detail:"both-moved",base:Ne},{subject:Ne});continue}let De=yn(ne,xt.V,xt.A,xt.side);De&&!at.has(De)&&(Le.push(De),at.add(De),!xt.V.baseOf(ne)&&!zt.has(ne)&&!We.has(ne)&&It.add(De))}for(let ne of St)at.has(ne.frag)||(Le.splice(Nn(ne.at),0,ne.frag),at.add(ne.frag));if(!xt.other.asBase){let ne=xt.other,De=xt.otherSide,Ne=xt.otherA,tt=null,pt=0,$e=null;for(let Ye of ne.units){let ct=Be.get(Ye);if(ct&&at.has(ct)){tt=ct,$e=null;continue}if(le.has(Ye)){let cn=ne.baseOf(Ye);cn&&!Ce.has(cn)&&pe({kind:"structure",el:null,detail:"both-moved",base:cn},{subject:cn});continue}let Ke=yn(Ye,ne,Ne,De);if(!Ke)continue;let ft;if($e)ft=Le.indexOf($e)+1;else if(tt){if(ft=Le.indexOf(tt)+1,De==="remote")for(;ft<Le.length&&It.has(Le[ft]);)ft++}else ft=pt++;Le.splice(ft,0,Ke),at.add(Ke),$e=Ke}}for(let ne=0;ne<ue.length;ne++){let De=ue[ne];if(le.has(De))continue;let Ne=an(De);Ne&&Le.splice(Nn(ne),0,Ne)}return Le;function Nn(ne){for(let De=ne-1;De>=0;De--){let Ne=Be.get(ue[De]);if(Ne){let tt=Le.indexOf(Ne);if(tt>=0)return tt+1}}return 0}function mn(ne){let De={ignored:o,remoteWins:()=>!1},Ne=we=>ne(we)||st(we)&&r.remoteWins(we)&&Mn.has(we.tagName)&&or(we,De),tt=new Map,pt=we=>{if(!st(we)||!nf.has(we.tagName))return!1;let je=tt.get(we);return je===void 0&&(je=!o(we)&&!r.remoteWins(we)&&l(we).every(Ne),tt.set(we,je)),je},$e=we=>!st(we)&&we.kind==="text",Ye=null,ct=new Map,Ke=we=>{let je=ct.get(we);if(je)return je;let Xe=st(we)?we.textContent:we.value;je=new Set;let ut=Xe.toLowerCase();if(!(Xe.length>Tl))if(/^[\x00-\x7f]*$/.test(ut))for(let Ze of ut.split(/[^\p{L}\p{N}]+/u))Ze&&je.add(Ze);else for(let Ze of Ps(ut))/^[\s\p{P}]+$/u.test(Ze)||je.add(Ze);return ct.set(we,je),je},ft=we=>(st(we)?we.textContent:we.value).toLowerCase().replace(/\s+/g," ").trim(),cn=new Map,tr=we=>{let je=cn.get(we);if(je)return je;je=new Set(Ke(we));let Xe=Ze=>{if(Ze)for(let Nt of Ke(Ze))je.add(Nt)},ut=Ce.has(we)?we:!K.asBase&&K.baseOf(we)||!te.asBase&&te.baseOf(we);return ut&&(Xe(ut),Xe(ke(Q,ut)),Xe(ke(L,ut))),cn.set(we,je),je},xn=(we,je)=>{let Xe=ft(je),ut=Ce.has(we)?we:!K.asBase&&K.baseOf(we)||!te.asBase&&te.baseOf(we),Ze=Wt=>Xe?Wt.split(Xe).length-1:0;if(ut&&st(je)&&!Ce.has(je)){let Wt=Ze(ft(ut));for(let Kt of[ke(Q,ut),ke(L,ut)]){if(!Kt||Kt===je||Kt.ownerDocument!==je.ownerDocument)continue;let gn=ft(Kt);if(gn.length>Xe.length&&Ze(gn)>=Wt&&(gn.startsWith(Xe)||gn.endsWith(Xe)))return!1}}let Nt=Ke(je),_t=tr(we),Ht=0;for(let Wt of Nt)_t.has(Wt)&&Ht++;if(Nt.size&&Ht*2>=Nt.size)return!0;if(!Xe||Xe.length>Tl)return!1;let en=ut?[we,ut,ke(Q,ut),ke(L,ut)]:[we],dn=(Wt,Kt)=>Wt!==Kt&&(Wt.startsWith(Kt)||Wt.endsWith(Kt));if(en.some(Wt=>Wt&&dn(ft(Wt),Xe)))return!0;if(!Ce.has(je)||!ut)return!1;let jt=ft(we),Hn=ft(ut);return[ke(Q,je),ke(L,je)].some(Wt=>{let Kt=Wt&&ft(Wt);return!!Kt&&jt!==Kt&&(jt.startsWith(Kt)&&!Hn.startsWith(Kt)||jt.endsWith(Kt)&&!Hn.endsWith(Kt))})},pn=we=>{Ye||(Ye=new Set),Ye.add(we)},nr=we=>{pn(we);for(let[je,Xe]of[[Q,K],[L,te]]){if(Xe.asBase)continue;let ut=ke(je,we);ut&&Xe.here(ut)&&pn(ut)}},ot=(we,je)=>we.asBase||ue.every(Xe=>!st(Xe)||je.identical.has(Xe)&&we.here(ke(je,Xe)))&&we.units.every(Xe=>!st(Xe)||we.baseOf(Xe));if(ot(K,Q)&&ot(te,L))return null;let vt=we=>{if(we.asBase)return!1;let je=-1;for(let Xe of we.units){let ut=st(Xe)?we.baseOf(Xe):null;if(!ut||!Ce.has(ut))continue;let Ze=Pe.get(ut);if(Ze<je)return!0;je=Ze}return!1};if(vt(K)||vt(te))return null;for(let[we,je]of[[K,Q],[te,L]]){if(we.asBase||ot(we,je))continue;let Xe=we.units,ut=je===Q?m.local:m.remote,Ze=(Fe,At)=>{let Pt=st(Fe)&&m.base(Fe),Ct=st(At)&&ut(At);return!Pt||!Ct||Pt===Ct},Nt=new Map;for(let Fe=0;Fe<Xe.length;Fe++)Nt.set(Xe[Fe],Fe);let _t=Fe=>!!Fe&&(st(Fe)?we.here(Fe):Nt.has(Fe)),Ht=Fe=>{let At=we.twin(Fe);return _t(At)?At:null},en=ue.filter(Fe=>!we.twin(Fe)&&pt(Fe)),dn=Xe.filter(Fe=>!we.baseOf(Fe)&&pt(Fe)),jt=(Fe,At)=>At===ue?!!Ht(Fe):Ce.has(we.baseOf(Fe)),Hn=Fe=>{let At=new Int32Array(Fe.length),Pt=new Int32Array(Fe.length),Ct=-1;for(let Tt=0;Tt<Fe.length;Tt++)At[Tt]=Ct,jt(Fe[Tt],Fe)&&(Ct=Tt);Ct=Fe.length;for(let Tt=Fe.length-1;Tt>=0;Tt--)Pt[Tt]=Ct,jt(Fe[Tt],Fe)&&(Ct=Tt);return{prev:At,next:Pt}},Wt=Hn(Xe),Kt=Hn(ue),gn=(Fe,At)=>{nr(Fe),pn(At)};for(let Fe of dn){let At=Nt.get(Fe),Pt=Wt.prev[At],Ct=Wt.next[At],Tt=Pt>=0?we.baseOf(Xe[Pt]):null,Sn=Ct<Xe.length?we.baseOf(Xe[Ct]):null,Gt=Tt?Pe.get(Tt):-1,$n=Sn?Pe.get(Sn):ue.length;for(let Cn=Math.max(0,Gt);Cn<=Math.min($n,ue.length-1);Cn++){let rn=ue[Cn];(pt(rn)||$e(rn))&&(!Ze(rn,Fe)||!xn(rn,Fe)||($e(rn)?pn(Fe):gn(rn,Fe)))}}let An=(Fe,At,Pt)=>{for(let Ct=At+Pt;Ct>=0&&Ct<Fe.length;Ct+=Pt){let Tt=Fe[Ct];if(pt(Tt))return Tt;if(st(Tt)||Tt.value.trim())return null}return null},wo=Fe=>{let At=new Set;for(let Pt of l(Fe))if(!st(Pt)&&Pt.kind==="text")for(let Ct of Ke(Pt))At.add(Ct);return At},mr=(Fe,At)=>{let Pt=Ke(At),Ct=new Set;for(let Tt of wo(Fe))Pt.has(Tt)||Ct.add(Tt);return Ct},Vr=(Fe,At)=>{if(!Fe.size)return!1;let Pt=Ke(At),Ct=0;for(let Tt of Fe)Pt.has(Tt)&&Ct++;return Ct*2>=Fe.size};for(let Fe of ue){if(je.identical.has(Fe)||!pt(Fe))continue;let At=Ht(Fe);if(!At||!pt(At))continue;let Pt=mr(At,Fe),Ct=mr(Fe,At);for(let Tt of[-1,1]){let Sn=An(ue,Pe.get(Fe),Tt);Sn&&Vr(Pt,Sn)&&(gn(Fe,At),nr(Sn));let Gt=An(Xe,Nt.get(At)??-1,Tt);if(Gt&&Vr(Ct,Gt)){gn(Fe,At);let $n=we.baseOf(Gt);$n?gn($n,Gt):pn(Gt)}}}for(let Fe of en){let At=Pe.get(Fe),Pt=Kt.prev[At],Ct=Kt.next[At],Tt=Pt>=0?Ht(ue[Pt]):null,Sn=Ct<ue.length?Ht(ue[Ct]):null,Gt=Tt?Nt.get(Tt)??-1:-1,$n=Sn?Nt.get(Sn)??-1:Xe.length;for(let Cn=Math.max(0,Gt);Cn<=Math.min($n,Xe.length-1);Cn++){let rn=Xe[Cn];if((pt(rn)||$e(rn))&&!(!Ze(Fe,rn)||!xn(rn,Fe))&&(nr(Fe),!$e(rn))){let Ao=we.baseOf(rn);Ao?gn(Ao,rn):pn(rn)}}}}if(!Ye)return null;for(let we of Array.from(Ye))if(Ce.has(we))for(let je of[Q,L]){let Xe=ke(je,we);Xe&&!ye(Xe,je===Q?N:D,je)&&!(je===Q?K:te).asBase&&(Ye.delete(we),Ye.delete(ke(Q,we)),Ye.delete(ke(L,we)))}return Ye.size?Ye:null}function nn(){if((K.asBase||Q.identical.has(k))&&(te.asBase||L.identical.has(k)))return;let ne={ignored:o,remoteWins:r.remoteWins,inlineCache:Oe},De=ot=>st(ot)?or(ot,ne):ot.kind==="text",Ne=mn(De),tt=ot=>Ne&&Ne.has(ot)||De(ot),pt=ue.map(tt);if(!pt.includes(!0))return;let $e=ot=>{let vt=ot.units,we=new Map;for(let _t=0;_t<vt.length;_t++)we.set(vt[_t],_t);let je=[],Xe=-1;for(let _t=0;_t<ue.length;_t++){if(pt[_t])continue;let Ht=ot.twin(ue[_t]),en=Ht?we.get(Ht):void 0;en===void 0||en<=Xe||tt(Ht)||(je.push([_t,en]),Xe=en)}let ut=[],Ze=-1,Nt=-1;for(let _t=0;_t<=je.length;_t++){let[Ht,en]=_t<je.length?je[_t]:[ue.length,vt.length],dn={bLo:-1,bHi:-1,sLo:-1,sHi:-1,next:en};for(let jt=Ze+1;jt<Ht;jt++)pt[jt]&&(dn.bLo<0&&(dn.bLo=jt),dn.bHi=jt);for(let jt=Nt+1;jt<en;jt++)tt(vt[jt])&&(dn.sLo<0&&(dn.sLo=jt),dn.sHi=jt);ut.push(dn),Ze=Ht,Nt=en}return{units:vt,list:ut}},Ye=$e(K),ct=$e(te),Ke=[];for(let ot of[Ye,ct])for(let vt of ot.list)vt.bLo>=0&&Ke.push([vt.bLo,vt.bHi]);Ke.sort((ot,vt)=>ot[0]-vt[0]);let ft=[];for(let[ot,vt]of Ke){let we=ft[ft.length-1];we&&ot<=we.hi?we.hi=Math.max(we.hi,vt):ft.push({lo:ot,hi:vt})}let cn=(ot,vt)=>{let we=-1,je=-1;for(let Ze=0;Ze<ot.list.length;Ze++){let Nt=ot.list[Ze];Nt.bLo<vt.lo||Nt.bLo>vt.hi||(we<0&&(we=Ze),je=Ze)}let Xe=1/0,ut=-1;for(let Ze=we;Ze>=0&&Ze<=je;Ze++){let Nt=ot.list[Ze];Nt.sLo>=0&&(Xe=Math.min(Xe,Nt.sLo),ut=Math.max(ut,Nt.sHi)),Ze<je&&(Xe=Math.min(Xe,Nt.next),ut=Math.max(ut,Nt.next))}return ut<0?[]:ot.units.slice(Xe,ut+1)},tr=(ot,vt)=>ot.length===vt.length&&ot.every((we,je)=>i.equalUnits(we,vt[je])),xn=ot=>!st(ot)&&ot.kind==="comment",pn=ot=>{if(!ot.length)return[];let vt=(Ze,Nt)=>st(Ze)?Ze:Ze.nodes[Nt?Ze.nodes.length-1:0],we=vt(ot[0]),je=vt(ot[ot.length-1],!0),Xe=Ze=>Ze&&st(Ze)&&o(Ze);for(;Xe(we.previousSibling);)we=we.previousSibling;for(;Xe(je.nextSibling);)je=je.nextSibling;let ut=[];for(let Ze=we;Ze&&(ut.push(Ze),Ze!==je);Ze=Ze.nextSibling);return ut},nr=ot=>ot.some(vt=>st(vt)&&o(vt));for(let ot of ft){let vt=ue.slice(ot.lo,ot.hi+1),we=K.asBase?null:cn(Ye,ot),je=te.asBase?null:cn(ct,ot);if(vt.some(xn)||we&&we.some(xn)||je&&je.some(xn))continue;let Xe=pn(we||vt),ut=pn(je||vt);if((!we||tr(vt,we))&&(!je||tr(vt,je))&&!(we&&nr(Xe)))continue;let Ze=$s({base:pn(vt),local:Xe,remote:ut,out:V,policy:_,blocks:Ne,L:we?Q:El(Q,k),R:je?L:El(L,k),idOf:{local:b,remote:v},ignored:o,ignoreAttribute:r.ignoreAttribute,remoteWins:r.remoteWins,mergeElement:(_t,Ht,en)=>wt(_t,Ht,en,!1),cloneUnit:w,mergeAttrs:T,atomKey:i.exactUnitKey,moveIn:Je,provenance:Se,textMappers:ve,conflicts:He,conflict:pe,scope:{base:k,local:K.asBase?null:K.el,remote:te.asBase?null:te.el,units:ue,at:ot.lo},decisions:Me,node:W});it.push(...Ze.segments);let Nt=V.createDocumentFragment();for(let _t of Ze.nodes)Nt.appendChild(_t);for(let _t of[...vt,...we||[],...je||[]])le.add(_t),We.add(_t),Be.set(_t,Nt);St.push({frag:Nt,at:ot.lo})}}}function P(k,N){let D=Se.get(k);return D&&D.unchanged?!D.remote||D.remote===N?!0:x(D.remote,N):k.tagName!==N.tagName||!G(k,N)?!1:q(j(k),j(N))}function x(k,N){return k===N?!0:k.tagName!==N.tagName||k.namespaceURI!==N.namespaceURI||!G(k,N)?!1:A(j(k),j(N))}function A(k,N){let D=X(k,o),U=X(N,o);if(D.length!==U.length)return!1;for(let W=0;W<D.length;W++){let K=D[W],te=U[W];if(typeof K=="string"||typeof te=="string"){if(K!==te)return!1}else{if(K.nodeType!==te.nodeType)return!1;if(K.nodeType===1){if(!x(K,te))return!1}else if(K.nodeValue!==te.nodeValue)return!1}}return!0}function j(k){return k.tagName==="TEMPLATE"&&k.content?k.content:k}function G(k,N){let D=0;for(let U of k.attributes)if(!r.ignoreAttribute(k,U.name)&&(D++,N.getAttribute(U.name)!==U.value))return!1;for(let U of N.attributes)r.ignoreAttribute(N,U.name)||D--;return D===0}function q(k,N){let D=X(k,W=>{let K=Se.get(W);return!!(K&&K.pinned)}),U=X(N,o);if(D.length!==U.length)return!1;for(let W=0;W<D.length;W++){let K=D[W],te=U[W];if(typeof K=="string"||typeof te=="string"){if(K!==te)return!1}else{if(K.nodeType!==te.nodeType)return!1;if(K.nodeType===1){if(!P(K,te))return!1}else if(K.nodeValue!==te.nodeValue)return!1}}return!0}function X(k,N){let D=[],U=null;for(let W=k.firstChild;W;W=W.nextSibling){if(W.nodeType===3){U=U===null?W.nodeValue:U+W.nodeValue;continue}W.nodeType===1&&N(W)||(U!==null&&(U!==""&&D.push(U),U=null),D.push(W))}return U!==null&&U!==""&&D.push(U),D}function O(k,N,D,U){let W=k.value,K=U?W:N?N.value:"",te=D?D.value:"";le.add(k),N&&le.add(N),D&&le.add(D);let ue=K===te?K:K===W?te:te===W||_==="local"?K:te,Ce={site:"comment",bRun:k,lRun:N,rRun:D,node:null};if(K!==W&&te!==W&&K!==te&&pe({kind:"text",node:null,base:W,local:K,remote:te,resolved:ue},Ce),!N&&!D)return null;let Pe=V.createComment(ue);return Ce.node=Pe,Se.set(Pe,{base:k.nodes,local:N?N.nodes:null,remote:D?D.nodes:null}),Pe}function C(k,N){let D=ke(N,k);if(!D)return null;let U=st(D)?D.parentNode:D.parent,W=st(k)?k.parentNode:k.parent;return ke(N,W)===U?null:N.reverse.get(U)||null}function Z(k){let N=new Set([k]),D=k;for(let U=0;U<64;U++){let W=C(D,Q)||C(D,L);if(!W)return!1;if(W===k||st(k)&&st(W)&&k.contains(W)||N.has(W))return!0;N.add(W),D=W}return!0}function ye(k,N,D){if(!N)return!1;let U=st(k)?k.parentNode:k.parent;return U===N||N.tagName==="TEMPLATE"&&U===N.content}function Re(k,N){let D=se(k),U=ke(Q,D);if(U&&ye(N,U,Q))return!0;let W=ke(L,D);return!!(W&&ye(N,W,L))}}function El(e,t){return e.map.get(t)?_l():{map:{get:r=>r&&r.nodeType===1&&e.map.get(r)||r,has:()=>!0},reverse:{get:r=>e.reverse.get(r)||r,has:()=>!0},moved:new Set,identical:{has:()=>!0},pairIdenticalChildren:()=>{}}}function _l(){let e={get:t=>t,has:()=>!0};return{map:e,reverse:e,moved:new Set,identical:{has:()=>!0},pairIdenticalChildren:()=>{}}}var Ol=new Set(["INPUT","OPTION","TEXTAREA"]),Ks=/[\t\n\f\r ]+/;function Nl(e,t,n,r){let o=e.ownerDocument,{provenance:s,textMappers:i}=n,l=r.hooks,a=[],u=[],d=[],h=new Set,f=[],p=[],b=new Map,v=new Set,m=new Map,g=n.conflicts.length>0,y=new Map,I=new Set,Y=new Map,$=(T,re)=>{let oe=Y.get(T);oe||Y.set(T,oe=new Set),oe.add(re)},H=g?new Set:null,z=(T,re,oe)=>{let de=l.beforeAttributeUpdated(T,re,oe);return g&&de===!1&&$(re,T),de},ae=T=>!!T&&(T===e||e.contains(T)||e.nodeType===1&&e.tagName==="TEMPLATE"&&e.content.contains(T)),me=new Map,Q=new Map,L=new Map,Ee=new Set,xe=new Map;(function T(re){let oe=s.get(re);if(oe){if(re.nodeType===1){let ie=oe.local?r.toLive(oe.local):null;ie&&ae(ie)&&ie.nodeType===1&&(me.set(re,ie),Q.set(ie,re))}else if(Array.isArray(oe.local)){let ie=ve(oe.local,oe.local.map(he=>r.toLive(he)).filter(he=>he&&ae(he)&&he.nodeType===re.nodeType));if(ie.length&&(me.set(re,ie[0]),Q.set(ie[0],re),L.set(re,ie)),Array.isArray(oe.caret))for(let he of oe.caret){let w=r.toLive(he.node);if(!w||!ae(w)||w.nodeType!==3)continue;let E=xe.get(w);Array.isArray(E)||xe.set(w,E=[]),E.push({merged:re,from:he.from,to:he.to,flatStart:he.flatStart})}else{let he=0;for(let w of ie)xe.set(w,{merged:re,shift:he}),he+=w.nodeValue.length}}}let de=re.nodeType===1&&re.tagName==="TEMPLATE"&&re.content?re.content.childNodes:re.childNodes;for(let ie of de)T(ie)})(t);let se=new Set;for(let T of me.values())se.add(T);for(let T of L.values())for(let re of T)se.add(re);for(let T of n.segments||[])Me(T);let V=r.restoreFocus===!1?null:rf(o,xe);r.childrenOnly?le(He(e),He(t)):Ve(e,t);for(let{node:T,parent:re}of f)h.has(T)||!T.parentNode||T.nodeType===1&&(r.ignored(T)||yt(T))||qe(T,re);return of(o,V,xe,i,L,m,Ee),{applied:a,moved:u,replaced:d,identities:p,mergedScriptsLive:v,liveOf:me,heldBy:m,runOf:L,keptRuns:Ee,insertedLive:y,vetoed:I,vetoedAttrs:Y,removedVetoes:H};function Se(T,re){let oe=T.slice(re.bs,re.be),de=0;for(;de<oe.length&&de<re.text.length&&oe[de]===re.text[de];)de++;let ie=0;for(;ie<oe.length-de&&ie<re.text.length-de&&oe[oe.length-1-ie]===re.text[re.text.length-1-ie];)ie++;return{bs:re.bs+de,be:re.be-ie,text:re.text.slice(de,re.text.length-ie)}}function ve(T,re){if(!re.length)return re;let oe=[];for(let he of T){let w=he.parentNode;if(!w)continue;let E=b.get(w);if(!E){E=new Set;for(let P=w.firstChild;P;P=P.nextSibling)P.nodeType===3&&E.add(r.toLive(P));b.set(w,E)}oe.includes(E)||oe.push(E)}let de={has:he=>oe.some(w=>w.has(he))},ie=[];for(let he of re){ie.push(he);for(let w=he.nextSibling;w&&w.nodeType===3&&!de.has(w)&&!ie.includes(w);w=w.nextSibling)ie.push(w)}return ie}function Me(T){let re=[];for(let O of T.localNodes){let C=r.toLive(O.node);if(!C||!ae(C)||C.nodeType!==3)return;re.push(C)}let oe=ve(T.localNodes.map(O=>O.node),re);if(!oe.length)return;let de=oe.map(O=>O.nodeValue).join(""),{flatLocal:ie,lToM:he,mapLocal:w}=T;if(de===ie)return;let E=T.textNodes.map(O=>({node:O.node,ms:O.ms,me:O.me})),P=[],x=0;for(let O of oe)P.push(x),x+=O.nodeValue.length;let A=(O,C)=>oe.find((Z,ye)=>P[ye]<=O&&O+C<=P[ye]+Z.nodeValue.length)||null,j=[],G=0;for(let O of Gr(ie,de).map(C=>Se(ie,C))){let C=O.bs+G;G+=O.text.length-(O.be-O.bs);let Z,ye;if(O.be>O.bs){Z=he[O.bs];let Re=Z>=0;for(let k=O.bs;Re&&k<O.be;k++)he[k]!==Z+(k-O.bs)&&(Re=!1);if(!Re)continue;ye=Z+(O.be-O.bs)}else{let Re=O.bs>0?he[O.bs-1]:0,k=O.bs<ie.length?he[O.bs]:0;if(Re<0||k<0)continue;Z=ye=w(O.bs)}j.push({ms:Z,me:ye,text:O.text,live:ye===Z?A(C,O.text.length):null})}j.sort((O,C)=>C.ms-O.ms);let q=(O,C)=>(L.get(O.node)||[me.get(O.node)]).includes(C),X=O=>!!O&&O.nodeType===1&&Mn.has(O.tagName);for(let O of j){let C=E.find(ye=>ye.ms<=O.ms&&O.me<=ye.me&&O.ms<ye.me);if(C&&O.live&&C.ms===O.ms&&!q(C,O.live)){let ye=E.find(Re=>Re.me===O.ms&&q(Re,O.live));ye&&(C=ye)}if(!C&&O.me===O.ms){let ye=E.find(D=>D.me===O.ms),Re=E.find(D=>D.ms===O.ms),k=ye||Re;if(!k)continue;let N=k.node;for(;X(N.parentNode)&&(ye?N.parentNode.lastChild:N.parentNode.firstChild)===N;)N=N.parentNode;if(N===k.node)C=k;else{let D=N.ownerDocument.createTextNode(O.text);N.parentNode.insertBefore(D,ye?N.nextSibling:N);continue}}if(!C)continue;let Z=C.node.nodeValue;C.node.nodeValue=Z.slice(0,O.ms-C.ms)+O.text+Z.slice(O.me-C.ms),C.me+=O.text.length-(O.me-O.ms)}}function He(T){return T.nodeType===1&&T.tagName==="TEMPLATE"&&T.content?T.content:T}function Ve(T,re){h.add(T);let oe=s.get(re);if(oe&&oe.remote&&n.remoteIdOf){let ie=n.remoteIdOf(oe.remote);ie&&p.push([T,ie])}if(oe&&oe.unchanged){n.customIdentity&&oe.remote&&B(T,oe.remote),oe.remote&&_(T,oe.remote);return}if(l.beforeNodeMorphed(T,re)===!1){I.add(re);return}Ue(T,re,r.keepLiveOnly&&oe&&oe.local&&oe.local.nodeType===1&&oe.local!==T?oe.local:null);let de=T.tagName;if(un(T))T.textContent!==re.textContent&&(a.push({kind:"text",node:T,before:T.textContent,after:re.textContent}),T.textContent=re.textContent),n.mergedScripts.has(re)&&v.add(T);else if(de==="TEXTAREA")Ot(T,re,oe);else{wt(T,re,oe);let ie=de==="TEMPLATE"&&T.content?T.content:T,he=de==="TEMPLATE"&&re.content?re.content:re;r.protectFocusedValue==="subtree"&&Je(T)&&T!==o.body?it(ie):le(ie,he)}l.afterNodeMorphed(T,re)}function it(T){for(let re=T.firstChild;re;re=re.nextSibling){let oe=Q.get(re);oe&&me.get(oe.parentNode)!==T||(h.add(re),re.nodeType===1&&it(re))}}function le(T,re){let oe=pe(T.firstChild),de=new Set;for(let ie of Array.from(re.childNodes)){let he=me.get(ie);he&&h.has(he)&&!de.has(he)&&(he=null);let w=s.get(ie);if(w&&w.pinned){he&&he.nodeType===1&&((he.parentNode!==T||pe(he.nextSibling)!==oe)&&Qe(T,he,oe),h.add(he),de.add(he));continue}if(he&&he.nodeType===1){if(he!==oe){let x=he.parentNode;if(x===T&&oe&&kt(he)){let A=he.nextSibling;for(let j=oe;j&&j!==he;){let G=j.nextSibling;Qe(T,j,A),j=G}}else Qe(T,he,oe),x!==T&&(u.push(he),a.push({kind:"move",el:he,from:x,to:T}))}de.add(he),Ve(he,ie),oe=pe(he.nextSibling);continue}if(he&&he.nodeType!==1){let x=L.get(ie)||[he],A=x.map(G=>G.nodeValue).join(""),j=ie.nodeValue;if(ie.nodeType===3){let G=et(ie);G!=null&&A!==G&&(j=Kr(G,A,ie.nodeValue).text)}if(x.length>1&&A===j&&!x.includes(oe,1)&&x.every((G,q)=>G.parentNode===T&&(q===0||x[q-1].nextSibling===G))){if(he!==oe)for(let G of x)Qe(T,G,oe);l.beforeNodeMorphed(he,ie)!==!1?l.afterNodeMorphed(he,ie):g&&I.add(ie);for(let G of x)h.add(G),de.add(G);m.set(ie,he),Ee.add(ie),oe=pe(x[x.length-1].nextSibling);continue}he!==oe&&Qe(T,he,oe),l.beforeNodeMorphed(he,ie)!==!1?(he.nodeValue!==j&&(a.push({kind:"text",node:he,before:he.nodeValue,after:j}),he.nodeValue=j),l.afterNodeMorphed(he,ie)):I.add(ie),h.add(he),de.add(he),m.set(ie,he),oe=pe(he.nextSibling);continue}if(ie.nodeType===3&&oe&&oe.nodeType===3&&!h.has(oe)&&!xe.has(oe)){oe.nodeValue!==ie.nodeValue&&(a.push({kind:"text",node:oe,before:oe.nodeValue,after:ie.nodeValue}),oe.nodeValue=ie.nodeValue),h.add(oe),m.set(ie,oe),oe=pe(oe.nextSibling);continue}let E=s.get(ie),P=rt(E&&E.unchanged&&E.remote?E.remote:ie);if(l.beforeNodeAdded(P)===!1){I.add(ie);continue}T.insertBefore(P,oe),h.add(P),g&&y.set(ie,P),P.nodeType===3&&m.set(ie,P),P.nodeType===1&&(d.push(P),Ae(P,ie),n.customIdentity&&E&&E.unchanged&&E.remote&&B(P,E.remote),un(P)||lt(P,ie),r.formState==="property"&&ht(E)&&_(P,E.remote)),oe=pe(P.nextSibling),a.push({kind:"insert",node:P,parent:T}),l.afterNodeAdded(P)}for(let ie of Array.from(T.childNodes))h.has(ie)||de.has(ie)||ie.nodeType===1&&(r.ignored(ie)||yt(ie))||(se.has(ie)?f.push({node:ie,parent:T}):qe(ie,T))}function yt(T){return r.preserve&&T.parentNode&&T.parentNode.nodeType===1&&T.parentNode.tagName==="HEAD"&&r.preserve(T)===!0}function et(T){let re=s.get(T);return!re||!Array.isArray(re.local)?null:re.local.map(oe=>oe.nodeValue).join("")}function Oe(T){return s.get(T)}function _(T,re){if(!Ol.has(T.tagName)&&!T.querySelector("input,option,textarea"))return;let oe=(de,ie)=>{if(de.tagName!==ie.tagName)return;de.tagName==="TEXTAREA"?Ot(de,ie,{remote:ie}):Ol.has(de.tagName)&&wt(de,ie,{remote:ie});let he=fe(de),w=fe(ie);if(he.length===w.length)for(let E=0;E<he.length;E++)oe(he[E],w[E])};oe(T,re)}function B(T,re){let oe=fe(T),de=fe(re);if(oe.length===de.length)for(let ie=0;ie<oe.length;ie++){let he=n.remoteIdOf(de[ie]);he&&p.push([oe[ie],he]),B(oe[ie],de[ie])}}function fe(T){let re=T.tagName==="TEMPLATE"&&T.content?T.content:T;return Array.from(re.children).filter(oe=>!r.ignored(oe))}function Ae(T,re){if(!n.remoteIdOf)return;let oe=(de,ie)=>{let he=s.get(ie);if(he&&he.remote&&ie.nodeType===1){let P=n.remoteIdOf(he.remote);P&&p.push([de,P])}let w=de.childNodes,E=ie.childNodes;for(let P=0;P<w.length&&P<E.length;P++)oe(w[P],E[P])};oe(T,re)}function pe(T){for(;T&&T.nodeType===1&&r.ignored(T);)T=T.nextSibling;return T}function Qe(T,re,oe){if(typeof T.moveBefore=="function"&&re.ownerDocument===T.ownerDocument)try{T.moveBefore(re,oe);return}catch{}T.insertBefore(re,oe)}function qe(T,re){if(l.beforeNodeRemoved(T)===!1){g&&H.add(T);return}T.parentNode.removeChild(T),a.push({kind:"remove",node:T,parent:re}),l.afterNodeRemoved(T)}function rt(T){if(un(T))return Yr(T,o);let re=o.importNode(T,!0);if(re.nodeType===1)for(let oe of Array.from(re.querySelectorAll("script")))un(oe)&&oe.replaceWith(Yr(oe,o));return re}function lt(T,re){let oe=T.tagName==="TEMPLATE"&&T.content?T.content:T,de=re.tagName==="TEMPLATE"&&re.content?re.content:re,ie=Array.from(oe.childNodes),he=Array.from(de.childNodes);for(let w=0;w<he.length&&w<ie.length;w++){let E=he[w],P=ie[w],x=me.get(E);x&&h.has(x)&&(x=null);let A=s.get(E);if(A&&A.pinned){if(x&&x.nodeType===1){let j=x.parentNode;Qe(oe,x,P),j!==oe&&(u.push(x),a.push({kind:"move",el:x,from:j,to:oe})),h.add(x)}P.remove();continue}if(x){let j=x.parentNode;Qe(oe,x,P),P.remove(),x.nodeType===1?(j!==oe&&(u.push(x),a.push({kind:"move",el:x,from:j,to:oe})),Ve(x,E)):(h.add(x),m.set(E,x),x.nodeValue!==E.nodeValue&&(a.push({kind:"text",node:x,before:x.nodeValue,after:E.nodeValue}),x.nodeValue=E.nodeValue));continue}h.add(P),g&&y.set(E,P),P.nodeType===3&&m.set(E,P),A&&A.unchanged&&A.remote?(ee(P,A.remote),n.customIdentity&&B(P,A.remote)):E.nodeType===1&&!un(E)&<(P,E)}}function ee(T,re){let oe=T.tagName==="TEMPLATE"&&T.content?T.content:T,de=re.tagName==="TEMPLATE"&&re.content?re.content:re;for(let ie of Array.from(de.childNodes))oe.appendChild(rt(ie))}function ce(T,re){return re.namespaceURI?T.getAttributeNS(re.namespaceURI,re.localName):T.getAttribute(re.name)}function ge(T,re){let oe=new Set((re||"").split(Ks).filter(Boolean));return(T||"").split(Ks).filter(de=>de&&!oe.has(de))}function Ue(T,re,oe){for(let de of Array.from(re.attributes)){if(ke(T,de.name)||r.ignoreAttribute(T,de.name))continue;let ie=ce(T,de);if(ie===de.value||oe&&ce(oe,de)===de.value)continue;let he=de.value;if(oe&&de.name==="class"&&!de.namespaceURI){let w=de.value.split(Ks).filter(Boolean),E=ge(ie,oe.getAttribute("class")).filter(P=>!w.includes(P));E.length&&(he=[...w,...E].join(" "))}if(ie!==he){if(l.beforeAttributeUpdated(de.name,T,"update")===!1){g&&$(re,de.name);continue}de.namespaceURI?T.setAttributeNS(de.namespaceURI,de.name,he):T.setAttribute(de.name,he),a.push({kind:"attr",el:T,name:de.name,before:ie,after:he})}}for(let de of Array.from(T.attributes)){if(ke(T,de.name)||r.ignoreAttribute(T,de.name)||(de.namespaceURI?re.hasAttributeNS(de.namespaceURI,de.localName):re.hasAttribute(de.name)))continue;if(oe&&de.name==="class"&&!de.namespaceURI){let w=ge(de.value,oe.getAttribute("class"));if(w.length){let E=w.join(" ");if(E===de.value)continue;if(l.beforeAttributeUpdated("class",T,"update")===!1){g&&$(re,"class");continue}T.setAttribute("class",E),a.push({kind:"attr",el:T,name:"class",before:de.value,after:E});continue}}if(oe&&ce(oe,de)===null)continue;if(l.beforeAttributeUpdated(de.name,T,"remove")===!1){g&&$(re,de.name);continue}let he=de.value;de.namespaceURI?T.removeAttributeNS(de.namespaceURI,de.localName):T.removeAttribute(de.name),a.push({kind:"attr",el:T,name:de.name,before:he,after:null})}}function ke(T,re){let oe=T.tagName;return oe==="INPUT"?re==="value"||re==="checked"||re==="disabled":oe==="OPTION"?re==="selected":!1}function Je(T){return T===o.activeElement}function kt(T){let re=o.activeElement;return!!re&&re!==o.body&&T.contains(re)}function ht(T){let re=T&&T.remote;return re&&re.nodeType===1?re:null}function wt(T,re,oe){let de=T.tagName,ie=ht(oe),he=r.formState==="property"&&ie?ie:re;if(de==="INPUT"){let w=r.protectFocusedValue&&Je(T),E=(T.getAttribute("type")||"").toLowerCase(),P=E!=="file"&&E!=="checkbox"&&E!=="radio",x=ie&&ie.hasAttribute("value")&&ie.value!==ie.getAttribute("value")?ie.value:null;if(P&&!w)if(r.formState==="property"){let A=re.getAttribute("value"),j=T.getAttribute("value");(j!==A||T.value!==he.value)&&z("value",T,A==null?"remove":"update")!==!1&&(j!==A&&(A==null?T.removeAttribute("value"):T.setAttribute("value",A),a.push({kind:"attr",el:T,name:"value",before:j,after:A})),T.value!==he.value&&(T.value=he.value))}else if(re.hasAttribute("value")||x!=null){let A=x??re.getAttribute("value");T.getAttribute("value")!==A&&z("value",T,"update")!==!1?(T.setAttribute("value",A),T.value!==A&&(T.value=A),a.push({kind:"attr",el:T,name:"value",before:null,after:A})):T.value!==A&&T.getAttribute("value")===A&&(T.value=A)}else(T.hasAttribute("value")||T.value!=="")&&z("value",T,"remove")!==!1&&(T.removeAttribute("value"),T.value="",a.push({kind:"attr",el:T,name:"value",before:"",after:null}));if(!P&&E!=="file"){let A=re.getAttribute("value");A==null?T.hasAttribute("value")&&z("value",T,"remove")!==!1&&T.removeAttribute("value"):T.getAttribute("value")!==A&&z("value",T,"update")!==!1&&T.setAttribute("value",A)}w||(ze(T,he,"checked"),r.formState==="property"&&T.indeterminate!==he.indeterminate&&(T.indeterminate=he.indeterminate)),ze(T,he,"disabled")}else if(de==="OPTION"){let w=T.parentNode&&T.closest("select");r.protectFocusedValue&&w&&Je(w)||ze(T,he,"selected")}}function ze(T,re,oe){let de=r.formState==="property"?!!re[oe]:re.hasAttribute(oe);if(r.formState!=="property"){let ie=T.hasAttribute(oe);if(ie!==de){if(z(oe,T,de?"update":"remove")===!1)return;de?T.setAttribute(oe,""):T.removeAttribute(oe),a.push({kind:"attr",el:T,name:oe,before:ie?"":null,after:de?"":null})}}T[oe]!==de&&(T[oe]=de)}function Ot(T,re,oe){if(r.protectFocusedValue&&Je(T)||z("value",T,"update")===!1)return;let de=ht(oe),ie=re.textContent,he=de&&de.value!==de.defaultValue?de.value:ie;r.formState!=="property"&&T.textContent!==ie&&(a.push({kind:"text",node:T,before:T.textContent,after:ie}),T.textContent=ie),T.value!==he&&(T.value=he)}}function rf(e,t){let n=e.activeElement;if(!n||n===e.body||n===e.documentElement)return null;let r={el:n,id:n.getAttribute&&n.getAttribute("id"),scrollTop:n.scrollTop,scrollLeft:n.scrollLeft};if(n.tagName==="INPUT"||n.tagName==="TEXTAREA"){try{r.selection=[n.selectionStart,n.selectionEnd,n.selectionDirection]}catch{}return r}let o=e.getSelection&&e.getSelection();if(o&&o.rangeCount){let s=o.getRangeAt(0);r.range={sc:s.startContainer,so:s.startOffset,ec:s.endContainer,eo:s.endOffset}}return r}function of(e,t,n,r,o,s,i){if(!t)return;let l=t.el;if(!l.isConnected&&t.id&&(l=e.getElementById(t.id)),!l||!l.isConnected)return;if(e.activeElement!==l)try{l.focus({preventScroll:!0})}catch{}try{l.scrollTop=t.scrollTop,l.scrollLeft=t.scrollLeft}catch{}if(t.selection){try{l.setSelectionRange&&!l.selectionEnd&&t.selection[1]!=null&&l.setSelectionRange(t.selection[0],t.selection[1],t.selection[2]||"none")}catch{}return}if(!t.range)return;let a=(h,f)=>{let p=n.get(h);if(Array.isArray(p)){let b=p.find(y=>f>=y.from&&f<y.to)||p.find(y=>f===y.to)||p[p.length-1],v=s.get(b.merged);if(!v||!v.isConnected)return null;let m=r.get(b.merged),g=m&&m.flat?m.flat(b.flatStart+f):f;return[v,Math.max(0,Math.min(g,v.nodeValue.length))]}if(p&&!i.has(p.merged)){let b=(o.get(p.merged)||[h])[0];if(!b.isConnected)return null;let v=r.get(p.merged),m=p.shift+f,g=v?v(m):m;return[b,Math.max(0,Math.min(g,b.nodeValue.length))]}return h.isConnected?[h,Math.min(f,h.nodeType===3?h.nodeValue.length:h.childNodes.length)]:null},u=a(t.range.sc,t.range.so),d=a(t.range.ec,t.range.eo);if(!(!u||!d))try{let h=e.createRange();h.setStart(u[0],u[1]),h.setEnd(d[0],d[1]);let f=e.getSelection();f.removeAllRanges(),f.addRange(h)}catch{}}var sf={compared:0},lf=new Set(["INPUT","SELECT","OPTION","TEXTAREA"]);function af(e,t,n){let r=0;for(let o of e.attributes)if(!n(e,o.name)&&(r++,t.getAttribute(o.name)!==o.value))return!1;for(let o of t.attributes)n(t,o.name)||r--;return r===0}function Gs(e,t){if(e.namespaceURI!==t.namespaceURI||e.prefix!==t.prefix||e.localName!==t.localName)return!1;let n=e.attributes;if(n.length!==t.attributes.length)return!1;for(let r of n)if(t.getAttributeNS(r.namespaceURI,r.localName)!==r.value)return!1;return!0}function Cl(e,t,n,r,o,s,i,l){let a=new Map,u=new Set,d=h=>{if(r(h))return;let f=n(h);f&&(s.add(f),o.has(f)||a.has(f)?u.add(f):a.set(f,h))};for(let h of e)d(h);d(t);for(let h of i||t.querySelectorAll("*"))d(h);for(let h of u)a.delete(h),l.add(h);return a}function Ml(e,t,n,r,o,s){let i=!1;for(let d of o)d.startsWith("merge:")&&(i=!0);if(!i)return[...r];let l=new Map,a=[],u=s===bn?Jr:"*";for(let d of[e,...e.querySelectorAll(u)]){if(n(d))continue;let h=t(d);if(!h||!(r.has(h)||o.has(h)))continue;let f=(l.get(h)||0)+1;l.set(h,f),f===2&&a.push(h)}return a}function Rl({baseRoot:e,remoteRoot:t,liveRoot:n,toLive:r,o,identity:s,baseURI:i}){if(e.tagName!==t.tagName)return{bail:"root-tag"};if(e.getElementsByTagName("template").length||t.getElementsByTagName("template").length)return{bail:"script-or-template"};if(!af(e,t,o.ignoreAttribute))return{bail:"root-attrs"};let{ignored:l,remoteWins:a}=o,u=Ws(o.scripts.merge===!1?null:o.scripts.mergeTags,i),d=Oe=>{let _=u(Oe);return _!==null?_:s.base(Oe)||null},h=Oe=>{let _=u(Oe);return _!==null?_:s.remote(Oe)||null},f=[],p=[],b=new Map,v=new Map,m={same:b,differ:v},g=Oe=>({bail:Oe,comparisons:m}),y=(Oe,_,B=!0)=>{if(b.get(Oe)===_)return!0;if(v.get(Oe)===_)return!1;if(sf.compared++,B&&Oe.isEqualNode(_))return b.set(Oe,_),!0;let fe=Oe.nodeType===_.nodeType;if(fe&&Oe.nodeType===1){if(fe=Gs(Oe,_),fe){let Ae=Oe.firstChild,pe=_.firstChild;for(;Ae&&pe;Ae=Ae.nextSibling,pe=pe.nextSibling)if(!y(Ae,pe,!1)){fe=!1;break}(Ae||pe)&&(fe=!1)}}else fe&&(fe=Oe.isEqualNode(_));return(fe?b:v).set(Oe,_),fe},I=e,Y=t,$=!1,H=()=>{b.set(I,Y);for(let Oe=0;Oe<f.length;Oe++)b.set(f[Oe],p[Oe]);return g("equal")};for(;;){let Oe=I.childNodes,_=Y.childNodes;if(Oe.length!==_.length)break;let B=lt=>y(Oe[lt],_[lt])?(b.set(Oe[lt],_[lt]),!1):!0,fe=-1,Ae=-1;for(let lt=0;lt<Oe.length;lt++){if(Oe[lt].nodeType!==1)continue;let ee=0;for(let ce=Oe[lt].firstElementChild;ce;ce=ce.nextElementSibling)ee++;ee>=Ae&&(Ae=ee,fe=lt)}let pe=[],Qe=!1;for(let lt=0;lt<Oe.length&&pe.length<2;lt++)lt!==fe&&B(lt)&&pe.push(lt);if(fe>=0&&pe.length<2&&(pe.length===0&&Gs(I,Y)?(pe.push(fe),Qe=!0):B(fe)&&pe.push(fe)),pe.length!==1){if(!$&&pe.length===0&&Gs(I,Y))return H();break}let qe=Oe[pe[0]],rt=_[pe[0]];if($=$||!Qe,$&&v.set(qe,rt),qe.nodeType!==1||rt.nodeType!==1||qe.tagName!==rt.tagName)break;if(d(qe)!==h(rt)){if(!$&&y(qe,rt))return H();break}f.push(I),p.push(Y),I=qe,Y=rt}v.set(I,Y);for(let Oe=0;Oe<f.length;Oe++)v.set(f[Oe],p[Oe]);if(I===e||I.tagName==="HEAD"||I.tagName==="BODY")return g("root-level");if(f.length<2||f[1].tagName!=="BODY")return g("not-in-body");if(l(I)||l(Y))return g("ignored-ancestor");if(a(I)||a(Y))return g("remote-wins-ancestor");for(let Oe of f)if(lf.has(Oe.tagName))return g("form-ancestor");if(I.tagName==="SCRIPT"||I.getElementsByTagName("script").length||Y.getElementsByTagName("script").length)return g("script-or-template");let z=r(I);if(!z||z.nodeType!==1||z.tagName!==I.tagName)return g("no-live-twin");if(!n.contains(z))return g("live-detached");for(let Oe of f){let _=r(Oe);if(!_||_.nodeType!==1)return g("ancestor-live")}let ae=s.base===bn&&s.remote===bn&&l===Ts,me=new Set,Q=new Set,L=[],Ee=null,xe=Oe=>{Oe&&(me.has(Oe)?Q.add(Oe):me.add(Oe))},se=(Oe,_)=>{let B=u(Oe),fe=B!==null?B:s.base(Oe)||null;return fe!==(B!==null?B:s.remote(_)||null)?!1:(xe(fe),!0)},V=(Oe,_)=>{for(let B=Oe.firstElementChild,fe=_.firstElementChild;B;B=B.nextElementSibling,fe=fe.nextElementSibling){let Ae=l(B);if(Ae!==l(fe))return!1;if(!Ae&&(!se(B,fe)||!V(B,fe)))return!1}return!0},Se=Oe=>{let _=Oe+1<f.length?f[Oe+1]:I;for(let B=f[Oe].firstElementChild,fe=p[Oe].firstElementChild;B;B=B.nextElementSibling,fe=fe.nextElementSibling){if(B===_){let Qe=Oe+1<f.length?Se(Oe+1):null;if(Qe)return Qe;continue}let Ae=l(B);if(Ae!==l(fe))return"outside-id-changed";if(Ae)continue;let pe=r(B);if(!pe||pe.nodeType!==1)return"sibling-live";if(L.push([B,fe]),!ae&&(!se(B,fe)||!V(B,fe)))return"outside-id-changed";Oe===0&&B.tagName==="HEAD"&&d(B)&&(Ee=[B,fe])}return null},ve=Se(0);if(ve)return g(ve);let Me=new Set(f),He=null;if(s.base===bn){He=[];for(let Oe of e.querySelectorAll(Jr))Oe===I||Me.has(Oe)||(I.contains(Oe)?He.push(Oe):ae&&xe(d(Oe)))}let Ve=new Set,it=new Set,le=new Set,yt=Cl(f,I,d,l,me,Ve,He,it),et=Cl(p,Y,h,l,me,Ve,s.remote===bn&&Y.querySelectorAll(Jr),le);return Ee&&(Q.has(d(Ee[0]))||Ve.has(d(Ee[0])))&&(Ee=null),{scope:{chain:f,root:I,onChain:Me,baseIndex:yt,remoteIndex:et,head:Ee,same:b,differ:v,dropped:[...Ml(e,d,l,Q,it,s.base),...Ml(t,h,l,Q,le,s.remote)],held:Oe=>{for(let _=1;_<f.length;_++)if(Oe.map.get(f[_])!==p[_])return!1;for(let[_,B]of L)if(Oe.map.get(_)!==B)return!1;return!0}}}}var jp=Symbol("hyper-morph-duplicate-key");var cf='[editor-ui],[clay~="editor-ui"],[save-ignore],[snapshot-remove],[no-snapshot],[no-save],[save-remove],[freeze],[save-freeze],[clay~="no-save"],[clay~="no-snapshot"],[clay~="freeze"]',uf='[editor-ui],[clay~="editor-ui"],[no-undo],[clay~="no-undo"]',ff='[no-undo]:not([editor-ui]):not([clay~="editor-ui"]),[clay~="no-undo"]:not([editor-ui]):not([clay~="editor-ui"])';function df(e){if(e.tagName!=="LINK"&&e.tagName!=="SCRIPT")return!1;let t=e.getAttribute("src")||e.getAttribute("href")||"";return/^(chrome|moz|safari-web)-extension:/.test(t)}function hf(e,t,n,r){if(t==null)return;if(typeof t=="string")return t;let o=t;if(o.nodeType===9){let s=e.getAttribute("id");o=s&&o.getElementById(s)||(e.tagName==="BODY"?o.body:e.tagName==="HTML"?o.documentElement:o.body&&o.body.firstElementChild)}if((!o||o.nodeType!==1||o.tagName!==e.tagName)&&(o=mf(e,t,r)),!!o)return n?Array.from(o.childNodes):o}function mf(e,t,n){let r=t.nodeType===9?t.documentElement:t;if(!r||r.nodeType!==1)return null;let o=new Map,s=[r,...r.querySelectorAll("script")];for(let a of s){let u=vr(a,n);u&&!o.has(u.key)&&o.set(u.key,a.textContent)}if(!o.size)return null;let i=e.cloneNode(!0),l=!1;for(let a of[i,...i.querySelectorAll("script")]){let u=vr(a,n);u&&o.has(u.key)&&(a.textContent=o.get(u.key),l=!0)}return l?i:null}function Ll(e,t){if(typeof e=="string"||e.nodeType===9)return e;if(e.nodeType===1&&e===e.ownerDocument.documentElement)return e.ownerDocument;let n=t.implementation.createHTMLDocument(""),r=e.nodeType===1&&e.tagName==="HTML"?e:null;if(r)return n.replaceChild(n.adoptNode(r),n.documentElement),n;let o=e.nodeType===11?Array.from(e.childNodes):e.nodeType?[e]:Array.from(e);for(let s of o)n.body.appendChild(n.adoptNode(s));return n}function Kn(e,t,n={}){let r=n||{};if(!r.head?.block)return Il(e,t,r);try{return Il(e,t,r)}catch(o){return Promise.reject(o)}}function Il(e,t,n){let r=n.policy||"sync",o=r==="raw"?void 0:(a,u)=>df(a)||(r==="history"?!(u&&a.matches(ff))&&a.matches(uf):a.matches(cf)),s=n.callbacks||{},i={ignore:o,hooks:s,protectFocusedValue:n.ignoreActiveValue===!0?"subtree":!1,restoreFocus:n.restoreFocus!==!1,formState:n.formStateSync||"attribute",scripts:{execute:n.scripts?.handle!==!1,merge:n.scripts?.merge!==!1,mergeTags:n.scripts?.mergeTags||[]},head:{awaitLoads:!!n.head?.block,preserve:n.head?.shouldPreserve||(()=>!1)}};if(typeof n.key=="function"&&(i.identity={base:n.key,local:n.key,remote:n.key}),e&&e.nodeType===9)return Zr(Object.assign({},i,{live:e,base:n.scripts?.mergeBase||null,remote:Ll(t,e)}));if(e.tagName==="HTML"&&e.parentNode&&e.parentNode.nodeType===9){let a=Object.assign({},i,{live:e.ownerDocument,base:n.scripts?.mergeBase||null,remote:Ll(t,e.ownerDocument)});return Zr(a)}n.morphStyle==="innerHTML"&&(i.children=!0);let l=hf(e,n.scripts?.mergeBase,!!i.children,i.scripts.mergeTags);return l!==void 0&&(i.base=l),Ys(e,t,i)}var pf=new Set(["live","base","remote","local","identity","ignore","remoteWins","ignoreAttribute","conflicts","protectFocusedValue","restoreFocus","head","scripts","formState","children","hooks","beforeApply","fastPath","keepLiveOnly"]),wn=()=>{};function Qr(e,t=[]){if(!e||typeof e!="object")throw new TypeError("options object required");for(let i of Object.keys(e))if(!pf.has(i))throw new TypeError(`unknown option "${i}"`);let n=Object.assign({beforeNodeAdded:wn,afterNodeAdded:wn,beforeNodeRemoved:wn,afterNodeRemoved:wn,beforeNodeMorphed:wn,afterNodeMorphed:wn,beforeAttributeUpdated:wn},e.hooks||{}),r=e.conflicts||"remote";if(!["remote","local","both"].includes(r))throw new TypeError("conflicts must be remote, local or both");let o=e.formState||"attribute";if(!["attribute","property"].includes(o))throw new TypeError("formState must be attribute or property");let s=e.protectFocusedValue;if(s!==void 0&&typeof s!="boolean"&&s!=="subtree")throw new TypeError('protectFocusedValue must be a boolean or "subtree"');if(e.fastPath!==void 0&&typeof e.fastPath!="boolean")throw new TypeError("fastPath must be a boolean");if(e.keepLiveOnly!==void 0&&typeof e.keepLiveOnly!="boolean")throw new TypeError("keepLiveOnly must be a boolean");return{ignored:Es(e.ignore,t),remoteWins:Es(e.remoteWins,t),ignoreAttribute:typeof e.ignoreAttribute=="function"?e.ignoreAttribute:()=>!1,conflicts:r,protectFocusedValue:s===void 0?!0:s,restoreFocus:e.restoreFocus!==!1,head:Object.assign({awaitLoads:!1,preserve:()=>!1},e.head||{}),scripts:Object.assign({execute:!0,merge:!0,mergeTags:[]},e.scripts||{}),formState:o,hooks:n,children:!!e.children,beforeApply:typeof e.beforeApply=="function"?e.beforeApply:null,fastPath:e.fastPath===!0,keepLiveOnly:e.keepLiveOnly===!0}}function Ar(e){if(typeof e=="function")return e;if(e&&typeof e=="object"&&e.map){if(typeof e.first=="function")return e.first;if(typeof e.then=="function")return e.then}return bn}function Sr(e,t){if(typeof e=="function")return e;if(e&&typeof e=="object"&&e.map){let n=_s(t,e.map),r=typeof e.then=="function"?e.then:bn;if(typeof e.first=="function"){let o=e.first;return s=>o(s)||n.get(s)||r(s)}return o=>n.get(o)||r(o)}return bn}function gf(e,t,n,r={}){let o=p=>p&&p.nodeType===9?p.documentElement:p,s=o(t),i=o(n),l=o(e)||s,a=Object.assign({},r);delete a.live,delete a.base,delete a.remote;let u=Qr(a,[l,s,i].filter(Boolean)),d=r.identity||{},h=Un(),f=Io(l,s,i,{identity:{base:Sr(d.base,l),local:Sr(d.local,s),remote:Sr(d.remote,i)},authored:{base:Ar(d.base),local:Ar(d.local),remote:Ar(d.remote)},skipUnchanged:u.hooks.beforeNodeMorphed===wn&&u.hooks.afterNodeMorphed===wn,ignored:u.ignored,remoteWins:u.remoteWins,ignoreAttribute:u.ignoreAttribute,conflicts:u.conflicts,mergeTags:u.scripts.merge===!1?null:u.scripts.mergeTags,baseURI:s.ownerDocument&&s.ownerDocument.baseURI||"about:blank",localIsBase:!e||e===t,childrenOnly:u.children,stats:h});return delete f.recoveryLinks,f}function Xs({liveRoot:e,baseRoot:t,localRoot:n,remoteRoot:r,toLive:o,options:s,identity:i,childrenOnly:l,isDocument:a}){let u=Qr(s,[e,t,n,r].filter(Boolean));if(u.ignored(e))return{report:Js(),loads:[]};let d=e.ownerDocument,h=u.scripts.execute?fl(e,u.ignored,d.baseURI):null,f=Un(),p=u.hooks.beforeNodeMorphed===wn&&u.hooks.afterNodeMorphed===wn,b={identity:{base:Sr(i.base,t||n),local:Sr(i.local,n),remote:Sr(i.remote,r)},authored:{base:Ar(i.base),local:Ar(i.local),remote:Ar(i.remote)},ignored:u.ignored,remoteWins:u.remoteWins,ignoreAttribute:u.ignoreAttribute,conflicts:u.conflicts,mergeTags:u.scripts.merge===!1?null:u.scripts.mergeTags,baseURI:d.baseURI,localIsBase:!t,childrenOnly:l,skipUnchanged:p},v=u.fastPath&&a&&!l&&p&&t===n,m=null,g=null;if(v){let xe=Rl({baseRoot:t,remoteRoot:r,liveRoot:e,toLive:o,o:u,identity:b.identity,baseURI:d.baseURI});b.comparisons=xe.comparisons||xe.scope,xe.bail?g=xe.bail:(m=Io(t,n,r,Object.assign({},b,{stats:f,scope:xe.scope})),m||(g="chain-unpaired",f=Un()))}m||(m=Io(t||n,n,r,Object.assign({},b,{stats:f}))),v&&(f.fastPathAttempted=1,f.fastPathTaken=g?0:1,f.fastPathFallback=g),m.recoveryLinks&&["beforeNodeMorphed","beforeNodeAdded","beforeNodeRemoved","beforeAttributeUpdated"].some(xe=>u.hooks[xe]!==wn)&&vl(m.conflicts,m.recoveryLinks,o),u.beforeApply&&u.beforeApply(m.doc);let y=globalThis.__hyperMorphProfile,I=y?performance.now():0,Y=Nl(e,m.root,m,{toLive:o,ignored:u.ignored,ignoreAttribute:u.ignoreAttribute,formState:u.formState,protectFocusedValue:u.protectFocusedValue,restoreFocus:u.restoreFocus,preserve:u.head.preserve,hooks:u.hooks,childrenOnly:l,keepLiveOnly:u.keepLiveOnly});y&&(y.apply=(y.apply||0)+(performance.now()-I));let $=[];if(u.head.awaitLoads)for(let xe of Y.applied){if(xe.kind!=="insert"||xe.node.nodeType!==1)continue;let se=xe.node;se.tagName==="LINK"&&/\bstylesheet\b/i.test(se.getAttribute("rel")||"")&&se.getAttribute("href")&&se.closest("head")&&$.push(new Promise(Se=>{se.addEventListener("load",()=>Se()),se.addEventListener("error",()=>Se())}))}let H=null,z=null;if(h){let xe=dl(e,h,{ignored:u.ignored,skip:Y.mergedScriptsLive,baseURI:d.baseURI,beforeNodeAdded:u.hooks.beforeNodeAdded,afterNodeAdded:u.hooks.afterNodeAdded,trackRecovery:!!m.recoveryLinks});$.push(...xe.loads),H=xe.swapped,z=xe.vetoed}let ae=xe=>H&&H.get(xe)||xe,me=xe=>{if(Y.keptRuns.has(xe))return Y.runOf.get(xe);let se=Y.liveOf.get(xe)||Y.heldBy.get(xe)||Y.insertedLive.get(xe);return se?ae(se):null},Q=xe=>{let se=xe&&Y.liveOf.get(xe);return se?ae(se):null},L=xe=>{let se=xe&&me(xe);return Array.isArray(se)?se[0]:se};if(m.recoveryLinks){let xe=(se,V,Se)=>(V.namespaceURI?se.getAttributeNS(V.namespaceURI,V.localName):se.getAttribute(V.qualifiedName))===Se;Sl(m.conflicts,m.recoveryLinks,{lookup:me,vetoed:Y.vetoed,vetoedAttrs:Y.vetoedAttrs,removedVetoes:Y.removedVetoes,vetoedLive:z,liveAttr:xe,ignored:u.ignored,liveRoot:e})}return{report:{applied:Y.applied,decisions:m.decisions.map(xe=>Object.assign({},xe,{node:xe.node?Q(xe.node):null,el:xe.el?Q(xe.el):null,applied:!!(xe.node?Q(xe.node):xe.el&&Q(xe.el))})),conflicts:m.conflicts.map(xe=>Object.assign({},xe,{node:xe.node?xe.kind==="text"&&xe.recovery.subject.nodeType===8?L(xe.node):Q(xe.node):xe.node,el:xe.el?xe.kind==="structure"?L(xe.el):Q(xe.el):xe.el})),localDiverged:m.localDiverged,identities:Y.identities,moved:Y.moved,replaced:Y.replaced,stats:f},loads:$}}var jl=new WeakMap;function Js(){return{applied:[],decisions:[],conflicts:[],localDiverged:!1,identities:[],moved:[],replaced:[],stats:Un()}}function Zr(e){let t=e||{},n=t.live;if(!n||n.nodeType!==9)throw new TypeError("live must be a Document");let r=jl.get(n);r||(r=Ss(n),jl.set(n,r));let o=r("remote",t.remote),s=typeof t.base=="string"&&t.base===""?null:t.base,i=s?r("base",s):null,l=t.local?t.local.root:n.documentElement,a=t.local?t.local.toLive:h=>h;Xi(n,o);let{report:u,loads:d}=Xs({liveRoot:n.documentElement,baseRoot:i?i.documentElement:null,localRoot:l,remoteRoot:o.documentElement,toLive:a,options:t,identity:t.identity||{},childrenOnly:!1,isDocument:!0});return Promise.all(d).then(()=>u)}function bf(e,t,n={}){return Zr(Object.assign({},n,{live:e,base:null,remote:t}))}function Pl(e,t){if(e==null)return{root:t.createElement("template"),first:null};if(typeof e=="string"){let r=/^\s*(?:<!--[\s\S]*?-->\s*)*(?:<!doctype[^>]*>\s*)?<(html|body)[\s>]/i.exec(e);if(r){let s=Eo(e,t),i=r[1].toLowerCase()==="html"?s.documentElement:s.body;return{root:i,first:i}}let o=t.createElement("template");return o.innerHTML=e,{root:o,first:o.content.firstElementChild}}if(e.nodeType===9)return{root:e.documentElement,first:e.documentElement};if(e.nodeType===1){let r=t.createElement("template"),o=e.isConnected;return r.content.appendChild(o?t.importNode(e,!0):e),{root:r,first:e}}if(e.nodeType===11){let r=t.createElement("template");return r.content.appendChild(e),{root:r,first:r.content.firstElementChild}}let n=t.createElement("template");for(let r of Array.from(e))n.content.appendChild(r.parentNode?t.importNode(r,!0):r);return{root:n,first:n.content.firstElementChild}}function Ys(e,t,n={}){if(!e||e.nodeType!==1)throw new TypeError("oldEl must be an Element");let r=e.ownerDocument,{base:o,...s}=n,i=!!s.children;if(Qr(s,[e]).ignored(e))return Promise.resolve(Js());let l=Pl(t,r),a=o!=null?Pl(o,r):null,u,d=null;if(i)u=l.root,d=a?a.root:null;else{if(u=l.first,d=a?a.first:null,!u){let p=Qr(s);return p.hooks.beforeNodeRemoved(e)!==!1&&(e.remove(),p.hooks.afterNodeRemoved(e)),Promise.resolve({applied:[{kind:"remove",node:e,parent:null}],decisions:[],conflicts:[],localDiverged:!1,identities:[],moved:[],replaced:[e],stats:Un()})}if(u.tagName!==e.tagName){let p=Qr(s,[e,u]);if(p.hooks.beforeNodeMorphed(e,u)===!1)return Promise.resolve(Js());let b=Xs({liveRoot:e,baseRoot:d&&d.tagName===e.tagName?d:null,localRoot:e,remoteRoot:u,toLive:m=>m,options:s,identity:s.identity||{},childrenOnly:!0,isDocument:!1}),v=un(u)?Yr(u,r):r.importNode(u,!1);if(!un(v))for(;e.firstChild;)v.appendChild(e.firstChild);return p.hooks.beforeNodeAdded(v)===!1?(Lo(b.report.conflicts,e,e),Promise.resolve(b.report)):p.hooks.beforeNodeRemoved(e)===!1?(Lo(b.report.conflicts,e,e),Promise.resolve(b.report)):(e.replaceWith(v),Lo(b.report.conflicts,e,v),p.hooks.afterNodeRemoved(e),p.hooks.afterNodeAdded(v),p.hooks.afterNodeMorphed(e,u),b.report.replaced.push(v),b.report.applied.push({kind:"insert",node:v,parent:v.parentNode},{kind:"remove",node:e,parent:v.parentNode}),Promise.all(b.loads).then(()=>b.report))}}let{report:h,loads:f}=Xs({liveRoot:e,baseRoot:d,localRoot:e,remoteRoot:u,toLive:p=>p,options:s,identity:s.identity||{},childrenOnly:i,isDocument:!1});return Promise.all(f).then(()=>h)}var Zs={mergeDocument:Zr,morphDocument:bf,morphElement:Ys,merge3:gf,morph:Kn};var jo=["textContent","innerText","innerHTML","outerHTML","value","checked","selected","disabled","readOnly","type","tagName","nodeName","nodeType","nodeValue","childElementCount","id","className","classList","baseURI","offsetWidth","offsetHeight","clientWidth","clientHeight","scrollWidth","scrollHeight","dataset","currentSrc","duration","paused","title","documentURI","contentType"],Qs=new Set(jo),Dl=new Set(["textContent","innerText","innerHTML","value","checked","selected","disabled","readOnly","type","id","className","title"]),eo=new Set(["tagName","nodeName","nodeType","nodeValue","childElementCount","classList","baseURI","documentURI","contentType","offsetWidth","offsetHeight","clientWidth","clientHeight","scrollWidth","scrollHeight","currentSrc","duration","paused","dataset"]);var Do={};As(Do,{EmptyListInsert:()=>no,MAX_RULE_DEPTH:()=>_r,MaxRuleDepthExceeded:()=>ar,NoRulesTag:()=>ei,RuleTargetReadOnly:()=>ro,RulesParseError:()=>Tr,ShapeMismatch:()=>to,UnknownRulesVersion:()=>Er,WriteRefused:()=>Po,WriteRejected:()=>ti});var Tr=class extends Error{constructor(t,n){super(t),this.name="RulesParseError",this.cause=n}},Er=class extends Error{constructor(t){super(`unknown rules version: ${t}. Library supports "1".`),this.name="UnknownRulesVersion",this.version=t}},_r=20,ar=class extends Error{constructor(t){super(`rule depth exceeded ${_r} at path: ${t.join(".")}`),this.name="MaxRuleDepthExceeded",this.path=t}},to=class extends Error{constructor(t){super(`shape mismatch: ${t.length} field(s) failed validation`),this.name="ShapeMismatch",this.mismatches=t}},no=class extends Error{constructor(t){super(`cannot add items to empty list at "${t.join(".")}" \u2014 no sibling to clone as template. Seed the list with a hidden item first.`),this.name="EmptyListInsert",this.path=t}},ro=class extends Error{constructor(t){super(`cannot write to read-only DOM property "${t}"`),this.name="RuleTargetReadOnly",this.target=t}},Po=class extends Error{constructor(t){super(`write refused: ${t.length} write(s) broke the content-only policy`),this.name="WriteRefused",this.refusals=t}},ei=class extends Error{constructor(t){super(`no <script data-rules-name~="${t}"> rules tag in this document`),this.name="NoRulesTag",this.token=t}},ti=class extends Error{constructor(t,n){super(`write rejected: ${t.length} unknown key(s), ${n.length} rule(s) with no matching element`),this.name="WriteRejected",this.unknownKeys=t,this.unmatched=n}};function Gn(e,t,n,r={}){if(Object.prototype.hasOwnProperty.call(r,"exclude")&&e.semanticExclude===!1)throw new Error("This adapter does not support semantic exclude queries; omit exclude or use the DOM adapter.");return ni(e,t,n,{depth:0,path:[]},r)}function ni(e,t,n,r,o){if(r.depth>_r)throw new ar(r.path);if(typeof n=="string")return wf(e,t,n,r,o);if(Array.isArray(n)){let[s,i]=n,l=e.find(t,s,o);return ql(o,r,l),l.map((a,u)=>ni(e,a,i,{depth:r.depth+1,path:[...r.path,u]},o))}if(typeof n=="object"&&n!==null){let s={};for(let[i,l]of Object.entries(n))s[i]=ni(e,t,l,{depth:r.depth+1,path:[...r.path,i]},o);return s}return null}function wf(e,t,n,r,o){if(n.endsWith("[]")){let l=n.slice(0,-2),a=e.find(t,l,o);return ql(o,r,a),a.map(u=>e.text(u))}if(n.startsWith("@"))return Fl(e,t,n.slice(1));let s=Vt(n);if(s!==-1){let l=n.slice(0,s),a=n.slice(s+1),u=l?e.find(t,l,o):[t];return u.length===0?null:Fl(e,u[0],a)}if(n===".")return e.text(t);let i=e.find(t,n,o);return i.length===0?null:e.text(i[0])}function ql(e,t,n){if(typeof e.onRowsRead=="function")try{e.onRowsRead(t.path.slice(),n)}catch(r){console.warn(`[hyper-html-api] onRowsRead threw at "${t.path.join(".")||"(root)"}"`,r)}}function Fl(e,t,n){if(Qs.has(n)){let o=e.prop(t,n);return o==null?null:String(o)}let r=e.attr(t,n);return r||null}var Bl=Object.freeze({data:Object.freeze({tokens:["no-data"],bundles:["editor-ui"]}),save:Object.freeze({tokens:["no-save"],bundles:["editor-ui"]}),snapshot:Object.freeze({tokens:["no-snapshot"],bundles:["editor-ui"]}),watch:Object.freeze({tokens:["no-watch"],bundles:["editor-ui"]}),undo:Object.freeze({tokens:["no-undo"],bundles:["editor-ui"]}),history:Object.freeze({tokens:[],bundles:["editor-ui"]})}),Af=Object.freeze({"editor-ui":Object.freeze(["no-data","no-save","no-snapshot","no-watch","no-undo"])}),Hl=Object.freeze(["no-save","no-snapshot","no-trigger-autosave","no-dirty","no-watch","no-undo","no-data","freeze","editor-ui"]);function ri(e,t){if(!e||e.nodeType!==1)return!1;let n=e.getAttribute?.("clay");return!!(n&&n.split(/\s+/).includes(t)||e.hasAttribute?.(t))}function Sf(e,t){if(ri(e,t))return!0;for(let[n,r]of Object.entries(Af))if(r.includes(t)&&ri(e,n))return!0;return!1}function oo(e){let t=Bl[e];if(!t)throw new Error(`Unknown region capability: ${e}`);return[...t.tokens,...t.bundles].flatMap(n=>[`[clay~="${n}"]`,`[${n}]`]).join(", ")}function Tf(e,t){let n=e&&e.nodeType===1?e:e?.parentElement;for(;n&&n.nodeType===1;){let r=Bl[t];if(!r)throw new Error(`Unknown region capability: ${t}`);if(r.tokens.some(o=>Sf(n,o))||r.bundles.some(o=>ri(n,o)))return n;n=n.parentElement}return null}function $l(e,t){return!!Tf(e,t)}var Ef=/:(?:focus(?:-within|-visible)?|hover|active|visited|defined)\b/i;function Ul(e,t){if(!/^(INPUT|TEXTAREA|SELECT|OPTION)$/.test(e.tagName||""))return;let n=(e.getAttribute?.("type")||"").toLowerCase();if("value"in e&&"value"in t&&e.tagName!=="OPTION"&&n!=="checkbox"&&n!=="radio"&&(t.value=e.value),"checked"in e&&"checked"in t&&(t.checked=e.checked),"selected"in e&&"selected"in t&&(t.selected=e.selected),e.tagName==="SELECT")for(let r=0;r<e.options.length;r++)t.options[r].selected=e.options[r].selected;"indeterminate"in e&&"indeterminate"in t&&(t.indeterminate=e.indeterminate)}function zl(e,t,n,r){if(r)return!!e.closest?.(t);let o=e;for(;o?.nodeType===1;){if(o.matches(t))return!0;if(o===n)break;o=o.parentElement}return!1}function Vl(e,t,n,r,o,s,i,l){if(e.nodeType===1&&((i?$l(e,n):zl(e,r,s,!1))||o&&(i&&e!==s?e.matches(o):zl(e,o,s,i))))return null;let a=t.importNode(e,!1);l.cloneToLive.set(a,e),l.liveToClone.set(e,a);let u=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,d=a.nodeType===1&&a.tagName==="TEMPLATE"?a.content:a;u!==e&&(l.cloneToLive.set(d,u),l.liveToClone.set(u,d));for(let h of u.childNodes||[]){let f=Vl(h,t,n,r,o,s,i,l);f&&(d.appendChild(f),h.nodeType===1&&Ul(h,f))}return e.nodeType===1&&Ul(e,a),a}function so(e,{capability:t="data",exclude:n=null,inherit:r=!0}={}){if(!e)throw new TypeError("createContentView requires a DOM context");let o=e.nodeType===9?e:e.ownerDocument;if(!o?.implementation?.createHTMLDocument)throw new TypeError("createContentView requires an HTML DOM implementation");let s=o.implementation.createHTMLDocument(""),i=new WeakMap,l=new WeakMap,a=e.nodeType===9?e.documentElement:e;n&&s.documentElement.matches(n);let u=oo(t),d=Vl(a,s,t,u,n,a,r,{cloneToLive:i,liveToClone:l});e.nodeType===9&&d&&(s.replaceChild(d,s.documentElement),l.set(e,s),i.set(s,e));let h=f=>{if(Ef.test(f))throw new Error(`Filtered content queries do not support stateful selector: ${f}`)};return{root:d,document:s,capability:t,selector:oo(t),cloneToLive:i,liveToClone:l,original(f){return i.get(f)||null},cloneOf(f){return l.get(f)||null},query(f,p=d){return h(f),Array.from(p.querySelectorAll(f),b=>i.get(b)||b)},text(f=d){return(f===d?d:l.get(f))?.textContent||""},html(f=d){return(f===d?d:l.get(f))?.innerHTML??""},clone(f=d){let p=f===d?d:l.get(f);return p?s.importNode(p,!0):null}}}function Wl(e){return e&&e.nodeType===1&&e.tagName==="SCRIPT"&&e.hasAttribute&&e.hasAttribute("data-rules-name")}function _f(e){return e?(e.nodeType===9||e.nodeType===11,e):null}var Xt={semanticExclude:!0,find(e,t,n={}){let r=_f(e);if(!r||!r.querySelectorAll)return[];let o=Array.from(r.querySelectorAll(t));n.includeRulesTag||(o=o.filter(l=>!Wl(l)));let s=[];n.skip&&s.push(n.skip);let i=n.templateAttr===null?null:n.templateAttr||"cms-template";if(i&&s.push("["+i+"]"),s.length){let l=s.join(", ");o=o.filter(a=>!a.closest||!a.closest(l))}return o},parent(e){return e?e.parentElement:null},children(e){return e?Array.from(e.children):[]},text(e,t){if(t===void 0)return(e.textContent||"").trim();e.textContent=t},attr(e,t,n){if(n===void 0)return e.hasAttribute&&e.hasAttribute(t)?e.getAttribute(t):null;e.setAttribute(t,n)},removeAttr(e,t){e&&e.removeAttribute&&e.removeAttribute(t)},prop(e,t,n){if(n===void 0){let r=e?e[t]:void 0;return r!==void 0?r:null}e[t]=n},clone(e){return e.cloneNode(!0)},insertAt(e,t,n){let r=e.children[n]||null;e.insertBefore(t,r)},remove(e){e&&e.parentNode&&e.parentNode.removeChild(e)},replaceWith(e,t){if(!e||!e.parentNode)throw new Error("dom.replaceWith: node has no parent");let r=e.ownerDocument.createElement("template");r.innerHTML=t;let o=r.content.firstElementChild;if(!o)throw new Error("dom.replaceWith: html did not parse to an element");return e.parentNode.replaceChild(o,e),o},stripIds(e){let t=0;return e.id&&(e.removeAttribute("id"),t++),(e.querySelectorAll?e.querySelectorAll("[id]"):[]).forEach(r=>{r.removeAttribute("id"),t++}),t},sameNode(e,t){return e===t}};function jn(e,t={}){if(t.exclude===null)return Xt;let n=[oo("data"),t.exclude].filter(Boolean).join(", "),r=e.nodeType===9?e:e.ownerDocument||e,o=e.nodeType===9?e.documentElement:e;if(!t._write&&!o?.matches?.(n)&&!o?.querySelector?.(n)&&!r?.querySelector?.(n))return Xt;let s=e.nodeType===9||!e.isConnected?e:e.ownerDocument,i=e.nodeType===9?e:e.ownerDocument,l=null,a=()=>l||(l=so(s,{capability:"data",exclude:t.exclude||null})),u=b=>{let v=a();return b===e?v.cloneOf(e):v.cloneOf(b)||b},d=b=>l?.original(b)||b,h=(b,v)=>{a().liveToClone.set(b,v),a().cloneToLive.set(v,b);let m=b.childNodes||[],g=v.childNodes||[];for(let y=0;y<Math.min(m.length,g.length);y++)h(m[y],g[y])},f=(b,v,m,g)=>{let y=Array.from(b.childNodes).filter(z=>l.cloneOf(z)),Y=y[0];for(;Y&&y.includes(Y);)Y=Y.nextSibling;for(let z of y)z.remove();if(m==="innerHTML"){let z=i.createElement("template");z.innerHTML=g;for(let ae of Array.from(z.content.childNodes))b.insertBefore(ae,Y||null)}else b.insertBefore(i.createTextNode(g),Y||null);let $=so(b,{capability:"data",exclude:t.exclude||null});v.replaceChildren(...Array.from($.root?.childNodes||[]));let H=z=>{let ae=$.original(z);ae&&(l.liveToClone.set(ae,z),l.cloneToLive.set(z,ae));for(let me of Array.from(z.childNodes||[]))H(me)};for(let z of Array.from(v.childNodes))H(z)},p={...Xt,find(b,v,m={}){let g=u(b);if(!g?.querySelectorAll)return[];let y=a().query(v,g);m.includeRulesTag||(y=y.filter($=>!Wl($)));let I=[];m.skip&&I.push(m.skip);let Y=m.templateAttr===null?null:m.templateAttr||"cms-template";if(Y&&I.push(`[${Y}]`),I.length){let $=I.join(", ");y=y.filter(H=>!H.closest?.($))}return y},parent(b){let v=u(b)?.parentElement;return v?d(v):null},children(b){return Array.from(u(b)?.children||[],d)},text(b,v){if(v===void 0){let y=d(b);return!y?.matches?.(n)&&!y?.querySelector?.(n)?Xt.text(y):(u(b)?.textContent||"").trim()}let m=d(b);if(!m?.matches?.(n)&&!m?.querySelector?.(n)&&!l){Xt.text(m,v);return}let g=a().cloneOf(m);g?f(m,g,"textContent",v):Xt.text(m,v)},attr(b,v,m){let g=d(b);if(m===void 0)return Xt.attr(g,v);Xt.attr(g,v,m);let y=l?.cloneOf(g);y&&(Xt.attr(y,v,m),so(g,{capability:"data",exclude:t.exclude||null}).root===null&&(y.remove(),l.liveToClone.delete(g),l.cloneToLive.delete(y)))},removeAttr(b,v){let m=d(b);Xt.removeAttr(m,v);let g=l?.cloneOf(m);g&&Xt.removeAttr(g,v)},prop(b,v,m){let g=d(b);if(m===void 0)return v==="innerHTML"||v==="outerHTML"||v==="textContent"||v==="innerText"?Xt.prop(u(g),v):Xt.prop(g,v);let y=v==="innerHTML"||v==="textContent"||v==="innerText",I=y?a().cloneOf(g):l?.cloneOf(g);I&&y?f(g,I,v,m):(Xt.prop(g,v,m),I&&Xt.prop(I,v,m))},clone(b){let v=u(b);return v===b?Xt.clone(b):i.importNode(v,!0)},insertAt(b,v,m){let g=d(b),I=p.children(g)[m]||(()=>{for(let H=g.children.length-1;H>=0;H--){let z=g.children[H];if(a().cloneOf(z))return z.nextElementSibling}return g.firstElementChild})(),Y=d(v);g.insertBefore(Y,I||null);let $=a().cloneOf(g);if($){let H=a().cloneOf(Y);H||(H=i.importNode(Y,!0),h(Y,H));let z=Array.from($.children);$.insertBefore(H,z[m]||null)}},remove(b){let v=d(b),m=a().cloneOf(v);Xt.remove(v),m&&Xt.remove(m)},replaceWith(b,v){let m=d(b),g=a().cloneOf(m),y=Xt.replaceWith(m,v);if(g){let I=so(y,{capability:"data",exclude:t.exclude||null});if(!I.root)g.remove();else{g.replaceWith(I.root);let Y=$=>{let H=I.original($);H&&(l.liveToClone.set(H,$),l.cloneToLive.set($,H));for(let z of Array.from($.childNodes||[]))Y(z)};Y(I.root)}}return y}};return p}var Or=Xt;function oi(e){try{return JSON.parse(e)}catch(t){throw new Tr(`Invalid strict JSON: ${t.message}`,t)}}function Nr(e){try{return JSON.parse(e)}catch{}let t={BRACE_OPEN:"{",BRACE_CLOSE:"}",BRACKET_OPEN:"[",BRACKET_CLOSE:"]",COLON:":",COMMA:",",STRING:"STRING",SELECTOR:"SELECTOR",IDENTIFIER:"IDENTIFIER",NUMBER:"NUMBER",BOOLEAN:"BOOLEAN"};function n(o){let s=[],i=0;for(;i<o.length;){let l=o[i];if(/\s/.test(l)){i++;continue}if("{}".includes(l)){s.push({type:l,value:l}),i++;continue}if(l==="["){let h=!1,f=i+1;for(;f<o.length&&/\s/.test(o[f]);)f++;if(f<o.length&&/[a-zA-Z_]/.test(o[f])&&(h=!0),!h){s.push({type:l,value:l}),i++;continue}}if(l==="]"){s.push({type:l,value:l}),i++;continue}if(l===":"){s.push({type:t.COLON,value:l}),i++;continue}if(l===","){s.push({type:t.COMMA,value:l}),i++;continue}if(l==='"'||l==="'"){let h=l,f=i+1;for(;f<o.length&&o[f]!==h;)o[f]==="\\"&&f++,f++;s.push({type:t.STRING,value:o.substring(i+1,f),quoted:!0,sourceQuote:h}),i=f+1;continue}let a=i,u;for(;a<o.length&&!/[{},]/.test(o[a]);)if(o[a]===":"){let h=[":first",":last",":nth-child",":nth-of-type",":first-child",":last-child",":first-of-type",":last-of-type",":only-child",":only-of-type",":hover",":focus",":active",":visited",":disabled",":enabled",":checked",":empty",":root",":target",":not",":before",":after",":nth-last-child",":nth-last-of-type"],f=!1;for(let p of h){let b=p.substring(1);if(o.substring(a+1,a+1+b.length)===b){f=!0,a+=b.length;break}}if(!f)break}else if(o[a]==="["){for(a++;a<o.length&&o[a]!=="]";){if(o[a]==='"'||o[a]==="'"){let h=o[a];for(a++;a<o.length&&o[a]!==h;)o[a]==="\\"&&a++,a++}a++}a<o.length&&o[a]==="]"&&a++}else a++;u=o.substring(i,a);let d=t.IDENTIFIER;/^-?\d+(\.\d+)?$/.test(u)?d=t.NUMBER:u==="true"||u==="false"||u==="null"?d=t.BOOLEAN:/^[.#@\[]|[.#@\[]| /.test(u)&&(d=t.SELECTOR),s.push({type:d,value:u,quoted:!1}),i=a}return s}function r(o){let s="";for(let i=0;i<o.length;i++){let l=o[i];if("{}".includes(l.type)||"[]".includes(l.type)){s+=l.value;continue}if(l.type===t.COLON){s+=l.value;continue}if(l.type===t.COMMA){let a=o[i+1];if(a&&(a.type==="}"||a.type==="]"))continue;s+=l.value;continue}if(l.type===t.STRING&&l.quoted){let a=l.value;l.sourceQuote==="'"&&(a=a.replace(/\\'/g,"'"),a=a.replace(/(\\*)"/g,(u,d)=>d.length%2===0?d+'\\"':u)),s+=`"${a}"`;continue}if(l.type===t.NUMBER||l.type===t.BOOLEAN){s+=l.value;continue}if(l.type===t.SELECTOR||l.type===t.IDENTIFIER){s+=`"${l.value}"`;continue}s+=`"${l.value}"`}return s}try{let o=n(e),s=r(o);return JSON.parse(s)}catch(o){throw new Tr("Invalid extraction rules syntax: "+o.message,o)}}var Gl="1",Kl=/^[a-zA-Z0-9_-]+$/;function io(e,t,n){let r;if(n===void 0)r="script[data-rules-name]";else{if(typeof n!="string"||!Kl.test(n))throw new Error(`hyper-html-api: invalid rules token ${JSON.stringify(n)} (must match ${Kl})`);r=`script[data-rules-name~="${n}"]`}let o=e.find(t,r,{includeRulesTag:!0});if(o.length===0)return null;n!==void 0&&o.length>1&&console.warn(`hyper-html-api: ${o.length} rules tags match data-rules-name~="${n}"; using the first.`);let s=o[0],i=e.attr(s,"data-rules-version");if(i!==Gl)throw new Er(i);return{rules:Nr(e.text(s)),tagNode:s}}var zg=new Function("url","return import(url)");function ea(e,t,n,r){let o=e.length,s=t.length,i=new Array(o).fill(-1);if(r){let m=new Set;for(let g=0;g<o;g++){let y=r[g];!(y>=0&&y<s)||m.has(y)||(i[g]=y,m.add(y))}}if(o===0||s===0)return i;let l=e.map(m=>Zl(m,n)),a=t.map(m=>Zl(m,n)),u=new Array(s).fill(!1);for(let m of i)m>=0&&(u[m]=!0);let d=new Map;a.forEach((m,g)=>{u[g]||d.set(m,d.has(m)?-1:g)});let h=new Map;l.forEach((m,g)=>{i[g]>=0||h.set(m,(h.get(m)||0)+1)}),l.forEach((m,g)=>{if(i[g]>=0||h.get(m)!==1)return;let y=d.get(m);y===void 0||y===-1||u[y]||(i[g]=y,u[y]=!0)});let f=[];for(let m=0;m<o;m++)i[m]<0&&f.push(m);let p=[];for(let m=0;m<s;m++)u[m]||p.push(m);if(f.length===0||p.length===0)return i;let b=o*s+1,v=(m,g)=>Nf(e[m],t[g],n)*b+Math.abs(m-g);for(let[m,g]of Cf(f,p,v))i[m]=g;return i}var ta=e=>typeof e=="object"&&e!==null;function Zl(e,t){if(!ta(t))return e==null?" null":String(e);let n=Object.keys(t);return JSON.stringify(n.map(r=>{let o=JSON.stringify(e?.[r]);return o===void 0?" undef":o}))}function Nf(e,t,n){if(!ta(n))return e===t?0:1;let r=Object.keys(n);if(r.length===0)return 0;let o=0;for(let s of r){let i=JSON.stringify(e?.[s]),l=JSON.stringify(t?.[s]);i!==l&&o++}return o}function Cf(e,t,n){return e.length<=t.length?Ql(e,t,n,!1):Ql(t,e,(r,o)=>n(o,r),!0)}function Ql(e,t,n,r){let o=e.length,s=t.length,i=[];for(let h=0;h<=o;h++)i.push(new Float64Array(s+1).fill(1/0));let l=[];for(let h=0;h<=o;h++)l.push(new Uint8Array(s+1));for(let h=0;h<=s;h++)i[o][h]=0;for(let h=o-1;h>=0;h--)for(let f=s-1;f>=0;f--){let p=n(e[h],t[f])+i[h+1][f+1],b=i[h][f+1];p<=b?(i[h][f]=p,l[h][f]=1):i[h][f]=b}let a=[],u=0,d=0;for(;u<o&&d<s;)l[u][d]&&(a.push(r?[t[d],e[u]]:[e[u],t[d]]),u++),d++;return a}function ii(e,t,n,r,o,s,i,l={}){let a=e.find(t,n,l);if(o.length===0){a.forEach($=>e.remove($)),si(l,"onRowsApplied",s.path,[]);return}let u=o.length>a.length,d=a[0]||null;if(u&&!d&&(d=If(e,t,n,l),!d))throw new no(s.path);let h=a.map($=>Lf(e,$,r,l)),f=null;if(u&&d){f=e.clone(d),l.templateAttr&&e.removeAttr(f,l.templateAttr);let $=e.stripIds(f);$>0&&console.warn(`[hyper-html-api] stripped ${$} id attribute(s) from cloned template at "${s.path.join(".")||"(root)"}"`)}let p=ea(o,h,r,Mf(e,a,o,s,l)),b=a[0]||d,v=e.parent(b),m=a.length>0?na(e,v,b):0,g=jf(e,a),y=new Set,I=[],Y=o.map(($,H)=>{let z=p[H];if(z>=0)return y.add(z),I.push(!1),a[z];I.push(!0);let ae=e.clone(f);return e.stripIds(ae),ae});a.forEach(($,H)=>{y.has(H)||e.remove($)}),g?Y.forEach(($,H)=>{let z=m+H;e.children(v).findIndex(Q=>e.sameNode(Q,$))!==z&&e.insertAt(v,$,z)}):Pf(e,Y,I,v,m),Rf(e,Y,r,o,s,i,l),si(l,"onRowsApplied",s.path,Y)}function si(e,t,n,r){if(typeof e[t]=="function")try{return e[t](n.slice(),r)}catch(o){console.warn(`[hyper-html-api] ${t} threw at "${n.join(".")||"(root)"}"`,o);return}}function Mf(e,t,n,r,o){let s=si(o,"identifyRows",r.path,n);if(!Array.isArray(s))return null;let i=new Array(n.length).fill(-1),l=new Set;for(let a=0;a<n.length;a++)if(s[a]){for(let u=0;u<t.length;u++)if(!(l.has(u)||!e.sameNode(t[u],s[a]))){i[a]=u,l.add(u);break}}return i}function Rf(e,t,n,r,o,s,i){t.forEach((l,a)=>{if(n===null){let u=r[a],d=u==null?"":String(u);e.text(l)!==d&&e.text(l,d)}else{let u=s(e,l,n,r[a],{depth:o.depth+1,path:[...o.path,a]},i);u&&u!==l&&(t[a]=u)}})}function Lf(e,t,n,r){return n===null?e.text(t):Gn(e,t,n,r.onRowsRead?{...r,onRowsRead:void 0}:r)}function na(e,t,n){let r=e.children(t);for(let o=0;o<r.length;o++)if(e.sameNode(r[o],n))return o;return-1}function If(e,t,n,r){if(!r.templateAttr)return null;let o=t;for(;o;){let s=e.find(o,n,{includeRulesTag:!1,templateAttr:null});for(let i of s)if(e.attr(i,r.templateAttr)!=null)return i;o=e.parent(o)}return null}function jf(e,t){if(t.length<=1)return!0;let n=e.parent(t[0]);if(!n)return!1;let r=e.children(n),o=[];for(let s of t){let i=r.findIndex(l=>e.sameNode(l,s));if(i===-1)return!1;o.push(i)}return o.sort((s,i)=>s-i),o[o.length-1]-o[0]===o.length-1}function Pf(e,t,n,r,o){let s=null,i=o;for(let l=0;l<t.length;l++){if(!n[l]){s=t[l];continue}let a=s?e.parent(s):r;if(!a)continue;let u=s?na(e,a,s)+1:i++;e.insertAt(a,t[l],u),s=t[l]}}var ra=new Set(["checked","selected","disabled","readOnly","paused"]);function Cr(e,t,n,r,o={}){if(Object.prototype.hasOwnProperty.call(o,"exclude")&&e.semanticExclude===!1)throw new Error("This adapter does not support semantic exclude queries; omit exclude or use the DOM adapter.");let s=[];if(li(n,r,[],s),s.length)throw new to(s);Fo(e,t,n,r,{depth:0,path:[]},o)}function Fo(e,t,n,r,o,s={}){if(o.depth>_r)throw new ar(o.path);if(r===void 0)return t;if(typeof n=="string")return Df(e,t,n,r,o,s);if(Array.isArray(n)){let[i,l]=n;return ii(e,t,i,l,r,o,Fo,s),t}if(typeof n=="object"&&n!==null){for(let[i,l]of Object.entries(n)){let a=Fo(e,t,l,r==null?r:r[i],{depth:o.depth+1,path:[...o.path,i]},s);a&&a!==t&&(t=a)}return t}return t}function Df(e,t,n,r,o,s){if(n.endsWith("[]")){let a=n.slice(0,-2);return ii(e,t,a,null,r,o,Fo,s),t}if(n.startsWith("@"))return sa(e,t,n.slice(1),r);let i=Vt(n);if(i!==-1){let a=n.slice(0,i),u=n.slice(i+1),d=a?e.find(t,a,s):[t];return d.length===0||sa(e,d[0],u,r),t}if(n===".")return oa(e,t,r),t;let l=e.find(t,n,s);return l.length===0||oa(e,l[0],r),t}function oa(e,t,n){let r=n==null?"":String(n);e.text(t)!==r&&e.text(t,r)}function sa(e,t,n,r){if(eo.has(n)){let s=e.prop(t,n);if(s===r||s!=null&&r!=null&&String(s)===String(r))return t;throw new ro(n)}if(n==="outerHTML"){let s=r==null?"":String(r);return e.replaceWith(t,s)}if(Dl.has(n)){let s=Ff(n,r);return e.prop(t,n)!==s&&e.prop(t,n,s),t}let o=r==null?"":String(r);return e.attr(t,n)!==o&&e.attr(t,n,o),t}function Ff(e,t){return t==null?ra.has(e)?!1:"":ra.has(e)?t==="false"?!1:!!t:t}function li(e,t,n,r){if(t!==void 0){if(typeof e=="string"){if(e.endsWith("[]")){Array.isArray(t)?t.forEach((o,s)=>{typeof o=="object"&&o!==null&&r.push({path:ao([...n,s]),expected:"scalar",got:lo(o)})}):r.push({path:ao(n),expected:"array",got:lo(t)});return}t!==null&&typeof t=="object"&&r.push({path:ao(n),expected:"scalar",got:lo(t)});return}if(Array.isArray(e)){if(!Array.isArray(t)){r.push({path:ao(n),expected:"array",got:lo(t)});return}let o=e[1];t.forEach((s,i)=>li(o,s,[...n,i],r));return}if(typeof e=="object"&&e!==null){if(t===null||Array.isArray(t)||typeof t!="object"){r.push({path:ao(n),expected:"object",got:lo(t)});return}for(let[o,s]of Object.entries(e))li(s,t[o],[...n,o],r)}}}function lo(e){return e===null?"null":Array.isArray(e)?"array":typeof e}function ao(e){return e.join(".")}var Xf=Object.freeze({refusedRuleForms:["innerHTML","outerHTML"],refusedTargets:["script","style","template","noscript","iframe","object","embed","xmp","plaintext","noembed","noframes","meta","link","base","animate","set","animatemotion","animatetransform"],refusedAttributes:["style","srcdoc","is","http-equiv","sandbox","allow","nonce","integrity","charset","htmlclaytoken","htmlclayid","data-rules-name","data-rules-version","clay","contenteditable",...Hl],refusedAttributePrefixes:["on"],urlAttributes:["href","src","srcset","action","formaction","poster","cite","data","ping","background","longdesc","usemap","xlink:href","manifest","codebase","icon"],refusedSchemes:["javascript","vbscript","data"]});function ai(e,t,n){if(n&&typeof n=="object")return{rules:n,tagNode:null};if(typeof n=="string"){let r=t&&t.ownerDocument?t.ownerDocument:t;return io(e,r,n)}return null}var ln={extract:(e,t,n={})=>Gn(jn(e,n),e,t,n),apply:(e,t,n,r={})=>Cr(jn(e,{...r,_write:!0}),e,t,n,r),findRulesIn:(e,t)=>io(Or,e,t),findRules:(e,t)=>ai(Or,e,t),bind:(e,t,n={})=>{let r=ai(Or,e,t);if(!r){let o=typeof t=="string"?`data-rules-name~="${t}"`:"the provided rules object";throw new Error(`hyper-html-api: could not resolve rules for ${o}`)}return{...r,get:()=>Gn(jn(e,n),e,r.rules,n),set:o=>Cr(jn(e,{...n,_write:!0}),e,r.rules,o,n)}},parseStrict:oi,parseRelaxed:Nr,ruleAttrIndex:Vt,splitRule:To,errors:Do,DOM_PROPERTIES:jo};var ui={};As(ui,{fromString:()=>Pn,getRuleAtPath:()=>cr,getValueAtPath:()=>Qf,setAtPath:()=>ci,toString:()=>Zf});function Zf(e){return e.map(String).join(".")}function Pn(e){return e===""?[]:e.split(".").map(t=>/^\d+$/.test(t)?Number(t):t)}function cr(e,t){let n=e;for(let r of t){if(n==null)return;if(typeof n=="string"){if(n.endsWith("[]")&&(typeof r=="number"||r==="*")){n=n.slice(0,-2);continue}return}if(Array.isArray(n)){if(typeof r!="number"&&r!=="*")return;n=n[1];continue}if(typeof n=="object"){if(typeof r=="number"||!(r in n))return;n=n[r];continue}return}return n}function Qf(e,t){let n=e;for(let r of t){if(n==null)return;n=n[r]}return n}function ci(e,t,n){if(t.length===0)return n;let[r,...o]=t;if(typeof r=="number"){let s=Array.isArray(e)?[...e]:[];return s[r]=ci(s[r],o,n),s}return{...e&&typeof e=="object"?e:{},[r]:ci((e||{})[r],o,n)}}function co(e){if(typeof e=="string")return e.endsWith("[]")?[]:"";if(Array.isArray(e))return[];if(typeof e=="object"&&e!==null){let t={};for(let[n,r]of Object.entries(e))t[n]=co(r);return t}return""}function qo(e,t,{ignoreActiveValue:n=!0}={}){Zs.morph(e,t,{morphStyle:"innerHTML",ignoreActiveValue:n,restoreFocus:!0,formStateSync:"property",policy:"raw"})}var la=new WeakMap,fi=e=>e.map(String).join(".");function ed(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}function aa(e,t){if(!e||!e.querySelector)return null;let n=e.querySelector(`[data-hcms-path="${ed(t)}"]`),r=n&&n.querySelector(".hcms-array-items");return r?Array.from(r.children).filter(o=>o.matches&&o.matches("[data-hcms-card], [data-hcms-array-item]")):null}function ca(e,t,n){let r=aa(e,t);!r||r.length!==n.length||r.forEach((o,s)=>{n[s]&&la.set(o,n[s])})}function Bo(){let e=new Map;return{hooks:{onRowsRead(t,n){e.set(fi(t),n)}},seed(t){for(let[n,r]of e)ca(t,n,r);e.clear()}}}function ua(e){return{identifyRows(t,n){let r=aa(e,fi(t));return!r||r.length!==n.length?null:r.map(o=>la.get(o)||null)},onRowsApplied(t,n){ca(e,fi(t),n)}}}var fa={skip:"[data-hcms-shell]",templateAttr:"cms-template"},di="data-hcms-rollback-ui",td=0;function da(e,t,n,r={}){return nd(e,t,n,r)}function nd(e,t,n,r){let{shellRoot:o,structural:s,structuralPath:i,formRoot:l}=r,a=l?{...fa,...ua(l)}:fa;if(!s)try{return ln.apply(e,t,n,a),{ok:!0}}catch(f){return{ok:!1,error:f}}let u=rd(e,t,i),d=u?sd(u):null,h=u?null:ld(e,o);try{return ln.apply(e,t,n,a),{ok:!0}}catch(f){return d?id(u,d):h&&ad(e,o,h),{ok:!1,error:f}}}function rd(e,t,n){if(!n||!e)return null;let r=Pn(n),o=[],s=t;for(let i of r){if(typeof s=="string"||s==null||Array.isArray(s))break;if(typeof s=="object"&&i in s){if(o.push(i),s=s[i],Array.isArray(s)||typeof s=="string"&&s.endsWith("[]"))break}else return null}return!Array.isArray(s)&&!(typeof s=="string"&&s.endsWith("[]"))?null:od(e,t,o)}function od(e,t,n){if(n.length===0)return null;let r=e,o=t;for(let s=0;s<n.length;s++){let i=n[s];if(!o||typeof o!="object"||Array.isArray(o))return null;let l=o[i];if(l==null)return null;if(s===n.length-1){if(Array.isArray(l)){let[a]=l;return r.querySelector?.(a)?.parentElement||null}if(typeof l=="string"&&l.endsWith("[]")){let a=l.slice(0,-2);return r.querySelector?.(a)?.parentElement||null}return null}o=l}return null}function sd(e){let t=[],n=[];for(let r of Array.from(e.childNodes))t.push(hi(r,n));return{nodes:t,retained:n}}function id(e,t){let n=e.cloneNode(!1);for(let r of t.nodes)n.appendChild(r);Kn(e,Array.from(n.childNodes),ma()),ha(e,t.retained)}function ld(e,t){let n=[],r=[];for(let o of Array.from(e.childNodes))o===t||t&&o.contains?.(t)||n.push(hi(o,r));return{nodes:n,retained:r}}function ad(e,t,n){let r=e.cloneNode(!1);for(let o of n.nodes)r.appendChild(o);Kn(e,Array.from(r.childNodes),ma()),ha(e,n.retained)}function hi(e,t){let n=e.cloneNode(!1);if(e.nodeType===1&&e.matches('[editor-ui],[clay~="editor-ui"]')){let s=String(++td);n.setAttribute(di,s),t.push({id:s,node:e})}let r=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,o=n.nodeType===1&&n.tagName==="TEMPLATE"?n.content:n;for(let s of Array.from(r.childNodes||[]))o.appendChild(hi(s,t));return n}function ha(e,t){for(let{id:n,node:r}of t){let o=e.querySelector(`[${di}="${n}"]`);o===r?r.removeAttribute(di):r.isConnected?o?.remove():o?.replaceWith(r)}}function ma(){return{morphStyle:"innerHTML",policy:"raw",restoreFocus:!1,scripts:{handle:!1,merge:!1}}}function $o(e){return e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replace(/[-_]/g," ").replace(/\s+/g," ").trim().replace(/^./,t=>t.toUpperCase())}var cd='<div class="hcms-drag-handle mirk-sortable__grip" aria-hidden="true"><div class="mirk-sortable__dots"><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span></div></div>',mi='<svg class="hcms-x" viewBox="0 0 16 16" shape-rendering="crispEdges" aria-hidden="true"><path d="M4 4 L12 12 M12 4 L4 12" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="square"></path></svg>',ba={"@scalar":`
|
|
4
5
|
<label class="hcms-field" data-hcms-shape="scalar">
|
|
5
6
|
<span class="hcms-label" data-hcms-label></span>
|
|
6
7
|
<textarea class="mirk-textarea" rows="1" data-hcms-field></textarea>
|
|
@@ -40,13 +41,13 @@ var hypercms=(()=>{var Qo=Object.defineProperty;var _c=Object.getOwnPropertyDesc
|
|
|
40
41
|
</section>
|
|
41
42
|
`,"@object-array-item":`
|
|
42
43
|
<article class="hcms-card mirk-sortable__item" draggable="true">
|
|
43
|
-
${
|
|
44
|
+
${cd}
|
|
44
45
|
<div class="hcms-card-body mirk-sortable__body">
|
|
45
46
|
<div class="hcms-card-fields"></div>
|
|
46
47
|
<div class="hcms-card-controls">
|
|
47
48
|
<button type="button" class="hcms-move hcms-move-up hcms-sr-only" data-hcms-action="move-up" aria-label="Move up">\u2191</button>
|
|
48
49
|
<button type="button" class="hcms-move hcms-move-down hcms-sr-only" data-hcms-action="move-down" aria-label="Move down">\u2193</button>
|
|
49
|
-
<button type="button" class="hcms-remove hcms-remove--card" data-hcms-action="remove" aria-label="Remove">${
|
|
50
|
+
<button type="button" class="hcms-remove hcms-remove--card" data-hcms-action="remove" aria-label="Remove">${mi}</button>
|
|
50
51
|
</div>
|
|
51
52
|
</div>
|
|
52
53
|
<div class="hcms-error" hidden></div>
|
|
@@ -60,7 +61,7 @@ var hypercms=(()=>{var Qo=Object.defineProperty;var _c=Object.getOwnPropertyDesc
|
|
|
60
61
|
<span class="mirk-button__label">Choose</span>
|
|
61
62
|
</label>
|
|
62
63
|
<a class="mirk-file__name" data-hcms-field></a>
|
|
63
|
-
<button type="button" class="hcms-upload-clear" data-hcms-action="clear-upload" aria-label="Remove file">${
|
|
64
|
+
<button type="button" class="hcms-upload-clear" data-hcms-action="clear-upload" aria-label="Remove file">${mi}</button>
|
|
64
65
|
</div>
|
|
65
66
|
<div class="hcms-error" hidden></div>
|
|
66
67
|
</div>
|
|
@@ -74,7 +75,7 @@ var hypercms=(()=>{var Qo=Object.defineProperty;var _c=Object.getOwnPropertyDesc
|
|
|
74
75
|
</label>
|
|
75
76
|
<figure class="mirk-image__thumb">
|
|
76
77
|
<span class="mirk-image__frame"><img class="mirk-image__preview" data-hcms-field alt="" /></span>
|
|
77
|
-
<button type="button" class="hcms-upload-clear hcms-upload-clear--badge" data-hcms-action="clear-upload" aria-label="Remove image">${
|
|
78
|
+
<button type="button" class="hcms-upload-clear hcms-upload-clear--badge" data-hcms-action="clear-upload" aria-label="Remove image">${mi}</button>
|
|
78
79
|
</figure>
|
|
79
80
|
</div>
|
|
80
81
|
<div class="hcms-error" hidden></div>
|
|
@@ -148,11 +149,11 @@ var hypercms=(()=>{var Qo=Object.defineProperty;var _c=Object.getOwnPropertyDesc
|
|
|
148
149
|
<input class="hcms-chip-field" data-hcms-field aria-label="Item" placeholder="\u2026" />
|
|
149
150
|
<button type="button" class="hcms-remove" data-hcms-action="remove" aria-label="Remove">\xD7</button>
|
|
150
151
|
</span>
|
|
151
|
-
`},Cf=["@scalar","@object","@scalar-array","@scalar-array-item","@object-array","@object-array-item"];function xo(e){let t=e.head||e.documentElement;if(t)for(let n of Cf)ql(e,t,n)}function Bi(e,t){if(!jl[t])return null;let n=e&&(e.head||e.documentElement);return n?ql(e,n,t):null}var Ll={src:"@image",checked:"@checkbox",innerHTML:"@richtext"},ko={image:"@image",file:"@file",checkbox:"@checkbox",toggle:"@toggle",select:"@select",radio:"@radio",textarea:"@textarea",number:"@number",richtext:"@richtext"},Of=new Set([...Object.values(ko),"@chips","@chips-item"]);function $r(e,t,n,r){if(typeof e!="string")return"@scalar";let o=St(e),i=Ao(e,o,n,r),s=So(i,t,"data-hcms-component");if(s&&ko[s]){let l=ko[s],a=Array.isArray(n)&&n.some(h=>h==="*"||typeof h=="number");return l==="@number"&&!Il(e,o,t,a,i).every(Rf)||(l==="@checkbox"||l==="@toggle")&&(o<0||e.slice(o+1)!=="checked")&&!Il(e,o,t,a,i).every(Mf)?"@scalar":l}if(o>=0){let l=e.slice(o+1);if(Ll[l])return Ll[l]}return"@scalar"}function Dl(e,t,n,r){if(typeof e!="string")return null;let o=St(e),i=So(Ao(e,o,n,r),t,"data-hcms-component");return i&&ko[i]||null}var Nf=/^-?\d+(\.\d+)?([eE][+-]?\d+)?$/;function Rf(e){return e==null||e===""?!0:Nf.test(String(e))}function Mf(e){return e==null||e===""||e==="true"||e==="false"}function Il(e,t,n,r,o){if(!n||!n.querySelectorAll)return[];if(!o||o===".")return[];let i=null;try{i=n.querySelectorAll(o)}catch{return[]}let s=t>=0?e.slice(t+1):null,l=[];for(let a of i)if(!(a.closest&&a.closest("[cms-template], [data-hcms-shell]"))&&(s?s==="value"&&"value"in a?l.push(a.value):l.push(a.getAttribute?a.getAttribute(s):null):l.push((a.textContent||"").trim()),!r))break;return l}function vo(e,t){if(typeof e!="string"||!e.endsWith("[]")||!t||!t.querySelector)return null;let n=e.slice(0,-2).trim();if(!n)return null;let r=null;try{r=t.querySelector(n)}catch{return null}let o=r&&r.closest?r.closest("[data-hcms-component]"):null;return(o&&o.getAttribute?o.getAttribute("data-hcms-component"):null)==="chips"?{array:"@chips",item:"@chips-item"}:null}function sr(e,t,n){let r=e.join("."),o=e.map(i=>typeof i=="number"?"*":i).join(".");return r&&fn(n,r)||o&&o!==r&&fn(n,o)||fn(n,t)}function wo(e,t,n){let r=vo(e,n);if(!r)return null;let o=sr(t,r.array,n);return o&&o.getAttribute("data-hcms-tpl")===r.array?r:null}function Pl(e,t,n,r){if(typeof e!="string")return null;let o=St(e),i=So(Ao(e,o,n,r),t,"data-hcms-options");if(i==null)return null;let s=i.trim().split(/\s+/).filter(Boolean);return s.length?s:null}function Fl(e,t,n,r){if(typeof e!="string")return null;let o=St(e);return So(Ao(e,o,n,r),t,"data-hcms-crop")}function Lf(e,t){return t>=0?e.slice(0,t):e}function Ao(e,t,n,r){let o=Lf(e,t);return o&&o!=="."?o:If(r,n)}function If(e,t){if(e==null||!Array.isArray(t))return"";let n=[],r=e;for(let o of t){if(r==null||typeof r=="string")break;if(Array.isArray(r)){if(typeof r[0]!="string"||o!=="*"&&typeof o!="number")return"";n.push(r[0]),r=r[1];continue}if(typeof r!="object"||!Object.prototype.hasOwnProperty.call(r,o))return"";r=r[o]}return n.join(" ")}function So(e,t,n){if(!t||!t.querySelector||!e||e===".")return null;let r=null;try{r=t.querySelector(e)}catch{return null}return r&&r.getAttribute?r.getAttribute(n):null}function To(e,t){if(!e||t==null)return;n(t,[]);function n(r,o){let i=qn(r);if(i==="scalar"){let s=$r(r,e,o,t);Of.has(s)&&Bi(e,s);return}if(i==="scalar-array"){let s=vo(r,e);s&&(Bi(e,s.array),Bi(e,s.item));return}if(i==="object"){for(let[s,l]of Object.entries(r))n(l,[...o,s]);return}if(i==="object-array"){let s=r[1],l=[...o,"*"];if(s&&typeof s=="object"&&!Array.isArray(s))for(let[a,h]of Object.entries(s))n(h,[...l,a]);else n(s,l)}}}function ql(e,t,n){let r=fn(e,n);if(r)return r;let o=e.createElement("template");return o.setAttribute("data-hcms-tpl",n),o.setAttribute("save-remove",""),o.innerHTML=jl[n].trim(),t.appendChild(o),o}function fn(e,t){return!e||!e.querySelector?null:e.querySelector(`template[data-hcms-tpl="${jf(t)}"]`)}function jf(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}function qn(e){return typeof e=="string"?e.endsWith("[]")?"scalar-array":"scalar":Array.isArray(e)?"object-array":typeof e=="object"&&e!==null?"object":"scalar"}function Ur(e){return e?!!(e.content||e).querySelector("[data-hcms-field]"):!1}var Bl={IMG:"src",A:"href"};function Eo(e){if(!e)return"value";let t=(e.tagName||"").toUpperCase();return t==="INPUT"?(e.getAttribute("type")||"text").toLowerCase()==="checkbox"?"checked":"value":t==="TEXTAREA"||t==="SELECT"?"value":Bl[t]?Bl[t]:e.hasAttribute&&e.hasAttribute("contenteditable")?"innerHTML":null}function Hl(e,t){let n=(e.tagName||"").toUpperCase(),r=(e.getAttribute&&e.getAttribute("type")||"").toLowerCase(),o=Eo(e),s=`${Ul(n,r)}[data-hcms-field="${lr(t)}"]`;return n==="INPUT"&&r==="radio"?`${s}:checked@value`:o?`${s}@${o}`:s}function Df(e){let t=(e.tagName||"").toUpperCase(),n=(e.getAttribute&&e.getAttribute("type")||"").toLowerCase(),r=Eo(e),i=`${Ul(t,n)}[data-hcms-field]`;return t==="INPUT"&&n==="radio"?`${i}:checked@value`:r?`${i}@${r}`:i}function Ul(e,t){return e==="INPUT"?t?`input[type="${t}"]`:"input":e==="TEXTAREA"?"textarea":e==="SELECT"?"select":e==="IMG"?"img":e==="A"?"a":':not([data-hcms-shape="scalar"]):not([data-hcms-shape="object"]):not([data-hcms-shape="object-array"]):not([data-hcms-shape="scalar-array"])'}function lr(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var $l=new Set(["__proto__","constructor","prototype"]);function _o(e,t){return n(e,[]);function n(h,d){let b=qn(h);if(b==="scalar")return r(h,d);if(b==="scalar-array")return o(h,d);if(b==="object-array")return i(h,d);if(b==="object"){let f=Object.create(null);for(let[u,m]of Object.entries(h)){if($l.has(u))throw new Error(`hypercms: rule key "${u}" is forbidden at "${d.join(".")||"<root>"}"`);f[u]=n(m,[...d,u])}return f}return null}function r(h,d){let b=d.length?d[d.length-1]:null,f=typeof b=="string"?b:"__value",u=a(d,f);if(u)return Hl(u,f);let m=l($r(h,t,d,e),f);return m?Hl(m,f):`input[data-hcms-field="${lr(f)}"]@value`}function o(h,d){let b=wo(h,d,t),f=b&&l(b.item,null)||l("@scalar-array-item",null),u=f?Df(f):"input[data-hcms-field]@value";return[s(d,"[data-hcms-array-item]"),u]}function i(h,d){let[,b]=h,f=[...d,"*"],u=s(d,"[data-hcms-card]");if(b&&typeof b=="object"&&!Array.isArray(b)){let m=Object.create(null);for(let[p,v]of Object.entries(b)){if($l.has(p))throw new Error(`hypercms: rule key "${p}" is forbidden at "${f.join(".")}"`);m[p]=n(v,[...f,p])}return[u,m]}return[u,n(b,[...f,0])]}function s(h,d){let b=h.length?h[h.length-1]:"",f=h.some(p=>p==="*"),u=h.join(".");return`${f?`[data-hcms-field="${lr(b)}"]`:`[data-hcms-path="${lr(u)}"]`} > .hcms-array-items > ${d}`}function l(h,d){if(!t)return null;let b=fn(t,h);if(!b)return null;let f=b.content||b;if(d){let u=f.querySelector(`[data-hcms-field="${lr(d)}"]`);if(u)return u}return f.querySelector("[data-hcms-field]")}function a(h,d){if(!t)return null;let b=h.map(m=>typeof m=="number"?"*":m).join("."),u=[h.join("."),b];for(let m=h.length-1;m>=0;m--){let p=h.slice(0,m).map(v=>typeof v=="number"?"*":v);p.push("*"),u.push(p.join("."))}for(let m of u){if(!m)continue;let p=fn(t,m);if(!p||!Ur(p))continue;let v=p.content||p,A=v.querySelector(`[data-hcms-field="${lr(d)}"]`)||v.querySelector("[data-hcms-field]");if(A)return A}return null}}function Hi(e){if(!e)return"";let t=String(e).split(/[?#]/)[0],n=t.split("/").pop()||t;try{return decodeURIComponent(n)}catch{return n}}function ar({pageRules:e,formRules:t,data:n,doc:r}){let o=r.createDocumentFragment(),i=$i(e,[],n,r,e);return i&&o.appendChild(i),o}function Vl({shape:e,itemShape:t,pathArr:n,data:r,doc:o,itemKey:i,pageRules:s}){if(e==="object-array-item")return Kl(t,n,r,o,s);if(e==="scalar-array-item")return Gl(n,r,o,i||null);throw new Error(`hypercms: buildItem called with unknown shape "${e}"`)}function $i(e,t,n,r,o){let i=qn(e);return i==="scalar"?Pf(e,t,n,r,o):i==="object"?Hf(e,t,n,r,o):i==="object-array"?$f(e,t,n,r,o):i==="scalar-array"?Uf(e,t,n,r):null}function Pf(e,t,n,r,o){let i=$r(e,r,t,o),s=sr(t,i,r);if(!s)throw new Error(`hypercms: missing template for scalar at "${t.join(".")}"`);let l=Dl(e,r,t,o);l==="@number"&&i==="@scalar"&&console.info(`[hypercms] field "${t.join(".")}" declares component "@number" but its value isn't a plain number; rendering a text input so the value is preserved`),(l==="@checkbox"||l==="@toggle")&&i==="@scalar"&&console.info(`[hypercms] field "${t.join(".")}" declares component "${l}" but its value isn't true/false; rendering a text input so the value is preserved`),Wl(s,l===i?l:null,t);let a=cr(s,r);ur(a,t);let h=s.getAttribute?.("data-hcms-tpl");if((i==="@select"||i==="@radio")&&h===i&&Ff(a,e,t,n,r,i,o),i==="@image"&&h==="@image"){let d=Fl(e,r,t,o);d!=null&&!a.hasAttribute("data-hcms-crop")&&a.setAttribute("data-hcms-crop",d)}return zf(a,xn(t)),Co(a,xn(t)),Oo(a,xn(t)),Ql(a,n),i==="@file"&&Bf(a),a}function Wl(e,t,n){if(!t)return;let r=e.getAttribute?.("data-hcms-tpl");r&&r!==t&&console.info(`[hypercms] field "${n.join(".")}" declares component "${t}" but custom template "${r}" wins`)}function Ff(e,t,n,r,o,i,s){let l=Pl(t,o,n,s),a=l?[...l]:[],h=r==null?"":String(r);if(h!==""&&!a.includes(h)&&a.unshift(h),!l&&(qf(e,"data-hcms-options required (space-separated values)"),a.length===0)){e.querySelector(".mirk-radio")?.remove();return}if(i==="@select"){let f=e.querySelector("select[data-hcms-field]");if(!f)return;for(let u of a){let m=o.createElement("option");m.value=u,m.textContent=yo(u),f.appendChild(m)}return}let d=e.querySelector(".mirk-radio");if(!d||!d.parentNode)return;let b=Ui(n.join("."));for(let f of a){let u=d.cloneNode(!0),m=u.querySelector('input[type="radio"]');m&&(m.value=f,m.name=b);let p=u.querySelector(".mirk-radio__label");p&&(p.textContent=yo(f)),d.parentNode.insertBefore(u,d)}d.remove()}function Ui(e){return"hcms-"+String(e).replace(/[^A-Za-z0-9_-]/g,"-")}function qf(e,t){let n=e.querySelector?e.querySelector(".hcms-error"):null;n&&(n.textContent=t,n.hidden=!1)}function Bf(e){let t=e.querySelector?e.querySelector("a.mirk-file__name[data-hcms-field]"):null;t&&(t.textContent=Hi(t.getAttribute("href")))}function Hf(e,t,n,r,o){let i=sr(t,"@object",r);if(!i)throw new Error(`hypercms: missing template for object at "${t.join(".")}"`);let s=cr(i,r);if(ur(s,t),Co(s,xn(t)),Oo(s,xn(t)),Ur(i))return ta(s,e,t),ea(s,e,n),s;let l=No(s,".hcms-object-fields",i,t);for(let[a,h]of Object.entries(e)){let d=n==null?null:n[a],b=$i(h,[...t,a],d,r,o);b&&l.appendChild(b)}return s}function $f(e,t,n,r,o){let i=sr(t,"@object-array",r);if(!i)throw new Error(`hypercms: missing template for object-array at "${t.join(".")}"`);let s=cr(i,r);ur(s,t),Co(s,xn(t)),Oo(s,xn(t)),Xl(s,i),Zl(s,i,t);let l=No(s,".hcms-array-items",i,t),[,a]=e;return(Array.isArray(n)?n:[]).forEach((d,b)=>{let f=Kl(a,[...t,b],d,r,o);f&&l.appendChild(f)}),Jl(s),s}function Kl(e,t,n,r,o){let i=Yl(t,"object-array-item",r);if(!i)throw new Error(`hypercms: missing item template for "${t.join(".")}"`);let s=cr(i,r);if(s.setAttribute("data-hcms-card",""),s.classList.contains("hcms-card")||s.classList.add("hcms-card"),ur(s,t),Ur(i))return e&&typeof e=="object"&&!Array.isArray(e)&&(ta(s,e,t),ea(s,e,n)),s;let l=No(s,".hcms-card-fields",i,t);if(e&&typeof e=="object"&&!Array.isArray(e))for(let[a,h]of Object.entries(e)){let d=n==null?null:n[a],b=$i(h,[...t,a],d,r,o);b&&l.appendChild(b)}return s}function Uf(e,t,n,r){let o=vo(e,r),i=wo(e,t,r),s=o?o.array:"@scalar-array",l=sr(t,s,r);if(!l)throw new Error(`hypercms: missing template for scalar-array at "${t.join(".")}"`);Wl(l,o?o.array:null,t);let a=cr(l,r);ur(a,t),Co(a,xn(t)),Oo(a,xn(t)),Xl(a,l),Zl(a,l,t),i&&a.setAttribute("data-hcms-item-tpl",i.item);let h=No(a,".hcms-array-items",l,t);return(Array.isArray(n)?n:[]).forEach((b,f)=>{let u=Gl([...t,f],b,r,i?i.item:null);u&&h.appendChild(u)}),Jl(a),a}function Gl(e,t,n,r){let o=Yl(e,"scalar-array-item",n,r);if(!o)throw new Error(`hypercms: missing item template for "${e.join(".")}"`);let i=cr(o,n);return i.setAttribute("data-hcms-array-item",""),i.classList.contains("hcms-array-item")||i.classList.add("hcms-array-item"),ur(i,e),Ql(i,t),i}function Yl(e,t,n,r){let o=e.map(i=>typeof i=="number"?"*":i).join(".");return fn(n,o)||r&&fn(n,r)||fn(n,"@"+t)}function cr(e,t){let n=e.content||e,r=t.createElement("div");return r.appendChild(n.cloneNode(!0)),r.firstElementChild||r}function ur(e,t){e.setAttribute("data-hcms-path",t.join("."))}function zf(e,t){let n=t==null?"":String(t);if(e.matches&&e.matches("[data-hcms-field]")){e.getAttribute("data-hcms-field")||e.setAttribute("data-hcms-field",n);return}(e.querySelectorAll?e.querySelectorAll("[data-hcms-field]"):[]).forEach(o=>{o.getAttribute("data-hcms-field")||o.setAttribute("data-hcms-field",n)})}function Co(e,t){t==null||t===""||!e.setAttribute||e.hasAttribute?.("data-hcms-field")||e.setAttribute("data-hcms-field",String(t))}function Oo(e,t){if(t==null||t==="")return;(e.querySelectorAll?e.querySelectorAll("[data-hcms-label]"):[]).forEach(r=>{(r.textContent||"").trim()===""&&(r.textContent=yo(String(t)))})}function Xl(e,t){["data-hcms-no-add","data-hcms-no-remove","data-hcms-no-reorder"].forEach(n=>{t.hasAttribute(n)&&e.setAttribute(n,"")}),["data-hcms-min-items","data-hcms-max-items"].forEach(n=>{t.hasAttribute(n)&&e.setAttribute(n,t.getAttribute(n))})}function Jl(e){let t=e.querySelector?e.querySelector(".hcms-array-items"):null;if(!t)return;let n=Array.from(t.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),r=n.length,o=zl(e,"data-hcms-max-items"),i=zl(e,"data-hcms-min-items"),s=e.hasAttribute("data-hcms-no-add"),l=e.hasAttribute("data-hcms-no-remove"),a=e.hasAttribute("data-hcms-no-reorder"),h=e.querySelector('[data-hcms-action="add"]');h&&(h.hidden=s||o!=null&&r>=o),n.forEach((d,b)=>{let f=d.querySelector('[data-hcms-action="remove"]');f&&(f.hidden=l||i!=null&&r<=i);let u=d.querySelector('[data-hcms-action="move-up"]');u&&(u.hidden=a||b===0);let m=d.querySelector('[data-hcms-action="move-down"]');m&&(m.hidden=a||b===r-1)})}function zl(e,t){if(!e||!e.hasAttribute(t))return null;let n=parseInt(e.getAttribute(t),10);return Number.isFinite(n)?n:null}function Zl(e,t,n){if(e.hasAttribute("data-hcms-no-reorder")||t.hasAttribute("data-hcms-no-reorder"))return;let r=e.querySelector(".hcms-array-items");if(!r)return;let o="hcms-"+n.join(".");r.setAttribute("sortable",o),r.setAttribute("onsorted","hypercmsCommit && hypercmsCommit()")}function xn(e){return e.length?e[e.length-1]:null}function Ql(e,t){let n=Vf(e);if(n.length!==0)for(let r of n)na(r,t)}function Vf(e){if(!e)return[];let t=[];return e.matches?.("[data-hcms-field]")&&Wf(e)&&t.push(e),(e.querySelectorAll?e.querySelectorAll("input[data-hcms-field], textarea[data-hcms-field], select[data-hcms-field], img[data-hcms-field], a[data-hcms-field], [contenteditable][data-hcms-field]"):[]).forEach(r=>t.push(r)),t}function Wf(e){let t=(e.tagName||"").toUpperCase();return!!(t==="INPUT"||t==="TEXTAREA"||t==="SELECT"||t==="IMG"||t==="A"||e.hasAttribute?.("contenteditable"))}function ea(e,t,n){(e.querySelectorAll?e.querySelectorAll("[data-hcms-field]"):[]).forEach(o=>{let i=o.getAttribute("data-hcms-field");if(!i)return;if(!t||typeof t!="object"||!(i in t)){console.warn(`[hypercms] inline template field "${i}" is not in the rule shape; ignoring`);return}let s=n==null?null:n[i];na(o,s)})}function ta(e,t,n){if(!e.querySelectorAll)return;e.querySelectorAll("[data-hcms-field]").forEach(o=>{let i=o.getAttribute("data-hcms-field");if(!i||t&&typeof t=="object"&&!(i in t))return;let s=[...n,i].join(".");o.setAttribute("data-hcms-path",s)})}function No(e,t,n,r){if(!e.querySelector)return e;let o=e.querySelector(t);if(o)return o;let i=n?.getAttribute?.("data-hcms-tpl")||r.join(".");throw new Error(`hypercms: template "${i}" is in slotted mode but has no ${t} element`)}function na(e,t){let n=Eo(e),r=(e.tagName||"").toUpperCase(),o=(e.getAttribute("type")||"").toLowerCase();if(r==="INPUT"&&o==="radio"){e.checked=e.value!=null&&String(e.value)===String(t??"");return}if(n==="checked"){e.checked=t===!0||t==="true";return}if(n){e[n]=t==null?"":String(t);return}e.textContent=t==null?"":String(t)}var Kf={Mutation:(e,t)=>e?.Mutation??t?.Mutation,undo:(e,t)=>e?.undo??t?.undo,onPrepareForSave:(e,t)=>e?.addDocumentTransform??t?.onPrepareForSave,onSnapshot:(e,t)=>e?.onSnapshot??t?.onSnapshot,consent:(e,t)=>e?.confirm??t?.consent,RichClay:(e,t)=>e?.RichClay??t?.RichClay,quickcrop:(e,t)=>e?.quickcrop??t?.quickcrop,upload:(e,t)=>e?.upload??(t?.uploadFileBasic?Yf(t.uploadFileBasic):null)},Gf={402:"payment-required",413:"too-large",415:"unsupported-type",401:"unauthorized",403:"forbidden",404:"not-found"},zi=()=>({ok:!1,msg:"Upload cancelled",msgType:"skipped",code:"aborted",uploads:[]});function Yf(e){return async function(n,{onProgress:r,signal:o}={}){if(o?.aborted)return zi();try{let i=await e(n,{onProgress:l=>{r?.({loaded:null,total:null,percent:l})}});if(o?.aborted)return zi();let s=i&&i.uploads||[];return typeof s[0]?.url!="string"?{ok:!1,msg:"The host accepted the file but did not say where it put it",msgType:"error",code:"bad-response",uploads:[]}:{ok:!0,msg:i.msg||"Uploaded",msgType:i.msgType||"success",code:i.code||null,uploads:s}}catch(i){if(o?.aborted)return zi();let s={};try{s=JSON.parse(i?.response||"{}")}catch{s={}}let l=s.code||Gf[i?.status]||"error";return{ok:!1,msg:i&&i.message||"Upload failed",msgType:"error",code:l,uploads:[]}}}}function It(e,t){let n=Kf[e];if(!n)throw new Error(`hypercms: unknown platform capability "${e}"`);let r=t||(typeof window<"u"?window:null);return r&&n(r.clay,r.hyperclay)||null}var ra=["clay:mutation-ready","hyperclay:mutation-ready"],oa=["clay:sync-applied","hyperclay:livesync-applied"],ia=["clay:ready","hyperclay:ready"];function fr(e,t,n){let r=null,o=i=>{r!==null&&r!==i.type||(r=i.type,queueMicrotask(()=>{r=null}),n(i))};for(let i of t)e.addEventListener(i,o);return()=>{for(let i of t)e.removeEventListener(i,o)}}var dn="data-hcms-bound",_n="data-hcms-bound-id",Vi=new Map;function sa(e,t){Vi.set(e,t)}function la(e){Vi.delete(e)}function aa(e){let t=e.getAttribute(_n);if(!t)return null;let n=Vi.get(t);return!n||!n.restorable()?null:n.originalHTML}var Bn="data-hcms-owns-richclay";function dr(e){return e&&e.richclay&&e.richclay.RichClay||It("RichClay",e)||(e&&typeof e.RichClay=="function"?e.RichClay:null)}function ca(e,t,n){!e||typeof e.setAttribute!="function"||(e.setAttribute(dn,t?"rich":"plain"),n&&e.setAttribute(Bn,"true"))}function ua(e,t){if(!e||typeof e.querySelectorAll!="function")return;let n=e.querySelectorAll(`[${dn}]`);if(!n.length)return;let r=dr(t);if(r&&typeof r.stripFromClone=="function")try{r.stripFromClone(e)}catch(o){console.warn("[hypercms] richclay strip failed; editor state may reach the save",o)}for(let o of n)o.getAttribute(Bn)==="true"&&o.removeAttribute("data-richclay"),o.removeAttribute(Bn),o.removeAttribute(dn)}function fa(e,t){if(!e||typeof e.removeAttribute!="function")return;let n=dr(t);if(n&&typeof n.stripElement=="function")try{n.stripElement(e)}catch(r){console.warn("[hypercms] richclay element strip failed; the clone stays editable",r)}else e.removeAttribute("contenteditable"),e.removeAttribute("no-undo");e.getAttribute(Bn)==="true"&&e.removeAttribute("data-richclay"),e.removeAttribute(Bn),e.removeAttribute(dn),e.removeAttribute(_n)}function da(e,t){if(!t||e==null)return e;return n(e);function n(r){if(typeof r=="string"){if(r.endsWith("[]")||St(r)!==-1)return r;let o=null;try{o=t.querySelector(r)}catch{return r}return o&&o.children.length>0?r+"@innerHTML":r}if(Array.isArray(r))return r;if(r&&typeof r=="object"){let o=Object.create(null);for(let[i,s]of Object.entries(r))o[i]=n(s);return o}return r}}function ha(e,t){if(!t||e==null)return e;return n(e,[t]);function n(r,o){if(typeof r=="string")return r.endsWith("[]")||St(r)!==-1?r:o.some(i=>Xf(i,r))?r+"@innerHTML":r;if(Array.isArray(r)){let[i,s]=r;if(typeof i!="string"||!i)return r;let l=Jf(t,i);return l.length?[i,n(s,l)]:r}if(r&&typeof r=="object"){let i=Object.create(null);for(let[s,l]of Object.entries(r))i[s]=n(l,o);return i}return r}}function Xf(e,t){let n=null;try{n=e.querySelector(t)}catch{return!1}return n?n.hasAttribute(dn)?n.getAttribute(dn)==="rich":n.children.length>0:!1}function Jf(e,t){try{return[...e.querySelectorAll(t)]}catch{return[]}}function hr(e){if(!e||e.tagName!=="TEXTAREA")return;let t=e.ownerDocument.defaultView||(typeof window<"u"?window:null);t&&t.CSS&&t.CSS.supports&&t.CSS.supports("field-sizing: content")||(e.style.height="auto",e.style.height=e.scrollHeight+"px")}function Cn(e,t,n=!0){if(!e||!e.querySelectorAll||(e.querySelectorAll("textarea[data-hcms-field]").forEach(hr),n===!1))return;let r=t&&t.defaultView||(typeof window<"u"?window:null),o=dr(r);o&&e.querySelectorAll("[contenteditable][data-hcms-field]").forEach(i=>{if(i.__hcmsRichclay)return;let s;try{s=new o(i,{inline:!0,hyperclay:!1,toolbar:["bold","italic","link","undo","redo"]})}catch(a){console.warn("[hypercms] richclay activation failed; field stays plain contenteditable",a);return}i.__hcmsRichclay=s;let l=s&&s.squire;l&&typeof l.addEventListener=="function"&&l.addEventListener("input",()=>{let a=r&&r.Event||Event;i.dispatchEvent(new a("input",{bubbles:!0}))})})}var Wi=new WeakSet;function Hn(e,t){let n=It("undo");if(!n)return t();n.pause();try{let r=t();return r&&r.ok?n.commitCaptured(e):n.discardCaptured(),r}finally{n.resume()}}function vn(e){let t=It("undo");if(!t)return e();t.pause();try{return e()}finally{t.discardCaptured(),t.resume()}}function Lo(e){let{formRoot:t}=e;if(!t||Wi.has(t))return;Wi.add(t);let n=s=>{let l=s.target;!l||!l.closest||l.closest("[data-hcms-form-root]")&&l.matches("input, textarea, select, [contenteditable][data-hcms-field]")&&(l.tagName==="TEXTAREA"&&hr(l),!l.matches('input[type="file"]')&&(!l.closest("[data-hcms-field]")&&!l.hasAttribute?.("data-hcms-field")||ma(l,e)))},r=s=>{let l=s.target;if(!(!l||!l.closest)&&l.closest("[data-hcms-form-root]")){if(l.matches('input[type="file"][data-hcms-upload]')){id(l,e);return}l.matches('input[type="checkbox"], input[type="radio"], select')&&ma(l,e)}},o=s=>{let l=s.target;if(!l||!l.closest)return;let a=l.closest("[data-hcms-action]");if(!a)return;let h=a.getAttribute("data-hcms-action");if(h==="add"||h==="remove"||h==="move-up"||h==="move-down"||h==="clear-upload"){if(!a.closest("[data-hcms-form-root]"))return}else if(h==="close"&&!a.closest("[data-hcms-shell]"))return;if(h==="add"){let d=a.closest("[data-hcms-path]");if(!d)return;let b=d.getAttribute("data-hcms-path");zr(b,e)}else if(h==="remove"){let d=a.closest("[data-hcms-card], [data-hcms-array-item]");if(!d)return;Yi(d,e)}else if(h==="move-up"||h==="move-down"){let d=a.closest("[data-hcms-card], [data-hcms-array-item]");if(!d)return;Gi(d,h==="move-up"?-1:1,e)}else h==="clear-upload"?cd(a,e):h==="close"&&e.onCloseRequested?.()},i=t.ownerDocument;i.addEventListener("input",n,!0),i.addEventListener("change",r,!0),i.addEventListener("click",o,!0),e.detachEvents=()=>{i.removeEventListener("input",n,!0),i.removeEventListener("change",r,!0),i.removeEventListener("click",o,!0),Wi.delete(t)}}var Zf=new Set(["value","checked"]);function Qf(e,t){if(!t)return null;let n=yn(t);if(n.some(a=>typeof a=="number"||a==="*"))return null;let r=Fn(e.pageRules,n);if(typeof r!="string")return null;let o=Vt.ruleAttrIndex(r);if(o===-1)return null;let i=r.slice(o+1);if(!Zf.has(i))return null;let s=r.slice(0,o),l=s?e.pageRoot.querySelector(s):e.pageRoot;return l?{el:l,prop:i,oldValue:l[i]}:null}function ma(e,t){let r=(e.closest("[data-hcms-field]")||e).closest("[data-hcms-path]")?.getAttribute("data-hcms-path")||"",o=Qf(t,r);if(tn(Gt(t),{path:r,structural:!1},t),o){let i=It("undo");i&&typeof i.recordValue=="function"&&i.recordValue(o.el,{prop:o.prop,oldValue:o.oldValue,newValue:o.el[o.prop]})}}var ed={type:"image/webp",quality:.85,maxWidth:2048,maxHeight:2048};async function td(e,t){let n=t&&t.getAttribute?t.getAttribute("data-hcms-crop"):null;if(n==null)return{file:e};let r=It("quickcrop");if(typeof r!="function")return{file:e};try{let o=typeof window<"u"&&(window.clay?.modal??window.themodal)||"auto",i=await r(e,{aspect:nd(n),modal:o,...ed});return i===null?null:{file:rd(i.blob,e.name),dataURL:i.dataURL}}catch(o){return pr(t,o&&o.message||"Crop failed"),null}}function nd(e){let t=String(e??"").trim().toLowerCase();if(t===""||t==="free")return null;let n=t.match(/^(\d+(?:\.\d+)?)\s*[:/]\s*(\d+(?:\.\d+)?)$/);if(!n)return null;let r=parseFloat(n[1]),o=parseFloat(n[2]);return!r||!o?null:r/o}function rd(e,t){let n=e.type==="image/webp"?".webp":e.type==="image/jpeg"?".jpg":".png",r=String(t||"image").replace(/\.[^.]+$/,"");try{return new File([e],r+n,{type:e.type})}catch{return e}}var od=new Set(["unsupported","payment-required"]);async function id(e,t){let n=e.files&&e.files[0];if(!n)return;let r=e.closest("[data-hcms-path]");if(!r)return;let o=r.getAttribute("data-hcms-path")||"";pr(r,null);let i=await td(n,r);if(!i||t.closed){On(e);return}let s=i.file,l=i.dataURL||null,a=It("upload");if(typeof a!="function")return Ki(e,r,t,o,await pa(s,l,r),s);ya(r,l),ga(r,0);let h=ld(t),d;try{d=await a(s,{signal:h?.signal,onProgress:({percent:f})=>ga(r,f)})}finally{ad(t,h),fd(r)}if(t.closed){On(e);return}if(d.code==="aborted"){On(e);return}if(d.ok)return Ki(e,r,t,o,d.uploads[0].url,s);if(!od.has(d.code)){pr(r,d.msg||"Upload failed"),t.dispatch?.("hcms:error",{error:new Error(d.msg||"Upload failed"),code:d.code,path:o}),On(e);return}let b=d.code==="payment-required"?"This file is stored in the page. Add a paid plan to upload files.":null;return Ki(e,r,t,o,await pa(s,l,r),s,b)}function Ki(e,t,n,r,o,i,s=null){if(n.closed){On(e);return}if(ya(t,null),pr(t,null),!o){On(e);return}ka(t,o,i.name),tn(Gt(n),{path:r,structural:!1},n),s&&pr(t,s,"info"),On(e)}async function pa(e,t,n){return t||await sd(e,n)}function sd(e,t){let n=t?.ownerDocument?.defaultView?.FileReader||globalThis.FileReader;return n?new Promise(r=>{let o=new n;o.onload=()=>r(typeof o.result=="string"?o.result:""),o.onerror=()=>r("");try{o.readAsDataURL(e)}catch{r("")}}):Promise.resolve("")}function ld(e){if(typeof AbortController!="function")return null;let t=new AbortController;return(e.uploads||(e.uploads=new Set)).add(t),t}function ad(e,t){t&&e.uploads?.delete(t)}function cd(e,t){let n=e.closest("[data-hcms-path]");if(!n)return;let r=n.getAttribute("data-hcms-path")||"";ka(n,"","");let o=n.querySelector('input[type="file"][data-hcms-upload]');o&&On(o),pr(n,null),tn(Gt(t),{path:r,structural:!1},t)}function ud(e){return e.querySelector?e.querySelector("img[data-hcms-field], a[data-hcms-field]"):null}function ka(e,t,n){let r=ud(e);if(!r)return;let o=(r.tagName||"").toUpperCase();o==="IMG"?r.src=t||"":o==="A"&&(r.href=t||"",r.textContent=t?n||Hi(t):"")}function On(e){try{e.value=""}catch{}}function ya(e,t){let n=e.querySelector?e.querySelector(".mirk-image__frame"):null;n&&(t?n.style.backgroundImage=`url("${t.replace(/"/g,"%22")}")`:n.style.removeProperty("background-image"))}function ga(e,t){let n=Math.max(0,Math.min(100,Number(t)||0));e.setAttribute("data-hcms-uploading",""),e.style?.setProperty?.("--hcms-upload-progress",`${n}%`)}function fd(e){e.removeAttribute("data-hcms-uploading"),e.style?.removeProperty?.("--hcms-upload-progress")}function pr(e,t,n="error"){let r=e.querySelector?e.querySelector(":scope > .hcms-error"):null;r&&(r.classList.toggle("hcms-error--info",!!t&&n==="info"),t?(r.textContent=t,r.hidden=!1):(r.textContent="",r.hidden=!0))}function zr(e,t){let{formRoot:n,pageRules:r}=t,o=n.querySelector(`[data-hcms-path="${gr(e)}"]`);if(!o)throw new Error(`hypercms: no element at path "${e}"`);let i=o.querySelector(".hcms-array-items");if(!i)throw new Error(`hypercms: array container missing .hcms-array-items at "${e}"`);let s=yn(e),l=gd(r,s),a=Array.isArray(l),h=typeof l=="string"&&l.endsWith("[]");if(!a&&!h)throw new Error(`hypercms: path "${e}" is not an array`);let d=Mo(o,"data-hcms-max-items"),b=i.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]");if(o.hasAttribute("data-hcms-no-add")||d!=null&&b.length>=d)return;let f=b.length,u=a?l[1]:l.replace(/\[\]$/,""),m=Hr(a?u:"string"),p=Vl({shape:a?"object-array-item":"scalar-array-item",itemShape:u,pathArr:[...s,f],data:m,doc:t.doc,itemKey:o.getAttribute("data-hcms-item-tpl")||null,pageRules:r});return i.appendChild(p),Cn(p,t.doc,t.view?.enhanceFormRichText!==!1),Ji(o),Hn(`Add ${e}`,()=>tn(Gt(t),{path:e,structural:!0},t))}function Gi(e,t,n){let r=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]');if(!r||r.hasAttribute("data-hcms-no-reorder"))return;let o=r.querySelector(".hcms-array-items");if(!o)return;let i=Array.from(o.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),s=i.indexOf(e);if(s<0)return;let l=s+t;if(l<0||l>=i.length)return;let a=e.querySelector(`[data-hcms-action="${t<0?"move-up":"move-down"}"]`);return t<0?o.insertBefore(e,i[l]):o.insertBefore(e,i[l].nextSibling),Zi(o),Ji(r),a&&typeof a.focus=="function"&&e.querySelector(`[data-hcms-action="${t<0?"move-up":"move-down"}"]`)?.focus?.(),Hn(`Reorder ${r.getAttribute("data-hcms-path")||""}`,()=>tn(Gt(n),{path:r.getAttribute("data-hcms-path")||"",structural:!0},n))}var Ro="Delete this item?";function dd(e,t){let n=e&&e.getAttribute("data-hcms-confirm-remove");if(n!=null)return/^(off|false|no|0)$/i.test(n.trim())?null:n||Ro;let r=t&&t.confirmRemove;return r===!1?null:typeof r=="string"?r||Ro:r===!0||e&&e.getAttribute("data-hcms-shape")==="object-array"?Ro:null}function Yi(e,t){let n=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]'),r=dd(n,t);if(r==null)return mr(e,t);let o=It("consent")||typeof window<"u"&&window.consent;typeof o=="function"?Promise.resolve(o(r)).then(()=>{t.closed||mr(e,t)},()=>{}):typeof window<"u"&&typeof window.confirm=="function"?window.confirm(r)&&mr(e,t):mr(e,t)}function mr(e,t){let n=e.getAttribute("data-hcms-path")||"",r=e.parentElement,o=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]');if(!o?.hasAttribute("data-hcms-no-remove")){if(o){let i=Mo(o,"data-hcms-min-items"),s=o.querySelector(".hcms-array-items"),l=s?s.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]").length:0;if(i!=null&&l<=i)return}return e.remove(),r&&Zi(r),o&&Ji(o),Hn(`Remove ${n}`,()=>tn(Gt(t),{path:n,structural:!0},t))}}function tn(e,t,n){if(n.closed)return{ok:!1,skipped:!0,closed:!0};let r=Vr(e);if(!t.structural&&r===n.lastFingerprint)return{ok:!0,skipped:!0};let o=Object.hasOwn(n,"writeRules")?n.writeRules:n.pageRules,i=Nl(n.pageRoot,o,e,{shellRoot:n.shellRoot,structural:!!t.structural,structuralPath:t.path||null,formRoot:n.formRoot});return i.ok?(n.lastFingerprint=r,n.lastData=e,ba(n,null),n.dispatch?.("hcms:change",{data:e,path:t.path,structural:!!t.structural}),n.onChange?.(e,t)):(ba(n,pd(i.error,t.path)),n.dispatch?.("hcms:error",{error:i.error,attemptedData:e}),n.onError?.(i.error)),i}function Io(e,t){let n=gr(t),r=`[data-hcms-path="${n}"] input[data-hcms-field], [data-hcms-path="${n}"] textarea[data-hcms-field], [data-hcms-path="${n}"] select[data-hcms-field], [data-hcms-path="${n}"] img[data-hcms-field], [data-hcms-path="${n}"] a[data-hcms-field], [data-hcms-path="${n}"] [contenteditable][data-hcms-field], input[data-hcms-path="${n}"][data-hcms-field], textarea[data-hcms-path="${n}"][data-hcms-field], select[data-hcms-path="${n}"][data-hcms-field], img[data-hcms-path="${n}"][data-hcms-field], a[data-hcms-path="${n}"][data-hcms-field], [contenteditable][data-hcms-path="${n}"][data-hcms-field]`;return e.querySelector(r)}function jo(e,t,n,r){let o=(e.tagName||"").toUpperCase(),i=(e.getAttribute("type")||"").toLowerCase();if(o==="INPUT"&&i==="checkbox"){e.checked=t===!0||t==="true";return}if(o==="INPUT"&&i==="radio"){let s=gr(r),l=n.querySelectorAll(`[data-hcms-path="${s}"][data-hcms-field][type="radio"], [data-hcms-path="${s}"] [data-hcms-field][type="radio"]`);l.length?l.forEach(a=>{a.checked=String(a.value)===String(t??"")}):e.checked=String(e.value)===String(t??"");return}if(o==="IMG"){e.src=t==null?"":String(t);return}if(o==="A"){e.href=t==null?"":String(t);return}if(e.hasAttribute&&e.hasAttribute("contenteditable")){e.innerHTML=t==null?"":String(t);return}if("value"in e){e.value=t==null?"":String(t);return}e.textContent=t==null?"":String(t)}function Gt(e){let t=Vt.extract(e.formRoot,e.formRules,{exclude:null});return Nn(t,e.formRules)}function Nn(e,t){if(t==null||e==null)return e;if(typeof t=="string")return t.endsWith("@checked")?e===!0||e==="true":e;if(Array.isArray(t)){if(!Array.isArray(e))return e;let[,n]=t;return e.map(r=>Nn(r,n))}if(typeof t=="object"){if(typeof e!="object"||Array.isArray(e))return e;let n={};for(let[r,o]of Object.entries(t))n[r]=Nn(e[r],o);return n}return e}function ba(e,t){e.lastErrors=t&&t.length?t:null,Xi(e)}function Xi(e){if(hd(e),e.errorEl&&(e.errorEl.textContent="",e.errorEl.hidden=!0),!e.lastErrors)return;let t=[];for(let{message:n,path:r}of e.lastErrors){if(r!=null&&r!==""){let o=md(e.formRoot,r);if(o){o.textContent=o.textContent?`${o.textContent}
|
|
152
|
+
`},ud=["@scalar","@object","@scalar-array","@scalar-array-item","@object-array","@object-array-item"];function Uo(e){let t=e.head||e.documentElement;if(t)for(let n of ud)va(e,t,n)}function pi(e,t){if(!ba[t])return null;let n=e&&(e.head||e.documentElement);return n?va(e,n,t):null}var pa={src:"@image",checked:"@checkbox",innerHTML:"@richtext"},Ho={image:"@image",file:"@file",checkbox:"@checkbox",toggle:"@toggle",select:"@select",radio:"@radio",textarea:"@textarea",number:"@number",richtext:"@richtext"},fd=new Set([...Object.values(Ho),"@chips","@chips-item"]);function uo(e,t,n,r){if(typeof e!="string")return"@scalar";let o=Vt(e),s=Wo(e,o,n,r),i=Ko(s,t,"data-hcms-component");if(i&&Ho[i]){let l=Ho[i],a=Array.isArray(n)&&n.some(u=>u==="*"||typeof u=="number");return l==="@number"&&!ga(e,o,t,a,s).every(hd)||(l==="@checkbox"||l==="@toggle")&&(o<0||e.slice(o+1)!=="checked")&&!ga(e,o,t,a,s).every(md)?"@scalar":l}if(o>=0){let l=e.slice(o+1);if(pa[l])return pa[l]}return"@scalar"}function ka(e,t,n,r){if(typeof e!="string")return null;let o=Vt(e),s=Ko(Wo(e,o,n,r),t,"data-hcms-component");return s&&Ho[s]||null}var dd=/^-?\d+(\.\d+)?([eE][+-]?\d+)?$/;function hd(e){return e==null||e===""?!0:dd.test(String(e))}function md(e){return e==null||e===""||e==="true"||e==="false"}function ga(e,t,n,r,o){if(!n||!n.querySelectorAll)return[];if(!o||o===".")return[];let s=null;try{s=n.querySelectorAll(o)}catch{return[]}let i=t>=0?e.slice(t+1):null,l=[];for(let a of s)if(!(a.closest&&a.closest("[cms-template], [data-hcms-shell]"))&&(i?i==="value"&&"value"in a?l.push(a.value):l.push(a.getAttribute?a.getAttribute(i):null):l.push((a.textContent||"").trim()),!r))break;return l}function zo(e,t){if(typeof e!="string"||!e.endsWith("[]")||!t||!t.querySelector)return null;let n=e.slice(0,-2).trim();if(!n)return null;let r=null;try{r=t.querySelector(n)}catch{return null}let o=r&&r.closest?r.closest("[data-hcms-component]"):null;return(o&&o.getAttribute?o.getAttribute("data-hcms-component"):null)==="chips"?{array:"@chips",item:"@chips-item"}:null}function Mr(e,t,n){let r=e.join("."),o=e.map(s=>typeof s=="number"?"*":s).join(".");return r&&_n(n,r)||o&&o!==r&&_n(n,o)||_n(n,t)}function Vo(e,t,n){let r=zo(e,n);if(!r)return null;let o=Mr(t,r.array,n);return o&&o.getAttribute("data-hcms-tpl")===r.array?r:null}function ya(e,t,n,r){if(typeof e!="string")return null;let o=Vt(e),s=Ko(Wo(e,o,n,r),t,"data-hcms-options");if(s==null)return null;let i=s.trim().split(/\s+/).filter(Boolean);return i.length?i:null}function xa(e,t,n,r){if(typeof e!="string")return null;let o=Vt(e);return Ko(Wo(e,o,n,r),t,"data-hcms-crop")}function pd(e,t){return t>=0?e.slice(0,t):e}function Wo(e,t,n,r){let o=pd(e,t);return o&&o!=="."?o:gd(r,n)}function gd(e,t){if(e==null||!Array.isArray(t))return"";let n=[],r=e;for(let o of t){if(r==null||typeof r=="string")break;if(Array.isArray(r)){if(typeof r[0]!="string"||o!=="*"&&typeof o!="number")return"";n.push(r[0]),r=r[1];continue}if(typeof r!="object"||!Object.prototype.hasOwnProperty.call(r,o))return"";r=r[o]}return n.join(" ")}function Ko(e,t,n){if(!t||!t.querySelector||!e||e===".")return null;let r=null;try{r=t.querySelector(e)}catch{return null}return r&&r.getAttribute?r.getAttribute(n):null}function Go(e,t){if(!e||t==null)return;n(t,[]);function n(r,o){let s=ur(r);if(s==="scalar"){let i=uo(r,e,o,t);fd.has(i)&&pi(e,i);return}if(s==="scalar-array"){let i=zo(r,e);i&&(pi(e,i.array),pi(e,i.item));return}if(s==="object"){for(let[i,l]of Object.entries(r))n(l,[...o,i]);return}if(s==="object-array"){let i=r[1],l=[...o,"*"];if(i&&typeof i=="object"&&!Array.isArray(i))for(let[a,u]of Object.entries(i))n(u,[...l,a]);else n(i,l)}}}function va(e,t,n){let r=_n(e,n);if(r)return r;let o=e.createElement("template");return o.setAttribute("data-hcms-tpl",n),o.setAttribute("save-remove",""),o.innerHTML=ba[n].trim(),t.appendChild(o),o}function _n(e,t){return!e||!e.querySelector?null:e.querySelector(`template[data-hcms-tpl="${bd(t)}"]`)}function bd(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}function ur(e){return typeof e=="string"?e.endsWith("[]")?"scalar-array":"scalar":Array.isArray(e)?"object-array":typeof e=="object"&&e!==null?"object":"scalar"}function fo(e){return e?!!(e.content||e).querySelector("[data-hcms-field]"):!1}var wa={IMG:"src",A:"href"};function Yo(e){if(!e)return"value";let t=(e.tagName||"").toUpperCase();return t==="INPUT"?(e.getAttribute("type")||"text").toLowerCase()==="checkbox"?"checked":"value":t==="TEXTAREA"||t==="SELECT"?"value":wa[t]?wa[t]:e.hasAttribute&&e.hasAttribute("contenteditable")?"innerHTML":null}function Aa(e,t){let n=(e.tagName||"").toUpperCase(),r=(e.getAttribute&&e.getAttribute("type")||"").toLowerCase(),o=Yo(e),i=`${Ta(n,r)}[data-hcms-field="${Rr(t)}"]`;return n==="INPUT"&&r==="radio"?`${i}:checked@value`:o?`${i}@${o}`:i}function kd(e){let t=(e.tagName||"").toUpperCase(),n=(e.getAttribute&&e.getAttribute("type")||"").toLowerCase(),r=Yo(e),s=`${Ta(t,n)}[data-hcms-field]`;return t==="INPUT"&&n==="radio"?`${s}:checked@value`:r?`${s}@${r}`:s}function Ta(e,t){return e==="INPUT"?t?`input[type="${t}"]`:"input":e==="TEXTAREA"?"textarea":e==="SELECT"?"select":e==="IMG"?"img":e==="A"?"a":':not([data-hcms-shape="scalar"]):not([data-hcms-shape="object"]):not([data-hcms-shape="object-array"]):not([data-hcms-shape="scalar-array"])'}function Rr(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var Sa=new Set(["__proto__","constructor","prototype"]);function Xo(e,t){return n(e,[]);function n(u,d){let h=ur(u);if(h==="scalar")return r(u,d);if(h==="scalar-array")return o(u,d);if(h==="object-array")return s(u,d);if(h==="object"){let f=Object.create(null);for(let[p,b]of Object.entries(u)){if(Sa.has(p))throw new Error(`hypercms: rule key "${p}" is forbidden at "${d.join(".")||"<root>"}"`);f[p]=n(b,[...d,p])}return f}return null}function r(u,d){let h=d.length?d[d.length-1]:null,f=typeof h=="string"?h:"__value",p=a(d,f);if(p)return Aa(p,f);let b=l(uo(u,t,d,e),f);return b?Aa(b,f):`input[data-hcms-field="${Rr(f)}"]@value`}function o(u,d){let h=Vo(u,d,t),f=h&&l(h.item,null)||l("@scalar-array-item",null),p=f?kd(f):"input[data-hcms-field]@value";return[i(d,"[data-hcms-array-item]"),p]}function s(u,d){let[,h]=u,f=[...d,"*"],p=i(d,"[data-hcms-card]");if(h&&typeof h=="object"&&!Array.isArray(h)){let b=Object.create(null);for(let[v,m]of Object.entries(h)){if(Sa.has(v))throw new Error(`hypercms: rule key "${v}" is forbidden at "${f.join(".")}"`);b[v]=n(m,[...f,v])}return[p,b]}return[p,n(h,[...f,0])]}function i(u,d){let h=u.length?u[u.length-1]:"",f=u.some(v=>v==="*"),p=u.join(".");return`${f?`[data-hcms-field="${Rr(h)}"]`:`[data-hcms-path="${Rr(p)}"]`} > .hcms-array-items > ${d}`}function l(u,d){if(!t)return null;let h=_n(t,u);if(!h)return null;let f=h.content||h;if(d){let p=f.querySelector(`[data-hcms-field="${Rr(d)}"]`);if(p)return p}return f.querySelector("[data-hcms-field]")}function a(u,d){if(!t)return null;let h=u.map(b=>typeof b=="number"?"*":b).join("."),p=[u.join("."),h];for(let b=u.length-1;b>=0;b--){let v=u.slice(0,b).map(m=>typeof m=="number"?"*":m);v.push("*"),p.push(v.join("."))}for(let b of p){if(!b)continue;let v=_n(t,b);if(!v||!fo(v))continue;let m=v.content||v,g=m.querySelector(`[data-hcms-field="${Rr(d)}"]`)||m.querySelector("[data-hcms-field]");if(g)return g}return null}}function gi(e){if(!e)return"";let t=String(e).split(/[?#]/)[0],n=t.split("/").pop()||t;try{return decodeURIComponent(n)}catch{return n}}function Lr({pageRules:e,formRules:t,data:n,doc:r}){let o=r.createDocumentFragment(),s=bi(e,[],n,r,e);return s&&o.appendChild(s),o}function _a({shape:e,itemShape:t,pathArr:n,data:r,doc:o,itemKey:s,pageRules:i}){if(e==="object-array-item")return Na(t,n,r,o,i);if(e==="scalar-array-item")return Ca(n,r,o,s||null);throw new Error(`hypercms: buildItem called with unknown shape "${e}"`)}function bi(e,t,n,r,o){let s=ur(e);return s==="scalar"?yd(e,t,n,r,o):s==="object"?Ad(e,t,n,r,o):s==="object-array"?Sd(e,t,n,r,o):s==="scalar-array"?Td(e,t,n,r):null}function yd(e,t,n,r,o){let s=uo(e,r,t,o),i=Mr(t,s,r);if(!i)throw new Error(`hypercms: missing template for scalar at "${t.join(".")}"`);let l=ka(e,r,t,o);l==="@number"&&s==="@scalar"&&console.info(`[hypercms] field "${t.join(".")}" declares component "@number" but its value isn't a plain number; rendering a text input so the value is preserved`),(l==="@checkbox"||l==="@toggle")&&s==="@scalar"&&console.info(`[hypercms] field "${t.join(".")}" declares component "${l}" but its value isn't true/false; rendering a text input so the value is preserved`),Oa(i,l===s?l:null,t);let a=Ir(i,r);jr(a,t);let u=i.getAttribute?.("data-hcms-tpl");if((s==="@select"||s==="@radio")&&u===s&&xd(a,e,t,n,r,s,o),s==="@image"&&u==="@image"){let d=xa(e,r,t,o);d!=null&&!a.hasAttribute("data-hcms-crop")&&a.setAttribute("data-hcms-crop",d)}return Ed(a,Dn(t)),Jo(a,Dn(t)),Zo(a,Dn(t)),ja(a,n),s==="@file"&&wd(a),a}function Oa(e,t,n){if(!t)return;let r=e.getAttribute?.("data-hcms-tpl");r&&r!==t&&console.info(`[hypercms] field "${n.join(".")}" declares component "${t}" but custom template "${r}" wins`)}function xd(e,t,n,r,o,s,i){let l=ya(t,o,n,i),a=l?[...l]:[],u=r==null?"":String(r);if(u!==""&&!a.includes(u)&&a.unshift(u),!l&&(vd(e,"data-hcms-options required (space-separated values)"),a.length===0)){e.querySelector(".mirk-radio")?.remove();return}if(s==="@select"){let f=e.querySelector("select[data-hcms-field]");if(!f)return;for(let p of a){let b=o.createElement("option");b.value=p,b.textContent=$o(p),f.appendChild(b)}return}let d=e.querySelector(".mirk-radio");if(!d||!d.parentNode)return;let h=ki(n.join("."));for(let f of a){let p=d.cloneNode(!0),b=p.querySelector('input[type="radio"]');b&&(b.value=f,b.name=h);let v=p.querySelector(".mirk-radio__label");v&&(v.textContent=$o(f)),d.parentNode.insertBefore(p,d)}d.remove()}function ki(e){return"hcms-"+String(e).replace(/[^A-Za-z0-9_-]/g,"-")}function vd(e,t){let n=e.querySelector?e.querySelector(".hcms-error"):null;n&&(n.textContent=t,n.hidden=!1)}function wd(e){let t=e.querySelector?e.querySelector("a.mirk-file__name[data-hcms-field]"):null;t&&(t.textContent=gi(t.getAttribute("href")))}function Ad(e,t,n,r,o){let s=Mr(t,"@object",r);if(!s)throw new Error(`hypercms: missing template for object at "${t.join(".")}"`);let i=Ir(s,r);if(jr(i,t),Jo(i,Dn(t)),Zo(i,Dn(t)),fo(s))return Da(i,e,t),Pa(i,e,n),i;let l=Qo(i,".hcms-object-fields",s,t);for(let[a,u]of Object.entries(e)){let d=n==null?null:n[a],h=bi(u,[...t,a],d,r,o);h&&l.appendChild(h)}return i}function Sd(e,t,n,r,o){let s=Mr(t,"@object-array",r);if(!s)throw new Error(`hypercms: missing template for object-array at "${t.join(".")}"`);let i=Ir(s,r);jr(i,t),Jo(i,Dn(t)),Zo(i,Dn(t)),Ra(i,s),Ia(i,s,t);let l=Qo(i,".hcms-array-items",s,t),[,a]=e;return(Array.isArray(n)?n:[]).forEach((d,h)=>{let f=Na(a,[...t,h],d,r,o);f&&l.appendChild(f)}),La(i),i}function Na(e,t,n,r,o){let s=Ma(t,"object-array-item",r);if(!s)throw new Error(`hypercms: missing item template for "${t.join(".")}"`);let i=Ir(s,r);if(i.setAttribute("data-hcms-card",""),i.classList.contains("hcms-card")||i.classList.add("hcms-card"),jr(i,t),fo(s))return e&&typeof e=="object"&&!Array.isArray(e)&&(Da(i,e,t),Pa(i,e,n)),i;let l=Qo(i,".hcms-card-fields",s,t);if(e&&typeof e=="object"&&!Array.isArray(e))for(let[a,u]of Object.entries(e)){let d=n==null?null:n[a],h=bi(u,[...t,a],d,r,o);h&&l.appendChild(h)}return i}function Td(e,t,n,r){let o=zo(e,r),s=Vo(e,t,r),i=o?o.array:"@scalar-array",l=Mr(t,i,r);if(!l)throw new Error(`hypercms: missing template for scalar-array at "${t.join(".")}"`);Oa(l,o?o.array:null,t);let a=Ir(l,r);jr(a,t),Jo(a,Dn(t)),Zo(a,Dn(t)),Ra(a,l),Ia(a,l,t),s&&a.setAttribute("data-hcms-item-tpl",s.item);let u=Qo(a,".hcms-array-items",l,t);return(Array.isArray(n)?n:[]).forEach((h,f)=>{let p=Ca([...t,f],h,r,s?s.item:null);p&&u.appendChild(p)}),La(a),a}function Ca(e,t,n,r){let o=Ma(e,"scalar-array-item",n,r);if(!o)throw new Error(`hypercms: missing item template for "${e.join(".")}"`);let s=Ir(o,n);return s.setAttribute("data-hcms-array-item",""),s.classList.contains("hcms-array-item")||s.classList.add("hcms-array-item"),jr(s,e),ja(s,t),s}function Ma(e,t,n,r){let o=e.map(s=>typeof s=="number"?"*":s).join(".");return _n(n,o)||r&&_n(n,r)||_n(n,"@"+t)}function Ir(e,t){let n=e.content||e,r=t.createElement("div");return r.appendChild(n.cloneNode(!0)),r.firstElementChild||r}function jr(e,t){e.setAttribute("data-hcms-path",t.join("."))}function Ed(e,t){let n=t==null?"":String(t);if(e.matches&&e.matches("[data-hcms-field]")){e.getAttribute("data-hcms-field")||e.setAttribute("data-hcms-field",n);return}(e.querySelectorAll?e.querySelectorAll("[data-hcms-field]"):[]).forEach(o=>{o.getAttribute("data-hcms-field")||o.setAttribute("data-hcms-field",n)})}function Jo(e,t){t==null||t===""||!e.setAttribute||e.hasAttribute?.("data-hcms-field")||e.setAttribute("data-hcms-field",String(t))}function Zo(e,t){if(t==null||t==="")return;(e.querySelectorAll?e.querySelectorAll("[data-hcms-label]"):[]).forEach(r=>{(r.textContent||"").trim()===""&&(r.textContent=$o(String(t)))})}function Ra(e,t){["data-hcms-no-add","data-hcms-no-remove","data-hcms-no-reorder"].forEach(n=>{t.hasAttribute(n)&&e.setAttribute(n,"")}),["data-hcms-min-items","data-hcms-max-items"].forEach(n=>{t.hasAttribute(n)&&e.setAttribute(n,t.getAttribute(n))})}function La(e){let t=e.querySelector?e.querySelector(".hcms-array-items"):null;if(!t)return;let n=Array.from(t.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),r=n.length,o=Ea(e,"data-hcms-max-items"),s=Ea(e,"data-hcms-min-items"),i=e.hasAttribute("data-hcms-no-add"),l=e.hasAttribute("data-hcms-no-remove"),a=e.hasAttribute("data-hcms-no-reorder"),u=e.querySelector('[data-hcms-action="add"]');u&&(u.hidden=i||o!=null&&r>=o),n.forEach((d,h)=>{let f=d.querySelector('[data-hcms-action="remove"]');f&&(f.hidden=l||s!=null&&r<=s);let p=d.querySelector('[data-hcms-action="move-up"]');p&&(p.hidden=a||h===0);let b=d.querySelector('[data-hcms-action="move-down"]');b&&(b.hidden=a||h===r-1)})}function Ea(e,t){if(!e||!e.hasAttribute(t))return null;let n=parseInt(e.getAttribute(t),10);return Number.isFinite(n)?n:null}function Ia(e,t,n){if(e.hasAttribute("data-hcms-no-reorder")||t.hasAttribute("data-hcms-no-reorder"))return;let r=e.querySelector(".hcms-array-items");if(!r)return;let o="hcms-"+n.join(".");r.setAttribute("sortable",o),r.setAttribute("onsorted","hypercmsCommit && hypercmsCommit()")}function Dn(e){return e.length?e[e.length-1]:null}function ja(e,t){let n=_d(e);if(n.length!==0)for(let r of n)Fa(r,t)}function _d(e){if(!e)return[];let t=[];return e.matches?.("[data-hcms-field]")&&Od(e)&&t.push(e),(e.querySelectorAll?e.querySelectorAll("input[data-hcms-field], textarea[data-hcms-field], select[data-hcms-field], img[data-hcms-field], a[data-hcms-field], [contenteditable][data-hcms-field]"):[]).forEach(r=>t.push(r)),t}function Od(e){let t=(e.tagName||"").toUpperCase();return!!(t==="INPUT"||t==="TEXTAREA"||t==="SELECT"||t==="IMG"||t==="A"||e.hasAttribute?.("contenteditable"))}function Pa(e,t,n){(e.querySelectorAll?e.querySelectorAll("[data-hcms-field]"):[]).forEach(o=>{let s=o.getAttribute("data-hcms-field");if(!s)return;if(!t||typeof t!="object"||!(s in t)){console.warn(`[hypercms] inline template field "${s}" is not in the rule shape; ignoring`);return}let i=n==null?null:n[s];Fa(o,i)})}function Da(e,t,n){if(!e.querySelectorAll)return;e.querySelectorAll("[data-hcms-field]").forEach(o=>{let s=o.getAttribute("data-hcms-field");if(!s||t&&typeof t=="object"&&!(s in t))return;let i=[...n,s].join(".");o.setAttribute("data-hcms-path",i)})}function Qo(e,t,n,r){if(!e.querySelector)return e;let o=e.querySelector(t);if(o)return o;let s=n?.getAttribute?.("data-hcms-tpl")||r.join(".");throw new Error(`hypercms: template "${s}" is in slotted mode but has no ${t} element`)}function Fa(e,t){let n=Yo(e),r=(e.tagName||"").toUpperCase(),o=(e.getAttribute("type")||"").toLowerCase();if(r==="INPUT"&&o==="radio"){e.checked=e.value!=null&&String(e.value)===String(t??"");return}if(n==="checked"){e.checked=t===!0||t==="true";return}if(n){e[n]=t==null?"":String(t);return}e.textContent=t==null?"":String(t)}var Nd={Mutation:(e,t)=>e?.Mutation??t?.Mutation,undo:(e,t)=>e?.undo??t?.undo,onPrepareForSave:(e,t)=>e?.addDocumentTransform??t?.onPrepareForSave,onSnapshot:(e,t)=>e?.onSnapshot??t?.onSnapshot,consent:(e,t)=>e?.confirm??t?.consent,RichClay:(e,t)=>e?.RichClay??t?.RichClay,quickcrop:(e,t)=>e?.quickcrop??t?.quickcrop,upload:(e,t)=>e?.upload??(t?.uploadFileBasic?Md(t.uploadFileBasic):null)},Cd={402:"payment-required",413:"too-large",415:"unsupported-type",401:"unauthorized",403:"forbidden",404:"not-found"},yi=()=>({ok:!1,msg:"Upload cancelled",msgType:"skipped",code:"aborted",uploads:[]});function Md(e){return async function(n,{onProgress:r,signal:o}={}){if(o?.aborted)return yi();try{let s=await e(n,{onProgress:l=>{r?.({loaded:null,total:null,percent:l})}});if(o?.aborted)return yi();let i=s&&s.uploads||[];return typeof i[0]?.url!="string"?{ok:!1,msg:"The host accepted the file but did not say where it put it",msgType:"error",code:"bad-response",uploads:[]}:{ok:!0,msg:s.msg||"Uploaded",msgType:s.msgType||"success",code:s.code||null,uploads:i}}catch(s){if(o?.aborted)return yi();let i={};try{i=JSON.parse(s?.response||"{}")}catch{i={}}let l=i.code||Cd[s?.status]||"error";return{ok:!1,msg:s&&s.message||"Upload failed",msgType:"error",code:l,uploads:[]}}}}function Jt(e,t){let n=Nd[e];if(!n)throw new Error(`hypercms: unknown platform capability "${e}"`);let r=t||(typeof window<"u"?window:null);return r&&n(r.clay,r.hyperclay)||null}var qa=["clay:mutation-ready","hyperclay:mutation-ready"],Ba=["clay:sync-applied","hyperclay:livesync-applied"],Ha=["clay:ready","hyperclay:ready"];function Pr(e,t,n){let r=null,o=s=>{r!==null&&r!==s.type||(r=s.type,queueMicrotask(()=>{r=null}),n(s))};for(let s of t)e.addEventListener(s,o);return()=>{for(let s of t)e.removeEventListener(s,o)}}var On="data-hcms-bound",Yn="data-hcms-bound-id",xi=new Map;function $a(e,t){xi.set(e,t)}function Ua(e){xi.delete(e)}function za(e){let t=e.getAttribute(Yn);if(!t)return null;let n=xi.get(t);return!n||!n.restorable()?null:n.originalHTML}var fr="data-hcms-owns-richclay";function Dr(e){return e&&e.richclay&&e.richclay.RichClay||Jt("RichClay",e)||(e&&typeof e.RichClay=="function"?e.RichClay:null)}function Va(e,t,n){!e||typeof e.setAttribute!="function"||(e.setAttribute(On,t?"rich":"plain"),n&&e.setAttribute(fr,"true"))}function Wa(e,t){if(!e||typeof e.querySelectorAll!="function")return;let n=e.querySelectorAll(`[${On}]`);if(!n.length)return;let r=Dr(t);if(r&&typeof r.stripFromClone=="function")try{r.stripFromClone(e)}catch(o){console.warn("[hypercms] richclay strip failed; editor state may reach the save",o)}for(let o of n)o.getAttribute(fr)==="true"&&o.removeAttribute("data-richclay"),o.removeAttribute(fr),o.removeAttribute(On)}function Ka(e,t){if(!e||typeof e.removeAttribute!="function")return;let n=Dr(t);if(n&&typeof n.stripElement=="function")try{n.stripElement(e)}catch(r){console.warn("[hypercms] richclay element strip failed; the clone stays editable",r)}else e.removeAttribute("contenteditable"),e.removeAttribute("no-undo");e.getAttribute(fr)==="true"&&e.removeAttribute("data-richclay"),e.removeAttribute(fr),e.removeAttribute(On),e.removeAttribute(Yn)}function Ga(e,t){if(!t||e==null)return e;return n(e);function n(r){if(typeof r=="string"){if(r.endsWith("[]")||Vt(r)!==-1)return r;let o=null;try{o=t.querySelector(r)}catch{return r}return o&&o.children.length>0?r+"@innerHTML":r}if(Array.isArray(r))return r;if(r&&typeof r=="object"){let o=Object.create(null);for(let[s,i]of Object.entries(r))o[s]=n(i);return o}return r}}function Ya(e,t){if(!t||e==null)return e;return n(e,[t]);function n(r,o){if(typeof r=="string")return r.endsWith("[]")||Vt(r)!==-1?r:o.some(s=>Rd(s,r))?r+"@innerHTML":r;if(Array.isArray(r)){let[s,i]=r;if(typeof s!="string"||!s)return r;let l=Ld(t,s);return l.length?[s,n(i,l)]:r}if(r&&typeof r=="object"){let s=Object.create(null);for(let[i,l]of Object.entries(r))s[i]=n(l,o);return s}return r}}function Rd(e,t){let n=null;try{n=e.querySelector(t)}catch{return!1}return n?n.hasAttribute(On)?n.getAttribute(On)==="rich":n.children.length>0:!1}function Ld(e,t){try{return[...e.querySelectorAll(t)]}catch{return[]}}function Fr(e){if(!e||e.tagName!=="TEXTAREA")return;let t=e.ownerDocument.defaultView||(typeof window<"u"?window:null);t&&t.CSS&&t.CSS.supports&&t.CSS.supports("field-sizing: content")||(e.style.height="auto",e.style.height=e.scrollHeight+"px")}function Xn(e,t,n=!0){if(!e||!e.querySelectorAll||(e.querySelectorAll("textarea[data-hcms-field]").forEach(Fr),n===!1))return;let r=t&&t.defaultView||(typeof window<"u"?window:null),o=Dr(r);o&&e.querySelectorAll("[contenteditable][data-hcms-field]").forEach(s=>{if(s.__hcmsRichclay)return;let i;try{i=new o(s,{inline:!0,hyperclay:!1,toolbar:["bold","italic","link","undo","redo"]})}catch(a){console.warn("[hypercms] richclay activation failed; field stays plain contenteditable",a);return}s.__hcmsRichclay=i;let l=i&&i.squire;l&&typeof l.addEventListener=="function"&&l.addEventListener("input",()=>{let a=r&&r.Event||Event;s.dispatchEvent(new a("input",{bubbles:!0}))})})}var vi=new WeakSet;function dr(e,t){let n=Jt("undo");if(!n)return t();n.pause();try{let r=t();return r&&r.ok?n.commitCaptured(e):n.discardCaptured(),r}finally{n.resume()}}function Fn(e){let t=Jt("undo");if(!t)return e();t.pause();try{return e()}finally{t.discardCaptured(),t.resume()}}function ns(e){let{formRoot:t}=e;if(!t||vi.has(t))return;vi.add(t);let n=i=>{let l=i.target;!l||!l.closest||l.closest("[data-hcms-form-root]")&&l.matches("input, textarea, select, [contenteditable][data-hcms-field]")&&(l.tagName==="TEXTAREA"&&Fr(l),!l.matches('input[type="file"]')&&(!l.closest("[data-hcms-field]")&&!l.hasAttribute?.("data-hcms-field")||Xa(l,e)))},r=i=>{let l=i.target;if(!(!l||!l.closest)&&l.closest("[data-hcms-form-root]")){if(l.matches('input[type="file"][data-hcms-upload]')){Hd(l,e);return}l.matches('input[type="checkbox"], input[type="radio"], select')&&Xa(l,e)}},o=i=>{let l=i.target;if(!l||!l.closest)return;let a=l.closest("[data-hcms-action]");if(!a)return;let u=a.getAttribute("data-hcms-action");if(u==="add"||u==="remove"||u==="move-up"||u==="move-down"||u==="clear-upload"){if(!a.closest("[data-hcms-form-root]"))return}else if(u==="close"&&!a.closest("[data-hcms-shell]"))return;if(u==="add"){let d=a.closest("[data-hcms-path]");if(!d)return;let h=d.getAttribute("data-hcms-path");ho(h,e)}else if(u==="remove"){let d=a.closest("[data-hcms-card], [data-hcms-array-item]");if(!d)return;Si(d,e)}else if(u==="move-up"||u==="move-down"){let d=a.closest("[data-hcms-card], [data-hcms-array-item]");if(!d)return;Ai(d,u==="move-up"?-1:1,e)}else u==="clear-upload"?Vd(a,e):u==="close"&&e.onCloseRequested?.()},s=t.ownerDocument;s.addEventListener("input",n,!0),s.addEventListener("change",r,!0),s.addEventListener("click",o,!0),e.detachEvents=()=>{s.removeEventListener("input",n,!0),s.removeEventListener("change",r,!0),s.removeEventListener("click",o,!0),vi.delete(t)}}var Id=new Set(["value","checked"]);function jd(e,t){if(!t)return null;let n=Pn(t);if(n.some(a=>typeof a=="number"||a==="*"))return null;let r=cr(e.pageRules,n);if(typeof r!="string")return null;let o=ln.ruleAttrIndex(r);if(o===-1)return null;let s=r.slice(o+1);if(!Id.has(s))return null;let i=r.slice(0,o),l=i?e.pageRoot.querySelector(i):e.pageRoot;return l?{el:l,prop:s,oldValue:l[s]}:null}function Xa(e,t){let r=(e.closest("[data-hcms-field]")||e).closest("[data-hcms-path]")?.getAttribute("data-hcms-path")||"",o=jd(t,r);if(kn(fn(t),{path:r,structural:!1},t),o){let s=Jt("undo");s&&typeof s.recordValue=="function"&&s.recordValue(o.el,{prop:o.prop,oldValue:o.oldValue,newValue:o.el[o.prop]})}}var Pd={type:"image/webp",quality:.85,maxWidth:2048,maxHeight:2048};async function Dd(e,t){let n=t&&t.getAttribute?t.getAttribute("data-hcms-crop"):null;if(n==null)return{file:e};let r=Jt("quickcrop");if(typeof r!="function")return{file:e};try{let o=typeof window<"u"&&(window.clay?.modal??window.themodal)||"auto",s=await r(e,{aspect:Fd(n),modal:o,...Pd});return s===null?null:{file:qd(s.blob,e.name),dataURL:s.dataURL}}catch(o){return Br(t,o&&o.message||"Crop failed"),null}}function Fd(e){let t=String(e??"").trim().toLowerCase();if(t===""||t==="free")return null;let n=t.match(/^(\d+(?:\.\d+)?)\s*[:/]\s*(\d+(?:\.\d+)?)$/);if(!n)return null;let r=parseFloat(n[1]),o=parseFloat(n[2]);return!r||!o?null:r/o}function qd(e,t){let n=e.type==="image/webp"?".webp":e.type==="image/jpeg"?".jpg":".png",r=String(t||"image").replace(/\.[^.]+$/,"");try{return new File([e],r+n,{type:e.type})}catch{return e}}var Bd=new Set(["unsupported","payment-required"]);async function Hd(e,t){let n=e.files&&e.files[0];if(!n)return;let r=e.closest("[data-hcms-path]");if(!r)return;let o=r.getAttribute("data-hcms-path")||"";Br(r,null);let s=await Dd(n,r);if(!s||t.closed){Jn(e);return}let i=s.file,l=s.dataURL||null,a=Jt("upload");if(typeof a!="function")return wi(e,r,t,o,await Ja(i,l,r),i);tc(r,l),Za(r,0);let u=Ud(t),d;try{d=await a(i,{signal:u?.signal,onProgress:({percent:f})=>Za(r,f)})}finally{zd(t,u),Kd(r)}if(t.closed){Jn(e);return}if(d.code==="aborted"){Jn(e);return}if(d.ok)return wi(e,r,t,o,d.uploads[0].url,i);if(!Bd.has(d.code)){Br(r,d.msg||"Upload failed"),t.dispatch?.("hcms:error",{error:new Error(d.msg||"Upload failed"),code:d.code,path:o}),Jn(e);return}let h=d.code==="payment-required"?"This file is stored in the page. Add a paid plan to upload files.":null;return wi(e,r,t,o,await Ja(i,l,r),i,h)}function wi(e,t,n,r,o,s,i=null){if(n.closed){Jn(e);return}if(tc(t,null),Br(t,null),!o){Jn(e);return}ec(t,o,s.name),kn(fn(n),{path:r,structural:!1},n),i&&Br(t,i,"info"),Jn(e)}async function Ja(e,t,n){return t||await $d(e,n)}function $d(e,t){let n=t?.ownerDocument?.defaultView?.FileReader||globalThis.FileReader;return n?new Promise(r=>{let o=new n;o.onload=()=>r(typeof o.result=="string"?o.result:""),o.onerror=()=>r("");try{o.readAsDataURL(e)}catch{r("")}}):Promise.resolve("")}function Ud(e){if(typeof AbortController!="function")return null;let t=new AbortController;return(e.uploads||(e.uploads=new Set)).add(t),t}function zd(e,t){t&&e.uploads?.delete(t)}function Vd(e,t){let n=e.closest("[data-hcms-path]");if(!n)return;let r=n.getAttribute("data-hcms-path")||"";ec(n,"","");let o=n.querySelector('input[type="file"][data-hcms-upload]');o&&Jn(o),Br(n,null),kn(fn(t),{path:r,structural:!1},t)}function Wd(e){return e.querySelector?e.querySelector("img[data-hcms-field], a[data-hcms-field]"):null}function ec(e,t,n){let r=Wd(e);if(!r)return;let o=(r.tagName||"").toUpperCase();o==="IMG"?r.src=t||"":o==="A"&&(r.href=t||"",r.textContent=t?n||gi(t):"")}function Jn(e){try{e.value=""}catch{}}function tc(e,t){let n=e.querySelector?e.querySelector(".mirk-image__frame"):null;n&&(t?n.style.backgroundImage=`url("${t.replace(/"/g,"%22")}")`:n.style.removeProperty("background-image"))}function Za(e,t){let n=Math.max(0,Math.min(100,Number(t)||0));e.setAttribute("data-hcms-uploading",""),e.style?.setProperty?.("--hcms-upload-progress",`${n}%`)}function Kd(e){e.removeAttribute("data-hcms-uploading"),e.style?.removeProperty?.("--hcms-upload-progress")}function Br(e,t,n="error"){let r=e.querySelector?e.querySelector(":scope > .hcms-error"):null;r&&(r.classList.toggle("hcms-error--info",!!t&&n==="info"),t?(r.textContent=t,r.hidden=!1):(r.textContent="",r.hidden=!0))}function ho(e,t){let{formRoot:n,pageRules:r}=t,o=n.querySelector(`[data-hcms-path="${Hr(e)}"]`);if(!o)throw new Error(`hypercms: no element at path "${e}"`);let s=o.querySelector(".hcms-array-items");if(!s)throw new Error(`hypercms: array container missing .hcms-array-items at "${e}"`);let i=Pn(e),l=Zd(r,i),a=Array.isArray(l),u=typeof l=="string"&&l.endsWith("[]");if(!a&&!u)throw new Error(`hypercms: path "${e}" is not an array`);let d=ts(o,"data-hcms-max-items"),h=s.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]");if(o.hasAttribute("data-hcms-no-add")||d!=null&&h.length>=d)return;let f=h.length,p=a?l[1]:l.replace(/\[\]$/,""),b=co(a?p:"string"),v=_a({shape:a?"object-array-item":"scalar-array-item",itemShape:p,pathArr:[...i,f],data:b,doc:t.doc,itemKey:o.getAttribute("data-hcms-item-tpl")||null,pageRules:r});return s.appendChild(v),Xn(v,t.doc,t.view?.enhanceFormRichText!==!1),Ei(o),dr(`Add ${e}`,()=>kn(fn(t),{path:e,structural:!0},t))}function Ai(e,t,n){let r=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]');if(!r||r.hasAttribute("data-hcms-no-reorder"))return;let o=r.querySelector(".hcms-array-items");if(!o)return;let s=Array.from(o.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),i=s.indexOf(e);if(i<0)return;let l=i+t;if(l<0||l>=s.length)return;let a=e.querySelector(`[data-hcms-action="${t<0?"move-up":"move-down"}"]`);return t<0?o.insertBefore(e,s[l]):o.insertBefore(e,s[l].nextSibling),_i(o),Ei(r),a&&typeof a.focus=="function"&&e.querySelector(`[data-hcms-action="${t<0?"move-up":"move-down"}"]`)?.focus?.(),dr(`Reorder ${r.getAttribute("data-hcms-path")||""}`,()=>kn(fn(n),{path:r.getAttribute("data-hcms-path")||"",structural:!0},n))}var es="Delete this item?";function Gd(e,t){let n=e&&e.getAttribute("data-hcms-confirm-remove");if(n!=null)return/^(off|false|no|0)$/i.test(n.trim())?null:n||es;let r=t&&t.confirmRemove;return r===!1?null:typeof r=="string"?r||es:r===!0||e&&e.getAttribute("data-hcms-shape")==="object-array"?es:null}function Si(e,t){let n=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]'),r=Gd(n,t);if(r==null)return qr(e,t);let o=Jt("consent")||typeof window<"u"&&window.consent;typeof o=="function"?Promise.resolve(o(r)).then(()=>{t.closed||qr(e,t)},()=>{}):typeof window<"u"&&typeof window.confirm=="function"?window.confirm(r)&&qr(e,t):qr(e,t)}function qr(e,t){let n=e.getAttribute("data-hcms-path")||"",r=e.parentElement,o=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]');if(!o?.hasAttribute("data-hcms-no-remove")){if(o){let s=ts(o,"data-hcms-min-items"),i=o.querySelector(".hcms-array-items"),l=i?i.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]").length:0;if(s!=null&&l<=s)return}return e.remove(),r&&_i(r),o&&Ei(o),dr(`Remove ${n}`,()=>kn(fn(t),{path:n,structural:!0},t))}}function kn(e,t,n){if(n.closed)return{ok:!1,skipped:!0,closed:!0};let r=mo(e);if(!t.structural&&r===n.lastFingerprint)return{ok:!0,skipped:!0};let o=Object.hasOwn(n,"writeRules")?n.writeRules:n.pageRules,s=da(n.pageRoot,o,e,{shellRoot:n.shellRoot,structural:!!t.structural,structuralPath:t.path||null,formRoot:n.formRoot});return s.ok?(n.lastFingerprint=r,n.lastData=e,Qa(n,null),n.dispatch?.("hcms:change",{data:e,path:t.path,structural:!!t.structural}),n.onChange?.(e,t)):(Qa(n,Jd(s.error,t.path)),n.dispatch?.("hcms:error",{error:s.error,attemptedData:e}),n.onError?.(s.error)),s}function rs(e,t){let n=Hr(t),r=`[data-hcms-path="${n}"] input[data-hcms-field], [data-hcms-path="${n}"] textarea[data-hcms-field], [data-hcms-path="${n}"] select[data-hcms-field], [data-hcms-path="${n}"] img[data-hcms-field], [data-hcms-path="${n}"] a[data-hcms-field], [data-hcms-path="${n}"] [contenteditable][data-hcms-field], input[data-hcms-path="${n}"][data-hcms-field], textarea[data-hcms-path="${n}"][data-hcms-field], select[data-hcms-path="${n}"][data-hcms-field], img[data-hcms-path="${n}"][data-hcms-field], a[data-hcms-path="${n}"][data-hcms-field], [contenteditable][data-hcms-path="${n}"][data-hcms-field]`;return e.querySelector(r)}function os(e,t,n,r){let o=(e.tagName||"").toUpperCase(),s=(e.getAttribute("type")||"").toLowerCase();if(o==="INPUT"&&s==="checkbox"){e.checked=t===!0||t==="true";return}if(o==="INPUT"&&s==="radio"){let i=Hr(r),l=n.querySelectorAll(`[data-hcms-path="${i}"][data-hcms-field][type="radio"], [data-hcms-path="${i}"] [data-hcms-field][type="radio"]`);l.length?l.forEach(a=>{a.checked=String(a.value)===String(t??"")}):e.checked=String(e.value)===String(t??"");return}if(o==="IMG"){e.src=t==null?"":String(t);return}if(o==="A"){e.href=t==null?"":String(t);return}if(e.hasAttribute&&e.hasAttribute("contenteditable")){e.innerHTML=t==null?"":String(t);return}if("value"in e){e.value=t==null?"":String(t);return}e.textContent=t==null?"":String(t)}function fn(e){let t=ln.extract(e.formRoot,e.formRules,{exclude:null});return Zn(t,e.formRules)}function Zn(e,t){if(t==null||e==null)return e;if(typeof t=="string")return t.endsWith("@checked")?e===!0||e==="true":e;if(Array.isArray(t)){if(!Array.isArray(e))return e;let[,n]=t;return e.map(r=>Zn(r,n))}if(typeof t=="object"){if(typeof e!="object"||Array.isArray(e))return e;let n={};for(let[r,o]of Object.entries(t))n[r]=Zn(e[r],o);return n}return e}function Qa(e,t){e.lastErrors=t&&t.length?t:null,Ti(e)}function Ti(e){if(Yd(e),e.errorEl&&(e.errorEl.textContent="",e.errorEl.hidden=!0),!e.lastErrors)return;let t=[];for(let{message:n,path:r}of e.lastErrors){if(r!=null&&r!==""){let o=Xd(e.formRoot,r);if(o){o.textContent=o.textContent?`${o.textContent}
|
|
152
153
|
${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textContent=t.join(`
|
|
153
|
-
`),e.errorEl.hidden=!1)}function
|
|
154
|
+
`),e.errorEl.hidden=!1)}function Yd(e){if(e.formRoot)for(let t of e.formRoot.querySelectorAll(".hcms-error"))t.textContent="",t.hidden=!0}function Xd(e,t){if(!e)return null;let n=t.split(".");for(;n.length>0;){let r=n.join("."),o=typeof CSS<"u"&&CSS.escape?CSS.escape(r):r.replace(/[^a-zA-Z0-9_\-.*]/g,i=>"\\"+i),s=e.querySelector(`[data-hcms-path="${o}"]`);if(s){for(let i of s.children)if(i.classList&&i.classList.contains("hcms-error"))return i}n.pop()}return null}function Jd(e,t){return e?e.name==="EmptyListInsert"?[{message:"Add a seed item in HTML first.",path:t}]:e.name==="ShapeMismatch"&&Array.isArray(e.mismatches)&&e.mismatches.length?e.mismatches.map(n=>({message:`Shape mismatch: expected ${n.expected}, got ${n.got}`,path:n.path})):[{message:e.message||String(e),path:t}]:[{message:"unknown error",path:t}]}function Zd(e,t){let n=e;for(let r of t){if(n==null||typeof n=="string")return;if(Array.isArray(n)){if(typeof r!="number"&&r!=="*")return;n=n[1];continue}if(typeof n=="object"){if(typeof r=="number"||!(r in n))return;n=n[r];continue}return}return n}function ts(e,t){if(!e||!e.hasAttribute(t))return null;let n=parseInt(e.getAttribute(t),10);return Number.isFinite(n)?n:null}function Ei(e){if(!e)return;let t=e.querySelector(".hcms-array-items");if(!t)return;let n=Array.from(t.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),r=n.length,o=ts(e,"data-hcms-max-items"),s=ts(e,"data-hcms-min-items"),i=e.hasAttribute("data-hcms-no-add"),l=e.hasAttribute("data-hcms-no-remove"),a=e.hasAttribute("data-hcms-no-reorder"),u=e.querySelector(':scope > .hcms-add, :scope > * > .hcms-add, :scope > [data-hcms-action="add"]');u&&(u.hidden=i||o!=null&&r>=o),n.forEach((d,h)=>{let f=d.querySelector('[data-hcms-action="remove"]');f&&(f.hidden=l||s!=null&&r<=s);let p=d.querySelector('[data-hcms-action="move-up"]');p&&(p.hidden=a||h===0);let b=d.querySelector('[data-hcms-action="move-down"]');b&&(b.hidden=a||h===r-1)})}function ss(e){!e||!e.querySelectorAll||e.querySelectorAll(".hcms-array-items").forEach(t=>_i(t))}function _i(e){let t=e.querySelectorAll?Array.from(e.querySelectorAll('input[type="radio"][data-hcms-field]'),r=>[r,r.checked]):[],n=0;for(let r of e.children){if(!r.matches?.("[data-hcms-card], [data-hcms-array-item]"))continue;let o=r.getAttribute("data-hcms-path");if(!o)continue;let s=o.split(".");s[s.length-1]=String(n);let i=s.join(".");i!==o&&Qd(r,o,i),n++}for(let[r,o]of t)r.checked!==o&&(r.checked=o)}function Qd(e,t,n){let r=e.querySelectorAll("[data-hcms-path]");e.setAttribute("data-hcms-path",n);for(let o of r){let s=o.getAttribute("data-hcms-path");s===t?o.setAttribute("data-hcms-path",n):s&&s.startsWith(t+".")&&o.setAttribute("data-hcms-path",n+s.slice(t.length))}eh(e)}function eh(e){for(let t of e.querySelectorAll('input[type="radio"][data-hcms-field]')){if(!t.name||!t.name.startsWith("hcms-"))continue;let n=t.closest("[data-hcms-path]");n&&(t.name=ki(n.getAttribute("data-hcms-path")))}}function mo(e){return JSON.stringify(e,(t,n)=>{if(n&&typeof n=="object"&&!Array.isArray(n)){let r=Object.create(null);for(let o of Object.keys(n).sort())r[o]=n[o];return r}return n})}function Hr(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var ih={},is="hcms-shell-styles",th="hcms-bundled-styles-installed",ls="hcms-session-open",nh='a[href], area[href], button:not([disabled]), input:not([disabled]):not([type="hidden"]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',$r=new WeakSet,Oi="";function rc(e){Oi=e}function po(e){e?.body?.classList.add(ls)}function Ni(e){e?.body?.classList.remove(ls)}var rh=0;function nc(e){return String(e).replace(/[&<>"]/g,t=>({"&":"&","<":"<",">":">",'"':"""})[t])}function oc({mountTo:e,side:t="right",overlay:n=!1,showSaveButton:r=!1,title:o="Page content",eyebrow:s="Edit",theme:i=null,doc:l}){sc(l);let a=`hcms-shell-title-${++rh}`,u=l.createElement("div");u.setAttribute("data-hcms-shell",""),u.setAttribute("editor-ui",""),u.setAttribute("save-remove",""),u.setAttribute("save-ignore",""),u.setAttribute("tabindex","-1"),u.setAttribute("role","dialog"),u.setAttribute("aria-modal","true"),u.setAttribute("aria-labelledby",a);let d=i==="dark"?" dark":i==="light"?" light":"";u.className="hcms-shell pixel-quiet hcms-panel hcms-side-"+t+(n?" hcms-overlay":"")+d;let h=nc(o),f=nc(s);u.innerHTML=`
|
|
154
155
|
<div class="hcms-shell-minibar" aria-hidden="true">
|
|
155
|
-
<span class="hcms-shell-minibar-title">${
|
|
156
|
+
<span class="hcms-shell-minibar-title">${h}</span>
|
|
156
157
|
<button type="button" class="hcms-shell-close mirk-button mirk-button--small" data-hcms-action="close" aria-label="Close">
|
|
157
158
|
<span class="mirk-button__label">\xD7</span>
|
|
158
159
|
</button>
|
|
@@ -161,7 +162,7 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
|
|
|
161
162
|
<header class="hcms-shell-header">
|
|
162
163
|
<div class="hcms-shell-heading">
|
|
163
164
|
<div class="hcms-shell-eyebrow">${f}</div>
|
|
164
|
-
<h2 class="hcms-shell-title" id="${a}">${
|
|
165
|
+
<h2 class="hcms-shell-title" id="${a}">${h}</h2>
|
|
165
166
|
</div>
|
|
166
167
|
<button type="button" class="hcms-shell-close mirk-button mirk-button--small" data-hcms-action="close" aria-label="Close">
|
|
167
168
|
<span class="mirk-button__label">\xD7</span>
|
|
@@ -176,8 +177,8 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
|
|
|
176
177
|
</button>
|
|
177
178
|
</footer>
|
|
178
179
|
</div>
|
|
179
|
-
`,(e||l.body).appendChild(
|
|
180
|
-
`),t.hidden=!1}function Od(e){let t=e.unresolved&&e.unresolved.twins||[],n=t.map(r=>`${r.path}:${r.count}`).join("|");if(n!==e.lastTwinSignature){e.lastTwinSignature=n;for(let{path:r,count:o}of t)console.warn(`${Td} "${r}" matches ${o} elements; edits go to the first one.`)}}function Ea(e){return[...new Set(e)]}function Nd(e){let t=new Map;for(let n of e){let r=t.get(n.path);(!r||n.count>r.count)&&t.set(n.path,n)}return[...t.values()]}function kr(e){return e.length?e.join("."):"(whole page)"}var Rd={skip:"[data-hcms-shell]",templateAttr:"cms-template"};function Mn(e,{ignoreActiveValue:t}={}){return Md(e,{ignoreActiveValue:t})}function Md(e,{ignoreActiveValue:t}){let n=Vt.findRules(e.doc,e.rulesSource||"cms");n&&(e.pageRules=e.view.prepareRules(n.rules),e.rulesTagNode=n.tagNode),xo(e.doc),To(e.doc,e.pageRules),e.formRules=_o(e.pageRules,e.doc),e.writeRules=Ho(e.pageRules),e.unresolved=Bo(e.pageRoot,e.pageRules);let r=bo(),o=Nn(Vt.extract(e.pageRoot,e.pageRules,{...Rd,...r.hooks}),e.pageRules),i=ar({pageRules:e.pageRules,formRules:e.formRules,data:o,doc:e.doc});go(e.formRoot,i,{ignoreActiveValue:t}),r.seed(e.formRoot),Cn(e.formRoot,e.doc,e.view?.enhanceFormRichText!==!1),Xi(e),yr(e),e.updateFingerprint&&e.updateFingerprint()}function Ca({debounce:e=100,onRefresh:t}){let n=It("Mutation");if(!n||typeof n.onAnyChange!="function")throw new Error("hypercms: a mutation hub is required (clay.Mutation or hyperclay.Mutation). Load clayjs or hyperclayjs, or just the mutation utility, before initializing hypercms.");let r=n.onAnyChange({debounce:e},o=>{t(o)});return{unsubscribe:typeof r=="function"?r:()=>{}}}var Ld='input:not([disabled]):not([type="hidden"]), textarea:not([disabled]), select:not([disabled]), button:not([disabled]), [tabindex]:not([tabindex="-1"])';function Oa({doc:e,pageRoot:t,opts:n={}}){let r=n.richText!==!1,o=null;return{name:"sidebar",richText:r,enhanceFormRichText:!0,ctx:null,root:null,formRoot:null,errorEl:null,noticeEl:null,prepareRules(i){return r?da(i,t):i},mount(i){let s=this.ctx;o=vn(()=>wa({mountTo:n.mountTo||e.body,side:n.side||"right",overlay:!!n.overlay,showSaveButton:!!n.showSaveButton,title:n.title,eyebrow:n.eyebrow,theme:n.theme,doc:e})),this.root=o.root,this.formRoot=o.formRoot,this.errorEl=o.errorEl,this.noticeEl=o.noticeEl;let l=ar({pageRules:s.pageRules,formRules:s.formRules,data:i,doc:e});o.formRoot.appendChild(l),s.seeder.seed(o.formRoot),Cn(o.formRoot,e),yr(s),Lo(s)},refresh(i){if(i==="livesync"){o?.restoreChrome?.(),Mn(this.ctx,{ignoreActiveValue:!0});return}if(i==="undo"){Mn(this.ctx,{ignoreActiveValue:!1});return}Mn(this.ctx)},focusOnOpen(){let i=this.root&&this.root.querySelector(Ld);i&&typeof i.focus=="function"&&i.focus()},destroy(){o?.destroy(),o=null}}}var Id="[cms-template], [data-hcms-shell]";function Kr(e){if(!e||typeof e.getBoundingClientRect!="function"||typeof e.closest=="function"&&e.closest(Id))return!1;let t=e.getBoundingClientRect();return t.width>=8&&t.height>=8}var jd={skip:"[data-hcms-shell]",templateAttr:"cms-template"},Dd={skip:"[data-hcms-shell]",templateAttr:null},Pd="text",Fd="native",Na="handle",qd=new Set(["INPUT","TEXTAREA","SELECT"]),La=new Set(["IMG","INPUT","TEXTAREA","SELECT","OPTION","BR","HR","VIDEO","AUDIO","IFRAME","EMBED","OBJECT","CANVAS","SOURCE","TRACK","AREA","COL","PARAM","BUTTON"]);function is(e,t){return Bd(e,t)}function Bd(e,t){let n=[],r=[],o=kn(e);return os(o,e,t,[],n,r),{targets:n,lists:r}}function os(e,t,n,r,o,i){if(typeof n=="string"){if(n.endsWith("[]")){let d=n.slice(0,-2);if(!d)return;let b=$o(e,t,d);b.forEach((f,u)=>{o.push(Ma([...r,u],f,n,null))}),i.push(Ra(e,t,r,d,b,!0));return}let s=St(n),l=s===-1?null:n.slice(s+1),a=s===-1?n:n.slice(0,s),h=!a||a==="."?t:$o(e,t,a)[0];h&&o.push(Ma(r,h,n,l));return}if(Array.isArray(n)){let[s,l]=n;if(typeof s!="string"||!s)return;let a=$o(e,t,s);a.forEach((h,d)=>os(e,h,l,[...r,d],o,i)),i.push(Ra(e,t,r,s,a,typeof l=="string"));return}if(n&&typeof n=="object")for(let[s,l]of Object.entries(n))os(e,t,l,[...r,s],o,i)}function Ra(e,t,n,r,o,i){let s=o[0]?o[0].parentElement:null;if(!s){let l=$o(e,t,r,Dd)[0];s=l?l.parentElement:null}return{path:n,items:o,container:s,scalar:i}}function Ma(e,t,n,r){return{path:e,el:t,rule:n,attr:r,kind:Hd(t,r),icon:Ud(t,r)}}function Hd(e,t){let n=(e.tagName||"").toUpperCase();return!t||t==="innerHTML"?La.has(n)?Na:Pd:t==="value"&&qd.has(n)&&!e.readOnly&&!$d(e)?Fd:Na}function $d(e){return e.disabled?!0:typeof e.matches=="function"&&e.matches(":disabled")}function Ud(e,t){let n=(e.tagName||"").toUpperCase();return(!t||t==="innerHTML")&&!La.has(n)?null:n==="IMG"||t==="srcset"?"camera":n==="A"&&t==="href"?"paperclip":"pencil"}function $o(e,t,n,r=jd){try{return e.find(t,n,r)}catch{return[]}}var Ia=Object.freeze({data:Object.freeze({tokens:["no-data"],bundles:["editor-ui"]}),save:Object.freeze({tokens:["no-save"],bundles:["editor-ui"]}),snapshot:Object.freeze({tokens:["no-snapshot"],bundles:["editor-ui"]}),watch:Object.freeze({tokens:["no-watch"],bundles:["editor-ui"]}),undo:Object.freeze({tokens:["no-undo"],bundles:["editor-ui"]}),history:Object.freeze({tokens:[],bundles:["editor-ui"]})}),zd=Object.freeze({"editor-ui":Object.freeze(["no-data","no-save","no-snapshot","no-watch","no-undo"])}),nk=Object.freeze(["no-save","no-snapshot","no-trigger-autosave","no-dirty","no-watch","no-undo","no-data","freeze","editor-ui"]);function ss(e,t){if(!e||e.nodeType!==1)return!1;let n=e.getAttribute?.("clay");return!!(n&&n.split(/\s+/).includes(t)||e.hasAttribute?.(t))}function Vd(e,t){if(ss(e,t))return!0;for(let[n,r]of Object.entries(zd))if(r.includes(t)&&ss(e,n))return!0;return!1}function Gr(e){let t=Ia[e];if(!t)throw new Error(`Unknown region capability: ${e}`);return[...t.tokens,...t.bundles].flatMap(n=>[`[clay~="${n}"]`,`[${n}]`]).join(", ")}function Wd(e,t){let n=e&&e.nodeType===1?e:e?.parentElement;for(;n&&n.nodeType===1;){let r=Ia[t];if(!r)throw new Error(`Unknown region capability: ${t}`);if(r.tokens.some(o=>Vd(n,o))||r.bundles.some(o=>ss(n,o)))return n;n=n.parentElement}return null}function ja(e,t){return!!Wd(e,t)}var Kd=/:(?:focus(?:-within|-visible)?|hover|active|visited|defined)\b/i;function Da(e,t){if(!/^(INPUT|TEXTAREA|SELECT|OPTION)$/.test(e.tagName||""))return;let n=(e.getAttribute?.("type")||"").toLowerCase();if("value"in e&&"value"in t&&e.tagName!=="OPTION"&&n!=="checkbox"&&n!=="radio"&&(t.value=e.value),"checked"in e&&"checked"in t&&(t.checked=e.checked),"selected"in e&&"selected"in t&&(t.selected=e.selected),e.tagName==="SELECT")for(let r=0;r<e.options.length;r++)t.options[r].selected=e.options[r].selected;"indeterminate"in e&&"indeterminate"in t&&(t.indeterminate=e.indeterminate)}function Pa(e,t,n,r){if(r)return!!e.closest?.(t);let o=e;for(;o?.nodeType===1;){if(o.matches(t))return!0;if(o===n)break;o=o.parentElement}return!1}function Fa(e,t,n,r,o,i,s,l){if(e.nodeType===1&&((s?ja(e,n):Pa(e,r,i,!1))||o&&Pa(e,o,i,s)))return null;let a=t.importNode(e,!1);l.cloneToLive.set(a,e),l.liveToClone.set(e,a);let h=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,d=a.nodeType===1&&a.tagName==="TEMPLATE"?a.content:a;h!==e&&(l.cloneToLive.set(d,h),l.liveToClone.set(h,d));for(let b of h.childNodes||[]){let f=Fa(b,t,n,r,o,i,s,l);f&&(d.appendChild(f),b.nodeType===1&&Da(b,f))}return e.nodeType===1&&Da(e,a),a}function ls(e,{capability:t="data",exclude:n=null,inherit:r=!0}={}){if(!e)throw new TypeError("createContentView requires a DOM context");let o=e.nodeType===9?e:e.ownerDocument;if(!o?.implementation?.createHTMLDocument)throw new TypeError("createContentView requires an HTML DOM implementation");let i=o.implementation.createHTMLDocument(""),s=new WeakMap,l=new WeakMap,a=e.nodeType===9?e.documentElement:e;n&&i.documentElement.matches(n);let h=Gr(t),d=Fa(a,i,t,h,n,a,r,{cloneToLive:s,liveToClone:l});e.nodeType===9&&d&&(i.replaceChild(d,i.documentElement),l.set(e,i),s.set(i,e));let b=f=>{if(Kd.test(f))throw new Error(`Filtered content queries do not support stateful selector: ${f}`)};return{root:d,document:i,capability:t,selector:Gr(t),cloneToLive:s,liveToClone:l,original(f){return s.get(f)||null},cloneOf(f){return l.get(f)||null},query(f,u=d){return b(f),Array.from(u.querySelectorAll(f),m=>s.get(m)||m)},text(f=d){return(f===d?d:l.get(f))?.textContent||""},html(f=d){return(f===d?d:l.get(f))?.innerHTML??""},clone(f=d){let u=f===d?d:l.get(f);return u?i.importNode(u,!0):null}}}var Gd=[16,8,0],jt=8,Yd=4;function qa({anchor:e,bar:t,rail:n=t,viewport:r,current:o=null}){let i=f=>o===f?Yd:0;if(e.bottom<=0||e.top>=r.height||e.right<=0||e.left>=r.width)return{mode:"hidden",x:0,y:0};let s=f=>Math.max(jt,Math.min(e.left,r.width-f-jt)),l=e.top-16-t.height;if(l>=jt-i("above"))return{mode:"above",x:s(t.width),y:l};let a=e.bottom+16;if(a+t.height<=r.height-jt+i("below"))return{mode:"below",x:s(t.width),y:a};let h=r.width-e.right-jt,d=e.left-jt,b=h>=d?[["rail-right",h],["rail-left",d]]:[["rail-left",d],["rail-right",h]];for(let[f,u]of b)for(let m of Gd){if(n.width+m>u+i(f))continue;let p=f==="rail-right"?Math.min(e.right+m,r.width-n.width-jt):Math.max(e.left-m-n.width,jt),v=Math.min(e.bottom,r.height-jt)-n.height,A=Math.max(jt,Math.min(Math.max(e.top,jt),v));return{mode:f,x:p,y:A,gap:m}}return{mode:"pinned",x:s(t.width),y:jt}}function as({anchor:e,handle:t,viewport:n,inset:r=6,prefer:o="auto"}){let i=e.height>=t.height*1.5&&e.width>=t.width*2;if(o==="corner"||i){let f=Math.max(jt,Math.min(e.right-t.width+r,n.width-t.width-jt)),u=Math.max(jt,Math.min(e.top-r,n.height-t.height-jt));return{x:f,y:u,mode:"over"}}let s=4,l=e.right+s+t.width<=n.width-jt,a=l?e.right+s:e.left-s-t.width,h=Math.max(jt,a),d=e.top+e.height/2-t.height/2,b=Math.max(jt,Math.min(d,n.height-t.height-jt));return{x:h,y:b,mode:l?"beside-right":"beside-left"}}var zo=!1;function Ba(){if(zo)return;let e=It("onPrepareForSave");typeof e=="function"&&(e(t=>{$a(t),Ha(t)}),zo=!0)}function Ha(e){let t=e&&e.querySelector&&e.querySelector("body");t&&t.classList.remove("hcms-open","hcms-overlay","hcms-side-left",Fo)}function $a(e){if(!(!e||typeof e.querySelectorAll!="function"))for(let t of e.querySelectorAll(`[${_n}]`)){let n=aa(t);n!==null&&(t.innerHTML=n),t.removeAttribute(_n)}}var Vo=!1;function Wo(){if(Vo)return;let e=It("onSnapshot");typeof e=="function"&&(e(t=>{$a(t),ua(t,typeof window<"u"?window:null),Ha(t)}),Vo=!0)}function Ua(){Ba(),Wo(),(!zo||!Vo)&&Xd()}var Uo=null;function Xd(){if(Uo||typeof document>"u")return;Uo=fr(document,ia,()=>{Ba(),Wo(),zo&&Vo&&(Uo?.(),Uo=null)})}var Jd={edit:"M8 10h2v6H8zm2 4h4v2h-4zm0-6h2v2h-2zm2-2h2v2h-2zm2-2h2v2h-2zm2-2h2v2h-2zm2 2h2v2h-2zm2 2h2v2h-2zm-2 2h2v2h-2zm-2 2h2v2h-2zm-2 2h2v2h-2zm-4 0h2v2h-2z","move-up":"M11 4h2v2h2v2h2v2h2v2h-4v-2h-2v10h-2V10H9v2H5v-2h2V8h2V6h2z","move-down":"M11 4h2v10h2v-2h4v2h-2v2h-2v2h-2v2h-2v-2H9v-2H7v-2H5v-2h4v2h2z",remove:"M5 5h3v3h3v3h2V8h3V5h3v3h-3v3h-3v2h3v3h3v3h-3v-3h-3v-3h-2v3H8v3H5v-3h3v-3h3v-2H8V8H5z",add:"M10 4h4v6h6v4h-6v6h-4v-6H4v-4h6z"};function $n(e){let t=e==="edit"?"6 0 18 18":"0 0 24 24",n=e==="settings"?'<circle cx="6" cy="12" r="1.5"/><circle cx="12" cy="12" r="1.5"/><circle cx="18" cy="12" r="1.5"/>':`<path d="${Jd[e]}"/>`;return`<svg class="hcms-inline-icon" xmlns="http://www.w3.org/2000/svg" viewBox="${t}" width="24" height="24" fill="currentColor" aria-hidden="true" focusable="false">${n}</svg>`}var za="data-hcms-ghost",Zd=Gr("history");function Qd(e){let t=e.container,n=null;for(;t&&(t.namespaceURI!=="http://www.w3.org/1999/xhtml"||["SELECT","OPTGROUP","DATALIST"].includes(t.tagName));)n=t,t=t.parentElement;return{parent:t,anchor:n}}function Va({doc:e,themeRoot:t,onAdd:n,onResize:r}){let o=e.defaultView,i=[],s=!1,l=null,a=new Map;function h(u,m,p){u.style[m]!==p&&(u.style[m]=p)}function d(){let u=new Set(i.map(m=>m.node.parentElement));for(let[m,p]of a)u.has(m)&&o?.Sortable?.get(m)===p.instance||(p.instance.option("draggable")===p.selector&&p.instance.option("draggable",p.original),a.delete(m));for(let m of u){let p=o?.Sortable?.get(m);if(!p)continue;let v=p.option("draggable");if(a.get(m)?.selector===v)continue;let A=v,L=`${A.trim().startsWith(">")?"> ":""}:is(${A.trim().replace(/^>\s*/,"")}):not(${Zd})`;p.option("draggable",L),a.set(m,{instance:p,original:A,selector:L})}}function b(){for(let u of i){let{node:m,slot:p,list:v}=u,A=v.items.filter(M=>M.isConnected).map(M=>M.getBoundingClientRect()).filter(M=>M.width>0&&M.height>0);A.length&&(u.width=A.reduce((M,L)=>M+L.width,0)/A.length,u.height=A.reduce((M,L)=>M+L.height,0)/A.length),h(m,"width",u.width?`${Math.round(u.width)}px`:"100%"),h(p,"height",`${Math.max(48,Math.round(u.height||64))}px`),p!==m&&(p.colSpan=Math.max(1,...v.items.map(M=>[...M.children].reduce((L,H)=>L+(H.colSpan||1),0)))),m.hidden!==s&&(m.hidden=s)}d()}function f(u,m){let p=m.tagName,v=["TBODY","THEAD","TFOOT","TABLE"].includes(p),A=e.createElement(v?"tr":["UL","OL","MENU"].includes(p)?"li":"div");for(let B of[za,"data-hcms-shell","editor-ui","no-watch","no-save","save-remove","snapshot-remove"])A.setAttribute(B,"");A.setAttribute("draggable","false"),A.setAttribute("contenteditable","false"),A.className="hcms-shell pixel-quiet hcms-inline-ghost";for(let B of["light","dark"])A.classList.toggle(B,!!t?.classList.contains(B));let M=v?e.createElement("td"):A;M!==A&&(M.className="hcms-inline-ghost-cell",A.appendChild(M));let L=e.createElement("button");L.type="button",L.className="hcms-inline-list-button hcms-inline-list-add mirk-button mirk-button--small",L.setAttribute("data-hcms-list-action","add"),L.innerHTML=`<span class="mirk-button__label">${$n("add")}<span>Add</span></span>`,M.appendChild(L);let H={node:A,slot:M,button:L,list:u,width:0,height:0};L.addEventListener("click",B=>{B.preventDefault(),B.stopPropagation(),n(H.list)});for(let B of["pointerdown","mousedown","touchstart","click"])A.addEventListener(B,te=>te.stopPropagation());return A.addEventListener("dragstart",B=>{B.preventDefault(),B.stopPropagation()}),H}return{setLists(u){let m=new Set(i),p=[],v=new Set(i.map(M=>M.node)),A=new Set;for(let M of u||[]){if(!M.container||!M.container.isConnected)continue;let{parent:L,anchor:H}=Qd(M);if(!L)continue;if(!A.has(L)){for(let re of L.querySelectorAll(`:scope > [${za}]`))v.has(re)||re.remove();A.add(L)}let B=i.find(re=>m.has(re)&&re.list.container===M.container&&re.list.path.join(".")===M.path.join("."))||f(M,L);m.delete(B),B.list=M,B.button.setAttribute("data-hcms-list",M.path.join(".")),B.button.setAttribute("aria-label",`Add to ${M.path.join(".")||"the list"}`);let te=H||M.items.filter(re=>re.parentElement===L).at(-1);te?te.nextSibling!==B.node&&te.after(B.node):B.node.parentElement!==L&&L.appendChild(B.node),p.push(B)}for(let M of m)M.node.remove();i=p,l?.disconnect(),!l&&typeof o?.ResizeObserver=="function"&&(l=new o.ResizeObserver(()=>{b(),r?.()}));for(let M of i)for(let L of M.list.items)l?.observe(L);b()},update:b,setHidden(u){s=!!u,b()},destroy(){l?.disconnect();for(let u of i)u.node.remove();i=[],d()}}}var Wa=[["move-up","Move up"],["move-down","Move down"]],eh={prefer:"corner",inset:0};function th(e,t){return t.width<=e.width&&t.height<=e.height}function Ka({doc:e,layerEl:t,onActivate:n,onListAction:r}){let o=e.defaultView,i=[],s=new Map,l=0,a=new Map,h=null,d=new Set,b=0,f=!1,u=null,m=null,p=null,v=null,A=new Map,M=!1,L=null,H=Va({doc:e,themeRoot:t.closest("[data-hcms-shell]"),onResize:te,onAdd:g=>r?.({action:"add",list:g,index:g.items.length})}),B=e.createElement("div");B.className="hcms-inline-highlight",B.hidden=!0,B.setAttribute("aria-hidden","true"),t.appendChild(B);function te(){if(!(b||!o)){if(typeof o.requestAnimationFrame!="function")return K();b=o.requestAnimationFrame(()=>{b=0,K()})}}let re=()=>p||v;function K(){if(!o)return;H.update();let g={width:o.innerWidth,height:o.innerHeight},y=re();for(let O of i){if(!O.visible){O.node.hidden=!0;continue}for(let ge of O.members)ge.node.hidden=M&&ge.kind!=="handle";O.node.hidden=!1;let _=O.el.getBoundingClientRect(),E=O.node.getBoundingClientRect(),I=E.width,N=O.kind==="row"&&!th(_,E);if(N&&O.el!==y){for(let ge of O.members)ge.kind==="row"&&(ge.node.hidden=!0);E=O.node.getBoundingClientRect()}if(O.members.every(ge=>ge.node.hidden)){O.node.hidden=!0;continue}let j=O.kind==="handle"?null:eh,{x:J,y:$}=as({anchor:_,handle:E,viewport:g,...j}),ce=O.members.find(ge=>ge.kind==="handle");if(N&&ce){let ge=ce.node.getBoundingClientRect(),ht=as({anchor:_,handle:ge,viewport:g}),ft=O.members.slice(O.members.indexOf(ce)+1).filter(ue=>!ue.node.hidden).reduce((ue,Ge)=>ue+Ge.node.getBoundingClientRect().width+2,0);J=Math.max(8+I,Math.min(g.width-8,ht.x+ge.width+ft))-E.width,$=ht.y}O.node.style.transform=`translate(${Math.round(J)}px, ${Math.round($)}px)`}if(L)if(!L.node.isConnected||L.node.closest("[hidden]"))C();else{let O=L.button.getBoundingClientRect(),_=L.menu.getBoundingClientRect();L.menu.style.left=`${Math.max(8,O.right-_.width)-O.left}px`,L.menu.style.right="auto",L.menu.style.top=O.bottom+6+_.height>g.height-8?"auto":"calc(100% + 6px)",L.menu.style.bottom=O.bottom+6+_.height>g.height-8?"calc(100% + 6px)":"auto"}xe(),u?.()}function W(g){if(g?.closest?.("[data-hcms-ghost]"))return null;for(let y=g;y&&y.nodeType===1;y=y.parentElement){let O=A.get(y);if(O)return O}return null}function he(g){L&&!L.node.contains(g.target)&&C();let y=re();v=W(g.target),v&&t.contains(g.target)&&(p=null),re()!==y&&te()}function V(g){if(g.relatedTarget||!v)return;let y=re();v=null,re()!==y&&te()}function xe(){if(!m||B.hidden)return;let g=m.getBoundingClientRect();B.style.width=`${Math.round(g.width)}px`,B.style.height=`${Math.round(g.height)}px`,B.style.transform=`translate(${Math.round(g.left)}px, ${Math.round(g.top)}px)`}function We(){if(!o||typeof o.IntersectionObserver!="function"){for(let y of i)y.visible=!0;return}h||(h=new o.IntersectionObserver(y=>{let O=!1;for(let _ of y)for(let E of s.get(_.target)||[])E.visible!==_.isIntersecting&&(E.visible=_.isIntersecting,O=!0);O&&te()},{threshold:0}));let g=new Set(s.keys());for(let y of d)g.has(y)||h.unobserve(y);for(let y of g)d.has(y)||h.observe(y);d=g}function at(){f||!o||(o.addEventListener("scroll",te,{passive:!0,capture:!0}),o.addEventListener("resize",te,{passive:!0}),e.addEventListener("focusin",he),e.addEventListener("focusout",V),e.addEventListener("pointerdown",G,!0),e.addEventListener("keydown",ye,!0),f=!0)}function Nt(){!f||!o||(o.removeEventListener("scroll",te,{capture:!0}),o.removeEventListener("resize",te),e.removeEventListener("focusin",he),e.removeEventListener("focusout",V),e.removeEventListener("pointerdown",G,!0),e.removeEventListener("keydown",ye,!0),f=!1)}function xt(g){return`${g.kind}\0${g.attr||""}`}function _e(g,y){return g.container===y.container&&g.scalar===y.scalar}function dt(g,y){return g.kind!==y.kind?!1:g.kind==="handle"?xt(g.target)===xt(y.target):g.kind==="row"?g.row===y.row&&_e(g.list,y.list):_e(g.list,y.list)}function Ze(g,y){g.target=y;let O=y.path.join(".");g.node.setAttribute("data-hcms-target",O),y.icon?g.node.setAttribute("data-hcms-icon",y.icon):g.node.removeAttribute("data-hcms-icon"),g.node.setAttribute("aria-label",`Edit ${O}`)}function Rt(g){let y=e.createElement("button");y.type="button",y.className="hcms-inline-handle mirk-button mirk-button--small",y.innerHTML=`<span class="mirk-button__label">${$n("edit")}</span>`;let O={node:y,kind:"handle",target:g};return Ze(O,g),y.addEventListener("click",_=>{_.preventDefault(),_.stopPropagation(),n?.(O.target,y)}),O}function nt(g,y){let O=e.createElement("button");return O.type="button",O.className="hcms-inline-list-button mirk-button mirk-button--small",O.setAttribute("data-hcms-list-action",g),O.setAttribute("aria-label",y),O.innerHTML=`<span class="mirk-button__label">${$n(g)}${g==="add"?"<span>Add</span>":""}</span>`,O}function Qe(g,{list:y,row:O,rowIndex:_,count:E}){let I=y.path.join(".");g.list=y,g.row=O,g.index=_,g.count=E,g.node.setAttribute("data-hcms-list",I),g.node.setAttribute("data-hcms-row",String(_));for(let N of g.node.querySelectorAll("[data-hcms-list-action]")){let j=N.getAttribute("data-hcms-list-action"),J=Wa.find(([$])=>$===j)?.[1]||j;N.setAttribute("aria-label",`${J} ${I}.${_}`),N.disabled=j==="move-up"&&_===0||j==="move-down"&&_===E-1}}function ct(g,y,O,_){let E=e.createElement("div");E.className="hcms-inline-row-controls";let I={node:E,kind:"row",list:g,row:y,index:O,count:_};for(let[N,j]of Wa){let J=nt(N,j);J.addEventListener("click",$=>{$.preventDefault(),$.stopPropagation(),!J.disabled&&r?.({action:N,list:I.list,index:I.index,row:I.row})}),E.appendChild(J)}return Qe(I,{list:g,row:y,rowIndex:O,count:_}),I}function C(g=!1){if(!L)return;let y=L;L=null,y.menu.hidden=!0,y.button.setAttribute("aria-expanded","false"),y.node.parentElement?.classList.remove("has-open-settings"),g&&y.button.isConnected&&y.button.focus({preventScroll:!0})}function G(g){L&&!L.node.contains(g.target)&&C()}function ye(g){L&&(g.key==="Escape"?(g.preventDefault(),g.stopPropagation(),C(!0)):g.key==="Tab"?C(!0):["ArrowDown","ArrowUp","Home","End"].includes(g.key)&&L.menu.contains(g.target)&&(g.preventDefault(),L.menu.querySelector('[role="menuitem"]').focus({preventScroll:!0})))}function se(g,{list:y,row:O,rowIndex:_}){Object.assign(g,{list:y,row:O,index:_}),g.node.setAttribute("data-hcms-list",y.path.join(".")),g.node.setAttribute("data-hcms-row",String(_)),g.button.setAttribute("aria-label",`Settings ${y.path.join(".")}.${_}`)}function Ce(g){let y=e.createElement("div");y.className="hcms-inline-settings";let O=nt("settings","Settings");O.setAttribute("aria-haspopup","menu"),O.setAttribute("aria-expanded","false");let _=e.createElement("div");_.className="hcms-inline-settings-menu",_.setAttribute("role","menu"),_.setAttribute("aria-label","Item settings"),_.hidden=!0;let E=e.createElement("button");E.type="button",E.setAttribute("role","menuitem"),E.setAttribute("data-hcms-list-action","remove"),E.textContent="Delete",_.appendChild(E),y.append(O,_);let I={node:y,button:O,menu:_,kind:"settings"};se(I,g);let N=()=>{C(),L=I,_.hidden=!1,O.setAttribute("aria-expanded","true"),y.parentElement.classList.add("has-open-settings"),E.focus({preventScroll:!0}),te()};return O.addEventListener("click",j=>{j.preventDefault(),j.stopPropagation(),L===I?C(!0):N()}),O.addEventListener("keydown",j=>{(j.key==="ArrowDown"||j.key==="ArrowUp")&&(j.preventDefault(),N())}),E.addEventListener("click",j=>{j.preventDefault(),j.stopPropagation(),C(!0),r?.({action:"remove",list:I.list,index:I.index,row:I.row})}),I}function rt(g,y){g.kind==="handle"?Ze(g,y.target):g.kind==="row"?Qe(g,y):g.kind==="settings"&&se(g,y)}function Ve(g,y,O,_,E){let I=y.get(O)?.find(N=>N.category===E);if(!I){I={el:O,category:E,members:[]},g.push(I);let N=y.get(O);N?N.push(I):y.set(O,[I])}I.members.push(_)}function Ke(g,y,O){let _=O.items||[];_.forEach((E,I)=>{Kr(E)&&(Ve(g,y,E,{kind:"row",list:O,row:E,rowIndex:I,count:_.length},"item"),Ve(g,y,E,{kind:"settings",list:O,row:E,rowIndex:I},"item"))})}function et(g,y){let O=new Set(g.members),_=[];for(let E of y){let I=g.members.find(N=>O.has(N)&&dt(N,E))||(E.kind==="handle"?Rt(E.target):E.kind==="row"?ct(E.list,E.row,E.rowIndex,E.count):Ce(E));O.delete(I),rt(I,E),M&&I.kind!=="handle"&&(I.node.hidden=!0),_.push(I)}for(let E of O)E===L&&C(),E.node.remove();_.sort((E,I)=>["row","handle","settings"].indexOf(E.kind)-["row","handle","settings"].indexOf(I.kind)),_.forEach((E,I)=>{g.node.children[I]!==E.node&&g.node.insertBefore(E.node,g.node.children[I]||null)}),g.members=_}function ut(g,y){let O=[],_=new Map,E=new Map,I=0;for(let $ of g||[])E.has($.el)||E.set($.el,$),!($.kind!=="handle"||!Kr($.el))&&(Ve(O,_,$.el,{kind:"handle",target:$},"item"),I++);for(let $ of y||[])Ke(O,_,$);let N=new Set(i),j=new Map;for(let $ of i)j.has($.el)||j.set($.el,$.visible);let J=[];for(let $ of O){let ce=i.find(ge=>N.has(ge)&&ge.el===$.el&&ge.category===$.category);if(!ce){let ge=e.createElement("div");ge.className="hcms-inline-item-controls",ge.setAttribute("role","group"),ce={el:$.el,node:ge,category:$.category,kind:$.category==="add"?"add":"handle",members:[],visible:j.get($.el)??!1},t.appendChild(ge)}N.delete(ce),ce.el=$.el,ce.category=$.category,et(ce,$.members),ce.kind=ce.members.some(ge=>ge.kind==="row")?"row":ce.members.some(ge=>ge.kind==="handle")?"handle":"add",ce.node.setAttribute("aria-label",ce.category==="add"?"List controls":"Item controls"),J.push(ce)}for(let $ of N)$.node.remove();i=J,s=new Map,A=new Map;for(let $ of i){let ce=s.get($.el);ce?ce.push($):s.set($.el,[$]);for(let ge of $.members)ge.kind!=="row"&&ge.kind!=="settings"||(A.set(ge.row,ge.row),A.set(ge.node,ge.row),A.set($.node,ge.row))}p&&!A.has(p)&&(p=null),v&&!A.has(v)&&(v=null),a=E,l=I}function k(){C(),h?.disconnect(),h=null,d=new Set;for(let g of i)g.node.remove();i=[],s=new Map,a=new Map,A=new Map,l=0}return{setTargets(g,y){ut(g,y),H.setLists(y),We(),at(),te()},refresh:te,get count(){return l},get controlsHidden(){return M},setControlsHidden(g){if(M=!!g,H.setHidden(M),M){C();for(let y of i){for(let O of y.members)O.kind!=="handle"&&(O.node.hidden=!0);y.members.every(O=>O.node.hidden)&&(y.node.hidden=!0)}}te()},elementToTarget(g){if(g?.closest?.("[data-hcms-ghost]"))return null;for(let y=g;y&&y.nodeType===1;y=y.parentElement){let O=a.get(y);if(O)return O}return null},setHoveredRow(g){let y=re();p=g?W(g):null,re()!==y&&te()},showHighlight(g){g&&(m=g,B.hidden=!1,xe())},hideHighlight(){m=null,B.hidden=!0},setFollower(g){u=typeof g=="function"?g:null},destroy(){H.destroy(),b&&o&&o.cancelAnimationFrame(b),b=0,u=null,m=null,p=null,v=null,B.remove(),Nt(),k()}}}var nh="hypercms-inline",Jr="is-hcms-inline-active",cs="is-hcms-inline-onpath",Ga='input:not([disabled]):not([type="hidden"]), textarea:not([disabled]), select:not([disabled]), button:not([disabled]), [tabindex]:not([tabindex="-1"])',rh=["bold","italic","link","undo","redo"],oh=/^H[1-6]$/,ih=0;function Ja({doc:e,pageRoot:t,opts:n={}}){let r=n.richText!==!1,o=null,i=null,s=null,l=new Map,a=null,h=null,d=null;function b(f,u,m,p,v){let A=dr(e.defaultView);if(typeof A!="function")return null;let M=v||{},L=M.originalHTML??ls(u,{capability:"history"}).html(),H=M.richClayIsOurs??!u.hasAttribute("data-richclay"),B=M.adopted??u.getAttribute("data-richclay-active")==="true",te=Yr(u,p,"history"),re=sh(f,A,u,p,H);if(!re)return null;ca(u,p==="innerHTML",H);let K=String(++ih);u.setAttribute(_n,K),Wo();let W={el:u,editor:re,path:m,prop:p,boundId:K,originalHTML:L,oldValue:te,richClayIsOurs:H,adopted:B,dirty:!1,written:!1,restorable(){return!this.adopted&&!this.dirty&&!this.written},lastEdited:void 0};l.set(u,W),sa(K,W);let he=re.squire;if(he&&typeof he.addEventListener=="function"){let xe=()=>{W.dirty=!0,W.lastEdited=Yr(u,W.prop,"history"),lh(f,W)};he.addEventListener("input",xe),W.detachInput=()=>he.removeEventListener?.("input",xe)}let V=()=>Za(W);return u.addEventListener("blur",V),W.detachBlur=()=>u.removeEventListener("blur",V),W}return{name:"inline",richText:r,ctx:null,root:null,formRoot:null,errorEl:null,noticeEl:null,handoffEl:null,handoffCountEl:null,popEl:null,enhanceFormRichText:!1,prepareRules(f){return r?ha(f,t):f},bindText(f,u,m,p){return b(this.ctx,f,u,m,p)},mount(f){let u=this.ctx;o=dh(e,n.theme),this.root=o.root,this.formRoot=o.formRoot,this.errorEl=o.errorEl,this.noticeEl=o.noticeEl,this.handoffEl=o.handoffEl,this.handoffCountEl=o.handoffCountEl,this.popEl=o.popEl,vn(()=>Wr(e));let m=ar({pageRules:u.pageRules,formRules:u.formRules,data:f,doc:e});o.formRoot.appendChild(m),u.seeder.seed(o.formRoot),Cn(o.formRoot,e,this.enhanceFormRichText),yr(u),Lo(u),i=Ka({doc:e,layerEl:o.layerEl,onActivate:(p,v)=>this.activate(p,v),onListAction:p=>this.listAction(p)}),i.setFollower(()=>this.placePopover()),o.closeEl.addEventListener("click",()=>this.deactivate()),o.toggleEl.addEventListener("click",p=>{p.preventDefault(),p.stopPropagation(),this.toggleControls()}),o.handoffEl.querySelector("[data-hcms-open-view]").addEventListener("click",p=>{p.preventDefault(),p.stopPropagation(),u.onViewRequested?.("sidebar")}),this.bindPage(),this.syncTargets()},listAction({action:f,list:u,index:m,row:p}){let v=this.ctx,A=u.path.join("."),M=v.formRoot.querySelector(`[data-hcms-path="${gr(A)}"]`);if(!M)return;if(f==="add"){zr(A,v);return}let L=p?mh(v,A,p):m;if(L===-1)return;let H=hh(M,L);if(H){if(f==="remove"){Yi(H,v),this.syncTargets();return}Gi(H,f==="move-up"?-1:1,v),this.syncTargets()}},toggleControls(){if(!i||!o)return;let f=!i.controlsHidden;i.setControlsHidden(f),o.toggleEl.setAttribute("aria-pressed",String(f));let u=o.toggleEl.querySelector(".mirk-button__label");u&&(u.textContent=f?"Show controls":"Hide controls")},bindPage(){let f=this.ctx.pageRoot,u=o.root,m=H=>{let B=i&&i.elementToTarget(H.target);B?i.showHighlight(B.el):i?.hideHighlight(),i?.setHoveredRow(H.target)},p=()=>{i?.hideHighlight(),i?.setHoveredRow(null)},v=H=>{if(u.contains(H.target))return;let B=i&&i.elementToTarget(H.target);!B||B.kind!=="text"||l.has(B.el)||b(this.ctx,B.el,B.path.join("."),Go(B))},A=H=>{if(u.contains(H.target))return;let B=i&&i.elementToTarget(H.target);if(!B){this.deactivate();return}(typeof H.target.closest=="function"&&H.target.closest("a[href]")||B.kind!=="text")&&H.preventDefault(),this.activate(B)},M=H=>{H.key==="Escape"&&this.deactivate()},L=H=>{let B=H.detail;if(!(!B||B.pageRoot!==this.ctx.pageRoot||!B.path))for(let te of l.values())te.path===B.path&&(te.written=!0)};f.addEventListener("pointerover",m),f.addEventListener("pointerleave",p),f.addEventListener("pointerdown",v),f.addEventListener("click",A),u.addEventListener("keydown",M),e.addEventListener("hcms:change",L),s=()=>{f.removeEventListener("pointerover",m),f.removeEventListener("pointerleave",p),f.removeEventListener("pointerdown",v),f.removeEventListener("click",A),u.removeEventListener("keydown",M),e.removeEventListener("hcms:change",L)}},activate(f,u){if(!f||!o||f.kind==="text"&&this.activateText(f))return;let m=Ya(this,o,f.path.join("."));if(!m){this.deactivate();return}a=f,h=u||null,d=null,o.popEl.hidden=!1,o.formRoot.querySelectorAll(`.${Jr}`).forEach(Xa),this.placePopover(),fh(m)},activateText(f){let u=f.el,m=l.get(u);if(m)return Ko(m),!0;let p=b(this.ctx,u,f.path.join("."),Go(f));return p?(Ko(p),!0):!1},placePopover(){if(!o||!a||o.popEl.hidden)return;let f=e.defaultView;if(!f)return;let u={width:f.innerWidth,height:f.innerHeight},m=a.el.getBoundingClientRect(),p=o.popEl.getBoundingClientRect(),{mode:v,x:A,y:M}=qa({anchor:m,bar:p,viewport:u,current:d});d=v,o.popEl.style.transform=`translate(${Math.round(A)}px, ${Math.round(M)}px)`},deactivate(){if(!o||!a&&o.popEl.hidden)return;o.popEl.hidden=!0,ec(o.root);let f=h;if(a=null,h=null,d=null,f&&e.contains(f)&&typeof f.focus=="function")try{f.focus({preventScroll:!0})}catch{f.focus()}},syncTargets(){if(!i)return;let f=this.ctx,{targets:u,lists:m}=is(f.pageRoot,f.pageRules);i.setTargets(u,m);let p=ah(this,l,u,e);if(a){let A=p.get(a.el)||[],M=A.find(L=>ch(L,a))||A.find(L=>L.path.join(".")===a.path.join("."))||(A.length===1?A[0]:null);M?a=M:this.deactivate()}uh(this.ctx,l,e);let v=u.reduce((A,M)=>A+(Kr(M.el)?0:1),0);this.handoffEl&&(this.handoffCountEl.textContent=v===0?"":`${v} ${v===1?"field isn't":"fields aren't"} visible right now.`,this.handoffEl.hidden=v===0)},refresh(f,u){f==="livesync"?(Rn(e),Wr(e),Mn(this.ctx,{ignoreActiveValue:!0})):f==="undo"?Mn(this.ctx,{ignoreActiveValue:!1}):Mn(this.ctx),this.syncTargets(),(f==="livesync"||f==="undo")&&this.rebindText(f),this.restoreActive()},rebindText(f){let u=f!=="undo";for(let[m,p]of[...l]){if(!e.contains(m)){Xr(this.ctx,p,{restore:!1,record:u}),l.delete(m);continue}if(m.hasAttribute(dn)){let M=Yr(m,p.prop);M!==p.lastEdited&&(p.oldValue=M,p.lastEdited=void 0);continue}let v=e.activeElement===m;Xr(this.ctx,p,{restore:!1,record:u}),l.delete(m);let A=b(this.ctx,m,p.path,p.prop,{richClayIsOurs:p.richClayIsOurs,adopted:p.adopted});A&&v&&Ko(A)}},restoreActive(){if(!o||!a||o.popEl.hidden)return;if(!e.contains(a.el)){this.deactivate();return}if(!Ya(this,o,a.path.join("."))){this.deactivate();return}o.formRoot.querySelectorAll(`.${Jr}`).forEach(Xa),this.placePopover()},focusOnOpen(){if(this.root&&typeof this.root.focus=="function")try{this.root.focus({preventScroll:!0})}catch{this.root.focus()}},destroy(){h=null,this.deactivate();for(let f of l.values())Xr(this.ctx,f);l.clear(),s?.(),s=null,i?.destroy(),i=null,o?.destroy(),o=null,es(e),this.popEl=null,this.handoffEl=null,this.handoffCountEl=null}}}function sh(e,t,n,r,o){return vn(()=>{let i=null;try{i=new t(n,{inline:!0,hyperclay:!1,toolbar:r==="innerHTML"?rh:!1,...oh.test(n.tagName)?{singleLine:!0}:null})}catch(s){return console.warn("[hypercms] richclay activation failed; the field falls back to the popover",s),null}if(i.unsupported||!i.active){if(o)try{i.destroy()}catch{}return null}return typeof i.reattach=="function"&&i.reattach(),i})}function lh(e,{path:t,el:n,prop:r}){let o=Io(e.formRoot,t);o&&(jo(o,Yr(n,r),e.formRoot,t),tn(Gt(e),{path:t,structural:!1},e))}function Yr(e,t,n="data"){let r=ls(e,{capability:n});return t==="innerHTML"?r.html():r.text().trim()}function Za(e){let{el:t,prop:n,oldValue:r,lastEdited:o}=e,i=o;if(i===void 0||i===r)return;e.oldValue=i;let s=It("undo");if(!s||typeof s.recordValue!="function")return;let l={prop:n,oldValue:r,newValue:i,read:a=>Yr(a,n,"history"),write:(a,h)=>Qa(a,n,h)};s.isPaused?queueMicrotask(()=>{t.isConnected&&s.recordValue(t,l)}):s.recordValue(t,l)}function Qa(e,t,n){let r=e.cloneNode(!1);t==="innerHTML"?r.innerHTML=n:r.textContent=n,Tn(e,Array.from(r.childNodes),{morphStyle:"innerHTML",policy:"history",restoreFocus:!1,scripts:{handle:!1,merge:!1}})}function Xr(e,t,{restore:n=!0,record:r=!0}={}){r&&Za(t),t.detachInput?.(),t.detachBlur?.(),vn(()=>{if(!t.adopted){try{t.editor.destroy()}catch(o){console.warn("[hypercms] richclay teardown failed; editor state may reach the save",o)}t.richClayIsOurs&&t.el.removeAttribute("data-richclay")}t.el.removeAttribute(dn),t.el.removeAttribute(Bn),t.el.removeAttribute(_n),la(t.boundId),n&&t.restorable()&&Qa(t.el,"innerHTML",t.originalHTML)})}function Ko(e){let{editor:t,el:n}=e;if(n.ownerDocument.activeElement!==n)try{typeof t.focus=="function"?t.focus():n.focus()}catch{}}function ah(e,t,n,r){let o=new Map;for(let i of n){let s=o.get(i.el);s?s.push(i):o.set(i.el,[i])}for(let[i,s]of[...t]){let l=o.get(i)||[],a=l.find(f=>Go(f)===s.prop)||l[0];if(!a){Xr(e.ctx,s,{restore:!0}),t.delete(i);continue}s.path=a.path.join(".");let h=Go(a);if(h===s.prop)continue;let d=r.activeElement===i;Xr(e.ctx,s,{restore:!1}),t.delete(i);let b=e.bindText(i,s.path,h,{richClayIsOurs:s.richClayIsOurs,adopted:s.adopted,originalHTML:s.originalHTML});b&&d&&Ko(b)}return o}function ch(e,t){return e.el===t.el&&e.kind===t.kind&&e.attr===t.attr}function Go(e){return e.attr==="innerHTML"?"innerHTML":"textContent"}function uh(e,t,n){for(let r of e.pageRoot.querySelectorAll(`[${dn}]`))t.has(r)||vn(()=>fa(r,n.defaultView))}function Ya(e,t,n){let r=e.formRoot&&e.formRoot.querySelector(`[data-hcms-path="${gr(n)}"]`);if(ec(t.root),!r)return null;let o=r.closest("[data-hcms-card]"),i=o?[...o.querySelectorAll('[data-hcms-shape="scalar"][data-hcms-path]')].filter(s=>s.closest("[data-hcms-card]")===o&&s.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]')===o.parentElement.closest('[data-hcms-shape="object-array"]')):[r];i.includes(r)||i.push(r);for(let s of i){s.classList.add(Jr),s.removeAttribute("draggable");for(let l=s.parentElement;l&&(l.classList.add(cs),l.removeAttribute("draggable"),l!==e.formRoot);l=l.parentElement);}return r}function ec(e){if(e)for(let t of e.querySelectorAll(`.${Jr}, .${cs}`))t.classList.remove(Jr,cs)}function Xa(e){e.tagName==="TEXTAREA"&&hr(e),e.querySelectorAll?.("textarea").forEach(hr)}function fh(e){let t=e.matches?.(Ga)?e:e.querySelector?.(Ga);if(!(!t||typeof t.focus!="function"))try{t.focus({preventScroll:!0})}catch{t.focus()}}function dh(e,t){Rn(e);let n=e.createElement(nh),r=t==="dark"?" dark":t==="light"?" light":"";return n.className="hcms-shell pixel-quiet hcms-inline"+r,n.setAttribute("data-hcms-shell",""),n.setAttribute("editor-ui",""),n.setAttribute("no-save",""),n.setAttribute("save-remove",""),n.setAttribute("snapshot-remove",""),n.setAttribute("no-watch",""),n.setAttribute("tabindex","-1"),n.innerHTML=`
|
|
180
|
+
`,(e||l.body).appendChild(u);let b=l.body;b.classList.add("hcms-open"),po(l),n&&b.classList.add("hcms-overlay"),t==="left"&&b.classList.add("hcms-side-left");let v=sh(u,l),m=oh(u);return{root:u,formRoot:u.querySelector("[data-hcms-form-root]"),noticeEl:u.querySelector(".hcms-shell-notice"),errorEl:u.querySelector(".hcms-shell-error"),saveButton:u.querySelector(".hcms-shell-save"),destroy(){v.detach(),m.detach(),u.remove(),b.classList.remove("hcms-open","hcms-overlay","hcms-side-left"),Ni(l)},restoreChrome(){Qn(l),b.classList.add("hcms-open"),po(l),n&&b.classList.add("hcms-overlay"),t==="left"&&b.classList.add("hcms-side-left")}}}function Qn(e){e&&(e.getElementById(is)||e.querySelector("style[data-hcms-bundled-styles]")||($r.delete(e),sc(e)))}function sc(e){if(e&&!$r.has(e)){if(e[th]){$r.add(e);return}if(e.getElementById(is)||e.querySelector("style[data-hcms-bundled-styles]")){$r.add(e);return}if(Oi){let t=e.createElement("style");t.id=is,t.setAttribute("save-remove",""),t.setAttribute("save-ignore",""),t.textContent=Oi,(e.head||e.documentElement).appendChild(t),$r.add(e);return}try{let t=new URL("./theme.generated.css",ih.url).href,n=e.createElement("link");n.rel="stylesheet",n.id=is,n.setAttribute("save-remove",""),n.setAttribute("save-ignore",""),n.href=t,(e.head||e.documentElement).appendChild(n),$r.add(e)}catch{let n=()=>{link.isConnected&&console.warn("hypercms: shell stylesheet not applied \u2014 cssText is empty and the co-located theme fallback is unavailable. Call installStyles(themeText) before opening the CMS.")};e.defaultView?.queueMicrotask?e.defaultView.queueMicrotask(n):n()}}}function oh(e){let t=e.querySelector(".hcms-shell-body"),n=e.querySelector(".hcms-shell-header");if(!t||!n||typeof t.addEventListener!="function")return{detach(){}};let r=()=>{let o=(n.offsetHeight||0)-12;e.classList.toggle("is-condensed",t.scrollTop>o)};return t.addEventListener("scroll",r,{passive:!0}),r(),{detach(){t.removeEventListener("scroll",r)}}}function sh(e,t){function n(r){if(r.key!=="Tab"||!e.contains(t.activeElement))return;let o=Array.from(e.querySelectorAll(nh));if(o.length===0)return;let s=o[0],i=o[o.length-1];r.shiftKey&&t.activeElement===s?(r.preventDefault(),i.focus()):!r.shiftKey&&t.activeElement===i&&(r.preventDefault(),s.focus())}return t.addEventListener("keydown",n),{detach:()=>t.removeEventListener("keydown",n)}}var lh="[hypercms]",ic={skip:"[data-hcms-shell]",templateAttr:"cms-template"},lc={skip:"[data-hcms-shell]",templateAttr:null},Ci=class extends Error{constructor(t,n,r){super(`hypercms: rule at "${t}" has an invalid CSS selector: "${n}"`),this.name="InvalidRuleSelector",this.path=t,this.selector=n,this.cause=r}};function cs(e,t){let n=[],r=[],o=[];return Ri(jn(e),e,t,[],n,r,o),{missing:ac(n),twins:dh(r),readOnly:ac(o)}}function us(e){return Mi(e)}function Mi(e){if(typeof e=="string")return cc(e)?void 0:e;if(Array.isArray(e)){let[t,n]=e;return[t,Mi(n)]}if(e&&typeof e=="object"){let t={};for(let[n,r]of Object.entries(e)){let o=Mi(r);o!==void 0&&(t[n]=o)}return t}return e}function Ri(e,t,n,r,o,s,i){if(typeof n=="string"){let l=ah(n),a=l?as(e,t,l,ic,r):[];if(cc(n)){i.push(Ur(r));return}if(!l)return;if(n.endsWith("[]")){a.length===0&&as(e,t,l,lc,r).length===0&&o.push(Ur(r));return}a.length===0?o.push(Ur(r)):a.length>1&&s.push({path:Ur(r),count:a.length});return}if(Array.isArray(n)){let[l,a]=n;if(typeof l!="string"||!l)return;let u=as(e,t,l,ic,r);if(u.length===0){as(e,t,l,lc,r).length===0&&o.push(Ur(r));return}for(let d of u)Ri(e,d,a,[...r,"*"],o,s,i);return}if(n&&typeof n=="object")for(let[l,a]of Object.entries(n))Ri(e,t,a,[...r,l],o,s,i)}function as(e,t,n,r,o){try{return e.find(t,n,r)}catch(s){throw new Ci(Ur(o),n,s)}}function ah(e){if(e==="."||e.startsWith("@"))return null;if(e.endsWith("[]"))return e.slice(0,-2)||null;let t=Vt(e);return(t===-1?e:e.slice(0,t))||null}function ch(e){if(e.endsWith("[]"))return null;let t=Vt(e);return t===-1?null:e.slice(t+1)||null}function cc(e){let t=ch(e);return t!=null&&eo.has(t)}function zr(e){uh(e),fh(e)}function uh(e){let t=e.noticeEl;if(!t)return;let n=e.unresolved&&e.unresolved.missing||[],r=e.unresolved&&e.unresolved.readOnly||[];if(n.length===0&&r.length===0){t.textContent="",t.hidden=!0;return}let o=[];if(n.length){let s=n.length===1?"1 field no longer matches this page":`${n.length} fields no longer match this page`;o.push(`${s}: ${n.join(", ")}`)}if(r.length){let s=r.length===1?"1 field reads a property the browser will not let anything write":`${r.length} fields read properties the browser will not let anything write`;o.push(`${s}: ${r.join(", ")}`)}t.textContent=o.join(`
|
|
181
|
+
`),t.hidden=!1}function fh(e){let t=e.unresolved&&e.unresolved.twins||[],n=t.map(r=>`${r.path}:${r.count}`).join("|");if(n!==e.lastTwinSignature){e.lastTwinSignature=n;for(let{path:r,count:o}of t)console.warn(`${lh} "${r}" matches ${o} elements; edits go to the first one.`)}}function ac(e){return[...new Set(e)]}function dh(e){let t=new Map;for(let n of e){let r=t.get(n.path);(!r||n.count>r.count)&&t.set(n.path,n)}return[...t.values()]}function Ur(e){return e.length?e.join("."):"(whole page)"}var hh={skip:"[data-hcms-shell]",templateAttr:"cms-template"};function er(e,{ignoreActiveValue:t}={}){return mh(e,{ignoreActiveValue:t})}function mh(e,{ignoreActiveValue:t}){let n=ln.findRules(e.doc,e.rulesSource||"cms");n&&(e.pageRules=e.view.prepareRules(n.rules),e.rulesTagNode=n.tagNode),Uo(e.doc),Go(e.doc,e.pageRules),e.formRules=Xo(e.pageRules,e.doc),e.writeRules=us(e.pageRules),e.unresolved=cs(e.pageRoot,e.pageRules);let r=Bo(),o=Zn(ln.extract(e.pageRoot,e.pageRules,{...hh,...r.hooks}),e.pageRules),s=Lr({pageRules:e.pageRules,formRules:e.formRules,data:o,doc:e.doc});qo(e.formRoot,s,{ignoreActiveValue:t}),r.seed(e.formRoot),Xn(e.formRoot,e.doc,e.view?.enhanceFormRichText!==!1),Ti(e),zr(e),e.updateFingerprint&&e.updateFingerprint()}function uc({debounce:e=100,onRefresh:t}){let n=Jt("Mutation");if(!n||typeof n.onAnyChange!="function")throw new Error("hypercms: a mutation hub is required (clay.Mutation or hyperclay.Mutation). Load clayjs or hyperclayjs, or just the mutation utility, before initializing hypercms.");let r=n.onAnyChange({debounce:e},o=>{t(o)});return{unsubscribe:typeof r=="function"?r:()=>{}}}var ph='input:not([disabled]):not([type="hidden"]), textarea:not([disabled]), select:not([disabled]), button:not([disabled]), [tabindex]:not([tabindex="-1"])';function fc({doc:e,pageRoot:t,opts:n={}}){let r=n.richText!==!1,o=null;return{name:"sidebar",richText:r,enhanceFormRichText:!0,ctx:null,root:null,formRoot:null,errorEl:null,noticeEl:null,prepareRules(s){return r?Ga(s,t):s},mount(s){let i=this.ctx;o=Fn(()=>oc({mountTo:n.mountTo||e.body,side:n.side||"right",overlay:!!n.overlay,showSaveButton:!!n.showSaveButton,title:n.title,eyebrow:n.eyebrow,theme:n.theme,doc:e})),this.root=o.root,this.formRoot=o.formRoot,this.errorEl=o.errorEl,this.noticeEl=o.noticeEl;let l=Lr({pageRules:i.pageRules,formRules:i.formRules,data:s,doc:e});o.formRoot.appendChild(l),i.seeder.seed(o.formRoot),Xn(o.formRoot,e),zr(i),ns(i)},refresh(s){if(s==="livesync"){o?.restoreChrome?.(),er(this.ctx,{ignoreActiveValue:!0});return}if(s==="undo"){er(this.ctx,{ignoreActiveValue:!1});return}er(this.ctx)},focusOnOpen(){let s=this.root&&this.root.querySelector(ph);s&&typeof s.focus=="function"&&s.focus()},destroy(){o?.destroy(),o=null}}}var gh="[cms-template], [data-hcms-shell]";function go(e){if(!e||typeof e.getBoundingClientRect!="function"||typeof e.closest=="function"&&e.closest(gh))return!1;let t=e.getBoundingClientRect();return t.width>=8&&t.height>=8}var bh={skip:"[data-hcms-shell]",templateAttr:"cms-template"},kh={skip:"[data-hcms-shell]",templateAttr:null},yh="text",xh="native",dc="handle",vh=new Set(["INPUT","TEXTAREA","SELECT"]),pc=new Set(["IMG","INPUT","TEXTAREA","SELECT","OPTION","BR","HR","VIDEO","AUDIO","IFRAME","EMBED","OBJECT","CANVAS","SOURCE","TRACK","AREA","COL","PARAM","BUTTON"]);function Ii(e,t){return wh(e,t)}function wh(e,t){let n=[],r=[],o=jn(e);return Li(o,e,t,[],n,r),{targets:n,lists:r}}function Li(e,t,n,r,o,s){if(typeof n=="string"){if(n.endsWith("[]")){let d=n.slice(0,-2);if(!d)return;let h=fs(e,t,d);h.forEach((f,p)=>{o.push(mc([...r,p],f,n,null))}),s.push(hc(e,t,r,d,h,!0));return}let i=Vt(n),l=i===-1?null:n.slice(i+1),a=i===-1?n:n.slice(0,i),u=!a||a==="."?t:fs(e,t,a)[0];u&&o.push(mc(r,u,n,l));return}if(Array.isArray(n)){let[i,l]=n;if(typeof i!="string"||!i)return;let a=fs(e,t,i);a.forEach((u,d)=>Li(e,u,l,[...r,d],o,s)),s.push(hc(e,t,r,i,a,typeof l=="string"));return}if(n&&typeof n=="object")for(let[i,l]of Object.entries(n))Li(e,t,l,[...r,i],o,s)}function hc(e,t,n,r,o,s){let i=o[0]?o[0].parentElement:null;if(!i){let l=fs(e,t,r,kh)[0];i=l?l.parentElement:null}return{path:n,items:o,container:i,scalar:s}}function mc(e,t,n,r){return{path:e,el:t,rule:n,attr:r,kind:Ah(t,r),icon:Th(t,r)}}function Ah(e,t){let n=(e.tagName||"").toUpperCase();return!t||t==="innerHTML"?pc.has(n)?dc:yh:t==="value"&&vh.has(n)&&!e.readOnly&&!Sh(e)?xh:dc}function Sh(e){return e.disabled?!0:typeof e.matches=="function"&&e.matches(":disabled")}function Th(e,t){let n=(e.tagName||"").toUpperCase();return(!t||t==="innerHTML")&&!pc.has(n)?null:n==="IMG"||t==="srcset"?"camera":n==="A"&&t==="href"?"paperclip":"pencil"}function fs(e,t,n,r=bh){try{return e.find(t,n,r)}catch{return[]}}var gc=Object.freeze({data:Object.freeze({tokens:["no-data"],bundles:["editor-ui"]}),save:Object.freeze({tokens:["no-save"],bundles:["editor-ui"]}),snapshot:Object.freeze({tokens:["no-snapshot"],bundles:["editor-ui"]}),watch:Object.freeze({tokens:["no-watch"],bundles:["editor-ui"]}),undo:Object.freeze({tokens:["no-undo"],bundles:["editor-ui"]}),history:Object.freeze({tokens:[],bundles:["editor-ui"]})}),Eh=Object.freeze({"editor-ui":Object.freeze(["no-data","no-save","no-snapshot","no-watch","no-undo"])}),iy=Object.freeze(["no-save","no-snapshot","no-trigger-autosave","no-dirty","no-watch","no-undo","no-data","freeze","editor-ui"]);function ji(e,t){if(!e||e.nodeType!==1)return!1;let n=e.getAttribute?.("clay");return!!(n&&n.split(/\s+/).includes(t)||e.hasAttribute?.(t))}function _h(e,t){if(ji(e,t))return!0;for(let[n,r]of Object.entries(Eh))if(r.includes(t)&&ji(e,n))return!0;return!1}function bo(e){let t=gc[e];if(!t)throw new Error(`Unknown region capability: ${e}`);return[...t.tokens,...t.bundles].flatMap(n=>[`[clay~="${n}"]`,`[${n}]`]).join(", ")}function Oh(e,t){let n=e&&e.nodeType===1?e:e?.parentElement;for(;n&&n.nodeType===1;){let r=gc[t];if(!r)throw new Error(`Unknown region capability: ${t}`);if(r.tokens.some(o=>_h(n,o))||r.bundles.some(o=>ji(n,o)))return n;n=n.parentElement}return null}function bc(e,t){return!!Oh(e,t)}var Nh=/:(?:focus(?:-within|-visible)?|hover|active|visited|defined)\b/i;function kc(e,t){if(!/^(INPUT|TEXTAREA|SELECT|OPTION)$/.test(e.tagName||""))return;let n=(e.getAttribute?.("type")||"").toLowerCase();if("value"in e&&"value"in t&&e.tagName!=="OPTION"&&n!=="checkbox"&&n!=="radio"&&(t.value=e.value),"checked"in e&&"checked"in t&&(t.checked=e.checked),"selected"in e&&"selected"in t&&(t.selected=e.selected),e.tagName==="SELECT")for(let r=0;r<e.options.length;r++)t.options[r].selected=e.options[r].selected;"indeterminate"in e&&"indeterminate"in t&&(t.indeterminate=e.indeterminate)}function yc(e,t,n,r){if(r)return!!e.closest?.(t);let o=e;for(;o?.nodeType===1;){if(o.matches(t))return!0;if(o===n)break;o=o.parentElement}return!1}function xc(e,t,n,r,o,s,i,l){if(e.nodeType===1&&((i?bc(e,n):yc(e,r,s,!1))||o&&(i&&e!==s?e.matches(o):yc(e,o,s,i))))return null;let a=t.importNode(e,!1);l.cloneToLive.set(a,e),l.liveToClone.set(e,a);let u=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,d=a.nodeType===1&&a.tagName==="TEMPLATE"?a.content:a;u!==e&&(l.cloneToLive.set(d,u),l.liveToClone.set(u,d));for(let h of u.childNodes||[]){let f=xc(h,t,n,r,o,s,i,l);f&&(d.appendChild(f),h.nodeType===1&&kc(h,f))}return e.nodeType===1&&kc(e,a),a}function Pi(e,{capability:t="data",exclude:n=null,inherit:r=!0}={}){if(!e)throw new TypeError("createContentView requires a DOM context");let o=e.nodeType===9?e:e.ownerDocument;if(!o?.implementation?.createHTMLDocument)throw new TypeError("createContentView requires an HTML DOM implementation");let s=o.implementation.createHTMLDocument(""),i=new WeakMap,l=new WeakMap,a=e.nodeType===9?e.documentElement:e;n&&s.documentElement.matches(n);let u=bo(t),d=xc(a,s,t,u,n,a,r,{cloneToLive:i,liveToClone:l});e.nodeType===9&&d&&(s.replaceChild(d,s.documentElement),l.set(e,s),i.set(s,e));let h=f=>{if(Nh.test(f))throw new Error(`Filtered content queries do not support stateful selector: ${f}`)};return{root:d,document:s,capability:t,selector:bo(t),cloneToLive:i,liveToClone:l,original(f){return i.get(f)||null},cloneOf(f){return l.get(f)||null},query(f,p=d){return h(f),Array.from(p.querySelectorAll(f),b=>i.get(b)||b)},text(f=d){return(f===d?d:l.get(f))?.textContent||""},html(f=d){return(f===d?d:l.get(f))?.innerHTML??""},clone(f=d){let p=f===d?d:l.get(f);return p?s.importNode(p,!0):null}}}var Ch=[16,8,0],Zt=8,Mh=4;function vc({anchor:e,bar:t,rail:n=t,viewport:r,current:o=null}){let s=f=>o===f?Mh:0;if(e.bottom<=0||e.top>=r.height||e.right<=0||e.left>=r.width)return{mode:"hidden",x:0,y:0};let i=f=>Math.max(Zt,Math.min(e.left,r.width-f-Zt)),l=e.top-16-t.height;if(l>=Zt-s("above"))return{mode:"above",x:i(t.width),y:l};let a=e.bottom+16;if(a+t.height<=r.height-Zt+s("below"))return{mode:"below",x:i(t.width),y:a};let u=r.width-e.right-Zt,d=e.left-Zt,h=u>=d?[["rail-right",u],["rail-left",d]]:[["rail-left",d],["rail-right",u]];for(let[f,p]of h)for(let b of Ch){if(n.width+b>p+s(f))continue;let v=f==="rail-right"?Math.min(e.right+b,r.width-n.width-Zt):Math.max(e.left-b-n.width,Zt),m=Math.min(e.bottom,r.height-Zt)-n.height,g=Math.max(Zt,Math.min(Math.max(e.top,Zt),m));return{mode:f,x:v,y:g,gap:b}}return{mode:"pinned",x:i(t.width),y:Zt}}function Di({anchor:e,handle:t,viewport:n,inset:r=6,prefer:o="auto"}){let s=e.height>=t.height*1.5&&e.width>=t.width*2;if(o==="corner"||s){let f=Math.max(Zt,Math.min(e.right-t.width+r,n.width-t.width-Zt)),p=Math.max(Zt,Math.min(e.top-r,n.height-t.height-Zt));return{x:f,y:p,mode:"over"}}let i=4,l=e.right+i+t.width<=n.width-Zt,a=l?e.right+i:e.left-i-t.width,u=Math.max(Zt,a),d=e.top+e.height/2-t.height/2,h=Math.max(Zt,Math.min(d,n.height-t.height-Zt));return{x:u,y:h,mode:l?"beside-right":"beside-left"}}var hs=!1;function wc(){if(hs)return;let e=Jt("onPrepareForSave");typeof e=="function"&&(e(t=>{Sc(t),Ac(t)}),hs=!0)}function Ac(e){let t=e&&e.querySelector&&e.querySelector("body");t&&t.classList.remove("hcms-open","hcms-overlay","hcms-side-left",ls)}function Sc(e){if(!(!e||typeof e.querySelectorAll!="function"))for(let t of e.querySelectorAll(`[${Yn}]`)){let n=za(t);n!==null&&(t.innerHTML=n),t.removeAttribute(Yn)}}var ms=!1;function ps(){if(ms)return;let e=Jt("onSnapshot");typeof e=="function"&&(e(t=>{Sc(t),Wa(t,typeof window<"u"?window:null),Ac(t)}),ms=!0)}function Tc(){wc(),ps(),(!hs||!ms)&&Rh()}var ds=null;function Rh(){if(ds||typeof document>"u")return;ds=Pr(document,Ha,()=>{wc(),ps(),hs&&ms&&(ds?.(),ds=null)})}var Lh={edit:"M8 10h2v6H8zm2 4h4v2h-4zm0-6h2v2h-2zm2-2h2v2h-2zm2-2h2v2h-2zm2-2h2v2h-2zm2 2h2v2h-2zm2 2h2v2h-2zm-2 2h2v2h-2zm-2 2h2v2h-2zm-2 2h2v2h-2zm-4 0h2v2h-2z","move-up":"M11 4h2v2h2v2h2v2h2v2h-4v-2h-2v10h-2V10H9v2H5v-2h2V8h2V6h2z","move-down":"M11 4h2v10h2v-2h4v2h-2v2h-2v2h-2v2h-2v-2H9v-2H7v-2H5v-2h4v2h2z",remove:"M5 5h3v3h3v3h2V8h3V5h3v3h-3v3h-3v2h3v3h3v3h-3v-3h-3v-3h-2v3H8v3H5v-3h3v-3h3v-2H8V8H5z",add:"M10 4h4v6h6v4h-6v6h-4v-6H4v-4h6z"};function hr(e){let t=e==="edit"?"6 0 18 18":"0 0 24 24",n=e==="settings"?'<circle cx="6" cy="12" r="1.5"/><circle cx="12" cy="12" r="1.5"/><circle cx="18" cy="12" r="1.5"/>':`<path d="${Lh[e]}"/>`;return`<svg class="hcms-inline-icon" xmlns="http://www.w3.org/2000/svg" viewBox="${t}" width="24" height="24" fill="currentColor" aria-hidden="true" focusable="false">${n}</svg>`}var Ec="data-hcms-ghost",Ih=bo("history");function jh(e){let t=e.container,n=null;for(;t&&(t.namespaceURI!=="http://www.w3.org/1999/xhtml"||["SELECT","OPTGROUP","DATALIST"].includes(t.tagName));)n=t,t=t.parentElement;return{parent:t,anchor:n}}function _c({doc:e,themeRoot:t,onAdd:n,onResize:r}){let o=e.defaultView,s=[],i=!1,l=null,a=new Map;function u(p,b,v){p.style[b]!==v&&(p.style[b]=v)}function d(){let p=new Set(s.map(b=>b.node.parentElement));for(let[b,v]of a)p.has(b)&&o?.Sortable?.get(b)===v.instance||(v.instance.option("draggable")===v.selector&&v.instance.option("draggable",v.original),a.delete(b));for(let b of p){let v=o?.Sortable?.get(b);if(!v)continue;let m=v.option("draggable");if(a.get(b)?.selector===m)continue;let g=m,I=`${g.trim().startsWith(">")?"> ":""}:is(${g.trim().replace(/^>\s*/,"")}):not(${Ih})`;v.option("draggable",I),a.set(b,{instance:v,original:g,selector:I})}}function h(){for(let p of s){let{node:b,slot:v,list:m}=p,g=m.items.filter(y=>y.isConnected).map(y=>y.getBoundingClientRect()).filter(y=>y.width>0&&y.height>0);g.length&&(p.width=g.reduce((y,I)=>y+I.width,0)/g.length,p.height=g.reduce((y,I)=>y+I.height,0)/g.length),u(b,"width",p.width?`${Math.round(p.width)}px`:"100%"),u(v,"height",`${Math.max(48,Math.round(p.height||64))}px`),v!==b&&(v.colSpan=Math.max(1,...m.items.map(y=>[...y.children].reduce((I,Y)=>I+(Y.colSpan||1),0)))),b.hidden!==i&&(b.hidden=i)}d()}function f(p,b){let v=b.tagName,m=["TBODY","THEAD","TFOOT","TABLE"].includes(v),g=e.createElement(m?"tr":["UL","OL","MENU"].includes(v)?"li":"div");for(let $ of[Ec,"data-hcms-shell","editor-ui","no-watch","no-save","save-remove","snapshot-remove"])g.setAttribute($,"");g.setAttribute("draggable","false"),g.setAttribute("contenteditable","false"),g.className="hcms-shell pixel-quiet hcms-inline-ghost";for(let $ of["light","dark"])g.classList.toggle($,!!t?.classList.contains($));let y=m?e.createElement("td"):g;y!==g&&(y.className="hcms-inline-ghost-cell",g.appendChild(y));let I=e.createElement("button");I.type="button",I.className="hcms-inline-list-button hcms-inline-list-add mirk-button mirk-button--small",I.setAttribute("data-hcms-list-action","add"),I.innerHTML=`<span class="mirk-button__label">${hr("add")}<span>Add</span></span>`,y.appendChild(I);let Y={node:g,slot:y,button:I,list:p,width:0,height:0};I.addEventListener("click",$=>{$.preventDefault(),$.stopPropagation(),n(Y.list)});for(let $ of["pointerdown","mousedown","touchstart","click"])g.addEventListener($,H=>H.stopPropagation());return g.addEventListener("dragstart",$=>{$.preventDefault(),$.stopPropagation()}),Y}return{setLists(p){let b=new Set(s),v=[],m=new Set(s.map(y=>y.node)),g=new Set;for(let y of p||[]){if(!y.container||!y.container.isConnected)continue;let{parent:I,anchor:Y}=jh(y);if(!I)continue;if(!g.has(I)){for(let z of I.querySelectorAll(`:scope > [${Ec}]`))m.has(z)||z.remove();g.add(I)}let $=s.find(z=>b.has(z)&&z.list.container===y.container&&z.list.path.join(".")===y.path.join("."))||f(y,I);b.delete($),$.list=y,$.button.setAttribute("data-hcms-list",y.path.join(".")),$.button.setAttribute("aria-label",`Add to ${y.path.join(".")||"the list"}`);let H=Y||y.items.filter(z=>z.parentElement===I).at(-1);H?H.nextSibling!==$.node&&H.after($.node):$.node.parentElement!==I&&I.appendChild($.node),v.push($)}for(let y of b)y.node.remove();s=v,l?.disconnect(),!l&&typeof o?.ResizeObserver=="function"&&(l=new o.ResizeObserver(()=>{h(),r?.()}));for(let y of s)for(let I of y.list.items)l?.observe(I);h()},update:h,setHidden(p){i=!!p,h()},destroy(){l?.disconnect();for(let p of s)p.node.remove();s=[],d()}}}var Oc=[["move-up","Move up"],["move-down","Move down"]],Ph={prefer:"corner",inset:0};function Dh(e,t){return t.width<=e.width&&t.height<=e.height}function Nc({doc:e,layerEl:t,onActivate:n,onListAction:r}){let o=e.defaultView,s=[],i=new Map,l=0,a=new Map,u=null,d=new Set,h=0,f=!1,p=null,b=null,v=null,m=null,g=new Map,y=!1,I=null,Y=_c({doc:e,themeRoot:t.closest("[data-hcms-shell]"),onResize:H,onAdd:ee=>r?.({action:"add",list:ee,index:ee.items.length})}),$=e.createElement("div");$.className="hcms-inline-highlight",$.hidden=!0,$.setAttribute("aria-hidden","true"),t.appendChild($);function H(){if(!(h||!o)){if(typeof o.requestAnimationFrame!="function")return ae();h=o.requestAnimationFrame(()=>{h=0,ae()})}}let z=()=>v||m;function ae(){if(!o)return;Y.update();let ee={width:o.innerWidth,height:o.innerHeight},ce=z();for(let ge of s){if(!ge.visible){ge.node.hidden=!0;continue}for(let T of ge.members)T.node.hidden=y&&T.kind!=="handle";ge.node.hidden=!1;let Ue=ge.el.getBoundingClientRect(),ke=ge.node.getBoundingClientRect(),Je=ke.width,kt=ge.kind==="row"&&!Dh(Ue,ke);if(kt&&ge.el!==ce){for(let T of ge.members)T.kind==="row"&&(T.node.hidden=!0);ke=ge.node.getBoundingClientRect()}if(ge.members.every(T=>T.node.hidden)){ge.node.hidden=!0;continue}let ht=ge.kind==="handle"?null:Ph,{x:wt,y:ze}=Di({anchor:Ue,handle:ke,viewport:ee,...ht}),Ot=ge.members.find(T=>T.kind==="handle");if(kt&&Ot){let T=Ot.node.getBoundingClientRect(),re=Di({anchor:Ue,handle:T,viewport:ee}),oe=ge.members.slice(ge.members.indexOf(Ot)+1).filter(de=>!de.node.hidden).reduce((de,ie)=>de+ie.node.getBoundingClientRect().width+2,0);wt=Math.max(8+Je,Math.min(ee.width-8,re.x+T.width+oe))-ke.width,ze=re.y}ge.node.style.transform=`translate(${Math.round(wt)}px, ${Math.round(ze)}px)`}if(I)if(!I.node.isConnected||I.node.closest("[hidden]"))et();else{let ge=I.button.getBoundingClientRect(),Ue=I.menu.getBoundingClientRect();I.menu.style.left=`${Math.max(8,ge.right-Ue.width)-ge.left}px`,I.menu.style.right="auto",I.menu.style.top=ge.bottom+6+Ue.height>ee.height-8?"auto":"calc(100% + 6px)",I.menu.style.bottom=ge.bottom+6+Ue.height>ee.height-8?"calc(100% + 6px)":"auto"}Ee(),p?.()}function me(ee){if(ee?.closest?.("[data-hcms-ghost]"))return null;for(let ce=ee;ce&&ce.nodeType===1;ce=ce.parentElement){let ge=g.get(ce);if(ge)return ge}return null}function Q(ee){I&&!I.node.contains(ee.target)&&et();let ce=z();m=me(ee.target),m&&t.contains(ee.target)&&(v=null),z()!==ce&&H()}function L(ee){if(ee.relatedTarget||!m)return;let ce=z();m=null,z()!==ce&&H()}function Ee(){if(!b||$.hidden)return;let ee=b.getBoundingClientRect();$.style.width=`${Math.round(ee.width)}px`,$.style.height=`${Math.round(ee.height)}px`,$.style.transform=`translate(${Math.round(ee.left)}px, ${Math.round(ee.top)}px)`}function xe(){if(!o||typeof o.IntersectionObserver!="function"){for(let ce of s)ce.visible=!0;return}u||(u=new o.IntersectionObserver(ce=>{let ge=!1;for(let Ue of ce)for(let ke of i.get(Ue.target)||[])ke.visible!==Ue.isIntersecting&&(ke.visible=Ue.isIntersecting,ge=!0);ge&&H()},{threshold:0}));let ee=new Set(i.keys());for(let ce of d)ee.has(ce)||u.unobserve(ce);for(let ce of ee)d.has(ce)||u.observe(ce);d=ee}function se(){f||!o||(o.addEventListener("scroll",H,{passive:!0,capture:!0}),o.addEventListener("resize",H,{passive:!0}),e.addEventListener("focusin",Q),e.addEventListener("focusout",L),e.addEventListener("pointerdown",Oe,!0),e.addEventListener("keydown",_,!0),f=!0)}function V(){!f||!o||(o.removeEventListener("scroll",H,{capture:!0}),o.removeEventListener("resize",H),e.removeEventListener("focusin",Q),e.removeEventListener("focusout",L),e.removeEventListener("pointerdown",Oe,!0),e.removeEventListener("keydown",_,!0),f=!1)}function Se(ee){return`${ee.kind}\0${ee.attr||""}`}function ve(ee,ce){return ee.container===ce.container&&ee.scalar===ce.scalar}function Me(ee,ce){return ee.kind!==ce.kind?!1:ee.kind==="handle"?Se(ee.target)===Se(ce.target):ee.kind==="row"?ee.row===ce.row&&ve(ee.list,ce.list):ve(ee.list,ce.list)}function He(ee,ce){ee.target=ce;let ge=ce.path.join(".");ee.node.setAttribute("data-hcms-target",ge),ce.icon?ee.node.setAttribute("data-hcms-icon",ce.icon):ee.node.removeAttribute("data-hcms-icon"),ee.node.setAttribute("aria-label",`Edit ${ge}`)}function Ve(ee){let ce=e.createElement("button");ce.type="button",ce.className="hcms-inline-handle mirk-button mirk-button--small",ce.innerHTML=`<span class="mirk-button__label">${hr("edit")}</span>`;let ge={node:ce,kind:"handle",target:ee};return He(ge,ee),ce.addEventListener("click",Ue=>{Ue.preventDefault(),Ue.stopPropagation(),n?.(ge.target,ce)}),ge}function it(ee,ce){let ge=e.createElement("button");return ge.type="button",ge.className="hcms-inline-list-button mirk-button mirk-button--small",ge.setAttribute("data-hcms-list-action",ee),ge.setAttribute("aria-label",ce),ge.innerHTML=`<span class="mirk-button__label">${hr(ee)}${ee==="add"?"<span>Add</span>":""}</span>`,ge}function le(ee,{list:ce,row:ge,rowIndex:Ue,count:ke}){let Je=ce.path.join(".");ee.list=ce,ee.row=ge,ee.index=Ue,ee.count=ke,ee.node.setAttribute("data-hcms-list",Je),ee.node.setAttribute("data-hcms-row",String(Ue));for(let kt of ee.node.querySelectorAll("[data-hcms-list-action]")){let ht=kt.getAttribute("data-hcms-list-action"),wt=Oc.find(([ze])=>ze===ht)?.[1]||ht;kt.setAttribute("aria-label",`${wt} ${Je}.${Ue}`),kt.disabled=ht==="move-up"&&Ue===0||ht==="move-down"&&Ue===ke-1}}function yt(ee,ce,ge,Ue){let ke=e.createElement("div");ke.className="hcms-inline-row-controls";let Je={node:ke,kind:"row",list:ee,row:ce,index:ge,count:Ue};for(let[kt,ht]of Oc){let wt=it(kt,ht);wt.addEventListener("click",ze=>{ze.preventDefault(),ze.stopPropagation(),!wt.disabled&&r?.({action:kt,list:Je.list,index:Je.index,row:Je.row})}),ke.appendChild(wt)}return le(Je,{list:ee,row:ce,rowIndex:ge,count:Ue}),Je}function et(ee=!1){if(!I)return;let ce=I;I=null,ce.menu.hidden=!0,ce.button.setAttribute("aria-expanded","false"),ce.node.parentElement?.classList.remove("has-open-settings"),ee&&ce.button.isConnected&&ce.button.focus({preventScroll:!0})}function Oe(ee){I&&!I.node.contains(ee.target)&&et()}function _(ee){I&&(ee.key==="Escape"?(ee.preventDefault(),ee.stopPropagation(),et(!0)):ee.key==="Tab"?et(!0):["ArrowDown","ArrowUp","Home","End"].includes(ee.key)&&I.menu.contains(ee.target)&&(ee.preventDefault(),I.menu.querySelector('[role="menuitem"]').focus({preventScroll:!0})))}function B(ee,{list:ce,row:ge,rowIndex:Ue}){Object.assign(ee,{list:ce,row:ge,index:Ue}),ee.node.setAttribute("data-hcms-list",ce.path.join(".")),ee.node.setAttribute("data-hcms-row",String(Ue)),ee.button.setAttribute("aria-label",`Settings ${ce.path.join(".")}.${Ue}`)}function fe(ee){let ce=e.createElement("div");ce.className="hcms-inline-settings";let ge=it("settings","Settings");ge.setAttribute("aria-haspopup","menu"),ge.setAttribute("aria-expanded","false");let Ue=e.createElement("div");Ue.className="hcms-inline-settings-menu",Ue.setAttribute("role","menu"),Ue.setAttribute("aria-label","Item settings"),Ue.hidden=!0;let ke=e.createElement("button");ke.type="button",ke.setAttribute("role","menuitem"),ke.setAttribute("data-hcms-list-action","remove"),ke.textContent="Delete",Ue.appendChild(ke),ce.append(ge,Ue);let Je={node:ce,button:ge,menu:Ue,kind:"settings"};B(Je,ee);let kt=()=>{et(),I=Je,Ue.hidden=!1,ge.setAttribute("aria-expanded","true"),ce.parentElement.classList.add("has-open-settings"),ke.focus({preventScroll:!0}),H()};return ge.addEventListener("click",ht=>{ht.preventDefault(),ht.stopPropagation(),I===Je?et(!0):kt()}),ge.addEventListener("keydown",ht=>{(ht.key==="ArrowDown"||ht.key==="ArrowUp")&&(ht.preventDefault(),kt())}),ke.addEventListener("click",ht=>{ht.preventDefault(),ht.stopPropagation(),et(!0),r?.({action:"remove",list:Je.list,index:Je.index,row:Je.row})}),Je}function Ae(ee,ce){ee.kind==="handle"?He(ee,ce.target):ee.kind==="row"?le(ee,ce):ee.kind==="settings"&&B(ee,ce)}function pe(ee,ce,ge,Ue,ke){let Je=ce.get(ge)?.find(kt=>kt.category===ke);if(!Je){Je={el:ge,category:ke,members:[]},ee.push(Je);let kt=ce.get(ge);kt?kt.push(Je):ce.set(ge,[Je])}Je.members.push(Ue)}function Qe(ee,ce,ge){let Ue=ge.items||[];Ue.forEach((ke,Je)=>{go(ke)&&(pe(ee,ce,ke,{kind:"row",list:ge,row:ke,rowIndex:Je,count:Ue.length},"item"),pe(ee,ce,ke,{kind:"settings",list:ge,row:ke,rowIndex:Je},"item"))})}function qe(ee,ce){let ge=new Set(ee.members),Ue=[];for(let ke of ce){let Je=ee.members.find(kt=>ge.has(kt)&&Me(kt,ke))||(ke.kind==="handle"?Ve(ke.target):ke.kind==="row"?yt(ke.list,ke.row,ke.rowIndex,ke.count):fe(ke));ge.delete(Je),Ae(Je,ke),y&&Je.kind!=="handle"&&(Je.node.hidden=!0),Ue.push(Je)}for(let ke of ge)ke===I&&et(),ke.node.remove();Ue.sort((ke,Je)=>["row","handle","settings"].indexOf(ke.kind)-["row","handle","settings"].indexOf(Je.kind)),Ue.forEach((ke,Je)=>{ee.node.children[Je]!==ke.node&&ee.node.insertBefore(ke.node,ee.node.children[Je]||null)}),ee.members=Ue}function rt(ee,ce){let ge=[],Ue=new Map,ke=new Map,Je=0;for(let ze of ee||[])ke.has(ze.el)||ke.set(ze.el,ze),!(ze.kind!=="handle"||!go(ze.el))&&(pe(ge,Ue,ze.el,{kind:"handle",target:ze},"item"),Je++);for(let ze of ce||[])Qe(ge,Ue,ze);let kt=new Set(s),ht=new Map;for(let ze of s)ht.has(ze.el)||ht.set(ze.el,ze.visible);let wt=[];for(let ze of ge){let Ot=s.find(T=>kt.has(T)&&T.el===ze.el&&T.category===ze.category);if(!Ot){let T=e.createElement("div");T.className="hcms-inline-item-controls",T.setAttribute("role","group"),Ot={el:ze.el,node:T,category:ze.category,kind:ze.category==="add"?"add":"handle",members:[],visible:ht.get(ze.el)??!1},t.appendChild(T)}kt.delete(Ot),Ot.el=ze.el,Ot.category=ze.category,qe(Ot,ze.members),Ot.kind=Ot.members.some(T=>T.kind==="row")?"row":Ot.members.some(T=>T.kind==="handle")?"handle":"add",Ot.node.setAttribute("aria-label",Ot.category==="add"?"List controls":"Item controls"),wt.push(Ot)}for(let ze of kt)ze.node.remove();s=wt,i=new Map,g=new Map;for(let ze of s){let Ot=i.get(ze.el);Ot?Ot.push(ze):i.set(ze.el,[ze]);for(let T of ze.members)T.kind!=="row"&&T.kind!=="settings"||(g.set(T.row,T.row),g.set(T.node,T.row),g.set(ze.node,T.row))}v&&!g.has(v)&&(v=null),m&&!g.has(m)&&(m=null),a=ke,l=Je}function lt(){et(),u?.disconnect(),u=null,d=new Set;for(let ee of s)ee.node.remove();s=[],i=new Map,a=new Map,g=new Map,l=0}return{setTargets(ee,ce){rt(ee,ce),Y.setLists(ce),xe(),se(),H()},refresh:H,get count(){return l},get controlsHidden(){return y},setControlsHidden(ee){if(y=!!ee,Y.setHidden(y),y){et();for(let ce of s){for(let ge of ce.members)ge.kind!=="handle"&&(ge.node.hidden=!0);ce.members.every(ge=>ge.node.hidden)&&(ce.node.hidden=!0)}}H()},elementToTarget(ee){if(ee?.closest?.("[data-hcms-ghost]"))return null;for(let ce=ee;ce&&ce.nodeType===1;ce=ce.parentElement){let ge=a.get(ce);if(ge)return ge}return null},setHoveredRow(ee){let ce=z();v=ee?me(ee):null,z()!==ce&&H()},showHighlight(ee){ee&&(b=ee,$.hidden=!1,Ee())},hideHighlight(){b=null,$.hidden=!0},setFollower(ee){p=typeof ee=="function"?ee:null},destroy(){Y.destroy(),h&&o&&o.cancelAnimationFrame(h),h=0,p=null,b=null,v=null,m=null,$.remove(),V(),lt()}}}var Fh="hypercms-inline",xo="is-hcms-inline-active",Fi="is-hcms-inline-onpath",Cc='input:not([disabled]):not([type="hidden"]), textarea:not([disabled]), select:not([disabled]), button:not([disabled]), [tabindex]:not([tabindex="-1"])',qh=["bold","italic","link","undo","redo"],Bh=/^H[1-6]$/,Hh=0;function Lc({doc:e,pageRoot:t,opts:n={}}){let r=n.richText!==!1,o=null,s=null,i=null,l=new Map,a=null,u=null,d=null;function h(f,p,b,v,m){let g=Dr(e.defaultView);if(typeof g!="function")return null;let y=m||{},I=y.originalHTML??Pi(p,{capability:"history"}).html(),Y=y.richClayIsOurs??!p.hasAttribute("data-richclay"),$=y.adopted??p.getAttribute("data-richclay-active")==="true",H=ko(p,v,"history"),z=$h(f,g,p,v,Y);if(!z)return null;Va(p,v==="innerHTML",Y);let ae=String(++Hh);p.setAttribute(Yn,ae),ps();let me={el:p,editor:z,path:b,prop:v,boundId:ae,originalHTML:I,oldValue:H,richClayIsOurs:Y,adopted:$,dirty:!1,written:!1,restorable(){return!this.adopted&&!this.dirty&&!this.written},lastEdited:void 0};l.set(p,me),$a(ae,me);let Q=z.squire;if(Q&&typeof Q.addEventListener=="function"){let Ee=()=>{me.dirty=!0,me.lastEdited=ko(p,me.prop,"history"),Uh(f,me)};Q.addEventListener("input",Ee),me.detachInput=()=>Q.removeEventListener?.("input",Ee)}let L=()=>Ic(me);return p.addEventListener("blur",L),me.detachBlur=()=>p.removeEventListener("blur",L),me}return{name:"inline",richText:r,ctx:null,root:null,formRoot:null,errorEl:null,noticeEl:null,handoffEl:null,handoffCountEl:null,popEl:null,enhanceFormRichText:!1,prepareRules(f){return r?Ya(f,t):f},bindText(f,p,b,v){return h(this.ctx,f,p,b,v)},mount(f){let p=this.ctx;o=Gh(e,n.theme),this.root=o.root,this.formRoot=o.formRoot,this.errorEl=o.errorEl,this.noticeEl=o.noticeEl,this.handoffEl=o.handoffEl,this.handoffCountEl=o.handoffCountEl,this.popEl=o.popEl,Fn(()=>po(e));let b=Lr({pageRules:p.pageRules,formRules:p.formRules,data:f,doc:e});o.formRoot.appendChild(b),p.seeder.seed(o.formRoot),Xn(o.formRoot,e,this.enhanceFormRichText),zr(p),ns(p),s=Nc({doc:e,layerEl:o.layerEl,onActivate:(v,m)=>this.activate(v,m),onListAction:v=>this.listAction(v)}),s.setFollower(()=>this.placePopover()),o.closeEl.addEventListener("click",()=>this.deactivate()),o.toggleEl.addEventListener("click",v=>{v.preventDefault(),v.stopPropagation(),this.toggleControls()}),o.handoffEl.querySelector("[data-hcms-open-view]").addEventListener("click",v=>{v.preventDefault(),v.stopPropagation(),p.onViewRequested?.("sidebar")}),this.bindPage(),this.syncTargets()},listAction({action:f,list:p,index:b,row:v}){let m=this.ctx,g=p.path.join("."),y=m.formRoot.querySelector(`[data-hcms-path="${Hr(g)}"]`);if(!y)return;if(f==="add"){ho(g,m);return}let I=v?Xh(m,g,v):b;if(I===-1)return;let Y=Yh(y,I);if(Y){if(f==="remove"){Si(Y,m),this.syncTargets();return}Ai(Y,f==="move-up"?-1:1,m),this.syncTargets()}},toggleControls(){if(!s||!o)return;let f=!s.controlsHidden;s.setControlsHidden(f),o.toggleEl.setAttribute("aria-pressed",String(f));let p=o.toggleEl.querySelector(".mirk-button__label");p&&(p.textContent=f?"Show controls":"Hide controls")},bindPage(){let f=this.ctx.pageRoot,p=o.root,b=Y=>{let $=s&&s.elementToTarget(Y.target);$?s.showHighlight($.el):s?.hideHighlight(),s?.setHoveredRow(Y.target)},v=()=>{s?.hideHighlight(),s?.setHoveredRow(null)},m=Y=>{if(p.contains(Y.target))return;let $=s&&s.elementToTarget(Y.target);!$||$.kind!=="text"||l.has($.el)||h(this.ctx,$.el,$.path.join("."),bs($))},g=Y=>{if(p.contains(Y.target))return;let $=s&&s.elementToTarget(Y.target);if(!$){this.deactivate();return}(typeof Y.target.closest=="function"&&Y.target.closest("a[href]")||$.kind!=="text")&&Y.preventDefault(),this.activate($)},y=Y=>{Y.key==="Escape"&&this.deactivate()},I=Y=>{let $=Y.detail;if(!(!$||$.pageRoot!==this.ctx.pageRoot||!$.path))for(let H of l.values())H.path===$.path&&(H.written=!0)};f.addEventListener("pointerover",b),f.addEventListener("pointerleave",v),f.addEventListener("pointerdown",m),f.addEventListener("click",g),p.addEventListener("keydown",y),e.addEventListener("hcms:change",I),i=()=>{f.removeEventListener("pointerover",b),f.removeEventListener("pointerleave",v),f.removeEventListener("pointerdown",m),f.removeEventListener("click",g),p.removeEventListener("keydown",y),e.removeEventListener("hcms:change",I)}},activate(f,p){if(!f||!o||f.kind==="text"&&this.activateText(f))return;let b=Mc(this,o,f.path.join("."));if(!b){this.deactivate();return}a=f,u=p||null,d=null,o.popEl.hidden=!1,o.formRoot.querySelectorAll(`.${xo}`).forEach(Rc),this.placePopover(),Kh(b)},activateText(f){let p=f.el,b=l.get(p);if(b)return gs(b),!0;let v=h(this.ctx,p,f.path.join("."),bs(f));return v?(gs(v),!0):!1},placePopover(){if(!o||!a||o.popEl.hidden)return;let f=e.defaultView;if(!f)return;let p={width:f.innerWidth,height:f.innerHeight},b=a.el.getBoundingClientRect(),v=o.popEl.getBoundingClientRect(),{mode:m,x:g,y}=vc({anchor:b,bar:v,viewport:p,current:d});d=m,o.popEl.style.transform=`translate(${Math.round(g)}px, ${Math.round(y)}px)`},deactivate(){if(!o||!a&&o.popEl.hidden)return;o.popEl.hidden=!0,Pc(o.root);let f=u;if(a=null,u=null,d=null,f&&e.contains(f)&&typeof f.focus=="function")try{f.focus({preventScroll:!0})}catch{f.focus()}},syncTargets(){if(!s)return;let f=this.ctx,{targets:p,lists:b}=Ii(f.pageRoot,f.pageRules);s.setTargets(p,b);let v=zh(this,l,p,e);if(a){let g=v.get(a.el)||[],y=g.find(I=>Vh(I,a))||g.find(I=>I.path.join(".")===a.path.join("."))||(g.length===1?g[0]:null);y?a=y:this.deactivate()}Wh(this.ctx,l,e);let m=p.reduce((g,y)=>g+(go(y.el)?0:1),0);this.handoffEl&&(this.handoffCountEl.textContent=m===0?"":`${m} ${m===1?"field isn't":"fields aren't"} visible right now.`,this.handoffEl.hidden=m===0)},refresh(f,p){f==="livesync"?(Qn(e),po(e),er(this.ctx,{ignoreActiveValue:!0})):f==="undo"?er(this.ctx,{ignoreActiveValue:!1}):er(this.ctx),this.syncTargets(),(f==="livesync"||f==="undo")&&this.rebindText(f),this.restoreActive()},rebindText(f){let p=f!=="undo";for(let[b,v]of[...l]){if(!e.contains(b)){yo(this.ctx,v,{restore:!1,record:p}),l.delete(b);continue}if(b.hasAttribute(On)){let y=ko(b,v.prop);y!==v.lastEdited&&(v.oldValue=y,v.lastEdited=void 0);continue}let m=e.activeElement===b;yo(this.ctx,v,{restore:!1,record:p}),l.delete(b);let g=h(this.ctx,b,v.path,v.prop,{richClayIsOurs:v.richClayIsOurs,adopted:v.adopted});g&&m&&gs(g)}},restoreActive(){if(!o||!a||o.popEl.hidden)return;if(!e.contains(a.el)){this.deactivate();return}if(!Mc(this,o,a.path.join("."))){this.deactivate();return}o.formRoot.querySelectorAll(`.${xo}`).forEach(Rc),this.placePopover()},focusOnOpen(){if(this.root&&typeof this.root.focus=="function")try{this.root.focus({preventScroll:!0})}catch{this.root.focus()}},destroy(){u=null,this.deactivate();for(let f of l.values())yo(this.ctx,f);l.clear(),i?.(),i=null,s?.destroy(),s=null,o?.destroy(),o=null,Ni(e),this.popEl=null,this.handoffEl=null,this.handoffCountEl=null}}}function $h(e,t,n,r,o){return Fn(()=>{let s=null;try{s=new t(n,{inline:!0,hyperclay:!1,toolbar:r==="innerHTML"?qh:!1,...Bh.test(n.tagName)?{singleLine:!0}:null})}catch(i){return console.warn("[hypercms] richclay activation failed; the field falls back to the popover",i),null}if(s.unsupported||!s.active){if(o)try{s.destroy()}catch{}return null}return typeof s.reattach=="function"&&s.reattach(),s})}function Uh(e,{path:t,el:n,prop:r}){let o=rs(e.formRoot,t);o&&(os(o,ko(n,r),e.formRoot,t),kn(fn(e),{path:t,structural:!1},e))}function ko(e,t,n="data"){let r=Pi(e,{capability:n});return t==="innerHTML"?r.html():r.text().trim()}function Ic(e){let{el:t,prop:n,oldValue:r,lastEdited:o}=e,s=o;if(s===void 0||s===r)return;e.oldValue=s;let i=Jt("undo");if(!i||typeof i.recordValue!="function")return;let l={prop:n,oldValue:r,newValue:s,read:a=>ko(a,n,"history"),write:(a,u)=>jc(a,n,u)};i.isPaused?queueMicrotask(()=>{t.isConnected&&i.recordValue(t,l)}):i.recordValue(t,l)}function jc(e,t,n){let r=e.cloneNode(!1);t==="innerHTML"?r.innerHTML=n:r.textContent=n,Kn(e,Array.from(r.childNodes),{morphStyle:"innerHTML",policy:"history",restoreFocus:!1,scripts:{handle:!1,merge:!1}})}function yo(e,t,{restore:n=!0,record:r=!0}={}){r&&Ic(t),t.detachInput?.(),t.detachBlur?.(),Fn(()=>{if(!t.adopted){try{t.editor.destroy()}catch(o){console.warn("[hypercms] richclay teardown failed; editor state may reach the save",o)}t.richClayIsOurs&&t.el.removeAttribute("data-richclay")}t.el.removeAttribute(On),t.el.removeAttribute(fr),t.el.removeAttribute(Yn),Ua(t.boundId),n&&t.restorable()&&jc(t.el,"innerHTML",t.originalHTML)})}function gs(e){let{editor:t,el:n}=e;if(n.ownerDocument.activeElement!==n)try{typeof t.focus=="function"?t.focus():n.focus()}catch{}}function zh(e,t,n,r){let o=new Map;for(let s of n){let i=o.get(s.el);i?i.push(s):o.set(s.el,[s])}for(let[s,i]of[...t]){let l=o.get(s)||[],a=l.find(f=>bs(f)===i.prop)||l[0];if(!a){yo(e.ctx,i,{restore:!0}),t.delete(s);continue}i.path=a.path.join(".");let u=bs(a);if(u===i.prop)continue;let d=r.activeElement===s;yo(e.ctx,i,{restore:!1}),t.delete(s);let h=e.bindText(s,i.path,u,{richClayIsOurs:i.richClayIsOurs,adopted:i.adopted,originalHTML:i.originalHTML});h&&d&&gs(h)}return o}function Vh(e,t){return e.el===t.el&&e.kind===t.kind&&e.attr===t.attr}function bs(e){return e.attr==="innerHTML"?"innerHTML":"textContent"}function Wh(e,t,n){for(let r of e.pageRoot.querySelectorAll(`[${On}]`))t.has(r)||Fn(()=>Ka(r,n.defaultView))}function Mc(e,t,n){let r=e.formRoot&&e.formRoot.querySelector(`[data-hcms-path="${Hr(n)}"]`);if(Pc(t.root),!r)return null;let o=r.closest("[data-hcms-card]"),s=o?[...o.querySelectorAll('[data-hcms-shape="scalar"][data-hcms-path]')].filter(i=>i.closest("[data-hcms-card]")===o&&i.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]')===o.parentElement.closest('[data-hcms-shape="object-array"]')):[r];s.includes(r)||s.push(r);for(let i of s){i.classList.add(xo),i.removeAttribute("draggable");for(let l=i.parentElement;l&&(l.classList.add(Fi),l.removeAttribute("draggable"),l!==e.formRoot);l=l.parentElement);}return r}function Pc(e){if(e)for(let t of e.querySelectorAll(`.${xo}, .${Fi}`))t.classList.remove(xo,Fi)}function Rc(e){e.tagName==="TEXTAREA"&&Fr(e),e.querySelectorAll?.("textarea").forEach(Fr)}function Kh(e){let t=e.matches?.(Cc)?e:e.querySelector?.(Cc);if(!(!t||typeof t.focus!="function"))try{t.focus({preventScroll:!0})}catch{t.focus()}}function Gh(e,t){Qn(e);let n=e.createElement(Fh),r=t==="dark"?" dark":t==="light"?" light":"";return n.className="hcms-shell pixel-quiet hcms-inline"+r,n.setAttribute("data-hcms-shell",""),n.setAttribute("editor-ui",""),n.setAttribute("no-save",""),n.setAttribute("save-remove",""),n.setAttribute("snapshot-remove",""),n.setAttribute("no-watch",""),n.setAttribute("tabindex","-1"),n.innerHTML=`
|
|
181
182
|
<div class="hcms-inline-bar">
|
|
182
183
|
<div class="hcms-inline-handoff" hidden>
|
|
183
184
|
<span class="hcms-inline-handoff-count"></span>
|
|
@@ -196,24 +197,24 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
|
|
|
196
197
|
<div class="hcms-inline-pop-header">
|
|
197
198
|
<span>Edit content</span>
|
|
198
199
|
<button type="button" class="hcms-inline-pop-close mirk-button mirk-button--small" aria-label="Close field editor">
|
|
199
|
-
<span class="mirk-button__label">${
|
|
200
|
+
<span class="mirk-button__label">${hr("remove")}</span>
|
|
200
201
|
</button>
|
|
201
202
|
</div>
|
|
202
203
|
<div data-hcms-form-root class="hcms-form"></div>
|
|
203
204
|
</div>
|
|
204
|
-
`,e.body.appendChild(n),{root:n,formRoot:n.querySelector("[data-hcms-form-root]"),noticeEl:n.querySelector(".hcms-inline-notice"),errorEl:n.querySelector(".hcms-inline-error"),handoffEl:n.querySelector(".hcms-inline-handoff"),handoffCountEl:n.querySelector(".hcms-inline-handoff-count"),layerEl:n.querySelector(".hcms-inline-layer"),popEl:n.querySelector(".hcms-inline-pop"),closeEl:n.querySelector(".hcms-inline-pop-close"),toggleEl:n.querySelector("[data-hcms-controls-toggle]"),destroy(){n.remove()}}}function
|
|
205
|
-
[${
|
|
205
|
+
`,e.body.appendChild(n),{root:n,formRoot:n.querySelector("[data-hcms-form-root]"),noticeEl:n.querySelector(".hcms-inline-notice"),errorEl:n.querySelector(".hcms-inline-error"),handoffEl:n.querySelector(".hcms-inline-handoff"),handoffCountEl:n.querySelector(".hcms-inline-handoff-count"),layerEl:n.querySelector(".hcms-inline-layer"),popEl:n.querySelector(".hcms-inline-pop"),closeEl:n.querySelector(".hcms-inline-pop-close"),toggleEl:n.querySelector("[data-hcms-controls-toggle]"),destroy(){n.remove()}}}function Yh(e,t){let n=e.querySelector(".hcms-array-items");return n&&n.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")[t]||null}function Xh(e,t,n){let{lists:r}=Ii(e.pageRoot,e.pageRules),o=r.find(s=>s.path.join(".")===t);return o?o.items.indexOf(n):-1}var Jh="[hypercms]";function Dc(e,t){if(!e||!e.querySelectorAll||!t)return;let n=Zh(t);e.querySelectorAll("template[data-hcms-tpl]").forEach(o=>{let s=o.getAttribute("data-hcms-tpl");s&&(s.startsWith("@")||n.has(s)||console.warn(`${Jh} template "${s}" doesn't match any rule path; ignored`))})}function Zh(e){let t=new Set;return n([],e),t;function n(r,o){let s=r.join("."),i=r.map(a=>typeof a=="number"?"*":a).join(".");s&&t.add(s),i&&t.add(i);let l=ur(o);if(l==="object")for(let[a,u]of Object.entries(o))n([...r,a],u);else if(l==="object-array"||l==="scalar-array"){let a=[...r,"*"],u=a.map(d=>typeof d=="number"?"*":d).join(".");if(t.add(u),l==="object-array"){let d=o[1];if(d&&typeof d=="object"&&!Array.isArray(d))for(let[h,f]of Object.entries(d))n([...a,h],f)}}}}var qc={skip:"[data-hcms-shell]",templateAttr:"cms-template"},bt={isOpen:!1,ctx:null,opts:null};function Bc({view:e,doc:t,pageRoot:n,opts:r={},onCloseRequested:o,onViewRequested:s}){let i=r.rules!==void 0?r.rules:"cms",l=ln.findRules(t,i);if(!l){let m=typeof i=="string"?`data-rules-name~="${i}"`:"the provided rules object";throw new Error(`hypercms: no rules found for ${m}`)}let a=e.prepareRules(l.rules),u=l.tagNode;Uo(t),Go(t,a),Dc(t,a);let d=Xo(a,t),h=us(a),f=cs(n,a),p=Bo(),b=Zn(ln.extract(n,a,{...qc,...p.hooks}),a),v={doc:t,pageRoot:n,pageRules:a,writeRules:h,formRules:d,rulesTagNode:u,rulesSource:i,richText:e.richText,view:e,seeder:p,initialData:b,get formRoot(){return e.formRoot},get shellRoot(){return e.root},get errorEl(){return e.errorEl},get noticeEl(){return e.noticeEl},unresolved:f,lastTwinSignature:null,lastFingerprint:null,lastData:null,observerHandle:null,undoUnsub:null,livesyncUnsub:null,onChange:r.onChange,onError:r.onError,confirmRemove:r.confirmRemove,previouslyFocused:t.activeElement,dispatch(m,g){let y=t.defaultView&&t.defaultView.CustomEvent||(typeof CustomEvent<"u"?CustomEvent:null);if(!y)return;let I={...g||{},pageRoot:n,view:e.name},Y=new y(m,{bubbles:!0,cancelable:m==="hcms:change",detail:I});(e.root&&e.root.isConnected!==!1?e.root:n).dispatchEvent(Y)},onCloseRequested:o,onViewRequested:s};return v.updateFingerprint=()=>{v.lastFingerprint=mo(fn(v))},e.ctx=v,v}function Hc(e){e.updateFingerprint(),e.observerHandle=uc({onRefresh:r=>e.view.refresh("observer",r)});let t=Jt("undo");if(t&&typeof t.on=="function"){let r=()=>{if(bt.ctx!==e)return;Fc(e,"undo");let o=Zn(ln.extract(e.pageRoot,e.pageRules,qc),e.pageRules);mo(o)!==mo(e.lastData)&&(e.lastData=o,e.onChange?.(o,{path:"",structural:!1}))};t.on("undo",r),t.on("redo",r),e.undoUnsub=()=>{t.off("undo",r),t.off("redo",r)}}let n=()=>Fc(e,"livesync");e.livesyncUnsub=Pr(e.doc,Ba,n),Bi.ctx=e,em(e.doc)}function Fc(e,t){bt.ctx===e&&e.view.refresh(t)}function ks(e,{dispatch:t=!0,restoreFocus:n=!0,updateUrl:r=!0,reason:o="close"}={}){if(!e||e.closed)return;e.closed=!0;for(let i of e.uploads||[])try{i.abort()}catch{}e.uploads?.clear();let s=e.previouslyFocused;if(t&&e.dispatch("hcms:close",{reason:o}),r&&tm(),e.observerHandle?.unsubscribe?.(),e.undoUnsub?.(),e.livesyncUnsub?.(),e.detachEvents?.(),Fn(()=>e.view.destroy()),Qh(),n&&typeof s?.focus=="function")try{s.focus()}catch{}}function Qh(){bt.isOpen=!1,bt.ctx=null,bt.opts=null,Bi.ctx=null}var Bi={ctx:null};function em(e){let t=e.defaultView||(typeof globalThis<"u"?globalThis:null);if(!t)return;let n=function(){let o=Bi.ctx;if(o)return ss(o.formRoot),dr("Reorder",()=>kn(fn(o),{path:"",structural:!0},o))};typeof t.hypercmsCommit!="function"&&(t.hypercmsCommit=n),typeof globalThis<"u"&&typeof globalThis.hypercmsCommit!="function"&&(globalThis.hypercmsCommit=n)}var qi="cms";function $c(e){let t=typeof e=="string"?e:"",n=t.indexOf("?"),r=n===-1?t:t.slice(n+1);if(!r)return t;let o=new URLSearchParams(r);return o.get(qi)!=="true"?t:(o.set(qi,"false"),"?"+o.toString())}function Uc(e){let t=typeof e=="string"?e:"",n=t.indexOf("?"),r=n===-1?t:t.slice(n+1);return r?new URLSearchParams(r).get(qi)==="true":!1}function tm(){if(typeof window>"u"||!window.location||!window.history||typeof window.history.replaceState!="function")return;let e=window.location.search,t=$c(e);t!==e&&window.history.replaceState(window.history.state,"",t+window.location.hash)}var zc="hcms-toggle",Ft="data-hcms-toggle-host",Vc="hcms-toggle-style",Wc="data-hcms-toggle-style",ys="data-hcms-session",Qc="data-hcms-split",eu="hcms.view",xs=["sidebar","inline"],nm={sidebar:"In the sidebar",inline:"On the page"},Ui="var(--hcms-toggle-bg, var(--hcms-toggle-_surface))";function Kc(e){try{let t=e&&e.localStorage?e.localStorage.getItem(eu):null;return xs.includes(t)?t:null}catch{return null}}function rm(e,t){if(xs.includes(t))try{e?.localStorage?.setItem(eu,t)}catch{}}var om="#fafafa",sm="#0a0a0a",im=`
|
|
206
|
+
[${Ft}] {
|
|
206
207
|
all: unset;
|
|
207
208
|
box-sizing: border-box;
|
|
208
209
|
display: var(--hcms-toggle-display, inline-flex);
|
|
209
210
|
font-family: 'Departure Mono', ui-monospace, Menlo, monospace;
|
|
210
|
-
--hcms-toggle-_surface: ${
|
|
211
|
+
--hcms-toggle-_surface: ${om};
|
|
211
212
|
}
|
|
212
|
-
[${
|
|
213
|
-
--hcms-toggle-_surface: ${
|
|
213
|
+
[${Ft}][data-hcms-surface="dark"] {
|
|
214
|
+
--hcms-toggle-_surface: ${sm};
|
|
214
215
|
}
|
|
215
|
-
[${
|
|
216
|
-
[${
|
|
216
|
+
[${Ft}] .hcms-toggle__main,
|
|
217
|
+
[${Ft}] .hcms-toggle__arrow {
|
|
217
218
|
all: unset;
|
|
218
219
|
box-sizing: border-box;
|
|
219
220
|
display: inline-flex;
|
|
@@ -232,34 +233,34 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
|
|
|
232
233
|
cursor: pointer;
|
|
233
234
|
box-shadow: none;
|
|
234
235
|
}
|
|
235
|
-
[${
|
|
236
|
-
[${
|
|
236
|
+
[${Ft}] .hcms-toggle__main:hover,
|
|
237
|
+
[${Ft}] .hcms-toggle__arrow:hover {
|
|
237
238
|
border-color: var(--mirk-focus-color, #C7AE93);
|
|
238
239
|
box-shadow: none;
|
|
239
240
|
}
|
|
240
|
-
[${
|
|
241
|
-
[${
|
|
241
|
+
[${Ft}] .hcms-toggle__main:active,
|
|
242
|
+
[${Ft}] .hcms-toggle__arrow:active {
|
|
242
243
|
border-color: var(--mirk-bevel-br, #E2D4BF) var(--mirk-bevel-tl, #F0E7D8) var(--mirk-bevel-tl, #F0E7D8) var(--mirk-bevel-br, #E2D4BF);
|
|
243
244
|
}
|
|
244
|
-
[${
|
|
245
|
-
[${
|
|
245
|
+
[${Ft}] .hcms-toggle__main:focus-visible,
|
|
246
|
+
[${Ft}] .hcms-toggle__arrow:focus-visible {
|
|
246
247
|
outline: 2px solid currentColor;
|
|
247
248
|
outline-offset: -5px;
|
|
248
249
|
}
|
|
249
|
-
[${
|
|
250
|
-
[${
|
|
251
|
-
[${
|
|
252
|
-
[${
|
|
250
|
+
[${Ft}] .hcms-toggle__close { display: none; }
|
|
251
|
+
[${Ft}][${ys}="open"] .hcms-toggle__open { display: none; }
|
|
252
|
+
[${Ft}][${ys}="open"] .hcms-toggle__close { display: inline; }
|
|
253
|
+
[${Ft}][${Qc}] .hcms-toggle__main {
|
|
253
254
|
border-radius: 0;
|
|
254
255
|
padding-right: 12px;
|
|
255
256
|
}
|
|
256
|
-
[${
|
|
257
|
+
[${Ft}] .hcms-toggle__arrow {
|
|
257
258
|
gap: 0;
|
|
258
259
|
padding: 0 10px;
|
|
259
260
|
border-radius: 0;
|
|
260
261
|
border-left-width: 0;
|
|
261
262
|
}
|
|
262
|
-
[${
|
|
263
|
+
[${Ft}] .hcms-toggle__menu {
|
|
263
264
|
all: unset;
|
|
264
265
|
box-sizing: border-box;
|
|
265
266
|
min-width: 180px;
|
|
@@ -268,12 +269,12 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
|
|
|
268
269
|
font-size: 14px;
|
|
269
270
|
line-height: 1.5;
|
|
270
271
|
color: var(--hcms-toggle-color, currentColor);
|
|
271
|
-
background: ${
|
|
272
|
+
background: ${Ui};
|
|
272
273
|
border: 1px solid var(--mirk-input-border, #D8C8AF);
|
|
273
274
|
border-radius: var(--mirk-radius, 5px);
|
|
274
275
|
box-shadow: 0 14px 34px -14px rgba(0, 0, 0, .45);
|
|
275
276
|
}
|
|
276
|
-
[${
|
|
277
|
+
[${Ft}] .hcms-toggle__item {
|
|
277
278
|
all: unset;
|
|
278
279
|
box-sizing: border-box;
|
|
279
280
|
display: block;
|
|
@@ -282,27 +283,27 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
|
|
|
282
283
|
border-radius: 0;
|
|
283
284
|
cursor: pointer;
|
|
284
285
|
}
|
|
285
|
-
[${
|
|
286
|
+
[${Ft}] .hcms-toggle__item::before {
|
|
286
287
|
content: "\u25CB";
|
|
287
288
|
margin-right: 8px;
|
|
288
289
|
opacity: .55;
|
|
289
290
|
}
|
|
290
|
-
[${
|
|
291
|
+
[${Ft}] .hcms-toggle__item[aria-checked="true"]::before {
|
|
291
292
|
content: "\u25CF";
|
|
292
293
|
opacity: 1;
|
|
293
294
|
}
|
|
294
|
-
[${
|
|
295
|
+
[${Ft}] .hcms-toggle__item:hover {
|
|
295
296
|
background: color-mix(in srgb, currentColor 12%, transparent);
|
|
296
297
|
}
|
|
297
|
-
[${
|
|
298
|
+
[${Ft}] .hcms-toggle__item:focus-visible {
|
|
298
299
|
outline: 2px solid currentColor;
|
|
299
300
|
outline-offset: -3px;
|
|
300
301
|
}
|
|
301
302
|
@media (pointer: coarse) {
|
|
302
|
-
[${
|
|
303
|
-
[${
|
|
303
|
+
[${Ft}] .hcms-toggle__main,
|
|
304
|
+
[${Ft}] .hcms-toggle__arrow { min-height: 44px; }
|
|
304
305
|
}
|
|
305
|
-
`;function Th({search:e="",cookie:t="",forced:n=null}={}){let r=typeof e=="string"?e:"",o=r.indexOf("?"),i=o===-1?r:r.slice(o+1),s=new URLSearchParams(i).get("editmode");return s?s==="true":n!=null?!!n:/(?:^|;\s*)isAdminOfCurrentResource=[^;]/.test(t)}var ds=new WeakMap;function yc(e,t){try{e.globalCompositeOperation="copy",e.fillStyle=t,e.fillRect(0,0,1,1);let n=e.getImageData(0,0,1,1).data;return{r:n[0],g:n[1],b:n[2],a:n[3]/255}}catch{return null}}function Eh(e){if(ds.has(e))return ds.get(e);let t=null;try{let n=e.createElement("canvas");if(n.width=n.height=1,t=n.getContext?n.getContext("2d",{willReadFrequently:!0}):null,t){let r=yc(t,"rgb(1, 2, 3)");(!r||r.r!==1||r.g!==2||r.b!==3||r.a!==1)&&(t=null)}}catch{t=null}return ds.set(e,t),t}function _h(e,t){let n=String(e??"").trim();if(!n)return null;let r=Ch(n);if(r)return r;let o=t&&t.defaultView;if(!o||!o.CSS||typeof o.CSS.supports!="function"||!o.CSS.supports("color",n))return null;let i=Eh(t);return i?yc(i,n):null}function Ch(e){let t=/rgba?\(([^)]+)\)/.exec(String(e??""));if(!t)return null;let n=t[1].split(/[\s,/]+/).filter(Boolean);if(n.length<3)return null;let r=n.slice(0,3).map(Number);if(r.some(Number.isNaN))return null;let o=n[3],i=o===void 0?1:o.endsWith("%")?Number(o.slice(0,-1))/100:Number(o);return{r:r[0],g:r[1],b:r[2],a:Number.isNaN(i)?1:i}}function dc({r:e,g:t,b:n}){let r=o=>{let i=o/255;return i<=.03928?i/12.92:((i+.055)/1.055)**2.4};return .2126*r(e)+.7152*r(t)+.0722*r(n)}function hc(e,t){let n=dc(e),r=dc(t);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}var mc={r:10,g:10,b:10},pc={r:250,g:250,b:250};function gc(e,t){let n=e.a==null?1:e.a;return{r:e.r*n+t.r*(1-n),g:e.g*n+t.g*(1-n),b:e.b*n+t.b*(1-n)}}function Oh(e){if(!e)return"light";let t=hc(gc(e,mc),mc),n=hc(gc(e,pc),pc);return t>n?"dark":"light"}function Zr(e,t){for(let[n,r]of Object.entries(t))e.style.setProperty(n,r,"important")}function hs(e){let t=e.ownerDocument&&e.ownerDocument.defaultView,n=e.querySelector(".hcms-toggle__main");if(!t||!n||typeof t.getComputedStyle!="function")return;let r=_h(t.getComputedStyle(n).color,e.ownerDocument);e.setAttribute("data-hcms-surface",Oh(r))}function Nh(e){hs(e);let t=e.ownerDocument,n=t&&t.defaultView;if(!n)return;let r=0,o=()=>{if(!r){if(typeof n.requestAnimationFrame!="function")return e.isConnected?hs(e):l();r=n.requestAnimationFrame(()=>{if(r=0,!e.isConnected)return l();hs(e)})}};typeof n.requestAnimationFrame=="function"&&o(),t.readyState!=="complete"&&n.addEventListener("load",o,{once:!0});let i=typeof n.MutationObserver=="function"?new n.MutationObserver(o):null;i&&(i.observe(t.documentElement,{attributes:!0}),t.body&&i.observe(t.body,{attributes:!0}));let s=typeof n.matchMedia=="function"?n.matchMedia("(prefers-color-scheme: dark)"):null;s&&typeof s.addEventListener=="function"&&s.addEventListener("change",o);function l(){i&&i.disconnect(),s&&typeof s.removeEventListener=="function"&&s.removeEventListener("change",o)}}function Rh({open:e,close:t,isOpen:n,getTheme:r=()=>null,views:o=Jo},i=document){let s=i.querySelector(`[${pt}]`);if(s)return s;if(!i.querySelector(`[${uc}]`)){let V=i.createElement("style");V.setAttribute(uc,""),V.setAttribute("editor-ui",""),i.getElementById(cc)||(V.id=cc),V.setAttribute("no-save",""),V.setAttribute("snapshot-remove",""),V.setAttribute("save-ignore",""),V.textContent=Sh,i.head.insertBefore(V,i.head.firstChild)}let l=i.createElement("hypercms-toggle");l.className="hcms-shell pixel-quiet",i.getElementById(ac)||(l.id=ac),l.setAttribute(pt,""),l.setAttribute("editor-ui",""),l.setAttribute("no-save",""),l.setAttribute("snapshot-remove",""),l.setAttribute("save-ignore",""),l.innerHTML='<button type="button" class="hcms-toggle__main mirk-button"><span class="hcms-toggle__open">Edit content</span><span class="hcms-toggle__close">Close editor</span></button>';let a=i.defaultView,h=l.querySelector(".hcms-toggle__main"),d=Jo.filter(V=>o.includes(V)),b=d.length>1,f=b?Mh(i):null,u=b?Lh(i,d):null;b&&(l.setAttribute(bc,""),l.appendChild(f),l.appendChild(u)),Zr(l,{position:"fixed",right:"calc(var(--hcms-toggle-offset, 16px) + var(--hcms-toggle-shift, 0px))",bottom:"calc(var(--hcms-toggle-offset, 16px) + env(safe-area-inset-bottom, 0px))","z-index":"var(--hcms-toggle-z, 2147482900)"}),Zr(h,{background:ms}),f&&Zr(f,{background:ms}),u&&Zr(u,{position:"absolute",right:"0",bottom:"calc(100% + 8px)","z-index":"var(--hcms-toggle-z, 2147482900)",display:"none"});let m=()=>u?[...u.querySelectorAll('[role="menuitemradio"]')]:[];function p(V){if(!(!V||typeof V.focus!="function"))try{V.focus({preventScroll:!0})}catch{V.focus()}}function v(V){let xe=m();xe.length&&p(xe[(V+xe.length)%xe.length])}function A(){let V=fc(a);for(let xe of m())xe.setAttribute("aria-checked",String(xe.getAttribute("data-hcms-view")===V))}function M(V){l.contains(V.target)||B()}function L(V){u&&(u.hidden=!V,Zr(u,{display:V?"block":"none"}),f.setAttribute("aria-expanded",String(V)),V?(A(),i.addEventListener("pointerdown",M,!0)):i.removeEventListener("pointerdown",M,!0))}function H(V=0){L(!0),v(V)}function B({focusArrow:V=!1}={}){!u||u.hidden||(L(!1),V&&p(f))}function te(){let V=fc(a);return V&&d.includes(V)?V:null}async function re(V){await e({view:V}),vh(a,V)}async function K(){if(n()){t();return}let V=te();return V?e({view:V}):b?H():e(d[0]?{view:d[0]}:{})}async function W(V){try{await V()}catch(xe){console.warn("hypercms: toggle failed to open the CMS",xe)}}l.addEventListener("click",async V=>{f&&f.contains(V.target)||u&&u.contains(V.target)||await W(K)}),f&&(f.addEventListener("click",V=>{V.preventDefault(),u.hidden?H():B({focusArrow:!0})}),f.addEventListener("keydown",V=>{if(V.key==="ArrowUp"){V.preventDefault(),H(-1);return}(V.key==="ArrowDown"||V.key==="Enter"||V.key===" ")&&(V.preventDefault(),H(0))}),u.addEventListener("click",V=>{let xe=V.target.closest?.('[role="menuitemradio"]');xe&&(V.preventDefault(),B(),W(()=>re(xe.getAttribute("data-hcms-view"))))}),u.addEventListener("keydown",V=>{let xe=m(),We=xe.indexOf(i.activeElement);switch(V.key){case"ArrowDown":V.preventDefault(),v(We+1);break;case"ArrowUp":V.preventDefault(),v(We-1);break;case"Home":V.preventDefault(),v(0);break;case"End":V.preventDefault(),v(xe.length-1);break;case"Enter":case" ":if(V.preventDefault(),We===-1)break;B(),W(()=>re(xe[We].getAttribute("data-hcms-view")));break;case"Escape":V.preventDefault(),B({focusArrow:!0});break;case"Tab":B();break}}));let he=V=>{let xe=r();l.classList.toggle("light",xe==="light"),l.classList.toggle("dark",xe==="dark"),V?l.setAttribute(Xo,"open"):l.removeAttribute(Xo)};return he(n()),i.addEventListener("hcms:open",()=>he(!0)),i.addEventListener("hcms:close",()=>he(!1)),i.body.appendChild(l),Rn(i),Nh(l),l}function Mh(e){let t=e.createElement("button");return t.type="button",t.className="hcms-toggle__arrow mirk-button",t.setAttribute("aria-haspopup","menu"),t.setAttribute("aria-expanded","false"),t.setAttribute("aria-label","Choose where to edit"),t.textContent="\u25BE",t}function Lh(e,t){let n=e.createElement("div");n.className="hcms-toggle__menu",n.setAttribute("role","menu"),n.setAttribute("aria-label","Where to edit"),n.hidden=!0;for(let r of t){let o=e.createElement("button");o.type="button",o.className="hcms-toggle__item",o.setAttribute("role","menuitemradio"),o.setAttribute("aria-checked","false"),o.setAttribute("data-hcms-view",r),o.tabIndex=-1,o.textContent=xh[r],n.appendChild(o)}return n}function xc(e){if(typeof window>"u"||typeof document>"u")return;let t=window.__hyperclayEditMode!=null?window.__hyperclayEditMode:null;if(!Th({search:window.location.search,cookie:document.cookie,forced:t}))return;let n=()=>{document.body&&e.hasRules(document)&&Rh(e)};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",n,{once:!0}):n()}function vc(e){if(va(e),typeof document<"u"){let t=document.getElementById("hcms-shell-styles");t?.tagName==="LINK"&&t.remove(),Rn(document)}}var gs={sidebar:Oa,inline:Ja};function Zo(e={}){let t=e.view||(He.isOpen?He.ctx.view.name:"sidebar"),n=gs[t];if(!n)throw new Error(`hypercms: unknown view "${t}" (expected ${Object.keys(gs).join(" or ")})`);let r=He.isOpen?{...He.opts,...e,view:t}:e,o=r.pageRoot||(typeof document<"u"?document.body:null);if(!o)throw new Error("hypercms: no pageRoot available");let i=o.ownerDocument||(typeof document<"u"?document:null);if(!i)throw new Error("hypercms: no document available");let s=null,l=null;if(He.isOpen){if(He.ctx.view.name===t)return;s=He.ctx.previouslyFocused,l=He.ctx.view.name,Yo(He.ctx,{restoreFocus:!1,updateUrl:!1,reason:"switch"})}Ua();let a=n({doc:i,pageRoot:o,opts:r}),h=oc({view:a,doc:i,pageRoot:o,opts:r,onCloseRequested:()=>bs(),onViewRequested:d=>Zo({view:d})});s&&(h.previouslyFocused=s);try{a.mount(h.initialData),ic(h),a.focusOnOpen(),He.isOpen=!0,He.ctx=h,He.opts=r,h.dispatch("hcms:open",{pageRoot:o,previous:l})}catch(d){throw Yo(h,{dispatch:!1,restoreFocus:!!s,updateUrl:!1}),d}}function bs(){He.isOpen&&Yo(He.ctx)}function wc(){He.isOpen&&He.ctx.view.refresh("api")}function Ih(){return He.isOpen}function jh(){return He.isOpen&&He.ctx?He.ctx.view.name:null}var Dh={getData(){return He.isOpen?Gt(He.ctx):null},setValue(e,t){if(!He.isOpen)throw new Error("hypercms: cms is not open");let n=He.ctx,r=yn(e),o=Fn(n.pageRules,r);if(o===void 0)throw new Error(`hypercms: no rule at path "${e}"`);if(typeof o!="string"||o.endsWith("[]"))throw new Error(`hypercms: setValue requires a leaf scalar path; "${e}" is not a leaf`);let i=Io(n.formRoot,e);if(!i)throw new Error(`hypercms: no field element at path "${e}"`);jo(i,t,n.formRoot,e),tn(Gt(n),{path:e,structural:!1},n)},addItem(e){if(!He.isOpen)throw new Error("hypercms: cms is not open");zr(e,He.ctx)},removeItem(e){if(!He.isOpen)throw new Error("hypercms: cms is not open");let t=He.ctx,n=yn(e);if(typeof n[n.length-1]!="number")throw new Error(`hypercms: removeItem requires an item path; "${e}" is not an array index`);let o=Fn(t.pageRules,n.slice(0,-1));if(!(Array.isArray(o)||typeof o=="string"&&o.endsWith("[]")))throw new Error(`hypercms: removeItem requires an item path; parent of "${e}" is not an array`);let s=t.formRoot.querySelector(`[data-hcms-path="${Hh(e)}"]`);if(!s)throw new Error(`hypercms: no element at path "${e}"`);mr(s,t)},refresh:wc,_commit(){if(!He.isOpen)return;let e=He.ctx;return Do(e.formRoot),Hn("Update",()=>tn(Gt(e),{path:"",structural:!0},e))}},Ph=250,Fh=1e4;function qh(){typeof window>"u"||typeof document>"u"||lc(window.location?window.location.search:"")&&(He.isOpen||Bh(()=>{if(!He.isOpen)try{Zo()}catch(e){console.warn("hypercms: auto-open failed",e)}}))}function ps(){return!!document.body&&!!It("Mutation")}function Bh(e){if(ps()){queueMicrotask(e);return}let t=Date.now()+Fh,n=!1,r=null,o=null,i=()=>{n||(n=!0,r!==null&&clearInterval(r),o&&o())};function s(){if(He.isOpen){i();return}ps()&&(i(),e())}o=fr(document,ra,s),r=setInterval(()=>{if(He.isOpen){i();return}if(ps()){i(),e();return}Date.now()>=t&&(i(),console.warn("hypercms: ?cms=true auto-open gave up \u2014 no mutation hub appeared. Load clayjs or hyperclayjs (or just the mutation utility) so the CMS can initialize."))},Ph)}qh();xc({open:Zo,close:bs,isOpen:Ih,getTheme:()=>He.opts?.theme,views:Object.keys(gs),hasRules:e=>!!Vt.findRules(e,"cms")});var ks={open:Zo,close:bs,refresh:wc,api:Dh,get isOpen(){return He.isOpen},currentView:jh,path:ji,scaffold:Hr,morphForm:go};function Hh(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var Ac=`/* GENERATED by scripts/build-theme.js from mirk-interface/mirk.css \u2014 DO NOT EDIT.
|
|
306
|
+
`;function lm({search:e="",cookie:t="",forced:n=null}={}){let r=typeof e=="string"?e:"",o=r.indexOf("?"),s=o===-1?r:r.slice(o+1),i=new URLSearchParams(s).get("editmode");return i?i==="true":n!=null?!!n:/(?:^|;\s*)isAdminOfCurrentResource=[^;]/.test(t)}var Hi=new WeakMap;function tu(e,t){try{e.globalCompositeOperation="copy",e.fillStyle=t,e.fillRect(0,0,1,1);let n=e.getImageData(0,0,1,1).data;return{r:n[0],g:n[1],b:n[2],a:n[3]/255}}catch{return null}}function am(e){if(Hi.has(e))return Hi.get(e);let t=null;try{let n=e.createElement("canvas");if(n.width=n.height=1,t=n.getContext?n.getContext("2d",{willReadFrequently:!0}):null,t){let r=tu(t,"rgb(1, 2, 3)");(!r||r.r!==1||r.g!==2||r.b!==3||r.a!==1)&&(t=null)}}catch{t=null}return Hi.set(e,t),t}function cm(e,t){let n=String(e??"").trim();if(!n)return null;let r=um(n);if(r)return r;let o=t&&t.defaultView;if(!o||!o.CSS||typeof o.CSS.supports!="function"||!o.CSS.supports("color",n))return null;let s=am(t);return s?tu(s,n):null}function um(e){let t=/rgba?\(([^)]+)\)/.exec(String(e??""));if(!t)return null;let n=t[1].split(/[\s,/]+/).filter(Boolean);if(n.length<3)return null;let r=n.slice(0,3).map(Number);if(r.some(Number.isNaN))return null;let o=n[3],s=o===void 0?1:o.endsWith("%")?Number(o.slice(0,-1))/100:Number(o);return{r:r[0],g:r[1],b:r[2],a:Number.isNaN(s)?1:s}}function Gc({r:e,g:t,b:n}){let r=o=>{let s=o/255;return s<=.03928?s/12.92:((s+.055)/1.055)**2.4};return .2126*r(e)+.7152*r(t)+.0722*r(n)}function Yc(e,t){let n=Gc(e),r=Gc(t);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}var Xc={r:10,g:10,b:10},Jc={r:250,g:250,b:250};function Zc(e,t){let n=e.a==null?1:e.a;return{r:e.r*n+t.r*(1-n),g:e.g*n+t.g*(1-n),b:e.b*n+t.b*(1-n)}}function fm(e){if(!e)return"light";let t=Yc(Zc(e,Xc),Xc),n=Yc(Zc(e,Jc),Jc);return t>n?"dark":"light"}function vo(e,t){for(let[n,r]of Object.entries(t))e.style.setProperty(n,r,"important")}function $i(e){let t=e.ownerDocument&&e.ownerDocument.defaultView,n=e.querySelector(".hcms-toggle__main");if(!t||!n||typeof t.getComputedStyle!="function")return;let r=cm(t.getComputedStyle(n).color,e.ownerDocument);e.setAttribute("data-hcms-surface",fm(r))}function dm(e){$i(e);let t=e.ownerDocument,n=t&&t.defaultView;if(!n)return;let r=0,o=()=>{if(!r){if(typeof n.requestAnimationFrame!="function")return e.isConnected?$i(e):l();r=n.requestAnimationFrame(()=>{if(r=0,!e.isConnected)return l();$i(e)})}};typeof n.requestAnimationFrame=="function"&&o(),t.readyState!=="complete"&&n.addEventListener("load",o,{once:!0});let s=typeof n.MutationObserver=="function"?new n.MutationObserver(o):null;s&&(s.observe(t.documentElement,{attributes:!0}),t.body&&s.observe(t.body,{attributes:!0}));let i=typeof n.matchMedia=="function"?n.matchMedia("(prefers-color-scheme: dark)"):null;i&&typeof i.addEventListener=="function"&&i.addEventListener("change",o);function l(){s&&s.disconnect(),i&&typeof i.removeEventListener=="function"&&i.removeEventListener("change",o)}}function hm({open:e,close:t,isOpen:n,getTheme:r=()=>null,views:o=xs},s=document){let i=s.querySelector(`[${Ft}]`);if(i)return i;if(!s.querySelector(`[${Wc}]`)){let L=s.createElement("style");L.setAttribute(Wc,""),L.setAttribute("editor-ui",""),s.getElementById(Vc)||(L.id=Vc),L.setAttribute("no-save",""),L.setAttribute("snapshot-remove",""),L.setAttribute("save-ignore",""),L.textContent=im,s.head.insertBefore(L,s.head.firstChild)}let l=s.createElement("hypercms-toggle");l.className="hcms-shell pixel-quiet",s.getElementById(zc)||(l.id=zc),l.setAttribute(Ft,""),l.setAttribute("editor-ui",""),l.setAttribute("no-save",""),l.setAttribute("snapshot-remove",""),l.setAttribute("save-ignore",""),l.innerHTML='<button type="button" class="hcms-toggle__main mirk-button"><span class="hcms-toggle__open">Edit content</span><span class="hcms-toggle__close">Close editor</span></button>';let a=s.defaultView,u=l.querySelector(".hcms-toggle__main"),d=xs.filter(L=>o.includes(L)),h=d.length>1,f=h?mm(s):null,p=h?pm(s,d):null;h&&(l.setAttribute(Qc,""),l.appendChild(f),l.appendChild(p)),vo(l,{position:"fixed",right:"calc(var(--hcms-toggle-offset, 16px) + var(--hcms-toggle-shift, 0px))",bottom:"calc(var(--hcms-toggle-offset, 16px) + env(safe-area-inset-bottom, 0px))","z-index":"var(--hcms-toggle-z, 2147482900)"}),vo(u,{background:Ui}),f&&vo(f,{background:Ui}),p&&vo(p,{position:"absolute",right:"0",bottom:"calc(100% + 8px)","z-index":"var(--hcms-toggle-z, 2147482900)",display:"none"});let b=()=>p?[...p.querySelectorAll('[role="menuitemradio"]')]:[];function v(L){if(!(!L||typeof L.focus!="function"))try{L.focus({preventScroll:!0})}catch{L.focus()}}function m(L){let Ee=b();Ee.length&&v(Ee[(L+Ee.length)%Ee.length])}function g(){let L=Kc(a);for(let Ee of b())Ee.setAttribute("aria-checked",String(Ee.getAttribute("data-hcms-view")===L))}function y(L){l.contains(L.target)||$()}function I(L){p&&(p.hidden=!L,vo(p,{display:L?"block":"none"}),f.setAttribute("aria-expanded",String(L)),L?(g(),s.addEventListener("pointerdown",y,!0)):s.removeEventListener("pointerdown",y,!0))}function Y(L=0){I(!0),m(L)}function $({focusArrow:L=!1}={}){!p||p.hidden||(I(!1),L&&v(f))}function H(){let L=Kc(a);return L&&d.includes(L)?L:null}async function z(L){await e({view:L}),rm(a,L)}async function ae(){if(n()){t();return}let L=H();return L?e({view:L}):h?Y():e(d[0]?{view:d[0]}:{})}async function me(L){try{await L()}catch(Ee){console.warn("hypercms: toggle failed to open the CMS",Ee)}}l.addEventListener("click",async L=>{f&&f.contains(L.target)||p&&p.contains(L.target)||await me(ae)}),f&&(f.addEventListener("click",L=>{L.preventDefault(),p.hidden?Y():$({focusArrow:!0})}),f.addEventListener("keydown",L=>{if(L.key==="ArrowUp"){L.preventDefault(),Y(-1);return}(L.key==="ArrowDown"||L.key==="Enter"||L.key===" ")&&(L.preventDefault(),Y(0))}),p.addEventListener("click",L=>{let Ee=L.target.closest?.('[role="menuitemradio"]');Ee&&(L.preventDefault(),$(),me(()=>z(Ee.getAttribute("data-hcms-view"))))}),p.addEventListener("keydown",L=>{let Ee=b(),xe=Ee.indexOf(s.activeElement);switch(L.key){case"ArrowDown":L.preventDefault(),m(xe+1);break;case"ArrowUp":L.preventDefault(),m(xe-1);break;case"Home":L.preventDefault(),m(0);break;case"End":L.preventDefault(),m(Ee.length-1);break;case"Enter":case" ":if(L.preventDefault(),xe===-1)break;$(),me(()=>z(Ee[xe].getAttribute("data-hcms-view")));break;case"Escape":L.preventDefault(),$({focusArrow:!0});break;case"Tab":$();break}}));let Q=L=>{let Ee=r();l.classList.toggle("light",Ee==="light"),l.classList.toggle("dark",Ee==="dark"),L?l.setAttribute(ys,"open"):l.removeAttribute(ys)};return Q(n()),s.addEventListener("hcms:open",()=>Q(!0)),s.addEventListener("hcms:close",()=>Q(!1)),s.body.appendChild(l),Qn(s),dm(l),l}function mm(e){let t=e.createElement("button");return t.type="button",t.className="hcms-toggle__arrow mirk-button",t.setAttribute("aria-haspopup","menu"),t.setAttribute("aria-expanded","false"),t.setAttribute("aria-label","Choose where to edit"),t.textContent="\u25BE",t}function pm(e,t){let n=e.createElement("div");n.className="hcms-toggle__menu",n.setAttribute("role","menu"),n.setAttribute("aria-label","Where to edit"),n.hidden=!0;for(let r of t){let o=e.createElement("button");o.type="button",o.className="hcms-toggle__item",o.setAttribute("role","menuitemradio"),o.setAttribute("aria-checked","false"),o.setAttribute("data-hcms-view",r),o.tabIndex=-1,o.textContent=nm[r],n.appendChild(o)}return n}function nu(e){if(typeof window>"u"||typeof document>"u")return;let t=window.__hyperclayEditMode!=null?window.__hyperclayEditMode:null;if(!lm({search:window.location.search,cookie:document.cookie,forced:t}))return;let n=()=>{document.body&&e.hasRules(document)&&hm(e)};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",n,{once:!0}):n()}function ru(e){if(rc(e),typeof document<"u"){let t=document.getElementById("hcms-shell-styles");t?.tagName==="LINK"&&t.remove(),Qn(document)}}var Vi={sidebar:fc,inline:Lc};function vs(e={}){let t=e.view||(bt.isOpen?bt.ctx.view.name:"sidebar"),n=Vi[t];if(!n)throw new Error(`hypercms: unknown view "${t}" (expected ${Object.keys(Vi).join(" or ")})`);let r=bt.isOpen?{...bt.opts,...e,view:t}:e,o=r.pageRoot||(typeof document<"u"?document.body:null);if(!o)throw new Error("hypercms: no pageRoot available");let s=o.ownerDocument||(typeof document<"u"?document:null);if(!s)throw new Error("hypercms: no document available");let i=null,l=null;if(bt.isOpen){if(bt.ctx.view.name===t)return;i=bt.ctx.previouslyFocused,l=bt.ctx.view.name,ks(bt.ctx,{restoreFocus:!1,updateUrl:!1,reason:"switch"})}Tc();let a=n({doc:s,pageRoot:o,opts:r}),u=Bc({view:a,doc:s,pageRoot:o,opts:r,onCloseRequested:()=>Wi(),onViewRequested:d=>vs({view:d})});i&&(u.previouslyFocused=i);try{a.mount(u.initialData),Hc(u),a.focusOnOpen(),bt.isOpen=!0,bt.ctx=u,bt.opts=r,u.dispatch("hcms:open",{pageRoot:o,previous:l})}catch(d){throw ks(u,{dispatch:!1,restoreFocus:!!i,updateUrl:!1}),d}}function Wi(){bt.isOpen&&ks(bt.ctx)}function ou(){bt.isOpen&&bt.ctx.view.refresh("api")}function gm(){return bt.isOpen}function bm(){return bt.isOpen&&bt.ctx?bt.ctx.view.name:null}var km={getData(){return bt.isOpen?fn(bt.ctx):null},setValue(e,t){if(!bt.isOpen)throw new Error("hypercms: cms is not open");let n=bt.ctx,r=Pn(e),o=cr(n.pageRules,r);if(o===void 0)throw new Error(`hypercms: no rule at path "${e}"`);if(typeof o!="string"||o.endsWith("[]"))throw new Error(`hypercms: setValue requires a leaf scalar path; "${e}" is not a leaf`);let s=rs(n.formRoot,e);if(!s)throw new Error(`hypercms: no field element at path "${e}"`);os(s,t,n.formRoot,e),kn(fn(n),{path:e,structural:!1},n)},addItem(e){if(!bt.isOpen)throw new Error("hypercms: cms is not open");ho(e,bt.ctx)},removeItem(e){if(!bt.isOpen)throw new Error("hypercms: cms is not open");let t=bt.ctx,n=Pn(e);if(typeof n[n.length-1]!="number")throw new Error(`hypercms: removeItem requires an item path; "${e}" is not an array index`);let o=cr(t.pageRules,n.slice(0,-1));if(!(Array.isArray(o)||typeof o=="string"&&o.endsWith("[]")))throw new Error(`hypercms: removeItem requires an item path; parent of "${e}" is not an array`);let i=t.formRoot.querySelector(`[data-hcms-path="${Am(e)}"]`);if(!i)throw new Error(`hypercms: no element at path "${e}"`);qr(i,t)},refresh:ou,_commit(){if(!bt.isOpen)return;let e=bt.ctx;return ss(e.formRoot),dr("Update",()=>kn(fn(e),{path:"",structural:!0},e))}},ym=250,xm=1e4;function vm(){typeof window>"u"||typeof document>"u"||Uc(window.location?window.location.search:"")&&(bt.isOpen||wm(()=>{if(!bt.isOpen)try{vs()}catch(e){console.warn("hypercms: auto-open failed",e)}}))}function zi(){return!!document.body&&!!Jt("Mutation")}function wm(e){if(zi()){queueMicrotask(e);return}let t=Date.now()+xm,n=!1,r=null,o=null,s=()=>{n||(n=!0,r!==null&&clearInterval(r),o&&o())};function i(){if(bt.isOpen){s();return}zi()&&(s(),e())}o=Pr(document,qa,i),r=setInterval(()=>{if(bt.isOpen){s();return}if(zi()){s(),e();return}Date.now()>=t&&(s(),console.warn("hypercms: ?cms=true auto-open gave up \u2014 no mutation hub appeared. Load clayjs or hyperclayjs (or just the mutation utility) so the CMS can initialize."))},ym)}vm();nu({open:vs,close:Wi,isOpen:gm,getTheme:()=>bt.opts?.theme,views:Object.keys(Vi),hasRules:e=>!!ln.findRules(e,"cms")});var Ki={open:vs,close:Wi,refresh:ou,api:km,get isOpen(){return bt.isOpen},currentView:bm,path:ui,scaffold:co,morphForm:qo};function Am(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var su=`/* GENERATED by scripts/build-theme.js from mirk-interface/mirk.css \u2014 DO NOT EDIT.
|
|
306
307
|
Source of truth: mirk-interface/mirk.css + src/theme/pixel-quiet.overrides.css.
|
|
307
308
|
Regenerate with: npm run build:theme */
|
|
308
309
|
|
|
@@ -2198,4 +2199,4 @@ tr.hcms-shell.hcms-inline-ghost { display: table-row; }
|
|
|
2198
2199
|
will-change: transform;
|
|
2199
2200
|
}
|
|
2200
2201
|
.hcms-inline-highlight[hidden] { display: none; }
|
|
2201
|
-
`;typeof window<"u"&&typeof document<"u"&&(function(){if(window.__mirk)return;window.__mirk=!0;let e='<svg viewBox="0 0 16 16" aria-hidden="true"><path d="M4 4 12 12M12 4 4 12" stroke="currentColor" stroke-width="2" stroke-linecap="square" fill="none"/></svg>';document.addEventListener("click",n=>{let r=n.target.closest(".mirk-number__step");if(!r)return;let o=r.closest(".mirk-number").querySelector("input[type=number]");o&&(r.dataset.step==="up"?o.stepUp():o.stepDown(),o.dispatchEvent(new Event("change",{bubbles:!0})))}),document.addEventListener("input",n=>{let r=n.target.closest(".mirk-slider__input");r&&r.closest(".mirk-slider").style.setProperty("--mirk-value",`${r.value}%`)}),document.addEventListener("change",n=>{let r=n.target.closest(".mirk-file__input");if(!r||!r.files.length)return;let o=r.closest(".mirk-file"),
|
|
2202
|
+
`;typeof window<"u"&&typeof document<"u"&&(function(){if(window.__mirk)return;window.__mirk=!0;let e='<svg viewBox="0 0 16 16" aria-hidden="true"><path d="M4 4 12 12M12 4 4 12" stroke="currentColor" stroke-width="2" stroke-linecap="square" fill="none"/></svg>';document.addEventListener("click",n=>{let r=n.target.closest(".mirk-number__step");if(!r)return;let o=r.closest(".mirk-number").querySelector("input[type=number]");o&&(r.dataset.step==="up"?o.stepUp():o.stepDown(),o.dispatchEvent(new Event("change",{bubbles:!0})))}),document.addEventListener("input",n=>{let r=n.target.closest(".mirk-slider__input");r&&r.closest(".mirk-slider").style.setProperty("--mirk-value",`${r.value}%`)}),document.addEventListener("change",n=>{let r=n.target.closest(".mirk-file__input");if(!r||!r.files.length)return;let o=r.closest(".mirk-file"),s=o.querySelector(".mirk-file__name");if(!s)return;let i=r.files[0],l=document.createElement("a");if(l.className="mirk-file__name",l.dataset.filled="",l.href=URL.createObjectURL(i),l.target="_blank",l.rel="noopener",l.textContent=i.name,s.replaceWith(l),!o.querySelector(".mirk-file__remove")){let a=document.createElement("button");a.type="button",a.className="mirk-file__remove",a.setAttribute("aria-label","Remove file"),a.innerHTML=e,l.after(a)}}),document.addEventListener("change",n=>{let r=n.target.closest(".mirk-image__input");if(!r||!r.files.length)return;let o=r.closest(".mirk-image"),s=o.querySelector(".mirk-image__preview");if(!s)return;let i=o.querySelector(".mirk-image__placeholder"),l=new FileReader;l.onload=a=>{s.src=a.target.result,s.removeAttribute("hidden"),i&&i.setAttribute("hidden",""),o.querySelector(".mirk-image__thumb")?.removeAttribute("hidden"),o.querySelector(".mirk-image__upload")?.setAttribute("hidden","")},l.readAsDataURL(r.files[0])}),document.addEventListener("click",n=>{let r=n.target.closest(".mirk-file__remove");if(r){let s=r.closest(".mirk-file"),i=s?.querySelector(".mirk-file__input"),l=s?.querySelector(".mirk-file__name");if(i&&(i.value=""),l){let a=document.createElement("span");a.className="mirk-file__name",a.textContent="No file chosen",l.replaceWith(a)}r.remove();return}let o=n.target.closest(".mirk-image__remove");if(o){let s=o.closest(".mirk-image"),i=s?.querySelector(".mirk-image__input"),l=s?.querySelector(".mirk-image__preview");i&&(i.value=""),l&&(l.removeAttribute("src"),l.setAttribute("hidden","")),s?.querySelector(".mirk-image__thumb")?.setAttribute("hidden",""),s?.querySelector(".mirk-image__upload")?.removeAttribute("hidden")}});function t(n,r){let o=document.createElement("span");o.textContent=n;let s=document.createElement("input");s.type="hidden",s.name="tags[]",s.value=n;let i=document.createElement("button");i.type="button",i.className="mirk-tags__remove",i.textContent="\xD7";let l=document.createElement("span");if(l.className="mirk-tags__chip",r){let a=document.createElement("span");a.className="mirk-tags__chip-inner",a.append(o,s,i),l.append(a)}else l.append(o,s,i);return l}document.addEventListener("keydown",n=>{let r=n.target.closest(".mirk-tags__input");if(!r)return;let o=r.closest(".mirk-tags");if(n.key==="Enter"||n.key===","){let s=r.value.trim();if(!s)return;n.preventDefault(),r.before(t(s,o.classList.contains("mirk-tags--round"))),r.value=""}else if(n.key==="Backspace"&&!r.value){let s=o.querySelectorAll(".mirk-tags__chip");s[s.length-1]?.remove()}}),document.addEventListener("click",n=>{let r=n.target.closest(".mirk-tags__remove");if(r){r.closest(".mirk-tags__chip").remove();return}let o=n.target.closest(".mirk-tags");o&&n.target===o&&o.querySelector(".mirk-tags__input")?.focus()}),document.addEventListener("click",n=>{let r=n.target.closest("[data-mirk-chip]");if(!r)return;let o=r.getAttribute("data-mirk-chip");if(o==="open")r.closest(".mirk-chip")?.classList.add("mirk-chip--open");else if(o==="collapse")r.closest(".mirk-chip")?.classList.remove("mirk-chip--open");else if(o==="changes"){let s=r.closest(".mirk-chip__panel")?.classList.toggle("is-changes");r.textContent=s?"(hide changes)":"(view changes)"}}),document.addEventListener("click",n=>{let r=n.target.closest("[data-copy-btn]");if(!r)return;let o=r.closest("[data-copy]");if(!o)return;let s=o.cloneNode(!0);s.querySelectorAll("[data-copy-btn]").forEach(a=>a.remove());let l=o.getAttribute("data-copy")==="text"?s.textContent.replace(/^\s+|\s+$/g,""):s.innerHTML.replace(/\s+data-copy(="[^"]*")?/g,"").replace(/^\s*\n/gm,"").trim();navigator.clipboard.writeText(l).then(()=>{let a=r.textContent;r.textContent="copied",r.dataset.copied="",setTimeout(()=>{r.textContent=a,delete r.dataset.copied},1200)}).catch(()=>{r.textContent="error",setTimeout(()=>{r.textContent="copy"},1200)})})})();ru(su);var Em=Ki,_m={cms:Ki};return uu(Om);})();
|