graview 0.1.48 → 0.1.49

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.
Files changed (171) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.js +6 -6
  3. package/dist/index.js.map +1 -1
  4. package/dist/preview/{chunk.TKMQROXF.js → chunk.2CO2EJQA.js} +1 -1
  5. package/dist/preview/{chunk.D5ETRTAF.js → chunk.2N6RQ427.js} +1 -1
  6. package/dist/preview/{chunk.FOP5RBGF.js → chunk.2OLZ6BYI.js} +1 -1
  7. package/dist/preview/{chunk.X7N3JUO4.js → chunk.2OXXGN7C.js} +2 -2
  8. package/dist/preview/{chunk.QII2C5OV.js → chunk.2QKSWK4U.js} +1 -1
  9. package/dist/preview/chunk.35FUGOSG.js +1 -0
  10. package/dist/preview/{chunk.X7JMJSLU.js → chunk.3EW6L5DY.js} +1 -1
  11. package/dist/preview/chunk.3NEALGMI.js +1 -0
  12. package/dist/preview/{chunk.2UIUMG23.js → chunk.423SZS7C.js} +3 -3
  13. package/dist/preview/{chunk.HKA5T7DL.js → chunk.4D26JY5U.js} +1 -1
  14. package/dist/preview/{chunk.5A4AOFOA.js → chunk.4HUB3N7I.js} +1 -1
  15. package/dist/preview/chunk.4K7I7WYF.js +1 -0
  16. package/dist/preview/{chunk.OZGETOTK.js → chunk.4OTESF7W.js} +1 -1
  17. package/dist/preview/{chunk.NWT5FPEK.js → chunk.4Q5KWYVY.js} +18 -18
  18. package/dist/preview/{chunk.LNON6P7K.js → chunk.4QINLTDZ.js} +1 -1
  19. package/dist/preview/{chunk.UJRBOUGC.js → chunk.4SEY7VWZ.js} +1 -1
  20. package/dist/preview/{chunk.37CJSWLL.js → chunk.4XKACWLT.js} +1 -1
  21. package/dist/preview/chunk.52QB4YW2.js +1 -0
  22. package/dist/preview/{chunk.HG4DDNPG.js → chunk.54PZWX23.js} +1 -1
  23. package/dist/preview/{chunk.FPYL6REZ.js → chunk.5YFO6D7J.js} +1 -1
  24. package/dist/preview/chunk.6EGHJCEM.js +1 -0
  25. package/dist/preview/{chunk.XTMOFRHL.js → chunk.6EHE26ZS.js} +1 -1
  26. package/dist/preview/{chunk.3BAHAK6W.js → chunk.6RLFO5GA.js} +1 -1
  27. package/dist/preview/chunk.6WRA3Y7D.js +1 -0
  28. package/dist/preview/{chunk.BDHKWVNX.js → chunk.7C4IR4S7.js} +1 -1
  29. package/dist/preview/{chunk.MZLWLIKR.js → chunk.7JLYEZW4.js} +1 -1
  30. package/dist/preview/{chunk.GACKGEUY.js → chunk.7JW5SHRR.js} +1 -1
  31. package/dist/preview/{chunk.I7QIHN66.js → chunk.7MJGZHTS.js} +1 -1
  32. package/dist/preview/{chunk.KW65F4WA.js → chunk.7MWLDDFL.js} +1 -1
  33. package/dist/preview/{chunk.IRHSTUZM.js → chunk.7SGQ3HFG.js} +1 -1
  34. package/dist/preview/{chunk.N4M54YK6.js → chunk.A7HMVWMG.js} +1 -1
  35. package/dist/preview/{chunk.UGJSMNVO.js → chunk.AGVFW6WC.js} +1 -1
  36. package/dist/preview/{chunk.NQZ73QV7.js → chunk.AOEXSQDG.js} +1 -1
  37. package/dist/preview/{chunk.GUMJEVVP.js → chunk.AP22NNIM.js} +1 -1
  38. package/dist/preview/{chunk.PPRSGM64.js → chunk.AVDXG57A.js} +1 -1
  39. package/dist/preview/{chunk.EMQ5POGB.js → chunk.B2BLZDBD.js} +1 -1
  40. package/dist/preview/chunk.B445DZOY.js +1 -0
  41. package/dist/preview/{chunk.GNBN3BK7.js → chunk.BH365UJ5.js} +1 -1
  42. package/dist/preview/{chunk.PMJUGHW4.js → chunk.BJR6E2CT.js} +1 -1
  43. package/dist/preview/{chunk.GT3F6FQ6.js → chunk.BNU3KXKL.js} +1 -1
  44. package/dist/preview/{chunk.GH2SWMCW.js → chunk.BTORFVKO.js} +1 -1
  45. package/dist/preview/{chunk.76W2FXEC.js → chunk.BU6V76EF.js} +1 -1
  46. package/dist/preview/{chunk.QQTRAY5W.js → chunk.BVXOLZQ3.js} +1 -1
  47. package/dist/preview/{chunk.VQAQQW4Q.js → chunk.C75I24Z5.js} +1 -1
  48. package/dist/preview/{chunk.J6ANRF6E.js → chunk.CXIIRL67.js} +1 -1
  49. package/dist/preview/{chunk.SKJJBLXF.js → chunk.D25QV6DK.js} +1 -1
  50. package/dist/preview/{chunk.TMDI7KRS.js → chunk.D4IKO5YA.js} +3 -3
  51. package/dist/preview/{chunk.MAFFUPCR.js → chunk.D4K23FUB.js} +1 -1
  52. package/dist/preview/{chunk.ZH4NWRWB.js → chunk.D53IGR45.js} +1 -1
  53. package/dist/preview/chunk.D66RI4QS.js +1 -0
  54. package/dist/preview/{chunk.KVEDIBXS.js → chunk.DFGXNFFE.js} +1 -1
  55. package/dist/preview/{chunk.QPICKSSM.js → chunk.DSNHE4MZ.js} +1 -1
  56. package/dist/preview/{chunk.NFDLCUCC.js → chunk.DTRNDSMS.js} +1 -1
  57. package/dist/preview/{chunk.4KX53HCV.js → chunk.DV4GSLGX.js} +2 -2
  58. package/dist/preview/{chunk.DPHTUTOS.js → chunk.EJAVIZ7Y.js} +1 -1
  59. package/dist/preview/{chunk.YDL5BSTG.js → chunk.EM5CGFNB.js} +1 -1
  60. package/dist/preview/chunk.EPTUOPPC.js +1 -0
  61. package/dist/preview/{chunk.44G5A53D.js → chunk.ERWBI2NK.js} +1 -1
  62. package/dist/preview/chunk.EYSQPXVE.js +2 -0
  63. package/dist/preview/{chunk.DAUC2DFY.js → chunk.FIS27KW4.js} +1 -1
  64. package/dist/preview/chunk.FNK2ZZ5E.js +1 -0
  65. package/dist/preview/{chunk.RQBEQYB2.js → chunk.FOYVTN5B.js} +1 -1
  66. package/dist/preview/{chunk.I5TOMBIF.js → chunk.FUMQLGNM.js} +1 -1
  67. package/dist/preview/chunk.G25JEYCC.js +1 -0
  68. package/dist/preview/{chunk.2VTMTW7K.js → chunk.G3Q5CYEM.js} +1 -1
  69. package/dist/preview/{chunk.7LL7OSBY.js → chunk.GEY4MA4D.js} +2 -2
  70. package/dist/preview/{chunk.KVJFY7N5.js → chunk.GRLPNTUW.js} +1 -1
  71. package/dist/preview/{chunk.6TKILWRM.js → chunk.H42WBU5C.js} +1 -1
  72. package/dist/preview/{chunk.TBRJOKIK.js → chunk.IQHVVQEA.js} +1 -1
  73. package/dist/preview/{chunk.DWPU56S5.js → chunk.IVHPJUFM.js} +1 -1
  74. package/dist/preview/{chunk.QO7MDWID.js → chunk.IWEPDTVG.js} +1 -1
  75. package/dist/preview/{chunk.PVEPU6EA.js → chunk.IYLOA3MV.js} +1 -1
  76. package/dist/preview/chunk.JBG5UQLM.js +1 -0
  77. package/dist/preview/{chunk.DOBQ4LO4.js → chunk.KDTNKKOY.js} +1 -1
  78. package/dist/preview/chunk.KJBXNMIU.js +21 -0
  79. package/dist/preview/chunk.KLAEKRCA.js +1 -0
  80. package/dist/preview/{chunk.Z4UM4CMT.js → chunk.KQSD5MLY.js} +1 -1
  81. package/dist/preview/{chunk.ETR6AV47.js → chunk.KVEDMKUN.js} +1 -1
  82. package/dist/preview/{chunk.5Y3Q7ONN.js → chunk.LD6S2FL5.js} +1 -1
  83. package/dist/preview/{chunk.DFK2NA6L.js → chunk.LUL6PFIQ.js} +1 -1
  84. package/dist/preview/chunk.MCFLCC42.js +12 -0
  85. package/dist/preview/{chunk.2GLJH253.js → chunk.MJ4XTNTL.js} +1 -1
  86. package/dist/preview/{chunk.CJ23XTSW.js → chunk.MU5WUTVF.js} +1 -1
  87. package/dist/preview/{chunk.P6FQAILU.js → chunk.MUHFZXPS.js} +1 -1
  88. package/dist/preview/{chunk.NLBIX7LH.js → chunk.N2S3TMBC.js} +1 -1
  89. package/dist/preview/{chunk.DUWYF7BO.js → chunk.N2S45SSL.js} +1 -1
  90. package/dist/preview/{chunk.PCEYZQAW.js → chunk.NBJ4C33P.js} +1 -1
  91. package/dist/preview/{chunk.E5GM2SMO.js → chunk.NQ7SRWXA.js} +1 -1
  92. package/dist/preview/chunk.NQDGUIUQ.js +1 -0
  93. package/dist/preview/{chunk.QQCDCRR2.js → chunk.NUUT37ER.js} +1 -1
  94. package/dist/preview/{chunk.LXCJVZF3.js → chunk.O3ONLQUF.js} +1 -1
  95. package/dist/preview/{chunk.QGE6YKSU.js → chunk.OFBESPHJ.js} +1 -1
  96. package/dist/preview/chunk.OKHEZJBX.js +1 -0
  97. package/dist/preview/{chunk.LPD74WBI.js → chunk.OL5D7YTW.js} +1 -1
  98. package/dist/preview/{chunk.ENPCLMP2.js → chunk.ON35FJ5H.js} +1 -1
  99. package/dist/preview/{chunk.GVNYPFIM.js → chunk.OS75HEZP.js} +1 -1
  100. package/dist/preview/{chunk.6VAFNCR4.js → chunk.OTF3NNTI.js} +1 -1
  101. package/dist/preview/{chunk.OVO6L5IP.js → chunk.P2AC6JRL.js} +1 -1
  102. package/dist/preview/chunk.PBCT33FF.js +1 -0
  103. package/dist/preview/{chunk.PTXLOFQW.js → chunk.PCVU3LY3.js} +1 -1
  104. package/dist/preview/chunk.PFEKS3KO.js +5 -0
  105. package/dist/preview/chunk.PFR3FQBR.js +1 -0
  106. package/dist/preview/{chunk.NTLHEHOM.js → chunk.Q4KNNJFL.js} +1 -1
  107. package/dist/preview/{chunk.PQVUQVRL.js → chunk.QBHVBL42.js} +1 -1
  108. package/dist/preview/{chunk.G7WDMUDV.js → chunk.QPNFWP4Z.js} +1 -1
  109. package/dist/preview/{chunk.OFRGDJYX.js → chunk.QQE7N7LB.js} +1 -1
  110. package/dist/preview/{chunk.MVRG75ZD.js → chunk.QQRLUBWQ.js} +1 -1
  111. package/dist/preview/{chunk.2QNGGF55.js → chunk.QWX2N2VD.js} +2 -2
  112. package/dist/preview/chunk.R5IRHCLZ.js +1 -0
  113. package/dist/preview/{chunk.YVOABA2U.js → chunk.REANMQ6K.js} +1 -1
  114. package/dist/preview/{chunk.MVSV7T6E.js → chunk.RI624PFK.js} +1 -1
  115. package/dist/preview/{chunk.W72TTRLX.js → chunk.RMWLV3PR.js} +6 -6
  116. package/dist/preview/{chunk.DHAK6PPX.js → chunk.RSR2M7ZO.js} +2 -2
  117. package/dist/preview/{chunk.EXEZBZGW.js → chunk.SGJSJGSR.js} +1 -1
  118. package/dist/preview/{chunk.NR5ODXMO.js → chunk.SIVMZNHZ.js} +1 -1
  119. package/dist/preview/{chunk.4VW6THJF.js → chunk.SPZVEQC5.js} +1 -1
  120. package/dist/preview/chunk.SR2345SW.js +1 -0
  121. package/dist/preview/chunk.ST4JHXPS.js +1 -0
  122. package/dist/preview/{chunk.KTFUVR4V.js → chunk.TABIRLQS.js} +1 -1
  123. package/dist/preview/{chunk.SFAAM4KE.js → chunk.TBA4GF34.js} +1 -1
  124. package/dist/preview/{chunk.HDE2MGGU.js → chunk.THENABJU.js} +1 -1
  125. package/dist/preview/{chunk.KA44WNB4.js → chunk.TM6JVVGW.js} +1 -1
  126. package/dist/preview/{chunk.CH5ROV7N.js → chunk.TSHBXCMU.js} +1 -1
  127. package/dist/preview/{chunk.J2V76Z6G.js → chunk.UL43GFVC.js} +1 -1
  128. package/dist/preview/{chunk.5IPH2SCE.js → chunk.UTRIPGW6.js} +1 -1
  129. package/dist/preview/{chunk.Y4MQGEUS.js → chunk.VSWEKNKS.js} +2 -2
  130. package/dist/preview/chunk.VV3PNZPI.js +1 -0
  131. package/dist/preview/chunk.W6CGAPNQ.js +1 -0
  132. package/dist/preview/{chunk.V2GSBYDK.js → chunk.WQN7EFW3.js} +2 -2
  133. package/dist/preview/{chunk.ODRL5OWR.js → chunk.X4MTZKL3.js} +1 -1
  134. package/dist/preview/{chunk.3UD7GG5B.js → chunk.XJ7YGW6Y.js} +1 -1
  135. package/dist/preview/{chunk.5IM645XQ.js → chunk.XMOIMPUC.js} +1 -1
  136. package/dist/preview/{chunk.7VT3TRHR.js → chunk.XN7PIWVC.js} +1 -1
  137. package/dist/preview/{chunk.3RP3N2JP.js → chunk.XXZFWZ4C.js} +1 -1
  138. package/dist/preview/{chunk.V4BCB7N2.js → chunk.YECMUK4X.js} +1 -1
  139. package/dist/preview/{chunk.SA34Y3X5.js → chunk.YSFNPYCD.js} +1 -1
  140. package/dist/preview/{chunk.RLXKDXPB.js → chunk.YXOJKGRC.js} +1 -1
  141. package/dist/preview/{chunk.EZJNUFNQ.js → chunk.ZBL47SFK.js} +1 -1
  142. package/dist/preview/{chunk.HC5N3CT2.js → chunk.ZILULTJJ.js} +1 -1
  143. package/dist/preview/index.html +49 -49
  144. package/dist/preview/page.js +2 -2
  145. package/package.json +6 -6
  146. package/dist/preview/chunk.4GQA3AJU.js +0 -1
  147. package/dist/preview/chunk.4TJOS4C7.js +0 -5
  148. package/dist/preview/chunk.664PBQAQ.js +0 -1
  149. package/dist/preview/chunk.72OZLWJL.js +0 -1
  150. package/dist/preview/chunk.72W6S746.js +0 -1
  151. package/dist/preview/chunk.7FRPNQU4.js +0 -1
  152. package/dist/preview/chunk.7QZYFLBS.js +0 -1
  153. package/dist/preview/chunk.B2IIEVBF.js +0 -21
  154. package/dist/preview/chunk.DQ7M3LFV.js +0 -1
  155. package/dist/preview/chunk.FQYOTK34.js +0 -1
  156. package/dist/preview/chunk.GTPC6JOW.js +0 -2
  157. package/dist/preview/chunk.ILZYRJDS.js +0 -1
  158. package/dist/preview/chunk.LGSFGNWE.js +0 -1
  159. package/dist/preview/chunk.MTXEURFE.js +0 -1
  160. package/dist/preview/chunk.NX7IIZLO.js +0 -1
  161. package/dist/preview/chunk.O45VO36H.js +0 -1
  162. package/dist/preview/chunk.OAIWGWGU.js +0 -3
  163. package/dist/preview/chunk.SAHNXAV3.js +0 -1
  164. package/dist/preview/chunk.SUPWMV2F.js +0 -1
  165. package/dist/preview/chunk.TPG6IY4M.js +0 -1
  166. package/dist/preview/chunk.V3N34DSU.js +0 -1
  167. package/dist/preview/chunk.X5G7FOPY.js +0 -12
  168. package/dist/preview/chunk.YEVA72L2.js +0 -1
  169. package/dist/preview/chunk.YLWON7X3.js +0 -1
  170. package/dist/preview/chunk.YUH43J2K.js +0 -1
  171. package/dist/preview/chunk.ZXZNAG35.js +0 -1
