graview 0.1.55 → 0.1.57

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (192) hide show
  1. package/dist/preview/{chunk.XSMXSNDR.js → chunk.2PWVDUOU.js} +1 -1
  2. package/dist/preview/{chunk.AFK5HHLL.js → chunk.33PZEW5A.js} +1 -1
  3. package/dist/preview/{chunk.SUGOENC4.js → chunk.3DPTDMJ7.js} +1 -1
  4. package/dist/preview/chunk.47T3KUAA.js +1 -0
  5. package/dist/preview/{chunk.XUHY4XO2.js → chunk.4BRM5SGO.js} +1 -1
  6. package/dist/preview/{chunk.4TLWZVVG.js → chunk.4HFCOMR3.js} +1 -1
  7. package/dist/preview/{chunk.5MCXTY2P.js → chunk.4HPP35XQ.js} +1 -1
  8. package/dist/preview/chunk.4JDHBNEA.js +104 -0
  9. package/dist/preview/{chunk.QWICAV2C.js → chunk.4K6VAC2S.js} +2 -2
  10. package/dist/preview/{chunk.ZXOD5GM3.js → chunk.4L4F47QP.js} +1 -1
  11. package/dist/preview/{chunk.SIABGHF2.js → chunk.4NPXMYA5.js} +1 -1
  12. package/dist/preview/{chunk.354A4QCG.js → chunk.4OP4IEEY.js} +1 -1
  13. package/dist/preview/chunk.4SBYXHCQ.js +1 -0
  14. package/dist/preview/{chunk.LYVRXRIH.js → chunk.4UQBMFJZ.js} +1 -1
  15. package/dist/preview/{chunk.7WEQHJ3N.js → chunk.4W5GCPAP.js} +1 -1
  16. package/dist/preview/{chunk.TT6GKRBE.js → chunk.4XKRCAJZ.js} +1 -1
  17. package/dist/preview/{chunk.HXHFWZ2U.js → chunk.534TBZJ3.js} +2 -2
  18. package/dist/preview/{chunk.JRRVLGEK.js → chunk.53U6E5LD.js} +1 -1
  19. package/dist/preview/{chunk.HXR7EEXR.js → chunk.547FQPYG.js} +1 -1
  20. package/dist/preview/{chunk.O752PM42.js → chunk.57BKS5KD.js} +1 -1
  21. package/dist/preview/chunk.57KRCHQT.js +1 -0
  22. package/dist/preview/{chunk.KVQZ5FR6.js → chunk.5BPRGXIW.js} +1 -1
  23. package/dist/preview/{chunk.TAQB64FZ.js → chunk.5GTOF5D5.js} +1 -1
  24. package/dist/preview/{chunk.KY7QD22S.js → chunk.5IEFTFKQ.js} +1 -1
  25. package/dist/preview/chunk.5NZDFT6R.js +1 -0
  26. package/dist/preview/{chunk.AFEEXRN3.js → chunk.66LWZIY5.js} +1 -1
  27. package/dist/preview/{chunk.USJ4J3GL.js → chunk.6AH26OL7.js} +2 -2
  28. package/dist/preview/{chunk.PIQ52FCI.js → chunk.6SD7YZ4U.js} +2 -2
  29. package/dist/preview/{chunk.AVVNQKA7.js → chunk.72IHABM5.js} +1 -1
  30. package/dist/preview/chunk.7INWDFNG.js +1 -0
  31. package/dist/preview/{chunk.FUZWXKTN.js → chunk.7IXTNST2.js} +1 -1
  32. package/dist/preview/{chunk.6UAUME5U.js → chunk.7ML2BWSP.js} +1 -1
  33. package/dist/preview/chunk.7UBABS2T.js +1 -0
  34. package/dist/preview/{chunk.CM2ETM2A.js → chunk.7VIFAN3O.js} +1 -1
  35. package/dist/preview/chunk.7VZA34T4.js +1 -0
  36. package/dist/preview/{chunk.EJXUOL2C.js → chunk.AD3EC5DU.js} +1 -1
  37. package/dist/preview/{chunk.BRCKXL7B.js → chunk.BCE6LIDR.js} +1 -1
  38. package/dist/preview/chunk.BPEUHOKH.js +1 -0
  39. package/dist/preview/{chunk.KHJ2MCMS.js → chunk.BUSFJM6P.js} +1 -1
  40. package/dist/preview/{chunk.2HANQ737.js → chunk.BZEJM2PY.js} +1 -1
  41. package/dist/preview/{chunk.YGZGMRDC.js → chunk.C5EFUODO.js} +1 -1
  42. package/dist/preview/{chunk.ATXSLBE3.js → chunk.C7EJPV2N.js} +1 -1
  43. package/dist/preview/chunk.CMLNBJZG.js +3 -0
  44. package/dist/preview/{chunk.NXM73RZA.js → chunk.CUKRUQQ2.js} +1 -1
  45. package/dist/preview/chunk.CXB4BSI4.js +1 -0
  46. package/dist/preview/{chunk.5EOSEVZB.js → chunk.D3LQJXVP.js} +1 -1
  47. package/dist/preview/{chunk.YOBRVKJT.js → chunk.D4EP7FEC.js} +1 -1
  48. package/dist/preview/{chunk.WSMYFEGU.js → chunk.DBMZ3AQB.js} +1 -1
  49. package/dist/preview/chunk.DIFR37EZ.js +5 -0
  50. package/dist/preview/chunk.DJ4A76SX.js +1 -0
  51. package/dist/preview/{chunk.O7RMVGAB.js → chunk.DM5X3JBH.js} +1 -1
  52. package/dist/preview/chunk.DQUISKTC.js +1 -0
  53. package/dist/preview/chunk.DSLGMCB6.js +1 -0
  54. package/dist/preview/chunk.DSWMXM57.js +1 -0
  55. package/dist/preview/{chunk.DB3HOKZD.js → chunk.DWLKJGVT.js} +1 -1
  56. package/dist/preview/{chunk.2KH2LWZL.js → chunk.EQAAKYLA.js} +1 -1
  57. package/dist/preview/{chunk.4OMSQFIY.js → chunk.EXZLG3HK.js} +1 -1
  58. package/dist/preview/{chunk.QJ42D5GM.js → chunk.EZ4NUZWX.js} +1 -1
  59. package/dist/preview/{chunk.WUFCRE7O.js → chunk.EZ4TZUMM.js} +1 -1
  60. package/dist/preview/chunk.FJTWAU7N.js +1 -0
  61. package/dist/preview/{chunk.WVKXELAF.js → chunk.FLMNWVSY.js} +2 -2
  62. package/dist/preview/{chunk.K5WPS4RR.js → chunk.FLVE6IBM.js} +1 -1
  63. package/dist/preview/chunk.FPGU43SC.js +1 -0
  64. package/dist/preview/{chunk.5DPFAVCZ.js → chunk.FRERJWZJ.js} +1 -1
  65. package/dist/preview/{chunk.OT6EWYK2.js → chunk.G3BDQ6EA.js} +1 -1
  66. package/dist/preview/chunk.GBAUQXXD.js +1 -0
  67. package/dist/preview/{chunk.5SANELJT.js → chunk.H5CRRBNU.js} +1 -1
  68. package/dist/preview/{chunk.7Y6NK5CT.js → chunk.HFSG3F5Z.js} +1 -1
  69. package/dist/preview/chunk.I2NI7CT7.js +1 -0
  70. package/dist/preview/{chunk.ZAHVKXYQ.js → chunk.I5PSHASU.js} +1 -1
  71. package/dist/preview/{chunk.TDV7JGIQ.js → chunk.I636CZE4.js} +1 -1
  72. package/dist/preview/chunk.I6H3HRWT.js +1 -0
  73. package/dist/preview/{chunk.62LPYPP3.js → chunk.IRQOJATD.js} +1 -1
  74. package/dist/preview/chunk.IV7AUO53.js +1 -0
  75. package/dist/preview/{chunk.RZQKCLTW.js → chunk.IX63LTRQ.js} +1 -1
  76. package/dist/preview/{chunk.IXHLP2CL.js → chunk.JBSW7ZNH.js} +1 -1
  77. package/dist/preview/chunk.JD5HSAMC.js +18 -0
  78. package/dist/preview/{chunk.ZOW7AC7U.js → chunk.JETT6ELP.js} +1 -1
  79. package/dist/preview/{chunk.LQCH2NFE.js → chunk.JNNBHD4Z.js} +1 -1
  80. package/dist/preview/{chunk.LMXNHBGH.js → chunk.JQFIZRAZ.js} +2 -2
  81. package/dist/preview/chunk.KNYLY7MH.js +1 -0
  82. package/dist/preview/chunk.KO7IOFNY.js +1 -0
  83. package/dist/preview/{chunk.EGSE6NNE.js → chunk.KPIDJYIU.js} +1 -1
  84. package/dist/preview/{chunk.YRFN4VDD.js → chunk.KTV24HY7.js} +1 -1
  85. package/dist/preview/{chunk.6JYNNPAI.js → chunk.KYOI7BG3.js} +1 -1
  86. package/dist/preview/{chunk.PHLMQO7V.js → chunk.LE2KAR25.js} +1 -1
  87. package/dist/preview/{chunk.UE5GAP67.js → chunk.LHIT3EZD.js} +2 -2
  88. package/dist/preview/{chunk.DBCVZGCC.js → chunk.LKJ6FD6Y.js} +1 -1
  89. package/dist/preview/chunk.LUIRQ5UF.js +2 -0
  90. package/dist/preview/chunk.LWRXCO2Z.js +1 -0
  91. package/dist/preview/{chunk.YYWANGIC.js → chunk.M72JKVHP.js} +4 -4
  92. package/dist/preview/{chunk.6NQQUIBX.js → chunk.MAZFQIL5.js} +1 -1
  93. package/dist/preview/{chunk.CPNE6HPQ.js → chunk.MBLFZF5R.js} +1 -1
  94. package/dist/preview/{chunk.PSLCI3GO.js → chunk.MRHPOUA4.js} +1 -1
  95. package/dist/preview/{chunk.PIHCXN5U.js → chunk.MWWOI5PW.js} +1 -1
  96. package/dist/preview/{chunk.35O5H5L7.js → chunk.N2DM42SG.js} +2 -2
  97. package/dist/preview/chunk.N33WUCAN.js +3 -0
  98. package/dist/preview/{chunk.PCKX2FHR.js → chunk.N5MQARN6.js} +1 -1
  99. package/dist/preview/{chunk.G5XTASMO.js → chunk.NF72Z2HG.js} +1 -1
  100. package/dist/preview/{chunk.RNYLNBIB.js → chunk.NGK6IRV3.js} +1 -1
  101. package/dist/preview/chunk.NL3AJZ3N.js +1 -0
  102. package/dist/preview/chunk.NUS5K56R.js +21 -0
  103. package/dist/preview/{chunk.XTP5DGPJ.js → chunk.NX7CR4AE.js} +1 -1
  104. package/dist/preview/chunk.NZDWXX6H.js +1 -0
  105. package/dist/preview/{chunk.5L4J2XAI.js → chunk.O47MN7E5.js} +1 -1
  106. package/dist/preview/chunk.OYUDK3LK.js +1 -0
  107. package/dist/preview/chunk.PF5P5YVD.js +1 -0
  108. package/dist/preview/{chunk.V6X3U3JF.js → chunk.PHC2MI4C.js} +1 -1
  109. package/dist/preview/{chunk.U5AX4DD5.js → chunk.PQMMISCQ.js} +1 -1
  110. package/dist/preview/{chunk.TUBAFVV4.js → chunk.Q6OZLBNL.js} +1 -1
  111. package/dist/preview/{chunk.ZPXAKRKG.js → chunk.QMYHXMRV.js} +1 -1
  112. package/dist/preview/chunk.QPL3OXW3.js +1 -0
  113. package/dist/preview/{chunk.V5PAFSWP.js → chunk.QS6YW7UY.js} +1 -1
  114. package/dist/preview/chunk.QUJS63OJ.js +13 -0
  115. package/dist/preview/{chunk.EKP3HQAX.js → chunk.RALAID6N.js} +1 -1
  116. package/dist/preview/chunk.RQX4CQJN.js +1 -0
  117. package/dist/preview/{chunk.PM64C5PX.js → chunk.RVR6FWAF.js} +1 -1
  118. package/dist/preview/{chunk.MFCBAQS3.js → chunk.S5ECRIG5.js} +1 -1
  119. package/dist/preview/{chunk.DNJM6WQO.js → chunk.SAJLIA5M.js} +1 -1
  120. package/dist/preview/{chunk.RPVJ5IXD.js → chunk.TBRXNU6T.js} +1 -1
  121. package/dist/preview/{chunk.Y3BEKXYB.js → chunk.TVURUMU4.js} +1 -1
  122. package/dist/preview/chunk.UBNZDSS7.js +1 -0
  123. package/dist/preview/chunk.UDCDK7XJ.js +4 -0
  124. package/dist/preview/{chunk.6ZJE5M2A.js → chunk.UGOKORIF.js} +1 -1
  125. package/dist/preview/{chunk.NDLQXQV2.js → chunk.UV3U4FRT.js} +1 -1
  126. package/dist/preview/{chunk.QBMIET7P.js → chunk.UWQ3I5OW.js} +1 -1
  127. package/dist/preview/chunk.V6FUYRZI.js +1 -0
  128. package/dist/preview/{chunk.2SWQI4HF.js → chunk.VDS3IOTK.js} +1 -1
  129. package/dist/preview/chunk.VHPGGC2P.js +1 -0
  130. package/dist/preview/chunk.VSGTNYM2.js +1 -0
  131. package/dist/preview/{chunk.FUS2FJS3.js → chunk.VW4JAQCH.js} +1 -1
  132. package/dist/preview/{chunk.OS5EALHY.js → chunk.WASWMHND.js} +1 -1
  133. package/dist/preview/chunk.WYPL2QUA.js +1 -0
  134. package/dist/preview/{chunk.MFOSEOF4.js → chunk.XTBS64IT.js} +1 -1
  135. package/dist/preview/chunk.XVN3CQKH.js +2 -0
  136. package/dist/preview/{chunk.27ZSRO3O.js → chunk.Y3EOGXRS.js} +1 -1
  137. package/dist/preview/chunk.Y4KNR76Z.js +1 -0
  138. package/dist/preview/chunk.YDTXCVBU.js +1 -0
  139. package/dist/preview/{chunk.DH4AC7TC.js → chunk.YPP7FSEZ.js} +1 -1
  140. package/dist/preview/{chunk.FTW3K3G6.js → chunk.YQXA4WAM.js} +2 -2
  141. package/dist/preview/{chunk.4BFJWNVM.js → chunk.YR75TWDV.js} +1 -1
  142. package/dist/preview/{chunk.QIAH7HHO.js → chunk.YS5U3DUX.js} +1 -1
  143. package/dist/preview/chunk.Z5UVYOGC.js +1 -0
  144. package/dist/preview/{chunk.P4ZZSFOQ.js → chunk.ZNXRHOUI.js} +1 -1
  145. package/dist/preview/index.html +50 -50
  146. package/dist/preview/page.js +2 -2
  147. package/package.json +6 -6
  148. package/dist/preview/chunk.2ORJGMRT.js +0 -104
  149. package/dist/preview/chunk.3IZOXNJH.js +0 -1
  150. package/dist/preview/chunk.5D6SIBOK.js +0 -1
  151. package/dist/preview/chunk.5EZDXWOE.js +0 -1
  152. package/dist/preview/chunk.5MSNKSTE.js +0 -1
  153. package/dist/preview/chunk.5XUVCM7X.js +0 -1
  154. package/dist/preview/chunk.6NGSR2ZQ.js +0 -1
  155. package/dist/preview/chunk.7KERB5CH.js +0 -1
  156. package/dist/preview/chunk.AVNOLMCV.js +0 -1
  157. package/dist/preview/chunk.AZ6Q3WT2.js +0 -1
  158. package/dist/preview/chunk.DKJK2MMV.js +0 -2
  159. package/dist/preview/chunk.DU75P3Y7.js +0 -1
  160. package/dist/preview/chunk.DVG47BK3.js +0 -1
  161. package/dist/preview/chunk.DXJFAAOI.js +0 -1
  162. package/dist/preview/chunk.F5RN6YXG.js +0 -4
  163. package/dist/preview/chunk.FVOFTM5J.js +0 -1
  164. package/dist/preview/chunk.G2XDQPE4.js +0 -1
  165. package/dist/preview/chunk.H536YUAZ.js +0 -3
  166. package/dist/preview/chunk.HNJFBI7J.js +0 -1
  167. package/dist/preview/chunk.HUABTCQE.js +0 -1
  168. package/dist/preview/chunk.INBHY3SA.js +0 -1
  169. package/dist/preview/chunk.KIMIPHAI.js +0 -1
  170. package/dist/preview/chunk.KXNWZ33P.js +0 -1
  171. package/dist/preview/chunk.LEPKPNPA.js +0 -1
  172. package/dist/preview/chunk.LLXEWLIP.js +0 -1
  173. package/dist/preview/chunk.LWLI5PI4.js +0 -1
  174. package/dist/preview/chunk.MIQMPOWF.js +0 -2
  175. package/dist/preview/chunk.MNSKBGRM.js +0 -1
  176. package/dist/preview/chunk.MSM6E6JK.js +0 -1
  177. package/dist/preview/chunk.NS6KWKF5.js +0 -1
  178. package/dist/preview/chunk.OIMYSR2J.js +0 -1
  179. package/dist/preview/chunk.OL2N5NUV.js +0 -1
  180. package/dist/preview/chunk.QQ3YWKWU.js +0 -1
  181. package/dist/preview/chunk.R3ZS4QO6.js +0 -18
  182. package/dist/preview/chunk.SG67ID6C.js +0 -1
  183. package/dist/preview/chunk.SYX7AEHU.js +0 -1
  184. package/dist/preview/chunk.T66UK7PQ.js +0 -3
  185. package/dist/preview/chunk.TEE23CVQ.js +0 -1
  186. package/dist/preview/chunk.TZTRGNAA.js +0 -1
  187. package/dist/preview/chunk.UADL2LHO.js +0 -1
  188. package/dist/preview/chunk.URDCHVH3.js +0 -21
  189. package/dist/preview/chunk.WR63RQGU.js +0 -5
  190. package/dist/preview/chunk.XE72DFBV.js +0 -13
  191. package/dist/preview/chunk.XEHLSKHP.js +0 -1
  192. package/dist/preview/chunk.YG2WZO53.js +0 -1
