8 lines
70 KiB
JavaScript
8 lines
70 KiB
JavaScript
import"../chunks/DsnmJJEf.js";import{o as pa}from"../chunks/DukJHxi2.js";import{I as ha,J as va,b3 as ma,H as _a,p as wn,i as F,m as Ct,u as ft,g as e,j as n,d as o,r as s,s as c,t as Y,a as E,b as An,h as S,c as P,v as Lt,f as Ie,k as ba,o as ya,$ as xa,n as dr,e as cr,am as Sn,l as Ea}from"../chunks/krC2xWPP.js";import{d as Nn,a as ve,e as Ta,s as A}from"../chunks/CddAxf8c.js";import{i as j}from"../chunks/DjsWWzyL.js";import{B as wa}from"../chunks/BQul9OPN.js";import{b as In,s as rt,t as he,B as qt,r as dn,e as ur,i as fr,c as Aa}from"../chunks/Lvd_r9sp.js";import{h as cn}from"../chunks/DSIsCMt7.js";import{s as Re,h as Sa}from"../chunks/j_DJpx8B.js";import{b as Na}from"../chunks/ciapVzar.js";import{i as v,b as ze,c as St,a as Ia}from"../chunks/Cu5ilWky.js";import{p as Pa}from"../chunks/euuZp6ft.js";import{g as kt}from"../chunks/BVTiZ3e2.js";import{b as Gt}from"../chunks/BSopV7IU.js";import{g as _r,p as Or,d as un,u as Da,m as fn,e as Ma,f as La}from"../chunks/CuL3Sd6G.js";import{s as Oa,b as ka,c as Ga}from"../chunks/9iSIvZKf.js";import{i as Qt}from"../chunks/Lyt-zgeV.js";import{O as Ca,H as $a,J as br,K as Pn,M as Ht,P as Dn,Q as jt,R as Mn,S as Ln,T as On,U as kn,V as Gn,W as Cr,Y as Zt,X as gr,Z as Ra,_ as pr,$ as gn,a0 as Ua,a1 as hr,v as Ha,c as ja,s as Xa,h as Fa,a2 as Ba,a3 as pn,a4 as za,a5 as Va,B as Ja,a6 as hn,a7 as vn}from"../chunks/D7PIEGLR.js";import{B as Ya}from"../chunks/CkCDfBZD.js";import{L as Wa}from"../chunks/CB8cbqvK.js";import{C as Ka,a as qa,D as Qa}from"../chunks/nlum2O0L.js";import{c as x}from"../chunks/YfSC2Q4o.js";import{b as Za,M as es}from"../chunks/Dnp5jjtA.js";import{C as Cn}from"../chunks/ZWbUro-G.js";import{p as X}from"../chunks/BzvfRedh.js";import{c as ts}from"../chunks/CJohx04Q.js";import{c as rs,U as ns}from"../chunks/Cp407y3V.js";import{C as vr}from"../chunks/CqW2kplp.js";import{c as as}from"../chunks/CU9nfEd1.js";import{T as ss}from"../chunks/BXuqUDBl.js";import{S as os}from"../chunks/K87jKp17.js";import{C as is}from"../chunks/D8myH9Bl.js";import{c as ls}from"../chunks/CuDfWLaU.js";import{A as ds}from"../chunks/CsG_FdPZ.js";import{p as er}from"../chunks/DtMVEuno.js";import{a as cs}from"../chunks/DKn7_j4m.js";import{U as us,C as fs}from"../chunks/mRQytvOt.js";import{L as mn}from"../chunks/C_E2vM9U.js";import{C as gs}from"../chunks/Cv606Ht4.js";import{T as ps}from"../chunks/CSNyvbvN.js";import{L as kr}from"../chunks/DRNDWW4W.js";import{S as hs}from"../chunks/CV_JZMCk.js";import{E as vs}from"../chunks/CYnWUDOj.js";import{X as ms}from"../chunks/CiIMiELt.js";import{C as _s}from"../chunks/CurHnm4X.js";const bs=Symbol("NaN");function ys(p,t,d){ha&&va();var l=new wa(p),h=!ma();_a(()=>{var _=t();_!==_&&(_=bs),h&&_!==null&&typeof _=="object"&&(_={}),l.ensure(_,d)})}var xs=P('<div class="fixed z-50 select-none"><div class="nav-pad relative h-[110px] w-[110px] rounded-full border-2 border-primary/40 bg-card shadow-xl ring-1 ring-primary/10 overflow-hidden"><button><!></button> <button><!></button> <button><!></button> <button><!></button> <div class="pointer-events-none absolute inset-0"><div class="absolute left-1/2 top-1/2 h-px w-[141%] -translate-x-1/2 -translate-y-1/2 rotate-45 bg-muted-foreground/40"></div> <div class="absolute left-1/2 top-1/2 h-px w-[141%] -translate-x-1/2 -translate-y-1/2 -rotate-45 bg-muted-foreground/40"></div></div> <div><div class="flex h-full w-full items-center justify-center"><div class="h-1 w-1 rounded-full bg-muted-foreground/50"></div></div></div></div></div>');function Es(p,t){wn(t,!0);let d=F(Ct([])),l=F(!0);const h=S(()=>()=>{const B=t.route.split("/").filter(Boolean);return B.length<=1?"/":"/"+B.slice(0,-1).join("/")}),_=S(()=>e(d).findIndex(B=>B.route===t.route)),C=S(()=>e(_)>0?e(d)[e(_)-1]:null),a=S(()=>e(_)>=0&&e(_)<e(d).length-1?e(d)[e(_)+1]:null),T=S(()=>e(h)()!=="/"),J=S(()=>t.hasChildren),ne=S(()=>v.dir==="rtl"?e(a):e(C)),oe=S(()=>v.dir==="rtl"?e(C):e(a)),Pe=S(()=>e(ne)!==null),Ae=S(()=>e(oe)!==null),De=S(()=>v.dir==="rtl"?"Next":"Previous"),Ve=S(()=>v.dir==="rtl"?"Previous":"Next");ft(()=>{const B=e(h)();n(l,!0),_r(B,"default","asc",x.activeLang||void 0).then(Ye=>{n(d,Ye,!0),n(l,!1)}).catch(()=>{n(d,[],!0),n(l,!1)})});function Je(B){kt(`${Gt}/pages/edit${B}`)}async function gt(){if(t.hasChildren)try{const B=await _r(t.route,"default","asc",x.activeLang||void 0);B.length>0&&Je(Or(B[0]))}catch{}}const te="grav_admin_navigator_pos";let U=F(!1),W=F(Ct(m())),K={x:0,y:0,px:0,py:0};function m(){try{const B=localStorage.getItem(te);return B?JSON.parse(B):{x:0,y:0}}catch{return{x:0,y:0}}}function L(){localStorage.setItem(te,JSON.stringify(e(W)))}function D(B){B.target.closest("button")||(n(U,!0),K={x:B.clientX,y:B.clientY,px:e(W).x,py:e(W).y},B.target.setPointerCapture(B.pointerId))}function M(B){e(U)&&n(W,{x:K.px+(B.clientX-K.x),y:K.py+(B.clientY-K.y)},!0)}function O(){n(U,!1),L()}var I=xs(),q=o(I),fe=o(q),_t=o(fe);Za(_t,{size:22,strokeWidth:2.5}),s(fe);var xe=c(fe,2),ie=o(xe);Cn(ie,{size:22,strokeWidth:2.5}),s(xe);var me=c(xe,2),Me=o(me);Ka(Me,{size:22,strokeWidth:2.5}),s(me);var Ee=c(me,2),rr=o(Ee);qa(rr,{size:22,strokeWidth:2.5}),s(Ee);var nt=c(Ee,4);s(q),s(I),Y((B,Ye,bt)=>{In(I,`bottom: ${80-e(W).y}px; inset-inline-end: ${80-e(W).x}px;`),Re(fe,1,`nav-quadrant nav-up ${e(T)?"":"nav-disabled"}`,"svelte-8lc2nr"),fe.disabled=!e(T),rt(fe,"title",B),Re(xe,1,`nav-quadrant nav-down ${e(J)?"":"nav-disabled"}`,"svelte-8lc2nr"),xe.disabled=!e(J),rt(xe,"title",e(J)?"First child":"No children"),Re(me,1,`nav-quadrant nav-left ${e(Pe)?"":"nav-disabled"}`,"svelte-8lc2nr"),me.disabled=!e(Pe),rt(me,"title",Ye),Re(Ee,1,`nav-quadrant nav-right ${e(Ae)?"":"nav-disabled"}`,"svelte-8lc2nr"),Ee.disabled=!e(Ae),rt(Ee,"title",bt),Re(nt,1,`absolute left-1/2 top-1/2 z-10 h-8 w-8 -translate-x-1/2 -translate-y-1/2 rounded-full border border-border bg-card
|
|
${e(U)?"cursor-grabbing":"cursor-grab"}`)},[()=>e(T)?`Parent: ${e(h)()}`:"No parent",()=>e(Pe)?`${e(De)}: ${e(ne)?.menu||e(ne)?.title}`:`No ${e(De).toLowerCase()} sibling`,()=>e(Ae)?`${e(Ve)}: ${e(oe)?.menu||e(oe)?.title}`:`No ${e(Ve).toLowerCase()} sibling`]),ve("click",fe,()=>Je(e(h)())),ve("click",xe,gt),ve("click",me,()=>e(ne)&&Je(Or(e(ne)))),ve("click",Ee,()=>e(oe)&&Je(Or(e(oe)))),ve("pointerdown",nt,D),ve("pointermove",nt,M),ve("pointerup",nt,O),E(p,I),An()}Nn(["click","pointerdown","pointermove","pointerup"]);const mr=3e4;let Rr=class extends Ca{constructor(t){super(),this.doc=t,this.clientID=t.clientID,this.states=new Map,this.meta=new Map,this._checkInterval=setInterval(()=>{const d=br();this.getLocalState()!==null&&mr/2<=d-this.meta.get(this.clientID).lastUpdated&&this.setLocalState(this.getLocalState());const l=[];this.meta.forEach((h,_)=>{_!==this.clientID&&mr<=d-h.lastUpdated&&this.states.has(_)&&l.push(_)}),l.length>0&&$n(this,l,"timeout")},$a(mr/10)),t.on("destroy",()=>{this.destroy()}),this.setLocalState({})}destroy(){this.emit("destroy",[this]),this.setLocalState(null),super.destroy(),clearInterval(this._checkInterval)}getLocalState(){return this.states.get(this.clientID)||null}setLocalState(t){const d=this.clientID,l=this.meta.get(d),h=l===void 0?0:l.clock+1,_=this.states.get(d);t===null?this.states.delete(d):this.states.set(d,t),this.meta.set(d,{clock:h,lastUpdated:br()});const C=[],a=[],T=[],J=[];t===null?J.push(d):_==null?t!=null&&C.push(d):(a.push(d),Pn(_,t)||T.push(d)),(C.length>0||T.length>0||J.length>0)&&this.emit("change",[{added:C,updated:T,removed:J},"local"]),this.emit("update",[{added:C,updated:a,removed:J},"local"])}setLocalStateField(t,d){const l=this.getLocalState();l!==null&&this.setLocalState({...l,[t]:d})}getStates(){return this.states}};const $n=(p,t,d)=>{const l=[];for(let h=0;h<t.length;h++){const _=t[h];if(p.states.has(_)){if(p.states.delete(_),_===p.clientID){const C=p.meta.get(_);p.meta.set(_,{clock:C.clock+1,lastUpdated:br()})}l.push(_)}}l.length>0&&(p.emit("change",[{added:[],updated:[],removed:l},d]),p.emit("update",[{added:[],updated:[],removed:l},d]))},Ur=(p,t,d=p.states)=>{const l=t.length,h=On();jt(h,l);for(let _=0;_<l;_++){const C=t[_],a=d.get(C)||null,T=p.meta.get(C).clock;jt(h,C),jt(h,T),Mn(h,JSON.stringify(a))}return Ln(h)},Ts=(p,t)=>{const d=kn(p),l=On(),h=Ht(d);jt(l,h);for(let _=0;_<h;_++){const C=Ht(d),a=Ht(d),T=JSON.parse(Dn(d)),J=t(T);jt(l,C),jt(l,a),Mn(l,JSON.stringify(J))}return Ln(l)},tr=(p,t,d)=>{const l=kn(t),h=br(),_=[],C=[],a=[],T=[],J=Ht(l);for(let ne=0;ne<J;ne++){const oe=Ht(l);let Pe=Ht(l);const Ae=JSON.parse(Dn(l)),De=p.meta.get(oe),Ve=p.states.get(oe),Je=De===void 0?0:De.clock;(Je<Pe||Je===Pe&&Ae===null&&p.states.has(oe))&&(Ae===null?oe===p.clientID&&p.getLocalState()!=null?Pe++:p.states.delete(oe):p.states.set(oe,Ae),p.meta.set(oe,{clock:Pe,lastUpdated:h}),De===void 0&&Ae!==null?_.push(oe):De!==void 0&&Ae===null?T.push(oe):Ae!==null&&(Pn(Ae,Ve)||a.push(oe),C.push(oe)))}(_.length>0||a.length>0||T.length>0)&&p.emit("change",[{added:_,updated:a,removed:T},d]),(_.length>0||C.length>0||T.length>0)&&p.emit("update",[{added:_,updated:C,removed:T},d])},ws=Object.freeze(Object.defineProperty({__proto__:null,Awareness:Rr,applyAwarenessUpdate:tr,encodeAwarenessUpdate:Ur,modifyAwarenessUpdate:Ts,outdatedTimeout:mr,removeAwarenessStates:$n},Symbol.toStringTag,{value:"Module"}));function _n(p){const t=atob(p),d=new Uint8Array(t.length);for(let l=0;l<t.length;l++)d[l]=t.charCodeAt(l);return d}function bn(p){let t="";for(let l=0;l<p.length;l+=32768)t+=String.fromCharCode.apply(null,p.subarray(l,l+32768));return btoa(t)}class As{roomId;route;lang;clientId;user;idleMs;activeMs;presenceIdleMs;presenceActiveMs;pullTimer=null;presenceTimer=null;disposed=!1;offset=0;peers=[];awarenessMeta=null;awareness=null;remoteUpdateHandlers=new Set;peerHandlers=new Set;statusHandlers=new Set;status="idle";editorType;unloadHandler=null;constructor(t){this.roomId=t.roomId,this.route=t.route,this.lang=t.lang??null,this.clientId=t.clientId,this.user=t.user??null,this.editorType=t.editorType??null,this.idleMs=t.idleIntervalMs??4e3,this.activeMs=t.activeIntervalMs??1e3,this.presenceIdleMs=Math.max(5e3,this.idleMs),this.presenceActiveMs=Math.max(2e3,this.activeMs*2)}async connect(){if(!this.disposed){this.setStatus("connecting"),this.installUnloadHandler();try{await this.pullOnce(),await this.heartbeatOnce(),this.setStatus("connected"),this.schedulePull(),this.schedulePresence()}catch(t){this.setStatus("error",t.message),this.schedulePull()}}}async disconnect(){this.disposed=!0,this.pullTimer&&clearTimeout(this.pullTimer),this.presenceTimer&&clearTimeout(this.presenceTimer),this.pullTimer=this.presenceTimer=null,this.uninstallUnloadHandler();try{await ze.post(this.presencePath(),{clientId:this.clientId,leave:!0,lang:this.lang})}catch{}this.setStatus("idle")}installUnloadHandler(){if(typeof window>"u"||this.unloadHandler)return;const t=()=>{this.disposed||ze.beaconPost(this.presencePath(),{clientId:this.clientId,leave:!0,lang:this.lang})};this.unloadHandler=t,window.addEventListener("pagehide",t),window.addEventListener("beforeunload",t)}uninstallUnloadHandler(){typeof window>"u"||!this.unloadHandler||(window.removeEventListener("pagehide",this.unloadHandler),window.removeEventListener("beforeunload",this.unloadHandler),this.unloadHandler=null)}async push(t){if(!this.disposed)try{await ze.post(this.pushPath(),{clientId:this.clientId,update:bn(t),lang:this.lang}),this.pullSoon()}catch(d){this.setStatus("error",d.message)}}updateAwareness(t){this.awarenessMeta=t}setAwareness(t){this.awareness=t}onRemoteUpdate(t){this.remoteUpdateHandlers.add(t)}onPeers(t){this.peerHandlers.add(t)}onStatus(t){this.statusHandlers.add(t),t(this.status)}pullPath(){return`/sync/pages${this.route}/pull`}pushPath(){return`/sync/pages${this.route}/push`}presencePath(){return`/sync/pages${this.route}/presence`}get pullIntervalMs(){return this.hasOtherPeers()?this.activeMs:this.idleMs}get presenceIntervalMs(){return this.hasOtherPeers()?this.presenceActiveMs:this.presenceIdleMs}hasOtherPeers(){return this.peers.some(t=>t.clientId!==this.clientId)}schedulePull(){this.disposed||(this.pullTimer&&clearTimeout(this.pullTimer),this.pullTimer=setTimeout(()=>this.pullLoop(),this.pullIntervalMs))}pullSoon(){this.disposed||(this.pullTimer&&clearTimeout(this.pullTimer),this.pullTimer=setTimeout(()=>this.pullLoop(),0))}schedulePresence(){this.disposed||(this.presenceTimer&&clearTimeout(this.presenceTimer),this.presenceTimer=setTimeout(()=>this.heartbeatLoop(),this.presenceIntervalMs))}async pullLoop(){if(!this.disposed){try{await this.pullOnce(),this.setStatus("connected")}catch(t){this.setStatus("error",t.message)}this.schedulePull()}}async heartbeatLoop(){if(!this.disposed){try{await this.heartbeatOnce()}catch(t){this.setStatus("error",t.message)}this.schedulePresence()}}async pullOnce(){const{updates:t,offset:d,peers:l}=await ze.post(this.pullPath(),{since:this.offset,clientId:this.clientId,lang:this.lang});if(this.offset=d,this.emitPeers(l),t.length>0)for(const h of t){const _=_n(h);for(const C of this.remoteUpdateHandlers)C(_)}}async heartbeatOnce(){const t={...this.awarenessMeta??{}};if(this.editorType&&(t.editorType=this.editorType),this.awareness)try{const l=Ur(this.awareness,[this.awareness.clientID]);t.awarenessUpdate=bn(l),t.awarenessClientId=this.awareness.clientID}catch{}const{peers:d}=await ze.post(this.presencePath(),{clientId:this.clientId,user:this.user,meta:t,lang:this.lang});if(this.awareness)for(const l of d){if(l.clientId===this.clientId)continue;const h=l.meta?.awarenessUpdate;if(!(typeof h!="string"||h.length===0))try{tr(this.awareness,_n(h),l.clientId)}catch{}}this.emitPeers(d)}emitPeers(t){this.peers=t;for(const d of this.peerHandlers)d(t)}setStatus(t,d){if(this.status!==t){this.status=t;for(const l of this.statusHandlers)l(t,d)}}}function Gr(p){const t=atob(p),d=new Uint8Array(t.length);for(let l=0;l<t.length;l++)d[l]=t.charCodeAt(l);return d}function yn(p){let t="";for(let l=0;l<p.length;l+=32768)t+=String.fromCharCode.apply(null,p.subarray(l,l+32768));return btoa(t)}const Ss=1e4;class Ns{roomId;route;lang;clientId;user;offset=0;peers=[];awareness=null;awarenessMeta=null;pendingAwUpdates=[];docSource=null;awSource=null;presenceTimer=null;tokenRefreshTimer=null;refreshingToken=!1;disposed=!1;remoteUpdateHandlers=new Set;peerHandlers=new Set;statusHandlers=new Set;status="idle";editorType;unloadHandler=null;constructor(t){this.roomId=t.roomId,this.route=t.route,this.lang=t.lang??null,this.clientId=t.clientId,this.user=t.user??null,this.editorType=t.editorType??null}async connect(){if(!this.disposed){this.setStatus("connecting"),this.installUnloadHandler();try{await this.pullOnce();const t=await ze.post("/sync/mercure/token",{route:this.route,lang:this.lang});this.openStream(t,"doc"),this.openStream(t,"aw"),this.scheduleTokenRefresh(t.expires_in),await this.heartbeatOnce(),this.schedulePresence(),this.setStatus("connected")}catch(t){this.setStatus("error",t.message)}}}async disconnect(){this.disposed=!0,this.docSource?.close(),this.awSource?.close(),this.docSource=this.awSource=null,this.presenceTimer&&clearTimeout(this.presenceTimer),this.presenceTimer=null,this.tokenRefreshTimer&&clearTimeout(this.tokenRefreshTimer),this.tokenRefreshTimer=null,this.uninstallUnloadHandler();try{await ze.post(this.presencePath(),{clientId:this.clientId,leave:!0,lang:this.lang})}catch{}this.setStatus("idle")}installUnloadHandler(){if(typeof window>"u"||this.unloadHandler)return;const t=()=>{this.disposed||ze.beaconPost(this.presencePath(),{clientId:this.clientId,leave:!0,lang:this.lang})};this.unloadHandler=t,window.addEventListener("pagehide",t),window.addEventListener("beforeunload",t)}uninstallUnloadHandler(){typeof window>"u"||!this.unloadHandler||(window.removeEventListener("pagehide",this.unloadHandler),window.removeEventListener("beforeunload",this.unloadHandler),this.unloadHandler=null)}async push(t){if(!this.disposed)try{await ze.post(this.pushPath(),{clientId:this.clientId,update:yn(t),lang:this.lang})}catch(d){this.setStatus("error",d.message)}}updateAwareness(t){this.awarenessMeta=t}setAwareness(t){if(this.awareness=t,this.pendingAwUpdates.length){for(const d of this.pendingAwUpdates)try{tr(t,d,"mercure")}catch{}this.pendingAwUpdates=[]}}onRemoteUpdate(t){this.remoteUpdateHandlers.add(t)}onPeers(t){this.peerHandlers.add(t)}onStatus(t){this.statusHandlers.add(t),t(this.status)}pullPath(){return`/sync/pages${this.route}/pull`}pushPath(){return`/sync/pages${this.route}/push`}presencePath(){return`/sync/pages${this.route}/presence`}async pullOnce(){const{updates:t,offset:d,peers:l}=await ze.post(this.pullPath(),{since:this.offset,clientId:this.clientId,lang:this.lang});if(this.offset=d,t.length>0)for(const h of t){const _=Gr(h);for(const C of this.remoteUpdateHandlers)C(_)}this.consumePeerAwareness(l),this.emitPeers(l)}consumePeerAwareness(t){for(const d of t){if(d.clientId===this.clientId)continue;const l=d.meta?.awarenessUpdate;if(typeof l!="string"||l.length===0)continue;const h=Gr(l);if(this.awareness)try{tr(this.awareness,h,"mercure")}catch{}else this.pendingAwUpdates.push(h)}}async heartbeatOnce(){const t={...this.awarenessMeta??{}};if(this.editorType&&(t.editorType=this.editorType),this.awareness)try{const l=Ur(this.awareness,[this.awareness.clientID]);t.awarenessUpdate=yn(l),t.awarenessClientId=this.awareness.clientID}catch{}const{peers:d}=await ze.post(this.presencePath(),{clientId:this.clientId,user:this.user,meta:t,lang:this.lang});this.consumePeerAwareness(d),this.emitPeers(d)}schedulePresence(){this.disposed||(this.presenceTimer&&clearTimeout(this.presenceTimer),this.presenceTimer=setTimeout(()=>this.presenceLoop(),Ss))}async presenceLoop(){if(!this.disposed){try{await this.heartbeatOnce()}catch(t){this.setStatus("error",t.message)}this.schedulePresence()}}openStream(t,d){const l=d==="doc"?t.topic_doc:t.topic_aw,h=new URL(t.hub);h.searchParams.append("topic",l),h.searchParams.set("authorization",t.jwt);const _=new EventSource(h.toString());_.onmessage=C=>{let a;try{a=JSON.parse(C.data)}catch{return}if(typeof a.bytes!="string"||a.bytes==="")return;const T=Gr(a.bytes);if(a.channel==="doc")for(const J of this.remoteUpdateHandlers)J(T);else if(a.channel==="aw")if(this.awareness)try{tr(this.awareness,T,"mercure")}catch{}else this.pendingAwUpdates.push(T)},_.onerror=()=>{this.disposed||(this.setStatus("connecting","mercure stream reconnecting"),_.readyState===EventSource.CLOSED&&this.refreshToken())},_.onopen=()=>{this.disposed||this.setStatus("connected")},d==="doc"?this.docSource=_:this.awSource=_}emitPeers(t){this.peers=t;for(const d of this.peerHandlers)d(t)}async refreshToken(){if(!(this.disposed||this.refreshingToken)){this.refreshingToken=!0;try{const t=await ze.post("/sync/mercure/token",{route:this.route,lang:this.lang});if(this.disposed)return;this.docSource?.close(),this.awSource?.close(),this.docSource=this.awSource=null,this.openStream(t,"doc"),this.openStream(t,"aw"),this.scheduleTokenRefresh(t.expires_in)}catch(t){this.disposed||this.setStatus("error",t.message)}finally{this.refreshingToken=!1}}}scheduleTokenRefresh(t){if(this.tokenRefreshTimer&&clearTimeout(this.tokenRefreshTimer),this.tokenRefreshTimer=null,this.disposed)return;const d=typeof t=="number"&&t>0?t*1e3:6e5,l=Math.max(3e4,Math.min(d*.8,d-3e4));this.tokenRefreshTimer=setTimeout(()=>{this.refreshToken()},l)}setStatus(t,d){if(this.status!==t){this.status=t;for(const l of this.statusHandlers)l(t,d)}}}class Is{constructor(t){this.clientId=t}#e=[];#r={};#t=new Set;get peers(){return this.#e}get others(){return this.#e.filter(t=>t.clientId!==this.clientId)}get localMeta(){return this.#r}setLocal(t){this.#r=t}updateFromProvider(t){this.#e=t;for(const d of this.#t)d(t)}on(t){return this.#t.add(t),()=>this.#t.delete(t)}}const Ps=Symbol("ydoc:local"),$r=Symbol("ydoc:remote");class Ds{doc;content;awareness;roomId;provider;disposed=!1;updateHandler;constructor(t){this.roomId=t.roomId,this.doc=new Gn,this.content=this.doc.getText("content"),this.awareness=new Is(t.clientId),this.provider=t.provider,this.updateHandler=(d,l)=>{l===$r||this.disposed||this.provider.push(d)},this.doc.on("update",this.updateHandler),this.provider.onRemoteUpdate(d=>{this.disposed||Cr(this.doc,d,$r)}),this.provider.onPeers(d=>{this.disposed||this.awareness.updateFromProvider(d)})}async connect(){await this.provider.connect()}async dispose(){this.disposed=!0,this.doc.off("update",this.updateHandler);try{await this.provider.disconnect()}finally{this.doc.destroy()}}get localOrigin(){return Ps}}const Ms=new Set(["markdown","editor","textarea","yaml","html","frontmatter"]);function Rn(p,t,d){if(p)for(const l of p){const h=l.name??"",_=t&&h?`${t}.${h}`:h||t;if(l.fields&&l.fields.length>0){Rn(l.fields,_,d);continue}_&&d.set(_,Ms.has(l.type)?"ytext":"scalar")}}function xn(p){const{doc:t,blueprint:d,extraRichTextPaths:l=[],localOrigin:h,remoteOrigin:_}=p,C=t.getMap("form"),a=new Map;Rn(d?.fields,"",a);for(const m of l)a.set(m,"ytext");const T=new Set;function J(m){return a.get(m)==="ytext"}function ne(m){if(!m)return null;const L=m.split("."),D=L.pop();let M=C;for(const O of L){const I=M.get(O);if(I instanceof pr)M=I;else{const q=new pr;M.set(O,q),M=q}}return{parent:M,key:D,fullPath:m}}function oe(m,L){const D=m.toString();if(D===L)return;let M=0;const O=Math.min(D.length,L.length);for(;M<O&&D[M]===L[M];)M++;let I=0;for(;I<D.length-M&&I<L.length-M&&D[D.length-1-I]===L[L.length-1-I];)I++;const q=D.length-M-I,fe=L.slice(M,L.length-I);q>0&&m.delete(M,q),fe.length>0&&m.insert(M,fe)}function Pe(m,L){const D=ne(m);if(!D)return;const{parent:M,key:O}=D;t.transact(()=>{if(J(m)&&typeof L=="string"){let I=M.get(O);I instanceof Zt||(I=new Zt,M.set(O,I)),oe(I,L)}else if(Array.isArray(L)){let I=M.get(O);if(!(I instanceof gr)){I=new gr,M.set(O,I),L.length>0&&I.push(L.map(Ot));return}Ae(I,L)}else{const I=M.get(O);if(!(I instanceof Ra)&&En(I,L))return;M.set(O,Ot(L))}},h)}function Ae(m,L){const D=m.toArray();if(D.length===L.length){let I=!0;for(let q=0;q<D.length;q++)if(!En(D[q],L[q])){I=!1;break}if(I)return}const M=I=>I===null||typeof I!="object";if(D.every(M)&&L.every(M)){const I=L.map(ie=>JSON.stringify(ie)),q=D.map(ie=>JSON.stringify(ie));if(q.length===I.length){const ie=[...q].sort(),me=[...I].sort();let Me=!0;for(let Ee=0;Ee<ie.length;Ee++)if(ie[Ee]!==me[Ee]){Me=!1;break}if(Me){m.delete(0,m.length),L.length>0&&m.push(L.map(Ot));return}}const fe=I.slice(),_t="\0:taken:\0";for(let ie=D.length-1;ie>=0;ie--){const me=q[ie],Me=fe.indexOf(me);Me>=0?fe[Me]=_t:m.delete(ie,1)}const xe=[];for(let ie=0;ie<fe.length;ie++)fe[ie]!==_t&&xe.push(Ot(L[ie]));xe.length>0&&m.push(xe);return}m.delete(0,m.length),L.length>0&&m.push(L.map(Ot))}function De(m){if(m instanceof Zt)return m.toString();if(m instanceof pr){const L={};return m.forEach((D,M)=>{L[M]=De(D)}),L}return m instanceof gr?m.toArray().map(De):m}function Ve(){return De(C)}function Je(m){C.size>0||t.transact(()=>{gt(C,m,"")},h)}function gt(m,L,D){for(const[M,O]of Object.entries(L)){const I=D?`${D}.${M}`:M;if(J(I)&&typeof O=="string"){const q=new Zt;q.insert(0,O),m.set(M,q)}else if(Array.isArray(O)){const q=new gr;m.set(M,q),O.length>0&&q.push(O.map(Ot))}else if(O&&typeof O=="object"){const q=new pr;m.set(M,q),gt(q,O,I)}else m.set(M,Ot(O))}}const te=(m,L)=>{if(L.origin===h)return;const D=Ve();for(const M of T)M(D)};C.observeDeep(te);function U(m){return T.add(m),()=>T.delete(m)}function W(m){if(!J(m))return null;const L=ne(m);if(!L)return null;const D=L.parent.get(L.key);return D instanceof Zt?D:null}function K(){C.unobserveDeep(te),T.clear()}return{pushLocal:Pe,seed:Je,getValue:Ve,onRemote:U,map:C,isText:J,getText:W,dispose:K}}function Ot(p){if(p===null||typeof p!="object")return p;try{return structuredClone(p)}catch{return JSON.parse(JSON.stringify(p))}}function En(p,t){if(p===t)return!0;if(p===null||t===null||typeof p!=typeof t||typeof p!="object")return!1;try{return JSON.stringify(p)===JSON.stringify(t)}catch{return!1}}if(typeof window<"u"){const p=window;p.__GRAV_YJS__||(p.__GRAV_YJS__={yjs:gn,awareness:ws,Y:gn,Awareness:Rr})}function Tn(p){let t=0;for(let d=0;d<p.length;d++)t=t*31+p.charCodeAt(d)|0;return`hsl(${(t%360+360)%360} 65% 45%)`}function Ls(p){const{doc:t,clientId:d,userName:l,contentText:h,fragmentKey:_="content:xml"}=p,C=t.getXmlFragment(_),a=new Rr(t);return a.setLocalStateField("user",{name:l,color:Tn(d)}),{collab:{fragment:C,yText:h,awareness:a,user:{name:l,color:Tn(d)}},dispose(){a.destroy()}}}function Os(p){let t="";for(let l=0;l<p.length;l+=32768)t+=String.fromCharCode.apply(null,p.subarray(l,l+32768));return btoa(t)}function ks(p){const t=atob(p),d=new Uint8Array(t.length);for(let l=0;l<t.length;l++)d[l]=t.charCodeAt(l);return d}async function Gs(p){const t=await ze.post(`/sync/pages${p.route}/init`,{seed:Os(p.seedBytes),clientId:p.clientId,lang:p.lang??void 0});if(t.seeded)return Cr(p.doc,p.seedBytes,p.remoteOrigin),!0;for(const d of t.updates??[])Cr(p.doc,ks(d),p.remoteOrigin);return!1}function Cs(p){const t=`sync:page-saved:${p.roomId}`,d=p.intervalMs??4e3;let l=!1,h=null,_=null,C=!1;async function a(){if(!l){try{const T={id:t};_!==null&&(T.since=String(_));const J=await ze.get("/sync/channels/pull",T);if(!C)_=J.serverTimeMs??0,C=!0;else{_=J.serverTimeMs??_;for(const ne of J.messages??[])ne.eventName==="page-saved"&&ne.payload?.kind==="page-saved"&&p.onSaved(ne.payload)}}catch{}l||(h=setTimeout(a,d))}}return h=setTimeout(a,0),{dispose:()=>{l=!0,h&&(clearTimeout(h),h=null)}}}var $s=P('<div class="h-6 w-48 animate-pulse rounded bg-muted"></div>'),Rs=P('<p class="truncate text-xs text-muted-foreground"> </p>'),Us=P('<div class="flex items-center gap-2"><h1> </h1> <!></div> <!>',1),Hs=P('<!> <span class="hidden lg:inline">Undo</span>',1),js=Sn('<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M4 12l10 0"></path><path d="M4 12l4 4"></path><path d="M4 12l4 -4"></path><path d="M20 4l0 16"></path></svg>'),Xs=Sn('<svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 12l-10 0"></path><path d="M20 12l-4 4"></path><path d="M20 12l-4 -4"></path><path d="M4 4l0 16"></path></svg>'),Fs=P("<!> <!>",1),Bs=P('<!> <span class="hidden lg:inline"> </span>',1),zs=P('<!> <span class="hidden lg:inline"> </span>',1),Vs=P('<!> <span class="hidden lg:inline"> </span>',1),Js=P('<button class="flex w-full items-center gap-2 px-3 py-1.5 text-start text-[0.8125rem] text-popover-foreground transition-colors hover:bg-accent/50"><!> </button>'),Ys=P('<div class="fixed inset-0 z-40"></div> <div class="absolute end-0 top-full z-50 mt-1 min-w-[180px] rounded-md border border-border bg-popover py-1 shadow-md"></div>',1),Ws=P('<button class="inline-flex h-8 items-center rounded-e-md border-s border-primary-foreground/20 bg-primary px-1.5 text-primary-foreground transition-colors hover:bg-primary/90"><!></button> <!>',1),Ks=P('<div class="relative flex"><!> <!></div>'),qs=P('<div><div><div class="flex min-w-0 items-center gap-3"><button class="inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-accent-foreground"><!></button> <div class="min-w-0"><!></div></div> <div class="flex shrink-0 flex-wrap items-center gap-2"><!> <!> <!> <button><!></button> <button class="hidden h-8 w-8 items-center justify-center rounded-md border border-border text-muted-foreground transition-colors hover:bg-accent hover:text-foreground lg:inline-flex"><!></button> <!> <!> <!> <!></div></div></div>'),Qs=P('<div class="flex items-center gap-2 rounded-lg border border-red-200 bg-red-50 p-3 text-sm text-red-700 dark:border-red-800/50 dark:bg-red-950/30 dark:text-red-300"><!> </div>'),Zs=P('<button class="shrink-0 ms-auto text-xs font-medium underline"> </button>'),eo=P('<div class="flex items-center gap-2 rounded-lg border border-amber-200 bg-amber-50 p-3 text-sm text-amber-700 dark:border-amber-800/50 dark:bg-amber-950/30 dark:text-amber-300"><!> <span></span> <!></div>'),to=P('<div class="py-20 text-center text-sm text-muted-foreground"> </div>'),ro=P('<div class="flex h-64 items-center justify-center text-sm text-muted-foreground"><span class="animate-pulse"> </span></div>'),no=P('<div class="overflow-hidden rounded-lg border border-border bg-card"><div class="flex items-center gap-2 border-b border-border px-4 py-2"><!> <span class="text-xs font-medium text-muted-foreground"> </span></div> <!></div> <!> <div><!></div> <div class="rounded-lg border border-border bg-card p-4"><!></div>',1),ao=P('<div class="rounded-xl border border-border bg-muted/30"><div class="space-y-5 px-6 py-5"><div class="grid gap-1.5 lg:grid-cols-[minmax(0,1fr)_2fr] lg:items-start lg:gap-x-6"><div class="lg:pt-2.5"><span class="text-sm font-semibold text-foreground"> <span class="text-red-500">*</span></span> <p class="mt-0.5 text-xs text-muted-foreground"> </p></div> <div><input type="text" class="flex h-10 w-full rounded-lg border border-input bg-muted/50 px-3 py-2 text-sm shadow-sm transition-colors placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring"/></div></div> <div class="grid gap-1.5 lg:grid-cols-[minmax(0,1fr)_2fr] lg:items-start lg:gap-x-6"><div class="lg:pt-2.5"><span class="text-sm font-semibold text-foreground"> </span></div> <div><!></div></div> <div class="grid gap-1.5 lg:grid-cols-[minmax(0,1fr)_2fr] lg:items-start lg:gap-x-6"><div class="lg:pt-2.5"><span class="text-sm font-semibold text-foreground"> <span class="text-red-500">*</span></span> <p class="mt-0.5 text-xs text-muted-foreground"></p></div> <div><!></div></div></div></div>'),so=P("<!> <!>",1),oo=P('<div class="flex h-64 items-center justify-center rounded-lg border border-border bg-card text-sm text-muted-foreground"><span class="animate-pulse"> </span></div>'),io=P('<div class="rounded-lg border border-border bg-card p-4"><label class="label"><span class="text-sm font-medium text-foreground">Title</span> <input type="text" class="flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring"/></label></div> <!> <!>',1),lo=P('<span class="h-2 w-2 rounded-full bg-emerald-500"></span>'),co=P('<span class="h-2 w-2 rounded-full bg-muted-foreground/40"></span>'),uo=P('<span class="h-2 w-2 rounded-full bg-primary"></span>'),fo=P('<span class="h-2 w-2 rounded-full bg-muted-foreground/40"></span>'),go=P('<div class="flex justify-between"><dt class="text-muted-foreground"> </dt> <dd> </dd></div>'),po=P('<div class="flex justify-between"><dt class="text-muted-foreground">Folder</dt> <dd class="max-w-[140px] truncate font-mono text-[0.75rem] font-medium text-foreground"> </dd></div>'),ho=P('<span class="text-amber-500 text-[0.6875rem]"> </span>'),vo=P('<div class="flex justify-between"><dt class="text-muted-foreground"> </dt> <dd class="font-medium text-foreground"> <!></dd></div>'),mo=P('<div class="flex justify-between"><dt class="text-muted-foreground">Order</dt> <dd class="font-medium text-foreground"> </dd></div>'),_o=P('<div class="flex justify-between"><dt class="text-muted-foreground">Date</dt> <dd class="font-medium text-foreground"> </dd></div>'),bo=P('<div class="flex justify-between"><dt class="text-muted-foreground"> </dt> <dd class="font-medium text-emerald-500"> </dd></div>'),yo=P('<div class="flex justify-between"><dt class="text-muted-foreground"> </dt> <dd class="font-medium text-amber-500"> </dd></div>'),xo=P('<span class="ms-auto text-[0.625rem] text-muted-foreground">current</span>'),Eo=P("<button><span> </span> <!></button>"),To=P('<button class="flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-start text-[0.8125rem] text-muted-foreground transition-colors hover:bg-accent/50 hover:text-foreground"><span class="inline-flex h-5 shrink-0 items-center justify-center whitespace-nowrap rounded bg-muted/50 px-[2px] text-[0.625rem] font-bold uppercase text-muted-foreground/50"> </span> <span class="italic"> </span></button>'),wo=P('<div class="my-1 border-t border-border"></div> <p class="px-2 text-[0.6875rem] text-muted-foreground"> </p> <!>',1),Ao=P('<button class="flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-start text-[0.8125rem] text-muted-foreground transition-colors hover:bg-accent/50 hover:text-foreground"><span class="inline-flex h-5 shrink-0 items-center justify-center whitespace-nowrap rounded bg-amber-500/15 px-[2px] text-[0.625rem] font-bold uppercase text-amber-600 dark:text-amber-400"> </span> </button>'),So=P('<div class="my-1 border-t border-border"></div> <p class="px-2 text-[0.6875rem] text-muted-foreground"> </p> <!>',1),No=P('<div class="rounded-lg border border-border bg-card p-4"><h3 class="mb-3 text-sm font-semibold text-foreground"> </h3> <div class="space-y-1.5"><!> <!> <!></div></div>'),Io=P('<div class="rounded-lg border border-border bg-card p-4"><!></div>'),Po=P('<div class="lg:sticky lg:self-start" style="top: calc(var(--sticky-header-height, 0px) + 1rem)"><div class="space-y-4"><div class="rounded-lg border border-border bg-card p-4"><h3 class="mb-3 text-sm font-semibold text-foreground"> </h3> <dl class="space-y-2.5 text-[0.8125rem]"><div class="flex justify-between"><dt class="flex items-center gap-1.5 text-muted-foreground"><!> </dt> <dd> </dd></div> <div class="flex justify-between"><dt class="flex items-center gap-1.5 text-muted-foreground"><!> </dt> <dd> </dd></div> <!> <div class="my-1 border-t border-border"></div> <div class="flex justify-between"><dt class="text-muted-foreground">Route</dt> <dd class="max-w-[140px] truncate font-medium text-foreground"> </dd></div> <div class="flex justify-between"><dt class="text-muted-foreground">Slug</dt> <dd class="font-medium text-foreground"> </dd></div> <!> <div class="flex justify-between"><dt class="text-muted-foreground"> </dt> <dd class="font-medium text-foreground"> </dd></div> <!> <!> <div class="my-1 border-t border-border"></div> <!> <div class="flex justify-between"><dt class="text-muted-foreground"> </dt> <dd class="font-medium text-foreground"> </dd></div> <!> <!></dl></div> <!> <!></div></div>'),Do=P('<div><div class="space-y-4"><!></div> <!></div>'),Mo=P('<div class="fixed inset-0 z-50 flex items-center justify-center bg-neutral-900/80 p-4 backdrop-blur-sm sm:p-6"><div class="flex h-[90vh] w-full max-w-6xl flex-col overflow-hidden rounded-xl border border-border bg-card shadow-2xl"><div class="flex shrink-0 items-center justify-between border-b border-border px-4 py-2.5"><div class="flex items-center gap-3"><h2 class="text-sm font-semibold text-foreground"> </h2> <span class="truncate text-xs text-muted-foreground"> </span></div> <div class="flex items-center gap-2"><a target="_blank" rel="noopener" class="inline-flex h-8 items-center gap-1.5 rounded-md border border-border px-3 text-[0.75rem] font-medium text-muted-foreground transition-colors hover:bg-accent hover:text-foreground"><!> </a> <button class="inline-flex h-8 w-8 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground"><!></button></div></div> <div class="flex-1 bg-white"><iframe class="h-full w-full border-0" sandbox="allow-same-origin allow-scripts allow-forms"></iframe></div></div></div>'),Lo=P('<div><!> <div class="relative z-0 space-y-4 px-6 pb-6"><!> <!> <!></div></div> <!> <!> <!> <!> <!> <!>',1);function Ai(p,t){wn(t,!0);const d=S(()=>ls("pages"));let l=F(!1);const h=S(()=>"/"+(Pa.params.route||""));let _=F(Ct([]));function C(r){n(_,r,!0)}Lt("pageRoute",()=>e(h)),Lt("blueprintScope",()=>"pages/"+e(h).replace(/^\//,"")),ft(()=>(window.__GRAV_PAGE_ROUTE=e(h),()=>{window.__GRAV_PAGE_ROUTE=""})),ft(()=>(window.__GRAV_CONTENT_LANG=x.activeLang,()=>{window.__GRAV_CONTENT_LANG=""})),ft(()=>{function r(){window.dispatchEvent(new CustomEvent("grav:editor:content-response",{detail:{content:e(U),route:e(h),title:e(te),template:e(W)}}))}function i(u){const{content:f,mode:y}=u.detail||{};if(!f)return;const $=e(U);let G;if(y==="replace")G=f;else if(y==="append")G=e(U)+`
|
|
|
|
`+f;else return;n(U,G,!0),n(K,{...e(K),content:G},!0),n(O,!0);const R=document.querySelector("grav-editor-pro--editor-pro");R&&(typeof R.replaceContent=="function"?R.replaceContent(G):R.value=G),_e.oncommit("content",G,$)}return window.addEventListener("grav:editor:get-content",r),window.addEventListener("grav:editor:insert-content",i),()=>{window.removeEventListener("grav:editor:get-content",r),window.removeEventListener("grav:editor:insert-content",i)}}),Lt("pageType",()=>e(W)?.startsWith("modular")?"modular":"standard"),Lt("pageMediaItems",{get items(){return e(_)},update:C});let a=F(null),T=F(null),J=F(!0),ne=F(!1),oe=F(Ct({})),Pe=F(""),Ae=F(!1),De=0,Ve=F(null),Je=F(!1);const gt=S(()=>e(a)?`${St.serverUrl}${e(a).route}`:"");let te=F(""),U=F(""),W=F(""),K=F(Ct({})),m=F(Ct({})),L=F(""),D=F(""),M=F(""),O=F(!1),I={},q="",fe="",_t="",xe="",ie="",me=!1,Me=null;function Ee(r,i){if(r===i)return!0;try{return JSON.stringify(r)===JSON.stringify(i)}catch{return!1}}function rr(r){const i=r.split(".");let u=I;for(const f of i){if(u==null||typeof u!="object")return;u=u[f]}return u}let nt=F("content"),B=F(""),Ye=F("");const bt=typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():Math.random().toString(36).slice(2);let $t=null,yt=F(null);Lt("editorCollab",r=>r==="content"?e(yt):null);let Nt=F(!1),yr=F(!1);const xr=S(()=>X.collabEnabled&&!e(Nt)&&!e(yr));Lt("collabPending",r=>r==="content"&&e(xr));let Rt=!1;const Hr=S(()=>{const r=St.contentEditor||"";return r&&r!=="default"&&ts.has(r)?r:"codemirror"}),st=S(()=>{if(!X.collabEnabled||!e(Nt)||e(Xt).length===0)return null;const r=[...e(Xt)].sort((i,u)=>{const f=i.joinedAt??0,y=u.joinedAt??0;return f!==y?f-y:i.clientId.localeCompare(u.clientId)});for(const i of r){const u=i.meta?.editorType;if(!(typeof u!="string"||u.length===0))return i.clientId===bt||u===e(Hr)?null:{ownerType:u,ownerName:i.user||"another user"}}return null});Lt("editorLock",()=>e(st));let Er=F("idle"),jr=F(void 0),Xt=F(Ct([]));ft(()=>{const r=X.collabEnabled,i=!e(J)&&e(a)!==null,u=e(h),f=x.enabled?x.activeLang:null,y=e(W)||"default";if(!r||!i||!u)return;const $=`${u.replace(/^\//,"")}@${y}`,G=f?`${$}@${f}`:$;let R=null,b=null,g=null,z=null,Q=null,se=!1;return(async()=>{let le=!1;try{const H=await ze.get("/sync/capabilities"),re=Array.isArray(H.transports)&&H.transports.some(V=>typeof V=="string"&&V==="mercure"||typeof V=="object"&&V?.id==="mercure");le=H.preferred==="mercure"&&re&&!!H.mercure?.hub}catch{}if(se)return;const We={roomId:G,route:u,lang:f,clientId:bt,user:St.fullname||St.username||null,editorType:e(Hr)};R=le?new Ns(We):new As(We),R.onStatus((H,re)=>{n(Er,H,!0),n(jr,re,!0)}),R.onPeers(H=>{n(Xt,H,!0)}),b=new Ds({roomId:G,clientId:bt,user:St.fullname||St.username||null,provider:R}),g=xn({doc:b.doc,blueprint:e(T),extraRichTextPaths:["content"],localOrigin:b.localOrigin,remoteOrigin:Symbol("ydoc:remote-unused")});async function be(H){Rt=!0;try{const re=e(U),V=typeof H.content=="string"?H.content:e(U),ae=H.header&&typeof H.header=="object"?H.header:{},de=typeof ae.title=="string"?ae.title:e(te),Oe=typeof H.name=="string"?H.name:e(W);if(V!==e(U)&&n(U,V,!0),de!==e(te)&&n(te,de,!0),JSON.stringify(H)!==JSON.stringify(e(K))&&n(K,{...H},!0),Oe!==e(W)){n(W,Oe,!0);try{n(T,await Qt(Oe),!0)}catch{n(T,null)}}if(!e(yt)){const ke=document.querySelector("grav-editor-pro--editor-pro");ke&&ke.value!==V&&(ke.value=V),document.querySelectorAll(".cm-editor").forEach(He=>{const ye=He.__cmView;if(!ye)return;const qe=ye.state.doc.toString();qe!==re||qe===V||ye.dispatch({changes:{from:0,to:ye.state.doc.length,insert:V}})})}}finally{Rt=!1}}Q=g.onRemote(H=>{be(H)});try{if(await b.connect(),se)return;if(g.map.size===0){const re=new Gn,V=xn({doc:re,blueprint:e(T),extraRichTextPaths:["content"],localOrigin:Symbol("seed:local"),remoteOrigin:Symbol("seed:remote")});V.seed({...e(K),content:e(U),name:y});const ae=Ua(re);if(V.dispose(),re.destroy(),await Gs({doc:b.doc,route:u,lang:f,clientId:bt,seedBytes:ae,remoteOrigin:$r}),se)return}await be(g.getValue());const H=g.getText("content");H&&(z=Ls({doc:b.doc,clientId:bt,userName:St.fullname||St.username||"Anonymous",contentText:H}),n(yt,z.collab,!0),R.setAwareness?.(z.collab.awareness)),$t=g,n(Nt,!0)}catch{se||n(yr,!0)}})(),()=>{se=!0,Q?.(),n(Nt,!1),n(yr,!1),$t=null,n(yt,null),n(Er,"idle"),n(Xt,[],!0),g?.dispose(),z?.dispose(),b?.dispose()}}),ft(()=>{if(!X.collabEnabled||e(J)||e(a)===null)return;const r=e(h);if(!r)return;const i=x.enabled?x.activeLang:null,u=e(W)||"default",f=`${r.replace(/^\//,"")}@${u}`,y=i?`${f}@${i}`:f,$=Cs({roomId:y,onSaved:G=>{Bn(G)}});return()=>$.dispose()}),ft(()=>{!e(Nt)||!$t||Rt||($t.pushLocal("content",e(U)),Ee(e(U),fe)||n(O,!0))});function ot(r,i){return r==="/"+i?"/":r.slice(0,r.lastIndexOf("/"))||"/"}function Tr(r){return r!=null&&r!==!1&&r!==""}function Xr(r){if(!Tr(r))return null;const i=parseInt(String(r),10);return Number.isNaN(i)?null:i}async function Un(r){try{const i=await _r(r);let u=0;for(const f of i){const y=parseInt(String(f.order??""),10);!Number.isNaN(y)&&y>u&&(u=y)}return u+1}catch{return 1}}ft(()=>{X.collabEnabled&&e(Nt)?er.setPresence({peers:e(Xt),clientId:bt,status:e(Er),detail:e(jr)}):er.setPresence(null)}),ft(()=>(er.setModeToggle({onNormal:()=>{X.editorMode==="expert"&&jn()},onExpert:()=>{X.editorMode==="normal"&&Hn()}}),()=>{er.setModeToggle(null),er.setPresence(null)}));function Hn(){const r={...e(a)?.header??{},title:e(te)};if(Object.keys(e(m)).length>0)for(const[i,u]of Object.entries(e(m))){const f=i.split(".");let y=r;for(let $=0;$<f.length-1;$++)(!y[f[$]]||typeof y[f[$]]!="object")&&(y[f[$]]={}),y=y[f[$]];y[f[f.length-1]]=u}n(D,hr.dump(r,{lineWidth:-1,noRefs:!0}).trimEnd(),!0),e(a)&&(n(B,e(a).slug.replace(/^\.+/,""),!0),n(Ye,ot(e(a).route,e(a).slug),!0)),n(nt,"content"),X.editorMode="expert"}function jn(){try{const r=hr.load(e(D));if(r&&typeof r=="object"){n(te,r.title??e(te),!0),n(K,{header:{...r},content:e(U),folder:e(a)?.slug??"",name:e(W),route:ie,ordering:me,order:Me},!0);const i={};for(const[u,f]of Object.entries(r)){if(u==="title")continue;const y=I[u];Ee(f,y)||(i[u]=f)}n(m,i,!0)}}catch{he.error(v.t("ADMIN_NEXT.PAGES.EDIT.INVALID_YAML_FRONTMATTER"));return}X.editorMode="normal"}let Xn=S(()=>e(a)!==null&&X.editorMode==="normal"&&((e(K).folder??xe)!==xe||(e(K).route??ie)!==ie||(e(K).ordering??me)!==me||(e(K).order??Me)!==Me)),wr=S(()=>e(a)!==null&&(e(U)!==(e(a).content??"")||e(W)!==e(a).template||(X.editorMode==="expert"?e(D)!==e(M)||e(B)!==e(a).slug||e(Ye)!==ot(e(a).route,e(a).slug):e(te)!==e(a).title||Object.keys(e(m)).length>0||e(Xn)))),Fn=S(()=>X.editorMode==="expert"||!e(T)||!Fa(e(T).fields,e(K)));const Ft=as(()=>X.autoSaveEnabled?e(O)||_e.saving||_e.undoStack.some(r=>!r.savedToServer):e(O)),_e=rs({save:Br,getValue:r=>{if(r==="expertSlug")return e(B);if(r==="expertParent")return e(Ye);if(r==="expertFrontmatter")return e(D);const i=r.split(".");let u=e(K);for(const f of i){if(u==null||typeof u!="object")return;u=u[f]}return u},applyChange:(r,i)=>{if(r==="expertSlug"){n(B,i,!0);return}if(r==="expertParent"){n(Ye,i,!0);return}if(r==="expertFrontmatter"){n(D,i,!0);return}Fr(r,i)},formName:v.t("ADMIN_NEXT.TOASTS.FORM_LABEL.PAGE"),canSave:()=>!e(Vt)});let Bt=F(!1),Ar=F(0);const zt=S(()=>e(a)?.language||x.defaultLang);let Vt=S(()=>x.enabled&&e(a)!==null&&e(zt)!==x.activeLang),nr=S(()=>e(Vt)&&!!e(a)?.untranslated_languages?.includes(x.activeLang));const Sr=S(()=>{if(!e(a)||!x.enabled)return[];const r=e(a).untranslated_languages??[],i=e(a).explicit_language_files??[],u=[...r],f=x.defaultLang;return e(a).has_default_file&&f&&!i.includes(f)&&!u.includes(f)&&u.unshift(f),u});async function xt(r){const i=++De;n(J,!0),n(Pe,""),n(l,!1);try{if(e(h)==="/"||e(h)===""){const R=(await _r("/")).find(b=>b.route==="/"&&b.raw_route);if(R?.raw_route){const b=R.raw_route.startsWith("/")?R.raw_route.slice(1):R.raw_route;kt(`${Gt}/pages/edit/${b}`,{replaceState:!0});return}}const u=r??(x.enabled?x.activeLang:void 0),f=await un(e(h),{render:!1,translations:!0,lang:u});if(i!==De)return;n(a,f,!0),n(te,f.title,!0),n(U,f.content??"",!0),n(W,f.template,!0);const y=ot(f.route,f.slug),$=Tr(f.order);n(K,{header:{...f.header??{},title:f.title},content:f.content??"",folder:f.slug,name:f.template,route:y,ordering:$,order:f.order},!0),n(L,JSON.stringify(f.header??{},null,2),!0),n(D,hr.dump({...f.header??{},title:f.title},{lineWidth:-1,noRefs:!0}).trimEnd(),!0),n(M,e(D),!0),I=JSON.parse(JSON.stringify(f.header??{})),q=f.title,fe=f.content??"",_t=f.template,xe=f.slug,ie=y,me=$,Me=f.order,n(m,{},!0),n(O,!1),n(B,f.slug.replace(/^\.+/,""),!0),n(Ye,ot(f.route,f.slug),!0),n(nt,"content");try{n(T,await Qt(f.template),!0)}catch{n(T,null)}if(i!==De)return}catch(u){if(i!==De)return;const f=u&&typeof u=="object"&&"status"in u?u.status:0;if(f===403){const y=u,$=y?.error?.title;typeof $=="string"&&$.startsWith("TWIG_CONTENT_")&&he.error(y.error?.detail??$),n(l,!0)}else f===404?n(Pe,`Page not found: ${e(h)}`):n(Pe,"Failed to load page")}finally{i===De&&n(J,!1)}}async function Fr(r,i){if(Rt)return;const u=r==="content"?fe:r==="header.title"?q:r.startsWith("header.")?rr(r.slice(7)):void 0;if(u!==void 0&&Ee(i,u)||n(O,!0),e(Nt)&&$t&&$t.pushLocal(r,i),r==="content")(!Ee(i,fe)||e(U)!==fe)&&n(U,i,!0);else if(r==="header.title")(!Ee(i,q)||e(te)!==q)&&n(te,i,!0);else if(r==="name"){const b=i;if(b!==e(W)){n(W,b,!0);try{n(T,await Qt(b),!0)}catch{n(T,null)}}}if(r.startsWith("header.")){const b=r.slice(7),g=rr(b);if(i===void 0||Ee(i,g)){if(b in e(m)){const z={...e(m)};delete z[b],n(m,z,!0)}}else n(m,{...e(m),[b]:i},!0)}const y=r.split("."),$={...e(K)};let G=$;for(let b=0;b<y.length-1;b++)(!G[y[b]]||typeof G[y[b]]!="object")&&(G[y[b]]={}),G[y[b]]={...G[y[b]]},G=G[y[b]];G[y[y.length-1]]=i,n(K,$,!0);const R=e(T)?Ha(e(T).fields,r,$):null;if(R)n(oe,{...e(oe),[r]:R},!0);else if(e(oe)[r]){const{[r]:b,...g}=e(oe);n(oe,g,!0)}}async function Bn(r){if(e(a))try{const i=x.enabled?x.activeLang:void 0,u=await un(e(h),{render:!1,translations:!0,lang:i});u.translated_languages=u.translated_languages??e(a).translated_languages,u.untranslated_languages=u.untranslated_languages??e(a).untranslated_languages,n(a,u,!0),I=JSON.parse(JSON.stringify(u.header??{})),q=u.title,fe=u.content??"",_t=u.template,xe=u.slug,ie=ot(u.route,u.slug),me=u.order!==null&&u.order!=="",Me=u.order;const f=e(U)===(u.content??"")&&e(te)===u.title&&e(W)===u.template;f&&(n(m,{},!0),n(O,!1),_e.markAllSaved()),X.editorMode==="expert"&&f&&n(M,e(D),!0);const y=r.savedBy?.fullname||r.savedBy?.username||"";y?he.info(v.t("ADMIN_NEXT.PAGES.EDIT.SAVED_BY_PEER",{user:y})):he.info(v.t("ADMIN_NEXT.PAGES.EDIT.SAVED_BY_PEER_ANON"))}catch{}}async function Br(){if(e(a)){if(X.editorMode!=="expert"&&e(T)&&(n(oe,ja(e(T).fields,e(K)),!0),Object.keys(e(oe)).length>0)){Xa();return}n(ne,!0),n(Pe,"");try{const r={};if(X.editorMode==="expert"){try{const b=hr.load(e(D));b&&typeof b=="object"&&(r.title=b.title??e(te),r.header=b)}catch{he.error(v.t("ADMIN_NEXT.PAGES.EDIT.INVALID_YAML_FRONTMATTER_FIX_SYNTAX")),n(ne,!1);return}e(U)!==(e(a).content??"")&&(r.content=e(U)),e(W)!==e(a).template&&(r.template=e(W))}else e(te)!==e(a).title&&(r.title=e(te)),e(U)!==(e(a).content??"")&&(r.content=e(U)),e(W)!==e(a).template&&(r.template=e(W));if(X.editorMode!=="expert"&&Object.keys(e(m)).length>0){const b={};for(const[g,z]of Object.entries(e(m))){const Q=g.split(".");let se=b;for(let le=0;le<Q.length-1;le++)(!se[Q[le]]||typeof se[Q[le]]!="object")&&(se[Q[le]]={}),se=se[Q[le]];se[Q[Q.length-1]]=z}r.header=b}const i=X.editorMode==="expert"&&e(a)&&(e(B)!==e(a).slug||e(Ye)!==ot(e(a).route,e(a).slug)),u=e(K).folder??xe,f=e(K).route??ie,y=!!(e(K).ordering??me),$=Xr(e(K).order===void 0?Me:e(K).order),G=Xr(Me),R=X.editorMode==="normal"&&e(a)&&(u!==xe||f!==ie||y!==me||$!==G);if(Object.keys(r).length===0&&!i&&!R){he.info(v.t("ADMIN_NEXT.NO_CHANGES"));return}if(Object.keys(r).length>0){const b=x.enabled?x.activeLang:void 0,g=await Da(e(h),r,void 0,b);g.translated_languages=g.translated_languages??e(a).translated_languages,g.untranslated_languages=g.untranslated_languages??e(a).untranslated_languages,n(a,g,!0),n(te,g.title,!0),n(U,g.content??e(U),!0),n(W,g.template,!0);const z=ot(g.route,g.slug),Q=g.order!==null&&g.order!=="";if(n(K,{header:{...g.header??{},title:g.title},content:g.content??"",folder:g.slug,name:g.template,route:z,ordering:Q,order:g.order},!0),n(m,{},!0),n(O,!1),I=JSON.parse(JSON.stringify(g.header??{})),q=g.title,fe=g.content??"",_t=g.template,xe=g.slug,ie=z,me=Q,Me=g.order,r.template)try{n(T,await Qt(g.template),!0)}catch{n(T,null)}X.editorMode==="expert"&&n(M,e(D),!0)}if(i&&e(a)){const b={parent:e(Ye)};e(B)!==e(a).slug&&(b.slug=e(B));const g=await fn(e(h),b);if(n(a,g,!0),n(te,g.title??e(te),!0),n(U,g.content??e(U),!0),n(W,g.template??e(W),!0),n(B,g.slug,!0),n(Ye,ot(g.route,g.slug),!0),n(M,e(D),!0),n(m,{},!0),n(O,!1),g.route!==e(h)){he.success(v.t("ADMIN_NEXT.PAGES.EDIT.PAGE_SAVED_AND_MOVED")),Ft.bypass();const z=g.route.startsWith("/")?g.route.slice(1):g.route;n(Ve,g.route,!0),kt(`${Gt}/pages/edit/${z}`,{replaceState:!0}),n(ne,!1);return}await xt()}if(R&&e(a)){const b={parent:f};u!==xe&&(b.slug=u),(y!==me||$!==G)&&(y?b.order=$??await Un(f):b.order=null);const g=await fn(e(h),b),z=ot(g.route,g.slug),Q=Tr(g.order);if(n(a,g,!0),n(te,g.title??e(te),!0),n(U,g.content??e(U),!0),n(W,g.template??e(W),!0),n(K,{header:{...g.header??{},title:g.title},content:g.content??"",folder:g.slug,name:g.template,route:z,ordering:Q,order:g.order},!0),n(m,{},!0),n(O,!1),xe=g.slug,ie=z,me=Q,Me=g.order,g.route!==e(h)){he.success(v.t("ADMIN_NEXT.PAGES.EDIT.PAGE_SAVED_AND_MOVED")),Ft.bypass();const se=g.route.startsWith("/")?g.route.slice(1):g.route;n(Ve,g.route,!0),kt(`${Gt}/pages/edit/${se}`,{replaceState:!0}),n(ne,!1);return}await xt()}he.success(v.t("ADMIN_NEXT.PAGES.SAVED"))}catch(r){r&&typeof r=="object"&&"message"in r?he.error(r.message):he.error(v.t("ADMIN_NEXT.PAGES.SAVE_FAILED"))}finally{n(ne,!1)}}}async function ar(r){if(e(a)){n(ne,!0),n(Bt,!1);try{const i=e(a).explicit_language_files??[];if(!!e(a).has_default_file&&r===x.defaultLang&&!i.includes(r)){await ka(e(h),r),he.success(v.t("ADMIN_NEXT.TOASTS.SAVED_AS_LANGUAGE",{language:x.getLanguageName(r)})),_e.reset(),n(m,{},!0),n(O,!1),await xt(r),x.setLanguage(r);return}const f={...e(a).header??{},title:e(te)};if(Object.keys(e(m)).length>0)for(const[y,$]of Object.entries(e(m))){const G=y.split(".");let R=f;for(let b=0;b<G.length-1;b++)(!R[G[b]]||typeof R[G[b]]!="object")&&(R[G[b]]={}),R=R[G[b]];R[G[G.length-1]]=$}await Ga(e(h),{lang:r,title:e(te),content:e(U),header:f}),he.success(v.t("ADMIN_NEXT.TOASTS.TRANSLATION_CREATED",{language:x.getLanguageName(r)})),_e.reset(),n(m,{},!0),n(O,!1),await xt(r),x.setLanguage(r)}catch(i){i&&typeof i=="object"&&"message"in i?he.error(i.message):he.error(v.t("ADMIN_NEXT.PAGES.EDIT.FAILED_TO_CREATE_TRANSLATION"))}finally{n(ne,!1)}}}let sr=F(!1),Nr=F("");function zn(r){e(a)&&(n(Nr,r,!0),n(sr,!0))}async function Vn(){n(sr,!1);const r=e(Nr),i=x.activeLang,u=x.getLanguageName(r),f=x.getLanguageName(i);n(ne,!0);try{await Oa(e(h),r,i),he.success(v.t("ADMIN_NEXT.TOASTS.TRANSLATION_RESET",{target:f,source:u})),_e.reset(),n(m,{},!0),n(O,!1),await xt(i)}catch(y){y&&typeof y=="object"&&"message"in y?he.error(y.message):he.error(v.t("ADMIN_NEXT.PAGES.EDIT.FAILED_TO_SYNC_TRANSLATION"))}finally{n(ne,!1)}}let or=F(!1),zr=F("");function Vr(r){if(e(wr)){n(zr,r,!0),n(or,!0);return}Jr(r)}function Jr(r){x.setLanguage(r),_e.reset(),n(m,{},!0),n(O,!1),xt(r)}let ir=F(!1);function Jn(){e(a)&&n(ir,!0)}async function Yn(){n(ir,!1);try{await Ma(e(h),{children:!0}),he.success(v.t("ADMIN_NEXT.PAGES.EDIT.PAGE_DELETED")),kt(`${Gt}/pages`)}catch{he.error(v.t("ADMIN_NEXT.PAGES.DELETE_FAILED"))}}let Jt=F(!1);async function Wn(){if(!(!e(a)||!e(d)||e(Jt))){n(Jt,!0);try{const r=await La(e(a));he.success(v.t("ADMIN_NEXT.PAGES.EDIT.PAGE_COPIED")),kt(`${Gt}/pages/edit${r.route}`)}catch(r){const i=r instanceof Error?r.message:String(r);he.error(v.t("ADMIN_NEXT.TOASTS.COPY_FAILED",{detail:i}))}finally{n(Jt,!1)}}}function Yr(){if(e(nr)){ar(x.activeLang);return}X.autoSaveEnabled?_e.forceSave():Br()}function Kn(r){if((r.metaKey||r.ctrlKey)&&r.key==="s"&&(r.preventDefault(),Yr()),(r.metaKey||r.ctrlKey)&&r.key==="z"&&!r.shiftKey&&X.autoSaveEnabled){const i=(document.activeElement?.tagName??"").toLowerCase();i==="input"||i==="textarea"||document.activeElement?.isContentEditable||(r.preventDefault(),_e.undo())}}ft(()=>{if(_e.reset(),e(Ve)!==null&&e(Ve)===e(h)){n(Ve,null);return}n(Ve,null),xt()}),pa(()=>{const r=Ia.subscribe("pages:update",i=>{i.id===e(h)&&(e(wr)?he.info(v.t("ADMIN_NEXT.PAGES.EDIT.PAGE_CHANGED_ELSEWHERE_SAVE_TO")):xt())},{dirtyGuard:()=>e(ne)||_e.saving});return()=>{r()}});var Wr=Lo();Sa("au8alo",r=>{ba(i=>{xa.title=i??""},[()=>v.t("ADMIN_NEXT.APP.PAGE_TITLE",{name:e(te)||v.t("ADMIN_NEXT.PAGES.EDIT.EDIT_PAGE")})])}),Ta("keydown",ya,Kn);var lr=Ie(Wr),Kr=o(lr);os(Kr,{get height(){return e(Ar)},set height(i){n(Ar,i,!0)},children:(i,u)=>{let f=()=>u?.().scrolled;var y=qs(),$=o(y),G=o($),R=o(G),b=o(R);Qa(b,{name:"arrow-back",size:16}),s(R);var g=c(R,2),z=o(g);{var Q=w=>{var Z=$s();E(w,Z)},se=w=>{var Z=Us(),ge=Ie(Z),ce=o(ge),Te=o(ce,!0);s(ce);var Se=c(ce,2);{var Ge=pe=>{{let Ce=S(()=>e(Vt)?"secondary":"default");Ya(pe,{get variant(){return e(Ce)},class:"uppercase text-[0.625rem]",children:(Ne,$e)=>{dr();var pt=Ea();Y(()=>A(pt,e(zt))),E(Ne,pt)},$$slots:{default:!0}})}};j(Se,pe=>{x.enabled&&e(zt)&&pe(Ge)})}s(ge);var je=c(ge,2);{var ue=pe=>{var Ce=Rs(),Ne=o(Ce,!0);s(Ce),Y(()=>A(Ne,e(h))),E(pe,Ce)};j(je,pe=>{f()||pe(ue)})}Y(()=>{Re(ce,1,`truncate font-semibold text-foreground transition-[font-size] duration-200 ${f()?"text-sm":"text-lg"}`),A(Te,e(te)||"Untitled")}),E(w,Z)};j(z,w=>{e(J)?w(Q):w(se,-1)})}s(g),s(G);var le=c(G,2),We=o(le);ns(We,{get hasChanges(){return e(O)},get saving(){return _e.saving},get lastSavedAt(){return _e.lastSavedAt},get autoSaveEnabled(){return X.autoSaveEnabled}});var be=c(We,2);{var H=w=>{qt(w,{variant:"outline",size:"sm",class:"px-2 lg:px-3",title:"Undo",onclick:()=>_e.undo(),children:(Z,ge)=>{var ce=Hs(),Te=Ie(ce);us(Te,{size:14}),dr(2),E(Z,ce)},$$slots:{default:!0}})};j(be,w=>{X.autoSaveEnabled&&X.autoSaveToolbarUndo&&_e.canUndo&&w(H)})}var re=c(be,2);is(re,{context:"pages",get route(){return e(h)},get lang(){return x.activeLang}});var V=c(re,2),ae=o(V);es(ae,{size:14}),s(V);var de=c(V,2),Oe=o(de);{var Ue=w=>{var Z=js();E(w,Z)},ke=w=>{var Z=Xs();E(w,Z)};j(Oe,w=>{X.pageSidebarCollapsed?w(Ue):w(ke,-1)})}s(de);var He=c(de,2);{let w=S(()=>v.t("ADMIN_NEXT.PAGES.EDIT.PREVIEW_PAGE")),Z=S(()=>e(J)||!e(a));qt(He,{variant:"outline",size:"icon",class:"h-8 w-8",get title(){return e(w)},onclick:()=>n(Je,!0),get disabled(){return e(Z)},children:(ge,ce)=>{cs(ge,{size:14})},$$slots:{default:!0}})}var ye=c(He,2);{var qe=w=>{var Z=Fs(),ge=Ie(Z);{let Te=S(()=>v.t("ADMIN_NEXT.PAGES.EDIT.COPY_PAGE")),Se=S(()=>e(J)||e(Jt)||!e(a));qt(ge,{variant:"outline",size:"icon",class:"h-8 w-8",get title(){return e(Te)},onclick:Wn,get disabled(){return e(Se)},children:(Ge,je)=>{var ue=cr(),pe=Ie(ue);{var Ce=$e=>{mn($e,{size:14,class:"animate-spin"})},Ne=$e=>{gs($e,{size:14})};j(pe,$e=>{e(Jt)?$e(Ce):$e(Ne,-1)})}E(Ge,ue)},$$slots:{default:!0}})}var ce=c(ge,2);{let Te=S(()=>v.t("ADMIN_NEXT.PAGES.EDIT.DELETE_PAGE"));qt(ce,{variant:"destructive",size:"icon",class:"h-8 w-8",get title(){return e(Te)},onclick:Jn,get disabled(){return e(J)},children:(Se,Ge)=>{ps(Se,{size:14})},$$slots:{default:!0}})}E(w,Z)};j(ye,w=>{e(d)&&w(qe)})}var it=c(ye,2);{var Et=w=>{{let Z=S(()=>e(a)?.translated_languages?Object.keys(e(a).translated_languages):void 0);Wa(w,{compact:!0,get translatedLangs(){return e(Z)},onchange:Vr})}};j(it,w=>{x.enabled&&w(Et)})}var Tt=c(it,2);{var lt=w=>{var Z=Ks(),ge=o(Z);{let Se=S(()=>e(wr)||e(nr)?"":"opacity-50 pointer-events-none"),Ge=S(()=>e(Sr).length>0?"rounded-e-none":""),je=S(()=>e(ne)?v.t("ADMIN_NEXT.SAVING"):e(nr)?v.t("ADMIN_NEXT.PAGES.EDIT.SAVE_AS_LANGUAGE",{language:x.getLanguageName(x.activeLang)}):v.t("ADMIN_NEXT.SAVE")),ue=S(()=>e(ne)||e(J)||!e(Fn));qt(ge,{size:"sm",get class(){return`px-2 lg:px-3 ${e(Se)??""} ${e(Ge)??""}`},get title(){return e(je)},onclick:Yr,get disabled(){return e(ue)},children:(pe,Ce)=>{var Ne=cr(),$e=Ie(Ne);{var pt=Xe=>{var Fe=Bs(),Ke=Ie(Fe);mn(Ke,{size:14,class:"animate-spin"});var et=c(Ke,2),dt=o(et,!0);s(et),Y(Pt=>A(dt,Pt),[()=>v.t("ADMIN_NEXT.SAVING")]),E(Xe,Fe)},It=Xe=>{var Fe=zs(),Ke=Ie(Fe);kr(Ke,{size:14});var et=c(Ke,2),dt=o(et,!0);s(et),Y(Pt=>A(dt,Pt),[()=>v.t("ADMIN_NEXT.PAGES.EDIT.SAVE_AS_LANGUAGE",{language:x.getLanguageName(x.activeLang)})]),E(Xe,Fe)},Yt=Xe=>{var Fe=Vs(),Ke=Ie(Fe);hs(Ke,{size:14});var et=c(Ke,2),dt=o(et,!0);s(et),Y(Pt=>A(dt,Pt),[()=>v.t("ADMIN_NEXT.SAVE")]),E(Xe,Fe)};j($e,Xe=>{e(ne)?Xe(pt):e(nr)?Xe(It,1):Xe(Yt,-1)})}E(pe,Ne)},$$slots:{default:!0}})}var ce=c(ge,2);{var Te=Se=>{var Ge=Ws(),je=Ie(Ge),ue=o(je);Cn(ue,{size:12}),s(je);var pe=c(je,2);{var Ce=Ne=>{var $e=Ys(),pt=Ie($e),It=c(pt,2);ur(It,21,()=>e(Sr),fr,(Yt,Xe)=>{var Fe=Js(),Ke=o(Fe);kr(Ke,{size:14,class:"text-muted-foreground"});var et=c(Ke);s(Fe),Y(dt=>A(et,` ${dt??""}`),[()=>v.t("ADMIN_NEXT.PAGES.EDIT.SAVE_AS_LANGUAGE",{language:x.getLanguageName(e(Xe))})]),ve("click",Fe,()=>ar(e(Xe))),E(Yt,Fe)}),s(It),ve("click",pt,()=>n(Bt,!1)),E(Ne,$e)};j(pe,Ne=>{e(Bt)&&Ne(Ce)})}Y(()=>je.disabled=e(ne)||e(J)),ve("click",je,()=>n(Bt,!e(Bt))),E(Se,Ge)};j(ce,Se=>{e(Sr).length>0&&Se(Te)})}s(Z),E(w,Z)};j(Tt,w=>{e(d)&&w(lt)})}s(le),s($),s(y),Y(w=>{Re(y,1,`px-6 transition-[padding] duration-200 ${f()?"py-2":"pt-6 pb-3"}`),Re($,1,`flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between sm:gap-4 ${f()?"sm:min-h-6":"sm:min-h-8"}`),Re(V,1,`inline-flex h-8 w-8 items-center justify-center rounded-md border transition-colors
|
|
${e(Ae)?"border-primary bg-primary/10 text-primary":"border-border text-muted-foreground hover:bg-accent hover:text-foreground"}`),rt(V,"title",w),rt(de,"title",X.pageSidebarCollapsed?"Show side panel":"Hide side panel"),rt(de,"aria-label",X.pageSidebarCollapsed?"Show side panel":"Hide side panel")},[()=>v.t("ADMIN_NEXT.PAGES.EDIT.TOGGLE_PAGE_NAVIGATOR")]),ve("click",R,()=>kt(`${Gt}/pages`)),ve("click",V,()=>n(Ae,!e(Ae))),ve("click",de,()=>X.pageSidebarCollapsed=!X.pageSidebarCollapsed),E(i,y)},$$slots:{default:!0}});var qr=c(Kr,2),Qr=o(qr);{var qn=r=>{ds(r,{message:"You don't have permission to view this page."})},Qn=r=>{var i=Qs(),u=o(i);fs(u,{size:16});var f=c(u);s(i),Y(()=>A(f,` ${e(Pe)??""}`)),E(r,i)};j(Qr,r=>{e(l)?r(qn):e(Pe)&&r(Qn,1)})}var Zr=c(Qr,2);{var Zn=r=>{var i=eo(),u=o(i);kr(u,{size:16,class:"shrink-0"});var f=c(u,2);cn(f,()=>v.tHtml("ADMIN_NEXT.PAGES.EDIT.FALLBACK_NOTICE",{active:x.getLanguageName(x.activeLang),effective:x.getLanguageName(e(zt))}),!0),s(f);var y=c(f,2);{var $=R=>{var b=Zs(),g=o(b,!0);s(b),Y(z=>A(g,z),[()=>v.t("ADMIN_NEXT.PAGES.EDIT.SAVE_AS_LANGUAGE",{language:x.getLanguageName(x.activeLang)})]),ve("click",b,()=>ar(x.activeLang)),E(R,b)},G=S(()=>e(a)?.untranslated_languages?.includes(x.activeLang));j(y,R=>{e(G)&&R($)})}s(i),E(r,i)};j(Zr,r=>{e(Vt)&&r(Zn)})}var ea=c(Zr,2);{var ta=r=>{var i=to(),u=o(i,!0);s(i),Y(f=>A(u,f),[()=>v.t("ADMIN_NEXT.PAGES.EDIT.LOADING_PAGE")]),E(r,i)},ra=r=>{var i=Do(),u=o(i),f=o(u);{var y=g=>{var z=so(),Q=Ie(z);ss(Q,{items:[{id:"content",label:"Content"},{id:"advanced",label:"Advanced"}],get active(){return e(nt)},onchange:be=>{n(nt,be,!0)}});var se=c(Q,2);{var le=be=>{var H=no(),re=Ie(H),V=o(re),ae=o(V);_s(ae,{size:13,class:"text-muted-foreground"});var de=c(ae,2),Oe=o(de,!0);s(de),s(V);var Ue=c(V,2);Ba(Ue,{get value(){return e(D)},onchange:w=>{n(D,w,!0),n(O,!0)},language:"yaml",minHeight:"150px",maxHeight:"500px",class:"rounded-none border-0 shadow-none"}),s(re);var ke=c(re,2);{var He=w=>{hn(w,{get ownerType(){return e(st).ownerType},get ownerName(){return e(st).ownerName}})};j(ke,w=>{e(st)&&w(He)})}var ye=c(ke,2),qe=o(ye);{var it=w=>{var Z=ro(),ge=o(Z),ce=o(ge,!0);s(ge),s(Z),Y(Te=>A(ce,Te),[()=>v.t("ADMIN_NEXT.PAGES.EDIT.CONNECTING_TO_COLLAB")]),E(w,Z)},Et=w=>{{let Z=S(()=>v.t("ADMIN_NEXT.PAGES.EDIT.WRITE_YOUR_MARKDOWN_CONTENT_HERE")),ge=S(()=>!!e(st)),ce=S(()=>e(yt)?.yText??null),Te=S(()=>e(yt)?.awareness??null);vn(w,{get value(){return e(U)},onchange:Se=>{n(U,Se,!0),Rt||n(O,!0)},get placeholder(){return e(Z)},minHeight:"400px",class:"border-0 shadow-none",get readonly(){return e(ge)},get yText(){return e(ce)},get yAwareness(){return e(Te)}})}};j(qe,w=>{e(xr)?w(it):w(Et,-1)})}s(ye);var Tt=c(ye,2),lt=o(Tt);pn(lt,{get route(){return e(h)},onMediaChange:C,get externalItems(){return e(_)}}),s(Tt),Y(w=>{A(Oe,w),Re(ye,1,`rounded-lg border border-border bg-card ${X.editorStickyToolbar&&X.editorFixedHeight<=0?"":"overflow-hidden"}`)},[()=>v.t("ADMIN_NEXT.PAGES.FRONTMATTER")]),ve("focusout",re,()=>{X.autoSaveEnabled&&e(D)!==e(M)&&_e.oncommit("expertFrontmatter",e(D),e(M))}),ve("focusout",ye,()=>{!e(st)&&X.autoSaveEnabled&&e(U)!==(e(a)?.content??"")&&_e.oncommit("content",e(U),e(a)?.content??"")}),E(be,H)},We=be=>{var H=ao(),re=o(H),V=o(re),ae=o(V),de=o(ae),Oe=o(de);dr(),s(de);var Ue=c(de,2),ke=o(Ue,!0);s(Ue),s(ae);var He=c(ae,2),ye=o(He);dn(ye),s(He),s(V);var qe=c(V,2),it=o(qe),Et=o(it),Tt=o(Et,!0);s(Et),s(it);var lt=c(it,2),w=o(lt);za(w,{field:{name:"route",type:"pages",show_root:!0,show_slug:!0},get value(){return e(Ye)},onchange:ue=>{if(n(Ye,ue,!0),n(O,!0),X.autoSaveEnabled&&e(a)){const pe=ot(e(a).route,e(a).slug);ue!==pe&&_e.oncommit("expertParent",ue,pe)}}}),s(lt),s(qe);var Z=c(qe,2),ge=o(Z),ce=o(ge),Te=o(ce);dr(),s(ce);var Se=c(ce,2);cn(Se,()=>v.t("PLUGIN_ADMIN.PAGE_FILE_HELP"),!0),s(Se),s(ge);var Ge=c(ge,2),je=o(Ge);Va(je,{field:{name:"name",type:"select",data_options:"\\Grav\\Plugin\\AdminPlugin::pagesTypes",validate:{required:!0}},get value(){return e(W)},onchange:ue=>{const pe=e(W);n(W,ue,!0),n(K,{...e(K),name:ue},!0),Qt(ue).then(Ce=>{n(T,Ce,!0)}).catch(()=>{n(T,null)}),X.autoSaveEnabled&&ue!==e(a)?.template&&_e.oncommit("template",ue,pe)}}),s(Ge),s(Z),s(re),s(H),Y((ue,pe,Ce,Ne)=>{A(Oe,`${ue??""} `),A(ke,pe),Aa(ye,e(B)),A(Tt,Ce),A(Te,`${Ne??""} `)},[()=>v.t("ADMIN_NEXT.PAGES.EDIT.FOLDER_NAME"),()=>v.t("ADMIN_NEXT.PAGES.EDIT.THE_FOLDER_NAME_ON_DISK_URL_SLUG"),()=>v.t("PLUGIN_ADMIN.PARENT"),()=>v.t("PLUGIN_ADMIN.PAGE_FILE")]),ve("input",ye,ue=>{n(B,ue.target.value.toLowerCase().replace(/\s/g,"-").replace(/[^a-z0-9_\-]/g,""),!0),n(O,!0)}),ve("focusout",ye,()=>{X.autoSaveEnabled&&e(B)&&e(B)!==e(a)?.slug&&_e.oncommit("expertSlug",e(B),e(a)?.slug)}),E(be,H)};j(se,be=>{e(nt)==="content"?be(le):e(nt)==="advanced"&&be(We,1)})}E(g,z)},$=g=>{var z=cr(),Q=Ie(z);ys(Q,()=>e(T).name,se=>{Ja(se,{get fields(){return e(T).fields},get data(){return e(K)},onchange:Fr,get oncommit(){return _e.oncommit},get errors(){return e(oe)}})}),E(g,z)},G=g=>{var z=io(),Q=Ie(z),se=o(Q),le=c(o(se),2);dn(le),s(se),s(Q);var We=c(Q,2);{var be=ae=>{hn(ae,{get ownerType(){return e(st).ownerType},get ownerName(){return e(st).ownerName}})};j(We,ae=>{e(st)&&ae(be)})}var H=c(We,2);{var re=ae=>{var de=oo(),Oe=o(de),Ue=o(Oe,!0);s(Oe),s(de),Y(ke=>A(Ue,ke),[()=>v.t("ADMIN_NEXT.PAGES.EDIT.CONNECTING_TO_COLLAB")]),E(ae,de)},V=ae=>{{let de=S(()=>v.t("ADMIN_NEXT.PAGES.EDIT.WRITE_YOUR_MARKDOWN_CONTENT_HERE")),Oe=S(()=>!!e(st)),Ue=S(()=>e(yt)?.yText??null),ke=S(()=>e(yt)?.awareness??null);vn(ae,{get value(){return e(U)},onchange:He=>{n(U,He,!0),Rt||n(O,!0)},get placeholder(){return e(de)},minHeight:"400px",get readonly(){return e(Oe)},get yText(){return e(Ue)},get yAwareness(){return e(ke)}})}};j(H,ae=>{e(xr)?ae(re):ae(V,-1)})}Na(le,()=>e(te),ae=>n(te,ae)),E(g,z)};j(f,g=>{X.editorMode==="expert"?g(y):e(T)?g($,1):g(G,-1)})}s(u);var R=c(u,2);{var b=g=>{var z=Po(),Q=o(z),se=o(Q),le=o(se),We=o(le,!0);s(le);var be=c(le,2),H=o(be),re=o(H),V=o(re);{var ae=N=>{var k=lo();E(N,k)},de=N=>{var k=co();E(N,k)};j(V,N=>{e(a).published?N(ae):N(de,-1)})}var Oe=c(V);s(re);var Ue=c(re,2),ke=o(Ue,!0);s(Ue),s(H);var He=c(H,2),ye=o(He),qe=o(ye);{var it=N=>{var k=uo();E(N,k)},Et=N=>{var k=fo();E(N,k)};j(qe,N=>{e(a).visible?N(it):N(Et,-1)})}var Tt=c(qe);s(ye);var lt=c(ye,2),w=o(lt,!0);s(lt),s(He);var Z=c(He,2);{var ge=N=>{var k=go(),ee=o(k),Le=o(ee,!0);s(ee);var we=c(ee,2),Qe=o(we,!0);s(we),s(k),Y(ht=>{A(Le,ht),Re(we,1,`font-medium ${e(a).routable?"text-foreground":"text-muted-foreground"}`),A(Qe,e(a).routable?"Yes":"No")},[()=>v.t("ADMIN_NEXT.PAGES.INFO_ROUTABLE")]),E(N,k)};j(Z,N=>{e(a).routable!==void 0&&N(ge)})}var ce=c(Z,4),Te=c(o(ce),2),Se=o(Te,!0);s(Te),s(ce);var Ge=c(ce,2),je=c(o(Ge),2),ue=o(je,!0);s(je),s(Ge);var pe=c(Ge,2);{var Ce=N=>{var k=po(),ee=c(o(k),2),Le=o(ee,!0);s(ee),s(k),Y(()=>{rt(ee,"title",e(a).folder),A(Le,e(a).folder)}),E(N,k)};j(pe,N=>{e(a).folder&&N(Ce)})}var Ne=c(pe,2),$e=o(Ne),pt=o($e,!0);s($e);var It=c($e,2),Yt=o(It,!0);s(It),s(Ne);var Xe=c(Ne,2);{var Fe=N=>{var k=vo(),ee=o(k),Le=o(ee,!0);s(ee);var we=c(ee,2),Qe=o(we,!0),ht=c(Qe);{var wt=Dt=>{var Mt=ho(),Dr=o(Mt,!0);s(Mt),Y(Mr=>A(Dr,Mr),[()=>v.t("ADMIN_NEXT.PAGES.EDIT.FALLBACK")]),E(Dt,Mt)};j(ht,Dt=>{e(Vt)&&Dt(wt)})}s(we),s(k),Y((Dt,Mt)=>{A(Le,Dt),A(Qe,Mt)},[()=>v.t("ADMIN_NEXT.PAGES.INFO_LANGUAGE"),()=>e(zt)?.toUpperCase()]),E(N,k)};j(Xe,N=>{x.enabled&&N(Fe)})}var Ke=c(Xe,2);{var et=N=>{var k=mo(),ee=c(o(k),2),Le=o(ee,!0);s(ee),s(k),Y(()=>A(Le,e(a).order)),E(N,k)};j(Ke,N=>{e(a).order&&N(et)})}var dt=c(Ke,4);{var Pt=N=>{var k=_o(),ee=c(o(k),2),Le=o(ee,!0);s(ee),s(k),Y(we=>A(Le,we),[()=>new Date(e(a).date).toLocaleDateString()]),E(N,k)};j(dt,N=>{e(a).date&&N(Pt)})}var Ir=c(dt,2),Pr=o(Ir),oa=o(Pr,!0);s(Pr);var sn=c(Pr,2),ia=o(sn,!0);s(sn),s(Ir);var on=c(Ir,2);{var la=N=>{var k=bo(),ee=o(k),Le=o(ee,!0);s(ee);var we=c(ee,2),Qe=o(we,!0);s(we),s(k),Y((ht,wt)=>{A(Le,ht),A(Qe,wt)},[()=>v.t("ADMIN_NEXT.PAGES.EDIT.PUBLISH_ON"),()=>new Date(e(a).header.publish_date).toLocaleString()]),E(N,k)};j(on,N=>{e(a).header?.publish_date&&N(la)})}var da=c(on,2);{var ca=N=>{var k=yo(),ee=o(k),Le=o(ee,!0);s(ee);var we=c(ee,2),Qe=o(we,!0);s(we),s(k),Y((ht,wt)=>{A(Le,ht),A(Qe,wt)},[()=>v.t("ADMIN_NEXT.PAGES.EDIT.UNPUBLISH_ON"),()=>new Date(e(a).header.unpublish_date).toLocaleString()]),E(N,k)};j(da,N=>{e(a).header?.unpublish_date&&N(ca)})}s(be),s(se);var ln=c(se,2);{var ua=N=>{var k=No(),ee=o(k),Le=o(ee,!0);s(ee);var we=c(ee,2),Qe=o(we);{var ht=Ze=>{var At=cr(),vt=Ie(At);ur(vt,17,()=>Object.keys(e(a).translated_languages),fr,(Wt,ct)=>{var Be=Eo(),tt=o(Be),at=o(tt,!0);s(tt);var ut=c(tt),Kt=c(ut);{var Ut=mt=>{var Lr=xo();E(mt,Lr)};j(Kt,mt=>{e(ct)===x.activeLang&&mt(Ut)})}s(Be),Y(mt=>{Re(Be,1,`flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-start text-[0.8125rem] transition-colors
|
|
${e(ct)===x.activeLang?"bg-accent font-medium text-accent-foreground":"text-foreground hover:bg-accent/50"}`),Re(tt,1,`inline-flex h-5 shrink-0 items-center justify-center whitespace-nowrap rounded px-[2px] text-[0.625rem] font-bold uppercase
|
|
${e(ct)===x.activeLang?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground"}`),A(at,e(ct)),A(ut,` ${mt??""} `)},[()=>x.getLanguageName(e(ct))]),ve("click",Be,()=>Vr(e(ct))),E(Wt,Be)}),E(Ze,At)};j(Qe,Ze=>{e(a).translated_languages&&Ze(ht)})}var wt=c(Qe,2);{var Dt=Ze=>{var At=wo(),vt=c(Ie(At),2),Wt=o(vt,!0);s(vt);var ct=c(vt,2);ur(ct,17,()=>e(a).untranslated_languages,fr,(Be,tt)=>{var at=To(),ut=o(at),Kt=o(ut,!0);s(ut);var Ut=c(ut,2),mt=o(Ut,!0);s(Ut),s(at),Y(Lr=>{A(Kt,e(tt)),A(mt,Lr)},[()=>v.t("ADMIN_NEXT.PAGES.EDIT.CREATE_LANGUAGE",{language:x.getLanguageName(e(tt))})]),ve("click",at,()=>ar(e(tt))),E(Be,at)}),Y(Be=>A(Wt,Be),[()=>v.t("ADMIN_NEXT.PAGES.EDIT.NOT_TRANSLATED")]),E(Ze,At)};j(wt,Ze=>{e(a).untranslated_languages&&e(a).untranslated_languages.length>0&&Ze(Dt)})}var Mt=c(wt,2);{var Dr=Ze=>{var At=So(),vt=c(Ie(At),2),Wt=o(vt,!0);s(vt);var ct=c(vt,2);ur(ct,17,()=>Object.keys(e(a).translated_languages).filter(Be=>Be!==x.activeLang),fr,(Be,tt)=>{var at=Ao(),ut=o(at),Kt=o(ut,!0);s(ut);var Ut=c(ut);s(at),Y(mt=>{A(Kt,e(tt)),A(Ut,` ${mt??""}`)},[()=>v.t("ADMIN_NEXT.PAGES.EDIT.RESET_FROM",{language:x.getLanguageName(e(tt))})]),ve("click",at,()=>zn(e(tt))),E(Be,at)}),Y(Be=>A(Wt,Be),[()=>v.t("ADMIN_NEXT.PAGES.EDIT.RESET_CONTENT_FROM")]),E(Ze,At)},Mr=S(()=>!x.isDefault&&e(a).translated_languages&&Object.keys(e(a).translated_languages).length>1);j(Mt,Ze=>{e(Mr)&&Ze(Dr)})}s(we),s(k),Y(Ze=>A(Le,Ze),[()=>v.t("ADMIN_NEXT.LANG.TRANSLATIONS")]),E(N,k)};j(ln,N=>{x.enabled&&(e(a).translated_languages||e(a).untranslated_languages)&&N(ua)})}var fa=c(ln,2);{var ga=N=>{var k=Io(),ee=o(k);pn(ee,{get route(){return e(h)},onMediaChange:C,get externalItems(){return e(_)}}),s(k),E(N,k)};j(fa,N=>{!e(T)&&X.editorMode!=="expert"&&N(ga)})}s(Q),s(z),Y((N,k,ee,Le,we,Qe)=>{A(We,N),A(Oe,` ${k??""}`),Re(Ue,1,`font-medium ${e(a).published?"text-emerald-500":"text-muted-foreground"}`),A(ke,e(a).published?"Yes":"No"),A(Tt,` ${ee??""}`),Re(lt,1,`font-medium ${e(a).visible?"text-primary":"text-muted-foreground"}`),A(w,e(a).visible?"Yes":"No"),rt(Te,"title",e(a).route),A(Se,e(a).route),A(ue,e(a).slug),A(pt,Le),A(Yt,e(a).template),A(oa,we),A(ia,Qe)},[()=>v.t("ADMIN_NEXT.PAGES.PAGE_INFO"),()=>v.t("ADMIN_NEXT.PAGES.PUBLISHED"),()=>v.t("ADMIN_NEXT.PAGES.INFO_VISIBLE"),()=>v.t("ADMIN_NEXT.PAGES.HEADER_TEMPLATE"),()=>v.t("ADMIN_NEXT.PAGES.HEADER_MODIFIED"),()=>new Date(e(a).modified).toLocaleString()]),E(g,z)};j(R,g=>{X.pageSidebarCollapsed||g(b)})}s(i),Y(()=>Re(i,1,`grid grid-cols-1 gap-4 ${X.pageSidebarCollapsed?"lg:grid-cols-1":"lg:grid-cols-[minmax(0,1fr)_280px]"}`)),E(r,i)};j(ea,r=>{e(J)?r(ta):e(a)&&r(ra,1)})}s(qr),s(lr);var en=c(lr,2);{let r=S(()=>v.t("ADMIN_NEXT.PAGES.EDIT.DELETE_PAGE")),i=S(()=>`Delete "${e(a)?.title}" at ${e(h)}? This cannot be undone.`);vr(en,{get open(){return e(ir)},get title(){return e(r)},get message(){return e(i)},confirmLabel:"Delete",variant:"destructive",onconfirm:Yn,oncancel:()=>{n(ir,!1)}})}var tn=c(en,2);{let r=S(()=>v.t("ADMIN_NEXT.UNSAVED_CHANGES"));vr(tn,{get open(){return Ft.showModal},get title(){return e(r)},message:"You have unsaved changes. Leave anyway?",confirmLabel:"Leave",cancelLabel:"Stay",get onconfirm(){return Ft.confirm},get oncancel(){return Ft.cancel}})}var rn=c(tn,2);{let r=S(()=>v.t("ADMIN_NEXT.PAGES.EDIT.RESET_TRANSLATION")),i=S(()=>`This will overwrite all ${x.getLanguageName(x.activeLang)} content and header fields with the ${x.getLanguageName(e(Nr))} version. You can then re-translate the content.`);vr(rn,{get open(){return e(sr)},get title(){return e(r)},get message(){return e(i)},confirmLabel:"Reset",variant:"destructive",onconfirm:Vn,oncancel:()=>{n(sr,!1)}})}var nn=c(rn,2);{let r=S(()=>v.t("ADMIN_NEXT.UNSAVED_CHANGES"));vr(nn,{get open(){return e(or)},get title(){return e(r)},message:"You have unsaved changes. Switch language anyway?",confirmLabel:"Switch",onconfirm:()=>{n(or,!1),Jr(e(zr))},oncancel:()=>{n(or,!1)}})}var an=c(nn,2);{var na=r=>{var i=Mo(),u=o(i),f=o(u),y=o(f),$=o(y),G=o($,!0);s($);var R=c($,2),b=o(R,!0);s(R),s(y);var g=c(y,2),z=o(g),Q=o(z);vs(Q,{size:13});var se=c(Q);s(z);var le=c(z,2),We=o(le);ms(We,{size:16}),s(le),s(g),s(f);var be=c(f,2),H=o(be);s(be),s(u),s(i),Y((re,V,ae)=>{A(G,re),A(b,e(gt)),rt(z,"href",e(gt)),A(se,` ${V??""}`),rt(H,"src",e(gt)),rt(H,"title",ae)},[()=>v.t("ADMIN_NEXT.PAGES.EDIT.PAGE_PREVIEW"),()=>v.t("ADMIN_NEXT.PAGES.EDIT.OPEN_IN_NEW_TAB"),()=>v.t("ADMIN_NEXT.PAGES.EDIT.PAGE_PREVIEW")]),ve("click",i,re=>{re.target===re.currentTarget&&n(Je,!1)}),ve("click",le,()=>n(Je,!1)),E(r,i)};j(an,r=>{e(Je)&&e(gt)&&r(na)})}var aa=c(an,2);{var sa=r=>{Es(r,{get route(){return e(h)},get hasChildren(){return e(a).has_children}})};j(aa,r=>{e(Ae)&&e(a)&&r(sa)})}Y(()=>In(lr,`--sticky-header-height: ${e(Ar)??""}px`)),E(p,Wr),An()}Nn(["click","focusout","input"]);export{Ai as component};
|