@@ -1,8 +1,8 @@
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 zt,B as Re,C as ro,D as Ze,E as me,F as Wn,G as De,H as Ue,I as oo,J as Kn,K as Le,L as io,M as so,N as O,O as pt,P as wt,Q as lo,R as vt,S as Qt,T as co,U as te,V as Zt,W as oe,X as Bn,a as U,b as ve,c as _,d as jt,e as Hn,f as In,g as ct,h as X,i as we,j as re,k as C,l as ee,m as G,n as qe,o as Se,p as _t,q as ke,r as ce,s as to,t as ht,u as no,v as Fn,w as Dn,x as Y,y as Fe,z as ao}from"./chunk.I7QIHN66.js";import{a as Ie}from"./chunk.2QNGGF55.js";import{a as Qe,b as Yt,d as Q}from"./chunk.PMJUGHW4.js";import{b as Nn,c as Jr,d as eo}from"./chunk.Y4MQGEUS.js";import{a as Qr,d as Zr,e as Xr}from"./chunk.UGFDSE37.js";import{a as Ur,c as Vr,f as jr,g as _r,i as zr,j as Yr}from"./chunk.EXEZBZGW.js";import{a as Nr,b as Hr,c as Ir,d as On}from"./chunk.X7N3JUO4.js";import{b as Or}from"./chunk.NTLHEHOM.js";import{a as Fr,b as Dr,d as Gt,e as Wr,f as Kr,g as Br,j as qt}from"./chunk.GNBN3BK7.js";import{a as Ut,b as Vt}from"./chunk.PXQVXBNG.js";import{a as Ht,b as za,c as Ya,d as It,e as Qa}from"./chunk.UJRBOUGC.js";import{b as ar,c as mr,e as fr,f as Tn}from"./chunk.DWPU56S5.js";import{a as Ln,b as gr}from"./chunk.ZH4NWRWB.js";import{a as Kt,b as Bt,c as Mr,e as Er}from"./chunk.4VW6THJF.js";import{a as dt,b as pr,e as ur}from"./chunk.SAHNXAV3.js";import{m as $r}from"./chunk.YDL5BSTG.js";import{a as hr,b as wr,c as vr,e as Tr,f as $n,h as Wt}from"./chunk.UGJSMNVO.js";import{d as br,e as xr,f as Pr,g as Cr,n as Ar,o as Rr,q as Lr,s as Dt}from"./chunk.NR5ODXMO.js";import{a as Mn}from"./chunk.O45VO36H.js";import{a as An,b as tr,c as nr}from"./chunk.UT6642FC.js";import{a as yr}from"./chunk.SUPWMV2F.js";import{c as or,d as ir,e as sr,f as lr,k as yt,l as dr}from"./chunk.TPG6IY4M.js";import{a as rr}from"./chunk.NFDLCUCC.js";import{r as Rn,s as cr}from"./chunk.RQBEQYB2.js";import{b as Za,c as Xa,d as Ja,e as er,l as Ft}from"./chunk.KVJFY7N5.js";import{C as En,K as Gr,N as qr,e as ja,f as _a,j as Xo,u as Sr,v as kr}from"./chunk.2UIUMG23.js";import{$ as de,G as He,L as Ha,N as Ia,Na as Va,Q as Fa,R as B,S as Cn,V as Da,W as Wa,_ as Ka,ca as Ba,da as Ga,fa as qa,ja as lt,la as Ua,na as Ot,r as Na,v as Ne,ya as Nt}from"./chunk.KA44WNB4.js";import{a as Oa}from"./chunk.SDO3U72B.js";import{$b as La,J as wa,U as ft,Xb as Aa,Ya as xa,Yc as xn,_a as Pa,_b as Ra,bd as Et,ca as st,cd as Ma,da as ge,ed as $t,fa as ze,ga as Tt,hb as bn,ia as Ge,ib as Ca,ka as va,la as Sa,ma as Ye,nd as Pn,od as Ea,rb as Mt,td as $a,wc as Ta,xa as ka,ya as ba}from"./chunk.4TJOS4C7.js";import{b as H}from"./chunk.AJZBJBMO.js";function po(e,t,n={}){let a=e.graph.getNode(t);if(!a)return;let r=e.schema.tryDefinition(a.kind),o=l=>ge(e.schema.tryDefinition(l.kind),l),d=new Map;for(let l of e.graph.allEdges()){let s=l.from===t?"out":l.to===t?"in":null;if(!s)continue;let c=s==="out"?l.to:l.from,m=e.graph.getNode(c);if(!m)continue;let w=(s==="out"?r:e.schema.tryDefinition(m.kind))?.edges?.[l.kind],g=s==="in"?w?.inverse??w?.description:w?.description,x=`${l.kind}|${s}|${g??""}`;(d.get(x)??(()=>{let q={edgeKind:l.kind,direction:s,...g?{description:g}:{},targets:[]};return d.set(x,q),q})()).targets.push({id:m.id,kind:m.kind,label:o(m)})}return{id:t,kind:a.kind,label:o(a),fields:Ja(yt(e.schema,e.graph,a),r),violations:bn(e.violations(n.context),[t]),actions:Mn(e,[t],{focus:t,...n.principal?{principal:n.principal}:{},...n.context?{context:n.context}:{}}),links:[...d.values()].map(l=>{let s=Za(l.targets.flatMap(c=>{let m=e.graph.getNode(c.id);return m?[m]:[]}),c=>e.schema.tryDefinition(c));return{...l,targets:[...l.targets].map(c=>s.has(c.id)?{...c,apart:s.get(c.id)}:c).sort((c,m)=>c.label.localeCompare(m.label))}})}}function Xe(e,t,n={}){return{kind:t,members:e.graph.nodesOfKind(t),actions:Mn(e,[],{kindSelection:[t],...n.principal?{principal:n.principal}:{},...n.context?{context:n.context}:{}})}}function uo(e,t){let n=(o,d)=>`${o}|${JSON.stringify(d)}`,a=new Map;for(let o of[...e.affordances,...e.withheld]){if(o.provider!=="invariant")continue;let d=n(o.mutation,o.args);a.has(d)||a.set(d,o.rank??Number.MAX_SAFE_INTEGER)}let r=Number.MAX_SAFE_INTEGER;return[...t].map((o,d)=>({repair:o,declared:d})).sort((o,d)=>(a.get(n(o.repair.mutation,o.repair.args??{}))??r)-(a.get(n(d.repair.mutation,d.repair.args??{}))??r)||o.declared-d.declared).map(o=>o.repair)}function Je(e){let t=e.schema.kinds.map(r=>({kind:r,plural:Ge(e.schema,r),count:e.graph.nodesOfKind(r).length})),n=new Map;for(let r of e.graph.allEdges()){let o=e.graph.getNode(r.from),d=e.graph.getNode(r.to);if(!o||!d)continue;let l=`${r.kind}|${o.kind}|${d.kind}`;n.set(l,(n.get(l)??0)+1)}let a=[];for(let{kind:r}of t){let o=e.schema.tryDefinition(r)?.edges??{};for(let[d,l]of Object.entries(o)){let s=l.to==="*"||l.to===void 0?(()=>{let c=[...n.keys()].filter(m=>m.startsWith(`${d}|${r}|`)).map(m=>m.split("|")[2]);return c.length>0?c:["*"]})():l.to;for(let c of s)a.push({edgeKind:d,from:r,to:c,...l.description?{description:l.description}:{},...l.inverse?{inverse:l.inverse}:{},count:n.get(`${d}|${r}|${c}`)??0})}}return{kinds:t,relations:a}}var We=H(He(),1);var St=H(He(),1);var Te=H(B(),1),ei={problems:"Problems",search:"Search",map:"Connections",places:"Pictures","~draft":"A view drawn"},ti=e=>{try{return decodeURIComponent(e)}catch{return e}};function ni(e,t,n={}){let{store:a}=e,r=a.schema,o=(n.base??"").replace(/\/$/,""),[d="/",l=""]=t.split("#")[0].split("?"),s=(u,M,j)=>({label:u,href:`${o}${M}`,path:M,...j?{current:j}:{}}),c=u=>{let M=n.registry?.sectionOf(u);return M?[M.path===void 0?{label:M.label}:s(M.label,M.path)]:[]},m=u=>n.registry?.sectionOf(u)?.label,v=u=>{let M=m(u);return M===void 0?{}:{section:M}},[w,g,...x]=d.split("/").filter(Boolean).map(ti);if(w===void 0)return{as:"home",label:"Home",trail:[s("Home","/",!0)]};if(w==="places"&&g!==void 0&&x.length===0){let u=new URLSearchParams(l).get("of"),M=new Set(Fe(a,e.principal)),j=e.views?.places()??[],P=j.find(D=>M.has(D.kind)&&D.as===g&&(!u||U(r,D.kind)===u));if(P){let D=jt(P.as,Et(P,j)?U(r,P.kind):void 0);return{as:"place",kind:P.kind,label:P.title,...v(P.kind),trail:[...c(P.kind),s(P.title,D,!0)]}}}let N=x.length===0?ve(r,w):void 0;if(N!==void 0){let u=s(Ge(r,N),`/${U(r,N)}`);if(g===void 0)return{as:"list",kind:N,label:u.label,...v(N),trail:[...c(N),{...u,current:!0}]};let M=a.graph.getNode(g),j=M&&M.kind===N?ge(r.tryDefinition(N),M):"Nothing lives here";return{as:"record",kind:N,id:g,label:j,...v(N),trail:[...c(N),u,s(j,_(r,N,g),!0)]}}let q=ei[w]??ai((x.at(-1)??g??w).replace(/[-_]+/g," "));return{as:"page",label:q,trail:[s(q,d,!0)]}}var ai=e=>e.charAt(0).toUpperCase()+e.slice(1),Gn=(0,St.createContext)(null);function ri(e){let t=me(),n=Ze("/");return Q(e.context.store),ni(e.context,`${t.pathname}${t.search}`,{registry:e.registry,base:n})}var oi={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},go={display:"flex",alignItems:"center",gap:6,minWidth:0},mo={display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0,lineHeight:"24px"};function ut({context:e,style:t}){let n=(0,St.useContext)(Gn),a=(0,St.useContext)(wt);return vt(a??si,"trail")||n?.registry?.without().has("trail")?null:(0,Te.jsx)(ii,{root:n??{context:e,registry:void 0},context:e,...t?{style:t}:{}})}function ii({root:e,context:t,style:n}){let a=ri(e);return a.trail.length<2?null:(0,Te.jsx)(li,{here:a,mark:a.as==="record"?{kind:a.kind,context:t}:void 0,...n?{style:n}:{},"data-testid":"page-trail"})}var si={count:()=>0,place:()=>()=>{},subscribe:()=>()=>{}};function li({here:e,mark:t,style:n,...a}){let r=e.as==="record"?e.trail.length-2:-1;return(0,Te.jsx)("nav",{"aria-label":"You are here","data-graview-trail":"",style:{minWidth:0,...n},...a,children:(0,Te.jsx)("ol",{style:{...we,listStyle:"none",padding:0,display:"flex",alignItems:"center",gap:6,minWidth:0,overflow:"hidden"},children:e.trail.map((o,d)=>(0,Te.jsxs)("li",{style:o.current?oi:{...go,flexShrink:d===e.trail.length-2?0:1,maxWidth:"100%"},...o.current?{"aria-current":"page"}:{},children:[d>0&&!o.current?(0,Te.jsx)("span",{"aria-hidden":"true",children:"\u203A"}):null,o.current?o.label:o.path!==void 0?(0,Te.jsxs)(O,{to:o.path,style:{...Se,...go},...d===r?{"data-testid":"trail-list"}:{},children:[d===r&&t?(0,Te.jsx)(ce,{kind:t.kind,brand:t.context.brand,schema:t.context.store.schema,size:8}):null,(0,Te.jsx)("span",{style:mo,children:o.label})]}):(0,Te.jsx)("span",{style:mo,children:o.label})]},`${d}:${o.label}`))})})}var A=H(B(),1);function $e(e){let t=e.views;if(!t)return[];let n=new Set(Fe(e.store,e.principal));return t.places().filter(a=>n.has(a.kind))}function Xt(e,t){if(!t.over)return[t.kind];let n=new Set(Fe(e.store,e.principal));return t.over.filter(a=>a===t.kind||n.has(a))}var et=e=>`place:${e.kind}:${e.as}`;function fe(e,t){return jt(t.as,Et(t,e.views?.places()??[])?U(e.store.schema,t.kind):void 0)}function kt(e,t){let n=e.schema.tryDefinition(t);return e.graph.nodesOfKind(t).filter(a=>st(n,a))}function qn(e,t,n){let a=(o,d)=>Tt(e.schema,d,o),r=(typeof t=="string"?[t]:t).map(o=>a(kt(e,o).length,o)).join(" and ");return n?`${r} across ${a(kt(e,n).length,n)}`:r}function Un({context:e,place:t,chosen:n,filter:a}){let{store:r,views:o,invariantContext:d}=e,s=o?.resolve(t.kind,{cardinality:"many",fidelity:"full"},t.as)?.view,c=[...new Set(r.violations(d).flatMap(w=>w.nodeIds))],m=Xt(e,t).flatMap(w=>kt(r,w));if(!s)return null;let v=di(r,m,a,c);return(0,A.jsx)(Rn,{kind:t.kind,view:t.title,children:(0,A.jsx)(s,{nodes:v,label:t.title,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...n&&n.length>0?{implicated:n}:{},...c.length>0?{flagged:c}:{}})})}function di(e,t,n,a){let r=n?$t({filter:n}).filter??[]:[];return r.length===0?t:Wt(t,{filter:r},{schema:e.schema,graph:e.graph,flagged:new Set(a)}).nodes}function ci({store:e,views:t,as:n,invariantContext:a}){Q(e);let r={store:e,views:t,...a?{invariantContext:a}:{}},o=t.places().find(d=>d.as===n);return o?(0,A.jsx)(Un,{context:r,place:o}):null}function pi({context:e,kind:t}){let{store:n,views:a,invariantContext:r}=e,o=kt(n,t),d=n.schema.tryDefinition(t),l=Y(n,t),c=a?.resolve(t,{cardinality:"many",fidelity:"full"})?.view,m=[...new Set(n.violations(r).flatMap(x=>x.nodeIds))];if(c&&!lt(c))return(0,A.jsx)(Rn,{kind:t,children:(0,A.jsx)(c,{nodes:o,label:l,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...m.length>0?{flagged:m}:{}})});let v=a?.resolve(t,{cardinality:"one",fidelity:"summary"})?.view,w=8,g=o.slice(0,w);return(0,A.jsxs)("div",{"data-testid":"kind-sheet",style:v?{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:[g.map(x=>v?(0,A.jsx)(v,{node:x,fidelity:"summary",cardinality:"one",mode:"fullscreen",selected:!1,...m.includes(x.id)?{flagged:[x.id]}:{}},x.id):(0,A.jsx)("span",{style:{padding:"8px 14px",borderRadius:8,border:"1px solid var(--graview-edge-bright)",background:"var(--graview-ground)",color:"var(--graview-ink)"},children:ge(d,x)},x.id)),o.length>w?(0,A.jsxs)("span",{style:{...C,alignSelf:"center",padding:"0 6px"},children:["+",o.length-w," more ",l.toLowerCase()]}):null]})}function Vn(e){let{store:t}=e,n=ao(e),a=$e(e),r=e.views?.arrangement?.()?.order??[],o=s=>{let c=s.name===void 0?-1:r.indexOf(`view:${s.name}`);return c>=0?c-r.length:n.indexOf(s.kind)},d=xn([...a].sort((s,c)=>o(s)-o(c))).filter(s=>!s.hidden),l=new Set(d.flatMap(s=>s.over??[s.kind]));return[...d.map(s=>({key:et(s),kind:s.kind,title:Ma(s,a,t.schema),to:fe(e,s),place:s})),...zt(e).filter(s=>!l.has(s)).map(s=>({key:`kind:${s}`,kind:s,title:Y(t,s),to:`/${U(t.schema,s)}`}))]}var fo=.72,ui=540,yo=16/10;function gi(e){let t=(0,We.useRef)(null),[n,a]=(0,We.useState)(e);return(0,We.useLayoutEffect)(()=>{let r=t.current;if(!r||typeof ResizeObserver>"u")return;let o=()=>{let l=r.getBoundingClientRect().width;l>0&&a(s=>Math.abs(s-l)<.5?s:l)};o();let d=new ResizeObserver(o);return d.observe(r),()=>d.disconnect()},[]),{ref:t,width:n}}function mi(e){for(let t=e.parentElement;t;t=t.parentElement)if(/(auto|scroll)/.test(getComputedStyle(t).overflowY))return t;return null}function fi(e){let[t,n]=(0,We.useState)(()=>typeof IntersectionObserver>"u");return(0,We.useLayoutEffect)(()=>{let a=e.current;if(t||!a)return;let r=new IntersectionObserver(o=>{o.some(d=>d.isIntersecting)&&(r.disconnect(),n(!0))},{root:mi(a),rootMargin:"50% 0px"});return r.observe(a),()=>r.disconnect()},[t,e]),t}function jn({context:e,entry:t}){let{store:n,brand:a,principal:r}=e,{ref:o,width:d}=gi(ui),l=fi(o),s=d/fo,c=kt(n,t.kind),m=n.schema.tryDefinition(t.kind),v=c.length===0?Xe(n,t.kind,{...r?{principal:r}:{},...e.invariantContext?{context:e.invariantContext}:{}}).actions.affordances[0]:void 0,w=t.place!==void 0;return(0,A.jsxs)(O,{to:t.to,"data-testid":w?"place-card":"kind-card",className:"graview-gallery-card",style:{...Se,display:"grid",gap:10,alignContent:"start",minWidth:0},children:[(0,A.jsxs)("span",{ref:o,"data-testid":w?"place-picture":"kind-picture","aria-hidden":"true",inert:!0,style:{display:"block",position:"relative",width:"100%",aspectRatio:`${yo}`,overflow:"hidden",borderRadius:12,border:"1px solid var(--graview-edge)",background:"var(--graview-panel)",pointerEvents:"none"},children:[(0,A.jsx)("span",{style:{position:"absolute",left:0,top:0,width:s,height:s/yo,display:"grid",gridTemplateRows:"minmax(0, 1fr)",transform:`scale(${fo})`,transformOrigin:"0 0"},children:l?(0,A.jsx)(Gt.Provider,{value:null,children:t.place?(0,A.jsx)(Un,{context:e,place:t.place}):(0,A.jsx)(pi,{context:e,kind:t.kind})}):null}),c.length===0?(0,A.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,A.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,A.jsxs)("span",{style:{fontFamily:In,fontWeight:"var(--graview-weight-display)"},children:["No ",Y(n,t.kind).toLowerCase()," yet"]}),v?(0,A.jsxs)("span",{style:C,children:["Begin with \u201C",v.label,"\u201D"]}):null]})}):null]}),(0,A.jsxs)("span",{style:{display:"grid",gap:2,minWidth:0},children:[(0,A.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},children:[w?null:(0,A.jsx)(ce,{kind:t.kind,brand:a,schema:n.schema,size:8}),(0,A.jsx)("span",{style:{fontFamily:In,fontSize:"var(--graview-text-heading)",fontWeight:"var(--graview-weight-display)",lineHeight:1.3,overflowWrap:"anywhere",textWrap:"balance"},children:t.title})]}),(0,A.jsxs)("span",{style:C,children:[t.place?qn(n,Xt(e,t.place),t.place.across):qn(n,t.kind),!w&&m?.description?` \xB7 ${m.description}`:null]})]})]})}var ho={display:"grid",gap:"32px 28px",gridTemplateColumns:"repeat(auto-fill, minmax(min(420px, 100%), 1fr))"},yi=`
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 zt,B as Re,C as ro,D as Ze,E as me,F as Wn,G as De,H as Ue,I as oo,J as Kn,K as Le,L as io,M as so,N as O,O as pt,P as wt,Q as lo,R as vt,S as Qt,T as co,U as te,V as Zt,W as oe,X as Bn,a as U,b as ve,c as _,d as jt,e as Hn,f as In,g as ct,h as X,i as we,j as re,k as C,l as ee,m as G,n as qe,o as Se,p as _t,q as ke,r as ce,s as to,t as ht,u as no,v as Fn,w as Dn,x as Y,y as Fe,z as ao}from"./chunk.7MJGZHTS.js";import{a as Ie}from"./chunk.QWX2N2VD.js";import{a as Qe,b as Yt,d as Q}from"./chunk.BJR6E2CT.js";import{b as Nn,c as Jr,d as eo}from"./chunk.VSWEKNKS.js";import{a as Qr,d as Zr,e as Xr}from"./chunk.UGFDSE37.js";import{a as Ur,c as Vr,f as jr,g as _r,i as zr,j as Yr}from"./chunk.SGJSJGSR.js";import{a as Nr,b as Hr,c as Ir,d as On}from"./chunk.2OXXGN7C.js";import{b as Or}from"./chunk.Q4KNNJFL.js";import{a as Fr,b as Dr,d as Gt,e as Wr,f as Kr,g as Br,j as qt}from"./chunk.BH365UJ5.js";import{a as Ut,b as Vt}from"./chunk.PXQVXBNG.js";import{a as Ht,b as za,c as Ya,d as It,e as Qa}from"./chunk.4SEY7VWZ.js";import{b as ar,c as mr,e as fr,f as Tn}from"./chunk.IVHPJUFM.js";import{a as Ln,b as gr}from"./chunk.D53IGR45.js";import{a as Kt,b as Bt,c as Mr,e as Er}from"./chunk.SPZVEQC5.js";import{a as dt,b as pr,e as ur}from"./chunk.FNK2ZZ5E.js";import{m as $r}from"./chunk.EM5CGFNB.js";import{a as hr,b as wr,c as vr,e as Tr,f as $n,h as Wt}from"./chunk.AGVFW6WC.js";import{d as br,e as xr,f as Pr,g as Cr,n as Ar,o as Rr,q as Lr,s as Dt}from"./chunk.SIVMZNHZ.js";import{a as Mn}from"./chunk.3NEALGMI.js";import{a as An,b as tr,c as nr}from"./chunk.UT6642FC.js";import{a as yr}from"./chunk.35FUGOSG.js";import{c as or,d as ir,e as sr,f as lr,k as yt,l as dr}from"./chunk.NQDGUIUQ.js";import{a as rr}from"./chunk.DTRNDSMS.js";import{r as Rn,s as cr}from"./chunk.FOYVTN5B.js";import{b as Za,c as Xa,d as Ja,e as er,l as Ft}from"./chunk.GRLPNTUW.js";import{C as En,K as Gr,N as qr,e as ja,f as _a,j as Xo,u as Sr,v as kr}from"./chunk.423SZS7C.js";import{$ as de,G as He,L as Ha,N as Ia,Na as Va,Q as Fa,R as B,S as Cn,V as Da,W as Wa,_ as Ka,ca as Ba,da as Ga,fa as qa,ja as lt,la as Ua,na as Ot,r as Na,v as Ne,ya as Nt}from"./chunk.TM6JVVGW.js";import{a as Oa}from"./chunk.SDO3U72B.js";import{Bd as $a,Gc as Ta,J as wa,U as ft,Ya as xa,_a as Pa,ca as st,cc as Aa,da as ge,ed as xn,fa as ze,ga as Tt,hc as Ra,ia as Ge,ib as bn,jb as Ca,jc as La,jd as Et,ka as va,kd as Ma,la as Sa,ma as Ye,md as $t,sb as Mt,vd as Pn,wd as Ea,xa as ka,ya as ba}from"./chunk.PFEKS3KO.js";import{b as H}from"./chunk.AJZBJBMO.js";function po(e,t,n={}){let a=e.graph.getNode(t);if(!a)return;let r=e.schema.tryDefinition(a.kind),o=l=>ge(e.schema.tryDefinition(l.kind),l),d=new Map;for(let l of e.graph.allEdges()){let s=l.from===t?"out":l.to===t?"in":null;if(!s)continue;let c=s==="out"?l.to:l.from,m=e.graph.getNode(c);if(!m)continue;let w=(s==="out"?r:e.schema.tryDefinition(m.kind))?.edges?.[l.kind],g=s==="in"?w?.inverse??w?.description:w?.description,x=`${l.kind}|${s}|${g??""}`;(d.get(x)??(()=>{let q={edgeKind:l.kind,direction:s,...g?{description:g}:{},targets:[]};return d.set(x,q),q})()).targets.push({id:m.id,kind:m.kind,label:o(m)})}return{id:t,kind:a.kind,label:o(a),fields:Ja(yt(e.schema,e.graph,a),r),violations:bn(e.violations(n.context),[t]),actions:Mn(e,[t],{focus:t,...n.principal?{principal:n.principal}:{},...n.context?{context:n.context}:{}}),links:[...d.values()].map(l=>{let s=Za(l.targets.flatMap(c=>{let m=e.graph.getNode(c.id);return m?[m]:[]}),c=>e.schema.tryDefinition(c));return{...l,targets:[...l.targets].map(c=>s.has(c.id)?{...c,apart:s.get(c.id)}:c).sort((c,m)=>c.label.localeCompare(m.label))}})}}function Xe(e,t,n={}){return{kind:t,members:e.graph.nodesOfKind(t),actions:Mn(e,[],{kindSelection:[t],...n.principal?{principal:n.principal}:{},...n.context?{context:n.context}:{}})}}function uo(e,t){let n=(o,d)=>`${o}|${JSON.stringify(d)}`,a=new Map;for(let o of[...e.affordances,...e.withheld]){if(o.provider!=="invariant")continue;let d=n(o.mutation,o.args);a.has(d)||a.set(d,o.rank??Number.MAX_SAFE_INTEGER)}let r=Number.MAX_SAFE_INTEGER;return[...t].map((o,d)=>({repair:o,declared:d})).sort((o,d)=>(a.get(n(o.repair.mutation,o.repair.args??{}))??r)-(a.get(n(d.repair.mutation,d.repair.args??{}))??r)||o.declared-d.declared).map(o=>o.repair)}function Je(e){let t=e.schema.kinds.map(r=>({kind:r,plural:Ge(e.schema,r),count:e.graph.nodesOfKind(r).length})),n=new Map;for(let r of e.graph.allEdges()){let o=e.graph.getNode(r.from),d=e.graph.getNode(r.to);if(!o||!d)continue;let l=`${r.kind}|${o.kind}|${d.kind}`;n.set(l,(n.get(l)??0)+1)}let a=[];for(let{kind:r}of t){let o=e.schema.tryDefinition(r)?.edges??{};for(let[d,l]of Object.entries(o)){let s=l.to==="*"||l.to===void 0?(()=>{let c=[...n.keys()].filter(m=>m.startsWith(`${d}|${r}|`)).map(m=>m.split("|")[2]);return c.length>0?c:["*"]})():l.to;for(let c of s)a.push({edgeKind:d,from:r,to:c,...l.description?{description:l.description}:{},...l.inverse?{inverse:l.inverse}:{},count:n.get(`${d}|${r}|${c}`)??0})}}return{kinds:t,relations:a}}var We=H(He(),1);var St=H(He(),1);var Te=H(B(),1),ei={problems:"Problems",search:"Search",map:"Connections",places:"Pictures","~draft":"A view drawn"},ti=e=>{try{return decodeURIComponent(e)}catch{return e}};function ni(e,t,n={}){let{store:a}=e,r=a.schema,o=(n.base??"").replace(/\/$/,""),[d="/",l=""]=t.split("#")[0].split("?"),s=(u,M,j)=>({label:u,href:`${o}${M}`,path:M,...j?{current:j}:{}}),c=u=>{let M=n.registry?.sectionOf(u);return M?[M.path===void 0?{label:M.label}:s(M.label,M.path)]:[]},m=u=>n.registry?.sectionOf(u)?.label,v=u=>{let M=m(u);return M===void 0?{}:{section:M}},[w,g,...x]=d.split("/").filter(Boolean).map(ti);if(w===void 0)return{as:"home",label:"Home",trail:[s("Home","/",!0)]};if(w==="places"&&g!==void 0&&x.length===0){let u=new URLSearchParams(l).get("of"),M=new Set(Fe(a,e.principal)),j=e.views?.places()??[],P=j.find(D=>M.has(D.kind)&&D.as===g&&(!u||U(r,D.kind)===u));if(P){let D=jt(P.as,Et(P,j)?U(r,P.kind):void 0);return{as:"place",kind:P.kind,label:P.title,...v(P.kind),trail:[...c(P.kind),s(P.title,D,!0)]}}}let N=x.length===0?ve(r,w):void 0;if(N!==void 0){let u=s(Ge(r,N),`/${U(r,N)}`);if(g===void 0)return{as:"list",kind:N,label:u.label,...v(N),trail:[...c(N),{...u,current:!0}]};let M=a.graph.getNode(g),j=M&&M.kind===N?ge(r.tryDefinition(N),M):"Nothing lives here";return{as:"record",kind:N,id:g,label:j,...v(N),trail:[...c(N),u,s(j,_(r,N,g),!0)]}}let q=ei[w]??ai((x.at(-1)??g??w).replace(/[-_]+/g," "));return{as:"page",label:q,trail:[s(q,d,!0)]}}var ai=e=>e.charAt(0).toUpperCase()+e.slice(1),Gn=(0,St.createContext)(null);function ri(e){let t=me(),n=Ze("/");return Q(e.context.store),ni(e.context,`${t.pathname}${t.search}`,{registry:e.registry,base:n})}var oi={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},go={display:"flex",alignItems:"center",gap:6,minWidth:0},mo={display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0,lineHeight:"24px"};function ut({context:e,style:t}){let n=(0,St.useContext)(Gn),a=(0,St.useContext)(wt);return vt(a??si,"trail")||n?.registry?.without().has("trail")?null:(0,Te.jsx)(ii,{root:n??{context:e,registry:void 0},context:e,...t?{style:t}:{}})}function ii({root:e,context:t,style:n}){let a=ri(e);return a.trail.length<2?null:(0,Te.jsx)(li,{here:a,mark:a.as==="record"?{kind:a.kind,context:t}:void 0,...n?{style:n}:{},"data-testid":"page-trail"})}var si={count:()=>0,place:()=>()=>{},subscribe:()=>()=>{}};function li({here:e,mark:t,style:n,...a}){let r=e.as==="record"?e.trail.length-2:-1;return(0,Te.jsx)("nav",{"aria-label":"You are here","data-graview-trail":"",style:{minWidth:0,...n},...a,children:(0,Te.jsx)("ol",{style:{...we,listStyle:"none",padding:0,display:"flex",alignItems:"center",gap:6,minWidth:0,overflow:"hidden"},children:e.trail.map((o,d)=>(0,Te.jsxs)("li",{style:o.current?oi:{...go,flexShrink:d===e.trail.length-2?0:1,maxWidth:"100%"},...o.current?{"aria-current":"page"}:{},children:[d>0&&!o.current?(0,Te.jsx)("span",{"aria-hidden":"true",children:"\u203A"}):null,o.current?o.label:o.path!==void 0?(0,Te.jsxs)(O,{to:o.path,style:{...Se,...go},...d===r?{"data-testid":"trail-list"}:{},children:[d===r&&t?(0,Te.jsx)(ce,{kind:t.kind,brand:t.context.brand,schema:t.context.store.schema,size:8}):null,(0,Te.jsx)("span",{style:mo,children:o.label})]}):(0,Te.jsx)("span",{style:mo,children:o.label})]},`${d}:${o.label}`))})})}var A=H(B(),1);function $e(e){let t=e.views;if(!t)return[];let n=new Set(Fe(e.store,e.principal));return t.places().filter(a=>n.has(a.kind))}function Xt(e,t){if(!t.over)return[t.kind];let n=new Set(Fe(e.store,e.principal));return t.over.filter(a=>a===t.kind||n.has(a))}var et=e=>`place:${e.kind}:${e.as}`;function fe(e,t){return jt(t.as,Et(t,e.views?.places()??[])?U(e.store.schema,t.kind):void 0)}function kt(e,t){let n=e.schema.tryDefinition(t);return e.graph.nodesOfKind(t).filter(a=>st(n,a))}function qn(e,t,n){let a=(o,d)=>Tt(e.schema,d,o),r=(typeof t=="string"?[t]:t).map(o=>a(kt(e,o).length,o)).join(" and ");return n?`${r} across ${a(kt(e,n).length,n)}`:r}function Un({context:e,place:t,chosen:n,filter:a}){let{store:r,views:o,invariantContext:d}=e,s=o?.resolve(t.kind,{cardinality:"many",fidelity:"full"},t.as)?.view,c=[...new Set(r.violations(d).flatMap(w=>w.nodeIds))],m=Xt(e,t).flatMap(w=>kt(r,w));if(!s)return null;let v=di(r,m,a,c);return(0,A.jsx)(Rn,{kind:t.kind,view:t.title,children:(0,A.jsx)(s,{nodes:v,label:t.title,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...n&&n.length>0?{implicated:n}:{},...c.length>0?{flagged:c}:{}})})}function di(e,t,n,a){let r=n?$t({filter:n}).filter??[]:[];return r.length===0?t:Wt(t,{filter:r},{schema:e.schema,graph:e.graph,flagged:new Set(a)}).nodes}function ci({store:e,views:t,as:n,invariantContext:a}){Q(e);let r={store:e,views:t,...a?{invariantContext:a}:{}},o=t.places().find(d=>d.as===n);return o?(0,A.jsx)(Un,{context:r,place:o}):null}function pi({context:e,kind:t}){let{store:n,views:a,invariantContext:r}=e,o=kt(n,t),d=n.schema.tryDefinition(t),l=Y(n,t),c=a?.resolve(t,{cardinality:"many",fidelity:"full"})?.view,m=[...new Set(n.violations(r).flatMap(x=>x.nodeIds))];if(c&&!lt(c))return(0,A.jsx)(Rn,{kind:t,children:(0,A.jsx)(c,{nodes:o,label:l,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...m.length>0?{flagged:m}:{}})});let v=a?.resolve(t,{cardinality:"one",fidelity:"summary"})?.view,w=8,g=o.slice(0,w);return(0,A.jsxs)("div",{"data-testid":"kind-sheet",style:v?{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:[g.map(x=>v?(0,A.jsx)(v,{node:x,fidelity:"summary",cardinality:"one",mode:"fullscreen",selected:!1,...m.includes(x.id)?{flagged:[x.id]}:{}},x.id):(0,A.jsx)("span",{style:{padding:"8px 14px",borderRadius:8,border:"1px solid var(--graview-edge-bright)",background:"var(--graview-ground)",color:"var(--graview-ink)"},children:ge(d,x)},x.id)),o.length>w?(0,A.jsxs)("span",{style:{...C,alignSelf:"center",padding:"0 6px"},children:["+",o.length-w," more ",l.toLowerCase()]}):null]})}function Vn(e){let{store:t}=e,n=ao(e),a=$e(e),r=e.views?.arrangement?.()?.order??[],o=s=>{let c=s.name===void 0?-1:r.indexOf(`view:${s.name}`);return c>=0?c-r.length:n.indexOf(s.kind)},d=xn([...a].sort((s,c)=>o(s)-o(c))).filter(s=>!s.hidden),l=new Set(d.flatMap(s=>s.over??[s.kind]));return[...d.map(s=>({key:et(s),kind:s.kind,title:Ma(s,a,t.schema),to:fe(e,s),place:s})),...zt(e).filter(s=>!l.has(s)).map(s=>({key:`kind:${s}`,kind:s,title:Y(t,s),to:`/${U(t.schema,s)}`}))]}var fo=.72,ui=540,yo=16/10;function gi(e){let t=(0,We.useRef)(null),[n,a]=(0,We.useState)(e);return(0,We.useLayoutEffect)(()=>{let r=t.current;if(!r||typeof ResizeObserver>"u")return;let o=()=>{let l=r.getBoundingClientRect().width;l>0&&a(s=>Math.abs(s-l)<.5?s:l)};o();let d=new ResizeObserver(o);return d.observe(r),()=>d.disconnect()},[]),{ref:t,width:n}}function mi(e){for(let t=e.parentElement;t;t=t.parentElement)if(/(auto|scroll)/.test(getComputedStyle(t).overflowY))return t;return null}function fi(e){let[t,n]=(0,We.useState)(()=>typeof IntersectionObserver>"u");return(0,We.useLayoutEffect)(()=>{let a=e.current;if(t||!a)return;let r=new IntersectionObserver(o=>{o.some(d=>d.isIntersecting)&&(r.disconnect(),n(!0))},{root:mi(a),rootMargin:"50% 0px"});return r.observe(a),()=>r.disconnect()},[t,e]),t}function jn({context:e,entry:t}){let{store:n,brand:a,principal:r}=e,{ref:o,width:d}=gi(ui),l=fi(o),s=d/fo,c=kt(n,t.kind),m=n.schema.tryDefinition(t.kind),v=c.length===0?Xe(n,t.kind,{...r?{principal:r}:{},...e.invariantContext?{context:e.invariantContext}:{}}).actions.affordances[0]:void 0,w=t.place!==void 0;return(0,A.jsxs)(O,{to:t.to,"data-testid":w?"place-card":"kind-card",className:"graview-gallery-card",style:{...Se,display:"grid",gap:10,alignContent:"start",minWidth:0},children:[(0,A.jsxs)("span",{ref:o,"data-testid":w?"place-picture":"kind-picture","aria-hidden":"true",inert:!0,style:{display:"block",position:"relative",width:"100%",aspectRatio:`${yo}`,overflow:"hidden",borderRadius:12,border:"1px solid var(--graview-edge)",background:"var(--graview-panel)",pointerEvents:"none"},children:[(0,A.jsx)("span",{style:{position:"absolute",left:0,top:0,width:s,height:s/yo,display:"grid",gridTemplateRows:"minmax(0, 1fr)",transform:`scale(${fo})`,transformOrigin:"0 0"},children:l?(0,A.jsx)(Gt.Provider,{value:null,children:t.place?(0,A.jsx)(Un,{context:e,place:t.place}):(0,A.jsx)(pi,{context:e,kind:t.kind})}):null}),c.length===0?(0,A.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,A.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,A.jsxs)("span",{style:{fontFamily:In,fontWeight:"var(--graview-weight-display)"},children:["No ",Y(n,t.kind).toLowerCase()," yet"]}),v?(0,A.jsxs)("span",{style:C,children:["Begin with \u201C",v.label,"\u201D"]}):null]})}):null]}),(0,A.jsxs)("span",{style:{display:"grid",gap:2,minWidth:0},children:[(0,A.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},children:[w?null:(0,A.jsx)(ce,{kind:t.kind,brand:a,schema:n.schema,size:8}),(0,A.jsx)("span",{style:{fontFamily:In,fontSize:"var(--graview-text-heading)",fontWeight:"var(--graview-weight-display)",lineHeight:1.3,overflowWrap:"anywhere",textWrap:"balance"},children:t.title})]}),(0,A.jsxs)("span",{style:C,children:[t.place?qn(n,Xt(e,t.place),t.place.across):qn(n,t.kind),!w&&m?.description?` \xB7 ${m.description}`:null]})]})]})}var ho={display:"grid",gap:"32px 28px",gridTemplateColumns:"repeat(auto-fill, minmax(min(420px, 100%), 1fr))"},yi=`
2
2
  .graview-gallery-card > span:first-child { transition: border-color 160ms ease, box-shadow 160ms ease; }
3
3
  .graview-gallery-card:hover > span:first-child,
4
4
  .graview-gallery-card:focus-visible > span:first-child { border-color: var(--graview-edge-bright); box-shadow: 0 1px 0 var(--graview-edge), 0 10px 30px -18px var(--graview-ink); }