@@ -1,18 +0,0 @@
1
- var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{a as Le}from"./chunk.2ORJGMRT.js";import{A as en,B as Te,C as vo,D as et,E as ye,F as Jn,G as qe,H as _e,I as ko,J as Yn,K as Ee,L as xo,M as Po,N as F,O as ft,P as Pt,Q as Ao,R as At,S as tn,T as Co,U as le,V as yt,W as de,X as Qn,a as V,b as ke,c as Y,d as Xt,e as Un,f as _n,g as gt,h as ee,i as Se,j as ie,k as A,l as se,m as U,n as We,o as be,p as mt,q as fe,r as ge,s as wo,t as vt,u as So,v as kt,w as xt,x as z,y as Ge,z as bo}from"./chunk.YYWANGIC.js";import{b as Vn,c as yo,d as ho,e as Ke,f as zn,h as ne}from"./chunk.FTW3K3G6.js";import{a as go,d as mo,e as fo}from"./chunk.UGFDSE37.js";import{a as io,c as so,f as lo,g as co,i as po,j as uo}from"./chunk.QBMIET7P.js";import{a as Qt,b as Zt}from"./chunk.PXQVXBNG.js";import{a as Yr,b as Qr,c as Zr,d as jn}from"./chunk.WVKXELAF.js";import{b as Jr}from"./chunk.ZOW7AC7U.js";import{a as Xr,b as eo,d as Jt,e as to,f as no,g as ao,j as Yt}from"./chunk.INBHY3SA.js";import{m as zr}from"./chunk.NDLQXQV2.js";import{a as $r,b as Hr,c as Fr,e as Vr,f as qn,h as Ut}from"./chunk.XEHLSKHP.js";import{d as Ir,e as Dr,f as Wr,g as Gr,n as jt,o as qr,q as jr,s as Vt}from"./chunk.MSM6E6JK.js";import{a as Gt,b as cr,c as pr,d as Bt,e as ur}from"./chunk.YGZGMRDC.js";import{b as wr,c as Er,e as Nr,f as Gn}from"./chunk.6ZJE5M2A.js";import{a as Wn,b as Tr}from"./chunk.2SWQI4HF.js";import{a as _t,b as zt,c as Ur,e as _r}from"./chunk.LEPKPNPA.js";import{a as ut,b as Rr,e as Lr}from"./chunk.5D6SIBOK.js";import{a as Mr}from"./chunk.BJUUSIQY.js";import{a as Bn}from"./chunk.BRCKXL7B.js";import{a as In,b as yr,c as hr}from"./chunk.CPNE6HPQ.js";import{a as Or}from"./chunk.QQ3YWKWU.js";import{c as br,d as vr,e as kr,f as xr,j as Pr,l as Xe,m as Ar}from"./chunk.HUABTCQE.js";import{a as Sr}from"./chunk.DXJFAAOI.js";import{b as _a,c as za}from"./chunk.2HANQ737.js";import{a as $n,d as Hn,f as Ua}from"./chunk.H536YUAZ.js";import{r as Dn,s as Cr}from"./chunk.OL2N5NUV.js";import{b as gr,c as mr,d as Kt,e as fr,l as qt}from"./chunk.MIQMPOWF.js";import{H as ro,K as oo,c as lr,d as dr,r as Br,s as Kr,z as Kn}from"./chunk.LMXNHBGH.js";import{c as Ai}from"./chunk.DBCVZGCC.js";import{Ba as Wt,G as ve,L as Qa,N as Za,Qa as sr,R as Xa,T as j,U as Fn,Y as er,Z as tr,ba as nr,ca as ce,fa as ar,ga as rr,ia as or,ma as ct,oa as ir,qa as pt,r as Ya,v as De}from"./chunk.WSMYFEGU.js";import{a as Ja}from"./chunk.SDO3U72B.js";import{$a as Ha,Bd as Dt,J as La,Jc as Nn,Kc as Ga,Kd as On,Ld as ja,Qc as Ba,Qd as Va,U as bt,Za as $a,ca as lt,da as oe,ed as Ka,fa as Qe,ga as dt,ha as Ta,hc as Ia,ia as Ue,ka as Ea,la as Na,lb as En,ma as Ze,mb as Fa,oc as Da,qc as Wa,sd as Mn,wb as Ft,xa as Ma,ya as Oa,yd as It,zd as qa}from"./chunk.WR63RQGU.js";import{b as H}from"./chunk.AJZBJBMO.js";function nn(e,t,n={}){let a=e.graph.getNode(t);if(!a)return;let r=e.schema.tryDefinition(a.kind),o=s=>oe(e.schema.tryDefinition(s.kind),s),i=new Map;for(let s of e.graph.allEdges()){let l=s.from===t?"out":s.to===t?"in":null;if(!l)continue;let c=l==="out"?s.to:s.from,u=e.graph.getNode(c);if(!u)continue;let p=(l==="out"?r:e.schema.tryDefinition(u.kind))?.edges?.[s.kind],w=l==="in"?p?.inverse??p?.description:p?.description,R=`${s.kind}|${l}|${w??""}`;(i.get(R)??(()=>{let x={edgeKind:s.kind,direction:l,...w?{description:w}:{},targets:[]};return i.set(R,x),x})()).targets.push({id:u.id,kind:u.kind,label:o(u)})}return{id:t,kind:a.kind,label:o(a),fields:Kt(Xe(e.schema,e.graph,a),r),violations:En(e.violations(n.context),[t]),actions:Bn(e,[t],{focus:t,...n.principal?{principal:n.principal}:{},...n.context?{context:n.context}:{}}),links:[...i.values()].map(s=>{let l=gr(s.targets.flatMap(c=>{let u=e.graph.getNode(c.id);return u?[u]:[]}),c=>e.schema.tryDefinition(c));return{...s,targets:[...s.targets].map(c=>l.has(c.id)?{...c,apart:l.get(c.id)}:c).sort((c,u)=>c.label.localeCompare(u.label))}})}}function tt(e,t,n={}){return{kind:t,members:e.graph.nodesOfKind(t),actions:Bn(e,[],{kindSelection:[t],...n.principal?{principal:n.principal}:{},...n.context?{context:n.context}:{}})}}function Ro(e,t){let n=(o,i)=>`${o}|${JSON.stringify(i)}`,a=new Map;for(let o of[...e.affordances,...e.withheld]){if(o.provider!=="invariant")continue;let i=n(o.mutation,o.args);a.has(i)||a.set(i,o.rank??Number.MAX_SAFE_INTEGER)}let r=Number.MAX_SAFE_INTEGER;return[...t].map((o,i)=>({repair:o,declared:i})).sort((o,i)=>(a.get(n(o.repair.mutation,o.repair.args??{}))??r)-(a.get(n(i.repair.mutation,i.repair.args??{}))??r)||o.declared-i.declared).map(o=>o.repair)}function nt(e){let t=e.schema.kinds.map(r=>({kind:r,plural:Ue(e.schema,r),count:e.graph.nodesOfKind(r).length})),n=new Map;for(let r of e.graph.allEdges()){let o=e.graph.getNode(r.from),i=e.graph.getNode(r.to);if(!o||!i)continue;let s=`${r.kind}|${o.kind}|${i.kind}`;n.set(s,(n.get(s)??0)+1)}let a=[];for(let{kind:r}of t){let o=e.schema.tryDefinition(r)?.edges??{};for(let[i,s]of Object.entries(o)){let l=s.to==="*"||s.to===void 0?(()=>{let c=[...n.keys()].filter(u=>u.startsWith(`${i}|${r}|`)).map(u=>u.split("|")[2]);return c.length>0?c:["*"]})():s.to;for(let c of l)a.push({edgeKind:i,from:r,to:c,...s.description?{description:s.description}:{},...s.inverse?{inverse:s.inverse}:{},count:n.get(`${i}|${r}|${c}`)??0})}}return{kinds:t,relations:a}}var je=H(ve(),1);var Ct=H(ve(),1);var Ne=H(j(),1),Ri={problems:"Problems",search:"Search",map:"Connections",places:"Pictures","~draft":"A view drawn"},Li=e=>{try{return decodeURIComponent(e)}catch{return e}};function Ti(e,t,n={}){let{store:a}=e,r=a.schema,o=(n.base??"").replace(/\/$/,""),[i="/",s=""]=t.split("#")[0].split("?"),l=(O,D,g)=>({label:O,href:`${o}${D}`,path:D,...g?{current:g}:{}}),c=O=>{let D=n.registry?.sectionOf(O);return D?[D.path===void 0?{label:D.label}:l(D.label,D.path)]:[]},u=O=>n.registry?.sectionOf(O)?.label,k=O=>{let D=u(O);return D===void 0?{}:{section:D}},[p,w,...R]=i.split("/").filter(Boolean).map(Li);if(p===void 0)return{as:"home",label:"Home",trail:[l("Home","/",!0)]};if(p==="places"&&w!==void 0&&R.length===0){let O=new URLSearchParams(s).get("of"),D=new Set(Ge(a,e.principal)),g=e.views?.places()??[],N=g.find(T=>D.has(T.kind)&&T.as===w&&(!O||V(r,T.kind)===O));if(N){let T=Xt(N.as,It(N,g)?V(r,N.kind):void 0);return{as:"place",kind:N.kind,label:N.title,...k(N.kind),trail:[...c(N.kind),l(N.title,T,!0)]}}}let f=R.length===0?ke(r,p):void 0;if(f!==void 0){let O=l(Ue(r,f),`/${V(r,f)}`);if(w===void 0)return{as:"list",kind:f,label:O.label,...k(f),trail:[...c(f),{...O,current:!0}]};let D=a.graph.getNode(w),g=D&&D.kind===f?oe(r.tryDefinition(f),D):"Nothing lives here";return{as:"record",kind:f,id:w,label:g,...k(f),trail:[...c(f),O,l(g,Y(r,f,w),!0)]}}let x=Ri[p]??Ei((R.at(-1)??w??p).replace(/[-_]+/g," "));return{as:"page",label:x,trail:[l(x,i,!0)]}}var Ei=e=>e.charAt(0).toUpperCase()+e.slice(1),Zn=(0,Ct.createContext)(null);function Ni(e){let t=ye(),n=et("/");return ne(e.context.store),Ti(e.context,`${t.pathname}${t.search}`,{registry:e.registry,base:n})}var Mi={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},Lo={display:"flex",alignItems:"center",gap:6,minWidth:0},To={display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",minWidth:0,lineHeight:"24px"};function ht({context:e,style:t}){let n=(0,Ct.useContext)(Zn),a=(0,Ct.useContext)(Pt);return At(a??$i,"trail")||n?.registry?.without().has("trail")?null:(0,Ne.jsx)(Oi,{root:n??{context:e,registry:void 0},context:e,...t?{style:t}:{}})}function Oi({root:e,context:t,style:n}){let a=Ni(e);return a.trail.length<2?null:(0,Ne.jsx)(Hi,{here:a,mark:a.as==="record"?{kind:a.kind,context:t}:void 0,...n?{style:n}:{},"data-testid":"page-trail"})}var $i={count:()=>0,place:()=>()=>{},subscribe:()=>()=>{}};function Hi({here:e,mark:t,style:n,...a}){let r=e.as==="record"?e.trail.length-2:-1;return(0,Ne.jsx)("nav",{"aria-label":"You are here","data-graview-trail":"",style:{minWidth:0,...n},...a,children:(0,Ne.jsx)("ol",{style:{...Se,listStyle:"none",padding:0,display:"flex",alignItems:"center",gap:6,minWidth:0,overflow:"hidden"},children:e.trail.map((o,i)=>(0,Ne.jsxs)("li",{style:o.current?Mi:{...Lo,flexShrink:i===e.trail.length-2?0:1,maxWidth:"100%"},...o.current?{"aria-current":"page"}:{},children:[i>0&&!o.current?(0,Ne.jsx)("span",{"aria-hidden":"true",children:"\u203A"}):null,o.current?o.label:o.path!==void 0?(0,Ne.jsxs)(F,{to:o.path,style:{...be,...Lo},...i===r?{"data-testid":"trail-list"}:{},children:[i===r&&t?(0,Ne.jsx)(ge,{kind:t.kind,brand:t.context.brand,schema:t.context.store.schema,size:8}):null,(0,Ne.jsx)("span",{style:To,children:o.label})]}):(0,Ne.jsx)("span",{style:To,children:o.label})]},`${i}:${o.label}`))})})}var C=H(j(),1);function He(e){let t=e.views;if(!t)return[];let n=new Set(Ge(e.store,e.principal));return t.places().filter(a=>n.has(a.kind))}function an(e,t){if(!t.over)return[t.kind];let n=new Set(Ge(e.store,e.principal));return t.over.filter(a=>a===t.kind||n.has(a))}var at=e=>`place:${e.kind}:${e.as}`;function he(e,t){return Xt(t.as,It(t,e.views?.places()??[])?V(e.store.schema,t.kind):void 0)}function Rt(e,t){let n=e.schema.tryDefinition(t);return e.graph.nodesOfKind(t).filter(a=>lt(n,a))}function Xn(e,t,n){let a=(o,i)=>dt(e.schema,i,o),r=(typeof t=="string"?[t]:t).map(o=>a(Rt(e,o).length,o)).join(" and ");return n?`${r} across ${a(Rt(e,n).length,n)}`:r}function ea({context:e,place:t,chosen:n,filter:a}){let{store:r,views:o,invariantContext:i}=e,l=o?.resolve(t.kind,{cardinality:"many",fidelity:"full"},t.as)?.view,c=[...new Set(r.violations(i).flatMap(p=>p.nodeIds))],u=an(e,t).flatMap(p=>Rt(r,p));if(!l)return null;let k=Fi(r,u,a,c);return(0,C.jsx)(Dn,{kind:t.kind,view:t.title,children:(0,C.jsx)(yt,{when:pt(l),children:(0,C.jsx)(l,{nodes:k,label:t.title,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...n&&n.length>0?{implicated:n}:{},...c.length>0?{flagged:c}:{}})})})}function Fi(e,t,n,a){let r=n?Dt({filter:n}).filter??[]:[];return r.length===0?t:Ut(t,{filter:r},{schema:e.schema,graph:e.graph,flagged:new Set(a)}).nodes}function Ii({store:e,views:t,as:n,invariantContext:a}){ne(e);let r={store:e,views:t,...a?{invariantContext:a}:{}},o=t.places().find(i=>i.as===n);return o?(0,C.jsx)(ea,{context:r,place:o}):null}function Di({context:e,kind:t}){let{store:n,views:a,invariantContext:r}=e,o=Rt(n,t),i=n.schema.tryDefinition(t),s=z(n,t),c=a?.resolve(t,{cardinality:"many",fidelity:"full"})?.view,u=[...new Set(n.violations(r).flatMap(R=>R.nodeIds))];if(c&&!ct(c))return(0,C.jsx)(Dn,{kind:t,children:(0,C.jsx)(c,{nodes:o,label:s,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1,...u.length>0?{flagged:u}:{}})});let k=a?.resolve(t,{cardinality:"one",fidelity:"summary"})?.view,p=8,w=o.slice(0,p);return(0,C.jsxs)("div",{"data-testid":"kind-sheet",style:k?{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:[w.map(R=>k?(0,C.jsx)(k,{node:R,fidelity:"summary",cardinality:"one",mode:"fullscreen",selected:!1,...u.includes(R.id)?{flagged:[R.id]}:{}},R.id):(0,C.jsx)("span",{style:{padding:"8px 14px",borderRadius:8,border:"1px solid var(--graview-edge-bright)",background:"var(--graview-ground)",color:"var(--graview-ink)"},children:oe(i,R)},R.id)),o.length>p?(0,C.jsxs)("span",{style:{...A,alignSelf:"center",padding:"0 6px"},children:["+",o.length-p," more ",s.toLowerCase()]}):null]})}function ta(e){let{store:t}=e,n=bo(e),a=He(e),r=e.views?.arrangement?.()?.order??[],o=l=>{let c=l.name===void 0?-1:r.indexOf(`view:${l.name}`);return c>=0?c-r.length:n.indexOf(l.kind)},i=Mn([...a].sort((l,c)=>o(l)-o(c))).filter(l=>!l.hidden),s=new Set(i.flatMap(l=>l.over??[l.kind]));return[...i.map(l=>({key:at(l),kind:l.kind,title:qa(l,a,t.schema),to:he(e,l),place:l})),...en(e).filter(l=>!s.has(l)).map(l=>({key:`kind:${l}`,kind:l,title:z(t,l),to:`/${V(t.schema,l)}`}))]}var Eo=.72,Wi=540,No=16/10;function Gi(e){let t=(0,je.useRef)(null),[n,a]=(0,je.useState)(e);return(0,je.useLayoutEffect)(()=>{let r=t.current;if(!r||typeof ResizeObserver>"u")return;let o=()=>{let s=r.getBoundingClientRect().width;s>0&&a(l=>Math.abs(l-s)<.5?l:s)};o();let i=new ResizeObserver(o);return i.observe(r),()=>i.disconnect()},[]),{ref:t,width:n}}function Bi(e){for(let t=e.parentElement;t;t=t.parentElement)if(/(auto|scroll)/.test(getComputedStyle(t).overflowY))return t;return null}function Ki(e){let[t,n]=(0,je.useState)(()=>typeof IntersectionObserver>"u");return(0,je.useLayoutEffect)(()=>{let a=e.current;if(t||!a)return;let r=new IntersectionObserver(o=>{o.some(i=>i.isIntersecting)&&(r.disconnect(),n(!0))},{root:Bi(a),rootMargin:"50% 0px"});return r.observe(a),()=>r.disconnect()},[t,e]),t}function na({context:e,entry:t,small:n=!1}){let{store:a,brand:r,principal:o}=e,{ref:i,width:s}=Gi(Wi),l=Ki(i),c=s/Eo,u=Rt(a,t.kind),k=a.schema.tryDefinition(t.kind),p=u.length===0?tt(a,t.kind,{...o?{principal:o}:{},...e.invariantContext?{context:e.invariantContext}:{}}).actions.affordances[0]:void 0,w=t.place!==void 0;return(0,C.jsxs)(F,{to:t.to,"data-testid":w?"place-card":"kind-card",className:"graview-gallery-card",style:{...be,display:"grid",gap:10,alignContent:"start",minWidth:0},children:[(0,C.jsxs)("span",{ref:i,"data-testid":w?"place-picture":"kind-picture","aria-hidden":"true",inert:!0,style:{display:"block",position:"relative",width:"100%",aspectRatio:`${No}`,overflow:"hidden",borderRadius:12,border:"1px solid var(--graview-edge)",background:"var(--graview-panel)",pointerEvents:"none"},children:[(0,C.jsx)("span",{style:{position:"absolute",left:0,top:0,width:c,height:c/No,display:"grid",gridTemplateRows:"minmax(0, 1fr)",transform:`scale(${Eo})`,transformOrigin:"0 0"},children:l?(0,C.jsx)(Jt.Provider,{value:null,children:t.place?(0,C.jsx)(ea,{context:e,place:t.place}):(0,C.jsx)(Di,{context:e,kind:t.kind})}):null}),u.length===0?(0,C.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,C.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,C.jsxs)("span",{style:{fontFamily:_n,fontWeight:"var(--graview-weight-display)"},children:["No ",z(a,t.kind).toLowerCase()," yet"]}),p?(0,C.jsxs)("span",{style:A,children:["Begin with \u201C",p.label,"\u201D"]}):null]})}):null]}),(0,C.jsxs)("span",{style:{display:"grid",gap:2,minWidth:0},children:[(0,C.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},children:[w?null:(0,C.jsx)(ge,{kind:t.kind,brand:r,schema:a.schema,size:8}),(0,C.jsx)("span",{style:{fontFamily:_n,fontSize:n?"var(--graview-text-body)":"var(--graview-text-heading)",fontWeight:"var(--graview-weight-display)",lineHeight:1.3,overflowWrap:"anywhere",textWrap:"balance"},children:t.title})]}),(0,C.jsxs)("span",{style:A,children:[t.place?Xn(a,an(e,t.place),t.place.across):Xn(a,t.kind),!w&&k?.description?` \xB7 ${k.description}`:null]})]})]})}var Mo={display:"grid",gap:"32px 28px",gridTemplateColumns:"repeat(auto-fill, minmax(min(420px, 100%), 1fr))"},qi={display:"grid",gap:"20px 16px",gridTemplateColumns:"repeat(auto-fill, minmax(clamp(140px, 22%, 260px), 1fr))"},ji=`
2
- .graview-gallery-card > span:first-child { transition: border-color 160ms ease, box-shadow 160ms ease; }
3
- .graview-gallery-card:hover > span:first-child,
4
- .graview-gallery-card:focus-visible > span:first-child { border-color: var(--graview-edge-bright); box-shadow: 0 1px 0 var(--graview-edge), 0 10px 30px -18px var(--graview-ink); }
5
- `;function rn({context:e,small:t=!1}){ne(e.store);let n=ta(e);return n.length===0?null:(0,C.jsxs)("section",{style:t?qi:Mo,"data-testid":"gallery",...t?{"data-small":""}:{},children:[(0,C.jsx)("style",{children:ji}),n.map(a=>(0,C.jsx)(na,{context:e,entry:a,small:t},a.key))]})}function aa({context:e}){let{store:t}=e;ne(t);let n=Mn(He(e)).filter(r=>!r.hidden),a=ta(e);return(0,C.jsxs)(le,{context:e,style:gt,children:[(0,C.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,C.jsx)("p",{style:Se,children:n.length===0?"None of its own yet":`${n.length} ${n.length===1?"picture":"pictures"}`}),(0,C.jsx)(de,{context:e,children:"Pictures"}),(0,C.jsx)("p",{style:ie,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,C.jsx)("div",{style:Mo,"data-testid":"places",children:a.map(r=>(0,C.jsx)(na,{context:e,entry:r},r.key))}):null]})}var Vi={lede:!0},Ui={lede:!1},_i={...ie,textWrap:"pretty"};function zi(e,t){if(t===void 0)return;let[n]=xr(kr([t]),Ar(e.store,null,null,e.brand?{money:e.brand}:{}));return n?.t==="headline"&&!n.problem&&n.text.trim()!==""?n.text:void 0}function ra({context:e}){let{store:t,principal:n}=e;ne(t);let a=_e(),r=qe(),[o]=ft(),i=decodeURIComponent(a.as??""),[s,l]=(0,je.useState)(null),c=o.get("of"),u=o.get("filter"),p=He(e).find(T=>T.as===i&&(!c||V(t.schema,T.kind)===c));if(!p)return(0,C.jsxs)(le,{context:e,children:[(0,C.jsx)(de,{context:e,children:"No picture is called that."}),(0,C.jsx)("p",{style:ie,children:(0,C.jsx)(F,{to:"/places",style:We,children:(0,C.jsx)(Ke,{children:"The pictures there are"})})})]});let w=z(t,p.kind),R=e.views?.resolve(p.kind,{cardinality:"many",fidelity:"full"},p.as)?.view,f=R?.flows===!0,x=R?.ownHeading===!0,O=R?.creates!==!1,D=zi(e,R?.lede),g=tt(t,p.kind,{...n?{principal:n}:{},...e.invariantContext?{context:e.invariantContext}:{}}),N=O?g.actions.affordances.map(T=>({affordance:T,mutation:t.allMutations().find(E=>E.name===T.mutation)})).filter(T=>T.mutation!==void 0):[];return(0,C.jsxs)(le,{context:e,style:{...gt,gap:"var(--graview-space-6, 32px)"},children:[(0,C.jsxs)("header",{style:{display:"grid",gap:"var(--graview-space-2, 8px)"},children:[(0,C.jsx)(ht,{context:e}),(0,C.jsx)(de,{context:e,unseen:x,children:p.title}),x?null:(0,C.jsx)("p",{style:_i,"data-testid":"place-lede",...D!==void 0?{"data-graview-lede":"headline"}:{},children:D??`${Xn(t,an(e,p),p.across)}.`}),u&&!f?(0,C.jsxs)("p",{style:{...A,margin:0},"data-testid":"place-narrowed",children:[`Only those where ${u.split(",").map(T=>T.replace(":"," is ")).join(" and ")}. `,(0,C.jsx)(F,{to:`?${(()=>{let T=new URLSearchParams(o);return T.delete("filter"),T.toString()})()}`,style:{...U,...A},children:"Show all"})]}):null,(0,C.jsx)("p",{style:{...A,margin:0,display:"flex",flexWrap:"wrap",gap:"4px 16px"},children:an(e,p).map((T,E)=>(0,C.jsx)(F,{to:`/${V(t.schema,T)}`,style:{...We,...A},...E===0?{"data-testid":"place-as-list"}:{},children:(0,C.jsxs)(Ke,{children:["All ",(T===p.kind?w:z(t,T)).toLowerCase()," as a list"]})},T))})]}),(0,C.jsx)("div",{"data-testid":"place-lens","data-flows":f?"":void 0,...f?{}:{role:"group","aria-label":p.title,tabIndex:0},style:f?{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:T=>{let E=T.target?.closest("[data-graview-pick]"),re=E?.getAttribute("data-graview-pick"),te=E?.getAttribute("data-graview-joins");if(te)try{let Ae=JSON.parse(te);if(Array.isArray(Ae)&&Ae.every(Fe=>typeof Fe=="string")){T.preventDefault(),l({at:at(p),ids:Ae});return}}catch{}if(!re)return;let Q=t.graph.getNode(re);Q&&(T.preventDefault(),r(Y(t.schema,Q.kind,re)))},children:(0,C.jsx)(ao.Provider,{value:D!==void 0?Vi:Ui,children:(0,C.jsx)(ea,{context:e,place:p,filter:u,...s?.at===at(p)?{chosen:s.ids}:{}})})}),N.length>0?(0,C.jsx)("div",{style:{maxWidth:760,display:"grid",gap:40},"data-testid":"place-creators",children:N.map(({affordance:T,mutation:E})=>(0,C.jsxs)("section",{style:{...se,display:"grid",gap:14},children:[(0,C.jsx)("h2",{style:ee,children:E.title??E.name}),E.description?(0,C.jsx)("p",{style:{...A,margin:0,maxWidth:"58ch"},children:E.description}):null,(0,C.jsx)(Le,{store:t,mutation:E,prefilled:T.args,open:T.open,label:T.label,...n?{principal:n}:{}})]},T.id))}):null]})}function Ji(e,t=document){let n=Qt(e);if(!n)return null;let a=[t,...[...t.querySelectorAll("[data-worker-view]")].flatMap(r=>r.shadowRoot?[r.shadowRoot]:[])];for(let r of a)for(let o of r.querySelectorAll("[id], [data-section]")){let i=o.getAttribute("data-section")??o.id;if(i===e||Qt(i)===n)return o}for(let r of a)for(let o of r.querySelectorAll("h1, h2, h3, h4, h5, h6, [role=heading]"))if(Qt(o.textContent??"")===n)return o;return null}function Oo(e,t={}){if(typeof document>"u"||typeof requestAnimationFrame>"u")return()=>{};let n=t.frames??120,a=0,r=()=>{let o=Ji(e,t.root??document);if(o){o.hasAttribute("tabindex")||o.setAttribute("tabindex","-1"),o.scrollIntoView?.({block:"start"}),o.focus({preventScroll:!0});return}n-=1,n>0&&(a=requestAnimationFrame(r))};return a=requestAnimationFrame(()=>{a=requestAnimationFrame(r)}),()=>cancelAnimationFrame(a)}var q=H(ve(),1);var on=H(ve(),1);var rt=H(j(),1);function $o({context:e}){return ce()?(0,rt.jsxs)(rt.Fragment,{children:[(0,rt.jsx)(Yi,{context:e}),(0,rt.jsx)(so,{face:"pages",on:e.quickAsk??!0})]}):null}function Yi({context:e}){let{store:t}=e,n=ce(),{pathname:a}=ye(),r=(0,on.useRef)(n?.setSelection);return r.current=n?.setSelection,(0,on.useEffect)(()=>{let o=r.current;if(!o)return;let[,i,s]=a.split("/"),l=(()=>{if(i==="places"){let u=e.views?.places().find(k=>k.as===decodeURIComponent(s??""));return u?[De(u.kind)]:[]}let c=i?ke(t.schema,i):void 0;return c&&s?[decodeURIComponent(s)]:c?[Ya(c)]:[]})();o(c=>c.length===l.length&&c.every((u,k)=>u===l[k])?c:l)},[a]),null}var xe=H(ve(),1);var Fo=H(Ai(),1);var me=H(j(),1);var Qi=Wt(Ja(()=>(__graviewPreload(import.meta.url,["./chunk.FTW3K3G6.js","./chunk.UGFDSE37.js","./chunk.QBMIET7P.js","./chunk.WVKXELAF.js","./chunk.ZOW7AC7U.js","./chunk.INBHY3SA.js","./chunk.TDV7JGIQ.js","./chunk.RZQKCLTW.js","./chunk.Y3BEKXYB.js","./chunk.NDLQXQV2.js","./chunk.WUFCRE7O.js","./chunk.XEHLSKHP.js","./chunk.MSM6E6JK.js","./chunk.YGZGMRDC.js","./chunk.6ZJE5M2A.js","./chunk.2SWQI4HF.js","./chunk.QIAH7HHO.js","./chunk.DNJM6WQO.js","./chunk.LEPKPNPA.js","./chunk.5D6SIBOK.js","./chunk.UE5GAP67.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.HUABTCQE.js","./chunk.DXJFAAOI.js","./chunk.5MSNKSTE.js","./chunk.KVQZ5FR6.js","./chunk.2HANQ737.js","./chunk.H536YUAZ.js","./chunk.GZHZLJBF.js","./chunk.OL2N5NUV.js","./chunk.OJGHDWI6.js","./chunk.5DPFAVCZ.js","./chunk.5EZDXWOE.js","./chunk.MIQMPOWF.js","./chunk.T66UK7PQ.js","./chunk.LMXNHBGH.js","./chunk.DBCVZGCC.js","./chunk.WSMYFEGU.js","./chunk.SDO3U72B.js","./chunk.WR63RQGU.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.2KH2LWZL.js")).then(e=>({default:e.TakeBack}))));function Zi({context:e,docked:t,at:n,...a}){let{store:r}=e,o=ne(r),[i]=(0,xe.useState)(()=>r.batches().length),s=(0,xe.useRef)(!1);return s.current||=o>0||!t&&i>0,s.current?(0,me.jsx)(xe.Suspense,{fallback:null,children:(0,me.jsx)(Qi,{context:e,docked:t,at:n,since:i,...a})}):null}function Xi(e,t,n){let{store:a,principal:r,embedded:o}=e;(0,xe.useEffect)(()=>{if(!n)return;let i=s=>{if(!fo(s))return;let l=s.target,c=l instanceof Node&&t.current?.contains(l),u=l===document.body||l===document.documentElement||l===document;if(!(!c&&!(u&&!o))&&go(a,r)){s.preventDefault();try{mo(a,r)}catch{}}};return document.addEventListener("keydown",i),()=>document.removeEventListener("keydown",i)},[a,r,o,t,n])}function Io({context:e,registry:t,root:n,children:a}){let r=(0,xe.useMemo)(Ao,[]),o=t?.without()??new Set;return Xi(e,n,!o.has("undo")),(0,me.jsxs)(Pt.Provider,{value:r,children:[(0,me.jsx)(es,{context:e,placed:r,without:o}),a]})}function es({context:e,placed:t,without:n}){let[a,r]=(0,xe.useState)(!1);(0,xe.useLayoutEffect)(()=>r(!0),[]);let o=At(t,"find"),i=At(t,"undo"),s=ye(),l=Kr();if(!a)return null;let c=s.pathname.split("/").filter(Boolean),k=(c.length===1?ke(e.store.schema,c[0]):void 0)!==void 0;return(0,me.jsxs)(me.Fragment,{children:[!o&&!n.has("find")&&l?(0,Fo.createPortal)((0,me.jsx)(Ho,{context:e,narrowsLists:k}),l.slot):null,!o&&!n.has("find")&&!l?(0,me.jsx)("div",{"data-testid":"face-find-bar",style:{display:"flex",alignItems:"center",padding:"8px 16px",borderBottom:"1px solid var(--graview-edge)",background:"var(--graview-bar)",minWidth:0},children:(0,me.jsx)(Ho,{context:e,narrowsLists:k})}):null,!i&&!n.has("undo")?(0,me.jsx)(Zi,{context:e,docked:!0,at:s.pathname+s.search}):null,l?.own&&!n.has("undo")?(0,me.jsx)(vo,{context:e,own:l.own}):null]})}function Ho({context:e,narrowsLists:t}){return(0,me.jsx)(Pt.Provider,{value:null,children:(0,me.jsx)(Qn,{context:e,narrowsLists:t})})}var ae=H(ve(),1);var Pe=H(j(),1),ts=500,ns=10;function sn(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 as(e){let t=typeof getSelection=="function"?getSelection():null;return t!==null&&!t.isCollapsed&&t.containsNode(e,!0)}function Do(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 Wo({context:e,root:t,children:n}){return ce()===null?(0,Pe.jsx)(Pe.Fragment,{children:n}):(0,Pe.jsx)(rs,{context:e,root:t,children:n})}function rs({context:e,root:t,children:n}){let{setMenuAt:a}=nr(),{store:r}=e,o=r.schema,i=qe(),{pathname:s,search:l}=ye(),c=et("/").replace(/\/$/,""),u=(0,ae.useCallback)((b,S)=>e.views?.places().find(L=>L.as===b&&(S===null||L.kind===S)),[e.views]),k=(0,ae.useCallback)((b,S)=>{let[L="",I,Z]=b.split("/").filter(Boolean).map(m=>{try{return decodeURIComponent(m)}catch{return m}});if(Z!==void 0)return null;if(L==="places"&&I!==void 0){let m=u(I,new URLSearchParams(S).get("of"));return m?{face:"pages",place:m.as,about:[De(m.kind)],title:m.title}:null}let X=ke(o,L);return X?I===void 0?{face:"pages",about:[De(X)],title:Ue(o,X)}:r.graph.getNode(I)?{face:"pages",on:I,about:[I]}:null:null},[o,r,u]),p=(0,ae.useCallback)(b=>{let S=b.href;try{let L=new URL(S,location.href);if(L.origin===location.origin&&(c===""||L.pathname===c||L.pathname.startsWith(`${c}/`))){let I=k(L.pathname.slice(c.length),L.search);if(I)return{...I,href:S}}}catch{}return{face:"pages",about:[],href:S}},[c,k]),w=(0,ae.useCallback)(()=>k(s,l)??{face:"pages",about:[]},[k,s,l]),R=(0,ae.useCallback)(b=>{let S=w(),L=b.closest("[data-graview-field]")?.getAttribute("data-graview-field");if(L&&S.on!==void 0&&b.closest("[data-graview-pick], a[href]")===null)return{...S,field:L};let I=b.closest("[data-graview-act]")?.getAttribute("data-graview-act");if(I)return{...S,act:I};let Z=b.closest("a[href]"),X=b.closest("[data-graview-listed]"),m=[b.closest("[data-graview-pick]")?.getAttribute("data-graview-pick"),X&&(!Z||X.contains(Z)&&Z.classList.contains("graview-spec-item-link"))?X.getAttribute("data-graview-listed"):null].map(J=>J?r.graph.getNode(J):void 0).find(Boolean);if(m)return{face:"pages",on:m.id,about:[m.id],href:`${c}${Y(o,m.kind,m.id)}`};if(Z)return p(Z);let M=b.closest("[data-graview-record]")?.getAttribute("data-graview-record");return M&&r.graph.getNode(M)?{face:"pages",on:M,about:[M]}:S},[w,p,r,o,c]),f=(0,ae.useCallback)(b=>{let S=t.current;if(S===null||!S.contains(b)||sn(b)||b.closest("[data-graview-popover]"))return null;let L=R(b);return{face:"pages",on:L.on,about:L.about??[],field:L.field,place:L.place,href:L.href,act:L.act,element:Do(b)}},[R,t]),x=(0,ae.useCallback)((b,S,L)=>{let I=R(b);a({...I,x:Math.round(S),y:Math.round(L),returnTo:Do(b)})},[R,a]),O=(0,ae.useCallback)(b=>{let S=b.getBoundingClientRect();x(b,S.left+Math.min(16,S.width/2),Math.min(S.bottom,S.top+36))},[x]),D=(0,ae.useRef)(0),g=(0,ae.useRef)(null),N=(0,ae.useRef)(!1),T=()=>{g.current&&clearTimeout(g.current.timer),g.current=null};(0,ae.useEffect)(()=>T,[]),(0,ae.useEffect)(()=>{let b=S=>{if(S.defaultPrevented||!(S.key==="ContextMenu"||S.key==="F10"&&S.shiftKey))return;let L=t.current,I=S.target instanceof Element?S.target:null,Z=I===null||I===document.body||I===document.documentElement,X=L!==null&&I!==null&&L.contains(I);if(!X&&!(Z&&document.querySelector("[data-graview-face='pages']")===L)||sn(I)||I?.closest("[data-graview-popover]"))return;S.preventDefault(),D.current=Date.now();let m=X&&I instanceof HTMLElement?I:L?.querySelector("[data-graview-page-title], main h1, main")??null;m&&O(m)};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[t,O]),(0,ae.useEffect)(()=>{let b=t.current;if(!b)return;let S=L=>{let I=L.detail;I&&a({...I,face:"pages"})};return b.addEventListener(Fn,S),()=>b.removeEventListener(Fn,S)},[t,a]);let E=(0,ae.useMemo)(()=>b=>{if(b.face!=="pages")return null;let S=[],L=b.on===void 0?void 0:r.graph.getNode(b.on),I=b.place===void 0?void 0:e.views?.places().find(pe=>pe.as===b.place),Z=L?void 0:b.about.length===1&&b.about[0].startsWith("aggregate:")&&!I?os(b.about[0]):void 0,X=L?Y(o,L.kind,L.id):I?he(e,I):Z?`/${V(o,Z)}`:void 0,m=X!==void 0&&s===X.split("?")[0];X!==void 0&&!m&&S.push({id:"open",label:"Open",run:()=>i(X)});let M=X!==void 0?`${c}${X}`:b.href;M!==void 0&&S.push({id:"open-in-a-new-tab",label:"Open in a new tab",run:()=>void window.open(M,"_blank","noopener")});let J=L?`#focus=${encodeURIComponent(L.id)}`:I?`#focus=${encodeURIComponent(De(I.kind))}&view=${encodeURIComponent(I.as)}`:Z?`#focus=${encodeURIComponent(De(Z))}`:void 0;if(J!==void 0&&(e.overview||!e.embedded)){let pe=e.overview;S.push({id:"in-the-scene",label:"Show in the scene",run:()=>pe?pe(J):location.assign(`${e.sceneHref??"/"}${J}`)})}return L===void 0&&b.href===void 0&&S.push({id:"find",label:"Find\u2026",run:()=>{let pe=t.current?.querySelector('[data-testid="nav-find"]')??document.querySelector('[data-testid="nav-find"]');pe&&pe.offsetParent!==null?pe.focus():i("/search")}}),S.length>0?{id:"pages",items:S}:null},[r,o,e,s,c,i,t]),re=(0,ae.useMemo)(()=>b=>{if(b.face!=="pages"||b.field===void 0||b.on===void 0)return null;let S=r.graph.getNode(b.on),L=b.element?.closest("[data-graview-field]")??t.current?.querySelector(`[data-graview-field="${CSS.escape(b.field)}"]`);return!S||!(L instanceof HTMLElement)||!L.hasAttribute("data-graview-editable")?null:{id:"field",at:"start",items:[{id:"change-field",label:`Change \u201C${Ea(o.tryDefinition(S.kind),b.field)}\u201D`,run:()=>L.click()}]}},[r,o,t]),te=co(),Q=Er(),Ae=Jr(),Fe=(0,ae.useCallback)((b,S)=>{s===he(e,b).split("?")[0]&&i(S?he(e,S):"/")},[s,e,i]),Ce=uo(Fe),Re=(0,ae.useMemo)(()=>[re,Ae,E,...Ce?[Ce]:[],...Q?[Q]:[],...te?[te]:[]],[re,Ae,E,Ce,Q,te]);return(0,Pe.jsxs)(Cr,{sections:Re,children:[(0,Pe.jsx)("div",{"data-graview-menu-ground":"",style:{display:"contents"},onContextMenu:b=>{let S=b.target;b.shiftKey||sn(S)||as(S)||(b.preventDefault(),!S.closest("[data-graview-popover]")&&(Date.now()-D.current<700||(b.clientX===0&&b.clientY===0&&S instanceof HTMLElement?O(S):x(S,b.clientX,b.clientY))))},onPointerDown:b=>{if(N.current=!1,b.pointerType==="mouse"||!b.isPrimary)return;let S=b.target;if(sn(S)||S.closest("[data-graview-choose], [data-graview-popover]"))return;T();let{clientX:L,clientY:I}=b;g.current={x:L,y:I,timer:setTimeout(()=>{g.current=null,N.current=!0,D.current=Date.now(),x(S,L,I)},ts)}},onPointerMove:b=>{let S=g.current;S&&Math.hypot(b.clientX-S.x,b.clientY-S.y)>ns&&T()},onPointerUp:T,onPointerCancel:T,onClickCapture:b=>{N.current&&(N.current=!1,b.preventDefault(),b.stopPropagation())},children:n}),(0,Pe.jsx)(is,{openAt:O,readyAt:f}),(0,Pe.jsx)(po,{placement:"page"}),(0,Pe.jsx)(Nr,{})]})}function os(e){let t=e.slice(10).split("+");return t.length===1&&t[0]?t[0]:void 0}function is({openAt:e,readyAt:t}){return(0,Pe.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,Pe.jsx)(io,{placement:"menu",openActs:e,aimAt:t})})}var K=H(j(),1);function Go(e,t){return t==="*"?{label:"anything",path:null}:{label:z(e,t),path:`/${V(e.schema,t)}`}}function ss({context:e,relation:t}){let{store:n}=e,a=Go(n,t.from),r=Go(n,t.to),o=i=>i.path?(0,K.jsx)(F,{to:i.path,style:{...be,fontWeight:550},children:i.label}):(0,K.jsx)("span",{children:i.label});return(0,K.jsxs)("li",{"data-testid":"relation","data-relation":t.edgeKind,style:{display:"grid",gridTemplateColumns:"30px minmax(0, 1fr) auto",gap:12,alignItems:"baseline"},children:[(0,K.jsx)(lo,{edgeKind:t.edgeKind,...e.brand?.kit?{kit:e.brand.kit}:{}}),(0,K.jsxs)("span",{style:{display:"grid",gap:1},children:[(0,K.jsxs)("span",{children:[o(a)," ",(0,K.jsxs)("span",{style:A,"data-graview-speaks-ids":"",children:[Qe(t.edgeKind)," \u2192"]})," ",o(r)]}),t.description||t.inverse?(0,K.jsxs)("span",{style:A,children:[t.description?Te(t.description):null,t.description&&t.inverse?" \xB7 ":null,t.inverse?`from the other end, ${t.inverse}`:null]}):null]}),r.path?(0,K.jsx)(F,{to:`${r.path}?with=${encodeURIComponent(t.edgeKind)}`,style:{...U,...A,fontVariantNumeric:"tabular-nums",display:"inline-block",minWidth:24,minHeight:24,textAlign:"center"},title:`The ${r.label.toLowerCase()} that have this`,children:t.count}):(0,K.jsx)("span",{style:{...A,fontVariantNumeric:"tabular-nums"},children:t.count})]})}function Bo({context:e,heading:t=!0}){let{store:n}=e,a=new Set(Ge(n,e.principal)),r=nt(n).relations.filter(o=>a.has(o.from)&&(o.to==="*"||a.has(o.to)));return r.length===0?null:(0,K.jsxs)("section",{style:{...se,display:"grid",gap:12},"data-testid":"kind-map",children:[t?(0,K.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[(0,K.jsx)("h2",{style:ee,children:(0,K.jsx)(F,{to:"/map",style:be,children:"Connections"})}),(0,K.jsx)("span",{style:A,children:r.length===1?"1 relation":`${r.length} relations`})]}):null,(0,K.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:10},children:r.map(o=>(0,K.jsx)(ss,{context:e,relation:o},`${o.edgeKind}|${o.from}|${o.to}`))})]})}function oa({context:e}){let{store:t}=e;ne(t);let n=new Set(Ge(t,e.principal)),a=nt(t),r=a.relations.filter(o=>n.has(o.from));return(0,K.jsxs)(le,{context:e,children:[(0,K.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,K.jsx)("p",{style:Se,children:r.length===0?"No relations":`${r.length} ${r.length===1?"relation":"relations"}`}),(0,K.jsx)(de,{context:e,children:"Connections"}),(0,K.jsx)("p",{style:ie,children:r.length===0?"Nothing here is declared to relate to anything else yet.":"The kinds this installation holds, and the relations declared between them \u2014 each in the declaration's own words, with how many of it there are."})]}),(0,K.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"6px 18px"},"data-testid":"map-kinds",children:a.kinds.filter(o=>n.has(o.kind)).map(o=>(0,K.jsxs)("li",{style:{display:"inline-flex",alignItems:"center",gap:8},children:[(0,K.jsx)(ge,{kind:o.kind,brand:e.brand,schema:t.schema,size:7}),(0,K.jsx)(F,{to:`/${V(t.schema,o.kind)}`,style:U,children:o.plural}),(0,K.jsx)("span",{style:A,children:o.count})]},o.kind))}),(0,K.jsx)(Bo,{context:e,heading:!1})]})}function Ko({context:e}){let n=[...ce()?.robots.values()??[]].filter(r=>r.mode==="asking"&&r.say);if(n.length===0)return null;let{store:a}=e;return(0,K.jsxs)("section",{style:{...se,display:"grid",gap:10},"data-testid":"seat-questions",children:[(0,K.jsx)("h2",{style:ee,children:n.length===1?"The seat asked something":`The seat asked ${n.length} things`}),(0,K.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:8},children:n.map(r=>{let o=r.at?a.graph.getNode(r.at):void 0;return(0,K.jsxs)("li",{style:{display:"grid",gap:2},children:[(0,K.jsx)("span",{children:r.say}),o?(0,K.jsxs)(F,{to:Y(a.schema,o.kind,o.id),style:{...U,...A},children:[oe(a.schema.tryDefinition(o.kind),o)," \u2192"]}):null]},r.participant)})})]})}function jo(e){let t=new Set(e.schema.kinds);return(Array.isArray(e.purpose?.jobs)?e.purpose.jobs:[]).flatMap(a=>{if(typeof a!="object"||a===null||typeof a.name!="string"||typeof a.ask!="string"||!t.has(a.kind))return[];let r=Nn(a.sort);return[{name:a.name,ask:a.ask,kind:a.kind,plural:Ta(e.schema,a.kind),...a.where!==void 0?{where:a.where}:{},...r?{sort:r}:{},...a.act!==void 0?{act:a.act}:{},...a.roles&&a.roles.length>0?{roles:[...a.roles]}:{}}]})}function Vo(e,t){return e.filter(n=>Mr(n,t.roles))}var ln=new Map;function qo(e){if(!ln.has(e))try{ln.set(e,za(e))}catch(t){if(!(t instanceof _a))throw t;ln.set(e,null)}return ln.get(e)}var ls=e=>e instanceof $n?e.nodes.length>0:Array.isArray(e)?e.length>0:!!e,ds=(e,t)=>t instanceof $n?t.nodes.length:t!==null&&typeof t=="object"&&!Array.isArray(t)?oe(e.tryDefinition(t.kind),t):t;function Uo(e,t,n){let a=e;if(a.kindsKeptFrom(n).has(t.kind)||!a.schema.tryDefinition(t.kind))return{count:0,ids:[]};let r=a.seenBy(n),o=r.graph,i=r.schema,s=Pr(i),l=r.today?.(),c=(x,O)=>Ua(x,{graph:o,subject:O,kinds:s,...l?{today:l}:{}}),u=t.where===void 0?void 0:qo(t.where);if(u===null)return{count:0,ids:[]};let k=o.nodesOfKind(t.kind).filter(x=>{if(!u)return!0;try{return ls(c(u,x))}catch(O){if(!(O instanceof Hn))throw O;return!1}}),p=Nn(t.sort),w=p&&p.by!=="label"?qo(p.by):void 0,f=(p?Ga(k,p,x=>{if(p.by==="label")return oe(i.tryDefinition(x.kind),x);if(w)try{return ds(i,c(w,x))}catch(O){if(!(O instanceof Hn))throw O;return}}):k).map(x=>x.id);return{count:f.length,ids:f}}var dn=H(ve(),1);var _=H(j(),1),cs=5,ps=3,zo={kind:"human"};function Jo(e){if(!e.app)return[];let t=e.principal??zo;return Vo(jo(e.app),t).map(n=>({job:n,...Uo(e.store,n,t)}))}function Yo({context:e,answered:t}){let n=t.filter(i=>i.count>0),a=t.filter(i=>i.count===0),[r,...o]=n;return(0,_.jsxs)("div",{style:{display:"grid",gap:40,maxWidth:"46rem",outline:"none"},"data-testid":"jobs",tabIndex:-1,children:[(0,_.jsx)("style",{children:mt}),r?(0,_.jsx)(_o,{context:e,answered:r,leads:!0}):null,o.map(i=>(0,_.jsx)(_o,{context:e,answered:i},i.job.name)),a.length>0?(0,_.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},"data-testid":"jobs-quiet",children:a.map(({job:i})=>(0,_.jsxs)("li",{"data-testid":"job-quiet","data-job":i.name,style:{overflowWrap:"anywhere"},children:[i.ask," ",(0,_.jsxs)("span",{style:A,children:["No ",z(e.store,i.kind).toLowerCase()," right now."]})]},i.name))}):null]})}function _o({context:e,answered:t,leads:n=!1}){let{store:a}=e,{job:r,count:o,ids:i}=t,s=i.slice(0,n?cs:ps),l=z(a,r.kind),c=n?(0,_.jsx)(de,{context:e,"data-testid":"job-ask",children:r.ask}):(0,_.jsx)("h2",{style:ee,"data-testid":"job-ask",children:r.ask});return(0,_.jsxs)("section",{className:"graview-list",style:{display:"grid",gap:n?12:8,minWidth:0},"data-testid":"job","data-job":r.name,...n?{"data-leads":""}:{},children:[(0,_.jsxs)("header",{style:{display:"grid",gap:4},children:[c,(0,_.jsx)("p",{style:{...n?ie:A,margin:0},"data-testid":"job-count",children:dt(a.schema,r.kind,o)})]}),(0,_.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",borderBottom:"1px solid var(--graview-edge)"},"data-testid":"job-rows",children:s.map(u=>(0,_.jsx)(us,{context:e,job:r,id:u},u))}),(0,_.jsxs)("p",{style:{...A,margin:0,display:"flex",flexWrap:"wrap",gap:"0 12px",alignItems:"baseline"},children:[o>s.length?(0,_.jsxs)("span",{"data-testid":"job-more",children:[o-s.length," more"]}):null,(0,_.jsx)(F,{to:`/${V(a.schema,r.kind)}`,style:We,"data-testid":"job-all",children:(0,_.jsxs)(Ke,{children:["All ",l.toLowerCase()]})})]})]})}function us({context:e,job:t,id:n}){let{store:a,principal:r,invariantContext:o}=e,[i,s]=(0,dn.useState)(!1),l=(0,dn.useRef)(null),c=a.seenBy(r??zo).graph.getNode(n);if(!c)return null;let u=a.schema.tryDefinition(c.kind),k=oe(u,c),p=kt(c,u,k),w=t.act?nn(a,n,{...r?{principal:r}:{},...o?{context:o}:{}})?.actions.affordances.find(x=>x.mutation===t.act&&x.provider!=="invariant"):void 0,R=w?a.allMutations().find(x=>x.name===w.mutation):void 0,f=`job-${t.name}-${n}`;return(0,_.jsxs)("li",{ref:l,"data-testid":"job-row","data-graview-record":n,style:{position:"relative",display:"grid",gridTemplateColumns:"minmax(0, 1fr) auto",alignItems:"center",gap:"8px 12px",minHeight:"2.75rem",padding:"8px 0",borderTop:"1px solid var(--graview-edge)"},children:[(0,_.jsxs)("span",{style:{display:"grid",gap:2,minWidth:0},children:[(0,_.jsx)(F,{to:Y(a.schema,c.kind,n),className:"graview-row-title",...k.length>60?{title:k}:{},children:k}),p.length>0?(0,_.jsx)("span",{className:"graview-row-glance",children:(0,_.jsx)(xt,{runs:p})}):null]}),w&&R?(0,_.jsx)("button",{type:"button","data-testid":"job-act","data-graview-act":w.mutation,"aria-expanded":i,"aria-controls":f,"aria-label":`${w.label}: ${k}`,onClick:()=>s(!i),style:{...fe,position:"relative",...i?{borderColor:"var(--graview-accent)",color:"var(--graview-accent)"}:{}},children:w.label}):null,i&&w&&R?(0,_.jsx)("div",{id:f,style:{gridColumn:"1 / -1",position:"relative",display:"grid",gap:10,padding:"4px 0 8px"},children:(0,_.jsx)(Le,{store:a,mutation:R,prefilled:w.args,open:w.open,label:w.label,autoFocus:!0,onDone:()=>{let x=l.current?.closest('[data-testid="jobs"]');s(!1),requestAnimationFrame(()=>{((l.current?.isConnected?l.current.querySelector('[data-testid="job-act"]'):null)??x?.querySelector('[data-testid="job-act"]')??x)?.focus()})},...r?{principal:r}:{}})}):null]})}var W=H(j(),1);function ia({context:e}){let{principal:t}=e,{store:n,brand:a,invariantContext:r}=e;ne(n);let o=n.violations(r),i=`${o.length===1?"A rule is broken":"Rules are broken"} \u2014 see what, and what would fix it`,s=[...n.log.all()].slice(-5).reverse(),c=en(e).map(g=>({kind:g,members:n.graph.nodesOfKind(g).filter(N=>lt(n.schema.tryDefinition(g),N))})),u=c.filter(g=>g.members.length>0),k=c.map(g=>({entry:g,creator:n.allMutations().find(N=>(N.creates??[]).includes(g.kind)&&n.permits({name:N.name,args:{}},e.principal).ok)})).find(g=>g.creator!==void 0),p=u.length===0?"Nothing here yet.":`${u.map(g=>dt(n.schema,g.kind,g.members.length)).join(", ").replace(/, ([^,]*)$/," and $1")}.`,w=e.views?.homeView?.(),R=n.schema.kinds.some(g=>n.graph.nodesOfKind(g).length>0);if(w&&R){let g=a?.subtitle&&a.subtitleDrawn!==!1?(0,W.jsx)("p",{style:{...A,margin:0},"data-testid":"app-subtitle",children:a.subtitle}):null,N=w[Symbol.for("graview.home-blocks")]===!0;return(0,W.jsx)(le,{context:e,style:gt,children:(0,W.jsxs)("div",{style:{display:"grid",gap:12},"data-testid":"home-view",children:[N?null:g,o.length>0?(0,W.jsx)(F,{to:"/problems",style:{...U,color:"var(--graview-warn)"},children:i}):null,(0,W.jsx)(no.Provider,{value:N?g:null,children:(0,W.jsx)(yt,{when:pt(w),children:(0,W.jsx)(w,{cardinality:"many",fidelity:"full",mode:"fullscreen",selected:!1})})})]})})}let f=new Set(Ge(n,e.principal)),x=nt(n).relations.filter(g=>f.has(g.from)&&(g.to==="*"||f.has(g.to))),O=Jo(e),D=O.some(g=>g.count>0);return(0,W.jsxs)(le,{context:e,style:gt,children:[(0,W.jsxs)("header",{style:{display:"grid",gap:12},children:[a?.subtitle&&a.subtitleDrawn!==!1?(0,W.jsx)("p",{style:{...A,margin:0},"data-testid":"app-subtitle",children:a.subtitle}):null,D?null:(0,W.jsx)(de,{context:e,"data-testid":"standing",children:p}),D&&o.length===0?null:(0,W.jsxs)("p",{style:{...ie,display:"grid",gap:4},"data-testid":"standing-card",children:[u.length===0&&k?(0,W.jsxs)("span",{children:["Begin with \u201C",k.creator?.title??k.creator?.name,"\u201D, under"," ",(0,W.jsx)(F,{to:`/${V(n.schema,k.entry.kind)}`,style:U,children:z(n,k.entry.kind)}),"."]}):null,o.length===0?(0,W.jsx)("span",{children:"All rules hold."}):(0,W.jsx)(F,{to:"/problems",style:{...U,color:"var(--graview-warn)"},children:i})]})]}),O.length>0?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Yo,{context:e,answered:O}),(0,W.jsxs)("section",{style:{display:"grid",gap:20},"data-testid":"after-the-jobs",children:[D?(0,W.jsxs)("p",{style:{...A,margin:0},"data-testid":"standing",children:[p,o.length===0?" All rules hold.":""]}):null,(0,W.jsx)(rn,{context:e,small:!0})]})]}):(0,W.jsx)(rn,{context:e}),(0,W.jsxs)("section",{style:{...se,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:ee,children:"What is here"}),x.length>0?(0,W.jsx)(F,{to:"/map",style:{...We,...A,marginLeft:"auto"},"data-testid":"map-link",children:(0,W.jsxs)(Ke,{children:["Connections \xB7 ",x.length===1?"1 relation":`${x.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:g,members:N})=>(0,W.jsx)("li",{style:{maxWidth:"100%"},children:(0,W.jsxs)(F,{to:`/${V(n.schema,g)}`,style:{...be,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)(ge,{kind:g,brand:a,schema:n.schema,size:7}),(0,W.jsx)("span",{style:{fontWeight:550,overflowWrap:"anywhere"},children:z(n,g)}),(0,W.jsx)("span",{style:{...A,fontVariantNumeric:"tabular-nums"},children:N.length===0?"none yet":bt(N.length)})]})},g))})]}),s.length>0?(0,W.jsxs)("section",{style:{...se,display:"grid",gap:10},children:[(0,W.jsx)("h2",{style:ee,children:"Recently"}),(0,W.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},children:s.map(g=>(0,W.jsxs)("li",{style:A,children:[(0,W.jsx)("span",{style:{color:"var(--graview-ink)"},children:g.intent})," \u2014 ",vt(g,t,{graph:n.graph,schema:n.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}})]},g.id))})]}):null]})}var Qo=H(ve(),1);function Zo(e,t){(0,Qo.useEffect)(()=>{let n=globalThis[Symbol.for("graview.shown-lists")]??=new Map;return n.set(e,()=>t),()=>void n.delete(e)})}var sa=e=>(__graviewPreload(import.meta.url,["./chunk.AJZBJBMO.js"]),import("./chunk.6YGRRXJB.js")).then(t=>t.saveShownList(e.read()));function Xo(e,t,n){let a={off:e,about:t,read:n,menu:(r,o,i)=>[...e?[]:[{id:"export-csv",label:"Export CSV",run:()=>void sa(a)}],...r&&o?[{id:e?"export-on":"export-off",label:e?"Turn on export":"Turn off export",run:()=>void (__graviewPreload(import.meta.url,["./chunk.AJZBJBMO.js"]),import("./chunk.6YGRRXJB.js")).then(s=>s.switchExport(a,o,e,i))}]:[]]};return a}function la(e){let{schema:t,graph:n,kind:a,nodes:r,arrangement:o,offers:i,declaredGroup:s}=e,l=t.tryDefinition(a),c=jt(o.query??""),u=[...o.filter??[],...c.conditions],k=u.some(E=>E.key==="is"&&(E.value==="past"||E.value==="any"))||Ir(l,u),p=k||!l?.lifecycle?o:{...o,filter:[...o.filter??[],{key:"is",value:"current"}]},w=new Map,R=Ut(r,p,{schema:t,graph:n,...e.flagged?{flagged:e.flagged}:{},...e.today!==void 0?{today:e.today}:{},read:(E,re)=>{let te=w.get(E.id);return te||w.set(E.id,te=Xe(t,n,E)),te[re]}}),f=R.grouped&&!!o.group?.by,x=s&&o.group?.by===s.by&&!o.group.bucket?i.groups.find(E=>E.key===s.by):void 0,O=s&&x&&(x.type==="choice"||x.type==="boolean")?Fr(R.groups,s,{type:x.type,...x.options?{options:x.options}:{}}):R.groups.map(E=>({...E,closed:!1})),D=!!o.query||(o.filter??[]).some(E=>E.key===s?.by),g=E=>x?.type==="boolean"?E==="1"?"true":"false":E,N=e.opened??new Set,T=O.map(E=>{let re=g(E.key);return{...E,value:re,shut:E.closed&&!D&&!N.has(re)}});return{arrangement:p,showingPast:k,arranged:R,grouped:f,groups:T,nodes:f?T.flatMap(E=>E.shut?[]:E.nodes):R.nodes}}var Me=H(ve(),1);var ot=H(j(),1);function cn({context:e,withheld:t,style:n,testId:a}){let r=ce(),o=Wa(t,e.signIn??r?.signIn);return o?(0,ot.jsx)("p",{style:{...n,margin:0},children:(0,ot.jsx)("button",{type:"button","data-testid":"sign-in",onClick:()=>o.run(),style:fe,children:o.label})}):t.length===0?null:(0,ot.jsx)("ul",{style:{...n,margin:0,padding:0,listStyle:"none",display:"grid",gap:4},...a?{"data-testid":a}:{},children:t.map(i=>(0,ot.jsxs)("li",{style:A,children:[(0,ot.jsx)("s",{children:i.label})," \u2014 ",i.refusal.message]},i.id))})}var ei=H(ve(),1);var $=H(j(),1);function da({context:e}){let{store:t,brand:n,principal:a,invariantContext:r}=e;ne(t);let[o]=ft(),i=o.get("q")??"",s=typeof r?.today=="string"?r.today:void 0,l=jr(t,i,{...a?{principal:a}:{},places:He(e),flagged:new Set(t.violations(r).flatMap(f=>f.nodeIds)),...s?{today:s}:{},limit:200}),c=l.hits.filter(f=>f.about==="node"),u=l.hits.filter(f=>f.about==="kind"||f.about==="place"||f.about==="rule"),k=[...new Set(c.map(f=>f.kind))],p=i.trim(),w=p.length>=2&&l.hits.length===0,R=l.searched.kinds.length===1?l.searched.kinds[0]:void 0;return(0,ei.useEffect)(()=>{if(!w)return;let f=setTimeout(()=>Ka(t,{type:"search-miss",words:p,...R?{kind:R}:{}},a),gs);return()=>clearTimeout(f)},[t,p,w,R,a]),(0,$.jsxs)(le,{context:e,children:[(0,$.jsx)("style",{children:mt}),(0,$.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,$.jsx)("p",{style:Se,children:"Search"}),(0,$.jsx)(de,{context:e,"data-testid":"search-heading",children:p.length===0?"Find anything by its name":l.hits.length===0?(0,$.jsxs)($.Fragment,{children:["Nothing here is called \u201C",p,"\u201D."]}):(0,$.jsxs)($.Fragment,{children:[ms(t,l.byKind)," for \u201C",p,"\u201D"]})}),p.length>0?(0,$.jsxs)("p",{style:{...A,margin:0},"data-testid":"search-searched",children:[Vt(t.schema,l.searched),l.conditions.filter(f=>f.key!=="is"&&f.admittedBy.length<l.searched.kinds.length).map(f=>(0,$.jsxs)("span",{children:[" ",f.key,":",f.value," narrows"," ",f.admittedBy.length===0?"nothing here":f.admittedBy.map(x=>z(t,x).toLowerCase()).join(" and "),"."]},`${f.key}:${f.value}`))]}):(0,$.jsxs)("p",{style:ie,children:["Type in the box above. Words find the start of words in names and in what each record says;"," ",(0,$.jsx)("code",{children:"done:false"})," and the like narrow as a list does, and ",(0,$.jsx)("code",{children:"is:any"})," includes what is past."]})]}),u.length>0?(0,$.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},"data-testid":"search-named",children:u.map(f=>(0,$.jsx)("li",{"data-testid":"search-hit","data-about":f.about,children:f.about==="kind"?(0,$.jsxs)(F,{to:`/${V(t.schema,f.kind)}`,style:U,children:[f.label,f.count>0?(0,$.jsxs)("span",{style:A,children:[" \xB7 ",f.count," match"]}):null]}):f.about==="place"?(0,$.jsxs)(F,{to:he(e,f),style:U,children:["Go to ",f.title]}):f.about==="rule"?(0,$.jsxs)(F,{to:"/problems",style:U,children:["The rule \u201C",f.label,"\u201D"]}):null},`${f.about}:${f.about==="rule"?f.name:f.about==="place"?f.as:f.kind}`))}):null,k.map(f=>(0,$.jsxs)("section",{className:"graview-list",style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",minWidth:0},"data-testid":"search-group","data-kind":f,children:[(0,$.jsxs)("h2",{className:"graview-group-head",style:{alignItems:"center"},children:[(0,$.jsx)(ge,{kind:f,brand:n,schema:t.schema,size:8}),(0,$.jsx)(F,{to:`/${V(t.schema,f)}?${new URLSearchParams({q:p}).toString()}`,style:U,"data-testid":"search-kind-link",children:z(t,f)}),(0,$.jsx)("span",{children:l.byKind[f]})]}),(0,$.jsx)("ul",{className:"graview-rows",children:c.filter(x=>x.kind===f).map(x=>(0,$.jsxs)("li",{"data-testid":"search-hit","data-about":"node",className:"graview-row",children:[(0,$.jsxs)(F,{to:Y(t.schema,f,x.id),className:"graview-row-title",...x.label.length>60?{title:x.label}:{},children:[x.flagged?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)("span",{role:"img","aria-label":"Breaks a rule:",style:{color:"var(--graview-warn)"},children:"\u26A0"})," "]}):null,x.label]}),x.apart||!x.current?(0,$.jsx)("span",{className:"graview-row-glance",children:[x.apart,x.current?"":"past"].filter(Boolean).join(" \xB7 ")}):null,(0,$.jsx)(pn,{why:x.why})]},x.id))})]},f)),p.length>0?(0,$.jsx)(fs,{asked:p}):null,p.length>0&&l.hits.length===0?(0,$.jsx)(ni,{store:t,kinds:l.searched.kinds,words:l.words,...a?{principal:a}:{},...r?{invariantContext:r}:{}}):null]})}var gs=1500;function pn({why:e}){return e.strength==="near"?(0,$.jsxs)("span",{style:A,"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,$.jsxs)("span",{style:A,"data-testid":"search-why",children:[e.reading,": ",e.fragment]})}function ms(e,t){let n=Object.entries(t).map(([a,r])=>`${r} ${r===1?Ze(e.schema.tryDefinition(a),a):z(e,a).toLowerCase()}`);return n.length===0?"Found":n.length===1?Te(n[0]):Te(`${n.slice(0,-1).join(", ")} and ${n[n.length-1]}`)}function ti(e,t,n={}){let a=[];for(let r of t){let o=tt(e,r,{...n.principal?{principal:n.principal}:{},...n.invariantContext?{context:n.invariantContext}:{}});for(let i of un(e,r,o.actions.affordances))a.some(s=>s.mutation.name===i.mutation.name)||a.push(i)}return a}function un(e,t,n){let a=e.schema.tryDefinition(t)?.fieldRoles?.label,r=[];for(let o of n){let i=e.allMutations().find(c=>c.name===o.mutation);if(!i||!i.creates?.includes(t)||r.some(c=>c.mutation.name===i.name))continue;let s=Or(i.input).map(c=>c.name),l=s.includes("label")?"label":a&&s.includes(a)?a:void 0;!l||o.args[l]!==void 0||r.push({kind:t,affordance:o,mutation:i,arg:l})}return r}function ni({store:e,kinds:t,words:n,principal:a,invariantContext:r}){let o=ti(e,t,{...a?{principal:a}:{},...r?{invariantContext:r}:{}});return o.length===0||n.trim().length===0?null:(0,$.jsx)("div",{style:{display:"grid",gap:24},"data-testid":"search-to-create",children:o.map(({kind:i,affordance:s,mutation:l,arg:c})=>(0,$.jsxs)("section",{style:{...se,display:"grid",gap:14},children:[(0,$.jsxs)("h2",{style:ee,children:[Te(Na(Ze(e.schema.tryDefinition(i),i)))," called \u201C",n,"\u201D"]}),(0,$.jsx)(Le,{store:e,mutation:l,prefilled:s.args,open:s.open,initial:{[c]:n},...a?{principal:a}:{}})]},`${s.id}|${n}`))})}function fs({asked:e}){let t=ce();return t?(0,$.jsx)(ys,{asked:e,desk:t.aiDesk}):null}function ys({asked:e,desk:t}){return dr(t)?(0,$.jsx)("p",{style:{margin:0},children:(0,$.jsxs)("button",{type:"button","data-testid":"search-ask",onClick:a=>lr(t,{pointed:{about:[]},asked:e,returnTo:a.currentTarget}),style:{...U,font:"inherit",padding:0,border:0,background:"transparent",cursor:"pointer",textAlign:"start"},children:["Ask: \u2018",e,"\u2019"]})}):null}var y=H(j(),1),ri=8,oi=40;function hs(e,t){let n=t?.fields?.shape??{},a=Object.keys(n).find(r=>Oa(n[r])&&Ma(e[r]));return a===void 0?void 0:e[a]}function ca({context:e}){let t=_e(),n=ke(e.store.schema,t.slug??"");return n?(0,y.jsx)(ii,{context:e,kind:n}):(0,y.jsx)(le,{context:e,children:(0,y.jsx)(de,{context:e,children:"No such kind of thing here."})})}function ii({context:e,kind:t,opening:n,row:a,layout:r="list",description:o,bare:i}){let{store:s,brand:l,invariantContext:c}=e;ne(s);let[u,k]=ft(),p=`list-${(0,Me.useId)().replace(/:/g,"")}`,w=s.schema.tryDefinition(t),R=Ha(u.get("archived")),f=s.graph.nodesOfKind(t,{archived:R}),x=nt(s).relations.filter(d=>d.from===t||d.to===t),O=new Set(s.violations(c).flatMap(d=>d.nodeIds)),D=Gr(s.schema,Wr(s.schema,Dr(s.schema,t))),g=x.map(d=>d.edgeKind),N=xs(u,D,g),T=["sort","filter","group","q","by","with","past","archived",...g].some(d=>u.has(d)),E=f.length>=oi,re=w?.fieldRoles?.when,te=e.views?.arrangement?.()?.lists?.[t],Q=Hr(te),Ae=$r(te?.group),Fe=ks(E,re),Ce=n??(Q?{...Fe,...Q}:Fe),Re=T?N.arrangement:qn(Ce,D).arrangement,b=Q?.sort,S=Re.sort&&b?.then&&Re.sort.by===b.by&&Re.sort.direction===b.direction?{...Re,sort:b}:Re,L=jt(S.query??""),I=new Set((u.get("open")??"").split(",").filter(Boolean)),Z=la({schema:s.schema,graph:s.graph,kind:t,nodes:f,arrangement:S,offers:D,declaredGroup:Ae,flagged:O,...typeof c?.today=="string"?{today:c.today}:{},opened:I}),{showingPast:X,arranged:m}=Z,M=Z.groups,J=ce(),pe=Xo(te?.export===!1,{kind:t},()=>({title:z(s,t),schema:s.schema,graph:s.graph,kind:t,groups:Z.groups,grouped:Z.grouped,onExport:e.onExport??J?.onExport,words:{labelOf:oe,readableFields:Kt,withComputed:Xe}}));Zo(`list:${t}`,pe);let gi=d=>d.shut,mi=d=>{let h=new URLSearchParams(u),G=new Set(I);G.has(d)?G.delete(d):G.add(d),G.size>0?h.set("open",[...G].join(",")):h.delete("open"),k(h,{replace:!0})},Oe=m.nodes,Je=w?.lifecycle&&!X?f.filter(d=>lt(w,d)):f,ma=f.length-Je.length,fa=S.group?.by??null,fi=d=>{let h=new URLSearchParams(u);for(let ue of["sort","filter","group","q","by","with","past","archived",...x.map($t=>$t.edgeKind)])h.delete(ue);let G=Vr(d);for(let ue of["sort","filter","group","q","archived"])G[ue]&&h.set(ue,G[ue]);![...h.keys()].some(ue=>["sort","filter","group","q"].includes(ue))&&(n||Q||E||re)&&h.set("sort",""),k(h)},{principal:it}=e,yn=tt(s,t,{...it?{principal:it}:{},...e.invariantContext?{context:e.invariantContext}:{}}),Be=yn.actions.affordances.map(d=>({affordance:d,mutation:s.allMutations().find(h=>h.name===d.mutation)})).filter(d=>d.mutation!==void 0),yi=yn.actions.withheld,hn=()=>new Set(Oe.length===0?Be.map(({mutation:d})=>d.name):[]),[wn,ya]=(0,Me.useState)(()=>({kind:t,open:hn()}));wn.kind!==t&&ya({kind:t,open:hn()});let ha=d=>(wn.kind===t?wn.open:hn()).has(d),wa=(d,h)=>ya(G=>{let ue=new Set(G.open);return h?ue.add(d):ue.delete(d),{kind:G.kind,open:ue}}),Sa=`begin-${(0,Me.useId)().replace(/:/g,"")}`,ba=L.words&&Oe.length===0?Object.fromEntries(un(s,t,yn.actions.affordances).map(d=>[d.mutation.name,d.arg])):{},Ye=z(s,t),Tt=e.views?.lookup(t,{cardinality:"one",fidelity:"glyph"}),Sn=Tt!==void 0&&!ct(Tt)?Tt:void 0,bn=(S.group?.bucket??"day")==="day"?S.group?.by:void 0,vn=(S.filter??[]).map(d=>d.key),hi=vn.filter(d=>vn.indexOf(d)===vn.lastIndexOf(d)&&/choice|boolean/.test(D.filters.find(h=>h.key===d)?.type??"")),kn=d=>{let h={...w?.computed?Xe(s.schema,s.graph,d):d};bn&&!String(h[bn]).includes("T")&&delete h[bn];for(let G of hi)delete h[G];return h},va=d=>Sr(w?.fields?.shape?.[d])?.type==="enum",Et=d=>{let h=oe(w,d);if(a)return(0,y.jsxs)("li",{"data-testid":"record-row","data-graview-record":d.id,style:{minWidth:0},...Ln(d.id),children:[Rn(d,h),a(d,{label:h,href:Y(s.schema,t,d.id),flagged:O.has(d.id),glance:So(kn(d),w,h)})]},d.id);if(Sn){let Tn=Yt(Tt,d,s.graph),xi=Object.fromEntries(Object.entries(kn(d)).filter(([Pi])=>!Tn?.fields.has(Pi))),Ra=Tn?kt(xi,w,Tn.title??h,va):[];return(0,y.jsxs)("li",{"data-testid":"record-row","data-graview-record":d.id,style:{position:"relative",display:"flex",flexWrap:"wrap",alignItems:"baseline",columnGap:16,rowGap:2,paddingBlock:10,borderTop:"1px solid var(--graview-edge)"},...Ln(d.id),children:[Rn(d,h),(0,y.jsx)("div",{style:{flex:"1 1 14rem",minWidth:0},children:(0,y.jsx)(Sn,{node:d,cardinality:"one",fidelity:"glyph",mode:"fullscreen",selected:!1,...O.has(d.id)?{flagged:[d.id]}:{}})}),Ra.length>0?(0,y.jsx)("span",{style:{...A,flex:"0 1 auto",minWidth:0,overflowWrap:"anywhere"},"data-testid":"record-glance",children:(0,y.jsx)(xt,{runs:Ra})}):null,(0,y.jsx)(Cs,{to:Y(s.schema,t,d.id),label:O.has(d.id)?`${h} \u2014 implicated in a problem`:h})]},d.id)}let G=kt(kn(d),w,h,va),ue=G.length>0,$t=L.words?qr(w,d,L.words):void 0,Aa=E?void 0:vr(d,w),Ht=hs(d,w),Ca=(0,y.jsxs)(F,{to:Y(s.schema,t,d.id),className:"graview-row-title",...h.length>60?{title:h}:{},children:[O.has(d.id)?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)("span",{role:"img","aria-label":"Breaks a rule:",style:{color:"var(--graview-warn)"},children:"\u26A0"})," "]}):null,h]});return(0,y.jsxs)("li",{className:"graview-row","data-graview-record":d.id,...Ln(d.id),children:[Rn(d,h),Aa?(0,y.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:14,minWidth:0},children:[(0,y.jsx)(ut,{as:"thumb",file:Aa}),Ca]}):Ca,ue||Ht?(0,y.jsxs)("span",{className:"graview-row-glance",children:[(0,y.jsx)(xt,{runs:G}),ue&&Ht?" \xB7 ":null,Ht?(0,y.jsx)(_t,{address:Ht}):null]}):null,$t?(0,y.jsx)(pn,{why:$t}):null]},d.id)},xn=He(e).filter(d=>d.kind===t&&!d.hidden),ka=te?.filters,wi=(S.filter??[]).some(d=>d.key!=="is"||d.value!=="any"),Si=!!(S.sort||S.group||S.query||wi),bi=Je.length>=ri||T&&Si,Ie=S.sort?D.sorts.find(d=>d.key===S.sort.by):void 0,Pn=Ie?.type==="date"||Ie!==void 0&&Ie.key===re,xa=E&&!m.grouped&&Ie&&(Ie.about==="label"||Ie.type==="text"||Pn)?d=>{let h=Ie.about==="label"?oe(w,d):d[Ie.key];if(typeof h!="string"||h.length===0)return Pn?"No date":"#";if(Pn)return h.slice(0,4);let G=h.trim().charAt(0).toLocaleUpperCase();return/\p{L}/u.test(G)?G:"#"}:void 0,Nt=xa?Oe.reduce((d,h)=>{let G=xa(h);return d.at(-1)?.key===G?d.at(-1).nodes.push(h):d.push({key:G,nodes:[h]}),d},[]):void 0,Pa=Z.nodes,An=(0,Me.useMemo)(()=>Pa.map(d=>d.id),[Pa.map(d=>d.id).join(`
6
- `)]),$e=Yr(An),Cn=(0,Me.useId)(),wt=(it?s.permittedMutations(it):s.permittedMutations()).some(d=>{let h=d.subject?.kinds;return h!==void 0&&(h==="*"||h.includes(t))}),Rn=(d,h)=>wt?(0,y.jsx)("span",{className:"graview-choose-at",children:(0,y.jsx)("input",{...$e.boxProps(d.id,h),onPointerEnter:jn,onFocus:jn})}):null,Ln=d=>wt?{"data-graview-choose":d}:{},vi=(0,Me.useCallback)(d=>{$e.choose(d),requestAnimationFrame(()=>{let h=$e.list.current;((d[0]===void 0?null:h?.querySelector(`[data-graview-choose-box="${CSS.escape(d[0])}"]`))??h)?.focus({preventScroll:!0})})},[$e]),st=r==="grid"?{margin:0,padding:0,listStyle:"none",display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(min(100%, 15rem), 1fr))",alignItems:"start",gap:12}:a||Sn?{margin:0,padding:0,listStyle:"none",display:"grid",gap:a&&r==="list"?6:0}:void 0,Mt=st?void 0:"graview-rows",St=d=>`list-at-${d.replace(/[^\p{L}\p{N}]/gu,"_")}`,Ot=x.map(d=>{let h=d.from===t?d.to:d.from,G=d.from===t?d.description:d.inverse??d.description;return{relation:d,far:h,words:G}}),ki=new Set(Ot.map(d=>(d.words??"").toLowerCase()).filter((d,h,G)=>d&&G.indexOf(d)!==h));return(0,y.jsxs)(i?vs:le,{context:e,children:[(0,y.jsxs)("div",{style:{display:"grid",gap:12},children:[(0,y.jsxs)("header",{style:{display:"grid",gap:4},children:[i?null:(0,y.jsx)(ht,{context:e}),(0,y.jsxs)("div",{style:{display:"flex",alignItems:"center",flexWrap:"wrap",columnGap:10,rowGap:4,minWidth:0},children:[(0,y.jsx)(ge,{kind:t,brand:l,schema:s.schema,size:8}),(0,y.jsx)(de,{context:e,children:Ye}),Be.length>0?(0,y.jsx)("span",{style:{marginLeft:"auto",display:"flex",flexWrap:"wrap",columnGap:14,rowGap:8},"data-testid":"beginnings-open",children:Be.map(({affordance:d,mutation:h})=>(0,y.jsx)(Ps,{name:h.name,title:h.title??h.name,panel:`${Sa}-${h.name}`,open:ha(h.name),onOpen:G=>wa(h.name,G)},d.id))}):null,!pe.off&&Je.length>0?(0,y.jsxs)("button",{type:"button","data-testid":"list-export","aria-label":"Export CSV",title:"Export CSV",onClick:()=>void sa(pe),style:{...be,minHeight:28,margin:"-4px 0",...Be.length>0?{}:{marginLeft:"auto"},padding:"0 2px",border:0,background:"none",font:"inherit",color:"var(--graview-ink-muted)",cursor:"pointer"},children:[(0,y.jsx)("span",{"aria-hidden":"true",style:{marginRight:4},children:"\u2193"}),"CSV"]}):null]}),Oe.length>0?(0,y.jsx)(yo,{place:"here",to:[{label:`Skip to the ${Oe.length===1?Ze(w,t):`${Oe.length} ${Ye.toLowerCase()}`}`,testid:"records",go:()=>{let d=document.querySelector(`[data-graview-skip-target="${CSS.escape(Cn)}"]`);Vn(d?.querySelector('[data-graview-choose-box][tabindex="0"]')??d)}},...Je.length>0?[{label:"Skip to arranging them",testid:"arranging",go:()=>{let d=document.querySelector(`[data-graview-skip-target="${CSS.escape(Cn)}"]`)?.parentElement?.querySelector('[role="group"][aria-label="Arrange"]');Vn(d?.querySelector('button[data-testid$="-add"], button[data-testid$="-all"]')??d)}}]:[]]}):null,o??w?.description?(0,y.jsx)("p",{style:ie,children:o??w?.description}):null,Ot.length>0||xn.length>0?(0,y.jsxs)("p",{style:{...A,margin:0,display:"flex",flexWrap:"wrap",columnGap:18,rowGap:2},"data-testid":"kind-related",children:[Ot.length>0?(0,y.jsxs)("span",{"data-testid":"kind-relations",children:["Related:"," ",Ot.map(({relation:d,far:h,words:G},ue)=>(0,y.jsxs)("span",{"data-relation":d.edgeKind,children:[ue>0?(0,y.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,h==="*"?Te(G??Qe(d.edgeKind)):(0,y.jsx)(F,{to:`/${V(s.schema,h)}`,style:U,title:z(s,h),children:G&&ki.has(G.toLowerCase())?`${Te(G)}: ${z(s,h).toLowerCase()}`:Te(G??z(s,h))})]},`${d.edgeKind}|${d.from}|${d.to}`))]}):null,xn.length>0?(0,y.jsxs)("span",{"data-testid":"kind-pictures",children:["Also as:"," ",xn.map((d,h)=>(0,y.jsxs)("span",{children:[h>0?(0,y.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,(0,y.jsx)(F,{to:he(e,d),style:U,children:d.title})]},at(d)))]}):null]}):null]}),Be.length>0?(0,y.jsx)("div",{style:{display:"contents"},"data-testid":"beginnings",children:Be.map(({affordance:d,mutation:h})=>{let G=!!(ba[h.name]&&Oe.length===0);return(0,y.jsx)(As,{name:h.name,id:`${Sa}-${h.name}`,description:h.description,open:ha(h.name),onClose:()=>wa(h.name,!1),children:(0,y.jsx)(Le,{store:s,mutation:h,prefilled:d.args,open:d.open,...G?{initial:{[ba[h.name]]:L.words}}:{},...e.principal?{principal:e.principal}:{}},G?`${h.name}|${L.words}`:h.name)},d.id)})}):null,N.dropped.length>0?(0,y.jsxs)("p",{style:{...A,margin:0},"data-testid":"list-dropped",children:["This link asked for ",N.dropped.join(", "),", which ",Ye.toLowerCase()," cannot be arranged by; the rest is shown."]}):null,Je.length>0?(0,y.jsx)(zr,{schema:s.schema,graph:s.graph,kind:t,arrangement:S,onChange:fi,kept:{shown:Oe.length,of:Je.length},noun:{one:Ze(w,t),many:Ye.toLowerCase()},...bi?{}:{allow:!1},...ka?{filters:ka}:{},offers:D,chips:{nodes:Je,flagged:O,...typeof c?.today=="string"?{today:c.today}:{}},query:e.framed===!0&&e.barAbove!==!0}):null,(0,y.jsx)("style",{children:mt}),wt?(0,y.jsx)("style",{children:Qr+bs}):null,(0,y.jsx)("div",{className:"graview-list","data-graview-skip-target":Cn,...wt?{...$e.listProps,ref:$e.list,tabIndex:-1,"data-graview-choosable":"","aria-label":$e.chosen.length>0?`${Ye}, ${$e.chosen.length} chosen`:Ye,role:"group"}:{},children:Oe.length===0&&L.words?(0,y.jsxs)("p",{style:ie,"data-testid":"none-yet",children:["Nothing here is called \u201C",L.words,"\u201D."," ",(0,y.jsx)("span",{style:A,"data-testid":"list-searched",children:Vt(s.schema,{kinds:[t],past:X})})," ",(0,y.jsx)(F,{to:"?",style:U,children:"Show every one"})]}):Oe.length===0?(0,y.jsxs)("p",{style:ie,"data-testid":"none-yet",children:[S.filter?.length||S.query?"None of them.":"None yet",!S.filter?.length&&!S.query&&Be.length>0?` \u2014 the first one starts above, with \u201C${Be[0]?.mutation.title??Be[0]?.mutation.name}\u201D.`:!S.filter?.length&&!S.query?".":"",S.filter?.length||S.query?(0,y.jsxs)(y.Fragment,{children:[" ",(0,y.jsx)(F,{to:"?",style:U,children:"Show every one"})]}):null]}):m.grouped&&fa?(0,y.jsx)("div",{style:{display:"grid",gap:"1rem"},"data-testid":"records","data-grouped":fa,children:M.map(d=>{if(!d.closed)return(0,y.jsxs)("section",{style:{display:"grid",gap:0},"data-testid":"list-group",children:[(0,y.jsxs)("h2",{className:"graview-group-head",children:[d.label," ",(0,y.jsx)("span",{children:d.nodes.length})]}),(0,y.jsx)("ul",{style:st,className:Mt,"data-graview-rows":"",children:d.nodes.map(Et)})]},d.key||"-");let h=gi(d),G=`${p}-${St(d.key||"none")}`;return(0,y.jsxs)("section",{style:{display:"grid",gap:0},"data-testid":"list-group","data-closed":h?"shut":"open",children:[(0,y.jsx)("h2",{className:"graview-group-head",children:(0,y.jsxs)("button",{type:"button",className:"graview-group-toggle","aria-expanded":!h,"aria-controls":G,"data-testid":"list-group-toggle",onClick:()=>mi(d.value),children:[(0,y.jsx)("span",{"aria-hidden":"true",children:h?"\u25B8":"\u25BE"}),d.label," ",(0,y.jsxs)("span",{children:["\xB7 ",d.nodes.length]}),(0,y.jsxs)("span",{style:ws,children:[" ",d.nodes.length===1?Ze(w,t):Ye.toLowerCase()]})]})}),(0,y.jsx)("ul",{id:G,style:h?{...st,display:"none"}:st,className:Mt,"data-graview-rows":"",hidden:h,children:h?null:d.nodes.map(Et)})]},d.key||"-")})}):Nt&&Nt.length>1?(0,y.jsxs)("div",{style:{display:"grid",gap:14},"data-testid":"records","data-sectioned":Ie?.type==="date"?"year":"letter",children:[(0,y.jsx)("nav",{"aria-label":"Jump to","data-testid":"list-index",style:{...A,display:"flex",flexWrap:"wrap",gap:Ie?.type==="date"?"0 10px":"0 4px",lineHeight:1.3},children:Nt.map(d=>(0,y.jsx)("a",{href:`#${St(d.key)}`,onClick:h=>{h.preventDefault(),document.getElementById(St(d.key))?.scrollIntoView({block:"start"})},style:{...be,minWidth:24,justifyContent:"center"},children:d.key},d.key))}),Nt.map(d=>(0,y.jsxs)("section",{"data-testid":"list-section","aria-labelledby":St(d.key),style:{display:"grid",gap:0},children:[(0,y.jsx)("h2",{id:St(d.key),className:"graview-group-head",children:d.key}),(0,y.jsx)("ul",{style:st,className:Mt,"data-graview-rows":"",children:d.nodes.map(Et)})]},d.key))]}):(0,y.jsx)("ul",{style:st,className:Mt,"data-testid":"records","data-graview-rows":"",children:Oe.map(Et)})}),wt?(0,y.jsx)(Zr,{store:s,chosen:$e.chosen,...it?{principal:it}:{},...c?{context:c}:{},anchor:Ss,of:An.length,onChooseAll:()=>$e.choose(An),onClear:$e.clear,onActed:vi}):null,ma>0?(0,y.jsxs)(F,{to:ai(u,"filter","is:any"),style:{...U,...A,justifySelf:"start"},"data-testid":"past-link",children:["+",ma," past"]}):null,R===!1&&s.graph.count(t,{archived:!0})>0?(0,y.jsxs)(F,{to:ai(u,"archived","true"),style:{...U,...A,justifySelf:"start"},"data-testid":"archived-link",children:["+",s.graph.count(t,{archived:!0})," archived"]}):null]}),(0,y.jsx)(cn,{context:e,withheld:yi,style:se,testId:"withheld"})]})}var ws={position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0 0 0 0)",whiteSpace:"nowrap",border:0},Ss=()=>document.querySelector("[data-graview-choosable]")?.closest("[data-embed-content]")??null,bs=`
7
- .graview-list[data-graview-choosable]{outline:none}
8
- .graview-list [data-graview-choose]{position:relative;padding-left:34px}
9
- .graview-choose-at{position:absolute;left:2px;top:0;bottom:0;z-index:${Ba.raised};display:flex;align-items:center}
10
- @media (min-width: 900px) and (pointer: fine){
11
- .graview-list [data-graview-choose]{padding-left:0}
12
- .graview-choose-at{left:-34px}
13
- }
14
- @media (pointer: coarse){
15
- .graview-list:not([data-graview-choosing]) [data-graview-choose]{padding-left:0}
16
- .graview-list:not([data-graview-choosing]) .graview-choose-at{display:none}
17
- }
18
- `;function vs({children:e}){return(0,y.jsx)("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:40,minWidth:0},children:e})}var ks=(e,t)=>t?{sort:{by:t,direction:"desc"}}:e?{sort:{by:"label",direction:"asc"}}:{};function xs(e,t,n){let a=Dt({...e.get("sort")?{sort:e.get("sort")}:{},...e.get("filter")?{filter:e.get("filter")}:{},...e.get("group")?{group:e.get("group")}:{},...e.get("q")?{q:e.get("q")}:{},...e.get("archived")?{archived:e.get("archived")}:{}}),r=[...a.filter??[]],o=e.get("by"),i=a.group??(o?{by:o}:void 0);for(let l of n){let c=e.get(l);c&&r.push({key:l,value:c})}let s=e.get("with");return s&&r.push({key:s,value:"*"}),e.get("past")==="1"&&!r.some(l=>l.key==="is")&&r.push({key:"is",value:"any"}),qn({...a.sort?{sort:a.sort}:{},...a.query?{query:a.query}:{},...r.length>0?{filter:r}:{},...i?{group:i}:{},...a.archived!==void 0?{archived:a.archived}:{}},t)}function ai(e,t,n){let a=new URLSearchParams(e);return a.set(t,n),a.delete("past"),`?${a.toString()}`}function Ps({name:e,title:t,panel:n,open:a,onOpen:r}){return(0,y.jsxs)("button",{type:"button","data-testid":`act-open-${e}`,"data-graview-act":e,"aria-expanded":a,"aria-controls":n,onClick:()=>{r(!a),a||requestAnimationFrame(()=>document.getElementById(n)?.querySelector("input, select, textarea, button")?.focus())},style:{...be,minHeight:28,margin:"-4px 0",padding:"0 2px",border:0,background:"none",font:"inherit",fontWeight:600,color:"var(--graview-ink)",cursor:"pointer"},children:[(0,y.jsx)("span",{"aria-hidden":"true",style:{marginRight:6},children:a?"\u2212":"+"}),t]})}function As({name:e,id:t,description:n,open:a,onClose:r,children:o}){return(0,y.jsxs)("div",{"data-testid":`act-${e}`,id:t,hidden:!a,onKeyDown:i=>{i.key==="Escape"&&(i.preventDefault(),r(),document.querySelector(`[aria-controls="${t}"]`)?.focus())},style:a?{display:"grid",gap:12,padding:"4px 0 12px"}:void 0,children:[n?(0,y.jsx)("p",{style:{...A,margin:0,maxWidth:"58ch"},children:n}):null,o]})}function Cs({to:e,label:t}){let n=(0,Me.useRef)(null);return Xr(n),(0,y.jsx)(F,{ref:n,to:e,"aria-label":t,style:{position:"absolute",inset:0,borderRadius:6}})}var Ve=H(ve(),1);var Lt=H(ve(),1);var B=H(j(),1);function pa({context:e}){let{store:t,brand:n,invariantContext:a,principal:r}=e;ne(t);let o=t.violations(a),i=t.allInvariants(),s=Gt(t,o),l=cr(t.schema,i);return(0,B.jsxs)(le,{context:e,children:[(0,B.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,B.jsx)(de,{context:e,children:o.length===0?"All rules hold":"What is broken"}),(0,B.jsx)("p",{style:ie,"data-testid":"problems-count",children:o.length===0?"Every declared rule is satisfied by what is here.":Fa(o)})]}),(0,B.jsx)(Ko,{context:e}),s.map((c,u)=>{let k=c.nodeIds[0],p=k?t.graph.getNode(k):void 0;return(0,B.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,B.jsx)(gn,{violation:c,schema:t.schema,...n?{brand:n}:{}}),p?(0,B.jsxs)("p",{style:{margin:0,display:"inline-flex",alignItems:"center",gap:8},children:[(0,B.jsx)(ge,{kind:p.kind,brand:n,schema:t.schema,size:7}),(0,B.jsx)(F,{to:Y(t.schema,p.kind,p.id),style:U,children:oe(t.schema.tryDefinition(p.kind),p)})]}):null,c.line?(0,B.jsx)(gn,{violation:c,schema:t.schema,...n?{brand:n}:{}}):null,(0,B.jsx)(mn,{store:t,repairs:c.repairs,...r?{principal:r}:{}})]},u)}),i.length>0?(0,B.jsxs)("section",{style:{...se,display:"grid",gap:12},"data-testid":"rules",children:[(0,B.jsx)("h2",{style:ee,children:"The rules"}),(0,B.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:10},children:i.map(c=>{let u=o.filter(w=>w.invariant===c.name).length,k=l.get(c.name),p=c.label??c.name;return(0,B.jsxs)("li",{"data-graview-rule":c.name,style:{display:"grid",gap:2},children:[(0,B.jsxs)("span",{style:{display:"flex",flexWrap:"wrap",alignItems:"baseline",columnGap:12,rowGap:2},children:[k?(0,B.jsx)(Bt,{line:k,schema:t.schema,...n?{brand:n}:{},style:{flex:"1 1 18rem"}}):(0,B.jsx)("span",{style:{flex:"1 1 18rem",fontWeight:550},children:p}),(0,B.jsx)("span",{style:{...A,color:u>0?"var(--graview-warn)":"var(--graview-ink-faint)"},children:u===0?"holds":`broken in ${u} ${u===1?"place":"places"}`})]}),k&&p.trim().length>0?(0,B.jsx)("span",{style:A,children:p}):null]},c.name)})})]}):null]})}function gn({violation:e,schema:t,brand:n}){if(!e.line)return(0,B.jsx)("p",{style:{margin:0,color:"var(--graview-warn)",fontWeight:550},children:e.message});let a=ur(e),r=pr(e);return r?(0,B.jsxs)("div",{style:{display:"grid",gap:4},"data-testid":"problem-line",children:[(0,B.jsx)("p",{style:{margin:0,color:"var(--graview-warn)",fontWeight:550},"data-testid":"problem-says",children:r}),a?(0,B.jsx)("span",{style:A,children:a}):null,(0,B.jsxs)("details",{"data-testid":"problem-judged",style:A,children:[(0,B.jsx)("summary",{style:{cursor:"pointer",width:"fit-content",minHeight:24},children:"How it is judged"}),(0,B.jsx)(Bt,{line:e.line,schema:t,...n?{brand:n}:{},lead:"none"})]})]}):(0,B.jsxs)("div",{style:{display:"grid",gap:2},"data-testid":"problem-line",children:[(0,B.jsx)(Bt,{line:e.line,schema:t,...n?{brand:n}:{},lead:"none",style:{color:"var(--graview-warn)"}}),a?(0,B.jsx)("span",{style:A,children:a}):null]})}function mn({store:e,repairs:t,principal:n}){let[a,r]=(0,Lt.useState)(null),[o,i]=(0,Lt.useState)(null),s=(0,Lt.useRef)([]);if(t.length===0)return null;let l=a===null?null:t[a],c=l&&(l.missing??[]).length>0?e.allMutations().find(u=>u.name===l.mutation):void 0;return(0,B.jsxs)("div",{style:{display:"grid",gap:10},"data-testid":"repairs",children:[(0,B.jsx)("div",{style:{display:"flex",gap:8,flexWrap:"wrap"},children:t.map((u,k)=>{let p=(u.missing??[]).length>0,w=e.permits({name:u.mutation,args:{...u.args}},n);return w.ok?(0,B.jsx)("button",{ref:R=>{s.current[k]=R},type:"button","data-graview-repair":u.mutation,"data-graview-asks":p||void 0,"aria-expanded":p?a===k:void 0,onClick:()=>{if(i(null),p){r(a===k?null:k);return}r(null);try{e.apply({name:u.mutation,args:{...u.args}},n?{author:n}:{})}catch(R){i(qt(e.schema,e.allMutations(),R))}},style:fe,children:p?`${u.label} \u2026`:u.label},k):(0,B.jsxs)("p",{"data-testid":"withheld","data-withheld":w.refusal.wouldNeed.join(",")||"nobody",style:{...A,margin:0},children:[(0,B.jsx)("s",{children:u.label})," \u2014 ",w.refusal.message]},k)})}),c&&l?(0,B.jsx)(Le,{store:e,mutation:c,prefilled:{...l.args},only:l.missing??[],label:l.label,autoFocus:!0,onDone:()=>{let u=a;r(null),requestAnimationFrame(()=>{let k=u===null?null:s.current[u];if(k?.isConnected){k.focus();return}let p=document.querySelector("[data-graview-page-title]")??document.querySelector("main h1, main h2");p&&(p.hasAttribute("tabindex")||(p.tabIndex=-1),p.focus())})},...n?{principal:n}:{}}):null,l&&!c&&(l.missing??[]).length>0?(0,B.jsxs)("p",{"data-testid":"refused",role:"alert",style:{margin:0,color:"var(--graview-warn)",fontSize:Un},children:["\u201C",l.label,"\u201D names ",l.mutation,", which this app does not declare."]}):null,o?(0,B.jsx)("p",{"data-testid":"refused",role:"alert",style:{margin:0,color:"var(--graview-warn)",fontSize:Un},children:o}):null]})}var ua=H(ve(),1);var ze=H(j(),1);function si({store:e,link:t,principal:n}){let[a,r]=(0,ua.useState)(!1),[o,i]=(0,ua.useState)(null),s=yr(t);return(0,ze.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6,flexWrap:"wrap"},children:[(0,ze.jsx)("button",{type:"button","data-graview-provisional":"",title:s,"aria-label":`Unsure link: ${s}`,"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,ze.jsxs)("span",{style:{...A,display:"inline-flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,ze.jsx)("span",{children:s}),(0,ze.jsx)("button",{type:"button",style:{...fe,padding:"4px 10px"},onClick:()=>{try{e.apply({name:Ia,args:{kind:t.edge.kind,from:t.edge.from,to:t.edge.to}},n?{author:n}:{}),r(!1)}catch(l){i(qt(e.schema,e.allMutations(),l))}},children:"Keep this link"}),o?(0,ze.jsx)("span",{role:"alert",children:o}):null]}):null]})}var we=H(j(),1);function li({nodeId:e,node:t,field:n,inPlace:a,labelStyle:r=Se}){return n.files?(0,we.jsx)(ut,{as:"field",read:!a,nodeId:e,field:n.key,label:n.label,files:n.files,labelStyle:r,style:{gap:4}}):n.long?(0,we.jsx)(_r,{nodeId:e,field:n.key,label:n.label,value:n.value,markdown:n.markdown,style:{gridColumn:"1 / -1",gap:4},labelStyle:r,valueStyle:{lineHeight:1.6}}):(0,we.jsxs)("div",{style:{display:"grid",gap:2,minWidth:0,alignContent:"start"},children:[(0,we.jsx)("dt",{style:r,children:n.label}),(0,we.jsx)("dd",{style:{margin:0,overflowWrap:"anywhere",minWidth:0},children:n.linked?(0,we.jsx)(Rr,{relation:n.linked.relation,refs:n.linked.refs,...a?{nodeId:e,field:n.key}:{}}):n.app?(0,we.jsx)(_t,{address:n.app,as:"record",...a?{nodeId:e,field:n.key}:{}}):n.href?(0,we.jsx)(Ur,{href:n.href,field:n.key,value:n.value,stored:n.stored,...a?{nodeId:e}:{}}):a?(0,we.jsxs)(we.Fragment,{children:[(0,we.jsx)(zt,{nodeId:e,field:n.key,value:n.value,stored:n.stored}),n.repeats?(0,we.jsx)(Lr,{nodeId:e,field:n.key,start:t?.[n.key],value:t?.[`${n.key}Repeat`],label:`${n.label} repeats`}):null]}):n.value})]})}var v=H(j(),1),Rs=[];function ga({context:e}){let{store:t,brand:n,principal:a,invariantContext:r}=e;ne(t);let o=ce()!==null,i=_e(),s=decodeURIComponent(i.id??""),l=nn(t,s,{...a?{principal:a}:{},...r?{context:r}:{}}),c=Gt(t,l?.violations??Rs),[u,k]=(0,Ve.useState)(null),[p,w]=(0,Ve.useState)(!1),[R,f]=(0,Ve.useState)(null),x=(0,Ve.useRef)(null),O=(0,Ve.useRef)(null),D=Tr({flow:"both",letters:!0}),g=m=>{(x.current?.parentElement?.querySelector(`[data-affordance="${m.replace(/["\\]/g,"\\$&")}"]`)??x.current)?.focus()};if(!l)return(0,v.jsx)(le,{context:e,children:(0,v.jsx)(de,{context:e,children:"Nothing lives at this address."})});let N=t.graph.getNode(s),T=t.schema.tryDefinition(l.kind),E=T?.describe&&N?mr(T,N):null,re=[...t.log.all()].filter(m=>!Ft(m)&&(m.writes.includes(s)||m.reads.includes(s))).slice(-8).reverse(),te=t.log.all().find(m=>!Ft(m)&&m.undoes===void 0&&m.primitives.some(M=>M.op==="add-node"&&M.node.id===s)),Q=l.actions.affordances.filter(m=>m.provider!=="invariant"),Ae=Q.filter(m=>m.destructive||m.setsAside),Fe=p||Ae.length<2?Q:Q.filter(m=>!Ae.includes(m)),Ce=e.views?.lookup(l.kind,{cardinality:"one",fidelity:"full"}),Re=Ce!==void 0&&!ct(Ce)?Ce:void 0,b=Re&&N?Yt(Ce,N,t.graph):void 0,S=b?l.fields.filter(m=>!b.fields.has(m.key)):l.fields,L=b?l.links.flatMap(m=>{let M=m.targets.filter(J=>!b.records.has(J.id));return M.length>0?[{...m,targets:M}]:[]}):l.links,I=Re!==void 0&&ir(Ce),Z=o&&br(T).length>0,X=He(e).filter(m=>!m.hidden&&(m.kind===l.kind||m.across===l.kind));return(0,v.jsxs)(le,{context:e,children:[(0,v.jsxs)("header",{style:{display:"grid",gap:12},children:[(0,v.jsx)(ht,{context:e}),(0,v.jsx)(de,{context:e,children:o&&N?.label===l.label?(0,v.jsx)(zt,{nodeId:s,field:"label",value:l.label,said:l.label}):l.label}),E&&E!==l.label?(0,v.jsx)("p",{style:ie,children:E}):null,te?.lineage?(0,v.jsxs)("p",{style:{...A,margin:0},"data-testid":"record-lineage",children:["Made by ",vt(te,a,{graph:t.graph,schema:t.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}}),", ",In(te.lineage)]}):null,(0,v.jsx)(zn,{context:e,stop:`#focus=${encodeURIComponent(s)}`,style:{...We,...A},"data-testid":"spatial-link"}),o&&N?(0,v.jsx)(Gn,{choices:[{on:"changed",record:s},{on:"act",record:s},{on:"reaches",kind:l.kind,condition:"",record:s}],label:"Notify me when this changes",testId:"record-notify",style:{...fe,...A,justifySelf:"start"}}):null,X.length>0?(0,v.jsx)(Ls,{context:e,places:X}):null]}),N&&$a(N)?(0,v.jsx)(Ns,{context:e,id:s,kind:l.kind}):null,N&&Da(t,s)?(0,v.jsx)(Es,{context:e,id:s,kind:l.kind}):null,Re&&N?(0,v.jsx)("section",{"data-testid":"record-view",style:{display:"grid",minWidth:0},children:(0,v.jsx)(eo,{children:(0,v.jsx)(yt,{when:pt(Ce),children:(0,v.jsx)(Re,{node:N,cardinality:"one",fidelity:"full",mode:"fullscreen",selected:!1,...l.violations.length>0?{flagged:[s]}:{}})})})}):null,l.violations.length>0?(0,v.jsx)("section",{"data-testid":"record-violations",style:{display:"grid",gap:12,padding:"16px 18px",borderLeft:"3px solid var(--graview-warn)",background:"var(--graview-panel-warning)",borderRadius:"0 var(--graview-radius, 12px) var(--graview-radius, 12px) 0"},children:c.map((m,M)=>(0,v.jsxs)("div",{style:{display:"grid",gap:8},children:[(0,v.jsx)(gn,{violation:m,schema:t.schema,...n?{brand:n}:{}}),(0,v.jsx)(mn,{store:t,repairs:Ro(l.actions,m.repairs),...a?{principal:a}:{}})]},M))}):null,!I&&(S.length>0||Z)?(0,v.jsxs)("section",{style:{...se,display:"grid",gap:14},"data-testid":"record-fields",children:[(0,v.jsx)("h2",{style:ee,children:"The facts"}),fr(T,S).map((m,M)=>{let J=(0,v.jsx)("dl",{style:{margin:0,display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(200px, 1fr))",gap:"14px 24px"},children:m.fields.map(pe=>(0,v.jsx)(li,{nodeId:s,node:N,field:pe,inPlace:o},pe.key))});return m.title?(0,v.jsxs)("section",{style:{display:"grid",gap:10,minWidth:0},children:[(0,v.jsx)("h3",{"data-graview-field-group":m.title,style:{...ee,fontSize:"inherit"},children:m.title}),J]},M):(0,v.jsx)("div",{children:J},M)}),Z?(0,v.jsx)(ut,{as:"unfilled",nodeId:s,skip:[...b?.fields??[]],labelStyle:Se,style:{gap:4}}):null]}):null,(I?[]:L).map(m=>(0,v.jsxs)("section",{style:{...se,display:"grid",gap:10},children:[(0,v.jsx)("p",{style:Se,children:wo(t,m)}),m.description?(0,v.jsx)("h2",{style:ee,children:Te(m.description)}):(0,v.jsxs)("h2",{style:ee,"aria-label":Qe(m.edgeKind),children:[m.direction==="in"?"\u2190 ":"\u2192 ",Qe(m.edgeKind)]}),(0,v.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexWrap:"wrap",gap:"6px 18px"},children:m.targets.map(M=>{let J=hr(t,m.direction==="in"?{kind:m.edgeKind,from:M.id,to:s}:{kind:m.edgeKind,from:s,to:M.id});return(0,v.jsxs)("li",{style:{display:"inline-flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[(0,v.jsx)(ge,{kind:M.kind,brand:n,schema:t.schema,size:7}),(0,v.jsxs)(F,{to:Y(t.schema,M.kind,M.id),style:U,children:[M.label,M.apart?(0,v.jsxs)("span",{style:A,children:[" \xB7 ",M.apart]}):null]}),J?.provisional?(0,v.jsx)(si,{store:t,link:J,...a?{principal:a}:{}}):null]},M.id)})}),(m.direction==="out"&&t.schema.edge(m.edgeKind)?.cardinality==="one"?[]:[...new Set(m.targets.map(M=>M.kind))]).map(M=>(0,v.jsx)(F,{to:`/${V(t.schema,M)}?${encodeURIComponent(m.edgeKind)}=${encodeURIComponent(s)}`,style:{...We,...A},"data-testid":"related-all",children:(0,v.jsxs)(Ke,{children:["Sort and filter ",m.description??`these ${z(t,M).toLowerCase()}`,m.targets.some(J=>J.kind!==M)?` (${z(t,M).toLowerCase()})`:""]})},M))]},`${m.edgeKind}|${m.direction}|${m.description??""}`)),!I&&(Q.length>0||l.actions.withheld.length>0)?(0,v.jsxs)("section",{style:{...se,display:"grid",gap:14},"data-testid":"record-actions",children:[(0,v.jsx)("h2",{style:ee,ref:x,tabIndex:-1,children:"What can be done"}),(0,v.jsxs)("div",{role:"toolbar","aria-label":"What can be done",...D,style:{display:"flex",flexWrap:"wrap",gap:8},children:[Fe.map(m=>{let M=u===m.id;return(0,v.jsx)("button",{type:"button","data-affordance":m.id,"data-rank":m.rank,"data-graview-act":m.mutation,[Wn]:"",autoFocus:p&&m===Ae[0],"aria-expanded":M,onClick:()=>k(M?null:m.id),style:{...fe,...M?{borderColor:"var(--graview-accent)",color:"var(--graview-accent)"}:{}},children:m.label},m.id)}),Fe.length<Q.length?(0,v.jsxs)("button",{type:"button","aria-expanded":!1,onClick:()=>w(!0),style:{...fe,...A},"data-testid":"record-actions-more",[Wn]:"",children:["Show ",Q.length-Fe.length," more"]}):null]}),Q.map(m=>{if(u!==m.id)return null;let M=t.allMutations().find(J=>J.name===m.mutation);return M?(0,v.jsxs)("div",{ref:O,onKeyDown:J=>{if(J.key!=="Escape"||J.defaultPrevented)return;J.preventDefault(),k(null);let pe=m.id;requestAnimationFrame(()=>g(pe))},style:{display:"grid",gap:10,padding:18,border:"1px solid var(--graview-edge)",borderRadius:"var(--graview-radius, 12px)",background:"var(--graview-panel)"},children:[(0,v.jsx)("h3",{style:ee,children:m.label}),M.description?(0,v.jsx)("p",{style:{...A,margin:0},children:M.description}):null,(0,v.jsx)(Le,{store:t,mutation:M,prefilled:m.args,open:m.open,label:m.label,autoFocus:!0,onDone:()=>{k(null),f(m.mutation);let J=m.id;requestAnimationFrame(()=>g(J))},...a?{principal:a}:{}})]},m.id):null}),o&&R!==null&&u===null?(0,v.jsx)(Gn,{choices:[{on:"act",act:R,record:s},{on:"act",act:R}],label:"Notify me when someone else does this",testId:"notify-after-act",style:{...fe,...A,justifySelf:"start"}}):null,(0,v.jsx)(cn,{context:e,withheld:l.actions.withheld})]}):null,o?(0,v.jsx)(ho,{id:s,style:se,headingStyle:ee}):null,re.length>0?(0,v.jsxs)("section",{style:{...se,display:"grid",gap:10},"data-testid":"record-history",children:[(0,v.jsx)("h2",{style:ee,children:"What has happened"}),(0,v.jsx)("ul",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:6},children:re.map(m=>(0,v.jsxs)("li",{style:A,children:[(0,v.jsx)("span",{style:{color:"var(--graview-ink)"},children:m.intent}),m.lineage?(0,v.jsxs)("span",{"data-graview-lineage":"",children:[" \xB7 ",In(m.lineage)]}):null," \u2014 ",vt(m,a,{graph:t.graph,schema:t.schema,...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{}})]},m.id))})]}):null]})}function Ls({context:e,places:t}){let[n,a]=(0,Ve.useState)(!1),r=(0,Ve.useRef)(null),o=n||t.length<=fn+1?0:t.length-fn;return(0,v.jsxs)("p",{ref:r,style:{...A,margin:0},"data-testid":"seen-in",...n?{"data-open":""}:{},children:["Seen in:"," ",t.map((i,s)=>(0,v.jsxs)("span",{...o>0&&s>=fn?{"data-graview-later":""}:{},children:[s>0?(0,v.jsx)("span",{"aria-hidden":"true",children:" \xB7 "}):null,(0,v.jsx)(F,{to:he(e,i),style:U,children:i.title})]},at(i))),o>0?(0,v.jsxs)(v.Fragment,{children:[" ",(0,v.jsxs)("button",{type:"button","data-graview-seen-more":"","aria-expanded":"false",style:{...U,...A,font:"inherit",background:"none",border:0,padding:0,cursor:"pointer"},onClick:()=>{a(!0),requestAnimationFrame(()=>r.current?.querySelectorAll("a")[fn]?.focus())},children:[o," more"]}),(0,v.jsx)("style",{children:Ts})]}):null]})}var fn=3,Ts="[data-graview-seen-more]{display:none!important}@media (max-width:680px){[data-graview-seen-more]{display:inline!important}[data-testid=seen-in] [data-graview-later]{display:none}}";function Es({context:e,id:t,kind:n}){let{store:a,principal:r}=e,o={name:`allow-tidying-${n}`,args:{id:t}},i=a.allMutations().some(s=>s.name===o.name)&&a.permits(o,r).ok;return(0,v.jsxs)("section",{"data-testid":"record-left-alone",style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:12,padding:"12px 16px",border:"1px solid var(--graview-edge)",borderRadius:"var(--graview-radius, 12px)",background:"var(--graview-panel)"},children:[(0,v.jsxs)("p",{style:{margin:0,flex:"1 1 16rem"},children:[(0,v.jsx)("strong",{children:"Left alone."})," Nothing automated changes it; tidying passes it by."]}),i?(0,v.jsx)("button",{type:"button",style:fe,"data-testid":"allow-tidying",onClick:()=>a.apply(o,r?{author:r}:{}),children:"Allow tidying again"}):null]})}function Ns({context:e,id:t,kind:n}){let{store:a,principal:r}=e,o={name:`unarchive-${n}`,args:{id:t}},i=a.allMutations().some(c=>c.name===o.name)&&a.permits(o,r).ok,s=[...a.log.all()].reverse().find(c=>!Ft(c)&&c.mergedInto!==void 0&&c.writes.includes(t)),l=s?.mergedInto!==void 0?a.graph.getNode(s.mergedInto):void 0;return(0,v.jsxs)("section",{"data-testid":"record-archived",style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:12,padding:"12px 16px",border:"1px solid var(--graview-edge)",borderRadius:"var(--graview-radius, 12px)",background:"var(--graview-panel)"},children:[(0,v.jsxs)("p",{style:{margin:0,flex:"1 1 16rem"},children:[(0,v.jsx)("strong",{children:"Archived."})," Kept with its ties and history, and out of lists, counts and rules.",l?(0,v.jsxs)(v.Fragment,{children:[" ","Merged into ",(0,v.jsx)(F,{to:Y(a.schema,l.kind,l.id),style:U,children:oe(a.schema.tryDefinition(l.kind),l)}),"."]}):null]}),i?(0,v.jsx)("button",{type:"button",style:fe,"data-testid":"bring-it-back",onClick:()=>a.apply(o,r?{author:r}:{}),children:"Bring it back"}):null]})}var P=H(j(),1),Ms=Wt(()=>(__graviewPreload(import.meta.url,["./chunk.YYWANGIC.js","./chunk.FTW3K3G6.js","./chunk.UGFDSE37.js","./chunk.QBMIET7P.js","./chunk.WVKXELAF.js","./chunk.ZOW7AC7U.js","./chunk.INBHY3SA.js","./chunk.TDV7JGIQ.js","./chunk.RZQKCLTW.js","./chunk.Y3BEKXYB.js","./chunk.NDLQXQV2.js","./chunk.WUFCRE7O.js","./chunk.XEHLSKHP.js","./chunk.MSM6E6JK.js","./chunk.YGZGMRDC.js","./chunk.6ZJE5M2A.js","./chunk.2SWQI4HF.js","./chunk.QIAH7HHO.js","./chunk.DNJM6WQO.js","./chunk.LEPKPNPA.js","./chunk.5D6SIBOK.js","./chunk.UE5GAP67.js","./chunk.MB7LKKUD.js","./chunk.WVUJXDXZ.js","./chunk.HUABTCQE.js","./chunk.DXJFAAOI.js","./chunk.5MSNKSTE.js","./chunk.KVQZ5FR6.js","./chunk.2HANQ737.js","./chunk.H536YUAZ.js","./chunk.GZHZLJBF.js","./chunk.OL2N5NUV.js","./chunk.OJGHDWI6.js","./chunk.5DPFAVCZ.js","./chunk.5EZDXWOE.js","./chunk.MIQMPOWF.js","./chunk.T66UK7PQ.js","./chunk.LMXNHBGH.js","./chunk.DBCVZGCC.js","./chunk.WSMYFEGU.js","./chunk.SDO3U72B.js","./chunk.WR63RQGU.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.NS6KWKF5.js")).then(e=>({default:e.DraftPage}))),Os={kind:"human"};function $s({list:e,store:t}){let n=new Set(e.members.map(i=>i.kind)),a=e.total-e.members.length,r=n.size===1?[...n][0]:void 0;if(!r)return(0,P.jsx)("p",{className:"graview-spec-text graview-spec-more",children:`and ${a} more`});let o=Ue(t.schema,r).toLowerCase();return(0,P.jsx)("p",{className:"graview-spec-text graview-spec-more",children:(0,P.jsx)(F,{to:`/${V(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 ${bt(e.total)} ${o}`:`${bt(a)} more \xB7 all ${o}`})})}function Hs({context:e,children:t}){let n=qe(),a=e.store.schema,r=et("/").replace(/\/$/,""),o=(0,q.useMemo)(()=>({href:i=>`${r}${Y(a,i.kind,i.id)}`,go:i=>n(Y(a,i.kind,i.id)),more:i=>(0,P.jsx)($s,{list:i,store:e.store})}),[r,a,n,e.store]);return(0,P.jsx)(Jt.Provider,{value:o,children:(0,P.jsx)(to.Provider,{value:(e.titleLevel??(e.framed&&!e.barAbove?1:2))-1,children:t})})}var ci=(0,q.createContext)(void 0);function Fs({steering:e}){let t=ye(),n=qe(),a=`${t.pathname}${t.search}`;return(0,q.useLayoutEffect)(()=>e.at(a),[a,e]),(0,q.useLayoutEffect)(()=>{let r=i=>{i!==a&&n(i)};e.go.current=r;let o=e.pending?.current;return o!==void 0&&(e.pending.current=void 0,r(o)),()=>{e.go.current===r&&(e.go.current=void 0)}},[a,n,e]),null}function Is({context:e,to:t}){let{pathname:n}=ye(),a=ce(),r=(t??a)?.sayWhere,o=Ds(e,n);return(0,q.useEffect)(()=>(r?.(o),()=>r?.(null)),[r,o]),null}function Ds(e,t){let[n="",a,r]=t.split("/").filter(Boolean).map(i=>{try{return decodeURIComponent(i)}catch{return i}});if(r!==void 0)return"#";if(n==="places"&&a!==void 0){if(a===On)return"#overview=1";let i=e.views?.places().find(s=>s.as===a);return i?`#focus=${encodeURIComponent(De(i.kind))}&view=${encodeURIComponent(i.as)}`:"#"}let o=ke(e.store.schema,n);return o?`#focus=${encodeURIComponent(a??De(o))}`:"#"}function Ws({onNavigate:e,path:t}){let n=ye(),a=Jn(),r=qe(),o=n.hash&&!n.hash.includes("=")?n.hash:"",i=`${n.pathname}${n.search}${o}`,s=(0,q.useRef)(e);s.current=e;let l=(0,q.useRef)(null);(0,q.useEffect)(()=>{let u=l.current;l.current=i,u!==null&&(i===u&&a!=="PUSH"||s.current?.(i,a==="POP"?"pop":a==="REPLACE"?"replace":"push"))},[n.key]);let c=(0,q.useRef)(t);return(0,q.useEffect)(()=>{t===void 0||t===c.current||(c.current=t,t!==i&&r(t))},[t]),null}function di({context:e,registry:t,page:n}){let a=_e(),r=ke(e.store.schema,a.slug??""),o=n==="list"?ca:ga,s=(r?t?.lookup(r,n):void 0)??o;return(0,P.jsx)(s,{context:e})}function Gs({context:e,registry:t,children:n}){let a=(0,q.useRef)(null);return sr(a),(0,P.jsx)("div",{ref:a,"data-graview-face":"pages",style:{display:"contents"},children:(0,P.jsx)(Io,{context:e,registry:t,root:a,children:(0,P.jsx)(Wo,{context:e,root:a,children:n})})})}function Bs(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 Ks(){let{pathname:e}=ye(),t=Jn(),n=(0,q.useRef)(null);(0,q.useLayoutEffect)(()=>{if(t!=="POP"){for(let o=n.current?.parentElement;o;o=o.parentElement){let{overflowY:i}=getComputedStyle(o);if((i==="auto"||i==="scroll")&&o.scrollHeight>o.clientHeight){o.scrollTop=0;return}}window.scrollTo(0,0)}},[e]);let a=(0,q.useRef)(e),r=(0,q.useRef)(!1);return(0,q.useEffect)(()=>{if(!r.current&&e===a.current)return;r.current=!0;let o=document.activeElement;if(Bs(o))return;let i=n.current?.closest("main")??document.querySelector("main"),l=n.current?.closest("[data-graview-face]")?.querySelector("[data-graview-page-title]")??i?.querySelector("h1, h2")??null??i??null;l&&(l.hasAttribute("tabindex")||l.setAttribute("tabindex","-1"),l.focus({preventScroll:!0}))},[e]),(0,P.jsx)("span",{ref:n,hidden:!0,"data-graview-scroll-reset":""})}function pi({context:e,children:t}){let n=qe(),a=et("/").replace(/\/$/,""),r=(0,q.useContext)(ci),o=(0,q.useMemo)(()=>{let i=(l,c)=>{if("record"in l){let u=e.store.graph.getNode(l.record);return u?Zt(Y(e.store.schema,u.kind,l.record),{section:c?.section}):void 0}if("place"in l){let u=e.views?.places().find(k=>k.as===l.place);return u?Zt(he(e,u),c):void 0}return e.store.schema.tryDefinition(l.list)?Zt(`/${V(e.store.schema,l.list)}`,c):void 0},s=l=>{l!==void 0&&n(l)};return{record:(l,c)=>s(i({record:l},c)),place:(l,c)=>s(i({place:l},c)),list:(l,c)=>s(i({list:l},c)),draft:()=>n("/~draft"),href:(l,c)=>{let u=r===!1?void 0:i(l,c);if(u!==void 0)return r?r(u):`${a}${u}`}}},[e,n,a,r]);return(0,P.jsx)(or.Provider,{value:o,children:t})}function qs(){let{pathname:e,search:t,hash:n}=ye();return(0,q.useEffect)(()=>{let a=decodeURIComponent(n.replace(/^#/,""));if(!(!a||a.includes("=")))return Oo(a)},[e,t,n]),null}function js({context:e,Home:t}){let n=ye(),a=e.views,r=n.key==="default"&&!(a&&ar(a));(0,q.useEffect)(()=>{a&&rr(a)},[a]);let o=r?Va(e.views?.arrangement?.()?.first,e.store.schema,e.views?.places()??[]):void 0,i=o?.to==="place"?he(e,o.place):o?.to==="kind"?`/${V(e.store.schema,o.kind)}`:void 0;return i?(0,P.jsx)(Yn,{to:i,replace:!0}):(0,P.jsx)(t,{context:e})}function ui({context:e,registry:t}){let n=t?.lookupSurface("shell"),a=n!==void 0,r=a&&(t?.without().has("bar")??!1),o=a&&!r&&!e.embedded?{...e,barAbove:!0}:e,i=f=>n===void 0?(0,P.jsx)(tn,{context:e,children:f}):r?(0,P.jsx)(n,{context:e,children:f}):(0,P.jsx)(tn,{context:e,children:(0,P.jsx)(n,{context:o,children:f})}),s=t?.lookupSurface("home")??ia,l=t?.lookupSurface("problems")??pa,c=a?{...o,framed:!0}:e,[u,k]=(0,q.useState)(null),p=(0,q.useMemo)(()=>({context:c,registry:t}),[c,t]),w=(0,q.useMemo)(()=>({onFind:k,find:!(t?.without().has("find")??!1),places:!(t?.without().has("places")??!1)}),[t]),R=(0,P.jsx)(Zn.Provider,{value:p,children:(0,P.jsx)(pi,{context:e,children:(0,P.jsx)(Gs,{context:e,registry:t,children:i((0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(wr,{face:"pages"}),(0,P.jsxs)(Hs,{context:c,children:[(0,P.jsx)(Ks,{}),(0,P.jsx)(qs,{}),(0,P.jsxs)(xo,{children:[(t?.routes()??[]).map(({path:f,component:x})=>(0,P.jsx)(Ee,{path:f,element:(0,P.jsx)(x,{context:c})},f)),(0,P.jsx)(Ee,{path:"/",element:(0,P.jsx)(js,{context:c,Home:s})}),(0,P.jsx)(Ee,{path:"/problems",element:(0,P.jsx)(l,{context:c})}),(0,P.jsx)(Ee,{path:"/~draft",element:(0,P.jsx)(q.Suspense,{fallback:null,children:(0,P.jsx)(Ms,{context:c})})}),(0,P.jsx)(Ee,{path:"/search",element:(0,P.jsx)(da,{context:c})}),(0,P.jsx)(Ee,{path:"/map",element:(0,P.jsx)(oa,{context:c})}),(0,P.jsx)(Ee,{path:"/places",element:(0,P.jsx)(aa,{context:c})}),He(c).some(f=>f.as===On)?null:(0,P.jsx)(Ee,{path:ja,element:(0,P.jsx)(Yn,{to:"/",replace:!0})}),(0,P.jsx)(Ee,{path:"/places/:as",element:(0,P.jsx)(ra,{context:c})}),(0,P.jsx)(Ee,{path:"/:slug",element:(0,P.jsx)(di,{context:c,registry:t,page:"list"})}),(0,P.jsx)(Ee,{path:"/:slug/:id",element:(0,P.jsx)(di,{context:c,registry:t,page:"record"})})]})]})]}))})})});return e.embedded||!a||r?R:(0,P.jsx)(Co.Provider,{value:w,children:(0,P.jsx)(Br.Provider,{value:u,children:R})})}var Vs=()=>typeof document>"u"?null:document.body;function Us({context:e,registry:t,basename:n,initialPath:a,onNavigate:r,path:o,steering:i,firstLook:s,hrefOf:l,typing:c}){let[u,k]=(0,q.useState)(void 0),p=u!==void 0&&u.from===e.principal?{...e,principal:u.seat}:e;(0,q.useState)(()=>p.views?ro(p.views,p.store.schema,Kn(p.brand,p.store.schema)):void 0);let w=ce(),R=c??p.typing;La({reader:p.locale??w?.locale,app:p.brand?.locale??p.app?.brand?.locale,readerTimeZone:p.timeZone??w?.timeZone,appTimeZone:p.brand?.timeZone??p.app?.brand?.timeZone});let f=p.principal??Os,x=Xa(p.store,f,p.history),D=(x.past&&x.live===p.store?x.past.store:p.store).seenBy(f),g=D===p.store?p:{...p,store:D};er(p.store,p.principal);let N=(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(Ws,{onNavigate:r,path:o}),i?(0,P.jsx)(Fs,{steering:i}):null,g.presence||w?(0,P.jsx)(Is,{context:g,to:w}):null,(0,P.jsx)(ui,{context:g,...t?{registry:t}:{}}),s?(0,P.jsx)(oo,{firstLook:s,root:Vs,app:Kn(p.brand,p.store.schema)}):null]}),T=g.views?(0,P.jsxs)(tr,{store:g.store,views:g.views,...g.principal?{principal:g.principal}:{},...g.brand?{brand:g.brand}:{},...g.locale?{locale:g.locale}:{},...g.timeZone?{timeZone:g.timeZone}:{},...g.settings?{settings:g.settings}:{},...g.presence&&!w?{presence:g.presence}:{},...R?{typing:R}:{},...g.people?{people:g.people}:{},...g.seats?{seats:g.seats}:{},onSeat:Q=>w?w.takeSeat(Q):k({from:e.principal,seat:Q}),...g.onKeepLens?{onKeepLens:g.onKeepLens}:{},...g.onExport?{onExport:g.onExport}:{},...g.ai?{ai:g.ai}:{},...g.subscriptions?{subscriptions:g.subscriptions}:{},dismissals:g.dismissals,whileAway:g.whileAway,...g.signIn?{signIn:g.signIn}:{},resolveApp:g.resolveApp??w?.resolveApp,linkedRecords:g.linkedRecords??w?.linkedRecords,...g.app?{app:g.app}:{},...g.menuSections?{menuSections:g.menuSections}:{},children:[N,(0,P.jsx)(pi,{context:g,children:(0,P.jsx)($o,{context:g})})]}):N,E=(0,P.jsx)(Za.Provider,{value:x,children:T}),re=g.files?(0,P.jsx)(Qa.Provider,{value:g.files,children:E}):E,te=l===void 0?re:(0,P.jsx)(ci.Provider,{value:l,children:re});if(a!==void 0){let Q=n===void 0?a:`${n.replace(/\/$/,"")}${a}`;return(0,P.jsx)(ko,{initialEntries:[Q],...n===void 0?{}:{basename:n},children:te})}return(0,P.jsx)(Po,{...n===void 0?{}:{basename:n},children:te})}export{Ii as a,Us as b};
@@ -1 +0,0 @@
1
- import{b as dn,c as cn,d as oe,e as ln,f as ie,h as Ae,i as ze,n as fn,r as ae}from"./chunk.H536YUAZ.js";import{Ab as U,B as ue,C as re,Ca as Ue,Db as nn,Ea as We,F as ke,Fc as an,Gc as Oe,H as Ve,Hb as tn,Hc as sn,I as Ie,Ia as we,Ic as Re,Ja as ve,Mb as rn,Pa as Je,Sa as Ye,b as Ge,ba as qe,bb as Qe,c as Me,d as Pe,db as Xe,e as V,fa as Be,g as ce,h as F,i as Le,ib as xe,j as Fe,jb as en,k as le,l as Ne,la as _e,m as Ce,o as Ze,p as fe,q as he,uc as on,v as Ke,wa as be,x as te,z as pe,za as He}from"./chunk.WR63RQGU.js";function pn(e){if(typeof e=="string")return{form:"string",light:e};if(typeof e!="object"||e===null)return;let a=e,n=v=>typeof a[v]=="string"?a[v]:void 0,t=n("light")??n("src");if(t===void 0)return;let[o,l,g]=[n("dark"),n("alt"),n("darkFallback")];return{form:n("light")!==void 0?"light":"src",light:t,...o!==void 0?{dark:o}:{},...l!==void 0?{alt:l}:{},...g!==void 0?{darkFallback:g}:{}}}function Fn(e,a){let n=e.brand??{},t=n.ground,o=n.accent?Re(n.accent,t):void 0;t&&sn(o?.ok?o.schemes:Oe(t),n.accent)&&(a.push(ze("brand","brand.ground","words would not read on that page background, so the app keeps Graview's","pick a lighter ground for the light scheme, a darker one for the dark")),t=void 0,o=n.accent?Re(n.accent):void 0),o&&!o.ok&&a.push(ze("brand","brand.accent",`that accent cannot make a readable brand, so the app keeps Graview's colors: ${o.why}`,"pick a color further from orange-red, or a darker one"));let l=pn(n.logo),g=n.name??e.name,v=n.typography?Object.fromEntries(Object.entries(n.typography).filter(([,E])=>typeof E=="string"&&!/url\(|@import|[;{}<>\\]/i.test(E)).map(([E,D])=>[E,an(D)])):void 0;return{name:g,schemes:o?.ok?o.schemes:t?Oe(t):on,...n.currency?{currency:n.currency}:{},...n.locale?{locale:n.locale}:{},...n.timeZone?{timeZone:n.timeZone}:{},...l?{logo:l.dark||l.darkFallback==="invert"?{light:l.light,...l.dark?{dark:l.dark}:{darkFallback:"invert"}}:l.light,logoAlt:l.alt??g}:{},...n.favicon?{favicon:n.favicon}:{},...e.description?{subtitle:e.description}:{},...n.subtitle===!1?{subtitleDrawn:!1}:{},...v?{typography:v}:{},...n.shape?{shape:n.shape}:{},...n.accents?{accents:n.accents}:{},...n.scheme?{scheme:n.scheme}:{}}}function un(e){let{currency:a,locale:n,timeZone:t}=e.brand??{};return{...a?{currency:a}:{},...n?{locale:n}:{},...t?{timeZone:t}:{}}}var xn=Symbol.for("@graview/core:typed-field"),mn=(e,a)=>(/^(phone|place|duration)$/.test(a)&&(re(e)[xn]=a),e),gn=/^(?=(?:\D*\d){3})\+?[\d ()./-]+(?: *(?:ext\.?|x|#) *\d+)?$/i;function yn(e){let a=F().check(V(300),pe(t=>Ue(t,e)!==void 0,`a record of ${e.kinds.join(" or ")} in ${e.address}, as "<kind>:<id>"`)),n=e.cardinality==="one"?a:fe(a).check(V(200));return We(e.description?n.check(ue(e.description)):n,e)}var Rn=new WeakMap;function hn(e,a){Rn.set(e,a)}var An=[{where:"settings[]",was:"honoured",now:"honored",since:"0.1.16"},{where:"pages",was:"overview",now:"scene",since:"0.1.17"}],I=e=>typeof e=="object"&&e!==null&&!Array.isArray(e);function kn(e,a=An){if(!I(e))return{document:e,respelled:[]};let n=[],t=e;for(let o of a)t=Se(t,o.where.split("."),o,"",n);return{document:t,respelled:n}}function Se(e,a,n,t,o){if(a.length===0){if(!I(e)||!Object.hasOwn(e,n.was))return e;o.push(`${t}${n.was}`);let{[n.was]:G,...N}=e;return Object.hasOwn(e,n.now)?N:{...N,[n.now]:G}}if(!I(e))return e;let[l,...g]=a,v=l.endsWith("[]"),E=v?l.slice(0,-2):l,D=e[E],B=D;if(!v)B=Se(D,g,n,`${t}${E}.`,o);else if(Array.isArray(D)){let G=D.map((N,W)=>Se(N,g,n,`${t}${E}.${W}.`,o));B=G.some((N,W)=>N!==D[W])?G:D}return B===D?e:{...e,[E]:B}}var bn="graview-compiled@1";function zn(e,a){return e.find(([n,t])=>n!==q&&"ref"in t&&(t.ref==="*"||t.ref.includes(a)))?.[0]}var q="id",me=e=>typeof e=="string"&&/^\$[A-Za-z][A-Za-z0-9]*$/.test(e)?e.slice(1):void 0;function wn(e){let a=Object.entries(e.fields),n=t=>["name","title","label"].find(o=>t.some(([l])=>l===o))??t[0]?.[0];return n(a.filter(([,t])=>t.required&&(t.type==="string"||t.type==="text")))??n(a.filter(([,t])=>t.type==="string"))}function vn(e,a,n){let t;switch(e.type){case"string":case"place":t=F().check(V(500));break;case"phone":t=F().check(V(40),ce(gn,"a phone number"));break;case"text":t=F().check(V(2e4)),e.format&&(re(t)[Symbol.for("@graview/core:markdown")]=1);break;case"number":case"integer":case"duration":{let l=e.min??(e.type==="duration"?0:void 0),g=[...e.type==="number"?[]:[Ne()],...l===void 0?[]:[Me(l)],...e.max===void 0?[]:[Ge(e.max)],...e.step===void 0?[]:[Pe(e.step)]];t=g.length>0?le().check(...g):le();break}case"boolean":t=Ce();break;case"date":t=F().check(ce(ke,"a date like 2026-10-02"));break;case"datetime":t=F().check(pe(Ve,"a date and time like 2026-10-02T14:30:00Z"));break;case"enum":t=Ke(e.options);break;case"list":t=fe(e.of==="number"?le():e.of==="date"?F().check(ce(ke)):e.of==="image"||e.of==="video"||e.of==="file"?be(e.of):F().check(V(500))).check(V(200));break;case"image":case"video":case"file":t=be(e.type);break;case"app-link":t=He();break;case"url":t=Fe();break;case"email":t=Le();break}let o=e.type==="number"||e.type==="integer";return mn(t,o&&e.format==="duration"?"duration":e.type),e.collaborative!==void 0&&(e.type==="text"||e.type==="string")&&(re(t)[Symbol.for("@graview/core:collaborative")]=e.collaborative?1:0),e.description&&(t=t.check(ue(e.description))),o&&(e.format==="money"||e.format==="percent"||!e.format&&e.unit)&&tn(t,{...n,...e.format?{format:e.format}:{},...e.unit?{unit:e.unit}:{}}),a?te(t):t}var se=e=>{throw new U(`there is no record "${e}"`,"invalid")},Sn=(e,a)=>"field"in e?vn(e.field,e.optional,a):"ref"in e?rn(e.ref):te(Ze()),jn=new WeakMap;var je=(e,a)=>I(a)&&Object.keys(e??{}).length===Object.keys(a).length&&Object.keys(e??{}).every(n=>Object.hasOwn(a,n));function dt(e,a={}){let n=I(e)?e.format:void 0;if(n!==bn)return{ok:!1,findings:[Ae("compiled-format","format",n===void 0?"this is not a compiled Graview app":`this compiled app is ${JSON.stringify(n)}, and this build reads ${bn}`,"compile the document instead")]};let t=e,o=kn(t.document).document,l=o===t.document?t:{...t,document:o},g=I(o)&&typeof o.name=="string"&&I(o.kinds)&&je(o.kinds,l.kinds)&&je(o.acts,l.acts)&&je(o.rules,l.rules)&&Array.isArray(l.edges)&&Array.isArray(l.findings),v={ok:!1,findings:[Ae("compiled-shape","","this compiled app's parts do not match its document","compile the document instead")]};if(!g)return v;try{return En(l,a)}catch{return v}}function En(e,a={}){let{document:n}=e,t=n.brand?.timeZone,o=a.today??(()=>Ie(t)),l=new Map(e.edges.map(([h,r])=>[h,r])),g=new Map;for(let[h,r]of Object.entries(n.kinds)){let A=e.kinds[h]?.computed,R=ve(r.edges);g.set(h,{fields:new Set([...Object.keys(r.fields),...R.keys()]),edges:new Map(Object.entries(we(r.edges)).map(([T,M])=>[T,M.cardinality??"many"])),...A?{computed:new Map(A)}:{},...R.size>0?{linked:R}:{}})}e.facts&&g.set(cn,{computed:new Map(e.facts)});let v=un(n),E=new Map,D=Object.entries(n.kinds).map(([h,r])=>{let A={};for(let[i,f]of Object.entries(r.fields))A[i]=vn(f,!f.required,v),f.repeats&&(A[Je(i)]=te(Ye()));for(let[i,f]of ve(r.edges))A[i]=te(yn(f));let{label:R,describe:T,durations:M}=e.kinds[h]??{},P=Object.entries(r.computed??{}).map(([i,f])=>[i,typeof f=="string"?{expr:f}:f]),J=Object.hasOwn(r.fields,"label")&&!r.fields.label.label&&!/\{\s*label\b/.test(r.label??`{${wn(r)??""}}`),_=Object.fromEntries([...J?[["label","Label"]]:[],...Object.entries(r.fields).filter(([,i])=>i.label).map(([i,f])=>[i,f.label]),...P.filter(([,i])=>i.label).map(([i,f])=>[i,f.label])]),S=Object.keys(_).length>0,p=Object.fromEntries(Object.entries(r.fields).filter(([,i])=>i.default!==void 0).map(([i,f])=>[i,f.default]));E.set(h,p);let $=Object.fromEntries(Object.entries(we(r.edges)).map(([i,{renamedFrom:f,...Y}])=>[i,Y])),C=Object.entries(r.fields).flatMap(([i,f])=>f.aliases?[[i,f.aliases]]:[]),z=i=>r[i]?{[i]:r[i]}:{};return qe(h,{fields:he(A),edges:$,...z("plural"),...z("noun"),...z("aliases"),...C.length>0?{fieldAliases:Object.fromEntries(C)}:{},...z("description"),...R?{label:i=>ae(R,{node:i,kinds:g,today:o(),money:v})||i.id}:{},...T?{describe:i=>ae(T,{node:i,kinds:g,today:o(),money:v})}:{},...z("lifecycle"),...z("figure"),...z("fieldRoles"),...z("people"),archives:r.archives,...r.tidying?{tidying:r.tidying}:{},...P.length>0?{computed:Object.fromEntries(P.map(([i,f])=>[i,M?.includes(i)?{...f,as:"duration"}:r.computed[i]]))}:{},...S||r.glance||r.page?{display:{...S?{labels:_}:{},...r.glance?{glance:[...r.glance]}:{},...r.page?{page:r.page}:{}}}:{},...Object.keys(p).length>0?{defaults:p}:{}})}),B=Qe(D,n.computed);function G(h){return B.tryDefinition(h.kind)?.label?.(h)??h.id}let N=h=>({id:"",kind:h,...E.get(h)}),W=[];for(let[h,r]of Object.entries(n.acts??{})){let A=e.acts[h],{title:R,effects:T,guard:M,refusal:P,destructive:J,idempotent:_,creates:S,connects:p,severs:$,writes:C,writesOther:z,sets:i}=A,f=new Map(A.args),Y={};for(let[d,x]of f)Y[d]=Sn(x,v);let b=[r.on??[]].flat(),Z=new Map(A.exprs),L=T.find(d=>"create"in d),Q=(d,x,u,w=null)=>{if(I(d)&&"expr"in d)return ie(Z.get(d.expr),{graph:u,subject:w,kinds:g,bindings:x,today:o()});let k=me(d);return k===void 0?typeof d=="string"&&d.startsWith("$$")?d.slice(1):d:k==="now"?new Date().toISOString():k==="today"?o():x[k]},Te=(d,x)=>{if(!L)return"";let u=n.kinds[L.create].fields,w=N(L.create),k=[];for(let[O,ne]of Object.entries(L.set??{})){try{w[O]=Q(ne,d,x)??w[O]}catch{}let X=me(ne);X&&d[X]!==void 0&&k.push(O)}let K=G(w).trim(),H=k.filter(O=>w[O]!==!1&&u[O].type!=="text"&&!(/[^]{41}/.test(w[O])||/ .*[.!?]$/.test(w[O])&&!/[ .][A-Z]\w{0,3}\.$/.test(w[O]))&&G({...w,[O]:void 0}).trim()===K).map(O=>w[O]===!0?u[O].label??Be(O):fn(w[O],u[O].format,o(),[],v));return K&&H.length>0?`${K} (${H.join(", ")})`:K};W.push(nn(h,{input:he(Y),title:R,...r.description?{description:r.description}:{},...r.fromTheOtherEnd?{fromTheOtherEnd:r.fromTheOtherEnd}:{},...f.has(q)?{subject:{kinds:b.length>0?b:"*",arg:q}}:{},...J?{destructive:!0}:{},..._?{idempotent:!0}:{},...S.length>0?{creates:S}:{},...p.length>0?{connects:p}:{},...$.length>0?{severs:$}:{},writes:C,...Object.keys(z).length>0?{writesOther:z}:{},...Object.keys(i).length>0?{sets:i}:{},describe:(d,x)=>{let u=typeof d[q]=="string"?x.getNode(d[q]):void 0,w=u?G(u):Te(d,x);return w?`${R}: ${w}`:R},apply(d,x){let u=d.graph,w=typeof x[q]=="string"?x[q]:void 0,k=w?u.getNode(w):void 0;if(w&&!k&&se(w),k&&b.length>0&&!b.includes(k.kind))throw new U(`"${R}" acts on ${b.join(" or ")}, not on ${_e(k.kind)}`,"invalid");let K={};for(let[s,c]of Object.entries(x))c!==void 0&&(K[s]=c);if(M&&k){let s;try{s=ie(M,{graph:u,subject:k,kinds:g,bindings:K,today:o()})}catch(c){throw c instanceof oe?new U(`"${R}" could not be judged: ${c.sentence}`):c}if(s!==!0)throw new U(P?ae(P,{node:k,kinds:g,graph:u,bindings:K,today:o(),money:v}):`"${R}" is not allowed for ${G(k)} right now`)}let H=new Map,O=s=>u.has(s)||[...H.values()].includes(s),ne=new Set,X=s=>{let c=Xe(s);ne.has(c)||(ne.add(c),d.removeEdge(s))},ee=(s,c)=>{let m=me(s);if(m==="subject")return w;if(m==="me"){let y=d.me;if(y&&n.kinds[u.getNode(y)?.kind]?.people)return y;throw new U(`"${R}" is done as you, and you have no record here`)}if(H.has(m))return H.get(m);try{return Q(s,K,u,c??k??null)}catch(y){throw y instanceof oe?new U(`"${R}" could not work out a value: ${y.sentence}`):y}};for(let s of T)if("create"in s){let c=n.kinds[s.create],m=N(s.create);for(let[ye,de]of Object.entries(s.set??{})){let $e=ee(de,void 0);$e!==void 0&&(m[ye]=$e)}let y=wn(c),j=d.freshId(String((y&&m[y])??s.create),s.create);d.addNode({...m,id:j}),s.as&&H.set(s.as,j)}else if("connect"in s||"sever"in s){let c="connect"in s?s.connect:s.sever,m=String(ee(s.from,void 0)??""),y=String(ee(s.to,void 0)??"");if(O(m)||se(m),O(y)||se(y),"connect"in s){if(l.get(c)?.cardinality==="one")for(let j of u.out(m,c))j.id!==y&&X({kind:c,from:m,to:j.id});u.out(m,c).some(j=>j.id===y)||d.addEdge({kind:c,from:m,to:y})}else X({kind:c,from:m,to:y})}else if("set"in s){let c=String(ee(s.target??"$subject",void 0)??""),m=u.getNode(c);!m&&!O(c)&&se(c);let y={};for(let[j,ye]of Object.entries(s.set)){let de=ee(ye,m);de!==void 0&&(y[j]=de)}Object.keys(y).length>0&&d.patchNode(c,y)}else if("remove"in s){let c=String(ee(s.remove,void 0)??"");u.has(c)||se(c),d.removeNode(c)}else if("replace"in s&&k){let c=x.to;for(let m of s.replace){let y=l.get(m)?.from.includes(k.kind)??!0;for(let j of y?u.out(k.id,m):u.in(k.id,m))m===s.keep&&j.id===c||X(y?{kind:m,from:k.id,to:j.id}:{kind:m,from:j.id,to:k.id})}}}}))}let Ee=[];for(let[h,r]of Object.entries(n.rules??{})){let{title:A,require:R,when:T,says:M}=e.rules[h],P=r.repairs??[],J=(S,p,$=o(),C)=>{let z=[],i={graph:S,subject:p,kinds:g,today:$,...C?{linked:C}:{},onUnread:b=>z.push(b)},f;try{if(T&&ie(T,i)!==!0)return[];if(f=ie(R,i)===!0,!f&&z.length>0)throw new oe(`it reads ${dn(z[0])}`,0)}catch(b){throw b instanceof ln?new en(b.sentence):b instanceof oe?new Error(b.sentence):b}if(f)return[];let Y=P.flatMap(b=>{let Z=n.acts?.[b.act],L={},Q=p&&Z?.on&&Z.fromTheOtherEnd&&![Z.on].flat().includes(p.kind)?zn(e.acts[b.act].args,p.kind):void 0;Q?L[Q]=p.id:p&&(Z?.on||/^(edit|remove|archive|unarchive|merge|skip|detach|split)-/.test(b.act))&&(L[q]=p.id);for(let[x,u]of Object.entries(b.args??{}))L[x]=me(u)==="subject"?p?.id:u;let d=(Z?e.acts[b.act].args:[]).filter(([x,u])=>u.required&&L[x]===void 0).map(([x])=>x);return[{mutation:b.act,label:b.label??(Q?Z.fromTheOtherEnd:Z?.title)??b.act.replace(/-/g," "),args:L,...d.length>0?{missing:d}:{}}]});return[{invariant:h,...p?{subjectId:p.id}:{},label:A,message:M?ae(M,{node:p,kinds:g,graph:S,today:$,money:v}):p?`${G(p)}: ${A}`:A,nodeIds:p?[p.id]:[],repairs:Y}]},_={label:A,shape:{over:r.over,require:R,when:T,says:M,declared:n.kinds,money:v,kinds:g,today:o},judgment:{require:r.require,...r.when?{when:r.when}:{},...r.says?{says:r.says}:{}},...r.description?{description:r.description}:{},...P.length>0?{repairs:P.map(S=>S.act)}:{}};Ee.push(r.over==="graph"?xe(h,{scope:"graph",..._,evaluate:({graph:S,today:p,context:$})=>J(S,null,p,$?.linked)}):xe(h,{scope:{kind:r.over},..._,evaluate:({graph:S,subject:p,today:$,context:C})=>J(S,p,$,C?.linked)}))}let De=n.policy&&{...n.policy,...n.roles?{roles:n.roles}:{}},ge={name:n.name,schema:B,mutations:W,invariants:Ee,...De?{policy:De}:{},...e.brand?{brand:e.brand}:{},...n.modules?{modules:n.modules}:{},...n.lenses?{lenses:n.lenses}:{},...n.pages?{pages:n.pages}:{},...n.settings?{settings:n.settings}:{},...n.connections?{connections:n.connections}:{},...n.forms?{forms:n.forms}:{},...n.publishing?{publishing:n.publishing}:{},...n.purpose?{purpose:n.purpose}:{},...e.viewSpecs?{viewSpecs:e.viewSpecs}:{},...e.home?{home:e.home}:{},version:n.version??1};return hn(ge,n),jn.set(ge,e),{ok:!0,app:ge,document:n,findings:e.findings,sights:n.policy?.sees,kinds:g}}export{kn as a,Fn as b,bn as c,q as d,me as e,wn as f,dt as g,En as h};
@@ -1 +0,0 @@
1
- import{a,b}from"./chunk.HXR7EEXR.js";import"./chunk.DKJK2MMV.js";import"./chunk.6UAUME5U.js";import"./chunk.BRCKXL7B.js";import"./chunk.CPNE6HPQ.js";import"./chunk.QQ3YWKWU.js";import"./chunk.HUABTCQE.js";import"./chunk.DXJFAAOI.js";import"./chunk.5MSNKSTE.js";import"./chunk.KVQZ5FR6.js";import"./chunk.2HANQ737.js";import"./chunk.H536YUAZ.js";import"./chunk.5EZDXWOE.js";import"./chunk.MIQMPOWF.js";import"./chunk.T66UK7PQ.js";import"./chunk.WR63RQGU.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";export{b as actOnSeveral,a as actsForSeveral};
@@ -1,3 +0,0 @@
1
- import{C as y,L as h,Lb as $,Pb as x,U as g,fa as m}from"./chunk.WR63RQGU.js";function B(n,e,t){let o=n?.display?.format?.[e];return o?o(t):typeof t=="string"?m(t):String(t)}function G(n,e,t,o){let s=n.tryDefinition(e)?.edges,i=s&&Object.hasOwn(s,t)?s[t]:void 0;return(o==="out"?i?.description:i?.inverse)??m(t).toLowerCase()}var O=Symbol.for("@graview/core:markdown");function S(n){let e=y(n);return!!e&&(e[O]===1||S(e.innerType))}var w=/^ {0,3}#{1,6}(?:[ \t]+|$)/,b=/^[ \t]*(?:[-*+•]|\d{1,9}[.)])[ \t]+(?:\[[ xX]\][ \t]+)?/,k=/^ {0,3}(?:(?:-[ \t]*){3,}|(?:\*[ \t]*){3,}|(?:_[ \t]*){3,})$/,R=/^ {0,3}(?:`{3,}|~{3,})/,F=/^ {0,3}(?:>[ \t]?)+/,A=/^\|?\s*:?-{2,}:?\s*(?:\|\s*:?-{2,}:?\s*)*\|?$/,_={amp:"&",lt:"<",gt:">",quot:'"',"#39":"'",nbsp:" "};function E(n){return n.replace(/!?\[([^\]\n]{0,500})\]\([^)\n]{0,500}\)/g,"$1").replace(/<((?:https?:|mailto:)[^>\s]*)>/gi,"$1").replace(/<\/?[A-Za-z][^<>\n]*>/g,"").replace(/`+([^`\n]*)`+/g,"$1").replace(/(\*\*|__|~~)(?=\S)([^\n]{0,500}?\S)\1/g,"$2").replace(/(^|[^\w*])\*(?=\S)([^*\n]{0,500}?\S)\*(?![\w*])/g,"$1$2").replace(/(^|\W)_(?=\S)([^_\n]{0,500}?\S)_(?!\w)/g,"$1$2").replace(/\\([\\`*_{}[\]()#+\-.!>|~])/g,"$1").replace(/&(amp|lt|gt|quot|#39|nbsp);/g,(e,t)=>_[t]??"")}function N(n,e,t){let o=n.replace(/\r\n?/g,`
2
- `).split(`
3
- `),s=[],i=[],c=0,d=!1,u=()=>{let r=i.join(" ").replace(/\s+/g," ").trim();r&&(s.push(r),c+=r.length),i=[]},a=0;for(;a<o.length&&c<=t;){let r=o[a++];if(e&&R.test(r)){d=!d,d||u();continue}if(!d&&(r.trim().length===0||e&&(k.test(r)||A.test(r.trim())))){u();continue}let f=!d&&e&&w.test(r),l=!d&&b.test(r);if((f||l)&&u(),e&&!d?(r=r.replace(F,""),f&&(r=r.replace(w,"").replace(/[ \t]+#+[ \t]*$/,"")),l&&(r=r.replace(b,"")),r.includes("|")&&(r=r.replace(/^[ \t]*\||\|[ \t]*$/g,"").split("|").map(p=>p.trim()).filter(Boolean).join(" \xB7 ")),r=E(Number.isFinite(t)?r.slice(0,t*2+200):r)):l&&(r=r.replace(b,"")),i.push(r),f&&u(),i.reduce((p,T)=>p+T.length,0)>t)break}return u(),{blocks:s,more:o.slice(a).some(r=>r.trim().length>0&&!(e&&(R.test(r)||k.test(r))))}}function M(n,e){return`${(n.slice(0,e+1).replace(/\s+\S*$/,"")||n.slice(0,e)).replace(/[\s,;:.—-]+$/,"")}\u2026`}function Z(n,e={}){let t=e.most??160,{blocks:o,more:s}=N(n,e.markdown===!0,t),i=o[0]??"";if(i.length<=t)return(s||o.length>1)&&i.length>0&&!/[.!?…:]$/.test(i)?`${i}\u2026`:i;let c=x(i);return c&&c.length<=t?c:M(i,t)}var J=n=>N(n,!0,Number.POSITIVE_INFINITY).blocks.join(" ");var j={d:1440,h:60,m:1};function ne(n){if(typeof n=="number")return Number.isFinite(n)&&n>=0?Math.round(n):void 0;if(typeof n!="string")return;let e=n.trim().toLowerCase();if(/^\d+$/.test(e))return Number(e);let t=/^(\d+):([0-5]\d)(?::([0-5]\d))?$/.exec(e);if(t)return Number(t[1])*60+Number(t[2])+Math.round(Number(t[3]??0)/60);let o=0,s=!1,i=e.replace(/(\d*[.,]?\d+) *(days?|d|hours?|hrs?|hr|h|minutes?|mins?|min|m)(?![a-z])/g,(c,d,u)=>(s=!0,o+=Number(d.replace(",","."))*j[u[0]]," "));return s&&/^[\s,+]*(?:and[\s,+]*)*$/.test(i)?Math.round(o):void 0}function I(n,e){if(!Number.isFinite(n))return String(n);let t=Math.round(Math.abs(n)),o=Math.floor(t/60),s=t%60,i=[o?`${g(o,e)} h`:"",s||!o?`${g(s,e)} min`:""].filter(Boolean).join(" ");return n<0?`\u2212${i}`:i}var D=/^(\+?1[ .-]?)?\(?([2-9]\d\d)\)?[ .-]?(\d{3})[ .-]?(\d{4})(?: *(?:ext\.?|x|#) *(\d+))?$/i;function W(n,e){let t=n.trim(),o=/[-_](US|CA)\b/i.test(h(e))?D.exec(t):null;if(!o)return t;let[,s,i,c,d,u]=o;return`${s?.startsWith("+")?"+1 ":""}(${i}) ${c}-${d}${u?` ext. ${u}`:""}`}function P(n){let[,e="",t]=/^(.*?)(?: *(?:ext\.?|x|#) *(\d+))?$/i.exec(n.trim())??[],o=e.replace(/\D/g,"");return o.length<3?void 0:`tel:${e.startsWith("+")?"+":""}${o}${t?`;ext=${t}`:""}`}var L=()=>/Mac|iPhone|iPad|iPod/.test(globalThis.navigator?.userAgent??"");function q(n,e=L()){let t=encodeURIComponent(n.trim());return e?`https://maps.apple.com/?q=${t}`:`https://www.google.com/maps/search/?api=1&query=${t}`}var C=n=>n?.fields?.shape??{},U=(n,e)=>{let t=C(n);return Object.hasOwn(t,e)?$(t[e]):void 0},H=(n,e)=>{let t=n.computed,o=t&&Object.hasOwn(t,e)?t[e]:void 0;return typeof o=="object"?o.as:void 0};function te(n,e){return U(n,e)??(n&&H(n,e)==="duration"?"duration":void 0)}function re(n,e,t){return n==="duration"?typeof e=="number"?I(e,t):void 0:n==="phone"?typeof e=="string"?W(e,t):void 0:n==="place"&&typeof e=="string"?e.trim():void 0}function oe(n,e){if(!(typeof e!="string"||!e.trim()))return n==="phone"?P(e):n==="place"?q(e):void 0}export{S as a,B as b,G as c,Z as d,J as e,ne as f,te as g,re as h,oe as i};
@@ -1 +0,0 @@
1
- import{a as n}from"./chunk.R3ZS4QO6.js";import"./chunk.2ORJGMRT.js";import"./chunk.YYWANGIC.js";import"./chunk.FTW3K3G6.js";import"./chunk.UGFDSE37.js";import{l as s}from"./chunk.QBMIET7P.js";import"./chunk.PXQVXBNG.js";import"./chunk.WVKXELAF.js";import"./chunk.ZOW7AC7U.js";import"./chunk.INBHY3SA.js";import"./chunk.TDV7JGIQ.js";import"./chunk.RZQKCLTW.js";import"./chunk.Y3BEKXYB.js";import"./chunk.NDLQXQV2.js";import"./chunk.WUFCRE7O.js";import"./chunk.XEHLSKHP.js";import"./chunk.MSM6E6JK.js";import"./chunk.YGZGMRDC.js";import"./chunk.6ZJE5M2A.js";import"./chunk.2SWQI4HF.js";import"./chunk.QIAH7HHO.js";import"./chunk.DNJM6WQO.js";import"./chunk.LEPKPNPA.js";import"./chunk.5D6SIBOK.js";import"./chunk.UE5GAP67.js";import"./chunk.BJUUSIQY.js";import"./chunk.BRCKXL7B.js";import"./chunk.CPNE6HPQ.js";import"./chunk.XOZU4OFA.js";import"./chunk.QQ3YWKWU.js";import"./chunk.MB7LKKUD.js";import"./chunk.WVUJXDXZ.js";import"./chunk.HUABTCQE.js";import"./chunk.DXJFAAOI.js";import"./chunk.5MSNKSTE.js";import"./chunk.KVQZ5FR6.js";import"./chunk.2HANQ737.js";import"./chunk.H536YUAZ.js";import"./chunk.GZHZLJBF.js";import"./chunk.OL2N5NUV.js";import"./chunk.OJGHDWI6.js";import"./chunk.5DPFAVCZ.js";import"./chunk.5EZDXWOE.js";import"./chunk.MIQMPOWF.js";import"./chunk.T66UK7PQ.js";import"./chunk.LMXNHBGH.js";import"./chunk.DBCVZGCC.js";import{G as y,T as i}from"./chunk.WSMYFEGU.js";import"./chunk.SDO3U72B.js";import"./chunk.WR63RQGU.js";import"./chunk.FQLNBIQ5.js";import{b as r}from"./chunk.AJZBJBMO.js";var c=r(y(),1),e=r(i(),1);function v({store:d,views:t,as:a,scope:o}){let l=(0,c.useMemo)(()=>s({scope:`.${o}`}),[o]);return(0,e.jsxs)("div",{"data-testid":"embed-picture","data-embed-content":"",tabIndex:0,"aria-label":t.places().find(m=>m.as===a)?.title??"The picture",style:{flex:"1 1 auto",minHeight:0,display:"grid",gridTemplateRows:"minmax(0, 1fr)",overflow:"auto",background:"var(--graview-ground)",color:"var(--graview-ink)",fontFamily:"var(--graview-font-body, system-ui)"},children:[(0,e.jsx)("style",{children:l}),(0,e.jsx)(n,{store:d,views:t,as:a})]})}export{v as PictureFace};
@@ -1 +0,0 @@
1
- import{i as n}from"./chunk.INBHY3SA.js";import"./chunk.TDV7JGIQ.js";import"./chunk.RZQKCLTW.js";import"./chunk.Y3BEKXYB.js";import"./chunk.WUFCRE7O.js";import"./chunk.XEHLSKHP.js";import"./chunk.MSM6E6JK.js";import"./chunk.QIAH7HHO.js";import"./chunk.DNJM6WQO.js";import"./chunk.LEPKPNPA.js";import"./chunk.5D6SIBOK.js";import"./chunk.UE5GAP67.js";import"./chunk.WVUJXDXZ.js";import{e as p}from"./chunk.HUABTCQE.js";import"./chunk.DXJFAAOI.js";import"./chunk.5MSNKSTE.js";import"./chunk.KVQZ5FR6.js";import"./chunk.2HANQ737.js";import"./chunk.H536YUAZ.js";import"./chunk.GZHZLJBF.js";import"./chunk.OL2N5NUV.js";import"./chunk.OJGHDWI6.js";import"./chunk.5DPFAVCZ.js";import"./chunk.5EZDXWOE.js";import"./chunk.MIQMPOWF.js";import"./chunk.T66UK7PQ.js";import"./chunk.LMXNHBGH.js";import"./chunk.DBCVZGCC.js";import{T as m}from"./chunk.WSMYFEGU.js";import"./chunk.SDO3U72B.js";import"./chunk.WR63RQGU.js";import"./chunk.FQLNBIQ5.js";import{b as t}from"./chunk.AJZBJBMO.js";var i=t(m(),1),a=new WeakMap;function l(o){let e=a.get(o);if(!e){let r=p(o);e=c=>c.mode==="fullscreen"?(0,i.jsx)(n,{blocks:r,slot:"home",heading:2,firstHeading:1}):(0,i.jsx)(n,{blocks:r,slot:"home",heading:3,firstHeading:2}),a.set(o,e)}return e}export{l as homeView};
@@ -1 +0,0 @@
1
- import{a}from"./chunk.LWLI5PI4.js";import"./chunk.6ZJE5M2A.js";import"./chunk.XUHY4XO2.js";import"./chunk.DU75P3Y7.js";import"./chunk.2SWQI4HF.js";import"./chunk.DNJM6WQO.js";import"./chunk.5D6SIBOK.js";import"./chunk.CPNE6HPQ.js";import{b as n}from"./chunk.6NQQUIBX.js";import"./chunk.IXHLP2CL.js";import"./chunk.GZHZLJBF.js";import"./chunk.OL2N5NUV.js";import"./chunk.OJGHDWI6.js";import"./chunk.5DPFAVCZ.js";import"./chunk.5EZDXWOE.js";import"./chunk.MIQMPOWF.js";import"./chunk.T66UK7PQ.js";import"./chunk.LMXNHBGH.js";import"./chunk.DBCVZGCC.js";import{T as i}from"./chunk.WSMYFEGU.js";import"./chunk.SDO3U72B.js";import"./chunk.WR63RQGU.js";import"./chunk.FQLNBIQ5.js";import{b as o}from"./chunk.AJZBJBMO.js";var e=o(i(),1);function m({entries:d,style:l,headingStyle:p,className:r}){return(0,e.jsxs)("section",{...r?{className:r}:{},"data-testid":"record-ai","aria-label":"What AI did here",style:{display:"grid",gap:10,...l},children:[(0,e.jsx)("h2",{style:p??{margin:0,fontSize:"1rem"},children:"What AI did here"}),(0,e.jsx)("ol",{style:{margin:0,padding:0,listStyle:"none",display:"grid",gap:8,fontSize:"0.875rem"},children:d.slice(0,8).map(t=>(0,e.jsx)(n,{entry:t,undo:s=>(0,e.jsx)(a,{batch:s})},t.id))})]})}export{m as RecordInteractions};
@@ -1,21 +0,0 @@
1
- var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{a as dt,b as gt,c as mt,d as yt,e as ht,f as wt,g as vt}from"./chunk.TAQB64FZ.js";import{a as ke,e as at}from"./chunk.BBLIT7S7.js";import{a as ft,b as Se,c as bt}from"./chunk.KY7QD22S.js";import{a as se,f as st,h as it}from"./chunk.LQCH2NFE.js";import"./chunk.PXQVXBNG.js";import{h as lt}from"./chunk.F5RN6YXG.js";import{e as pt}from"./chunk.ZPXAKRKG.js";import"./chunk.B3WVCSW5.js";import{c as ut,f as ct,g as xe}from"./chunk.G2XDQPE4.js";import{b as ie,d as ae}from"./chunk.5XUVCM7X.js";import{a as H}from"./chunk.SDO3U72B.js";import"./chunk.WR63RQGU.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";var kt=["good","warn","bad","neutral","accent"],xt=["value","max","aria-label","placeholder","disabled"],St=["click","change"],Te=["_blank","_self"],Tt=["section","div","span","strong","p","hr","a","button","input","progress"],de={type:{oneOf:kt}},Me={"gv-card":{host:"section",properties:{tone:de},events:{},children:"any"},"gv-group":{host:"div",properties:{direction:{type:{oneOf:["row","column"]}}},events:{},children:"any"},"gv-title":{host:"strong",properties:{},events:{},children:"text"},"gv-text":{host:"p",properties:{tone:de},events:{},children:"text"},"gv-badge":{host:"span",properties:{tone:de},events:{},children:"text"},"gv-field":{host:"div",properties:{label:{type:"string"}},events:{},children:"text"},"gv-progress":{host:"progress",properties:{value:{type:"number",as:"value"},max:{type:"number",as:"max"},label:{type:"string",as:"aria-label"}},events:{},children:"none"},"gv-divider":{host:"hr",properties:{},events:{},children:"none"},"gv-link":{host:"a",properties:{href:{type:"url"}},events:{},children:"text"},"gv-button":{host:"button",properties:{tone:de,disabled:{type:"boolean",as:"disabled"}},events:{press:{from:"click"}},children:"text"},"gv-input":{host:"input",properties:{label:{type:"string",as:"aria-label"},value:{type:"string",as:"value"},placeholder:{type:"string",as:"placeholder"}},events:{change:{from:"change",detail:"value"}},children:"none"}},Ee=1e4;var jt=0,Bt=1,Ut=2,$t=3,Mt=1,Ft=2,zt=3,qt=1,Xt=3,Yt=8,Re="~",Ke=(n,e)=>Object.prototype.hasOwnProperty.call(n,e),J=n=>typeof n=="object"&&n!==null&&!Array.isArray(n);function Et(n,e){return e.type==="url"?"href":e.as??`data-gv-${n.toLowerCase()}`}var Jt=2e3;function Rt(n,e){if(e==null)return{ok:!0,value:null};let d=n.type;if(d==="boolean")return typeof e=="boolean"?{ok:!0,value:e}:{ok:!1,reason:"value"};if(d==="number")return typeof e=="number"&&Number.isFinite(e)?{ok:!0,value:String(e)}:{ok:!1,reason:"value"};if(typeof e!="string"||e.length>Jt)return{ok:!1,reason:d==="url"?"url":"value"};if(typeof d=="object")return d.oneOf.includes(e)?{ok:!0,value:e}:{ok:!1,reason:"value"};if(d==="url"){let m;try{m=new URL(e)}catch{return{ok:!1,reason:"url"}}return m.protocol!=="https:"||m.hostname===""||!/^https:\/\//i.test(e)?{ok:!1,reason:"url"}:{ok:!0,value:m.href}}return{ok:!0,value:e}}function Qt(n){let e=n.host==="a";return Tt.includes(n.host)&&(n.target===void 0||e&&Te.includes(n.target))&&Object.values(n.properties).every(d=>d.type!=="url"||e)&&Object.values(n.properties).every(d=>d.as===void 0||d.type!=="url"&&xt.includes(d.as))&&Object.values(n.events).every(d=>St.includes(d.from))}function Ge(n,e){let d=e.kit??Me,m=e.maxNodes??2e3,o=n.ownerDocument,y=[],w=new Map,W={dom:n,name:Re,component:{host:"div",properties:{},events:{},children:"any"},children:[],listeners:new Map,id:Re};w.set(Re,W);let K=e.links?new Set(e.links.origins.flatMap(r=>{try{let l=new URL(r);return l.protocol==="https:"&&l.hostname!==""?[l.origin]:[]}catch{return[]}})):void 0,_=0,E=0,O=!1,p=r=>{y.push(r),y.length>200&&y.shift()},R=()=>({dom:o.createComment(""),children:[],refused:!0,listeners:new Map}),M=(r,l,h)=>{let u=r.component;if(!Ke(u.properties,l))return p({reason:"property",element:r.name,name:l});let i=u.properties[l],g=Rt(i,h),v=g.ok&&i.type==="url"&&K&&typeof g.value=="string"&&!K.has(new URL(g.value).origin)?{ok:!1,reason:"url"}:g,T=r.dom,f=Et(l,i);if(!v.ok)return T.removeAttribute(f),p({reason:v.reason,element:r.name,name:l});let L=v.value;L===null||L===!1?T.removeAttribute(f):T.setAttribute(f,L===!0?"":L),f==="value"&&"value"in T&&(T.value=typeof L=="string"?L:""),f==="disabled"&&"disabled"in T&&(T.disabled=L!==null&&L!==!1)},k=(r,l,h)=>{let u=r.component;if(!Ke(u.events,l))return p({reason:"event",element:r.name,name:l});let i=r.listeners.get(l);if(i&&(i(),r.listeners.delete(l),E-=1),h==null)return;if(!J(h)||typeof h.listener!="number")return p({reason:"value",element:r.name,name:l});let g=h.listener,v=u.events[l],T=r.dom,f=()=>e.onEvent(g,v.detail==="value"?String(T.value??""):void 0);T.addEventListener(v.from,f),r.listeners.set(l,()=>T.removeEventListener(v.from,f)),E+=1},x=r=>{if(!r.refused){_-=1,r.id!==void 0&&w.delete(r.id);for(let l of r.listeners.values())l();E-=r.listeners.size,r.listeners.clear();for(let l of r.children)x(l)}},A=(r,l)=>{if(!J(r)||typeof r.id!="string"||w.has(r.id))return p({reason:"record"}),R();if(_>=m)return p({reason:"budget"}),O||(O=!0,e.onOverBudget?.()),R();let h=r.id,u=l.component.children;if(r.type===Yt)return R();if(r.type===Xt){if(u==="none")return p({reason:"child",element:l.name}),R();let f={dom:o.createTextNode(String(r.data??"").slice(0,Ee)),children:[],text:!0,listeners:new Map,id:h};return w.set(h,f),_+=1,f}if(r.type!==qt)return p({reason:"record"}),R();let i=String(r.element);if(!Ke(d,i)||!Qt(d[i]))return p({reason:"element",element:i}),R();if(u!=="any")return p({reason:"child",element:i}),R();let g=d[i],v=o.createElement(g.host);v.setAttribute("data-gv",i.replace(/^gv-/,"")),v.className=`graview-guest-${i.replace(/^gv-/,"")}`,g.host==="a"&&(v.setAttribute("rel","noopener noreferrer"),v.setAttribute("target",g.target??"_blank"),v.setAttribute("referrerpolicy","no-referrer")),g.host==="button"&&v.setAttribute("type","button");let T={dom:v,name:i,component:g,children:[],listeners:new Map,id:h};if(w.set(h,T),_+=1,J(r.properties))for(let[f,L]of Object.entries(r.properties))M(T,f,L);if(J(r.attributes))for(let f of Object.keys(r.attributes))p({reason:"attribute",element:i,name:f});if(J(r.eventListeners))for(let[f,L]of Object.entries(r.eventListeners))k(T,f,L);if(Array.isArray(r.children))for(let f of r.children){let L=A(f,T);T.children.push(L),v.appendChild(L.dom)}return T},N=r=>{if(!Array.isArray(r))return p({reason:"record"});let[l,h]=r,u=typeof h=="string"?w.get(h):void 0;if(!u)return p({reason:"record"});switch(l){case jt:{if(u.text)return p({reason:"record"});let i=Number(r[3]),g=Number.isInteger(i)&&i>=0&&i<=u.children.length?i:u.children.length,v=A(r[2],u);u.dom.insertBefore(v.dom,u.children[g]?.dom??null),u.children.splice(g,0,v);return}case Bt:{let i=Number(r[2]),g=u.children[i];if(!g)return p({reason:"record"});u.children.splice(i,1),g.dom.parentNode?.removeChild(g.dom),x(g);return}case Ut:if(!u.text)return p({reason:"record"});u.dom.data=String(r[2]??"").slice(0,Ee);return;case $t:{if(u===W||u.text)return p({reason:"record"});let i=String(r[2]),g=r[4]??Mt;return g===Mt?M(u,i,r[3]):g===zt?k(u,i,r[3]):p(g===Ft?{reason:"attribute",element:u.name,name:i}:{reason:"record"})}default:return p({reason:"record"})}};return{apply(r,l){if(!Array.isArray(r))return p({reason:"record"}),!0;for(let h=0;h<r.length;h+=1){if(l&&h%32===0&&l())return!1;N(r[h])}return!0},get refused(){return y},get size(){return _},get listening(){return E},dispose(){for(let r of W.children)x(r);W.children.length=0,n.replaceChildren()}}}var We=`
2
- .graview-guest { display: flex; flex-direction: column; gap: 8px; min-width: 0; color: var(--graview-ink, inherit); font: inherit; }
3
- .graview-guest-card { display: flex; flex-direction: column; gap: 6px; padding: 12px; border: 1px solid var(--graview-edge, #d0d0d0); border-radius: 10px; background: var(--graview-panel, transparent); }
4
- .graview-guest-group { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
5
- .graview-guest-group[data-gv-direction="row"] { flex-direction: row; flex-wrap: wrap; align-items: center; }
6
- .graview-guest-title { font-weight: 600; font-size: 1rem; overflow-wrap: anywhere; }
7
- .graview-guest-text { margin: 0; font-size: 0.875rem; line-height: 1.45; overflow-wrap: anywhere; }
8
- .graview-guest-badge { align-self: flex-start; padding: 1px 8px; border: 1px solid currentColor; border-radius: 999px; font-size: 0.8125rem; font-weight: 600; }
9
- .graview-guest-field { font-size: 0.875rem; overflow-wrap: anywhere; }
10
- .graview-guest-field[data-gv-label]::before { content: attr(data-gv-label) " "; color: var(--graview-ink-muted, inherit); }
11
- .graview-guest-progress { width: 100%; }
12
- .graview-guest-divider { width: 100%; margin: 2px 0; border: 0; border-top: 1px solid var(--graview-edge, #d0d0d0); }
13
- .graview-guest-link { color: var(--graview-accent, inherit); text-decoration: underline; }
14
- .graview-guest-button { align-self: flex-start; font: inherit; padding: 4px 12px; border-radius: 8px; border: 1px solid var(--graview-edge, #d0d0d0); background: var(--graview-panel, transparent); color: inherit; cursor: pointer; }
15
- .graview-guest-input { font: inherit; padding: 4px 8px; border-radius: 6px; border: 1px solid var(--graview-edge, #d0d0d0); }
16
- .graview-guest [data-gv-tone="good"] { color: var(--graview-good, inherit); }
17
- .graview-guest [data-gv-tone="bad"] { color: var(--graview-bad, inherit); }
18
- .graview-guest [data-gv-tone="warn"] { color: var(--graview-warn, inherit); }
19
- .graview-guest [data-gv-tone="accent"] { color: var(--graview-accent, inherit); }
20
- .graview-guest [data-gv-tone="neutral"] { color: var(--graview-ink-muted, inherit); }
21
- `;var Kt=new WeakSet;function Zt(n,e){if(n.startsWith("blob:"))return"blob:";try{return new URL(n,e.location.href).origin}catch{return n}}function Gt(n,e,d){let m=Zt(e,n),o=`this page's Content-Security-Policy${d?` (${d})`:""} does not allow a worker from ${m}: it needs worker-src ${m}`;return Kt.has(n)||(Kt.add(n),n.console?.warn?.(`Graview: worker views cannot start on this page, because ${o}. A host that will not allow ${m} serves each view's whole script from its own origin and passes worker: { url } (the @graview/guest README, "What the host page allows").`)),o}function er(n,e){return n===""?!0:e.startsWith("blob:")?n.startsWith("blob"):e.startsWith(n)||n.startsWith(e)}function le(n,e){let d="script"in e.source?n.URL.createObjectURL(new n.Blob([e.source.script],{type:"text/javascript"})):void 0,m="script"in e.source?d:e.source.url,o,y,w=!1,W=!1,K=0,_=0,E="",O=0,p=0,R=n.performance,M=R.now(),k,x=u=>{let i=u,g=String(i.effectiveDirective||i.violatedDirective||"").split(" ")[0];/^(worker-src|script-src|script-src-elem|child-src|default-src)$/.test(g)&&er(String(i.blockedURI??""),m)&&(k=g)},A=n.document;A?.addEventListener("securitypolicyviolation",x);let N=()=>A?.removeEventListener("securitypolicyviolation",x),r=()=>{W||(W=!0,y?.close(),o?.terminate(),o=void 0,n.clearTimeout(K),n.clearInterval(_),N(),d&&n.URL.revokeObjectURL(d))},l=(u,i)=>{W||(r(),e.onStop(u,i))},h=()=>{n.clearTimeout(K),N(),E=dt();let u=new n.MessageChannel;y=u.port1;let i=Math.max(1,e.silentMs),g=Math.max(10,Math.min(1e3,Math.floor(i/4)));M=R.now();let v=M;_=n.setInterval(()=>{let f=R.now();if(f-v>g*2&&(M+=f-v-g),v=f,f-M>=i)return l("silent");O+=1,u.port1.postMessage({type:"heartbeat",beat:O})},g);let T={graview:"host-hello",protocol:1,nonce:E,view:e.name};o.postMessage(T,[u.port2]),e.onReady(E,u.port1)};try{o=new n.Worker(m,{name:e.name})}catch(u){o=void 0;let i=u,g=i?.name==="SecurityError"?Gt(n,m,k):`the worker could not be made: ${String(i?.message??u)}`;queueMicrotask(()=>l("start",g))}return o&&(K=n.setTimeout(()=>l("start",`it never said it was ready in ${e.readyMs.toLocaleString("en-US")} ms`),e.readyMs),o.onerror=u=>{let i=typeof u.message=="string"&&u.message!==""?u.message:void 0;if(w)return void e.onError?.(i??"an error");n.clearTimeout(K),n.setTimeout(()=>!w&&l("start",k?Gt(n,m,k):i?`it failed before it said ready: ${i}`:"it failed before it said ready, and the engine gave no reason (a page policy that refuses it, or a script that does not load)"),0)},o.onmessage=u=>{if(!e.limiter.message()||w||!at(u.data)||u.data.protocol!==1){e.onDropped();return}w=!0,h()}),{get worker(){return o},answer(u){let i=u;return typeof i!="object"||i===null||i.type!=="heartbeat"||i.nonce!==E?!1:(typeof i.beat=="number"&&i.beat>p&&i.beat<=O&&(p=i.beat,M=R.now()),!0)},stop:r}}function ue(n,e){let d=e(),m=0;return{draw(o){let y=e();y-d>=1e3&&(d=y,m=0);let w=o(()=>m+(e()-y)>=n);return m+=e()-y,w&&m<n}}}var tr=Symbol.for("graview.view.clicked");function Wt(n,e){n[tr]=Object.freeze([...e])}var rr=H(()=>(__graviewPreload(import.meta.url,["./chunk.F5RN6YXG.js","./chunk.AJZBJBMO.js"]),import("./chunk.XE72DFBV.js"))),nr=H(()=>(__graviewPreload(import.meta.url,["./chunk.ZPXAKRKG.js","./chunk.B3WVCSW5.js","./chunk.G2XDQPE4.js","./chunk.5XUVCM7X.js","./chunk.WR63RQGU.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.27ZSRO3O.js"))),or=H(()=>(__graviewPreload(import.meta.url,["./chunk.AJZBJBMO.js"]),import("./chunk.DVG47BK3.js"))),sr=H(()=>(__graviewPreload(import.meta.url,["./chunk.WVUJXDXZ.js","./chunk.HUABTCQE.js","./chunk.DXJFAAOI.js","./chunk.5MSNKSTE.js","./chunk.KVQZ5FR6.js","./chunk.2HANQ737.js","./chunk.H536YUAZ.js","./chunk.T66UK7PQ.js","./chunk.WR63RQGU.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.RNYLNBIB.js"))),ir=H(()=>(__graviewPreload(import.meta.url,["./chunk.G2XDQPE4.js","./chunk.5XUVCM7X.js","./chunk.WR63RQGU.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.PM64C5PX.js"))),ar=H(()=>(__graviewPreload(import.meta.url,["./chunk.BBLIT7S7.js","./chunk.AJZBJBMO.js"]),import("./chunk.RRCPEHM4.js")));function dr(n,e,d){switch(n){case"manifest":return d??"Its manifest names something this app does not have.";case"source":return d??`Its code is longer than the ${e.maxSourceBytes.toLocaleString("en-US")} bytes a view may be.`;case"start":return`It could not start${d?`: ${d}.`:"."}`;case"error":return`It failed before it drew anything${d?`: ${d}`:"."}`;case"silent":return`It stopped answering for ${e.silentMs.toLocaleString("en-US")} ms.`;case"nodes":return`It drew more than the ${e.maxNodes.toLocaleString("en-US")} things a view may draw.`;case"flood":return`It sent more than ${e.messages} messages in ${e.messageWindowMs.toLocaleString("en-US")} ms.`;case"slow":return`It took longer than ${e.pushMs.toLocaleString("en-US")} ms to draw what it was shown.`}}function lr(n,e){let d=n.ownerDocument,m=d.defaultView,{manifest:o}=e,y=d.createElement("div");y.className="graview-worker-view",y.setAttribute("role","region"),y.setAttribute("aria-label",o.title??o.name),y.setAttribute("data-worker-view",o.name),y.style.cssText="display:block;position:relative;contain:layout paint style;isolation:isolate;overflow:clip;min-width:0",n.appendChild(y);let w=y.attachShadow({mode:"open"}),W=e.author?d.createElement("p"):void 0;W&&(W.className="graview-worker-view-author",W.setAttribute("data-worker-view-author",o.name),W.style.cssText="margin:4px 0 0;font-size:0.75rem;color:var(--graview-ink-muted, inherit)",W.textContent=e.author,n.appendChild(W));let K={applied:0,refused:0,dropped:0},_=ie(e.limits),E={maxSourceBytes:e.limits?.maxSourceBytes??256e3,maxNodes:e.limits?.maxNodes??5e3,messages:e.limits?.messages??120,messageWindowMs:e.limits?.messageWindowMs??1e3,pushMs:e.limits?.pushMs??1e3,silentMs:e.limits?.silentMs??5e3,drawMs:e.limits?.drawMs??100},O,p,R,M,k=!1,x={applied:0,refused:0,dropped:0},A=[],N=()=>{if(!p)return;let t=p.stats;K.applied+=t.applied-x.applied,K.refused+=t.refused-x.refused,K.dropped+=t.dropped-x.dropped,x={...t}},r=()=>{},l,h,u=()=>{let t=w.querySelector("[data-graview-view-root]"),c=m.ResizeObserver;h||!t||typeof c!="function"||(h=new c(b=>{let S=b[b.length-1]?.borderBoxSize?.[0],s=Math.ceil(S?S.blockSize:t.offsetHeight);s!==l&&(l=s,y.setAttribute("data-graview-content-height",String(s)),e.onContentHeight?.(s))}),h.observe(t))},i=()=>{h&&(h.disconnect(),h=void 0,l=void 0,y.removeAttribute("data-graview-content-height"),e.onContentHeight?.(void 0))},g=0,v=()=>{},T=()=>{v(),v=()=>{},N(),p?.dispose(),p=void 0,R?.stop(),r(),m.clearInterval(g)},f=(t,c)=>{if(k)return;k=!0,T(),i(),M?.dispose();let b=dr(t,E,c);y.removeAttribute("data-worker-view-drawn"),y.setAttribute("data-worker-view-failed",t),e.fallback!==!1&&(e.fallback??L)(y,t,b),e.onFailure?.(t,b)},L=(t,c,b)=>{let S=O??(()=>{try{return xe(e.store,e.principal,{manifest:o,...e.input?{input:e.input()}:{}})}catch{return}})(),s=d.createElement("div");s.setAttribute("data-graview-fallback",c),s.style.cssText="padding:12px;display:grid;gap:6px;color:var(--graview-ink, inherit);font-family:var(--graview-font-body, inherit)";let I=d.createElement("strong");I.textContent=o.title??o.name;let C=d.createElement("ul");C.style.cssText="margin:0;padding-left:1.2em";for(let re of[...S?.node?[S.node]:[],...S?.nodes??[]]){let ne=d.createElement("li");ne.textContent=re.label??re.id,C.appendChild(ne)}let U=d.createElement("p");U.style.cssText="margin:0;font-size:0.8125rem;color:var(--graview-ink-muted, inherit)",U.textContent=`This view was stopped. ${b}`,s.append(I,C,U),w.replaceChildren(s)},Oe=ct(o,e.store);if(Oe.length>0)return queueMicrotask(()=>f("manifest",Oe.join(" "))),he();let Ae=t=>{if(("source"in t?new TextEncoder().encode(t.source).length:"script"in t?new TextEncoder().encode(t.script).length:0)>E.maxSourceBytes)return["source"];let b="source"in t?ft(t.source):[];return b.length>0?["source",b.join(" ")]:void 0},$=e.worker,Le=typeof $=="function"?void 0:Ae($);if(Le)return queueMicrotask(()=>f(...Le)),he();let _e=vt(m,()=>Ne(),"blob"),ce=()=>wt(()=>e.theme?.()??yt(y),e.brand,_e),Ie="",pe=()=>{Ie=JSON.stringify(ce()),p?.push()},Ne=()=>{p&&JSON.stringify(ce())!==Ie&&pe()},At=ht(d,Ne),j,B,Pe=o.pictures?or().then(({createGuestPictures:t})=>{k||(j=t(m,{as:"blob",view:`"${o.title??o.name}"`,pictures:o.pictures,...e.limits?{limits:e.limits}:{},...e.file?{file:e.file}:{},moved:()=>p?.push(),onLeft:c=>{V?.postMessage({type:"notice",text:c}),e.onProblem?.(c)}}))}):Promise.resolve();r=()=>{At(),_e.dispose(),j?.dispose(),X?.dispose(),B?.dispose(),te?.dispose()};let V,Q=t=>V?.postMessage(t),Ce=!1,Ve=!1,Z=()=>y.toggleAttribute("data-worker-view-drawn",!k&&Ve&&M!==void 0&&A.length===0&&z.size===0&&!j?.waiting()&&!(B?.waiting??0)),F=m.performance,z=new Map,ee=F.now(),fe=Math.max(10,Math.min(250,Math.floor(E.pushMs/4))),Lt=()=>{g||(ee=F.now(),g=m.setInterval(()=>{let t=F.now(),c=t-ee>fe*2?t-ee-fe:0;ee=t;for(let[b,S]of z){let s=S+c;if(z.set(b,s),t-s>=E.pushMs)return f("slow")}},fe))},_t=ue(E.drawMs,()=>F.now()),De=()=>{},ge=t=>{if(k)return;if(!M)return void A.push(t);let c=M;if(!_t.draw(S=>t[0]==="render"?c.apply(t[1],S):(c.style(t[1]),!0)))return f("slow");t[0]==="render"&&De()},He=()=>st(e.store.schema,new Set([...e.store.kindsKeptFrom(e.principal),...e.store.modules.disabledKinds])),q=it({sees:t=>e.store.seenBy(e.principal).graph.has(t),places:()=>se(e.places?.()??[]),lists:He,schema:e.store.schema,...e.onNavigate?{onNavigate:e.onNavigate}:e.goTo?{onNavigate:t=>gt(e.goTo(),t)}:{},...e.hrefOf?{hrefOf:e.hrefOf}:!e.onNavigate&&e.goTo?{hrefOf:t=>mt(e.goTo(),t)}:{},onLost:t=>{V?.postMessage({type:"notice",text:t}),e.onProblem?.(t)}}),D=new Set,je=new Set,X,Be=!1,Ue=()=>{Be||(Be=!0,sr().then(({createGuestMedia:t})=>{k||(X=t(m,{view:`"${o.title??o.name}"`,pictures:o.pictures!==void 0,shown:()=>O,...e.file?{file:e.file}:{},onProblem:c=>{V?.postMessage({type:"notice",text:c}),e.onProblem?.(c)}}),X.refresh(w))},()=>e.onProblem?.(`The view "${o.title??o.name}" places a video or a full-screen viewer, and the host's player could not be loaded.`)))},$e=!1,Fe=!1,me=new Map,ze=()=>{$e||!o.accepts?.length||($e=!0,ir().then(({createGuestDrops:t})=>{k||(B=t(m,{shadow:w,manifest:o,store:e.store,principal:e.principal,files:()=>e.files?.(),shown:()=>D,hears:()=>Fe,idOf:c=>M?.renderer.idOf(c),send:Q,change:(c,b)=>{if(!p)return{ok:!1,reason:"refused",message:"The view has gone."};let S=p.change(c,b);return N(),S},handed:c=>me.set(c.href,c),onProblem:c=>{V?.postMessage({type:"notice",text:c}),e.onProblem?.(c)},onBusy:()=>Z()}),B.refresh())},()=>e.onProblem?.(`The view "${o.title??o.name}" takes files, and the host's drop could not be loaded.`)))},te,qe=[],Xe=!1,It=t=>{qe=t,te?.bind(t),!(Xe||t.length===0)&&(Xe=!0,ar().then(({createGuestGestures:c,unheardWords:b})=>{if(!k){if(o.gestures!==!0){let S=b(o.title??o.name);return V?.postMessage({type:"notice",text:S}),e.onProblem?.(S)}te=c(w,{root:()=>w.querySelector("[data-graview-view-root]")??void 0,idOf:S=>M?.renderer.idOf(S),send:Q}),te.bind(qe)}},()=>{}))},Nt=t=>{let c=e.store.seenBy(e.principal).graph;for(let b of D){let S=c.getNode(b);for(let s of Object.values(S??{}))for(let I of ut(s))if(I.href===t)return I}},Ye=t=>{if(t.localName==="graview-video")return Ue();t.hasAttribute("data-lightbox")&&(t.setAttribute("aria-haspopup","dialog"),Ue())};Promise.all([rr(),nr()]).then(([{createOpenDrawing:t,handedLinks:c,judgeLink:b,linkRefusedWords:S},{createPressReader:s,createSaver:I,fillPrefills:C,judgePress:U,markPresses:re,prefillOf:ne,quietPictures:Pt}])=>{if(k)return;let Y=s(),Qe=(a,G)=>{let P=M?.renderer.idOf(a);P!==void 0&&Q({type:"dom-event",target:P,event:"acted",pressed:G})},we=I({reader:Y,save:(a,G)=>{if(!p)return;let P=p.pressed(U(e.store,o,D,a));N(),Qe(G,{as:a.as,...P})}}),Ze=()=>we.flush();m.addEventListener("pagehide",Ze),v=()=>{m.removeEventListener("pagehide",Ze),we.flush()};let Ct=new WeakSet;De=()=>{q.refresh(w),re(w),Pt(w),C(w,Y,Ct,a=>ne(e.store,e.principal,o,D,a)),X?.refresh(w),B?.refresh()};let et,tt=new Set,Vt=()=>(et!==O&&([et,tt]=[O,c(O)]),tt),rt=new Set;M=t(w,{origin:e.origin??m.location.origin,link:a=>b(a,{handed:Vt(),...e.links?{origins:e.links.origins}:{}}),...e.asset?{asset:e.asset}:{},...e.images?{imageOrigins:e.images.origins}:{},...o.pictures?{picture:a=>j?.drawn(a)}:{},onRefused:a=>{if(a.reason==="url"&&a.element==="a"&&a.address!==void 0&&!rt.has(a.address)){rt.add(a.address);let P=S(a.address,e.links?.origins);return V?.postMessage({type:"notice",text:P}),e.onProblem?.(P)}if(a.reason!=="url"||a.element!=="img"||a.address===void 0||je.has(a.address))return;je.add(a.address);let G=lt(a.address,{...e.images?{origins:e.images.origins}:{},assets:e.asset!==void 0},a.length);V?.postMessage({type:"notice",text:G}),e.onProblem?.(G)},...e.limits?.maxNodes!==void 0?{maxNodes:e.limits.maxNodes}:{},onOverBudget:()=>f("nodes"),send:Q,onFieldSet:a=>Y.filled(a),onAttribute:(a,G)=>{(G==="data-record"||G==="data-place")&&q.link(a),G==="data-lightbox"&&Ye(a),G==="data-drop"&&ze()},decorate:a=>{(a.hasAttribute("data-record")||a.hasAttribute("data-place"))&&q.link(a),Ye(a),a.hasAttribute("data-drop")&&ze()},before:(a,G,P)=>{Y.heard(a,G),we.heard(a,G,P),q.pressed(a,G,P);let ve=G.closest("a[href]");ve&&P.contains(ve)&&!ve.hasAttribute("data-graview-link")&&a.type==="click"&&a.stopPropagation();let oe=G.closest("[data-lightbox]"),nt=a.type==="keydown"?a.key:void 0;if(oe&&P.contains(oe)&&a.isTrusted&&(a.type==="click"||(nt==="Enter"||nt===" ")&&oe.localName!=="button")&&(a.preventDefault(),a.stopPropagation(),X?.open(oe)),B?.before(a,G,P))return!1;let be=Y.press(a,G,P);if(!be||!p)return;a.stopPropagation(),a.type==="keydown"&&a.preventDefault();let Dt=p.pressed(U(e.store,o,D,be));N();let ot={as:be.as,...Dt},Ht=G.closest("[data-act]");return queueMicrotask(()=>Qe(Ht,ot)),{pressed:ot}}});for(let a of A.splice(0))ge(a);u(),Z()},()=>f("start","the view's drawing could not be loaded"));let ye=t=>R=le(m,{source:t,name:o.name,limiter:_,readyMs:e.limits?.readyMs??5e3,silentMs:e.limits?.silentMs??5e3,onDropped:()=>K.dropped+=1,onStop:(c,b)=>f(c,b),onError:c=>{Ce||f("error",c)},onReady:(c,b)=>{V=b,Lt();let S=ae({store:e.store,principal:e.principal,view:o.name,nonce:c,send:s=>{s.type==="props"&&typeof s.push=="number"&&(z.set(s.push,F.now()),Z()),b.postMessage(s)},props:()=>{let s=xe(e.store,e.principal,{manifest:o,...e.input?{input:e.input()}:{},theme:ce(),...e.places?{places:se(e.places())}:{}});return D=new Set([...s.node?[s.node.id]:[],...(s.nodes??[]).map(I=>I.id)]),O=s,s},...j?{hand:j.hand}:{},judgeAct:(s,I)=>pt(e.store,o,s,I,{shown:D,file:C=>me.get(C)??Nt(C),dropped:C=>me.has(C)}),onHears:s=>{s.includes("drop")&&(Fe=!0)},onGestures:It,onClicks:s=>Wt(y,s),onRender:s=>{Ce=!0,ge(["render",s])},onPushed:(s,I)=>{if(z.delete(s),I>=E.pushMs)return f("slow");Ve=!0,Z()},onFlood:()=>f("flood"),onStyle:s=>ge(["style",s]),places:()=>[...new Set([...se(e.places?.()??[]).map(s=>s.as),...He().map(s=>s.slug)])],...e.limits?{limits:e.limits}:{},limiter:_});p=S,b.onmessage=({data:s})=>{if(!R?.answer(s)&&(S.receive(s),N(),!k&&s?.nonce===c&&s.type==="navigate")){let I={...s.where!==void 0?{where:s.where}:{},...s.section!==void 0?{section:s.section}:{}},C=typeof s.place=="string"?{place:s.place,...I}:typeof s.to=="string"&&{record:s.to,...I};C&&q.go(C)}},pe()}}),Je=t=>{"source"in t?(o.pictures?Promise.all([Se(t.source),Pe]).then(([c])=>c):Se(t.source)).then(c=>{k||ye({script:c})},()=>f("start","the view's runtime could not be loaded")):o.pictures?Pe.then(()=>{k||ye(t)},()=>f("start","the view's pictures could not be loaded")):ye(t)};return typeof $=="function"?bt($).then(t=>{if(k)return;let c=Ae(t);c?f(...c):Je(t)},t=>f("source",`Its code did not arrive${t instanceof Error&&t.message?`: ${t.message}`:""}.`)):Je($),he();function he(){return{element:y,shadow:w,get worker(){return R?.worker},update:()=>{p&&pe()},get stats(){return N(),K},get refused(){return M?.refused??[]},get contentHeight(){return l},dispose(){k=!0,T(),h?.disconnect(),M?.dispose(),y.remove(),W?.remove()}}}}var Ot="graview-guest-kit";function Vr(n,e){let d=n.ownerDocument,m=d.defaultView;if(!d.getElementById(Ot)){let x=d.createElement("style");x.id=Ot,x.textContent=We,d.head.appendChild(x)}let o=d.createElement("div");o.className="graview-guest",o.setAttribute("role","group"),o.setAttribute("aria-label",e.title??e.view),o.setAttribute("data-guest-view",e.view),n.appendChild(o);let y={applied:0,refused:0,dropped:0},w=ie(e.limits),W=ue(e.limits?.drawMs??100,()=>m.performance.now()),K,_,E,O=!1,p={applied:0,refused:0,dropped:0},R=()=>{if(!K)return;let x=K.stats;y.applied+=x.applied-p.applied,y.refused+=x.refused-p.refused,y.dropped+=x.dropped-p.dropped,p={...x}},M=()=>{R(),K?.dispose(),K=void 0,E?.stop()},k=(x,A)=>{O||(O=!0,M(),_?.dispose(),e.onFailure?.(x,A))};return E=le(m,{source:e.worker,name:e.view,limiter:w,readyMs:e.limits?.readyMs??5e3,silentMs:e.limits?.silentMs??5e3,onDropped:()=>y.dropped+=1,onStop:(x,A)=>k(x,A),onReady:(x,A)=>{let N=Ge(o,{...e.kit?{kit:e.kit}:{},...e.links?{links:e.links}:{},onEvent:(l,h)=>A.postMessage({type:"event",listener:l,...h!==void 0?{detail:h}:{}}),...e.limits?.maxNodes!==void 0?{maxNodes:e.limits.maxNodes}:{},onOverBudget:()=>k("budget")});_=N;let r=ae({store:e.store,principal:e.principal,view:e.view,nonce:x,send:l=>A.postMessage(l),onRender:l=>{W.draw(h=>N.apply(l,h))||k("slow")},...e.input?{input:e.input}:{},...e.onNavigate?{onNavigate:e.onNavigate}:{},onSize:e.onSize??(l=>o.style.minHeight=`${l}px`),...e.limits?{limits:e.limits}:{},limiter:w});K=r,A.onmessage=l=>{E?.answer(l.data)||(r.receive(l.data),R())},r.push()}}),{element:o,get worker(){return E?.worker},update:()=>K?.push(),get stats(){return R(),y},get refused(){return _?.refused??[]},dispose(){O=!0,M(),_?.dispose(),o.remove()}}}export{Me as GUEST_KIT,We as GUEST_KIT_CSS,Te as KIT_LINK_TARGETS,kt as KIT_TONES,Ge as createKitRenderer,Et as hostAttribute,Rt as kitValue,Vr as mountGuestWorker,lr as mountWorkerView};