graview 0.1.39 → 0.1.40
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.WQPNGBR7.js → chunk.242EUAPE.js} +1 -1
- package/dist/preview/chunk.2CF2XKOS.js +1 -0
- package/dist/preview/chunk.2FGYWAID.js +1 -0
- package/dist/preview/{chunk.NSNGPQGT.js → chunk.2FLPDPEL.js} +1 -1
- package/dist/preview/{chunk.ZTMDU3OH.js → chunk.2GDXNTY5.js} +1 -1
- package/dist/preview/{chunk.C4CFYTCW.js → chunk.2JB4Y2ET.js} +1 -1
- package/dist/preview/chunk.2NXH7VAI.js +1 -0
- package/dist/preview/chunk.2OSNYF5C.js +1 -0
- package/dist/preview/{chunk.Z7JRBKA7.js → chunk.2RVUDRRY.js} +1 -1
- package/dist/preview/{chunk.5OJJ2TKZ.js → chunk.2WACBAUN.js} +2 -2
- package/dist/preview/chunk.35PHXNOC.js +1 -0
- package/dist/preview/{chunk.WJQY4E45.js → chunk.3Q75TIGL.js} +1 -1
- package/dist/preview/{chunk.HHUCPVG5.js → chunk.42XSBKPO.js} +1 -1
- package/dist/preview/{chunk.6CFP5UYP.js → chunk.47KHZCNG.js} +1 -1
- package/dist/preview/{chunk.U7QMA4H7.js → chunk.4QPVS2ZM.js} +1 -1
- package/dist/preview/{chunk.NG3YMQ36.js → chunk.4VG2KN7G.js} +1 -1
- package/dist/preview/{chunk.6XU2CXRZ.js → chunk.5RABSIF7.js} +1 -1
- package/dist/preview/{chunk.7EFNLMKU.js → chunk.67WWRC6Y.js} +1 -1
- package/dist/preview/{chunk.QMFUPTR4.js → chunk.6AVZWLRF.js} +1 -1
- package/dist/preview/{chunk.C2OAKTZX.js → chunk.6CRRPXKP.js} +1 -1
- package/dist/preview/{chunk.WXYUWBKX.js → chunk.6FNMDAX5.js} +1 -1
- package/dist/preview/{chunk.U4E5GQTK.js → chunk.6J37UQKG.js} +1 -1
- package/dist/preview/chunk.6JEU3ZNE.js +1 -0
- package/dist/preview/{chunk.RXSHFG6S.js → chunk.6PSWHBL2.js} +1 -1
- package/dist/preview/chunk.74NOI7QN.js +1 -0
- package/dist/preview/{chunk.VC4JPG7O.js → chunk.7LIKEE5Z.js} +1 -1
- package/dist/preview/{chunk.2NSTEREJ.js → chunk.7WPCP2LZ.js} +1 -1
- package/dist/preview/{chunk.JEZTPXEB.js → chunk.ACBUAIDF.js} +1 -1
- package/dist/preview/{chunk.EWWJMS6G.js → chunk.AKQXF7GW.js} +1 -1
- package/dist/preview/chunk.AUBGUDO5.js +1 -0
- package/dist/preview/{chunk.G46WGK5E.js → chunk.AVKDWISO.js} +1 -1
- package/dist/preview/{chunk.5JPRFXYQ.js → chunk.AWX7GP72.js} +1 -1
- package/dist/preview/chunk.BFNVG5JE.js +1 -0
- package/dist/preview/chunk.BNVMMOOY.js +1 -0
- package/dist/preview/{chunk.5XNVN4HE.js → chunk.BSAXZQSY.js} +1 -1
- package/dist/preview/{chunk.B7TB6YRZ.js → chunk.BXT6FDT4.js} +1 -1
- package/dist/preview/{chunk.FCXBCKED.js → chunk.C2PECN4C.js} +1 -1
- package/dist/preview/{chunk.OJKS3UQS.js → chunk.CL2ZS5EQ.js} +1 -1
- package/dist/preview/chunk.CN5WAKHJ.js +5 -0
- package/dist/preview/{chunk.I7CU2E3C.js → chunk.CNFL5IN5.js} +1 -1
- package/dist/preview/{chunk.M5QFUGGG.js → chunk.D25XEVKO.js} +1 -1
- package/dist/preview/{chunk.P3JYH6HO.js → chunk.DL26BKT7.js} +1 -1
- package/dist/preview/{chunk.23WYWIAJ.js → chunk.DPZTW24D.js} +1 -1
- package/dist/preview/chunk.ESSSNLEO.js +1 -0
- package/dist/preview/chunk.ETOGQE2V.js +1 -0
- package/dist/preview/{chunk.XLZ2QRRS.js → chunk.FDE3TSTK.js} +1 -1
- package/dist/preview/{chunk.37ASLBGE.js → chunk.FFZBOP65.js} +1 -1
- package/dist/preview/chunk.FOQZADMA.js +25 -0
- package/dist/preview/{chunk.5R4E5C76.js → chunk.G6VZNRQ5.js} +1 -1
- package/dist/preview/{chunk.OM5CDW2S.js → chunk.GT2BITLW.js} +1 -1
- package/dist/preview/{chunk.CF7DHTKL.js → chunk.GTV2VZAS.js} +2 -2
- package/dist/preview/{chunk.IXYBIDAN.js → chunk.GY6RYJHM.js} +1 -1
- package/dist/preview/chunk.GZIVMOY4.js +117 -0
- package/dist/preview/{chunk.UIUHGA6W.js → chunk.H5ADMSE7.js} +1 -1
- package/dist/preview/{chunk.XBOZTQQA.js → chunk.H5HWN7A2.js} +1 -1
- package/dist/preview/{chunk.7WSXVXP3.js → chunk.H6XKMLDQ.js} +1 -1
- package/dist/preview/{chunk.OYMM2UWE.js → chunk.H7POIT3V.js} +1 -1
- package/dist/preview/{chunk.CMN6VVK2.js → chunk.HB7ELBVK.js} +1 -1
- package/dist/preview/{chunk.IAZRY42B.js → chunk.HPAGOEZG.js} +1 -1
- package/dist/preview/{chunk.4BBJ62ZO.js → chunk.I7XSDXQ3.js} +1 -1
- package/dist/preview/{chunk.WTZOOAIW.js → chunk.IDUPJMJO.js} +1 -1
- package/dist/preview/chunk.IFTWVUJO.js +2 -0
- package/dist/preview/{chunk.FMN5XDLE.js → chunk.ISXFH3CK.js} +1 -1
- package/dist/preview/chunk.J4IULZFD.js +1 -0
- package/dist/preview/chunk.JACGQ2PR.js +4 -0
- package/dist/preview/{chunk.YXGI7H4Y.js → chunk.JDRLSVOI.js} +1 -1
- package/dist/preview/chunk.JLDBFX6O.js +1 -0
- package/dist/preview/{chunk.LCYMYLOP.js → chunk.JQEYZB5I.js} +1 -1
- package/dist/preview/{chunk.ZR5KVYWZ.js → chunk.L3A6YLMT.js} +2 -2
- package/dist/preview/chunk.LLEFYJPJ.js +344 -0
- package/dist/preview/chunk.LOZJQ5ZX.js +1 -0
- package/dist/preview/{chunk.GXKECZ4S.js → chunk.LPBM5AES.js} +1 -1
- package/dist/preview/{chunk.QEXXLWEU.js → chunk.LPE4FLC6.js} +2 -2
- package/dist/preview/{chunk.TU4KG22J.js → chunk.MIM2QLF5.js} +2 -2
- package/dist/preview/{chunk.P4WYBSYA.js → chunk.N2K25KH3.js} +1 -1
- package/dist/preview/{chunk.KJNUZYXS.js → chunk.N6MVK3KD.js} +1 -1
- package/dist/preview/{chunk.3ZNQ5YKX.js → chunk.NGDXH66B.js} +1 -1
- package/dist/preview/chunk.O5JKDFDH.js +1 -0
- package/dist/preview/chunk.O6F3K6CU.js +1 -0
- package/dist/preview/{chunk.HA3PPIEQ.js → chunk.OW7NSJ4H.js} +1 -1
- package/dist/preview/chunk.P5ODICND.js +32 -0
- package/dist/preview/{chunk.67USHK26.js → chunk.PPG2SEIY.js} +1 -1
- package/dist/preview/chunk.PYNYHNDS.js +1 -0
- package/dist/preview/{chunk.JBTU2PJ4.js → chunk.Q4TZHWQX.js} +1 -1
- package/dist/preview/chunk.QCWZSSNC.js +1 -0
- package/dist/preview/chunk.QIV65FWE.js +1 -0
- package/dist/preview/chunk.R5WY567U.js +88 -0
- package/dist/preview/{chunk.GP2F7TIN.js → chunk.RCM7NOPF.js} +2 -1
- package/dist/preview/{chunk.F5UVEF2R.js → chunk.S2U5CEP4.js} +1 -1
- package/dist/preview/chunk.S356ACK2.js +1 -0
- package/dist/preview/{chunk.W4OX4BMP.js → chunk.SIGC3G7S.js} +1 -1
- package/dist/preview/{chunk.LP3QUPCE.js → chunk.STI447YW.js} +1 -1
- package/dist/preview/chunk.T3TYD7QI.js +1 -0
- package/dist/preview/{chunk.BYKR7NEE.js → chunk.T73RB7LC.js} +1 -1
- package/dist/preview/chunk.TD2LNFUB.js +1 -0
- package/dist/preview/{chunk.2BJRS3YJ.js → chunk.TGVUIFKD.js} +1 -1
- package/dist/preview/{chunk.AYHCQWSU.js → chunk.TIH2PDFH.js} +1 -1
- package/dist/preview/chunk.TKUNRFDE.js +1 -0
- package/dist/preview/{chunk.6DHHUBSC.js → chunk.TNESS3LQ.js} +1 -1
- package/dist/preview/chunk.UHI3D7JC.js +1 -0
- package/dist/preview/{chunk.XLI44BBI.js → chunk.UOPKRN55.js} +1 -1
- package/dist/preview/{chunk.RM7NVN7B.js → chunk.UTCB3CE7.js} +2 -2
- package/dist/preview/{chunk.H5CZZZLX.js → chunk.UUBYFBPN.js} +1 -1
- package/dist/preview/{chunk.ROINZMNO.js → chunk.UWW6ZEPY.js} +2 -2
- package/dist/preview/chunk.V5MYKNL7.js +5 -0
- package/dist/preview/{chunk.DYNBWIPF.js → chunk.VDAMCTNL.js} +1 -1
- package/dist/preview/{chunk.ROKRQRID.js → chunk.VF7P3ZVZ.js} +1 -1
- package/dist/preview/chunk.VIYECFKZ.js +6 -0
- package/dist/preview/{chunk.ITEF3U2E.js → chunk.VJXXCUKS.js} +1 -1
- package/dist/preview/{chunk.EBHKKOPO.js → chunk.VNUHESMZ.js} +1 -1
- package/dist/preview/chunk.VZYCILPJ.js +1 -0
- package/dist/preview/chunk.W4HBRXMY.js +1 -0
- package/dist/preview/chunk.W7R2GFBW.js +47 -0
- package/dist/preview/chunk.WBLHCH5M.js +1 -0
- package/dist/preview/{chunk.CC47O2DW.js → chunk.WVDKYUF3.js} +1 -1
- package/dist/preview/{chunk.BEC5ZH2L.js → chunk.XEKLEHC3.js} +1 -1
- package/dist/preview/{chunk.FILCNVGH.js → chunk.XFZKP4IF.js} +1 -1
- package/dist/preview/{chunk.CAMQ7MYJ.js → chunk.XQHDP5C3.js} +1 -1
- package/dist/preview/{chunk.UB3O3QJQ.js → chunk.XRYTJNA7.js} +1 -1
- package/dist/preview/chunk.YO24NALN.js +1 -0
- package/dist/preview/{chunk.4PNFX3TX.js → chunk.YWNHCZQ5.js} +1 -1
- package/dist/preview/{chunk.4ECICQ2S.js → chunk.YYFLTMNN.js} +1 -1
- package/dist/preview/{chunk.CTK2P4JV.js → chunk.YYIKSH2F.js} +2 -2
- package/dist/preview/{chunk.B2IRADR2.js → chunk.Z5AB2DBF.js} +1 -1
- package/dist/preview/{chunk.C6X7CKU6.js → chunk.Z7LDT55A.js} +1 -1
- package/dist/preview/{chunk.EDC4EMIX.js → chunk.ZGCRMNER.js} +1 -1
- package/dist/preview/{chunk.2IX3CZNP.js → chunk.ZHLQWMV5.js} +1 -1
- package/dist/preview/{chunk.2GGDOFTF.js → chunk.ZJMDLRC5.js} +1 -1
- package/dist/preview/{chunk.N2SV3KX7.js → chunk.ZK3X23EU.js} +1 -1
- package/dist/preview/{chunk.JCR3ECUM.js → chunk.ZOR6FKNI.js} +1 -1
- package/dist/preview/{chunk.STBJV6HJ.js → chunk.ZRLXVYPG.js} +1 -1
- package/dist/preview/index.html +45 -43
- package/dist/preview/page.js +8 -8
- package/package.json +6 -6
- package/dist/preview/chunk.2HF54MYG.js +0 -1
- package/dist/preview/chunk.2RCNSHXK.js +0 -1
- package/dist/preview/chunk.546WEHEX.js +0 -47
- package/dist/preview/chunk.57OPL5WD.js +0 -1
- package/dist/preview/chunk.5ZMENPY4.js +0 -5
- package/dist/preview/chunk.6HBEYRJU.js +0 -1
- package/dist/preview/chunk.6L7IDF3J.js +0 -1
- package/dist/preview/chunk.ALDLAQ7V.js +0 -1
- package/dist/preview/chunk.BCHHBGM6.js +0 -1
- package/dist/preview/chunk.BL4S3I2N.js +0 -1
- package/dist/preview/chunk.BS3FX4PX.js +0 -1
- package/dist/preview/chunk.BTSXYZ6Z.js +0 -25
- package/dist/preview/chunk.BZSU4HH2.js +0 -1
- package/dist/preview/chunk.DAA7IDQ4.js +0 -1
- package/dist/preview/chunk.E3HXXUKY.js +0 -1
- package/dist/preview/chunk.EM4Y4YAD.js +0 -2
- package/dist/preview/chunk.FGDHEVH4.js +0 -1
- package/dist/preview/chunk.FJBQ4UP3.js +0 -32
- package/dist/preview/chunk.G23VFYGF.js +0 -88
- package/dist/preview/chunk.HFDYFPMJ.js +0 -1
- package/dist/preview/chunk.HGS32FT2.js +0 -1
- package/dist/preview/chunk.J3M2MZHG.js +0 -1
- package/dist/preview/chunk.KIJCOW25.js +0 -1
- package/dist/preview/chunk.L7DQKPJV.js +0 -117
- package/dist/preview/chunk.LP2DJ5ZB.js +0 -6
- package/dist/preview/chunk.N7N5OFPL.js +0 -1
- package/dist/preview/chunk.ORXFUK6F.js +0 -344
- package/dist/preview/chunk.OXTUXWMU.js +0 -1
- package/dist/preview/chunk.P5325GYR.js +0 -1
- package/dist/preview/chunk.PMER4LVT.js +0 -1
- package/dist/preview/chunk.PONWLTTB.js +0 -1
- package/dist/preview/chunk.QCF6Z2AZ.js +0 -1
- package/dist/preview/chunk.RWB4235L.js +0 -1
- package/dist/preview/chunk.SK33IHL2.js +0 -4
- package/dist/preview/chunk.TCUB6IDY.js +0 -1
- package/dist/preview/chunk.TJCTTJWE.js +0 -1
- package/dist/preview/chunk.UCZR33MK.js +0 -1
- package/dist/preview/chunk.UGCNMAPC.js +0 -1
- package/dist/preview/chunk.XDYAG276.js +0 -1
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{A as Vt,B as Pe,C as Mn,D as He,E as Ue,F as Jr,G as En,H as Re,I as ei,J as ti,K as F,L as dt,M as Nn,N as ni,O as $n,P as Ut,Q as ai,R as ae,S as ie,T as On,a as Y,b as Ee,c as Z,d as _r,e as Ln,f as Tn,g as lt,h as J,i as ke,j as re,k as C,l as te,m as K,n as Se,o as Kt,p as xe,q as fe,r as Qr,s as ft,t as Bt,u as Q,v as Ve,w as Zr,x as qt,y as Ce,z as Xr}from"./chunk.546WEHEX.js";import{b as Yr,c as Gt,e as ne}from"./chunk.BZSU4HH2.js";import{a as Ur,d as jr,e as zr}from"./chunk.UGFDSE37.js";import{a as Hr,c as Kr,f as Br,g as qr,i as Gr,j as Vr}from"./chunk.P5325GYR.js";import{a as Mr,b as Er,c as Nr,d as Rn}from"./chunk.QEXXLWEU.js";import{b as Tr}from"./chunk.BEC5ZH2L.js";import{a as $r,b as Or,d as It,e as Fr,f as Ir,i as Dt}from"./chunk.6HBEYRJU.js";import{a as Wt,b as Ht}from"./chunk.PXQVXBNG.js";import{a as Lt,b as Ha,c as Ka,d as Tt,e as Ba}from"./chunk.6CFP5UYP.js";import{b as Xa,c as sr,e as lr,f as xn}from"./chunk.CAMQ7MYJ.js";import{a as Ot,b as Ft,c as Cr,e as Rr}from"./chunk.HFDYFPMJ.js";import{a as Ge,b as nr,c as ar,d as rr,e as ir,f as or}from"./chunk.RWB4235L.js";import{m as Lr}from"./chunk.GXKECZ4S.js";import{a as gr,b as mr,c as fr,e as Ar,f as Cn,h as $t}from"./chunk.3ZNQ5YKX.js";import{d as vr,e as wr,f as br,g as kr,n as Sr,o as xr,q as Pr,s as Nt}from"./chunk.7EFNLMKU.js";import{a as Pn}from"./chunk.J3M2MZHG.js";import{a as kn,b as Qa,c as Za}from"./chunk.UT6642FC.js";import{a as Et,b as dr,c as cr,d as pr,e as ur}from"./chunk.FMN5XDLE.js";import{c as Ja,d as er,j as mt}from"./chunk.KJNUZYXS.js";import{r as Sn,s as tr}from"./chunk.HHUCPVG5.js";import{f as Ua,g as st,i as ja,j as za,k as bn,q as _a,r as Ya}from"./chunk.NSNGPQGT.js";import{b as Mt,c as qa,d as Ga,e as Va}from"./chunk.H5CZZZLX.js";import{C as An,K as Dr,N as Wr,e as Da,f as Wa,j as Gi,u as yr,v as hr}from"./chunk.ORXFUK6F.js";import{$ as ce,G as Fe,L as Ca,N as Ra,Q as La,R as j,S as wn,V as Ta,W as Ma,_ as Ea,ca as Na,da as $a,fa as Oa,ja as ot,la as Fa,oa as Rt,r as Aa,v as Oe,ya as Ia}from"./chunk.BTSXYZ6Z.js";import{a as Pa}from"./chunk.SDO3U72B.js";import{I as la,Rc as hn,T as gt,Ub as ya,Va as ga,Wc as ba,Xa as ma,Xb as ha,Xc as ka,Yb as va,Zc as Ct,aa as rt,ba as me,da as be,ea as Pt,fb as yn,ga as it,gb as fa,gd as vn,hd as Sa,ia as da,ja as ca,ka as qe,ld as xa,ob as At,sc as wa,ua as pa,va as ua}from"./chunk.5ZMENPY4.js";import{b as D}from"./chunk.AJZBJBMO.js";function ri(t,e,n={}){let a=t.graph.getNode(e);if(!a)return;let r=t.schema.tryDefinition(a.kind),i=l=>me(t.schema.tryDefinition(l.kind),l),o=new Map;for(let l of t.graph.allEdges()){let d=l.from===e?"out":l.to===e?"in":null;if(!d)continue;let c=d==="out"?l.to:l.from,p=t.graph.getNode(c);if(!p)continue;let f=(d==="out"?r:t.schema.tryDefinition(p.kind))?.edges?.[l.kind],u=d==="in"?f?.inverse??f?.description:f?.description,k=`${l.kind}|${d}|${u??""}`;(o.get(k)??(()=>{let h={edgeKind:l.kind,direction:d,...u?{description:u}:{},targets:[]};return o.set(k,h),h})()).targets.push({id:p.id,kind:p.kind,label:i(p)})}return{id:e,kind:a.kind,label:i(a),fields:Ga(mt(t.schema,t.graph,a),r),violations:yn(t.violations(n.context),[e]),actions:Pn(t,[e],{focus:e,...n.principal?{principal:n.principal}:{},...n.context?{context:n.context}:{}}),links:[...o.values()].map(l=>{let d=Mt(l.targets.flatMap(c=>{let p=t.graph.getNode(c.id);return p?[p]:[]}),c=>t.schema.tryDefinition(c));return{...l,targets:[...l.targets].map(c=>d.has(c.id)?{...c,apart:d.get(c.id)}:c).sort((c,p)=>c.label.localeCompare(p.label))}})}}function _e(t,e,n={}){return{kind:e,members:t.graph.nodesOfKind(e),actions:Pn(t,[],{kindSelection:[e],...n.principal?{principal:n.principal}:{},...n.context?{context:n.context}:{}})}}function ii(t,e){let n=(i,o)=>`${i}|${JSON.stringify(o)}`,a=new Map;for(let i of[...t.affordances,...t.withheld]){if(i.provider!=="invariant")continue;let o=n(i.mutation,i.args);a.has(o)||a.set(o,i.rank??Number.MAX_SAFE_INTEGER)}let r=Number.MAX_SAFE_INTEGER;return[...e].map((i,o)=>({repair:i,declared:o})).sort((i,o)=>(a.get(n(i.repair.mutation,i.repair.args??{}))??r)-(a.get(n(o.repair.mutation,o.repair.args??{}))??r)||i.declared-o.declared).map(i=>i.repair)}function Ye(t){let e=t.schema.kinds.map(r=>({kind:r,plural:it(t.schema,r),count:t.graph.nodesOfKind(r).length})),n=new Map;for(let r of t.graph.allEdges()){let i=t.graph.getNode(r.from),o=t.graph.getNode(r.to);if(!i||!o)continue;let l=`${r.kind}|${i.kind}|${o.kind}`;n.set(l,(n.get(l)??0)+1)}let a=[];for(let{kind:r}of e){let i=t.schema.tryDefinition(r)?.edges??{};for(let[o,l]of Object.entries(i)){let d=l.to==="*"||l.to===void 0?(()=>{let c=[...n.keys()].filter(p=>p.startsWith(`${o}|${r}|`)).map(p=>p.split("|")[2]);return c.length>0?c:["*"]})():l.to;for(let c of d)a.push({edgeKind:o,from:r,to:c,...l.description?{description:l.description}:{},...l.inverse?{inverse:l.inverse}:{},count:n.get(`${o}|${r}|${c}`)??0})}}return{kinds:e,relations:a}}var Ke=D(Fe(),1);var Qe=D(Fe(),1),x=D(j(),1),Vi=`
|
|
2
|
-
form:where([data-graview-part="form"]) {
|
|
3
|
-
/* A grid item of the section above it and a grid container for the
|
|
4
|
-
fields below: both halves are allowed to be narrower than what is in
|
|
5
|
-
them, or a big enough text size pushes the page sideways. See the note
|
|
6
|
-
on \`column\` in pages.tsx. */
|
|
7
|
-
display: grid;
|
|
8
|
-
grid-template-columns: minmax(0, 1fr);
|
|
9
|
-
min-width: 0;
|
|
10
|
-
gap: 12px;
|
|
11
|
-
}
|
|
12
|
-
label:where([data-graview-part="field"]),
|
|
13
|
-
div:where([data-graview-part="field"][data-graview-field="date"]) {
|
|
14
|
-
display: grid;
|
|
15
|
-
/* A track the width it was given: see the note on \`column\` in pages.tsx. */
|
|
16
|
-
grid-template-columns: minmax(0, 1fr);
|
|
17
|
-
min-width: 0;
|
|
18
|
-
gap: 4px;
|
|
19
|
-
}
|
|
20
|
-
label:where([data-graview-part="field"][data-graview-field="boolean"]) {
|
|
21
|
-
grid-auto-flow: column;
|
|
22
|
-
justify-content: start;
|
|
23
|
-
align-items: center;
|
|
24
|
-
}
|
|
25
|
-
span:where([data-graview-part="label"]),
|
|
26
|
-
legend:where([data-graview-part="label"]),
|
|
27
|
-
p:where([data-graview-part="unasked"]) {
|
|
28
|
-
font-size: 0.8125rem;
|
|
29
|
-
color: var(--graview-ink-muted);
|
|
30
|
-
}
|
|
31
|
-
p:where([data-graview-part="unasked"]) { margin: 0; }
|
|
32
|
-
input:where([data-graview-part="control"]:not([type="checkbox"])),
|
|
33
|
-
select:where([data-graview-part="control"]) {
|
|
34
|
-
font: inherit;
|
|
35
|
-
/* A TARGET IN EVERY ENGINE, not only in the one it was measured in.
|
|
36
|
-
Padding and line height alone came to 24 in Chromium and to 22 in
|
|
37
|
-
WebKit, which has its own intrinsic metrics for a \`select\` and rounds
|
|
38
|
-
nothing up for anybody. So every picker on the routed face was under
|
|
39
|
-
the WCAG 2.2 minimum in the browser iOS ships, and the check that says
|
|
40
|
-
so (\`verify-pages\`' \`bigEnoughToHit\`) only ever ran there through
|
|
41
|
-
\`pnpm engines\`. */
|
|
42
|
-
min-height: 24px;
|
|
43
|
-
/* NEVER WIDER THAN ITS FIELD. A select is as wide as its longest option,
|
|
44
|
-
and a picker over 320 vehicles ("2027 Mercedes-Benz GLE AMG 53 4MATIC+
|
|
45
|
-
Coupe") was 618 pixels on a 390 phone, and the whole page scrolled
|
|
46
|
-
sideways. It shrinks to its track and cuts the option inside its box. */
|
|
47
|
-
min-width: 0;
|
|
48
|
-
max-width: 100%;
|
|
49
|
-
text-overflow: ellipsis;
|
|
50
|
-
box-sizing: border-box;
|
|
51
|
-
padding: 7px 10px;
|
|
52
|
-
border-radius: 8px;
|
|
53
|
-
border: 1px solid var(--graview-edge);
|
|
54
|
-
background: var(--graview-panel);
|
|
55
|
-
color: var(--graview-ink);
|
|
56
|
-
}
|
|
57
|
-
/* A PICKER THAT STILL LOOKS LIKE ONE.
|
|
58
|
-
WebKit ignores an author's padding and minimum height on a \`select\`
|
|
59
|
-
while the native appearance is on \u2014 so every picker on the routed face
|
|
60
|
-
came out 22 pixels tall in the browser iOS ships, under the 24 WCAG 2.2
|
|
61
|
-
asks for, while the same element measured 35 in Chromium. Turning the
|
|
62
|
-
appearance off is what makes the box the size it was asked to be, and it
|
|
63
|
-
takes the platform's chevron with it; the chevron is put back, in the ink
|
|
64
|
-
the scheme is already using. */
|
|
65
|
-
span:where([data-graview-part="picker"]) {
|
|
66
|
-
position: relative;
|
|
67
|
-
display: grid;
|
|
68
|
-
min-width: 0;
|
|
69
|
-
}
|
|
70
|
-
span:where([data-graview-part="picker"]) > select:where([data-graview-part="control"]) {
|
|
71
|
-
appearance: none;
|
|
72
|
-
padding-right: 28px;
|
|
73
|
-
}
|
|
74
|
-
span:where([data-graview-part="chevron"]) {
|
|
75
|
-
position: absolute;
|
|
76
|
-
right: 10px;
|
|
77
|
-
top: 50%;
|
|
78
|
-
transform: translateY(-50%);
|
|
79
|
-
font-size: 0.75rem;
|
|
80
|
-
line-height: 1;
|
|
81
|
-
color: var(--graview-ink-muted);
|
|
82
|
-
pointer-events: none;
|
|
83
|
-
}
|
|
84
|
-
fieldset:where([data-graview-part="group"]) {
|
|
85
|
-
display: grid;
|
|
86
|
-
gap: 10px;
|
|
87
|
-
border: 1px solid var(--graview-edge);
|
|
88
|
-
border-radius: 10px;
|
|
89
|
-
padding: 12px;
|
|
90
|
-
}
|
|
91
|
-
fieldset:where([data-graview-part="group"][data-graview-field="list"]) { gap: 8px; }
|
|
92
|
-
div:where([data-graview-part="item"]) {
|
|
93
|
-
display: flex;
|
|
94
|
-
gap: 8px;
|
|
95
|
-
align-items: end;
|
|
96
|
-
}
|
|
97
|
-
button:where([data-graview-part="add"]),
|
|
98
|
-
button:where([data-graview-part="submit"]) { justify-self: start; }
|
|
99
|
-
p:where([data-graview-part="refused"]) {
|
|
100
|
-
margin: 0;
|
|
101
|
-
color: var(--graview-warn);
|
|
102
|
-
font-size: 0.875rem;
|
|
103
|
-
}
|
|
104
|
-
`;function Ui({title:t,name:e,optional:n,amount:a,value:r,onChange:i}){let o=ja(a),[l,d]=(0,Qe.useState)(()=>typeof r=="number"?za(r,a):""),c=l.trim()!==""&&bn(l,a)===void 0;return(0,x.jsxs)("label",{"data-graview-part":"field","data-graview-field":"number","data-graview-amount":a.format??"unit",children:[(0,x.jsx)("span",{"data-graview-part":"label",children:t}),(0,x.jsxs)("span",{"data-graview-part":"amount",style:{display:"flex",alignItems:"center",gap:6},children:[o.prefix?(0,x.jsx)("span",{"data-graview-part":"amount-symbol","aria-hidden":"true",children:o.prefix}):null,(0,x.jsx)("input",{type:"text",inputMode:"decimal",name:e,required:!n,placeholder:o.placeholder,title:o.hint,"aria-invalid":c||void 0,value:l,onChange:p=>{d(p.target.value),i(bn(p.target.value,a))},"data-graview-part":"control",style:{flex:1,minWidth:0}}),o.suffix?(0,x.jsx)("span",{"data-graview-part":"amount-symbol","aria-hidden":"true",children:o.suffix}):null]}),c?(0,x.jsxs)("span",{"data-graview-part":"hint",role:"status",children:["Not an amount ",o.hint,": write it like ",o.prefix??"",o.placeholder,o.suffix?` ${o.suffix}`:""]}):null]})}function oi({children:t}){return(0,x.jsxs)("span",{"data-graview-part":"picker",children:[t,(0,x.jsx)("span",{"aria-hidden":"true","data-graview-part":"chevron",children:"\u25BE"})]})}var ji=t=>({label:be(t),option:e=>e}),zi={phone:"+1 555 123 4567",place:"An address or a place's name",duration:"1h 30m, 90 or 1:30"};function jt({store:t,spec:e,value:n,onChange:a,prefilled:r,open:i,words:o=ji,values:l}){if(e.name in r&&e.control!=="group"&&e.control!=="variant")return null;let d=e.control==="node"&&!e.kinds.includes("*")?e.kinds.map(m=>be(qe(t.schema.tryDefinition(m),m))).join(" or "):o(e.name).label,c=!(e.optional||e.control==="boolean"),p=c?(0,x.jsxs)(x.Fragment,{children:[d,(0,x.jsx)("span",{"aria-hidden":"true",children:" *"})]}):d;switch(e.control){case"text":case"date":return e.control==="text"&&e.long?(0,x.jsxs)("label",{"data-graview-part":"field","data-graview-field":"text",children:[(0,x.jsxs)("span",{"data-graview-part":"label",children:[p,e.markdown?(0,x.jsx)("span",{style:{fontWeight:"normal",color:"var(--graview-ink-faint)"},children:" \xB7 Markdown"}):null]}),(0,x.jsx)("textarea",{name:e.name,required:!e.optional,rows:6,value:typeof n=="string"?n:"",onChange:m=>a(m.target.value),"data-graview-part":"control",style:{fieldSizing:"content",minHeight:"7.5em",resize:"vertical",font:"inherit",lineHeight:1.5}})]}):e.control==="date"?(0,x.jsxs)("div",{"data-graview-part":"field","data-graview-field":"date",children:[(0,x.jsx)("span",{"data-graview-part":"label",children:p}),(0,x.jsx)(or,{name:e.name,label:o(e.name).label,required:!e.optional,value:typeof n=="string"&&n!==""?n:void 0,time:e.time===!0,instant:e.instant===!0,onChange:a})]}):(0,x.jsxs)("label",{"data-graview-part":"field","data-graview-field":e.control==="text"&&e.holds?e.holds:e.control,children:[(0,x.jsx)("span",{"data-graview-part":"label",children:p}),(0,x.jsx)("input",{type:e.control==="text"&&e.holds==="phone"?"tel":"text",name:e.name,required:!e.optional,...e.control==="text"&&e.app?{placeholder:"@owner/app or https://\u2026"}:{},...e.control==="text"&&e.holds?{placeholder:zi[e.holds]}:{},...e.control==="text"&&e.holds==="phone"?{autoComplete:"tel"}:{},value:typeof n=="string"?n:typeof n=="number"?String(n):"",onChange:m=>a(m.target.value),"data-graview-part":"control"})]});case"number":return e.amount?(0,x.jsx)(Ui,{title:p,name:e.name,optional:e.optional,amount:e.amount,value:n,onChange:a}):(0,x.jsxs)("label",{"data-graview-part":"field","data-graview-field":e.control,children:[(0,x.jsx)("span",{"data-graview-part":"label",children:p}),(0,x.jsx)("input",{type:"number",name:e.name,required:!e.optional,...e.min===void 0?{}:{min:e.min},...e.max===void 0?{}:{max:e.max},...e.step===void 0?{}:{step:e.step},value:typeof n=="number"?n:"",onChange:m=>a(m.target.value===""?void 0:Number(m.target.value)),"data-graview-part":"control"})]});case"boolean":return(0,x.jsxs)("label",{"data-graview-part":"field","data-graview-field":"boolean",children:[(0,x.jsx)("input",{type:"checkbox",name:e.name,checked:n===!0,onChange:m=>a(m.target.checked),"data-graview-part":"control"}),(0,x.jsx)("span",{"data-graview-part":"label",children:p})]});case"choice":return(0,x.jsxs)("label",{"data-graview-part":"field","data-graview-field":e.control,children:[(0,x.jsx)("span",{"data-graview-part":"label",children:p}),(0,x.jsx)(oi,{children:(0,x.jsxs)("select",{name:e.name,required:!e.optional,value:typeof n=="string"?n:"",onChange:m=>a(m.target.value||void 0),"data-graview-part":"control",children:[(0,x.jsx)("option",{value:"",children:"\u2014"}),(e.options??[]).map(m=>(0,x.jsx)("option",{value:m,children:o(e.name).option(m)},m))]})})]});case"node":{let m=i.find(h=>h.name===e.name)?.candidates,f=new Set(Object.values(r).filter(h=>typeof h=="string")),u=(e.kinds.includes("*")?[...t.graph.allNodes()]:e.kinds.flatMap(h=>t.graph.nodesOfKind(h))).filter(h=>!f.has(h.id)),k=m?m.map(h=>t.graph.getNode(h)).filter(h=>h!==void 0):u,q=Mt(k,h=>t.schema.tryDefinition(h));return(0,x.jsxs)("label",{"data-graview-part":"field","data-graview-field":e.control,children:[(0,x.jsx)("span",{"data-graview-part":"label",children:p}),(0,x.jsx)(oi,{children:(0,x.jsxs)("select",{name:e.name,required:!e.optional,value:typeof n=="string"?n:"",onChange:h=>a(h.target.value||void 0),"data-graview-part":"control",children:[(0,x.jsx)("option",{value:"",children:"\u2014"}),k.map(h=>{let R=q.get(h.id);return(0,x.jsxs)("option",{value:h.id,children:[me(t.schema.tryDefinition(h.kind),h),R?` \xB7 ${R}`:""]},h.id)})]})})]})}case"group":{let m=n??{};return(0,x.jsxs)("fieldset",{"data-graview-part":"group","data-graview-field":e.control,children:[(0,x.jsx)("legend",{"data-graview-part":"label",children:p}),e.fields.map(f=>(0,x.jsx)(jt,{store:t,spec:f,value:m[f.name],onChange:u=>a({...m,[f.name]:u}),prefilled:r,open:i,words:o},f.name))]})}case"variant":{let m=n??{},f=typeof m[e.tag]=="string"?m[e.tag]:"",u=e.options.find(k=>k.value===f);return(0,x.jsxs)("fieldset",{"data-graview-part":"group","data-graview-field":e.control,children:[(0,x.jsx)("legend",{"data-graview-part":"label",children:p}),(0,x.jsxs)("label",{"data-graview-part":"field","data-graview-field":"choice",children:[(0,x.jsx)("span",{"data-graview-part":"label",children:be(e.tag)}),(0,x.jsxs)("select",{value:f,onChange:k=>a({[e.tag]:k.target.value}),"data-graview-part":"control",children:[(0,x.jsx)("option",{value:"",children:"\u2014"}),e.options.map(k=>(0,x.jsx)("option",{value:k.value,children:be(k.value)},k.value))]})]}),u?.fields.map(k=>(0,x.jsx)(jt,{store:t,spec:k,value:m[k.name],onChange:q=>a({...m,[k.name]:q}),prefilled:r,open:i,words:o},k.name))]})}case"file":case"list":{let m=e.control==="file"?e:e.item.control==="file"?e.item:void 0;if(m||e.control==="file")return(0,x.jsx)(Ge,{as:"control",title:c?`${d} *`:d,value:n,onChange:a,several:m!==e,image:m?.image===!0,video:m?.video===!0,label:d});let f=Array.isArray(n)?n:[];return(0,x.jsxs)("fieldset",{"data-graview-part":"group","data-graview-field":"list",children:[(0,x.jsx)("legend",{"data-graview-part":"label",children:p}),f.map((u,k)=>(0,x.jsxs)("div",{"data-graview-part":"item",children:[(0,x.jsx)("div",{style:{flex:1},children:(0,x.jsx)(jt,{store:t,spec:{...e.item,optional:!1},value:u,onChange:q=>a(f.map((h,R)=>R===k?q:h)),prefilled:r,open:i,words:o})}),(0,x.jsx)("button",{type:"button","data-graview-part":"remove",onClick:()=>a(f.filter((q,h)=>h!==k)),children:"remove"})]},k)),(0,x.jsx)("button",{type:"button","data-graview-part":"add",onClick:()=>a([...f,void 0]),children:"add another"})]})}case"linked":return(0,x.jsx)("div",{"data-graview-part":"field","data-graview-field":"linked",children:(0,x.jsx)(ar,{relation:e.relation,value:n,onChange:a,label:d})});case"repeat":return(0,x.jsx)(rr,{value:n,onChange:a,start:e.of?l?.[e.of]:void 0,label:`${e.of?o(e.of).label:d} repeats`,name:e.name});case"opaque":return(0,x.jsxs)("p",{"data-graview-part":"unasked",children:["\u201C",be(e.name),"\u201D needs a structured answer this form cannot ask for yet."]})}}function Ie({store:t,mutation:e,prefilled:n={},open:a=[],onDone:r,principal:i,initial:o,label:l,only:d}){let c=()=>cr(e,t.graph,n),[p,m]=(0,Qe.useState)(c),[f,u]=(0,Qe.useState)(()=>({...p,...o})),[k,q]=(0,Qe.useState)(null),h=i??t.seenFor,R=e.subject&&n[e.subject.arg],G=h?ur(t,h,e,typeof R=="string"?R:void 0):void 0,M=Et(e.input).filter(I=>(d===void 0||d.includes(I.name))&&!G?.has(I.name)),V=I=>Ua(t.schema,e,I),z=Ya(M.filter(I=>I.control==="date").map(I=>I.name)),se=(0,Qe.useRef)(void 0),ue=(I,_)=>u(oe=>{let we={...oe,[I.name]:_};if(z&&I.name===z.start&&I.control==="date"){let le=w=>typeof w=="string"&&w!==""?w:void 0,ge=le(oe[z.start])??se.current;if(le(_)){se.current=le(_);let w=_a(ge,le(_),le(oe[z.end]),{time:I.time===!0,instant:I.instant===!0});w!==void 0&&(we[z.end]=w)}}return we});return(0,x.jsxs)("form",{"data-testid":`form-${e.name}`,onSubmit:I=>{I.preventDefault();try{t.apply({name:e.name,args:{...pr(dr(M,f),p),...n}},i?{author:i}:{}),q(null);let _=c();m(_),u({..._}),r?.()}catch(_){q(st(t.schema,t.allMutations(),_))}},"data-graview-part":"form",children:[(0,x.jsx)("style",{children:Vi}),M.map(I=>(0,x.jsx)(jt,{store:t,spec:I,value:f[I.name],values:f,onChange:_=>ue(I,_),prefilled:n,open:a,words:V},I.name)),k?(0,x.jsx)("p",{"data-testid":"refused","data-graview-part":"refused",role:"alert",children:k}):null,(0,x.jsx)("button",{type:"submit","data-graview-part":"submit",children:l??e.title??e.name})]})}var T=D(j(),1);function Le(t){let e=t.views;if(!e)return[];let n=new Set(Ve(t.store,t.principal));return e.places().filter(a=>n.has(a.kind))}function zt(t,e){if(!e.over)return[e.kind];let n=new Set(Ve(t.store,t.principal));return e.over.filter(a=>a===e.kind||n.has(a))}var Ze=t=>`place:${t.kind}:${t.as}`;function ye(t,e){return _r(e.as,ba(e,t.views?.places()??[])?Y(t.store.schema,e.kind):void 0)}function yt(t,e){let n=t.schema.tryDefinition(e);return t.graph.nodesOfKind(e).filter(a=>rt(n,a))}function Fn(t,e,n){let a=(i,o)=>Pt(t.schema,o,i),r=(typeof e=="string"?[e]:e).map(i=>a(yt(t,i).length,i)).join(" and ");return n?`${r} across ${a(yt(t,n).length,n)}`:r}function In({context:t,place:e,chosen:n,filter:a}){let{store:r,views:i,invariantContext:o}=t,d=i?.resolve(e.kind,{cardinality:"many",fidelity:"full"},e.as)?.view,c=[...new Set(r.violations(o).flatMap(f=>f.nodeIds))],p=zt(t,e).flatMap(f=>yt(r,f));if(!d)return null;let m=_i(r,p,a,c);return(0,T.jsx)(Sn,{kind:e.kind,view:e.title,children:(0,T.jsx)(d,{nodes:m,label:e.title,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...n&&n.length>0?{implicated:n}:{},...c.length>0?{flagged:c}:{}})})}function _i(t,e,n,a){let r=n?Ct({filter:n}).filter??[]:[];return r.length===0?e:$t(e,{filter:r},{schema:t.schema,graph:t.graph,flagged:new Set(a)}).nodes}function Yi({store:t,views:e,as:n,invariantContext:a}){ne(t);let r={store:t,views:e,...a?{invariantContext:a}:{}},i=e.places().find(o=>o.as===n);return i?(0,T.jsx)(In,{context:r,place:i}):null}function Qi({context:t,kind:e}){let{store:n,views:a,invariantContext:r}=t,i=yt(n,e),o=n.schema.tryDefinition(e),l=Q(n,e),c=a?.resolve(e,{cardinality:"many",fidelity:"full"})?.view,p=[...new Set(n.violations(r).flatMap(k=>k.nodeIds))];if(c&&!ot(c))return(0,T.jsx)(Sn,{kind:e,children:(0,T.jsx)(c,{nodes:i,label:l,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...p.length>0?{flagged:p}:{}})});let m=a?.resolve(e,{cardinality:"one",fidelity:"summary"})?.view,f=8,u=i.slice(0,f);return(0,T.jsxs)("div",{"data-testid":"kind-sheet",style:m?{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:[u.map(k=>m?(0,T.jsx)(m,{node:k,fidelity:"summary",cardinality:"one",mode:"fullscreen",selected:!1,...p.includes(k.id)?{flagged:[k.id]}:{}},k.id):(0,T.jsx)("span",{style:{padding:"8px 14px",borderRadius:8,border:"1px solid var(--graview-edge-bright)",background:"var(--graview-ground)",color:"var(--graview-ink)"},children:me(o,k)},k.id)),i.length>f?(0,T.jsxs)("span",{style:{...C,alignSelf:"center",padding:"0 6px"},children:["+",i.length-f," more ",l.toLowerCase()]}):null]})}function Dn(t){let{store:e}=t,n=Zr(t),a=Le(t),r=hn([...a].sort((o,l)=>n.indexOf(o.kind)-n.indexOf(l.kind))).filter(o=>!o.hidden),i=new Set(r.flatMap(o=>o.over??[o.kind]));return[...r.map(o=>({key:Ze(o),kind:o.kind,title:ka(o,a,e.schema),to:ye(t,o),place:o})),...qt(t).filter(o=>!i.has(o)).map(o=>({key:`kind:${o}`,kind:o,title:Q(e,o),to:`/${Y(e.schema,o)}`}))]}var si=.72,Zi=540,li=16/10;function Xi(t){let e=(0,Ke.useRef)(null),[n,a]=(0,Ke.useState)(t);return(0,Ke.useLayoutEffect)(()=>{let r=e.current;if(!r||typeof ResizeObserver>"u")return;let i=()=>{let l=r.getBoundingClientRect().width;l>0&&a(d=>Math.abs(d-l)<.5?d:l)};i();let o=new ResizeObserver(i);return o.observe(r),()=>o.disconnect()},[]),{ref:e,width:n}}function Ji(t){for(let e=t.parentElement;e;e=e.parentElement)if(/(auto|scroll)/.test(getComputedStyle(e).overflowY))return e;return null}function eo(t){let[e,n]=(0,Ke.useState)(()=>typeof IntersectionObserver>"u");return(0,Ke.useLayoutEffect)(()=>{let a=t.current;if(e||!a)return;let r=new IntersectionObserver(i=>{i.some(o=>o.isIntersecting)&&(r.disconnect(),n(!0))},{root:Ji(a),rootMargin:"50% 0px"});return r.observe(a),()=>r.disconnect()},[e,t]),e}function Wn({context:t,entry:e}){let{store:n,brand:a,principal:r}=t,{ref:i,width:o}=Xi(Zi),l=eo(i),d=o/si,c=yt(n,e.kind),p=n.schema.tryDefinition(e.kind),m=c.length===0?_e(n,e.kind,{...r?{principal:r}:{},...t.invariantContext?{context:t.invariantContext}:{}}).actions.affordances[0]:void 0,f=e.place!==void 0;return(0,T.jsxs)(F,{to:e.to,"data-testid":f?"place-card":"kind-card",className:"graview-gallery-card",style:{...Se,display:"grid",gap:10,alignContent:"start",minWidth:0},children:[(0,T.jsxs)("span",{ref:i,"data-testid":f?"place-picture":"kind-picture","aria-hidden":"true",inert:!0,style:{display:"block",position:"relative",width:"100%",aspectRatio:`${li}`,overflow:"hidden",borderRadius:12,border:"1px solid var(--graview-edge)",background:"var(--graview-panel)",pointerEvents:"none"},children:[(0,T.jsx)("span",{style:{position:"absolute",left:0,top:0,width:d,height:d/li,display:"grid",gridTemplateRows:"minmax(0, 1fr)",transform:`scale(${si})`,transformOrigin:"0 0"},children:l?(0,T.jsx)(It.Provider,{value:null,children:e.place?(0,T.jsx)(In,{context:t,place:e.place}):(0,T.jsx)(Qi,{context:t,kind:e.kind})}):null}),c.length===0?(0,T.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,T.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,T.jsxs)("span",{style:{fontFamily:Tn,fontWeight:"var(--graview-weight-display)"},children:["No ",Q(n,e.kind).toLowerCase()," yet"]}),m?(0,T.jsxs)("span",{style:C,children:["Begin with \u201C",m.label,"\u201D"]}):null]})}):null]}),(0,T.jsxs)("span",{style:{display:"grid",gap:2,minWidth:0},children:[(0,T.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},children:[f?null:(0,T.jsx)(fe,{kind:e.kind,brand:a,schema:n.schema,size:8}),(0,T.jsx)("span",{style:{fontFamily:Tn,fontSize:"var(--graview-text-heading)",fontWeight:"var(--graview-weight-display)",lineHeight:1.3,overflowWrap:"anywhere",textWrap:"balance"},children:e.title})]}),(0,T.jsxs)("span",{style:C,children:[e.place?Fn(n,zt(t,e.place),e.place.across):Fn(n,e.kind),!f&&p?.description?` \xB7 ${p.description}`:null]})]})]})}var di={display:"grid",gap:"32px 28px",gridTemplateColumns:"repeat(auto-fill, minmax(min(420px, 100%), 1fr))"},to=`
|
|
105
|
-
.graview-gallery-card > span:first-child { transition: border-color 160ms ease, box-shadow 160ms ease; }
|
|
106
|
-
.graview-gallery-card:hover > span:first-child,
|
|
107
|
-
.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); }
|
|
108
|
-
`;function Hn({context:t}){ne(t.store);let e=Dn(t);return e.length===0?null:(0,T.jsxs)("section",{style:di,"data-testid":"gallery",children:[(0,T.jsx)("style",{children:to}),e.map(n=>(0,T.jsx)(Wn,{context:t,entry:n},n.key))]})}function Kn({context:t}){let{store:e}=t;ne(e);let n=hn(Le(t)).filter(r=>!r.hidden),a=Dn(t);return(0,T.jsxs)(ae,{context:t,style:lt,children:[(0,T.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,T.jsx)("p",{style:ke,children:n.length===0?"None of its own yet":`${n.length} ${n.length===1?"picture":"pictures"}`}),(0,T.jsx)(ie,{context:t,children:"Pictures"}),(0,T.jsx)("p",{style:re,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,T.jsx)("div",{style:di,"data-testid":"places",children:a.map(r=>(0,T.jsx)(Wn,{context:t,entry:r},r.key))}):null]})}function Bn({context:t}){let{store:e,principal:n}=t;ne(e);let a=Ue(),r=He(),[i]=dt(),o=decodeURIComponent(a.as??""),[l,d]=(0,Ke.useState)(null),c=i.get("of"),p=i.get("filter"),f=Le(t).find(M=>M.as===o&&(!c||Y(e.schema,M.kind)===c));if(!f)return(0,T.jsxs)(ae,{context:t,children:[(0,T.jsx)(ie,{context:t,children:"No picture is called that."}),(0,T.jsx)("p",{style:re,children:(0,T.jsxs)(F,{to:"/places",style:K,children:["The pictures there are ",(0,T.jsx)("span",{"aria-hidden":"true",children:"\u2192"})]})})]});let u=Q(e,f.kind),k=t.views?.resolve(f.kind,{cardinality:"many",fidelity:"full"},f.as)?.view,q=k?.flows===!0,h=k?.creates!==!1,R=_e(e,f.kind,{...n?{principal:n}:{},...t.invariantContext?{context:t.invariantContext}:{}}),G=h?R.actions.affordances.map(M=>({affordance:M,mutation:e.allMutations().find(V=>V.name===M.mutation)})).filter(M=>M.mutation!==void 0):[];return(0,T.jsxs)(ae,{context:t,style:lt,children:[(0,T.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,T.jsx)(ie,{context:t,children:f.title}),(0,T.jsxs)("p",{style:re,"data-testid":"place-lede",children:[Fn(e,zt(t,f),f.across),"."]}),p&&!q?(0,T.jsxs)("p",{style:{...C,margin:0},"data-testid":"place-narrowed",children:[`Only those where ${p.split(",").map(M=>M.replace(":"," is ")).join(" and ")}. `,(0,T.jsx)(F,{to:`?${(()=>{let M=new URLSearchParams(i);return M.delete("filter"),M.toString()})()}`,style:{...K,...C},children:"Show all"})]}):null,(0,T.jsx)("p",{style:{...C,margin:0,display:"flex",flexWrap:"wrap",gap:"4px 16px"},children:zt(t,f).map((M,V)=>(0,T.jsxs)(F,{to:`/${Y(e.schema,M)}`,style:{...K,...C},...V===0?{"data-testid":"place-as-list"}:{},children:["All ",(M===f.kind?u:Q(e,M)).toLowerCase()," as a list ",(0,T.jsx)("span",{"aria-hidden":"true",children:"\u2192"})]},M))})]}),(0,T.jsx)("div",{"data-testid":"place-lens","data-flows":q?"":void 0,style:q?{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:M=>{let V=M.target?.closest("[data-graview-pick]"),z=V?.getAttribute("data-graview-pick"),se=V?.getAttribute("data-graview-joins");if(se)try{let I=JSON.parse(se);if(Array.isArray(I)&&I.every(_=>typeof _=="string")){M.preventDefault(),d({at:Ze(f),ids:I});return}}catch{}if(!z)return;let ue=e.graph.getNode(z);ue&&(M.preventDefault(),r(Z(e.schema,ue.kind,z)))},children:(0,T.jsx)(In,{context:t,place:f,filter:p,...l?.at===Ze(f)?{chosen:l.ids}:{}})}),G.length>0?(0,T.jsx)("div",{style:{maxWidth:760,display:"grid",gap:40},"data-testid":"place-creators",children:G.map(({affordance:M,mutation:V})=>(0,T.jsxs)("section",{style:{...te,display:"grid",gap:14},children:[(0,T.jsx)("h2",{style:J,children:V.title??V.name}),V.description?(0,T.jsx)("p",{style:{...C,margin:0,maxWidth:"58ch"},children:V.description}):null,(0,T.jsx)(Ie,{store:e,mutation:V,prefilled:M.args,open:M.open,label:M.label,...n?{principal:n}:{}})]},M.id))}):null]})}function no(t,e=document){let n=Wt(t);if(!n)return null;let a=[e,...[...e.querySelectorAll("[data-worker-view]")].flatMap(r=>r.shadowRoot?[r.shadowRoot]:[])];for(let r of a)for(let i of r.querySelectorAll("[id], [data-section]")){let o=i.getAttribute("data-section")??i.id;if(o===t||Wt(o)===n)return i}for(let r of a)for(let i of r.querySelectorAll("h1, h2, h3, h4, h5, h6, [role=heading]"))if(Wt(i.textContent??"")===n)return i;return null}function ci(t,e={}){if(typeof document>"u"||typeof requestAnimationFrame>"u")return()=>{};let n=e.frames??120,a=0,r=()=>{let i=no(t,e.root??document);if(i){i.hasAttribute("tabindex")||i.setAttribute("tabindex","-1"),i.scrollIntoView?.({block:"start"}),i.focus({preventScroll:!0});return}n-=1,n>0&&(a=requestAnimationFrame(r))};return a=requestAnimationFrame(()=>{a=requestAnimationFrame(r)}),()=>cancelAnimationFrame(a)}var U=D(Fe(),1);var _t=D(Fe(),1);var Xe=D(j(),1);function pi({context:t}){return ce()?(0,Xe.jsxs)(Xe.Fragment,{children:[(0,Xe.jsx)(ao,{context:t}),(0,Xe.jsx)(Kr,{face:"pages",on:t.quickAsk??!0})]}):null}function ao({context:t}){let{store:e}=t,n=ce(),{pathname:a}=Pe(),r=(0,_t.useRef)(n?.setSelection);return r.current=n?.setSelection,(0,_t.useEffect)(()=>{let i=r.current;if(!i)return;let[,o,l]=a.split("/"),d=(()=>{if(o==="places"){let p=t.views?.places().find(m=>m.as===decodeURIComponent(l??""));return p?[Oe(p.kind)]:[]}let c=o?Ee(e.schema,o):void 0;return c&&l?[decodeURIComponent(l)]:c?[Aa(c)]:[]})();i(c=>c.length===d.length&&c.every((p,m)=>p===d[m])?c:d)},[a]),null}var he=D(Fe(),1);var gi=D(Gi(),1);var pe=D(j(),1);var ro=(0,he.lazy)(Rt(Pa(()=>(__graviewPreload(import.meta.url,["./chunk.BZSU4HH2.js","./chunk.UGFDSE37.js","./chunk.P5325GYR.js","./chunk.QEXXLWEU.js","./chunk.BEC5ZH2L.js","./chunk.6HBEYRJU.js","./chunk.U7QMA4H7.js","./chunk.GP2F7TIN.js","./chunk.C6X7CKU6.js","./chunk.6CFP5UYP.js","./chunk.CAMQ7MYJ.js","./chunk.2GGDOFTF.js","./chunk.ZTMDU3OH.js","./chunk.HFDYFPMJ.js","./chunk.RWB4235L.js","./chunk.CTK2P4JV.js","./chunk.GXKECZ4S.js","./chunk.6XU2CXRZ.js","./chunk.3ZNQ5YKX.js","./chunk.7EFNLMKU.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.KJNUZYXS.js","./chunk.4BBJ62ZO.js","./chunk.UCZR33MK.js","./chunk.CC47O2DW.js","./chunk.2IX3CZNP.js","./chunk.6DHHUBSC.js","./chunk.GZHZLJBF.js","./chunk.HHUCPVG5.js","./chunk.OJGHDWI6.js","./chunk.WXYUWBKX.js","./chunk.NSNGPQGT.js","./chunk.H5CZZZLX.js","./chunk.Z7JRBKA7.js","./chunk.ORXFUK6F.js","./chunk.BTSXYZ6Z.js","./chunk.SDO3U72B.js","./chunk.5ZMENPY4.js","./chunk.AJZBJBMO.js"]),import("./chunk.KIJCOW25.js")).then(t=>({default:t.TakeBack})))));function io({context:t,docked:e,at:n}){let{store:a}=t,r=ne(a),[i]=(0,he.useState)(()=>a.batches().length),o=(0,he.useRef)(!1);return o.current||=r>0||!e&&i>0,o.current?(0,pe.jsx)(he.Suspense,{fallback:null,children:(0,pe.jsx)(ro,{context:t,docked:e,at:n,since:i})}):null}function oo(t,e,n){let{store:a,principal:r,embedded:i}=t;(0,he.useEffect)(()=>{if(!n)return;let o=l=>{if(!zr(l))return;let d=l.target,c=d instanceof Node&&e.current?.contains(d),p=d===document.body||d===document.documentElement||d===document;if(!(!c&&!(p&&!i))&&Ur(a,r)){l.preventDefault();try{jr(a,r)}catch{}}};return document.addEventListener("keydown",o),()=>document.removeEventListener("keydown",o)},[a,r,i,e,n])}function mi({context:t,registry:e,root:n,children:a}){let r=(0,he.useMemo)(ni,[]),i=e?.without()??new Set;return oo(t,n,!i.has("undo")),(0,pe.jsxs)(Nn.Provider,{value:r,children:[(0,pe.jsx)(so,{context:t,placed:r,without:i}),a]})}function so({context:t,placed:e,without:n}){let[a,r]=(0,he.useState)(!1);(0,he.useLayoutEffect)(()=>r(!0),[]);let i=$n(e,"find"),o=$n(e,"undo"),l=Pe(),d=hr();if(!a)return null;let c=l.pathname.split("/").filter(Boolean),m=(c.length===1?Ee(t.store.schema,c[0]):void 0)!==void 0;return(0,pe.jsxs)(pe.Fragment,{children:[!i&&!n.has("find")&&d?(0,gi.createPortal)((0,pe.jsx)(ui,{context:t,narrowsLists:m}),d.slot):null,!i&&!n.has("find")&&!d?(0,pe.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,pe.jsx)(ui,{context:t,narrowsLists:m})}):null,!o&&!n.has("undo")?(0,pe.jsx)(io,{context:t,docked:!0,at:l.pathname+l.search}):null,d?.own&&!n.has("undo")?(0,pe.jsx)(Xr,{context:t,own:d.own}):null]})}function ui({context:t,narrowsLists:e}){return(0,pe.jsx)(Nn.Provider,{value:null,children:(0,pe.jsx)(On,{context:t,narrowsLists:e})})}var X=D(Fe(),1);var Ae=D(j(),1),lo=500,co=10;function Yt(t){return t instanceof HTMLElement?t.isContentEditable||t.tagName==="TEXTAREA"||t.tagName==="SELECT"?!0:t.tagName==="INPUT"&&!["button","submit","reset","checkbox","radio","image","file","color","range"].includes(t.type):!1}function po(t){let e=typeof getSelection=="function"?getSelection():null;return e!==null&&!e.isCollapsed&&e.containsNode(t,!0)}function fi(t){let e=t.closest('a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])');if(e)return e;let n=document.activeElement;return n instanceof HTMLElement&&n!==document.body?n:null}function yi({context:t,root:e,children:n}){return ce()===null?(0,Ae.jsx)(Ae.Fragment,{children:n}):(0,Ae.jsx)(uo,{context:t,root:e,children:n})}function uo({context:t,root:e,children:n}){let{setMenuAt:a}=Ea(),{store:r}=t,i=r.schema,o=He(),{pathname:l,search:d}=Pe(),c=Vt("/").replace(/\/$/,""),p=(0,X.useCallback)((w,y)=>t.views?.places().find(L=>L.as===w&&(y===null||L.kind===y)),[t.views]),m=(0,X.useCallback)((w,y)=>{let[L="",$,g]=w.split("/").filter(Boolean).map(O=>{try{return decodeURIComponent(O)}catch{return O}});if(g!==void 0)return null;if(L==="places"&&$!==void 0){let O=p($,new URLSearchParams(y).get("of"));return O?{face:"pages",place:O.as,about:[Oe(O.kind)],title:O.title}:null}let A=Ee(i,L);return A?$===void 0?{face:"pages",about:[Oe(A)],title:it(i,A)}:r.graph.getNode($)?{face:"pages",on:$,about:[$]}:null:null},[i,r,p]),f=(0,X.useCallback)(w=>{let y=w.href;try{let L=new URL(y,location.href);if(L.origin===location.origin&&(c===""||L.pathname===c||L.pathname.startsWith(`${c}/`))){let $=m(L.pathname.slice(c.length),L.search);if($)return{...$,href:y}}}catch{}return{face:"pages",about:[],href:y}},[c,m]),u=(0,X.useCallback)(()=>m(l,d)??{face:"pages",about:[]},[m,l,d]),k=(0,X.useCallback)(w=>{let y=u(),L=w.closest("[data-graview-field]")?.getAttribute("data-graview-field");if(L&&y.on!==void 0&&w.closest("[data-graview-pick], a[href]")===null)return{...y,field:L};let $=w.closest("[data-graview-act]")?.getAttribute("data-graview-act");if($)return{...y,act:$};let g=w.closest("a[href]"),A=w.closest("[data-graview-listed]"),O=[w.closest("[data-graview-pick]")?.getAttribute("data-graview-pick"),A&&(!g||A.contains(g)&&g.classList.contains("graview-spec-item-link"))?A.getAttribute("data-graview-listed"):null].map(De=>De?r.graph.getNode(De):void 0).find(Boolean);if(O)return{face:"pages",on:O.id,about:[O.id],href:`${c}${Z(i,O.kind,O.id)}`};if(g)return f(g);let ee=w.closest("[data-graview-record]")?.getAttribute("data-graview-record");return ee&&r.graph.getNode(ee)?{face:"pages",on:ee,about:[ee]}:y},[u,f,r,i,c]),q=(0,X.useCallback)(w=>{let y=e.current;if(y===null||!y.contains(w)||Yt(w)||w.closest("[data-graview-popover]"))return null;let L=k(w);return{face:"pages",on:L.on,about:L.about??[],field:L.field,place:L.place,href:L.href,act:L.act,element:fi(w)}},[k,e]),h=(0,X.useCallback)((w,y,L)=>{let $=k(w);a({...$,x:Math.round(y),y:Math.round(L),returnTo:fi(w)})},[k,a]),R=(0,X.useCallback)(w=>{let y=w.getBoundingClientRect();h(w,y.left+Math.min(16,y.width/2),Math.min(y.bottom,y.top+36))},[h]),G=(0,X.useRef)(0),M=(0,X.useRef)(null),V=(0,X.useRef)(!1),z=()=>{M.current&&clearTimeout(M.current.timer),M.current=null};(0,X.useEffect)(()=>z,[]),(0,X.useEffect)(()=>{let w=y=>{if(y.defaultPrevented||!(y.key==="ContextMenu"||y.key==="F10"&&y.shiftKey))return;let L=e.current,$=y.target instanceof Element?y.target:null,g=$===null||$===document.body||$===document.documentElement,A=L!==null&&$!==null&&L.contains($);if(!A&&!(g&&document.querySelector("[data-graview-face='pages']")===L)||Yt($)||$?.closest("[data-graview-popover]"))return;y.preventDefault(),G.current=Date.now();let O=A&&$ instanceof HTMLElement?$:L?.querySelector("[data-graview-page-title], main h1, main")??null;O&&R(O)};return document.addEventListener("keydown",w),()=>document.removeEventListener("keydown",w)},[e,R]),(0,X.useEffect)(()=>{let w=e.current;if(!w)return;let y=L=>{let $=L.detail;$&&a({...$,face:"pages"})};return w.addEventListener(wn,y),()=>w.removeEventListener(wn,y)},[e,a]);let se=(0,X.useMemo)(()=>w=>{if(w.face!=="pages")return null;let y=[],L=w.on===void 0?void 0:r.graph.getNode(w.on),$=w.place===void 0?void 0:t.views?.places().find(Te=>Te.as===w.place),g=L?void 0:w.about.length===1&&w.about[0].startsWith("aggregate:")&&!$?go(w.about[0]):void 0,A=L?Z(i,L.kind,L.id):$?ye(t,$):g?`/${Y(i,g)}`:void 0,O=A!==void 0&&l===A.split("?")[0];A!==void 0&&!O&&y.push({id:"open",label:"Open",run:()=>o(A)});let ee=A!==void 0?`${c}${A}`:w.href;ee!==void 0&&y.push({id:"open-in-a-new-tab",label:"Open in a new tab",run:()=>void window.open(ee,"_blank","noopener")});let De=L?`#focus=${encodeURIComponent(L.id)}`:$?`#focus=${encodeURIComponent(Oe($.kind))}&view=${encodeURIComponent($.as)}`:g?`#focus=${encodeURIComponent(Oe(g))}`:void 0;if(De!==void 0&&(t.overview||!t.embedded)){let Te=t.overview;y.push({id:"in-the-scene",label:"Show in the scene",run:()=>Te?Te(De):location.assign(`${t.sceneHref??"/"}${De}`)})}return L===void 0&&w.href===void 0&&y.push({id:"find",label:"Find\u2026",run:()=>{let Te=e.current?.querySelector('[data-testid="nav-find"]')??document.querySelector('[data-testid="nav-find"]');Te&&Te.offsetParent!==null?Te.focus():o("/search")}}),y.length>0?{id:"pages",items:y}:null},[r,i,t,l,c,o,e]),ue=(0,X.useMemo)(()=>w=>{if(w.face!=="pages"||w.field===void 0||w.on===void 0)return null;let y=r.graph.getNode(w.on),L=w.element?.closest("[data-graview-field]")??e.current?.querySelector(`[data-graview-field="${CSS.escape(w.field)}"]`);return!y||!(L instanceof HTMLElement)||!L.hasAttribute("data-graview-editable")?null:{id:"field",at:"start",items:[{id:"change-field",label:`Change \u201C${da(i.tryDefinition(y.kind),w.field)}\u201D`,run:()=>L.click()}]}},[r,i,e]),I=qr(),_=sr(),oe=Tr(),we=(0,X.useCallback)((w,y)=>{l===ye(t,w).split("?")[0]&&o(y?ye(t,y):"/")},[l,t,o]),le=Vr(we),ge=(0,X.useMemo)(()=>[ue,oe,se,...le?[le]:[],..._?[_]:[],...I?[I]:[]],[ue,oe,se,le,_,I]);return(0,Ae.jsxs)(tr,{sections:ge,children:[(0,Ae.jsx)("div",{"data-graview-menu-ground":"",style:{display:"contents"},onContextMenu:w=>{let y=w.target;w.shiftKey||Yt(y)||po(y)||(w.preventDefault(),!y.closest("[data-graview-popover]")&&(Date.now()-G.current<700||(w.clientX===0&&w.clientY===0&&y instanceof HTMLElement?R(y):h(y,w.clientX,w.clientY))))},onPointerDown:w=>{if(V.current=!1,w.pointerType==="mouse"||!w.isPrimary)return;let y=w.target;if(Yt(y)||y.closest("[data-graview-choose], [data-graview-popover]"))return;z();let{clientX:L,clientY:$}=w;M.current={x:L,y:$,timer:setTimeout(()=>{M.current=null,V.current=!0,G.current=Date.now(),h(y,L,$)},lo)}},onPointerMove:w=>{let y=M.current;y&&Math.hypot(w.clientX-y.x,w.clientY-y.y)>co&&z()},onPointerUp:z,onPointerCancel:z,onClickCapture:w=>{V.current&&(V.current=!1,w.preventDefault(),w.stopPropagation())},children:n}),(0,Ae.jsx)(mo,{openAt:R,readyAt:q}),(0,Ae.jsx)(Gr,{placement:"page"}),(0,Ae.jsx)(lr,{})]})}function go(t){let e=t.slice(10).split("+");return e.length===1&&e[0]?e[0]:void 0}function mo({openAt:t,readyAt:e}){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)(Hr,{placement:"menu",openActs:t,aimAt:e})})}var H=D(j(),1);function hi(t,e){return e==="*"?{label:"anything",path:null}:{label:Q(t,e),path:`/${Y(t.schema,e)}`}}function fo({context:t,relation:e}){let{store:n}=t,a=hi(n,e.from),r=hi(n,e.to),i=o=>o.path?(0,H.jsx)(F,{to:o.path,style:{...Se,fontWeight:550},children:o.label}):(0,H.jsx)("span",{children:o.label});return(0,H.jsxs)("li",{"data-testid":"relation","data-relation":e.edgeKind,style:{display:"grid",gridTemplateColumns:"30px minmax(0, 1fr) auto",gap:12,alignItems:"baseline"},children:[(0,H.jsx)(Br,{edgeKind:e.edgeKind,...t.brand?.kit?{kit:t.brand.kit}:{}}),(0,H.jsxs)("span",{style:{display:"grid",gap:1},children:[(0,H.jsxs)("span",{children:[i(a)," ",(0,H.jsxs)("span",{style:C,"data-graview-speaks-ids":"",children:[be(e.edgeKind)," \u2192"]})," ",i(r)]}),e.description||e.inverse?(0,H.jsxs)("span",{style:C,children:[e.description?Ce(e.description):null,e.description&&e.inverse?" \xB7 ":null,e.inverse?`from the other end, ${e.inverse}`:null]}):null]}),r.path?(0,H.jsx)(F,{to:`${r.path}?with=${encodeURIComponent(e.edgeKind)}`,style:{...K,...C,fontVariantNumeric:"tabular-nums",display:"inline-block",minWidth:24,minHeight:24,textAlign:"center"},title:`The ${r.label.toLowerCase()} that have this`,children:e.count}):(0,H.jsx)("span",{style:{...C,fontVariantNumeric:"tabular-nums"},children:e.count})]})}function vi({context:t,heading:e=!0}){let{store:n}=t,a=new Set(Ve(n,t.principal)),r=Ye(n).relations.filter(i=>a.has(i.from)&&(i.to==="*"||a.has(i.to)));return r.length===0?null:(0,H.jsxs)("section",{style:{...te,display:"grid",gap:12},"data-testid":"kind-map",children:[e?(0,H.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[(0,H.jsx)("h2",{style:J,children:(0,H.jsx)(F,{to:"/map",style:Se,children:"Connections"})}),(0,H.jsx)("span",{style:C,children:r.length===1?"1 relation":`${r.length} relations`})]}):null,(0,H.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:10},children:r.map(i=>(0,H.jsx)(fo,{context:t,relation:i},`${i.edgeKind}|${i.from}|${i.to}`))})]})}function qn({context:t}){let{store:e}=t;ne(e);let n=new Set(Ve(e,t.principal)),a=Ye(e),r=a.relations.filter(i=>n.has(i.from));return(0,H.jsxs)(ae,{context:t,children:[(0,H.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,H.jsx)("p",{style:ke,children:r.length===0?"No relations":`${r.length} ${r.length===1?"relation":"relations"}`}),(0,H.jsx)(ie,{context:t,children:"Connections"}),(0,H.jsx)("p",{style:re,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,H.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"6px 18px"},"data-testid":"map-kinds",children:a.kinds.filter(i=>n.has(i.kind)).map(i=>(0,H.jsxs)("li",{style:{display:"inline-flex",alignItems:"center",gap:8},children:[(0,H.jsx)(fe,{kind:i.kind,brand:t.brand,schema:e.schema,size:7}),(0,H.jsx)(F,{to:`/${Y(e.schema,i.kind)}`,style:K,children:i.plural}),(0,H.jsx)("span",{style:C,children:i.count})]},i.kind))}),(0,H.jsx)(vi,{context:t,heading:!1})]})}function wi({context:t}){let n=[...ce()?.robots.values()??[]].filter(r=>r.mode==="asking"&&r.say);if(n.length===0)return null;let{store:a}=t;return(0,H.jsxs)("section",{style:{...te,display:"grid",gap:10},"data-testid":"seat-questions",children:[(0,H.jsx)("h2",{style:J,children:n.length===1?"The seat asked something":`The seat asked ${n.length} things`}),(0,H.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:8},children:n.map(r=>{let i=r.at?a.graph.getNode(r.at):void 0;return(0,H.jsxs)("li",{style:{display:"grid",gap:2},children:[(0,H.jsx)("span",{children:r.say}),i?(0,H.jsxs)(F,{to:Z(a.schema,i.kind,i.id),style:{...K,...C},children:[me(a.schema.tryDefinition(i.kind),i)," \u2192"]}):null]},r.participant)})})]})}var B=D(j(),1);function Gn({context:t}){let{principal:e}=t,{store:n,brand:a,invariantContext:r}=t;ne(n);let i=n.violations(r),o=`${i.length===1?"A rule is broken":"Rules are broken"} \u2014 see what, and what would fix it`,l=[...n.log.all()].slice(-5).reverse(),c=qt(t).map(R=>({kind:R,members:n.graph.nodesOfKind(R).filter(G=>rt(n.schema.tryDefinition(R),G))})),p=c.filter(R=>R.members.length>0),m=c.map(R=>({entry:R,creator:n.allMutations().find(G=>(G.creates??[]).includes(R.kind)&&n.permits({name:G.name,args:{}},t.principal).ok)})).find(R=>R.creator!==void 0),f=p.length===0?"Nothing here yet.":`${p.map(R=>Pt(n.schema,R.kind,R.members.length)).join(", ").replace(/, ([^,]*)$/," and $1")}.`,u=t.views?.homeView?.(),k=n.schema.kinds.some(R=>n.graph.nodesOfKind(R).length>0);if(u&&k){let R=a?.subtitle?(0,B.jsx)("p",{style:{...C,margin:0},"data-testid":"app-subtitle",children:a.subtitle}):null,G=u[Symbol.for("graview.home-blocks")]===!0;return(0,B.jsx)(ae,{context:t,style:lt,children:(0,B.jsxs)("div",{style:{display:"grid",gap:12},"data-testid":"home-view",children:[G?null:R,i.length>0?(0,B.jsx)(F,{to:"/problems",style:{...K,color:"var(--graview-warn)"},children:o}):null,(0,B.jsx)(Ir.Provider,{value:G?R:null,children:(0,B.jsx)(u,{cardinality:"many",fidelity:"full",mode:"fullscreen",selected:!1})})]})})}let q=new Set(Ve(n,t.principal)),h=Ye(n).relations.filter(R=>q.has(R.from)&&(R.to==="*"||q.has(R.to)));return(0,B.jsxs)(ae,{context:t,style:lt,children:[(0,B.jsxs)("header",{style:{display:"grid",gap:12},children:[a?.subtitle?(0,B.jsx)("p",{style:{...C,margin:0},"data-testid":"app-subtitle",children:a.subtitle}):null,(0,B.jsx)(ie,{context:t,"data-testid":"standing",children:f}),(0,B.jsxs)("p",{style:{...re,display:"grid",gap:4},"data-testid":"standing-card",children:[p.length===0&&m?(0,B.jsxs)("span",{children:["Begin with \u201C",m.creator?.title??m.creator?.name,"\u201D, under"," ",(0,B.jsx)(F,{to:`/${Y(n.schema,m.entry.kind)}`,style:K,children:Q(n,m.entry.kind)}),"."]}):null,i.length===0?(0,B.jsx)("span",{children:"All rules hold."}):(0,B.jsx)(F,{to:"/problems",style:{...K,color:"var(--graview-warn)"},children:o})]})]}),(0,B.jsx)(Hn,{context:t}),(0,B.jsxs)("section",{style:{...te,display:"grid",gap:14},"data-testid":"kinds",children:[(0,B.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[(0,B.jsx)("h2",{style:J,children:"What is here"}),h.length>0?(0,B.jsxs)(F,{to:"/map",style:{...K,...C,marginLeft:"auto"},"data-testid":"map-link",children:["Connections \xB7 ",h.length===1?"1 relation":`${h.length} relations`," ",(0,B.jsx)("span",{"aria-hidden":"true",children:"\u2192"})]}):null]}),(0,B.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"8px 10px"},children:c.map(({kind:R,members:G})=>(0,B.jsx)("li",{style:{maxWidth:"100%"},children:(0,B.jsxs)(F,{to:`/${Y(n.schema,R)}`,style:{...Se,flexWrap:"wrap",gap:8,padding:"6px 14px 6px 10px",borderRadius:8,border:"1px solid var(--graview-edge-bright)",background:"var(--graview-panel)"},children:[(0,B.jsx)(fe,{kind:R,brand:a,schema:n.schema,size:7}),(0,B.jsx)("span",{style:{fontWeight:550,overflowWrap:"anywhere"},children:Q(n,R)}),(0,B.jsx)("span",{style:{...C,fontVariantNumeric:"tabular-nums"},children:G.length===0?"none yet":gt(G.length)})]})},R))})]}),l.length>0?(0,B.jsxs)("section",{style:{...te,display:"grid",gap:10},children:[(0,B.jsx)("h2",{style:J,children:"Recently"}),(0,B.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},children:l.map(R=>(0,B.jsxs)("li",{style:C,children:[(0,B.jsx)("span",{style:{color:"var(--graview-ink)"},children:R.intent})," \u2014 ",ft(R,e,{graph:n.graph,schema:n.schema,...t.seats?{seats:t.seats}:{},...t.people?{people:t.people}:{}})]},R.id))})]}):null]})}var Ne=D(Fe(),1);var Je=D(j(),1);function Qt({context:t,withheld:e,style:n,testId:a}){let r=ce(),i=va(e,t.signIn??r?.signIn);return i?(0,Je.jsx)("p",{style:{...n,margin:0},children:(0,Je.jsx)("button",{type:"button","data-testid":"sign-in",onClick:()=>i.run(),style:xe,children:i.label})}):e.length===0?null:(0,Je.jsx)("ul",{style:{...n,margin:0,padding:0,listStyle:"none",display:"grid",gap:4},...a?{"data-testid":a}:{},children:e.map(o=>(0,Je.jsxs)("li",{style:C,children:[(0,Je.jsx)("s",{children:o.label})," \u2014 ",o.refusal.message]},o.id))})}var E=D(j(),1);function Vn({context:t}){let{store:e,brand:n,principal:a,invariantContext:r}=t;ne(e);let[i]=dt(),o=i.get("q")??"",l=typeof r?.today=="string"?r.today:void 0,d=Pr(e,o,{...a?{principal:a}:{},places:Le(t),flagged:new Set(e.violations(r).flatMap(u=>u.nodeIds)),...l?{today:l}:{},limit:200}),c=d.hits.filter(u=>u.about==="node"),p=d.hits.filter(u=>u.about==="kind"||u.about==="place"||u.about==="rule"),m=[...new Set(c.map(u=>u.kind))],f=o.trim();return(0,E.jsxs)(ae,{context:t,children:[(0,E.jsx)("style",{children:Kt}),(0,E.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,E.jsx)("p",{style:ke,children:"Search"}),(0,E.jsx)(ie,{context:t,"data-testid":"search-heading",children:f.length===0?"Find anything by its name":d.hits.length===0?(0,E.jsxs)(E.Fragment,{children:["Nothing here is called \u201C",f,"\u201D."]}):(0,E.jsxs)(E.Fragment,{children:[yo(e,d.byKind)," for \u201C",f,"\u201D"]})}),f.length>0?(0,E.jsxs)("p",{style:{...C,margin:0},"data-testid":"search-searched",children:[Nt(e.schema,d.searched),d.conditions.filter(u=>u.key!=="is"&&u.admittedBy.length<d.searched.kinds.length).map(u=>(0,E.jsxs)("span",{children:[" ",u.key,":",u.value," narrows"," ",u.admittedBy.length===0?"nothing here":u.admittedBy.map(k=>Q(e,k).toLowerCase()).join(" and "),"."]},`${u.key}:${u.value}`))]}):(0,E.jsxs)("p",{style:re,children:["Type in the box above. Words find the start of words in names and in what each record says;"," ",(0,E.jsx)("code",{children:"done:false"})," and the like narrow as a list does, and ",(0,E.jsx)("code",{children:"is:any"})," includes what is past."]})]}),p.length>0?(0,E.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},"data-testid":"search-named",children:p.map(u=>(0,E.jsx)("li",{"data-testid":"search-hit","data-about":u.about,children:u.about==="kind"?(0,E.jsxs)(F,{to:`/${Y(e.schema,u.kind)}`,style:K,children:[u.label,u.count>0?(0,E.jsxs)("span",{style:C,children:[" \xB7 ",u.count," match"]}):null]}):u.about==="place"?(0,E.jsxs)(F,{to:ye(t,u),style:K,children:["Go to ",u.title]}):u.about==="rule"?(0,E.jsxs)(F,{to:"/problems",style:K,children:["The rule \u201C",u.label,"\u201D"]}):null},`${u.about}:${u.about==="rule"?u.name:u.about==="place"?u.as:u.kind}`))}):null,m.map(u=>(0,E.jsxs)("section",{className:"graview-list",style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",minWidth:0},"data-testid":"search-group","data-kind":u,children:[(0,E.jsxs)("h2",{className:"graview-group-head",style:{alignItems:"center"},children:[(0,E.jsx)(fe,{kind:u,brand:n,schema:e.schema,size:8}),(0,E.jsx)(F,{to:`/${Y(e.schema,u)}?${new URLSearchParams({q:f}).toString()}`,style:K,"data-testid":"search-kind-link",children:Q(e,u)}),(0,E.jsx)("span",{children:d.byKind[u]})]}),(0,E.jsx)("ul",{className:"graview-rows",children:c.filter(k=>k.kind===u).map(k=>(0,E.jsxs)("li",{"data-testid":"search-hit","data-about":"node",className:"graview-row",children:[(0,E.jsxs)(F,{to:Z(e.schema,u,k.id),className:"graview-row-title",...k.label.length>60?{title:k.label}:{},children:[k.flagged?(0,E.jsxs)(E.Fragment,{children:[(0,E.jsx)("span",{role:"img","aria-label":"Breaks a rule:",style:{color:"var(--graview-warn)"},children:"\u26A0"})," "]}):null,k.label]}),k.apart||!k.current?(0,E.jsx)("span",{className:"graview-row-glance",children:[k.apart,k.current?"":"past"].filter(Boolean).join(" \xB7 ")}):null,(0,E.jsx)(Zt,{why:k.why})]},k.id))})]},u)),f.length>0?(0,E.jsx)(ho,{asked:f}):null,f.length>0&&d.hits.length===0?(0,E.jsx)(ki,{store:e,kinds:d.searched.kinds,words:d.words,...a?{principal:a}:{},...r?{invariantContext:r}:{}}):null]})}function Zt({why:t}){return t.strength==="near"?(0,E.jsxs)("span",{style:C,"data-testid":"search-why","data-near":"",children:["Near \u201C",t.asked,"\u201D",t.field==="label"?"":` \u2014 ${t.reading}: ${t.fragment}`]}):t.field==="label"?null:(0,E.jsxs)("span",{style:C,"data-testid":"search-why",children:[t.reading,": ",t.fragment]})}function yo(t,e){let n=Object.entries(e).map(([a,r])=>`${r} ${r===1?qe(t.schema.tryDefinition(a),a):Q(t,a).toLowerCase()}`);return n.length===0?"Found":n.length===1?Ce(n[0]):Ce(`${n.slice(0,-1).join(", ")} and ${n[n.length-1]}`)}function bi(t,e,n={}){let a=[];for(let r of e){let i=_e(t,r,{...n.principal?{principal:n.principal}:{},...n.invariantContext?{context:n.invariantContext}:{}});for(let o of Xt(t,r,i.actions.affordances))a.some(l=>l.mutation.name===o.mutation.name)||a.push(o)}return a}function Xt(t,e,n){let a=t.schema.tryDefinition(e)?.fieldRoles?.label,r=[];for(let i of n){let o=t.allMutations().find(c=>c.name===i.mutation);if(!o||!o.creates?.includes(e)||r.some(c=>c.mutation.name===o.name))continue;let l=Et(o.input).map(c=>c.name),d=l.includes("label")?"label":a&&l.includes(a)?a:void 0;!d||i.args[d]!==void 0||r.push({kind:e,affordance:i,mutation:o,arg:d})}return r}function ki({store:t,kinds:e,words:n,principal:a,invariantContext:r}){let i=bi(t,e,{...a?{principal:a}:{},...r?{invariantContext:r}:{}});return i.length===0||n.trim().length===0?null:(0,E.jsx)("div",{style:{display:"grid",gap:24},"data-testid":"search-to-create",children:i.map(({kind:o,affordance:l,mutation:d,arg:c})=>(0,E.jsxs)("section",{style:{...te,display:"grid",gap:14},children:[(0,E.jsxs)("h2",{style:J,children:[Ce(ca(qe(t.schema.tryDefinition(o),o)))," called \u201C",n,"\u201D"]}),(0,E.jsx)(Ie,{store:t,mutation:d,prefilled:l.args,open:l.open,initial:{[c]:n},...a?{principal:a}:{}})]},`${l.id}|${n}`))})}function ho({asked:t}){let e=ce();return e?(0,E.jsx)(vo,{asked:t,desk:e.aiDesk}):null}function vo({asked:t,desk:e}){return Wa(e)?(0,E.jsx)("p",{style:{margin:0},children:(0,E.jsxs)("button",{type:"button","data-testid":"search-ask",onClick:a=>Da(e,{pointed:{about:[]},asked:t,returnTo:a.currentTarget}),style:{...K,font:"inherit",padding:0,border:0,background:"transparent",cursor:"pointer",textAlign:"start"},children:["Ask: \u2018",t,"\u2019"]})}):null}var b=D(j(),1),xi=8,Pi=40;function wo(t,e){let n=e?.fields?.shape??{},a=Object.keys(n).find(r=>ua(n[r])&&pa(t[r]));return a===void 0?void 0:t[a]}function Un({context:t}){let e=Ue(),n=Ee(t.store.schema,e.slug??"");return n?(0,b.jsx)(Ai,{context:t,kind:n}):(0,b.jsx)(ae,{context:t,children:(0,b.jsx)(ie,{context:t,children:"No such kind of thing here."})})}function Ai({context:t,kind:e,opening:n,row:a,layout:r="list",description:i,bare:o}){let{store:l,brand:d,invariantContext:c}=t;ne(l);let[p,m]=dt(),f=`list-${(0,Ne.useId)().replace(/:/g,"")}`,u=l.schema.tryDefinition(e),k=ma(p.get("archived")),q=l.graph.nodesOfKind(e,{archived:k}),h=Ye(l).relations.filter(s=>s.from===e||s.to===e),R=new Set(l.violations(c).flatMap(s=>s.nodeIds)),G=kr(l.schema,br(l.schema,wr(l.schema,e))),M=h.map(s=>s.edgeKind),V=Ao(p,G,M),z=["sort","filter","group","q","by","with","past","archived",...M].some(s=>p.has(s)),se=q.length>=Pi,ue=u?.fieldRoles?.when,I=t.views?.arrangement?.()?.lists?.[e],_=mr(I),oe=gr(I?.group),we=Po(se,ue),le=n??(_?{...we,..._}:we),ge=z?V.arrangement:Cn(le,G).arrangement,w=_?.sort,y=ge.sort&&w?.then&&ge.sort.by===w.by&&ge.sort.direction===w.direction?{...ge,sort:w}:ge,L=Sr(y.query??""),$=[...y.filter??[],...L.conditions].some(s=>s.key==="is"&&(s.value==="past"||s.value==="any"))||vr(u,[...y.filter??[],...L.conditions]),g=$||!u?.lifecycle?y:{...y,filter:[...y.filter??[],{key:"is",value:"current"}]},A=new Map,O=$t(q,g,{schema:l.schema,graph:l.graph,flagged:R,...typeof c?.today=="string"?{today:c.today}:{},read:(s,v)=>{let N=A.get(s.id);return N||A.set(s.id,N=mt(l.schema,l.graph,s)),N[v]}}),ee=oe&&y.group?.by===oe.by&&!y.group.bucket?G.groups.find(s=>s.key===oe.by):void 0,De=oe&&ee&&(ee.type==="choice"||ee.type==="boolean")?fr(O.groups,oe,{type:ee.type,...ee.options?{options:ee.options}:{}}):O.groups.map(s=>({...s,closed:!1})),Te=new Set((p.get("open")??"").split(",").filter(Boolean)),Ei=!!y.query||(y.filter??[]).some(s=>s.key===oe?.by),Yn=s=>ee?.type==="boolean"?s==="1"?"true":"false":s,Qn=s=>s.closed&&!Ei&&!Te.has(Yn(s.key)),Ni=s=>{let v=new URLSearchParams(p),N=new Set(Te);N.has(s)?N.delete(s):N.add(s),N.size>0?v.set("open",[...N].join(",")):v.delete("open"),m(v,{replace:!0})},We=O.nodes,ct=u?.lifecycle&&!$?q.filter(s=>rt(u,s)):q,Zn=q.length-ct.length,tn=y.group?.by??null,$i=s=>{let v=new URLSearchParams(p);for(let de of["sort","filter","group","q","by","with","past","archived",...h.map(St=>St.edgeKind)])v.delete(de);let N=Ar(s);for(let de of["sort","filter","group","q","archived"])N[de]&&v.set(de,N[de]);![...v.keys()].some(de=>["sort","filter","group","q"].includes(de))&&(n||_||se||ue)&&v.set("sort",""),m(v)},{principal:tt}=t,nn=_e(l,e,{...tt?{principal:tt}:{},...t.invariantContext?{context:t.invariantContext}:{}}),Be=nn.actions.affordances.map(s=>({affordance:s,mutation:l.allMutations().find(v=>v.name===s.mutation)})).filter(s=>s.mutation!==void 0),Oi=nn.actions.withheld,an=()=>new Set(We.length===0?Be.map(({mutation:s})=>s.name):[]),[rn,Xn]=(0,Ne.useState)(()=>({kind:e,open:an()}));rn.kind!==e&&Xn({kind:e,open:an()});let Jn=s=>(rn.kind===e?rn.open:an()).has(s),ea=(s,v)=>Xn(N=>{let de=new Set(N.open);return v?de.add(s):de.delete(s),{kind:N.kind,open:de}}),ta=`begin-${(0,Ne.useId)().replace(/:/g,"")}`,na=L.words&&We.length===0?Object.fromEntries(Xt(l,e,nn.actions.affordances).map(s=>[s.mutation.name,s.arg])):{},nt=Q(l,e),vt=t.views?.lookup(e,{cardinality:"one",fidelity:"glyph"}),on=vt!==void 0&&!ot(vt)?vt:void 0,sn=(y.group?.bucket??"day")==="day"?y.group?.by:void 0,ln=(y.filter??[]).map(s=>s.key),Fi=ln.filter(s=>ln.indexOf(s)===ln.lastIndexOf(s)&&/choice|boolean/.test(G.filters.find(v=>v.key===s)?.type??"")),dn=s=>{let v={...u?.computed?mt(l.schema,l.graph,s):s};sn&&!String(v[sn]).includes("T")&&delete v[sn];for(let N of Fi)delete v[N];return v},wt=s=>{let v=me(u,s);if(a)return(0,b.jsxs)("li",{"data-testid":"record-row","data-graview-record":s.id,style:{minWidth:0},...mn(s.id),children:[gn(s,v),a(s,{label:v,href:Z(l.schema,e,s.id),flagged:R.has(s.id),glance:Bt(dn(s),u,v)})]},s.id);if(on){let fn=Dt(vt,s,l.graph),Bi=Object.fromEntries(Object.entries(dn(s)).filter(([qi])=>!fn?.fields.has(qi))),sa=fn?Bt(Bi,u,fn.title??v):"";return(0,b.jsxs)("li",{"data-testid":"record-row","data-graview-record":s.id,style:{position:"relative",display:"flex",flexWrap:"wrap",alignItems:"baseline",columnGap:16,rowGap:2,paddingBlock:10,borderTop:"1px solid var(--graview-edge)"},...mn(s.id),children:[gn(s,v),(0,b.jsx)("div",{style:{flex:"1 1 14rem",minWidth:0},children:(0,b.jsx)(on,{node:s,cardinality:"one",fidelity:"glyph",mode:"fullscreen",selected:!1,...R.has(s.id)?{flagged:[s.id]}:{}})}),sa?(0,b.jsx)("span",{style:{...C,flex:"0 1 auto",minWidth:0,overflowWrap:"anywhere"},"data-testid":"record-glance",children:sa}):null,(0,b.jsx)(Lo,{to:Z(l.schema,e,s.id),label:R.has(s.id)?`${v} \u2014 implicated in a problem`:v})]},s.id)}let N=Bt(dn(s),u,v),de=L.words?xr(u,s,L.words):void 0,St=se?void 0:er(s,u),xt=wo(s,u),oa=(0,b.jsxs)(F,{to:Z(l.schema,e,s.id),className:"graview-row-title",...v.length>60?{title:v}:{},children:[R.has(s.id)?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{role:"img","aria-label":"Breaks a rule:",style:{color:"var(--graview-warn)"},children:"\u26A0"})," "]}):null,v]});return(0,b.jsxs)("li",{className:"graview-row","data-graview-record":s.id,...mn(s.id),children:[gn(s,v),St?(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:14,minWidth:0},children:[(0,b.jsx)(Ge,{as:"thumb",file:St}),oa]}):oa,N||xt?(0,b.jsxs)("span",{className:"graview-row-glance",children:[N,N&&xt?" \xB7 ":null,xt?(0,b.jsx)(Ot,{address:xt}):null]}):null,de?(0,b.jsx)(Zt,{why:de}):null]},s.id)},cn=Le(t).filter(s=>s.kind===e),aa=I?.filters,Ii=(y.filter??[]).some(s=>s.key!=="is"||s.value!=="any"),Di=!!(y.sort||y.group||y.query||Ii),Wi=ct.length>=xi||z&&Di,$e=y.sort?G.sorts.find(s=>s.key===y.sort.by):void 0,pn=$e?.type==="date"||$e!==void 0&&$e.key===ue,ra=se&&!O.grouped&&$e&&($e.about==="label"||$e.type==="text"||pn)?s=>{let v=$e.about==="label"?me(u,s):s[$e.key];if(typeof v!="string"||v.length===0)return pn?"No date":"#";if(pn)return v.slice(0,4);let N=v.trim().charAt(0).toLocaleUpperCase();return/\p{L}/u.test(N)?N:"#"}:void 0,ze=ra?We.reduce((s,v)=>{let N=ra(v);return s.at(-1)?.key===N?s.at(-1).nodes.push(v):s.push({key:N,nodes:[v]}),s},[]):void 0,ia=O.grouped&&tn?De.flatMap(s=>Qn(s)?[]:s.nodes):ze&&ze.length>1?ze.flatMap(s=>s.nodes):We,un=(0,Ne.useMemo)(()=>ia.map(s=>s.id),[ia.map(s=>s.id).join(`
|
|
109
|
-
`)]),Me=Mr(un),pt=(tt?l.permittedMutations(tt):l.permittedMutations()).some(s=>{let v=s.subject?.kinds;return v!==void 0&&(v==="*"||v.includes(e))}),gn=(s,v)=>pt?(0,b.jsx)("span",{className:"graview-choose-at",children:(0,b.jsx)("input",{...Me.boxProps(s.id,v),onPointerEnter:Rn,onFocus:Rn})}):null,mn=s=>pt?{"data-graview-choose":s}:{},Hi=(0,Ne.useCallback)(s=>{Me.choose(s),requestAnimationFrame(()=>{let v=Me.list.current;((s[0]===void 0?null:v?.querySelector(`[data-graview-choose-box="${CSS.escape(s[0])}"]`))??v)?.focus({preventScroll:!0})})},[Me]),at=r==="grid"?{margin:0,padding:0,listStyle:"none",display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(min(100%, 15rem), 1fr))",alignItems:"start",gap:12}:a||on?{margin:0,padding:0,listStyle:"none",display:"grid",gap:a&&r==="list"?6:0}:void 0,bt=at?void 0:"graview-rows",ut=s=>`list-at-${s.replace(/[^\p{L}\p{N}]/gu,"_")}`,kt=h.map(s=>{let v=s.from===e?s.to:s.from,N=s.from===e?s.description:s.inverse??s.description;return{relation:s,far:v,words:N}}),Ki=new Set(kt.map(s=>(s.words??"").toLowerCase()).filter((s,v,N)=>s&&N.indexOf(s)!==v));return(0,b.jsxs)(o?xo:ae,{context:t,children:[(0,b.jsxs)("div",{style:{display:"grid",gap:12},children:[(0,b.jsxs)("header",{style:{display:"grid",gap:4},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",columnGap:10,rowGap:4,minWidth:0},children:[(0,b.jsx)(fe,{kind:e,brand:d,schema:l.schema,size:8}),(0,b.jsx)(ie,{context:t,children:nt}),Be.length>0?(0,b.jsx)("span",{style:{marginLeft:"auto",display:"flex",flexWrap:"wrap",columnGap:14,rowGap:8},"data-testid":"beginnings-open",children:Be.map(({affordance:s,mutation:v})=>(0,b.jsx)(Co,{name:v.name,title:v.title??v.name,panel:`${ta}-${v.name}`,open:Jn(v.name),onOpen:N=>ea(v.name,N)},s.id))}):null]}),i??u?.description?(0,b.jsx)("p",{style:re,children:i??u?.description}):null,kt.length>0||cn.length>0?(0,b.jsxs)("p",{style:{...C,margin:0,display:"flex",flexWrap:"wrap",columnGap:18,rowGap:2},"data-testid":"kind-related",children:[kt.length>0?(0,b.jsxs)("span",{"data-testid":"kind-relations",children:["Related:"," ",kt.map(({relation:s,far:v,words:N},de)=>(0,b.jsxs)("span",{"data-relation":s.edgeKind,children:[de>0?(0,b.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,v==="*"?Ce(N??be(s.edgeKind)):(0,b.jsx)(F,{to:`/${Y(l.schema,v)}`,style:K,title:Q(l,v),children:N&&Ki.has(N.toLowerCase())?`${Ce(N)}: ${Q(l,v).toLowerCase()}`:Ce(N??Q(l,v))})]},`${s.edgeKind}|${s.from}|${s.to}`))]}):null,cn.length>0?(0,b.jsxs)("span",{"data-testid":"kind-pictures",children:["Also as:"," ",cn.map((s,v)=>(0,b.jsxs)("span",{children:[v>0?(0,b.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,(0,b.jsx)(F,{to:ye(t,s),style:K,children:s.title})]},Ze(s)))]}):null]}):null]}),Be.length>0?(0,b.jsx)("div",{style:{display:"contents"},"data-testid":"beginnings",children:Be.map(({affordance:s,mutation:v})=>{let N=!!(na[v.name]&&We.length===0);return(0,b.jsx)(Ro,{name:v.name,id:`${ta}-${v.name}`,description:v.description,open:Jn(v.name),onClose:()=>ea(v.name,!1),children:(0,b.jsx)(Ie,{store:l,mutation:v,prefilled:s.args,open:s.open,...N?{initial:{[na[v.name]]:L.words}}:{},...t.principal?{principal:t.principal}:{}},N?`${v.name}|${L.words}`:v.name)},s.id)})}):null,V.dropped.length>0?(0,b.jsxs)("p",{style:{...C,margin:0},"data-testid":"list-dropped",children:["This link asked for ",V.dropped.join(", "),", which ",nt.toLowerCase()," cannot be arranged by; the rest is shown."]}):null,ct.length>0?(0,b.jsx)(Lr,{schema:l.schema,graph:l.graph,kind:e,arrangement:y,onChange:$i,kept:{shown:We.length,of:ct.length},noun:{one:qe(u,e),many:nt.toLowerCase()},...Wi?{}:{allow:!1},...aa?{filters:aa}:{},offers:G,chips:{nodes:ct,flagged:R,...typeof c?.today=="string"?{today:c.today}:{}},query:t.framed===!0&&t.barAbove!==!0}):null,(0,b.jsx)("style",{children:Kt}),pt?(0,b.jsx)("style",{children:Er+So}):null,(0,b.jsx)("div",{className:"graview-list",...pt?{...Me.listProps,ref:Me.list,tabIndex:-1,"data-graview-choosable":"","aria-label":Me.chosen.length>0?`${nt}, ${Me.chosen.length} chosen`:nt,role:"group"}:{},children:We.length===0&&L.words?(0,b.jsxs)("p",{style:re,"data-testid":"none-yet",children:["Nothing here is called \u201C",L.words,"\u201D."," ",(0,b.jsx)("span",{style:C,"data-testid":"list-searched",children:Nt(l.schema,{kinds:[e],past:$})})," ",(0,b.jsx)(F,{to:"?",style:K,children:"Show every one"})]}):We.length===0?(0,b.jsxs)("p",{style:re,"data-testid":"none-yet",children:[y.filter?.length||y.query?"None of them.":"None yet",!y.filter?.length&&!y.query&&Be.length>0?` \u2014 the first one starts above, with \u201C${Be[0]?.mutation.title??Be[0]?.mutation.name}\u201D.`:!y.filter?.length&&!y.query?".":"",y.filter?.length||y.query?(0,b.jsxs)(b.Fragment,{children:[" ",(0,b.jsx)(F,{to:"?",style:K,children:"Show every one"})]}):null]}):O.grouped&&tn?(0,b.jsx)("div",{style:{display:"grid",gap:"1rem"},"data-testid":"records","data-grouped":tn,children:De.map(s=>{if(!s.closed)return(0,b.jsxs)("section",{style:{display:"grid",gap:0},"data-testid":"list-group",children:[(0,b.jsxs)("h2",{className:"graview-group-head",children:[s.label," ",(0,b.jsx)("span",{children:s.nodes.length})]}),(0,b.jsx)("ul",{style:at,className:bt,"data-graview-rows":"",children:s.nodes.map(wt)})]},s.key||"-");let v=Qn(s),N=`${f}-${ut(s.key||"none")}`;return(0,b.jsxs)("section",{style:{display:"grid",gap:0},"data-testid":"list-group","data-closed":v?"shut":"open",children:[(0,b.jsx)("h2",{className:"graview-group-head",children:(0,b.jsxs)("button",{type:"button",className:"graview-group-toggle","aria-expanded":!v,"aria-controls":N,"data-testid":"list-group-toggle",onClick:()=>Ni(Yn(s.key)),children:[(0,b.jsx)("span",{"aria-hidden":"true",children:v?"\u25B8":"\u25BE"}),s.label," ",(0,b.jsxs)("span",{children:["\xB7 ",s.nodes.length]}),(0,b.jsxs)("span",{style:bo,children:[" ",s.nodes.length===1?qe(u,e):nt.toLowerCase()]})]})}),(0,b.jsx)("ul",{id:N,style:v?{...at,display:"none"}:at,className:bt,"data-graview-rows":"",hidden:v,children:v?null:s.nodes.map(wt)})]},s.key||"-")})}):ze&&ze.length>1?(0,b.jsxs)("div",{style:{display:"grid",gap:14},"data-testid":"records","data-sectioned":$e?.type==="date"?"year":"letter",children:[(0,b.jsx)("nav",{"aria-label":"Jump to","data-testid":"list-index",style:{...C,display:"flex",flexWrap:"wrap",gap:$e?.type==="date"?"0 10px":"0 4px",lineHeight:1.3},children:ze.map(s=>(0,b.jsx)("a",{href:`#${ut(s.key)}`,onClick:v=>{v.preventDefault(),document.getElementById(ut(s.key))?.scrollIntoView({block:"start"})},style:{...Se,minWidth:24,justifyContent:"center"},children:s.key},s.key))}),ze.map(s=>(0,b.jsxs)("section",{"data-testid":"list-section","aria-labelledby":ut(s.key),style:{display:"grid",gap:0},children:[(0,b.jsx)("h2",{id:ut(s.key),className:"graview-group-head",children:s.key}),(0,b.jsx)("ul",{style:at,className:bt,"data-graview-rows":"",children:s.nodes.map(wt)})]},s.key))]}):(0,b.jsx)("ul",{style:at,className:bt,"data-testid":"records","data-graview-rows":"",children:We.map(wt)})}),pt?(0,b.jsx)(Nr,{store:l,chosen:Me.chosen,...tt?{principal:tt}:{},...c?{context:c}:{},anchor:ko,of:un.length,onChooseAll:()=>Me.choose(un),onClear:Me.clear,onActed:Hi}):null,Zn>0?(0,b.jsxs)(F,{to:Si(p,"filter","is:any"),style:{...K,...C,justifySelf:"start"},"data-testid":"past-link",children:["+",Zn," past"]}):null,k===!1&&l.graph.count(e,{archived:!0})>0?(0,b.jsxs)(F,{to:Si(p,"archived","true"),style:{...K,...C,justifySelf:"start"},"data-testid":"archived-link",children:["+",l.graph.count(e,{archived:!0})," archived"]}):null]}),(0,b.jsx)(Qt,{context:t,withheld:Oi,style:te,testId:"withheld"})]})}var bo={position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0 0 0 0)",whiteSpace:"nowrap",border:0},ko=()=>document.querySelector("[data-graview-choosable]")?.closest("[data-embed-content]")??null,So=`
|
|
110
|
-
.graview-list[data-graview-choosable]{outline:none}
|
|
111
|
-
.graview-list [data-graview-choose]{position:relative;padding-left:34px}
|
|
112
|
-
.graview-choose-at{position:absolute;left:2px;top:0;bottom:0;z-index:${wa.raised};display:flex;align-items:center}
|
|
113
|
-
@media (pointer: coarse){
|
|
114
|
-
.graview-list:not([data-graview-choosing]) [data-graview-choose]{padding-left:0}
|
|
115
|
-
.graview-list:not([data-graview-choosing]) .graview-choose-at{display:none}
|
|
116
|
-
}
|
|
117
|
-
`;function xo({children:t}){return(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:40,minWidth:0},children:t})}var Po=(t,e)=>e?{sort:{by:e,direction:"desc"}}:t?{sort:{by:"label",direction:"asc"}}:{};function Ao(t,e,n){let a=Ct({...t.get("sort")?{sort:t.get("sort")}:{},...t.get("filter")?{filter:t.get("filter")}:{},...t.get("group")?{group:t.get("group")}:{},...t.get("q")?{q:t.get("q")}:{},...t.get("archived")?{archived:t.get("archived")}:{}}),r=[...a.filter??[]],i=t.get("by"),o=a.group??(i?{by:i}:void 0);for(let d of n){let c=t.get(d);c&&r.push({key:d,value:c})}let l=t.get("with");return l&&r.push({key:l,value:"*"}),t.get("past")==="1"&&!r.some(d=>d.key==="is")&&r.push({key:"is",value:"any"}),Cn({...a.sort?{sort:a.sort}:{},...a.query?{query:a.query}:{},...r.length>0?{filter:r}:{},...o?{group:o}:{},...a.archived!==void 0?{archived:a.archived}:{}},e)}function Si(t,e,n){let a=new URLSearchParams(t);return a.set(e,n),a.delete("past"),`?${a.toString()}`}function Co({name:t,title:e,panel:n,open:a,onOpen:r}){return(0,b.jsxs)("button",{type:"button","data-testid":`act-open-${t}`,"data-graview-act":t,"aria-expanded":a,"aria-controls":n,onClick:()=>{r(!a),a||requestAnimationFrame(()=>document.getElementById(n)?.querySelector("input, select, textarea, button")?.focus())},style:{...Se,minHeight:28,margin:"-4px 0",padding:"0 2px",border:0,background:"none",font:"inherit",fontWeight:600,color:"var(--graview-ink)",cursor:"pointer"},children:[(0,b.jsx)("span",{"aria-hidden":"true",style:{marginRight:6},children:a?"\u2212":"+"}),e]})}function Ro({name:t,id:e,description:n,open:a,onClose:r,children:i}){return(0,b.jsxs)("div",{"data-testid":`act-${t}`,id:e,hidden:!a,onKeyDown:o=>{o.key==="Escape"&&(o.preventDefault(),r(),document.querySelector(`[aria-controls="${e}"]`)?.focus())},style:a?{display:"grid",gap:12,padding:"4px 0 12px"}:void 0,children:[n?(0,b.jsx)("p",{style:{...C,margin:0,maxWidth:"58ch"},children:n}):null,i]})}function Lo({to:t,label:e}){let n=(0,Ne.useRef)(null);return $r(n),(0,b.jsx)(F,{ref:n,to:t,"aria-label":e,style:{position:"absolute",inset:0,borderRadius:6}})}var et=D(Fe(),1);var ht=D(Fe(),1);var W=D(j(),1);function jn({context:t}){let{store:e,brand:n,invariantContext:a,principal:r}=t;ne(e);let i=e.violations(a),o=e.allInvariants(),l=Lt(e,i),d=Ha(e.schema,o);return(0,W.jsxs)(ae,{context:t,children:[(0,W.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,W.jsx)(ie,{context:t,children:i.length===0?"All rules hold":"What is broken"}),(0,W.jsx)("p",{style:re,"data-testid":"problems-count",children:i.length===0?"Every declared rule is satisfied by what is here.":fa(i)})]}),(0,W.jsx)(wi,{context:t}),l.map((c,p)=>{let m=c.nodeIds[0],f=m?e.graph.getNode(m):void 0;return(0,W.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,W.jsx)(Jt,{violation:c,schema:e.schema,...n?{brand:n}:{}}),f?(0,W.jsxs)("p",{style:{margin:0,display:"inline-flex",alignItems:"center",gap:8},children:[(0,W.jsx)(fe,{kind:f.kind,brand:n,schema:e.schema,size:7}),(0,W.jsx)(F,{to:Z(e.schema,f.kind,f.id),style:K,children:me(e.schema.tryDefinition(f.kind),f)})]}):null,c.line?(0,W.jsx)(Jt,{violation:c,schema:e.schema,...n?{brand:n}:{}}):null,(0,W.jsx)(en,{store:e,repairs:c.repairs,...r?{principal:r}:{}})]},p)}),o.length>0?(0,W.jsxs)("section",{style:{...te,display:"grid",gap:12},"data-testid":"rules",children:[(0,W.jsx)("h2",{style:J,children:"The rules"}),(0,W.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:10},children:o.map(c=>{let p=i.filter(u=>u.invariant===c.name).length,m=d.get(c.name),f=c.label??c.name;return(0,W.jsxs)("li",{"data-graview-rule":c.name,style:{display:"grid",gap:2},children:[(0,W.jsxs)("span",{style:{display:"flex",flexWrap:"wrap",alignItems:"baseline",columnGap:12,rowGap:2},children:[m?(0,W.jsx)(Tt,{line:m,schema:e.schema,...n?{brand:n}:{},style:{flex:"1 1 18rem"}}):(0,W.jsx)("span",{style:{flex:"1 1 18rem",fontWeight:550},children:f}),(0,W.jsx)("span",{style:{...C,color:p>0?"var(--graview-warn)":"var(--graview-ink-faint)"},children:p===0?"holds":`broken in ${p} ${p===1?"place":"places"}`})]}),m&&f.trim().length>0?(0,W.jsx)("span",{style:C,children:f}):null]},c.name)})})]}):null]})}function Jt({violation:t,schema:e,brand:n}){if(!t.line)return(0,W.jsx)("p",{style:{margin:0,color:"var(--graview-warn)",fontWeight:550},children:t.message});let a=Ba(t),r=Ka(t);return r?(0,W.jsxs)("div",{style:{display:"grid",gap:4},"data-testid":"problem-line",children:[(0,W.jsx)("p",{style:{margin:0,color:"var(--graview-warn)",fontWeight:550},"data-testid":"problem-says",children:r}),a?(0,W.jsx)("span",{style:C,children:a}):null,(0,W.jsxs)("details",{"data-testid":"problem-judged",style:C,children:[(0,W.jsx)("summary",{style:{cursor:"pointer",width:"fit-content",minHeight:24},children:"How it is judged"}),(0,W.jsx)(Tt,{line:t.line,schema:e,...n?{brand:n}:{},lead:"none"})]})]}):(0,W.jsxs)("div",{style:{display:"grid",gap:2},"data-testid":"problem-line",children:[(0,W.jsx)(Tt,{line:t.line,schema:e,...n?{brand:n}:{},lead:"none",style:{color:"var(--graview-warn)"}}),a?(0,W.jsx)("span",{style:C,children:a}):null]})}function en({store:t,repairs:e,principal:n}){let[a,r]=(0,ht.useState)(null),[i,o]=(0,ht.useState)(null),l=(0,ht.useRef)([]);if(e.length===0)return null;let d=a===null?null:e[a],c=d&&(d.missing??[]).length>0?t.allMutations().find(p=>p.name===d.mutation):void 0;return(0,W.jsxs)("div",{style:{display:"grid",gap:10},"data-testid":"repairs",children:[(0,W.jsx)("div",{style:{display:"flex",gap:8,flexWrap:"wrap"},children:e.map((p,m)=>{let f=(p.missing??[]).length>0,u=t.permits({name:p.mutation,args:{...p.args}},n);return u.ok?(0,W.jsx)("button",{ref:k=>{l.current[m]=k},type:"button","data-graview-repair":p.mutation,"data-graview-asks":f||void 0,"aria-expanded":f?a===m:void 0,onClick:()=>{if(o(null),f){r(a===m?null:m);return}r(null);try{t.apply({name:p.mutation,args:{...p.args}},n?{author:n}:{})}catch(k){o(st(t.schema,t.allMutations(),k))}},style:xe,children:f?`${p.label} \u2026`:p.label},m):(0,W.jsxs)("p",{"data-testid":"withheld","data-withheld":u.refusal.wouldNeed.join(",")||"nobody",style:{...C,margin:0},children:[(0,W.jsx)("s",{children:p.label})," \u2014 ",u.refusal.message]},m)})}),c&&d?(0,W.jsx)(Ie,{store:t,mutation:c,prefilled:{...d.args},only:d.missing??[],label:d.label,onDone:()=>{let p=a;r(null),requestAnimationFrame(()=>{let m=p===null?null:l.current[p];if(m?.isConnected){m.focus();return}let f=document.querySelector("[data-graview-page-title]")??document.querySelector("main h1, main h2");f&&(f.hasAttribute("tabindex")||(f.tabIndex=-1),f.focus())})},...n?{principal:n}:{}}):null,d&&!c&&(d.missing??[]).length>0?(0,W.jsxs)("p",{"data-testid":"refused",role:"alert",style:{margin:0,color:"var(--graview-warn)",fontSize:Ln},children:["\u201C",d.label,"\u201D names ",d.mutation,", which this app does not declare."]}):null,i?(0,W.jsx)("p",{"data-testid":"refused",role:"alert",style:{margin:0,color:"var(--graview-warn)",fontSize:Ln},children:i}):null]})}var zn=D(Fe(),1);var je=D(j(),1);function Ci({store:t,link:e,principal:n}){let[a,r]=(0,zn.useState)(!1),[i,o]=(0,zn.useState)(null),l=Qa(e);return(0,je.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6,flexWrap:"wrap"},children:[(0,je.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,je.jsxs)("span",{style:{...C,display:"inline-flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,je.jsx)("span",{children:l}),(0,je.jsx)("button",{type:"button",style:{...xe,padding:"4px 10px"},onClick:()=>{try{t.apply({name:ya,args:{kind:e.edge.kind,from:e.edge.from,to:e.edge.to}},n?{author:n}:{}),r(!1)}catch(d){o(st(t.schema,t.allMutations(),d))}},children:"Keep this link"}),i?(0,je.jsx)("span",{role:"alert",children:i}):null]}):null]})}var ve=D(j(),1);function Ri({nodeId:t,node:e,field:n,inPlace:a,labelStyle:r=ke}){return n.files?(0,ve.jsx)(Ge,{as:"field",read:!a,nodeId:t,field:n.key,label:n.label,files:n.files,labelStyle:r,style:{gap:4}}):n.long?(0,ve.jsx)(Rr,{nodeId:t,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,ve.jsxs)("div",{style:{display:"grid",gap:2,minWidth:0,alignContent:"start"},children:[(0,ve.jsx)("dt",{style:r,children:n.label}),(0,ve.jsx)("dd",{style:{margin:0,overflowWrap:"anywhere",minWidth:0},children:n.linked?(0,ve.jsx)(nr,{relation:n.linked.relation,refs:n.linked.refs,...a?{nodeId:t,field:n.key}:{}}):n.app?(0,ve.jsx)(Ot,{address:n.app,as:"record",...a?{nodeId:t,field:n.key}:{}}):n.href?(0,ve.jsx)(Cr,{href:n.href,field:n.key,value:n.value,stored:n.stored,...a?{nodeId:t}:{}}):a?(0,ve.jsxs)(ve.Fragment,{children:[(0,ve.jsx)(Ft,{nodeId:t,field:n.key,value:n.value,stored:n.stored}),n.repeats?(0,ve.jsx)(ir,{nodeId:t,field:n.key,start:e?.[n.key],value:e?.[`${n.key}Repeat`],label:`${n.label} repeats`}):null]}):n.value})]})}var S=D(j(),1),To=[];function _n({context:t}){let{store:e,brand:n,principal:a,invariantContext:r}=t;ne(e);let i=ce()!==null,o=Ue(),l=decodeURIComponent(o.id??""),d=ri(e,l,{...a?{principal:a}:{},...r?{context:r}:{}}),c=Lt(e,d?.violations??To),[p,m]=(0,et.useState)(null),[f,u]=(0,et.useState)(!1),[k,q]=(0,et.useState)(null),h=(0,et.useRef)(null),R=(0,et.useRef)(null),G=g=>{(h.current?.parentElement?.querySelector(`[data-affordance="${g.replace(/["\\]/g,"\\$&")}"]`)??h.current)?.focus()};if(!d)return(0,S.jsx)(ae,{context:t,children:(0,S.jsx)(ie,{context:t,children:"Nothing lives at this address."})});let M=e.graph.getNode(l),V=e.schema.tryDefinition(d.kind),z=V?.describe&&M?qa(V,M):null,se=[...e.log.all()].filter(g=>!At(g)&&(g.writes.includes(l)||g.reads.includes(l))).slice(-8).reverse(),ue=e.log.all().find(g=>!At(g)&&g.undoes===void 0&&g.primitives.some(A=>A.op==="add-node"&&A.node.id===l)),I=d.actions.affordances.filter(g=>g.provider!=="invariant"),_=I.filter(g=>g.destructive||g.setsAside),oe=f||_.length<2?I:I.filter(g=>!_.includes(g)),we=t.views?.lookup(d.kind,{cardinality:"one",fidelity:"full"}),le=we!==void 0&&!ot(we)?we:void 0,ge=le&&M?Dt(we,M,e.graph):void 0,w=ge?d.fields.filter(g=>!ge.fields.has(g.key)):d.fields,y=ge?d.links.flatMap(g=>{let A=g.targets.filter(O=>!ge.records.has(O.id));return A.length>0?[{...g,targets:A}]:[]}):d.links,L=le!==void 0&&Fa(we),$=i&&Ja(V).length>0;return(0,S.jsxs)(ae,{context:t,children:[(0,S.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,S.jsxs)("p",{style:{...ke,display:"flex",alignItems:"center",gap:8},children:[(0,S.jsx)(fe,{kind:d.kind,brand:n,schema:e.schema,size:8}),(0,S.jsx)(F,{to:`/${Y(e.schema,d.kind)}`,style:Se,children:Q(e,d.kind)})]}),(0,S.jsx)(ie,{context:t,children:i&&M?.label===d.label?(0,S.jsx)(Ft,{nodeId:l,field:"label",value:d.label,said:d.label}):d.label}),z&&z!==d.label?(0,S.jsx)("p",{style:re,children:z}):null,ue?.lineage?(0,S.jsxs)("p",{style:{...C,margin:0},"data-testid":"record-lineage",children:["Made by ",ft(ue,a,{graph:e.graph,schema:e.schema,...t.seats?{seats:t.seats}:{},...t.people?{people:t.people}:{}}),", ",kn(ue.lineage)]}):null,(0,S.jsx)(Gt,{context:t,stop:`#focus=${encodeURIComponent(l)}`,style:{...K,...C},"data-testid":"spatial-link"}),i&&M?(0,S.jsx)(xn,{choices:[{on:"changed",record:l},{on:"act",record:l},{on:"reaches",kind:d.kind,condition:"",record:l}],label:"Notify me when this changes",testId:"record-notify",style:{...xe,...C,justifySelf:"start"}}):null,Le(t).some(g=>g.kind===d.kind||g.across===d.kind)?(0,S.jsxs)("p",{style:{...C,margin:0},"data-testid":"seen-in",children:["Seen in:"," ",Le(t).filter(g=>g.kind===d.kind||g.across===d.kind).map((g,A)=>(0,S.jsxs)("span",{children:[A>0?(0,S.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,(0,S.jsx)(F,{to:ye(t,g),style:K,children:g.title})," ",(0,S.jsx)(Gt,{context:t,stop:`#view=${encodeURIComponent(g.as)}`,style:{...K,...C,display:"inline-block",minWidth:24,textAlign:"center"},title:`${g.title}, in the scene`,label:`${g.title}, in the scene`,children:(0,S.jsx)("span",{"aria-hidden":"true",children:"\u2197"})})]},Ze(g)))]}):null]}),M&&ga(M)?(0,S.jsx)(Eo,{context:t,id:l,kind:d.kind}):null,M&&ha(e,l)?(0,S.jsx)(Mo,{context:t,id:l,kind:d.kind}):null,le&&M?(0,S.jsx)("section",{"data-testid":"record-view",style:{display:"grid",minWidth:0},children:(0,S.jsx)(Or,{children:(0,S.jsx)(le,{node:M,cardinality:"one",fidelity:"full",mode:"fullscreen",selected:!1,...d.violations.length>0?{flagged:[l]}:{}})})}):null,d.violations.length>0?(0,S.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((g,A)=>(0,S.jsxs)("div",{style:{display:"grid",gap:8},children:[(0,S.jsx)(Jt,{violation:g,schema:e.schema,...n?{brand:n}:{}}),(0,S.jsx)(en,{store:e,repairs:ii(d.actions,g.repairs),...a?{principal:a}:{}})]},A))}):null,!L&&(w.length>0||$)?(0,S.jsxs)("section",{style:{...te,display:"grid",gap:14},"data-testid":"record-fields",children:[(0,S.jsx)("h2",{style:J,children:"The facts"}),Va(V,w).map((g,A)=>{let O=(0,S.jsx)("dl",{style:{margin:0,display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(200px, 1fr))",gap:"14px 24px"},children:g.fields.map(ee=>(0,S.jsx)(Ri,{nodeId:l,node:M,field:ee,inPlace:i},ee.key))});return g.title?(0,S.jsxs)("section",{style:{display:"grid",gap:10,minWidth:0},children:[(0,S.jsx)("h3",{"data-graview-field-group":g.title,style:{...J,fontSize:"inherit"},children:g.title}),O]},A):(0,S.jsx)("div",{children:O},A)}),$?(0,S.jsx)(Ge,{as:"unfilled",nodeId:l,skip:[...ge?.fields??[]],labelStyle:ke,style:{gap:4}}):null]}):null,(L?[]:y).map(g=>(0,S.jsxs)("section",{style:{...te,display:"grid",gap:10},children:[(0,S.jsx)("p",{style:ke,children:Qr(e,g)}),g.description?(0,S.jsx)("h2",{style:J,children:Ce(g.description)}):(0,S.jsxs)("h2",{style:J,"aria-label":be(g.edgeKind),children:[g.direction==="in"?"\u2190 ":"\u2192 ",be(g.edgeKind)]}),(0,S.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"6px 18px"},children:g.targets.map(A=>{let O=Za(e,g.direction==="in"?{kind:g.edgeKind,from:A.id,to:l}:{kind:g.edgeKind,from:l,to:A.id});return(0,S.jsxs)("li",{style:{display:"inline-flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,S.jsx)(fe,{kind:A.kind,brand:n,schema:e.schema,size:7}),(0,S.jsxs)(F,{to:Z(e.schema,A.kind,A.id),style:K,children:[A.label,A.apart?(0,S.jsxs)("span",{style:C,children:[" \xB7 ",A.apart]}):null]}),O?.provisional?(0,S.jsx)(Ci,{store:e,link:O,...a?{principal:a}:{}}):null]},A.id)})}),(g.direction==="out"&&e.schema.edge(g.edgeKind)?.cardinality==="one"?[]:[...new Set(g.targets.map(A=>A.kind))]).map(A=>(0,S.jsxs)(F,{to:`/${Y(e.schema,A)}?${encodeURIComponent(g.edgeKind)}=${encodeURIComponent(l)}`,style:{...K,...C},"data-testid":"related-all",children:["Sort and filter ",g.description??`these ${Q(e,A).toLowerCase()}`,g.targets.some(O=>O.kind!==A)?` (${Q(e,A).toLowerCase()})`:""," ",(0,S.jsx)("span",{"aria-hidden":"true",children:"\u2192"})]},A))]},`${g.edgeKind}|${g.direction}|${g.description??""}`)),!L&&(I.length>0||d.actions.withheld.length>0)?(0,S.jsxs)("section",{style:{...te,display:"grid",gap:14},"data-testid":"record-actions",children:[(0,S.jsx)("h2",{style:J,ref:h,tabIndex:-1,children:"What can be done"}),(0,S.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:8},children:[oe.map(g=>{let A=p===g.id;return(0,S.jsx)("button",{type:"button","data-affordance":g.id,"data-rank":g.rank,"data-graview-act":g.mutation,autoFocus:f&&g===_[0],"aria-expanded":A,onClick:()=>{m(A?null:g.id),A||requestAnimationFrame(()=>R.current?.querySelector("input:not([type=hidden]), select, textarea, button")?.focus())},style:{...xe,...A?{borderColor:"var(--graview-accent)",color:"var(--graview-accent)"}:{}},children:g.label},g.id)}),oe.length<I.length?(0,S.jsxs)("button",{type:"button","aria-expanded":!1,onClick:()=>u(!0),style:{...xe,...C},"data-testid":"record-actions-more",children:["Show ",I.length-oe.length," more"]}):null]}),I.map(g=>{if(p!==g.id)return null;let A=e.allMutations().find(O=>O.name===g.mutation);return A?(0,S.jsxs)("div",{ref:R,onKeyDown:O=>{if(O.key!=="Escape"||O.defaultPrevented)return;O.preventDefault(),m(null);let ee=g.id;requestAnimationFrame(()=>G(ee))},style:{display:"grid",gap:10,padding:18,border:"1px solid var(--graview-edge)",borderRadius:"var(--graview-radius, 12px)",background:"var(--graview-panel)"},children:[(0,S.jsx)("h3",{style:J,children:g.label}),A.description?(0,S.jsx)("p",{style:{...C,margin:0},children:A.description}):null,(0,S.jsx)(Ie,{store:e,mutation:A,prefilled:g.args,open:g.open,label:g.label,onDone:()=>{m(null),q(g.mutation);let O=g.id;requestAnimationFrame(()=>G(O))},...a?{principal:a}:{}})]},g.id):null}),i&&k!==null&&p===null?(0,S.jsx)(xn,{choices:[{on:"act",act:k,record:l},{on:"act",act:k}],label:"Notify me when someone else does this",testId:"notify-after-act",style:{...xe,...C,justifySelf:"start"}}):null,(0,S.jsx)(Qt,{context:t,withheld:d.actions.withheld})]}):null,i?(0,S.jsx)(Yr,{id:l,style:te,headingStyle:J}):null,se.length>0?(0,S.jsxs)("section",{style:{...te,display:"grid",gap:10},"data-testid":"record-history",children:[(0,S.jsx)("h2",{style:J,children:"What has happened"}),(0,S.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},children:se.map(g=>(0,S.jsxs)("li",{style:C,children:[(0,S.jsx)("span",{style:{color:"var(--graview-ink)"},children:g.intent}),g.lineage?(0,S.jsxs)("span",{"data-graview-lineage":"",children:[" \xB7 ",kn(g.lineage)]}):null," \u2014 ",ft(g,a,{graph:e.graph,schema:e.schema,...t.seats?{seats:t.seats}:{},...t.people?{people:t.people}:{}})]},g.id))})]}):null]})}function Mo({context:t,id:e,kind:n}){let{store:a,principal:r}=t,i={name:`allow-tidying-${n}`,args:{id:e}},o=a.allMutations().some(l=>l.name===i.name)&&a.permits(i,r).ok;return(0,S.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,S.jsxs)("p",{style:{margin:0,flex:"1 1 16rem"},children:[(0,S.jsx)("strong",{children:"Left alone."})," Nothing automated changes it; tidying passes it by."]}),o?(0,S.jsx)("button",{type:"button",style:xe,"data-testid":"allow-tidying",onClick:()=>a.apply(i,r?{author:r}:{}),children:"Allow tidying again"}):null]})}function Eo({context:t,id:e,kind:n}){let{store:a,principal:r}=t,i={name:`unarchive-${n}`,args:{id:e}},o=a.allMutations().some(c=>c.name===i.name)&&a.permits(i,r).ok,l=[...a.log.all()].reverse().find(c=>!At(c)&&c.mergedInto!==void 0&&c.writes.includes(e)),d=l?.mergedInto!==void 0?a.graph.getNode(l.mergedInto):void 0;return(0,S.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,S.jsxs)("p",{style:{margin:0,flex:"1 1 16rem"},children:[(0,S.jsx)("strong",{children:"Archived."})," Kept with its ties and history, and out of lists, counts and rules.",d?(0,S.jsxs)(S.Fragment,{children:[" ","Merged into ",(0,S.jsx)(F,{to:Z(a.schema,d.kind,d.id),style:K,children:me(a.schema.tryDefinition(d.kind),d)}),"."]}):null]}),o?(0,S.jsx)("button",{type:"button",style:xe,"data-testid":"bring-it-back",onClick:()=>a.apply(i,r?{author:r}:{}),children:"Bring it back"}):null]})}var P=D(j(),1),No=(0,U.lazy)(Rt(()=>(__graviewPreload(import.meta.url,["./chunk.546WEHEX.js","./chunk.BZSU4HH2.js","./chunk.UGFDSE37.js","./chunk.P5325GYR.js","./chunk.QEXXLWEU.js","./chunk.BEC5ZH2L.js","./chunk.6HBEYRJU.js","./chunk.U7QMA4H7.js","./chunk.GP2F7TIN.js","./chunk.C6X7CKU6.js","./chunk.6CFP5UYP.js","./chunk.CAMQ7MYJ.js","./chunk.2GGDOFTF.js","./chunk.ZTMDU3OH.js","./chunk.HFDYFPMJ.js","./chunk.RWB4235L.js","./chunk.CTK2P4JV.js","./chunk.GXKECZ4S.js","./chunk.6XU2CXRZ.js","./chunk.3ZNQ5YKX.js","./chunk.7EFNLMKU.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.KJNUZYXS.js","./chunk.4BBJ62ZO.js","./chunk.UCZR33MK.js","./chunk.CC47O2DW.js","./chunk.2IX3CZNP.js","./chunk.6DHHUBSC.js","./chunk.GZHZLJBF.js","./chunk.HHUCPVG5.js","./chunk.OJGHDWI6.js","./chunk.WXYUWBKX.js","./chunk.NSNGPQGT.js","./chunk.H5CZZZLX.js","./chunk.Z7JRBKA7.js","./chunk.ORXFUK6F.js","./chunk.BTSXYZ6Z.js","./chunk.SDO3U72B.js","./chunk.5ZMENPY4.js","./chunk.AJZBJBMO.js"]),import("./chunk.PMER4LVT.js")).then(t=>({default:t.DraftPage})))),$o={kind:"human"};function Oo({list:t,store:e}){let n=new Set(t.members.map(o=>o.kind)),a=t.total-t.members.length,r=n.size===1?[...n][0]:void 0;if(!r)return(0,P.jsx)("p",{className:"graview-spec-text graview-spec-more",children:`and ${a} more`});let i=it(e.schema,r).toLowerCase();return(0,P.jsx)("p",{className:"graview-spec-text graview-spec-more",children:(0,P.jsx)(F,{to:`/${Y(e.schema,r)}`,className:"graview-spec-link graview-spec-see-all","data-testid":"see-all",children:t.total===e.graph.nodesOfKind(r).length?`See all ${gt(t.total)} ${i}`:`${gt(a)} more \xB7 all ${i}`})})}function Fo({context:t,children:e}){let n=He(),a=t.store.schema,r=Vt("/").replace(/\/$/,""),i=(0,U.useMemo)(()=>({href:o=>`${r}${Z(a,o.kind,o.id)}`,go:o=>n(Z(a,o.kind,o.id)),more:o=>(0,P.jsx)(Oo,{list:o,store:t.store})}),[r,a,n,t.store]);return(0,P.jsx)(It.Provider,{value:i,children:(0,P.jsx)(Fr.Provider,{value:(t.titleLevel??(t.framed&&!t.barAbove?1:2))-1,children:e})})}function Io({steering:t}){let e=Pe(),n=He(),a=`${e.pathname}${e.search}`;return(0,U.useLayoutEffect)(()=>t.at(a),[a,t]),(0,U.useLayoutEffect)(()=>{let r=o=>{o!==a&&n(o)};t.go.current=r;let i=t.pending?.current;return i!==void 0&&(t.pending.current=void 0,r(i)),()=>{t.go.current===r&&(t.go.current=void 0)}},[a,n,t]),null}function Do({context:t,to:e}){let{pathname:n}=Pe(),a=ce(),r=(e??a)?.sayWhere,i=Wo(t,n);return(0,U.useEffect)(()=>(r?.(i),()=>r?.(null)),[r,i]),null}function Wo(t,e){let[n="",a,r]=e.split("/").filter(Boolean).map(o=>{try{return decodeURIComponent(o)}catch{return o}});if(r!==void 0)return"#";if(n==="places"&&a!==void 0){if(a===vn)return"#overview=1";let o=t.views?.places().find(l=>l.as===a);return o?`#focus=${encodeURIComponent(Oe(o.kind))}&view=${encodeURIComponent(o.as)}`:"#"}let i=Ee(t.store.schema,n);return i?`#focus=${encodeURIComponent(a??Oe(i))}`:"#"}function Ho({onNavigate:t,path:e}){let n=Pe(),a=Mn(),r=He(),i=n.hash&&!n.hash.includes("=")?n.hash:"",o=`${n.pathname}${n.search}${i}`,l=(0,U.useRef)(t);l.current=t;let d=(0,U.useRef)(null);(0,U.useEffect)(()=>{let p=d.current;d.current=o,p!==null&&(o===p&&a!=="PUSH"||l.current?.(o,a==="POP"?"pop":a==="REPLACE"?"replace":"push"))},[n.key]);let c=(0,U.useRef)(e);return(0,U.useEffect)(()=>{e===void 0||e===c.current||(c.current=e,e!==o&&r(e))},[e]),null}function Li({context:t,registry:e,page:n}){let a=Ue(),r=Ee(t.store.schema,a.slug??""),i=n==="list"?Un:_n,l=(r?e?.lookup(r,n):void 0)??i;return(0,P.jsx)(l,{context:t})}function Ko({context:t,registry:e,children:n}){let a=(0,U.useRef)(null);return Ia(a),(0,P.jsx)("div",{ref:a,"data-graview-face":"pages",style:{display:"contents"},children:(0,P.jsx)(mi,{context:t,registry:e,root:a,children:(0,P.jsx)(yi,{context:t,root:a,children:n})})})}function Bo(t){return t instanceof HTMLElement?t.isContentEditable||t.tagName==="TEXTAREA"||t.tagName==="SELECT"?!0:t.tagName==="INPUT"&&!["button","submit","reset","checkbox","radio","image","file","color","range"].includes(t.type):!1}function qo(){let{pathname:t}=Pe(),e=Mn(),n=(0,U.useRef)(null);(0,U.useLayoutEffect)(()=>{if(e!=="POP"){for(let i=n.current?.parentElement;i;i=i.parentElement){let{overflowY:o}=getComputedStyle(i);if((o==="auto"||o==="scroll")&&i.scrollHeight>i.clientHeight){i.scrollTop=0;return}}window.scrollTo(0,0)}},[t]);let a=(0,U.useRef)(t),r=(0,U.useRef)(!1);return(0,U.useEffect)(()=>{if(!r.current&&t===a.current)return;r.current=!0;let i=document.activeElement;if(Bo(i))return;let o=n.current?.closest("main")??document.querySelector("main"),d=n.current?.closest("[data-graview-face]")?.querySelector("[data-graview-page-title]")??o?.querySelector("h1, h2")??null??o??null;d&&(d.hasAttribute("tabindex")||d.setAttribute("tabindex","-1"),d.focus({preventScroll:!0}))},[t]),(0,P.jsx)("span",{ref:n,hidden:!0,"data-graview-scroll-reset":""})}function Ti({context:t,children:e}){let n=He(),a=(0,U.useMemo)(()=>({record:(r,i)=>{let o=t.store.graph.getNode(r);o&&n(Ht(Z(t.store.schema,o.kind,r),{section:i?.section}))},place:(r,i)=>{let o=t.views?.places().find(l=>l.as===r);o&&n(Ht(ye(t,o),i))},list:(r,i)=>{t.store.schema.tryDefinition(r)&&n(Ht(`/${Y(t.store.schema,r)}`,i))},draft:()=>n("/~draft")}),[t,n]);return(0,P.jsx)(Oa.Provider,{value:a,children:e})}function Go(){let{pathname:t,search:e,hash:n}=Pe();return(0,U.useEffect)(()=>{let a=decodeURIComponent(n.replace(/^#/,""));if(!(!a||a.includes("=")))return ci(a)},[t,e,n]),null}function Vo({context:t,Home:e}){let n=Pe(),a=t.views,r=n.key==="default"&&!(a&&Na(a));(0,U.useEffect)(()=>{a&&$a(a)},[a]);let i=r?xa(t.views?.arrangement?.()?.first,t.store.schema,t.views?.places()??[]):void 0,o=i?.to==="place"?ye(t,i.place):i?.to==="kind"?`/${Y(t.store.schema,i.kind)}`:void 0;return o?(0,P.jsx)(En,{to:o,replace:!0}):(0,P.jsx)(e,{context:t})}function Mi({context:t,registry:e}){let n=e?.lookupSurface("shell"),a=n!==void 0,r=a&&(e?.without().has("bar")??!1),i=a&&!r&&!t.embedded?{...t,barAbove:!0}:t,o=k=>n===void 0?(0,P.jsx)(Ut,{context:t,children:k}):r?(0,P.jsx)(n,{context:t,children:k}):(0,P.jsx)(Ut,{context:t,children:(0,P.jsx)(n,{context:i,children:k})}),l=e?.lookupSurface("home")??Gn,d=e?.lookupSurface("problems")??jn,c=a?{...i,framed:!0}:t,[p,m]=(0,U.useState)(null),f=(0,U.useMemo)(()=>({onFind:m,find:!(e?.without().has("find")??!1),places:!(e?.without().has("places")??!1)}),[e]),u=(0,P.jsx)(Ti,{context:t,children:(0,P.jsx)(Ko,{context:t,registry:e,children:o((0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(Xa,{face:"pages"}),(0,P.jsxs)(Fo,{context:c,children:[(0,P.jsx)(qo,{}),(0,P.jsx)(Go,{}),(0,P.jsxs)(ei,{children:[(e?.routes()??[]).map(({path:k,component:q})=>(0,P.jsx)(Re,{path:k,element:(0,P.jsx)(q,{context:c})},k)),(0,P.jsx)(Re,{path:"/",element:(0,P.jsx)(Vo,{context:c,Home:l})}),(0,P.jsx)(Re,{path:"/problems",element:(0,P.jsx)(d,{context:c})}),(0,P.jsx)(Re,{path:"/~draft",element:(0,P.jsx)(U.Suspense,{fallback:null,children:(0,P.jsx)(No,{context:c})})}),(0,P.jsx)(Re,{path:"/search",element:(0,P.jsx)(Vn,{context:c})}),(0,P.jsx)(Re,{path:"/map",element:(0,P.jsx)(qn,{context:c})}),(0,P.jsx)(Re,{path:"/places",element:(0,P.jsx)(Kn,{context:c})}),Le(c).some(k=>k.as===vn)?null:(0,P.jsx)(Re,{path:Sa,element:(0,P.jsx)(En,{to:"/",replace:!0})}),(0,P.jsx)(Re,{path:"/places/:as",element:(0,P.jsx)(Bn,{context:c})}),(0,P.jsx)(Re,{path:"/:slug",element:(0,P.jsx)(Li,{context:c,registry:e,page:"list"})}),(0,P.jsx)(Re,{path:"/:slug/:id",element:(0,P.jsx)(Li,{context:c,registry:e,page:"record"})})]})]})]}))})});return t.embedded||!a||r?u:(0,P.jsx)(ai.Provider,{value:f,children:(0,P.jsx)(yr.Provider,{value:p,children:u})})}var Uo=()=>typeof document>"u"?null:document.body;function jo({context:t,registry:e,basename:n,initialPath:a,onNavigate:r,path:i,steering:o,firstLook:l}){let[d,c]=(0,U.useState)(void 0),p=d!==void 0&&d.from===t.principal?{...t,principal:d.seat}:t;(0,U.useState)(()=>p.views?Dr(p.views,p.store.schema,An(p.brand,p.store.schema)):void 0);let m=ce();la({reader:p.locale??m?.locale,app:p.brand?.locale??p.app?.brand?.locale,readerTimeZone:p.timeZone??m?.timeZone,appTimeZone:p.brand?.timeZone??p.app?.brand?.timeZone});let f=p.principal??$o,u=La(p.store,f,p.history),q=(u.past&&u.live===p.store?u.past.store:p.store).seenBy(f),h=q===p.store?p:{...p,store:q};Ta(p.store,p.principal);let R=(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(Ho,{onNavigate:r,path:i}),o?(0,P.jsx)(Io,{steering:o}):null,h.presence||m?(0,P.jsx)(Do,{context:h,to:m}):null,(0,P.jsx)(Mi,{context:h,...e?{registry:e}:{}}),l?(0,P.jsx)(Wr,{firstLook:l,root:Uo,app:An(p.brand,p.store.schema)}):null]}),G=h.views?(0,P.jsxs)(Ma,{store:h.store,views:h.views,...h.principal?{principal:h.principal}:{},...h.brand?{brand:h.brand}:{},...h.locale?{locale:h.locale}:{},...h.timeZone?{timeZone:h.timeZone}:{},...h.settings?{settings:h.settings}:{},...h.presence&&!m?{presence:h.presence}:{},...h.people?{people:h.people}:{},...h.seats?{seats:h.seats}:{},onSeat:z=>m?m.takeSeat(z):c({from:t.principal,seat:z}),...h.onKeepLens?{onKeepLens:h.onKeepLens}:{},...h.ai?{ai:h.ai}:{},...h.subscriptions?{subscriptions:h.subscriptions}:{},...h.signIn?{signIn:h.signIn}:{},resolveApp:h.resolveApp??m?.resolveApp,linkedRecords:h.linkedRecords??m?.linkedRecords,...h.app?{app:h.app}:{},...h.menuSections?{menuSections:h.menuSections}:{},children:[R,(0,P.jsx)(Ti,{context:h,children:(0,P.jsx)(pi,{context:h})})]}):R,M=(0,P.jsx)(Ra.Provider,{value:u,children:G}),V=h.files?(0,P.jsx)(Ca.Provider,{value:h.files,children:M}):M;if(a!==void 0){let z=n===void 0?a:`${n.replace(/\/$/,"")}${a}`;return(0,P.jsx)(Jr,{initialEntries:[z],...n===void 0?{}:{basename:n},children:V})}return(0,P.jsx)(ti,{...n===void 0?{}:{basename:n},children:V})}export{Yi as a,jo as b};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import{a as z,b as U,d as X}from"./chunk.F5UVEF2R.js";import"./chunk.FGDHEVH4.js";import{Pb as q,ba as Z,fa as J,ka as Q}from"./chunk.5ZMENPY4.js";import"./chunk.AJZBJBMO.js";function de(t){let r=t?.indexOf(":")??-1;if(!(!t||r<=0||r===t.length-1))return{relation:t.slice(0,r),record:t.slice(r+1)}}function ee(t,r){if(t.length===0)return!0;let d=`${r.split("/")[0]}/*`;return t.some(a=>a==="*"||a==="*/*"||a===r||a===d)}function te(t,r){let d=r.startsWith("image/")?"image":r.startsWith("video/")?"video":"file";return t.find(a=>a.as===d)??t.find(a=>a.as==="file")}function le(t,r){let d=new Set(t.map(w=>w.as==="image"?"image/":w.as==="video"?"video/":""));if(d.has("")||r.kinds.length===0)return r.kinds.join(",");let a=[];for(let w of d){let m=r.kinds.filter(l=>l.startsWith(w));a.push(...m.length>0?m:[`${w}*`])}return a.join(",")}var T=t=>t.input?.shape??{},ne=(t,r)=>T(t)[r]?.safeParse(void 0).success===!1;function re(t,r){let d=new Set(z(t.input).map(a=>a.name));return Object.keys(T(t)).filter(a=>!r.has(a)&&!d.has(a)&&ne(t,a)&&T(t)[a].safeParse("a name").success&&!T(t)[a].safeParse(1).success)}var ce=t=>t.replace(/\.[a-z0-9]{1,5}$/i,"")||t,ie=(t,r)=>[r,r.replace(/\.\d{3}Z$/,"Z"),r.slice(0,10)].find(d=>t.safeParse(d).success),fe="2026-01-01T00:00:00.000Z";function Y(t,r){let d=T(t),a=new Set(re(t,r)),w=Object.keys(d).filter(l=>!r.has(l)&&!a.has(l)&&ne(t,l)),m=w.filter(l=>ie(d[l],fe)!==void 0);return{timed:m,left:w.filter(l=>!m.includes(l))}}function ae(t,r,d,a,w){let m=e=>({ok:!1,says:e}),{kind:l}=a,C=(d.accepts??[]).filter(e=>e.kind===l&&(a.field===void 0||e.field===a.field));if(C.length===0)return m(a.field===void 0?`The view's accepts names no field of "${l}", so nothing dropped there can become one.`:`The view's accepts does not name ${l}'s "${a.field}".`);let b=w.files;if(!b||!(b.maxBytes>0))return m("This host takes no files.");let j=C.flatMap(e=>{let n=X(t,e.kind,e.field);return n?[{field:e.field,...n}]:[]}),v=j.filter(e=>e.as==="file"||b.kinds.length===0||b.kinds.some(n=>n==="*"||n==="*/*"||n.startsWith(e.as==="image"?"image/":"video/")));if(v.length===0)return m(`This host takes none of what ${l}'s ${j.map(e=>`"${e.field}"`).join(" or ")} holds.`);let c=a.connect===void 0?void 0:de(a.connect);if(a.connect!==void 0&&(!c||w.shown.has(a.connect)))return m(`data-drop-connect is "<relation>:<record id>", not "${a.connect}".`);if(c&&!w.shown.has(c.record))return m(`data-drop-connect names "${c.record}", which this view was not shown.`);let g=c?t.seenBy(r).graph.getNode(c.record):void 0;if(c&&!g)return m(`data-drop-connect names "${c.record}", which this seat does not see.`);let D=e=>Object.hasOwn(t.schema.tryDefinition(e)?.edges??{},c.relation),E=c?D(l):!1;if(c&&!E&&!D(g.kind))return m(`Neither a "${l}" nor a "${g.kind}" has the relation "${c.relation}".`);let H=t.allMutations(),F=e=>t.permits(e,r).ok,K=e=>v.every(n=>Object.hasOwn(T(e),n.field)),R=H.filter(e=>(e.creates??[]).includes(l)&&K(e)),x=Q(t.schema.tryDefinition(l),l),O=J(t.schema,l).toLowerCase(),S=g?Z(t.schema.tryDefinition(g.kind),g):void 0,V=e=>`${e===1?`a ${x}`:`${e} ${O}`}${S?` to ${S}`:""}`,I=e=>`Add ${V(e)}`,L=e=>`Added ${V(e)}.`,G=`Drop to add ${O}${S?` to ${S}`:""}.`,B=(e,n,p,A)=>{let N=new Set(Object.keys(n));for(let $ of Y(e,N).timed)n[$]=ie(T(e)[$],A??new Date().toISOString());for(let $ of re(e,N))n[$]=ce(p.name);return n},_=(e,...n)=>new Set([...v.map(p=>p.field),...n,...z(e.input).map(p=>p.name)]),P=(e,...n)=>Y(e,_(e,...n)).left,i=(e,n)=>m(`"${e.title??e.name}" asks for ${n.map(p=>`"${p}"`).join(" and ")}, which no dropped file says, so nothing dropped here can become a ${x}.`),o=(e,n)=>e.list?[n]:n,f={ok:!0,kind:l,fields:v,accept:le(v,b),...c?{connect:c}:{},intent:I,invite:G,added:L};if(!c){let e=R.find(n=>!n.subject&&F({name:n.name,args:{}}));return e?P(e).length>0?i(e,P(e)):{...f,calls:n=>[{name:e.name,args:B(e,{[n.field]:o(v.find(p=>p.field===n.field),n.value)},n.value,n.at)}]}:m(`This seat may not make a "${l}" here.`)}let s=R.find(e=>e.subject&&(e.subject.kinds==="*"||e.subject.kinds.includes(g.kind))&&(e.connects??[]).includes(c.relation)&&F({name:e.name,args:{[e.subject.arg]:c.record}}));if(s){let e=s.subject.arg;return P(s,e).length>0?i(s,P(s,e)):{...f,calls:n=>[{name:s.name,args:B(s,{[e]:c.record,[n.field]:o(v.find(p=>p.field===n.field),n.value)},n.value,n.at)}]}}let u=R.find(e=>!e.subject&&F({name:e.name,args:{}}));if(!u)return m(`This seat may not make a "${l}" here.`);if(P(u).length>0)return i(u,P(u));let h=E?l:g.kind,W=E?g.kind:l,M=H.find(e=>{if(!(e.connects??[]).includes(c.relation)||!e.subject)return!1;let n=e.subject.kinds;if(n!=="*"&&!n.includes(h))return!1;let p=z(e.input).find(A=>A.name!==e.subject.arg&&(A.kinds.includes("*")||A.kinds.includes(W)));return p?F({name:e.name,args:E?{[p.name]:c.record}:{[e.subject.arg]:c.record}}):!1});if(!M)return m(`This seat may not link a "${l}" to ${c.record} by "${c.relation}".`);let y=M.subject.arg,k=z(M.input).find(e=>e.name!==y&&(e.kinds.includes("*")||e.kinds.includes(W))).name;return{...f,calls:(e,n)=>[{name:u.name,args:B(u,{[e.field]:o(v.find(p=>p.field===e.field),e.value)},e.value,e.at)},{name:M.name,args:E?{[y]:q(n*2),[k]:c.record}:{[y]:c.record,[k]:q(n*2)}}]}}var se=t=>t.type.startsWith("image/"),ue=t=>t.type.startsWith("video/"),pe=`
|
|
2
|
-
[data-graview-drop-over] { outline: 2px dashed var(--graview-accent, Highlight) !important; outline-offset: 2px !important; background-color: color-mix(in srgb, var(--graview-accent, Highlight) 10%, transparent) !important; }
|
|
3
|
-
[data-graview-drop-status], [data-graview-drop-refused] { margin: 4px 0 0; font: 0.8125rem/1.4 var(--graview-font-body, system-ui, sans-serif); color: var(--graview-ink-muted, GrayText); }
|
|
4
|
-
[data-graview-drop-refused] { color: var(--graview-warn, var(--graview-ink, CanvasText)); }
|
|
5
|
-
[data-graview-drop-status]:empty, [data-graview-drop-refused]:empty { display: none; }
|
|
6
|
-
`,me="a, button, input, select, textarea, label, summary, [data-act], [data-lightbox], [data-record], [tabindex]";function oe(t){return t<1e3?`${t} bytes`:t<1e6?`${Math.round(t/1e3)} KB`:`${(t/1e6).toFixed(t<1e7?1:0)} MB`}var ge={mov:"video/quicktime",mp4:"video/mp4",m4v:"video/mp4",webm:"video/webm",heic:"image/heic",heif:"image/heif",jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png"},he=t=>t.type||ge[/\.([a-z0-9]{2,4})$/i.exec(t.name)?.[1]?.toLowerCase()??""]||"application/octet-stream";function ye(t){let r=[...new Set(t.fields.map(d=>d.as==="image"?"a picture":d.as==="video"?"a video":"a file"))];return r.length<=1?r[0]??"a file":`${r.slice(0,-1).join(", ")} or ${r[r.length-1]}`}var ve=(t,r)=>`${t.invite.replace(/\.$/,"")}${r?", or tap to choose them":""}.`;function Ee(t,r){let{shadow:d}=r,a=d.ownerDocument,w=r.coarse??(()=>typeof t.matchMedia=="function"&&t.matchMedia("(pointer: coarse)").matches),m=new WeakMap,l=new WeakSet,C=new Set,b=new Set,j=a.createElement("style");j.setAttribute("data-graview-drop-style",""),j.textContent=pe;let v=a.createElement("p");v.setAttribute("data-graview-drop-status",""),v.setAttribute("role","status"),v.setAttribute("aria-live","polite");let c=a.createElement("div");c.setAttribute("data-graview-drop-refused",""),c.setAttribute("role","alert");let g=a.createElement("input");g.type="file",g.multiple=!0,g.hidden=!0,g.tabIndex=-1,g.setAttribute("data-graview-drop-picker",""),g.setAttribute("aria-hidden","true"),d.append(j,v,c,g);let D=i=>{v.textContent!==i&&(v.textContent=i)},E=i=>{c.replaceChildren(...i.map(o=>{let f=a.createElement("p");return f.style.margin="0",f.textContent=o,f}))},H=()=>[...d.querySelectorAll("[data-drop]")],F=i=>{let o=i,f=o&&typeof o.closest=="function"?o.closest("[data-graview-drop]"):null;return f&&d.contains(f)?f:void 0},K=()=>{let i=r.shown(),o=r.files(),f;for(let s of H()){let u=s.getAttribute("data-drop")??"",h=ae(r.store,r.principal,r.manifest,{kind:u,...s.hasAttribute("data-drop-field")?{field:s.getAttribute("data-drop-field")}:{},...s.hasAttribute("data-drop-connect")?{connect:s.getAttribute("data-drop-connect")}:{}},{shown:i,files:o});if(h.ok){f??=h,m.set(s,h),s.setAttribute("data-graview-drop",""),(!s.hasAttribute("aria-description")||l.has(s))&&(s.setAttribute("aria-description",ve(h,w())),l.add(s));continue}m.delete(s),s.removeAttribute("data-graview-drop"),s.removeAttribute("data-graview-drop-over"),l.has(s)&&(s.removeAttribute("aria-description"),l.delete(s)),!/^This seat may not|^This host takes no/.test(h.says)&&!C.has(h.says)&&(C.add(h.says),r.onProblem?.(`A drop target the view drew (data-drop="${u}") is not offered: ${h.says}`))}f&&(g.accept=f.accept)},R=i=>{let o=i.dataTransfer?.types;return o!==void 0&&Array.from(o).includes("Files")},x,O=i=>{x!==i&&(x?.removeAttribute("data-graview-drop-over"),x=i,i?(i.setAttribute("data-graview-drop-over",""),D(m.get(i)?.invite??"")):b.size===0&&D(""))},S=i=>{let o=F(i.composedPath()[0]);if(!o||!R(i))return;i.preventDefault();let f=i.dataTransfer;f&&(f.dropEffect="copy"),O(o)},V=i=>{if(!x)return;let o=i.relatedTarget;o&&x.contains(o)||O(void 0)},I=i=>{let o=F(i.composedPath()[0]);if(O(void 0),!o)return;i.preventDefault(),i.stopPropagation();let f=Array.from(i.dataTransfer?.files??[]);f.length>0&&_(o,f)},L=()=>O(void 0);d.addEventListener("dragenter",S),d.addEventListener("dragover",S),d.addEventListener("dragleave",V),d.addEventListener("drop",I),a.addEventListener("dragend",L),a.addEventListener("drop",L);let G,B=i=>{let o=m.get(i);o&&(G=i,g.accept=o.accept,g.click())};g.addEventListener("change",()=>{let i=Array.from(g.files??[]);try{g.value=""}catch{}G&&i.length>0&&_(G,i)});let _=(i,o)=>{let f=m.get(i),s=r.files();if(!f||!s)return;let u=P(i,f,s,o).finally(()=>{b.delete(u),r.onBusy?.()});b.add(u),r.onBusy?.()};async function P(i,o,f,s){E([]),D(`Adding ${s.length===1?`\u201C${s[0].name}\u201D`:`${s.length} files`}\u2026`);let u=[],h=[];for(let y of s){let k=y.name||"file",e=he(y),n=te(o.fields,e);if(!n){u.push(`\u201C${k}\u201D isn\u2019t ${ye(o)}.`);continue}if(!ee(f.kinds,e)){u.push(`\u201C${k}\u201D is ${e}; this host doesn\u2019t take it.`);continue}if(y.size>f.maxBytes){u.push(`\u201C${k}\u201D is ${oe(y.size)}; this host takes files up to ${oe(f.maxBytes)}.`);continue}let p;try{p=await f.upload(y,k)}catch($){u.push(`\u201C${k}\u201D wasn\u2019t kept: ${$ instanceof Error&&$.message.trim()?$.message.trim():"the host refused it"}`);continue}if(!U(p)){u.push(`The host\u2019s answer for \u201C${k}\u201D isn\u2019t a file a record can keep.`);continue}if(n.as==="image"&&!se(p)||n.as==="video"&&!ue(p)){u.push(`The host kept \u201C${k}\u201D as ${p.type}, not as ${n.as==="image"?"a picture":"a video"}.`);continue}let A=p;if(se(A)&&(A.width===void 0||A.height===void 0)&&typeof t.createImageBitmap=="function")try{let $=await t.createImageBitmap(y);A={...A,width:$.width,height:$.height},$.close()}catch{}let N=Number.isFinite(y.lastModified)&&y.lastModified>0?new Date(y.lastModified).toISOString():void 0;h.push({field:n.field,value:A,...N?{at:N}:{}})}for(let y of h)r.handed(y.value);if(E(u),r.hears()){let y=r.idOf(i);if(D(""),y===void 0)return;let k=h.map(({field:e,value:n,at:p})=>({href:n.href,name:n.name,type:n.type,bytes:n.bytes,...n.width!==void 0?{width:n.width}:{},...n.height!==void 0?{height:n.height}:{},...n.poster!==void 0?{poster:n.poster}:{},...n.duration!==void 0?{duration:n.duration}:{},...p?{at:p}:{},field:e}));r.send({type:"dom-event",target:y,event:"drop",files:k,...u.length>0?{refused:u}:{}});return}if(h.length===0)return D("");let W=h.flatMap((y,k)=>o.calls(y,k)),M=r.change(W,o.intent(h.length));M.ok?D(o.added(h.length)):(D(""),E([...u,`Nothing was added: ${M.message}`]))}return{refresh:K,before(i,o,f){let s=F(o);if(!s||!f.contains(s)||!m.has(s))return!1;let u=i.type==="keydown"?i.key:void 0,h=i.composedPath()[0]?.closest?.(me),W=h!=null&&h!==s&&s.contains(h);return!(i.type==="click"&&w()&&!W)&&!((u==="Enter"||u===" ")&&o===s)?!1:(i.preventDefault(),i.stopPropagation(),B(s),!0)},idle:async()=>{for(;b.size>0;)await Promise.all([...b])},get waiting(){return b.size},dispose(){d.removeEventListener("dragenter",S),d.removeEventListener("dragover",S),d.removeEventListener("dragleave",V),d.removeEventListener("drop",I),a.removeEventListener("dragend",L),a.removeEventListener("drop",L),j.remove(),v.remove(),c.remove(),g.remove()}}}export{Ee as createGuestDrops};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a,b}from"./chunk.67USHK26.js";import"./chunk.UIUHGA6W.js";import"./chunk.ORXFUK6F.js";import"./chunk.BTSXYZ6Z.js";import"./chunk.SDO3U72B.js";import"./chunk.5ZMENPY4.js";import"./chunk.AJZBJBMO.js";export{a as ActivityFilter,b as InteractionRow};
|