5
- `;function _n({context:e}){Q(e.store);let t=Vn(e);return t.length===0?null:(0,A.jsxs)("section",{style:ho,"data-testid":"gallery",children:[(0,A.jsx)("style",{children:yi}),t.map(n=>(0,A.jsx)(jn,{context:e,entry:n},n.key))]})}function zn({context:e}){let{store:t}=e;Q(t);let n=xn($e(e)).filter(r=>!r.hidden),a=Vn(e);return(0,A.jsxs)(te,{context:e,style:ct,children:[(0,A.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,A.jsx)("p",{style:we,children:n.length===0?"None of its own yet":`${n.length} ${n.length===1?"picture":"pictures"}`}),(0,A.jsx)(oe,{context:e,children:"Pictures"}),(0,A.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,A.jsx)("div",{style:ho,"data-testid":"places",children:a.map(r=>(0,A.jsx)(jn,{context:e,entry:r},r.key))}):null]})}var hi={lede:!0},wi={lede:!1},vi={...re,textWrap:"pretty"};function Si(e,t){if(t===void 0)return;let[n]=lr(sr([t]),dr(e.store,null,null,e.brand?{money:e.brand}:{}));return n?.t==="headline"&&!n.problem&&n.text.trim()!==""?n.text:void 0}function Yn({context:e}){let{store:t,principal:n}=e;Q(t);let a=Ue(),r=De(),[o]=pt(),d=decodeURIComponent(a.as??""),[l,s]=(0,We.useState)(null),c=o.get("of"),m=o.get("filter"),w=$e(e).find(P=>P.as===d&&(!c||U(t.schema,P.kind)===c));if(!w)return(0,A.jsxs)(te,{context:e,children:[(0,A.jsx)(oe,{context:e,children:"No picture is called that."}),(0,A.jsx)("p",{style:re,children:(0,A.jsx)(O,{to:"/places",style:qe,children:(0,A.jsx)(Qe,{children:"The pictures there are"})})})]});let g=Y(t,w.kind),x=e.views?.resolve(w.kind,{cardinality:"many",fidelity:"full"},w.as)?.view,N=x?.flows===!0,q=x?.creates!==!1,u=Si(e,x?.lede),M=Xe(t,w.kind,{...n?{principal:n}:{},...e.invariantContext?{context:e.invariantContext}:{}}),j=q?M.actions.affordances.map(P=>({affordance:P,mutation:t.allMutations().find(D=>D.name===P.mutation)})).filter(P=>P.mutation!==void 0):[];return(0,A.jsxs)(te,{context:e,style:{...ct,gap:"var(--graview-space-6, 32px)"},children:[(0,A.jsxs)("header",{style:{display:"grid",gap:"var(--graview-space-2, 8px)"},children:[(0,A.jsx)(ut,{context:e}),(0,A.jsx)(oe,{context:e,children:w.title}),(0,A.jsx)("p",{style:vi,"data-testid":"place-lede",...u!==void 0?{"data-graview-lede":"headline"}:{},children:u??`${qn(t,Xt(e,w),w.across)}.`}),m&&!N?(0,A.jsxs)("p",{style:{...C,margin:0},"data-testid":"place-narrowed",children:[`Only those where ${m.split(",").map(P=>P.replace(":"," is ")).join(" and ")}. `,(0,A.jsx)(O,{to:`?${(()=>{let P=new URLSearchParams(o);return P.delete("filter"),P.toString()})()}`,style:{...G,...C},children:"Show all"})]}):null,(0,A.jsx)("p",{style:{...C,margin:0,display:"flex",flexWrap:"wrap",gap:"4px 16px"},children:Xt(e,w).map((P,D)=>(0,A.jsx)(O,{to:`/${U(t.schema,P)}`,style:{...qe,...C},...D===0?{"data-testid":"place-as-list"}:{},children:(0,A.jsxs)(Qe,{children:["All ",(P===w.kind?g:Y(t,P)).toLowerCase()," as a list"]})},P))})]}),(0,A.jsx)("div",{"data-testid":"place-lens","data-flows":N?"":void 0,...N?{}:{role:"group","aria-label":w.title,tabIndex:0},style:N?{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:P=>{let D=P.target?.closest("[data-graview-pick]"),ae=D?.getAttribute("data-graview-pick"),ie=D?.getAttribute("data-graview-joins");if(ie)try{let J=JSON.parse(ie);if(Array.isArray(J)&&J.every(ue=>typeof ue=="string")){P.preventDefault(),s({at:et(w),ids:J});return}}catch{}if(!ae)return;let he=t.graph.getNode(ae);he&&(P.preventDefault(),r(_(t.schema,he.kind,ae)))},children:(0,A.jsx)(Br.Provider,{value:u!==void 0?hi:wi,children:(0,A.jsx)(Un,{context:e,place:w,filter:m,...l?.at===et(w)?{chosen:l.ids}:{}})})}),j.length>0?(0,A.jsx)("div",{style:{maxWidth:760,display:"grid",gap:40},"data-testid":"place-creators",children:j.map(({affordance:P,mutation:D})=>(0,A.jsxs)("section",{style:{...ee,display:"grid",gap:14},children:[(0,A.jsx)("h2",{style:X,children:D.title??D.name}),D.description?(0,A.jsx)("p",{style:{...C,margin:0,maxWidth:"58ch"},children:D.description}):null,(0,A.jsx)(Ie,{store:t,mutation:D,prefilled:P.args,open:P.open,label:P.label,...n?{principal:n}:{}})]},P.id))}):null]})}function ki(e,t=document){let n=Ut(e);if(!n)return null;let a=[t,...[...t.querySelectorAll("[data-worker-view]")].flatMap(r=>r.shadowRoot?[r.shadowRoot]:[])];for(let r of a)for(let o of r.querySelectorAll("[id], [data-section]")){let d=o.getAttribute("data-section")??o.id;if(d===e||Ut(d)===n)return o}for(let r of a)for(let o of r.querySelectorAll("h1, h2, h3, h4, h5, h6, [role=heading]"))if(Ut(o.textContent??"")===n)return o;return null}function wo(e,t={}){if(typeof document>"u"||typeof requestAnimationFrame>"u")return()=>{};let n=t.frames??120,a=0,r=()=>{let o=ki(e,t.root??document);if(o){o.hasAttribute("tabindex")||o.setAttribute("tabindex","-1"),o.scrollIntoView?.({block:"start"}),o.focus({preventScroll:!0});return}n-=1,n>0&&(a=requestAnimationFrame(r))};return a=requestAnimationFrame(()=>{a=requestAnimationFrame(r)}),()=>cancelAnimationFrame(a)}var K=H(He(),1);var Jt=H(He(),1);var tt=H(B(),1);function vo({context:e}){return de()?(0,tt.jsxs)(tt.Fragment,{children:[(0,tt.jsx)(bi,{context:e}),(0,tt.jsx)(Vr,{face:"pages",on:e.quickAsk??!0})]}):null}function bi({context:e}){let{store:t}=e,n=de(),{pathname:a}=me(),r=(0,Jt.useRef)(n?.setSelection);return r.current=n?.setSelection,(0,Jt.useEffect)(()=>{let o=r.current;if(!o)return;let[,d,l]=a.split("/"),s=(()=>{if(d==="places"){let m=e.views?.places().find(v=>v.as===decodeURIComponent(l??""));return m?[Ne(m.kind)]:[]}let c=d?ve(t.schema,d):void 0;return c&&l?[decodeURIComponent(l)]:c?[Na(c)]:[]})();o(c=>c.length===s.length&&c.every((m,v)=>m===s[v])?c:s)},[a]),null}var be=H(He(),1);var ko=H(Xo(),1);var pe=H(B(),1);var xi=Nt(Oa(()=>(__graviewPreload(import.meta.url,["./chunk.PMJUGHW4.js","./chunk.Y4MQGEUS.js","./chunk.UGFDSE37.js","./chunk.EXEZBZGW.js","./chunk.X7N3JUO4.js","./chunk.NTLHEHOM.js","./chunk.GNBN3BK7.js","./chunk.XTMOFRHL.js","./chunk.NLBIX7LH.js","./chunk.GACKGEUY.js","./chunk.UJRBOUGC.js","./chunk.DWPU56S5.js","./chunk.ZH4NWRWB.js","./chunk.2GLJH253.js","./chunk.GUMJEVVP.js","./chunk.4VW6THJF.js","./chunk.SAHNXAV3.js","./chunk.DHAK6PPX.js","./chunk.YDL5BSTG.js","./chunk.DUWYF7BO.js","./chunk.UGJSMNVO.js","./chunk.NR5ODXMO.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.TPG6IY4M.js","./chunk.NFDLCUCC.js","./chunk.X7JMJSLU.js","./chunk.PPRSGM64.js","./chunk.5Y3Q7ONN.js","./chunk.KTFUVR4V.js","./chunk.GZHZLJBF.js","./chunk.RQBEQYB2.js","./chunk.OJGHDWI6.js","./chunk.6VAFNCR4.js","./chunk.N4M54YK6.js","./chunk.KVJFY7N5.js","./chunk.DPHTUTOS.js","./chunk.2UIUMG23.js","./chunk.KA44WNB4.js","./chunk.SDO3U72B.js","./chunk.4TJOS4C7.js","./chunk.2AZTW66C.js","./chunk.AJZBJBMO.js"]),import("./chunk.TBRJOKIK.js")).then(e=>({default:e.TakeBack}))));function Pi({context:e,docked:t,at:n,...a}){let{store:r}=e,o=Q(r),[d]=(0,be.useState)(()=>r.batches().length),l=(0,be.useRef)(!1);return l.current||=o>0||!t&&d>0,l.current?(0,pe.jsx)(be.Suspense,{fallback:null,children:(0,pe.jsx)(xi,{context:e,docked:t,at:n,since:d,...a})}):null}function Ci(e,t,n){let{store:a,principal:r,embedded:o}=e;(0,be.useEffect)(()=>{if(!n)return;let d=l=>{if(!Xr(l))return;let s=l.target,c=s instanceof Node&&t.current?.contains(s),m=s===document.body||s===document.documentElement||s===document;if(!(!c&&!(m&&!o))&&Qr(a,r)){l.preventDefault();try{Zr(a,r)}catch{}}};return document.addEventListener("keydown",d),()=>document.removeEventListener("keydown",d)},[a,r,o,t,n])}function bo({context:e,registry:t,root:n,children:a}){let r=(0,be.useMemo)(lo,[]),o=t?.without()??new Set;return Ci(e,n,!o.has("undo")),(0,pe.jsxs)(wt.Provider,{value:r,children:[(0,pe.jsx)(Ai,{context:e,placed:r,without:o}),a]})}function Ai({context:e,placed:t,without:n}){let[a,r]=(0,be.useState)(!1);(0,be.useLayoutEffect)(()=>r(!0),[]);let o=vt(t,"find"),d=vt(t,"undo"),l=me(),s=kr();if(!a)return null;let c=l.pathname.split("/").filter(Boolean),v=(c.length===1?ve(e.store.schema,c[0]):void 0)!==void 0;return(0,pe.jsxs)(pe.Fragment,{children:[!o&&!n.has("find")&&s?(0,ko.createPortal)((0,pe.jsx)(So,{context:e,narrowsLists:v}),s.slot):null,!o&&!n.has("find")&&!s?(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)(So,{context:e,narrowsLists:v})}):null,!d&&!n.has("undo")?(0,pe.jsx)(Pi,{context:e,docked:!0,at:l.pathname+l.search}):null,s?.own&&!n.has("undo")?(0,pe.jsx)(ro,{context:e,own:s.own}):null]})}function So({context:e,narrowsLists:t}){return(0,pe.jsx)(wt.Provider,{value:null,children:(0,pe.jsx)(Bn,{context:e,narrowsLists:t})})}var Z=H(He(),1);var xe=H(B(),1),Ri=500,Li=10;function en(e){return e instanceof HTMLElement?e.isContentEditable||e.tagName==="TEXTAREA"||e.tagName==="SELECT"?!0:e.tagName==="INPUT"&&!["button","submit","reset","checkbox","radio","image","file","color","range"].includes(e.type):!1}function Ti(e){let t=typeof getSelection=="function"?getSelection():null;return t!==null&&!t.isCollapsed&&t.containsNode(e,!0)}function xo(e){let t=e.closest('a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])');if(t)return t;let n=document.activeElement;return n instanceof HTMLElement&&n!==document.body?n:null}function Po({context:e,root:t,children:n}){return de()===null?(0,xe.jsx)(xe.Fragment,{children:n}):(0,xe.jsx)(Mi,{context:e,root:t,children:n})}function Mi({context:e,root:t,children:n}){let{setMenuAt:a}=Ka(),{store:r}=e,o=r.schema,d=De(),{pathname:l,search:s}=me(),c=Ze("/").replace(/\/$/,""),m=(0,Z.useCallback)((S,f)=>e.views?.places().find(R=>R.as===S&&(f===null||R.kind===f)),[e.views]),v=(0,Z.useCallback)((S,f)=>{let[R="",E,ne]=S.split("/").filter(Boolean).map(p=>{try{return decodeURIComponent(p)}catch{return p}});if(ne!==void 0)return null;if(R==="places"&&E!==void 0){let p=m(E,new URLSearchParams(f).get("of"));return p?{face:"pages",place:p.as,about:[Ne(p.kind)],title:p.title}:null}let z=ve(o,R);return z?E===void 0?{face:"pages",about:[Ne(z)],title:Ge(o,z)}:r.graph.getNode(E)?{face:"pages",on:E,about:[E]}:null:null},[o,r,m]),w=(0,Z.useCallback)(S=>{let f=S.href;try{let R=new URL(f,location.href);if(R.origin===location.origin&&(c===""||R.pathname===c||R.pathname.startsWith(`${c}/`))){let E=v(R.pathname.slice(c.length),R.search);if(E)return{...E,href:f}}}catch{}return{face:"pages",about:[],href:f}},[c,v]),g=(0,Z.useCallback)(()=>v(l,s)??{face:"pages",about:[]},[v,l,s]),x=(0,Z.useCallback)(S=>{let f=g(),R=S.closest("[data-graview-field]")?.getAttribute("data-graview-field");if(R&&f.on!==void 0&&S.closest("[data-graview-pick], a[href]")===null)return{...f,field:R};let E=S.closest("[data-graview-act]")?.getAttribute("data-graview-act");if(E)return{...f,act:E};let ne=S.closest("a[href]"),z=S.closest("[data-graview-listed]"),p=[S.closest("[data-graview-pick]")?.getAttribute("data-graview-pick"),z&&(!ne||z.contains(ne)&&ne.classList.contains("graview-spec-item-link"))?z.getAttribute("data-graview-listed"):null].map(V=>V?r.graph.getNode(V):void 0).find(Boolean);if(p)return{face:"pages",on:p.id,about:[p.id],href:`${c}${_(o,p.kind,p.id)}`};if(ne)return w(ne);let L=S.closest("[data-graview-record]")?.getAttribute("data-graview-record");return L&&r.graph.getNode(L)?{face:"pages",on:L,about:[L]}:f},[g,w,r,o,c]),N=(0,Z.useCallback)(S=>{let f=t.current;if(f===null||!f.contains(S)||en(S)||S.closest("[data-graview-popover]"))return null;let R=x(S);return{face:"pages",on:R.on,about:R.about??[],field:R.field,place:R.place,href:R.href,act:R.act,element:xo(S)}},[x,t]),q=(0,Z.useCallback)((S,f,R)=>{let E=x(S);a({...E,x:Math.round(f),y:Math.round(R),returnTo:xo(S)})},[x,a]),u=(0,Z.useCallback)(S=>{let f=S.getBoundingClientRect();q(S,f.left+Math.min(16,f.width/2),Math.min(f.bottom,f.top+36))},[q]),M=(0,Z.useRef)(0),j=(0,Z.useRef)(null),P=(0,Z.useRef)(!1),D=()=>{j.current&&clearTimeout(j.current.timer),j.current=null};(0,Z.useEffect)(()=>D,[]),(0,Z.useEffect)(()=>{let S=f=>{if(f.defaultPrevented||!(f.key==="ContextMenu"||f.key==="F10"&&f.shiftKey))return;let R=t.current,E=f.target instanceof Element?f.target:null,ne=E===null||E===document.body||E===document.documentElement,z=R!==null&&E!==null&&R.contains(E);if(!z&&!(ne&&document.querySelector("[data-graview-face='pages']")===R)||en(E)||E?.closest("[data-graview-popover]"))return;f.preventDefault(),M.current=Date.now();let p=z&&E instanceof HTMLElement?E:R?.querySelector("[data-graview-page-title], main h1, main")??null;p&&u(p)};return document.addEventListener("keydown",S),()=>document.removeEventListener("keydown",S)},[t,u]),(0,Z.useEffect)(()=>{let S=t.current;if(!S)return;let f=R=>{let E=R.detail;E&&a({...E,face:"pages"})};return S.addEventListener(Cn,f),()=>S.removeEventListener(Cn,f)},[t,a]);let ae=(0,Z.useMemo)(()=>S=>{if(S.face!=="pages")return null;let f=[],R=S.on===void 0?void 0:r.graph.getNode(S.on),E=S.place===void 0?void 0:e.views?.places().find(se=>se.as===S.place),ne=R?void 0:S.about.length===1&&S.about[0].startsWith("aggregate:")&&!E?Ei(S.about[0]):void 0,z=R?_(o,R.kind,R.id):E?fe(e,E):ne?`/${U(o,ne)}`:void 0,p=z!==void 0&&l===z.split("?")[0];z!==void 0&&!p&&f.push({id:"open",label:"Open",run:()=>d(z)});let L=z!==void 0?`${c}${z}`:S.href;L!==void 0&&f.push({id:"open-in-a-new-tab",label:"Open in a new tab",run:()=>void window.open(L,"_blank","noopener")});let V=R?`#focus=${encodeURIComponent(R.id)}`:E?`#focus=${encodeURIComponent(Ne(E.kind))}&view=${encodeURIComponent(E.as)}`:ne?`#focus=${encodeURIComponent(Ne(ne))}`:void 0;if(V!==void 0&&(e.overview||!e.embedded)){let se=e.overview;f.push({id:"in-the-scene",label:"Show in the scene",run:()=>se?se(V):location.assign(`${e.sceneHref??"/"}${V}`)})}return R===void 0&&S.href===void 0&&f.push({id:"find",label:"Find\u2026",run:()=>{let se=t.current?.querySelector('[data-testid="nav-find"]')??document.querySelector('[data-testid="nav-find"]');se&&se.offsetParent!==null?se.focus():d("/search")}}),f.length>0?{id:"pages",items:f}:null},[r,o,e,l,c,d,t]),ie=(0,Z.useMemo)(()=>S=>{if(S.face!=="pages"||S.field===void 0||S.on===void 0)return null;let f=r.graph.getNode(S.on),R=S.element?.closest("[data-graview-field]")??t.current?.querySelector(`[data-graview-field="${CSS.escape(S.field)}"]`);return!f||!(R instanceof HTMLElement)||!R.hasAttribute("data-graview-editable")?null:{id:"field",at:"start",items:[{id:"change-field",label:`Change \u201C${va(o.tryDefinition(f.kind),S.field)}\u201D`,run:()=>R.click()}]}},[r,o,t]),he=_r(),J=mr(),ue=Or(),Ke=(0,Z.useCallback)((S,f)=>{l===fe(e,S).split("?")[0]&&d(f?fe(e,f):"/")},[l,e,d]),Pe=Yr(Ke),Ce=(0,Z.useMemo)(()=>[ie,ue,ae,...Pe?[Pe]:[],...J?[J]:[],...he?[he]:[]],[ie,ue,ae,Pe,J,he]);return(0,xe.jsxs)(cr,{sections:Ce,children:[(0,xe.jsx)("div",{"data-graview-menu-ground":"",style:{display:"contents"},onContextMenu:S=>{let f=S.target;S.shiftKey||en(f)||Ti(f)||(S.preventDefault(),!f.closest("[data-graview-popover]")&&(Date.now()-M.current<700||(S.clientX===0&&S.clientY===0&&f instanceof HTMLElement?u(f):q(f,S.clientX,S.clientY))))},onPointerDown:S=>{if(P.current=!1,S.pointerType==="mouse"||!S.isPrimary)return;let f=S.target;if(en(f)||f.closest("[data-graview-choose], [data-graview-popover]"))return;D();let{clientX:R,clientY:E}=S;j.current={x:R,y:E,timer:setTimeout(()=>{j.current=null,P.current=!0,M.current=Date.now(),q(f,R,E)},Ri)}},onPointerMove:S=>{let f=j.current;f&&Math.hypot(S.clientX-f.x,S.clientY-f.y)>Li&&D()},onPointerUp:D,onPointerCancel:D,onClickCapture:S=>{P.current&&(P.current=!1,S.preventDefault(),S.stopPropagation())},children:n}),(0,xe.jsx)($i,{openAt:u,readyAt:N}),(0,xe.jsx)(zr,{placement:"page"}),(0,xe.jsx)(fr,{})]})}function Ei(e){let t=e.slice(10).split("+");return t.length===1&&t[0]?t[0]:void 0}function $i({openAt:e,readyAt:t}){return(0,xe.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,xe.jsx)(Ur,{placement:"menu",openActs:e,aimAt:t})})}var F=H(B(),1);function Co(e,t){return t==="*"?{label:"anything",path:null}:{label:Y(e,t),path:`/${U(e.schema,t)}`}}function Oi({context:e,relation:t}){let{store:n}=e,a=Co(n,t.from),r=Co(n,t.to),o=d=>d.path?(0,F.jsx)(O,{to:d.path,style:{...Se,fontWeight:550},children:d.label}):(0,F.jsx)("span",{children:d.label});return(0,F.jsxs)("li",{"data-testid":"relation","data-relation":t.edgeKind,style:{display:"grid",gridTemplateColumns:"30px minmax(0, 1fr) auto",gap:12,alignItems:"baseline"},children:[(0,F.jsx)(jr,{edgeKind:t.edgeKind,...e.brand?.kit?{kit:e.brand.kit}:{}}),(0,F.jsxs)("span",{style:{display:"grid",gap:1},children:[(0,F.jsxs)("span",{children:[o(a)," ",(0,F.jsxs)("span",{style:C,"data-graview-speaks-ids":"",children:[ze(t.edgeKind)," \u2192"]})," ",o(r)]}),t.description||t.inverse?(0,F.jsxs)("span",{style:C,children:[t.description?Re(t.description):null,t.description&&t.inverse?" \xB7 ":null,t.inverse?`from the other end, ${t.inverse}`:null]}):null]}),r.path?(0,F.jsx)(O,{to:`${r.path}?with=${encodeURIComponent(t.edgeKind)}`,style:{...G,...C,fontVariantNumeric:"tabular-nums",display:"inline-block",minWidth:24,minHeight:24,textAlign:"center"},title:`The ${r.label.toLowerCase()} that have this`,children:t.count}):(0,F.jsx)("span",{style:{...C,fontVariantNumeric:"tabular-nums"},children:t.count})]})}function Ao({context:e,heading:t=!0}){let{store:n}=e,a=new Set(Fe(n,e.principal)),r=Je(n).relations.filter(o=>a.has(o.from)&&(o.to==="*"||a.has(o.to)));return r.length===0?null:(0,F.jsxs)("section",{style:{...ee,display:"grid",gap:12},"data-testid":"kind-map",children:[t?(0,F.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[(0,F.jsx)("h2",{style:X,children:(0,F.jsx)(O,{to:"/map",style:Se,children:"Connections"})}),(0,F.jsx)("span",{style:C,children:r.length===1?"1 relation":`${r.length} relations`})]}):null,(0,F.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:10},children:r.map(o=>(0,F.jsx)(Oi,{context:e,relation:o},`${o.edgeKind}|${o.from}|${o.to}`))})]})}function Qn({context:e}){let{store:t}=e;Q(t);let n=new Set(Fe(t,e.principal)),a=Je(t),r=a.relations.filter(o=>n.has(o.from));return(0,F.jsxs)(te,{context:e,children:[(0,F.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,F.jsx)("p",{style:we,children:r.length===0?"No relations":`${r.length} ${r.length===1?"relation":"relations"}`}),(0,F.jsx)(oe,{context:e,children:"Connections"}),(0,F.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,F.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"6px 18px"},"data-testid":"map-kinds",children:a.kinds.filter(o=>n.has(o.kind)).map(o=>(0,F.jsxs)("li",{style:{display:"inline-flex",alignItems:"center",gap:8},children:[(0,F.jsx)(ce,{kind:o.kind,brand:e.brand,schema:t.schema,size:7}),(0,F.jsx)(O,{to:`/${U(t.schema,o.kind)}`,style:G,children:o.plural}),(0,F.jsx)("span",{style:C,children:o.count})]},o.kind))}),(0,F.jsx)(Ao,{context:e,heading:!1})]})}function Ro({context:e}){let n=[...de()?.robots.values()??[]].filter(r=>r.mode==="asking"&&r.say);if(n.length===0)return null;let{store:a}=e;return(0,F.jsxs)("section",{style:{...ee,display:"grid",gap:10},"data-testid":"seat-questions",children:[(0,F.jsx)("h2",{style:X,children:n.length===1?"The seat asked something":`The seat asked ${n.length} things`}),(0,F.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:8},children:n.map(r=>{let o=r.at?a.graph.getNode(r.at):void 0;return(0,F.jsxs)("li",{style:{display:"grid",gap:2},children:[(0,F.jsx)("span",{children:r.say}),o?(0,F.jsxs)(O,{to:_(a.schema,o.kind,o.id),style:{...G,...C},children:[ge(a.schema.tryDefinition(o.kind),o)," \u2192"]}):null]},r.participant)})})]})}var W=H(B(),1);function Zn({context:e}){let{principal:t}=e,{store:n,brand:a,invariantContext:r}=e;Q(n);let o=n.violations(r),d=`${o.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=zt(e).map(u=>({kind:u,members:n.graph.nodesOfKind(u).filter(M=>st(n.schema.tryDefinition(u),M))})),m=c.filter(u=>u.members.length>0),v=c.map(u=>({entry:u,creator:n.allMutations().find(M=>(M.creates??[]).includes(u.kind)&&n.permits({name:M.name,args:{}},e.principal).ok)})).find(u=>u.creator!==void 0),w=m.length===0?"Nothing here yet.":`${m.map(u=>Tt(n.schema,u.kind,u.members.length)).join(", ").replace(/, ([^,]*)$/," and $1")}.`,g=e.views?.homeView?.(),x=n.schema.kinds.some(u=>n.graph.nodesOfKind(u).length>0);if(g&&x){let u=a?.subtitle&&a.subtitleDrawn!==!1?(0,W.jsx)("p",{style:{...C,margin:0},"data-testid":"app-subtitle",children:a.subtitle}):null,M=g[Symbol.for("graview.home-blocks")]===!0;return(0,W.jsx)(te,{context:e,style:ct,children:(0,W.jsxs)("div",{style:{display:"grid",gap:12},"data-testid":"home-view",children:[M?null:u,o.length>0?(0,W.jsx)(O,{to:"/problems",style:{...G,color:"var(--graview-warn)"},children:d}):null,(0,W.jsx)(Kr.Provider,{value:M?u:null,children:(0,W.jsx)(Zt,{when:Ot(g),children:(0,W.jsx)(g,{cardinality:"many",fidelity:"full",mode:"fullscreen",selected:!1})})})]})})}let N=new Set(Fe(n,e.principal)),q=Je(n).relations.filter(u=>N.has(u.from)&&(u.to==="*"||N.has(u.to)));return(0,W.jsxs)(te,{context:e,style:ct,children:[(0,W.jsxs)("header",{style:{display:"grid",gap:12},children:[a?.subtitle&&a.subtitleDrawn!==!1?(0,W.jsx)("p",{style:{...C,margin:0},"data-testid":"app-subtitle",children:a.subtitle}):null,(0,W.jsx)(oe,{context:e,"data-testid":"standing",children:w}),(0,W.jsxs)("p",{style:{...re,display:"grid",gap:4},"data-testid":"standing-card",children:[m.length===0&&v?(0,W.jsxs)("span",{children:["Begin with \u201C",v.creator?.title??v.creator?.name,"\u201D, under"," ",(0,W.jsx)(O,{to:`/${U(n.schema,v.entry.kind)}`,style:G,children:Y(n,v.entry.kind)}),"."]}):null,o.length===0?(0,W.jsx)("span",{children:"All rules hold."}):(0,W.jsx)(O,{to:"/problems",style:{...G,color:"var(--graview-warn)"},children:d})]})]}),(0,W.jsx)(_n,{context:e}),(0,W.jsxs)("section",{style:{...ee,display:"grid",gap:14},"data-testid":"kinds",children:[(0,W.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[(0,W.jsx)("h2",{style:X,children:"What is here"}),q.length>0?(0,W.jsx)(O,{to:"/map",style:{...qe,...C,marginLeft:"auto"},"data-testid":"map-link",children:(0,W.jsxs)(Qe,{children:["Connections \xB7 ",q.length===1?"1 relation":`${q.length} relations`]})}):null]}),(0,W.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"8px 10px"},children:c.map(({kind:u,members:M})=>(0,W.jsx)("li",{style:{maxWidth:"100%"},children:(0,W.jsxs)(O,{to:`/${U(n.schema,u)}`,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,W.jsx)(ce,{kind:u,brand:a,schema:n.schema,size:7}),(0,W.jsx)("span",{style:{fontWeight:550,overflowWrap:"anywhere"},children:Y(n,u)}),(0,W.jsx)("span",{style:{...C,fontVariantNumeric:"tabular-nums"},children:M.length===0?"none yet":ft(M.length)})]})},u))})]}),l.length>0?(0,W.jsxs)("section",{style:{...ee,display:"grid",gap:10},children:[(0,W.jsx)("h2",{style:X,children:"Recently"}),(0,W.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},children:l.map(u=>(0,W.jsxs)("li",{style:C,children:[(0,W.jsx)("span",{style:{color:"var(--graview-ink)"},children:u.intent})," \u2014 ",ht(u,t,{graph:n.graph,schema:n.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}})]},u.id))})]}):null]})}var Me=H(He(),1);var nt=H(B(),1);function tn({context:e,withheld:t,style:n,testId:a}){let r=de(),o=La(t,e.signIn??r?.signIn);return o?(0,nt.jsx)("p",{style:{...n,margin:0},children:(0,nt.jsx)("button",{type:"button","data-testid":"sign-in",onClick:()=>o.run(),style:ke,children:o.label})}):t.length===0?null:(0,nt.jsx)("ul",{style:{...n,margin:0,padding:0,listStyle:"none",display:"grid",gap:4},...a?{"data-testid":a}:{},children:t.map(d=>(0,nt.jsxs)("li",{style:C,children:[(0,nt.jsx)("s",{children:d.label})," \u2014 ",d.refusal.message]},d.id))})}var T=H(B(),1);function Xn({context:e}){let{store:t,brand:n,principal:a,invariantContext:r}=e;Q(t);let[o]=pt(),d=o.get("q")??"",l=typeof r?.today=="string"?r.today:void 0,s=Lr(t,d,{...a?{principal:a}:{},places:$e(e),flagged:new Set(t.violations(r).flatMap(g=>g.nodeIds)),...l?{today:l}:{},limit:200}),c=s.hits.filter(g=>g.about==="node"),m=s.hits.filter(g=>g.about==="kind"||g.about==="place"||g.about==="rule"),v=[...new Set(c.map(g=>g.kind))],w=d.trim();return(0,T.jsxs)(te,{context:e,children:[(0,T.jsx)("style",{children:_t}),(0,T.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,T.jsx)("p",{style:we,children:"Search"}),(0,T.jsx)(oe,{context:e,"data-testid":"search-heading",children:w.length===0?"Find anything by its name":s.hits.length===0?(0,T.jsxs)(T.Fragment,{children:["Nothing here is called \u201C",w,"\u201D."]}):(0,T.jsxs)(T.Fragment,{children:[Ni(t,s.byKind)," for \u201C",w,"\u201D"]})}),w.length>0?(0,T.jsxs)("p",{style:{...C,margin:0},"data-testid":"search-searched",children:[Dt(t.schema,s.searched),s.conditions.filter(g=>g.key!=="is"&&g.admittedBy.length<s.searched.kinds.length).map(g=>(0,T.jsxs)("span",{children:[" ",g.key,":",g.value," narrows"," ",g.admittedBy.length===0?"nothing here":g.admittedBy.map(x=>Y(t,x).toLowerCase()).join(" and "),"."]},`${g.key}:${g.value}`))]}):(0,T.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,T.jsx)("code",{children:"done:false"})," and the like narrow as a list does, and ",(0,T.jsx)("code",{children:"is:any"})," includes what is past."]})]}),m.length>0?(0,T.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},"data-testid":"search-named",children:m.map(g=>(0,T.jsx)("li",{"data-testid":"search-hit","data-about":g.about,children:g.about==="kind"?(0,T.jsxs)(O,{to:`/${U(t.schema,g.kind)}`,style:G,children:[g.label,g.count>0?(0,T.jsxs)("span",{style:C,children:[" \xB7 ",g.count," match"]}):null]}):g.about==="place"?(0,T.jsxs)(O,{to:fe(e,g),style:G,children:["Go to ",g.title]}):g.about==="rule"?(0,T.jsxs)(O,{to:"/problems",style:G,children:["The rule \u201C",g.label,"\u201D"]}):null},`${g.about}:${g.about==="rule"?g.name:g.about==="place"?g.as:g.kind}`))}):null,v.map(g=>(0,T.jsxs)("section",{className:"graview-list",style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",minWidth:0},"data-testid":"search-group","data-kind":g,children:[(0,T.jsxs)("h2",{className:"graview-group-head",style:{alignItems:"center"},children:[(0,T.jsx)(ce,{kind:g,brand:n,schema:t.schema,size:8}),(0,T.jsx)(O,{to:`/${U(t.schema,g)}?${new URLSearchParams({q:w}).toString()}`,style:G,"data-testid":"search-kind-link",children:Y(t,g)}),(0,T.jsx)("span",{children:s.byKind[g]})]}),(0,T.jsx)("ul",{className:"graview-rows",children:c.filter(x=>x.kind===g).map(x=>(0,T.jsxs)("li",{"data-testid":"search-hit","data-about":"node",className:"graview-row",children:[(0,T.jsxs)(O,{to:_(t.schema,g,x.id),className:"graview-row-title",...x.label.length>60?{title:x.label}:{},children:[x.flagged?(0,T.jsxs)(T.Fragment,{children:[(0,T.jsx)("span",{role:"img","aria-label":"Breaks a rule:",style:{color:"var(--graview-warn)"},children:"\u26A0"})," "]}):null,x.label]}),x.apart||!x.current?(0,T.jsx)("span",{className:"graview-row-glance",children:[x.apart,x.current?"":"past"].filter(Boolean).join(" \xB7 ")}):null,(0,T.jsx)(nn,{why:x.why})]},x.id))})]},g)),w.length>0?(0,T.jsx)(Hi,{asked:w}):null,w.length>0&&s.hits.length===0?(0,T.jsx)(To,{store:t,kinds:s.searched.kinds,words:s.words,...a?{principal:a}:{},...r?{invariantContext:r}:{}}):null]})}function nn({why:e}){return e.strength==="near"?(0,T.jsxs)("span",{style:C,"data-testid":"search-why","data-near":"",children:["Near \u201C",e.asked,"\u201D",e.field==="label"?"":` \u2014 ${e.reading}: ${e.fragment}`]}):e.field==="label"?null:(0,T.jsxs)("span",{style:C,"data-testid":"search-why",children:[e.reading,": ",e.fragment]})}function Ni(e,t){let n=Object.entries(t).map(([a,r])=>`${r} ${r===1?Ye(e.schema.tryDefinition(a),a):Y(e,a).toLowerCase()}`);return n.length===0?"Found":n.length===1?Re(n[0]):Re(`${n.slice(0,-1).join(", ")} and ${n[n.length-1]}`)}function Lo(e,t,n={}){let a=[];for(let r of t){let o=Xe(e,r,{...n.principal?{principal:n.principal}:{},...n.invariantContext?{context:n.invariantContext}:{}});for(let d of an(e,r,o.actions.affordances))a.some(l=>l.mutation.name===d.mutation.name)||a.push(d)}return a}function an(e,t,n){let a=e.schema.tryDefinition(t)?.fieldRoles?.label,r=[];for(let o of n){let d=e.allMutations().find(c=>c.name===o.mutation);if(!d||!d.creates?.includes(t)||r.some(c=>c.mutation.name===d.name))continue;let l=yr(d.input).map(c=>c.name),s=l.includes("label")?"label":a&&l.includes(a)?a:void 0;!s||o.args[s]!==void 0||r.push({kind:t,affordance:o,mutation:d,arg:s})}return r}function To({store:e,kinds:t,words:n,principal:a,invariantContext:r}){let o=Lo(e,t,{...a?{principal:a}:{},...r?{invariantContext:r}:{}});return o.length===0||n.trim().length===0?null:(0,T.jsx)("div",{style:{display:"grid",gap:24},"data-testid":"search-to-create",children:o.map(({kind:d,affordance:l,mutation:s,arg:c})=>(0,T.jsxs)("section",{style:{...ee,display:"grid",gap:14},children:[(0,T.jsxs)("h2",{style:X,children:[Re(Sa(Ye(e.schema.tryDefinition(d),d)))," called \u201C",n,"\u201D"]}),(0,T.jsx)(Ie,{store:e,mutation:s,prefilled:l.args,open:l.open,initial:{[c]:n},...a?{principal:a}:{}})]},`${l.id}|${n}`))})}function Hi({asked:e}){let t=de();return t?(0,T.jsx)(Ii,{asked:e,desk:t.aiDesk}):null}function Ii({asked:e,desk:t}){return _a(t)?(0,T.jsx)("p",{style:{margin:0},children:(0,T.jsxs)("button",{type:"button","data-testid":"search-ask",onClick:a=>ja(t,{pointed:{about:[]},asked:e,returnTo:a.currentTarget}),style:{...G,font:"inherit",padding:0,border:0,background:"transparent",cursor:"pointer",textAlign:"start"},children:["Ask: \u2018",e,"\u2019"]})}):null}var h=H(B(),1),Eo=8,$o=40;function Fi(e,t){let n=t?.fields?.shape??{},a=Object.keys(n).find(r=>ba(n[r])&&ka(e[r]));return a===void 0?void 0:e[a]}function Jn({context:e}){let t=Ue(),n=ve(e.store.schema,t.slug??"");return n?(0,h.jsx)(Oo,{context:e,kind:n}):(0,h.jsx)(te,{context:e,children:(0,h.jsx)(oe,{context:e,children:"No such kind of thing here."})})}function Oo({context:e,kind:t,opening:n,row:a,layout:r="list",description:o,bare:d}){let{store:l,brand:s,invariantContext:c}=e;Q(l);let[m,v]=pt(),w=`list-${(0,Me.useId)().replace(/:/g,"")}`,g=l.schema.tryDefinition(t),x=Pa(m.get("archived")),N=l.graph.nodesOfKind(t,{archived:x}),q=Je(l).relations.filter(i=>i.from===t||i.to===t),u=new Set(l.violations(c).flatMap(i=>i.nodeIds)),M=Cr(l.schema,Pr(l.schema,xr(l.schema,t))),j=q.map(i=>i.edgeKind),P=qi(m,M,j),D=["sort","filter","group","q","by","with","past","archived",...j].some(i=>m.has(i)),ae=N.length>=$o,ie=g?.fieldRoles?.when,he=e.views?.arrangement?.()?.lists?.[t],J=wr(he),ue=hr(he?.group),Ke=Gi(ae,ie),Pe=n??(J?{...Ke,...J}:Ke),Ce=D?P.arrangement:$n(Pe,M).arrangement,S=J?.sort,f=Ce.sort&&S?.then&&Ce.sort.by===S.by&&Ce.sort.direction===S.direction?{...Ce,sort:S}:Ce,R=Ar(f.query??""),E=[...f.filter??[],...R.conditions].some(i=>i.key==="is"&&(i.value==="past"||i.value==="any"))||br(g,[...f.filter??[],...R.conditions]),ne=E||!g?.lifecycle?f:{...f,filter:[...f.filter??[],{key:"is",value:"current"}]},z=new Map,p=Wt(N,ne,{schema:l.schema,graph:l.graph,flagged:u,...typeof c?.today=="string"?{today:c.today}:{},read:(i,y)=>{let $=z.get(i.id);return $||z.set(i.id,$=yt(l.schema,l.graph,i)),$[y]}}),L=ue&&f.group?.by===ue.by&&!f.group.bucket?M.groups.find(i=>i.key===ue.by):void 0,V=ue&&L&&(L.type==="choice"||L.type==="boolean")?vr(p.groups,ue,{type:L.type,...L.options?{options:L.options}:{}}):p.groups.map(i=>({...i,closed:!1})),se=new Set((m.get("open")??"").split(",").filter(Boolean)),Ko=!!f.query||(f.filter??[]).some(i=>i.key===ue?.by),aa=i=>L?.type==="boolean"?i==="1"?"true":"false":i,ra=i=>i.closed&&!Ko&&!se.has(aa(i.key)),Bo=i=>{let y=new URLSearchParams(m),$=new Set(se);$.has(i)?$.delete(i):$.add(i),$.size>0?y.set("open",[...$].join(",")):y.delete("open"),v(y,{replace:!0})},Ae=p.nodes,rt=g?.lifecycle&&!E?N.filter(i=>st(g,i)):N,oa=N.length-rt.length,sn=f.group?.by??null,Go=i=>{let y=new URLSearchParams(m);for(let le of["sort","filter","group","q","by","with","past","archived",...q.map(Rt=>Rt.edgeKind)])y.delete(le);let $=Tr(i);for(let le of["sort","filter","group","q","archived"])$[le]&&y.set(le,$[le]);![...y.keys()].some(le=>["sort","filter","group","q"].includes(le))&&(n||J||ae||ie)&&y.set("sort",""),v(y)},{principal:ot}=e,ln=Xe(l,t,{...ot?{principal:ot}:{},...e.invariantContext?{context:e.invariantContext}:{}}),Be=ln.actions.affordances.map(i=>({affordance:i,mutation:l.allMutations().find(y=>y.name===i.mutation)})).filter(i=>i.mutation!==void 0),qo=ln.actions.withheld,dn=()=>new Set(Ae.length===0?Be.map(({mutation:i})=>i.name):[]),[cn,ia]=(0,Me.useState)(()=>({kind:t,open:dn()}));cn.kind!==t&&ia({kind:t,open:dn()});let sa=i=>(cn.kind===t?cn.open:dn()).has(i),la=(i,y)=>ia($=>{let le=new Set($.open);return y?le.add(i):le.delete(i),{kind:$.kind,open:le}}),da=`begin-${(0,Me.useId)().replace(/:/g,"")}`,ca=R.words&&Ae.length===0?Object.fromEntries(an(l,t,ln.actions.affordances).map(i=>[i.mutation.name,i.arg])):{},je=Y(l,t),xt=e.views?.lookup(t,{cardinality:"one",fidelity:"glyph"}),pn=xt!==void 0&&!lt(xt)?xt:void 0,un=(f.group?.bucket??"day")==="day"?f.group?.by:void 0,gn=(f.filter??[]).map(i=>i.key),Uo=gn.filter(i=>gn.indexOf(i)===gn.lastIndexOf(i)&&/choice|boolean/.test(M.filters.find(y=>y.key===i)?.type??"")),mn=i=>{let y={...g?.computed?yt(l.schema,l.graph,i):i};un&&!String(y[un]).includes("T")&&delete y[un];for(let $ of Uo)delete y[$];return y},pa=i=>rr(g?.fields?.shape?.[i])?.type==="enum",Pt=i=>{let y=ge(g,i);if(a)return(0,h.jsxs)("li",{"data-testid":"record-row","data-graview-record":i.id,style:{minWidth:0},...Sn(i.id),children:[vn(i,y),a(i,{label:y,href:_(l.schema,t,i.id),flagged:u.has(i.id),glance:no(mn(i),g,y)})]},i.id);if(pn){let kn=qt(xt,i,l.graph),Qo=Object.fromEntries(Object.entries(mn(i)).filter(([Zo])=>!kn?.fields.has(Zo))),ha=kn?Fn(Qo,g,kn.title??y,pa):[];return(0,h.jsxs)("li",{"data-testid":"record-row","data-graview-record":i.id,style:{position:"relative",display:"flex",flexWrap:"wrap",alignItems:"baseline",columnGap:16,rowGap:2,paddingBlock:10,borderTop:"1px solid var(--graview-edge)"},...Sn(i.id),children:[vn(i,y),(0,h.jsx)("div",{style:{flex:"1 1 14rem",minWidth:0},children:(0,h.jsx)(pn,{node:i,cardinality:"one",fidelity:"glyph",mode:"fullscreen",selected:!1,...u.has(i.id)?{flagged:[i.id]}:{}})}),ha.length>0?(0,h.jsx)("span",{style:{...C,flex:"0 1 auto",minWidth:0,overflowWrap:"anywhere"},"data-testid":"record-glance",children:(0,h.jsx)(Dn,{runs:ha})}):null,(0,h.jsx)(ji,{to:_(l.schema,t,i.id),label:u.has(i.id)?`${y} \u2014 implicated in a problem`:y})]},i.id)}let $=Fn(mn(i),g,y,pa),le=$.length>0,Rt=R.words?Rr(g,i,R.words):void 0,fa=ae?void 0:ir(i,g),Lt=Fi(i,g),ya=(0,h.jsxs)(O,{to:_(l.schema,t,i.id),className:"graview-row-title",...y.length>60?{title:y}:{},children:[u.has(i.id)?(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)("span",{role:"img","aria-label":"Breaks a rule:",style:{color:"var(--graview-warn)"},children:"\u26A0"})," "]}):null,y]});return(0,h.jsxs)("li",{className:"graview-row","data-graview-record":i.id,...Sn(i.id),children:[vn(i,y),fa?(0,h.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:14,minWidth:0},children:[(0,h.jsx)(dt,{as:"thumb",file:fa}),ya]}):ya,le||Lt?(0,h.jsxs)("span",{className:"graview-row-glance",children:[(0,h.jsx)(Dn,{runs:$}),le&&Lt?" \xB7 ":null,Lt?(0,h.jsx)(Kt,{address:Lt}):null]}):null,Rt?(0,h.jsx)(nn,{why:Rt}):null]},i.id)},fn=$e(e).filter(i=>i.kind===t&&!i.hidden),ua=he?.filters,Vo=(f.filter??[]).some(i=>i.key!=="is"||i.value!=="any"),jo=!!(f.sort||f.group||f.query||Vo),_o=rt.length>=Eo||D&&jo,Oe=f.sort?M.sorts.find(i=>i.key===f.sort.by):void 0,yn=Oe?.type==="date"||Oe!==void 0&&Oe.key===ie,ga=ae&&!p.grouped&&Oe&&(Oe.about==="label"||Oe.type==="text"||yn)?i=>{let y=Oe.about==="label"?ge(g,i):i[Oe.key];if(typeof y!="string"||y.length===0)return yn?"No date":"#";if(yn)return y.slice(0,4);let $=y.trim().charAt(0).toLocaleUpperCase();return/\p{L}/u.test($)?$:"#"}:void 0,_e=ga?Ae.reduce((i,y)=>{let $=ga(y);return i.at(-1)?.key===$?i.at(-1).nodes.push(y):i.push({key:$,nodes:[y]}),i},[]):void 0,ma=p.grouped&&sn?V.flatMap(i=>ra(i)?[]:i.nodes):_e&&_e.length>1?_e.flatMap(i=>i.nodes):Ae,hn=(0,Me.useMemo)(()=>ma.map(i=>i.id),[ma.map(i=>i.id).join(`
5
+ `;function _n({context:e}){Q(e.store);let t=Vn(e);return t.length===0?null:(0,A.jsxs)("section",{style:ho,"data-testid":"gallery",children:[(0,A.jsx)("style",{children:yi}),t.map(n=>(0,A.jsx)(jn,{context:e,entry:n},n.key))]})}function zn({context:e}){let{store:t}=e;Q(t);let n=xn($e(e)).filter(r=>!r.hidden),a=Vn(e);return(0,A.jsxs)(te,{context:e,style:ct,children:[(0,A.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,A.jsx)("p",{style:we,children:n.length===0?"None of its own yet":`${n.length} ${n.length===1?"picture":"pictures"}`}),(0,A.jsx)(oe,{context:e,children:"Pictures"}),(0,A.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,A.jsx)("div",{style:ho,"data-testid":"places",children:a.map(r=>(0,A.jsx)(jn,{context:e,entry:r},r.key))}):null]})}var hi={lede:!0},wi={lede:!1},vi={...re,textWrap:"pretty"};function Si(e,t){if(t===void 0)return;let[n]=lr(sr([t]),dr(e.store,null,null,e.brand?{money:e.brand}:{}));return n?.t==="headline"&&!n.problem&&n.text.trim()!==""?n.text:void 0}function Yn({context:e}){let{store:t,principal:n}=e;Q(t);let a=Ue(),r=De(),[o]=pt(),d=decodeURIComponent(a.as??""),[l,s]=(0,We.useState)(null),c=o.get("of"),m=o.get("filter"),w=$e(e).find(P=>P.as===d&&(!c||U(t.schema,P.kind)===c));if(!w)return(0,A.jsxs)(te,{context:e,children:[(0,A.jsx)(oe,{context:e,children:"No picture is called that."}),(0,A.jsx)("p",{style:re,children:(0,A.jsx)(O,{to:"/places",style:qe,children:(0,A.jsx)(Qe,{children:"The pictures there are"})})})]});let g=Y(t,w.kind),x=e.views?.resolve(w.kind,{cardinality:"many",fidelity:"full"},w.as)?.view,N=x?.flows===!0,q=x?.creates!==!1,u=Si(e,x?.lede),M=Xe(t,w.kind,{...n?{principal:n}:{},...e.invariantContext?{context:e.invariantContext}:{}}),j=q?M.actions.affordances.map(P=>({affordance:P,mutation:t.allMutations().find(D=>D.name===P.mutation)})).filter(P=>P.mutation!==void 0):[];return(0,A.jsxs)(te,{context:e,style:{...ct,gap:"var(--graview-space-6, 32px)"},children:[(0,A.jsxs)("header",{style:{display:"grid",gap:"var(--graview-space-2, 8px)"},children:[(0,A.jsx)(ut,{context:e}),(0,A.jsx)(oe,{context:e,children:w.title}),(0,A.jsx)("p",{style:vi,"data-testid":"place-lede",...u!==void 0?{"data-graview-lede":"headline"}:{},children:u??`${qn(t,Xt(e,w),w.across)}.`}),m&&!N?(0,A.jsxs)("p",{style:{...C,margin:0},"data-testid":"place-narrowed",children:[`Only those where ${m.split(",").map(P=>P.replace(":"," is ")).join(" and ")}. `,(0,A.jsx)(O,{to:`?${(()=>{let P=new URLSearchParams(o);return P.delete("filter"),P.toString()})()}`,style:{...G,...C},children:"Show all"})]}):null,(0,A.jsx)("p",{style:{...C,margin:0,display:"flex",flexWrap:"wrap",gap:"4px 16px"},children:Xt(e,w).map((P,D)=>(0,A.jsx)(O,{to:`/${U(t.schema,P)}`,style:{...qe,...C},...D===0?{"data-testid":"place-as-list"}:{},children:(0,A.jsxs)(Qe,{children:["All ",(P===w.kind?g:Y(t,P)).toLowerCase()," as a list"]})},P))})]}),(0,A.jsx)("div",{"data-testid":"place-lens","data-flows":N?"":void 0,...N?{}:{role:"group","aria-label":w.title,tabIndex:0},style:N?{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:P=>{let D=P.target?.closest("[data-graview-pick]"),ae=D?.getAttribute("data-graview-pick"),ie=D?.getAttribute("data-graview-joins");if(ie)try{let J=JSON.parse(ie);if(Array.isArray(J)&&J.every(ue=>typeof ue=="string")){P.preventDefault(),s({at:et(w),ids:J});return}}catch{}if(!ae)return;let he=t.graph.getNode(ae);he&&(P.preventDefault(),r(_(t.schema,he.kind,ae)))},children:(0,A.jsx)(Br.Provider,{value:u!==void 0?hi:wi,children:(0,A.jsx)(Un,{context:e,place:w,filter:m,...l?.at===et(w)?{chosen:l.ids}:{}})})}),j.length>0?(0,A.jsx)("div",{style:{maxWidth:760,display:"grid",gap:40},"data-testid":"place-creators",children:j.map(({affordance:P,mutation:D})=>(0,A.jsxs)("section",{style:{...ee,display:"grid",gap:14},children:[(0,A.jsx)("h2",{style:X,children:D.title??D.name}),D.description?(0,A.jsx)("p",{style:{...C,margin:0,maxWidth:"58ch"},children:D.description}):null,(0,A.jsx)(Ie,{store:t,mutation:D,prefilled:P.args,open:P.open,label:P.label,...n?{principal:n}:{}})]},P.id))}):null]})}function ki(e,t=document){let n=Ut(e);if(!n)return null;let a=[t,...[...t.querySelectorAll("[data-worker-view]")].flatMap(r=>r.shadowRoot?[r.shadowRoot]:[])];for(let r of a)for(let o of r.querySelectorAll("[id], [data-section]")){let d=o.getAttribute("data-section")??o.id;if(d===e||Ut(d)===n)return o}for(let r of a)for(let o of r.querySelectorAll("h1, h2, h3, h4, h5, h6, [role=heading]"))if(Ut(o.textContent??"")===n)return o;return null}function wo(e,t={}){if(typeof document>"u"||typeof requestAnimationFrame>"u")return()=>{};let n=t.frames??120,a=0,r=()=>{let o=ki(e,t.root??document);if(o){o.hasAttribute("tabindex")||o.setAttribute("tabindex","-1"),o.scrollIntoView?.({block:"start"}),o.focus({preventScroll:!0});return}n-=1,n>0&&(a=requestAnimationFrame(r))};return a=requestAnimationFrame(()=>{a=requestAnimationFrame(r)}),()=>cancelAnimationFrame(a)}var K=H(He(),1);var Jt=H(He(),1);var tt=H(B(),1);function vo({context:e}){return de()?(0,tt.jsxs)(tt.Fragment,{children:[(0,tt.jsx)(bi,{context:e}),(0,tt.jsx)(Vr,{face:"pages",on:e.quickAsk??!0})]}):null}function bi({context:e}){let{store:t}=e,n=de(),{pathname:a}=me(),r=(0,Jt.useRef)(n?.setSelection);return r.current=n?.setSelection,(0,Jt.useEffect)(()=>{let o=r.current;if(!o)return;let[,d,l]=a.split("/"),s=(()=>{if(d==="places"){let m=e.views?.places().find(v=>v.as===decodeURIComponent(l??""));return m?[Ne(m.kind)]:[]}let c=d?ve(t.schema,d):void 0;return c&&l?[decodeURIComponent(l)]:c?[Na(c)]:[]})();o(c=>c.length===s.length&&c.every((m,v)=>m===s[v])?c:s)},[a]),null}var be=H(He(),1);var ko=H(Xo(),1);var pe=H(B(),1);var xi=Nt(Oa(()=>(__graviewPreload(import.meta.url,["./chunk.BJR6E2CT.js","./chunk.VSWEKNKS.js","./chunk.UGFDSE37.js","./chunk.SGJSJGSR.js","./chunk.2OXXGN7C.js","./chunk.Q4KNNJFL.js","./chunk.BH365UJ5.js","./chunk.6EHE26ZS.js","./chunk.N2S3TMBC.js","./chunk.7JW5SHRR.js","./chunk.4SEY7VWZ.js","./chunk.IVHPJUFM.js","./chunk.D53IGR45.js","./chunk.MJ4XTNTL.js","./chunk.AP22NNIM.js","./chunk.SPZVEQC5.js","./chunk.FNK2ZZ5E.js","./chunk.RSR2M7ZO.js","./chunk.EM5CGFNB.js","./chunk.N2S45SSL.js","./chunk.AGVFW6WC.js","./chunk.SIVMZNHZ.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.NQDGUIUQ.js","./chunk.DTRNDSMS.js","./chunk.3EW6L5DY.js","./chunk.AVDXG57A.js","./chunk.LD6S2FL5.js","./chunk.TABIRLQS.js","./chunk.GZHZLJBF.js","./chunk.FOYVTN5B.js","./chunk.OJGHDWI6.js","./chunk.OTF3NNTI.js","./chunk.A7HMVWMG.js","./chunk.GRLPNTUW.js","./chunk.EJAVIZ7Y.js","./chunk.423SZS7C.js","./chunk.TM6JVVGW.js","./chunk.SDO3U72B.js","./chunk.PFEKS3KO.js","./chunk.2AZTW66C.js","./chunk.AJZBJBMO.js"]),import("./chunk.IQHVVQEA.js")).then(e=>({default:e.TakeBack}))));function Pi({context:e,docked:t,at:n,...a}){let{store:r}=e,o=Q(r),[d]=(0,be.useState)(()=>r.batches().length),l=(0,be.useRef)(!1);return l.current||=o>0||!t&&d>0,l.current?(0,pe.jsx)(be.Suspense,{fallback:null,children:(0,pe.jsx)(xi,{context:e,docked:t,at:n,since:d,...a})}):null}function Ci(e,t,n){let{store:a,principal:r,embedded:o}=e;(0,be.useEffect)(()=>{if(!n)return;let d=l=>{if(!Xr(l))return;let s=l.target,c=s instanceof Node&&t.current?.contains(s),m=s===document.body||s===document.documentElement||s===document;if(!(!c&&!(m&&!o))&&Qr(a,r)){l.preventDefault();try{Zr(a,r)}catch{}}};return document.addEventListener("keydown",d),()=>document.removeEventListener("keydown",d)},[a,r,o,t,n])}function bo({context:e,registry:t,root:n,children:a}){let r=(0,be.useMemo)(lo,[]),o=t?.without()??new Set;return Ci(e,n,!o.has("undo")),(0,pe.jsxs)(wt.Provider,{value:r,children:[(0,pe.jsx)(Ai,{context:e,placed:r,without:o}),a]})}function Ai({context:e,placed:t,without:n}){let[a,r]=(0,be.useState)(!1);(0,be.useLayoutEffect)(()=>r(!0),[]);let o=vt(t,"find"),d=vt(t,"undo"),l=me(),s=kr();if(!a)return null;let c=l.pathname.split("/").filter(Boolean),v=(c.length===1?ve(e.store.schema,c[0]):void 0)!==void 0;return(0,pe.jsxs)(pe.Fragment,{children:[!o&&!n.has("find")&&s?(0,ko.createPortal)((0,pe.jsx)(So,{context:e,narrowsLists:v}),s.slot):null,!o&&!n.has("find")&&!s?(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)(So,{context:e,narrowsLists:v})}):null,!d&&!n.has("undo")?(0,pe.jsx)(Pi,{context:e,docked:!0,at:l.pathname+l.search}):null,s?.own&&!n.has("undo")?(0,pe.jsx)(ro,{context:e,own:s.own}):null]})}function So({context:e,narrowsLists:t}){return(0,pe.jsx)(wt.Provider,{value:null,children:(0,pe.jsx)(Bn,{context:e,narrowsLists:t})})}var Z=H(He(),1);var xe=H(B(),1),Ri=500,Li=10;function en(e){return e instanceof HTMLElement?e.isContentEditable||e.tagName==="TEXTAREA"||e.tagName==="SELECT"?!0:e.tagName==="INPUT"&&!["button","submit","reset","checkbox","radio","image","file","color","range"].includes(e.type):!1}function Ti(e){let t=typeof getSelection=="function"?getSelection():null;return t!==null&&!t.isCollapsed&&t.containsNode(e,!0)}function xo(e){let t=e.closest('a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])');if(t)return t;let n=document.activeElement;return n instanceof HTMLElement&&n!==document.body?n:null}function Po({context:e,root:t,children:n}){return de()===null?(0,xe.jsx)(xe.Fragment,{children:n}):(0,xe.jsx)(Mi,{context:e,root:t,children:n})}function Mi({context:e,root:t,children:n}){let{setMenuAt:a}=Ka(),{store:r}=e,o=r.schema,d=De(),{pathname:l,search:s}=me(),c=Ze("/").replace(/\/$/,""),m=(0,Z.useCallback)((S,f)=>e.views?.places().find(R=>R.as===S&&(f===null||R.kind===f)),[e.views]),v=(0,Z.useCallback)((S,f)=>{let[R="",E,ne]=S.split("/").filter(Boolean).map(p=>{try{return decodeURIComponent(p)}catch{return p}});if(ne!==void 0)return null;if(R==="places"&&E!==void 0){let p=m(E,new URLSearchParams(f).get("of"));return p?{face:"pages",place:p.as,about:[Ne(p.kind)],title:p.title}:null}let z=ve(o,R);return z?E===void 0?{face:"pages",about:[Ne(z)],title:Ge(o,z)}:r.graph.getNode(E)?{face:"pages",on:E,about:[E]}:null:null},[o,r,m]),w=(0,Z.useCallback)(S=>{let f=S.href;try{let R=new URL(f,location.href);if(R.origin===location.origin&&(c===""||R.pathname===c||R.pathname.startsWith(`${c}/`))){let E=v(R.pathname.slice(c.length),R.search);if(E)return{...E,href:f}}}catch{}return{face:"pages",about:[],href:f}},[c,v]),g=(0,Z.useCallback)(()=>v(l,s)??{face:"pages",about:[]},[v,l,s]),x=(0,Z.useCallback)(S=>{let f=g(),R=S.closest("[data-graview-field]")?.getAttribute("data-graview-field");if(R&&f.on!==void 0&&S.closest("[data-graview-pick], a[href]")===null)return{...f,field:R};let E=S.closest("[data-graview-act]")?.getAttribute("data-graview-act");if(E)return{...f,act:E};let ne=S.closest("a[href]"),z=S.closest("[data-graview-listed]"),p=[S.closest("[data-graview-pick]")?.getAttribute("data-graview-pick"),z&&(!ne||z.contains(ne)&&ne.classList.contains("graview-spec-item-link"))?z.getAttribute("data-graview-listed"):null].map(V=>V?r.graph.getNode(V):void 0).find(Boolean);if(p)return{face:"pages",on:p.id,about:[p.id],href:`${c}${_(o,p.kind,p.id)}`};if(ne)return w(ne);let L=S.closest("[data-graview-record]")?.getAttribute("data-graview-record");return L&&r.graph.getNode(L)?{face:"pages",on:L,about:[L]}:f},[g,w,r,o,c]),N=(0,Z.useCallback)(S=>{let f=t.current;if(f===null||!f.contains(S)||en(S)||S.closest("[data-graview-popover]"))return null;let R=x(S);return{face:"pages",on:R.on,about:R.about??[],field:R.field,place:R.place,href:R.href,act:R.act,element:xo(S)}},[x,t]),q=(0,Z.useCallback)((S,f,R)=>{let E=x(S);a({...E,x:Math.round(f),y:Math.round(R),returnTo:xo(S)})},[x,a]),u=(0,Z.useCallback)(S=>{let f=S.getBoundingClientRect();q(S,f.left+Math.min(16,f.width/2),Math.min(f.bottom,f.top+36))},[q]),M=(0,Z.useRef)(0),j=(0,Z.useRef)(null),P=(0,Z.useRef)(!1),D=()=>{j.current&&clearTimeout(j.current.timer),j.current=null};(0,Z.useEffect)(()=>D,[]),(0,Z.useEffect)(()=>{let S=f=>{if(f.defaultPrevented||!(f.key==="ContextMenu"||f.key==="F10"&&f.shiftKey))return;let R=t.current,E=f.target instanceof Element?f.target:null,ne=E===null||E===document.body||E===document.documentElement,z=R!==null&&E!==null&&R.contains(E);if(!z&&!(ne&&document.querySelector("[data-graview-face='pages']")===R)||en(E)||E?.closest("[data-graview-popover]"))return;f.preventDefault(),M.current=Date.now();let p=z&&E instanceof HTMLElement?E:R?.querySelector("[data-graview-page-title], main h1, main")??null;p&&u(p)};return document.addEventListener("keydown",S),()=>document.removeEventListener("keydown",S)},[t,u]),(0,Z.useEffect)(()=>{let S=t.current;if(!S)return;let f=R=>{let E=R.detail;E&&a({...E,face:"pages"})};return S.addEventListener(Cn,f),()=>S.removeEventListener(Cn,f)},[t,a]);let ae=(0,Z.useMemo)(()=>S=>{if(S.face!=="pages")return null;let f=[],R=S.on===void 0?void 0:r.graph.getNode(S.on),E=S.place===void 0?void 0:e.views?.places().find(se=>se.as===S.place),ne=R?void 0:S.about.length===1&&S.about[0].startsWith("aggregate:")&&!E?Ei(S.about[0]):void 0,z=R?_(o,R.kind,R.id):E?fe(e,E):ne?`/${U(o,ne)}`:void 0,p=z!==void 0&&l===z.split("?")[0];z!==void 0&&!p&&f.push({id:"open",label:"Open",run:()=>d(z)});let L=z!==void 0?`${c}${z}`:S.href;L!==void 0&&f.push({id:"open-in-a-new-tab",label:"Open in a new tab",run:()=>void window.open(L,"_blank","noopener")});let V=R?`#focus=${encodeURIComponent(R.id)}`:E?`#focus=${encodeURIComponent(Ne(E.kind))}&view=${encodeURIComponent(E.as)}`:ne?`#focus=${encodeURIComponent(Ne(ne))}`:void 0;if(V!==void 0&&(e.overview||!e.embedded)){let se=e.overview;f.push({id:"in-the-scene",label:"Show in the scene",run:()=>se?se(V):location.assign(`${e.sceneHref??"/"}${V}`)})}return R===void 0&&S.href===void 0&&f.push({id:"find",label:"Find\u2026",run:()=>{let se=t.current?.querySelector('[data-testid="nav-find"]')??document.querySelector('[data-testid="nav-find"]');se&&se.offsetParent!==null?se.focus():d("/search")}}),f.length>0?{id:"pages",items:f}:null},[r,o,e,l,c,d,t]),ie=(0,Z.useMemo)(()=>S=>{if(S.face!=="pages"||S.field===void 0||S.on===void 0)return null;let f=r.graph.getNode(S.on),R=S.element?.closest("[data-graview-field]")??t.current?.querySelector(`[data-graview-field="${CSS.escape(S.field)}"]`);return!f||!(R instanceof HTMLElement)||!R.hasAttribute("data-graview-editable")?null:{id:"field",at:"start",items:[{id:"change-field",label:`Change \u201C${va(o.tryDefinition(f.kind),S.field)}\u201D`,run:()=>R.click()}]}},[r,o,t]),he=_r(),J=mr(),ue=Or(),Ke=(0,Z.useCallback)((S,f)=>{l===fe(e,S).split("?")[0]&&d(f?fe(e,f):"/")},[l,e,d]),Pe=Yr(Ke),Ce=(0,Z.useMemo)(()=>[ie,ue,ae,...Pe?[Pe]:[],...J?[J]:[],...he?[he]:[]],[ie,ue,ae,Pe,J,he]);return(0,xe.jsxs)(cr,{sections:Ce,children:[(0,xe.jsx)("div",{"data-graview-menu-ground":"",style:{display:"contents"},onContextMenu:S=>{let f=S.target;S.shiftKey||en(f)||Ti(f)||(S.preventDefault(),!f.closest("[data-graview-popover]")&&(Date.now()-M.current<700||(S.clientX===0&&S.clientY===0&&f instanceof HTMLElement?u(f):q(f,S.clientX,S.clientY))))},onPointerDown:S=>{if(P.current=!1,S.pointerType==="mouse"||!S.isPrimary)return;let f=S.target;if(en(f)||f.closest("[data-graview-choose], [data-graview-popover]"))return;D();let{clientX:R,clientY:E}=S;j.current={x:R,y:E,timer:setTimeout(()=>{j.current=null,P.current=!0,M.current=Date.now(),q(f,R,E)},Ri)}},onPointerMove:S=>{let f=j.current;f&&Math.hypot(S.clientX-f.x,S.clientY-f.y)>Li&&D()},onPointerUp:D,onPointerCancel:D,onClickCapture:S=>{P.current&&(P.current=!1,S.preventDefault(),S.stopPropagation())},children:n}),(0,xe.jsx)($i,{openAt:u,readyAt:N}),(0,xe.jsx)(zr,{placement:"page"}),(0,xe.jsx)(fr,{})]})}function Ei(e){let t=e.slice(10).split("+");return t.length===1&&t[0]?t[0]:void 0}function $i({openAt:e,readyAt:t}){return(0,xe.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,xe.jsx)(Ur,{placement:"menu",openActs:e,aimAt:t})})}var F=H(B(),1);function Co(e,t){return t==="*"?{label:"anything",path:null}:{label:Y(e,t),path:`/${U(e.schema,t)}`}}function Oi({context:e,relation:t}){let{store:n}=e,a=Co(n,t.from),r=Co(n,t.to),o=d=>d.path?(0,F.jsx)(O,{to:d.path,style:{...Se,fontWeight:550},children:d.label}):(0,F.jsx)("span",{children:d.label});return(0,F.jsxs)("li",{"data-testid":"relation","data-relation":t.edgeKind,style:{display:"grid",gridTemplateColumns:"30px minmax(0, 1fr) auto",gap:12,alignItems:"baseline"},children:[(0,F.jsx)(jr,{edgeKind:t.edgeKind,...e.brand?.kit?{kit:e.brand.kit}:{}}),(0,F.jsxs)("span",{style:{display:"grid",gap:1},children:[(0,F.jsxs)("span",{children:[o(a)," ",(0,F.jsxs)("span",{style:C,"data-graview-speaks-ids":"",children:[ze(t.edgeKind)," \u2192"]})," ",o(r)]}),t.description||t.inverse?(0,F.jsxs)("span",{style:C,children:[t.description?Re(t.description):null,t.description&&t.inverse?" \xB7 ":null,t.inverse?`from the other end, ${t.inverse}`:null]}):null]}),r.path?(0,F.jsx)(O,{to:`${r.path}?with=${encodeURIComponent(t.edgeKind)}`,style:{...G,...C,fontVariantNumeric:"tabular-nums",display:"inline-block",minWidth:24,minHeight:24,textAlign:"center"},title:`The ${r.label.toLowerCase()} that have this`,children:t.count}):(0,F.jsx)("span",{style:{...C,fontVariantNumeric:"tabular-nums"},children:t.count})]})}function Ao({context:e,heading:t=!0}){let{store:n}=e,a=new Set(Fe(n,e.principal)),r=Je(n).relations.filter(o=>a.has(o.from)&&(o.to==="*"||a.has(o.to)));return r.length===0?null:(0,F.jsxs)("section",{style:{...ee,display:"grid",gap:12},"data-testid":"kind-map",children:[t?(0,F.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[(0,F.jsx)("h2",{style:X,children:(0,F.jsx)(O,{to:"/map",style:Se,children:"Connections"})}),(0,F.jsx)("span",{style:C,children:r.length===1?"1 relation":`${r.length} relations`})]}):null,(0,F.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:10},children:r.map(o=>(0,F.jsx)(Oi,{context:e,relation:o},`${o.edgeKind}|${o.from}|${o.to}`))})]})}function Qn({context:e}){let{store:t}=e;Q(t);let n=new Set(Fe(t,e.principal)),a=Je(t),r=a.relations.filter(o=>n.has(o.from));return(0,F.jsxs)(te,{context:e,children:[(0,F.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,F.jsx)("p",{style:we,children:r.length===0?"No relations":`${r.length} ${r.length===1?"relation":"relations"}`}),(0,F.jsx)(oe,{context:e,children:"Connections"}),(0,F.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,F.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"6px 18px"},"data-testid":"map-kinds",children:a.kinds.filter(o=>n.has(o.kind)).map(o=>(0,F.jsxs)("li",{style:{display:"inline-flex",alignItems:"center",gap:8},children:[(0,F.jsx)(ce,{kind:o.kind,brand:e.brand,schema:t.schema,size:7}),(0,F.jsx)(O,{to:`/${U(t.schema,o.kind)}`,style:G,children:o.plural}),(0,F.jsx)("span",{style:C,children:o.count})]},o.kind))}),(0,F.jsx)(Ao,{context:e,heading:!1})]})}function Ro({context:e}){let n=[...de()?.robots.values()??[]].filter(r=>r.mode==="asking"&&r.say);if(n.length===0)return null;let{store:a}=e;return(0,F.jsxs)("section",{style:{...ee,display:"grid",gap:10},"data-testid":"seat-questions",children:[(0,F.jsx)("h2",{style:X,children:n.length===1?"The seat asked something":`The seat asked ${n.length} things`}),(0,F.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:8},children:n.map(r=>{let o=r.at?a.graph.getNode(r.at):void 0;return(0,F.jsxs)("li",{style:{display:"grid",gap:2},children:[(0,F.jsx)("span",{children:r.say}),o?(0,F.jsxs)(O,{to:_(a.schema,o.kind,o.id),style:{...G,...C},children:[ge(a.schema.tryDefinition(o.kind),o)," \u2192"]}):null]},r.participant)})})]})}var W=H(B(),1);function Zn({context:e}){let{principal:t}=e,{store:n,brand:a,invariantContext:r}=e;Q(n);let o=n.violations(r),d=`${o.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=zt(e).map(u=>({kind:u,members:n.graph.nodesOfKind(u).filter(M=>st(n.schema.tryDefinition(u),M))})),m=c.filter(u=>u.members.length>0),v=c.map(u=>({entry:u,creator:n.allMutations().find(M=>(M.creates??[]).includes(u.kind)&&n.permits({name:M.name,args:{}},e.principal).ok)})).find(u=>u.creator!==void 0),w=m.length===0?"Nothing here yet.":`${m.map(u=>Tt(n.schema,u.kind,u.members.length)).join(", ").replace(/, ([^,]*)$/," and $1")}.`,g=e.views?.homeView?.(),x=n.schema.kinds.some(u=>n.graph.nodesOfKind(u).length>0);if(g&&x){let u=a?.subtitle&&a.subtitleDrawn!==!1?(0,W.jsx)("p",{style:{...C,margin:0},"data-testid":"app-subtitle",children:a.subtitle}):null,M=g[Symbol.for("graview.home-blocks")]===!0;return(0,W.jsx)(te,{context:e,style:ct,children:(0,W.jsxs)("div",{style:{display:"grid",gap:12},"data-testid":"home-view",children:[M?null:u,o.length>0?(0,W.jsx)(O,{to:"/problems",style:{...G,color:"var(--graview-warn)"},children:d}):null,(0,W.jsx)(Kr.Provider,{value:M?u:null,children:(0,W.jsx)(Zt,{when:Ot(g),children:(0,W.jsx)(g,{cardinality:"many",fidelity:"full",mode:"fullscreen",selected:!1})})})]})})}let N=new Set(Fe(n,e.principal)),q=Je(n).relations.filter(u=>N.has(u.from)&&(u.to==="*"||N.has(u.to)));return(0,W.jsxs)(te,{context:e,style:ct,children:[(0,W.jsxs)("header",{style:{display:"grid",gap:12},children:[a?.subtitle&&a.subtitleDrawn!==!1?(0,W.jsx)("p",{style:{...C,margin:0},"data-testid":"app-subtitle",children:a.subtitle}):null,(0,W.jsx)(oe,{context:e,"data-testid":"standing",children:w}),(0,W.jsxs)("p",{style:{...re,display:"grid",gap:4},"data-testid":"standing-card",children:[m.length===0&&v?(0,W.jsxs)("span",{children:["Begin with \u201C",v.creator?.title??v.creator?.name,"\u201D, under"," ",(0,W.jsx)(O,{to:`/${U(n.schema,v.entry.kind)}`,style:G,children:Y(n,v.entry.kind)}),"."]}):null,o.length===0?(0,W.jsx)("span",{children:"All rules hold."}):(0,W.jsx)(O,{to:"/problems",style:{...G,color:"var(--graview-warn)"},children:d})]})]}),(0,W.jsx)(_n,{context:e}),(0,W.jsxs)("section",{style:{...ee,display:"grid",gap:14},"data-testid":"kinds",children:[(0,W.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[(0,W.jsx)("h2",{style:X,children:"What is here"}),q.length>0?(0,W.jsx)(O,{to:"/map",style:{...qe,...C,marginLeft:"auto"},"data-testid":"map-link",children:(0,W.jsxs)(Qe,{children:["Connections \xB7 ",q.length===1?"1 relation":`${q.length} relations`]})}):null]}),(0,W.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"8px 10px"},children:c.map(({kind:u,members:M})=>(0,W.jsx)("li",{style:{maxWidth:"100%"},children:(0,W.jsxs)(O,{to:`/${U(n.schema,u)}`,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,W.jsx)(ce,{kind:u,brand:a,schema:n.schema,size:7}),(0,W.jsx)("span",{style:{fontWeight:550,overflowWrap:"anywhere"},children:Y(n,u)}),(0,W.jsx)("span",{style:{...C,fontVariantNumeric:"tabular-nums"},children:M.length===0?"none yet":ft(M.length)})]})},u))})]}),l.length>0?(0,W.jsxs)("section",{style:{...ee,display:"grid",gap:10},children:[(0,W.jsx)("h2",{style:X,children:"Recently"}),(0,W.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},children:l.map(u=>(0,W.jsxs)("li",{style:C,children:[(0,W.jsx)("span",{style:{color:"var(--graview-ink)"},children:u.intent})," \u2014 ",ht(u,t,{graph:n.graph,schema:n.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}})]},u.id))})]}):null]})}var Me=H(He(),1);var nt=H(B(),1);function tn({context:e,withheld:t,style:n,testId:a}){let r=de(),o=La(t,e.signIn??r?.signIn);return o?(0,nt.jsx)("p",{style:{...n,margin:0},children:(0,nt.jsx)("button",{type:"button","data-testid":"sign-in",onClick:()=>o.run(),style:ke,children:o.label})}):t.length===0?null:(0,nt.jsx)("ul",{style:{...n,margin:0,padding:0,listStyle:"none",display:"grid",gap:4},...a?{"data-testid":a}:{},children:t.map(d=>(0,nt.jsxs)("li",{style:C,children:[(0,nt.jsx)("s",{children:d.label})," \u2014 ",d.refusal.message]},d.id))})}var T=H(B(),1);function Xn({context:e}){let{store:t,brand:n,principal:a,invariantContext:r}=e;Q(t);let[o]=pt(),d=o.get("q")??"",l=typeof r?.today=="string"?r.today:void 0,s=Lr(t,d,{...a?{principal:a}:{},places:$e(e),flagged:new Set(t.violations(r).flatMap(g=>g.nodeIds)),...l?{today:l}:{},limit:200}),c=s.hits.filter(g=>g.about==="node"),m=s.hits.filter(g=>g.about==="kind"||g.about==="place"||g.about==="rule"),v=[...new Set(c.map(g=>g.kind))],w=d.trim();return(0,T.jsxs)(te,{context:e,children:[(0,T.jsx)("style",{children:_t}),(0,T.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,T.jsx)("p",{style:we,children:"Search"}),(0,T.jsx)(oe,{context:e,"data-testid":"search-heading",children:w.length===0?"Find anything by its name":s.hits.length===0?(0,T.jsxs)(T.Fragment,{children:["Nothing here is called \u201C",w,"\u201D."]}):(0,T.jsxs)(T.Fragment,{children:[Ni(t,s.byKind)," for \u201C",w,"\u201D"]})}),w.length>0?(0,T.jsxs)("p",{style:{...C,margin:0},"data-testid":"search-searched",children:[Dt(t.schema,s.searched),s.conditions.filter(g=>g.key!=="is"&&g.admittedBy.length<s.searched.kinds.length).map(g=>(0,T.jsxs)("span",{children:[" ",g.key,":",g.value," narrows"," ",g.admittedBy.length===0?"nothing here":g.admittedBy.map(x=>Y(t,x).toLowerCase()).join(" and "),"."]},`${g.key}:${g.value}`))]}):(0,T.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,T.jsx)("code",{children:"done:false"})," and the like narrow as a list does, and ",(0,T.jsx)("code",{children:"is:any"})," includes what is past."]})]}),m.length>0?(0,T.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},"data-testid":"search-named",children:m.map(g=>(0,T.jsx)("li",{"data-testid":"search-hit","data-about":g.about,children:g.about==="kind"?(0,T.jsxs)(O,{to:`/${U(t.schema,g.kind)}`,style:G,children:[g.label,g.count>0?(0,T.jsxs)("span",{style:C,children:[" \xB7 ",g.count," match"]}):null]}):g.about==="place"?(0,T.jsxs)(O,{to:fe(e,g),style:G,children:["Go to ",g.title]}):g.about==="rule"?(0,T.jsxs)(O,{to:"/problems",style:G,children:["The rule \u201C",g.label,"\u201D"]}):null},`${g.about}:${g.about==="rule"?g.name:g.about==="place"?g.as:g.kind}`))}):null,v.map(g=>(0,T.jsxs)("section",{className:"graview-list",style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",minWidth:0},"data-testid":"search-group","data-kind":g,children:[(0,T.jsxs)("h2",{className:"graview-group-head",style:{alignItems:"center"},children:[(0,T.jsx)(ce,{kind:g,brand:n,schema:t.schema,size:8}),(0,T.jsx)(O,{to:`/${U(t.schema,g)}?${new URLSearchParams({q:w}).toString()}`,style:G,"data-testid":"search-kind-link",children:Y(t,g)}),(0,T.jsx)("span",{children:s.byKind[g]})]}),(0,T.jsx)("ul",{className:"graview-rows",children:c.filter(x=>x.kind===g).map(x=>(0,T.jsxs)("li",{"data-testid":"search-hit","data-about":"node",className:"graview-row",children:[(0,T.jsxs)(O,{to:_(t.schema,g,x.id),className:"graview-row-title",...x.label.length>60?{title:x.label}:{},children:[x.flagged?(0,T.jsxs)(T.Fragment,{children:[(0,T.jsx)("span",{role:"img","aria-label":"Breaks a rule:",style:{color:"var(--graview-warn)"},children:"\u26A0"})," "]}):null,x.label]}),x.apart||!x.current?(0,T.jsx)("span",{className:"graview-row-glance",children:[x.apart,x.current?"":"past"].filter(Boolean).join(" \xB7 ")}):null,(0,T.jsx)(nn,{why:x.why})]},x.id))})]},g)),w.length>0?(0,T.jsx)(Hi,{asked:w}):null,w.length>0&&s.hits.length===0?(0,T.jsx)(To,{store:t,kinds:s.searched.kinds,words:s.words,...a?{principal:a}:{},...r?{invariantContext:r}:{}}):null]})}function nn({why:e}){return e.strength==="near"?(0,T.jsxs)("span",{style:C,"data-testid":"search-why","data-near":"",children:["Near \u201C",e.asked,"\u201D",e.field==="label"?"":` \u2014 ${e.reading}: ${e.fragment}`]}):e.field==="label"?null:(0,T.jsxs)("span",{style:C,"data-testid":"search-why",children:[e.reading,": ",e.fragment]})}function Ni(e,t){let n=Object.entries(t).map(([a,r])=>`${r} ${r===1?Ye(e.schema.tryDefinition(a),a):Y(e,a).toLowerCase()}`);return n.length===0?"Found":n.length===1?Re(n[0]):Re(`${n.slice(0,-1).join(", ")} and ${n[n.length-1]}`)}function Lo(e,t,n={}){let a=[];for(let r of t){let o=Xe(e,r,{...n.principal?{principal:n.principal}:{},...n.invariantContext?{context:n.invariantContext}:{}});for(let d of an(e,r,o.actions.affordances))a.some(l=>l.mutation.name===d.mutation.name)||a.push(d)}return a}function an(e,t,n){let a=e.schema.tryDefinition(t)?.fieldRoles?.label,r=[];for(let o of n){let d=e.allMutations().find(c=>c.name===o.mutation);if(!d||!d.creates?.includes(t)||r.some(c=>c.mutation.name===d.name))continue;let l=yr(d.input).map(c=>c.name),s=l.includes("label")?"label":a&&l.includes(a)?a:void 0;!s||o.args[s]!==void 0||r.push({kind:t,affordance:o,mutation:d,arg:s})}return r}function To({store:e,kinds:t,words:n,principal:a,invariantContext:r}){let o=Lo(e,t,{...a?{principal:a}:{},...r?{invariantContext:r}:{}});return o.length===0||n.trim().length===0?null:(0,T.jsx)("div",{style:{display:"grid",gap:24},"data-testid":"search-to-create",children:o.map(({kind:d,affordance:l,mutation:s,arg:c})=>(0,T.jsxs)("section",{style:{...ee,display:"grid",gap:14},children:[(0,T.jsxs)("h2",{style:X,children:[Re(Sa(Ye(e.schema.tryDefinition(d),d)))," called \u201C",n,"\u201D"]}),(0,T.jsx)(Ie,{store:e,mutation:s,prefilled:l.args,open:l.open,initial:{[c]:n},...a?{principal:a}:{}})]},`${l.id}|${n}`))})}function Hi({asked:e}){let t=de();return t?(0,T.jsx)(Ii,{asked:e,desk:t.aiDesk}):null}function Ii({asked:e,desk:t}){return _a(t)?(0,T.jsx)("p",{style:{margin:0},children:(0,T.jsxs)("button",{type:"button","data-testid":"search-ask",onClick:a=>ja(t,{pointed:{about:[]},asked:e,returnTo:a.currentTarget}),style:{...G,font:"inherit",padding:0,border:0,background:"transparent",cursor:"pointer",textAlign:"start"},children:["Ask: \u2018",e,"\u2019"]})}):null}var h=H(B(),1),Eo=8,$o=40;function Fi(e,t){let n=t?.fields?.shape??{},a=Object.keys(n).find(r=>ba(n[r])&&ka(e[r]));return a===void 0?void 0:e[a]}function Jn({context:e}){let t=Ue(),n=ve(e.store.schema,t.slug??"");return n?(0,h.jsx)(Oo,{context:e,kind:n}):(0,h.jsx)(te,{context:e,children:(0,h.jsx)(oe,{context:e,children:"No such kind of thing here."})})}function Oo({context:e,kind:t,opening:n,row:a,layout:r="list",description:o,bare:d}){let{store:l,brand:s,invariantContext:c}=e;Q(l);let[m,v]=pt(),w=`list-${(0,Me.useId)().replace(/:/g,"")}`,g=l.schema.tryDefinition(t),x=Pa(m.get("archived")),N=l.graph.nodesOfKind(t,{archived:x}),q=Je(l).relations.filter(i=>i.from===t||i.to===t),u=new Set(l.violations(c).flatMap(i=>i.nodeIds)),M=Cr(l.schema,Pr(l.schema,xr(l.schema,t))),j=q.map(i=>i.edgeKind),P=qi(m,M,j),D=["sort","filter","group","q","by","with","past","archived",...j].some(i=>m.has(i)),ae=N.length>=$o,ie=g?.fieldRoles?.when,he=e.views?.arrangement?.()?.lists?.[t],J=wr(he),ue=hr(he?.group),Ke=Gi(ae,ie),Pe=n??(J?{...Ke,...J}:Ke),Ce=D?P.arrangement:$n(Pe,M).arrangement,S=J?.sort,f=Ce.sort&&S?.then&&Ce.sort.by===S.by&&Ce.sort.direction===S.direction?{...Ce,sort:S}:Ce,R=Ar(f.query??""),E=[...f.filter??[],...R.conditions].some(i=>i.key==="is"&&(i.value==="past"||i.value==="any"))||br(g,[...f.filter??[],...R.conditions]),ne=E||!g?.lifecycle?f:{...f,filter:[...f.filter??[],{key:"is",value:"current"}]},z=new Map,p=Wt(N,ne,{schema:l.schema,graph:l.graph,flagged:u,...typeof c?.today=="string"?{today:c.today}:{},read:(i,y)=>{let $=z.get(i.id);return $||z.set(i.id,$=yt(l.schema,l.graph,i)),$[y]}}),L=ue&&f.group?.by===ue.by&&!f.group.bucket?M.groups.find(i=>i.key===ue.by):void 0,V=ue&&L&&(L.type==="choice"||L.type==="boolean")?vr(p.groups,ue,{type:L.type,...L.options?{options:L.options}:{}}):p.groups.map(i=>({...i,closed:!1})),se=new Set((m.get("open")??"").split(",").filter(Boolean)),Ko=!!f.query||(f.filter??[]).some(i=>i.key===ue?.by),aa=i=>L?.type==="boolean"?i==="1"?"true":"false":i,ra=i=>i.closed&&!Ko&&!se.has(aa(i.key)),Bo=i=>{let y=new URLSearchParams(m),$=new Set(se);$.has(i)?$.delete(i):$.add(i),$.size>0?y.set("open",[...$].join(",")):y.delete("open"),v(y,{replace:!0})},Ae=p.nodes,rt=g?.lifecycle&&!E?N.filter(i=>st(g,i)):N,oa=N.length-rt.length,sn=f.group?.by??null,Go=i=>{let y=new URLSearchParams(m);for(let le of["sort","filter","group","q","by","with","past","archived",...q.map(Rt=>Rt.edgeKind)])y.delete(le);let $=Tr(i);for(let le of["sort","filter","group","q","archived"])$[le]&&y.set(le,$[le]);![...y.keys()].some(le=>["sort","filter","group","q"].includes(le))&&(n||J||ae||ie)&&y.set("sort",""),v(y)},{principal:ot}=e,ln=Xe(l,t,{...ot?{principal:ot}:{},...e.invariantContext?{context:e.invariantContext}:{}}),Be=ln.actions.affordances.map(i=>({affordance:i,mutation:l.allMutations().find(y=>y.name===i.mutation)})).filter(i=>i.mutation!==void 0),qo=ln.actions.withheld,dn=()=>new Set(Ae.length===0?Be.map(({mutation:i})=>i.name):[]),[cn,ia]=(0,Me.useState)(()=>({kind:t,open:dn()}));cn.kind!==t&&ia({kind:t,open:dn()});let sa=i=>(cn.kind===t?cn.open:dn()).has(i),la=(i,y)=>ia($=>{let le=new Set($.open);return y?le.add(i):le.delete(i),{kind:$.kind,open:le}}),da=`begin-${(0,Me.useId)().replace(/:/g,"")}`,ca=R.words&&Ae.length===0?Object.fromEntries(an(l,t,ln.actions.affordances).map(i=>[i.mutation.name,i.arg])):{},je=Y(l,t),xt=e.views?.lookup(t,{cardinality:"one",fidelity:"glyph"}),pn=xt!==void 0&&!lt(xt)?xt:void 0,un=(f.group?.bucket??"day")==="day"?f.group?.by:void 0,gn=(f.filter??[]).map(i=>i.key),Uo=gn.filter(i=>gn.indexOf(i)===gn.lastIndexOf(i)&&/choice|boolean/.test(M.filters.find(y=>y.key===i)?.type??"")),mn=i=>{let y={...g?.computed?yt(l.schema,l.graph,i):i};un&&!String(y[un]).includes("T")&&delete y[un];for(let $ of Uo)delete y[$];return y},pa=i=>rr(g?.fields?.shape?.[i])?.type==="enum",Pt=i=>{let y=ge(g,i);if(a)return(0,h.jsxs)("li",{"data-testid":"record-row","data-graview-record":i.id,style:{minWidth:0},...Sn(i.id),children:[vn(i,y),a(i,{label:y,href:_(l.schema,t,i.id),flagged:u.has(i.id),glance:no(mn(i),g,y)})]},i.id);if(pn){let kn=qt(xt,i,l.graph),Qo=Object.fromEntries(Object.entries(mn(i)).filter(([Zo])=>!kn?.fields.has(Zo))),ha=kn?Fn(Qo,g,kn.title??y,pa):[];return(0,h.jsxs)("li",{"data-testid":"record-row","data-graview-record":i.id,style:{position:"relative",display:"flex",flexWrap:"wrap",alignItems:"baseline",columnGap:16,rowGap:2,paddingBlock:10,borderTop:"1px solid var(--graview-edge)"},...Sn(i.id),children:[vn(i,y),(0,h.jsx)("div",{style:{flex:"1 1 14rem",minWidth:0},children:(0,h.jsx)(pn,{node:i,cardinality:"one",fidelity:"glyph",mode:"fullscreen",selected:!1,...u.has(i.id)?{flagged:[i.id]}:{}})}),ha.length>0?(0,h.jsx)("span",{style:{...C,flex:"0 1 auto",minWidth:0,overflowWrap:"anywhere"},"data-testid":"record-glance",children:(0,h.jsx)(Dn,{runs:ha})}):null,(0,h.jsx)(ji,{to:_(l.schema,t,i.id),label:u.has(i.id)?`${y} \u2014 implicated in a problem`:y})]},i.id)}let $=Fn(mn(i),g,y,pa),le=$.length>0,Rt=R.words?Rr(g,i,R.words):void 0,fa=ae?void 0:ir(i,g),Lt=Fi(i,g),ya=(0,h.jsxs)(O,{to:_(l.schema,t,i.id),className:"graview-row-title",...y.length>60?{title:y}:{},children:[u.has(i.id)?(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)("span",{role:"img","aria-label":"Breaks a rule:",style:{color:"var(--graview-warn)"},children:"\u26A0"})," "]}):null,y]});return(0,h.jsxs)("li",{className:"graview-row","data-graview-record":i.id,...Sn(i.id),children:[vn(i,y),fa?(0,h.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:14,minWidth:0},children:[(0,h.jsx)(dt,{as:"thumb",file:fa}),ya]}):ya,le||Lt?(0,h.jsxs)("span",{className:"graview-row-glance",children:[(0,h.jsx)(Dn,{runs:$}),le&&Lt?" \xB7 ":null,Lt?(0,h.jsx)(Kt,{address:Lt}):null]}):null,Rt?(0,h.jsx)(nn,{why:Rt}):null]},i.id)},fn=$e(e).filter(i=>i.kind===t&&!i.hidden),ua=he?.filters,Vo=(f.filter??[]).some(i=>i.key!=="is"||i.value!=="any"),jo=!!(f.sort||f.group||f.query||Vo),_o=rt.length>=Eo||D&&jo,Oe=f.sort?M.sorts.find(i=>i.key===f.sort.by):void 0,yn=Oe?.type==="date"||Oe!==void 0&&Oe.key===ie,ga=ae&&!p.grouped&&Oe&&(Oe.about==="label"||Oe.type==="text"||yn)?i=>{let y=Oe.about==="label"?ge(g,i):i[Oe.key];if(typeof y!="string"||y.length===0)return yn?"No date":"#";if(yn)return y.slice(0,4);let $=y.trim().charAt(0).toLocaleUpperCase();return/\p{L}/u.test($)?$:"#"}:void 0,_e=ga?Ae.reduce((i,y)=>{let $=ga(y);return i.at(-1)?.key===$?i.at(-1).nodes.push(y):i.push({key:$,nodes:[y]}),i},[]):void 0,ma=p.grouped&&sn?V.flatMap(i=>ra(i)?[]:i.nodes):_e&&_e.length>1?_e.flatMap(i=>i.nodes):Ae,hn=(0,Me.useMemo)(()=>ma.map(i=>i.id),[ma.map(i=>i.id).join(`
6
6
  `)]),Ee=Nr(hn),wn=(0,Me.useId)(),gt=(ot?l.permittedMutations(ot):l.permittedMutations()).some(i=>{let y=i.subject?.kinds;return y!==void 0&&(y==="*"||y.includes(t))}),vn=(i,y)=>gt?(0,h.jsx)("span",{className:"graview-choose-at",children:(0,h.jsx)("input",{...Ee.boxProps(i.id,y),onPointerEnter:On,onFocus:On})}):null,Sn=i=>gt?{"data-graview-choose":i}:{},zo=(0,Me.useCallback)(i=>{Ee.choose(i),requestAnimationFrame(()=>{let y=Ee.list.current;((i[0]===void 0?null:y?.querySelector(`[data-graview-choose-box="${CSS.escape(i[0])}"]`))??y)?.focus({preventScroll:!0})})},[Ee]),it=r==="grid"?{margin:0,padding:0,listStyle:"none",display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(min(100%, 15rem), 1fr))",alignItems:"start",gap:12}:a||pn?{margin:0,padding:0,listStyle:"none",display:"grid",gap:a&&r==="list"?6:0}:void 0,Ct=it?void 0:"graview-rows",mt=i=>`list-at-${i.replace(/[^\p{L}\p{N}]/gu,"_")}`,At=q.map(i=>{let y=i.from===t?i.to:i.from,$=i.from===t?i.description:i.inverse??i.description;return{relation:i,far:y,words:$}}),Yo=new Set(At.map(i=>(i.words??"").toLowerCase()).filter((i,y,$)=>i&&$.indexOf(i)!==y));return(0,h.jsxs)(d?Bi:te,{context:e,children:[(0,h.jsxs)("div",{style:{display:"grid",gap:12},children:[(0,h.jsxs)("header",{style:{display:"grid",gap:4},children:[d?null:(0,h.jsx)(ut,{context:e}),(0,h.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",columnGap:10,rowGap:4,minWidth:0},children:[(0,h.jsx)(ce,{kind:t,brand:s,schema:l.schema,size:8}),(0,h.jsx)(oe,{context:e,children:je}),Be.length>0?(0,h.jsx)("span",{style:{marginLeft:"auto",display:"flex",flexWrap:"wrap",columnGap:14,rowGap:8},"data-testid":"beginnings-open",children:Be.map(({affordance:i,mutation:y})=>(0,h.jsx)(Ui,{name:y.name,title:y.title??y.name,panel:`${da}-${y.name}`,open:sa(y.name),onOpen:$=>la(y.name,$)},i.id))}):null]}),Ae.length>0?(0,h.jsx)(Jr,{place:"here",to:[{label:`Skip to the ${Ae.length===1?Ye(g,t):`${Ae.length} ${je.toLowerCase()}`}`,testid:"records",go:()=>{let i=document.querySelector(`[data-graview-skip-target="${CSS.escape(wn)}"]`);Nn(i?.querySelector('[data-graview-choose-box][tabindex="0"]')??i)}},...rt.length>0?[{label:"Skip to arranging them",testid:"arranging",go:()=>{let i=document.querySelector(`[data-graview-skip-target="${CSS.escape(wn)}"]`)?.parentElement?.querySelector('[role="group"][aria-label="Arrange"]');Nn(i?.querySelector('button[data-testid$="-add"], button[data-testid$="-all"]')??i)}}]:[]]}):null,o??g?.description?(0,h.jsx)("p",{style:re,children:o??g?.description}):null,At.length>0||fn.length>0?(0,h.jsxs)("p",{style:{...C,margin:0,display:"flex",flexWrap:"wrap",columnGap:18,rowGap:2},"data-testid":"kind-related",children:[At.length>0?(0,h.jsxs)("span",{"data-testid":"kind-relations",children:["Related:"," ",At.map(({relation:i,far:y,words:$},le)=>(0,h.jsxs)("span",{"data-relation":i.edgeKind,children:[le>0?(0,h.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,y==="*"?Re($??ze(i.edgeKind)):(0,h.jsx)(O,{to:`/${U(l.schema,y)}`,style:G,title:Y(l,y),children:$&&Yo.has($.toLowerCase())?`${Re($)}: ${Y(l,y).toLowerCase()}`:Re($??Y(l,y))})]},`${i.edgeKind}|${i.from}|${i.to}`))]}):null,fn.length>0?(0,h.jsxs)("span",{"data-testid":"kind-pictures",children:["Also as:"," ",fn.map((i,y)=>(0,h.jsxs)("span",{children:[y>0?(0,h.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,(0,h.jsx)(O,{to:fe(e,i),style:G,children:i.title})]},et(i)))]}):null]}):null]}),Be.length>0?(0,h.jsx)("div",{style:{display:"contents"},"data-testid":"beginnings",children:Be.map(({affordance:i,mutation:y})=>{let $=!!(ca[y.name]&&Ae.length===0);return(0,h.jsx)(Vi,{name:y.name,id:`${da}-${y.name}`,description:y.description,open:sa(y.name),onClose:()=>la(y.name,!1),children:(0,h.jsx)(Ie,{store:l,mutation:y,prefilled:i.args,open:i.open,...$?{initial:{[ca[y.name]]:R.words}}:{},...e.principal?{principal:e.principal}:{}},$?`${y.name}|${R.words}`:y.name)},i.id)})}):null,P.dropped.length>0?(0,h.jsxs)("p",{style:{...C,margin:0},"data-testid":"list-dropped",children:["This link asked for ",P.dropped.join(", "),", which ",je.toLowerCase()," cannot be arranged by; the rest is shown."]}):null,rt.length>0?(0,h.jsx)($r,{schema:l.schema,graph:l.graph,kind:t,arrangement:f,onChange:Go,kept:{shown:Ae.length,of:rt.length},noun:{one:Ye(g,t),many:je.toLowerCase()},..._o?{}:{allow:!1},...ua?{filters:ua}:{},offers:M,chips:{nodes:rt,flagged:u,...typeof c?.today=="string"?{today:c.today}:{}},query:e.framed===!0&&e.barAbove!==!0}):null,(0,h.jsx)("style",{children:_t}),gt?(0,h.jsx)("style",{children:Hr+Ki}):null,(0,h.jsx)("div",{className:"graview-list","data-graview-skip-target":wn,...gt?{...Ee.listProps,ref:Ee.list,tabIndex:-1,"data-graview-choosable":"","aria-label":Ee.chosen.length>0?`${je}, ${Ee.chosen.length} chosen`:je,role:"group"}:{},children:Ae.length===0&&R.words?(0,h.jsxs)("p",{style:re,"data-testid":"none-yet",children:["Nothing here is called \u201C",R.words,"\u201D."," ",(0,h.jsx)("span",{style:C,"data-testid":"list-searched",children:Dt(l.schema,{kinds:[t],past:E})})," ",(0,h.jsx)(O,{to:"?",style:G,children:"Show every one"})]}):Ae.length===0?(0,h.jsxs)("p",{style:re,"data-testid":"none-yet",children:[f.filter?.length||f.query?"None of them.":"None yet",!f.filter?.length&&!f.query&&Be.length>0?` \u2014 the first one starts above, with \u201C${Be[0]?.mutation.title??Be[0]?.mutation.name}\u201D.`:!f.filter?.length&&!f.query?".":"",f.filter?.length||f.query?(0,h.jsxs)(h.Fragment,{children:[" ",(0,h.jsx)(O,{to:"?",style:G,children:"Show every one"})]}):null]}):p.grouped&&sn?(0,h.jsx)("div",{style:{display:"grid",gap:"1rem"},"data-testid":"records","data-grouped":sn,children:V.map(i=>{if(!i.closed)return(0,h.jsxs)("section",{style:{display:"grid",gap:0},"data-testid":"list-group",children:[(0,h.jsxs)("h2",{className:"graview-group-head",children:[i.label," ",(0,h.jsx)("span",{children:i.nodes.length})]}),(0,h.jsx)("ul",{style:it,className:Ct,"data-graview-rows":"",children:i.nodes.map(Pt)})]},i.key||"-");let y=ra(i),$=`${w}-${mt(i.key||"none")}`;return(0,h.jsxs)("section",{style:{display:"grid",gap:0},"data-testid":"list-group","data-closed":y?"shut":"open",children:[(0,h.jsx)("h2",{className:"graview-group-head",children:(0,h.jsxs)("button",{type:"button",className:"graview-group-toggle","aria-expanded":!y,"aria-controls":$,"data-testid":"list-group-toggle",onClick:()=>Bo(aa(i.key)),children:[(0,h.jsx)("span",{"aria-hidden":"true",children:y?"\u25B8":"\u25BE"}),i.label," ",(0,h.jsxs)("span",{children:["\xB7 ",i.nodes.length]}),(0,h.jsxs)("span",{style:Di,children:[" ",i.nodes.length===1?Ye(g,t):je.toLowerCase()]})]})}),(0,h.jsx)("ul",{id:$,style:y?{...it,display:"none"}:it,className:Ct,"data-graview-rows":"",hidden:y,children:y?null:i.nodes.map(Pt)})]},i.key||"-")})}):_e&&_e.length>1?(0,h.jsxs)("div",{style:{display:"grid",gap:14},"data-testid":"records","data-sectioned":Oe?.type==="date"?"year":"letter",children:[(0,h.jsx)("nav",{"aria-label":"Jump to","data-testid":"list-index",style:{...C,display:"flex",flexWrap:"wrap",gap:Oe?.type==="date"?"0 10px":"0 4px",lineHeight:1.3},children:_e.map(i=>(0,h.jsx)("a",{href:`#${mt(i.key)}`,onClick:y=>{y.preventDefault(),document.getElementById(mt(i.key))?.scrollIntoView({block:"start"})},style:{...Se,minWidth:24,justifyContent:"center"},children:i.key},i.key))}),_e.map(i=>(0,h.jsxs)("section",{"data-testid":"list-section","aria-labelledby":mt(i.key),style:{display:"grid",gap:0},children:[(0,h.jsx)("h2",{id:mt(i.key),className:"graview-group-head",children:i.key}),(0,h.jsx)("ul",{style:it,className:Ct,"data-graview-rows":"",children:i.nodes.map(Pt)})]},i.key))]}):(0,h.jsx)("ul",{style:it,className:Ct,"data-testid":"records","data-graview-rows":"",children:Ae.map(Pt)})}),gt?(0,h.jsx)(Ir,{store:l,chosen:Ee.chosen,...ot?{principal:ot}:{},...c?{context:c}:{},anchor:Wi,of:hn.length,onChooseAll:()=>Ee.choose(hn),onClear:Ee.clear,onActed:zo}):null,oa>0?(0,h.jsxs)(O,{to:Mo(m,"filter","is:any"),style:{...G,...C,justifySelf:"start"},"data-testid":"past-link",children:["+",oa," past"]}):null,x===!1&&l.graph.count(t,{archived:!0})>0?(0,h.jsxs)(O,{to:Mo(m,"archived","true"),style:{...G,...C,justifySelf:"start"},"data-testid":"archived-link",children:["+",l.graph.count(t,{archived:!0})," archived"]}):null]}),(0,h.jsx)(tn,{context:e,withheld:qo,style:ee,testId:"withheld"})]})}var Di={position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0 0 0 0)",whiteSpace:"nowrap",border:0},Wi=()=>document.querySelector("[data-graview-choosable]")?.closest("[data-embed-content]")??null,Ki=`
