graview 0.1.60 → 0.1.61
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/preview/{chunk.ERFT54HT.js → chunk.2AWVQ5SW.js} +1 -1
- package/dist/preview/{chunk.LQVAABPS.js → chunk.2LNSENPV.js} +1 -1
- package/dist/preview/chunk.2QFKNTAZ.js +1 -0
- package/dist/preview/{chunk.ZXOT3IXJ.js → chunk.2WZAFKJ2.js} +1 -1
- package/dist/preview/{chunk.VZJWJ5XM.js → chunk.2XSIJH5J.js} +1 -1
- package/dist/preview/{chunk.GNBIVVL3.js → chunk.3FUUYYR5.js} +1 -1
- package/dist/preview/{chunk.NHUQ2N6J.js → chunk.3HFUO3DC.js} +1 -1
- package/dist/preview/chunk.3ICWPRRJ.js +1 -0
- package/dist/preview/{chunk.XR6YR6RV.js → chunk.3RW677X6.js} +1 -1
- package/dist/preview/{chunk.FBJARKDT.js → chunk.3SMNWZ3M.js} +1 -1
- package/dist/preview/{chunk.JPONLMU7.js → chunk.4G32374Q.js} +1 -1
- package/dist/preview/{chunk.IGJZ4UH3.js → chunk.4LG34OC2.js} +2 -2
- package/dist/preview/{chunk.3ZT5WQYL.js → chunk.4OEWFPH3.js} +1 -1
- package/dist/preview/{chunk.UITT6JWW.js → chunk.4STDIZVI.js} +1 -1
- package/dist/preview/{chunk.ZP5RT2EK.js → chunk.5POG3G2C.js} +1 -1
- package/dist/preview/{chunk.ULL6ZIJJ.js → chunk.5S7IGASX.js} +1 -1
- package/dist/preview/chunk.5T53SF2K.js +1 -0
- package/dist/preview/{chunk.3MOJF7BA.js → chunk.5X22RKB3.js} +1 -1
- package/dist/preview/{chunk.LSY256J4.js → chunk.65KFZV3A.js} +1 -1
- package/dist/preview/chunk.66IKLMYX.js +104 -0
- package/dist/preview/chunk.6DOOLVT4.js +1 -0
- package/dist/preview/{chunk.TLJOZSDD.js → chunk.6HZY5NRX.js} +1 -1
- package/dist/preview/{chunk.RQOX5YDW.js → chunk.6SO64TUI.js} +1 -1
- package/dist/preview/{chunk.2USDHXB4.js → chunk.6VLCMBRE.js} +1 -1
- package/dist/preview/{chunk.ENL2JJ47.js → chunk.747OH3EE.js} +1 -1
- package/dist/preview/chunk.7CETF4A6.js +1 -0
- package/dist/preview/{chunk.MVWC3VR3.js → chunk.7LZ6JDJA.js} +2 -2
- package/dist/preview/{chunk.PI44XMY2.js → chunk.7R727IKU.js} +1 -1
- package/dist/preview/chunk.A2ZQASQV.js +1 -0
- package/dist/preview/chunk.AVFOTYZR.js +74 -0
- package/dist/preview/{chunk.VUBNBTJP.js → chunk.BDTT4ENI.js} +2 -2
- package/dist/preview/{chunk.SB2PZKN5.js → chunk.BFDJTWGX.js} +1 -1
- package/dist/preview/{chunk.6ZQAR5ZA.js → chunk.BI6DS3PZ.js} +1 -1
- package/dist/preview/{chunk.KI37ZEV3.js → chunk.BJI2C3IZ.js} +1 -1
- package/dist/preview/{chunk.YFSBVZTG.js → chunk.C634A6ZC.js} +1 -1
- package/dist/preview/{chunk.ZYM2SSGW.js → chunk.CRCJ3TAG.js} +1 -1
- package/dist/preview/{chunk.WXUFATY5.js → chunk.CUTLO6DA.js} +1 -1
- package/dist/preview/chunk.D4TA5XDC.js +4 -0
- package/dist/preview/{chunk.HDUO2USQ.js → chunk.D5Q64GA4.js} +1 -1
- package/dist/preview/{chunk.RXYNW5QB.js → chunk.DHJI7LIW.js} +1 -1
- package/dist/preview/{chunk.6HF6POIX.js → chunk.DHY7KOBV.js} +1 -1
- package/dist/preview/chunk.DKXVEVDG.js +1 -0
- package/dist/preview/{chunk.NC7FXY2H.js → chunk.DLDP6OWD.js} +1 -1
- package/dist/preview/{chunk.H45Q3O4F.js → chunk.DP5DUV6F.js} +1 -1
- package/dist/preview/chunk.DXWTM4SH.js +1 -0
- package/dist/preview/{chunk.BQIHNT7C.js → chunk.E6RNMWFN.js} +1 -1
- package/dist/preview/{chunk.A3ZXDG6V.js → chunk.E7UDVC4V.js} +1 -1
- package/dist/preview/{chunk.M4UD4ARP.js → chunk.EN2ABVIP.js} +1 -1
- package/dist/preview/{chunk.7MHCGVGM.js → chunk.EVEHSENK.js} +1 -1
- package/dist/preview/{chunk.SRVQJZRT.js → chunk.F4VHCQNP.js} +1 -1
- package/dist/preview/{chunk.4TCKEG6I.js → chunk.F7IQ4B6A.js} +1 -1
- package/dist/preview/chunk.F7PIW2EM.js +5 -0
- package/dist/preview/{chunk.GTKJJYQH.js → chunk.FJIXSGYU.js} +1 -1
- package/dist/preview/{chunk.HDP3PS7N.js → chunk.FWUG7Y6C.js} +1 -1
- package/dist/preview/chunk.G4VMRYS4.js +1 -0
- package/dist/preview/{chunk.URWAFZHF.js → chunk.GI6XQF5X.js} +1 -1
- package/dist/preview/{chunk.Y5C4RXG7.js → chunk.GIW657OR.js} +1 -1
- package/dist/preview/chunk.GPWYWALF.js +1 -0
- package/dist/preview/{chunk.YZ7FUKAL.js → chunk.GQNSNJTJ.js} +1 -1
- package/dist/preview/chunk.HGVBGSRS.js +6 -0
- package/dist/preview/{chunk.VNDKKTED.js → chunk.HOQMD6WQ.js} +1 -1
- package/dist/preview/{chunk.TKVLNBRD.js → chunk.HQNE4I4M.js} +1 -1
- package/dist/preview/{chunk.A5PDXNY6.js → chunk.HZHNM2KI.js} +1 -1
- package/dist/preview/{chunk.TAT2IQUR.js → chunk.IA5ZBMRD.js} +1 -1
- package/dist/preview/{chunk.VFOON3Z3.js → chunk.ISRQQVS4.js} +1 -1
- package/dist/preview/{chunk.T7LQD67N.js → chunk.ISXNAFRC.js} +2 -2
- package/dist/preview/{chunk.QBLKTFF4.js → chunk.JEQO24GS.js} +1 -1
- package/dist/preview/{chunk.VWJGQDCE.js → chunk.JHAFQNGC.js} +1 -1
- package/dist/preview/chunk.JU3BCCQM.js +1 -0
- package/dist/preview/{chunk.5DD62IOW.js → chunk.K2AC536Q.js} +2 -2
- package/dist/preview/chunk.K3UOXAZS.js +1 -0
- package/dist/preview/{chunk.CC5BJH5A.js → chunk.KRFRREEW.js} +1 -1
- package/dist/preview/chunk.LA2DMHZC.js +1 -0
- package/dist/preview/chunk.LQAT7FA6.js +3 -0
- package/dist/preview/{chunk.UJTE7UAP.js → chunk.LTI5PKTS.js} +1 -1
- package/dist/preview/chunk.MBP7VDYM.js +1 -0
- package/dist/preview/{chunk.EL5ICOOM.js → chunk.MBPOYZ3J.js} +1 -1
- package/dist/preview/chunk.MBU7UH6J.js +1 -0
- package/dist/preview/chunk.MH6CCHEX.js +1 -0
- package/dist/preview/{chunk.DCHQHKSA.js → chunk.MK72IRIY.js} +1 -1
- package/dist/preview/{chunk.VMV464JK.js → chunk.MNRTA2CB.js} +1 -1
- package/dist/preview/chunk.MU3XII7I.js +1 -0
- package/dist/preview/chunk.MYVED5LU.js +1 -0
- package/dist/preview/chunk.N5WDQAIM.js +5 -0
- package/dist/preview/{chunk.4MP72LPR.js → chunk.N7T7VB77.js} +1 -1
- package/dist/preview/{chunk.QHDCTAD7.js → chunk.NUEPFPRA.js} +1 -1
- package/dist/preview/chunk.ODVRO2BJ.js +1 -0
- package/dist/preview/{chunk.5YOLUDVO.js → chunk.OVPFROL3.js} +1 -1
- package/dist/preview/{chunk.W3W54DSX.js → chunk.PGA5TUSN.js} +1 -1
- package/dist/preview/{chunk.TLWT67ON.js → chunk.PJ5AO7CK.js} +1 -1
- package/dist/preview/{chunk.TFWIG6LL.js → chunk.PYVWGTQS.js} +1 -1
- package/dist/preview/{chunk.7OPM55I2.js → chunk.PZXTSWDH.js} +1 -1
- package/dist/preview/chunk.Q5I5M3FR.js +1 -0
- package/dist/preview/chunk.QATUGE34.js +1 -0
- package/dist/preview/{chunk.PFSYXD6Q.js → chunk.QL77K3D4.js} +1 -1
- package/dist/preview/{chunk.7N32AVIJ.js → chunk.R3N73BJO.js} +1 -1
- package/dist/preview/{chunk.P6RORYOT.js → chunk.R5547CJ7.js} +1 -1
- package/dist/preview/chunk.REH6RXNH.js +1 -0
- package/dist/preview/{chunk.UQWTZJBV.js → chunk.RZ5PPQBV.js} +1 -1
- package/dist/preview/{chunk.QDSEVPF3.js → chunk.SAYAFOF6.js} +1 -1
- package/dist/preview/{chunk.FRYBMS3W.js → chunk.SBLYBRDU.js} +1 -1
- package/dist/preview/{chunk.YH63KQ2G.js → chunk.SCGF4ZPP.js} +1 -1
- package/dist/preview/{chunk.HUJ6YTWE.js → chunk.SIYBHZDD.js} +1 -1
- package/dist/preview/{chunk.KDRLUBVF.js → chunk.SJALH7IX.js} +1 -1
- package/dist/preview/{chunk.F6V7RWDK.js → chunk.SKQO467Y.js} +1 -1
- package/dist/preview/chunk.SLAZFFCQ.js +1 -0
- package/dist/preview/chunk.SLPJWOKC.js +1 -0
- package/dist/preview/{chunk.JEYQBH33.js → chunk.TKLYUVMR.js} +1 -1
- package/dist/preview/chunk.TMAZNDA6.js +1 -0
- package/dist/preview/{chunk.IGVASEZU.js → chunk.U2ISOUM2.js} +1 -1
- package/dist/preview/{chunk.VADQ7ZGA.js → chunk.U3JK2DNC.js} +1 -1
- package/dist/preview/chunk.U5P23GO7.js +1 -0
- package/dist/preview/{chunk.KBVTLNS5.js → chunk.UACSX64H.js} +3 -3
- package/dist/preview/{chunk.Z2ERZ4S6.js → chunk.ULHB3RYK.js} +1 -1
- package/dist/preview/{chunk.MSWWWLEA.js → chunk.UO544PZH.js} +1 -1
- package/dist/preview/{chunk.Y7G3OGDE.js → chunk.UXOBUK3C.js} +1 -1
- package/dist/preview/{chunk.BRT27WON.js → chunk.VKHAAH32.js} +1 -1
- package/dist/preview/{chunk.3XGA65Y3.js → chunk.VN7I7XIO.js} +1 -1
- package/dist/preview/{chunk.CFKZXLXS.js → chunk.VOOOIECX.js} +1 -1
- package/dist/preview/chunk.VS6NT5C4.js +1 -0
- package/dist/preview/{chunk.67U6M7OV.js → chunk.VUAOCYG2.js} +1 -1
- package/dist/preview/{chunk.PNW5K7BW.js → chunk.VX65S2FA.js} +1 -1
- package/dist/preview/{chunk.VDMDPZ6U.js → chunk.VYFMUCBT.js} +1 -1
- package/dist/preview/{chunk.FFTYMBBT.js → chunk.W5TVQYAI.js} +1 -1
- package/dist/preview/{chunk.OLFJH4RK.js → chunk.WD4VPMEE.js} +1 -1
- package/dist/preview/{chunk.BXDM3UMN.js → chunk.WICFQROI.js} +1 -1
- package/dist/preview/{chunk.NGTRL5U4.js → chunk.WS7LAT4Z.js} +1 -1
- package/dist/preview/{chunk.IHBUBZQT.js → chunk.X2I3XH2E.js} +1 -1
- package/dist/preview/{chunk.6WHAWOO7.js → chunk.XFSGB6EU.js} +1 -1
- package/dist/preview/{chunk.XGASJAV2.js → chunk.XWWSW3ZV.js} +1 -1
- package/dist/preview/chunk.XZUHFXME.js +1 -0
- package/dist/preview/{chunk.CQT3W2SF.js → chunk.XZWXDQ3N.js} +1 -1
- package/dist/preview/{chunk.IOK4GVJC.js → chunk.Y7H5O2SL.js} +1 -1
- package/dist/preview/chunk.YGIJDHAV.js +2 -0
- package/dist/preview/{chunk.3V4WP7RY.js → chunk.YOT7ESDG.js} +3 -3
- package/dist/preview/{chunk.MJVYWLQQ.js → chunk.ZC3FRCJQ.js} +1 -1
- package/dist/preview/{chunk.AVBTPSQF.js → chunk.ZJCM62GH.js} +1 -1
- package/dist/preview/{chunk.4LR64TPU.js → chunk.ZKAZA6UJ.js} +1 -1
- package/dist/preview/{chunk.3UOKUF5Z.js → chunk.ZQHCNFJK.js} +1 -1
- package/dist/preview/{chunk.6C2MHWSX.js → chunk.ZVG3DR5G.js} +1 -1
- package/dist/preview/chunk.ZYNUMVEC.js +1 -0
- package/dist/preview/index.html +50 -50
- package/dist/preview/page.js +2 -2
- package/package.json +6 -6
- package/dist/preview/chunk.2K4TT2BV.js +0 -1
- package/dist/preview/chunk.37TVS7CA.js +0 -1
- package/dist/preview/chunk.3IZ3ABII.js +0 -1
- package/dist/preview/chunk.7TFLRR7D.js +0 -1
- package/dist/preview/chunk.7VKSXGTX.js +0 -1
- package/dist/preview/chunk.BF6S5UE4.js +0 -1
- package/dist/preview/chunk.BLPYNNR4.js +0 -1
- package/dist/preview/chunk.BYKD5RLA.js +0 -1
- package/dist/preview/chunk.C7OLSEWK.js +0 -1
- package/dist/preview/chunk.CMN6BBAD.js +0 -1
- package/dist/preview/chunk.D7YSL3NK.js +0 -2
- package/dist/preview/chunk.EQXB7LKI.js +0 -1
- package/dist/preview/chunk.FLUK3UXF.js +0 -1
- package/dist/preview/chunk.G3R4BTI7.js +0 -1
- package/dist/preview/chunk.G4YJPKRG.js +0 -5
- package/dist/preview/chunk.GLWSVSQL.js +0 -1
- package/dist/preview/chunk.I4XQBQRC.js +0 -1
- package/dist/preview/chunk.IBOKXVWN.js +0 -1
- package/dist/preview/chunk.JJGCTGWA.js +0 -1
- package/dist/preview/chunk.KGW75Z5L.js +0 -3
- package/dist/preview/chunk.L6AWE76F.js +0 -1
- package/dist/preview/chunk.LGEA5257.js +0 -6
- package/dist/preview/chunk.LLYRFVIN.js +0 -104
- package/dist/preview/chunk.LZIBQ3VX.js +0 -1
- package/dist/preview/chunk.MDJWK5W2.js +0 -1
- package/dist/preview/chunk.PHJ6WPWH.js +0 -1
- package/dist/preview/chunk.QFUMFQJU.js +0 -1
- package/dist/preview/chunk.QI4SLPQ4.js +0 -4
- package/dist/preview/chunk.TY4GQJKC.js +0 -1
- package/dist/preview/chunk.VSCIXAHN.js +0 -5
- package/dist/preview/chunk.WC3DENU4.js +0 -67
- package/dist/preview/chunk.WQ6RCEUQ.js +0 -1
- package/dist/preview/chunk.X6A4VSSD.js +0 -1
- package/dist/preview/chunk.XZPKBHJT.js +0 -1
- package/dist/preview/chunk.YEBGI6ED.js +0 -1
package/dist/preview/page.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{a as co}from"./chunk.HUJ6YTWE.js";import{a as qt,b as hr,c as yr,d as gr,e as zt,f as wr,g as vr,h as br,i as Sr,j as kr,k as Pr,l as Ar,m as Er,n as Ze}from"./chunk.JJGCTGWA.js";import{b as mr}from"./chunk.XR6YR6RV.js";import{a as It,b as cr,c as lr,d as ur,e as fr,f as _t,g as pr,h as jt}from"./chunk.NHUQ2N6J.js";import{a as Ot,g as $n}from"./chunk.7TFLRR7D.js";import{k as ct}from"./chunk.KGW75Z5L.js";import{E as ir,I as sr,J as dr,h as tr,k as Nt,l as nr,n as rr,r as or,w as Wt,z as ar}from"./chunk.WC3DENU4.js";import{c as so}from"./chunk.VNDKKTED.js";import{Aa as Jn,Ca as Yn,Da as Qn,Fa as Zn,G as $t,Ga as Bt,Ka as Xn,La as er,Oa as ft,T as Wn,Z as In,a as Bn,b as lt,c as ut,ga as _n,ha as jn,j as Nn,m as Dt,va as qn,wa as zn,xa as Gn,ya as Un,za as Kn}from"./chunk.4MP72LPR.js";import{a as Re}from"./chunk.SDO3U72B.js";import{$d as Mt,Eb as Rn,Gb as Tn,Td as Ee,Ud as Hn,Vd as Vn,_d as Lt,ae as Ht,de as Dn,ee as Vt,fb as je,ld as Fn,md as On,nc as Ct,oc as xn,qb as st,rd as Cn,td as Ln,ud as Mn,vb as En,wd as dt}from"./chunk.VSCIXAHN.js";import"./chunk.FQLNBIQ5.js";import{b as Me}from"./chunk.AJZBJBMO.js";function Gt(e){if(Array.isArray(e))return e.map(Gt);if(e&&typeof e=="object"){let n={};for(let o of Object.keys(e).sort()){let i=e[o];i!==void 0&&(n[o]=Gt(i))}return n}return e}function Ut(e){return JSON.stringify(Gt(e))??"undefined"}async function pt(e,n={}){let o=e.compiled===void 0||!uo(e.compiled,e.document)?void 0:$n(e.compiled,n);if(o?.ok)return o;let{compileDocumentWithoutCheck:i}=await lo();return i(e.document,n)}var Rr,lo=()=>Rr??=(__graviewPreload(import.meta.url,["./chunk.7TFLRR7D.js","./chunk.6ZQAR5ZA.js","./chunk.PI44XMY2.js","./chunk.KGW75Z5L.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.C7OLSEWK.js")).catch(e=>{throw Rr=void 0,e});function uo(e,n){let o=typeof e=="object"&&e!==null?e.document:void 0,i=n;if(typeof i=="string")try{i=JSON.parse(i)}catch{return!1}return o!==void 0&&Ut(Ot(o).document)===Ut(Ot(i).document)}var c=Me($t(),1);var ht=Me($t(),1),Kt="data-graview-drawn",fo=200,Tr=50,po=1e4,mt=()=>typeof performance<"u"?performance.now():Date.now();function mo(e){let n=[...e.querySelectorAll("img")];for(let o of e.querySelectorAll("[data-worker-view]"))o.shadowRoot&&n.push(...o.shadowRoot.querySelectorAll("img"));return n}function ho(e,n){if(e.ownerDocument.fonts?.status==="loading"||zn()>0||Jn(n)>0||e.querySelector('[aria-busy="true"]')||mo(e).some(i=>!i.complete&&i.loading!=="lazy"))return!1;for(let i of e.querySelectorAll("[data-worker-view-place]"))if(!i.querySelector("[data-worker-view][data-worker-view-drawn], [data-worker-view][data-worker-view-failed]"))return!1;return!0}function xr(e){let n=e.querySelector("[data-embed-content]"),o=[...e.querySelectorAll("[data-worker-view]")].map(i=>`${i.offsetWidth}x${i.offsetHeight}`);return`${e.scrollWidth}x${e.scrollHeight}|${n?`${n.scrollWidth}x${n.scrollHeight}`:""}|${o.join(",")}`}function yo(e,n,o,i){e.removeAttribute(Kt);let l=e.ownerDocument.defaultView;if(!l)return()=>{};let u=mt(),d=u,w=xr(e),m=!1,P,F=typeof MutationObserver>"u"?void 0:new MutationObserver(x=>{x.some(O=>!(O.target===e&&O.attributeName===Kt))&&(d=mt())});F?.observe(e,{childList:!0,subtree:!0,characterData:!0,attributes:!0});let B=()=>{m=!0,F?.disconnect(),P!==void 0&&clearTimeout(P)},b=x=>{let O=!1,ne=()=>{O||(O=!0,x())};typeof l.requestAnimationFrame=="function"&&l.requestAnimationFrame(()=>setTimeout(ne,0)),setTimeout(ne,100)},T=()=>{if(m)return;let x=xr(e);x!==w&&(w=x,d=mt());let O=mt();if(ho(e,i)&&O-d>=fo||O-u>=po){b(()=>{m||(B(),e.setAttribute(Kt,n),Qn(),o())});return}P=setTimeout(T,Tr)};return P=setTimeout(T,Tr),B}function Fr(e,n,o,i,l){Yn();let u=(0,ht.useRef)({place:o,onDrawn:i});u.current={place:o,onDrawn:i},(0,ht.useLayoutEffect)(()=>{l&&Kn(l);let d=P=>yo(P,u.current.place.path,()=>u.current.onDrawn?.(u.current.place),l);if(e.current)return d(e.current);let w,m=!1;return queueMicrotask(()=>{!m&&e.current&&(w=d(e.current))}),()=>{m=!0,w?.()}},[n,e,l])}var we=Me($t(),1),Xe,go=Re(()=>(__graviewPreload(import.meta.url,["./chunk.5IEFTFKQ.js","./chunk.BRT27WON.js","./chunk.DCHQHKSA.js","./chunk.RXYNW5QB.js","./chunk.PFSYXD6Q.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.4TCKEG6I.js"))),Or=()=>go().then(e=>void(Xe=e),()=>new Promise(e=>setTimeout(e,2e3)).then(Or)),Jt=qn(Or),Cr=e=>!!e&&Xe===void 0;function Yt({onReady:e,fetch:n}){return(0,we.useLayoutEffect)(()=>void n().then(e),[e,n]),null}var wo=0;function Lr(e){let[n,o]=(0,we.useState)(()=>Xe);(0,we.useEffect)(()=>{if(!e||n)return;let u=!1;return Jt().then(()=>{u||o(Xe)}),()=>{u=!0}},[e,n]);let i=(0,we.useMemo)(()=>wo+=1,[e]);return{over:(0,we.useMemo)(()=>{let u=n??Xe;if(!e||!u)return;let{source:d,worker:w,...m}=e,P={...m,worker:w??{source:d},draft:!0};return{name:e.manifest.name,home:e.manifest.attach==="home",register:F=>u.registerWorkerView(F,P)}},[e,n]),n:i}}var Vr=Me(co(),1),I=Me(so(),1);var g=Me(Wn(),1);function yt(e,n={}){let o=Bt(e);return{Face:o.part((l,u)=>(0,c.createElement)(l,u),n),fetch:()=>o.load().then(()=>{}),here:()=>o.current!==void 0||o.failed}}var Xt=e=>Promise.all([e,sr()]).then(([n])=>n),Dr=Re(()=>(__graviewPreload(import.meta.url,["./chunk.3UOKUF5Z.js","./chunk.CC5BJH5A.js","./chunk.QI4SLPQ4.js","./chunk.Y5C4RXG7.js","./chunk.FRYBMS3W.js","./chunk.3MOJF7BA.js","./chunk.LZIBQ3VX.js","./chunk.HJCQ6I3S.js","./chunk.QDSEVPF3.js","./chunk.7N32AVIJ.js","./chunk.X6A4VSSD.js","./chunk.KDRLUBVF.js","./chunk.PNW5K7BW.js","./chunk.ENL2JJ47.js","./chunk.BQIHNT7C.js","./chunk.3XGA65Y3.js","./chunk.2K4TT2BV.js","./chunk.OLFJH4RK.js","./chunk.67U6M7OV.js","./chunk.ZP5RT2EK.js","./chunk.VZJWJ5XM.js","./chunk.JJGCTGWA.js","./chunk.XR6YR6RV.js","./chunk.VFOON3Z3.js","./chunk.GZHZLJBF.js","./chunk.IOK4GVJC.js","./chunk.OJGHDWI6.js","./chunk.TLJOZSDD.js","./chunk.MSWWWLEA.js","./chunk.UITT6JWW.js","./chunk.A5PDXNY6.js","./chunk.WC3DENU4.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.KBVTLNS5.js"))),vo=Re(()=>(__graviewPreload(import.meta.url,["./chunk.3V4WP7RY.js","./chunk.LLYRFVIN.js","./chunk.YFSBVZTG.js","./chunk.G4YJPKRG.js","./chunk.3UOKUF5Z.js","./chunk.Q355UPFG.js","./chunk.PXQVXBNG.js","./chunk.MVWC3VR3.js","./chunk.CC5BJH5A.js","./chunk.CFKZXLXS.js","./chunk.Y5C4RXG7.js","./chunk.7MHCGVGM.js","./chunk.FRYBMS3W.js","./chunk.LQVAABPS.js","./chunk.NGTRL5U4.js","./chunk.3MOJF7BA.js","./chunk.LZIBQ3VX.js","./chunk.YZ7FUKAL.js","./chunk.KDRLUBVF.js","./chunk.BQIHNT7C.js","./chunk.TAT2IQUR.js","./chunk.3XGA65Y3.js","./chunk.BYKD5RLA.js","./chunk.2K4TT2BV.js","./chunk.VUBNBTJP.js","./chunk.BJUUSIQY.js","./chunk.ZP5RT2EK.js","./chunk.VZJWJ5XM.js","./chunk.XOZU4OFA.js","./chunk.GLWSVSQL.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.7VKSXGTX.js","./chunk.TY4GQJKC.js","./chunk.6ZQAR5ZA.js","./chunk.W3W54DSX.js","./chunk.PI44XMY2.js","./chunk.KGW75Z5L.js","./chunk.GZHZLJBF.js","./chunk.IOK4GVJC.js","./chunk.OJGHDWI6.js","./chunk.TLJOZSDD.js","./chunk.MSWWWLEA.js","./chunk.UITT6JWW.js","./chunk.A5PDXNY6.js","./chunk.WC3DENU4.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.L6AWE76F.js"))),bo=Re(()=>(__graviewPreload(import.meta.url,["./chunk.3V4WP7RY.js","./chunk.LLYRFVIN.js","./chunk.YFSBVZTG.js","./chunk.G4YJPKRG.js","./chunk.3UOKUF5Z.js","./chunk.Q355UPFG.js","./chunk.PXQVXBNG.js","./chunk.MVWC3VR3.js","./chunk.CC5BJH5A.js","./chunk.CFKZXLXS.js","./chunk.Y5C4RXG7.js","./chunk.7MHCGVGM.js","./chunk.FRYBMS3W.js","./chunk.LQVAABPS.js","./chunk.NGTRL5U4.js","./chunk.3MOJF7BA.js","./chunk.LZIBQ3VX.js","./chunk.YZ7FUKAL.js","./chunk.KDRLUBVF.js","./chunk.BQIHNT7C.js","./chunk.TAT2IQUR.js","./chunk.3XGA65Y3.js","./chunk.BYKD5RLA.js","./chunk.2K4TT2BV.js","./chunk.VUBNBTJP.js","./chunk.BJUUSIQY.js","./chunk.ZP5RT2EK.js","./chunk.VZJWJ5XM.js","./chunk.XOZU4OFA.js","./chunk.GLWSVSQL.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.7VKSXGTX.js","./chunk.TY4GQJKC.js","./chunk.6ZQAR5ZA.js","./chunk.W3W54DSX.js","./chunk.PI44XMY2.js","./chunk.KGW75Z5L.js","./chunk.GZHZLJBF.js","./chunk.IOK4GVJC.js","./chunk.OJGHDWI6.js","./chunk.TLJOZSDD.js","./chunk.MSWWWLEA.js","./chunk.UITT6JWW.js","./chunk.A5PDXNY6.js","./chunk.WC3DENU4.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.MDJWK5W2.js"))),$r=yt(()=>Xt(Dr().then(e=>e.SceneFace)),{what:"This view"}),Br=yt(()=>Dr().then(e=>e.SceneKeeping),{quiet:!0}),Nr=yt(()=>Xt(vo().then(e=>e.PagesContent)),{what:"This page"}),Wr=yt(()=>Xt(bo().then(e=>e.PictureFace)),{what:"This picture"}),So=$r.Face,ko=Br.Face,Po=Nr.Face,Ao=Wr.Face;function He(...e){let n=e.length>0?e:["scene","pages","picture"],o=new Set(n.flatMap(Ir));return Promise.all([...[...o].map(i=>i.fetch()),rr()]).then(()=>{},()=>{})}var Ir=e=>e==="pages"?[Nr]:e==="picture"?[Wr]:[$r,Br],_r=e=>Ir(e).every(n=>n.here()),Eo=150,Qt=0;function Mr(e,n){if(_r(e))return n();let o=++Qt,i=()=>{o===Qt&&(Qt+=1,n())};He(e).then(i),setTimeout(i,Eo)}var Ro=768;function To(e,n){let o=n!==null&&n>=Ro;(0,c.useEffect)(()=>{if(!o||e==="picture")return;let i=e==="pages"?"scene":"pages";if(_r(i))return;let l=globalThis,u=()=>void He(i),d=()=>{},w=Zn(()=>{if(l.requestIdleCallback&&l.cancelIdleCallback){let m=l.requestIdleCallback(u,{timeout:4e3});d=()=>l.cancelIdleCallback?.(m)}else{let m=setTimeout(u,1500);d=()=>clearTimeout(m)}});return()=>(w(),d())},[e,o])}function xo({asked:e,shown:n,onDrawn:o}){return(0,c.useLayoutEffect)(()=>o(e,n),[e,n,o]),null}function Fo({auto:e,scene:n}){return(0,g.jsx)("div",{"data-embed-content":"","aria-busy":"true",style:{flex:e?n?`0 0 ${zt}px`:"0 0 auto":"1 1 auto",minHeight:0,background:"var(--graview-ground)"}})}var Oo=Bt(Re(()=>(__graviewPreload(import.meta.url,["./chunk.AJZBJBMO.js"]),import("./chunk.5JNXQHN4.js")))).part((e,n)=>(0,g.jsx)(e.StudioPlace,{...n}),{quiet:!0});function jr(e,n,o,i,l){return _t(e,fr(n?ut(n):l??Bn,i),o)}function en(e){return e&&ut(e).overview?"graview":"scene"}function Hr(e,n){if(n.homeView?.()===void 0)return!1;let o=e.pages?.first?.trim();return o===void 0||o===""||o==="/"||o.toLowerCase()==="home"}function qr(e){let[,n]=(0,c.useState)(!1),o=(0,c.useCallback)(()=>n(!0),[]),i=(0,c.useRef)(!1);return e.at&&!gt?(0,g.jsx)(Yt,{onReady:o,fetch:tn}):!i.current&&Cr(e.draftView)?(0,g.jsx)(Yt,{onReady:o,fetch:Jt}):(i.current=!0,(0,g.jsx)(Co,{...e}))}function Co(e){let{app:n,stop:o,bar:i=!0,standing:l="Everything is in order",principal:u,heading:d=2}=e,{rootRef:w,scope:m,css:P,scheme:F,store:B,presence:b,brand:T,auto:x,height:O}=wr(e),ne=Lr(e.draftView),E=yr(e,dr,ne.over),[de]=(0,c.useState)(Un),p=e.basePath===void 0?{}:{basePath:e.basePath},[D]=(0,c.useState)(Nt),N=e.notices??D,U=v=>Lt(v,p),oe={...e.routing?{routing:e.routing}:{},...p},[ae]=(0,c.useState)(()=>{let v=e.at?.face;if(v)return v;let X=o===void 0&&Hr(n,E)?"pages":en(o),$=It({...oe,face:X});return e.face===void 0&&e.onOpening?.($),$}),[be,H]=(0,c.useState)(()=>e.face!==void 0&&e.face!=="pages"&&!e.at&&o===void 0&&cr(oe)&&Hr(n,E)),Se=(0,c.useRef)(e.onFace);Se.current=e.onFace,(0,c.useLayoutEffect)(()=>{be&&(Se.current?.("pages"),H(!1))},[be]);let A=be?"pages":e.face??ae,k=n.schema.kinds,V=e.routing==="address",ke=(0,c.useMemo)(()=>e.at?gt.settleAt(e,B.seenBy(u??{kind:"human"}),E.places()):void 0,[]),L=(0,c.useMemo)(()=>jn(E,n.schema),[E,n.schema]),pe=(0,c.useMemo)(()=>{let v=ke?.stop??(V?lr(e.basePath):void 0)??o;return A==="scene"&&v===void 0&&L===void 0&&(e.path===void 0||Zt(e.path))?jt(void 0):jr(A,v,k,E.places(),L)},[]),[W]=(0,c.useState)(A);(0,c.useEffect)(()=>{W!=="pages"&&_n(E)},[W,E]);let M=(0,c.useRef)(void 0),q=v=>v===void 0||Zt(v)?"/":v;M.current??={path:q(ke?.path??(V?A==="pages"?(Mt(window.location.pathname,e.basePath)??"/")+window.location.search:"/":e.path)),asked:e.path},e.path!==M.current.asked&&(M.current={path:q(e.path),asked:e.path});let Z=(0,c.useRef)(e.onNavigate);Z.current=e.onNavigate;let xe=(0,c.useCallback)((v,X)=>{M.current.path=v,Z.current?.(v,X)},[]),{at:Pe,setAt:_,steering:K,steer:re}=Pr(M.current.path),C=(0,c.useContext)(zr);C&&(C.pages=()=>M.current.path);let Fe=(0,c.useRef)(void 0),J=(0,c.useCallback)(v=>void(M.current.path=v),[]),Y=tr(w),[z,me]=(0,c.useState)(!1),Q=e.pagesBelow!==void 0&&Y!==null&&Y<e.pagesBelow&&(A==="scene"||A==="graview")&&!z,R=Q?"pages":A,Ve=(0,c.useRef)(!1);Ve.current=z&&e.pagesBelow!==void 0&&Y!==null&&Y<e.pagesBelow&&(A==="scene"||A==="graview"),C&&(C.shown=R);let De=(0,c.useRef)(A==="graview"?"graview":"scene");(R==="scene"||R==="graview")&&(De.current=R),(0,c.useState)(()=>{if(!V||typeof window>"u"||R==="pages"||R==="picture")return;let{pathname:v,search:X,hash:$}=window.location;Mt(v,e.basePath)==="/"&&window.history.replaceState(window.history.state,"",`${U(Ee)}${X}${$}`)}),gr(w,R,e.onIntrinsicHeight),To(R,Y);let ce=Ar(e.onError,R),Oe=Er(e.onReady,R),Ue=(0,c.useRef)(e.onFaceDrawn);Ue.current=e.onFaceDrawn;let he=(0,c.useCallback)((v,X)=>{Oe(X),Ue.current?.(v)},[Oe]),[$e,Ce]=(0,c.useState)(null),Ke=E.places(),ye=(0,c.useRef)({shown:R,onFace:e.onFace});ye.current={shown:R,onFace:e.onFace};let Be=(0,c.useCallback)((v,X,$)=>{if(V){Fe.current?.(v,X,$);return}ye.current.onFace?.(v),Z.current?.(v==="pages"?X??M.current.path:Ee,"push")},[V]),[kt,Je]=(0,c.useState)(void 0);(0,c.useEffect)(()=>{R==="pages"&&Je(void 0)},[R]);let G=(0,c.useRef)(o);(0,c.useEffect)(()=>{G.current!==o&&(G.current=o,Je(void 0))},[o]);let le=(0,c.useCallback)(v=>{if(ye.current.shown==="pages"){if(me(!0),Je(v),A==="scene"||A==="graview"){Mr(A,()=>{V?window.history.pushState(null,"",`${U(Ee)}${v??""}`):Z.current?.(Ee,"push")});return}Mr(De.current,()=>Be(De.current,void 0,v))}},[V,A,e.basePath,Be]),j=(0,c.useCallback)(v=>{if(ye.current.shown==="pages"){K.go.current||(M.current.path=v),re(v);return}if(M.current.path=v,_(v),Ve.current){me(!1),V?window.history.pushState(null,"",U(v)):Z.current?.(v,"push");return}Be("pages",v)},[K,re,_,Be,V,e.basePath]),Ne=E.arrangement?.(),ie=R==="pages",We=e.hrefOf,Le=We??(V?U:void 0),Ie=(0,c.useMemo)(()=>({open:j,...We?{href:We}:V?{href:v=>Lt(v,e.basePath===void 0?{}:{basePath:e.basePath})}:{}}),[j,V,e.basePath,We]);return(0,g.jsxs)("section",{ref:w,className:m,"aria-label":e.label??n.name,"data-graview-embed":R,"data-graview-scheme":F,...Q?{"data-graview-embed-narrow":""}:{},style:{position:"relative",isolation:"isolate",height:O,minHeight:x?0:320,display:"flex",flexDirection:"column",overflow:"hidden",borderRadius:"var(--graview-radius, 12px)"},children:[(0,g.jsx)("style",{children:P}),(0,g.jsxs)(er.Provider,{value:ce,children:[(0,g.jsx)(vr,{rootRef:w,board:N}),(0,g.jsx)(hr,{rootRef:w,firstLook:e.firstLook,app:ar(T??{name:n.name},n.schema)}),(0,g.jsx)(Ze,{module:"@graview/react",report:ce,content:!0,children:(0,g.jsx)(Gn.Provider,{value:de,children:(0,g.jsx)(In,{store:B,views:E,initialView:pe,scheme:F,...br(e,b,T),...e.onSeat?{onSeat:e.onSeat}:{},children:(0,g.jsxs)(nr.Provider,{value:N,children:[(0,g.jsx)(Vo,{face:R,stop:kt??o,kinds:k,places:Ke,opens:L}),C?(0,g.jsx)(Lo,{into:C}):null,(0,g.jsx)(Mo,{rootRef:w,face:A,shown:R,path:Pe,stop:o,draft:ne.n,onDrawn:e.onDrawn,parts:de}),V?(0,g.jsx)(ur,{pagesWere:ke?.path,basePath:e.basePath,shown:R,onFace:e.onFace,toggle:Fe,kinds:k,places:Ke,opens:L,landed:J}):null,i&&R!=="picture"?(0,g.jsx)(Ze,{module:"@graview/embed",report:ce,children:(0,g.jsx)(Sr,{name:T?.name??n.name,heading:d,named:qt(i).name!==!1,faces:qt(i).faces===!1?void 0:{scene:{label:Hn(Ne),current:!ie,go:()=>le(),reach:()=>void He(De.current)},pages:{label:Vn(Ne),current:ie,go:()=>j(M.current.path),reach:()=>void He("pages")}},at:ie?Pe:null,without:e.pages?.without(),home:{...Le?.("/")!==void 0?{href:Le("/")}:{},go:()=>j("/"),current:ie&&Pe.split("?")[0]==="/"},reach:{...Le?{href:Le}:{},go:v=>j(v.path)},standing:l,hostActions:e.hostActions,keeping:ie?void 0:(0,g.jsx)(Do,{app:n,studio:e.studio,report:ce}),onFind:Ce,switch:e.switch})}):null,(0,g.jsx)(or.Provider,{value:$e,children:(0,g.jsx)(Ze,{module:R==="pages"||R==="picture"?"@graview/pages":"@graview/react",report:ce,content:!0,children:(0,g.jsxs)(c.Suspense,{fallback:(0,g.jsx)(Fo,{auto:x,scene:R!=="pages"&&R!=="picture"}),children:[R==="picture"?(0,g.jsx)(Ao,{scope:m,store:B,views:E,as:(o?ut(o).within?.view:void 0)??""}):R==="pages"?(0,g.jsx)(Po,{store:B,views:E,presence:b,auto:x,brand:T,steering:K,overview:le,scope:m,titleLevel:kr(d),quickAsk:Wt(e.quickAsk),props:{...e,onNavigate:xe,...V?{}:{path:M.current.path}}}):(0,g.jsx)(Xn.Provider,{value:Ie,children:(0,g.jsx)(So,{address:V,auto:x,scheme:F,scope:m,quickAsk:Wt(e.quickAsk)})}),(0,g.jsx)(xo,{asked:A,shown:R,onDrawn:he})]})},R)})]})})})})]})]})}var Zt=e=>e.split(/[?#]/)[0]===Ee,zr=(0,c.createContext)(null);function Lo({into:e}){return e.view=ft().view,null}function Mo({rootRef:e,face:n,shown:o,path:i,stop:l,draft:u,onDrawn:d,parts:w}){let{view:m}=ft(),P=o==="scene"||o==="graview",F=lt(m),{pan:B,...b}=m,T=m.pan?lt(b):F,x={face:n,path:P?Ee:o==="picture"?l??"#":i,stop:F};return Fr(e,`${o} ${P?T:x.path} ${u}`,x,d,w),null}var gt,Ho=Re(()=>(__graviewPreload(import.meta.url,["./chunk.NHUQ2N6J.js","./chunk.WC3DENU4.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.BXDM3UMN.js"))),tn=()=>Ho().then(e=>void(gt=e),()=>new Promise(e=>{let n=()=>{window.removeEventListener("online",n),clearTimeout(o),e()},o=setTimeout(n,1e4);window.addEventListener("online",n)}).then(tn));function Vo({face:e,stop:n,kinds:o,places:i,opens:l}){let{view:u,go:d}=ft(),w=(0,c.useRef)({face:e,stop:n});return(0,c.useLayoutEffect)(()=>{let m=w.current.stop!==n,P=w.current.face!==e,F=w.current.face==="pages";if(w.current={face:e,stop:n},!m&&!P||e==="pages"||e==="picture")return;let B=(m||F)&&n!==void 0?jr(e,n,o,i):F&&pr(u)?_t(e,jt(l),o):e==="graview"?Dt(u,!0):u.overview?Nn(Dt(u,!1),ir(u,o)):u;d(B)},[e,n,o,u,d,l]),null}function Do({app:e,studio:n,report:o}){return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(c.Suspense,{fallback:null,children:(0,g.jsx)(ko,{})}),n!==!1?(0,g.jsx)(Ze,{module:"@graview/studio",report:o,children:(0,g.jsx)($o,{app:e,studio:n})}):null]})}function $o({app:e,studio:n}){let o={app:e,within:"box",...n?{onApply:n.onApply}:{},...n?.landmark?{landmark:n.landmark}:{},...n?.offered!==void 0?{offered:n.offered}:{}},i=n?.place;return i?(0,g.jsx)(i,{...o}):(0,g.jsx)(c.Suspense,{fallback:null,children:(0,g.jsx)(Oo,{...o})})}function Bo({path:e,stop:n,...o},i){return{...o,app:i.app,at:i.at,remote:i.remote,...i.remote.presence?{presence:i.remote.presence}:{}}}function nn(e,n){let o=n.store??n.remote?.store??mr(n.app,n.seed),i=n.notices??Nt(),l=null,u={},d=0,w=n.label,m=n.app,P=Promise.resolve(),F=n.at?.face??n.face,B=F===void 0?void 0:It({...n,face:F}),b=B??en(n.stop),T=null,x=[],O=p=>{if(T=p,p!==b)return;let D=x;x=[];for(let N of D)N()};function ne(){let[p,D]=(0,c.useState)(B),[N,U]=(0,c.useState)(n.stop),[oe,ae]=(0,c.useState)(n.path),[be,H]=(0,c.useState)(n.scheme??"auto"),[Se,A]=(0,c.useState)(n.principal),[k,V]=(0,c.useState)(n.seats),[ke,L]=(0,c.useState)(n.quickAsk),[pe,W]=(0,c.useState)(n.people),[M,q]=(0,c.useState)(n.hostContext),[Z,xe]=(0,c.useState)(n.brand),[Pe,_]=(0,c.useState)(n.whileAway),[K,re]=(0,c.useState)(n.label),[C,Fe]=(0,c.useState)(n.hostActions),[J,Y]=(0,c.useState)(void 0),[z,me]=(0,c.useState)(n.draftView);return l={app:Q=>{Y(Q),ae(void 0),U(void 0)},face:D,stop:U,path:ae,scheme:H,seat:A,seats:V,quickAsk:L,people:W,hostContext:q,brand:xe,whileAway:_,label:re,hostActions:Fe,draft:me},(0,g.jsx)(zr.Provider,{value:u,children:(0,g.jsx)(qr,{...J?Bo(n,J):n,store:o,notices:i,...p!==void 0?{face:p}:{},onOpening:Q=>{b=Q},...N!==void 0?{stop:N}:{},...oe!==void 0?{path:oe}:{},...Se?{principal:Se}:{},...k?{seats:k}:{},...ke!==void 0?{quickAsk:ke}:{},...pe?{people:pe}:{},...M?{hostContext:M}:{},...Z?{brand:Z}:{},whileAway:Pe,label:K,hostActions:C,draftView:z,scheme:be,onFace:Q=>{b=Q,D(Q)},onSeat:A,onFaceDrawn:O},J?.n??0)})}let E=()=>{let p=u.view?.focusId,D=p?o.graph.getNode(p)?.kind:void 0,N=(u.shown??b)==="scene"||(u.shown??b)==="graview";return{face:b,path:N?Ee:u.pages?.()??n.path??"/",stop:u.view?lt(u.view):n.stop??"#",...D?{kind:D}:{}}},de=(0,Vr.createRoot)(e);return(0,I.flushSync)(()=>de.render((0,g.jsx)(ne,{}))),{get store(){return o},where:E,setApp:(p,D,N)=>{let U="graph"in D?{store:D}:D,oe=()=>{let ae=E();o=U.store,w=N?.label??(w===m.name?p.name:w),m=p,(0,I.flushSync)(()=>{l?.label(w),l?.app({app:p,remote:U,at:ae,n:++d})})};gt?oe():P=P.then(tn).then(oe)},setFace:p=>{b=p,(0,I.flushSync)(()=>l?.face(p))},setStop:p=>(0,I.flushSync)(()=>l?.stop(p)),setPath:p=>(0,I.flushSync)(()=>{if(Zt(p)){(b==="pages"||b==="picture")&&(b="scene",l?.face("scene"));return}l?.path(p),b!=="pages"&&(b="pages",l?.face("pages"))}),setScheme:p=>(0,I.flushSync)(()=>l?.scheme(p)),setSeat:p=>(0,I.flushSync)(()=>l?.seat(p)),setSeats:p=>(0,I.flushSync)(()=>l?.seats(p)),setQuickAsk:p=>(0,I.flushSync)(()=>l?.quickAsk(p)),setPeople:p=>(0,I.flushSync)(()=>l?.people(p)),setHostContext:p=>(0,I.flushSync)(()=>l?.hostContext(p)),setBrand:p=>(0,I.flushSync)(()=>l?.brand(p)),setWhileAway:p=>(0,I.flushSync)(()=>l?.whileAway(p)),setDraftView:p=>(0,I.flushSync)(()=>l?.draft(p)),setLabel:p=>{w=p,(0,I.flushSync)(()=>l?.label(p))},setHostActions:p=>(0,I.flushSync)(()=>l?.hostActions(p)),drawn:()=>P.then(()=>T===b?void 0:new Promise(p=>x.push(p))),notify:p=>{let D;return(0,I.flushSync)(()=>{D=i.notify(p)}),D},unmount:()=>de.unmount()}}var wt=e=>`s${(e+1).toString(36)}`;var ve={seat:"x-graview-seat",roles:"x-graview-roles",kind:"x-graview-kind",name:"x-graview-name",for:"x-graview-for",forRoles:"x-graview-for-roles",forName:"x-graview-for-name",via:"x-graview-via"},qe={header:"x-graview-key",param:"graview_key",cookie:"graview_key"};function vt(e,n={}){try{let o=new URL(e),i=o.searchParams.get(qe.param);if(i)return o.searchParams.delete(qe.param),{url:o.origin+o.pathname.replace(/\/$/,"")+o.search,key:i,headers:{[qe.header]:i,...n}}}catch{}return{url:e.replace(/\/$/,""),headers:n}}var Gr="/graview/friction";var Ur="/graview/live",rn="graview.ship",on=`${rn}.${st}`;var ze=class extends Error{constructor(n){super(n),this.name="Superseded"}},Te=e=>e?.lineage?{lineage:e.lineage}:{},No=(e,n)=>`${e.calls.map(o=>o.name.replace(/-/g," ")).join(", ")} (${n instanceof Error?n.message.split(`
|
|
2
|
-
`)[0]??"":String(n)})`;function Wo(e){if(!e)return[];try{let n=e.storage.getItem(e.key);if(n===null)return[];e.storage.removeItem(e.key);let o=JSON.parse(n);return Array.isArray(o)?o.filter(i=>!!i&&Array.isArray(i.calls)):[]}catch{return[]}}var Ge=class extends Error{constructor(o){super(o.sentence);this.refusal=o;this.name="RemoteRefusedError"}},Io={401:"forbidden",403:"forbidden",404:"missing",413:"limit"},fe=class extends Error{constructor(o,i){super(o);this.conflicts=i;this.name="StaleWrite"}},et=class extends Error{constructor(n){super(n),this.name="Unreached"}},_o=new Set([502,503,504]);async function jo(e){try{return(await e.clone().json()).reason==="unavailable"}catch{return!1}}function qo(){let e=Math.random().toString(36).slice(2,8),n=0;return()=>`local-${e}-${++n}`}var zo=1,Go=()=>({refusals:new Set,conflicts:new Set,statuses:new Set,helds:new Set,builds:new Set,who:new Set,declarations:new Set,tally:{reconnects:0,rebases:0,conflicts:0,resyncs:0}});async function bt(e){return(await Kr(e,Wo(e.carry),"This app was updated while your changes were on the way.",Go())).remote}async function Kr(e,n,o,i){let{key:l,...u}=vt(e.url,e.headers),d={...e,...u},w=d.fetch??fetch,m={"content-type":"application/json",...d.headers??{}},P={...St(d.principal),[ve.via]:d.via??"web"};Object.assign(m,P);let F=d.live===!0,B=d.presenceEveryMs,b=d.visible??Jo,T="connecting",x=i.statuses,O=i.tally,ne=[],E,de=[],p=()=>T==="online"&&E!==void 0?"held":T,D=()=>{let t=p();if(i.told!==t){i.told=t;for(let r of[...x])r(t)}},N=t=>{if(!(t===T||se)&&(T==="offline"&&t==="online"&&O.reconnects++,T=t,D(),t==="online"))for(let r of ne.splice(0))r.again()},U=t=>{if(se)return;let r=typeof t=="string"&&t.length>0?t:void 0,s=r!==E;if(E=r,oe(),!!s&&(D(),r===void 0)){for(let a of de.splice(0))a();ee&&clearTimeout(ee),un()}},oe=()=>{if(i.toldHeld!==E){i.toldHeld=E;for(let t of[...i.helds])t(E??null)}},ae=async(t,r)=>{let s;try{s=await w(t,r)}catch(a){throw $()||N("offline"),new et(a instanceof Error?a.message:String(a))}if(s.status===503&&await jo(s))return N("online"),s;if(_o.has(s.status))throw $()||N("offline"),new et(`The server is away (${s.status})`);return N("online"),s},be=async(t=!1)=>{let r=`${d.url}/graview/state?opFormat=${je.op}`,s=t?await w(r,{headers:m}):await ae(r,{headers:m});if(!s.ok)throw new Error((await s.json().catch(()=>({}))).error??`The server refused (${s.status})`);return await s.json()},H=d.state??await be(!0);F||(T="online"),E=typeof H.held=="string"&&H.held.length>0?H.held:void 0,oe();let Se=H.enabledModules??d.enabledModules,A=d.localApp?d.localApp(d.app):d.app,k=new Mn({schema:A.schema,mutations:A.mutations??[],invariants:A.invariants??[],...A.policy?{policy:A.policy}:{},...A.publishing?{publishing:A.publishing}:{},...A.modules?{modules:A.modules}:{},...Se?{enabledModules:Se}:{},...A.intelligence?{intelligence:A.intelligence}:{},...A.brand?.timeZone?{timeZone:A.brand.timeZone}:{},snapshot:H.snapshot,log:H.log,...H.horizon!==void 0?{horizon:H.horizon}:{},ids:qo(),...d.storeOptions??{}});Tn.served.add(k);let V=d.friction!==!1&&d.principal?.kind!=="visitor";V&&Fn(k,t=>{V&&w(`${d.url}${Gr}`,{method:"POST",headers:m,body:JSON.stringify({event:t})}).then(r=>void(V=r.status!==404&&r.status!==410),()=>{})});let ke=Cn(k),L=H.log.at(-1)?.seq??(H.horizon??0)-1,pe=Ct.of(H.log,{horizon:H.horizon??0}),W=null,M,q=new Map,Z=i.who,xe=!1,Pe=t=>{if(se)return;xe=!0;let r=Dn(new Map,t,Date.now(),Ht,W?.participant);M!==void 0&&r.delete(M);let s=r.size!==q.size;if(!s)for(let[a,f]of r)Vt(f,q.get(a))||(s=!0);if(q=r,!!s)for(let a of[...Z])a([...q.values()])},_=[],K=new Set,re=t=>{let r=_.indexOf(t);r>=0&&_.splice(r,1)},C=new Map,Fe=(t,r)=>{let s=C.get(t);s&&(C.delete(t),s.resolve({ops:r.filter(a=>a.batch===t),batch:t}))},J,Y=[],z=(t,r=[])=>{if(t.length===0&&r.length===0)return[];if(J)return Y.push({ops:t,drop:r}),[];let s=Math.min(...t.filter(h=>h.seq>L).map(h=>h.seq));if(Number.isFinite(s)&&s>L+1)return Y.push({ops:t,drop:r}),me(),[];let a=_.filter(h=>t.some(te=>te.batch===h)),f=[...new Set([...r,...a])].filter(h=>K.has(h)),y,S=_.filter(h=>!a.includes(h));try{y=k.rebase({confirmed:t,pending:S,drop:f}).confirmed}catch(h){if(!(h instanceof Ln))throw h;return Y.push({ops:t,drop:r}),me(),[]}for(let h of a)re(h);t.some(h=>h.seq>L)&&S.some(h=>!f.includes(h))&&O.rebases++,t.length>0&&(L=Math.max(L,...t.map(h=>h.seq)),pe.note(t));for(let h of f)K.delete(h);for(let h of a)Fe(h,t);return y},me=()=>{J||(J=Ce(be().then(t=>{if(Q(t)){Y=[];return}let r=new Set(t.log.map(f=>f.batch)),s=_.filter(f=>r.has(f));for(let f of s)re(f);let a=k.adopt({snapshot:t.snapshot,log:t.log,...t.horizon!==void 0?{horizon:t.horizon}:{},pending:[..._],drop:[...K].filter(f=>!_.includes(f))});K.clear();for(let f of a.pending)K.add(f.batch);L=t.log.at(-1)?.seq??(t.horizon??0)-1,pe=Ct.of(t.log,{horizon:t.horizon??0}),O.resyncs++;for(let f of s)Fe(f,t.log)}).then(()=>{J=void 0;let t=Y;Y=[];for(let{ops:r,drop:s}of t)z(r,s)},()=>{J=void 0,Y=[]})))},Q=t=>(typeof t.build=="string"&&pn(t.build),typeof t.version=="number"&&U(t.held),typeof t.version!="number"||t.version===H.version?!1:(Et(t.version),!0)),R=async t=>{let s=await(await ae(`${d.url}/graview/since?seq=${wt(t)}&opFormat=${je.op}`,{headers:m})).json();return Q(s)?[]:s.reset===!0?(me(),[]):s.ops??[]},Ve=async()=>{let t=await De();return J&&await J,t},De=async()=>{if(W&&!$()&&b()){let r=await(await ae(`${d.url}/graview/here?opFormat=${je.op}`,{method:"POST",headers:m,body:JSON.stringify({presence:W,seq:wt(L)})})).json();return Q(r)?[]:(typeof r.participant=="string"&&(M=r.participant),Pe(r.who??[]),z(r.ops??[]))}return z(await R(L))},ce=new Map,Oe=new Map,Ue=new Set,he=new Map,$e=new Set,Ce=t=>($e.add(t),t.finally(()=>$e.delete(t)).catch(()=>{}),t),Ke=Promise.resolve(),ye=0,Be=(t,r)=>{let s=Ke.then(()=>Je(t,r));return Ke=s.catch(()=>{}),s},kt=()=>new Promise((t,r)=>ne.push({again:t,give:r})),Je=async(t,r)=>{let s,a;for(;;){try{s=await ae(`${d.url}/graview/ops`,{method:"POST",headers:m,body:JSON.stringify({...t,opFormat:je.op})})}catch(h){if(!(h instanceof et)||j)throw h;if(await kt(),$())return tt(t,r);continue}if(a=await s.json().catch(()=>({})),s.status===503&&a.reason==="unavailable"&&typeof a.held=="string"&&!j){if(typeof a.version=="number"?Q(a):(U(a.held),!1))break;if(E!==void 0&&(Ft>0||F)){if(await new Promise(h=>de.push(h)),j)throw new ze("The client closed.");if($())return tt(t,r);continue}}let S;if(s.status===503&&a.reason==="unavailable"&&!j)S=an(d.backoff,ye++);else{if(ye=0,s.status!==429||j)break;S=Uo(s.headers.get("retry-after"),a.retryAfter)}if(await new Promise(h=>setTimeout(h,S)),$())return tt(t,r)}if(se||Q(a))throw new ze("The app was changed.");if(!s.ok){let S=a.error??`The server refused (${s.status})`;throw a.conflict?new fe(S,a.conflicts??[]):new Ge({reason:a.reason??Io[s.status]??"invalid",sentence:S,...a.wouldNeed?.length?{wouldNeed:a.wouldNeed}:{}})}let f=a.ops??[],y=f[0]?.seq;return y!==void 0&&y>L+1&&(f=await R(L)),r!==void 0&&(a.batch&&ce.set(r,a.batch),re(r)),z(f,r!==void 0?[r]:[]),{ops:a.ops??[],...a.batch?{batch:a.batch}:{}}},G,le=!1,j=!1,Ne=0,ie,We=0,Le=0,Ie=null,v=()=>{},X=new Promise(t=>{v=t}),$=()=>F&&le&&G?.readyState===zo,Ye=t=>{if(!$())return!1;try{return G.send(JSON.stringify(t)),!0}catch{return!1}},ln=(t=!1)=>{!W||!$()||!b()||!t&&Ie&&Vt(W,Ie)&&(B===void 0||Date.now()-Le<B)||Ye({t:"here",presence:W})&&(Ie=W,Le=Date.now())},Ae=new Set,ee,un=()=>{if(ee=void 0,E!==void 0)return;let t=[...C.entries()].filter(([r])=>Ae.has(r));Ae.clear();for(let[,r]of t)Ye(r.message)},fn=(t,r)=>{C.has(t)&&(Ae.add(t),ee&&clearTimeout(ee),ee=setTimeout(un,Math.max(0,r)))},Qr=t=>{C.has(t)&&Ae.add(t)},tt=(t,r)=>new Promise((s,a)=>{let f=r??`send-${++We}`,y=t.undo?{t:"undo",cid:f,batches:t.undo,...t.intent?{intent:t.intent}:{},...t.batch?{batch:t.batch}:{},...t.via?{via:t.via}:{},...Te(t)}:{t:"call",cid:f,calls:t.calls??[],...t.intent?{intent:t.intent}:{},...t.batch?{batch:t.batch}:{},...t.base?.length?{base:t.base}:{},...t.via?{via:t.via}:{},...Te(t)};if(C.set(f,{message:y,...r!==void 0?{mine:r}:{},resolve:s,reject:a}),Ae.size>0||E!==void 0){Ae.add(f);return}Ye(y)}),nt=(t,r)=>$()?tt(t,r):Be(t,r),Zr=t=>{switch(t.t){case"welcome":{if(pn(t.build),typeof t.version=="number"&&t.version!==H.version){Et(t.version);return}if(le=!0,Ne=0,typeof t.participant=="string"&&(M=t.participant),U(t.held),t.state?me():z(t.ops??[]),Ae.clear(),ee&&clearTimeout(ee),ee=void 0,E!==void 0)for(let r of C.keys())Ae.add(r);else for(let r of C.values())Ye(r.message);ln(!0),N("online"),v();return}case"ops":z(t.ops??[]);return;case"ack":{let r=C.get(t.cid);if(!r){z(t.ops??[]);return}C.delete(t.cid),ye=0,r.mine!==void 0&&(ce.set(r.mine,t.batch),re(r.mine)),z(t.ops??[],r.mine!==void 0?[r.mine]:[]),r.resolve({ops:t.ops??[],batch:t.batch});return}case"refused":case"conflict":{let r=C.get(t.cid);if(!r)return;if(t.t==="refused"&&t.reason==="unavailable"){E!==void 0?Qr(t.cid):fn(t.cid,an(d.backoff,ye++));return}C.delete(t.cid),r.reject(t.t==="conflict"?new fe(t.sentence,t.conflicts??[]):new Ge({reason:t.reason??"invalid",sentence:t.sentence,...t.wouldNeed?.length?{wouldNeed:[...t.wouldNeed]}:{}}));return}case"busy":typeof t.cid=="string"&&fn(t.cid,typeof t.retryAfter=="number"?t.retryAfter:1e3);return;case"presence":Pe(t.who??[]);return;case"held":U(t.sentence);return;case"declaration":typeof t.version=="number"&&t.version!==H.version&&Et(t.version);return;case"reload":gn(typeof t.reason=="string"?t.reason:"This app was updated.");return;case"error":if(t.reopen===!0&&G){let r=G;vn(r);try{r.close(1e3,"Opening again.")}catch{}}return;default:return}},se=!1,Pt=i.declarations,At=i.builds,pn=t=>{if(!(se||i.otherBuild!==void 0||!d.build||typeof t!="string"||t.length===0||t===d.build)){i.otherBuild=t;for(let r of[...At])r(t)}},mn=()=>{let t=[],r=0;for(let s of _){let a=he.get(s);a?t.push({calls:a.calls,...a.intent?{intent:a.intent}:{},...a.via?{via:a.via}:{},...Te(a),batch:s}):r++}return{carried:t,undos:r}},hn=(t,r)=>`${r} while ${t===1?"an undo of yours was":"undos of yours were"} on the way; ${t===1?"it was":"they were"} not made.`,yn=t=>{se=!0,W=null;let r=new ze(t);for(let a of C.values())a.reject(r);C.clear(),at&&clearInterval(at),j=!0,ie&&clearTimeout(ie),ee&&clearTimeout(ee),ge&&clearTimeout(ge);for(let a of ne.splice(0))a.give(r);for(let a of de.splice(0))a();let s=G;G=void 0,le=!1;try{s?.close(1e3,t)}catch{}v()};async function Et(t){if(se)return;if(!d.resolveApp){gn(`This app was changed on its server (version ${t}); reload the page to carry on.`);return}let{carried:r,undos:s}=mn(),a=d.resolveApp,f=W;yn("The app was changed.");try{let y=await a(t),{state:S,...h}=d,te=await Kr({...h,app:y},r,"The app was changed while your changes were on the way.",i);f&&te.remote.presence.here(f);for(let it of[...Pt])it(te.remote,t);let ue=[...s>0?[rt(hn(s,"The app was changed"))]:[],...te.unheard()];for(let it of ue)for(let io of _e)io(it.sentence,it)}catch(y){let S=`The app was changed, but the new version could not be opened: ${y instanceof Error?y.message:String(y)}`;for(let h of _e)h(S,rt(S))}}function gn(t){if(se)return;let{carried:r,undos:s}=mn();yn(t);let a=!1;if(d.carry&&r.length>0)try{d.carry.storage.setItem(d.carry.key,JSON.stringify(r)),a=!0}catch{}let f=[];!a&&r.length>0&&f.push(`${t} ${r.length===1?"A change of yours was":`${r.length} changes of yours were`} not sent; make ${r.length===1?"it":"them"} again after the page reloads.`),s>0&&f.push(hn(s,"This app was updated"));for(let y of f)for(let S of _e)S(y,rt(y));(d.reloadPage??Ko)()}let wn=()=>{if(j||!F)return;let t=`${d.url.replace(/^http/,"ws").replace(/\/$/,"")}${Ur}`,{"content-type":r,...s}=m,a;try{a=d.socket?d.socket(t,s,[on]):ao(t,s)}catch{return bn()}G=a,le=!1,a.onopen=()=>{G===a&&a.send(JSON.stringify({t:"hello",seq:wt(L),protocol:st,wire:rn,opFormat:je.op,...d.build?{build:d.build.slice(0,64)}:{},...d.hostProtocol!==void 0?{hostProtocol:d.hostProtocol}:{}}))},a.onmessage=f=>{if(G!==a)return;let y;try{y=JSON.parse(String(f.data))}catch{return}Zr(y)},a.onclose=()=>vn(a),a.onerror=()=>{}},ge,Xr=()=>{xe=!1,ge&&clearTimeout(ge),ge=setTimeout(()=>{if(ge=void 0,xe||j)return;let t=new Map([...q].filter(([,r])=>r.held!=="socket"));if(t.size!==q.size){q=t;for(let r of Z)r([...q.values()])}},Ht),ge.unref?.()};function vn(t){if(G!==t)return;let r=le;G=void 0,le=!1,Ie=null,r&&(N("offline"),Xr()),bn()}let bn=()=>{if(j)return;let t=an(d.backoff,Ne);Ne++,ie=setTimeout(wn,t)},Sn=k.applyAll.bind(k),eo=k.undo.bind(k),to=k.previewAll.bind(k);k.previewAll=(t,r)=>to(t,{...d.principal?{author:d.principal}:{},...r});let _e=i.refusals,Qe=[],rt=t=>({reason:"invalid",sentence:t}),ot=i.conflicts,Rt=!1,kn,Tt=async(t,r)=>{if(r instanceof ze||se)return;let s=r instanceof Ge?r.refusal:Rn(r),a=s.sentence,f=r instanceof fe?kn?.yoursOf(k,he.get(t)?.calls??[]):void 0;re(t);try{z([],[t])}catch{}let y=he.get(t);he.delete(t);let S=y?.calls[0];if(S&&!(r instanceof fe)){let h=k.allMutations().find(ue=>ue.name===S.name)?.subject?.arg,te=h&&k.graph.getNode(S.args[h])?.kind;On(k,{type:"refused",act:S.name,code:s.reason,...te?{kind:te}:{}},d.principal)}if(r instanceof fe&&O.conflicts++,r instanceof fe&&!$()&&await Ve().catch(()=>[]),r instanceof fe&&J&&await J,r instanceof fe&&ot.size>0){let h=!1,te={sentence:a,conflicts:f?r.conflicts.map(ue=>ue.node===f.node&&ue.field===f.field?{...ue,yours:f.yours}:ue):r.conflicts,keepTheirs(){h=!0},useMine(){if(!(h||!y)){h=!0,Rt=!0;try{k.applyAll(f?[f.over(L)]:y.calls,{...y.intent?{intent:y.intent}:{},...y.via?{via:y.via}:{},...Te(y)})}finally{Rt=!1}}}};for(let ue of ot)ue(te);return}for(let h of _e)h(a,s)},no=(t,r)=>t.flatMap(s=>s.mutation?.name===En?[]:s.primitives.flatMap(a=>a.op==="splice-text"&&!r.has(a.id)&&!r.has(`${a.id}\0${a.field}`)?[{node:a.id,field:a.field,rev:L}]:[]));k.applyAll=(t,r)=>{let s=xn(k.log.all().filter(S=>K.has(S.batch))),a=Sn(t,{...d.principal?{author:d.principal}:{},...r}),f=t.map((S,h)=>{let te=a.minted?.[h];return te===void 0||S.args?.id!==void 0?S:{...S,mintedHint:te}});_.push(a.batch),K.add(a.batch),he.set(a.batch,{calls:f,...r?.intent?{intent:r.intent}:{},...r?.via?{via:r.via}:{},...Te(r)});let y=Rt?[]:[...pe.baseFor(a.ops,s,(S,h)=>k.collaborative(S,h)),...no(a.ops,s)];return Oe.set(a.batch,Ce(nt({calls:f,...r?.intent?{intent:r.intent}:{},batch:a.batch,...y.length>0?{base:y}:{},...r?.via?{via:r.via}:{},...Te(r)},a.batch).catch(S=>Tt(a.batch,S)))),a},k.apply=(t,r)=>k.applyAll([t],r),k.undo=(t,r)=>{let s=typeof t=="string"?[t]:t,a=eo(s.map(y=>ce.get(y)??y),{...d.principal?{author:d.principal}:{},...r});_.push(a.batch),K.add(a.batch);let f=Promise.allSettled(s.map(y=>Oe.get(y)));return Oe.set(a.batch,Ce(f.then(()=>{let y=s.filter(S=>!Ue.has(S));if(y.length===0){re(a.batch),he.delete(a.batch),z([],[a.batch]);return}return nt({undo:y.map(S=>ce.get(S)??S),...r?.intent?{intent:r.intent}:{},batch:a.batch,...r?.via?{via:r.via}:{},...Te(r)},a.batch)}).catch(y=>Tt(a.batch,y)))),a};let ro=async(t,r={})=>{xt++;try{return(await Ce(nt({calls:t,...r}))).ops}finally{xt--}},xt=0,Pn={here(t){W=t,ln()},onWho(t){return Z.add(t),q.size>0&&t([...q.values()]),()=>{Z.delete(t)}},leave(){if(!W)return;let t=JSON.stringify({participant:M??W.participant});if(W=null,Ye({t:"bye"}))return;let r=globalThis.navigator?.sendBeacon;r?r.call(globalThis.navigator,`${d.url}/graview/leave${l!==void 0?`?${qe.param}=${encodeURIComponent(l)}`:""}`,t):w(`${d.url}/graview/leave`,{method:"POST",headers:m,body:t}).catch(()=>{})}},Ft=d.pollMs??800,at=Ft>0&&typeof setInterval=="function"?setInterval(()=>{$()||Ve().catch(()=>{})},Ft):null;if(F){wn();let t;await Promise.race([X,new Promise(r=>t=setTimeout(r,d.openTimeoutMs??3e3))]),clearTimeout(t)}if(n.length>0&&!se){let t=[],r=new Set(k.log.all().map(s=>s.batch));for(let s of n)if(!(s.batch!==void 0&&r.has(s.batch)))try{k.applyAll(s.calls,{...s.intent?{intent:s.intent}:{},...s.batch?{batch:s.batch}:{},...s.via?{via:s.via}:{},...Te(s)})}catch(a){t.push(No(s,a))}t.length>0&&Qe.push(rt(`${o} ${t.length===1?"One no longer fits and was not made":`${t.length} no longer fit and were not made`}: ${t.join("; ")}.`))}let An=new Map,oo=()=>({store:k,author:d.principal,appliedAll:Sn,pending:_,provisional:K,asked:he,answers:Oe,letGo:Ue,sent:(t,r)=>Ce(nt({calls:r,batch:t},t).catch(s=>Tt(t,s))),settle:re,land:z,seen:()=>L,gone:()=>j||se});return{remote:{store:k,typing(t,r){let s=`${t}\0${r}`,a=An.get(s);return a||(a=(__graviewPreload(import.meta.url,["./chunk.RQOX5YDW.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.AVBTPSQF.js")).then(f=>(kn=f,f.typingOf(t,r,f.wireOf(oo())))),An.set(s,a)),a},version:H.version,migrated:H.migrated??[],send:ro,pull:Ve,onRefusal(t){_e.add(t);let r=Qe;Qe=[];for(let s of r)t(s.sentence,s);return()=>_e.delete(t)},onDeclaration(t){return Pt.add(t),()=>Pt.delete(t)},onBuild(t){return At.add(t),i.otherBuild!==void 0&&t(i.otherBuild),()=>At.delete(t)},onConflict(t){return ot.add(t),()=>ot.delete(t)},revision:(t,r)=>pe.of(t,r),seq:()=>L,participant:()=>M,transport:()=>$()?"socket":"poll",status:p,onStatus(t){return x.add(t),()=>x.delete(t)},held:()=>E,onHeld(t){return i.helds.add(t),E!==void 0&&t(E),()=>i.helds.delete(t)},counters:()=>({...O}),who:()=>[...q.values()],pending:()=>_.length+xt,async settled(){for(;$e.size>0;)await Promise.allSettled([...$e])},presence:Pn,close(){at&&clearInterval(at),ke(),Pn.leave(),j=!0,ie&&clearTimeout(ie),ee&&clearTimeout(ee),ge&&clearTimeout(ge);for(let r of ne.splice(0))r.give(new Error("The client closed before the server could be reached."));for(let r of de.splice(0))r();let t=G;G=void 0,le=!1;try{t?.close(1e3,"Closed.")}catch{}}},unheard(){let t=Qe;return Qe=[],t}};function ao(t,r){let s=globalThis.WebSocket;if(!s)throw new Error("This runtime has no WebSocket; the client polls instead.");let a=typeof globalThis.document<"u",f=d.subprotocol?[on]:[];if(!a)try{return new s(t,{headers:r,...f.length>0?{protocols:f}:{}})}catch{}let y=new URL(t);for(let[S,h]of Object.entries(P))y.searchParams.set(S,h);return l!==void 0&&y.searchParams.set(qe.param,l),f.length>0?new s(y.toString(),f):new s(y.toString())}}function Uo(e,n,o=Date.now()){let i,l=e?.trim();if(l)if(/^\d+(\.\d+)?$/.test(l))i=Number(l)*1e3;else{let w=Date.parse(l);Number.isFinite(w)&&(i=Math.max(0,w-o))}let u=typeof n=="number"&&Number.isFinite(n)&&n>=0?n:void 0,d=u!==void 0&&u<50&&i!==void 0&&Math.abs(u*1e3-i)<1e3;return u!==void 0&&!d?u:i??1e3}function Ko(){globalThis.location?.reload?.()}function Jo(){return globalThis.document?.visibilityState!=="hidden"}function an(e,n){if(typeof e=="function")return Math.max(0,e(n));let{min:o=250,max:i=1e4,factor:l=2}=e??{};return Math.min(i,o*l**n)*(.75+Math.random()*.5)}function St(e){let n={};if(!e)return n;e.id&&(n[ve.seat]=e.id),e.roles?.length&&(n[ve.roles]=e.roles.join(",")),e.kind!=="human"&&(n[ve.kind]=e.kind),e.name&&(n[ve.name]=encodeURIComponent(e.name));let o=e.onBehalfOf;return o?.id&&(n[ve.for]=o.id),o?.roles?.length&&(n[ve.forRoles]=o.roles.join(",")),o?.name&&(n[ve.forName]=encodeURIComponent(o.name)),n}var Jr="/graview/views";function sn(e){let n=e.fetch??fetch,o=vt(e.url,e.headers),i=o.url,l={"content-type":"application/json",...e.principal?St(e.principal):{},...o.headers},u=e.state?{hidden:e.state.hidden??[],removed:e.state.removed??[],may:e.state.may??dt.may}:dt,d=new Set,w=b=>{if(JSON.stringify(b)!==JSON.stringify(u)){u=b;for(let T of d)T()}},m=async(b,T)=>{let x=await n(`${i}${e.path??Jr}`,{method:b,headers:l,...T!==void 0?{body:JSON.stringify(T)}:{}}),O=await x.json();if(!x.ok)throw new Error(O.error??`The store answered ${x.status}.`);w({hidden:O.hidden??[],removed:O.removed??[],may:O.may??dt.may})},P=()=>m("GET"),F=e.state?Promise.resolve():P().catch(()=>{}),B=e.pollMs?setInterval(()=>void P().catch(()=>{}),e.pollMs):void 0;return{ready:F,refresh:P,close:()=>clearInterval(B),current:()=>u,onChange(b){return d.add(b),()=>void d.delete(b)},hide:b=>m("POST",{hide:b}),show:b=>m("POST",{show:b}),remove:(b,T)=>m("POST",{remove:b,...T?{about:T}:{}}),async restore(b){let T=u.removed.find(x=>x.name===b)?.lens;await m("POST",{restore:b}),T&&await e.onDeclaration?.()},async lens(b){await m("POST",{lens:b}),await e.onDeclaration?.()}}}var cn=document.getElementById("graview-app"),dn=/^\/forms\/([^/]+)\/?$/.exec(location.pathname),Yr=dn?(__graviewPreload(import.meta.url,["./chunk.LLYRFVIN.js","./chunk.2K4TT2BV.js","./chunk.XOZU4OFA.js","./chunk.GLWSVSQL.js","./chunk.HUJ6YTWE.js","./chunk.XR6YR6RV.js","./chunk.MSWWWLEA.js","./chunk.UITT6JWW.js","./chunk.A5PDXNY6.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.Z2ERZ4S6.js")):He("pages");try{dn?await Yo(decodeURIComponent(dn[1])):await Qo()}catch(e){let n=document.createElement("pre");n.setAttribute("role","alert"),n.style.cssText="margin:2rem;font:14px/1.5 ui-monospace,monospace;white-space:pre-wrap",n.textContent=e instanceof Error?e.message:String(e),cn.replaceChildren(n),window.__graviewFailed=n.textContent}async function Yo(e){let n=await fetch(`/graview/document?form=${encodeURIComponent(e)}`),o=await n.json();if(!n.ok)throw new Error(o.error??`The preview server did not hand over the form (${n.status}).`);let i=await pt(o);if(!i.ok)throw new Error(ct(i.findings));let l=i.app,u=o.principal,d=await bt({app:l,url:location.origin,principal:u,...o.state?{state:o.state,openTimeoutMs:0}:{openTimeoutMs:3e3}});document.title=l.forms?.[e]?.title??l.name;let{mount:w}=await Yr;window.__graview=w(cn,{app:l,form:e,principal:u,remote:d,height:"100dvh",onSubmitted:()=>window.__graviewSubmitted=!0}),window.__graviewReady=!0}async function Qo(){let e=await fetch("/graview/document");if(!e.ok)throw new Error(`The preview server did not hand over the document (${e.status}).`);let n=await e.json(),i=await(async m=>{if(typeof m.module=="string")return(await import(m.module)).app;let P=await pt(m);if(!P.ok)throw new Error(ct(P.findings));return P.app})(n);if(!i||typeof i!="object"||!("schema"in i))throw new Error("The app module the preview server handed does not export an app.");let l=n.principal,u=await bt({app:i,url:location.origin,principal:l,live:!0,subprotocol:!0,pollMs:1200,...n.state?{state:n.state,openTimeoutMs:0}:{openTimeoutMs:3e3}});document.title=i.name;let d,w=sn({url:location.origin,principal:l,...n.views?{state:n.views}:{},onDeclaration:async()=>{let m=await(await fetch("/graview/document")).json();if(typeof m.module=="string")return;let P=await pt(m);P.ok&&d?.setApp(P.app,u)}});await Promise.all([Yr,w.ready]),d=nn(cn,{app:i,remote:u,principal:l,studio:!1,face:"pages",routing:"address",bar:!0,height:"100dvh",label:i.name,heading:1,keptViews:w,...n.draftView?{draftView:n.draftView}:{}}),window.__graview=d,d.drawn().then(()=>{window.__graviewReady=!0})}
|
|
1
|
+
var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{a as co}from"./chunk.SIYBHZDD.js";import{a as qt,b as hr,c as yr,d as gr,e as zt,f as wr,g as vr,h as br,i as Sr,j as Ar,k as kr,l as Pr,m as Er,n as Ze}from"./chunk.QATUGE34.js";import{b as mr}from"./chunk.3RW677X6.js";import{a as It,b as dr,c as lr,d as ur,e as fr,f as _t,g as pr,h as jt}from"./chunk.3HFUO3DC.js";import{a as Ot,g as Dn}from"./chunk.DXWTM4SH.js";import{k as dt}from"./chunk.LQAT7FA6.js";import{E as ir,I as sr,J as cr,h as tr,k as Nt,l as nr,n as rr,r as or,w as Wt,z as ar}from"./chunk.AVFOTYZR.js";import{c as so}from"./chunk.HOQMD6WQ.js";import{Aa as Jn,Ca as Yn,Da as Qn,Fa as Zn,G as Dt,Ga as $t,Ka as Xn,La as er,Oa as ft,T as Wn,Z as In,a as $n,b as lt,c as ut,ga as _n,ha as jn,j as Nn,m as Bt,va as qn,wa as zn,xa as Gn,ya as Un,za as Kn}from"./chunk.N7T7VB77.js";import{a as Te}from"./chunk.SDO3U72B.js";import{$d as Mt,Eb as Rn,Gb as Tn,Td as Re,Ud as Hn,Vd as Vn,_d as Lt,ae as Ht,de as Bn,ee as Vt,fb as je,ld as Fn,md as On,nc as Ct,oc as xn,qb as st,rd as Cn,td as Ln,ud as Mn,vb as En,wd as ct}from"./chunk.F7PIW2EM.js";import"./chunk.FQLNBIQ5.js";import{b as He}from"./chunk.AJZBJBMO.js";function Gt(e){if(Array.isArray(e))return e.map(Gt);if(e&&typeof e=="object"){let n={};for(let o of Object.keys(e).sort()){let i=e[o];i!==void 0&&(n[o]=Gt(i))}return n}return e}function Ut(e){return JSON.stringify(Gt(e))??"undefined"}async function pt(e,n={}){let o=e.compiled===void 0||!uo(e.compiled,e.document)?void 0:Dn(e.compiled,n);if(o?.ok)return o;let{compileDocumentWithoutCheck:i}=await lo();return i(e.document,n)}var Rr,lo=()=>Rr??=(__graviewPreload(import.meta.url,["./chunk.DXWTM4SH.js","./chunk.BI6DS3PZ.js","./chunk.7R727IKU.js","./chunk.LQAT7FA6.js","./chunk.F7PIW2EM.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.TMAZNDA6.js")).catch(e=>{throw Rr=void 0,e});function uo(e,n){let o=typeof e=="object"&&e!==null?e.document:void 0,i=n;if(typeof i=="string")try{i=JSON.parse(i)}catch{return!1}return o!==void 0&&Ut(Ot(o).document)===Ut(Ot(i).document)}var d=He(Dt(),1);var ht=He(Dt(),1),Kt="data-graview-drawn",fo=200,Tr=50,po=1e4,mt=()=>typeof performance<"u"?performance.now():Date.now();function mo(e){let n=[...e.querySelectorAll("img")];for(let o of e.querySelectorAll("[data-worker-view]"))o.shadowRoot&&n.push(...o.shadowRoot.querySelectorAll("img"));return n}function ho(e,n){if(e.ownerDocument.fonts?.status==="loading"||zn()>0||Jn(n)>0||e.querySelector('[aria-busy="true"]')||mo(e).some(i=>!i.complete&&i.loading!=="lazy"))return!1;for(let i of e.querySelectorAll("[data-worker-view-place]"))if(!i.querySelector("[data-worker-view][data-worker-view-drawn], [data-worker-view][data-worker-view-failed]"))return!1;return!0}function xr(e){let n=e.querySelector("[data-embed-content]"),o=[...e.querySelectorAll("[data-worker-view]")].map(i=>`${i.offsetWidth}x${i.offsetHeight}`);return`${e.scrollWidth}x${e.scrollHeight}|${n?`${n.scrollWidth}x${n.scrollHeight}`:""}|${o.join(",")}`}function yo(e,n,o,i){e.removeAttribute(Kt);let l=e.ownerDocument.defaultView;if(!l)return()=>{};let u=mt(),c=u,w=xr(e),m=!1,k,F=typeof MutationObserver>"u"?void 0:new MutationObserver(x=>{x.some(O=>!(O.target===e&&O.attributeName===Kt))&&(c=mt())});F?.observe(e,{childList:!0,subtree:!0,characterData:!0,attributes:!0});let N=()=>{m=!0,F?.disconnect(),k!==void 0&&clearTimeout(k)},b=x=>{let O=!1,ne=()=>{O||(O=!0,x())};typeof l.requestAnimationFrame=="function"&&l.requestAnimationFrame(()=>setTimeout(ne,0)),setTimeout(ne,100)},T=()=>{if(m)return;let x=xr(e);x!==w&&(w=x,c=mt());let O=mt();if(ho(e,i)&&O-c>=fo||O-u>=po){b(()=>{m||(N(),e.setAttribute(Kt,n),Qn(),o())});return}k=setTimeout(T,Tr)};return k=setTimeout(T,Tr),N}function Fr(e,n,o,i,l){Yn();let u=(0,ht.useRef)({place:o,onDrawn:i});u.current={place:o,onDrawn:i},(0,ht.useLayoutEffect)(()=>{l&&Kn(l);let c=k=>yo(k,u.current.place.path,()=>u.current.onDrawn?.(u.current.place),l);if(e.current)return c(e.current);let w,m=!1;return queueMicrotask(()=>{!m&&e.current&&(w=c(e.current))}),()=>{m=!0,w?.()}},[n,e,l])}var ve=He(Dt(),1),Xe,go=Te(()=>(__graviewPreload(import.meta.url,["./chunk.5IEFTFKQ.js","./chunk.VKHAAH32.js","./chunk.MK72IRIY.js","./chunk.DHJI7LIW.js","./chunk.QL77K3D4.js","./chunk.N7T7VB77.js","./chunk.SDO3U72B.js","./chunk.F7PIW2EM.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.F7IQ4B6A.js"))),Or=()=>go().then(e=>void(Xe=e),()=>new Promise(e=>setTimeout(e,2e3)).then(Or)),Jt=qn(Or),Cr=e=>!!e&&Xe===void 0;function Yt({onReady:e,fetch:n}){return(0,ve.useLayoutEffect)(()=>void n().then(e),[e,n]),null}var wo=0;function Lr(e){let[n,o]=(0,ve.useState)(()=>Xe);(0,ve.useEffect)(()=>{if(!e||n)return;let u=!1;return Jt().then(()=>{u||o(Xe)}),()=>{u=!0}},[e,n]);let i=(0,ve.useMemo)(()=>wo+=1,[e]);return{over:(0,ve.useMemo)(()=>{let u=n??Xe;if(!e||!u)return;let{source:c,worker:w,...m}=e,k={...m,worker:w??{source:c},draft:!0};return{name:e.manifest.name,home:e.manifest.attach==="home",register:F=>u.registerWorkerView(F,k)}},[e,n]),n:i}}var Vr=He(co(),1),$=He(so(),1);var g=He(Wn(),1);function yt(e,n={}){let o=$t(e);return{Face:o.part((l,u)=>(0,d.createElement)(l,u),n),fetch:()=>o.load().then(()=>{}),here:()=>o.current!==void 0||o.failed}}var Xt=e=>Promise.all([e,sr()]).then(([n])=>n),Br=Te(()=>(__graviewPreload(import.meta.url,["./chunk.ZQHCNFJK.js","./chunk.KRFRREEW.js","./chunk.D4TA5XDC.js","./chunk.GIW657OR.js","./chunk.SBLYBRDU.js","./chunk.5X22RKB3.js","./chunk.XZUHFXME.js","./chunk.HJCQ6I3S.js","./chunk.SAYAFOF6.js","./chunk.R3N73BJO.js","./chunk.MU3XII7I.js","./chunk.SJALH7IX.js","./chunk.6DOOLVT4.js","./chunk.VX65S2FA.js","./chunk.747OH3EE.js","./chunk.E6RNMWFN.js","./chunk.VN7I7XIO.js","./chunk.MBP7VDYM.js","./chunk.WD4VPMEE.js","./chunk.VUAOCYG2.js","./chunk.5POG3G2C.js","./chunk.2XSIJH5J.js","./chunk.U5P23GO7.js","./chunk.QATUGE34.js","./chunk.3RW677X6.js","./chunk.ISRQQVS4.js","./chunk.GZHZLJBF.js","./chunk.Y7H5O2SL.js","./chunk.OJGHDWI6.js","./chunk.6HZY5NRX.js","./chunk.UO544PZH.js","./chunk.4STDIZVI.js","./chunk.HZHNM2KI.js","./chunk.AVFOTYZR.js","./chunk.HOQMD6WQ.js","./chunk.N7T7VB77.js","./chunk.SDO3U72B.js","./chunk.F7PIW2EM.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.UACSX64H.js"))),vo=Te(()=>(__graviewPreload(import.meta.url,["./chunk.YOT7ESDG.js","./chunk.66IKLMYX.js","./chunk.C634A6ZC.js","./chunk.N5WDQAIM.js","./chunk.ZQHCNFJK.js","./chunk.Q355UPFG.js","./chunk.PXQVXBNG.js","./chunk.7LZ6JDJA.js","./chunk.KRFRREEW.js","./chunk.VOOOIECX.js","./chunk.GIW657OR.js","./chunk.EVEHSENK.js","./chunk.SBLYBRDU.js","./chunk.2LNSENPV.js","./chunk.WS7LAT4Z.js","./chunk.5X22RKB3.js","./chunk.XZUHFXME.js","./chunk.GQNSNJTJ.js","./chunk.SJALH7IX.js","./chunk.E6RNMWFN.js","./chunk.IA5ZBMRD.js","./chunk.VN7I7XIO.js","./chunk.REH6RXNH.js","./chunk.MBP7VDYM.js","./chunk.BDTT4ENI.js","./chunk.BJUUSIQY.js","./chunk.5POG3G2C.js","./chunk.2XSIJH5J.js","./chunk.XOZU4OFA.js","./chunk.LA2DMHZC.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.MBU7UH6J.js","./chunk.2QFKNTAZ.js","./chunk.BI6DS3PZ.js","./chunk.PGA5TUSN.js","./chunk.7R727IKU.js","./chunk.LQAT7FA6.js","./chunk.GZHZLJBF.js","./chunk.Y7H5O2SL.js","./chunk.OJGHDWI6.js","./chunk.6HZY5NRX.js","./chunk.UO544PZH.js","./chunk.4STDIZVI.js","./chunk.HZHNM2KI.js","./chunk.AVFOTYZR.js","./chunk.HOQMD6WQ.js","./chunk.N7T7VB77.js","./chunk.SDO3U72B.js","./chunk.F7PIW2EM.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.Q5I5M3FR.js"))),bo=Te(()=>(__graviewPreload(import.meta.url,["./chunk.YOT7ESDG.js","./chunk.66IKLMYX.js","./chunk.C634A6ZC.js","./chunk.N5WDQAIM.js","./chunk.ZQHCNFJK.js","./chunk.Q355UPFG.js","./chunk.PXQVXBNG.js","./chunk.7LZ6JDJA.js","./chunk.KRFRREEW.js","./chunk.VOOOIECX.js","./chunk.GIW657OR.js","./chunk.EVEHSENK.js","./chunk.SBLYBRDU.js","./chunk.2LNSENPV.js","./chunk.WS7LAT4Z.js","./chunk.5X22RKB3.js","./chunk.XZUHFXME.js","./chunk.GQNSNJTJ.js","./chunk.SJALH7IX.js","./chunk.E6RNMWFN.js","./chunk.IA5ZBMRD.js","./chunk.VN7I7XIO.js","./chunk.REH6RXNH.js","./chunk.MBP7VDYM.js","./chunk.BDTT4ENI.js","./chunk.BJUUSIQY.js","./chunk.5POG3G2C.js","./chunk.2XSIJH5J.js","./chunk.XOZU4OFA.js","./chunk.LA2DMHZC.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.MBU7UH6J.js","./chunk.2QFKNTAZ.js","./chunk.BI6DS3PZ.js","./chunk.PGA5TUSN.js","./chunk.7R727IKU.js","./chunk.LQAT7FA6.js","./chunk.GZHZLJBF.js","./chunk.Y7H5O2SL.js","./chunk.OJGHDWI6.js","./chunk.6HZY5NRX.js","./chunk.UO544PZH.js","./chunk.4STDIZVI.js","./chunk.HZHNM2KI.js","./chunk.AVFOTYZR.js","./chunk.HOQMD6WQ.js","./chunk.N7T7VB77.js","./chunk.SDO3U72B.js","./chunk.F7PIW2EM.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.5T53SF2K.js"))),Dr=yt(()=>Xt(Br().then(e=>e.SceneFace)),{what:"This view"}),$r=yt(()=>Br().then(e=>e.SceneKeeping),{quiet:!0}),Nr=yt(()=>Xt(vo().then(e=>e.PagesContent)),{what:"This page"}),Wr=yt(()=>Xt(bo().then(e=>e.PictureFace)),{what:"This picture"}),So=Dr.Face,Ao=$r.Face,ko=Nr.Face,Po=Wr.Face;function Ve(...e){let n=e.length>0?e:["scene","pages","picture"],o=new Set(n.flatMap(Ir));return Promise.all([...[...o].map(i=>i.fetch()),rr()]).then(()=>{},()=>{})}var Ir=e=>e==="pages"?[Nr]:e==="picture"?[Wr]:[Dr,$r],_r=e=>Ir(e).every(n=>n.here()),Eo=150,Qt=0;function Mr(e,n){if(_r(e))return n();let o=++Qt,i=()=>{o===Qt&&(Qt+=1,n())};Ve(e).then(i),setTimeout(i,Eo)}var Ro=768;function To(e,n){let o=n!==null&&n>=Ro;(0,d.useEffect)(()=>{if(!o||e==="picture")return;let i=e==="pages"?"scene":"pages";if(_r(i))return;let l=globalThis,u=()=>void Ve(i),c=()=>{},w=Zn(()=>{if(l.requestIdleCallback&&l.cancelIdleCallback){let m=l.requestIdleCallback(u,{timeout:4e3});c=()=>l.cancelIdleCallback?.(m)}else{let m=setTimeout(u,1500);c=()=>clearTimeout(m)}});return()=>(w(),c())},[e,o])}function xo({asked:e,shown:n,onDrawn:o}){return(0,d.useLayoutEffect)(()=>o(e,n),[e,n,o]),null}function Fo({auto:e,scene:n}){return(0,g.jsx)("div",{"data-embed-content":"","aria-busy":"true",style:{flex:e?n?`0 0 ${zt}px`:"0 0 auto":"1 1 auto",minHeight:0,background:"var(--graview-ground)"}})}var Oo=$t(Te(()=>(__graviewPreload(import.meta.url,["./chunk.AJZBJBMO.js"]),import("./chunk.5JNXQHN4.js")))).part((e,n)=>(0,g.jsx)(e.StudioPlace,{...n}),{quiet:!0});function jr(e,n,o,i,l){return _t(e,fr(n?ut(n):l??$n,i),o)}function en(e){return e&&ut(e).overview?"graview":"scene"}function Hr(e,n){if(n.homeView?.()===void 0)return!1;let o=e.pages?.first?.trim();return o===void 0||o===""||o==="/"||o.toLowerCase()==="home"}function qr(e){let[,n]=(0,d.useState)(!1),o=(0,d.useCallback)(()=>n(!0),[]),i=(0,d.useRef)(!1);return e.at&&!gt?(0,g.jsx)(Yt,{onReady:o,fetch:tn}):!i.current&&Cr(e.draftView)?(0,g.jsx)(Yt,{onReady:o,fetch:Jt}):(i.current=!0,(0,g.jsx)(Co,{...e}))}function Co(e){let{app:n,stop:o,bar:i=!0,standing:l="Everything is in order",principal:u,heading:c=2}=e,{rootRef:w,scope:m,css:k,scheme:F,store:N,presence:b,brand:T,auto:x,height:O}=wr(e),ne=Lr(e.draftView),R=yr(e,cr,ne.over),[ce]=(0,d.useState)(Un),p=e.basePath===void 0?{}:{basePath:e.basePath},[B]=(0,d.useState)(Nt),W=e.notices??B,U=v=>Lt(v,p),oe={...e.routing?{routing:e.routing}:{},...p},[ae]=(0,d.useState)(()=>{let v=e.at?.face;if(v)return v;let X=o===void 0&&Hr(n,R)?"pages":en(o),D=It({...oe,face:X});return e.face===void 0&&e.onOpening?.(D),D}),[Se,H]=(0,d.useState)(()=>e.face!==void 0&&e.face!=="pages"&&!e.at&&o===void 0&&dr(oe)&&Hr(n,R)),Ae=(0,d.useRef)(e.onFace);Ae.current=e.onFace,(0,d.useLayoutEffect)(()=>{Se&&(Ae.current?.("pages"),H(!1))},[Se]);let P=Se?"pages":e.face??ae,A=n.schema.kinds,V=e.routing==="address",ke=(0,d.useMemo)(()=>e.at?gt.settleAt(e,N.seenBy(u??{kind:"human"}),R.places()):void 0,[]),L=(0,d.useMemo)(()=>jn(R,n.schema),[R,n.schema]),me=(0,d.useMemo)(()=>{let v=ke?.stop??(V?lr(e.basePath):void 0)??o;return P==="scene"&&v===void 0&&L===void 0&&(e.path===void 0||Zt(e.path))?jt(void 0):jr(P,v,A,R.places(),L)},[]),[I]=(0,d.useState)(P);(0,d.useEffect)(()=>{I!=="pages"&&_n(R)},[I,R]);let M=(0,d.useRef)(void 0),z=v=>v===void 0||Zt(v)?"/":v;M.current??={path:z(ke?.path??(V?P==="pages"?(Mt(window.location.pathname,e.basePath)??"/")+window.location.search:"/":e.path)),asked:e.path},e.path!==M.current.asked&&(M.current={path:z(e.path),asked:e.path});let Y=(0,d.useRef)(e.onNavigate);Y.current=e.onNavigate;let Fe=(0,d.useCallback)((v,X)=>{M.current.path=v,Y.current?.(v,X)},[]),{at:Pe,setAt:j,steering:K,steer:re}=kr(M.current.path),C=(0,d.useContext)(zr);C&&(C.pages=()=>M.current.path);let Oe=(0,d.useRef)(void 0),Q=(0,d.useCallback)(v=>void(M.current.path=v),[]),J=tr(w),[_,he]=(0,d.useState)(!1),de=e.pagesBelow!==void 0&&J!==null&&J<e.pagesBelow&&(P==="scene"||P==="graview")&&!_,E=de?"pages":P,Z=(0,d.useRef)(!1);Z.current=_&&e.pagesBelow!==void 0&&J!==null&&J<e.pagesBelow&&(P==="scene"||P==="graview"),C&&(C.shown=E);let Be=(0,d.useRef)(P==="graview"?"graview":"scene");(E==="scene"||E==="graview")&&(Be.current=E),(0,d.useState)(()=>{if(!V||typeof window>"u"||E==="pages"||E==="picture")return;let{pathname:v,search:X,hash:D}=window.location;Mt(v,e.basePath)==="/"&&window.history.replaceState(window.history.state,"",`${U(Re)}${X}${D}`)}),gr(w,E,e.onIntrinsicHeight),To(E,J);let le=Pr(e.onError,E),Ce=Er(e.onReady,E),Ue=(0,d.useRef)(e.onFaceDrawn);Ue.current=e.onFaceDrawn;let ye=(0,d.useCallback)((v,X)=>{Ce(X),Ue.current?.(v)},[Ce]),[De,Le]=(0,d.useState)(null),Ke=R.places(),ge=(0,d.useRef)({shown:E,onFace:e.onFace});ge.current={shown:E,onFace:e.onFace};let $e=(0,d.useCallback)((v,X,D)=>{if(V){Oe.current?.(v,X,D);return}ge.current.onFace?.(v),Y.current?.(v==="pages"?X??M.current.path:Re,"push")},[V]),[At,Je]=(0,d.useState)(void 0);(0,d.useEffect)(()=>{E==="pages"&&Je(void 0)},[E]);let G=(0,d.useRef)(o);(0,d.useEffect)(()=>{G.current!==o&&(G.current=o,Je(void 0))},[o]);let ue=(0,d.useCallback)(v=>{if(ge.current.shown==="pages"){if(he(!0),Je(v),P==="scene"||P==="graview"){Mr(P,()=>{V?window.history.pushState(null,"",`${U(Re)}${v??""}`):Y.current?.(Re,"push")});return}Mr(Be.current,()=>$e(Be.current,void 0,v))}},[V,P,e.basePath,$e]),q=(0,d.useCallback)(v=>{if(ge.current.shown==="pages"){K.go.current||(M.current.path=v),re(v);return}if(M.current.path=v,j(v),Z.current){he(!1),V?window.history.pushState(null,"",U(v)):Y.current?.(v,"push");return}$e("pages",v)},[K,re,j,$e,V,e.basePath]),Ne=R.arrangement?.(),ie=E==="pages",We=e.hrefOf,Me=We??(V?U:void 0),Ie=(0,d.useMemo)(()=>({open:q,...We?{href:We}:V?{href:v=>Lt(v,e.basePath===void 0?{}:{basePath:e.basePath})}:{}}),[q,V,e.basePath,We]);return(0,g.jsxs)("section",{ref:w,className:m,"aria-label":e.label??n.name,"data-graview-embed":E,"data-graview-scheme":F,...de?{"data-graview-embed-narrow":""}:{},style:{position:"relative",isolation:"isolate",height:O,minHeight:x?0:320,display:"flex",flexDirection:"column",overflow:"hidden",borderRadius:"var(--graview-radius, 12px)"},children:[(0,g.jsx)("style",{children:k}),(0,g.jsxs)(er.Provider,{value:le,children:[(0,g.jsx)(vr,{rootRef:w,board:W}),(0,g.jsx)(hr,{rootRef:w,firstLook:e.firstLook,app:ar(T??{name:n.name},n.schema)}),(0,g.jsx)(Ze,{module:"@graview/react",report:le,content:!0,children:(0,g.jsx)(Gn.Provider,{value:ce,children:(0,g.jsx)(In,{store:N,views:R,initialView:me,scheme:F,...br(e,b,T),...e.onSeat?{onSeat:e.onSeat}:{},children:(0,g.jsxs)(nr.Provider,{value:W,children:[(0,g.jsx)(Vo,{face:E,stop:At??o,kinds:A,places:Ke,opens:L}),C?(0,g.jsx)(Lo,{into:C}):null,(0,g.jsx)(Mo,{rootRef:w,face:P,shown:E,path:Pe,stop:o,draft:ne.n,onDrawn:e.onDrawn,parts:ce}),V?(0,g.jsx)(ur,{pagesWere:ke?.path,basePath:e.basePath,shown:E,onFace:e.onFace,toggle:Oe,kinds:A,places:Ke,opens:L,landed:Q}):null,i&&E!=="picture"?(0,g.jsx)(Ze,{module:"@graview/embed",report:le,children:(0,g.jsx)(Sr,{name:T?.name??n.name,heading:c,named:qt(i).name!==!1,faces:qt(i).faces===!1?void 0:{scene:{label:Hn(Ne),current:!ie,go:()=>ue(),reach:()=>void Ve(Be.current)},pages:{label:Vn(Ne),current:ie,go:()=>q(M.current.path),reach:()=>void Ve("pages")}},at:ie?Pe:null,without:e.pages?.without(),home:{...Me?.("/")!==void 0?{href:Me("/")}:{},go:()=>q("/"),current:ie&&Pe.split("?")[0]==="/"},reach:{...Me?{href:Me}:{},go:v=>q(v.path)},standing:l,hostActions:e.hostActions,barActions:e.barActions,keeping:ie?void 0:(0,g.jsx)(Bo,{app:n,studio:e.studio,report:le}),onFind:Le,switch:e.switch})}):null,(0,g.jsx)(or.Provider,{value:De,children:(0,g.jsx)(Ze,{module:E==="pages"||E==="picture"?"@graview/pages":"@graview/react",report:le,content:!0,children:(0,g.jsxs)(d.Suspense,{fallback:(0,g.jsx)(Fo,{auto:x,scene:E!=="pages"&&E!=="picture"}),children:[E==="picture"?(0,g.jsx)(Po,{scope:m,store:N,views:R,as:(o?ut(o).within?.view:void 0)??""}):E==="pages"?(0,g.jsx)(ko,{store:N,views:R,presence:b,auto:x,brand:T,steering:K,overview:ue,scope:m,titleLevel:Ar(c),quickAsk:Wt(e.quickAsk),props:{...e,onNavigate:Fe,...V?{}:{path:M.current.path}}}):(0,g.jsx)(Xn.Provider,{value:Ie,children:(0,g.jsx)(So,{address:V,auto:x,scheme:F,scope:m,quickAsk:Wt(e.quickAsk)})}),(0,g.jsx)(xo,{asked:P,shown:E,onDrawn:ye})]})},E)})]})})})})]})]})}var Zt=e=>e.split(/[?#]/)[0]===Re,zr=(0,d.createContext)(null);function Lo({into:e}){return e.view=ft().view,null}function Mo({rootRef:e,face:n,shown:o,path:i,stop:l,draft:u,onDrawn:c,parts:w}){let{view:m}=ft(),k=o==="scene"||o==="graview",F=lt(m),{pan:N,...b}=m,T=m.pan?lt(b):F,x={face:n,path:k?Re:o==="picture"?l??"#":i,stop:F};return Fr(e,`${o} ${k?T:x.path} ${u}`,x,c,w),null}var gt,Ho=Te(()=>(__graviewPreload(import.meta.url,["./chunk.3HFUO3DC.js","./chunk.AVFOTYZR.js","./chunk.HOQMD6WQ.js","./chunk.N7T7VB77.js","./chunk.SDO3U72B.js","./chunk.F7PIW2EM.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.WICFQROI.js"))),tn=()=>Ho().then(e=>void(gt=e),()=>new Promise(e=>{let n=()=>{window.removeEventListener("online",n),clearTimeout(o),e()},o=setTimeout(n,1e4);window.addEventListener("online",n)}).then(tn));function Vo({face:e,stop:n,kinds:o,places:i,opens:l}){let{view:u,go:c}=ft(),w=(0,d.useRef)({face:e,stop:n});return(0,d.useLayoutEffect)(()=>{let m=w.current.stop!==n,k=w.current.face!==e,F=w.current.face==="pages";if(w.current={face:e,stop:n},!m&&!k||e==="pages"||e==="picture")return;let N=(m||F)&&n!==void 0?jr(e,n,o,i):F&&pr(u)?_t(e,jt(l),o):e==="graview"?Bt(u,!0):u.overview?Nn(Bt(u,!1),ir(u,o)):u;c(N)},[e,n,o,u,c,l]),null}function Bo({app:e,studio:n,report:o}){return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(d.Suspense,{fallback:null,children:(0,g.jsx)(Ao,{})}),n!==!1?(0,g.jsx)(Ze,{module:"@graview/studio",report:o,children:(0,g.jsx)(Do,{app:e,studio:n})}):null]})}function Do({app:e,studio:n}){let o={app:e,within:"box",...n?{onApply:n.onApply}:{},...n?.landmark?{landmark:n.landmark}:{},...n?.offered!==void 0?{offered:n.offered}:{}},i=n?.place;return i?(0,g.jsx)(i,{...o}):(0,g.jsx)(d.Suspense,{fallback:null,children:(0,g.jsx)(Oo,{...o})})}function $o({path:e,stop:n,...o},i){return{...o,app:i.app,at:i.at,remote:i.remote,...i.remote.presence?{presence:i.remote.presence}:{}}}function nn(e,n){let o=n.store??n.remote?.store??mr(n.app,n.seed),i=n.notices??Nt(),l=null,u={},c=0,w=n.label,m=n.app,k=Promise.resolve(),F=n.at?.face??n.face,N=F===void 0?void 0:It({...n,face:F}),b=N??en(n.stop),T=null,x=[],O=p=>{if(T=p,p!==b)return;let B=x;x=[];for(let W of B)W()};function ne(){let[p,B]=(0,d.useState)(N),[W,U]=(0,d.useState)(n.stop),[oe,ae]=(0,d.useState)(n.path),[Se,H]=(0,d.useState)(n.scheme??"auto"),[Ae,P]=(0,d.useState)(n.principal),[A,V]=(0,d.useState)(n.seats),[ke,L]=(0,d.useState)(n.quickAsk),[me,I]=(0,d.useState)(n.people),[M,z]=(0,d.useState)(n.hostContext),[Y,Fe]=(0,d.useState)(n.brand),[Pe,j]=(0,d.useState)(n.whileAway),[K,re]=(0,d.useState)(n.label),[C,Oe]=(0,d.useState)(n.hostActions),[Q,J]=(0,d.useState)(n.barActions),[_,he]=(0,d.useState)(void 0),[de,E]=(0,d.useState)(n.draftView);return l={app:Z=>{he(Z),ae(void 0),U(void 0)},face:B,stop:U,path:ae,scheme:H,seat:P,seats:V,quickAsk:L,people:I,hostContext:z,brand:Fe,whileAway:j,label:re,hostActions:Oe,barActions:J,draft:E},(0,g.jsx)(zr.Provider,{value:u,children:(0,g.jsx)(qr,{..._?$o(n,_):n,store:o,notices:i,...p!==void 0?{face:p}:{},onOpening:Z=>{b=Z},...W!==void 0?{stop:W}:{},...oe!==void 0?{path:oe}:{},...Ae?{principal:Ae}:{},...A?{seats:A}:{},...ke!==void 0?{quickAsk:ke}:{},...me?{people:me}:{},...M?{hostContext:M}:{},...Y?{brand:Y}:{},whileAway:Pe,label:K,hostActions:C,barActions:Q,draftView:de,scheme:Se,onFace:Z=>{b=Z,B(Z)},onSeat:P,onFaceDrawn:O},_?.n??0)})}let R=()=>{let p=u.view?.focusId,B=p?o.graph.getNode(p)?.kind:void 0,W=(u.shown??b)==="scene"||(u.shown??b)==="graview";return{face:b,path:W?Re:u.pages?.()??n.path??"/",stop:u.view?lt(u.view):n.stop??"#",...B?{kind:B}:{}}},ce=(0,Vr.createRoot)(e);return(0,$.flushSync)(()=>ce.render((0,g.jsx)(ne,{}))),{get store(){return o},where:R,setApp:(p,B,W)=>{let U="graph"in B?{store:B}:B,oe=()=>{let ae=R();o=U.store,w=W?.label??(w===m.name?p.name:w),m=p,(0,$.flushSync)(()=>{l?.label(w),l?.app({app:p,remote:U,at:ae,n:++c})})};gt?oe():k=k.then(tn).then(oe)},setFace:p=>{b=p,(0,$.flushSync)(()=>l?.face(p))},setStop:p=>(0,$.flushSync)(()=>l?.stop(p)),setPath:p=>(0,$.flushSync)(()=>{if(Zt(p)){(b==="pages"||b==="picture")&&(b="scene",l?.face("scene"));return}l?.path(p),b!=="pages"&&(b="pages",l?.face("pages"))}),setScheme:p=>(0,$.flushSync)(()=>l?.scheme(p)),setSeat:p=>(0,$.flushSync)(()=>l?.seat(p)),setSeats:p=>(0,$.flushSync)(()=>l?.seats(p)),setQuickAsk:p=>(0,$.flushSync)(()=>l?.quickAsk(p)),setPeople:p=>(0,$.flushSync)(()=>l?.people(p)),setHostContext:p=>(0,$.flushSync)(()=>l?.hostContext(p)),setBrand:p=>(0,$.flushSync)(()=>l?.brand(p)),setWhileAway:p=>(0,$.flushSync)(()=>l?.whileAway(p)),setDraftView:p=>(0,$.flushSync)(()=>l?.draft(p)),setLabel:p=>{w=p,(0,$.flushSync)(()=>l?.label(p))},setHostActions:p=>(0,$.flushSync)(()=>l?.hostActions(p)),setBarActions:p=>(0,$.flushSync)(()=>l?.barActions(p)),drawn:()=>k.then(()=>T===b?void 0:new Promise(p=>x.push(p))),notify:p=>{let B;return(0,$.flushSync)(()=>{B=i.notify(p)}),B},unmount:()=>ce.unmount()}}var wt=e=>`s${(e+1).toString(36)}`;var be={seat:"x-graview-seat",roles:"x-graview-roles",kind:"x-graview-kind",name:"x-graview-name",for:"x-graview-for",forRoles:"x-graview-for-roles",forName:"x-graview-for-name",via:"x-graview-via"},qe={header:"x-graview-key",param:"graview_key",cookie:"graview_key"};function vt(e,n={}){try{let o=new URL(e),i=o.searchParams.get(qe.param);if(i)return o.searchParams.delete(qe.param),{url:o.origin+o.pathname.replace(/\/$/,"")+o.search,key:i,headers:{[qe.header]:i,...n}}}catch{}return{url:e.replace(/\/$/,""),headers:n}}var Gr="/graview/friction";var Ur="/graview/live",rn="graview.ship",on=`${rn}.${st}`;var ze=class extends Error{constructor(n){super(n),this.name="Superseded"}},xe=e=>e?.lineage?{lineage:e.lineage}:{},No=(e,n)=>`${e.calls.map(o=>o.name.replace(/-/g," ")).join(", ")} (${n instanceof Error?n.message.split(`
|
|
2
|
+
`)[0]??"":String(n)})`;function Wo(e){if(!e)return[];try{let n=e.storage.getItem(e.key);if(n===null)return[];e.storage.removeItem(e.key);let o=JSON.parse(n);return Array.isArray(o)?o.filter(i=>!!i&&Array.isArray(i.calls)):[]}catch{return[]}}var Ge=class extends Error{constructor(o){super(o.sentence);this.refusal=o;this.name="RemoteRefusedError"}},Io={401:"forbidden",403:"forbidden",404:"missing",413:"limit"},pe=class extends Error{constructor(o,i){super(o);this.conflicts=i;this.name="StaleWrite"}},et=class extends Error{constructor(n){super(n),this.name="Unreached"}},_o=new Set([502,503,504]);async function jo(e){try{return(await e.clone().json()).reason==="unavailable"}catch{return!1}}function qo(){let e=Math.random().toString(36).slice(2,8),n=0;return()=>`local-${e}-${++n}`}var zo=1,Go=()=>({refusals:new Set,conflicts:new Set,statuses:new Set,helds:new Set,builds:new Set,who:new Set,declarations:new Set,tally:{reconnects:0,rebases:0,conflicts:0,resyncs:0}});async function bt(e){return(await Kr(e,Wo(e.carry),"This app was updated while your changes were on the way.",Go())).remote}async function Kr(e,n,o,i){let{key:l,...u}=vt(e.url,e.headers),c={...e,...u},w=c.fetch??fetch,m={"content-type":"application/json",...c.headers??{}},k={...St(c.principal),[be.via]:c.via??"web"};Object.assign(m,k);let F=c.live===!0,N=c.presenceEveryMs,b=c.visible??Jo,T="connecting",x=i.statuses,O=i.tally,ne=[],R,ce=[],p=()=>T==="online"&&R!==void 0?"held":T,B=()=>{let t=p();if(i.told!==t){i.told=t;for(let r of[...x])r(t)}},W=t=>{if(!(t===T||se)&&(T==="offline"&&t==="online"&&O.reconnects++,T=t,B(),t==="online"))for(let r of ne.splice(0))r.again()},U=t=>{if(se)return;let r=typeof t=="string"&&t.length>0?t:void 0,s=r!==R;if(R=r,oe(),!!s&&(B(),r===void 0)){for(let a of ce.splice(0))a();ee&&clearTimeout(ee),un()}},oe=()=>{if(i.toldHeld!==R){i.toldHeld=R;for(let t of[...i.helds])t(R??null)}},ae=async(t,r)=>{let s;try{s=await w(t,r)}catch(a){throw D()||W("offline"),new et(a instanceof Error?a.message:String(a))}if(s.status===503&&await jo(s))return W("online"),s;if(_o.has(s.status))throw D()||W("offline"),new et(`The server is away (${s.status})`);return W("online"),s},Se=async(t=!1)=>{let r=`${c.url}/graview/state?opFormat=${je.op}`,s=t?await w(r,{headers:m}):await ae(r,{headers:m});if(!s.ok)throw new Error((await s.json().catch(()=>({}))).error??`The server refused (${s.status})`);return await s.json()},H=c.state??await Se(!0);F||(T="online"),R=typeof H.held=="string"&&H.held.length>0?H.held:void 0,oe();let Ae=H.enabledModules??c.enabledModules,P=c.localApp?c.localApp(c.app):c.app,A=new Mn({schema:P.schema,mutations:P.mutations??[],invariants:P.invariants??[],...P.policy?{policy:P.policy}:{},...P.publishing?{publishing:P.publishing}:{},...P.modules?{modules:P.modules}:{},...Ae?{enabledModules:Ae}:{},...P.intelligence?{intelligence:P.intelligence}:{},...P.brand?.timeZone?{timeZone:P.brand.timeZone}:{},snapshot:H.snapshot,log:H.log,...H.horizon!==void 0?{horizon:H.horizon}:{},ids:qo(),...c.storeOptions??{}});Tn.served.add(A);let V=c.friction!==!1&&c.principal?.kind!=="visitor";V&&Fn(A,t=>{V&&w(`${c.url}${Gr}`,{method:"POST",headers:m,body:JSON.stringify({event:t})}).then(r=>void(V=r.status!==404&&r.status!==410),()=>{})});let ke=Cn(A),L=H.log.at(-1)?.seq??(H.horizon??0)-1,me=Ct.of(H.log,{horizon:H.horizon??0}),I=null,M,z=new Map,Y=i.who,Fe=!1,Pe=t=>{if(se)return;Fe=!0;let r=Bn(new Map,t,Date.now(),Ht,I?.participant);M!==void 0&&r.delete(M);let s=r.size!==z.size;if(!s)for(let[a,f]of r)Vt(f,z.get(a))||(s=!0);if(z=r,!!s)for(let a of[...Y])a([...z.values()])},j=[],K=new Set,re=t=>{let r=j.indexOf(t);r>=0&&j.splice(r,1)},C=new Map,Oe=(t,r)=>{let s=C.get(t);s&&(C.delete(t),s.resolve({ops:r.filter(a=>a.batch===t),batch:t}))},Q,J=[],_=(t,r=[])=>{if(t.length===0&&r.length===0)return[];if(Q)return J.push({ops:t,drop:r}),[];let s=Math.min(...t.filter(h=>h.seq>L).map(h=>h.seq));if(Number.isFinite(s)&&s>L+1)return J.push({ops:t,drop:r}),he(),[];let a=j.filter(h=>t.some(te=>te.batch===h)),f=[...new Set([...r,...a])].filter(h=>K.has(h)),y,S=j.filter(h=>!a.includes(h));try{y=A.rebase({confirmed:t,pending:S,drop:f}).confirmed}catch(h){if(!(h instanceof Ln))throw h;return J.push({ops:t,drop:r}),he(),[]}for(let h of a)re(h);t.some(h=>h.seq>L)&&S.some(h=>!f.includes(h))&&O.rebases++,t.length>0&&(L=Math.max(L,...t.map(h=>h.seq)),me.note(t));for(let h of f)K.delete(h);for(let h of a)Oe(h,t);return y},he=()=>{Q||(Q=Le(Se().then(t=>{if(de(t)){J=[];return}let r=new Set(t.log.map(f=>f.batch)),s=j.filter(f=>r.has(f));for(let f of s)re(f);let a=A.adopt({snapshot:t.snapshot,log:t.log,...t.horizon!==void 0?{horizon:t.horizon}:{},pending:[...j],drop:[...K].filter(f=>!j.includes(f))});K.clear();for(let f of a.pending)K.add(f.batch);L=t.log.at(-1)?.seq??(t.horizon??0)-1,me=Ct.of(t.log,{horizon:t.horizon??0}),O.resyncs++;for(let f of s)Oe(f,t.log)}).then(()=>{Q=void 0;let t=J;J=[];for(let{ops:r,drop:s}of t)_(r,s)},()=>{Q=void 0,J=[]})))},de=t=>(typeof t.build=="string"&&pn(t.build),typeof t.version=="number"&&U(t.held),typeof t.version!="number"||t.version===H.version?!1:(Et(t.version),!0)),E=async t=>{let s=await(await ae(`${c.url}/graview/since?seq=${wt(t)}&opFormat=${je.op}`,{headers:m})).json();return de(s)?[]:s.reset===!0?(he(),[]):s.ops??[]},Z=async()=>{let t=await Be();return Q&&await Q,t},Be=async()=>{if(I&&!D()&&b()){let r=await(await ae(`${c.url}/graview/here?opFormat=${je.op}`,{method:"POST",headers:m,body:JSON.stringify({presence:I,seq:wt(L)})})).json();return de(r)?[]:(typeof r.participant=="string"&&(M=r.participant),Pe(r.who??[]),_(r.ops??[]))}return _(await E(L))},le=new Map,Ce=new Map,Ue=new Set,ye=new Map,De=new Set,Le=t=>(De.add(t),t.finally(()=>De.delete(t)).catch(()=>{}),t),Ke=Promise.resolve(),ge=0,$e=(t,r)=>{let s=Ke.then(()=>Je(t,r));return Ke=s.catch(()=>{}),s},At=()=>new Promise((t,r)=>ne.push({again:t,give:r})),Je=async(t,r)=>{let s,a;for(;;){try{s=await ae(`${c.url}/graview/ops`,{method:"POST",headers:m,body:JSON.stringify({...t,opFormat:je.op})})}catch(h){if(!(h instanceof et)||q)throw h;if(await At(),D())return tt(t,r);continue}if(a=await s.json().catch(()=>({})),s.status===503&&a.reason==="unavailable"&&typeof a.held=="string"&&!q){if(typeof a.version=="number"?de(a):(U(a.held),!1))break;if(R!==void 0&&(Ft>0||F)){if(await new Promise(h=>ce.push(h)),q)throw new ze("The client closed.");if(D())return tt(t,r);continue}}let S;if(s.status===503&&a.reason==="unavailable"&&!q)S=an(c.backoff,ge++);else{if(ge=0,s.status!==429||q)break;S=Uo(s.headers.get("retry-after"),a.retryAfter)}if(await new Promise(h=>setTimeout(h,S)),D())return tt(t,r)}if(se||de(a))throw new ze("The app was changed.");if(!s.ok){let S=a.error??`The server refused (${s.status})`;throw a.conflict?new pe(S,a.conflicts??[]):new Ge({reason:a.reason??Io[s.status]??"invalid",sentence:S,...a.wouldNeed?.length?{wouldNeed:a.wouldNeed}:{}})}let f=a.ops??[],y=f[0]?.seq;return y!==void 0&&y>L+1&&(f=await E(L)),r!==void 0&&(a.batch&&le.set(r,a.batch),re(r)),_(f,r!==void 0?[r]:[]),{ops:a.ops??[],...a.batch?{batch:a.batch}:{}}},G,ue=!1,q=!1,Ne=0,ie,We=0,Me=0,Ie=null,v=()=>{},X=new Promise(t=>{v=t}),D=()=>F&&ue&&G?.readyState===zo,Ye=t=>{if(!D())return!1;try{return G.send(JSON.stringify(t)),!0}catch{return!1}},ln=(t=!1)=>{!I||!D()||!b()||!t&&Ie&&Vt(I,Ie)&&(N===void 0||Date.now()-Me<N)||Ye({t:"here",presence:I})&&(Ie=I,Me=Date.now())},Ee=new Set,ee,un=()=>{if(ee=void 0,R!==void 0)return;let t=[...C.entries()].filter(([r])=>Ee.has(r));Ee.clear();for(let[,r]of t)Ye(r.message)},fn=(t,r)=>{C.has(t)&&(Ee.add(t),ee&&clearTimeout(ee),ee=setTimeout(un,Math.max(0,r)))},Qr=t=>{C.has(t)&&Ee.add(t)},tt=(t,r)=>new Promise((s,a)=>{let f=r??`send-${++We}`,y=t.undo?{t:"undo",cid:f,batches:t.undo,...t.intent?{intent:t.intent}:{},...t.batch?{batch:t.batch}:{},...t.via?{via:t.via}:{},...xe(t)}:{t:"call",cid:f,calls:t.calls??[],...t.intent?{intent:t.intent}:{},...t.batch?{batch:t.batch}:{},...t.base?.length?{base:t.base}:{},...t.via?{via:t.via}:{},...xe(t)};if(C.set(f,{message:y,...r!==void 0?{mine:r}:{},resolve:s,reject:a}),Ee.size>0||R!==void 0){Ee.add(f);return}Ye(y)}),nt=(t,r)=>D()?tt(t,r):$e(t,r),Zr=t=>{switch(t.t){case"welcome":{if(pn(t.build),typeof t.version=="number"&&t.version!==H.version){Et(t.version);return}if(ue=!0,Ne=0,typeof t.participant=="string"&&(M=t.participant),U(t.held),t.state?he():_(t.ops??[]),Ee.clear(),ee&&clearTimeout(ee),ee=void 0,R!==void 0)for(let r of C.keys())Ee.add(r);else for(let r of C.values())Ye(r.message);ln(!0),W("online"),v();return}case"ops":_(t.ops??[]);return;case"ack":{let r=C.get(t.cid);if(!r){_(t.ops??[]);return}C.delete(t.cid),ge=0,r.mine!==void 0&&(le.set(r.mine,t.batch),re(r.mine)),_(t.ops??[],r.mine!==void 0?[r.mine]:[]),r.resolve({ops:t.ops??[],batch:t.batch});return}case"refused":case"conflict":{let r=C.get(t.cid);if(!r)return;if(t.t==="refused"&&t.reason==="unavailable"){R!==void 0?Qr(t.cid):fn(t.cid,an(c.backoff,ge++));return}C.delete(t.cid),r.reject(t.t==="conflict"?new pe(t.sentence,t.conflicts??[]):new Ge({reason:t.reason??"invalid",sentence:t.sentence,...t.wouldNeed?.length?{wouldNeed:[...t.wouldNeed]}:{}}));return}case"busy":typeof t.cid=="string"&&fn(t.cid,typeof t.retryAfter=="number"?t.retryAfter:1e3);return;case"presence":Pe(t.who??[]);return;case"held":U(t.sentence);return;case"declaration":typeof t.version=="number"&&t.version!==H.version&&Et(t.version);return;case"reload":gn(typeof t.reason=="string"?t.reason:"This app was updated.");return;case"error":if(t.reopen===!0&&G){let r=G;vn(r);try{r.close(1e3,"Opening again.")}catch{}}return;default:return}},se=!1,kt=i.declarations,Pt=i.builds,pn=t=>{if(!(se||i.otherBuild!==void 0||!c.build||typeof t!="string"||t.length===0||t===c.build)){i.otherBuild=t;for(let r of[...Pt])r(t)}},mn=()=>{let t=[],r=0;for(let s of j){let a=ye.get(s);a?t.push({calls:a.calls,...a.intent?{intent:a.intent}:{},...a.via?{via:a.via}:{},...xe(a),batch:s}):r++}return{carried:t,undos:r}},hn=(t,r)=>`${r} while ${t===1?"an undo of yours was":"undos of yours were"} on the way; ${t===1?"it was":"they were"} not made.`,yn=t=>{se=!0,I=null;let r=new ze(t);for(let a of C.values())a.reject(r);C.clear(),at&&clearInterval(at),q=!0,ie&&clearTimeout(ie),ee&&clearTimeout(ee),we&&clearTimeout(we);for(let a of ne.splice(0))a.give(r);for(let a of ce.splice(0))a();let s=G;G=void 0,ue=!1;try{s?.close(1e3,t)}catch{}v()};async function Et(t){if(se)return;if(!c.resolveApp){gn(`This app was changed on its server (version ${t}); reload the page to carry on.`);return}let{carried:r,undos:s}=mn(),a=c.resolveApp,f=I;yn("The app was changed.");try{let y=await a(t),{state:S,...h}=c,te=await Kr({...h,app:y},r,"The app was changed while your changes were on the way.",i);f&&te.remote.presence.here(f);for(let it of[...kt])it(te.remote,t);let fe=[...s>0?[rt(hn(s,"The app was changed"))]:[],...te.unheard()];for(let it of fe)for(let io of _e)io(it.sentence,it)}catch(y){let S=`The app was changed, but the new version could not be opened: ${y instanceof Error?y.message:String(y)}`;for(let h of _e)h(S,rt(S))}}function gn(t){if(se)return;let{carried:r,undos:s}=mn();yn(t);let a=!1;if(c.carry&&r.length>0)try{c.carry.storage.setItem(c.carry.key,JSON.stringify(r)),a=!0}catch{}let f=[];!a&&r.length>0&&f.push(`${t} ${r.length===1?"A change of yours was":`${r.length} changes of yours were`} not sent; make ${r.length===1?"it":"them"} again after the page reloads.`),s>0&&f.push(hn(s,"This app was updated"));for(let y of f)for(let S of _e)S(y,rt(y));(c.reloadPage??Ko)()}let wn=()=>{if(q||!F)return;let t=`${c.url.replace(/^http/,"ws").replace(/\/$/,"")}${Ur}`,{"content-type":r,...s}=m,a;try{a=c.socket?c.socket(t,s,[on]):ao(t,s)}catch{return bn()}G=a,ue=!1,a.onopen=()=>{G===a&&a.send(JSON.stringify({t:"hello",seq:wt(L),protocol:st,wire:rn,opFormat:je.op,...c.build?{build:c.build.slice(0,64)}:{},...c.hostProtocol!==void 0?{hostProtocol:c.hostProtocol}:{}}))},a.onmessage=f=>{if(G!==a)return;let y;try{y=JSON.parse(String(f.data))}catch{return}Zr(y)},a.onclose=()=>vn(a),a.onerror=()=>{}},we,Xr=()=>{Fe=!1,we&&clearTimeout(we),we=setTimeout(()=>{if(we=void 0,Fe||q)return;let t=new Map([...z].filter(([,r])=>r.held!=="socket"));if(t.size!==z.size){z=t;for(let r of Y)r([...z.values()])}},Ht),we.unref?.()};function vn(t){if(G!==t)return;let r=ue;G=void 0,ue=!1,Ie=null,r&&(W("offline"),Xr()),bn()}let bn=()=>{if(q)return;let t=an(c.backoff,Ne);Ne++,ie=setTimeout(wn,t)},Sn=A.applyAll.bind(A),eo=A.undo.bind(A),to=A.previewAll.bind(A);A.previewAll=(t,r)=>to(t,{...c.principal?{author:c.principal}:{},...r});let _e=i.refusals,Qe=[],rt=t=>({reason:"invalid",sentence:t}),ot=i.conflicts,Rt=!1,An,Tt=async(t,r)=>{if(r instanceof ze||se)return;let s=r instanceof Ge?r.refusal:Rn(r),a=s.sentence,f=r instanceof pe?An?.yoursOf(A,ye.get(t)?.calls??[]):void 0;re(t);try{_([],[t])}catch{}let y=ye.get(t);ye.delete(t);let S=y?.calls[0];if(S&&!(r instanceof pe)){let h=A.allMutations().find(fe=>fe.name===S.name)?.subject?.arg,te=h&&A.graph.getNode(S.args[h])?.kind;On(A,{type:"refused",act:S.name,code:s.reason,...te?{kind:te}:{}},c.principal)}if(r instanceof pe&&O.conflicts++,r instanceof pe&&!D()&&await Z().catch(()=>[]),r instanceof pe&&Q&&await Q,r instanceof pe&&ot.size>0){let h=!1,te={sentence:a,conflicts:f?r.conflicts.map(fe=>fe.node===f.node&&fe.field===f.field?{...fe,yours:f.yours}:fe):r.conflicts,keepTheirs(){h=!0},useMine(){if(!(h||!y)){h=!0,Rt=!0;try{A.applyAll(f?[f.over(L)]:y.calls,{...y.intent?{intent:y.intent}:{},...y.via?{via:y.via}:{},...xe(y)})}finally{Rt=!1}}}};for(let fe of ot)fe(te);return}for(let h of _e)h(a,s)},no=(t,r)=>t.flatMap(s=>s.mutation?.name===En?[]:s.primitives.flatMap(a=>a.op==="splice-text"&&!r.has(a.id)&&!r.has(`${a.id}\0${a.field}`)?[{node:a.id,field:a.field,rev:L}]:[]));A.applyAll=(t,r)=>{let s=xn(A.log.all().filter(S=>K.has(S.batch))),a=Sn(t,{...c.principal?{author:c.principal}:{},...r}),f=t.map((S,h)=>{let te=a.minted?.[h];return te===void 0||S.args?.id!==void 0?S:{...S,mintedHint:te}});j.push(a.batch),K.add(a.batch),ye.set(a.batch,{calls:f,...r?.intent?{intent:r.intent}:{},...r?.via?{via:r.via}:{},...xe(r)});let y=Rt?[]:[...me.baseFor(a.ops,s,(S,h)=>A.collaborative(S,h)),...no(a.ops,s)];return Ce.set(a.batch,Le(nt({calls:f,...r?.intent?{intent:r.intent}:{},batch:a.batch,...y.length>0?{base:y}:{},...r?.via?{via:r.via}:{},...xe(r)},a.batch).catch(S=>Tt(a.batch,S)))),a},A.apply=(t,r)=>A.applyAll([t],r),A.undo=(t,r)=>{let s=typeof t=="string"?[t]:t,a=eo(s.map(y=>le.get(y)??y),{...c.principal?{author:c.principal}:{},...r});j.push(a.batch),K.add(a.batch);let f=Promise.allSettled(s.map(y=>Ce.get(y)));return Ce.set(a.batch,Le(f.then(()=>{let y=s.filter(S=>!Ue.has(S));if(y.length===0){re(a.batch),ye.delete(a.batch),_([],[a.batch]);return}return nt({undo:y.map(S=>le.get(S)??S),...r?.intent?{intent:r.intent}:{},batch:a.batch,...r?.via?{via:r.via}:{},...xe(r)},a.batch)}).catch(y=>Tt(a.batch,y)))),a};let ro=async(t,r={})=>{xt++;try{return(await Le(nt({calls:t,...r}))).ops}finally{xt--}},xt=0,kn={here(t){I=t,ln()},onWho(t){return Y.add(t),z.size>0&&t([...z.values()]),()=>{Y.delete(t)}},leave(){if(!I)return;let t=JSON.stringify({participant:M??I.participant});if(I=null,Ye({t:"bye"}))return;let r=globalThis.navigator?.sendBeacon;r?r.call(globalThis.navigator,`${c.url}/graview/leave${l!==void 0?`?${qe.param}=${encodeURIComponent(l)}`:""}`,t):w(`${c.url}/graview/leave`,{method:"POST",headers:m,body:t}).catch(()=>{})}},Ft=c.pollMs??800,at=Ft>0&&typeof setInterval=="function"?setInterval(()=>{D()||Z().catch(()=>{})},Ft):null;if(F){wn();let t;await Promise.race([X,new Promise(r=>t=setTimeout(r,c.openTimeoutMs??3e3))]),clearTimeout(t)}if(n.length>0&&!se){let t=[],r=new Set(A.log.all().map(s=>s.batch));for(let s of n)if(!(s.batch!==void 0&&r.has(s.batch)))try{A.applyAll(s.calls,{...s.intent?{intent:s.intent}:{},...s.batch?{batch:s.batch}:{},...s.via?{via:s.via}:{},...xe(s)})}catch(a){t.push(No(s,a))}t.length>0&&Qe.push(rt(`${o} ${t.length===1?"One no longer fits and was not made":`${t.length} no longer fit and were not made`}: ${t.join("; ")}.`))}let Pn=new Map,oo=()=>({store:A,author:c.principal,appliedAll:Sn,pending:j,provisional:K,asked:ye,answers:Ce,letGo:Ue,sent:(t,r)=>Le(nt({calls:r,batch:t},t).catch(s=>Tt(t,s))),settle:re,land:_,seen:()=>L,gone:()=>q||se});return{remote:{store:A,typing(t,r){let s=`${t}\0${r}`,a=Pn.get(s);return a||(a=(__graviewPreload(import.meta.url,["./chunk.6SO64TUI.js","./chunk.F7PIW2EM.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.ZJCM62GH.js")).then(f=>(An=f,f.typingOf(t,r,f.wireOf(oo())))),Pn.set(s,a)),a},version:H.version,migrated:H.migrated??[],send:ro,pull:Z,onRefusal(t){_e.add(t);let r=Qe;Qe=[];for(let s of r)t(s.sentence,s);return()=>_e.delete(t)},onDeclaration(t){return kt.add(t),()=>kt.delete(t)},onBuild(t){return Pt.add(t),i.otherBuild!==void 0&&t(i.otherBuild),()=>Pt.delete(t)},onConflict(t){return ot.add(t),()=>ot.delete(t)},revision:(t,r)=>me.of(t,r),seq:()=>L,participant:()=>M,transport:()=>D()?"socket":"poll",status:p,onStatus(t){return x.add(t),()=>x.delete(t)},held:()=>R,onHeld(t){return i.helds.add(t),R!==void 0&&t(R),()=>i.helds.delete(t)},counters:()=>({...O}),who:()=>[...z.values()],pending:()=>j.length+xt,async settled(){for(;De.size>0;)await Promise.allSettled([...De])},presence:kn,close(){at&&clearInterval(at),ke(),kn.leave(),q=!0,ie&&clearTimeout(ie),ee&&clearTimeout(ee),we&&clearTimeout(we);for(let r of ne.splice(0))r.give(new Error("The client closed before the server could be reached."));for(let r of ce.splice(0))r();let t=G;G=void 0,ue=!1;try{t?.close(1e3,"Closed.")}catch{}}},unheard(){let t=Qe;return Qe=[],t}};function ao(t,r){let s=globalThis.WebSocket;if(!s)throw new Error("This runtime has no WebSocket; the client polls instead.");let a=typeof globalThis.document<"u",f=c.subprotocol?[on]:[];if(!a)try{return new s(t,{headers:r,...f.length>0?{protocols:f}:{}})}catch{}let y=new URL(t);for(let[S,h]of Object.entries(k))y.searchParams.set(S,h);return l!==void 0&&y.searchParams.set(qe.param,l),f.length>0?new s(y.toString(),f):new s(y.toString())}}function Uo(e,n,o=Date.now()){let i,l=e?.trim();if(l)if(/^\d+(\.\d+)?$/.test(l))i=Number(l)*1e3;else{let w=Date.parse(l);Number.isFinite(w)&&(i=Math.max(0,w-o))}let u=typeof n=="number"&&Number.isFinite(n)&&n>=0?n:void 0,c=u!==void 0&&u<50&&i!==void 0&&Math.abs(u*1e3-i)<1e3;return u!==void 0&&!c?u:i??1e3}function Ko(){globalThis.location?.reload?.()}function Jo(){return globalThis.document?.visibilityState!=="hidden"}function an(e,n){if(typeof e=="function")return Math.max(0,e(n));let{min:o=250,max:i=1e4,factor:l=2}=e??{};return Math.min(i,o*l**n)*(.75+Math.random()*.5)}function St(e){let n={};if(!e)return n;e.id&&(n[be.seat]=e.id),e.roles?.length&&(n[be.roles]=e.roles.join(",")),e.kind!=="human"&&(n[be.kind]=e.kind),e.name&&(n[be.name]=encodeURIComponent(e.name));let o=e.onBehalfOf;return o?.id&&(n[be.for]=o.id),o?.roles?.length&&(n[be.forRoles]=o.roles.join(",")),o?.name&&(n[be.forName]=encodeURIComponent(o.name)),n}var Jr="/graview/views";function sn(e){let n=e.fetch??fetch,o=vt(e.url,e.headers),i=o.url,l={"content-type":"application/json",...e.principal?St(e.principal):{},...o.headers},u=e.state?{hidden:e.state.hidden??[],removed:e.state.removed??[],may:e.state.may??ct.may}:ct,c=new Set,w=b=>{if(JSON.stringify(b)!==JSON.stringify(u)){u=b;for(let T of c)T()}},m=async(b,T)=>{let x=await n(`${i}${e.path??Jr}`,{method:b,headers:l,...T!==void 0?{body:JSON.stringify(T)}:{}}),O=await x.json();if(!x.ok)throw new Error(O.error??`The store answered ${x.status}.`);w({hidden:O.hidden??[],removed:O.removed??[],may:O.may??ct.may})},k=()=>m("GET"),F=e.state?Promise.resolve():k().catch(()=>{}),N=e.pollMs?setInterval(()=>void k().catch(()=>{}),e.pollMs):void 0;return{ready:F,refresh:k,close:()=>clearInterval(N),current:()=>u,onChange(b){return c.add(b),()=>void c.delete(b)},hide:b=>m("POST",{hide:b}),show:b=>m("POST",{show:b}),remove:(b,T)=>m("POST",{remove:b,...T?{about:T}:{}}),async restore(b){let T=u.removed.find(x=>x.name===b)?.lens;await m("POST",{restore:b}),T&&await e.onDeclaration?.()},async lens(b){await m("POST",{lens:b}),await e.onDeclaration?.()}}}var dn=document.getElementById("graview-app"),cn=/^\/forms\/([^/]+)\/?$/.exec(location.pathname),Yr=cn?(__graviewPreload(import.meta.url,["./chunk.66IKLMYX.js","./chunk.MBP7VDYM.js","./chunk.XOZU4OFA.js","./chunk.LA2DMHZC.js","./chunk.SIYBHZDD.js","./chunk.3RW677X6.js","./chunk.UO544PZH.js","./chunk.4STDIZVI.js","./chunk.HZHNM2KI.js","./chunk.HOQMD6WQ.js","./chunk.N7T7VB77.js","./chunk.SDO3U72B.js","./chunk.F7PIW2EM.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.ULHB3RYK.js")):Ve("pages");try{cn?await Yo(decodeURIComponent(cn[1])):await Qo()}catch(e){let n=document.createElement("pre");n.setAttribute("role","alert"),n.style.cssText="margin:2rem;font:14px/1.5 ui-monospace,monospace;white-space:pre-wrap",n.textContent=e instanceof Error?e.message:String(e),dn.replaceChildren(n),window.__graviewFailed=n.textContent}async function Yo(e){let n=await fetch(`/graview/document?form=${encodeURIComponent(e)}`),o=await n.json();if(!n.ok)throw new Error(o.error??`The preview server did not hand over the form (${n.status}).`);let i=await pt(o);if(!i.ok)throw new Error(dt(i.findings));let l=i.app,u=o.principal,c=await bt({app:l,url:location.origin,principal:u,...o.state?{state:o.state,openTimeoutMs:0}:{openTimeoutMs:3e3}});document.title=l.forms?.[e]?.title??l.name;let{mount:w}=await Yr;window.__graview=w(dn,{app:l,form:e,principal:u,remote:c,height:"100dvh",onSubmitted:()=>window.__graviewSubmitted=!0}),window.__graviewReady=!0}async function Qo(){let e=await fetch("/graview/document");if(!e.ok)throw new Error(`The preview server did not hand over the document (${e.status}).`);let n=await e.json(),i=await(async m=>{if(typeof m.module=="string")return(await import(m.module)).app;let k=await pt(m);if(!k.ok)throw new Error(dt(k.findings));return k.app})(n);if(!i||typeof i!="object"||!("schema"in i))throw new Error("The app module the preview server handed does not export an app.");let l=n.principal,u=await bt({app:i,url:location.origin,principal:l,live:!0,subprotocol:!0,pollMs:1200,...n.state?{state:n.state,openTimeoutMs:0}:{openTimeoutMs:3e3}});document.title=i.name;let c,w=sn({url:location.origin,principal:l,...n.views?{state:n.views}:{},onDeclaration:async()=>{let m=await(await fetch("/graview/document")).json();if(typeof m.module=="string")return;let k=await pt(m);k.ok&&c?.setApp(k.app,u)}});await Promise.all([Yr,w.ready]),c=nn(dn,{app:i,remote:u,principal:l,studio:!1,face:"pages",routing:"address",bar:!0,height:"100dvh",label:i.name,heading:1,keptViews:w,...n.draftView?{draftView:n.draftView}:{}}),window.__graview=c,c.drawn().then(()=>{window.__graviewReady=!0})}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "graview",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.61",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "The Graview command line: start a product, check its declaration, write its agent docs, serve its store, preview a document with no product and photograph its places, say whether a product is on one release, host it for an agent over MCP, apply an act to it, sync its seed, install the authoring skills. The tool; @graview/* is the framework.",
|
|
6
6
|
"keywords": [
|
|
@@ -29,11 +29,11 @@
|
|
|
29
29
|
}
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@graview/core": "0.1.
|
|
33
|
-
"@graview/
|
|
34
|
-
"@graview/
|
|
35
|
-
"@graview/
|
|
36
|
-
"@graview/
|
|
32
|
+
"@graview/core": "0.1.61",
|
|
33
|
+
"@graview/ship": "0.1.61",
|
|
34
|
+
"@graview/skills": "0.1.61",
|
|
35
|
+
"@graview/tools": "0.1.61",
|
|
36
|
+
"@graview/guest": "0.1.61"
|
|
37
37
|
},
|
|
38
38
|
"engines": {
|
|
39
39
|
"node": ">=22"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{G as k,Ga as o,T as n}from"./chunk.4MP72LPR.js";import{a as t}from"./chunk.SDO3U72B.js";import{b as p}from"./chunk.AJZBJBMO.js";var f=o(t(()=>(__graviewPreload(import.meta.url,["./chunk.WVUJXDXZ.js","./chunk.7VKSXGTX.js","./chunk.TY4GQJKC.js","./chunk.6ZQAR5ZA.js","./chunk.W3W54DSX.js","./chunk.PI44XMY2.js","./chunk.KGW75Z5L.js","./chunk.GZHZLJBF.js","./chunk.IOK4GVJC.js","./chunk.OJGHDWI6.js","./chunk.TLJOZSDD.js","./chunk.MSWWWLEA.js","./chunk.UITT6JWW.js","./chunk.A5PDXNY6.js","./chunk.WC3DENU4.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.BF6S5UE4.js")))),y=f.part((e,r)=>e.drawFiles(r),{quiet:!0});var d=o(t(()=>(__graviewPreload(import.meta.url,["./chunk.GZHZLJBF.js","./chunk.IOK4GVJC.js","./chunk.OJGHDWI6.js","./chunk.TLJOZSDD.js","./chunk.MSWWWLEA.js","./chunk.UITT6JWW.js","./chunk.A5PDXNY6.js","./chunk.WC3DENU4.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.EL5ICOOM.js")))),I=d.part((e,r)=>e.drawLinkedRecord(r),{quiet:!0}),w=d.part((e,r)=>e.drawLinkedPicker(r),{what:"Picking a linked record"});var s=p(n(),1),m=o(t(()=>(__graviewPreload(import.meta.url,["./chunk.GZHZLJBF.js","./chunk.IOK4GVJC.js","./chunk.OJGHDWI6.js","./chunk.TLJOZSDD.js","./chunk.MSWWWLEA.js","./chunk.UITT6JWW.js","./chunk.A5PDXNY6.js","./chunk.WC3DENU4.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.UQWTZJBV.js")))),E=m.part((e,r)=>(0,s.jsx)(e.RepeatPicker,{...r}),{quiet:!0}),W=m.part((e,r)=>(0,s.jsx)(e.RepeatEditor,{...r}),{quiet:!0});var a=p(k(),1),i=p(n(),1),c=o(t(()=>(__graviewPreload(import.meta.url,["./chunk.MSWWWLEA.js","./chunk.UITT6JWW.js","./chunk.A5PDXNY6.js","./chunk.WC3DENU4.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.QHDCTAD7.js")))),l=c.part((e,r)=>(0,i.jsx)(e.WhenInput,{...r}),{quiet:!0});function M(e){return(0,i.jsx)(a.Suspense,{fallback:(0,i.jsx)("span",{"data-graview-when-arriving":"",style:{display:"inline-block",minHeight:24}}),children:(0,i.jsx)(l,{...e})})}var N=()=>c.load().then(()=>{},()=>{});export{y as a,I as b,w as c,E as d,W as e,M as f,N as g};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as N,b as T}from"./chunk.25VJPUDH.js";import{e as D,f as E,g as R}from"./chunk.PNW5K7BW.js";import{b as I}from"./chunk.ENL2JJ47.js";import"./chunk.BQIHNT7C.js";import{d as z}from"./chunk.3XGA65Y3.js";import"./chunk.2K4TT2BV.js";import{a as C}from"./chunk.VZJWJ5XM.js";import"./chunk.MSWWWLEA.js";import"./chunk.UITT6JWW.js";import"./chunk.A5PDXNY6.js";import{j as f}from"./chunk.WC3DENU4.js";import"./chunk.VNDKKTED.js";import{G as M,Ra as W,T as k,Va as A,ba as b,da as H}from"./chunk.4MP72LPR.js";import"./chunk.SDO3U72B.js";import{_a as x}from"./chunk.VSCIXAHN.js";import"./chunk.FQLNBIQ5.js";import{b as v}from"./chunk.AJZBJBMO.js";var n=v(M(),1);var e=v(k(),1);function O(t,o){let r=[t>0?`${t===1?"one suggestion":`${t} suggestions`} waiting`:"",o>0?`tidied ${o===1?"one thing":`${o} things`} while you were away`:""].filter(Boolean);return r.length>0?r.join(" \xB7 ").replace(/^./,s=>s.toUpperCase()):void 0}function F(){let{store:t,principal:o,dismissals:r,whileAway:s,app:u}=b(),h=H(),l=(0,n.useMemo)(()=>T(r,u?.name??"app",o),[r,u?.name,o]),[m,y]=(0,n.useReducer)(g=>g+1,0);(0,n.useEffect)(()=>l.onChange?.(y),[l]);let a=(0,n.useMemo)(()=>D(t,o,{dismissed:l.list()}),[t,o,h,l,m]),[w,p]=(0,n.useState)(""),i=A("suggested"),d=s?.tidied??0,c=s?O(a.length,d):void 0;if(a.length===0&&d===0)return null;let L=g=>{if(p(g),a.length>1){requestAnimationFrame(()=>document.querySelector('[data-testid="suggested"] [data-testid="suggestion-accept"]')?.focus());return}i.setOpen(!1),(document.querySelector('[data-testid="activity-button"]')??document.querySelector('[data-graview-app-bar] button:not([data-testid="suggested-button"])'))?.focus()};return(0,e.jsxs)("div",{style:{position:"relative"},children:[(0,e.jsxs)("button",{type:"button","data-testid":"suggested-button",...i.trigger,onClick:i.toggle,title:c??"What tidying suggests, waiting for you",...c?{"aria-label":`Suggested: ${c}`}:{},style:{display:"inline-flex",alignItems:"center",gap:6,minHeight:30,padding:"0 8px",borderRadius:8,border:"1px solid transparent",background:"transparent",boxShadow:"none",fontSize:"0.875rem",whiteSpace:"nowrap",color:"var(--graview-ink-muted)"},children:[a.length>0?a.length:`Tidied ${d}`,(0,e.jsxs)("svg",{className:"graview-activity-mark",width:"15",height:"15",viewBox:"0 0 16 16","aria-hidden":"true",focusable:"false",style:{display:"var(--graview-activity-mark, none)"},children:[(0,e.jsx)("path",{d:"M3 4.5 H13 M3 8 H10 M3 11.5 H8",fill:"none",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"}),(0,e.jsx)("circle",{cx:"12.25",cy:"11.5",r:"1.6",fill:"none",stroke:"currentColor",strokeWidth:"1.3"})]}),a.length>0?(0,e.jsx)("span",{className:"graview-activity-word",children:" Suggested"}):null]}),i.open?(0,e.jsxs)("section",{...i.pane,"aria-label":"Suggested","data-testid":"suggested","data-graview-offstage":"",style:{...W,width:"min(320px, calc(100vw - 16px))",maxHeight:"min(52cqh, 460px)",overflowX:"hidden",overflowY:"auto",display:"flex",flexDirection:"column",gap:9,padding:12,borderRadius:10,border:"1px solid var(--graview-edge)",background:"var(--graview-float)",boxShadow:"var(--graview-lift-high)"},children:[(0,e.jsx)("h2",{style:{...f,margin:0},children:"Suggested"}),c?(0,e.jsxs)("p",{"data-testid":"while-away",style:{margin:0,fontSize:"0.8125rem",lineHeight:1.45,color:"var(--graview-ink-muted)"},children:[c,"."]}):null,(0,e.jsx)("p",{style:{margin:0,fontSize:"0.75rem",lineHeight:1.45,color:"var(--graview-ink-faint)"},children:a.length>0?"Not made yet: each waits for you.":"What it did is in Activity."}),(0,e.jsx)("ol",{"data-testid":"suggestions",style:{margin:0,padding:0,listStyle:"none",display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:10,fontSize:"0.8125rem",minWidth:0},children:a.map(g=>(0,e.jsx)(q,{suggestion:g,notNow:l,settled:L},g.id))}),(0,e.jsx)("span",{role:"status","data-testid":"suggestion-heard",style:f,children:w})]}):null]})}var S={minWidth:0,overflowWrap:"anywhere"},$={accept:"Accepted.",decline:"Declined: it will not be suggested again.",later:"Hidden from you until tomorrow."};function q({suggestion:t,notNow:o,settled:r}){let{store:s,principal:u,seats:h,people:l}=b(),[m,y]=(0,n.useState)(null),a=(0,n.useId)(),w=x(t.author,{graph:s.graph,schema:s.schema,seats:h,people:l}),p=async i=>{y(null);try{i==="accept"?E(s,t.id,{author:u}):i==="decline"?R(s,t.id,{author:u}):await o.dismiss({suggestion:t.id,at:new Date().toISOString(),until:N()}),r($[i])}catch(d){y(d instanceof Error?d.message:String(d))}};return(0,e.jsxs)("li",{"data-testid":"suggestion","data-suggestion":t.id,style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:5,lineHeight:1.45,minWidth:0},children:[(0,e.jsxs)("span",{"data-graview-suggestion-words":"",style:S,children:[(0,e.jsx)("strong",{style:{fontWeight:600},children:w})," ",(0,e.jsx)("span",{style:{color:"var(--graview-ink-muted)"},children:"suggests"})," ",t.intent]}),t.lineage?(0,e.jsx)("span",{"data-graview-lineage":"",style:{...S,color:"var(--graview-ink-faint)"},children:C(t.lineage)}):null,t.about.length>0?(0,e.jsx)("div",{"data-graview-suggestion-records":"",style:{display:"flex",flexWrap:"wrap",gap:4,minWidth:0},children:t.about.slice(0,4).map(i=>(0,e.jsx)(z,{label:I(s,i),pickId:i},i))}):null,(0,e.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:6,minWidth:0},children:[(0,e.jsx)("button",{type:"button","data-testid":"suggestion-accept",onClick:()=>void p("accept"),style:{minHeight:24,padding:"1px 10px",fontSize:"0.75rem"},children:"Accept"}),(0,e.jsx)("button",{type:"button","data-testid":"suggestion-decline",onClick:()=>void p("decline"),style:{minHeight:24,padding:"1px 10px",fontSize:"0.75rem"},children:"Decline"}),(0,e.jsx)("button",{type:"button","data-testid":"suggestion-not-now",onClick:()=>void p("later"),title:"Hide it from you until tomorrow. It still waits for everyone else.","aria-describedby":a,style:{minHeight:24,padding:"1px 10px",fontSize:"0.75rem",marginInlineStart:"auto",border:"1px solid transparent",background:"transparent",boxShadow:"none",color:"var(--graview-ink-muted)"},children:"Not now"}),(0,e.jsx)("span",{id:a,style:f,children:"Hides it from you until tomorrow; it still waits for everyone else."})]}),m?(0,e.jsx)("span",{"data-testid":"suggestion-refused",role:"alert",style:{...S,fontSize:"0.75rem",color:"var(--graview-warn)"},children:m}):null]})}export{F as SuggestedTray,O as awayWords};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{k as a,l as o}from"./chunk.CFKZXLXS.js";import"./chunk.Y5C4RXG7.js";import"./chunk.7MHCGVGM.js";import"./chunk.FRYBMS3W.js";import"./chunk.NGTRL5U4.js";import"./chunk.3MOJF7BA.js";import"./chunk.LZIBQ3VX.js";import"./chunk.TAT2IQUR.js";import"./chunk.3XGA65Y3.js";import"./chunk.BYKD5RLA.js";import"./chunk.2K4TT2BV.js";import"./chunk.VUBNBTJP.js";import"./chunk.WVUJXDXZ.js";import"./chunk.7VKSXGTX.js";import"./chunk.TY4GQJKC.js";import"./chunk.6ZQAR5ZA.js";import"./chunk.W3W54DSX.js";import"./chunk.PI44XMY2.js";import"./chunk.KGW75Z5L.js";import"./chunk.GZHZLJBF.js";import"./chunk.IOK4GVJC.js";import"./chunk.OJGHDWI6.js";import"./chunk.TLJOZSDD.js";import"./chunk.MSWWWLEA.js";import"./chunk.UITT6JWW.js";import"./chunk.A5PDXNY6.js";import"./chunk.WC3DENU4.js";import"./chunk.VNDKKTED.js";import{ta as n}from"./chunk.4MP72LPR.js";import"./chunk.SDO3U72B.js";import"./chunk.VSCIXAHN.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";var w=new WeakMap;function p(e,i){let t=w.get(e);t||w.set(e,t=new Map);let r=t.get(i);return r||t.set(i,r=a(o(e,n(e)),e,i)),r}export{p as frameworkViews};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{b as mn,c as gn,d as ae,e as yn,f as ne,h as je,i as ze,n as hn,r as se}from"./chunk.KGW75Z5L.js";import{B as ue,Ba as Je,C as ie,Db as W,Dc as ln,Ea as Ye,F as qe,Ga as Qe,H as Be,Ib as on,J as _e,Jb as an,K as He,Ka as Oe,La as xe,Lb as sn,Oc as fn,Pc as pn,Qb as dn,Qc as Se,Ra as Xe,Rc as un,Sc as Ae,Ua as en,Vb as cn,b as Pe,c as Me,d as Fe,da as we,e as V,ea as Ue,eb as nn,g as ce,gb as tn,h as F,i as Ne,j as Ce,k as le,l as Ie,lb as Re,m as Ke,mb as rn,na as We,o as Ve,p as fe,q as be,v as Ze,x as oe,ya as ve,z as pe}from"./chunk.VSCIXAHN.js";function kn(e){if(typeof e=="string")return{form:"string",light:e};if(typeof e!="object"||e===null)return;let a=e,n=w=>typeof a[w]=="string"?a[w]:void 0,t=n("light")??n("src");if(t===void 0)return;let[i,f,m]=[n("dark"),n("alt"),n("darkFallback")];return{form:n("light")!==void 0?"light":"src",light:t,...i!==void 0?{dark:i}:{},...f!==void 0?{alt:f}:{},...m!==void 0?{darkFallback:m}:{}}}function qn(e,a){let n=e.brand??{},t=n.ground,i=n.accent?Ae(n.accent,t):void 0;t&&un(i?.ok?i.schemes:Se(t),n.accent)&&(a.push(ze("brand","brand.ground","words would not read on that page background, so the app keeps Graview's","pick a lighter ground for the light scheme, a darker one for the dark")),t=void 0,i=n.accent?Ae(n.accent):void 0),i&&!i.ok&&a.push(ze("brand","brand.accent",`that accent cannot make a readable brand, so the app keeps Graview's colors: ${i.why}`,"pick a color further from orange-red, or a darker one"));let f=kn(n.logo),m=n.name??e.name,w=n.typography?Object.fromEntries(Object.entries(n.typography).filter(([,E])=>typeof E=="string"&&pn(E)===null).map(([E,T])=>[E,fn(T)])):void 0;return{name:m,schemes:i?.ok?i.schemes:t?Se(t):ln,...n.currency?{currency:n.currency}:{},...n.locale?{locale:n.locale}:{},...n.timeZone?{timeZone:n.timeZone}:{},...f?{logo:f.dark||f.darkFallback==="invert"?{light:f.light,...f.dark?{dark:f.dark}:{darkFallback:"invert"}}:f.light,logoAlt:f.alt??m}:{},...n.favicon?{favicon:n.favicon}:{},...e.description?{subtitle:e.description}:{},...n.subtitle===!1?{subtitleDrawn:!1}:{},...w?{typography:w}:{},...n.shape?{shape:n.shape}:{},...n.accents?{accents:n.accents}:{},...n.scheme?{scheme:n.scheme}:{}}}function bn(e){let{currency:a,locale:n,timeZone:t}=e.brand??{};return{...a?{currency:a}:{},...n?{locale:n}:{},...t?{timeZone:t}:{}}}var zn=Symbol.for("@graview/core:typed-field"),wn=(e,a)=>(/^(phone|place|duration)$/.test(a)&&(ie(e)[zn]=a),e),vn=/^(?=(?:\D*\d){3})\+?[\d ()./-]+(?: *(?:ext\.?|x|#) *\d+)?$/i;function On(e){let a=F().check(V(300),pe(t=>Ye(t,e)!==void 0,`a record of ${e.kinds.join(" or ")} in ${e.address}, as "<kind>:<id>"`)),n=e.cardinality==="one"?a:fe(a).check(V(200));return Qe(e.description?n.check(ue(e.description)):n,e)}var Dn=new WeakMap;function xn(e,a){Dn.set(e,a)}var Tn=[{where:"settings[]",was:"honoured",now:"honored",since:"0.1.16"},{where:"pages",was:"overview",now:"scene",since:"0.1.17"}],Z=e=>typeof e=="object"&&e!==null&&!Array.isArray(e);function Rn(e,a=Tn){if(!Z(e))return{document:e,respelled:[]};let n=[],t=e;for(let i of a)t=Ee(t,i.where.split("."),i,"",n);return{document:t,respelled:n}}function Ee(e,a,n,t,i){if(a.length===0){if(!Z(e)||!Object.hasOwn(e,n.was))return e;i.push(`${t}${n.was}`);let{[n.was]:G,...N}=e;return Object.hasOwn(e,n.now)?N:{...N,[n.now]:G}}if(!Z(e))return e;let[f,...m]=a,w=f.endsWith("[]"),E=w?f.slice(0,-2):f,T=e[E],B=T;if(!w)B=Ee(T,m,n,`${t}${E}.`,i);else if(Array.isArray(T)){let G=T.map((N,J)=>Ee(N,m,n,`${t}${E}.${J}.`,i));B=G.some((N,J)=>N!==T[J])?G:T}return B===T?e:{...e,[E]:B}}var Sn="graview-compiled@1";function Ln(e,a){return e.find(([n,t])=>n!==q&&"ref"in t&&(t.ref==="*"||t.ref.includes(a)))?.[0]}var q="id",me=e=>typeof e=="string"&&/^\$[A-Za-z][A-Za-z0-9]*$/.test(e)?e.slice(1):void 0;function An(e){let a=Object.entries(e.fields),n=t=>["name","title","label"].find(i=>t.some(([f])=>f===i))??t[0]?.[0];return n(a.filter(([,t])=>t.required&&(t.type==="string"||t.type==="text")))??n(a.filter(([,t])=>t.type==="string"))}function jn(e,a,n){let t;switch(e.type){case"string":case"place":t=F().check(V(500));break;case"phone":t=F().check(V(40),ce(vn,"a phone number"));break;case"text":t=F().check(V(2e4)),e.format&&(ie(t)[Symbol.for("@graview/core:markdown")]=1);break;case"number":case"integer":case"duration":{let f=e.min??(e.type==="duration"?0:void 0),m=[...e.type==="number"?[]:[Ie()],...f===void 0?[]:[Me(f)],...e.max===void 0?[]:[Pe(e.max)],...e.step===void 0?[]:[Fe(e.step)]];t=m.length>0?le().check(...m):le();break}case"boolean":t=Ke();break;case"date":t=F().check(ce(Be,"a date like 2026-10-02, or a month (2016-05) or a year (2006) alone"));break;case"datetime":t=F().check(pe(_e,"a date and time like 2026-10-02T14:30:00Z"));break;case"enum":t=Ze(e.options);break;case"list":t=fe(e.of==="number"?le():e.of==="date"?F().check(ce(qe)):e.of==="image"||e.of==="video"||e.of==="file"?ve(e.of):F().check(V(500))).check(V(200));break;case"image":case"video":case"file":t=ve(e.type);break;case"app-link":t=Je();break;case"url":t=Ce();break;case"email":t=Ne();break}let i=e.type==="number"||e.type==="integer";return wn(t,i&&e.format==="duration"?"duration":e.type),e.collaborative!==void 0&&(e.type==="text"||e.type==="string")&&(ie(t)[Symbol.for("@graview/core:collaborative")]=e.collaborative?1:0),e.description&&(t=t.check(ue(e.description))),i&&(e.format==="money"||e.format==="percent"||!e.format&&e.unit)&&dn(t,{...n,...e.format?{format:e.format}:{},...e.unit?{unit:e.unit}:{}}),a?oe(t):t}var de=e=>{throw new W(`there is no record "${e}"`,"invalid")},$n=(e,a)=>"field"in e?jn(e.field,e.optional,a):"ref"in e?cn(e.ref):oe(Ve()),Gn=new WeakMap;var De=(e,a)=>Z(a)&&Object.keys(e??{}).length===Object.keys(a).length&&Object.keys(e??{}).every(n=>Object.hasOwn(a,n));function yt(e,a={}){let n=Z(e)?e.format:void 0;if(n!==Sn)return{ok:!1,findings:[je("compiled-format","format",n===void 0?"this is not a compiled Graview app":`this compiled app is ${JSON.stringify(n)}, and this build reads ${Sn}`,"compile the document instead")]};let t=e,i=Rn(t.document).document,f=i===t.document?t:{...t,document:i},m=Z(i)&&typeof i.name=="string"&&Z(i.kinds)&&De(i.kinds,f.kinds)&&De(i.acts,f.acts)&&De(i.rules,f.rules)&&Array.isArray(f.edges)&&Array.isArray(f.findings),w={ok:!1,findings:[je("compiled-shape","","this compiled app's parts do not match its document","compile the document instead")]};if(!m)return w;try{return Pn(f,a)}catch{return w}}function Pn(e,a={}){let{document:n}=e,t=n.brand?.timeZone,i=a.today??(()=>He(t)),f=new Map(e.edges.map(([g,o])=>[g,o])),m=new Map;for(let[g,o]of Object.entries(n.kinds)){let S=e.kinds[g]?.computed,x=xe(o.edges);m.set(g,{fields:new Set([...Object.keys(o.fields),...x.keys()]),edges:new Map(Object.entries(Oe(o.edges)).map(([L,D])=>[L,D.cardinality??"many"])),...S?{computed:new Map(S)}:{},...x.size>0?{linked:x}:{}})}e.facts&&m.set(gn,{computed:new Map(e.facts)});let w=bn(n),E=new Map,T=Object.entries(n.kinds).map(([g,o])=>{let S={};for(let[r,d]of Object.entries(o.fields))S[r]=jn(d,!d.required,w),d.repeats&&(S[Xe(r)]=oe(en()));for(let[r,d]of xe(o.edges))S[r]=oe(On(d));let{label:x,describe:L,durations:D}=e.kinds[g]??{},P=Object.entries(o.computed??{}).map(([r,d])=>[r,typeof d=="string"?{expr:d}:d]),Y=Object.hasOwn(o.fields,"label")&&!o.fields.label.label&&!/\{\s*label\b/.test(o.label??`{${An(o)??""}}`),_=Object.fromEntries([...Y?[["label","Label"]]:[],...Object.entries(o.fields).filter(([,r])=>r.label).map(([r,d])=>[r,d.label]),...P.filter(([,r])=>r.label).map(([r,d])=>[r,d.label])]),A=Object.keys(_).length>0,y=Object.entries(o.fields).filter(([,r])=>r.type==="enum"&&r.optionLabels&&Object.keys(r.optionLabels).length>0),$=Object.fromEntries(y.map(([r,d])=>[r,R=>typeof R=="string"&&Object.hasOwn(d.optionLabels,R)?d.optionLabels[R]:we(String(R))])),C=y.length>0,M=Object.fromEntries(Object.entries(o.fields).filter(([,r])=>r.default!==void 0).map(([r,d])=>[r,d.default]));E.set(g,M);let H=Object.fromEntries(Object.entries(Oe(o.edges)).map(([r,{renamedFrom:d,...R}])=>[r,R])),I=Object.entries(o.fields).flatMap(([r,d])=>d.aliases?[[r,d.aliases]]:[]),j=r=>o[r]?{[r]:o[r]}:{};return Ue(g,{fields:be(S),edges:H,...j("plural"),...j("noun"),...j("aliases"),...I.length>0?{fieldAliases:Object.fromEntries(I)}:{},...j("description"),...x?{label:r=>se(x,{node:r,kinds:m,today:i(),money:w})||r.id}:{},...L?{describe:r=>se(L,{node:r,kinds:m,today:i(),money:w})}:{},...j("lifecycle"),...j("figure"),...j("fieldRoles"),...j("people"),archives:o.archives,...o.tidying?{tidying:o.tidying}:{},...P.length>0?{computed:Object.fromEntries(P.map(([r,d])=>[r,Mn(d,D?.includes(r)??!1,w)??o.computed[r]]))}:{},...A||C||o.glance||o.page?{display:{...A?{labels:_}:{},...C?{format:$}:{},...o.glance?{glance:[...o.glance]}:{},...o.page?{page:o.page}:{}}}:{},...Object.keys(M).length>0?{defaults:M}:{},...e.kinds[g]?.keptInStep?{keptInStep:e.kinds[g].keptInStep}:{}})}),B=nn(T,n.computed);function G(g){return B.tryDefinition(g.kind)?.label?.(g)??g.id}let N=g=>({id:"",kind:g,...E.get(g)}),J=[];for(let[g,o]of Object.entries(n.acts??{})){let S=e.acts[g],{title:x,effects:L,guard:D,refusal:P,destructive:Y,idempotent:_,creates:A,connects:y,severs:$,writes:C,writesOther:M,sets:H}=S,I=new Map(S.args),j={};for(let[c,b]of I)j[c]=$n(b,w);let r=[o.on??[]].flat(),d=new Map(S.exprs),R=L.find(c=>"create"in c),Q=(c,b,p,v=null)=>{if(Z(c)&&"expr"in c)return ne(d.get(c.expr),{graph:p,subject:v,kinds:m,bindings:b,today:i()});let k=me(c);return k===void 0?typeof c=="string"&&c.startsWith("$$")?c.slice(1):c:k==="now"?new Date().toISOString():k==="today"?i():b[k]},$e=(c,b)=>{if(!R)return"";let p=n.kinds[R.create].fields,v=N(R.create),k=[];for(let[O,te]of Object.entries(R.set??{})){try{v[O]=Q(te,c,b)??v[O]}catch{}let X=me(te);X&&c[X]!==void 0&&k.push(O)}let K=G(v).trim(),U=k.filter(O=>v[O]!==!1&&p[O].type!=="text"&&!(/[^]{41}/.test(v[O])||/ .*[.!?]$/.test(v[O])&&!/[ .][A-Z]\w{0,3}\.$/.test(v[O]))&&G({...v,[O]:void 0}).trim()===K).map(O=>v[O]===!0?p[O].label??we(O):hn(v[O],p[O].format,i(),[],w));return K&&U.length>0?`${K} (${U.join(", ")})`:K};J.push(sn(g,{input:be(j),title:x,...o.description?{description:o.description}:{},...o.fromTheOtherEnd?{fromTheOtherEnd:o.fromTheOtherEnd}:{},...I.has(q)?{subject:{kinds:r.length>0?r:"*",arg:q}}:{},...Y?{destructive:!0}:{},..._?{idempotent:!0}:{},...A.length>0?{creates:A}:{},...y.length>0?{connects:y}:{},...$.length>0?{severs:$}:{},writes:C,...Object.keys(M).length>0?{writesOther:M}:{},...Object.keys(H).length>0?{sets:H}:{},...D?{allowedOn:(c,b)=>{let p=c.getNode(b);if(!p||r.length>0&&!r.includes(p.kind))return!1;try{return ne(D,{graph:c,subject:p,kinds:m,bindings:{},today:i()})===!0}catch{return!1}}}:{},describe:(c,b)=>{let p=typeof c[q]=="string"?b.getNode(c[q]):void 0,v=p?G(p):$e(c,b);return v?`${x}: ${v}`:x},apply(c,b){let p=c.graph,v=typeof b[q]=="string"?b[q]:void 0,k=v?p.getNode(v):void 0;if(v&&!k&&de(v),k&&r.length>0&&!r.includes(k.kind))throw new W(`"${x}" acts on ${r.join(" or ")}, not on ${We(k.kind)}`,"invalid");let K={};for(let[s,l]of Object.entries(b))l!==void 0&&(K[s]=l);if(D&&k){let s;try{s=ne(D,{graph:p,subject:k,kinds:m,bindings:K,today:i()})}catch(l){throw l instanceof ae?new W(`"${x}" could not be judged: ${l.sentence}`):l}if(s!==!0)throw new W(P?se(P,{node:k,kinds:m,graph:p,bindings:K,today:i(),money:w}):`"${x}" is not allowed for ${G(k)} right now`)}let U=new Map,O=s=>p.has(s)||[...U.values()].includes(s),te=new Set,X=s=>{let l=tn(s);te.has(l)||(te.add(l),c.removeEdge(s))},ee=(s,l)=>{let u=me(s);if(u==="subject")return v;if(u==="me"){let h=c.me;if(h&&n.kinds[p.getNode(h)?.kind]?.people)return h;throw new W(`"${x}" is done as you, and you have no record here`)}if(U.has(u))return U.get(u);try{return Q(s,K,p,l??k??null)}catch(h){throw h instanceof ae?new W(`"${x}" could not work out a value: ${h.sentence}`):h}};for(let s of L)if("create"in s){let l=n.kinds[s.create],u=N(s.create);for(let[he,ke]of Object.entries(s.set??{})){let Ge=ee(ke,void 0);Ge!==void 0&&(u[he]=Ge)}let h=An(l),z=String((h&&u[h])??s.create),ye=an(z,s.create,u,(he,ke)=>on(n.policy?.sees,he,ke)),re=c.freshId(ye?s.create:z,s.create,u);c.addNode({...u,id:re}),s.as&&U.set(s.as,re)}else if("connect"in s||"sever"in s){let l="connect"in s?s.connect:s.sever,u=String(ee(s.from,void 0)??""),h=String(ee(s.to,void 0)??"");if(O(u)||de(u),O(h)||de(h),"connect"in s){if(f.get(l)?.cardinality==="one")for(let z of p.out(u,l))z.id!==h&&X({kind:l,from:u,to:z.id});p.out(u,l).some(z=>z.id===h)||c.addEdge({kind:l,from:u,to:h})}else X({kind:l,from:u,to:h})}else if("set"in s){let l=String(ee(s.target??"$subject",void 0)??""),u=p.getNode(l);!u&&!O(l)&&de(l);let h={};for(let[z,ye]of Object.entries(s.set)){let re=ee(ye,u);re!==void 0&&(h[z]=re)}Object.keys(h).length>0&&c.patchNode(l,h)}else if("remove"in s){let l=String(ee(s.remove,void 0)??"");p.has(l)||de(l),c.removeNode(l)}else if("replace"in s&&k){let l=b.to;for(let u of s.replace){let h=f.get(u)?.from.includes(k.kind)??!0;for(let z of h?p.out(k.id,u):p.in(k.id,u))u===s.keep&&z.id===l||X(h?{kind:u,from:k.id,to:z.id}:{kind:u,from:z.id,to:k.id})}}}}))}let Te=[];for(let[g,o]of Object.entries(n.rules??{})){let{title:S,require:x,when:L,says:D}=e.rules[g],P=o.repairs??[],Y=(A,y,$=i(),C)=>{let M=[],H={graph:A,subject:y,kinds:m,today:$,...C?{linked:C}:{},onUnread:r=>M.push(r)},I;try{if(L&&ne(L,H)!==!0)return[];if(I=ne(x,H)===!0,!I&&M.length>0)throw new ae(`it reads ${mn(M[0])}`,0)}catch(r){throw r instanceof yn?new rn(r.sentence):r instanceof ae?new Error(r.sentence):r}if(I)return[];let j=P.flatMap(r=>{let d=n.acts?.[r.act],R={},Q=y&&d?.on&&d.fromTheOtherEnd&&![d.on].flat().includes(y.kind)?Ln(e.acts[r.act].args,y.kind):void 0;Q?R[Q]=y.id:y&&(d?.on||/^(edit|remove|archive|unarchive|merge|skip|detach|split)-/.test(r.act))&&(R[q]=y.id);for(let[b,p]of Object.entries(r.args??{}))R[b]=me(p)==="subject"?y?.id:p;let c=(d?e.acts[r.act].args:[]).filter(([b,p])=>p.required&&R[b]===void 0).map(([b])=>b);return[{mutation:r.act,label:r.label??(Q?d.fromTheOtherEnd:d?.title)??r.act.replace(/-/g," "),args:R,...c.length>0?{missing:c}:{}}]});return[{invariant:g,...y?{subjectId:y.id}:{},label:S,message:D?se(D,{node:y,kinds:m,graph:A,today:$,money:w}):y?`${G(y)}: ${S}`:S,nodeIds:y?[y.id]:[],repairs:j}]},_={label:S,shape:{over:o.over,require:x,when:L,says:D,declared:n.kinds,money:w,kinds:m,today:i},judgment:{require:o.require,...o.when?{when:o.when}:{},...o.says?{says:o.says}:{}},...o.description?{description:o.description}:{},...P.length>0?{repairs:P.map(A=>A.act)}:{}};Te.push(o.over==="graph"?Re(g,{scope:"graph",..._,evaluate:({graph:A,today:y,context:$})=>Y(A,null,y,$?.linked)}):Re(g,{scope:{kind:o.over},..._,evaluate:({graph:A,subject:y,today:$,context:C})=>Y(A,y,$,C?.linked)}))}let Le=n.policy&&{...n.policy,...n.roles?{roles:n.roles}:{}},ge={name:n.name,schema:B,mutations:J,invariants:Te,...Le?{policy:Le}:{},...e.brand?{brand:e.brand}:{},...n.modules?{modules:n.modules}:{},...n.lenses?{lenses:n.lenses}:{},...n.pages?{pages:n.pages}:{},...n.settings?{settings:n.settings}:{},...n.connections?{connections:n.connections}:{},...n.forms?{forms:n.forms}:{},...n.publishing?{publishing:n.publishing}:{},...n.purpose?{purpose:n.purpose}:{},...e.viewSpecs?{viewSpecs:e.viewSpecs}:{},...e.home?{home:e.home}:{},version:n.version??1};return xn(ge,n),Gn.set(ge,e),{ok:!0,app:ge,document:n,findings:e.findings,sights:n.policy?.sees,kinds:m}}function Mn(e,a,n){let t=a||e.format==="duration",i=e.format==="money"||e.format==="percent"||!e.format&&e.unit!==void 0;if(!(!t&&!i))return{...e,...t?{as:"duration"}:{},...i?{amount:{...n,...e.format?{format:e.format}:{},...e.unit?{unit:e.unit}:{}}}:{}}}export{Rn as a,qn as b,Sn as c,q as d,me as e,An as f,yt as g,Pn as h};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as I}from"./chunk.TY4GQJKC.js";import{a as ie,b as de,c as se,d as le,e as V,f as L,g as ue}from"./chunk.6ZQAR5ZA.js";import{a as ye}from"./chunk.W3W54DSX.js";import{c as T,e as ae,f as fe}from"./chunk.PI44XMY2.js";import{a as j,b as ee,c as ne,d as re,f as E,m as te,n as b,o as oe,p as B,q as v}from"./chunk.KGW75Z5L.js";import{b as x,d as pe,e as me,g as ce,i as ge,j as he,k as be}from"./chunk.A5PDXNY6.js";import{C as P,Fa as Y,K as H,Rb as q,Sb as Q,T as K,Tb as C,W as F,aa as J,ga as X,ma as N,oa as Z,ta as G,ua as A,va as z,wa as O,xa as M}from"./chunk.VSCIXAHN.js";var we=e=>e.caption?.trim()||e.name,_=e=>A(e)?`${we(e)}, ${z(e)}`:we(e);function tn(e){let n=Math.max(0,Math.round(e)),t=a=>String(a).padStart(2,"0"),r=Math.floor(n/3600),o=Math.floor(n%3600/60);return r>0?`${r}:${t(o)}:${t(n%60)}`:`${o}:${t(n%60)}`}function Pe(e){let n=e?.fields?.shape??{};return Object.keys(n).filter(t=>{let r=P(n[t]);for(;r?.innerType;)r=P(r.innerType);return M(n[t])!==void 0||r?.type==="array"&&M(r.element)!==void 0})}function on(e,n){for(let t of Pe(n)){let r=O(e[t]).find(o=>G(o)||A(o));if(r)return r}}var k=e=>{try{return e()}catch{return null}},Te=e=>typeof e=="string"&&ie.includes(e);function Fe(e){if(e!==void 0)return Te(e)?e:e&&typeof e=="object"&&typeof e.expr=="string"?{expr:k(()=>T(e.expr))}:"neutral"}var Ne=4;function Me(e){let n=typeof e.list=="string"?k(()=>T(e.list)):null,t=e.sort,r=typeof t=="string"?t:t&&typeof t=="object"&&typeof t.by=="string"?t.by:void 0,o=t&&typeof t=="object"?t.direction:void 0,a=n,d;if(n&&r!==void 0)if(o==="choices")d=r;else{let y=k(()=>T(r));a=y?{t:"call",fn:"sort",args:[n,y,{t:"lit",value:o==="desc"?"desc":"asc",at:0}],at:0}:null}let l=typeof e.limit=="number"&&Number.isInteger(e.limit)&&e.limit>=1?Math.min(e.limit,V):void 0,i=e.group,s=typeof i=="string"?i:i&&typeof i=="object"&&typeof i.by=="string"?i.by:void 0,f=i&&typeof i=="object"&&i.headings&&typeof i.headings=="object"?i.headings:{};return{t:"list",source:a,...d?{choiceOrder:d}:{},...l?{limit:l}:{},...s?{group:{by:s,headings:Object.fromEntries(Object.entries(f).filter(y=>typeof y[1]=="string"))}}:{},...typeof e.empty=="string"?{empty:e.empty}:{},as:e.as==="card"?"card":"row"}}function Se(e,n=1,t=""){if(!Array.isArray(e)||n>Ne)return[];let r={};return e.flatMap(o=>{if(!o||typeof o!="object"||Array.isArray(o))return[];let a=o,d=p=>typeof p=="string"?k(()=>ae(p)):null,l=p=>typeof p=="string"?k(()=>T(p)):null,i=Fe(a.tone),s=typeof a.label=="string"?a.label:void 0,f=p=>Object.hasOwn(a,p),y=typeof a.currency=="string"&&/^[A-Z]{3}$/.test(a.currency)?a.currency:void 0,u=f("list")?"list":f("headline")?"headline":typeof a.figure=="string"?"number":Ce.find(f);if(!u)return[];let m=r[u]=(r[u]??0)+1,c=a.key,R=typeof c=="string"&&c?c:`${t}${u}.${m}`;return[{...(()=>{switch(u){case"list":return Me(a);case"number":{let p=se.includes(a.as)?a.as:void 0,W=le.includes(a.emphasis)?a.emphasis:void 0;return{t:u,value:l(a.figure),...p?{as:p}:{},...y?{currency:y}:{},...s?{label:d(s)}:{},...W?{emphasis:W}:{}}}case"headline":case"title":return{t:u,parts:d(a[u])};case"text":{let p=a.lines;return{t:u,parts:d(a[u]),...i?{tone:i}:{},...typeof p=="number"&&Number.isInteger(p)&&p>=0?{lines:p}:{}}}case"badge":return{t:u,parts:d(a[u]),...i?{tone:i}:{}};case"field":{let p=de.includes(a.as)?a.as:void 0;return{t:u,field:String(a.field),...p?{as:p}:{},...y?{currency:y}:{},...s?{label:s}:{}}}case"image":return{t:u,field:String(a.image),as:a.as==="gallery"?"gallery":"thumb",...s?{label:s}:{}};case"progress":{let p=a.progress??{};return{t:u,value:l(p.value),max:l(p.max),...s?{label:d(s)}:{}}}case"group":return{t:u,blocks:Se(a.group,n+1,`${R}.`),direction:a.direction==="row"?"row":"column"};case"when":return{t:u,when:l(a.when),show:Se(a.show,n+1,`${R}.`)};default:return{t:u}}})(),key:R}]})}var Ce=["title","text","badge","field","image","progress","group","when","divider","figure"],g="\u2014",Ve=500;function w(e,n){if(!e)return{ok:!1,problem:"an expression that does not parse"};try{return{ok:!0,value:E(e,{graph:n.graph??te,subject:n.node,kinds:n.kinds,today:n.today,budget:n.budget??Ve})}}catch(t){return{ok:!1,problem:t instanceof Error?t.message:String(t)}}}var Le=(e,n,t)=>!e.format&&e.expr?.t==="ident"&&typeof t=="string"&&n.fields[e.expr.name]?.format==="markdown";function S(e,n,t){if(!e)return{text:g,problem:"a template that does not parse"};let r,o;return{text:e.map(d=>{if(d.text!==void 0)return d.text;let l=w(d.expr??null,n);if(!l.ok)return r??=`{${d.source??""}}: ${l.problem}`,g;if(Le(d,n,l.value))return n.glance?pe(l.value,{markdown:!0}):t&&e.length===1?(o=!0,l.value):me(l.value);let i=!d.format&&d.expr?.t==="ident"&&typeof l.value=="number"?Ge(n,d.expr.name):void 0;return oe(d,i?C(l.value,i):b(l.value,d.format,n.today,d.formatArgs,n.money,v(n.schema)))}).join(""),...r?{problem:r}:{},...o?{markdown:o}:{}}}var Ie=" \xB7 ";function _e(e,n){if(!e||!n.node)return;let t=[[]];for(let d of e){if(d.text===void 0){t[t.length-1].push(d);continue}d.text.split(Ie).forEach((i,s)=>{s>0&&t.push([]),i!==""&&t[t.length-1].push({text:i})})}if(t.length<2)return;let r=d=>{let[l]=d;if(!(d.length!==1||!l||l.format||l.expr?.t!=="ident"))return n.fields[l.expr.name]?.type==="enum"?l.expr.name:void 0},o=0,a=t.flatMap(d=>{let l=r(d);if(l){let s=Object.hasOwn(n.node,l)?n.node[l]:void 0;return s==null||s===""?[]:(o++,[{text:x(n.definition,l,s),field:l}])}let i=S(d,n).text.trim();return i===""||i===g?[]:[{text:i}]});return o>0?a:void 0}function Re(e,n){if(e===void 0)return;if(typeof e=="string")return e;let t=w(e.expr,n);return t.ok&&Te(t.value)?t.value:"neutral"}function De(e){if(typeof e=="string")try{let n=new URL(e);return n.protocol==="http:"||n.protocol==="https:"?n.href:void 0}catch{return}}var xe=(e,n)=>{let t=e.fields[n]?.type;return t==="phone"||t==="place"||t==="duration"?t:ge(e.definition,n)},Ge=(e,n)=>q(e.definition?.fields?.shape?.[n])??ce(e.definition,n);function $e(e,n,t,r,o){if(n==null||n==="")return g;if(typeof n=="boolean")return n?"yes":"no";if(r)return b(n,r,t.today,[],o?{...t.money,currency:o}:t.money);let a=t.fields[e];if(t.definition?.display?.format?.[e])return x(t.definition,e,n);let d=he(xe(t,e),n,t.money?.locale);if(d!==void 0)return d;if(a?.type==="date")return b(n,"date",t.today,[],t.money);if(a?.type==="datetime"&&typeof n=="string")return K(n,t.money?.locale,t.money?.timeZone);if(a?.type==="enum"&&typeof n=="string")return x(t.definition,e,n);let l=typeof n=="number"?Ge(t,e):void 0;if(l)return C(n,l);if(typeof n=="number")return F(n,t.money?.locale,{});let i=O(n);return i[0]?i.map(_).join(", "):Array.isArray(n)?n.map(s=>String(s)).join(", "):typeof n=="object"?g:String(n)}function Ue(e,n,t,r,o){return typeof e!="number"?String(e):n==="money"?Q(e,t?{...o,currency:t}:o):n==="percent"?b(e,n,r,[],o):F(e,o?.locale)}var h=(e,n)=>n?{...e,problem:n}:e;function ke(e){return e.firstHeading===void 0?e:{...e,firstHeading:void 0}}function We(e,n,t){switch(e.t){case"title":{let r=S(e.parts,n);return h({t:"title",text:r.text},r.problem)}case"text":{let r=S(e.parts,n,!0),o=Re(e.tone,n),a=n.glance&&!r.problem?_e(e.parts,n):void 0;return h({t:"text",text:r.text,...o?{tone:o}:{},...e.lines!==void 0?{lines:e.lines}:{},...r.markdown?{markdown:r.markdown}:{},...a?{runs:a}:{}},r.problem)}case"badge":{let r=S(e.parts,n);return h({t:"badge",text:r.text,tone:Re(e.tone,n)??"neutral"},r.problem)}case"field":{let r=e.label??N(n.definition,e.field);if(!n.node)return{t:"field",field:e.field,label:r,text:g,problem:`"${e.field}" names a field, and these blocks are about no one record`};let o=e.as===void 0?n.kinds.get(n.node.kind)?.linked?.get(e.field):void 0;if(o){let y=Y(Object.hasOwn(n.node,e.field)?n.node[e.field]:void 0,o);return{t:"field",field:e.field,label:r,text:y.length>0?"linked record":g,...y.length>0?{linked:{relation:o,refs:y}}:{}}}let a=n.kinds.get(n.node.kind)?.computed?.has(e.field),d,l;if(a){let y=w({t:"ident",name:e.field,at:0},n);y.ok?d=y.value!==null&&typeof y.value=="object"?b(y.value,void 0,n.today,[],n.money,v(n.schema)):y.value:l=y.problem}else d=Object.hasOwn(n.node,e.field)?n.node[e.field]:void 0;let i=e.as!==void 0?void 0:n.fields[e.field]?.type==="url"?De(d):be(xe(n,e.field),d),s=k(()=>$e(e.field,d,n,e.as,e.currency))??g,f=n.fields[e.field]?.type==="app-link"&&e.as===void 0&&typeof d=="string"?d:void 0;return h({t:"field",field:e.field,label:r,text:s,...i?{href:i}:{},...f?{app:f}:{}},l)}case"image":{let r=O(n.node&&Object.hasOwn(n.node,e.field)?n.node[e.field]:null),o=e.as==="gallery"?r:r.filter(a=>G(a)||A(a)).slice(0,1);return{t:"image",field:e.field,label:e.label??N(n.definition,e.field),as:e.as,files:o,text:o.map(_).join(", ")||g}}case"progress":{let r=w(e.value,n),o=w(e.max,n),a=e.label?S(e.label,n):{text:"Progress"},d=e.label?B(e.label,a.text):a.text,l=r.ok?o.ok?a.problem:o.problem:r.problem;return r.ok&&o.ok&&typeof r.value=="number"&&typeof o.value=="number"&&Number.isFinite(r.value)&&Number.isFinite(o.value)&&o.value>0?h({t:"progress",label:d,value:r.value,max:o.value,text:`${b(r.value,void 0,n.today)} of ${b(o.value,void 0,n.today)}`},l):h({t:"progress",label:d,text:g},l)}case"group":return{t:"group",direction:e.direction,blocks:Ae(e.blocks,ke(n))};case"when":{let r=w(e.when,n),o=r.ok&&r.value===!0;return h({t:"when",shown:o,blocks:o?Ae(e.show,ke(n)):[]},r.ok?void 0:r.problem)}case"divider":return{t:"divider"};case"figure":return{t:"figure"};case"headline":{let r=S(e.parts,n),o=Math.min(6,Math.max(1,(t?n.firstHeading:void 0)??n.heading??3));return h({t:"headline",level:o,text:e.parts?B(e.parts,r.text):r.text},r.problem)}case"number":{let r=w(e.value,n),o=!r.ok||r.value===null||typeof r.value=="object"?g:Ue(r.value,e.as,e.currency,n.today,n.money),a=e.label?S(e.label,n):void 0;return h({t:"number",text:o,...a&&e.label?{label:B(e.label,a.text)}:{},...e.emphasis?{emphasis:e.emphasis}:{}},r.ok?a?.problem:r.problem)}case"list":return Ke(e,n)}}function Ae(e,n){let t=e.findIndex(r=>r.t==="headline");return e.map((r,o)=>({...We(r,n,o===t),key:r.key}))}function Oe(e,n){let t=n.trim().toLowerCase();return e.some(r=>{switch(r.t){case"title":case"headline":return r.text.trim()!=="";case"text":case"badge":return t!==""&&r.text.toLowerCase().includes(t);case"group":return Oe(r.blocks,n);case"when":return r.shown&&Oe(r.blocks,n);default:return!1}})}var He=new Set(["every","some","sum","min","max","sort"]);function jn(e,n){let t=new Set,r=new Set,o=i=>{if(i)switch(i.t){case"ident":t.add(i.name);return;case"list":i.items.forEach(o);return;case"member":return o(i.object);case"unary":return o(i.operand);case"binary":return o(i.left),o(i.right);case"where":return o(i.set);case"call":i.args.forEach((s,f)=>{f===1&&He.has(i.fn)||o(s)});return;default:return}},a=i=>{for(let s of i??[])o(s.expr)},d=(i,s)=>{i.forEach((f,y)=>{let u=s[y];if(u)switch(f.t){case"field":case"image":t.add(f.field);return;case"title":case"text":case"badge":case"headline":a(f.parts);return;case"number":o(f.value),a(f.label);return;case"progress":o(f.value),o(f.max);return;case"group":u.t==="group"&&d(f.blocks,u.blocks);return;case"when":u.t==="when"&&u.shown&&d(f.show,u.blocks);return;case"list":if(u.t==="list")for(let m of u.members)r.add(m.id);return;default:return}})};d(e,n);let l=n[0];return{fields:t,records:r,...e[0]?.t==="title"&&l?.t==="title"?{title:l.text}:{}}}function Ke(e,n){let t=Math.min(6,(n.heading??3)+1),r=w(e.source,n);if(!r.ok)return{t:"list",as:e.as,failed:!0,members:[],headingLevel:t,more:0,problem:r.problem};let o=r.value,a=o instanceof j?o.nodes:o!==null&&typeof o=="object"&&!Array.isArray(o)?[o]:[];e.choiceOrder&&n.schema&&(a=Je(a,e.choiceOrder,n.schema));let d=a.length,l=a.slice(0,e.limit??V),i=l.slice(0,L),s=l.slice(L),f=(e.limit===void 0?d:l.length)-i.length,y=c=>e.group&&n.schema&&c.length>0?Xe(c,e.group,n.schema,n.graph):void 0,u=y(i),m=s.length>0?y(l):void 0;return{t:"list",as:e.as,failed:!1,members:i,...s.length>0?{rest:s}:{},...u?{groups:u}:{},...m?{everyGroup:m}:{},headingLevel:t,...i.length===0&&e.empty?{empty:e.empty}:{},more:f,total:d}}function D(e,n,t){let r=e.tryDefinition(n)?.fields?.shape,o=r&&Object.hasOwn(r,t)?I(r[t]):void 0;return o?.type==="enum"?o.options??[]:[]}var $=(e,n)=>Object.hasOwn(e,n)?e[n]:void 0;function Je(e,n,t){let r=o=>{let a=D(t,o.kind,n).indexOf(String($(o,n)));return a<0?Number.MAX_SAFE_INTEGER:a};return e.map((o,a)=>({node:o,i:a,rank:r(o)})).sort((o,a)=>o.rank-a.rank||o.i-a.i).map(o=>o.node)}function Xe(e,n,t,r){let o=e.some(i=>D(t,i.kind,n.by).length>0)?void 0:ue(n.by);if(o&&r)return Ze(e,o,n.headings,t,r);let a=[];for(let i of e)for(let s of D(t,i.kind,n.by))a.includes(s)||a.push(s);let d=[];for(let i of a){let s=e.filter(y=>$(y,n.by)===i);if(s.length===0)continue;let f=t.tryDefinition(s[0].kind);d.push({value:i,heading:n.headings[i]??J(x(f,n.by,i)),members:s})}let l=e.filter(i=>!a.includes(String($(i,n.by))));return l.length>0&&d.push({value:null,members:l}),d}function Ze(e,n,t,r,o){let a=u=>n.way??(Object.hasOwn(r.tryDefinition(u.kind)?.edges??{},n.edge)?"out":"in"),d=new Map,l=[],i=v(r),s;for(let u of e){let m=a(u)==="out"?o.out(u.id,n.edge):o.in(u.id,n.edge);m.length===0&&l.push(u);for(let c of m){s??=c.kind;let R=d.get(c.id)??{node:c,members:[]};R.members.push(u),d.set(c.id,R)}}let f=[...d.values()].map(({node:u,members:m})=>({value:u.id,heading:t[u.id]??i(u),members:m})).sort((u,m)=>u.heading.localeCompare(m.heading,void 0,{numeric:!0}));!s&&e[0]&&a(e[0])==="out"&&(s=(r.tryDefinition(e[0].kind)?.edges??{})[n.edge]?.to?.[0]);let y=s&&s!=="*"?Z(r.tryDefinition(s),s):void 0;return l.length>0&&f.push({value:null,...y?{heading:`No ${y}`}:{},members:l}),f}function je(e){return e.t==="list"||e.t==="headline"||e.t==="number"||e.t==="image"&&e.as==="gallery"?!0:e.t==="group"?e.blocks.some(je):e.t==="when"?e.show.some(je):!1}function Ee(e,n){let t=e.tryDefinition(n)?.fields?.shape??{},r={};for(let[o,a]of Object.entries(t)){let d=I(a);d&&(r[o]=d)}return r}var Be=new WeakMap;function U(e){let n=Be.get(e);return n||Be.set(e,n=ye(e)),n}function ze(e,n,t,r={}){let o=U(e),a={},d={},l=i=>{if(i instanceof j)return i.nodes.map(s=>l(s));if(Array.isArray(i))return i.map(s=>l(s));if(i!==null&&typeof i=="object"){let s=i;return{id:s.id,kind:s.kind,label:X(e.tryDefinition(s.kind),s)}}return i};for(let[i,s]of o.get(t?t.kind:ne)?.computed??[])try{let f=[],y=E(s,{graph:n,subject:t,kinds:o,...r.today?{today:r.today}:{},...r.budget?{budget:r.budget}:{},...r.linked?{linked:r.linked}:{},onUnread:u=>f.push(u)});f.length>0&&(y===null||y instanceof j&&y.nodes.length===0)?d[i]=ee(f[0]):a[i]=l(y)}catch(f){if(!(f instanceof re))throw f;d[i]=f.sentence}return{values:a,refused:d}}function vn(e,n,t){let{values:r}=ze(e,n,t);if(Object.keys(r).length===0)return t;let o=a=>Array.isArray(a)?a.map(o):a!==null&&typeof a=="object"?a.label:a;return{...t,...Object.fromEntries(Object.entries(r).map(([a,d])=>[a,o(d)]))}}function Pn(e,n){return[...fe(e.tryDefinition(n)).keys()]}var Ye=500,qe=2e4,ve=new WeakMap;function Qe(e,n){let t=ve.get(e);t||ve.set(e,t=new Map);let r=t.get(n);return r||t.set(n,r=Ee(e,n)),r}function Vn(e,n,t,r={}){if(n&&typeof e.seenBy!="function")throw new TypeError("blockContextFor: a seat is read from a store (its `seenBy`); a bare { graph, schema } is read as it is handed, with no principal");let o=n?e.seenBy(n):e,a=n&&t?o.graph.getNode(t.id)??null:t,d=o.schema,l=a&&d.tryDefinition(a.kind),i=!a||(r.slot??"page")==="page",{money:s,firstHeading:f}=r;return{node:a,graph:o.graph,schema:d,kinds:U(d),fields:a?Qe(d,a.kind):{},definition:l||void 0,today:r.today??o.today?.()??H(s?.timeZone),money:s,heading:r.heading??(i?2:3),firstHeading:f,budget:r.budget??(i?qe:Ye),...i?{}:{glance:!0}}}export{we as a,tn as b,Pe as c,on as d,Se as e,Ae as f,Oe as g,jn as h,je as i,U as j,ze as k,vn as l,Pn as m,Vn as n};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk.WVUJXDXZ.js";import{a as k,b as q,c as pe}from"./chunk.7VKSXGTX.js";import"./chunk.TY4GQJKC.js";import"./chunk.6ZQAR5ZA.js";import"./chunk.W3W54DSX.js";import"./chunk.PI44XMY2.js";import"./chunk.KGW75Z5L.js";import"./chunk.GZHZLJBF.js";import{n as me}from"./chunk.IOK4GVJC.js";import"./chunk.OJGHDWI6.js";import"./chunk.TLJOZSDD.js";import"./chunk.MSWWWLEA.js";import"./chunk.UITT6JWW.js";import"./chunk.A5PDXNY6.js";import"./chunk.WC3DENU4.js";import"./chunk.VNDKKTED.js";import{G as Le,M as S,O as ue,T as ce,ba as ge,ea as he}from"./chunk.4MP72LPR.js";import"./chunk.SDO3U72B.js";import{$c as de,ma as oe,pa as w,ra as le,ta as E,ua as x,va as se,wa as Y}from"./chunk.VSCIXAHN.js";import"./chunk.FQLNBIQ5.js";import{b as U}from"./chunk.AJZBJBMO.js";var h=U(Le(),1);async function ye(e,n){let i=await createImageBitmap(e);try{let r=Math.min(1,n/Math.max(i.width,i.height)),a=document.createElement("canvas");a.width=Math.max(1,Math.round(i.width*r)),a.height=Math.max(1,Math.round(i.height*r));let l=a.getContext("2d");if(l===null)throw new Error("This browser will not give us a canvas to resize with.");return l.drawImage(i,0,0,a.width,a.height),a}finally{i.close()}}var t=U(ce(),1),Ve=2048,Ie=.85;function _(e){return e<1e3?`${e} bytes`:e<1e6?`${Math.round(e/1e3)} KB`:`${(e/1e6).toFixed(e<1e7?1:0)} MB`}function z(e){if(e.type==="application/pdf")return"PDF";let n=/\.([a-z0-9]{2,5})$/i.exec(e.name??"")?.[1];return n?n.toUpperCase():(e.type.split("/")[1]??e.type).replace(/^x-|^vnd\./,"").split(/[.+-]/)[0].toUpperCase()}function ke(e){let n=[...new Set(e.map(i=>i==="image/*"?"pictures":i==="video/*"?"videos":i==="*/*"||i==="*"?"any file":`${z({type:i})} files`))];return n.length<=1?n[0]??"no files":`${n.slice(0,-1).join(", ")} and ${n[n.length-1]}`}function Fe(e,n){if(e.length===0)return!0;let i=`${n.split("/")[0]}/*`;return e.some(r=>r==="*"||r==="*/*"||r===n||r===i)}var fe=/^image\/hei[cf]$|\.hei[cf]$/i,be=e=>fe.test(e.type)||fe.test(e.name),De={mov:"video/quicktime",mp4:"video/mp4",m4v:"video/mp4",webm:"video/webm",ogv:"video/ogg"},Be=e=>De[/\.([a-z0-9]{2,4})$/i.exec(e)?.[1]?.toLowerCase()??""];async function je(e,n,i){let r=e.name||(i.camera?"photo.jpg":"file"),a=e.type||(be({type:"",name:r})?"image/heic":Be(r)??"application/octet-stream"),l=be({type:a,name:r}),u=a.startsWith("image/")||l;if(i.image&&!u)return{refused:`\u201C${r}\u201D isn\u2019t a picture.`};if(i.video)return a.startsWith("video/")?K({blob:e,name:r,type:a},n):{refused:`\u201C${r}\u201D isn\u2019t a video.`};if(l||u&&/^image\/(jpeg|webp)$/.test(a)&&(i.camera||e.size>n.maxBytes||e.size>15e5))try{let c=await ye(e,Ve),b=await new Promise(p=>c.toBlob(p,"image/jpeg",Ie));if(b)return K({blob:b,name:l?r.replace(/\.hei[cf]$/i,"")+".jpg":r,type:"image/jpeg",width:c.width,height:c.height},n)}catch{if(l&&!Fe(n.kinds,a))return{refused:`\u201C${r}\u201D is a HEIC photo, which this browser can\u2019t turn into a JPEG and this host doesn\u2019t take. Save it as a JPEG and try again.`}}let y={};if(u&&!l)try{let c=await createImageBitmap(e);y={width:c.width,height:c.height},c.close()}catch{}return K({blob:e,name:r,type:a,...y},n)}function K(e,n){return Fe(n.kinds,e.type)?e.blob.size>n.maxBytes?{refused:`\u201C${e.name}\u201D is ${_(e.blob.size)}; this host takes files up to ${_(n.maxBytes)}.`}:e:{refused:`\u201C${e.name}\u201D is a ${z(e)} file; this host takes ${ke(n.kinds)}.`}}async function _e(e,n,i,r=!1){let a;try{a=await n.upload(e.blob,e.name)}catch(u){let s=u instanceof Error&&u.message.trim()?u.message.trim():"the host refused it";return{refused:`\u201C${e.name}\u201D wasn\u2019t kept: ${s}`}}return le(a)?i&&!E(a)?{refused:`\u201C${e.name}\u201D isn\u2019t a picture.`}:r&&!x(a)?{refused:`The host kept \u201C${e.name}\u201D as ${z(a)}, not as a video.`}:{...a,...a.width===void 0&&e.width?{width:e.width}:{},...a.height===void 0&&e.height?{height:e.height}:{}}:{refused:`The host\u2019s answer for \u201C${e.name}\u201D isn\u2019t a file a record can keep.`}}var F="var(--graview-radius, 8px)",P={color:"var(--graview-ink-muted)",fontSize:"0.8125rem"};function Z(e){let n=S(),i=ue()?.past!=null,[r,a]=(0,h.useState)(!1),l=n?.kept?ze(n,e.href):!0,[,u]=(0,h.useState)(0);return(0,h.useEffect)(()=>{if(typeof l!="object")return;let s=!0;return l.then(()=>s&&u(y=>y+1)),()=>void(s=!1)},[l]),[l===!1||i&&r,()=>a(!0)]}var J=new WeakMap;function ze(e,n){let i=J.get(e)?.get(n);if(i!==void 0)return i;let r;try{r=e.kept(n)}catch{return!0}if(typeof r=="boolean")return r;let a=J.get(e)??new Map;J.set(e,a);let l=Promise.resolve(r).then(u=>u!==!1,()=>!0);return a.set(n,l),l.then(u=>a.set(n,u)),l}function ee({file:e,style:n}){return(0,t.jsx)("span",{role:"img","aria-label":`${k(e)}, removed later`,"data-graview-removed-later":e.href,style:{display:"grid",placeItems:"center",textAlign:"center",padding:4,boxSizing:"border-box",fontSize:"0.6875rem",lineHeight:1.2,color:"var(--graview-ink-muted)",border:"1px dashed var(--graview-edge-bright)",borderRadius:F,...n},children:"removed later"})}function Q({file:e,size:n=56,style:i}){let r=S(),[a,l]=Z(e);return a?(0,t.jsx)(ee,{file:e,style:{width:n,height:n,flex:"none",...i}}):x(e)?(0,t.jsx)(Ae,{file:e,size:n,...i?{style:i}:{},onError:l}):(0,t.jsx)("img",{onError:l,src:w(r,e.href),alt:k(e),width:n,height:n,loading:"lazy",decoding:"async","data-graview-thumb":e.href,style:{width:n,height:n,objectFit:"cover",borderRadius:F,display:"block",flex:"none",background:"var(--graview-edge)",...i}})}function $e(e){let[n,i]=(0,h.useState)({}),r=e.duration??n.duration;return[{...r!==void 0?{duration:r}:{},width:e.width??n.width,height:e.height??n.height},u=>{let s=u.currentTarget;i({...Number.isFinite(s.duration)&&s.duration>0?{duration:s.duration}:{},...s.videoWidth>0&&s.videoHeight>0?{width:s.videoWidth,height:s.videoHeight}:{}})}]}var Ne=320,xe=(e,n)=>`${k(e)}, ${se({...n!==void 0?{duration:n}:{}})}`,Oe=(0,t.jsx)("span",{"data-graview-play-glyph":"","aria-hidden":"true",style:{position:"absolute",inset:0,display:"grid",placeItems:"center",pointerEvents:"none"},children:(0,t.jsxs)("svg",{viewBox:"0 0 24 24",width:"40%",height:"40%",style:{maxWidth:40,maxHeight:40,filter:"drop-shadow(0 1px 2px rgb(0 0 0 / 0.5))"},children:[(0,t.jsx)("circle",{cx:"12",cy:"12",r:"11",fill:"rgb(0 0 0 / 0.55)"}),(0,t.jsx)("path",{d:"M9.5 7.5v9l7-4.5z",fill:"#fff"})]})});function Ae({file:e,size:n,style:i,onError:r}){let a=S(),[l,u]=$e(e),s={width:n,height:n,objectFit:"cover",display:"block",borderRadius:F,background:"var(--graview-edge)"};return(0,t.jsxs)("span",{role:"img","aria-label":xe(e,l.duration),"data-graview-thumb":e.href,"data-graview-video-thumb":"",style:{position:"relative",display:"block",width:n,height:n,flex:"none",...i},children:[e.poster?(0,t.jsx)("img",{src:w(a,e.poster),alt:"",width:n,height:n,loading:"lazy",decoding:"async",onError:r,style:s}):(0,t.jsx)("video",{src:w(a,e.href),preload:"metadata",muted:!0,playsInline:!0,"aria-hidden":"true",tabIndex:-1,width:n,height:n,onLoadedMetadata:u,onError:r,style:s}),Oe,l.duration!==void 0?(0,t.jsx)("span",{"data-graview-video-clock":"","aria-hidden":"true",style:{position:"absolute",right:3,bottom:3,padding:"0 4px",borderRadius:4,background:"rgb(0 0 0 / 0.65)",color:"#fff",fontSize:"0.6875rem",lineHeight:"16px",fontVariantNumeric:"tabular-nums"},children:q(l.duration)}):null]})}function Ge({file:e}){let n=S(),[i,r]=Z(e),[a,l]=$e(e);if(i)return(0,t.jsx)(ee,{file:e,style:{width:"100%",aspectRatio:"16 / 9"}});let u=a.width!==void 0&&a.height!==void 0;return(0,t.jsxs)("figure",{"data-graview-video-figure":e.href,style:{margin:0,display:"grid",gap:4,minWidth:0},children:[(0,t.jsx)("video",{"data-graview-video":e.href,src:w(n,e.href),...e.poster?{poster:w(n,e.poster)}:{},controls:!0,preload:"metadata",playsInline:!0,...u?{width:a.width,height:a.height}:{},"aria-label":xe(e,a.duration),onLoadedMetadata:l,onError:r,style:{display:"block",width:"100%",maxWidth:u?Math.max(a.width,Ne):"100%",height:"auto",maxHeight:"80vh",aspectRatio:u?`${a.width} / ${a.height}`:"16 / 9",borderRadius:F,background:"#000"},children:e.captions?(0,t.jsx)("track",{kind:"captions",src:w(n,e.captions),srcLang:"en",label:"Captions",default:!0}):null}),(0,t.jsx)("figcaption",{"data-graview-video-said":"",style:P,children:[e.caption??e.name,...a.duration!==void 0?[q(a.duration)]:[]].join(" \xB7 ")})]})}function Ue({file:e,onOpen:n}){let i=S(),[r,a]=Z(e);return r?(0,t.jsx)(ee,{file:e,style:{width:"100%",aspectRatio:"1"}}):(0,t.jsx)("button",{type:"button","aria-label":`Open ${k(e)} full size`,onClick:l=>n(l.currentTarget),style:{padding:0,border:0,background:"none",cursor:"zoom-in",display:"block",width:"100%",borderRadius:F},children:(0,t.jsx)("img",{src:w(i,e.href),alt:k(e),loading:"lazy",decoding:"async",onError:a,style:{width:"100%",aspectRatio:"1",objectFit:"cover",borderRadius:F,display:"block",background:"var(--graview-edge)"}})})}function X({files:e,label:n}){let i=S(),r=d=>w(i,d.href),a=e.filter(E),l=e.filter(x),u=e.filter(d=>!E(d)&&!x(d)),[s,y]=(0,h.useState)(null),c=(0,h.useRef)(null),b=(0,h.useRef)(null);(0,h.useEffect)(()=>{let d=c.current;s!==null&&d&&!d.open&&d.showModal?.()},[s]);let p=s===null?void 0:a[s];return(0,t.jsxs)("div",{style:{display:"grid",gap:10,minWidth:0},children:[a.length>0?(0,t.jsx)("ul",{"data-graview-gallery":"","aria-label":n,style:{listStyle:"none",margin:0,padding:0,display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(96px, 1fr))",gap:8},children:a.map((d,T)=>(0,t.jsx)("li",{style:{minWidth:0},children:(0,t.jsx)(Ue,{file:d,onOpen:R=>{b.current=R,y(T)}})},d.href))}):null,l.length>0?(0,t.jsx)("ul",{"data-graview-videos":"","aria-label":n,style:{listStyle:"none",margin:0,padding:0,display:"grid",gap:12},children:l.map(d=>(0,t.jsx)("li",{style:{minWidth:0},children:(0,t.jsx)(Ge,{file:d})},d.href))}):null,u.length>0?(0,t.jsx)("ul",{"data-graview-documents":"",style:{listStyle:"none",margin:0,padding:0,display:"grid",gap:10},children:u.map(d=>(0,t.jsxs)("li",{"data-graview-document":d.type,style:{display:"grid",gap:6,minWidth:0},children:[d.type==="application/pdf"?(0,t.jsx)("object",{data:r(d),type:"application/pdf","aria-label":k(d),style:{width:"100%",height:420,border:"1px solid var(--graview-edge)",borderRadius:F},children:(0,t.jsxs)("p",{style:{margin:0,padding:12},children:["This browser shows no PDF here: ",(0,t.jsxs)("a",{href:r(d),download:d.name,children:["download ",d.name]}),"."]})}):null,(0,t.jsxs)("span",{style:{display:"flex",flexWrap:"wrap",gap:"2px 10px",alignItems:"baseline",minWidth:0,overflowWrap:"anywhere"},children:[(0,t.jsx)("a",{href:r(d),download:d.name,...d.type==="application/pdf"?{target:"_blank",rel:"noopener"}:{},children:d.name}),(0,t.jsxs)("span",{style:P,children:[z(d)," \xB7 ",_(d.bytes)]})]}),d.caption?(0,t.jsx)("span",{style:P,children:d.caption}):null]},d.href))}):null,p?(0,t.jsx)("dialog",{ref:c,"data-graview-full":p.href,"aria-label":k(p),onClose:()=>{y(null),b.current?.focus()},onClick:d=>{d.target===d.currentTarget&&d.currentTarget.close()},style:{padding:0,border:0,borderRadius:F,maxWidth:"min(96vw, 1600px)",maxHeight:"94vh",background:"var(--graview-panel)",color:"var(--graview-ink)"},children:(0,t.jsxs)("figure",{style:{margin:0,display:"grid",gap:8,padding:10},children:[(0,t.jsx)("img",{src:r(p),alt:k(p),style:{maxWidth:"100%",maxHeight:"80vh",objectFit:"contain",display:"block",margin:"0 auto"}}),(0,t.jsxs)("figcaption",{style:{display:"flex",gap:12,alignItems:"center",justifyContent:"space-between"},children:[(0,t.jsx)("span",{children:p.caption??p.name}),(0,t.jsx)("form",{method:"dialog",style:{margin:0},children:(0,t.jsx)("button",{type:"submit",autoFocus:!0,children:"Close"})})]})]})}):null]})}function Se({value:e,onChange:n,several:i,image:r,video:a=!1,label:l,thumbs:u=!0}){let s=S(),y=(0,h.useId)(),c=(0,h.useRef)(null),b=(0,h.useRef)(null),[p,d]=(0,h.useState)(null),[T,R]=(0,h.useState)(null),[te,H]=(0,h.useState)([]),[N,O]=(0,h.useState)(!1),W=r?"image/":a?"video/":void 0,C=s?W?s.kinds.filter(o=>o.startsWith(W)||o==="*"||o==="*/*"):s.kinds:[],Pe=s?s.kinds.length===0||C.length>0:!1,Re=!a&&(s?s.kinds.length===0||(r?C:s.kinds).some(o=>o.startsWith("image/")||o.startsWith("*")):!1),ne=!!s&&s.maxBytes>0,L=ne&&(!W||Pe),V=r?"picture":a?"video":"file",ae=i?`${V}s`:`a ${V}`,ie=W?C.length>0?C.join(","):`${W}*`:s?.kinds.join(",")||void 0,We=typeof matchMedia=="function"&&matchMedia("(pointer: coarse)").matches,A=(0,h.useRef)(e);A.current=e;let re=(0,h.useRef)(null),I=(0,h.useRef)(null);(0,h.useEffect)(()=>{let o=I.current;if(!o||o.from===e)return;I.current=null;let g=re.current?.children,f=g?.[Math.min(o.at,g.length-1)];((o.what==="move"?f?.querySelector("[data-graview-file-move]"):null)??f?.querySelector("[data-graview-file-remove]")??c.current?.parentElement?.querySelector("[data-graview-file-choose]"))?.focus()});let D=async(o,g)=>{if(!s||o.length===0)return;let f=i?o:o.slice(0,1),m=[],$=[];f.length<o.length&&$.push(`${l} holds one ${V}, so ${o.slice(1).map(v=>`\u201C${v.name||"the photo"}\u201D`).join(", ")} ${o.length>2?"were":"was"} left out.`),H([]),R(null);for(let v of f){d(`Sending ${v.name||"the photo"}\u2026`);let G=await je(v,s,{image:r,video:a,camera:g==="camera"});if("refused"in G){$.push(G.refused);continue}let M=await _e(G,s,r,a);"refused"in M?$.push(M.refused):[...i?A.current:[],...m].some(He=>He.href===M.href)?$.push(`\u201C${M.name}\u201D is already here.`):m.push(M)}if(d(null),H($),m.length!==0)try{n(i?[...A.current,...m]:m.slice(-1)),R(`Added ${m.map(v=>v.name).join(", ")}.`)}catch(v){H([...$,v instanceof Error?v.message:String(v)])}},B=(o,g,f)=>{try{I.current=f?{...f,from:e}:null,n(o),R(g)}catch(m){I.current=null,H([m instanceof Error?m.message:String(m)])}},j=o=>o?Array.from(o):[],Me=o=>{let g=j(o.clipboardData?.files);!L||g.length===0||(o.preventDefault(),D(g,"pasted"))},Te=o=>{O(!1),L&&(o.preventDefault(),D(j(o.dataTransfer?.files),"dropped"))};return(0,t.jsxs)("div",{role:"group","aria-labelledby":`${y}-label`,"data-graview-file-editor":"","data-graview-dropping":N?"":void 0,onPaste:Me,onDragOver:o=>{L&&(o.preventDefault(),O(!0))},onDragLeave:()=>O(!1),onDrop:Te,style:{display:"grid",gap:8,minWidth:0,padding:N?6:0,outline:N?"2px dashed var(--graview-accent)":"none",borderRadius:F},children:[(0,t.jsx)("span",{id:`${y}-label`,style:{position:"absolute",width:1,height:1,overflow:"hidden",clip:"rect(0 0 0 0)",whiteSpace:"nowrap"},children:l}),e.length>0&&(i||e.length>1)?(0,t.jsx)("ul",{ref:re,style:{listStyle:"none",margin:0,padding:0,display:"grid",gap:6},children:e.map((o,g)=>(0,t.jsxs)("li",{style:{display:"flex",gap:8,alignItems:"center",flexWrap:"wrap",minWidth:0},children:[u&&(E(o)||x(o))?(0,t.jsx)(Q,{file:o,size:40}):null,(0,t.jsx)("span",{style:{flex:"1 1 8rem",minWidth:0,overflowWrap:"anywhere"},children:o.name}),(0,t.jsx)(we,{file:o,onCaption:f=>B(e.map((m,$)=>$===g?ve(m,f):m),f?`${o.name} now says \u201C${f}\u201D.`:`${o.name} says its name again.`)}),i&&g>0?(0,t.jsx)("button",{type:"button","data-graview-file-move":"","aria-label":`Move ${o.name} earlier`,onClick:()=>B(e.map((f,m)=>m===g-1?o:m===g?e[g-1]:f),`Moved ${o.name} earlier.`,{at:g-1,what:"move"}),children:"\u2191"}):null,i?(0,t.jsx)("button",{type:"button","data-graview-file-remove":"","aria-label":`Remove ${o.name}`,onClick:()=>B(e.filter((f,m)=>m!==g),`Removed ${o.name}.`,{at:g,what:"remove"}),children:"Remove"}):null]},`${g}:${o.href}`))}):e.length===1?(0,t.jsx)(we,{file:e[0],onCaption:o=>B([ve(e[0],o)],o?`${e[0].name} now says \u201C${o}\u201D.`:`${e[0].name} says its name again.`)}):null,L?(0,t.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:8,alignItems:"center"},children:[(0,t.jsx)("input",{ref:c,type:"file",hidden:!0,multiple:i,...ie?{accept:ie}:{},"data-graview-file-input":"","aria-label":`Choose ${ae}`,onChange:o=>{let g=j(o.currentTarget.files);o.currentTarget.value="",D(g,"picked")}}),(0,t.jsx)("button",{type:"button",disabled:p!==null,onClick:()=>c.current?.click(),"data-graview-file-choose":"",children:e.length>0&&!i?`Replace the ${V}`:`Choose ${ae}`}),Re?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("input",{ref:b,type:"file",hidden:!0,accept:"image/*",capture:"environment","data-graview-photo-input":"","aria-label":"Take a photo",onChange:o=>{let g=j(o.currentTarget.files);o.currentTarget.value="",D(g,"camera")}}),We?(0,t.jsx)("button",{type:"button",disabled:p!==null,onClick:()=>b.current?.click(),children:"Take a photo"}):null]}):null,(0,t.jsxs)("span",{style:P,"data-graview-file-takes":"",children:["or drop or paste ",i?"them":"it"," here \xB7 ",s.kinds.length>0?ke(C.length>0?C:s.kinds):"any file",", up to ",_(s.maxBytes)]})]}):(0,t.jsx)("p",{style:{...P,margin:0},"data-graview-file-none":"",children:ne?`This host doesn\u2019t take ${a?"videos":"pictures"}, so none can be added here.`:"This host doesn\u2019t take files, so none can be added here."}),(0,t.jsx)("p",{"aria-live":"polite",style:{...P,margin:0,minHeight:p||T?void 0:0},"data-graview-file-status":"",children:p??T??""}),te.length>0?(0,t.jsx)("div",{role:"alert","data-graview-file-refused":"",style:{color:"var(--graview-warn)",fontSize:"0.875rem",display:"grid",gap:2},children:te.map((o,g)=>(0,t.jsx)("p",{style:{margin:0},children:o},g))}):null]})}var ve=(e,n)=>{let{caption:i,...r}=e;return n?{...r,caption:n}:r};function we({file:e,onCaption:n}){let[i,r]=(0,h.useState)(e.caption??"");(0,h.useEffect)(()=>r(e.caption??""),[e.caption]);let a=()=>{let l=i.trim().slice(0,500);l!==(e.caption??"")&&n(l)};return(0,t.jsx)("input",{type:"text",value:i,placeholder:E(e)||x(e)?"What it shows":"What it is","aria-label":`What ${e.name} ${E(e)||x(e)?"shows":"is"}`,"data-graview-file-caption":e.href,onChange:l=>r(l.target.value),onBlur:a,onKeyDown:l=>{l.key==="Enter"&&(l.preventDefault(),a())},style:{flex:"1 1 10rem",minWidth:0,font:"inherit",fontSize:"0.875rem",minHeight:24}})}function Ee({field:e,label:n,labelStyle:i,valueStyle:r,style:a,children:l}){return(0,t.jsxs)("div",{"data-graview-files":e,style:{display:"grid",gap:6,minWidth:0,gridColumn:"1 / -1",...a},children:[(0,t.jsx)("dt",{style:i,children:n}),(0,t.jsx)("dd",{style:{margin:0,minWidth:0,display:"grid",gap:10,...r},children:l})]})}function Ce(e){let{nodeId:n,field:i,label:r,files:a}=e,{fields:l,commit:u}=me(n),s=l.find(p=>p.field===i&&p.takesValue),y=s?.shape,c=y?.type==="several"?y.of:y,b=y?.type==="several";return a.length===0&&c?.type!=="file"?null:(0,t.jsxs)(Ee,{...e,children:[(0,t.jsx)(X,{files:a,label:r}),s&&c?.type==="file"?(0,t.jsx)(Se,{value:a,thumbs:!1,several:b,image:c.image===!0,video:c.video===!0,label:r,onChange:p=>{let d=b?p:p[p.length-1];d!==void 0&&u(s,d)}}):null]})}function et(e){switch(e.as){case"field":return e.read?e.files.length>0?(0,t.jsx)(Ee,{...e,children:(0,t.jsx)(X,{files:e.files,label:e.label})}):null:(0,t.jsx)(Ce,{...e});case"unfilled":return(0,t.jsx)(Ye,{...e});case"thumb":return(0,t.jsx)(Q,{...e});case"block":return e.files.length>0?(0,t.jsx)("span",{className:"graview-spec-image","data-graview-field":e.field,"data-graview-image":e.view,style:{display:"block",minWidth:0,...e.view==="gallery"?{position:"relative",zIndex:de.raised}:{}},children:e.view==="thumb"?(0,t.jsx)(Q,{file:e.files[0],size:72}):(0,t.jsx)(X,{files:e.files,label:e.label})}):null;case"control":{let n=(0,t.jsx)(Se,{value:Y(e.value),several:e.several,image:e.image,video:e.video===!0,label:e.label,onChange:i=>e.onChange(e.several?i:i[i.length-1])});return e.title===void 0?n:(0,t.jsxs)("fieldset",{"data-graview-part":"group","data-graview-field":e.several?"files":"file",children:[(0,t.jsx)("legend",{"data-graview-part":"label",children:e.title}),n]})}}}function Ye({nodeId:e,skip:n,labels:i,labelStyle:r,style:a}){let{store:l}=ge(),u=he(e),s=u?l.schema.tryDefinition(u.kind):void 0,y=pe(s).filter(c=>!n.includes(c)&&!(s?.display?.hide??[]).includes(c)&&Y(u?.[c]).length===0);return y.length===0?null:(0,t.jsx)("dl",{style:{margin:0,display:"grid",gap:14,minWidth:0},children:y.map(c=>(0,t.jsx)(Ce,{nodeId:e,field:c,label:i?.[c]??oe(s,c),files:[],...r?{labelStyle:r}:{},...a?{style:a}:{}},c))})}export{Se as FilesEditor,Ve as SEND_EDGE,et as drawFiles,ke as kindsWords,je as prepare,_e as send,_ as sizeWords,Fe as takes,z as typeWords};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as n}from"./chunk.CFKZXLXS.js";import"./chunk.Y5C4RXG7.js";import"./chunk.7MHCGVGM.js";import"./chunk.FRYBMS3W.js";import"./chunk.NGTRL5U4.js";import"./chunk.3MOJF7BA.js";import"./chunk.LZIBQ3VX.js";import"./chunk.TAT2IQUR.js";import"./chunk.3XGA65Y3.js";import"./chunk.BYKD5RLA.js";import"./chunk.2K4TT2BV.js";import"./chunk.VUBNBTJP.js";import"./chunk.WVUJXDXZ.js";import{e as p}from"./chunk.7VKSXGTX.js";import"./chunk.TY4GQJKC.js";import"./chunk.6ZQAR5ZA.js";import"./chunk.W3W54DSX.js";import"./chunk.PI44XMY2.js";import"./chunk.KGW75Z5L.js";import"./chunk.GZHZLJBF.js";import"./chunk.IOK4GVJC.js";import"./chunk.OJGHDWI6.js";import"./chunk.TLJOZSDD.js";import"./chunk.MSWWWLEA.js";import"./chunk.UITT6JWW.js";import"./chunk.A5PDXNY6.js";import"./chunk.WC3DENU4.js";import"./chunk.VNDKKTED.js";import{T as m}from"./chunk.4MP72LPR.js";import"./chunk.SDO3U72B.js";import"./chunk.VSCIXAHN.js";import"./chunk.FQLNBIQ5.js";import{b as t}from"./chunk.AJZBJBMO.js";var i=t(m(),1),a=new WeakMap;function l(o){let e=a.get(o);if(!e){let r=p(o);e=c=>c.mode==="fullscreen"?(0,i.jsx)(n,{blocks:r,slot:"home",heading:2,firstHeading:1}):(0,i.jsx)(n,{blocks:r,slot:"home",heading:3,firstHeading:2}),a.set(o,e)}return e}export{l as homeView};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{a as G,b as ye,e as ge,f as fe,g as he}from"./chunk.2K4TT2BV.js";import{b as K}from"./chunk.VUBNBTJP.js";import{c as ce}from"./chunk.7VKSXGTX.js";import{n as H}from"./chunk.IOK4GVJC.js";import{b as L,c as de,d as pe,j as ue,k as me}from"./chunk.MSWWWLEA.js";import{d as se,e as le}from"./chunk.UITT6JWW.js";import{b as ie,f as oe}from"./chunk.A5PDXNY6.js";import{Fa as ae,G as we,Ga as re,S as ee,T as te,ba as M,ca as ne,ea as _}from"./chunk.4MP72LPR.js";import{a as Z}from"./chunk.SDO3U72B.js";import{da as A,ma as J,vb as Q}from"./chunk.VSCIXAHN.js";import{b as U}from"./chunk.AJZBJBMO.js";var l=U(we(),1);var Se=re(Z(()=>(__graviewPreload(import.meta.url,["./chunk.BYKD5RLA.js","./chunk.2K4TT2BV.js","./chunk.VUBNBTJP.js","./chunk.WVUJXDXZ.js","./chunk.7VKSXGTX.js","./chunk.TY4GQJKC.js","./chunk.6ZQAR5ZA.js","./chunk.W3W54DSX.js","./chunk.PI44XMY2.js","./chunk.KGW75Z5L.js","./chunk.GZHZLJBF.js","./chunk.IOK4GVJC.js","./chunk.OJGHDWI6.js","./chunk.TLJOZSDD.js","./chunk.MSWWWLEA.js","./chunk.UITT6JWW.js","./chunk.A5PDXNY6.js","./chunk.WC3DENU4.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.6HF6POIX.js")))),ve=Se.part((i,a)=>i.drawAppLink(a),{quiet:!0});var e=U(te(),1);function j({nodeId:i,field:a,value:d,stored:s=d,said:m}){let{fields:u,commit:o}=H(i),t=u.find(r=>r.field===a),{store:c,principal:W}=M(),g=c.graph.getNode(i)?.kind,b=c.schema.definitions.find(r=>r.kind===g),v=J(b,a),w=v.toLowerCase(),n=m??`${v.charAt(0).toUpperCase()}${v.slice(1)}: ${d}`,[k,I]=(0,l.useState)(!1),p=t?.shape.type==="number"?t.shape.amount:void 0,x=p&&s!==""&&Number.isFinite(Number(s))?de(Number(s),p):s,[f,C]=(0,l.useState)(x),S=(0,l.useRef)(null),y=(0,l.useRef)(null),$=(0,l.useRef)(!1),[q,X]=(0,l.useState)(void 0),E=r=>{$.current=r,I(!1)};(0,l.useEffect)(()=>C(x),[x,k]);let Y=t?.shape.type==="date";if((0,l.useEffect)(()=>{if(Y)return ae(()=>void he())},[Y]),(0,l.useEffect)(()=>{k?S.current?.focus():$.current&&($.current=!1,y.current?.focus())},[k]),!t)return(0,e.jsx)("span",{"data-graview-field":a,"data-graview-readonly":"",title:`Read-only \u2014 nothing this app declares changes the ${w}`,style:{color:"var(--graview-ink)",cursor:"default",overflowWrap:"anywhere"},children:d});if(!k){let r=(0,e.jsx)("button",{ref:y,type:"button","data-graview-field":a,"data-graview-editable":t.mutation,...n===d?{}:{"aria-label":n},title:`${t.title} \u2014 changes the ${w}, and can be undone`,onClick:()=>{X(void 0),I(!0)},style:{all:"unset",cursor:"text",display:"inline-flex",alignItems:"flex-end",minHeight:24,minWidth:24,maxWidth:"100%",overflowWrap:"anywhere",paddingBottom:1,borderBottom:"1px dashed var(--graview-edge-bright)",color:"var(--graview-ink)"},children:d});return q?(0,e.jsxs)(e.Fragment,{children:[r,(0,e.jsx)("span",{role:"status","data-graview-refused":a,style:{marginLeft:6,fontSize:"0.75rem",color:"var(--graview-ink-muted)"},children:q})]}):r}let B=(r,{left:h=!1}={})=>{if(E(!h),r!==s){if(r===""||r===void 0||r===null){if(s==="")return;t.clearable?o(t,null):X(`${v.charAt(0).toUpperCase()}${v.slice(1)} can't be empty; it keeps ${d}.`);return}t.shape.type==="date"&&typeof r=="string"&&ke(r)||o(t,r)}},ke=r=>{if(t.shape.type!=="date")return!1;let h=u.filter(T=>T.shape.type==="date"&&T.takesValue),R=me(h.map(T=>T.field),b?.fieldRoles??{}),P=R?.start===a?h.find(T=>T.field===R.end):void 0,V=c.graph.getNode(i)?.[R?.end??""];if(!P||typeof V!="string")return!1;let D=ue(s===""?void 0:s,r,V,{time:t.shape.time===!0,instant:t.shape.instant===!0});if(D===void 0||D===V)return!1;let z=t.call(r),O=P.call(D);return c.applyAll(z.name===O.name?[{name:z.name,args:{...z.args,...O.args}}]:[z,O],{author:W}),!0};if(!t.takesValue){let r=[t,...t.alternatives];return(0,e.jsx)("span",{role:"group","aria-label":`Change ${A(a).toLowerCase()}`,"data-graview-field":a,style:{display:"inline-flex",gap:6,alignItems:"center",flexWrap:"wrap"},onKeyDown:h=>{h.key==="Escape"&&E(!0)},children:r.map((h,R)=>(0,e.jsx)("button",{type:"button",ref:R===0?S:void 0,"data-graview-act":h.mutation,onClick:()=>{E(!0),o(h,void 0)},onBlur:P=>{let N=P.relatedTarget;(!N||!P.currentTarget.parentElement?.contains(N))&&E(!1)},style:{padding:"2px 9px",fontSize:"0.8125rem",borderRadius:999},children:h.title},h.mutation))})}return(0,e.jsxs)("form",{style:{display:"inline-flex",flexWrap:"wrap",gap:4,maxWidth:"100%"},onSubmit:r=>{r.preventDefault(),B(be(t,f))},children:[t.shape.type==="choice"?(0,e.jsx)("select",{ref:S,"aria-label":A(a),"data-graview-field":a,value:f,onChange:r=>B(r.target.value),onBlur:()=>E(!1),style:{font:"inherit",fontSize:"inherit"},children:t.shape.options.map(r=>(0,e.jsx)("option",{value:r,children:ie(b,a,r)},r))}):t.shape.type==="date"?(0,e.jsx)(fe,{inputRef:S,label:A(a),value:f===""?void 0:f,time:t.shape.time===!0,instant:t.shape.instant===!0,partial:t.shape.partial===!0,onChange:r=>C(r??""),onLeave:r=>B(r,{left:!0}),onCancel:()=>E(!0),autoSelect:!0,boxStyle:{fontSize:"inherit",minHeight:24,padding:"0 3px"}}):(0,e.jsxs)(e.Fragment,{children:[p&&L(p).prefix?(0,e.jsx)("span",{"aria-hidden":"true",children:L(p).prefix}):null,(0,e.jsx)("input",{ref:S,"aria-label":p?`${A(a)}, ${L(p).hint}`:A(a),"data-graview-field":a,...p?{inputMode:"decimal",placeholder:L(p).placeholder,"data-graview-amount":p.format??"unit"}:{},type:p?"text":t.shape.type==="number"&&!t.shape.duration?"number":"text",...t.shape.type==="number"&&t.shape.duration?{placeholder:"1h 30m"}:{},...t.shape.type==="text"&&t.shape.holds==="phone"?{inputMode:"tel",autoComplete:"tel"}:{},...t.shape.type==="number"&&t.shape.min!==void 0&&!p?{min:t.shape.min}:{},...t.shape.type==="number"&&t.shape.max!==void 0&&!p?{max:t.shape.max}:{},...t.shape.type==="number"&&t.shape.step!==void 0&&!p?{step:t.shape.step}:{},value:f,onChange:r=>C(r.target.value),onBlur:()=>B(be(t,f),{left:!0}),onKeyDown:r=>{r.key==="Escape"&&E(!0)},style:{font:"inherit",fontSize:"inherit",width:`min(${Math.max(6,f.length+1)}ch, 100%)`,maxWidth:"100%",minWidth:0,boxSizing:"border-box",minHeight:24,display:"inline-flex",alignItems:"center",padding:"0 3px"}}),p&&L(p).suffix?(0,e.jsx)("span",{"aria-hidden":"true",children:L(p).suffix}):null]}),t.open.length>0?(0,e.jsxs)("span",{style:{fontSize:"0.75rem",color:"var(--graview-ink-faint)"},children:["also needs ",t.open.map(r=>r.name).join(", ")]}):null]})}function be(i,a){return a.trim()===""?"":i.shape.type==="number"&&i.shape.amount?pe(a,i.shape.amount):i.shape.type==="number"?i.shape.duration?oe(a)??a:Number(a):i.shape.type==="text"&&i.shape.holds?a.trim():a}function xe({href:i,field:a,value:d,stored:s,nodeId:m}){let u=i.startsWith("tel:"),o=(t,c)=>(0,e.jsx)("a",{href:i,"data-graview-link":a,...c?{"aria-label":c}:{},...u?{}:{target:"_blank",rel:"noopener noreferrer"},style:{display:"inline-flex",alignItems:"center",minHeight:24,minWidth:24,maxWidth:"100%",overflowWrap:"anywhere",color:"var(--graview-accent)"},children:t});return m===void 0?o(d):(0,e.jsxs)("span",{style:{display:"inline-flex",flexWrap:"wrap",alignItems:"center",gap:"0 10px",maxWidth:"100%"},children:[(0,e.jsx)(j,{nodeId:m,field:a,value:d,...s===void 0?{}:{stored:s}}),o(u?"Call":"Map",u?`Call ${d}`:`Open ${d} in maps`)]})}function Ge({id:i,hide:a=[],limit:d=10,labels:s={},shown:m=[]}){let{store:u}=M(),o=_(i);if(!o)return null;let t=u.schema.tryDefinition(o.kind),c=se(o,t,{limit:d,said:m}).filter(g=>!a.includes(g.key)),W=ce(t).length>0;return c.length===0&&!W?null:(0,e.jsxs)("div",{"data-graview-fields":o.id,style:{display:"grid",gap:14,alignContent:"start",minWidth:0,fontSize:"0.875rem"},children:[le(t,c).map((g,b)=>{let v=(0,e.jsx)("dl",{style:{margin:0,display:"grid",gridTemplateColumns:"auto 1fr",gap:"5px 16px",alignContent:"start",minWidth:0},children:g.fields.map(n=>n.files?(0,e.jsx)(G,{as:"field",nodeId:o.id,field:n.key,label:s[n.key]??n.label,files:n.files,labelStyle:F,style:{marginTop:6}},n.key):n.long?(0,e.jsx)(Ee,{nodeId:o.id,field:n.key,label:s[n.key]??n.label,value:n.value,markdown:n.markdown,labelStyle:F,style:{gridColumn:"1 / -1",marginTop:6}},n.key):(0,e.jsxs)("div",{style:{display:"contents"},children:[(0,e.jsx)("dt",{style:{...F,whiteSpace:"nowrap"},children:s[n.key]??n.label}),(0,e.jsxs)("dd",{style:{margin:0,minWidth:0},children:[n.linked?(0,e.jsx)(ye,{relation:n.linked.relation,refs:n.linked.refs,nodeId:o.id,field:n.key}):n.app?(0,e.jsx)(ve,{address:n.app,as:"record",nodeId:o.id,field:n.key}):n.href?(0,e.jsx)(xe,{href:n.href,field:n.key,value:n.value,stored:n.stored,nodeId:o.id}):(0,e.jsx)(j,{nodeId:o.id,field:n.key,value:n.value,stored:n.stored}),n.repeats?(0,e.jsx)(ge,{nodeId:o.id,field:n.key,start:o[n.key],value:o[`${n.key}Repeat`],label:`${s[n.key]??n.label} repeats`}):null]})]},n.key))});if(!g.title)return(0,e.jsx)("div",{children:v},b);let w=`graview-field-group-${o.id}-${b}`;return(0,e.jsxs)("div",{role:"group","aria-labelledby":w,style:{display:"grid",gap:6,minWidth:0},children:[(0,e.jsx)("p",{id:w,"data-graview-field-group":g.title,style:Ce,children:g.title}),v]},b)}),W?(0,e.jsx)(G,{as:"unfilled",nodeId:o.id,skip:a,labels:s,labelStyle:F}):null]})}var F={color:"var(--graview-ink-faint)",fontSize:"0.8125rem"},Ce={margin:0,fontSize:"0.75rem",letterSpacing:"0.06em",textTransform:"uppercase",color:"var(--graview-ink-muted)",fontWeight:560};function Ee(i){return ne()?(0,e.jsx)(We,{...i}):(0,e.jsx)(Le,{...i})}function Le({field:i,label:a,value:d,labelStyle:s,valueStyle:m,style:u,markdown:o}){return(0,e.jsxs)("div",{"data-graview-long":i,style:{display:"grid",gap:6,minWidth:0,...u},children:[(0,e.jsx)("dt",{style:s,children:a}),(0,e.jsx)("dd",{style:{margin:0,minWidth:0,...m},children:(0,e.jsx)("div",{"data-graview-field":i,children:(0,e.jsx)(K,{text:d,markdown:o})})})]})}function We({nodeId:i,field:a,label:d,value:s,labelStyle:m,valueStyle:u,style:o,markdown:t}){let{fields:c,commit:W}=H(i),{store:g,principal:b}=M(),v=(0,l.useContext)(ee)!==null&&g.collaborative(i,a),w=c.find(y=>y.field===a&&y.takesValue),n=w&&(!v||g.permits({name:Q,args:{node:i,field:a,at:0,remove:0,insert:""}},b).ok)?w:void 0,[k,I]=(0,l.useState)(!1),p=(0,l.useRef)(null),x=(0,l.useRef)(!1);(0,l.useEffect)(()=>{!k&&x.current&&(x.current=!1,p.current?.focus())},[k]);let f=y=>{x.current=y,I(!1)},C=d.toLowerCase(),S=(0,e.jsx)(K,{text:s,markdown:t});return(0,e.jsxs)("div",{"data-graview-long":a,style:{display:"grid",gap:6,minWidth:0,...o},children:[(0,e.jsxs)("dt",{style:{display:"flex",alignItems:"baseline",gap:10,...m},children:[(0,e.jsx)("span",{children:d}),n&&!k?(0,e.jsx)("button",{ref:p,type:"button","data-graview-editable":n.mutation,"aria-label":`Edit the ${C}`,title:`${n.title} \u2014 changes the ${C}, and can be undone`,onClick:()=>I(!0),style:Te,children:"Edit"}):null]}),(0,e.jsx)("dd",{style:{margin:0,minWidth:0,...u},children:k&&n?(0,e.jsx)(l.Suspense,{fallback:S,children:(0,e.jsx)(Ie,{nodeId:i,field:a,label:d,value:s,...t?{markdown:!0}:{},onCancel:()=>f(!0),onDone:y=>f(!y),onSave:(y,$)=>{f(!$),y!==s&&W(n,y)}})}):(0,e.jsx)("div",{"data-graview-field":a,...n?{}:{"data-graview-readonly":"",title:`Read-only \u2014 nothing this app declares changes the ${C}`},...n?{onClick:()=>I(!0)}:{},style:{cursor:n?"text":"default",minWidth:0},children:S})})]})}var Ie=(0,l.lazy)(()=>(__graviewPreload(import.meta.url,["./chunk.VUBNBTJP.js","./chunk.WC3DENU4.js","./chunk.VNDKKTED.js","./chunk.4MP72LPR.js","./chunk.SDO3U72B.js","./chunk.VSCIXAHN.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.MJVYWLQQ.js"))),Te={all:"unset",cursor:"pointer",fontSize:"0.75rem",letterSpacing:"normal",textTransform:"none",color:"var(--graview-accent)",borderBottom:"1px dashed currentColor",minHeight:24,minWidth:24,display:"inline-flex",alignItems:"flex-end"};function Ke({nodeId:i,children:a}){let{fields:d}=H(i),s=_(i);if(!s)return(0,e.jsx)(e.Fragment,{children:a});let m=d.find(u=>{let o=s[u.field];return typeof o=="string"&&o===a});return m?(0,e.jsx)(j,{nodeId:i,field:m.field,value:a,said:a}):(0,e.jsx)(e.Fragment,{children:a})}export{ve as a,j as b,xe as c,Ge as d,Ee as e,Ke as f};
|