graview 0.1.55 → 0.1.57
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.XSMXSNDR.js → chunk.2PWVDUOU.js} +1 -1
- package/dist/preview/{chunk.AFK5HHLL.js → chunk.33PZEW5A.js} +1 -1
- package/dist/preview/{chunk.SUGOENC4.js → chunk.3DPTDMJ7.js} +1 -1
- package/dist/preview/chunk.47T3KUAA.js +1 -0
- package/dist/preview/{chunk.XUHY4XO2.js → chunk.4BRM5SGO.js} +1 -1
- package/dist/preview/{chunk.4TLWZVVG.js → chunk.4HFCOMR3.js} +1 -1
- package/dist/preview/{chunk.5MCXTY2P.js → chunk.4HPP35XQ.js} +1 -1
- package/dist/preview/chunk.4JDHBNEA.js +104 -0
- package/dist/preview/{chunk.QWICAV2C.js → chunk.4K6VAC2S.js} +2 -2
- package/dist/preview/{chunk.ZXOD5GM3.js → chunk.4L4F47QP.js} +1 -1
- package/dist/preview/{chunk.SIABGHF2.js → chunk.4NPXMYA5.js} +1 -1
- package/dist/preview/{chunk.354A4QCG.js → chunk.4OP4IEEY.js} +1 -1
- package/dist/preview/chunk.4SBYXHCQ.js +1 -0
- package/dist/preview/{chunk.LYVRXRIH.js → chunk.4UQBMFJZ.js} +1 -1
- package/dist/preview/{chunk.7WEQHJ3N.js → chunk.4W5GCPAP.js} +1 -1
- package/dist/preview/{chunk.TT6GKRBE.js → chunk.4XKRCAJZ.js} +1 -1
- package/dist/preview/{chunk.HXHFWZ2U.js → chunk.534TBZJ3.js} +2 -2
- package/dist/preview/{chunk.JRRVLGEK.js → chunk.53U6E5LD.js} +1 -1
- package/dist/preview/{chunk.HXR7EEXR.js → chunk.547FQPYG.js} +1 -1
- package/dist/preview/{chunk.O752PM42.js → chunk.57BKS5KD.js} +1 -1
- package/dist/preview/chunk.57KRCHQT.js +1 -0
- package/dist/preview/{chunk.KVQZ5FR6.js → chunk.5BPRGXIW.js} +1 -1
- package/dist/preview/{chunk.TAQB64FZ.js → chunk.5GTOF5D5.js} +1 -1
- package/dist/preview/{chunk.KY7QD22S.js → chunk.5IEFTFKQ.js} +1 -1
- package/dist/preview/chunk.5NZDFT6R.js +1 -0
- package/dist/preview/{chunk.AFEEXRN3.js → chunk.66LWZIY5.js} +1 -1
- package/dist/preview/{chunk.USJ4J3GL.js → chunk.6AH26OL7.js} +2 -2
- package/dist/preview/{chunk.PIQ52FCI.js → chunk.6SD7YZ4U.js} +2 -2
- package/dist/preview/{chunk.AVVNQKA7.js → chunk.72IHABM5.js} +1 -1
- package/dist/preview/chunk.7INWDFNG.js +1 -0
- package/dist/preview/{chunk.FUZWXKTN.js → chunk.7IXTNST2.js} +1 -1
- package/dist/preview/{chunk.6UAUME5U.js → chunk.7ML2BWSP.js} +1 -1
- package/dist/preview/chunk.7UBABS2T.js +1 -0
- package/dist/preview/{chunk.CM2ETM2A.js → chunk.7VIFAN3O.js} +1 -1
- package/dist/preview/chunk.7VZA34T4.js +1 -0
- package/dist/preview/{chunk.EJXUOL2C.js → chunk.AD3EC5DU.js} +1 -1
- package/dist/preview/{chunk.BRCKXL7B.js → chunk.BCE6LIDR.js} +1 -1
- package/dist/preview/chunk.BPEUHOKH.js +1 -0
- package/dist/preview/{chunk.KHJ2MCMS.js → chunk.BUSFJM6P.js} +1 -1
- package/dist/preview/{chunk.2HANQ737.js → chunk.BZEJM2PY.js} +1 -1
- package/dist/preview/{chunk.YGZGMRDC.js → chunk.C5EFUODO.js} +1 -1
- package/dist/preview/{chunk.ATXSLBE3.js → chunk.C7EJPV2N.js} +1 -1
- package/dist/preview/chunk.CMLNBJZG.js +3 -0
- package/dist/preview/{chunk.NXM73RZA.js → chunk.CUKRUQQ2.js} +1 -1
- package/dist/preview/chunk.CXB4BSI4.js +1 -0
- package/dist/preview/{chunk.5EOSEVZB.js → chunk.D3LQJXVP.js} +1 -1
- package/dist/preview/{chunk.YOBRVKJT.js → chunk.D4EP7FEC.js} +1 -1
- package/dist/preview/{chunk.WSMYFEGU.js → chunk.DBMZ3AQB.js} +1 -1
- package/dist/preview/chunk.DIFR37EZ.js +5 -0
- package/dist/preview/chunk.DJ4A76SX.js +1 -0
- package/dist/preview/{chunk.O7RMVGAB.js → chunk.DM5X3JBH.js} +1 -1
- package/dist/preview/chunk.DQUISKTC.js +1 -0
- package/dist/preview/chunk.DSLGMCB6.js +1 -0
- package/dist/preview/chunk.DSWMXM57.js +1 -0
- package/dist/preview/{chunk.DB3HOKZD.js → chunk.DWLKJGVT.js} +1 -1
- package/dist/preview/{chunk.2KH2LWZL.js → chunk.EQAAKYLA.js} +1 -1
- package/dist/preview/{chunk.4OMSQFIY.js → chunk.EXZLG3HK.js} +1 -1
- package/dist/preview/{chunk.QJ42D5GM.js → chunk.EZ4NUZWX.js} +1 -1
- package/dist/preview/{chunk.WUFCRE7O.js → chunk.EZ4TZUMM.js} +1 -1
- package/dist/preview/chunk.FJTWAU7N.js +1 -0
- package/dist/preview/{chunk.WVKXELAF.js → chunk.FLMNWVSY.js} +2 -2
- package/dist/preview/{chunk.K5WPS4RR.js → chunk.FLVE6IBM.js} +1 -1
- package/dist/preview/chunk.FPGU43SC.js +1 -0
- package/dist/preview/{chunk.5DPFAVCZ.js → chunk.FRERJWZJ.js} +1 -1
- package/dist/preview/{chunk.OT6EWYK2.js → chunk.G3BDQ6EA.js} +1 -1
- package/dist/preview/chunk.GBAUQXXD.js +1 -0
- package/dist/preview/{chunk.5SANELJT.js → chunk.H5CRRBNU.js} +1 -1
- package/dist/preview/{chunk.7Y6NK5CT.js → chunk.HFSG3F5Z.js} +1 -1
- package/dist/preview/chunk.I2NI7CT7.js +1 -0
- package/dist/preview/{chunk.ZAHVKXYQ.js → chunk.I5PSHASU.js} +1 -1
- package/dist/preview/{chunk.TDV7JGIQ.js → chunk.I636CZE4.js} +1 -1
- package/dist/preview/chunk.I6H3HRWT.js +1 -0
- package/dist/preview/{chunk.62LPYPP3.js → chunk.IRQOJATD.js} +1 -1
- package/dist/preview/chunk.IV7AUO53.js +1 -0
- package/dist/preview/{chunk.RZQKCLTW.js → chunk.IX63LTRQ.js} +1 -1
- package/dist/preview/{chunk.IXHLP2CL.js → chunk.JBSW7ZNH.js} +1 -1
- package/dist/preview/chunk.JD5HSAMC.js +18 -0
- package/dist/preview/{chunk.ZOW7AC7U.js → chunk.JETT6ELP.js} +1 -1
- package/dist/preview/{chunk.LQCH2NFE.js → chunk.JNNBHD4Z.js} +1 -1
- package/dist/preview/{chunk.LMXNHBGH.js → chunk.JQFIZRAZ.js} +2 -2
- package/dist/preview/chunk.KNYLY7MH.js +1 -0
- package/dist/preview/chunk.KO7IOFNY.js +1 -0
- package/dist/preview/{chunk.EGSE6NNE.js → chunk.KPIDJYIU.js} +1 -1
- package/dist/preview/{chunk.YRFN4VDD.js → chunk.KTV24HY7.js} +1 -1
- package/dist/preview/{chunk.6JYNNPAI.js → chunk.KYOI7BG3.js} +1 -1
- package/dist/preview/{chunk.PHLMQO7V.js → chunk.LE2KAR25.js} +1 -1
- package/dist/preview/{chunk.UE5GAP67.js → chunk.LHIT3EZD.js} +2 -2
- package/dist/preview/{chunk.DBCVZGCC.js → chunk.LKJ6FD6Y.js} +1 -1
- package/dist/preview/chunk.LUIRQ5UF.js +2 -0
- package/dist/preview/chunk.LWRXCO2Z.js +1 -0
- package/dist/preview/{chunk.YYWANGIC.js → chunk.M72JKVHP.js} +4 -4
- package/dist/preview/{chunk.6NQQUIBX.js → chunk.MAZFQIL5.js} +1 -1
- package/dist/preview/{chunk.CPNE6HPQ.js → chunk.MBLFZF5R.js} +1 -1
- package/dist/preview/{chunk.PSLCI3GO.js → chunk.MRHPOUA4.js} +1 -1
- package/dist/preview/{chunk.PIHCXN5U.js → chunk.MWWOI5PW.js} +1 -1
- package/dist/preview/{chunk.35O5H5L7.js → chunk.N2DM42SG.js} +2 -2
- package/dist/preview/chunk.N33WUCAN.js +3 -0
- package/dist/preview/{chunk.PCKX2FHR.js → chunk.N5MQARN6.js} +1 -1
- package/dist/preview/{chunk.G5XTASMO.js → chunk.NF72Z2HG.js} +1 -1
- package/dist/preview/{chunk.RNYLNBIB.js → chunk.NGK6IRV3.js} +1 -1
- package/dist/preview/chunk.NL3AJZ3N.js +1 -0
- package/dist/preview/chunk.NUS5K56R.js +21 -0
- package/dist/preview/{chunk.XTP5DGPJ.js → chunk.NX7CR4AE.js} +1 -1
- package/dist/preview/chunk.NZDWXX6H.js +1 -0
- package/dist/preview/{chunk.5L4J2XAI.js → chunk.O47MN7E5.js} +1 -1
- package/dist/preview/chunk.OYUDK3LK.js +1 -0
- package/dist/preview/chunk.PF5P5YVD.js +1 -0
- package/dist/preview/{chunk.V6X3U3JF.js → chunk.PHC2MI4C.js} +1 -1
- package/dist/preview/{chunk.U5AX4DD5.js → chunk.PQMMISCQ.js} +1 -1
- package/dist/preview/{chunk.TUBAFVV4.js → chunk.Q6OZLBNL.js} +1 -1
- package/dist/preview/{chunk.ZPXAKRKG.js → chunk.QMYHXMRV.js} +1 -1
- package/dist/preview/chunk.QPL3OXW3.js +1 -0
- package/dist/preview/{chunk.V5PAFSWP.js → chunk.QS6YW7UY.js} +1 -1
- package/dist/preview/chunk.QUJS63OJ.js +13 -0
- package/dist/preview/{chunk.EKP3HQAX.js → chunk.RALAID6N.js} +1 -1
- package/dist/preview/chunk.RQX4CQJN.js +1 -0
- package/dist/preview/{chunk.PM64C5PX.js → chunk.RVR6FWAF.js} +1 -1
- package/dist/preview/{chunk.MFCBAQS3.js → chunk.S5ECRIG5.js} +1 -1
- package/dist/preview/{chunk.DNJM6WQO.js → chunk.SAJLIA5M.js} +1 -1
- package/dist/preview/{chunk.RPVJ5IXD.js → chunk.TBRXNU6T.js} +1 -1
- package/dist/preview/{chunk.Y3BEKXYB.js → chunk.TVURUMU4.js} +1 -1
- package/dist/preview/chunk.UBNZDSS7.js +1 -0
- package/dist/preview/chunk.UDCDK7XJ.js +4 -0
- package/dist/preview/{chunk.6ZJE5M2A.js → chunk.UGOKORIF.js} +1 -1
- package/dist/preview/{chunk.NDLQXQV2.js → chunk.UV3U4FRT.js} +1 -1
- package/dist/preview/{chunk.QBMIET7P.js → chunk.UWQ3I5OW.js} +1 -1
- package/dist/preview/chunk.V6FUYRZI.js +1 -0
- package/dist/preview/{chunk.2SWQI4HF.js → chunk.VDS3IOTK.js} +1 -1
- package/dist/preview/chunk.VHPGGC2P.js +1 -0
- package/dist/preview/chunk.VSGTNYM2.js +1 -0
- package/dist/preview/{chunk.FUS2FJS3.js → chunk.VW4JAQCH.js} +1 -1
- package/dist/preview/{chunk.OS5EALHY.js → chunk.WASWMHND.js} +1 -1
- package/dist/preview/chunk.WYPL2QUA.js +1 -0
- package/dist/preview/{chunk.MFOSEOF4.js → chunk.XTBS64IT.js} +1 -1
- package/dist/preview/chunk.XVN3CQKH.js +2 -0
- package/dist/preview/{chunk.27ZSRO3O.js → chunk.Y3EOGXRS.js} +1 -1
- package/dist/preview/chunk.Y4KNR76Z.js +1 -0
- package/dist/preview/chunk.YDTXCVBU.js +1 -0
- package/dist/preview/{chunk.DH4AC7TC.js → chunk.YPP7FSEZ.js} +1 -1
- package/dist/preview/{chunk.FTW3K3G6.js → chunk.YQXA4WAM.js} +2 -2
- package/dist/preview/{chunk.4BFJWNVM.js → chunk.YR75TWDV.js} +1 -1
- package/dist/preview/{chunk.QIAH7HHO.js → chunk.YS5U3DUX.js} +1 -1
- package/dist/preview/chunk.Z5UVYOGC.js +1 -0
- package/dist/preview/{chunk.P4ZZSFOQ.js → chunk.ZNXRHOUI.js} +1 -1
- package/dist/preview/index.html +50 -50
- package/dist/preview/page.js +2 -2
- package/package.json +6 -6
- package/dist/preview/chunk.2ORJGMRT.js +0 -104
- package/dist/preview/chunk.3IZOXNJH.js +0 -1
- package/dist/preview/chunk.5D6SIBOK.js +0 -1
- package/dist/preview/chunk.5EZDXWOE.js +0 -1
- package/dist/preview/chunk.5MSNKSTE.js +0 -1
- package/dist/preview/chunk.5XUVCM7X.js +0 -1
- package/dist/preview/chunk.6NGSR2ZQ.js +0 -1
- package/dist/preview/chunk.7KERB5CH.js +0 -1
- package/dist/preview/chunk.AVNOLMCV.js +0 -1
- package/dist/preview/chunk.AZ6Q3WT2.js +0 -1
- package/dist/preview/chunk.DKJK2MMV.js +0 -2
- package/dist/preview/chunk.DU75P3Y7.js +0 -1
- package/dist/preview/chunk.DVG47BK3.js +0 -1
- package/dist/preview/chunk.DXJFAAOI.js +0 -1
- package/dist/preview/chunk.F5RN6YXG.js +0 -4
- package/dist/preview/chunk.FVOFTM5J.js +0 -1
- package/dist/preview/chunk.G2XDQPE4.js +0 -1
- package/dist/preview/chunk.H536YUAZ.js +0 -3
- package/dist/preview/chunk.HNJFBI7J.js +0 -1
- package/dist/preview/chunk.HUABTCQE.js +0 -1
- package/dist/preview/chunk.INBHY3SA.js +0 -1
- package/dist/preview/chunk.KIMIPHAI.js +0 -1
- package/dist/preview/chunk.KXNWZ33P.js +0 -1
- package/dist/preview/chunk.LEPKPNPA.js +0 -1
- package/dist/preview/chunk.LLXEWLIP.js +0 -1
- package/dist/preview/chunk.LWLI5PI4.js +0 -1
- package/dist/preview/chunk.MIQMPOWF.js +0 -2
- package/dist/preview/chunk.MNSKBGRM.js +0 -1
- package/dist/preview/chunk.MSM6E6JK.js +0 -1
- package/dist/preview/chunk.NS6KWKF5.js +0 -1
- package/dist/preview/chunk.OIMYSR2J.js +0 -1
- package/dist/preview/chunk.OL2N5NUV.js +0 -1
- package/dist/preview/chunk.QQ3YWKWU.js +0 -1
- package/dist/preview/chunk.R3ZS4QO6.js +0 -18
- package/dist/preview/chunk.SG67ID6C.js +0 -1
- package/dist/preview/chunk.SYX7AEHU.js +0 -1
- package/dist/preview/chunk.T66UK7PQ.js +0 -3
- package/dist/preview/chunk.TEE23CVQ.js +0 -1
- package/dist/preview/chunk.TZTRGNAA.js +0 -1
- package/dist/preview/chunk.UADL2LHO.js +0 -1
- package/dist/preview/chunk.URDCHVH3.js +0 -21
- package/dist/preview/chunk.WR63RQGU.js +0 -5
- package/dist/preview/chunk.XE72DFBV.js +0 -13
- package/dist/preview/chunk.XEHLSKHP.js +0 -1
- package/dist/preview/chunk.YG2WZO53.js +0 -1
|
@@ -0,0 +1,18 @@
|
|
|
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 Le}from"./chunk.4JDHBNEA.js";import{A as an,B as Te,C as vo,D as at,E as ye,F as Qn,G as Ve,H as ze,I as ko,J as Zn,K as Ee,L as xo,M as Po,N as H,O as wt,P as Rt,Q as Ao,R as Lt,S as rn,T as Co,U as ie,V as Je,W as se,X as Xn,a as j,b as xe,c as X,d as nn,e as zn,f as Jn,g as yt,h as ne,i as be,j as le,k as C,l as de,m as _,n as We,o as ve,p as ht,q as fe,r as ge,s as wo,t as Pt,u as So,v as At,w as Ct,x as z,y as Ge,z as bo}from"./chunk.M72JKVHP.js";import{b as _n,c as yo,d as ho,e as qe,f as Yn,h as ae}from"./chunk.YQXA4WAM.js";import{a as io,c as so,f as lo,g as co,i as po,j as uo}from"./chunk.UWQ3I5OW.js";import{a as go,d as mo,e as fo}from"./chunk.UGFDSE37.js";import{a as en,b as tn}from"./chunk.PXQVXBNG.js";import{a as Yr,b as Qr,c as Zr,d as Un}from"./chunk.FLMNWVSY.js";import{b as Jr}from"./chunk.JETT6ELP.js";import{a as Xr,b as eo,d as Zt,e as to,f as no,g as ao,j as Xt}from"./chunk.DSLGMCB6.js";import{m as zr}from"./chunk.UV3U4FRT.js";import{a as $r,b as Hr,c as Fr,e as jr,f as jn,h as Jt}from"./chunk.47T3KUAA.js";import{d as Ir,e as Dr,f as Wr,g as Gr,n as _t,o as qr,q as Vr,s as zt}from"./chunk.NZDWXX6H.js";import{a as qt,b as cr,c as pr,d as Vt,e as ur}from"./chunk.C5EFUODO.js";import{b as wr,c as Er,e as Mr,f as Kn}from"./chunk.UGOKORIF.js";import{a as Bn,b as Tr}from"./chunk.VDS3IOTK.js";import{a as Yt,b as Qt,c as Ur,e as _r}from"./chunk.LWRXCO2Z.js";import{a as ft,b as Rr,e as Lr}from"./chunk.I2NI7CT7.js";import{a as Nr}from"./chunk.BJUUSIQY.js";import{a as qn}from"./chunk.BCE6LIDR.js";import{a as Gn,b as yr,c as hr}from"./chunk.MBLFZF5R.js";import{a as Or}from"./chunk.5NZDFT6R.js";import{c as br,d as vr,e as kr,f as xr,j as Pr,l as nt,n as Ar}from"./chunk.7INWDFNG.js";import{a as Sr}from"./chunk.FPGU43SC.js";import{b as za,c as Ja}from"./chunk.BZEJM2PY.js";import{a as In,d as Dn,f as _a}from"./chunk.CMLNBJZG.js";import{r as xt,s as Cr}from"./chunk.QPL3OXW3.js";import{b as gr,c as mr,d as jt,e as fr,l as Ut}from"./chunk.LUIRQ5UF.js";import{H as ro,K as oo,c as lr,d as dr,r as Br,s as Kr,z as Vn}from"./chunk.JQFIZRAZ.js";import{c as Ci}from"./chunk.LKJ6FD6Y.js";import{Ba as Kt,G as ke,L as Za,N as Xa,Qa as sr,R as er,T as V,U as Wn,Y as tr,Z as nr,ba as ar,ca as ce,fa as rr,ga as or,ia as ir,ma as gt,oa as mt,qa as Ke,r as Qa,v as De}from"./chunk.DBMZ3AQB.js";import{a as Ya}from"./chunk.SDO3U72B.js";import{Aa as $a,Cd as Gt,Dd as Va,Fd as Bt,L as Ta,Mc as $n,Nc as Ba,Od as Fn,Pd as ja,Uc as Ka,Ud as Ua,W as kt,ab as Ha,cb as Fa,da as Xe,fa as et,ga as oe,ia as ut,id as qa,ja as Ea,ka as _e,kc as Da,ma as Ma,na as Na,oa as tt,ob as On,pb as Ia,rc as Wa,tc as Ga,wd as Hn,za as Oa,zb as Wt}from"./chunk.DIFR37EZ.js";import{b as O}from"./chunk.AJZBJBMO.js";function on(e,t,n={}){let a=e.graph.getNode(t);if(!a)return;let r=e.schema.tryDefinition(a.kind),o=l=>oe(e.schema.tryDefinition(l.kind),l),i=new Map;for(let l of e.graph.allEdges()){let s=l.from===t?"out":l.to===t?"in":null;if(!s)continue;let c=s==="out"?l.to:l.from,u=e.graph.getNode(c);if(!u)continue;let p=(s==="out"?r:e.schema.tryDefinition(u.kind))?.edges?.[l.kind],S=s==="in"?p?.inverse??p?.description:p?.description,R=`${l.kind}|${s}|${S??""}`;(i.get(R)??(()=>{let k={edgeKind:l.kind,direction:s,...S?{description:S}:{},targets:[]};return i.set(R,k),k})()).targets.push({id:u.id,kind:u.kind,label:o(u)})}return{id:t,kind:a.kind,label:o(a),fields:jt(nt(e.schema,e.graph,a),r),violations:On(e.violations(n.context),[t]),actions:qn(e,[t],{focus:t,...n.principal?{principal:n.principal}:{},...n.context?{context:n.context}:{}}),links:[...i.values()].map(l=>{let s=gr(l.targets.flatMap(c=>{let u=e.graph.getNode(c.id);return u?[u]:[]}),c=>e.schema.tryDefinition(c));return{...l,targets:[...l.targets].map(c=>s.has(c.id)?{...c,apart:s.get(c.id)}:c).sort((c,u)=>c.label.localeCompare(u.label))}})}}function rt(e,t,n={}){return{kind:t,members:e.graph.nodesOfKind(t),actions:qn(e,[],{kindSelection:[t],...n.principal?{principal:n.principal}:{},...n.context?{context:n.context}:{}})}}function Ro(e,t){let n=(o,i)=>`${o}|${JSON.stringify(i)}`,a=new Map;for(let o of[...e.affordances,...e.withheld]){if(o.provider!=="invariant")continue;let i=n(o.mutation,o.args);a.has(i)||a.set(i,o.rank??Number.MAX_SAFE_INTEGER)}let r=Number.MAX_SAFE_INTEGER;return[...t].map((o,i)=>({repair:o,declared:i})).sort((o,i)=>(a.get(n(o.repair.mutation,o.repair.args??{}))??r)-(a.get(n(i.repair.mutation,i.repair.args??{}))??r)||o.declared-i.declared).map(o=>o.repair)}function ot(e){let t=e.schema.kinds.map(r=>({kind:r,plural:_e(e.schema,r),count:e.graph.nodesOfKind(r).length})),n=new Map;for(let r of e.graph.allEdges()){let o=e.graph.getNode(r.from),i=e.graph.getNode(r.to);if(!o||!i)continue;let l=`${r.kind}|${o.kind}|${i.kind}`;n.set(l,(n.get(l)??0)+1)}let a=[];for(let{kind:r}of t){let o=e.schema.tryDefinition(r)?.edges??{};for(let[i,l]of Object.entries(o)){let s=l.to==="*"||l.to===void 0?(()=>{let c=[...n.keys()].filter(u=>u.startsWith(`${i}|${r}|`)).map(u=>u.split("|")[2]);return c.length>0?c:["*"]})():l.to;for(let c of s)a.push({edgeKind:i,from:r,to:c,...l.description?{description:l.description}:{},...l.inverse?{inverse:l.inverse}:{},count:n.get(`${i}|${r}|${c}`)??0})}}return{kinds:t,relations:a}}var je=O(ke(),1);var Tt=O(ke(),1);var Me=O(V(),1),Li={problems:"Problems",search:"Search",map:"Connections",places:"Pictures","~draft":"A view drawn"},Ti=e=>{try{return decodeURIComponent(e)}catch{return e}};function Ei(e,t,n={}){let{store:a}=e,r=a.schema,o=(n.base??"").replace(/\/$/,""),[i="/",l=""]=t.split("#")[0].split("?"),s=(M,D,x)=>({label:M,href:`${o}${D}`,path:D,...x?{current:x}:{}}),c=M=>{let D=n.registry?.sectionOf(M);return D?[D.path===void 0?{label:D.label}:s(D.label,D.path)]:[]},u=M=>n.registry?.sectionOf(M)?.label,P=M=>{let D=u(M);return D===void 0?{}:{section:D}},[p,S,...R]=i.split("/").filter(Boolean).map(Ti);if(p===void 0)return{as:"home",label:"Home",trail:[s("Home","/",!0)]};if(p==="places"&&S!==void 0&&R.length===0){let M=new URLSearchParams(l).get("of"),D=new Set(Ge(a,e.principal)),x=e.views?.places()??[],B=x.find(U=>D.has(U.kind)&&U.as===S&&(!M||j(r,U.kind)===M));if(B){let U=nn(B.as,Gt(B,x)?j(r,B.kind):void 0);return{as:"place",kind:B.kind,label:B.title,...P(B.kind),trail:[...c(B.kind),s(B.title,U,!0)]}}}let m=R.length===0?xe(r,p):void 0;if(m!==void 0){let M=s(_e(r,m),`/${j(r,m)}`);if(S===void 0)return{as:"list",kind:m,label:M.label,...P(m),trail:[...c(m),{...M,current:!0}]};let D=a.graph.getNode(S),x=D&&D.kind===m?oe(r.tryDefinition(m),D):"Nothing lives here";return{as:"record",kind:m,id:S,label:x,...P(m),trail:[...c(m),M,s(x,X(r,m,S),!0)]}}let k=Li[p]??Mi((R.at(-1)??S??p).replace(/[-_]+/g," "));return{as:"page",label:k,trail:[s(k,i,!0)]}}var Mi=e=>e.charAt(0).toUpperCase()+e.slice(1),ea=(0,Tt.createContext)(null);function Ni(e){let t=ye(),n=at("/");return ae(e.context.store),Ei(e.context,`${t.pathname}${t.search}`,{registry:e.registry,base:n})}var Oi={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},Lo={display:"flex",alignItems:"center",gap:6,minWidth:0},To={display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0,lineHeight:"24px"};function it({context:e,style:t}){let n=(0,Tt.useContext)(ea),a=(0,Tt.useContext)(Rt);return Lt(a??Hi,"trail")||n?.registry?.without().has("trail")?null:(0,Me.jsx)($i,{root:n??{context:e,registry:void 0},context:e,...t?{style:t}:{}})}function $i({root:e,context:t,style:n}){let a=Ni(e);return a.trail.length<2?null:(0,Me.jsx)(Fi,{here:a,mark:a.as==="record"?{kind:a.kind,context:t}:void 0,...n?{style:n}:{},"data-testid":"page-trail"})}var Hi={count:()=>0,place:()=>()=>{},subscribe:()=>()=>{}};function Fi({here:e,mark:t,style:n,...a}){let r=e.as==="record"?e.trail.length-2:-1;return(0,Me.jsx)("nav",{"aria-label":"You are here","data-graview-trail":"",style:{minWidth:0,...n},...a,children:(0,Me.jsx)("ol",{style:{...be,listStyle:"none",padding:0,display:"flex",alignItems:"center",gap:6,minWidth:0,overflow:"hidden"},children:e.trail.map((o,i)=>(0,Me.jsxs)("li",{style:o.current?Oi:{...Lo,flexShrink:i===e.trail.length-2?0:1,maxWidth:"100%"},...o.current?{"aria-current":"page"}:{},children:[i>0&&!o.current?(0,Me.jsx)("span",{"aria-hidden":"true",children:"\u203A"}):null,o.current?o.label:o.path!==void 0?(0,Me.jsxs)(H,{to:o.path,style:{...ve,...Lo},...i===r?{"data-testid":"trail-list"}:{},children:[i===r&&t?(0,Me.jsx)(ge,{kind:t.kind,brand:t.context.brand,schema:t.context.store.schema,size:8}):null,(0,Me.jsx)("span",{style:To,children:o.label})]}):(0,Me.jsx)("span",{style:To,children:o.label})]},`${i}:${o.label}`))})})}var L=O(V(),1);function Fe(e){let t=e.views;if(!t)return[];let n=new Set(Ge(e.store,e.principal));return t.places().filter(a=>n.has(a.kind))}function Et(e,t){if(!t.over)return[t.kind];let n=new Set(Ge(e.store,e.principal));return t.over.filter(a=>a===t.kind||n.has(a))}var st=e=>`place:${e.kind}:${e.as}`;function he(e,t){return nn(t.as,Gt(t,e.views?.places()??[])?j(e.store.schema,t.kind):void 0)}function St(e,t){let n=e.schema.tryDefinition(t);return e.graph.nodesOfKind(t).filter(a=>et(n,a))}function ta(e,t,n){let a=(o,i)=>ut(e.schema,i,o),r=(typeof t=="string"?[t]:t).map(o=>a(St(e,o).length,o)).join(" and ");return n?`${r} across ${a(St(e,n).length,n)}`:r}function na({context:e,place:t,chosen:n,filter:a}){let{store:r,views:o,invariantContext:i}=e,s=o?.resolve(t.kind,{cardinality:"many",fidelity:"full"},t.as)?.view,c=[...new Set(r.violations(i).flatMap(p=>p.nodeIds))],u=Et(e,t).flatMap(p=>St(r,p));if(!s)return null;let P=Ii(r,u,a,c);return(0,L.jsx)(xt,{kind:t.kind,view:t.title,children:(0,L.jsx)(Je,{when:Ke(s),children:(0,L.jsx)(s,{nodes:P,label:t.title,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...n&&n.length>0?{implicated:n}:{},...c.length>0?{flagged:c}:{}})})})}function Ii(e,t,n,a){let r=n?Bt({filter:n}).filter??[]:[];return r.length===0?t:Jt(t,{filter:r},{schema:e.schema,graph:e.graph,flagged:new Set(a)}).nodes}function Di({store:e,views:t,as:n,invariantContext:a}){ae(e);let r={store:e,views:t,...a?{invariantContext:a}:{}},o=t.places().find(i=>i.as===n);return o?(0,L.jsx)(na,{context:r,place:o}):null}function Wi({context:e,kind:t}){let{store:n,views:a,invariantContext:r}=e,o=St(n,t),i=n.schema.tryDefinition(t),l=z(n,t),c=a?.resolve(t,{cardinality:"many",fidelity:"full"})?.view,u=[...new Set(n.violations(r).flatMap(R=>R.nodeIds))];if(c&&!gt(c))return(0,L.jsx)(xt,{kind:t,children:(0,L.jsx)(c,{nodes:o,label:l,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...u.length>0?{flagged:u}:{}})});let P=a?.resolve(t,{cardinality:"one",fidelity:"summary"})?.view,p=8,S=o.slice(0,p);return(0,L.jsxs)("div",{"data-testid":"kind-sheet",style:P?{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(200px, 1fr))",gridAutoRows:"max-content",alignContent:"center",gap:12,padding:24}:{display:"flex",flexWrap:"wrap",alignContent:"center",justifyContent:"center",gap:10,padding:24},children:[S.map(R=>P?(0,L.jsx)(P,{node:R,fidelity:"summary",cardinality:"one",mode:"fullscreen",selected:!1,...u.includes(R.id)?{flagged:[R.id]}:{}},R.id):(0,L.jsx)("span",{style:{padding:"8px 14px",borderRadius:8,border:"1px solid var(--graview-edge-bright)",background:"var(--graview-ground)",color:"var(--graview-ink)"},children:oe(i,R)},R.id)),o.length>p?(0,L.jsxs)("span",{style:{...C,alignSelf:"center",padding:"0 6px"},children:["+",o.length-p," more ",l.toLowerCase()]}):null]})}function sn(e){let{store:t}=e,n=bo(e),a=Fe(e),r=e.views?.arrangement?.()?.order??[],o=s=>{let c=s.name===void 0?-1:r.indexOf(`view:${s.name}`);return c>=0?c-r.length:n.indexOf(s.kind)},i=Hn([...a].sort((s,c)=>o(s)-o(c))).filter(s=>!s.hidden),l=new Set(i.flatMap(s=>s.over??[s.kind]));return[...i.map(s=>({key:st(s),kind:s.kind,title:Va(s,a,t.schema),to:he(e,s),place:s})),...an(e).filter(s=>!l.has(s)).map(s=>({key:`kind:${s}`,kind:s,title:z(t,s),to:`/${j(t.schema,s)}`}))]}function No(e){let t=new Set(sn(e).flatMap(n=>n.place?Et(e,n.place):[n.kind]));return new Set([...t].flatMap(n=>St(e.store,n).map(a=>a.id)))}var Eo=.72,Gi=540,Mo=16/10;function Bi(e){let t=(0,je.useRef)(null),[n,a]=(0,je.useState)(e);return(0,je.useLayoutEffect)(()=>{let r=t.current;if(!r||typeof ResizeObserver>"u")return;let o=()=>{let l=r.getBoundingClientRect().width;l>0&&a(s=>Math.abs(s-l)<.5?s:l)};o();let i=new ResizeObserver(o);return i.observe(r),()=>i.disconnect()},[]),{ref:t,width:n}}function Ki(e){for(let t=e.parentElement;t;t=t.parentElement)if(/(auto|scroll)/.test(getComputedStyle(t).overflowY))return t;return null}function qi(e){let[t,n]=(0,je.useState)(()=>typeof IntersectionObserver>"u");return(0,je.useLayoutEffect)(()=>{let a=e.current;if(t||!a)return;let r=new IntersectionObserver(o=>{o.some(i=>i.isIntersecting)&&(r.disconnect(),n(!0))},{root:Ki(a),rootMargin:"50% 0px"});return r.observe(a),()=>r.disconnect()},[t,e]),t}function aa({context:e,entry:t,small:n=!1}){let{store:a,brand:r,principal:o}=e,{ref:i,width:l}=Bi(Gi),s=qi(i),c=l/Eo,u=St(a,t.kind),P=a.schema.tryDefinition(t.kind),p=u.length===0?rt(a,t.kind,{...o?{principal:o}:{},...e.invariantContext?{context:e.invariantContext}:{}}).actions.affordances[0]:void 0,S=t.place!==void 0;return(0,L.jsxs)(H,{to:t.to,"data-testid":S?"place-card":"kind-card",className:"graview-gallery-card",style:{...ve,display:"grid",gap:10,alignContent:"start",minWidth:0},children:[(0,L.jsxs)("span",{ref:i,"data-testid":S?"place-picture":"kind-picture","aria-hidden":"true",inert:!0,style:{display:"block",position:"relative",width:"100%",aspectRatio:`${Mo}`,overflow:"hidden",borderRadius:12,border:"1px solid var(--graview-edge)",background:"var(--graview-panel)",pointerEvents:"none"},children:[(0,L.jsx)("span",{style:{position:"absolute",left:0,top:0,width:c,height:c/Mo,display:"grid",gridTemplateRows:"minmax(0, 1fr)",transform:`scale(${Eo})`,transformOrigin:"0 0"},children:s?(0,L.jsx)(Zt.Provider,{value:null,children:t.place?(0,L.jsx)(na,{context:e,place:t.place}):(0,L.jsx)(Wi,{context:e,kind:t.kind})}):null}),u.length===0?(0,L.jsx)("span",{"data-testid":"picture-empty",style:{position:"absolute",inset:0,display:"grid",placeContent:"center",justifyItems:"center",gap:2,padding:20,textAlign:"center"},children:(0,L.jsxs)("span",{style:{display:"grid",gap:2,padding:"10px 16px",borderRadius:10,border:"1px solid var(--graview-edge)",background:"var(--graview-ground)",color:"var(--graview-ink)"},children:[(0,L.jsxs)("span",{style:{fontFamily:Jn,fontWeight:"var(--graview-weight-display)"},children:["No ",z(a,t.kind).toLowerCase()," yet"]}),p?(0,L.jsxs)("span",{style:C,children:["Begin with \u201C",p.label,"\u201D"]}):null]})}):null]}),(0,L.jsxs)("span",{style:{display:"grid",gap:2,minWidth:0},children:[(0,L.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},children:[S?null:(0,L.jsx)(ge,{kind:t.kind,brand:r,schema:a.schema,size:8}),(0,L.jsx)("span",{style:{fontFamily:Jn,fontSize:n?"var(--graview-text-body)":"var(--graview-text-heading)",fontWeight:"var(--graview-weight-display)",lineHeight:1.3,overflowWrap:"anywhere",textWrap:"balance"},children:t.title})]}),(0,L.jsxs)("span",{style:C,children:[t.place?ta(a,Et(e,t.place),t.place.across):ta(a,t.kind),!S&&P?.description?` \xB7 ${P.description}`:null]})]})]})}var Oo={display:"grid",gap:"32px 28px",gridTemplateColumns:"repeat(auto-fill, minmax(min(420px, 100%), 1fr))"},Vi={display:"grid",gap:"20px 16px",gridTemplateColumns:"repeat(auto-fill, minmax(clamp(140px, 22%, 260px), 1fr))"},ji=`
|
|
2
|
+
.graview-gallery-card > span:first-child { transition: border-color 160ms ease, box-shadow 160ms ease; }
|
|
3
|
+
.graview-gallery-card:hover > span:first-child,
|
|
4
|
+
.graview-gallery-card:focus-visible > span:first-child { border-color: var(--graview-edge-bright); box-shadow: 0 1px 0 var(--graview-edge), 0 10px 30px -18px var(--graview-ink); }
|
|
5
|
+
`;function ln({context:e,small:t=!1}){ae(e.store);let n=sn(e);return n.length===0?null:(0,L.jsxs)("section",{style:t?Vi:Oo,"data-testid":"gallery",...t?{"data-small":""}:{},children:[(0,L.jsx)("style",{children:ji}),n.map(a=>(0,L.jsx)(aa,{context:e,entry:a,small:t},a.key))]})}function ra({context:e}){let{store:t}=e;ae(t);let n=Hn(Fe(e)).filter(r=>!r.hidden),a=sn(e);return(0,L.jsxs)(ie,{context:e,style:yt,children:[(0,L.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,L.jsx)("p",{style:be,children:n.length===0?"None of its own yet":`${n.length} ${n.length===1?"picture":"pictures"}`}),(0,L.jsx)(se,{context:e,children:"Pictures"}),(0,L.jsx)("p",{style:le,children:n.length===0?"Nothing here has a picture of its own yet, so each kind is drawn as the scene draws it. Title a group view and it appears here by name.":"The ways this installation looks at what it holds \u2014 each one the same picture the scene shows, here as a page."})]}),a.length>0?(0,L.jsx)("div",{style:Oo,"data-testid":"places",children:a.map(r=>(0,L.jsx)(aa,{context:e,entry:r},r.key))}):null]})}var Ui={lede:!0},_i={lede:!1},zi={...le,textWrap:"pretty"};function Ji(e,t){if(t===void 0)return;let[n]=xr(kr([t]),Ar(e.store,null,null,e.brand?{money:e.brand}:{}));return n?.t==="headline"&&!n.problem&&n.text.trim()!==""?n.text:void 0}function oa({context:e}){let{store:t,principal:n}=e;ae(t);let a=ze(),r=Ve(),[o]=wt(),i=decodeURIComponent(a.as??""),[l,s]=(0,je.useState)(null),c=o.get("of"),u=o.get("filter"),p=Fe(e).find(g=>g.as===i&&(!c||j(t.schema,g.kind)===c));if(!p)return(0,L.jsxs)(ie,{context:e,children:[(0,L.jsx)(se,{context:e,children:"No picture is called that."}),(0,L.jsx)("p",{style:le,children:(0,L.jsx)(H,{to:"/places",style:We,children:(0,L.jsx)(qe,{children:"The pictures there are"})})})]});let S=z(t,p.kind),R=e.views?.resolve(p.kind,{cardinality:"many",fidelity:"full"},p.as)?.view,m=R?.flows===!0,k=R?.ownHeading===!0,M=R?.creates!==!1,D=Ji(e,R?.lede),x=mt(R)&&e.views?.lookup(p.kind,{cardinality:"many",fidelity:"full"})===R,B=rt(t,p.kind,{...n?{principal:n}:{},...e.invariantContext?{context:e.invariantContext}:{}}),U=M?B.actions.affordances.map(g=>({affordance:g,mutation:t.allMutations().find(F=>F.name===g.mutation)})).filter(g=>g.mutation!==void 0):[];return(0,L.jsxs)(ie,{context:e,style:{...yt,gap:"var(--graview-space-6, 32px)"},children:[(0,L.jsxs)("header",{style:{display:"grid",gap:"var(--graview-space-2, 8px)"},children:[(0,L.jsx)(it,{context:e}),(0,L.jsx)(se,{context:e,unseen:k,children:p.title}),k?null:(0,L.jsx)("p",{style:zi,"data-testid":"place-lede",...D!==void 0?{"data-graview-lede":"headline"}:{},children:D??`${ta(t,Et(e,p),p.across)}.`}),u&&!m?(0,L.jsxs)("p",{style:{...C,margin:0},"data-testid":"place-narrowed",children:[`Only those where ${u.split(",").map(g=>g.replace(":"," is ")).join(" and ")}. `,(0,L.jsx)(H,{to:`?${(()=>{let g=new URLSearchParams(o);return g.delete("filter"),g.toString()})()}`,style:{..._,...C},children:"Show all"})]}):null,(0,L.jsx)("p",{style:{...C,margin:0,display:"flex",flexWrap:"wrap",gap:"4px 16px"},children:Et(e,p).filter(g=>!(x&&g===p.kind)).map((g,F)=>(0,L.jsx)(H,{to:`/${j(t.schema,g)}`,style:{...We,...C},...F===0?{"data-testid":"place-as-list"}:{},children:(0,L.jsxs)(qe,{children:["All ",(g===p.kind?S:z(t,g)).toLowerCase()," as a list"]})},g))})]}),(0,L.jsx)("div",{"data-testid":"place-lens","data-flows":m?"":void 0,...m?{}:{role:"group","aria-label":p.title,tabIndex:0},style:m?{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",maxWidth:"100%"}:{height:"min(72vh, 760px)",display:"grid",gridTemplateRows:"minmax(0, 1fr)",overflow:"auto",maxWidth:"100%",borderRadius:12,border:"1px solid var(--graview-edge)",background:"var(--graview-panel)"},onClick:g=>{let F=g.target?.closest("[data-graview-pick]"),Y=F?.getAttribute("data-graview-pick"),Q=F?.getAttribute("data-graview-joins");if(Q)try{let Ce=JSON.parse(Q);if(Array.isArray(Ce)&&Ce.every(Se=>typeof Se=="string")){g.preventDefault(),s({at:st(p),ids:Ce});return}}catch{}if(!Y)return;let Oe=t.graph.getNode(Y);Oe&&(g.preventDefault(),r(X(t.schema,Oe.kind,Y)))},children:(0,L.jsx)(ao.Provider,{value:D!==void 0?Ui:_i,children:(0,L.jsx)(na,{context:e,place:p,filter:u,...l?.at===st(p)?{chosen:l.ids}:{}})})}),U.length>0?(0,L.jsx)("div",{style:{maxWidth:760,display:"grid",gap:40},"data-testid":"place-creators",children:U.map(({affordance:g,mutation:F})=>(0,L.jsxs)("section",{style:{...de,display:"grid",gap:14},children:[(0,L.jsx)("h2",{style:ne,children:F.title??F.name}),F.description?(0,L.jsx)("p",{style:{...C,margin:0,maxWidth:"58ch"},children:F.description}):null,(0,L.jsx)(Le,{store:t,mutation:F,prefilled:g.args,open:g.open,label:g.label,...n?{principal:n}:{}})]},g.id))}):null]})}function Yi(e,t=document){let n=en(e);if(!n)return null;let a=[t,...[...t.querySelectorAll("[data-worker-view]")].flatMap(r=>r.shadowRoot?[r.shadowRoot]:[])];for(let r of a)for(let o of r.querySelectorAll("[id], [data-section]")){let i=o.getAttribute("data-section")??o.id;if(i===e||en(i)===n)return o}for(let r of a)for(let o of r.querySelectorAll("h1, h2, h3, h4, h5, h6, [role=heading]"))if(en(o.textContent??"")===n)return o;return null}function $o(e,t={}){if(typeof document>"u"||typeof requestAnimationFrame>"u")return()=>{};let n=t.frames??120,a=0,r=()=>{let o=Yi(e,t.root??document);if(o){o.hasAttribute("tabindex")||o.setAttribute("tabindex","-1"),o.scrollIntoView?.({block:"start"}),o.focus({preventScroll:!0});return}n-=1,n>0&&(a=requestAnimationFrame(r))};return a=requestAnimationFrame(()=>{a=requestAnimationFrame(r)}),()=>cancelAnimationFrame(a)}var q=O(ke(),1);var dn=O(ke(),1);var lt=O(V(),1);function Ho({context:e}){return ce()?(0,lt.jsxs)(lt.Fragment,{children:[(0,lt.jsx)(Qi,{context:e}),(0,lt.jsx)(so,{face:"pages",on:e.quickAsk??!0})]}):null}function Qi({context:e}){let{store:t}=e,n=ce(),{pathname:a}=ye(),r=(0,dn.useRef)(n?.setSelection);return r.current=n?.setSelection,(0,dn.useEffect)(()=>{let o=r.current;if(!o)return;let[,i,l]=a.split("/"),s=(()=>{if(i==="places"){let u=e.views?.places().find(P=>P.as===decodeURIComponent(l??""));return u?[De(u.kind)]:[]}let c=i?xe(t.schema,i):void 0;return c&&l?[decodeURIComponent(l)]:c?[Qa(c)]:[]})();o(c=>c.length===s.length&&c.every((u,P)=>u===s[P])?c:s)},[a]),null}var Pe=O(ke(),1);var Io=O(Ci(),1);var me=O(V(),1);var Zi=Kt(Ya(()=>(__graviewPreload(import.meta.url,["./chunk.YQXA4WAM.js","./chunk.UWQ3I5OW.js","./chunk.UGFDSE37.js","./chunk.FLMNWVSY.js","./chunk.JETT6ELP.js","./chunk.DSLGMCB6.js","./chunk.IX63LTRQ.js","./chunk.I636CZE4.js","./chunk.TVURUMU4.js","./chunk.UV3U4FRT.js","./chunk.EZ4TZUMM.js","./chunk.47T3KUAA.js","./chunk.NZDWXX6H.js","./chunk.C5EFUODO.js","./chunk.UGOKORIF.js","./chunk.VDS3IOTK.js","./chunk.YS5U3DUX.js","./chunk.SAJLIA5M.js","./chunk.LWRXCO2Z.js","./chunk.I2NI7CT7.js","./chunk.LHIT3EZD.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.7INWDFNG.js","./chunk.FPGU43SC.js","./chunk.V6FUYRZI.js","./chunk.5BPRGXIW.js","./chunk.BZEJM2PY.js","./chunk.CMLNBJZG.js","./chunk.GZHZLJBF.js","./chunk.QPL3OXW3.js","./chunk.OJGHDWI6.js","./chunk.FRERJWZJ.js","./chunk.RQX4CQJN.js","./chunk.LUIRQ5UF.js","./chunk.N33WUCAN.js","./chunk.JQFIZRAZ.js","./chunk.LKJ6FD6Y.js","./chunk.DBMZ3AQB.js","./chunk.SDO3U72B.js","./chunk.DIFR37EZ.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.EQAAKYLA.js")).then(e=>({default:e.TakeBack}))));function Xi({context:e,docked:t,at:n,...a}){let{store:r}=e,o=ae(r),[i]=(0,Pe.useState)(()=>r.batches().length),l=(0,Pe.useRef)(!1);return l.current||=o>0||!t&&i>0,l.current?(0,me.jsx)(Pe.Suspense,{fallback:null,children:(0,me.jsx)(Zi,{context:e,docked:t,at:n,since:i,...a})}):null}function es(e,t,n){let{store:a,principal:r,embedded:o}=e;(0,Pe.useEffect)(()=>{if(!n)return;let i=l=>{if(!fo(l))return;let s=l.target,c=s instanceof Node&&t.current?.contains(s),u=s===document.body||s===document.documentElement||s===document;if(!(!c&&!(u&&!o))&&go(a,r)){l.preventDefault();try{mo(a,r)}catch{}}};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[a,r,o,t,n])}function Do({context:e,registry:t,root:n,children:a}){let r=(0,Pe.useMemo)(Ao,[]),o=t?.without()??new Set;return es(e,n,!o.has("undo")),(0,me.jsxs)(Rt.Provider,{value:r,children:[(0,me.jsx)(ts,{context:e,placed:r,without:o}),a]})}function ts({context:e,placed:t,without:n}){let[a,r]=(0,Pe.useState)(!1);(0,Pe.useLayoutEffect)(()=>r(!0),[]);let o=Lt(t,"find"),i=Lt(t,"undo"),l=ye(),s=Kr();if(!a)return null;let c=l.pathname.split("/").filter(Boolean),P=(c.length===1?xe(e.store.schema,c[0]):void 0)!==void 0;return(0,me.jsxs)(me.Fragment,{children:[!o&&!n.has("find")&&s?(0,Io.createPortal)((0,me.jsx)(Fo,{context:e,narrowsLists:P}),s.slot):null,!o&&!n.has("find")&&!s?(0,me.jsx)("div",{"data-testid":"face-find-bar",style:{display:"flex",alignItems:"center",padding:"8px 16px",borderBottom:"1px solid var(--graview-edge)",background:"var(--graview-bar)",minWidth:0},children:(0,me.jsx)(Fo,{context:e,narrowsLists:P})}):null,!i&&!n.has("undo")?(0,me.jsx)(Xi,{context:e,docked:!0,at:l.pathname+l.search}):null,s?.own&&!n.has("undo")?(0,me.jsx)(vo,{context:e,own:s.own}):null]})}function Fo({context:e,narrowsLists:t}){return(0,me.jsx)(Rt.Provider,{value:null,children:(0,me.jsx)(Xn,{context:e,narrowsLists:t})})}var re=O(ke(),1);var Ae=O(V(),1),ns=500,as=10;function cn(e){return e instanceof HTMLElement?e.isContentEditable||e.tagName==="TEXTAREA"||e.tagName==="SELECT"?!0:e.tagName==="INPUT"&&!["button","submit","reset","checkbox","radio","image","file","color","range"].includes(e.type):!1}function rs(e){let t=typeof getSelection=="function"?getSelection():null;return t!==null&&!t.isCollapsed&&t.containsNode(e,!0)}function Wo(e){let t=e.closest('a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])');if(t)return t;let n=document.activeElement;return n instanceof HTMLElement&&n!==document.body?n:null}function Go({context:e,root:t,children:n}){return ce()===null?(0,Ae.jsx)(Ae.Fragment,{children:n}):(0,Ae.jsx)(os,{context:e,root:t,children:n})}function os({context:e,root:t,children:n}){let{setMenuAt:a}=ar(),{store:r}=e,o=r.schema,i=Ve(),{pathname:l,search:s}=ye(),c=at("/").replace(/\/$/,""),u=(0,re.useCallback)((b,w)=>e.views?.places().find(T=>T.as===b&&(w===null||T.kind===w)),[e.views]),P=(0,re.useCallback)((b,w)=>{let[T="",$,ee]=b.split("/").filter(Boolean).map(f=>{try{return decodeURIComponent(f)}catch{return f}});if(ee!==void 0)return null;if(T==="places"&&$!==void 0){let f=u($,new URLSearchParams(w).get("of"));return f?{face:"pages",place:f.as,about:[De(f.kind)],title:f.title}:null}let te=xe(o,T);return te?$===void 0?{face:"pages",about:[De(te)],title:_e(o,te)}:r.graph.getNode($)?{face:"pages",on:$,about:[$]}:null:null},[o,r,u]),p=(0,re.useCallback)(b=>{let w=b.href;try{let T=new URL(w,location.href);if(T.origin===location.origin&&(c===""||T.pathname===c||T.pathname.startsWith(`${c}/`))){let $=P(T.pathname.slice(c.length),T.search);if($)return{...$,href:w}}}catch{}return{face:"pages",about:[],href:w}},[c,P]),S=(0,re.useCallback)(()=>P(l,s)??{face:"pages",about:[]},[P,l,s]),R=(0,re.useCallback)(b=>{let w=S(),T=b.closest("[data-graview-field]")?.getAttribute("data-graview-field");if(T&&w.on!==void 0&&b.closest("[data-graview-pick], a[href]")===null)return{...w,field:T};let $=b.closest("[data-graview-act]")?.getAttribute("data-graview-act");if($)return{...w,act:$};let ee=b.closest("a[href]"),te=b.closest("[data-graview-listed]"),f=[b.closest("[data-graview-pick]")?.getAttribute("data-graview-pick"),te&&(!ee||te.contains(ee)&&ee.classList.contains("graview-spec-item-link"))?te.getAttribute("data-graview-listed"):null].map(Z=>Z?r.graph.getNode(Z):void 0).find(Boolean);if(f)return{face:"pages",on:f.id,about:[f.id],href:`${c}${X(o,f.kind,f.id)}`};if(ee)return p(ee);let E=b.closest("[data-graview-record]")?.getAttribute("data-graview-record");return E&&r.graph.getNode(E)?{face:"pages",on:E,about:[E]}:w},[S,p,r,o,c]),m=(0,re.useCallback)(b=>{let w=t.current;if(w===null||!w.contains(b)||cn(b)||b.closest("[data-graview-popover]"))return null;let T=R(b);return{face:"pages",on:T.on,about:T.about??[],field:T.field,place:T.place,href:T.href,act:T.act,element:Wo(b)}},[R,t]),k=(0,re.useCallback)((b,w,T)=>{let $=R(b);a({...$,x:Math.round(w),y:Math.round(T),returnTo:Wo(b)})},[R,a]),M=(0,re.useCallback)(b=>{let w=b.getBoundingClientRect();k(b,w.left+Math.min(16,w.width/2),Math.min(w.bottom,w.top+36))},[k]),D=(0,re.useRef)(0),x=(0,re.useRef)(null),B=(0,re.useRef)(!1),U=()=>{x.current&&clearTimeout(x.current.timer),x.current=null};(0,re.useEffect)(()=>U,[]),(0,re.useEffect)(()=>{let b=w=>{if(w.defaultPrevented||!(w.key==="ContextMenu"||w.key==="F10"&&w.shiftKey))return;let T=t.current,$=w.target instanceof Element?w.target:null,ee=$===null||$===document.body||$===document.documentElement,te=T!==null&&$!==null&&T.contains($);if(!te&&!(ee&&document.querySelector("[data-graview-face='pages']")===T)||cn($)||$?.closest("[data-graview-popover]"))return;w.preventDefault(),D.current=Date.now();let f=te&&$ instanceof HTMLElement?$:T?.querySelector("[data-graview-page-title], main h1, main")??null;f&&M(f)};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[t,M]),(0,re.useEffect)(()=>{let b=t.current;if(!b)return;let w=T=>{let $=T.detail;$&&a({...$,face:"pages"})};return b.addEventListener(Wn,w),()=>b.removeEventListener(Wn,w)},[t,a]);let g=(0,re.useMemo)(()=>b=>{if(b.face!=="pages")return null;let w=[],T=b.on===void 0?void 0:r.graph.getNode(b.on),$=b.place===void 0?void 0:e.views?.places().find(pe=>pe.as===b.place),ee=T?void 0:b.about.length===1&&b.about[0].startsWith("aggregate:")&&!$?is(b.about[0]):void 0,te=T?X(o,T.kind,T.id):$?he(e,$):ee?`/${j(o,ee)}`:void 0,f=te!==void 0&&l===te.split("?")[0];te!==void 0&&!f&&w.push({id:"open",label:"Open",run:()=>i(te)});let E=te!==void 0?`${c}${te}`:b.href;E!==void 0&&w.push({id:"open-in-a-new-tab",label:"Open in a new tab",run:()=>void window.open(E,"_blank","noopener")});let Z=T?`#focus=${encodeURIComponent(T.id)}`:$?`#focus=${encodeURIComponent(De($.kind))}&view=${encodeURIComponent($.as)}`:ee?`#focus=${encodeURIComponent(De(ee))}`:void 0;if(Z!==void 0&&(e.overview||!e.embedded)){let pe=e.overview;w.push({id:"in-the-scene",label:"Show in the scene",run:()=>pe?pe(Z):location.assign(`${e.sceneHref??"/"}${Z}`)})}return T===void 0&&b.href===void 0&&w.push({id:"find",label:"Find\u2026",run:()=>{let pe=t.current?.querySelector('[data-testid="nav-find"]')??document.querySelector('[data-testid="nav-find"]');pe&&pe.offsetParent!==null?pe.focus():i("/search")}}),w.length>0?{id:"pages",items:w}:null},[r,o,e,l,c,i,t]),F=(0,re.useMemo)(()=>b=>{if(b.face!=="pages"||b.field===void 0||b.on===void 0)return null;let w=r.graph.getNode(b.on),T=b.element?.closest("[data-graview-field]")??t.current?.querySelector(`[data-graview-field="${CSS.escape(b.field)}"]`);return!w||!(T instanceof HTMLElement)||!T.hasAttribute("data-graview-editable")?null:{id:"field",at:"start",items:[{id:"change-field",label:`Change \u201C${Ma(o.tryDefinition(w.kind),b.field)}\u201D`,run:()=>T.click()}]}},[r,o,t]),Y=co(),Q=Er(),Oe=Jr(),Ce=(0,re.useCallback)((b,w)=>{l===he(e,b).split("?")[0]&&i(w?he(e,w):"/")},[l,e,i]),Se=uo(Ce),Re=(0,re.useMemo)(()=>[F,Oe,g,...Se?[Se]:[],...Q?[Q]:[],...Y?[Y]:[]],[F,Oe,g,Se,Q,Y]);return(0,Ae.jsxs)(Cr,{sections:Re,children:[(0,Ae.jsx)("div",{"data-graview-menu-ground":"",style:{display:"contents"},onContextMenu:b=>{let w=b.target;b.shiftKey||cn(w)||rs(w)||(b.preventDefault(),!w.closest("[data-graview-popover]")&&(Date.now()-D.current<700||(b.clientX===0&&b.clientY===0&&w instanceof HTMLElement?M(w):k(w,b.clientX,b.clientY))))},onPointerDown:b=>{if(B.current=!1,b.pointerType==="mouse"||!b.isPrimary)return;let w=b.target;if(cn(w)||w.closest("[data-graview-choose], [data-graview-popover]"))return;U();let{clientX:T,clientY:$}=b;x.current={x:T,y:$,timer:setTimeout(()=>{x.current=null,B.current=!0,D.current=Date.now(),k(w,T,$)},ns)}},onPointerMove:b=>{let w=x.current;w&&Math.hypot(b.clientX-w.x,b.clientY-w.y)>as&&U()},onPointerUp:U,onPointerCancel:U,onClickCapture:b=>{B.current&&(B.current=!1,b.preventDefault(),b.stopPropagation())},children:n}),(0,Ae.jsx)(ss,{openAt:M,readyAt:m}),(0,Ae.jsx)(po,{placement:"page"}),(0,Ae.jsx)(Mr,{})]})}function is(e){let t=e.slice(10).split("+");return t.length===1&&t[0]?t[0]:void 0}function ss({openAt:e,readyAt:t}){return(0,Ae.jsx)("span",{"data-graview-menu-home":"",tabIndex:-1,onFocus:n=>{if(n.target!==n.currentTarget)return;let a=n.currentTarget.closest("[data-graview-face]"),r=a?.querySelector("[data-graview-page-title]")??a?.querySelector("main h1, main")??null;r&&(r.hasAttribute("tabindex")||r.setAttribute("tabindex","-1"),r.focus({preventScroll:!0}))},style:{position:"absolute",width:0,height:0,overflow:"hidden"},children:(0,Ae.jsx)(io,{placement:"menu",openActs:e,aimAt:t})})}var K=O(V(),1);function Bo(e,t){return t==="*"?{label:"anything",path:null}:{label:z(e,t),path:`/${j(e.schema,t)}`}}function ls({context:e,relation:t}){let{store:n}=e,a=Bo(n,t.from),r=Bo(n,t.to),o=i=>i.path?(0,K.jsx)(H,{to:i.path,style:{...ve,fontWeight:550},children:i.label}):(0,K.jsx)("span",{children:i.label});return(0,K.jsxs)("li",{"data-testid":"relation","data-relation":t.edgeKind,style:{display:"grid",gridTemplateColumns:"30px minmax(0, 1fr) auto",gap:12,alignItems:"baseline"},children:[(0,K.jsx)(lo,{edgeKind:t.edgeKind,...e.brand?.kit?{kit:e.brand.kit}:{}}),(0,K.jsxs)("span",{style:{display:"grid",gap:1},children:[(0,K.jsxs)("span",{children:[o(a)," ",(0,K.jsxs)("span",{style:C,"data-graview-speaks-ids":"",children:[Xe(t.edgeKind)," \u2192"]})," ",o(r)]}),t.description||t.inverse?(0,K.jsxs)("span",{style:C,children:[t.description?Te(t.description):null,t.description&&t.inverse?" \xB7 ":null,t.inverse?`from the other end, ${t.inverse}`:null]}):null]}),r.path?(0,K.jsx)(H,{to:`${r.path}?with=${encodeURIComponent(t.edgeKind)}`,style:{..._,...C,fontVariantNumeric:"tabular-nums",display:"inline-block",minWidth:24,minHeight:24,textAlign:"center"},title:`The ${r.label.toLowerCase()} that have this`,children:t.count}):(0,K.jsx)("span",{style:{...C,fontVariantNumeric:"tabular-nums"},children:t.count})]})}function Ko({context:e,heading:t=!0}){let{store:n}=e,a=new Set(Ge(n,e.principal)),r=ot(n).relations.filter(o=>a.has(o.from)&&(o.to==="*"||a.has(o.to)));return r.length===0?null:(0,K.jsxs)("section",{style:{...de,display:"grid",gap:12},"data-testid":"kind-map",children:[t?(0,K.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[(0,K.jsx)("h2",{style:ne,children:(0,K.jsx)(H,{to:"/map",style:ve,children:"Connections"})}),(0,K.jsx)("span",{style:C,children:r.length===1?"1 relation":`${r.length} relations`})]}):null,(0,K.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:10},children:r.map(o=>(0,K.jsx)(ls,{context:e,relation:o},`${o.edgeKind}|${o.from}|${o.to}`))})]})}function ia({context:e}){let{store:t}=e;ae(t);let n=new Set(Ge(t,e.principal)),a=ot(t),r=a.relations.filter(o=>n.has(o.from));return(0,K.jsxs)(ie,{context:e,children:[(0,K.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,K.jsx)("p",{style:be,children:r.length===0?"No relations":`${r.length} ${r.length===1?"relation":"relations"}`}),(0,K.jsx)(se,{context:e,children:"Connections"}),(0,K.jsx)("p",{style:le,children:r.length===0?"Nothing here is declared to relate to anything else yet.":"The kinds this installation holds, and the relations declared between them \u2014 each in the declaration's own words, with how many of it there are."})]}),(0,K.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"6px 18px"},"data-testid":"map-kinds",children:a.kinds.filter(o=>n.has(o.kind)).map(o=>(0,K.jsxs)("li",{style:{display:"inline-flex",alignItems:"center",gap:8},children:[(0,K.jsx)(ge,{kind:o.kind,brand:e.brand,schema:t.schema,size:7}),(0,K.jsx)(H,{to:`/${j(t.schema,o.kind)}`,style:_,children:o.plural}),(0,K.jsx)("span",{style:C,children:o.count})]},o.kind))}),(0,K.jsx)(Ko,{context:e,heading:!1})]})}function qo({context:e}){let n=[...ce()?.robots.values()??[]].filter(r=>r.mode==="asking"&&r.say);if(n.length===0)return null;let{store:a}=e;return(0,K.jsxs)("section",{style:{...de,display:"grid",gap:10},"data-testid":"seat-questions",children:[(0,K.jsx)("h2",{style:ne,children:n.length===1?"The seat asked something":`The seat asked ${n.length} things`}),(0,K.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:8},children:n.map(r=>{let o=r.at?a.graph.getNode(r.at):void 0;return(0,K.jsxs)("li",{style:{display:"grid",gap:2},children:[(0,K.jsx)("span",{children:r.say}),o?(0,K.jsxs)(H,{to:X(a.schema,o.kind,o.id),style:{..._,...C},children:[oe(a.schema.tryDefinition(o.kind),o)," \u2192"]}):null]},r.participant)})})]})}function jo(e){let t=new Set(e.schema.kinds);return(Array.isArray(e.purpose?.jobs)?e.purpose.jobs:[]).flatMap(a=>{if(typeof a!="object"||a===null||typeof a.name!="string"||typeof a.ask!="string"||!t.has(a.kind))return[];let r=$n(a.sort);return[{name:a.name,ask:a.ask,kind:a.kind,plural:Ea(e.schema,a.kind),...a.where!==void 0?{where:a.where}:{},...r?{sort:r}:{},...a.act!==void 0?{act:a.act}:{},...a.roles&&a.roles.length>0?{roles:[...a.roles]}:{}}]})}function Uo(e,t){return e.filter(n=>Nr(n,t.roles))}var pn=new Map;function Vo(e){if(!pn.has(e))try{pn.set(e,Ja(e))}catch(t){if(!(t instanceof za))throw t;pn.set(e,null)}return pn.get(e)}var ds=e=>e instanceof In?e.nodes.length>0:Array.isArray(e)?e.length>0:!!e,cs=(e,t)=>t instanceof In?t.nodes.length:t!==null&&typeof t=="object"&&!Array.isArray(t)?oe(e.tryDefinition(t.kind),t):t;function _o(e,t,n){let a=e;if(a.kindsKeptFrom(n).has(t.kind)||!a.schema.tryDefinition(t.kind))return{count:0,ids:[]};let r=a.seenBy(n),o=r.graph,i=r.schema,l=Pr(i),s=r.today?.(),c=(k,M)=>_a(k,{graph:o,subject:M,kinds:l,...s?{today:s}:{}}),u=t.where===void 0?void 0:Vo(t.where);if(u===null)return{count:0,ids:[]};let P=o.nodesOfKind(t.kind).filter(k=>{if(!u)return!0;try{return ds(c(u,k))}catch(M){if(!(M instanceof Dn))throw M;return!1}}),p=$n(t.sort),S=p&&p.by!=="label"?Vo(p.by):void 0,m=(p?Ba(P,p,k=>{if(p.by==="label")return oe(i.tryDefinition(k.kind),k);if(S)try{return cs(i,c(S,k))}catch(M){if(!(M instanceof Dn))throw M;return}}):P).map(k=>k.id);return{count:m.length,ids:m}}var un=O(ke(),1);var J=O(V(),1),ps=5,us=3,Jo={kind:"human"};function Yo(e){if(!e.app)return[];let t=e.principal??Jo;return Uo(jo(e.app),t).map(n=>({job:n,..._o(e.store,n,t)}))}function Qo({context:e,answered:t}){let n=t.filter(i=>i.count>0),a=t.filter(i=>i.count===0),[r,...o]=n;return(0,J.jsxs)("div",{style:{display:"grid",gap:40,maxWidth:"46rem",outline:"none"},"data-testid":"jobs",tabIndex:-1,children:[(0,J.jsx)("style",{children:ht}),r?(0,J.jsx)(zo,{context:e,answered:r,leads:!0}):null,o.map(i=>(0,J.jsx)(zo,{context:e,answered:i},i.job.name)),a.length>0?(0,J.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},"data-testid":"jobs-quiet",children:a.map(({job:i})=>(0,J.jsxs)("li",{"data-testid":"job-quiet","data-job":i.name,style:{overflowWrap:"anywhere"},children:[i.ask," ",(0,J.jsxs)("span",{style:C,children:["No ",z(e.store,i.kind).toLowerCase()," right now."]})]},i.name))}):null]})}function zo({context:e,answered:t,leads:n=!1}){let{store:a}=e,{job:r,count:o,ids:i}=t,l=i.slice(0,n?ps:us),s=z(a,r.kind),c=n?(0,J.jsx)(se,{context:e,"data-testid":"job-ask",children:r.ask}):(0,J.jsx)("h2",{style:ne,"data-testid":"job-ask",children:r.ask});return(0,J.jsxs)("section",{className:"graview-list",style:{display:"grid",gap:n?12:8,minWidth:0},"data-testid":"job","data-job":r.name,...n?{"data-leads":""}:{},children:[(0,J.jsxs)("header",{style:{display:"grid",gap:4},children:[c,(0,J.jsx)("p",{style:{...n?le:C,margin:0},"data-testid":"job-count",children:ut(a.schema,r.kind,o)})]}),(0,J.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",borderBottom:"1px solid var(--graview-edge)"},"data-testid":"job-rows",children:l.map(u=>(0,J.jsx)(gs,{context:e,job:r,id:u},u))}),(0,J.jsxs)("p",{style:{...C,margin:0,display:"flex",flexWrap:"wrap",gap:"0 12px",alignItems:"baseline"},children:[o>l.length?(0,J.jsxs)("span",{"data-testid":"job-more",children:[o-l.length," more"]}):null,(0,J.jsx)(H,{to:`/${j(a.schema,r.kind)}`,style:We,"data-testid":"job-all",children:(0,J.jsxs)(qe,{children:["All ",s.toLowerCase()]})})]})]})}function gs({context:e,job:t,id:n}){let{store:a,principal:r,invariantContext:o}=e,[i,l]=(0,un.useState)(!1),s=(0,un.useRef)(null),c=a.seenBy(r??Jo).graph.getNode(n);if(!c)return null;let u=a.schema.tryDefinition(c.kind),P=oe(u,c),p=At(c,u,P),S=t.act?on(a,n,{...r?{principal:r}:{},...o?{context:o}:{}})?.actions.affordances.find(k=>k.mutation===t.act&&k.provider!=="invariant"):void 0,R=S?a.allMutations().find(k=>k.name===S.mutation):void 0,m=`job-${t.name}-${n}`;return(0,J.jsxs)("li",{ref:s,"data-testid":"job-row","data-graview-record":n,style:{position:"relative",display:"grid",gridTemplateColumns:"minmax(0, 1fr) auto",alignItems:"center",gap:"8px 12px",minHeight:"2.75rem",padding:"8px 0",borderTop:"1px solid var(--graview-edge)"},children:[(0,J.jsxs)("span",{style:{display:"grid",gap:2,minWidth:0},children:[(0,J.jsx)(H,{to:X(a.schema,c.kind,n),className:"graview-row-title",...P.length>60?{title:P}:{},children:P}),p.length>0?(0,J.jsx)("span",{className:"graview-row-glance",children:(0,J.jsx)(Ct,{runs:p})}):null]}),S&&R?(0,J.jsx)("button",{type:"button","data-testid":"job-act","data-graview-act":S.mutation,"aria-expanded":i,"aria-controls":m,"aria-label":`${S.label}: ${P}`,onClick:()=>l(!i),style:{...fe,position:"relative",...i?{borderColor:"var(--graview-accent)",color:"var(--graview-accent)"}:{}},children:S.label}):null,i&&S&&R?(0,J.jsx)("div",{id:m,style:{gridColumn:"1 / -1",position:"relative",display:"grid",gap:10,padding:"4px 0 8px"},children:(0,J.jsx)(Le,{store:a,mutation:R,prefilled:S.args,open:S.open,label:S.label,autoFocus:!0,onDone:()=>{let k=s.current?.closest('[data-testid="jobs"]');l(!1),requestAnimationFrame(()=>{((s.current?.isConnected?s.current.querySelector('[data-testid="job-act"]'):null)??k?.querySelector('[data-testid="job-act"]')??k)?.focus()})},...r?{principal:r}:{}})}):null]})}var I=O(V(),1);function ms({violations:e}){let t=e.some(n=>n.status==="could-not-judge"||n.status==="over-budget");return(0,I.jsxs)(H,{to:"/problems","data-testid":"problems-here","data-graview-problems-tone":t?"error":"rule",style:{..._,color:t?"var(--graview-warn)":"var(--graview-ink-muted)"},children:[e.length===1?"A rule is broken":"Rules are broken"," \u2014 see what, and what would fix it"]})}function sa({context:e}){let{principal:t}=e,{store:n,brand:a,invariantContext:r}=e;ae(n);let o=n.violations(r),i=[...n.log.all()].slice(-5).reverse(),s=an(e).map(g=>({kind:g,members:n.graph.nodesOfKind(g).filter(F=>et(n.schema.tryDefinition(g),F))})),c=s.filter(g=>g.members.length>0),u=s.map(g=>({entry:g,creator:n.allMutations().find(F=>(F.creates??[]).includes(g.kind)&&n.permits({name:F.name,args:{}},e.principal).ok)})).find(g=>g.creator!==void 0),P=c.length===0?"Nothing here yet.":`${c.map(g=>ut(n.schema,g.kind,g.members.length)).join(", ").replace(/, ([^,]*)$/," and $1")}.`,p=e.views?.homeView?.(),S=n.schema.kinds.some(g=>n.graph.nodesOfKind(g).length>0);if(p&&S){let g=[...new Set(o.flatMap(Q=>Q.nodeIds))],F=a?.subtitle&&a.subtitleDrawn!==!1?(0,I.jsx)("p",{style:{...C,margin:0},"data-testid":"app-subtitle",children:a.subtitle}):null,Y=p[Symbol.for("graview.home-blocks")]===!0;return(0,I.jsx)(ie,{context:e,style:yt,bleedTop:Ke(p),children:(0,I.jsxs)("div",{style:{display:"grid",gap:12},"data-testid":"home-view",children:[Y?null:F,(0,I.jsx)(no.Provider,{value:Y?F:null,children:(0,I.jsx)(Je,{when:Ke(p),children:(0,I.jsx)(p,{cardinality:"many",fidelity:"full",mode:"fullscreen",selected:!1,...g.length>0?{flagged:g}:{}})})})]})})}let R=new Set(Ge(n,e.principal)),m=ot(n).relations.filter(g=>R.has(g.from)&&(g.to==="*"||R.has(g.to))),k=Yo(e),M=k.some(g=>g.count>0),D=new Set([...No(e),...k.flatMap(g=>g.ids)]),x=o.filter(g=>g.nodeIds.some(F=>D.has(F))),U=c.length===0&&u!==void 0||x.length>0||o.length===0&&!M;return(0,I.jsxs)(ie,{context:e,style:yt,children:[(0,I.jsxs)("header",{style:{display:"grid",gap:12},children:[a?.subtitle&&a.subtitleDrawn!==!1?(0,I.jsx)("p",{style:{...C,margin:0},"data-testid":"app-subtitle",children:a.subtitle}):null,M?null:(0,I.jsx)(se,{context:e,"data-testid":"standing",children:P}),U?(0,I.jsxs)("p",{style:{...le,display:"grid",gap:4},"data-testid":"standing-card",children:[c.length===0&&u?(0,I.jsxs)("span",{children:["Begin with \u201C",u.creator?.title??u.creator?.name,"\u201D, under"," ",(0,I.jsx)(H,{to:`/${j(n.schema,u.entry.kind)}`,style:_,children:z(n,u.entry.kind)}),"."]}):null,o.length===0?(0,I.jsx)("span",{children:"All rules hold."}):x.length>0?(0,I.jsx)(ms,{violations:x}):null]}):null]}),k.length>0?(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(Qo,{context:e,answered:k}),(0,I.jsxs)("section",{style:{display:"grid",gap:20},"data-testid":"after-the-jobs",children:[M?(0,I.jsxs)("p",{style:{...C,margin:0},"data-testid":"standing",children:[P,o.length===0?" All rules hold.":""]}):null,(0,I.jsx)(ln,{context:e,small:!0})]})]}):(0,I.jsx)(ln,{context:e}),(0,I.jsxs)("section",{style:{...de,display:"grid",gap:14},"data-testid":"kinds",children:[(0,I.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[(0,I.jsx)("h2",{style:ne,children:"What is here"}),m.length>0?(0,I.jsx)(H,{to:"/map",style:{...We,...C,marginLeft:"auto"},"data-testid":"map-link",children:(0,I.jsxs)(qe,{children:["Connections \xB7 ",m.length===1?"1 relation":`${m.length} relations`]})}):null]}),(0,I.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"8px 10px"},children:s.map(({kind:g,members:F})=>(0,I.jsx)("li",{style:{maxWidth:"100%"},children:(0,I.jsxs)(H,{to:`/${j(n.schema,g)}`,style:{...ve,flexWrap:"wrap",gap:8,padding:"6px 14px 6px 10px",borderRadius:8,border:"1px solid var(--graview-edge-bright)",background:"var(--graview-panel)"},children:[(0,I.jsx)(ge,{kind:g,brand:a,schema:n.schema,size:7}),(0,I.jsx)("span",{style:{fontWeight:550,overflowWrap:"anywhere"},children:z(n,g)}),(0,I.jsx)("span",{style:{...C,fontVariantNumeric:"tabular-nums"},children:F.length===0?"none yet":kt(F.length)})]})},g))})]}),i.length>0?(0,I.jsxs)("section",{style:{...de,display:"grid",gap:10},children:[(0,I.jsx)("h2",{style:ne,children:"Recently"}),(0,I.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},children:i.map(g=>(0,I.jsxs)("li",{style:C,children:[(0,I.jsx)("span",{style:{color:"var(--graview-ink)"},children:g.intent})," \u2014 ",Pt(g,t,{graph:n.graph,schema:n.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}})]},g.id))})]}):null]})}var Zo=O(ke(),1);function Xo(e,t){(0,Zo.useEffect)(()=>{let n=globalThis[Symbol.for("graview.shown-lists")]??=new Map;return n.set(e,()=>t),()=>void n.delete(e)})}var la=e=>(__graviewPreload(import.meta.url,["./chunk.AJZBJBMO.js"]),import("./chunk.6YGRRXJB.js")).then(t=>t.saveShownList(e.read()));function ei(e,t,n){let a={off:e,about:t,read:n,menu:(r,o,i)=>[...e?[]:[{id:"export-csv",label:"Export CSV",run:()=>void la(a)}],...r&&o?[{id:e?"export-on":"export-off",label:e?"Turn on export":"Turn off export",run:()=>void (__graviewPreload(import.meta.url,["./chunk.AJZBJBMO.js"]),import("./chunk.6YGRRXJB.js")).then(l=>l.switchExport(a,o,e,i))}]:[]]};return a}function da(e){let{schema:t,graph:n,kind:a,nodes:r,arrangement:o,offers:i,declaredGroup:l}=e,s=t.tryDefinition(a),c=_t(o.query??""),u=[...o.filter??[],...c.conditions],P=u.some(g=>g.key==="is"&&(g.value==="past"||g.value==="any"))||Ir(s,u),p=P||!s?.lifecycle?o:{...o,filter:[...o.filter??[],{key:"is",value:"current"}]},S=new Map,R=Jt(r,p,{schema:t,graph:n,...e.flagged?{flagged:e.flagged}:{},...e.today!==void 0?{today:e.today}:{},read:(g,F)=>{let Y=S.get(g.id);return Y||S.set(g.id,Y=nt(t,n,g)),Y[F]}}),m=R.grouped&&!!o.group?.by,k=l&&o.group?.by===l.by&&!o.group.bucket?i.groups.find(g=>g.key===l.by):void 0,M=l&&k&&(k.type==="choice"||k.type==="boolean")?Fr(R.groups,l,{type:k.type,...k.options?{options:k.options}:{}}):R.groups.map(g=>({...g,closed:!1})),D=!!o.query||(o.filter??[]).some(g=>g.key===l?.by),x=g=>k?.type==="boolean"?g==="1"?"true":"false":g,B=e.opened??new Set,U=M.map(g=>{let F=x(g.key);return{...g,value:F,shut:g.closed&&!D&&!B.has(F)}});return{arrangement:p,showingPast:P,arranged:R,grouped:m,groups:U,nodes:m?U.flatMap(g=>g.shut?[]:g.nodes):R.nodes}}var Ne=O(ke(),1);var dt=O(V(),1);function gn({context:e,withheld:t,style:n,testId:a}){let r=ce(),o=Ga(t,e.signIn??r?.signIn);return o?(0,dt.jsx)("p",{style:{...n,margin:0},children:(0,dt.jsx)("button",{type:"button","data-testid":"sign-in",onClick:()=>o.run(),style:fe,children:o.label})}):t.length===0?null:(0,dt.jsx)("ul",{style:{...n,margin:0,padding:0,listStyle:"none",display:"grid",gap:4},...a?{"data-testid":a}:{},children:t.map(i=>(0,dt.jsxs)("li",{style:C,children:[(0,dt.jsx)("s",{children:i.label})," \u2014 ",i.refusal.message]},i.id))})}var ti=O(ke(),1);var N=O(V(),1);function ca({context:e}){let{store:t,brand:n,principal:a,invariantContext:r}=e;ae(t);let[o]=wt(),i=o.get("q")??"",l=typeof r?.today=="string"?r.today:void 0,s=Vr(t,i,{...a?{principal:a}:{},places:Fe(e),flagged:new Set(t.violations(r).flatMap(m=>m.nodeIds)),...l?{today:l}:{},limit:200}),c=s.hits.filter(m=>m.about==="node"),u=s.hits.filter(m=>m.about==="kind"||m.about==="place"||m.about==="rule"),P=[...new Set(c.map(m=>m.kind))],p=i.trim(),S=p.length>=2&&s.hits.length===0,R=s.searched.kinds.length===1?s.searched.kinds[0]:void 0;return(0,ti.useEffect)(()=>{if(!S)return;let m=setTimeout(()=>qa(t,{type:"search-miss",words:p,...R?{kind:R}:{}},a),fs);return()=>clearTimeout(m)},[t,p,S,R,a]),(0,N.jsxs)(ie,{context:e,children:[(0,N.jsx)("style",{children:ht}),(0,N.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,N.jsx)("p",{style:be,children:"Search"}),(0,N.jsx)(se,{context:e,"data-testid":"search-heading",children:p.length===0?"Find anything by its name":s.hits.length===0?(0,N.jsxs)(N.Fragment,{children:["Nothing here is called \u201C",p,"\u201D."]}):(0,N.jsxs)(N.Fragment,{children:[ys(t,s.byKind)," for \u201C",p,"\u201D"]})}),p.length>0?(0,N.jsxs)("p",{style:{...C,margin:0},"data-testid":"search-searched",children:[zt(t.schema,s.searched),s.conditions.filter(m=>m.key!=="is"&&m.admittedBy.length<s.searched.kinds.length).map(m=>(0,N.jsxs)("span",{children:[" ",m.key,":",m.value," narrows"," ",m.admittedBy.length===0?"nothing here":m.admittedBy.map(k=>z(t,k).toLowerCase()).join(" and "),"."]},`${m.key}:${m.value}`))]}):(0,N.jsxs)("p",{style:le,children:["Type in the box above. Words find the start of words in names and in what each record says;"," ",(0,N.jsx)("code",{children:"done:false"})," and the like narrow as a list does, and ",(0,N.jsx)("code",{children:"is:any"})," includes what is past."]})]}),u.length>0?(0,N.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},"data-testid":"search-named",children:u.map(m=>(0,N.jsx)("li",{"data-testid":"search-hit","data-about":m.about,children:m.about==="kind"?(0,N.jsxs)(H,{to:`/${j(t.schema,m.kind)}`,style:_,children:[m.label,m.count>0?(0,N.jsxs)("span",{style:C,children:[" \xB7 ",m.count," match"]}):null]}):m.about==="place"?(0,N.jsxs)(H,{to:he(e,m),style:_,children:["Go to ",m.title]}):m.about==="rule"?(0,N.jsxs)(H,{to:"/problems",style:_,children:["The rule \u201C",m.label,"\u201D"]}):null},`${m.about}:${m.about==="rule"?m.name:m.about==="place"?m.as:m.kind}`))}):null,P.map(m=>(0,N.jsxs)("section",{className:"graview-list",style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",minWidth:0},"data-testid":"search-group","data-kind":m,children:[(0,N.jsxs)("h2",{className:"graview-group-head",style:{alignItems:"center"},children:[(0,N.jsx)(ge,{kind:m,brand:n,schema:t.schema,size:8}),(0,N.jsx)(H,{to:`/${j(t.schema,m)}?${new URLSearchParams({q:p}).toString()}`,style:_,"data-testid":"search-kind-link",children:z(t,m)}),(0,N.jsx)("span",{children:s.byKind[m]})]}),(0,N.jsx)("ul",{className:"graview-rows",children:c.filter(k=>k.kind===m).map(k=>(0,N.jsxs)("li",{"data-testid":"search-hit","data-about":"node",className:"graview-row",children:[(0,N.jsxs)(H,{to:X(t.schema,m,k.id),className:"graview-row-title",...k.label.length>60?{title:k.label}:{},children:[k.flagged?(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)("span",{role:"img","aria-label":"Breaks a rule:",style:{color:"var(--graview-warn)"},children:"\u26A0"})," "]}):null,k.label]}),k.apart||!k.current?(0,N.jsx)("span",{className:"graview-row-glance",children:[k.apart,k.current?"":"past"].filter(Boolean).join(" \xB7 ")}):null,(0,N.jsx)(mn,{why:k.why})]},k.id))})]},m)),p.length>0?(0,N.jsx)(hs,{asked:p}):null,p.length>0&&s.hits.length===0?(0,N.jsx)(ai,{store:t,kinds:s.searched.kinds,words:s.words,...a?{principal:a}:{},...r?{invariantContext:r}:{}}):null]})}var fs=1500;function mn({why:e}){return e.strength==="near"?(0,N.jsxs)("span",{style:C,"data-testid":"search-why","data-near":"",children:["Near \u201C",e.asked,"\u201D",e.field==="label"?"":` \u2014 ${e.reading}: ${e.fragment}`]}):e.field==="label"?null:(0,N.jsxs)("span",{style:C,"data-testid":"search-why",children:[e.reading,": ",e.fragment]})}function ys(e,t){let n=Object.entries(t).map(([a,r])=>`${r} ${r===1?tt(e.schema.tryDefinition(a),a):z(e,a).toLowerCase()}`);return n.length===0?"Found":n.length===1?Te(n[0]):Te(`${n.slice(0,-1).join(", ")} and ${n[n.length-1]}`)}function ni(e,t,n={}){let a=[];for(let r of t){let o=rt(e,r,{...n.principal?{principal:n.principal}:{},...n.invariantContext?{context:n.invariantContext}:{}});for(let i of fn(e,r,o.actions.affordances))a.some(l=>l.mutation.name===i.mutation.name)||a.push(i)}return a}function fn(e,t,n){let a=e.schema.tryDefinition(t)?.fieldRoles?.label,r=[];for(let o of n){let i=e.allMutations().find(c=>c.name===o.mutation);if(!i||!i.creates?.includes(t)||r.some(c=>c.mutation.name===i.name))continue;let l=Or(i.input).map(c=>c.name),s=l.includes("label")?"label":a&&l.includes(a)?a:void 0;!s||o.args[s]!==void 0||r.push({kind:t,affordance:o,mutation:i,arg:s})}return r}function ai({store:e,kinds:t,words:n,principal:a,invariantContext:r}){let o=ni(e,t,{...a?{principal:a}:{},...r?{invariantContext:r}:{}});return o.length===0||n.trim().length===0?null:(0,N.jsx)("div",{style:{display:"grid",gap:24},"data-testid":"search-to-create",children:o.map(({kind:i,affordance:l,mutation:s,arg:c})=>(0,N.jsxs)("section",{style:{...de,display:"grid",gap:14},children:[(0,N.jsxs)("h2",{style:ne,children:[Te(Na(tt(e.schema.tryDefinition(i),i)))," called \u201C",n,"\u201D"]}),(0,N.jsx)(Le,{store:e,mutation:s,prefilled:l.args,open:l.open,initial:{[c]:n},...a?{principal:a}:{}})]},`${l.id}|${n}`))})}function hs({asked:e}){let t=ce();return t?(0,N.jsx)(ws,{asked:e,desk:t.aiDesk}):null}function ws({asked:e,desk:t}){return dr(t)?(0,N.jsx)("p",{style:{margin:0},children:(0,N.jsxs)("button",{type:"button","data-testid":"search-ask",onClick:a=>lr(t,{pointed:{about:[]},asked:e,returnTo:a.currentTarget}),style:{..._,font:"inherit",padding:0,border:0,background:"transparent",cursor:"pointer",textAlign:"start"},children:["Ask: \u2018",e,"\u2019"]})}):null}var y=O(V(),1),oi=8,ii=40;function Ss(e,t){let n=t?.fields?.shape??{},a=Object.keys(n).find(r=>$a(n[r])&&Oa(e[r]));return a===void 0?void 0:e[a]}function pa({context:e}){let t=ze(),n=xe(e.store.schema,t.slug??"");if(!n)return(0,y.jsx)(ie,{context:e,children:(0,y.jsx)(se,{context:e,children:"No such kind of thing here."})});let a=e.views?.lookup(n,{cardinality:"many",fidelity:"full"});return a!==void 0&&mt(a)?(0,y.jsx)(bs,{context:e,kind:n,view:a}):(0,y.jsx)(si,{context:e,kind:n})}function bs({context:e,kind:t,view:n}){let{store:a,invariantContext:r}=e;ae(a);let o=a.schema.tryDefinition(t),i=z(a,t),l=a.graph.nodesOfKind(t).filter(c=>et(o,c)),s=[...new Set(a.violations(r).flatMap(c=>c.nodeIds))];return(0,y.jsxs)(ie,{context:e,children:[(0,y.jsxs)("header",{style:{display:"grid",gap:4},children:[(0,y.jsx)(it,{context:e}),(0,y.jsx)(se,{context:e,children:i})]}),(0,y.jsx)("section",{"data-testid":"list-view",style:{display:"grid",minWidth:0},children:(0,y.jsx)(xt,{kind:t,view:i,children:(0,y.jsx)(Je,{when:Ke(n),children:(0,y.jsx)(n,{nodes:l,label:i,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...s.length>0?{flagged:s}:{}})})})})]})}function si({context:e,kind:t,opening:n,row:a,layout:r="list",description:o,bare:i}){let{store:l,brand:s,invariantContext:c}=e;ae(l);let[u,P]=wt(),p=`list-${(0,Ne.useId)().replace(/:/g,"")}`,S=l.schema.tryDefinition(t),R=Fa(u.get("archived")),m=l.graph.nodesOfKind(t,{archived:R}),k=ot(l).relations.filter(d=>d.from===t||d.to===t),M=new Set(l.violations(c).flatMap(d=>d.nodeIds)),D=Gr(l.schema,Wr(l.schema,Dr(l.schema,t))),x=k.map(d=>d.edgeKind),B=Cs(u,D,x),U=["sort","filter","group","q","by","with","past","archived",...x].some(d=>u.has(d)),g=m.length>=ii,F=S?.fieldRoles?.when,Y=e.views?.arrangement?.()?.lists?.[t],Q=Hr(Y),Oe=$r(Y?.group),Ce=As(g,F),Se=n??(Q?{...Ce,...Q}:Ce),Re=U?B.arrangement:jn(Se,D).arrangement,b=Q?.sort,w=Re.sort&&b?.then&&Re.sort.by===b.by&&Re.sort.direction===b.direction?{...Re,sort:b}:Re,T=_t(w.query??""),$=new Set((u.get("open")??"").split(",").filter(Boolean)),ee=da({schema:l.schema,graph:l.graph,kind:t,nodes:m,arrangement:w,offers:D,declaredGroup:Oe,flagged:M,...typeof c?.today=="string"?{today:c.today}:{},opened:$}),{showingPast:te,arranged:f}=ee,E=ee.groups,Z=ce(),pe=ei(Y?.export===!1,{kind:t},()=>({title:z(l,t),schema:l.schema,graph:l.graph,kind:t,groups:ee.groups,grouped:ee.grouped,onExport:e.onExport??Z?.onExport,words:{labelOf:oe,readableFields:jt,withComputed:nt}}));Xo(`list:${t}`,pe);let mi=d=>d.shut,fi=d=>{let h=new URLSearchParams(u),W=new Set($);W.has(d)?W.delete(d):W.add(d),W.size>0?h.set("open",[...W].join(",")):h.delete("open"),P(h,{replace:!0})},$e=f.nodes,Qe=S?.lifecycle&&!te?m.filter(d=>et(S,d)):m,fa=m.length-Qe.length,ya=w.group?.by??null,yi=d=>{let h=new URLSearchParams(u);for(let ue of["sort","filter","group","q","by","with","past","archived",...k.map(It=>It.edgeKind)])h.delete(ue);let W=jr(d);for(let ue of["sort","filter","group","q","archived"])W[ue]&&h.set(ue,W[ue]);![...h.keys()].some(ue=>["sort","filter","group","q"].includes(ue))&&(n||Q||g||F)&&h.set("sort",""),P(h)},{principal:ct}=e,Sn=rt(l,t,{...ct?{principal:ct}:{},...e.invariantContext?{context:e.invariantContext}:{}}),Be=Sn.actions.affordances.map(d=>({affordance:d,mutation:l.allMutations().find(h=>h.name===d.mutation)})).filter(d=>d.mutation!==void 0),hi=Sn.actions.withheld,bn=()=>new Set($e.length===0?Be.map(({mutation:d})=>d.name):[]),[vn,ha]=(0,Ne.useState)(()=>({kind:t,open:bn()}));vn.kind!==t&&ha({kind:t,open:bn()});let wa=d=>(vn.kind===t?vn.open:bn()).has(d),Sa=(d,h)=>ha(W=>{let ue=new Set(W.open);return h?ue.add(d):ue.delete(d),{kind:W.kind,open:ue}}),ba=`begin-${(0,Ne.useId)().replace(/:/g,"")}`,va=T.words&&$e.length===0?Object.fromEntries(fn(l,t,Sn.actions.affordances).map(d=>[d.mutation.name,d.arg])):{},Ze=z(l,t),Nt=e.views?.lookup(t,{cardinality:"one",fidelity:"glyph"}),kn=Nt!==void 0&&!gt(Nt)?Nt:void 0,xn=(w.group?.bucket??"day")==="day"?w.group?.by:void 0,Pn=(w.filter??[]).map(d=>d.key),wi=Pn.filter(d=>Pn.indexOf(d)===Pn.lastIndexOf(d)&&/choice|boolean/.test(D.filters.find(h=>h.key===d)?.type??"")),An=d=>{let h={...S?.computed?nt(l.schema,l.graph,d):d};xn&&!String(h[xn]).includes("T")&&delete h[xn];for(let W of wi)delete h[W];return h},ka=d=>Sr(S?.fields?.shape?.[d])?.type==="enum",Ot=d=>{let h=oe(S,d);if(a)return(0,y.jsxs)("li",{"data-testid":"record-row","data-graview-record":d.id,style:{minWidth:0},...Mn(d.id),children:[En(d,h),a(d,{label:h,href:X(l.schema,t,d.id),flagged:M.has(d.id),glance:So(An(d),S,h)})]},d.id);if(kn){let Nn=Xt(Nt,d,l.graph),Pi=Object.fromEntries(Object.entries(An(d)).filter(([Ai])=>!Nn?.fields.has(Ai))),La=Nn?At(Pi,S,Nn.title??h,ka):[];return(0,y.jsxs)("li",{"data-testid":"record-row","data-graview-record":d.id,style:{position:"relative",display:"flex",flexWrap:"wrap",alignItems:"baseline",columnGap:16,rowGap:2,paddingBlock:10,borderTop:"1px solid var(--graview-edge)"},...Mn(d.id),children:[En(d,h),(0,y.jsx)("div",{style:{flex:"1 1 14rem",minWidth:0},children:(0,y.jsx)(kn,{node:d,cardinality:"one",fidelity:"glyph",mode:"fullscreen",selected:!1,...M.has(d.id)?{flagged:[d.id]}:{}})}),La.length>0?(0,y.jsx)("span",{style:{...C,flex:"0 1 auto",minWidth:0,overflowWrap:"anywhere"},"data-testid":"record-glance",children:(0,y.jsx)(Ct,{runs:La})}):null,(0,y.jsx)(Ts,{to:X(l.schema,t,d.id),label:M.has(d.id)?`${h} \u2014 implicated in a problem`:h})]},d.id)}let W=At(An(d),S,h,ka),ue=W.length>0,It=T.words?qr(S,d,T.words):void 0,Ca=g?void 0:vr(d,S),Dt=Ss(d,S),Ra=(0,y.jsxs)(H,{to:X(l.schema,t,d.id),className:"graview-row-title",...h.length>60?{title:h}:{},children:[M.has(d.id)?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)("span",{role:"img","aria-label":"Breaks a rule:",style:{color:"var(--graview-warn)"},children:"\u26A0"})," "]}):null,h]});return(0,y.jsxs)("li",{className:"graview-row","data-graview-record":d.id,...Mn(d.id),children:[En(d,h),Ca?(0,y.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:14,minWidth:0},children:[(0,y.jsx)(ft,{as:"thumb",file:Ca}),Ra]}):Ra,ue||Dt?(0,y.jsxs)("span",{className:"graview-row-glance",children:[(0,y.jsx)(Ct,{runs:W}),ue&&Dt?" \xB7 ":null,Dt?(0,y.jsx)(Yt,{address:Dt}):null]}):null,It?(0,y.jsx)(mn,{why:It}):null]},d.id)},Cn=Fe(e).filter(d=>d.kind===t&&!d.hidden),xa=Y?.filters,Si=(w.filter??[]).some(d=>d.key!=="is"||d.value!=="any"),bi=!!(w.sort||w.group||w.query||Si),vi=Qe.length>=oi||U&&bi,Ie=w.sort?D.sorts.find(d=>d.key===w.sort.by):void 0,Rn=Ie?.type==="date"||Ie!==void 0&&Ie.key===F,Pa=g&&!f.grouped&&Ie&&(Ie.about==="label"||Ie.type==="text"||Rn)?d=>{let h=Ie.about==="label"?oe(S,d):d[Ie.key];if(typeof h!="string"||h.length===0)return Rn?"No date":"#";if(Rn)return h.slice(0,4);let W=h.trim().charAt(0).toLocaleUpperCase();return/\p{L}/u.test(W)?W:"#"}:void 0,$t=Pa?$e.reduce((d,h)=>{let W=Pa(h);return d.at(-1)?.key===W?d.at(-1).nodes.push(h):d.push({key:W,nodes:[h]}),d},[]):void 0,Aa=ee.nodes,Ln=(0,Ne.useMemo)(()=>Aa.map(d=>d.id),[Aa.map(d=>d.id).join(`
|
|
6
|
+
`)]),He=Yr(Ln),Tn=(0,Ne.useId)(),bt=(ct?l.permittedMutations(ct):l.permittedMutations()).some(d=>{let h=d.subject?.kinds;return h!==void 0&&(h==="*"||h.includes(t))}),En=(d,h)=>bt?(0,y.jsx)("span",{className:"graview-choose-at",children:(0,y.jsx)("input",{...He.boxProps(d.id,h),onPointerEnter:Un,onFocus:Un})}):null,Mn=d=>bt?{"data-graview-choose":d}:{},ki=(0,Ne.useCallback)(d=>{He.choose(d),requestAnimationFrame(()=>{let h=He.list.current;((d[0]===void 0?null:h?.querySelector(`[data-graview-choose-box="${CSS.escape(d[0])}"]`))??h)?.focus({preventScroll:!0})})},[He]),pt=r==="grid"?{margin:0,padding:0,listStyle:"none",display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(min(100%, 15rem), 1fr))",alignItems:"start",gap:12}:a||kn?{margin:0,padding:0,listStyle:"none",display:"grid",gap:a&&r==="list"?6:0}:void 0,Ht=pt?void 0:"graview-rows",vt=d=>`list-at-${d.replace(/[^\p{L}\p{N}]/gu,"_")}`,Ft=k.map(d=>{let h=d.from===t?d.to:d.from,W=d.from===t?d.description:d.inverse??d.description;return{relation:d,far:h,words:W}}),xi=new Set(Ft.map(d=>(d.words??"").toLowerCase()).filter((d,h,W)=>d&&W.indexOf(d)!==h));return(0,y.jsxs)(i?Ps:ie,{context:e,children:[(0,y.jsxs)("div",{style:{display:"grid",gap:12},children:[(0,y.jsxs)("header",{style:{display:"grid",gap:4},children:[i?null:(0,y.jsx)(it,{context:e}),(0,y.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",columnGap:10,rowGap:4,minWidth:0},children:[(0,y.jsx)(ge,{kind:t,brand:s,schema:l.schema,size:8}),(0,y.jsx)(se,{context:e,children:Ze}),Be.length>0?(0,y.jsx)("span",{style:{marginLeft:"auto",display:"flex",flexWrap:"wrap",columnGap:14,rowGap:8},"data-testid":"beginnings-open",children:Be.map(({affordance:d,mutation:h})=>(0,y.jsx)(Rs,{name:h.name,title:h.title??h.name,panel:`${ba}-${h.name}`,open:wa(h.name),onOpen:W=>Sa(h.name,W)},d.id))}):null,!pe.off&&Qe.length>0?(0,y.jsxs)("button",{type:"button","data-testid":"list-export","aria-label":"Export CSV",title:"Export CSV",onClick:()=>void la(pe),style:{...ve,minHeight:28,margin:"-4px 0",...Be.length>0?{}:{marginLeft:"auto"},padding:"0 2px",border:0,background:"none",font:"inherit",color:"var(--graview-ink-muted)",cursor:"pointer"},children:[(0,y.jsx)("span",{"aria-hidden":"true",style:{marginRight:4},children:"\u2193"}),"CSV"]}):null]}),$e.length>0?(0,y.jsx)(yo,{place:"here",to:[{label:`Skip to the ${$e.length===1?tt(S,t):`${$e.length} ${Ze.toLowerCase()}`}`,testid:"records",go:()=>{let d=document.querySelector(`[data-graview-skip-target="${CSS.escape(Tn)}"]`);_n(d?.querySelector('[data-graview-choose-box][tabindex="0"]')??d)}},...Qe.length>0?[{label:"Skip to arranging them",testid:"arranging",go:()=>{let d=document.querySelector(`[data-graview-skip-target="${CSS.escape(Tn)}"]`)?.parentElement?.querySelector('[role="group"][aria-label="Arrange"]');_n(d?.querySelector('button[data-testid$="-add"], button[data-testid$="-all"]')??d)}}]:[]]}):null,o??S?.description?(0,y.jsx)("p",{style:le,children:o??S?.description}):null,Ft.length>0||Cn.length>0?(0,y.jsxs)("p",{style:{...C,margin:0,display:"flex",flexWrap:"wrap",columnGap:18,rowGap:2},"data-testid":"kind-related",children:[Ft.length>0?(0,y.jsxs)("span",{"data-testid":"kind-relations",children:["Related:"," ",Ft.map(({relation:d,far:h,words:W},ue)=>(0,y.jsxs)("span",{"data-relation":d.edgeKind,children:[ue>0?(0,y.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,h==="*"?Te(W??Xe(d.edgeKind)):(0,y.jsx)(H,{to:`/${j(l.schema,h)}`,style:_,title:z(l,h),children:W&&xi.has(W.toLowerCase())?`${Te(W)}: ${z(l,h).toLowerCase()}`:Te(W??z(l,h))})]},`${d.edgeKind}|${d.from}|${d.to}`))]}):null,Cn.length>0?(0,y.jsxs)("span",{"data-testid":"kind-pictures",children:["Also as:"," ",Cn.map((d,h)=>(0,y.jsxs)("span",{children:[h>0?(0,y.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,(0,y.jsx)(H,{to:he(e,d),style:_,children:d.title})]},st(d)))]}):null]}):null]}),Be.length>0?(0,y.jsx)("div",{style:{display:"contents"},"data-testid":"beginnings",children:Be.map(({affordance:d,mutation:h})=>{let W=!!(va[h.name]&&$e.length===0);return(0,y.jsx)(Ls,{name:h.name,id:`${ba}-${h.name}`,description:h.description,open:wa(h.name),onClose:()=>Sa(h.name,!1),children:(0,y.jsx)(Le,{store:l,mutation:h,prefilled:d.args,open:d.open,...W?{initial:{[va[h.name]]:T.words}}:{},...e.principal?{principal:e.principal}:{}},W?`${h.name}|${T.words}`:h.name)},d.id)})}):null,B.dropped.length>0?(0,y.jsxs)("p",{style:{...C,margin:0},"data-testid":"list-dropped",children:["This link asked for ",B.dropped.join(", "),", which ",Ze.toLowerCase()," cannot be arranged by; the rest is shown."]}):null,Qe.length>0?(0,y.jsx)(zr,{schema:l.schema,graph:l.graph,kind:t,arrangement:w,onChange:yi,kept:{shown:$e.length,of:Qe.length},noun:{one:tt(S,t),many:Ze.toLowerCase()},...vi?{}:{allow:!1},...xa?{filters:xa}:{},offers:D,chips:{nodes:Qe,flagged:M,...typeof c?.today=="string"?{today:c.today}:{}},query:e.framed===!0&&e.barAbove!==!0}):null,(0,y.jsx)("style",{children:ht}),bt?(0,y.jsx)("style",{children:Qr+xs}):null,(0,y.jsx)("div",{className:"graview-list","data-graview-skip-target":Tn,...bt?{...He.listProps,ref:He.list,tabIndex:-1,"data-graview-choosable":"","aria-label":He.chosen.length>0?`${Ze}, ${He.chosen.length} chosen`:Ze,role:"group"}:{},children:$e.length===0&&T.words?(0,y.jsxs)("p",{style:le,"data-testid":"none-yet",children:["Nothing here is called \u201C",T.words,"\u201D."," ",(0,y.jsx)("span",{style:C,"data-testid":"list-searched",children:zt(l.schema,{kinds:[t],past:te})})," ",(0,y.jsx)(H,{to:"?",style:_,children:"Show every one"})]}):$e.length===0?(0,y.jsxs)("p",{style:le,"data-testid":"none-yet",children:[w.filter?.length||w.query?"None of them.":"None yet",!w.filter?.length&&!w.query&&Be.length>0?` \u2014 the first one starts above, with \u201C${Be[0]?.mutation.title??Be[0]?.mutation.name}\u201D.`:!w.filter?.length&&!w.query?".":"",w.filter?.length||w.query?(0,y.jsxs)(y.Fragment,{children:[" ",(0,y.jsx)(H,{to:"?",style:_,children:"Show every one"})]}):null]}):f.grouped&&ya?(0,y.jsx)("div",{style:{display:"grid",gap:"1rem"},"data-testid":"records","data-grouped":ya,children:E.map(d=>{if(!d.closed)return(0,y.jsxs)("section",{style:{display:"grid",gap:0},"data-testid":"list-group",children:[(0,y.jsxs)("h2",{className:"graview-group-head",children:[d.label," ",(0,y.jsx)("span",{children:d.nodes.length})]}),(0,y.jsx)("ul",{style:pt,className:Ht,"data-graview-rows":"",children:d.nodes.map(Ot)})]},d.key||"-");let h=mi(d),W=`${p}-${vt(d.key||"none")}`;return(0,y.jsxs)("section",{style:{display:"grid",gap:0},"data-testid":"list-group","data-closed":h?"shut":"open",children:[(0,y.jsx)("h2",{className:"graview-group-head",children:(0,y.jsxs)("button",{type:"button",className:"graview-group-toggle","aria-expanded":!h,"aria-controls":W,"data-testid":"list-group-toggle",onClick:()=>fi(d.value),children:[(0,y.jsx)("span",{"aria-hidden":"true",children:h?"\u25B8":"\u25BE"}),d.label," ",(0,y.jsxs)("span",{children:["\xB7 ",d.nodes.length]}),(0,y.jsxs)("span",{style:vs,children:[" ",d.nodes.length===1?tt(S,t):Ze.toLowerCase()]})]})}),(0,y.jsx)("ul",{id:W,style:h?{...pt,display:"none"}:pt,className:Ht,"data-graview-rows":"",hidden:h,children:h?null:d.nodes.map(Ot)})]},d.key||"-")})}):$t&&$t.length>1?(0,y.jsxs)("div",{style:{display:"grid",gap:14},"data-testid":"records","data-sectioned":Ie?.type==="date"?"year":"letter",children:[(0,y.jsx)("nav",{"aria-label":"Jump to","data-testid":"list-index",style:{...C,display:"flex",flexWrap:"wrap",gap:Ie?.type==="date"?"0 10px":"0 4px",lineHeight:1.3},children:$t.map(d=>(0,y.jsx)("a",{href:`#${vt(d.key)}`,onClick:h=>{h.preventDefault(),document.getElementById(vt(d.key))?.scrollIntoView({block:"start"})},style:{...ve,minWidth:24,justifyContent:"center"},children:d.key},d.key))}),$t.map(d=>(0,y.jsxs)("section",{"data-testid":"list-section","aria-labelledby":vt(d.key),style:{display:"grid",gap:0},children:[(0,y.jsx)("h2",{id:vt(d.key),className:"graview-group-head",children:d.key}),(0,y.jsx)("ul",{style:pt,className:Ht,"data-graview-rows":"",children:d.nodes.map(Ot)})]},d.key))]}):(0,y.jsx)("ul",{style:pt,className:Ht,"data-testid":"records","data-graview-rows":"",children:$e.map(Ot)})}),bt?(0,y.jsx)(Zr,{store:l,chosen:He.chosen,...ct?{principal:ct}:{},...c?{context:c}:{},anchor:ks,of:Ln.length,onChooseAll:()=>He.choose(Ln),onClear:He.clear,onActed:ki}):null,fa>0?(0,y.jsxs)(H,{to:ri(u,"filter","is:any"),style:{..._,...C,justifySelf:"start"},"data-testid":"past-link",children:["+",fa," past"]}):null,R===!1&&l.graph.count(t,{archived:!0})>0?(0,y.jsxs)(H,{to:ri(u,"archived","true"),style:{..._,...C,justifySelf:"start"},"data-testid":"archived-link",children:["+",l.graph.count(t,{archived:!0})," archived"]}):null]}),(0,y.jsx)(gn,{context:e,withheld:hi,style:de,testId:"withheld"})]})}var vs={position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0 0 0 0)",whiteSpace:"nowrap",border:0},ks=()=>document.querySelector("[data-graview-choosable]")?.closest("[data-embed-content]")??null,xs=`
|
|
7
|
+
.graview-list[data-graview-choosable]{outline:none}
|
|
8
|
+
.graview-list [data-graview-choose]{position:relative;padding-left:34px}
|
|
9
|
+
.graview-choose-at{position:absolute;left:2px;top:0;bottom:0;z-index:${Ka.raised};display:flex;align-items:center}
|
|
10
|
+
@media (min-width: 900px) and (pointer: fine){
|
|
11
|
+
.graview-list [data-graview-choose]{padding-left:0}
|
|
12
|
+
.graview-choose-at{left:-34px}
|
|
13
|
+
}
|
|
14
|
+
@media (pointer: coarse){
|
|
15
|
+
.graview-list:not([data-graview-choosing]) [data-graview-choose]{padding-left:0}
|
|
16
|
+
.graview-list:not([data-graview-choosing]) .graview-choose-at{display:none}
|
|
17
|
+
}
|
|
18
|
+
`;function Ps({children:e}){return(0,y.jsx)("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:40,minWidth:0},children:e})}var As=(e,t)=>t?{sort:{by:t,direction:"desc"}}:e?{sort:{by:"label",direction:"asc"}}:{};function Cs(e,t,n){let a=Bt({...e.get("sort")?{sort:e.get("sort")}:{},...e.get("filter")?{filter:e.get("filter")}:{},...e.get("group")?{group:e.get("group")}:{},...e.get("q")?{q:e.get("q")}:{},...e.get("archived")?{archived:e.get("archived")}:{}}),r=[...a.filter??[]],o=e.get("by"),i=a.group??(o?{by:o}:void 0);for(let s of n){let c=e.get(s);c&&r.push({key:s,value:c})}let l=e.get("with");return l&&r.push({key:l,value:"*"}),e.get("past")==="1"&&!r.some(s=>s.key==="is")&&r.push({key:"is",value:"any"}),jn({...a.sort?{sort:a.sort}:{},...a.query?{query:a.query}:{},...r.length>0?{filter:r}:{},...i?{group:i}:{},...a.archived!==void 0?{archived:a.archived}:{}},t)}function ri(e,t,n){let a=new URLSearchParams(e);return a.set(t,n),a.delete("past"),`?${a.toString()}`}function Rs({name:e,title:t,panel:n,open:a,onOpen:r}){return(0,y.jsxs)("button",{type:"button","data-testid":`act-open-${e}`,"data-graview-act":e,"aria-expanded":a,"aria-controls":n,onClick:()=>{r(!a),a||requestAnimationFrame(()=>document.getElementById(n)?.querySelector("input, select, textarea, button")?.focus())},style:{...ve,minHeight:28,margin:"-4px 0",padding:"0 2px",border:0,background:"none",font:"inherit",fontWeight:600,color:"var(--graview-ink)",cursor:"pointer"},children:[(0,y.jsx)("span",{"aria-hidden":"true",style:{marginRight:6},children:a?"\u2212":"+"}),t]})}function Ls({name:e,id:t,description:n,open:a,onClose:r,children:o}){return(0,y.jsxs)("div",{"data-testid":`act-${e}`,id:t,hidden:!a,onKeyDown:i=>{i.key==="Escape"&&(i.preventDefault(),r(),document.querySelector(`[aria-controls="${t}"]`)?.focus())},style:a?{display:"grid",gap:12,padding:"4px 0 12px"}:void 0,children:[n?(0,y.jsx)("p",{style:{...C,margin:0,maxWidth:"58ch"},children:n}):null,o]})}function Ts({to:e,label:t}){let n=(0,Ne.useRef)(null);return Xr(n),(0,y.jsx)(H,{ref:n,to:e,"aria-label":t,style:{position:"absolute",inset:0,borderRadius:6}})}var Ue=O(ke(),1);var Mt=O(ke(),1);var G=O(V(),1);function ua({context:e}){let{store:t,brand:n,invariantContext:a,principal:r}=e;ae(t);let o=t.violations(a),i=t.allInvariants(),l=qt(t,o),s=cr(t.schema,i);return(0,G.jsxs)(ie,{context:e,children:[(0,G.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,G.jsx)(se,{context:e,children:o.length===0?"All rules hold":"What is broken"}),(0,G.jsx)("p",{style:le,"data-testid":"problems-count",children:o.length===0?"Every declared rule is satisfied by what is here.":Ia(o)})]}),(0,G.jsx)(qo,{context:e}),l.map((c,u)=>{let P=c.nodeIds[0],p=P?t.graph.getNode(P):void 0;return(0,G.jsxs)("section",{style:{display:"grid",gap:10,padding:"16px 18px",borderLeft:"3px solid var(--graview-warn)",background:"var(--graview-panel-warning)",borderRadius:"0 var(--graview-radius, 12px) var(--graview-radius, 12px) 0"},children:[c.line?null:(0,G.jsx)(yn,{violation:c,schema:t.schema,...n?{brand:n}:{}}),p?(0,G.jsxs)("p",{style:{margin:0,display:"inline-flex",alignItems:"center",gap:8},children:[(0,G.jsx)(ge,{kind:p.kind,brand:n,schema:t.schema,size:7}),(0,G.jsx)(H,{to:X(t.schema,p.kind,p.id),style:_,children:oe(t.schema.tryDefinition(p.kind),p)})]}):null,c.line?(0,G.jsx)(yn,{violation:c,schema:t.schema,...n?{brand:n}:{}}):null,(0,G.jsx)(hn,{store:t,repairs:c.repairs,...r?{principal:r}:{}})]},u)}),i.length>0?(0,G.jsxs)("section",{style:{...de,display:"grid",gap:12},"data-testid":"rules",children:[(0,G.jsx)("h2",{style:ne,children:"The rules"}),(0,G.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:10},children:i.map(c=>{let u=o.filter(S=>S.invariant===c.name).length,P=s.get(c.name),p=c.label??c.name;return(0,G.jsxs)("li",{"data-graview-rule":c.name,style:{display:"grid",gap:2},children:[(0,G.jsxs)("span",{style:{display:"flex",flexWrap:"wrap",alignItems:"baseline",columnGap:12,rowGap:2},children:[P?(0,G.jsx)(Vt,{line:P,schema:t.schema,...n?{brand:n}:{},style:{flex:"1 1 18rem"}}):(0,G.jsx)("span",{style:{flex:"1 1 18rem",fontWeight:550},children:p}),(0,G.jsx)("span",{style:{...C,color:u>0?"var(--graview-warn)":"var(--graview-ink-faint)"},children:u===0?"holds":`broken in ${u} ${u===1?"place":"places"}`})]}),P&&p.trim().length>0?(0,G.jsx)("span",{style:C,children:p}):null]},c.name)})})]}):null]})}function yn({violation:e,schema:t,brand:n}){if(!e.line)return(0,G.jsx)("p",{style:{margin:0,color:"var(--graview-warn)",fontWeight:550},children:e.message});let a=ur(e),r=pr(e);return r?(0,G.jsxs)("div",{style:{display:"grid",gap:4},"data-testid":"problem-line",children:[(0,G.jsx)("p",{style:{margin:0,color:"var(--graview-warn)",fontWeight:550},"data-testid":"problem-says",children:r}),a?(0,G.jsx)("span",{style:C,children:a}):null,(0,G.jsxs)("details",{"data-testid":"problem-judged",style:C,children:[(0,G.jsx)("summary",{style:{cursor:"pointer",width:"fit-content",minHeight:24},children:"How it is judged"}),(0,G.jsx)(Vt,{line:e.line,schema:t,...n?{brand:n}:{},lead:"none"})]})]}):(0,G.jsxs)("div",{style:{display:"grid",gap:2},"data-testid":"problem-line",children:[(0,G.jsx)(Vt,{line:e.line,schema:t,...n?{brand:n}:{},lead:"none",style:{color:"var(--graview-warn)"}}),a?(0,G.jsx)("span",{style:C,children:a}):null]})}function hn({store:e,repairs:t,principal:n}){let[a,r]=(0,Mt.useState)(null),[o,i]=(0,Mt.useState)(null),l=(0,Mt.useRef)([]);if(t.length===0)return null;let s=a===null?null:t[a],c=s&&(s.missing??[]).length>0?e.allMutations().find(u=>u.name===s.mutation):void 0;return(0,G.jsxs)("div",{style:{display:"grid",gap:10},"data-testid":"repairs",children:[(0,G.jsx)("div",{style:{display:"flex",gap:8,flexWrap:"wrap"},children:t.map((u,P)=>{let p=(u.missing??[]).length>0,S=e.permits({name:u.mutation,args:{...u.args}},n);return S.ok?(0,G.jsx)("button",{ref:R=>{l.current[P]=R},type:"button","data-graview-repair":u.mutation,"data-graview-asks":p||void 0,"aria-expanded":p?a===P:void 0,onClick:()=>{if(i(null),p){r(a===P?null:P);return}r(null);try{e.apply({name:u.mutation,args:{...u.args}},n?{author:n}:{})}catch(R){i(Ut(e.schema,e.allMutations(),R))}},style:fe,children:p?`${u.label} \u2026`:u.label},P):(0,G.jsxs)("p",{"data-testid":"withheld","data-withheld":S.refusal.wouldNeed.join(",")||"nobody",style:{...C,margin:0},children:[(0,G.jsx)("s",{children:u.label})," \u2014 ",S.refusal.message]},P)})}),c&&s?(0,G.jsx)(Le,{store:e,mutation:c,prefilled:{...s.args},only:s.missing??[],label:s.label,autoFocus:!0,onDone:()=>{let u=a;r(null),requestAnimationFrame(()=>{let P=u===null?null:l.current[u];if(P?.isConnected){P.focus();return}let p=document.querySelector("[data-graview-page-title]")??document.querySelector("main h1, main h2");p&&(p.hasAttribute("tabindex")||(p.tabIndex=-1),p.focus())})},...n?{principal:n}:{}}):null,s&&!c&&(s.missing??[]).length>0?(0,G.jsxs)("p",{"data-testid":"refused",role:"alert",style:{margin:0,color:"var(--graview-warn)",fontSize:zn},children:["\u201C",s.label,"\u201D names ",s.mutation,", which this app does not declare."]}):null,o?(0,G.jsx)("p",{"data-testid":"refused",role:"alert",style:{margin:0,color:"var(--graview-warn)",fontSize:zn},children:o}):null]})}var ga=O(ke(),1);var Ye=O(V(),1);function li({store:e,link:t,principal:n}){let[a,r]=(0,ga.useState)(!1),[o,i]=(0,ga.useState)(null),l=yr(t);return(0,Ye.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6,flexWrap:"wrap"},children:[(0,Ye.jsx)("button",{type:"button","data-graview-provisional":"",title:l,"aria-label":`Unsure link: ${l}`,"aria-expanded":a,onClick:()=>r(!a),style:{border:"1px dashed var(--graview-ink-muted)",borderRadius:999,background:"transparent",color:"var(--graview-ink-muted)",font:"inherit",fontSize:"0.75rem",lineHeight:1,padding:"2px 6px",cursor:"pointer"},children:"unsure"}),a?(0,Ye.jsxs)("span",{style:{...C,display:"inline-flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,Ye.jsx)("span",{children:l}),(0,Ye.jsx)("button",{type:"button",style:{...fe,padding:"4px 10px"},onClick:()=>{try{e.apply({name:Da,args:{kind:t.edge.kind,from:t.edge.from,to:t.edge.to}},n?{author:n}:{}),r(!1)}catch(s){i(Ut(e.schema,e.allMutations(),s))}},children:"Keep this link"}),o?(0,Ye.jsx)("span",{role:"alert",children:o}):null]}):null]})}var we=O(V(),1);function di({nodeId:e,node:t,field:n,inPlace:a,labelStyle:r=be}){return n.files?(0,we.jsx)(ft,{as:"field",read:!a,nodeId:e,field:n.key,label:n.label,files:n.files,labelStyle:r,style:{gap:4}}):n.long?(0,we.jsx)(_r,{nodeId:e,field:n.key,label:n.label,value:n.value,markdown:n.markdown,style:{gridColumn:"1 / -1",gap:4},labelStyle:r,valueStyle:{lineHeight:1.6}}):(0,we.jsxs)("div",{style:{display:"grid",gap:2,minWidth:0,alignContent:"start"},children:[(0,we.jsx)("dt",{style:r,children:n.label}),(0,we.jsx)("dd",{style:{margin:0,overflowWrap:"anywhere",minWidth:0},children:n.linked?(0,we.jsx)(Rr,{relation:n.linked.relation,refs:n.linked.refs,...a?{nodeId:e,field:n.key}:{}}):n.app?(0,we.jsx)(Yt,{address:n.app,as:"record",...a?{nodeId:e,field:n.key}:{}}):n.href?(0,we.jsx)(Ur,{href:n.href,field:n.key,value:n.value,stored:n.stored,...a?{nodeId:e}:{}}):a?(0,we.jsxs)(we.Fragment,{children:[(0,we.jsx)(Qt,{nodeId:e,field:n.key,value:n.value,stored:n.stored}),n.repeats?(0,we.jsx)(Lr,{nodeId:e,field:n.key,start:t?.[n.key],value:t?.[`${n.key}Repeat`],label:`${n.label} repeats`}):null]}):n.value})]})}var v=O(V(),1),Es=[];function ma({context:e}){let{store:t,brand:n,principal:a,invariantContext:r}=e;ae(t);let o=ce()!==null,i=ze(),l=decodeURIComponent(i.id??""),s=on(t,l,{...a?{principal:a}:{},...r?{context:r}:{}}),c=qt(t,s?.violations??Es),[u,P]=(0,Ue.useState)(null),[p,S]=(0,Ue.useState)(!1),[R,m]=(0,Ue.useState)(null),k=(0,Ue.useRef)(null),M=(0,Ue.useRef)(null),D=Tr({flow:"both",letters:!0}),x=f=>{(k.current?.parentElement?.querySelector(`[data-affordance="${f.replace(/["\\]/g,"\\$&")}"]`)??k.current)?.focus()};if(!s)return(0,v.jsx)(ie,{context:e,children:(0,v.jsx)(se,{context:e,children:"Nothing lives at this address."})});let B=t.graph.getNode(l),U=t.schema.tryDefinition(s.kind),g=U?.describe&&B?mr(U,B):null,F=[...t.log.all()].filter(f=>!Wt(f)&&(f.writes.includes(l)||f.reads.includes(l))).slice(-8).reverse(),Y=t.log.all().find(f=>!Wt(f)&&f.undoes===void 0&&f.primitives.some(E=>E.op==="add-node"&&E.node.id===l)),Q=s.actions.affordances.filter(f=>f.provider!=="invariant"),Oe=Q.filter(f=>f.destructive||f.setsAside),Ce=p||Oe.length<2?Q:Q.filter(f=>!Oe.includes(f)),Se=e.views?.lookup(s.kind,{cardinality:"one",fidelity:"full"}),Re=Se!==void 0&&!gt(Se)?Se:void 0,b=Re&&B?Xt(Se,B,t.graph):void 0,w=b?s.fields.filter(f=>!b.fields.has(f.key)):s.fields,T=b?s.links.flatMap(f=>{let E=f.targets.filter(Z=>!b.records.has(Z.id));return E.length>0?[{...f,targets:E}]:[]}):s.links,$=Re!==void 0&&mt(Se),ee=o&&br(U).length>0,te=Fe(e).filter(f=>!f.hidden&&(f.kind===s.kind||f.across===s.kind));return(0,v.jsxs)(ie,{context:e,children:[(0,v.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,v.jsx)(it,{context:e}),(0,v.jsx)(se,{context:e,children:o&&B?.label===s.label?(0,v.jsx)(Qt,{nodeId:l,field:"label",value:s.label,said:s.label}):s.label}),g&&g!==s.label?(0,v.jsx)("p",{style:le,children:g}):null,Y?.lineage?(0,v.jsxs)("p",{style:{...C,margin:0},"data-testid":"record-lineage",children:["Made by ",Pt(Y,a,{graph:t.graph,schema:t.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}}),", ",Gn(Y.lineage)]}):null,(0,v.jsx)(Yn,{context:e,stop:`#focus=${encodeURIComponent(l)}`,style:{...We,...C},"data-testid":"spatial-link"}),o&&B?(0,v.jsx)(Kn,{choices:[{on:"changed",record:l},{on:"act",record:l},{on:"reaches",kind:s.kind,condition:"",record:l}],label:"Notify me when this changes",testId:"record-notify",style:{...fe,...C,justifySelf:"start"}}):null,te.length>0?(0,v.jsx)(Ms,{context:e,places:te}):null]}),B&&Ha(B)?(0,v.jsx)($s,{context:e,id:l,kind:s.kind}):null,B&&Wa(t,l)?(0,v.jsx)(Os,{context:e,id:l,kind:s.kind}):null,Re&&B?(0,v.jsx)("section",{"data-testid":"record-view",style:{display:"grid",minWidth:0},children:(0,v.jsx)(eo,{children:(0,v.jsx)(Je,{when:Ke(Se),children:(0,v.jsx)(Re,{node:B,cardinality:"one",fidelity:"full",mode:"fullscreen",selected:!1,...s.violations.length>0?{flagged:[l]}:{}})})})}):null,s.violations.length>0?(0,v.jsx)("section",{"data-testid":"record-violations",style:{display:"grid",gap:12,padding:"16px 18px",borderLeft:"3px solid var(--graview-warn)",background:"var(--graview-panel-warning)",borderRadius:"0 var(--graview-radius, 12px) var(--graview-radius, 12px) 0"},children:c.map((f,E)=>(0,v.jsxs)("div",{style:{display:"grid",gap:8},children:[(0,v.jsx)(yn,{violation:f,schema:t.schema,...n?{brand:n}:{}}),(0,v.jsx)(hn,{store:t,repairs:Ro(s.actions,f.repairs),...a?{principal:a}:{}})]},E))}):null,!$&&(w.length>0||ee)?(0,v.jsxs)("section",{style:{...de,display:"grid",gap:14},"data-testid":"record-fields",children:[(0,v.jsx)("h2",{style:ne,children:"The facts"}),fr(U,w).map((f,E)=>{let Z=(0,v.jsx)("dl",{style:{margin:0,display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(200px, 1fr))",gap:"14px 24px"},children:f.fields.map(pe=>(0,v.jsx)(di,{nodeId:l,node:B,field:pe,inPlace:o},pe.key))});return f.title?(0,v.jsxs)("section",{style:{display:"grid",gap:10,minWidth:0},children:[(0,v.jsx)("h3",{"data-graview-field-group":f.title,style:{...ne,fontSize:"inherit"},children:f.title}),Z]},E):(0,v.jsx)("div",{children:Z},E)}),ee?(0,v.jsx)(ft,{as:"unfilled",nodeId:l,skip:[...b?.fields??[]],labelStyle:be,style:{gap:4}}):null]}):null,($?[]:T).map(f=>(0,v.jsxs)("section",{style:{...de,display:"grid",gap:10},children:[(0,v.jsx)("p",{style:be,children:wo(t,f)}),f.description?(0,v.jsx)("h2",{style:ne,children:Te(f.description)}):(0,v.jsxs)("h2",{style:ne,"aria-label":Xe(f.edgeKind),children:[f.direction==="in"?"\u2190 ":"\u2192 ",Xe(f.edgeKind)]}),(0,v.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"6px 18px"},children:f.targets.map(E=>{let Z=hr(t,f.direction==="in"?{kind:f.edgeKind,from:E.id,to:l}:{kind:f.edgeKind,from:l,to:E.id});return(0,v.jsxs)("li",{style:{display:"inline-flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,v.jsx)(ge,{kind:E.kind,brand:n,schema:t.schema,size:7}),(0,v.jsxs)(H,{to:X(t.schema,E.kind,E.id),style:_,children:[E.label,E.apart?(0,v.jsxs)("span",{style:C,children:[" \xB7 ",E.apart]}):null]}),Z?.provisional?(0,v.jsx)(li,{store:t,link:Z,...a?{principal:a}:{}}):null]},E.id)})}),(f.direction==="out"&&t.schema.edge(f.edgeKind)?.cardinality==="one"?[]:[...new Set(f.targets.map(E=>E.kind))]).map(E=>(0,v.jsx)(H,{to:`/${j(t.schema,E)}?${encodeURIComponent(f.edgeKind)}=${encodeURIComponent(l)}`,style:{...We,...C},"data-testid":"related-all",children:(0,v.jsxs)(qe,{children:["Sort and filter ",f.description??`these ${z(t,E).toLowerCase()}`,f.targets.some(Z=>Z.kind!==E)?` (${z(t,E).toLowerCase()})`:""]})},E))]},`${f.edgeKind}|${f.direction}|${f.description??""}`)),!$&&(Q.length>0||s.actions.withheld.length>0)?(0,v.jsxs)("section",{style:{...de,display:"grid",gap:14},"data-testid":"record-actions",children:[(0,v.jsx)("h2",{style:ne,ref:k,tabIndex:-1,children:"What can be done"}),(0,v.jsxs)("div",{role:"toolbar","aria-label":"What can be done",...D,style:{display:"flex",flexWrap:"wrap",gap:8},children:[Ce.map(f=>{let E=u===f.id;return(0,v.jsx)("button",{type:"button","data-affordance":f.id,"data-rank":f.rank,"data-graview-act":f.mutation,[Bn]:"",autoFocus:p&&f===Oe[0],"aria-expanded":E,onClick:()=>P(E?null:f.id),style:{...fe,...E?{borderColor:"var(--graview-accent)",color:"var(--graview-accent)"}:{}},children:f.label},f.id)}),Ce.length<Q.length?(0,v.jsxs)("button",{type:"button","aria-expanded":!1,onClick:()=>S(!0),style:{...fe,...C},"data-testid":"record-actions-more",[Bn]:"",children:["Show ",Q.length-Ce.length," more"]}):null]}),Q.map(f=>{if(u!==f.id)return null;let E=t.allMutations().find(Z=>Z.name===f.mutation);return E?(0,v.jsxs)("div",{ref:M,onKeyDown:Z=>{if(Z.key!=="Escape"||Z.defaultPrevented)return;Z.preventDefault(),P(null);let pe=f.id;requestAnimationFrame(()=>x(pe))},style:{display:"grid",gap:10,padding:18,border:"1px solid var(--graview-edge)",borderRadius:"var(--graview-radius, 12px)",background:"var(--graview-panel)"},children:[(0,v.jsx)("h3",{style:ne,children:f.label}),E.description?(0,v.jsx)("p",{style:{...C,margin:0},children:E.description}):null,(0,v.jsx)(Le,{store:t,mutation:E,prefilled:f.args,open:f.open,label:f.label,autoFocus:!0,onDone:()=>{P(null),m(f.mutation);let Z=f.id;requestAnimationFrame(()=>x(Z))},...a?{principal:a}:{}})]},f.id):null}),o&&R!==null&&u===null?(0,v.jsx)(Kn,{choices:[{on:"act",act:R,record:l},{on:"act",act:R}],label:"Notify me when someone else does this",testId:"notify-after-act",style:{...fe,...C,justifySelf:"start"}}):null,(0,v.jsx)(gn,{context:e,withheld:s.actions.withheld})]}):null,o?(0,v.jsx)(ho,{id:l,style:de,headingStyle:ne}):null,F.length>0?(0,v.jsxs)("section",{style:{...de,display:"grid",gap:10},"data-testid":"record-history",children:[(0,v.jsx)("h2",{style:ne,children:"What has happened"}),(0,v.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},children:F.map(f=>(0,v.jsxs)("li",{style:C,children:[(0,v.jsx)("span",{style:{color:"var(--graview-ink)"},children:f.intent}),f.lineage?(0,v.jsxs)("span",{"data-graview-lineage":"",children:[" \xB7 ",Gn(f.lineage)]}):null," \u2014 ",Pt(f,a,{graph:t.graph,schema:t.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}})]},f.id))})]}):null]})}function Ms({context:e,places:t}){let[n,a]=(0,Ue.useState)(!1),r=(0,Ue.useRef)(null),o=n||t.length<=wn+1?0:t.length-wn;return(0,v.jsxs)("p",{ref:r,style:{...C,margin:0},"data-testid":"seen-in",...n?{"data-open":""}:{},children:["Seen in:"," ",t.map((i,l)=>(0,v.jsxs)("span",{...o>0&&l>=wn?{"data-graview-later":""}:{},children:[l>0?(0,v.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,(0,v.jsx)(H,{to:he(e,i),style:_,children:i.title})]},st(i))),o>0?(0,v.jsxs)(v.Fragment,{children:[" ",(0,v.jsxs)("button",{type:"button","data-graview-seen-more":"","aria-expanded":"false",style:{..._,...C,font:"inherit",background:"none",border:0,padding:0,cursor:"pointer"},onClick:()=>{a(!0),requestAnimationFrame(()=>r.current?.querySelectorAll("a")[wn]?.focus())},children:[o," more"]}),(0,v.jsx)("style",{children:Ns})]}):null]})}var wn=3,Ns="[data-graview-seen-more]{display:none!important}@media (max-width:680px){[data-graview-seen-more]{display:inline!important}[data-testid=seen-in] [data-graview-later]{display:none}}";function Os({context:e,id:t,kind:n}){let{store:a,principal:r}=e,o={name:`allow-tidying-${n}`,args:{id:t}},i=a.allMutations().some(l=>l.name===o.name)&&a.permits(o,r).ok;return(0,v.jsxs)("section",{"data-testid":"record-left-alone",style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:12,padding:"12px 16px",border:"1px solid var(--graview-edge)",borderRadius:"var(--graview-radius, 12px)",background:"var(--graview-panel)"},children:[(0,v.jsxs)("p",{style:{margin:0,flex:"1 1 16rem"},children:[(0,v.jsx)("strong",{children:"Left alone."})," Nothing automated changes it; tidying passes it by."]}),i?(0,v.jsx)("button",{type:"button",style:fe,"data-testid":"allow-tidying",onClick:()=>a.apply(o,r?{author:r}:{}),children:"Allow tidying again"}):null]})}function $s({context:e,id:t,kind:n}){let{store:a,principal:r}=e,o={name:`unarchive-${n}`,args:{id:t}},i=a.allMutations().some(c=>c.name===o.name)&&a.permits(o,r).ok,l=[...a.log.all()].reverse().find(c=>!Wt(c)&&c.mergedInto!==void 0&&c.writes.includes(t)),s=l?.mergedInto!==void 0?a.graph.getNode(l.mergedInto):void 0;return(0,v.jsxs)("section",{"data-testid":"record-archived",style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:12,padding:"12px 16px",border:"1px solid var(--graview-edge)",borderRadius:"var(--graview-radius, 12px)",background:"var(--graview-panel)"},children:[(0,v.jsxs)("p",{style:{margin:0,flex:"1 1 16rem"},children:[(0,v.jsx)("strong",{children:"Archived."})," Kept with its ties and history, and out of lists, counts and rules.",s?(0,v.jsxs)(v.Fragment,{children:[" ","Merged into ",(0,v.jsx)(H,{to:X(a.schema,s.kind,s.id),style:_,children:oe(a.schema.tryDefinition(s.kind),s)}),"."]}):null]}),i?(0,v.jsx)("button",{type:"button",style:fe,"data-testid":"bring-it-back",onClick:()=>a.apply(o,r?{author:r}:{}),children:"Bring it back"}):null]})}var A=O(V(),1),Hs=Kt(()=>(__graviewPreload(import.meta.url,["./chunk.M72JKVHP.js","./chunk.YQXA4WAM.js","./chunk.UWQ3I5OW.js","./chunk.UGFDSE37.js","./chunk.FLMNWVSY.js","./chunk.JETT6ELP.js","./chunk.DSLGMCB6.js","./chunk.IX63LTRQ.js","./chunk.I636CZE4.js","./chunk.TVURUMU4.js","./chunk.UV3U4FRT.js","./chunk.EZ4TZUMM.js","./chunk.47T3KUAA.js","./chunk.NZDWXX6H.js","./chunk.C5EFUODO.js","./chunk.UGOKORIF.js","./chunk.VDS3IOTK.js","./chunk.YS5U3DUX.js","./chunk.SAJLIA5M.js","./chunk.LWRXCO2Z.js","./chunk.I2NI7CT7.js","./chunk.LHIT3EZD.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.7INWDFNG.js","./chunk.FPGU43SC.js","./chunk.V6FUYRZI.js","./chunk.5BPRGXIW.js","./chunk.BZEJM2PY.js","./chunk.CMLNBJZG.js","./chunk.GZHZLJBF.js","./chunk.QPL3OXW3.js","./chunk.OJGHDWI6.js","./chunk.FRERJWZJ.js","./chunk.RQX4CQJN.js","./chunk.LUIRQ5UF.js","./chunk.N33WUCAN.js","./chunk.JQFIZRAZ.js","./chunk.LKJ6FD6Y.js","./chunk.DBMZ3AQB.js","./chunk.SDO3U72B.js","./chunk.DIFR37EZ.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.KO7IOFNY.js")).then(e=>({default:e.DraftPage}))),Fs={kind:"human"};function Is({list:e,store:t}){let n=new Set(e.members.map(i=>i.kind)),a=e.total-e.members.length,r=n.size===1?[...n][0]:void 0;if(!r)return(0,A.jsx)("p",{className:"graview-spec-text graview-spec-more",children:`and ${a} more`});let o=_e(t.schema,r).toLowerCase();return(0,A.jsx)("p",{className:"graview-spec-text graview-spec-more",children:(0,A.jsx)(H,{to:`/${j(t.schema,r)}`,className:"graview-spec-link graview-spec-see-all","data-testid":"see-all",children:e.total===t.graph.nodesOfKind(r).length?`See all ${kt(e.total)} ${o}`:`${kt(a)} more \xB7 all ${o}`})})}function Ds({context:e,children:t}){let n=Ve(),a=e.store.schema,r=at("/").replace(/\/$/,""),o=(0,q.useMemo)(()=>({href:i=>`${r}${X(a,i.kind,i.id)}`,go:i=>n(X(a,i.kind,i.id)),more:i=>(0,A.jsx)(Is,{list:i,store:e.store})}),[r,a,n,e.store]);return(0,A.jsx)(Zt.Provider,{value:o,children:(0,A.jsx)(to.Provider,{value:(e.titleLevel??(e.framed&&!e.barAbove?1:2))-1,children:t})})}var pi=(0,q.createContext)(void 0);function Ws({steering:e}){let t=ye(),n=Ve(),a=`${t.pathname}${t.search}`;return(0,q.useLayoutEffect)(()=>e.at(a),[a,e]),(0,q.useLayoutEffect)(()=>{let r=i=>{i!==a&&n(i)};e.go.current=r;let o=e.pending?.current;return o!==void 0&&(e.pending.current=void 0,r(o)),()=>{e.go.current===r&&(e.go.current=void 0)}},[a,n,e]),null}function Gs({context:e,to:t}){let{pathname:n}=ye(),a=ce(),r=(t??a)?.sayWhere,o=Bs(e,n);return(0,q.useEffect)(()=>(r?.(o),()=>r?.(null)),[r,o]),null}function Bs(e,t){let[n="",a,r]=t.split("/").filter(Boolean).map(i=>{try{return decodeURIComponent(i)}catch{return i}});if(r!==void 0)return"#";if(n==="places"&&a!==void 0){if(a===Fn)return"#overview=1";let i=e.views?.places().find(l=>l.as===a);return i?`#focus=${encodeURIComponent(De(i.kind))}&view=${encodeURIComponent(i.as)}`:"#"}let o=xe(e.store.schema,n);return o?`#focus=${encodeURIComponent(a??De(o))}`:"#"}function Ks({onNavigate:e,path:t}){let n=ye(),a=Qn(),r=Ve(),o=n.hash&&!n.hash.includes("=")?n.hash:"",i=`${n.pathname}${n.search}${o}`,l=(0,q.useRef)(e);l.current=e;let s=(0,q.useRef)(null);(0,q.useEffect)(()=>{let u=s.current;s.current=i,u!==null&&(i===u&&a!=="PUSH"||l.current?.(i,a==="POP"?"pop":a==="REPLACE"?"replace":"push"))},[n.key]);let c=(0,q.useRef)(t);return(0,q.useEffect)(()=>{t===void 0||t===c.current||(c.current=t,t!==i&&r(t))},[t]),null}function ci({context:e,registry:t,page:n}){let a=ze(),r=xe(e.store.schema,a.slug??""),o=n==="list"?pa:ma,l=(r?t?.lookup(r,n):void 0)??o;return(0,A.jsx)(l,{context:e})}function qs({context:e,registry:t,children:n}){let a=(0,q.useRef)(null);return sr(a),(0,A.jsx)("div",{ref:a,"data-graview-face":"pages",style:{display:"contents"},children:(0,A.jsx)(Do,{context:e,registry:t,root:a,children:(0,A.jsx)(Go,{context:e,root:a,children:n})})})}function Vs(e){return e instanceof HTMLElement?e.isContentEditable||e.tagName==="TEXTAREA"||e.tagName==="SELECT"?!0:e.tagName==="INPUT"&&!["button","submit","reset","checkbox","radio","image","file","color","range"].includes(e.type):!1}function js(){let{pathname:e}=ye(),t=Qn(),n=(0,q.useRef)(null);(0,q.useLayoutEffect)(()=>{if(t!=="POP"){for(let o=n.current?.parentElement;o;o=o.parentElement){let{overflowY:i}=getComputedStyle(o);if((i==="auto"||i==="scroll")&&o.scrollHeight>o.clientHeight){o.scrollTop=0;return}}window.scrollTo(0,0)}},[e]);let a=(0,q.useRef)(e),r=(0,q.useRef)(!1);return(0,q.useEffect)(()=>{if(!r.current&&e===a.current)return;r.current=!0;let o=document.activeElement;if(Vs(o))return;let i=n.current?.closest("main")??document.querySelector("main"),s=n.current?.closest("[data-graview-face]")?.querySelector("[data-graview-page-title]")??i?.querySelector("h1, h2")??null??i??null;s&&(s.hasAttribute("tabindex")||s.setAttribute("tabindex","-1"),s.focus({preventScroll:!0}))},[e]),(0,A.jsx)("span",{ref:n,hidden:!0,"data-graview-scroll-reset":""})}function ui({context:e,children:t}){let n=Ve(),a=at("/").replace(/\/$/,""),r=(0,q.useContext)(pi),o=(0,q.useMemo)(()=>{let i=(s,c)=>{if("record"in s){let u=e.store.graph.getNode(s.record);return u?tn(X(e.store.schema,u.kind,s.record),{section:c?.section}):void 0}if("place"in s){let u=e.views?.places().find(P=>P.as===s.place);return u?tn(he(e,u),c):void 0}return e.store.schema.tryDefinition(s.list)?tn(`/${j(e.store.schema,s.list)}`,c):void 0},l=s=>{s!==void 0&&n(s)};return{record:(s,c)=>l(i({record:s},c)),place:(s,c)=>l(i({place:s},c)),list:(s,c)=>l(i({list:s},c)),draft:()=>n("/~draft"),href:(s,c)=>{let u=r===!1?void 0:i(s,c);if(u!==void 0)return r?r(u):`${a}${u}`}}},[e,n,a,r]);return(0,A.jsx)(ir.Provider,{value:o,children:t})}function Us(){let{pathname:e,search:t,hash:n}=ye();return(0,q.useEffect)(()=>{let a=decodeURIComponent(n.replace(/^#/,""));if(!(!a||a.includes("=")))return $o(a)},[e,t,n]),null}function _s({context:e,Home:t}){let n=ye(),a=e.views,r=n.key==="default"&&!(a&&rr(a));(0,q.useEffect)(()=>{a&&or(a)},[a]);let o=r?Ua(e.views?.arrangement?.()?.first,e.store.schema,e.views?.places()??[]):void 0,i=o?.to==="place"?he(e,o.place):o?.to==="kind"?`/${j(e.store.schema,o.kind)}`:void 0;return i?(0,A.jsx)(Zn,{to:i,replace:!0}):(0,A.jsx)(t,{context:e})}function gi({context:e,registry:t}){let n=t?.lookupSurface("shell"),a=n!==void 0,r=a&&(t?.without().has("bar")??!1),o=a&&!r&&!e.embedded?{...e,barAbove:!0}:e,i=m=>n===void 0?(0,A.jsx)(rn,{context:e,children:m}):r?(0,A.jsx)(n,{context:e,children:m}):(0,A.jsx)(rn,{context:e,children:(0,A.jsx)(n,{context:o,children:m})}),l=t?.lookupSurface("home")??sa,s=t?.lookupSurface("problems")??ua,c=a?{...o,framed:!0}:e,[u,P]=(0,q.useState)(null),p=(0,q.useMemo)(()=>({context:c,registry:t}),[c,t]),S=(0,q.useMemo)(()=>({onFind:P,find:!(t?.without().has("find")??!1),places:!(t?.without().has("places")??!1)}),[t]),R=(0,A.jsx)(ea.Provider,{value:p,children:(0,A.jsx)(ui,{context:e,children:(0,A.jsx)(qs,{context:e,registry:t,children:i((0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(wr,{face:"pages"}),(0,A.jsxs)(Ds,{context:c,children:[(0,A.jsx)(js,{}),(0,A.jsx)(Us,{}),(0,A.jsxs)(xo,{children:[(t?.routes()??[]).map(({path:m,component:k})=>(0,A.jsx)(Ee,{path:m,element:(0,A.jsx)(k,{context:c})},m)),(0,A.jsx)(Ee,{path:"/",element:(0,A.jsx)(_s,{context:c,Home:l})}),(0,A.jsx)(Ee,{path:"/problems",element:(0,A.jsx)(s,{context:c})}),(0,A.jsx)(Ee,{path:"/~draft",element:(0,A.jsx)(q.Suspense,{fallback:null,children:(0,A.jsx)(Hs,{context:c})})}),(0,A.jsx)(Ee,{path:"/search",element:(0,A.jsx)(ca,{context:c})}),(0,A.jsx)(Ee,{path:"/map",element:(0,A.jsx)(ia,{context:c})}),(0,A.jsx)(Ee,{path:"/places",element:(0,A.jsx)(ra,{context:c})}),Fe(c).some(m=>m.as===Fn)?null:(0,A.jsx)(Ee,{path:ja,element:(0,A.jsx)(Zn,{to:"/",replace:!0})}),(0,A.jsx)(Ee,{path:"/places/:as",element:(0,A.jsx)(oa,{context:c})}),(0,A.jsx)(Ee,{path:"/:slug",element:(0,A.jsx)(ci,{context:c,registry:t,page:"list"})}),(0,A.jsx)(Ee,{path:"/:slug/:id",element:(0,A.jsx)(ci,{context:c,registry:t,page:"record"})})]})]})]}))})})});return e.embedded||!a||r?R:(0,A.jsx)(Co.Provider,{value:S,children:(0,A.jsx)(Br.Provider,{value:u,children:R})})}var zs=()=>typeof document>"u"?null:document.body;function Js({context:e,registry:t,basename:n,initialPath:a,onNavigate:r,path:o,steering:i,firstLook:l,hrefOf:s,typing:c}){let[u,P]=(0,q.useState)(void 0),p=u!==void 0&&u.from===e.principal?{...e,principal:u.seat}:e;(0,q.useState)(()=>p.views?ro(p.views,p.store.schema,Vn(p.brand,p.store.schema)):void 0);let S=ce(),R=c??p.typing;Ta({reader:p.locale??S?.locale,app:p.brand?.locale??p.app?.brand?.locale,readerTimeZone:p.timeZone??S?.timeZone,appTimeZone:p.brand?.timeZone??p.app?.brand?.timeZone});let m=p.principal??Fs,k=er(p.store,m,p.history),D=(k.past&&k.live===p.store?k.past.store:p.store).seenBy(m),x=D===p.store?p:{...p,store:D};tr(p.store,p.principal);let B=(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(Ks,{onNavigate:r,path:o}),i?(0,A.jsx)(Ws,{steering:i}):null,x.presence||S?(0,A.jsx)(Gs,{context:x,to:S}):null,(0,A.jsx)(gi,{context:x,...t?{registry:t}:{}}),l?(0,A.jsx)(oo,{firstLook:l,root:zs,app:Vn(p.brand,p.store.schema)}):null]}),U=x.views?(0,A.jsxs)(nr,{store:x.store,views:x.views,...x.principal?{principal:x.principal}:{},...x.brand?{brand:x.brand}:{},...x.locale?{locale:x.locale}:{},...x.timeZone?{timeZone:x.timeZone}:{},...x.settings?{settings:x.settings}:{},...x.presence&&!S?{presence:x.presence}:{},...R?{typing:R}:{},...x.people?{people:x.people}:{},...x.seats?{seats:x.seats}:{},onSeat:Q=>S?S.takeSeat(Q):P({from:e.principal,seat:Q}),...x.onKeepLens?{onKeepLens:x.onKeepLens}:{},...x.onExport?{onExport:x.onExport}:{},...x.ai?{ai:x.ai}:{},...x.subscriptions?{subscriptions:x.subscriptions}:{},dismissals:x.dismissals,whileAway:x.whileAway,...x.signIn?{signIn:x.signIn}:{},resolveApp:x.resolveApp??S?.resolveApp,linkedRecords:x.linkedRecords??S?.linkedRecords,...x.app?{app:x.app}:{},...x.menuSections?{menuSections:x.menuSections}:{},children:[B,(0,A.jsx)(ui,{context:x,children:(0,A.jsx)(Ho,{context:x})})]}):B,g=(0,A.jsx)(Xa.Provider,{value:k,children:U}),F=x.files?(0,A.jsx)(Za.Provider,{value:x.files,children:g}):g,Y=s===void 0?F:(0,A.jsx)(pi.Provider,{value:s,children:F});if(a!==void 0){let Q=n===void 0?a:`${n.replace(/\/$/,"")}${a}`;return(0,A.jsx)(ko,{initialEntries:[Q],...n===void 0?{}:{basename:n},children:Y})}return(0,A.jsx)(Po,{...n===void 0?{}:{basename:n},children:Y})}export{Di as a,Js as b};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{s as a}from"./chunk.
|
|
1
|
+
import{s as a}from"./chunk.QPL3OXW3.js";import{G as f,T as s,ba as l}from"./chunk.DBMZ3AQB.js";import{b as i}from"./chunk.AJZBJBMO.js";var d=i(f(),1),p=i(s(),1),c=new Set;function B(e){return c.add(e),()=>void c.delete(e)}function S(){let{store:e,principal:o}=l();return(0,d.useMemo)(()=>n=>{let t=n.on===void 0?void 0:e.graph.getNode(n.on);if(!t)return null;let u=[...c].filter(r=>r.store===e&&r.kind===t.kind);return(n.element?u.find(r=>r.root()?.contains(n.element)??!1):u[0])?.section(t.id,o)??null},[e,o])}function v({children:e}){let o=S(),n=(0,d.useMemo)(()=>[o],[o]);return(0,p.jsx)(a,{sections:n,children:e})}export{B as a,S as b,v as c};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as D}from"./chunk.PXQVXBNG.js";import{a as L,f as P,g as N,h as R,i as T}from"./chunk.B3WVCSW5.js";import{
|
|
1
|
+
import{a as D}from"./chunk.PXQVXBNG.js";import{a as L,f as P,g as N,h as R,i as T}from"./chunk.B3WVCSW5.js";import{zd as E}from"./chunk.DIFR37EZ.js";var z=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),W=e=>e?._zod?.def;function I(e){let n=W(e);for(;n&&(n.type==="optional"||n.type==="default"||n.type==="nullable"||n.type==="prefault");)n=W(n.innerType);return n}function K(e){if(e?.type==="boolean")return["true","false"];if(e?.type==="enum")return(e.entries?Object.values(e.entries):e.values??[]).filter(n=>typeof n=="string")}var m=e=>e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[-_]/g," ").replace(/^./,n=>n.toUpperCase());function J(e,n,i){let a=e.tryDefinition(n);if(!a)return[];let c=new Set(a.display?.hide??[]),o=[];for(let[s,l]of Object.entries(a.fields.shape??{})){if(s==="id"||s==="kind"||s==="label"||c.has(s))continue;let r=I(l);if(r?.type==="array"||r?.type==="object"||r?.type==="record")continue;let u=K(r);o.push({key:s,label:m(s),...u?{options:u}:{}})}let g=new Map;for(let[s,l]of Object.entries(a.edges??{}))g.set(s,l.to==="*"?[]:[...l.to]);for(let s of e.definitions)if(s.kind!==n)for(let[l,r]of Object.entries(s.edges??{}))!g.has(l)&&(r.to==="*"||r.to.includes(n))&&g.set(l,[s.kind]);let y=[];for(let[s,l]of g){o.push({key:s,label:m(s)});let r=i&&l.length===1&&l[0]!==n?e.tryDefinition(l[0]):void 0;for(let[u,f]of Object.entries(r?.fields.shape??{})){let p=I(f);p?.type==="enum"&&!r?.display?.hide?.includes(u)&&y.push({key:`${s}.${u}`,label:`${m(s)} \xB7 ${m(u)}`,options:K(p)})}}return o.push(...y),o.push({key:"is",label:"Is",options:a.lifecycle?["current","past","any","flagged","clear"]:["flagged","clear"]}),o}var G=e=>e.length<=1?e[0]??"":`${e.slice(0,-1).join(", ")} and ${e.at(-1)}`;function q(e,n,i,a={}){if(i==null)return{ok:!0};if(!z(i))return{ok:!1,says:'A filter is an object of a field and the value it keeps, like { where: { stage: "building" } }.'};let c=Object.entries(i);if(c.length===0)return{ok:!0};let o=[];for(let l of n)for(let r of J(e,l,a.through===!0))o.some(u=>u.key===r.key)||o.push(r);let g=n[0]?e.tryDefinition(n[0]):void 0,y=g?g.plural??`${m(g.kind)}s`:"These",s=[];for(let[l,r]of c){let u=o.find(p=>p.key===l);if(!u)return{ok:!1,says:`${y.replace(/^./,p=>p.toUpperCase())} have no field "${l}" to filter by${o.length>0?`; they filter by ${G(o.map(p=>p.key))}`:""}.`};if(typeof r!="string"&&typeof r!="number"&&typeof r!="boolean")return{ok:!1,says:`The filter on "${l}" is ${Array.isArray(r)?"a list":r===null?"null":`a ${typeof r}`}; it keeps one value: a word, a number, or true or false.`};let f=String(r);if(f.trim().length===0)return{ok:!1,says:`The filter on "${l}" keeps nothing; give it a value, or leave "${l}" out.`};if(f.includes(","))return{ok:!1,says:`The filter on "${l}" holds a comma, which an address reads as a second filter; keep one value.`};if(u.options&&u.options.length>0&&!u.options.includes(f))return{ok:!1,says:`${u.label} has no choice "${f}"; its choices are ${G(u.options.map(p=>`"${p}"`))}.`};s.push(`${l}:${f}`)}return{ok:!0,filter:s.join(",")}}var C=e=>e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"");function F(e,n){let i=e.find(o=>o.as===n);if(i)return i;let a=n.trim().toLowerCase(),c=C(n);return e.find(o=>o.title!==void 0&&o.title.trim().toLowerCase()===a)??(c?e.find(o=>o.as===c||o.title!==void 0&&C(o.title)===c):void 0)}function Q(e){let n=[];for(let i of e){if(typeof i!="object"||i===null)continue;let{as:a,slug:c,title:o,kind:g}=i,y=typeof a=="string"&&a.length>0?a:typeof c=="string"&&c.length>0?c:void 0;!y||n.some(s=>s.as===y)||n.push({as:y,title:typeof o=="string"?o:y,kind:typeof g=="string"?g:""})}return n}var M=e=>` Its places: ${e.map(n=>typeof n=="string"?`"${n}"`:n.title&&n.title!==n.as?`"${n.as}" (${n.title})`:`"${n.as}"`).join(", ")||"none"}.`;var b=e=>`"${e.length>80?`${e.slice(0,79)}\u2026`:e}"`,O=(e,n)=>`${"place"in e?`The place ${b(e.place)}`:`${b(e.record)} is no record this viewer may see and`} is no place of this app: it goes nowhere.${M(n)}`;function S(e){let n={};for(let i of e.split(",")){let a=i.indexOf(":");a>0&&(n[i.slice(0,a).trim()]=i.slice(a+1).trim())}return n}function oe(e,n=new Set){return e.kinds.filter(i=>!n.has(i)).map(i=>({slug:E(e,i).slice(1),kind:i}))}function V(e,n){let i=[...new Set(n.places.map(f=>f.as))],a=n.lists.map(f=>f.slug).filter(f=>!i.includes(f)),c;if(e.section!==void 0&&e.section!==null){if(typeof e.section!="string"||D(e.section).length===0||e.section.length>120)return{ok:!1,says:`The section ${typeof e.section=="string"?b(e.section):"asked for"} names nothing on a page: a section is a heading's words or an element's id, like "shipping-soon". It goes nowhere.`};c=e.section}let o=c!==void 0?{section:c}:{};if("record"in e&&n.sees(e.record))return e.where!==void 0&&e.where!==null?{ok:!1,says:`${b(e.record)} is one record, and a filter narrows a list or a place: it goes nowhere. Go to { place, where } for a list narrowed.`}:{ok:!0,arrival:{record:e.record,...o}};let g="place"in e?e.place:e.record,y=F(n.places,g),s=y?void 0:n.lists.find(f=>f.slug===g||f.kind===g);if(!y&&!s)return{ok:!1,says:`${O(e,n.places.filter((f,p,$)=>$.findIndex(t=>t.as===f.as)===p))}${_(a)}`};let l=y?[y.kind]:[s.kind],r;if(e.where!==void 0&&e.where!==null){if(!n.schema)return{ok:!1,says:`The place ${b(g)} cannot be narrowed here: it goes nowhere.`};let f=q(n.schema,l,e.where,{through:s!==void 0});if(!f.ok)return{ok:!1,says:`The filter on ${b(g)} goes nowhere: ${f.says}`};r=f.filter}let u=r?{filter:r}:{};return{ok:!0,arrival:y?{place:y.as,...u,...o}:{list:s.kind,...u,...o}}}var _=e=>e.length===0?"":` Its lists: ${e.slice(0,8).map(n=>`"${n}"`).join(", ")}${e.length>8?` and ${e.length-8} more`:""}.`,U="http://www.w3.org/1999/xhtml",H="http://www.w3.org/2000/svg",Z=e=>{let n=e;return n.metaKey||n.ctrlKey||n.shiftKey||n.altKey||e.type==="click"&&typeof n.button=="number"&&n.button!==0};function se(e){let n=new WeakSet,i=new WeakSet,a=new WeakMap,c=new WeakMap,o=t=>V(t,{sees:e.sees,places:e.places(),lists:e.lists?.()??[],...e.schema?{schema:e.schema}:{}}),g=t=>{let d=o(t);return d.ok?e.onNavigate?.(d.arrival):e.onLost?.(d.says),d.ok},y=t=>{let d=t.getAttribute("data-record"),h=t.getAttribute("data-place"),k=t.getAttribute("data-filter"),w=t.getAttribute("data-section"),v={...k?{where:S(k)}:{},...w?{section:w}:{}};if(d)return{record:d,...v};if(h)return{place:h,...v}},s=t=>{if(!e.hrefOf)return;let d=y(t),h=d?o(d):void 0;return h?.ok?e.hrefOf(h.arrival):void 0},l=t=>t.hasAttribute("tabindex")?!1:(t.setAttribute("tabindex","0"),n.add(t),!0),r=t=>{n.delete(t)&&t.removeAttribute("tabindex")},u=t=>{i.delete(t)&&t.getAttribute("role")==="link"&&t.removeAttribute("role")},f=t=>{let d=a.get(t);d&&(a.delete(t),t.getAttribute("href")===d.href&&t.removeAttribute("href"),d.target!==null&&!t.hasAttribute("target")&&t.setAttribute("target",d.target))},p=t=>{let d=c.get(t);d&&(c.delete(t),r(d))},$={link(t){if(!N(t,[...t.querySelectorAll("input, select, textarea")].some(L))){if(!t.hasAttribute("data-graview-link"))return;t.removeAttribute("data-graview-link"),u(t),r(t),f(t),p(t);return}t.hasAttribute("data-graview-link")||t.setAttribute("data-graview-link","");let h=t.localName==="a"&&(t.namespaceURI===U||t.namespaceURI===H),k=t.getAttribute("href"),w=a.get(t),v=k!==null&&w?.href!==k,A=h&&!v?s(t):void 0;if(A!==void 0){k!==A&&t.setAttribute("href",A),a.set(t,{href:A,target:w?w.target:t.getAttribute("target")}),t.removeAttribute("target"),u(t),r(t);return}if(v?a.delete(t):f(t),R(t,t.querySelectorAll("a"))){u(t),r(t),p(t);return}if(!t.hasAttribute("role")&&(h||P(t))&&(t.setAttribute("role","link"),i.add(t)),t.localName==="tr"&&t.namespaceURI===U){r(t);let x=[...t.children].find(j=>j.localName==="td"||j.localName==="th");c.get(t)!==x&&p(t),x&&!c.has(t)&&l(x)&&c.set(t,x);return}t.localName!=="button"&&l(t)},refresh(t){for(let d of t.querySelectorAll("[data-record], [data-place], [data-graview-link]"))$.link(d)},pressed(t,d,h){if(t.type!=="click"&&!(t.type==="keydown"&&t.key==="Enter"))return!1;let k=T(d,h,w=>w.hasAttribute("data-graview-link"));return k?(t.stopPropagation(),a.has(k)&&Z(t)||(t.preventDefault(),$.follow(k)),!0):!1},follow(t){let d=y(t);d&&g(d)},go:g};return $}export{Q as a,M as b,b as c,O as d,S as e,oe as f,V as g,se as h};
|
|
@@ -1,4 +1,4 @@
|
|
|
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{c as sr}from"./chunk.
|
|
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{c as sr}from"./chunk.LKJ6FD6Y.js";import{G as R,Ga as O,Ma as hn,Na as vn,Oa as bn,Ra as U,T as S,Va as Q,a as Pe,ba as ce,ca as Y,e as Le,l as un,la as yn,m as fn,s as gn,ta as wn,v as re,z as mn}from"./chunk.DBMZ3AQB.js";import{a as C}from"./chunk.SDO3U72B.js";import{Bc as z,Bd as tn,Cc as Je,Cd as an,Dc as Xe,Dd as j,Fc as en,Gc as nn,Kd as on,Ld as sn,Md as ln,Nd as dn,Od as cn,Pd as Se,Td as pn,_a as Ue,ga as ze,ka as je,la as Ye,pb as Qe,uc as Ze,vd as de,wd as ne,xd as rn,zd as xe}from"./chunk.DIFR37EZ.js";import{b as v}from"./chunk.AJZBJBMO.js";var Ee=v(R(),1),kn=new WeakMap,pe=e=>{let n=kn.get(e);return n||kn.set(e,n={open:null,drawn:0,listeners:new Set}),n},lr=e=>{for(let n of[...e.listeners])n()},dr=0;function kt(e,n){let t=pe(e);t.open=n?{...n,at:++dr}:null,lr(t)}var xn=e=>n=>{let t=pe(e);return t.listeners.add(n),()=>void t.listeners.delete(n)};function Sn(e){let n=()=>e?pe(e).drawn>0:!1;return(0,Ee.useSyncExternalStore)(e?xn(e):cr,n,n)}var cr=()=>()=>{};function xt(e){let n=()=>pe(e).open;return(0,Ee.useSyncExternalStore)(xn(e),n,n)}var V=v(R(),1),Pn=v(sr(),1);function pr(e){let[n,t]=(0,V.useState)(null),[r,o]=(0,V.useState)(null);return(0,V.useLayoutEffect)(()=>{e.current!==r&&o(e.current)}),(0,V.useLayoutEffect)(()=>{if(!r||typeof ResizeObserver>"u")return;let a=()=>Math.round(r.getBoundingClientRect().width),i=a();t(i);let p=new ResizeObserver(()=>{let c=a();c!==i&&(i=c,(0,Pn.flushSync)(()=>t(c)))});return p.observe(r),()=>p.disconnect()},[r]),n}function ur(e=!0){let[n,t]=(0,V.useState)();return(0,V.useEffect)(()=>{if(!e)return t(void 0);let r=0,o=()=>t(innerHeight),a=()=>{o(),clearTimeout(r),r=window.setTimeout(o,300)},i=p=>{for(let[c,d]of[[window,"resize"],[window,"orientationchange"],[window.visualViewport,"resize"]])c?.[p](d,a)};return i("addEventListener"),o(),()=>{clearTimeout(r),i("removeEventListener")}},[e]),n}var ue={position:"absolute",width:1,height:1,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(50%)",whiteSpace:"nowrap"};var L=v(R(),1);var T=v(S(),1),Ln=6e3;function fr(){let e=[],n=0,t=new Set,r=new Map,o,a=()=>{for(let d of[...t])d()},i=d=>{if(clearTimeout(r.get(d.id)),r.delete(d.id),d.kind!=="toast")return;let u=(d.actions?.length??0)+(d.action?1:0),l=d.timeout??(u>0?!1:Ln);l!==!1&&r.set(d.id,setTimeout(()=>o?.()?i(d):p(d.id),l))},p=d=>{clearTimeout(r.get(d)),r.delete(d),e.some(u=>u.id===d)&&(e=e.filter(u=>u.id!==d),a())},c=d=>{e=e.some(u=>u.id===d.id)?e.map(u=>u.id===d.id?d:u):[...e,d],i(d),a()};return{notify(d){let u=d.id??`notice-${++n}`;return c({...d,id:u,said:++n}),{id:u,dismiss:()=>p(u),update:l=>{let g=e.find(w=>w.id===u);g&&c({...g,...l,id:u,kind:g.kind,said:l.sentence!==void 0&&l.sentence!==g.sentence?++n:g.said})}}},dismiss:p,hold(d){o=d},list:()=>e,subscribe(d){return t.add(d),()=>t.delete(d)}}}function gr({notices:e}){let n=e.reduce((p,c)=>!p||c.said>p.said?c:p,void 0),[t,r]=(0,L.useState)(""),[o,a]=(0,L.useState)(""),i=(0,L.useRef)(0);return(0,L.useEffect)(()=>{if(!n||n.said===i.current)return;i.current=n.said;let p=n.tone==="bad";(p?a:r)("");let c=setTimeout(()=>(p?a:r)(n.sentence),50);return()=>clearTimeout(c)},[n]),(0,T.jsxs)(T.Fragment,{children:[(0,T.jsx)("div",{role:"status","aria-live":"polite","data-testid":"notices-said",style:ue,children:t}),(0,T.jsx)("div",{role:"alert","data-testid":"notices-alarm",style:ue,children:o})]})}var mr=(0,L.createContext)(null);function yr({board:e,anchor:n}){let t=(0,L.useSyncExternalStore)(e.subscribe,e.list,e.list);return(0,L.useEffect)(()=>vr(Ae.prefetch),[]),(0,T.jsxs)(T.Fragment,{children:[t.length>0?(0,T.jsx)(L.Suspense,{fallback:null,children:(0,T.jsx)(hr,{notices:t,anchor:n,board:e})}):null,(0,T.jsx)(gr,{notices:t})]})}var Ae=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.MB7LKKUD.js","./chunk.JQFIZRAZ.js","./chunk.LKJ6FD6Y.js","./chunk.DBMZ3AQB.js","./chunk.SDO3U72B.js","./chunk.DIFR37EZ.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.KYOI7BG3.js")))),wr=()=>Ae.load().then(()=>{},()=>{}),hr=Ae.part((e,n)=>(0,T.jsx)(e.NoticeStacks,{...n}),{quiet:!0});function vr(e){let n=()=>{(typeof navigator>"u"||navigator.onLine!==!1)&&e()},t=globalThis;if(t.requestIdleCallback){let o=t.requestIdleCallback(n,{timeout:5e3});return()=>t.cancelIdleCallback?.(o)}let r=setTimeout(n,2500);return()=>clearTimeout(r)}var M=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.BPEUHOKH.js","./chunk.C5EFUODO.js","./chunk.UGOKORIF.js","./chunk.4BRM5SGO.js","./chunk.DJ4A76SX.js","./chunk.VDS3IOTK.js","./chunk.YS5U3DUX.js","./chunk.SAJLIA5M.js","./chunk.I2NI7CT7.js","./chunk.MBLFZF5R.js","./chunk.GZHZLJBF.js","./chunk.QPL3OXW3.js","./chunk.OJGHDWI6.js","./chunk.FRERJWZJ.js","./chunk.RQX4CQJN.js","./chunk.LUIRQ5UF.js","./chunk.N33WUCAN.js","./chunk.JQFIZRAZ.js","./chunk.LKJ6FD6Y.js","./chunk.DBMZ3AQB.js","./chunk.SDO3U72B.js","./chunk.DIFR37EZ.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.534TBZJ3.js"))));var y=v(R(),1);var Tn=v(R(),1);var En=v(R(),1);function Te(e){return(0,En.useMemo)(()=>e===void 0||e===""?void 0:{__html:e},[e])}var $=v(S(),1);function He({brand:e,size:n=22}){let t=en(e),r=An(t?.light),o=r?An(t?.dark):void 0,a=Te(r!==void 0&&z(r)?r:void 0),i=Te(o!==void 0&&z(o)?o:void 0),p={display:"inline-flex",flex:"0 0 auto",height:n,color:"var(--graview-accent)"},c=nn(e);if(c)return(0,$.jsx)("span",{className:"graview-logo graview-emoji-mark","data-testid":"app-mark","aria-hidden":!0,style:{...p,alignItems:"center",fontSize:`${n*.86/16}rem`,lineHeight:1},children:c});if(!r)return null;let d=e?.logoAlt??e?.name??"",u=d!==""&&d!==e?.name,l=u?{role:"img","aria-label":d}:{"aria-hidden":!0};if(o){let w=(h,x,b)=>z(h)?(0,$.jsx)("span",{className:"graview-logo-face","data-graview-scheme-only":b,dangerouslySetInnerHTML:x}):(0,$.jsx)("img",{className:"graview-logo-face","data-graview-scheme-only":b,src:h,alt:""});return(0,$.jsxs)("span",{className:"graview-logo","data-testid":"app-mark",style:p,...l,children:[w(r,a,"light"),w(o,i,"dark")]})}let g=t?.darkFallback==="invert"?{"data-graview-logo-fallback":"invert"}:{};return z(r)?(0,$.jsx)("span",{className:"graview-logo","data-testid":"app-mark",style:p,...g,...l,dangerouslySetInnerHTML:a}):(0,$.jsx)("img",{className:"graview-logo","data-testid":"app-mark",src:r,alt:u?d:"",...g,style:{...p,width:"auto"}})}function An(e){if(!(!e||!Xe(e)))return z(e)&&Je(e)!==null?void 0:e}function br(e){(0,Tn.useEffect)(()=>{if(!e||typeof document>"u")return;let n=[...document.querySelectorAll('link[rel~="icon"]')],t=n.map(o=>o.getAttribute("href")),r;n.length===0&&(r=document.createElement("link"),r.rel="icon",r.setAttribute("data-graview-favicon",""),document.head.appendChild(r),n.push(r));for(let o of n)o.href=e;return()=>{r&&r.remove(),n.forEach((o,a)=>{o!==r&&t[a]!==null&&t[a]!==void 0&&o.setAttribute("href",t[a])})}},[e])}var s=v(S(),1),kr=M.part((e,n)=>(0,s.jsx)(e.TidyFoot,{...n}),{quiet:!0}),xr=M.part((e,n)=>(0,s.jsx)(e.Here,{...n}),{quiet:!0});function Sr(){let e=Y(),[n,t]=(0,y.useState)("");return(0,y.useEffect)(()=>e?.store.subscribe((r,o)=>{o.some(a=>a.author.id!==e.principal.id)&&M.load().then(a=>a.sayTheirChange(o,e,t),String)}),[e]),(0,s.jsx)("span",{role:"status",className:"graview-bar-said",children:n})}var Hn="home",Bn="/",q="scene:whole";function Pr(e){let{store:n,principal:t,views:r}=e,o=n.kindsKeptFrom(t),a=n.schema.kinds.filter(f=>!n.modules.disabledKinds.has(f)&&!o.has(f)),i=r?.arrangement?.(),p=r?.places()??[],c=dn(i,n.schema,p),d=ln(n.schema,i,[...n.modules.administered.values()].flatMap(f=>f.kinds??[])),u=(f,P)=>(!n.graph.size.nodes||n.graph.count(f)>0)&&(c?P?c.places.has(`${f}|${P}`):c.kinds.has(f):!d.has(f)),l=[{key:Hn,label:"Home",path:Bn,group:"home",primary:!0}],g=p.filter(f=>a.includes(f.kind)&&f.as!==cn),w=g.filter(f=>!f.hidden),h=new Set(ne(w).map(f=>j(f,p,n.schema).toLowerCase())),x=f=>tn(f.as,an(f,p)?xe(n.schema,f.kind).slice(1):void 0),b=new Set(i?.hide??[]),H=pn(a,i?.order,w);for(let{kind:f,view:P}of H){if(P){l.push({key:`place:${P.kind}:${P.as}`,label:j(P,p,n.schema),path:x(P),group:"lists",kind:f,primary:c?c.places.has(`${f}|${P.as}`):!0});continue}let W=je(n.schema,f),B=h.has(W.toLowerCase());l.push({key:`kind:${f}`,label:B?Ye(n.schema,f):W,path:xe(n.schema,f),group:"lists",kind:f,primary:B||b.has(f)?!1:u(f),...b.has(f)?{hidden:!0}:{}})}for(let f of ne(g)){if(H.some(B=>B.view&&de(B.view,f)))continue;let P=x(f),W=[f.kind,...f.over??[]].some(B=>a.includes(B)&&u(B,f.as));l.some(B=>B.path===P)||l.push({key:`place:${f.kind}:${f.as}`,label:j(f,p,n.schema),path:P,group:"pictures",kind:f.kind,primary:W,hidden:f.hidden})}return a.some(f=>Object.keys(n.schema.tryDefinition(f)?.edges??{}).length>0)&&l.push({key:"connections",label:"Connections",path:"/map",group:"pictures",primary:!1}),l}function Lr(e,n){let[t="/",r=""]=n.split("?"),o=e.find(i=>i.path===(r?`${t}?${r}`:t))??e.find(i=>i.path===t);if(o)return o.key;let a=`/${t.split("/").filter(Boolean)[0]??""}`;return e.find(i=>i.group==="lists"&&i.path===a)?.key??null}var Nn=(0,y.createContext)(null),Er=()=>(0,y.useContext)(Nn),Z=30,Mn=48,te=640,Me=4,Be=2;function Cn(e){let{widths:n,current:t,room:r,more:o,gap:a=Me,primary:i,most:p=sn}=e;if(n.length===0||!(r>0)||!(o>0)||n.some(l=>!(l>0)))return null;let c=(l,g)=>l.reduce((w,h)=>w+n[h],0)+a*Math.max(0,l.length-1)+(g?a+o:0),d=(l,g)=>t<0||!l.includes(t)||l.slice(0,g).includes(t)?l.slice(0,g):[...l.filter(w=>w!==t).slice(0,g-1),t].sort((w,h)=>w-h),u=d(n.map((l,g)=>g).filter(l=>i?.[l]!==!1||l===t),p);if(c(u,u.length<n.length)<=r)return u.length>=Be?u:null;for(let l=u.length-1;l>=Be;l--){let g=d(u,l);if(c(g,!0)<=r)return g}return null}var Ar=`
|
|
2
2
|
.graview-bar{display:block;margin:0;padding:0;container:graview-bar/inline-size;flex:0 0 auto;position:relative;background:var(--graview-bar);border-bottom:1px solid var(--graview-edge);color:var(--graview-ink);font-family:var(--graview-font-body,system-ui)}
|
|
3
3
|
.graview-bar-row{display:flex;flex-wrap:nowrap;align-items:center;gap:16px;height:${Mn-1}px;margin:0;padding:0 16px}
|
|
4
4
|
.graview-bar-home,.graview-bar-face,.graview-bar-place,.graview-bar-item,.graview-bar-at{display:inline-flex;align-items:center;box-sizing:border-box;min-width:0;margin:0;border:0;background:none;box-shadow:none;font:inherit;letter-spacing:normal;text-transform:none;text-decoration:none;color:var(--graview-ink);cursor:pointer;text-align:left}
|
|
@@ -64,4 +64,4 @@ var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=gl
|
|
|
64
64
|
@container graview-bar (max-width: 300px){
|
|
65
65
|
.graview-bar-row{gap:4px;padding:0 10px}
|
|
66
66
|
}`,J={display:"inline-flex",alignItems:"center",justifyContent:"center",gap:6,minWidth:Z,height:Z,padding:0,borderRadius:8,border:"1px solid transparent",background:"none",boxShadow:"none",color:"var(--graview-ink-muted)",font:"inherit",fontSize:"0.875rem",cursor:"pointer",flex:"0 0 auto"};function Tr({brand:e,name:n,heading:t=1,home:r,faces:o,places:a,current:i,reach:p,tools:c,find:d=!0,description:u,findBox:l,onFind:g,switch:w="words",scenePlaces:h,skips:x,named:b=!0}){let H=(0,y.useRef)(null),De=Y()?.who.size,[f,P]=(0,y.useState)(null),[W,B]=(0,y.useState)(null),[A,Un]=(0,y.useState)(!1),[Qn,Ie]=(0,y.useState)(!1),[Zn,Jn]=(0,y.useState)(!0),[$e,Xn]=(0,y.useState)(null),oe=o?o.pages.current:!h,ee=oe?{places:a,current:i,reach:p}:h,he=ee&&{...ee,places:rn(ee.places),here:ee.places.find(m=>m.key===ee.current)?.label},k=he&&he.places.length>0?he:null,ve=k?k.places.findIndex(m=>m.key===k.current):-1,_e=!!o&&w==="words",Ke=k?k.places.map(m=>m.primary===!1?"0":"1").join(""):"",I=(0,y.useCallback)(()=>{let m=H.current;if(!m)return;let N=$r(m,ve,_e,Ke);N!==void 0&&Xn(N);let G=N?!0:Br(m);G!==null&&Jn(G)},[ve,_e,Ke]);(0,y.useLayoutEffect)(()=>{let m=H.current;if(!m)return;let N=()=>{let le=m.getBoundingClientRect().width;Un(le<te),m.style.setProperty("--graview-bar-width",`${Math.round(le)}px`),I()};N();let G=typeof document>"u"?void 0:document.fonts;if(G?.ready.then(I),G?.addEventListener?.("loadingdone",I),typeof ResizeObserver>"u")return()=>G?.removeEventListener?.("loadingdone",I);let ke=new ResizeObserver(N);ke.observe(m);for(let le of m.querySelectorAll(".graview-bar-tools > *"))ke.observe(le);return()=>{ke.disconnect(),G?.removeEventListener?.("loadingdone",I)}},[I]);let be=(0,y.useRef)(g);be.current=g,(0,y.useLayoutEffect)(()=>{be.current?.(d&&f?{slot:f,compact:A,own:W}:null)},[d,f,A,W]),(0,y.useLayoutEffect)(()=>()=>be.current?.(null),[]);let er=(0,y.useCallback)(()=>{Ie(!0),requestAnimationFrame(()=>f?.querySelector("input")?.focus())},[f]),We=(0,y.useRef)(null),ie=(0,y.useRef)(!1),Ge=(0,y.useCallback)(()=>{Ie(!1),ie.current&&(ie.current=!1,requestAnimationFrame(()=>We.current?.focus()))},[]),nr=t===!1?"span":`h${t}`,rr=r.href!==void 0?"a":"button",tr=m=>N=>{!m||!On(N)||(N.preventDefault(),m())},ar=!oe,qe=k&&!A&&$e!==null&&!(ve<0&&k.here)?$e.split(",").map(Number).filter(m=>m<k.places.length):null,se=k?(0,s.jsx)(Dr,{places:k.places,current:k.current,here:k.here,reach:k.reach,scene:ar,stands:qe}):null,or=k?k.places.map(m=>m.label).join(`
|
|
67
|
-
`):"";(0,y.useLayoutEffect)(I,[I,n,e,or,k?.current,oe,A,w,d]);let ir=w==="icons"||!Zn||A?"icons":"words";return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("header",{ref:H,className:"graview-bar","data-testid":"app-bar","data-graview-app-bar":"",...Qn&&A?{"data-finding":""}:{},children:[(0,s.jsx)("style",{children:Ar}),x,(0,s.jsxs)("div",{className:"graview-bar-row",children:[b?(0,s.jsx)("div",{className:"graview-bar-app",children:(0,s.jsx)(nr,{className:"graview-bar-name",children:(0,s.jsxs)(rr,{...r.href!==void 0?{href:r.href,onClick:tr(r.go)}:{type:"button",onClick:r.go},"data-testid":"app-home",...r.current?{"aria-current":"page"}:{},title:u?`${n} \u2014 ${u}`:`${n} \u2014 home`,className:"graview-bar-home",children:[(0,s.jsx)(He,{brand:e,size:20}),(0,s.jsx)("span",{className:"graview-bar-app-name","data-testid":"app-name",children:n})]})})}):null,o?(0,s.jsx)(Hr,{faces:o,form:w,drawn:ir}):null,(0,s.jsx)("div",{className:"graview-bar-mid",...qe?{"data-places":"standing"}:!A&&se?{"data-place":""}:{},children:A?null:se}),!A&&k&&k.places.length>1?(0,s.jsxs)("span",{className:"graview-bar-ruler","aria-hidden":"true","data-graview-bar-ruler":"",children:[k.places.map(m=>(0,s.jsx)("span",{className:"graview-bar-at",children:m.label},m.key)),(0,s.jsxs)("span",{className:"graview-bar-at",children:[Ne,(0,s.jsx)(Vn,{})]})]}):null,b?(0,s.jsx)("span",{className:"graview-bar-ruler","aria-hidden":"true",children:(0,s.jsx)("span",{className:"graview-bar-name",children:n})}):null,(0,s.jsxs)("div",{className:"graview-bar-tools",children:[d?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("button",{type:"button",className:"graview-bar-find-open",ref:We,"data-testid":"app-find-open","aria-label":"Find",title:"Find",onClick:er,style:{...J,display:void 0},children:(0,s.jsx)(Rr,{})}),(0,s.jsxs)("div",{className:"graview-bar-find","data-testid":"app-find",onBlur:m=>{let N=m.relatedTarget;N instanceof Node&&m.currentTarget.contains(N)||m.currentTarget.querySelector("input")?.value||Ge()},onKeyDownCapture:m=>{m.key==="Escape"&&A&&(ie.current=!0)},onKeyDown:m=>{m.key!=="Escape"||!A||(!m.defaultPrevented||!m.currentTarget.querySelector("input")?.value?Ge():ie.current=!1)},children:[(0,s.jsx)("div",{ref:P,className:"graview-bar-find-slot",children:l}),(0,s.jsx)(Mr,{})]})]}):null,(0,s.jsx)("div",{ref:B,className:"graview-bar-own","data-graview-bar-own":""}),De?(0,s.jsx)(y.Suspense,{fallback:null,children:(0,s.jsx)(xr,{scene:!oe,compact:A})}):null,(0,s.jsx)(Sr,{}),c]})]})]}),A&&se?(0,s.jsx)("div",{className:"graview-bar-line","data-graview-place-line":"","data-testid":"app-place-line",children:se}):null]})}function Hr({faces:e,form:n,drawn:t}){let r=o=>{let a=e[o];return(0,s.jsxs)("button",{type:"button",className:"graview-bar-face","data-testid":`app-face-${o}`,"aria-pressed":a.current,title:a.label,...a.reach&&!a.current?{onPointerEnter:a.reach,onPointerDown:a.reach,onFocus:a.reach}:{},onClick:()=>{a.current||a.go()},children:[o==="scene"?(0,s.jsx)(Fn,{}):(0,s.jsx)(Cr,{}),(0,s.jsx)("span",{children:a.label})]})};return(0,s.jsxs)("div",{className:"graview-bar-faces",role:"group","aria-label":`${e.scene.label} or ${e.pages.label}`,"data-testid":"app-faces","data-switch":n,"data-switch-drawn":t,children:[r("scene"),r("pages")]})}function Br(e){let n=e.querySelector(".graview-bar-faces"),t=e.querySelector(".graview-bar-mid"),r=e.querySelector(".graview-bar-find");if(!n||!t||r?.matches(":focus-within")||e.getBoundingClientRect().width<te)return null;let a=In(n),i=t.querySelector(".graview-bar-place-words"),p=i?parseFloat(getComputedStyle(i).fontSize)||14:0,c=i?Math.min(i.scrollWidth+34,14*p):0,d=Rn(e);if(d===null)return!1;let u=t.getBoundingClientRect().width-c-d;if(r&&r.getBoundingClientRect().width>0){let l=parseFloat(getComputedStyle(r).flexBasis);isFinite(l)&&(u-=Math.max(0,l-r.getBoundingClientRect().width))}return n.getAttribute("data-switch-drawn")==="icons"?u>=a+2:u>=-1}function Rn(e){let n=e.querySelector(".graview-bar-app"),t=e.querySelector(".graview-bar-ruler>.graview-bar-name");if(!n||!t)return 0;let r=i=>i?.getBoundingClientRect().width??0,o=r(n.firstElementChild)-r(e.querySelector(".graview-bar-app-name"))+r(t)+2,a=parseFloat(getComputedStyle(n).maxWidth)/100*(n.parentElement.clientWidth-2*n.offsetLeft)||1/0;return o>a+.5?null:Math.max(0,o-r(n))}var On=e=>e.button===0&&!(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey);function Nr(){let e=globalThis.navigator?.platform??"";return/Mac|iPhone|iPad|iPod/.test(e)?"\u2318K":"Ctrl K"}function Mr(){let e=Sn(Y()?.aiDesk);return(0,s.jsx)("span",{className:"graview-bar-find-keys","data-testid":"app-find-keys","aria-hidden":"true",children:e?"/":Nr()})}function ae({size:e,box:n=e,children:t}){return(0,s.jsx)("svg",{width:e,height:e,viewBox:`0 0 ${n} ${n}`,"aria-hidden":"true",focusable:"false",style:{flex:"0 0 auto"},children:t})}function Fn(){return(0,s.jsxs)(ae,{size:14,children:[(0,s.jsx)("path",{d:"M7 1.5 L12.5 4.5 L7 7.5 L1.5 4.5 Z",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinejoin:"round"}),(0,s.jsx)("path",{d:"M1.5 7.5 L7 10.5 L12.5 7.5",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinejoin:"round",strokeLinecap:"round"})]})}function Cr(){return(0,s.jsxs)(ae,{size:14,children:[(0,s.jsx)("rect",{x:"2.25",y:"1.75",width:"9.5",height:"10.5",rx:"1.5",fill:"none",stroke:"currentColor",strokeWidth:"1.3"}),(0,s.jsx)("path",{d:"M4.5 5 H9.5 M4.5 7.25 H9.5 M4.5 9.5 H7.5",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round"})]})}function Vn(){return(0,s.jsx)(ae,{size:10,children:(0,s.jsx)("path",{d:"M2 3.5 L5 6.5 L8 3.5",fill:"none",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})})}function Rr(){return(0,s.jsxs)(ae,{size:16,children:[(0,s.jsx)("circle",{cx:"7",cy:"7",r:"4.75",fill:"none",stroke:"currentColor",strokeWidth:"1.5"}),(0,s.jsx)("path",{d:"M10.5 10.5 L14 14",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}function Or({place:e}){if(e.key===q)return(0,s.jsx)(Fn,{});if(e.group==="home")return(0,s.jsx)(ae,{size:13,box:14,children:(0,s.jsx)("path",{d:"M2 6.5 L7 2 L12 6.5 V12 H2 Z",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinejoin:"round"})});let n=e.kind?`hsl(${Math.round(Ze(e.kind))} 55% 52%`:"rgb(128 128 128";return(0,s.jsx)("span",{"aria-hidden":"true",style:{display:"inline-block",width:12,height:8,clipPath:"polygon(50% 0, 100% 50%, 50% 100%, 0 50%)",background:e.group==="lists"?`${n})`:`linear-gradient(${n}), ${n})) center / 6px 4px no-repeat, ${n} / 0.35)`}})}var Fr=[{group:"home"},{group:"lists",heading:"Lists"},{group:"pictures",heading:"Pictures"}],Ne="More";function Dn({place:e,current:n,reach:t,standing:r,done:o}){let a=e.key===n,i=t.href?.(e.path);return(0,s.jsxs)(i!==void 0?"a":"button",{className:r?"graview-bar-at":"graview-bar-item","data-testid":`app-place-${e.key}`,"data-place-path":e.path,...a?{"aria-current":"page"}:{},...i!==void 0?{href:i}:{type:"button"},onClick:c=>{o(),t.go&&(i!==void 0&&!On(c)||(c.preventDefault(),t.go(e)))},children:[r?null:(0,s.jsx)("span",{className:"graview-bar-mark",children:(0,s.jsx)(Or,{place:e})}),r&&a?(0,s.jsx)("span",{"data-testid":"app-place-current",children:e.label}):(0,s.jsx)("span",{children:e.label})]})}function Vr({places:e,current:n,reach:t,id:r,done:o}){return(0,s.jsx)(s.Fragment,{children:Fr.map(({group:a,heading:i})=>{let p=e.filter(d=>d.group===a);if(p.length===0)return null;let c=`${r}-${a}`;return(0,s.jsxs)("div",{role:"group",...i?{"aria-labelledby":c}:{"aria-label":p[0].label},"data-place-group":a,children:[i?(0,s.jsx)("p",{id:c,children:i}):null,(0,s.jsx)("ul",{children:p.map(d=>(0,s.jsx)("li",{children:(0,s.jsx)(Dn,{place:d,current:n,reach:t,standing:!1,done:o})},d.key))})]},a)})})}function Dr({places:e,current:n,here:t,reach:r,scene:o,stands:a}){let i=Q("places"),p=(0,y.useRef)(a);i.open||(p.current=a);let c=p.current,u=e.find(b=>b.key===n)?.label??t??"Places",l=c?e.filter((b,H)=>!c.includes(H)):e,g=Ir(e,n,o),w=Y(),h=w?.keptViews?.current(),x=!!(h&&(h.removed.length>0||w.views.places().some(b=>b.hidden)||h.may.lenses&&(w.views.arrangement?.()?.hide?.length??0)>0));return(0,s.jsxs)("nav",{className:c?"graview-bar-places":"graview-bar-place-at","aria-label":o?"What the scene shows":"The app\u2019s places",...c?{"data-testid":"app-places-standing"}:{},...g,children:[c?.map(b=>(0,s.jsx)(Dn,{place:e[b],current:n,reach:r,standing:!0,done:()=>{}},e[b].key)),l.length>0||x?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("button",{type:"button",className:c?"graview-bar-at":"graview-bar-place","data-testid":"app-places-open",...i.trigger,onClick:i.toggle,"aria-label":c?`${Ne} \u2014 ${l.length} more ${o?"pictures":"places"}`:`${u} \u2014 ${o?"everything the scene shows":"every place"}`,title:c?l.map(b=>b.label).join(", "):u,children:[c?Ne:(0,s.jsx)("span",{className:"graview-bar-place-words","data-testid":"app-place-current",children:u}),(0,s.jsx)(Vn,{})]}),(0,s.jsxs)("div",{...i.pane,"data-testid":"app-places",hidden:!i.open,className:"graview-bar-list",style:U,children:[(0,s.jsx)(Vr,{places:l,current:n,reach:r,id:i.pane.id,done:()=>i.setOpen(!1)}),x&&i.open?(0,s.jsx)(y.Suspense,{fallback:null,children:(0,s.jsx)(kr,{id:i.pane.id,scene:o,reach:r,done:()=>i.setOpen(!1)})}):null]})]}):null]})}function Ir(e,n,t){let r=Y()?.setMenuAt,o=a=>{let i=a.target.closest?.("[data-place-path],[data-testid=app-places-open]");if(!i||!r)return;let p={at:0};a.type==="pointerdown"?document.addEventListener("pointerup",()=>p.at||=Date.now(),{once:!0}):a.preventDefault();let c=a.nativeEvent;M.load().then(d=>d.placeGesture(c,i,e,n,t,r,p),String)};return{onContextMenu:a=>a.shiftKey||o(a),onKeyDown:a=>(a.key==="ContextMenu"||a.key==="F10"&&a.shiftKey)&&o(a),onPointerDown:a=>a.pointerType!=="mouse"&&a.isPrimary&&o(a)}}function $r(e,n,t,r){let o=e.querySelector("[data-graview-bar-ruler]"),a=e.querySelector(".graview-bar-mid");if(!o||!a)return null;let i=e.querySelector(".graview-bar-find");if(i?.matches(":focus-within"))return;if(e.getBoundingClientRect().width<te)return null;let p=Rn(e);if(p===null)return null;let c=[...o.children].map(H=>H.getBoundingClientRect().width),d=c.pop()??0,u=e.querySelector(".graview-bar-faces"),l=u&&t?In(u):0,g=u?.getAttribute("data-switch-drawn")==="words"?l:0,w=a.getBoundingClientRect().left+p,h=i?.getBoundingClientRect(),x=h&&h.width>0?h.right-w-(parseFloat(getComputedStyle(i).minWidth)||0)-16:a.getBoundingClientRect().width-p,b=[...r].map(H=>H!=="0");return Cn({widths:c,current:n,room:Math.floor(x+g-l),more:d,primary:b})?.join(",")??null}function In(e){return[...e.querySelectorAll(".graview-bar-face span")].reduce((n,t)=>n+t.scrollWidth+10,0)}var _r=e=>`graview:lenses:${e}`,Kr=(e,n)=>e?.name??n.kinds.join(",");function Ce(e){try{let n=JSON.parse(localStorage.getItem(_r(e))??"[]");return Array.isArray(n)?n.filter(t=>typeof t?.title=="string"&&typeof t.lens=="string"):[]}catch{return[]}}var _=v(R(),1);var E=v(S(),1);function Wr({scheme:e,onScheme:n,profileHref:t,keeping:r,hostActions:o=Gr,signature:a=!1}){let{store:i,principal:p,seats:c,people:d}=ce(),u=Q("profile"),l=u.open,[g,w]=(0,_.useState)(!1);(0,_.useEffect)(()=>jr(fe),[]),l&&!g&&w(!0),(0,_.useEffect)(()=>{l&&fe()},[l]);let h=p.id===void 0?void 0:i.graph.getNode(p.id),x=h===void 0?p.id===void 0?"Nobody in particular":Ue(p,{graph:i.graph,schema:i.schema,seats:c,people:d}):ze(i.schema.tryDefinition(h.kind),h);return(0,E.jsxs)("div",{style:{position:"relative"},children:[(0,E.jsx)("button",{type:"button","data-testid":"profile-button",...u.trigger,onClick:u.toggle,onPointerEnter:fe,onFocus:fe,"aria-label":`${x} \u2014 you, your seat and your settings`,title:`${x} \u2014 you, your seat and your settings`,style:{...J,borderRadius:999},children:(0,E.jsx)("span",{"aria-hidden":"true","data-testid":"profile-mark",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:Z-4,height:Z-4,borderRadius:999,fontSize:"0.8125rem",fontWeight:600,background:"var(--graview-panel-muted)",color:"var(--graview-ink)",border:"1px solid var(--graview-edge)"},children:Yr(x)})}),(0,E.jsxs)("section",{...u.pane,"aria-label":"Profile","data-testid":"profile","data-graview-offstage":"",hidden:!l,style:{...U,width:280,maxWidth:"calc(100vw - 32px)",maxHeight:"min(62cqh, 520px)",overflowY:"auto",overflowX:"hidden",display:l?"grid":"none",gap:12,padding:12,borderRadius:10,border:"1px solid var(--graview-edge)",background:"var(--graview-float)",boxShadow:"var(--graview-lift-high)"},children:[g?(0,E.jsx)(_.Suspense,{fallback:null,children:(0,E.jsx)(qr,{part:"top",name:x,me:h,profileHref:t,hostActions:o,close:()=>u.setOpen(!1)})}):null,(0,E.jsxs)("div",{className:"graview-profile-keeping","data-testid":"profile-keeping",style:Qr,children:[(0,E.jsx)("span",{style:Ur,children:"Keeping this app"}),r]}),g?(0,E.jsx)(_.Suspense,{fallback:null,children:(0,E.jsx)(zr,{part:"rest",name:x,me:h,scheme:e,onScheme:n,hostActions:o,signature:a,close:()=>u.setOpen(!1)})}):null]})]})}var Gr=[],fe=()=>M.prefetch(),qr=M.part((e,n)=>(0,E.jsx)(e.ProfilePane,{...n}),{what:"The rest of your menu"}),zr=M.part((e,n)=>(0,E.jsx)(e.ProfilePane,{...n}),{quiet:!0});function jr(e){let n=()=>{(typeof navigator>"u"||navigator.onLine!==!1)&&e()},t=globalThis;if(t.requestIdleCallback){let o=t.requestIdleCallback(n,{timeout:5e3});return()=>t.cancelIdleCallback?.(o)}let r=setTimeout(n,2500);return()=>clearTimeout(r)}function Yr(e){return(e.trim()[0]??"?").toUpperCase()}var Ur={fontSize:"0.75rem",letterSpacing:"0.14em",textTransform:"uppercase",color:"var(--graview-ink-faint)"},Qr={paddingTop:10,borderTop:"1px solid var(--graview-edge)"};function Zr(e){return!(e==="hidden"||e===!1)}var Re=v(R(),1);var $n="The whole thing",ge=e=>`scene:${e.kind}:${e.as}`;function _n(e){let{view:n}=e,t=e.places.filter(l=>!e.hidden.has(l.kind)),r=ne(t),o=(l,g)=>{if(l===q)return un(fn(g,!0),"view",null);let w=r.find(h=>ge(h)===l);return w?mn(g,w.over?.find(h=>g.focusId===re(h))??w.kind,w.as):null},a=n.within?.view,i=l=>n.focusId===re(l.kind)&&(a===void 0?t.filter(g=>g.kind===l.kind).at(-1)===l:a===l.as),p=t.find(l=>i(l)&&(a!==void 0||!n.overview)),c=p?r.find(l=>de(l,p)):void 0,d=r.filter(l=>!l.hidden||l===c);return{places:[{key:q,label:$n,path:`${Se}${Le(o(q,Pe))}`,group:"home"},...d.map(l=>({key:ge(l),label:j(l,t,e.schema),path:`${Se}${Le(o(ge(l),Pe))}`,group:"pictures",kind:l.kind,hidden:l.hidden}))],current:c?ge(c):q,to:o}}function Jr(){let{store:e,views:n,hiddenKinds:t}=ce(),{view:r,go:o}=bn(),a=n.places(),i=(0,Re.useMemo)(()=>_n({places:a,hidden:t,view:r,schema:e.schema}),[a,t,r,e.schema]),p=(0,Re.useMemo)(()=>({go:c=>{let d=i.to(c.key,r);d&&o(d)}}),[i,r,o]);return{places:i.places,current:i.current,reach:p}}var X=v(R(),1);var F=v(S(),1),Xr=M.part((e,n)=>(0,F.jsx)(e.ProblemRows,{...n}),{what:"The problems",as:"li"}),Oe=()=>M.prefetch();function et({clean:e="All rules hold"}){let n=vn(),{set:t}=hn(),r=n.length,[o,a]=(0,X.useState)(!1),i=Q("problems",{open:o&&r>0,onOpenChange:a}),p=i.open,c=Wn(n,e);return(0,X.useEffect)(()=>{if(r===0)return;let d=setTimeout(Oe,1500);return()=>clearTimeout(d)},[r>0]),(0,F.jsxs)("div",{style:{position:"relative",display:"inline-flex"},children:[(0,F.jsxs)("button",{type:"button","data-testid":"standing",...i.trigger,"aria-disabled":r===0?!0:void 0,"aria-label":c,onClick:r===0?void 0:i.toggle,onPointerEnter:r===0?void 0:Oe,onFocus:r===0?void 0:Oe,title:c,style:{...J,padding:r===0?0:"0 8px",cursor:r===0?"default":"pointer",color:r===0?"var(--graview-ink-muted)":Kn(n),fontVariantNumeric:"tabular-nums",fontWeight:600},children:[(0,F.jsx)(Gn,{tone:r===0?"var(--graview-good)":Kn(n)}),r>0?(0,F.jsx)("span",{"aria-hidden":"true",children:r}):null]}),p?(0,F.jsx)("ol",{...i.pane,"data-testid":"problems",style:{...U,width:300,maxHeight:"min(48cqh, 420px)",overflow:"auto",margin:0,padding:4,listStyle:"none",display:"grid",borderRadius:10,border:"1px solid var(--graview-edge)",background:"var(--graview-float)",boxShadow:"var(--graview-lift-high)"},children:(0,F.jsx)(X.Suspense,{fallback:null,children:(0,F.jsx)(Xr,{violations:n,pick:d=>{t(d.nodeIds),i.setOpen(!1)}})})}):null]})}function Wn(e,n){return e.length===0?n:`${Qe(e)} \u2014 open what is broken, and what would fix it`}var Kn=e=>e.some(n=>n.status==="could-not-judge"||n.status==="over-budget")?"var(--graview-bad)":"var(--graview-warn)";function Gn({tone:e}){return(0,F.jsx)("span",{"aria-hidden":"true",style:{width:8,height:8,borderRadius:999,flex:"0 0 auto",background:e}})}function nt(e,n,t=[]){if(e.focusId)return e.focusId;let o=(e.selection??[]).map(gn).find(a=>a!==null)??t.find(a=>n.includes(a))??n[0]??null;return o===null?null:re(o)}var ye=v(S(),1),me=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.INBHY3SA.js","./chunk.TDV7JGIQ.js","./chunk.RZQKCLTW.js","./chunk.Y3BEKXYB.js","./chunk.WUFCRE7O.js","./chunk.XEHLSKHP.js","./chunk.MSM6E6JK.js","./chunk.QIAH7HHO.js","./chunk.DNJM6WQO.js","./chunk.LEPKPNPA.js","./chunk.5D6SIBOK.js","./chunk.UE5GAP67.js","./chunk.WVUJXDXZ.js","./chunk.HUABTCQE.js","./chunk.DXJFAAOI.js","./chunk.5MSNKSTE.js","./chunk.KVQZ5FR6.js","./chunk.2HANQ737.js","./chunk.H536YUAZ.js","./chunk.GZHZLJBF.js","./chunk.OL2N5NUV.js","./chunk.OJGHDWI6.js","./chunk.5DPFAVCZ.js","./chunk.5EZDXWOE.js","./chunk.MIQMPOWF.js","./chunk.T66UK7PQ.js","./chunk.LMXNHBGH.js","./chunk.DBCVZGCC.js","./chunk.WSMYFEGU.js","./chunk.SDO3U72B.js","./chunk.WR63RQGU.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.KXNWZ33P.js"))));function rt(){return me.load().then(()=>{})}var tt=[{cardinality:"one",fidelity:"full",slot:"page"},{cardinality:"one",fidelity:"summary",slot:"card"},{cardinality:"one",fidelity:"glyph",slot:"row"},{cardinality:"many",fidelity:"full"},{cardinality:"many",fidelity:"summary"},{cardinality:"many",fidelity:"glyph"}];function at({schema:e,specs:n,kind:t,view:r}){let o=me.current.frameworkViews(e,n).lookup(t,{cardinality:r.cardinality,fidelity:r.fidelity});return o?(0,ye.jsx)(o,{...r}):null}var ot=me.part((e,n)=>(0,ye.jsx)(at,{...n}),{what:"This view"});function qn(e,n,t){for(let r of n.kinds){let o=t?.[r];for(let a of tt){let i=c=>(0,ye.jsx)(ot,{schema:n,specs:t,kind:r,view:c}),p=a.slot!==void 0&&o?.[a.slot]!==void 0;p&&(i.says=(c,d)=>me.current?.frameworkViews(n,t).lookup(r,{cardinality:a.cardinality,fidelity:a.fidelity})?.says?.(c,d)),e.register(r,{cardinality:a.cardinality,fidelity:a.fidelity},p?i:yn(i))}}return e}function it(e,n){return qn(wn(e),e,n)}var Fe=v(R(),1);var D=v(S(),1),zn=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.5SANELJT.js","./chunk.WVKXELAF.js","./chunk.ZOW7AC7U.js","./chunk.PIQ52FCI.js","./chunk.INBHY3SA.js","./chunk.TDV7JGIQ.js","./chunk.RZQKCLTW.js","./chunk.Y3BEKXYB.js","./chunk.NDLQXQV2.js","./chunk.WUFCRE7O.js","./chunk.XEHLSKHP.js","./chunk.MSM6E6JK.js","./chunk.HJCQ6I3S.js","./chunk.FUZWXKTN.js","./chunk.YOBRVKJT.js","./chunk.DKJK2MMV.js","./chunk.QIAH7HHO.js","./chunk.DNJM6WQO.js","./chunk.LEPKPNPA.js","./chunk.5D6SIBOK.js","./chunk.UE5GAP67.js","./chunk.ATXSLBE3.js","./chunk.6UAUME5U.js","./chunk.BRCKXL7B.js","./chunk.CPNE6HPQ.js","./chunk.QQ3YWKWU.js","./chunk.MFOSEOF4.js","./chunk.WVUJXDXZ.js","./chunk.HUABTCQE.js","./chunk.DXJFAAOI.js","./chunk.5MSNKSTE.js","./chunk.KVQZ5FR6.js","./chunk.2HANQ737.js","./chunk.H536YUAZ.js","./chunk.GZHZLJBF.js","./chunk.OL2N5NUV.js","./chunk.OJGHDWI6.js","./chunk.5DPFAVCZ.js","./chunk.5EZDXWOE.js","./chunk.MIQMPOWF.js","./chunk.T66UK7PQ.js","./chunk.LMXNHBGH.js","./chunk.DBCVZGCC.js","./chunk.WSMYFEGU.js","./chunk.SDO3U72B.js","./chunk.WR63RQGU.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.6NGSR2ZQ.js"))));function st({lens:e,view:n}){let t=zn.current.declaredLensView(e);return(0,D.jsx)(t,{...n})}var lt=zn.part((e,n)=>(0,D.jsx)(st,{...n}),{what:"This picture"});function dt(e){let n=r=>(0,D.jsx)(Fe.Suspense,{fallback:null,children:(0,D.jsx)(lt,{lens:e,view:r})});e.lens==="blocks"&&(n.flows=!0);let t=e.lens==="blocks"?e.options.blocks?.[0]:void 0;return typeof t?.headline=="string"&&(n.lede=t),e.create===!1&&(n.creates=!1),n}var jn=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.INBHY3SA.js","./chunk.TDV7JGIQ.js","./chunk.RZQKCLTW.js","./chunk.Y3BEKXYB.js","./chunk.WUFCRE7O.js","./chunk.XEHLSKHP.js","./chunk.MSM6E6JK.js","./chunk.QIAH7HHO.js","./chunk.DNJM6WQO.js","./chunk.LEPKPNPA.js","./chunk.5D6SIBOK.js","./chunk.UE5GAP67.js","./chunk.WVUJXDXZ.js","./chunk.HUABTCQE.js","./chunk.DXJFAAOI.js","./chunk.5MSNKSTE.js","./chunk.KVQZ5FR6.js","./chunk.2HANQ737.js","./chunk.H536YUAZ.js","./chunk.GZHZLJBF.js","./chunk.OL2N5NUV.js","./chunk.OJGHDWI6.js","./chunk.5DPFAVCZ.js","./chunk.5EZDXWOE.js","./chunk.MIQMPOWF.js","./chunk.T66UK7PQ.js","./chunk.LMXNHBGH.js","./chunk.DBCVZGCC.js","./chunk.WSMYFEGU.js","./chunk.SDO3U72B.js","./chunk.WR63RQGU.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.TZTRGNAA.js"))));function ct({blocks:e,view:n}){let t=jn.current.homeView(e);return(0,D.jsx)(t,{...n})}var pt=jn.part((e,n)=>(0,D.jsx)(ct,{...n}),{what:"The home"});function ut(e){let n=t=>(0,D.jsx)(Fe.Suspense,{fallback:null,children:(0,D.jsx)(pt,{blocks:e,view:t})});return Object.defineProperty(n,Symbol.for("graview.home-blocks"),{value:!0}),n}function ft(e,n){return n.home&&n.home.length>0&&e.home?.(ut(n.home)),Yn(e,n),e.arrange?.(n.pages),e}function Yn(e,n,t){for(let r of on(n).drawn){if(t&&e.places().some(i=>i.title===r.title))continue;let o=dt(r),a={title:r.title,lens:r.lens,...r.across?{across:r.across}:{},...t?{beside:t}:{},...r.hidden?{hidden:!0}:{},over:r.kinds,...t?{}:{declared:!0}};for(let i of r.kinds)e.register(i,{cardinality:"many",fidelity:"full"},o,a),e.register(i,{cardinality:"many",fidelity:"summary"},o,a)}}function gt(e,n,t){t.length>0&&Yn(e,{schema:n,lenses:t.map(({lens:r,...o})=>({...o,name:r}))},!0)}function mt(e,n,t){gt(e,n,Ce(t))}var K=v(R(),1),we=v(S(),1);var Ve=e=>`graview:first-look:${e}`;function yt(e,n){if(e.seen!==void 0)try{return typeof e.seen=="function"?e.seen():e.seen}catch{return!0}try{return window.localStorage.getItem(Ve(n))!==null}catch{return!1}}function wt(e,n){if(e.seen===void 0)try{window.localStorage.setItem(Ve(n),"seen")}catch{}}var ht=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.WSMYFEGU.js","./chunk.SDO3U72B.js","./chunk.WR63RQGU.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.DB3HOKZD.js")))),vt=ht.part((e,n)=>{let t=e.FirstLookHints;return(0,we.jsx)(t,{...n})},{quiet:!0});function bt({firstLook:e,root:n,app:t}){let r=(0,K.useRef)(null);r.current=e===!0?{}:e||null;let[o,a]=(0,K.useState)(()=>r.current!==null&&typeof window<"u"&&!yt(r.current,t)),i=(0,K.useCallback)(p=>{if(a(!1),p===null)return;let c=r.current??{};wt(c,t),c.onDone?.(p)},[t]);return!o||r.current===null?null:(0,we.jsx)(K.Suspense,{fallback:null,children:(0,we.jsx)(vt,{root:n,steps:r.current.steps??[],onEnd:i})})}export{pe as a,lr as b,kt as c,Sn as d,xt as e,Te as f,br as g,pr as h,ur as i,ue as j,fr as k,mr as l,yr as m,wr as n,M as o,Pr as p,Lr as q,Nn as r,Er as s,J as t,Tr as u,Wr as v,Zr as w,Jr as x,_r as y,Kr as z,Ce as A,et as B,Wn as C,Gn as D,nt as E,ft as F,gt as G,mt as H,rt as I,it as J,bt as K};
|
|
67
|
+
`):"";(0,y.useLayoutEffect)(I,[I,n,e,or,k?.current,oe,A,w,d]);let ir=w==="icons"||!Zn||A?"icons":"words";return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("header",{ref:H,className:"graview-bar","data-testid":"app-bar","data-graview-app-bar":"",...Qn&&A?{"data-finding":""}:{},children:[(0,s.jsx)("style",{children:Ar}),x,(0,s.jsxs)("div",{className:"graview-bar-row",children:[b?(0,s.jsx)("div",{className:"graview-bar-app",children:(0,s.jsx)(nr,{className:"graview-bar-name",children:(0,s.jsxs)(rr,{...r.href!==void 0?{href:r.href,onClick:tr(r.go)}:{type:"button",onClick:r.go},"data-testid":"app-home",...r.current?{"aria-current":"page"}:{},title:u?`${n} \u2014 ${u}`:`${n} \u2014 home`,className:"graview-bar-home",children:[(0,s.jsx)(He,{brand:e,size:20}),(0,s.jsx)("span",{className:"graview-bar-app-name","data-testid":"app-name",children:n})]})})}):null,o?(0,s.jsx)(Hr,{faces:o,form:w,drawn:ir}):null,(0,s.jsx)("div",{className:"graview-bar-mid",...qe?{"data-places":"standing"}:!A&&se?{"data-place":""}:{},children:A?null:se}),!A&&k&&k.places.length>1?(0,s.jsxs)("span",{className:"graview-bar-ruler","aria-hidden":"true","data-graview-bar-ruler":"",children:[k.places.map(m=>(0,s.jsx)("span",{className:"graview-bar-at",children:m.label},m.key)),(0,s.jsxs)("span",{className:"graview-bar-at",children:[Ne,(0,s.jsx)(Vn,{})]})]}):null,b?(0,s.jsx)("span",{className:"graview-bar-ruler","aria-hidden":"true",children:(0,s.jsx)("span",{className:"graview-bar-name",children:n})}):null,(0,s.jsxs)("div",{className:"graview-bar-tools",children:[d?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("button",{type:"button",className:"graview-bar-find-open",ref:We,"data-testid":"app-find-open","aria-label":"Find",title:"Find",onClick:er,style:{...J,display:void 0},children:(0,s.jsx)(Rr,{})}),(0,s.jsxs)("div",{className:"graview-bar-find","data-testid":"app-find",onBlur:m=>{let N=m.relatedTarget;N instanceof Node&&m.currentTarget.contains(N)||m.currentTarget.querySelector("input")?.value||Ge()},onKeyDownCapture:m=>{m.key==="Escape"&&A&&(ie.current=!0)},onKeyDown:m=>{m.key!=="Escape"||!A||(!m.defaultPrevented||!m.currentTarget.querySelector("input")?.value?Ge():ie.current=!1)},children:[(0,s.jsx)("div",{ref:P,className:"graview-bar-find-slot",children:l}),(0,s.jsx)(Mr,{})]})]}):null,(0,s.jsx)("div",{ref:B,className:"graview-bar-own","data-graview-bar-own":""}),De?(0,s.jsx)(y.Suspense,{fallback:null,children:(0,s.jsx)(xr,{scene:!oe,compact:A})}):null,(0,s.jsx)(Sr,{}),c]})]})]}),A&&se?(0,s.jsx)("div",{className:"graview-bar-line","data-graview-place-line":"","data-testid":"app-place-line",children:se}):null]})}function Hr({faces:e,form:n,drawn:t}){let r=o=>{let a=e[o];return(0,s.jsxs)("button",{type:"button",className:"graview-bar-face","data-testid":`app-face-${o}`,"aria-pressed":a.current,title:a.label,...a.reach&&!a.current?{onPointerEnter:a.reach,onPointerDown:a.reach,onFocus:a.reach}:{},onClick:()=>{a.current||a.go()},children:[o==="scene"?(0,s.jsx)(Fn,{}):(0,s.jsx)(Cr,{}),(0,s.jsx)("span",{children:a.label})]})};return(0,s.jsxs)("div",{className:"graview-bar-faces",role:"group","aria-label":`${e.scene.label} or ${e.pages.label}`,"data-testid":"app-faces","data-switch":n,"data-switch-drawn":t,children:[r("scene"),r("pages")]})}function Br(e){let n=e.querySelector(".graview-bar-faces"),t=e.querySelector(".graview-bar-mid"),r=e.querySelector(".graview-bar-find");if(!n||!t||r?.matches(":focus-within")||e.getBoundingClientRect().width<te)return null;let a=In(n),i=t.querySelector(".graview-bar-place-words"),p=i?parseFloat(getComputedStyle(i).fontSize)||14:0,c=i?Math.min(i.scrollWidth+34,14*p):0,d=Rn(e);if(d===null)return!1;let u=t.getBoundingClientRect().width-c-d;if(r&&r.getBoundingClientRect().width>0){let l=parseFloat(getComputedStyle(r).flexBasis);isFinite(l)&&(u-=Math.max(0,l-r.getBoundingClientRect().width))}return n.getAttribute("data-switch-drawn")==="icons"?u>=a+2:u>=-1}function Rn(e){let n=e.querySelector(".graview-bar-app"),t=e.querySelector(".graview-bar-ruler>.graview-bar-name");if(!n||!t)return 0;let r=i=>i?.getBoundingClientRect().width??0,o=r(n.firstElementChild)-r(e.querySelector(".graview-bar-app-name"))+r(t)+2,a=parseFloat(getComputedStyle(n).maxWidth)/100*(n.parentElement.clientWidth-2*n.offsetLeft)||1/0;return o>a+.5?null:Math.max(0,o-r(n))}var On=e=>e.button===0&&!(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey);function Nr(){let e=globalThis.navigator?.platform??"";return/Mac|iPhone|iPad|iPod/.test(e)?"\u2318K":"Ctrl K"}function Mr(){let e=Sn(Y()?.aiDesk);return(0,s.jsx)("span",{className:"graview-bar-find-keys","data-testid":"app-find-keys","aria-hidden":"true",children:e?"/":Nr()})}function ae({size:e,box:n=e,children:t}){return(0,s.jsx)("svg",{width:e,height:e,viewBox:`0 0 ${n} ${n}`,"aria-hidden":"true",focusable:"false",style:{flex:"0 0 auto"},children:t})}function Fn(){return(0,s.jsxs)(ae,{size:14,children:[(0,s.jsx)("path",{d:"M7 1.5 L12.5 4.5 L7 7.5 L1.5 4.5 Z",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinejoin:"round"}),(0,s.jsx)("path",{d:"M1.5 7.5 L7 10.5 L12.5 7.5",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinejoin:"round",strokeLinecap:"round"})]})}function Cr(){return(0,s.jsxs)(ae,{size:14,children:[(0,s.jsx)("rect",{x:"2.25",y:"1.75",width:"9.5",height:"10.5",rx:"1.5",fill:"none",stroke:"currentColor",strokeWidth:"1.3"}),(0,s.jsx)("path",{d:"M4.5 5 H9.5 M4.5 7.25 H9.5 M4.5 9.5 H7.5",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round"})]})}function Vn(){return(0,s.jsx)(ae,{size:10,children:(0,s.jsx)("path",{d:"M2 3.5 L5 6.5 L8 3.5",fill:"none",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})})}function Rr(){return(0,s.jsxs)(ae,{size:16,children:[(0,s.jsx)("circle",{cx:"7",cy:"7",r:"4.75",fill:"none",stroke:"currentColor",strokeWidth:"1.5"}),(0,s.jsx)("path",{d:"M10.5 10.5 L14 14",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}function Or({place:e}){if(e.key===q)return(0,s.jsx)(Fn,{});if(e.group==="home")return(0,s.jsx)(ae,{size:13,box:14,children:(0,s.jsx)("path",{d:"M2 6.5 L7 2 L12 6.5 V12 H2 Z",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinejoin:"round"})});let n=e.kind?`hsl(${Math.round(Ze(e.kind))} 55% 52%`:"rgb(128 128 128";return(0,s.jsx)("span",{"aria-hidden":"true",style:{display:"inline-block",width:12,height:8,clipPath:"polygon(50% 0, 100% 50%, 50% 100%, 0 50%)",background:e.group==="lists"?`${n})`:`linear-gradient(${n}), ${n})) center / 6px 4px no-repeat, ${n} / 0.35)`}})}var Fr=[{group:"home"},{group:"lists",heading:"Lists"},{group:"pictures",heading:"Pictures"}],Ne="More";function Dn({place:e,current:n,reach:t,standing:r,done:o}){let a=e.key===n,i=t.href?.(e.path);return(0,s.jsxs)(i!==void 0?"a":"button",{className:r?"graview-bar-at":"graview-bar-item","data-testid":`app-place-${e.key}`,"data-place-path":e.path,...a?{"aria-current":"page"}:{},...i!==void 0?{href:i}:{type:"button"},onClick:c=>{o(),t.go&&(i!==void 0&&!On(c)||(c.preventDefault(),t.go(e)))},children:[r?null:(0,s.jsx)("span",{className:"graview-bar-mark",children:(0,s.jsx)(Or,{place:e})}),r&&a?(0,s.jsx)("span",{"data-testid":"app-place-current",children:e.label}):(0,s.jsx)("span",{children:e.label})]})}function Vr({places:e,current:n,reach:t,id:r,done:o}){return(0,s.jsx)(s.Fragment,{children:Fr.map(({group:a,heading:i})=>{let p=e.filter(d=>d.group===a);if(p.length===0)return null;let c=`${r}-${a}`;return(0,s.jsxs)("div",{role:"group",...i?{"aria-labelledby":c}:{"aria-label":p[0].label},"data-place-group":a,children:[i?(0,s.jsx)("p",{id:c,children:i}):null,(0,s.jsx)("ul",{children:p.map(d=>(0,s.jsx)("li",{children:(0,s.jsx)(Dn,{place:d,current:n,reach:t,standing:!1,done:o})},d.key))})]},a)})})}function Dr({places:e,current:n,here:t,reach:r,scene:o,stands:a}){let i=Q("places"),p=(0,y.useRef)(a);i.open||(p.current=a);let c=p.current,u=e.find(b=>b.key===n)?.label??t??"Places",l=c?e.filter((b,H)=>!c.includes(H)):e,g=Ir(e,n,o),w=Y(),h=w?.keptViews?.current(),x=!!(h&&(h.removed.length>0||w.views.places().some(b=>b.hidden)||h.may.lenses&&(w.views.arrangement?.()?.hide?.length??0)>0));return(0,s.jsxs)("nav",{className:c?"graview-bar-places":"graview-bar-place-at","aria-label":o?"What the scene shows":"The app\u2019s places",...c?{"data-testid":"app-places-standing"}:{},...g,children:[c?.map(b=>(0,s.jsx)(Dn,{place:e[b],current:n,reach:r,standing:!0,done:()=>{}},e[b].key)),l.length>0||x?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("button",{type:"button",className:c?"graview-bar-at":"graview-bar-place","data-testid":"app-places-open",...i.trigger,onClick:i.toggle,"aria-label":c?`${Ne} \u2014 ${l.length} more ${o?"pictures":"places"}`:`${u} \u2014 ${o?"everything the scene shows":"every place"}`,title:c?l.map(b=>b.label).join(", "):u,children:[c?Ne:(0,s.jsx)("span",{className:"graview-bar-place-words","data-testid":"app-place-current",children:u}),(0,s.jsx)(Vn,{})]}),(0,s.jsxs)("div",{...i.pane,"data-testid":"app-places",hidden:!i.open,className:"graview-bar-list",style:U,children:[(0,s.jsx)(Vr,{places:l,current:n,reach:r,id:i.pane.id,done:()=>i.setOpen(!1)}),x&&i.open?(0,s.jsx)(y.Suspense,{fallback:null,children:(0,s.jsx)(kr,{id:i.pane.id,scene:o,reach:r,done:()=>i.setOpen(!1)})}):null]})]}):null]})}function Ir(e,n,t){let r=Y()?.setMenuAt,o=a=>{let i=a.target.closest?.("[data-place-path],[data-testid=app-places-open]");if(!i||!r)return;let p={at:0};a.type==="pointerdown"?document.addEventListener("pointerup",()=>p.at||=Date.now(),{once:!0}):a.preventDefault();let c=a.nativeEvent;M.load().then(d=>d.placeGesture(c,i,e,n,t,r,p),String)};return{onContextMenu:a=>a.shiftKey||o(a),onKeyDown:a=>(a.key==="ContextMenu"||a.key==="F10"&&a.shiftKey)&&o(a),onPointerDown:a=>a.pointerType!=="mouse"&&a.isPrimary&&o(a)}}function $r(e,n,t,r){let o=e.querySelector("[data-graview-bar-ruler]"),a=e.querySelector(".graview-bar-mid");if(!o||!a)return null;let i=e.querySelector(".graview-bar-find");if(i?.matches(":focus-within"))return;if(e.getBoundingClientRect().width<te)return null;let p=Rn(e);if(p===null)return null;let c=[...o.children].map(H=>H.getBoundingClientRect().width),d=c.pop()??0,u=e.querySelector(".graview-bar-faces"),l=u&&t?In(u):0,g=u?.getAttribute("data-switch-drawn")==="words"?l:0,w=a.getBoundingClientRect().left+p,h=i?.getBoundingClientRect(),x=h&&h.width>0?h.right-w-(parseFloat(getComputedStyle(i).minWidth)||0)-16:a.getBoundingClientRect().width-p,b=[...r].map(H=>H!=="0");return Cn({widths:c,current:n,room:Math.floor(x+g-l),more:d,primary:b})?.join(",")??null}function In(e){return[...e.querySelectorAll(".graview-bar-face span")].reduce((n,t)=>n+t.scrollWidth+10,0)}var _r=e=>`graview:lenses:${e}`,Kr=(e,n)=>e?.name??n.kinds.join(",");function Ce(e){try{let n=JSON.parse(localStorage.getItem(_r(e))??"[]");return Array.isArray(n)?n.filter(t=>typeof t?.title=="string"&&typeof t.lens=="string"):[]}catch{return[]}}var _=v(R(),1);var E=v(S(),1);function Wr({scheme:e,onScheme:n,profileHref:t,keeping:r,hostActions:o=Gr,signature:a=!1}){let{store:i,principal:p,seats:c,people:d}=ce(),u=Q("profile"),l=u.open,[g,w]=(0,_.useState)(!1);(0,_.useEffect)(()=>jr(fe),[]),l&&!g&&w(!0),(0,_.useEffect)(()=>{l&&fe()},[l]);let h=p.id===void 0?void 0:i.graph.getNode(p.id),x=h===void 0?p.id===void 0?"Nobody in particular":Ue(p,{graph:i.graph,schema:i.schema,seats:c,people:d}):ze(i.schema.tryDefinition(h.kind),h);return(0,E.jsxs)("div",{style:{position:"relative"},children:[(0,E.jsx)("button",{type:"button","data-testid":"profile-button",...u.trigger,onClick:u.toggle,onPointerEnter:fe,onFocus:fe,"aria-label":`${x} \u2014 you, your seat and your settings`,title:`${x} \u2014 you, your seat and your settings`,style:{...J,borderRadius:999},children:(0,E.jsx)("span",{"aria-hidden":"true","data-testid":"profile-mark",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:Z-4,height:Z-4,borderRadius:999,fontSize:"0.8125rem",fontWeight:600,background:"var(--graview-panel-muted)",color:"var(--graview-ink)",border:"1px solid var(--graview-edge)"},children:Yr(x)})}),(0,E.jsxs)("section",{...u.pane,"aria-label":"Profile","data-testid":"profile","data-graview-offstage":"",hidden:!l,style:{...U,width:280,maxWidth:"calc(100vw - 32px)",maxHeight:"min(62cqh, 520px)",overflowY:"auto",overflowX:"hidden",display:l?"grid":"none",gap:12,padding:12,borderRadius:10,border:"1px solid var(--graview-edge)",background:"var(--graview-float)",boxShadow:"var(--graview-lift-high)"},children:[g?(0,E.jsx)(_.Suspense,{fallback:null,children:(0,E.jsx)(qr,{part:"top",name:x,me:h,profileHref:t,hostActions:o,close:()=>u.setOpen(!1)})}):null,(0,E.jsxs)("div",{className:"graview-profile-keeping","data-testid":"profile-keeping",style:Qr,children:[(0,E.jsx)("span",{style:Ur,children:"Keeping this app"}),r]}),g?(0,E.jsx)(_.Suspense,{fallback:null,children:(0,E.jsx)(zr,{part:"rest",name:x,me:h,scheme:e,onScheme:n,hostActions:o,signature:a,close:()=>u.setOpen(!1)})}):null]})]})}var Gr=[],fe=()=>M.prefetch(),qr=M.part((e,n)=>(0,E.jsx)(e.ProfilePane,{...n}),{what:"The rest of your menu"}),zr=M.part((e,n)=>(0,E.jsx)(e.ProfilePane,{...n}),{quiet:!0});function jr(e){let n=()=>{(typeof navigator>"u"||navigator.onLine!==!1)&&e()},t=globalThis;if(t.requestIdleCallback){let o=t.requestIdleCallback(n,{timeout:5e3});return()=>t.cancelIdleCallback?.(o)}let r=setTimeout(n,2500);return()=>clearTimeout(r)}function Yr(e){return(e.trim()[0]??"?").toUpperCase()}var Ur={fontSize:"0.75rem",letterSpacing:"0.14em",textTransform:"uppercase",color:"var(--graview-ink-faint)"},Qr={paddingTop:10,borderTop:"1px solid var(--graview-edge)"};function Zr(e){return!(e==="hidden"||e===!1)}var Re=v(R(),1);var $n="The whole thing",ge=e=>`scene:${e.kind}:${e.as}`;function _n(e){let{view:n}=e,t=e.places.filter(l=>!e.hidden.has(l.kind)),r=ne(t),o=(l,g)=>{if(l===q)return un(fn(g,!0),"view",null);let w=r.find(h=>ge(h)===l);return w?mn(g,w.over?.find(h=>g.focusId===re(h))??w.kind,w.as):null},a=n.within?.view,i=l=>n.focusId===re(l.kind)&&(a===void 0?t.filter(g=>g.kind===l.kind).at(-1)===l:a===l.as),p=t.find(l=>i(l)&&(a!==void 0||!n.overview)),c=p?r.find(l=>de(l,p)):void 0,d=r.filter(l=>!l.hidden||l===c);return{places:[{key:q,label:$n,path:`${Se}${Le(o(q,Pe))}`,group:"home"},...d.map(l=>({key:ge(l),label:j(l,t,e.schema),path:`${Se}${Le(o(ge(l),Pe))}`,group:"pictures",kind:l.kind,hidden:l.hidden}))],current:c?ge(c):q,to:o}}function Jr(){let{store:e,views:n,hiddenKinds:t}=ce(),{view:r,go:o}=bn(),a=n.places(),i=(0,Re.useMemo)(()=>_n({places:a,hidden:t,view:r,schema:e.schema}),[a,t,r,e.schema]),p=(0,Re.useMemo)(()=>({go:c=>{let d=i.to(c.key,r);d&&o(d)}}),[i,r,o]);return{places:i.places,current:i.current,reach:p}}var X=v(R(),1);var F=v(S(),1),Xr=M.part((e,n)=>(0,F.jsx)(e.ProblemRows,{...n}),{what:"The problems",as:"li"}),Oe=()=>M.prefetch();function et({clean:e="All rules hold"}){let n=vn(),{set:t}=hn(),r=n.length,[o,a]=(0,X.useState)(!1),i=Q("problems",{open:o&&r>0,onOpenChange:a}),p=i.open,c=Wn(n,e);return(0,X.useEffect)(()=>{if(r===0)return;let d=setTimeout(Oe,1500);return()=>clearTimeout(d)},[r>0]),(0,F.jsxs)("div",{style:{position:"relative",display:"inline-flex"},children:[(0,F.jsxs)("button",{type:"button","data-testid":"standing",...i.trigger,"aria-disabled":r===0?!0:void 0,"aria-label":c,onClick:r===0?void 0:i.toggle,onPointerEnter:r===0?void 0:Oe,onFocus:r===0?void 0:Oe,title:c,style:{...J,padding:r===0?0:"0 8px",cursor:r===0?"default":"pointer",color:r===0?"var(--graview-ink-muted)":Kn(n),fontVariantNumeric:"tabular-nums",fontWeight:600},children:[(0,F.jsx)(Gn,{tone:r===0?"var(--graview-good)":Kn(n)}),r>0?(0,F.jsx)("span",{"aria-hidden":"true",children:r}):null]}),p?(0,F.jsx)("ol",{...i.pane,"data-testid":"problems",style:{...U,width:300,maxHeight:"min(48cqh, 420px)",overflow:"auto",margin:0,padding:4,listStyle:"none",display:"grid",borderRadius:10,border:"1px solid var(--graview-edge)",background:"var(--graview-float)",boxShadow:"var(--graview-lift-high)"},children:(0,F.jsx)(X.Suspense,{fallback:null,children:(0,F.jsx)(Xr,{violations:n,pick:d=>{t(d.nodeIds),i.setOpen(!1)}})})}):null]})}function Wn(e,n){return e.length===0?n:`${Qe(e)} \u2014 open what is broken, and what would fix it`}var Kn=e=>e.some(n=>n.status==="could-not-judge"||n.status==="over-budget")?"var(--graview-bad)":"var(--graview-warn)";function Gn({tone:e}){return(0,F.jsx)("span",{"aria-hidden":"true",style:{width:8,height:8,borderRadius:999,flex:"0 0 auto",background:e}})}function nt(e,n,t=[]){if(e.focusId)return e.focusId;let o=(e.selection??[]).map(gn).find(a=>a!==null)??t.find(a=>n.includes(a))??n[0]??null;return o===null?null:re(o)}var ye=v(S(),1),me=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.DSLGMCB6.js","./chunk.IX63LTRQ.js","./chunk.I636CZE4.js","./chunk.TVURUMU4.js","./chunk.EZ4TZUMM.js","./chunk.47T3KUAA.js","./chunk.NZDWXX6H.js","./chunk.YS5U3DUX.js","./chunk.SAJLIA5M.js","./chunk.LWRXCO2Z.js","./chunk.I2NI7CT7.js","./chunk.LHIT3EZD.js","./chunk.WVUJXDXZ.js","./chunk.7INWDFNG.js","./chunk.FPGU43SC.js","./chunk.V6FUYRZI.js","./chunk.5BPRGXIW.js","./chunk.BZEJM2PY.js","./chunk.CMLNBJZG.js","./chunk.GZHZLJBF.js","./chunk.QPL3OXW3.js","./chunk.OJGHDWI6.js","./chunk.FRERJWZJ.js","./chunk.RQX4CQJN.js","./chunk.LUIRQ5UF.js","./chunk.N33WUCAN.js","./chunk.JQFIZRAZ.js","./chunk.LKJ6FD6Y.js","./chunk.DBMZ3AQB.js","./chunk.SDO3U72B.js","./chunk.DIFR37EZ.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.OYUDK3LK.js"))));function rt(){return me.load().then(()=>{})}var tt=[{cardinality:"one",fidelity:"full",slot:"page"},{cardinality:"one",fidelity:"summary",slot:"card"},{cardinality:"one",fidelity:"glyph",slot:"row"},{cardinality:"many",fidelity:"full"},{cardinality:"many",fidelity:"summary"},{cardinality:"many",fidelity:"glyph"}];function at({schema:e,specs:n,kind:t,view:r}){let o=me.current.frameworkViews(e,n).lookup(t,{cardinality:r.cardinality,fidelity:r.fidelity});return o?(0,ye.jsx)(o,{...r}):null}var ot=me.part((e,n)=>(0,ye.jsx)(at,{...n}),{what:"This view"});function qn(e,n,t){for(let r of n.kinds){let o=t?.[r];for(let a of tt){let i=c=>(0,ye.jsx)(ot,{schema:n,specs:t,kind:r,view:c}),p=a.slot!==void 0&&o?.[a.slot]!==void 0;p&&(i.says=(c,d)=>me.current?.frameworkViews(n,t).lookup(r,{cardinality:a.cardinality,fidelity:a.fidelity})?.says?.(c,d)),e.register(r,{cardinality:a.cardinality,fidelity:a.fidelity},p?i:yn(i))}}return e}function it(e,n){return qn(wn(e),e,n)}var Fe=v(R(),1);var D=v(S(),1),zn=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.H5CRRBNU.js","./chunk.FLMNWVSY.js","./chunk.JETT6ELP.js","./chunk.6SD7YZ4U.js","./chunk.DSLGMCB6.js","./chunk.IX63LTRQ.js","./chunk.I636CZE4.js","./chunk.TVURUMU4.js","./chunk.UV3U4FRT.js","./chunk.EZ4TZUMM.js","./chunk.47T3KUAA.js","./chunk.NZDWXX6H.js","./chunk.HJCQ6I3S.js","./chunk.7IXTNST2.js","./chunk.D4EP7FEC.js","./chunk.XVN3CQKH.js","./chunk.YS5U3DUX.js","./chunk.SAJLIA5M.js","./chunk.LWRXCO2Z.js","./chunk.I2NI7CT7.js","./chunk.LHIT3EZD.js","./chunk.C7EJPV2N.js","./chunk.7ML2BWSP.js","./chunk.BCE6LIDR.js","./chunk.MBLFZF5R.js","./chunk.5NZDFT6R.js","./chunk.XTBS64IT.js","./chunk.WVUJXDXZ.js","./chunk.7INWDFNG.js","./chunk.FPGU43SC.js","./chunk.V6FUYRZI.js","./chunk.5BPRGXIW.js","./chunk.BZEJM2PY.js","./chunk.CMLNBJZG.js","./chunk.GZHZLJBF.js","./chunk.QPL3OXW3.js","./chunk.OJGHDWI6.js","./chunk.FRERJWZJ.js","./chunk.RQX4CQJN.js","./chunk.LUIRQ5UF.js","./chunk.N33WUCAN.js","./chunk.JQFIZRAZ.js","./chunk.LKJ6FD6Y.js","./chunk.DBMZ3AQB.js","./chunk.SDO3U72B.js","./chunk.DIFR37EZ.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.7VZA34T4.js"))));function st({lens:e,view:n}){let t=zn.current.declaredLensView(e);return(0,D.jsx)(t,{...n})}var lt=zn.part((e,n)=>(0,D.jsx)(st,{...n}),{what:"This picture"});function dt(e){let n=r=>(0,D.jsx)(Fe.Suspense,{fallback:null,children:(0,D.jsx)(lt,{lens:e,view:r})});e.lens==="blocks"&&(n.flows=!0);let t=e.lens==="blocks"?e.options.blocks?.[0]:void 0;return typeof t?.headline=="string"&&(n.lede=t),e.create===!1&&(n.creates=!1),n}var jn=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.DSLGMCB6.js","./chunk.IX63LTRQ.js","./chunk.I636CZE4.js","./chunk.TVURUMU4.js","./chunk.EZ4TZUMM.js","./chunk.47T3KUAA.js","./chunk.NZDWXX6H.js","./chunk.YS5U3DUX.js","./chunk.SAJLIA5M.js","./chunk.LWRXCO2Z.js","./chunk.I2NI7CT7.js","./chunk.LHIT3EZD.js","./chunk.WVUJXDXZ.js","./chunk.7INWDFNG.js","./chunk.FPGU43SC.js","./chunk.V6FUYRZI.js","./chunk.5BPRGXIW.js","./chunk.BZEJM2PY.js","./chunk.CMLNBJZG.js","./chunk.GZHZLJBF.js","./chunk.QPL3OXW3.js","./chunk.OJGHDWI6.js","./chunk.FRERJWZJ.js","./chunk.RQX4CQJN.js","./chunk.LUIRQ5UF.js","./chunk.N33WUCAN.js","./chunk.JQFIZRAZ.js","./chunk.LKJ6FD6Y.js","./chunk.DBMZ3AQB.js","./chunk.SDO3U72B.js","./chunk.DIFR37EZ.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.WYPL2QUA.js"))));function ct({blocks:e,view:n}){let t=jn.current.homeView(e);return(0,D.jsx)(t,{...n})}var pt=jn.part((e,n)=>(0,D.jsx)(ct,{...n}),{what:"The home"});function ut(e){let n=t=>(0,D.jsx)(Fe.Suspense,{fallback:null,children:(0,D.jsx)(pt,{blocks:e,view:t})});return Object.defineProperty(n,Symbol.for("graview.home-blocks"),{value:!0}),n}function ft(e,n){return n.home&&n.home.length>0&&e.home?.(ut(n.home)),Yn(e,n),e.arrange?.(n.pages),e}function Yn(e,n,t){for(let r of on(n).drawn){if(t&&e.places().some(i=>i.title===r.title))continue;let o=dt(r),a={title:r.title,lens:r.lens,...r.across?{across:r.across}:{},...t?{beside:t}:{},...r.hidden?{hidden:!0}:{},over:r.kinds,...t?{}:{declared:!0}};for(let i of r.kinds)e.register(i,{cardinality:"many",fidelity:"full"},o,a),e.register(i,{cardinality:"many",fidelity:"summary"},o,a)}}function gt(e,n,t){t.length>0&&Yn(e,{schema:n,lenses:t.map(({lens:r,...o})=>({...o,name:r}))},!0)}function mt(e,n,t){gt(e,n,Ce(t))}var K=v(R(),1),we=v(S(),1);var Ve=e=>`graview:first-look:${e}`;function yt(e,n){if(e.seen!==void 0)try{return typeof e.seen=="function"?e.seen():e.seen}catch{return!0}try{return window.localStorage.getItem(Ve(n))!==null}catch{return!1}}function wt(e,n){if(e.seen===void 0)try{window.localStorage.setItem(Ve(n),"seen")}catch{}}var ht=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.DBMZ3AQB.js","./chunk.SDO3U72B.js","./chunk.DIFR37EZ.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.DWLKJGVT.js")))),vt=ht.part((e,n)=>{let t=e.FirstLookHints;return(0,we.jsx)(t,{...n})},{quiet:!0});function bt({firstLook:e,root:n,app:t}){let r=(0,K.useRef)(null);r.current=e===!0?{}:e||null;let[o,a]=(0,K.useState)(()=>r.current!==null&&typeof window<"u"&&!yt(r.current,t)),i=(0,K.useCallback)(p=>{if(a(!1),p===null)return;let c=r.current??{};wt(c,t),c.onDone?.(p)},[t]);return!o||r.current===null?null:(0,we.jsx)(K.Suspense,{fallback:null,children:(0,we.jsx)(vt,{root:n,steps:r.current.steps??[],onEnd:i})})}export{pe as a,lr as b,kt as c,Sn as d,xt as e,Te as f,br as g,pr as h,ur as i,ue as j,fr as k,mr as l,yr as m,wr as n,M as o,Pr as p,Lr as q,Nn as r,Er as s,J as t,Tr as u,Wr as v,Zr as w,Jr as x,_r as y,Kr as z,Ce as A,et as B,Wn as C,Gn as D,nt as E,ft as F,gt as G,mt as H,rt as I,it as J,bt as K};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk.AJZBJBMO.js";var O=e=>Array.isArray(e);function q(e){return e===!0||O(e)||typeof e.width!="number"?Y:e.width}function Q(e){if(e===!0)return()=>!0;if(O(e)){let a=new Set(e);return s=>a.has(s)}let t=new Map;for(let[a,s]of Object.entries(e))typeof s=="string"?t.set(a,new Set([s])):Array.isArray(s)&&t.set(a,new Set(s));return t.size===0?()=>!0:(a,s)=>t.get(a)?.has(s)??!1}var Y=1200,ee="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",J=100,I=4e7,B=e=>/^image\//i.test(e.type)&&!/^image\/svg/i.test(e.type);function P(e,t={}){let a={name:e.name,type:e.type,bytes:e.bytes};return/^video\//i.test(e.type)?{...a,...e.width!==void 0?{width:e.width}:{},...e.height!==void 0?{height:e.height}:{},...e.caption!==void 0?{caption:e.caption}:{},...e.duration!==void 0?{duration:e.duration}:{}}:B(e)?{...a,...e.width!==void 0?{width:e.width}:{},...e.height!==void 0?{height:e.height}:{},...e.caption!==void 0?{caption:e.caption}:{},...t.src!==void 0?{src:t.src}:{},...t.left!==void 0?{left:t.left}:{}}:a}var X=new Set(["id","kind","label"]),N=e=>{let t=e;return typeof t=="object"&&t!==null&&typeof t.href=="string"&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.bytes=="number"};function L(e,t){let a=s=>{let l;for(let[h,u]of Object.entries(s)){if(X.has(h))continue;let m=N(u)?t(u,s,h):Array.isArray(u)&&u.length>0&&u.every(N)?u.map(d=>t(d,s,h)):void 0;m!==void 0&&((l??={...s})[h]=m)}return l??s};return{...e,...e.node?{node:a(e.node)}:{},...e.nodes?{nodes:e.nodes.map(a)}:{}}}var F=e=>e.toLocaleString("en-US"),S=(e,t)=>`The picture "${e.name}" on ${t.label?`"${t.label}"`:"a record"}`;function U(e,t,a){let s=q(e),l=t?.pictureBytes??15e5,h=t?.picturesBytes??12e6,u=Math.round(s*Math.min(2,Math.max(1,a||1)));return{width:s,perFile:l,perView:h,need:u,reckon:d=>Math.min(l,Math.ceil(d.bytes*(d.width&&d.width>u?(u/d.width)**2:1))),chosen:Q(e)}}var j=(e,t)=>`${S(e,t)} is left out: at ${F(e.bytes)} bytes it is more than the host fetches for a view.`,C=(e,t,a,s)=>`${S(e,t)} is left out: the view ${a} is handed at most ${F(s)} bytes of pictures, and the pictures before it, in the order its records are handed, took them. A view that draws only some kinds' pictures says which ("pictures": ["<kind>"]).`;function te(e,t){let{perView:a,reckon:s,chosen:l}=U(t.pictures,t.limits,2),h=[],u=0;return{props:L(e,(d,f,b)=>{if(!B(d)||!l(f.kind,b))return P(d);let v=y=>(h.includes(y)||h.push(y),P(d,{left:y}));if(d.bytes>I)return v(j(d,f));let g=s(d);return u+g>a?v(C(d,f,t.view,a)):(u+=g,P(d,{src:t.standIn}))}),left:h}}function ne(e,t){let{width:a,perFile:s,perView:l,need:h,reckon:u,chosen:m}=U(t.pictures,t.limits,e.devicePixelRatio),d=t.shrink??((n,r,i)=>Z(e,n,r,i)),f=new Map,b=new Map,v=new Set,g=!1,y,k=-1/0,z=()=>{if(y!==void 0||g)return;let n=()=>{y=void 0,!g&&(k=e.performance.now(),t.moved())},r=k+J-e.performance.now();r<=0?(y=!0,queueMicrotask(n)):y=e.setTimeout(n,r)},$=n=>{v.has(n)||(v.add(n),t.onLeft?.(n))},x=n=>{n?.state==="ready"&&(b.delete(n.url),n.url.startsWith("blob:")&&e.URL.revokeObjectURL(n.url))},T=S,V,H=n=>new Promise(r=>{let i=new e.Image;i.onload=()=>r(!0),i.onerror=()=>r(!1),e.setTimeout(()=>r(!1),2e3),i.src=n}),M=n=>new Promise((r,i)=>{let w=new e.FileReader;w.onload=()=>r(String(w.result)),w.onerror=i,w.readAsDataURL(n)}),W=async n=>{if(t.as==="blob"){let i=e.URL.createObjectURL(n);return V??=H(i),await V?{url:i,drawn:i}:{url:i,drawn:await M(n)}}let r=await M(n);return{url:r,drawn:r}},E=(n,r,i)=>({state:"left",said:`${T(n,r)} could not be loaded for the view ${t.view}${i?`: the host answered ${i}.`:"."}${i&&!t.file?" A host that serves the app under a base says where a record's files are (file, on the view's definition).":""}`}),D=async(n,r)=>{let i=E(n,r),w=t.file?t.file(n.href):n.href;if(w===void 0)return i;let o=new e.URL(w,e.document.baseURI);if(o.origin!==e.location.origin||!/^https?:$/.test(o.protocol))return i;let p=await e.fetch(o.href,{credentials:"same-origin"}),A=(p.headers.get("content-type")??"").split(";")[0].trim();if(!p.ok)return E(n,r,String(p.status));if(!B({type:A}))return E(n,r,`${A||"no type"}, not a picture`);let c=new e.Blob([await p.arrayBuffer()],{type:A});if(c.size>I)return i;if(!(n.width!==void 0&&n.width<=h)||c.size>s){let G=await d(c,h,s).catch(()=>{});if(G)c=G;else if(c.size>s)return i}return c.size>s?{state:"left",said:`${T(n,r)} is left out: made as small as the ${F(a)} pixels across the view ${t.view} draws a picture at, it is still more than the ${F(s)} bytes one picture is handed.`}:{state:"ready",...await W(c)}},K=(n,r)=>{f.set(n.href,{state:"pending"}),D(n,r).then(i=>_(n.href,i),()=>_(n.href,{state:"left",said:`${T(n,r)} could not be loaded for the view ${t.view}.`}))},_=(n,r)=>{if(g||f.get(n)?.state!=="pending")return x(r);f.set(n,r),r.state==="ready"&&b.set(r.url,r.drawn),r.state==="left"&&$(r.said),z()};return{hand(n){if(g)return L(n,o=>P(o));let r=0,i=new Set,w=L(n,(o,p,A)=>{if(!B(o)||!m(p.kind,A))return P(o);i.add(o.href);let c=f.get(o.href);if(c?.state==="left")return P(o,{left:c.said});if(!c&&o.bytes>I)return c={state:"left",said:j(o,p)},f.set(o.href,c),$(c.said),P(o,{left:c.said});let R=u(o);if(r+R>l){let G=C(o,p,t.view,l);return $(G),P(o,{left:G})}return r+=R,c||K(o,p),P(o,c?.state==="ready"?{src:c.url}:{})});for(let[o,p]of f)i.has(o)||(x(p),f.delete(o));return w},drawn:n=>b.get(n),waiting:()=>y!==void 0||[...f.values()].some(n=>n.state==="pending"),dispose(){g=!0,y!==void 0&&y!==!0&&e.clearTimeout(y);for(let n of f.values())x(n);f.clear(),b.clear()}}}async function Z(e,t,a,s){if(typeof e.createImageBitmap!="function")return;let l=await e.createImageBitmap(t);try{if(l.width<=a&&t.size<=s)return t;let h=Math.min(1,a/l.width),u=Math.max(1,Math.round(l.width*h)),m=Math.max(1,Math.round(l.height*h)),d=e.document.createElement("canvas");d.width=u,d.height=m;let f=d.getContext("2d");if(!f)return;f.drawImage(l,0,0,u,m);let b=y=>new Promise(k=>d.toBlob(k,y,.85)),v=/^image\/(jpeg|webp|png)$/i.test(t.type)?t.type:"image/png",g=await b(v);return g&&g.size<=s?g:await b("image/jpeg")??g??void 0}finally{l.close()}}export{J as PICTURES_SETTLE_MS,I as PICTURE_FETCH_BYTES,ee as PICTURE_STAND_IN,Y as PICTURE_WIDTH,ne as createGuestPictures,P as guestFileOf,L as handFiles,B as isGuestPicture,U as pictureBudget,q as pictureWidthOf,Q as picturesChosen,te as standInPictures};
|