7
7
  .graview-list[data-graview-choosable]{outline:none}
8
8
  .graview-list [data-graview-choose]{position:relative;padding-left:34px}
@@ -15,4 +15,4 @@ var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=gl
15
15
  .graview-list:not([data-graview-choosing]) [data-graview-choose]{padding-left:0}
16
16
  .graview-list:not([data-graview-choosing]) .graview-choose-at{display:none}
17
17
  }
18
- `;function Bi({children:e}){return(0,h.jsx)("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:40,minWidth:0},children:e})}var Gi=(e,t)=>t?{sort:{by:t,direction:"desc"}}:e?{sort:{by:"label",direction:"asc"}}:{};function qi(e,t,n){let a=$t({...e.get("sort")?{sort:e.get("sort")}:{},...e.get("filter")?{filter:e.get("filter")}:{},...e.get("group")?{group:e.get("group")}:{},...e.get("q")?{q:e.get("q")}:{},...e.get("archived")?{archived:e.get("archived")}:{}}),r=[...a.filter??[]],o=e.get("by"),d=a.group??(o?{by:o}:void 0);for(let s of n){let c=e.get(s);c&&r.push({key:s,value:c})}let l=e.get("with");return l&&r.push({key:l,value:"*"}),e.get("past")==="1"&&!r.some(s=>s.key==="is")&&r.push({key:"is",value:"any"}),$n({...a.sort?{sort:a.sort}:{},...a.query?{query:a.query}:{},...r.length>0?{filter:r}:{},...d?{group:d}:{},...a.archived!==void 0?{archived:a.archived}:{}},t)}function Mo(e,t,n){let a=new URLSearchParams(e);return a.set(t,n),a.delete("past"),`?${a.toString()}`}function Ui({name:e,title:t,panel:n,open:a,onOpen:r}){return(0,h.jsxs)("button",{type:"button","data-testid":`act-open-${e}`,"data-graview-act":e,"aria-expanded":a,"aria-controls":n,onClick:()=>{r(!a),a||requestAnimationFrame(()=>document.getElementById(n)?.querySelector("input, select, textarea, button")?.focus())},style:{...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,h.jsx)("span",{"aria-hidden":"true",style:{marginRight:6},children:a?"\u2212":"+"}),t]})}function Vi({name:e,id:t,description:n,open:a,onClose:r,children:o}){return(0,h.jsxs)("div",{"data-testid":`act-${e}`,id:t,hidden:!a,onKeyDown:d=>{d.key==="Escape"&&(d.preventDefault(),r(),document.querySelector(`[aria-controls="${t}"]`)?.focus())},style:a?{display:"grid",gap:12,padding:"4px 0 12px"}:void 0,children:[n?(0,h.jsx)("p",{style:{...C,margin:0,maxWidth:"58ch"},children:n}):null,o]})}function ji({to:e,label:t}){let n=(0,Me.useRef)(null);return Fr(n),(0,h.jsx)(O,{ref:n,to:e,"aria-label":t,style:{position:"absolute",inset:0,borderRadius:6}})}var at=H(He(),1);var bt=H(He(),1);var I=H(B(),1);function ea({context:e}){let{store:t,brand:n,invariantContext:a,principal:r}=e;Q(t);let o=t.violations(a),d=t.allInvariants(),l=Ht(t,o),s=za(t.schema,d);return(0,I.jsxs)(te,{context:e,children:[(0,I.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,I.jsx)(oe,{context:e,children:o.length===0?"All rules hold":"What is broken"}),(0,I.jsx)("p",{style:re,"data-testid":"problems-count",children:o.length===0?"Every declared rule is satisfied by what is here.":Ca(o)})]}),(0,I.jsx)(Ro,{context:e}),l.map((c,m)=>{let v=c.nodeIds[0],w=v?t.graph.getNode(v):void 0;return(0,I.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,I.jsx)(rn,{violation:c,schema:t.schema,...n?{brand:n}:{}}),w?(0,I.jsxs)("p",{style:{margin:0,display:"inline-flex",alignItems:"center",gap:8},children:[(0,I.jsx)(ce,{kind:w.kind,brand:n,schema:t.schema,size:7}),(0,I.jsx)(O,{to:_(t.schema,w.kind,w.id),style:G,children:ge(t.schema.tryDefinition(w.kind),w)})]}):null,c.line?(0,I.jsx)(rn,{violation:c,schema:t.schema,...n?{brand:n}:{}}):null,(0,I.jsx)(on,{store:t,repairs:c.repairs,...r?{principal:r}:{}})]},m)}),d.length>0?(0,I.jsxs)("section",{style:{...ee,display:"grid",gap:12},"data-testid":"rules",children:[(0,I.jsx)("h2",{style:X,children:"The rules"}),(0,I.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:10},children:d.map(c=>{let m=o.filter(g=>g.invariant===c.name).length,v=s.get(c.name),w=c.label??c.name;return(0,I.jsxs)("li",{"data-graview-rule":c.name,style:{display:"grid",gap:2},children:[(0,I.jsxs)("span",{style:{display:"flex",flexWrap:"wrap",alignItems:"baseline",columnGap:12,rowGap:2},children:[v?(0,I.jsx)(It,{line:v,schema:t.schema,...n?{brand:n}:{},style:{flex:"1 1 18rem"}}):(0,I.jsx)("span",{style:{flex:"1 1 18rem",fontWeight:550},children:w}),(0,I.jsx)("span",{style:{...C,color:m>0?"var(--graview-warn)":"var(--graview-ink-faint)"},children:m===0?"holds":`broken in ${m} ${m===1?"place":"places"}`})]}),v&&w.trim().length>0?(0,I.jsx)("span",{style:C,children:w}):null]},c.name)})})]}):null]})}function rn({violation:e,schema:t,brand:n}){if(!e.line)return(0,I.jsx)("p",{style:{margin:0,color:"var(--graview-warn)",fontWeight:550},children:e.message});let a=Qa(e),r=Ya(e);return r?(0,I.jsxs)("div",{style:{display:"grid",gap:4},"data-testid":"problem-line",children:[(0,I.jsx)("p",{style:{margin:0,color:"var(--graview-warn)",fontWeight:550},"data-testid":"problem-says",children:r}),a?(0,I.jsx)("span",{style:C,children:a}):null,(0,I.jsxs)("details",{"data-testid":"problem-judged",style:C,children:[(0,I.jsx)("summary",{style:{cursor:"pointer",width:"fit-content",minHeight:24},children:"How it is judged"}),(0,I.jsx)(It,{line:e.line,schema:t,...n?{brand:n}:{},lead:"none"})]})]}):(0,I.jsxs)("div",{style:{display:"grid",gap:2},"data-testid":"problem-line",children:[(0,I.jsx)(It,{line:e.line,schema:t,...n?{brand:n}:{},lead:"none",style:{color:"var(--graview-warn)"}}),a?(0,I.jsx)("span",{style:C,children:a}):null]})}function on({store:e,repairs:t,principal:n}){let[a,r]=(0,bt.useState)(null),[o,d]=(0,bt.useState)(null),l=(0,bt.useRef)([]);if(t.length===0)return null;let s=a===null?null:t[a],c=s&&(s.missing??[]).length>0?e.allMutations().find(m=>m.name===s.mutation):void 0;return(0,I.jsxs)("div",{style:{display:"grid",gap:10},"data-testid":"repairs",children:[(0,I.jsx)("div",{style:{display:"flex",gap:8,flexWrap:"wrap"},children:t.map((m,v)=>{let w=(m.missing??[]).length>0,g=e.permits({name:m.mutation,args:{...m.args}},n);return g.ok?(0,I.jsx)("button",{ref:x=>{l.current[v]=x},type:"button","data-graview-repair":m.mutation,"data-graview-asks":w||void 0,"aria-expanded":w?a===v:void 0,onClick:()=>{if(d(null),w){r(a===v?null:v);return}r(null);try{e.apply({name:m.mutation,args:{...m.args}},n?{author:n}:{})}catch(x){d(Ft(e.schema,e.allMutations(),x))}},style:ke,children:w?`${m.label} \u2026`:m.label},v):(0,I.jsxs)("p",{"data-testid":"withheld","data-withheld":g.refusal.wouldNeed.join(",")||"nobody",style:{...C,margin:0},children:[(0,I.jsx)("s",{children:m.label})," \u2014 ",g.refusal.message]},v)})}),c&&s?(0,I.jsx)(Ie,{store:e,mutation:c,prefilled:{...s.args},only:s.missing??[],label:s.label,autoFocus:!0,onDone:()=>{let m=a;r(null),requestAnimationFrame(()=>{let v=m===null?null:l.current[m];if(v?.isConnected){v.focus();return}let w=document.querySelector("[data-graview-page-title]")??document.querySelector("main h1, main h2");w&&(w.hasAttribute("tabindex")||(w.tabIndex=-1),w.focus())})},...n?{principal:n}:{}}):null,s&&!c&&(s.missing??[]).length>0?(0,I.jsxs)("p",{"data-testid":"refused",role:"alert",style:{margin:0,color:"var(--graview-warn)",fontSize:Hn},children:["\u201C",s.label,"\u201D names ",s.mutation,", which this app does not declare."]}):null,o?(0,I.jsx)("p",{"data-testid":"refused",role:"alert",style:{margin:0,color:"var(--graview-warn)",fontSize:Hn},children:o}):null]})}var ta=H(He(),1);var Ve=H(B(),1);function No({store:e,link:t,principal:n}){let[a,r]=(0,ta.useState)(!1),[o,d]=(0,ta.useState)(null),l=tr(t);return(0,Ve.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6,flexWrap:"wrap"},children:[(0,Ve.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,Ve.jsxs)("span",{style:{...C,display:"inline-flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,Ve.jsx)("span",{children:l}),(0,Ve.jsx)("button",{type:"button",style:{...ke,padding:"4px 10px"},onClick:()=>{try{e.apply({name:Aa,args:{kind:t.edge.kind,from:t.edge.from,to:t.edge.to}},n?{author:n}:{}),r(!1)}catch(s){d(Ft(e.schema,e.allMutations(),s))}},children:"Keep this link"}),o?(0,Ve.jsx)("span",{role:"alert",children:o}):null]}):null]})}var ye=H(B(),1);function Ho({nodeId:e,node:t,field:n,inPlace:a,labelStyle:r=we}){return n.files?(0,ye.jsx)(dt,{as:"field",read:!a,nodeId:e,field:n.key,label:n.label,files:n.files,labelStyle:r,style:{gap:4}}):n.long?(0,ye.jsx)(Er,{nodeId:e,field:n.key,label:n.label,value:n.value,markdown:n.markdown,style:{gridColumn:"1 / -1",gap:4},labelStyle:r,valueStyle:{lineHeight:1.6}}):(0,ye.jsxs)("div",{style:{display:"grid",gap:2,minWidth:0,alignContent:"start"},children:[(0,ye.jsx)("dt",{style:r,children:n.label}),(0,ye.jsx)("dd",{style:{margin:0,overflowWrap:"anywhere",minWidth:0},children:n.linked?(0,ye.jsx)(pr,{relation:n.linked.relation,refs:n.linked.refs,...a?{nodeId:e,field:n.key}:{}}):n.app?(0,ye.jsx)(Kt,{address:n.app,as:"record",...a?{nodeId:e,field:n.key}:{}}):n.href?(0,ye.jsx)(Mr,{href:n.href,field:n.key,value:n.value,stored:n.stored,...a?{nodeId:e}:{}}):a?(0,ye.jsxs)(ye.Fragment,{children:[(0,ye.jsx)(Bt,{nodeId:e,field:n.key,value:n.value,stored:n.stored}),n.repeats?(0,ye.jsx)(ur,{nodeId:e,field:n.key,start:t?.[n.key],value:t?.[`${n.key}Repeat`],label:`${n.label} repeats`}):null]}):n.value})]})}var k=H(B(),1),_i=[];function na({context:e}){let{store:t,brand:n,principal:a,invariantContext:r}=e;Q(t);let o=de()!==null,d=Ue(),l=decodeURIComponent(d.id??""),s=po(t,l,{...a?{principal:a}:{},...r?{context:r}:{}}),c=Ht(t,s?.violations??_i),[m,v]=(0,at.useState)(null),[w,g]=(0,at.useState)(!1),[x,N]=(0,at.useState)(null),q=(0,at.useRef)(null),u=(0,at.useRef)(null),M=gr({flow:"both",letters:!0}),j=p=>{(q.current?.parentElement?.querySelector(`[data-affordance="${p.replace(/["\\]/g,"\\$&")}"]`)??q.current)?.focus()};if(!s)return(0,k.jsx)(te,{context:e,children:(0,k.jsx)(oe,{context:e,children:"Nothing lives at this address."})});let P=t.graph.getNode(l),D=t.schema.tryDefinition(s.kind),ae=D?.describe&&P?Xa(D,P):null,ie=[...t.log.all()].filter(p=>!Mt(p)&&(p.writes.includes(l)||p.reads.includes(l))).slice(-8).reverse(),he=t.log.all().find(p=>!Mt(p)&&p.undoes===void 0&&p.primitives.some(L=>L.op==="add-node"&&L.node.id===l)),J=s.actions.affordances.filter(p=>p.provider!=="invariant"),ue=J.filter(p=>p.destructive||p.setsAside),Ke=w||ue.length<2?J:J.filter(p=>!ue.includes(p)),Pe=e.views?.lookup(s.kind,{cardinality:"one",fidelity:"full"}),Ce=Pe!==void 0&&!lt(Pe)?Pe:void 0,S=Ce&&P?qt(Pe,P,t.graph):void 0,f=S?s.fields.filter(p=>!S.fields.has(p.key)):s.fields,R=S?s.links.flatMap(p=>{let L=p.targets.filter(V=>!S.records.has(V.id));return L.length>0?[{...p,targets:L}]:[]}):s.links,E=Ce!==void 0&&Ua(Pe),ne=o&&or(D).length>0,z=$e(e).filter(p=>!p.hidden&&(p.kind===s.kind||p.across===s.kind));return(0,k.jsxs)(te,{context:e,children:[(0,k.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,k.jsx)(ut,{context:e}),(0,k.jsx)(oe,{context:e,children:o&&P?.label===s.label?(0,k.jsx)(Bt,{nodeId:l,field:"label",value:s.label,said:s.label}):s.label}),ae&&ae!==s.label?(0,k.jsx)("p",{style:re,children:ae}):null,he?.lineage?(0,k.jsxs)("p",{style:{...C,margin:0},"data-testid":"record-lineage",children:["Made by ",ht(he,a,{graph:t.graph,schema:t.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}}),", ",An(he.lineage)]}):null,(0,k.jsx)(Yt,{context:e,stop:`#focus=${encodeURIComponent(l)}`,style:{...qe,...C},"data-testid":"spatial-link"}),o&&P?(0,k.jsx)(Tn,{choices:[{on:"changed",record:l},{on:"act",record:l},{on:"reaches",kind:s.kind,condition:"",record:l}],label:"Notify me when this changes",testId:"record-notify",style:{...ke,...C,justifySelf:"start"}}):null,z.length>0?(0,k.jsxs)("p",{style:{...C,margin:0},"data-testid":"seen-in",children:["Seen in:"," ",z.map((p,L)=>(0,k.jsxs)("span",{children:[L>0?(0,k.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,(0,k.jsx)(O,{to:fe(e,p),style:G,children:p.title})," ",(0,k.jsx)(Yt,{context:e,stop:`#view=${encodeURIComponent(p.as)}`,style:{...G,...C,display:"inline-block",minWidth:24,textAlign:"center"},title:`${p.title}, in the scene`,label:`${p.title}, in the scene`,children:(0,k.jsx)("span",{"aria-hidden":"true",children:"\u2197"})})]},et(p)))]}):null]}),P&&xa(P)?(0,k.jsx)(Yi,{context:e,id:l,kind:s.kind}):null,P&&Ra(t,l)?(0,k.jsx)(zi,{context:e,id:l,kind:s.kind}):null,Ce&&P?(0,k.jsx)("section",{"data-testid":"record-view",style:{display:"grid",minWidth:0},children:(0,k.jsx)(Dr,{children:(0,k.jsx)(Zt,{when:Ot(Pe),children:(0,k.jsx)(Ce,{node:P,cardinality:"one",fidelity:"full",mode:"fullscreen",selected:!1,...s.violations.length>0?{flagged:[l]}:{}})})})}):null,s.violations.length>0?(0,k.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((p,L)=>(0,k.jsxs)("div",{style:{display:"grid",gap:8},children:[(0,k.jsx)(rn,{violation:p,schema:t.schema,...n?{brand:n}:{}}),(0,k.jsx)(on,{store:t,repairs:uo(s.actions,p.repairs),...a?{principal:a}:{}})]},L))}):null,!E&&(f.length>0||ne)?(0,k.jsxs)("section",{style:{...ee,display:"grid",gap:14},"data-testid":"record-fields",children:[(0,k.jsx)("h2",{style:X,children:"The facts"}),er(D,f).map((p,L)=>{let V=(0,k.jsx)("dl",{style:{margin:0,display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(200px, 1fr))",gap:"14px 24px"},children:p.fields.map(se=>(0,k.jsx)(Ho,{nodeId:l,node:P,field:se,inPlace:o},se.key))});return p.title?(0,k.jsxs)("section",{style:{display:"grid",gap:10,minWidth:0},children:[(0,k.jsx)("h3",{"data-graview-field-group":p.title,style:{...X,fontSize:"inherit"},children:p.title}),V]},L):(0,k.jsx)("div",{children:V},L)}),ne?(0,k.jsx)(dt,{as:"unfilled",nodeId:l,skip:[...S?.fields??[]],labelStyle:we,style:{gap:4}}):null]}):null,(E?[]:R).map(p=>(0,k.jsxs)("section",{style:{...ee,display:"grid",gap:10},children:[(0,k.jsx)("p",{style:we,children:to(t,p)}),p.description?(0,k.jsx)("h2",{style:X,children:Re(p.description)}):(0,k.jsxs)("h2",{style:X,"aria-label":ze(p.edgeKind),children:[p.direction==="in"?"\u2190 ":"\u2192 ",ze(p.edgeKind)]}),(0,k.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"6px 18px"},children:p.targets.map(L=>{let V=nr(t,p.direction==="in"?{kind:p.edgeKind,from:L.id,to:l}:{kind:p.edgeKind,from:l,to:L.id});return(0,k.jsxs)("li",{style:{display:"inline-flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,k.jsx)(ce,{kind:L.kind,brand:n,schema:t.schema,size:7}),(0,k.jsxs)(O,{to:_(t.schema,L.kind,L.id),style:G,children:[L.label,L.apart?(0,k.jsxs)("span",{style:C,children:[" \xB7 ",L.apart]}):null]}),V?.provisional?(0,k.jsx)(No,{store:t,link:V,...a?{principal:a}:{}}):null]},L.id)})}),(p.direction==="out"&&t.schema.edge(p.edgeKind)?.cardinality==="one"?[]:[...new Set(p.targets.map(L=>L.kind))]).map(L=>(0,k.jsx)(O,{to:`/${U(t.schema,L)}?${encodeURIComponent(p.edgeKind)}=${encodeURIComponent(l)}`,style:{...qe,...C},"data-testid":"related-all",children:(0,k.jsxs)(Qe,{children:["Sort and filter ",p.description??`these ${Y(t,L).toLowerCase()}`,p.targets.some(V=>V.kind!==L)?` (${Y(t,L).toLowerCase()})`:""]})},L))]},`${p.edgeKind}|${p.direction}|${p.description??""}`)),!E&&(J.length>0||s.actions.withheld.length>0)?(0,k.jsxs)("section",{style:{...ee,display:"grid",gap:14},"data-testid":"record-actions",children:[(0,k.jsx)("h2",{style:X,ref:q,tabIndex:-1,children:"What can be done"}),(0,k.jsxs)("div",{role:"toolbar","aria-label":"What can be done",...M,style:{display:"flex",flexWrap:"wrap",gap:8},children:[Ke.map(p=>{let L=m===p.id;return(0,k.jsx)("button",{type:"button","data-affordance":p.id,"data-rank":p.rank,"data-graview-act":p.mutation,[Ln]:"",autoFocus:w&&p===ue[0],"aria-expanded":L,onClick:()=>v(L?null:p.id),style:{...ke,...L?{borderColor:"var(--graview-accent)",color:"var(--graview-accent)"}:{}},children:p.label},p.id)}),Ke.length<J.length?(0,k.jsxs)("button",{type:"button","aria-expanded":!1,onClick:()=>g(!0),style:{...ke,...C},"data-testid":"record-actions-more",[Ln]:"",children:["Show ",J.length-Ke.length," more"]}):null]}),J.map(p=>{if(m!==p.id)return null;let L=t.allMutations().find(V=>V.name===p.mutation);return L?(0,k.jsxs)("div",{ref:u,onKeyDown:V=>{if(V.key!=="Escape"||V.defaultPrevented)return;V.preventDefault(),v(null);let se=p.id;requestAnimationFrame(()=>j(se))},style:{display:"grid",gap:10,padding:18,border:"1px solid var(--graview-edge)",borderRadius:"var(--graview-radius, 12px)",background:"var(--graview-panel)"},children:[(0,k.jsx)("h3",{style:X,children:p.label}),L.description?(0,k.jsx)("p",{style:{...C,margin:0},children:L.description}):null,(0,k.jsx)(Ie,{store:t,mutation:L,prefilled:p.args,open:p.open,label:p.label,autoFocus:!0,onDone:()=>{v(null),N(p.mutation);let V=p.id;requestAnimationFrame(()=>j(V))},...a?{principal:a}:{}})]},p.id):null}),o&&x!==null&&m===null?(0,k.jsx)(Tn,{choices:[{on:"act",act:x,record:l},{on:"act",act:x}],label:"Notify me when someone else does this",testId:"notify-after-act",style:{...ke,...C,justifySelf:"start"}}):null,(0,k.jsx)(tn,{context:e,withheld:s.actions.withheld})]}):null,o?(0,k.jsx)(eo,{id:l,style:ee,headingStyle:X}):null,ie.length>0?(0,k.jsxs)("section",{style:{...ee,display:"grid",gap:10},"data-testid":"record-history",children:[(0,k.jsx)("h2",{style:X,children:"What has happened"}),(0,k.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},children:ie.map(p=>(0,k.jsxs)("li",{style:C,children:[(0,k.jsx)("span",{style:{color:"var(--graview-ink)"},children:p.intent}),p.lineage?(0,k.jsxs)("span",{"data-graview-lineage":"",children:[" \xB7 ",An(p.lineage)]}):null," \u2014 ",ht(p,a,{graph:t.graph,schema:t.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}})]},p.id))})]}):null]})}function zi({context:e,id:t,kind:n}){let{store:a,principal:r}=e,o={name:`allow-tidying-${n}`,args:{id:t}},d=a.allMutations().some(l=>l.name===o.name)&&a.permits(o,r).ok;return(0,k.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,k.jsxs)("p",{style:{margin:0,flex:"1 1 16rem"},children:[(0,k.jsx)("strong",{children:"Left alone."})," Nothing automated changes it; tidying passes it by."]}),d?(0,k.jsx)("button",{type:"button",style:ke,"data-testid":"allow-tidying",onClick:()=>a.apply(o,r?{author:r}:{}),children:"Allow tidying again"}):null]})}function Yi({context:e,id:t,kind:n}){let{store:a,principal:r}=e,o={name:`unarchive-${n}`,args:{id:t}},d=a.allMutations().some(c=>c.name===o.name)&&a.permits(o,r).ok,l=[...a.log.all()].reverse().find(c=>!Mt(c)&&c.mergedInto!==void 0&&c.writes.includes(t)),s=l?.mergedInto!==void 0?a.graph.getNode(l.mergedInto):void 0;return(0,k.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,k.jsxs)("p",{style:{margin:0,flex:"1 1 16rem"},children:[(0,k.jsx)("strong",{children:"Archived."})," Kept with its ties and history, and out of lists, counts and rules.",s?(0,k.jsxs)(k.Fragment,{children:[" ","Merged into ",(0,k.jsx)(O,{to:_(a.schema,s.kind,s.id),style:G,children:ge(a.schema.tryDefinition(s.kind),s)}),"."]}):null]}),d?(0,k.jsx)("button",{type:"button",style:ke,"data-testid":"bring-it-back",onClick:()=>a.apply(o,r?{author:r}:{}),children:"Bring it back"}):null]})}var b=H(B(),1),Qi=Nt(()=>(__graviewPreload(import.meta.url,["./chunk.I7QIHN66.js","./chunk.PMJUGHW4.js","./chunk.Y4MQGEUS.js","./chunk.UGFDSE37.js","./chunk.EXEZBZGW.js","./chunk.X7N3JUO4.js","./chunk.NTLHEHOM.js","./chunk.GNBN3BK7.js","./chunk.XTMOFRHL.js","./chunk.NLBIX7LH.js","./chunk.GACKGEUY.js","./chunk.UJRBOUGC.js","./chunk.DWPU56S5.js","./chunk.ZH4NWRWB.js","./chunk.2GLJH253.js","./chunk.GUMJEVVP.js","./chunk.4VW6THJF.js","./chunk.SAHNXAV3.js","./chunk.DHAK6PPX.js","./chunk.YDL5BSTG.js","./chunk.DUWYF7BO.js","./chunk.UGJSMNVO.js","./chunk.NR5ODXMO.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.TPG6IY4M.js","./chunk.NFDLCUCC.js","./chunk.X7JMJSLU.js","./chunk.PPRSGM64.js","./chunk.5Y3Q7ONN.js","./chunk.KTFUVR4V.js","./chunk.GZHZLJBF.js","./chunk.RQBEQYB2.js","./chunk.OJGHDWI6.js","./chunk.6VAFNCR4.js","./chunk.N4M54YK6.js","./chunk.KVJFY7N5.js","./chunk.DPHTUTOS.js","./chunk.2UIUMG23.js","./chunk.KA44WNB4.js","./chunk.SDO3U72B.js","./chunk.4TJOS4C7.js","./chunk.2AZTW66C.js","./chunk.AJZBJBMO.js"]),import("./chunk.YLWON7X3.js")).then(e=>({default:e.DraftPage}))),Zi={kind:"human"};function Xi({list:e,store:t}){let n=new Set(e.members.map(d=>d.kind)),a=e.total-e.members.length,r=n.size===1?[...n][0]:void 0;if(!r)return(0,b.jsx)("p",{className:"graview-spec-text graview-spec-more",children:`and ${a} more`});let o=Ge(t.schema,r).toLowerCase();return(0,b.jsx)("p",{className:"graview-spec-text graview-spec-more",children:(0,b.jsx)(O,{to:`/${U(t.schema,r)}`,className:"graview-spec-link graview-spec-see-all","data-testid":"see-all",children:e.total===t.graph.nodesOfKind(r).length?`See all ${ft(e.total)} ${o}`:`${ft(a)} more \xB7 all ${o}`})})}function Ji({context:e,children:t}){let n=De(),a=e.store.schema,r=Ze("/").replace(/\/$/,""),o=(0,K.useMemo)(()=>({href:d=>`${r}${_(a,d.kind,d.id)}`,go:d=>n(_(a,d.kind,d.id)),more:d=>(0,b.jsx)(Xi,{list:d,store:e.store})}),[r,a,n,e.store]);return(0,b.jsx)(Gt.Provider,{value:o,children:(0,b.jsx)(Wr.Provider,{value:(e.titleLevel??(e.framed&&!e.barAbove?1:2))-1,children:t})})}var Fo=(0,K.createContext)(void 0);function es({steering:e}){let t=me(),n=De(),a=`${t.pathname}${t.search}`;return(0,K.useLayoutEffect)(()=>e.at(a),[a,e]),(0,K.useLayoutEffect)(()=>{let r=d=>{d!==a&&n(d)};e.go.current=r;let o=e.pending?.current;return o!==void 0&&(e.pending.current=void 0,r(o)),()=>{e.go.current===r&&(e.go.current=void 0)}},[a,n,e]),null}function ts({context:e,to:t}){let{pathname:n}=me(),a=de(),r=(t??a)?.sayWhere,o=ns(e,n);return(0,K.useEffect)(()=>(r?.(o),()=>r?.(null)),[r,o]),null}function ns(e,t){let[n="",a,r]=t.split("/").filter(Boolean).map(d=>{try{return decodeURIComponent(d)}catch{return d}});if(r!==void 0)return"#";if(n==="places"&&a!==void 0){if(a===Pn)return"#overview=1";let d=e.views?.places().find(l=>l.as===a);return d?`#focus=${encodeURIComponent(Ne(d.kind))}&view=${encodeURIComponent(d.as)}`:"#"}let o=ve(e.store.schema,n);return o?`#focus=${encodeURIComponent(a??Ne(o))}`:"#"}function as({onNavigate:e,path:t}){let n=me(),a=Wn(),r=De(),o=n.hash&&!n.hash.includes("=")?n.hash:"",d=`${n.pathname}${n.search}${o}`,l=(0,K.useRef)(e);l.current=e;let s=(0,K.useRef)(null);(0,K.useEffect)(()=>{let m=s.current;s.current=d,m!==null&&(d===m&&a!=="PUSH"||l.current?.(d,a==="POP"?"pop":a==="REPLACE"?"replace":"push"))},[n.key]);let c=(0,K.useRef)(t);return(0,K.useEffect)(()=>{t===void 0||t===c.current||(c.current=t,t!==d&&r(t))},[t]),null}function Io({context:e,registry:t,page:n}){let a=Ue(),r=ve(e.store.schema,a.slug??""),o=n==="list"?Jn:na,l=(r?t?.lookup(r,n):void 0)??o;return(0,b.jsx)(l,{context:e})}function rs({context:e,registry:t,children:n}){let a=(0,K.useRef)(null);return Va(a),(0,b.jsx)("div",{ref:a,"data-graview-face":"pages",style:{display:"contents"},children:(0,b.jsx)(bo,{context:e,registry:t,root:a,children:(0,b.jsx)(Po,{context:e,root:a,children:n})})})}function os(e){return e instanceof HTMLElement?e.isContentEditable||e.tagName==="TEXTAREA"||e.tagName==="SELECT"?!0:e.tagName==="INPUT"&&!["button","submit","reset","checkbox","radio","image","file","color","range"].includes(e.type):!1}function is(){let{pathname:e}=me(),t=Wn(),n=(0,K.useRef)(null);(0,K.useLayoutEffect)(()=>{if(t!=="POP"){for(let o=n.current?.parentElement;o;o=o.parentElement){let{overflowY:d}=getComputedStyle(o);if((d==="auto"||d==="scroll")&&o.scrollHeight>o.clientHeight){o.scrollTop=0;return}}window.scrollTo(0,0)}},[e]);let a=(0,K.useRef)(e),r=(0,K.useRef)(!1);return(0,K.useEffect)(()=>{if(!r.current&&e===a.current)return;r.current=!0;let o=document.activeElement;if(os(o))return;let d=n.current?.closest("main")??document.querySelector("main"),s=n.current?.closest("[data-graview-face]")?.querySelector("[data-graview-page-title]")??d?.querySelector("h1, h2")??null??d??null;s&&(s.hasAttribute("tabindex")||s.setAttribute("tabindex","-1"),s.focus({preventScroll:!0}))},[e]),(0,b.jsx)("span",{ref:n,hidden:!0,"data-graview-scroll-reset":""})}function Do({context:e,children:t}){let n=De(),a=Ze("/").replace(/\/$/,""),r=(0,K.useContext)(Fo),o=(0,K.useMemo)(()=>{let d=(s,c)=>{if("record"in s){let m=e.store.graph.getNode(s.record);return m?Vt(_(e.store.schema,m.kind,s.record),{section:c?.section}):void 0}if("place"in s){let m=e.views?.places().find(v=>v.as===s.place);return m?Vt(fe(e,m),c):void 0}return e.store.schema.tryDefinition(s.list)?Vt(`/${U(e.store.schema,s.list)}`,c):void 0},l=s=>{s!==void 0&&n(s)};return{record:(s,c)=>l(d({record:s},c)),place:(s,c)=>l(d({place:s},c)),list:(s,c)=>l(d({list:s},c)),draft:()=>n("/~draft"),href:(s,c)=>{let m=r===!1?void 0:d(s,c);if(m!==void 0)return r?r(m):`${a}${m}`}}},[e,n,a,r]);return(0,b.jsx)(qa.Provider,{value:o,children:t})}function ss(){let{pathname:e,search:t,hash:n}=me();return(0,K.useEffect)(()=>{let a=decodeURIComponent(n.replace(/^#/,""));if(!(!a||a.includes("=")))return wo(a)},[e,t,n]),null}function ls({context:e,Home:t}){let n=me(),a=e.views,r=n.key==="default"&&!(a&&Ba(a));(0,K.useEffect)(()=>{a&&Ga(a)},[a]);let o=r?$a(e.views?.arrangement?.()?.first,e.store.schema,e.views?.places()??[]):void 0,d=o?.to==="place"?fe(e,o.place):o?.to==="kind"?`/${U(e.store.schema,o.kind)}`:void 0;return d?(0,b.jsx)(Kn,{to:d,replace:!0}):(0,b.jsx)(t,{context:e})}function Wo({context:e,registry:t}){let n=t?.lookupSurface("shell"),a=n!==void 0,r=a&&(t?.without().has("bar")??!1),o=a&&!r&&!e.embedded?{...e,barAbove:!0}:e,d=N=>n===void 0?(0,b.jsx)(Qt,{context:e,children:N}):r?(0,b.jsx)(n,{context:e,children:N}):(0,b.jsx)(Qt,{context:e,children:(0,b.jsx)(n,{context:o,children:N})}),l=t?.lookupSurface("home")??Zn,s=t?.lookupSurface("problems")??ea,c=a?{...o,framed:!0}:e,[m,v]=(0,K.useState)(null),w=(0,K.useMemo)(()=>({context:c,registry:t}),[c,t]),g=(0,K.useMemo)(()=>({onFind:v,find:!(t?.without().has("find")??!1),places:!(t?.without().has("places")??!1)}),[t]),x=(0,b.jsx)(Gn.Provider,{value:w,children:(0,b.jsx)(Do,{context:e,children:(0,b.jsx)(rs,{context:e,registry:t,children:d((0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(ar,{face:"pages"}),(0,b.jsxs)(Ji,{context:c,children:[(0,b.jsx)(is,{}),(0,b.jsx)(ss,{}),(0,b.jsxs)(io,{children:[(t?.routes()??[]).map(({path:N,component:q})=>(0,b.jsx)(Le,{path:N,element:(0,b.jsx)(q,{context:c})},N)),(0,b.jsx)(Le,{path:"/",element:(0,b.jsx)(ls,{context:c,Home:l})}),(0,b.jsx)(Le,{path:"/problems",element:(0,b.jsx)(s,{context:c})}),(0,b.jsx)(Le,{path:"/~draft",element:(0,b.jsx)(K.Suspense,{fallback:null,children:(0,b.jsx)(Qi,{context:c})})}),(0,b.jsx)(Le,{path:"/search",element:(0,b.jsx)(Xn,{context:c})}),(0,b.jsx)(Le,{path:"/map",element:(0,b.jsx)(Qn,{context:c})}),(0,b.jsx)(Le,{path:"/places",element:(0,b.jsx)(zn,{context:c})}),$e(c).some(N=>N.as===Pn)?null:(0,b.jsx)(Le,{path:Ea,element:(0,b.jsx)(Kn,{to:"/",replace:!0})}),(0,b.jsx)(Le,{path:"/places/:as",element:(0,b.jsx)(Yn,{context:c})}),(0,b.jsx)(Le,{path:"/:slug",element:(0,b.jsx)(Io,{context:c,registry:t,page:"list"})}),(0,b.jsx)(Le,{path:"/:slug/:id",element:(0,b.jsx)(Io,{context:c,registry:t,page:"record"})})]})]})]}))})})});return e.embedded||!a||r?x:(0,b.jsx)(co.Provider,{value:g,children:(0,b.jsx)(Sr.Provider,{value:m,children:x})})}var ds=()=>typeof document>"u"?null:document.body;function cs({context:e,registry:t,basename:n,initialPath:a,onNavigate:r,path:o,steering:d,firstLook:l,hrefOf:s}){let[c,m]=(0,K.useState)(void 0),v=c!==void 0&&c.from===e.principal?{...e,principal:c.seat}:e;(0,K.useState)(()=>v.views?Gr(v.views,v.store.schema,En(v.brand,v.store.schema)):void 0);let w=de();wa({reader:v.locale??w?.locale,app:v.brand?.locale??v.app?.brand?.locale,readerTimeZone:v.timeZone??w?.timeZone,appTimeZone:v.brand?.timeZone??v.app?.brand?.timeZone});let g=v.principal??Zi,x=Fa(v.store,g,v.history),q=(x.past&&x.live===v.store?x.past.store:v.store).seenBy(g),u=q===v.store?v:{...v,store:q};Da(v.store,v.principal);let M=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(as,{onNavigate:r,path:o}),d?(0,b.jsx)(es,{steering:d}):null,u.presence||w?(0,b.jsx)(ts,{context:u,to:w}):null,(0,b.jsx)(Wo,{context:u,...t?{registry:t}:{}}),l?(0,b.jsx)(qr,{firstLook:l,root:ds,app:En(v.brand,v.store.schema)}):null]}),j=u.views?(0,b.jsxs)(Wa,{store:u.store,views:u.views,...u.principal?{principal:u.principal}:{},...u.brand?{brand:u.brand}:{},...u.locale?{locale:u.locale}:{},...u.timeZone?{timeZone:u.timeZone}:{},...u.settings?{settings:u.settings}:{},...u.presence&&!w?{presence:u.presence}:{},...u.people?{people:u.people}:{},...u.seats?{seats:u.seats}:{},onSeat:ie=>w?w.takeSeat(ie):m({from:e.principal,seat:ie}),...u.onKeepLens?{onKeepLens:u.onKeepLens}:{},...u.ai?{ai:u.ai}:{},...u.subscriptions?{subscriptions:u.subscriptions}:{},...u.signIn?{signIn:u.signIn}:{},resolveApp:u.resolveApp??w?.resolveApp,linkedRecords:u.linkedRecords??w?.linkedRecords,...u.app?{app:u.app}:{},...u.menuSections?{menuSections:u.menuSections}:{},children:[M,(0,b.jsx)(Do,{context:u,children:(0,b.jsx)(vo,{context:u})})]}):M,P=(0,b.jsx)(Ia.Provider,{value:x,children:j}),D=u.files?(0,b.jsx)(Ha.Provider,{value:u.files,children:P}):P,ae=s===void 0?D:(0,b.jsx)(Fo.Provider,{value:s,children:D});if(a!==void 0){let ie=n===void 0?a:`${n.replace(/\/$/,"")}${a}`;return(0,b.jsx)(oo,{initialEntries:[ie],...n===void 0?{}:{basename:n},children:ae})}return(0,b.jsx)(so,{...n===void 0?{}:{basename:n},children:ae})}export{ci as a,cs as b};
18
+ `;function Bi({children:e}){return(0,h.jsx)("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:40,minWidth:0},children:e})}var Gi=(e,t)=>t?{sort:{by:t,direction:"desc"}}:e?{sort:{by:"label",direction:"asc"}}:{};function qi(e,t,n){let a=$t({...e.get("sort")?{sort:e.get("sort")}:{},...e.get("filter")?{filter:e.get("filter")}:{},...e.get("group")?{group:e.get("group")}:{},...e.get("q")?{q:e.get("q")}:{},...e.get("archived")?{archived:e.get("archived")}:{}}),r=[...a.filter??[]],o=e.get("by"),d=a.group??(o?{by:o}:void 0);for(let s of n){let c=e.get(s);c&&r.push({key:s,value:c})}let l=e.get("with");return l&&r.push({key:l,value:"*"}),e.get("past")==="1"&&!r.some(s=>s.key==="is")&&r.push({key:"is",value:"any"}),$n({...a.sort?{sort:a.sort}:{},...a.query?{query:a.query}:{},...r.length>0?{filter:r}:{},...d?{group:d}:{},...a.archived!==void 0?{archived:a.archived}:{}},t)}function Mo(e,t,n){let a=new URLSearchParams(e);return a.set(t,n),a.delete("past"),`?${a.toString()}`}function Ui({name:e,title:t,panel:n,open:a,onOpen:r}){return(0,h.jsxs)("button",{type:"button","data-testid":`act-open-${e}`,"data-graview-act":e,"aria-expanded":a,"aria-controls":n,onClick:()=>{r(!a),a||requestAnimationFrame(()=>document.getElementById(n)?.querySelector("input, select, textarea, button")?.focus())},style:{...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,h.jsx)("span",{"aria-hidden":"true",style:{marginRight:6},children:a?"\u2212":"+"}),t]})}function Vi({name:e,id:t,description:n,open:a,onClose:r,children:o}){return(0,h.jsxs)("div",{"data-testid":`act-${e}`,id:t,hidden:!a,onKeyDown:d=>{d.key==="Escape"&&(d.preventDefault(),r(),document.querySelector(`[aria-controls="${t}"]`)?.focus())},style:a?{display:"grid",gap:12,padding:"4px 0 12px"}:void 0,children:[n?(0,h.jsx)("p",{style:{...C,margin:0,maxWidth:"58ch"},children:n}):null,o]})}function ji({to:e,label:t}){let n=(0,Me.useRef)(null);return Fr(n),(0,h.jsx)(O,{ref:n,to:e,"aria-label":t,style:{position:"absolute",inset:0,borderRadius:6}})}var at=H(He(),1);var bt=H(He(),1);var I=H(B(),1);function ea({context:e}){let{store:t,brand:n,invariantContext:a,principal:r}=e;Q(t);let o=t.violations(a),d=t.allInvariants(),l=Ht(t,o),s=za(t.schema,d);return(0,I.jsxs)(te,{context:e,children:[(0,I.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,I.jsx)(oe,{context:e,children:o.length===0?"All rules hold":"What is broken"}),(0,I.jsx)("p",{style:re,"data-testid":"problems-count",children:o.length===0?"Every declared rule is satisfied by what is here.":Ca(o)})]}),(0,I.jsx)(Ro,{context:e}),l.map((c,m)=>{let v=c.nodeIds[0],w=v?t.graph.getNode(v):void 0;return(0,I.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,I.jsx)(rn,{violation:c,schema:t.schema,...n?{brand:n}:{}}),w?(0,I.jsxs)("p",{style:{margin:0,display:"inline-flex",alignItems:"center",gap:8},children:[(0,I.jsx)(ce,{kind:w.kind,brand:n,schema:t.schema,size:7}),(0,I.jsx)(O,{to:_(t.schema,w.kind,w.id),style:G,children:ge(t.schema.tryDefinition(w.kind),w)})]}):null,c.line?(0,I.jsx)(rn,{violation:c,schema:t.schema,...n?{brand:n}:{}}):null,(0,I.jsx)(on,{store:t,repairs:c.repairs,...r?{principal:r}:{}})]},m)}),d.length>0?(0,I.jsxs)("section",{style:{...ee,display:"grid",gap:12},"data-testid":"rules",children:[(0,I.jsx)("h2",{style:X,children:"The rules"}),(0,I.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:10},children:d.map(c=>{let m=o.filter(g=>g.invariant===c.name).length,v=s.get(c.name),w=c.label??c.name;return(0,I.jsxs)("li",{"data-graview-rule":c.name,style:{display:"grid",gap:2},children:[(0,I.jsxs)("span",{style:{display:"flex",flexWrap:"wrap",alignItems:"baseline",columnGap:12,rowGap:2},children:[v?(0,I.jsx)(It,{line:v,schema:t.schema,...n?{brand:n}:{},style:{flex:"1 1 18rem"}}):(0,I.jsx)("span",{style:{flex:"1 1 18rem",fontWeight:550},children:w}),(0,I.jsx)("span",{style:{...C,color:m>0?"var(--graview-warn)":"var(--graview-ink-faint)"},children:m===0?"holds":`broken in ${m} ${m===1?"place":"places"}`})]}),v&&w.trim().length>0?(0,I.jsx)("span",{style:C,children:w}):null]},c.name)})})]}):null]})}function rn({violation:e,schema:t,brand:n}){if(!e.line)return(0,I.jsx)("p",{style:{margin:0,color:"var(--graview-warn)",fontWeight:550},children:e.message});let a=Qa(e),r=Ya(e);return r?(0,I.jsxs)("div",{style:{display:"grid",gap:4},"data-testid":"problem-line",children:[(0,I.jsx)("p",{style:{margin:0,color:"var(--graview-warn)",fontWeight:550},"data-testid":"problem-says",children:r}),a?(0,I.jsx)("span",{style:C,children:a}):null,(0,I.jsxs)("details",{"data-testid":"problem-judged",style:C,children:[(0,I.jsx)("summary",{style:{cursor:"pointer",width:"fit-content",minHeight:24},children:"How it is judged"}),(0,I.jsx)(It,{line:e.line,schema:t,...n?{brand:n}:{},lead:"none"})]})]}):(0,I.jsxs)("div",{style:{display:"grid",gap:2},"data-testid":"problem-line",children:[(0,I.jsx)(It,{line:e.line,schema:t,...n?{brand:n}:{},lead:"none",style:{color:"var(--graview-warn)"}}),a?(0,I.jsx)("span",{style:C,children:a}):null]})}function on({store:e,repairs:t,principal:n}){let[a,r]=(0,bt.useState)(null),[o,d]=(0,bt.useState)(null),l=(0,bt.useRef)([]);if(t.length===0)return null;let s=a===null?null:t[a],c=s&&(s.missing??[]).length>0?e.allMutations().find(m=>m.name===s.mutation):void 0;return(0,I.jsxs)("div",{style:{display:"grid",gap:10},"data-testid":"repairs",children:[(0,I.jsx)("div",{style:{display:"flex",gap:8,flexWrap:"wrap"},children:t.map((m,v)=>{let w=(m.missing??[]).length>0,g=e.permits({name:m.mutation,args:{...m.args}},n);return g.ok?(0,I.jsx)("button",{ref:x=>{l.current[v]=x},type:"button","data-graview-repair":m.mutation,"data-graview-asks":w||void 0,"aria-expanded":w?a===v:void 0,onClick:()=>{if(d(null),w){r(a===v?null:v);return}r(null);try{e.apply({name:m.mutation,args:{...m.args}},n?{author:n}:{})}catch(x){d(Ft(e.schema,e.allMutations(),x))}},style:ke,children:w?`${m.label} \u2026`:m.label},v):(0,I.jsxs)("p",{"data-testid":"withheld","data-withheld":g.refusal.wouldNeed.join(",")||"nobody",style:{...C,margin:0},children:[(0,I.jsx)("s",{children:m.label})," \u2014 ",g.refusal.message]},v)})}),c&&s?(0,I.jsx)(Ie,{store:e,mutation:c,prefilled:{...s.args},only:s.missing??[],label:s.label,autoFocus:!0,onDone:()=>{let m=a;r(null),requestAnimationFrame(()=>{let v=m===null?null:l.current[m];if(v?.isConnected){v.focus();return}let w=document.querySelector("[data-graview-page-title]")??document.querySelector("main h1, main h2");w&&(w.hasAttribute("tabindex")||(w.tabIndex=-1),w.focus())})},...n?{principal:n}:{}}):null,s&&!c&&(s.missing??[]).length>0?(0,I.jsxs)("p",{"data-testid":"refused",role:"alert",style:{margin:0,color:"var(--graview-warn)",fontSize:Hn},children:["\u201C",s.label,"\u201D names ",s.mutation,", which this app does not declare."]}):null,o?(0,I.jsx)("p",{"data-testid":"refused",role:"alert",style:{margin:0,color:"var(--graview-warn)",fontSize:Hn},children:o}):null]})}var ta=H(He(),1);var Ve=H(B(),1);function No({store:e,link:t,principal:n}){let[a,r]=(0,ta.useState)(!1),[o,d]=(0,ta.useState)(null),l=tr(t);return(0,Ve.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6,flexWrap:"wrap"},children:[(0,Ve.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,Ve.jsxs)("span",{style:{...C,display:"inline-flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,Ve.jsx)("span",{children:l}),(0,Ve.jsx)("button",{type:"button",style:{...ke,padding:"4px 10px"},onClick:()=>{try{e.apply({name:Aa,args:{kind:t.edge.kind,from:t.edge.from,to:t.edge.to}},n?{author:n}:{}),r(!1)}catch(s){d(Ft(e.schema,e.allMutations(),s))}},children:"Keep this link"}),o?(0,Ve.jsx)("span",{role:"alert",children:o}):null]}):null]})}var ye=H(B(),1);function Ho({nodeId:e,node:t,field:n,inPlace:a,labelStyle:r=we}){return n.files?(0,ye.jsx)(dt,{as:"field",read:!a,nodeId:e,field:n.key,label:n.label,files:n.files,labelStyle:r,style:{gap:4}}):n.long?(0,ye.jsx)(Er,{nodeId:e,field:n.key,label:n.label,value:n.value,markdown:n.markdown,style:{gridColumn:"1 / -1",gap:4},labelStyle:r,valueStyle:{lineHeight:1.6}}):(0,ye.jsxs)("div",{style:{display:"grid",gap:2,minWidth:0,alignContent:"start"},children:[(0,ye.jsx)("dt",{style:r,children:n.label}),(0,ye.jsx)("dd",{style:{margin:0,overflowWrap:"anywhere",minWidth:0},children:n.linked?(0,ye.jsx)(pr,{relation:n.linked.relation,refs:n.linked.refs,...a?{nodeId:e,field:n.key}:{}}):n.app?(0,ye.jsx)(Kt,{address:n.app,as:"record",...a?{nodeId:e,field:n.key}:{}}):n.href?(0,ye.jsx)(Mr,{href:n.href,field:n.key,value:n.value,stored:n.stored,...a?{nodeId:e}:{}}):a?(0,ye.jsxs)(ye.Fragment,{children:[(0,ye.jsx)(Bt,{nodeId:e,field:n.key,value:n.value,stored:n.stored}),n.repeats?(0,ye.jsx)(ur,{nodeId:e,field:n.key,start:t?.[n.key],value:t?.[`${n.key}Repeat`],label:`${n.label} repeats`}):null]}):n.value})]})}var k=H(B(),1),_i=[];function na({context:e}){let{store:t,brand:n,principal:a,invariantContext:r}=e;Q(t);let o=de()!==null,d=Ue(),l=decodeURIComponent(d.id??""),s=po(t,l,{...a?{principal:a}:{},...r?{context:r}:{}}),c=Ht(t,s?.violations??_i),[m,v]=(0,at.useState)(null),[w,g]=(0,at.useState)(!1),[x,N]=(0,at.useState)(null),q=(0,at.useRef)(null),u=(0,at.useRef)(null),M=gr({flow:"both",letters:!0}),j=p=>{(q.current?.parentElement?.querySelector(`[data-affordance="${p.replace(/["\\]/g,"\\$&")}"]`)??q.current)?.focus()};if(!s)return(0,k.jsx)(te,{context:e,children:(0,k.jsx)(oe,{context:e,children:"Nothing lives at this address."})});let P=t.graph.getNode(l),D=t.schema.tryDefinition(s.kind),ae=D?.describe&&P?Xa(D,P):null,ie=[...t.log.all()].filter(p=>!Mt(p)&&(p.writes.includes(l)||p.reads.includes(l))).slice(-8).reverse(),he=t.log.all().find(p=>!Mt(p)&&p.undoes===void 0&&p.primitives.some(L=>L.op==="add-node"&&L.node.id===l)),J=s.actions.affordances.filter(p=>p.provider!=="invariant"),ue=J.filter(p=>p.destructive||p.setsAside),Ke=w||ue.length<2?J:J.filter(p=>!ue.includes(p)),Pe=e.views?.lookup(s.kind,{cardinality:"one",fidelity:"full"}),Ce=Pe!==void 0&&!lt(Pe)?Pe:void 0,S=Ce&&P?qt(Pe,P,t.graph):void 0,f=S?s.fields.filter(p=>!S.fields.has(p.key)):s.fields,R=S?s.links.flatMap(p=>{let L=p.targets.filter(V=>!S.records.has(V.id));return L.length>0?[{...p,targets:L}]:[]}):s.links,E=Ce!==void 0&&Ua(Pe),ne=o&&or(D).length>0,z=$e(e).filter(p=>!p.hidden&&(p.kind===s.kind||p.across===s.kind));return(0,k.jsxs)(te,{context:e,children:[(0,k.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,k.jsx)(ut,{context:e}),(0,k.jsx)(oe,{context:e,children:o&&P?.label===s.label?(0,k.jsx)(Bt,{nodeId:l,field:"label",value:s.label,said:s.label}):s.label}),ae&&ae!==s.label?(0,k.jsx)("p",{style:re,children:ae}):null,he?.lineage?(0,k.jsxs)("p",{style:{...C,margin:0},"data-testid":"record-lineage",children:["Made by ",ht(he,a,{graph:t.graph,schema:t.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}}),", ",An(he.lineage)]}):null,(0,k.jsx)(Yt,{context:e,stop:`#focus=${encodeURIComponent(l)}`,style:{...qe,...C},"data-testid":"spatial-link"}),o&&P?(0,k.jsx)(Tn,{choices:[{on:"changed",record:l},{on:"act",record:l},{on:"reaches",kind:s.kind,condition:"",record:l}],label:"Notify me when this changes",testId:"record-notify",style:{...ke,...C,justifySelf:"start"}}):null,z.length>0?(0,k.jsxs)("p",{style:{...C,margin:0},"data-testid":"seen-in",children:["Seen in:"," ",z.map((p,L)=>(0,k.jsxs)("span",{children:[L>0?(0,k.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,(0,k.jsx)(O,{to:fe(e,p),style:G,children:p.title})," ",(0,k.jsx)(Yt,{context:e,stop:`#view=${encodeURIComponent(p.as)}`,style:{...G,...C,display:"inline-block",minWidth:24,textAlign:"center"},title:`${p.title}, in the scene`,label:`${p.title}, in the scene`,children:(0,k.jsx)("span",{"aria-hidden":"true",children:"\u2197"})})]},et(p)))]}):null]}),P&&xa(P)?(0,k.jsx)(Yi,{context:e,id:l,kind:s.kind}):null,P&&Ra(t,l)?(0,k.jsx)(zi,{context:e,id:l,kind:s.kind}):null,Ce&&P?(0,k.jsx)("section",{"data-testid":"record-view",style:{display:"grid",minWidth:0},children:(0,k.jsx)(Dr,{children:(0,k.jsx)(Zt,{when:Ot(Pe),children:(0,k.jsx)(Ce,{node:P,cardinality:"one",fidelity:"full",mode:"fullscreen",selected:!1,...s.violations.length>0?{flagged:[l]}:{}})})})}):null,s.violations.length>0?(0,k.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((p,L)=>(0,k.jsxs)("div",{style:{display:"grid",gap:8},children:[(0,k.jsx)(rn,{violation:p,schema:t.schema,...n?{brand:n}:{}}),(0,k.jsx)(on,{store:t,repairs:uo(s.actions,p.repairs),...a?{principal:a}:{}})]},L))}):null,!E&&(f.length>0||ne)?(0,k.jsxs)("section",{style:{...ee,display:"grid",gap:14},"data-testid":"record-fields",children:[(0,k.jsx)("h2",{style:X,children:"The facts"}),er(D,f).map((p,L)=>{let V=(0,k.jsx)("dl",{style:{margin:0,display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(200px, 1fr))",gap:"14px 24px"},children:p.fields.map(se=>(0,k.jsx)(Ho,{nodeId:l,node:P,field:se,inPlace:o},se.key))});return p.title?(0,k.jsxs)("section",{style:{display:"grid",gap:10,minWidth:0},children:[(0,k.jsx)("h3",{"data-graview-field-group":p.title,style:{...X,fontSize:"inherit"},children:p.title}),V]},L):(0,k.jsx)("div",{children:V},L)}),ne?(0,k.jsx)(dt,{as:"unfilled",nodeId:l,skip:[...S?.fields??[]],labelStyle:we,style:{gap:4}}):null]}):null,(E?[]:R).map(p=>(0,k.jsxs)("section",{style:{...ee,display:"grid",gap:10},children:[(0,k.jsx)("p",{style:we,children:to(t,p)}),p.description?(0,k.jsx)("h2",{style:X,children:Re(p.description)}):(0,k.jsxs)("h2",{style:X,"aria-label":ze(p.edgeKind),children:[p.direction==="in"?"\u2190 ":"\u2192 ",ze(p.edgeKind)]}),(0,k.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"6px 18px"},children:p.targets.map(L=>{let V=nr(t,p.direction==="in"?{kind:p.edgeKind,from:L.id,to:l}:{kind:p.edgeKind,from:l,to:L.id});return(0,k.jsxs)("li",{style:{display:"inline-flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,k.jsx)(ce,{kind:L.kind,brand:n,schema:t.schema,size:7}),(0,k.jsxs)(O,{to:_(t.schema,L.kind,L.id),style:G,children:[L.label,L.apart?(0,k.jsxs)("span",{style:C,children:[" \xB7 ",L.apart]}):null]}),V?.provisional?(0,k.jsx)(No,{store:t,link:V,...a?{principal:a}:{}}):null]},L.id)})}),(p.direction==="out"&&t.schema.edge(p.edgeKind)?.cardinality==="one"?[]:[...new Set(p.targets.map(L=>L.kind))]).map(L=>(0,k.jsx)(O,{to:`/${U(t.schema,L)}?${encodeURIComponent(p.edgeKind)}=${encodeURIComponent(l)}`,style:{...qe,...C},"data-testid":"related-all",children:(0,k.jsxs)(Qe,{children:["Sort and filter ",p.description??`these ${Y(t,L).toLowerCase()}`,p.targets.some(V=>V.kind!==L)?` (${Y(t,L).toLowerCase()})`:""]})},L))]},`${p.edgeKind}|${p.direction}|${p.description??""}`)),!E&&(J.length>0||s.actions.withheld.length>0)?(0,k.jsxs)("section",{style:{...ee,display:"grid",gap:14},"data-testid":"record-actions",children:[(0,k.jsx)("h2",{style:X,ref:q,tabIndex:-1,children:"What can be done"}),(0,k.jsxs)("div",{role:"toolbar","aria-label":"What can be done",...M,style:{display:"flex",flexWrap:"wrap",gap:8},children:[Ke.map(p=>{let L=m===p.id;return(0,k.jsx)("button",{type:"button","data-affordance":p.id,"data-rank":p.rank,"data-graview-act":p.mutation,[Ln]:"",autoFocus:w&&p===ue[0],"aria-expanded":L,onClick:()=>v(L?null:p.id),style:{...ke,...L?{borderColor:"var(--graview-accent)",color:"var(--graview-accent)"}:{}},children:p.label},p.id)}),Ke.length<J.length?(0,k.jsxs)("button",{type:"button","aria-expanded":!1,onClick:()=>g(!0),style:{...ke,...C},"data-testid":"record-actions-more",[Ln]:"",children:["Show ",J.length-Ke.length," more"]}):null]}),J.map(p=>{if(m!==p.id)return null;let L=t.allMutations().find(V=>V.name===p.mutation);return L?(0,k.jsxs)("div",{ref:u,onKeyDown:V=>{if(V.key!=="Escape"||V.defaultPrevented)return;V.preventDefault(),v(null);let se=p.id;requestAnimationFrame(()=>j(se))},style:{display:"grid",gap:10,padding:18,border:"1px solid var(--graview-edge)",borderRadius:"var(--graview-radius, 12px)",background:"var(--graview-panel)"},children:[(0,k.jsx)("h3",{style:X,children:p.label}),L.description?(0,k.jsx)("p",{style:{...C,margin:0},children:L.description}):null,(0,k.jsx)(Ie,{store:t,mutation:L,prefilled:p.args,open:p.open,label:p.label,autoFocus:!0,onDone:()=>{v(null),N(p.mutation);let V=p.id;requestAnimationFrame(()=>j(V))},...a?{principal:a}:{}})]},p.id):null}),o&&x!==null&&m===null?(0,k.jsx)(Tn,{choices:[{on:"act",act:x,record:l},{on:"act",act:x}],label:"Notify me when someone else does this",testId:"notify-after-act",style:{...ke,...C,justifySelf:"start"}}):null,(0,k.jsx)(tn,{context:e,withheld:s.actions.withheld})]}):null,o?(0,k.jsx)(eo,{id:l,style:ee,headingStyle:X}):null,ie.length>0?(0,k.jsxs)("section",{style:{...ee,display:"grid",gap:10},"data-testid":"record-history",children:[(0,k.jsx)("h2",{style:X,children:"What has happened"}),(0,k.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},children:ie.map(p=>(0,k.jsxs)("li",{style:C,children:[(0,k.jsx)("span",{style:{color:"var(--graview-ink)"},children:p.intent}),p.lineage?(0,k.jsxs)("span",{"data-graview-lineage":"",children:[" \xB7 ",An(p.lineage)]}):null," \u2014 ",ht(p,a,{graph:t.graph,schema:t.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}})]},p.id))})]}):null]})}function zi({context:e,id:t,kind:n}){let{store:a,principal:r}=e,o={name:`allow-tidying-${n}`,args:{id:t}},d=a.allMutations().some(l=>l.name===o.name)&&a.permits(o,r).ok;return(0,k.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,k.jsxs)("p",{style:{margin:0,flex:"1 1 16rem"},children:[(0,k.jsx)("strong",{children:"Left alone."})," Nothing automated changes it; tidying passes it by."]}),d?(0,k.jsx)("button",{type:"button",style:ke,"data-testid":"allow-tidying",onClick:()=>a.apply(o,r?{author:r}:{}),children:"Allow tidying again"}):null]})}function Yi({context:e,id:t,kind:n}){let{store:a,principal:r}=e,o={name:`unarchive-${n}`,args:{id:t}},d=a.allMutations().some(c=>c.name===o.name)&&a.permits(o,r).ok,l=[...a.log.all()].reverse().find(c=>!Mt(c)&&c.mergedInto!==void 0&&c.writes.includes(t)),s=l?.mergedInto!==void 0?a.graph.getNode(l.mergedInto):void 0;return(0,k.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,k.jsxs)("p",{style:{margin:0,flex:"1 1 16rem"},children:[(0,k.jsx)("strong",{children:"Archived."})," Kept with its ties and history, and out of lists, counts and rules.",s?(0,k.jsxs)(k.Fragment,{children:[" ","Merged into ",(0,k.jsx)(O,{to:_(a.schema,s.kind,s.id),style:G,children:ge(a.schema.tryDefinition(s.kind),s)}),"."]}):null]}),d?(0,k.jsx)("button",{type:"button",style:ke,"data-testid":"bring-it-back",onClick:()=>a.apply(o,r?{author:r}:{}),children:"Bring it back"}):null]})}var b=H(B(),1),Qi=Nt(()=>(__graviewPreload(import.meta.url,["./chunk.7MJGZHTS.js","./chunk.BJR6E2CT.js","./chunk.VSWEKNKS.js","./chunk.UGFDSE37.js","./chunk.SGJSJGSR.js","./chunk.2OXXGN7C.js","./chunk.Q4KNNJFL.js","./chunk.BH365UJ5.js","./chunk.6EHE26ZS.js","./chunk.N2S3TMBC.js","./chunk.7JW5SHRR.js","./chunk.4SEY7VWZ.js","./chunk.IVHPJUFM.js","./chunk.D53IGR45.js","./chunk.MJ4XTNTL.js","./chunk.AP22NNIM.js","./chunk.SPZVEQC5.js","./chunk.FNK2ZZ5E.js","./chunk.RSR2M7ZO.js","./chunk.EM5CGFNB.js","./chunk.N2S45SSL.js","./chunk.AGVFW6WC.js","./chunk.SIVMZNHZ.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.NQDGUIUQ.js","./chunk.DTRNDSMS.js","./chunk.3EW6L5DY.js","./chunk.AVDXG57A.js","./chunk.LD6S2FL5.js","./chunk.TABIRLQS.js","./chunk.GZHZLJBF.js","./chunk.FOYVTN5B.js","./chunk.OJGHDWI6.js","./chunk.OTF3NNTI.js","./chunk.A7HMVWMG.js","./chunk.GRLPNTUW.js","./chunk.EJAVIZ7Y.js","./chunk.423SZS7C.js","./chunk.TM6JVVGW.js","./chunk.SDO3U72B.js","./chunk.PFEKS3KO.js","./chunk.2AZTW66C.js","./chunk.AJZBJBMO.js"]),import("./chunk.4K7I7WYF.js")).then(e=>({default:e.DraftPage}))),Zi={kind:"human"};function Xi({list:e,store:t}){let n=new Set(e.members.map(d=>d.kind)),a=e.total-e.members.length,r=n.size===1?[...n][0]:void 0;if(!r)return(0,b.jsx)("p",{className:"graview-spec-text graview-spec-more",children:`and ${a} more`});let o=Ge(t.schema,r).toLowerCase();return(0,b.jsx)("p",{className:"graview-spec-text graview-spec-more",children:(0,b.jsx)(O,{to:`/${U(t.schema,r)}`,className:"graview-spec-link graview-spec-see-all","data-testid":"see-all",children:e.total===t.graph.nodesOfKind(r).length?`See all ${ft(e.total)} ${o}`:`${ft(a)} more \xB7 all ${o}`})})}function Ji({context:e,children:t}){let n=De(),a=e.store.schema,r=Ze("/").replace(/\/$/,""),o=(0,K.useMemo)(()=>({href:d=>`${r}${_(a,d.kind,d.id)}`,go:d=>n(_(a,d.kind,d.id)),more:d=>(0,b.jsx)(Xi,{list:d,store:e.store})}),[r,a,n,e.store]);return(0,b.jsx)(Gt.Provider,{value:o,children:(0,b.jsx)(Wr.Provider,{value:(e.titleLevel??(e.framed&&!e.barAbove?1:2))-1,children:t})})}var Fo=(0,K.createContext)(void 0);function es({steering:e}){let t=me(),n=De(),a=`${t.pathname}${t.search}`;return(0,K.useLayoutEffect)(()=>e.at(a),[a,e]),(0,K.useLayoutEffect)(()=>{let r=d=>{d!==a&&n(d)};e.go.current=r;let o=e.pending?.current;return o!==void 0&&(e.pending.current=void 0,r(o)),()=>{e.go.current===r&&(e.go.current=void 0)}},[a,n,e]),null}function ts({context:e,to:t}){let{pathname:n}=me(),a=de(),r=(t??a)?.sayWhere,o=ns(e,n);return(0,K.useEffect)(()=>(r?.(o),()=>r?.(null)),[r,o]),null}function ns(e,t){let[n="",a,r]=t.split("/").filter(Boolean).map(d=>{try{return decodeURIComponent(d)}catch{return d}});if(r!==void 0)return"#";if(n==="places"&&a!==void 0){if(a===Pn)return"#overview=1";let d=e.views?.places().find(l=>l.as===a);return d?`#focus=${encodeURIComponent(Ne(d.kind))}&view=${encodeURIComponent(d.as)}`:"#"}let o=ve(e.store.schema,n);return o?`#focus=${encodeURIComponent(a??Ne(o))}`:"#"}function as({onNavigate:e,path:t}){let n=me(),a=Wn(),r=De(),o=n.hash&&!n.hash.includes("=")?n.hash:"",d=`${n.pathname}${n.search}${o}`,l=(0,K.useRef)(e);l.current=e;let s=(0,K.useRef)(null);(0,K.useEffect)(()=>{let m=s.current;s.current=d,m!==null&&(d===m&&a!=="PUSH"||l.current?.(d,a==="POP"?"pop":a==="REPLACE"?"replace":"push"))},[n.key]);let c=(0,K.useRef)(t);return(0,K.useEffect)(()=>{t===void 0||t===c.current||(c.current=t,t!==d&&r(t))},[t]),null}function Io({context:e,registry:t,page:n}){let a=Ue(),r=ve(e.store.schema,a.slug??""),o=n==="list"?Jn:na,l=(r?t?.lookup(r,n):void 0)??o;return(0,b.jsx)(l,{context:e})}function rs({context:e,registry:t,children:n}){let a=(0,K.useRef)(null);return Va(a),(0,b.jsx)("div",{ref:a,"data-graview-face":"pages",style:{display:"contents"},children:(0,b.jsx)(bo,{context:e,registry:t,root:a,children:(0,b.jsx)(Po,{context:e,root:a,children:n})})})}function os(e){return e instanceof HTMLElement?e.isContentEditable||e.tagName==="TEXTAREA"||e.tagName==="SELECT"?!0:e.tagName==="INPUT"&&!["button","submit","reset","checkbox","radio","image","file","color","range"].includes(e.type):!1}function is(){let{pathname:e}=me(),t=Wn(),n=(0,K.useRef)(null);(0,K.useLayoutEffect)(()=>{if(t!=="POP"){for(let o=n.current?.parentElement;o;o=o.parentElement){let{overflowY:d}=getComputedStyle(o);if((d==="auto"||d==="scroll")&&o.scrollHeight>o.clientHeight){o.scrollTop=0;return}}window.scrollTo(0,0)}},[e]);let a=(0,K.useRef)(e),r=(0,K.useRef)(!1);return(0,K.useEffect)(()=>{if(!r.current&&e===a.current)return;r.current=!0;let o=document.activeElement;if(os(o))return;let d=n.current?.closest("main")??document.querySelector("main"),s=n.current?.closest("[data-graview-face]")?.querySelector("[data-graview-page-title]")??d?.querySelector("h1, h2")??null??d??null;s&&(s.hasAttribute("tabindex")||s.setAttribute("tabindex","-1"),s.focus({preventScroll:!0}))},[e]),(0,b.jsx)("span",{ref:n,hidden:!0,"data-graview-scroll-reset":""})}function Do({context:e,children:t}){let n=De(),a=Ze("/").replace(/\/$/,""),r=(0,K.useContext)(Fo),o=(0,K.useMemo)(()=>{let d=(s,c)=>{if("record"in s){let m=e.store.graph.getNode(s.record);return m?Vt(_(e.store.schema,m.kind,s.record),{section:c?.section}):void 0}if("place"in s){let m=e.views?.places().find(v=>v.as===s.place);return m?Vt(fe(e,m),c):void 0}return e.store.schema.tryDefinition(s.list)?Vt(`/${U(e.store.schema,s.list)}`,c):void 0},l=s=>{s!==void 0&&n(s)};return{record:(s,c)=>l(d({record:s},c)),place:(s,c)=>l(d({place:s},c)),list:(s,c)=>l(d({list:s},c)),draft:()=>n("/~draft"),href:(s,c)=>{let m=r===!1?void 0:d(s,c);if(m!==void 0)return r?r(m):`${a}${m}`}}},[e,n,a,r]);return(0,b.jsx)(qa.Provider,{value:o,children:t})}function ss(){let{pathname:e,search:t,hash:n}=me();return(0,K.useEffect)(()=>{let a=decodeURIComponent(n.replace(/^#/,""));if(!(!a||a.includes("=")))return wo(a)},[e,t,n]),null}function ls({context:e,Home:t}){let n=me(),a=e.views,r=n.key==="default"&&!(a&&Ba(a));(0,K.useEffect)(()=>{a&&Ga(a)},[a]);let o=r?$a(e.views?.arrangement?.()?.first,e.store.schema,e.views?.places()??[]):void 0,d=o?.to==="place"?fe(e,o.place):o?.to==="kind"?`/${U(e.store.schema,o.kind)}`:void 0;return d?(0,b.jsx)(Kn,{to:d,replace:!0}):(0,b.jsx)(t,{context:e})}function Wo({context:e,registry:t}){let n=t?.lookupSurface("shell"),a=n!==void 0,r=a&&(t?.without().has("bar")??!1),o=a&&!r&&!e.embedded?{...e,barAbove:!0}:e,d=N=>n===void 0?(0,b.jsx)(Qt,{context:e,children:N}):r?(0,b.jsx)(n,{context:e,children:N}):(0,b.jsx)(Qt,{context:e,children:(0,b.jsx)(n,{context:o,children:N})}),l=t?.lookupSurface("home")??Zn,s=t?.lookupSurface("problems")??ea,c=a?{...o,framed:!0}:e,[m,v]=(0,K.useState)(null),w=(0,K.useMemo)(()=>({context:c,registry:t}),[c,t]),g=(0,K.useMemo)(()=>({onFind:v,find:!(t?.without().has("find")??!1),places:!(t?.without().has("places")??!1)}),[t]),x=(0,b.jsx)(Gn.Provider,{value:w,children:(0,b.jsx)(Do,{context:e,children:(0,b.jsx)(rs,{context:e,registry:t,children:d((0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(ar,{face:"pages"}),(0,b.jsxs)(Ji,{context:c,children:[(0,b.jsx)(is,{}),(0,b.jsx)(ss,{}),(0,b.jsxs)(io,{children:[(t?.routes()??[]).map(({path:N,component:q})=>(0,b.jsx)(Le,{path:N,element:(0,b.jsx)(q,{context:c})},N)),(0,b.jsx)(Le,{path:"/",element:(0,b.jsx)(ls,{context:c,Home:l})}),(0,b.jsx)(Le,{path:"/problems",element:(0,b.jsx)(s,{context:c})}),(0,b.jsx)(Le,{path:"/~draft",element:(0,b.jsx)(K.Suspense,{fallback:null,children:(0,b.jsx)(Qi,{context:c})})}),(0,b.jsx)(Le,{path:"/search",element:(0,b.jsx)(Xn,{context:c})}),(0,b.jsx)(Le,{path:"/map",element:(0,b.jsx)(Qn,{context:c})}),(0,b.jsx)(Le,{path:"/places",element:(0,b.jsx)(zn,{context:c})}),$e(c).some(N=>N.as===Pn)?null:(0,b.jsx)(Le,{path:Ea,element:(0,b.jsx)(Kn,{to:"/",replace:!0})}),(0,b.jsx)(Le,{path:"/places/:as",element:(0,b.jsx)(Yn,{context:c})}),(0,b.jsx)(Le,{path:"/:slug",element:(0,b.jsx)(Io,{context:c,registry:t,page:"list"})}),(0,b.jsx)(Le,{path:"/:slug/:id",element:(0,b.jsx)(Io,{context:c,registry:t,page:"record"})})]})]})]}))})})});return e.embedded||!a||r?x:(0,b.jsx)(co.Provider,{value:g,children:(0,b.jsx)(Sr.Provider,{value:m,children:x})})}var ds=()=>typeof document>"u"?null:document.body;function cs({context:e,registry:t,basename:n,initialPath:a,onNavigate:r,path:o,steering:d,firstLook:l,hrefOf:s}){let[c,m]=(0,K.useState)(void 0),v=c!==void 0&&c.from===e.principal?{...e,principal:c.seat}:e;(0,K.useState)(()=>v.views?Gr(v.views,v.store.schema,En(v.brand,v.store.schema)):void 0);let w=de();wa({reader:v.locale??w?.locale,app:v.brand?.locale??v.app?.brand?.locale,readerTimeZone:v.timeZone??w?.timeZone,appTimeZone:v.brand?.timeZone??v.app?.brand?.timeZone});let g=v.principal??Zi,x=Fa(v.store,g,v.history),q=(x.past&&x.live===v.store?x.past.store:v.store).seenBy(g),u=q===v.store?v:{...v,store:q};Da(v.store,v.principal);let M=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(as,{onNavigate:r,path:o}),d?(0,b.jsx)(es,{steering:d}):null,u.presence||w?(0,b.jsx)(ts,{context:u,to:w}):null,(0,b.jsx)(Wo,{context:u,...t?{registry:t}:{}}),l?(0,b.jsx)(qr,{firstLook:l,root:ds,app:En(v.brand,v.store.schema)}):null]}),j=u.views?(0,b.jsxs)(Wa,{store:u.store,views:u.views,...u.principal?{principal:u.principal}:{},...u.brand?{brand:u.brand}:{},...u.locale?{locale:u.locale}:{},...u.timeZone?{timeZone:u.timeZone}:{},...u.settings?{settings:u.settings}:{},...u.presence&&!w?{presence:u.presence}:{},...u.people?{people:u.people}:{},...u.seats?{seats:u.seats}:{},onSeat:ie=>w?w.takeSeat(ie):m({from:e.principal,seat:ie}),...u.onKeepLens?{onKeepLens:u.onKeepLens}:{},...u.ai?{ai:u.ai}:{},...u.subscriptions?{subscriptions:u.subscriptions}:{},...u.signIn?{signIn:u.signIn}:{},resolveApp:u.resolveApp??w?.resolveApp,linkedRecords:u.linkedRecords??w?.linkedRecords,...u.app?{app:u.app}:{},...u.menuSections?{menuSections:u.menuSections}:{},children:[M,(0,b.jsx)(Do,{context:u,children:(0,b.jsx)(vo,{context:u})})]}):M,P=(0,b.jsx)(Ia.Provider,{value:x,children:j}),D=u.files?(0,b.jsx)(Ha.Provider,{value:u.files,children:P}):P,ae=s===void 0?D:(0,b.jsx)(Fo.Provider,{value:s,children:D});if(a!==void 0){let ie=n===void 0?a:`${n.replace(/\/$/,"")}${a}`;return(0,b.jsx)(oo,{initialEntries:[ie],...n===void 0?{}:{basename:n},children:ae})}return(0,b.jsx)(so,{...n===void 0?{}:{basename:n},children:ae})}export{ci as a,cs as b};
@@ -1 +1 @@
1
- import{Bc as E,Cc as G,Dc as F,Fc as J,Gc as W,lb as k,pb as O,qb as P,sb as h,tb as j}from"./chunk.4TJOS4C7.js";var I=(o,a)=>{let t=o.kindOf(a);return t===void 0?void 0:o.kept?.({id:a,kind:t})};function w(o,a){return o.flatMap(t=>{if(t.op!=="patch-node")return[t];let i=I(a,t.id);if(!i||!Object.keys(t.after).some(i))return[t];let c=r=>Object.fromEntries(Object.entries(r).filter(([f])=>!i(f))),s=c(t.after);return Object.keys(s).length===0?[]:[{op:"patch-node",id:t.id,before:c(t.before),after:s}]})}function _(o,a,t){if(!F(o,a))return t;let i=J(o,a),c=r=>o.graph.getNode(r)!==void 0||E(o.log).kindOf(r)!==void 0,s={...t};if(t.diff){let r=t.diff,f=G(o.log),l=o.log.length??o.log.all().length,u=t.ops?.[0]?.seq??l,x=k(a).id,y=(e,n)=>d=>f.writerAt(e,d,n),m=(e,n)=>i.shows(e.id)?i.servedWith(e,n):void 0,b=(e,n)=>e.flatMap(d=>m(d,n(d.id))??[]),S=e=>i.shows(e.from)&&i.shows(e.to)&&!h(e,i.sees),v=(e,n)=>t.ops?y(e,l):d=>n===void 0||n.includes(d)?x:f.writerAt(e,d,l),M=r.changedNodes.flatMap(e=>{let n=m(e.before,y(e.before.id,u)),d=m(e.after,v(e.after.id,e.fields));return n&&d?[{before:n,after:d,fields:e.fields.filter(p=>p in n||p in d)}]:[]}),D=new Set(r.changedNodes.map(e=>e.after.id)),g=new Map;for(let e of t.ops?.flatMap(n=>n.primitives)??t.primitives??[])e.op!=="patch-node"||D.has(e.id)||g.set(e.id,[...g.get(e.id)??[],...Object.keys(e.after)]);let B=[...g].flatMap(([e,n])=>{let d=o.graph.getNode(e);if(!d)return[];let p=m(d,y(e,u)),N=m(d,v(e,n));return p&&N&&JSON.stringify(p)!==JSON.stringify(N)?[{before:p,after:N,fields:n}]:[]});s.diff={addedNodes:b(r.addedNodes,e=>v(e)),removedNodes:b(r.removedNodes,e=>y(e,u)),changedNodes:[...M,...B],addedEdges:r.addedEdges.filter(S),removedEdges:r.removedEdges.filter(S),touched:[...r.touched.filter(i.shows),...[...g.keys()].filter(e=>i.shows(e)&&!r.touched.includes(e))]}}if(t.ops&&(s.ops=j(t.ops,i)),t.primitives){let r=s.ops;s.primitives=r?r.flatMap(f=>f.primitives):i.timeline?O(t.primitives,i.timeline,{served:(f,l)=>i.servedWith(f,l),edgeClean:f=>!h(f,i.sees),sees:i.sees},k(a).id):j([{id:"",seq:0,batch:"",author:{kind:"system"},intent:"",mutation:null,primitives:t.primitives,reads:[],writes:[],at:""}],i)[0].primitives}return i.kept&&s.primitives&&(s.primitives=w(s.primitives,i)),t.reads&&(s.reads=t.reads.filter(r=>i.shows(r)&&c(r))),t.writes&&(s.writes=t.writes.filter(i.shows)),t.intent!==void 0&&h(t.intent,i.sees)&&(s.intent=P),t.violationsAfter&&Object.assign(s,A?A(o,W(o,a),!!t.ops,s.primitives??[]):{introduces:[],resolves:[],violationsAfter:[]}),s}var A,z=o=>void(A=o);export{_ as a,z as b};
1
+ import{Lc as E,Mc as G,Nc as F,Pc as J,Qc as W,mb as k,qb as O,rb as P,tb as h,ub as j}from"./chunk.PFEKS3KO.js";var I=(o,a)=>{let t=o.kindOf(a);return t===void 0?void 0:o.kept?.({id:a,kind:t})};function w(o,a){return o.flatMap(t=>{if(t.op!=="patch-node")return[t];let i=I(a,t.id);if(!i||!Object.keys(t.after).some(i))return[t];let c=r=>Object.fromEntries(Object.entries(r).filter(([f])=>!i(f))),s=c(t.after);return Object.keys(s).length===0?[]:[{op:"patch-node",id:t.id,before:c(t.before),after:s}]})}function _(o,a,t){if(!F(o,a))return t;let i=J(o,a),c=r=>o.graph.getNode(r)!==void 0||E(o.log).kindOf(r)!==void 0,s={...t};if(t.diff){let r=t.diff,f=G(o.log),l=o.log.length??o.log.all().length,u=t.ops?.[0]?.seq??l,x=k(a).id,y=(e,n)=>d=>f.writerAt(e,d,n),m=(e,n)=>i.shows(e.id)?i.servedWith(e,n):void 0,b=(e,n)=>e.flatMap(d=>m(d,n(d.id))??[]),S=e=>i.shows(e.from)&&i.shows(e.to)&&!h(e,i.sees),v=(e,n)=>t.ops?y(e,l):d=>n===void 0||n.includes(d)?x:f.writerAt(e,d,l),M=r.changedNodes.flatMap(e=>{let n=m(e.before,y(e.before.id,u)),d=m(e.after,v(e.after.id,e.fields));return n&&d?[{before:n,after:d,fields:e.fields.filter(p=>p in n||p in d)}]:[]}),D=new Set(r.changedNodes.map(e=>e.after.id)),g=new Map;for(let e of t.ops?.flatMap(n=>n.primitives)??t.primitives??[])e.op!=="patch-node"||D.has(e.id)||g.set(e.id,[...g.get(e.id)??[],...Object.keys(e.after)]);let B=[...g].flatMap(([e,n])=>{let d=o.graph.getNode(e);if(!d)return[];let p=m(d,y(e,u)),N=m(d,v(e,n));return p&&N&&JSON.stringify(p)!==JSON.stringify(N)?[{before:p,after:N,fields:n}]:[]});s.diff={addedNodes:b(r.addedNodes,e=>v(e)),removedNodes:b(r.removedNodes,e=>y(e,u)),changedNodes:[...M,...B],addedEdges:r.addedEdges.filter(S),removedEdges:r.removedEdges.filter(S),touched:[...r.touched.filter(i.shows),...[...g.keys()].filter(e=>i.shows(e)&&!r.touched.includes(e))]}}if(t.ops&&(s.ops=j(t.ops,i)),t.primitives){let r=s.ops;s.primitives=r?r.flatMap(f=>f.primitives):i.timeline?O(t.primitives,i.timeline,{served:(f,l)=>i.servedWith(f,l),edgeClean:f=>!h(f,i.sees),sees:i.sees},k(a).id):j([{id:"",seq:0,batch:"",author:{kind:"system"},intent:"",mutation:null,primitives:t.primitives,reads:[],writes:[],at:""}],i)[0].primitives}return i.kept&&s.primitives&&(s.primitives=w(s.primitives,i)),t.reads&&(s.reads=t.reads.filter(r=>i.shows(r)&&c(r))),t.writes&&(s.writes=t.writes.filter(i.shows)),t.intent!==void 0&&h(t.intent,i.sees)&&(s.intent=P),t.violationsAfter&&Object.assign(s,A?A(o,W(o,a),!!t.ops,s.primitives??[]):{introduces:[],resolves:[],violationsAfter:[]}),s}var A,z=o=>void(A=o);export{_ as a,z as b};
@@ -1 +1 @@
1
- import{G as T}from"./chunk.KA44WNB4.js";import{b as g}from"./chunk.AJZBJBMO.js";var s=g(T(),1),m="data-graview-roving",E="data-graview-roving-item",L={ArrowDown:{column:1,both:1},ArrowUp:{column:-1,both:-1},ArrowRight:{column:0,both:1},ArrowLeft:{column:0,both:-1}},w=e=>e instanceof HTMLElement&&(e.isContentEditable||e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement||e instanceof HTMLInputElement&&!["button","checkbox","radio","submit"].includes(e.type));function p(e){return[...e.querySelectorAll(`[${E}]`)].filter(c=>c.closest(`[${m}]`)===e&&!c.disabled&&c.getAttribute("aria-hidden")!=="true")}var M=e=>(e.textContent?.trim()||e.getAttribute("aria-label")||"").toLowerCase();function H({flow:e="column",letters:c=!1}={}){let a=(0,s.useRef)(null),i=(0,s.useRef)(null),f=(0,s.useCallback)(()=>{let t=a.current;if(!t)return;let n=p(t);if(n.length===0)return;let o=typeof document>"u"?null:document.activeElement,u=n.find(r=>r===o)??(i.current&&n.includes(i.current)?i.current:n[0]);for(let r of n){let l=r===u?"0":"-1";r.getAttribute("tabindex")!==l&&r.setAttribute("tabindex",l)}},[]);(0,s.useLayoutEffect)(f);let d=t=>{t&&(i.current=t,t.focus(),f())};return{ref:a,[m]:c?"letters":"",onFocus:t=>{let n=t.target.closest?.(`[${E}]`);n&&n.closest(`[${m}]`)===a.current&&i.current!==n&&(i.current=n,f())},onKeyDown:t=>{let n=a.current;if(!n||t.metaKey||t.ctrlKey||t.altKey||w(t.target))return;let o=p(n),u=o.findIndex(l=>l===t.target||l.contains(t.target));if(u<0)return;let r=L[t.key]?.[e];if(r){t.preventDefault(),t.stopPropagation(),d(o[Math.max(0,Math.min(o.length-1,u+r))]);return}if(t.key==="Home"||t.key==="End"){t.preventDefault(),t.stopPropagation(),d(t.key==="Home"?o[0]:o[o.length-1]);return}if(c&&t.key.length===1&&t.key.trim()!==""){let l=t.key.toLowerCase(),y=[...o.slice(u+1),...o.slice(0,u+1)].find(b=>M(b).startsWith(l));if(!y)return;t.preventDefault(),t.stopPropagation(),d(y)}}}}export{E as a,H as b};
1
+ import{G as T}from"./chunk.TM6JVVGW.js";import{b as g}from"./chunk.AJZBJBMO.js";var s=g(T(),1),m="data-graview-roving",E="data-graview-roving-item",L={ArrowDown:{column:1,both:1},ArrowUp:{column:-1,both:-1},ArrowRight:{column:0,both:1},ArrowLeft:{column:0,both:-1}},w=e=>e instanceof HTMLElement&&(e.isContentEditable||e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement||e instanceof HTMLInputElement&&!["button","checkbox","radio","submit"].includes(e.type));function p(e){return[...e.querySelectorAll(`[${E}]`)].filter(c=>c.closest(`[${m}]`)===e&&!c.disabled&&c.getAttribute("aria-hidden")!=="true")}var M=e=>(e.textContent?.trim()||e.getAttribute("aria-label")||"").toLowerCase();function H({flow:e="column",letters:c=!1}={}){let a=(0,s.useRef)(null),i=(0,s.useRef)(null),f=(0,s.useCallback)(()=>{let t=a.current;if(!t)return;let n=p(t);if(n.length===0)return;let o=typeof document>"u"?null:document.activeElement,u=n.find(r=>r===o)??(i.current&&n.includes(i.current)?i.current:n[0]);for(let r of n){let l=r===u?"0":"-1";r.getAttribute("tabindex")!==l&&r.setAttribute("tabindex",l)}},[]);(0,s.useLayoutEffect)(f);let d=t=>{t&&(i.current=t,t.focus(),f())};return{ref:a,[m]:c?"letters":"",onFocus:t=>{let n=t.target.closest?.(`[${E}]`);n&&n.closest(`[${m}]`)===a.current&&i.current!==n&&(i.current=n,f())},onKeyDown:t=>{let n=a.current;if(!n||t.metaKey||t.ctrlKey||t.altKey||w(t.target))return;let o=p(n),u=o.findIndex(l=>l===t.target||l.contains(t.target));if(u<0)return;let r=L[t.key]?.[e];if(r){t.preventDefault(),t.stopPropagation(),d(o[Math.max(0,Math.min(o.length-1,u+r))]);return}if(t.key==="Home"||t.key==="End"){t.preventDefault(),t.stopPropagation(),d(t.key==="Home"?o[0]:o[o.length-1]);return}if(c&&t.key.length===1&&t.key.trim()!==""){let l=t.key.toLowerCase(),y=[...o.slice(u+1),...o.slice(0,u+1)].find(b=>M(b).startsWith(l));if(!y)return;t.preventDefault(),t.stopPropagation(),d(y)}}}}export{E as a,H as b};
@@ -0,0 +1 @@
1
+ import{a,b}from"./chunk.FIS27KW4.js";import"./chunk.EYSQPXVE.js";import"./chunk.AOEXSQDG.js";import"./chunk.3NEALGMI.js";import"./chunk.UT6642FC.js";import"./chunk.35FUGOSG.js";import"./chunk.NQDGUIUQ.js";import"./chunk.DTRNDSMS.js";import"./chunk.3EW6L5DY.js";import"./chunk.AVDXG57A.js";import"./chunk.LD6S2FL5.js";import"./chunk.TABIRLQS.js";import"./chunk.A7HMVWMG.js";import"./chunk.GRLPNTUW.js";import"./chunk.EJAVIZ7Y.js";import"./chunk.PFEKS3KO.js";import"./chunk.2AZTW66C.js";import"./chunk.AJZBJBMO.js";export{b as actOnSeveral,a as actsForSeveral};
@@ -1 +1 @@
1
- import{c as u}from"./chunk.DPHTUTOS.js";import{ga as l}from"./chunk.4TJOS4C7.js";function a(e,n){let s=new Map;for(let o of e){let t=n(o.from),i=n(o.to);if(t===void 0||i===void 0)continue;let d=`${o.kind}|${t}|${i}`,r=s.get(d);r||s.set(d,r={edge:o.kind,from:t,to:i,links:0,froms:new Set,tos:new Set}),r.links+=1,r.froms.add(o.from),r.tos.add(o.to)}return[...s.entries()].sort(([o],[t])=>o<t?-1:o>t?1:0).map(([o,t])=>({key:o,edge:t.edge,from:t.from,to:t.to,links:t.links,fromCount:t.froms.size,toCount:t.tos.size}))}function m(e,n,s){let o=[],t=[];for(let d of e){let r=f(d);if(r!==null){o.includes(r)||o.push(r);continue}s(d)!==void 0&&t.push(d)}let i=n.overview&&n.focusId!==null?f(n.focusId):null;return n.beside&&n.overview&&i===null&&n.focusId!==null&&t.length===0&&o.length===0&&s(n.focusId)!==void 0&&t.push(n.focusId),{districts:o,records:t,lens:i}}function f(e){return e.startsWith("kind:")?e.slice(5)||null:e.startsWith("aggregate:")&&!e.includes("|")&&e.slice(10)||null}function y(e,n){let s=u(e,n.from,n.edge,"out"),o=n.from===n.to?" of their own":"";return`${l(e,n.from,n.fromCount)} \u2192 ${l(e,n.to,n.toCount)}${o}, ${s}`}export{a,m as b,f as c,y as d};
1
+ import{c as u}from"./chunk.EJAVIZ7Y.js";import{ga as l}from"./chunk.PFEKS3KO.js";function a(e,n){let s=new Map;for(let o of e){let t=n(o.from),i=n(o.to);if(t===void 0||i===void 0)continue;let d=`${o.kind}|${t}|${i}`,r=s.get(d);r||s.set(d,r={edge:o.kind,from:t,to:i,links:0,froms:new Set,tos:new Set}),r.links+=1,r.froms.add(o.from),r.tos.add(o.to)}return[...s.entries()].sort(([o],[t])=>o<t?-1:o>t?1:0).map(([o,t])=>({key:o,edge:t.edge,from:t.from,to:t.to,links:t.links,fromCount:t.froms.size,toCount:t.tos.size}))}function m(e,n,s){let o=[],t=[];for(let d of e){let r=f(d);if(r!==null){o.includes(r)||o.push(r);continue}s(d)!==void 0&&t.push(d)}let i=n.overview&&n.focusId!==null?f(n.focusId):null;return n.beside&&n.overview&&i===null&&n.focusId!==null&&t.length===0&&o.length===0&&s(n.focusId)!==void 0&&t.push(n.focusId),{districts:o,records:t,lens:i}}function f(e){return e.startsWith("kind:")?e.slice(5)||null:e.startsWith("aggregate:")&&!e.includes("|")&&e.slice(10)||null}function y(e,n){let s=u(e,n.from,n.edge,"out"),o=n.from===n.to?" of their own":"";return`${l(e,n.from,n.fromCount)} \u2192 ${l(e,n.to,n.toCount)}${o}, ${s}`}export{a,m as b,f as c,y as d};
@@ -1,3 +1,3 @@
1
- import{b as te}from"./chunk.KVEDIBXS.js";import"./chunk.N4M54YK6.js";import"./chunk.KVJFY7N5.js";import{c as ne}from"./chunk.DPHTUTOS.js";import{G as ge,R as ee}from"./chunk.KA44WNB4.js";import"./chunk.SDO3U72B.js";import{da as X,ga as Z,vc as q}from"./chunk.4TJOS4C7.js";import"./chunk.2AZTW66C.js";import{b as T}from"./chunk.AJZBJBMO.js";var M=T(ge(),1);var ye=6;function re($,S,m,x,E){let t=new Set($),o=new Map;for(let i of S)for(let[h,l,b]of[[i.from,i.to,"out"],[i.to,i.from,"in"]]){if(!t.has(h)||t.has(l))continue;let f=m(l);if(f===void 0)continue;let p=`${h}|${i.kind}|${b}|${f}`,v=o.get(p);v?v.others.includes(l)||v.others.push(l):o.set(p,{self:h,edge:i.kind,direction:b,kind:f,others:[l]})}let d=[];for(let i of o.values()){let h=m(i.self)??"",l=ne(E,i.direction==="out"?h:i.kind,i.edge,i.direction);if(i.others.length>ye){d.push({...i,others:i.others,lands:"district",words:l});continue}let b=[],f=[];for(let p of i.others)(x(p)?b:f).push(p);for(let p of b)d.push({...i,others:[p],lands:"record",words:l});f.length>0&&d.push({...i,others:f,lands:"district",words:l})}return d}function ie($,S=[]){let m=[...S],x=new Map,E=t=>m.some(o=>t.x<o.x+o.width&&o.x<t.x+t.width&&t.y<o.y+o.height&&o.y<t.y+t.height);for(let t of[...$].sort((o,d)=>o.y-d.y||o.x-d.x)){let o={x:t.x-t.width/2,y:t.y-t.height,width:t.width,height:t.height};for(let d=0;d<12&&E(o);d++)o.y+=t.height+2;m.push(o),x.set(t.key,{x:o.x,y:o.y})}return x}var s=T(ee(),1),he=4;function xe({frame:$,width:S,height:m,stageRef:x,tick:E,store:t,graphVersion:o,selection:d,view:i,rulers:{visibleRect:h,clipQuadratic:l,unsureOf:b,unsureDash:f,unsureOpacity:p}}){let v=n=>t.graph.getNode(n)?.kind,C=te(d,i,v),R=C.lens===null&&C.records.length<=he?C.records:[],oe=R.join(`
1
+ import{b as te}from"./chunk.DFGXNFFE.js";import"./chunk.A7HMVWMG.js";import"./chunk.GRLPNTUW.js";import{c as ne}from"./chunk.EJAVIZ7Y.js";import{G as ge,R as ee}from"./chunk.TM6JVVGW.js";import"./chunk.SDO3U72B.js";import{Fc as q,da as X,ga as Z}from"./chunk.PFEKS3KO.js";import"./chunk.2AZTW66C.js";import{b as T}from"./chunk.AJZBJBMO.js";var M=T(ge(),1);var ye=6;function re($,S,m,x,E){let t=new Set($),o=new Map;for(let i of S)for(let[h,l,b]of[[i.from,i.to,"out"],[i.to,i.from,"in"]]){if(!t.has(h)||t.has(l))continue;let f=m(l);if(f===void 0)continue;let p=`${h}|${i.kind}|${b}|${f}`,v=o.get(p);v?v.others.includes(l)||v.others.push(l):o.set(p,{self:h,edge:i.kind,direction:b,kind:f,others:[l]})}let d=[];for(let i of o.values()){let h=m(i.self)??"",l=ne(E,i.direction==="out"?h:i.kind,i.edge,i.direction);if(i.others.length>ye){d.push({...i,others:i.others,lands:"district",words:l});continue}let b=[],f=[];for(let p of i.others)(x(p)?b:f).push(p);for(let p of b)d.push({...i,others:[p],lands:"record",words:l});f.length>0&&d.push({...i,others:f,lands:"district",words:l})}return d}function ie($,S=[]){let m=[...S],x=new Map,E=t=>m.some(o=>t.x<o.x+o.width&&o.x<t.x+t.width&&t.y<o.y+o.height&&o.y<t.y+t.height);for(let t of[...$].sort((o,d)=>o.y-d.y||o.x-d.x)){let o={x:t.x-t.width/2,y:t.y-t.height,width:t.width,height:t.height};for(let d=0;d<12&&E(o);d++)o.y+=t.height+2;m.push(o),x.set(t.key,{x:o.x,y:o.y})}return x}var s=T(ee(),1),he=4;function xe({frame:$,width:S,height:m,stageRef:x,tick:E,store:t,graphVersion:o,selection:d,view:i,rulers:{visibleRect:h,clipQuadratic:l,unsureOf:b,unsureDash:f,unsureOpacity:p}}){let v=n=>t.graph.getNode(n)?.kind,C=te(d,i,v),R=C.lens===null&&C.records.length<=he?C.records:[],oe=R.join(`
2
2
  `),[y,K]=(0,M.useState)(null);(0,M.useLayoutEffect)(()=>{let n=x.current;if(!i.overview||R.length===0||!n||typeof document>"u"||$.t<1){K(null);return}let w=n.getBoundingClientRect(),B=e=>({x:e.left-w.left,y:e.top-w.top,width:e.width,height:e.height}),D=new Map,se=R.map(e=>`[data-graview-view="${CSS.escape(e)}"]`).join(","),k=null,H=()=>{if(k)return k;k={drawn:new Map,buildings:new Map};for(let e of n.querySelectorAll("[data-graview-pick], [data-graview-view], [data-graview-building]")){let r=e.getAttribute("data-graview-pick"),a=e.getAttribute("data-graview-view");for(let c of r!==null&&r===a?[r]:[r,a]){if(c===null)continue;let u=k.drawn.get(c);u?u.push(e):k.drawn.set(c,[e])}let L=e.getAttribute("data-graview-building");L!==null&&!k.buildings.has(L)&&k.buildings.set(L,e)}return k},P=e=>{if(D.has(e))return D.get(e);let r=null;for(let a of H().drawn.get(e)??[])if(!a.closest("[data-graview-offstage], [data-graview-screen]")&&!(!R.includes(e)&&a.closest(se))&&(r=h(a,n),r))break;if(!r){let a=H().buildings.get(e);a&&(r=B(a.getBoundingClientRect()))}return D.set(e,r),r},W=e=>{let r=n.querySelector(`[data-graview-plot="kind:${CSS.escape(e)}"] .graview-plot-tile`);return r?B(r.getBoundingClientRect()):null},de=re(R,t.graph.allEdges(),v,e=>P(e)!==null,t.schema),z=[];for(let e of n.querySelectorAll('[data-graview-view^="kind:"] .graview-kind-face')){let r=h(e,n);r&&z.push(r)}let Q=e=>({x:e.x+e.width/2,y:e.y+e.height/2}),O=[],V=new Set(R),I=new Set;for(let e of de){let r=v(e.self),a=P(e.self)??(r?W(r):null),L=e.lands==="record"?P(e.others[0]):W(e.kind);if(!a||!L)continue;for(let g of e.others)V.add(g);I.add(e.kind),r&&I.add(r);let c=Q(a),u=Q(L),A=Math.hypot(u.x-c.x,u.y-c.y);if(A<6)continue;let G=Math.min(40,A*.12)*(O.length%2===0?1:-1),le={x:(c.x+u.x)/2-(u.y-c.y)/A*G,y:(c.y+u.y)/2+(u.x-c.x)/A*G},J=l({p0:c,c:le,p1:u},z);if(J.length===0)continue;let ce=J.map(g=>`M ${g.p0.x.toFixed(1)} ${g.p0.y.toFixed(1)} Q ${g.c.x.toFixed(1)} ${g.c.y.toFixed(1)} ${g.p1.x.toFixed(1)} ${g.p1.y.toFixed(1)}`).join(" "),ue=g=>{let j=t.graph.getNode(g);return j?X(t.schema.tryDefinition(j.kind),j):g},U=e.lands==="record"?`${e.words}: ${ue(e.others[0])}`:`${e.words}: ${Z(t.schema,e.kind,e.others.length)}`,F=e.others[0],_=e.lands==="record"?b?.(e.edge,e.direction==="out"?e.self:F,e.direction==="out"?F:e.self):void 0;O.push({key:`${e.self}|${e.edge}|${e.direction}|${e.lands}|${F}`,link:e,d:ce,end:u,said:_!==void 0?`${U} \xB7 unsure`:U,..._!==void 0?{unsure:_}:{}})}let Y=[];for(let e of n.querySelectorAll(".graview-kind-face[data-graview-nameplate]")){let r=h(e,n);r&&Y.push(r)}let ae=ie(O.map(e=>({key:e.key,x:e.end.x,y:e.end.y-6,width:Math.min(260,14+e.said.length*6.6),height:20})),Y);K({lines:O,labels:ae,reached:[...V],districts:[...I]})},[oe,i.overview,$,o,E,S,m,x,t]);let N=(0,M.useMemo)(()=>{if(!y)return"";let n=y.reached.map(B=>`[data-graview-building="${CSS.escape(B)}"]`).join(","),w=y.districts.map(B=>`[data-graview-plot="kind:${CSS.escape(B)}"]`).join(",");return[".graview-ground[data-graview-altitude] .graview-building { opacity: 0.22; }",n?`.graview-ground[data-graview-altitude] .graview-building:is(${n}) { opacity: 1; }`:"",w?`.graview-ground[data-graview-altitude] .graview-plot:not(:is(${w})) .graview-plot-tile { opacity: 0.4; }`:""].join(`
3
3
  `)},[y]);return!y||y.lines.length===0?N?(0,s.jsx)("style",{children:N}):null:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("style",{children:N}),(0,s.jsx)("svg",{className:"graview-record-links","data-graview-world":"","data-graview-record-links":y.lines.length,"aria-hidden":"true",width:S,height:m,style:{position:"absolute",left:0,top:0,pointerEvents:"none",zIndex:q.lines},children:y.lines.map(n=>(0,s.jsxs)("g",{className:"graview-record-link","data-graview-link":n.link.edge,"data-graview-lands":n.link.lands,"data-graview-direction":n.link.direction,"data-graview-provisional":n.unsure!==void 0||void 0,children:[(0,s.jsx)("path",{className:"graview-record-link-line",d:n.d,...n.unsure!==void 0?{strokeDasharray:f,strokeOpacity:p}:{}}),n.link.lands==="record"?(0,s.jsx)("circle",{className:"graview-record-link-end",cx:n.end.x,cy:n.end.y,r:3}):null]},n.key))}),(0,s.jsx)("div",{"aria-hidden":"true","data-graview-world":"",style:{position:"absolute",inset:0,pointerEvents:"none",zIndex:q.tieLabels},children:y.lines.map(n=>{let w=y.labels.get(n.key);return w?(0,s.jsx)("span",{className:"graview-record-link-said","data-graview-link-said":n.link.edge,"data-graview-lands":n.link.lands,...n.unsure!==void 0?{title:n.unsure}:{},style:{position:"absolute",left:w.x,top:w.y,...n.unsure!==void 0?{pointerEvents:"auto"}:{}},children:n.said},n.key):null})})]})}export{xe as RecordLinks};
@@ -1 +1 @@
1
- import{a as g}from"./chunk.DPHTUTOS.js";import{D as m,Gb as w,H as y,va as a,ya as k}from"./chunk.4TJOS4C7.js";var d=i=>i?._zod?.def,h=/^\^\\d\{4\}-\\d\{2\}-\\d\{2\}\$$/;function b(i){let t=d(i),p=!0,f;for(let e=0;t&&e<4;e++){if(t.type==="optional"||t.type==="nullable")p=!1;else if(t.type==="default")p=!1,f=t.defaultValue;else break;t=d(t.innerType)}if(!t)return{why:"it is not a zod field"};let u=m(i),r={...p?{required:!0}:{},...f!==void 0?{default:f}:{},...u?{description:u}:{}},s=(t.checks??[]).map(e=>d(e)),c=a(i);if(c)return{spec:{type:c,...r}};if(k(i))return{spec:{type:"app-link",...r}};if(g(i))return{spec:{type:"text",format:"markdown",...r}};let l=w(i);if(l)return{spec:{type:l,...r}};switch(t.type){case"string":{let e=t.format;return e==="email"?{spec:{type:"email",...r}}:e==="url"?{spec:{type:"url",...r}}:e==="date"?{spec:{type:"date",...r}}:e==="datetime"||s.some(n=>n?.fn===y)?{spec:{type:"datetime",...r}}:s.some(n=>n?.format==="regex"&&h.test(String(n?.pattern?.source??"")))?{spec:{type:"date",...r}}:{spec:{type:"string",...r}}}case"number":{let e={};for(let n of s){let o=n?.value;typeof o=="number"&&(n?.check==="greater_than"&&n.inclusive?e.min=Math.max(e.min??o,o):n?.check==="less_than"&&n.inclusive?e.max=Math.min(e.max??o,o):n?.check==="multiple_of"&&(e.step=o))}return{spec:{type:s.some(n=>n?.format==="safeint"||n?.format==="int")?"integer":"number",...e,...r}}}case"boolean":return{spec:{type:"boolean",...r}};case"enum":{let e=Object.keys(t.entries??{});return e.length>0?{spec:{type:"enum",options:e,...r}}:{why:"it is an enum with no options"}}case"array":{let e=d(t.element),n=a(t.element)??(e?.type==="number"?"number":e?.type==="string"?"string":void 0);return n?{spec:{type:"list",of:n,...r}}:{why:`it is a list of ${String(e?.type??"something")}, and a document lists words, numbers, dates, images, videos or files`}}default:return{why:`it is a ${String(t.type)}, which a document has no field type for`}}}function L(i){let t=b(i);return"spec"in t?t.spec:void 0}export{L as a};
1
+ import{a as g}from"./chunk.EJAVIZ7Y.js";import{D as m,H as y,Hb as w,va as a,ya as k}from"./chunk.PFEKS3KO.js";var d=i=>i?._zod?.def,h=/^\^\\d\{4\}-\\d\{2\}-\\d\{2\}\$$/;function b(i){let t=d(i),p=!0,f;for(let e=0;t&&e<4;e++){if(t.type==="optional"||t.type==="nullable")p=!1;else if(t.type==="default")p=!1,f=t.defaultValue;else break;t=d(t.innerType)}if(!t)return{why:"it is not a zod field"};let u=m(i),r={...p?{required:!0}:{},...f!==void 0?{default:f}:{},...u?{description:u}:{}},s=(t.checks??[]).map(e=>d(e)),c=a(i);if(c)return{spec:{type:c,...r}};if(k(i))return{spec:{type:"app-link",...r}};if(g(i))return{spec:{type:"text",format:"markdown",...r}};let l=w(i);if(l)return{spec:{type:l,...r}};switch(t.type){case"string":{let e=t.format;return e==="email"?{spec:{type:"email",...r}}:e==="url"?{spec:{type:"url",...r}}:e==="date"?{spec:{type:"date",...r}}:e==="datetime"||s.some(n=>n?.fn===y)?{spec:{type:"datetime",...r}}:s.some(n=>n?.format==="regex"&&h.test(String(n?.pattern?.source??"")))?{spec:{type:"date",...r}}:{spec:{type:"string",...r}}}case"number":{let e={};for(let n of s){let o=n?.value;typeof o=="number"&&(n?.check==="greater_than"&&n.inclusive?e.min=Math.max(e.min??o,o):n?.check==="less_than"&&n.inclusive?e.max=Math.min(e.max??o,o):n?.check==="multiple_of"&&(e.step=o))}return{spec:{type:s.some(n=>n?.format==="safeint"||n?.format==="int")?"integer":"number",...e,...r}}}case"boolean":return{spec:{type:"boolean",...r}};case"enum":{let e=Object.keys(t.entries??{});return e.length>0?{spec:{type:"enum",options:e,...r}}:{why:"it is an enum with no options"}}case"array":{let e=d(t.element),n=a(t.element)??(e?.type==="number"?"number":e?.type==="string"?"string":void 0);return n?{spec:{type:"list",of:n,...r}}:{why:`it is a list of ${String(e?.type??"something")}, and a document lists words, numbers, dates, images, videos or files`}}default:return{why:`it is a ${String(t.type)}, which a document has no field type for`}}}function L(i){let t=b(i);return"spec"in t?t.spec:void 0}export{L as a};