graview 0.1.62 → 0.1.63

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 (197) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.js +6 -6
  3. package/dist/index.js.map +1 -1
  4. package/dist/preview/{chunk.THVC2BEC.js → chunk.24HNOLUS.js} +1 -1
  5. package/dist/preview/chunk.25CQCCLN.js +1 -0
  6. package/dist/preview/{chunk.YP2QSPXU.js → chunk.26H33GJC.js} +1 -1
  7. package/dist/preview/{chunk.DPEIT3TW.js → chunk.2F4AZZQR.js} +1 -1
  8. package/dist/preview/chunk.2KIWGQXC.js +2 -0
  9. package/dist/preview/{chunk.UQQKDBIH.js → chunk.2PJ6STKA.js} +1 -1
  10. package/dist/preview/{chunk.ELTV44HU.js → chunk.2RASWDMQ.js} +2 -2
  11. package/dist/preview/chunk.33XNYHI6.js +1 -0
  12. package/dist/preview/{chunk.TIALD6SC.js → chunk.34DRUCH2.js} +1 -1
  13. package/dist/preview/{chunk.MDEX6ZVE.js → chunk.36OE6RKG.js} +1 -1
  14. package/dist/preview/{chunk.A3OL2BI2.js → chunk.37FLKAVZ.js} +1 -1
  15. package/dist/preview/chunk.3JCHJLH6.js +1 -0
  16. package/dist/preview/chunk.3OQ6S6H4.js +1 -0
  17. package/dist/preview/chunk.47QEWSSE.js +1 -0
  18. package/dist/preview/{chunk.7M4HNKDR.js → chunk.4DAKQXDG.js} +1 -1
  19. package/dist/preview/{chunk.QIPASE42.js → chunk.4EXC26LI.js} +1 -1
  20. package/dist/preview/{chunk.VJBBVLGZ.js → chunk.4MEQUUG4.js} +1 -1
  21. package/dist/preview/{chunk.Y2YYH3JN.js → chunk.4TH3CGAZ.js} +1 -1
  22. package/dist/preview/{chunk.PZQNR4KZ.js → chunk.57YDGGJK.js} +1 -1
  23. package/dist/preview/{chunk.O75HWF3F.js → chunk.5GC4VAHU.js} +1 -1
  24. package/dist/preview/{chunk.WEOVK2T4.js → chunk.5QXQ7PBI.js} +1 -1
  25. package/dist/preview/chunk.6CSHRMJC.js +1 -0
  26. package/dist/preview/chunk.6HKWAHPT.js +1 -0
  27. package/dist/preview/{chunk.TM4EPUNO.js → chunk.6XHPBJ5F.js} +1 -1
  28. package/dist/preview/chunk.6YK5E7ZQ.js +4 -0
  29. package/dist/preview/{chunk.LGRLVJGS.js → chunk.6Z2GHQQH.js} +3 -3
  30. package/dist/preview/chunk.72YXFJKC.js +2 -0
  31. package/dist/preview/{chunk.T3UQ7ZQK.js → chunk.735AFUP5.js} +1 -1
  32. package/dist/preview/chunk.75GENXGP.js +1 -0
  33. package/dist/preview/{chunk.KMV6PJFL.js → chunk.A2R53GWF.js} +1 -1
  34. package/dist/preview/{chunk.OWT3VVOT.js → chunk.AHPYNDVA.js} +2 -2
  35. package/dist/preview/chunk.ATDIDPKZ.js +1 -0
  36. package/dist/preview/{chunk.F7YXLYLX.js → chunk.AW26EETU.js} +1 -1
  37. package/dist/preview/{chunk.I77ZGIFE.js → chunk.AWUO3M5D.js} +1 -1
  38. package/dist/preview/{chunk.AQRB7LDA.js → chunk.B46UZHGW.js} +1 -1
  39. package/dist/preview/{chunk.A3ZC2JBO.js → chunk.B5PJCYBU.js} +1 -1
  40. package/dist/preview/{chunk.VACKSKGJ.js → chunk.BF3EZCG3.js} +1 -1
  41. package/dist/preview/chunk.BKQICGFW.js +1 -0
  42. package/dist/preview/{chunk.DDUCIUVW.js → chunk.BN7C5ZYX.js} +1 -1
  43. package/dist/preview/chunk.BQM3YAMR.js +35 -0
  44. package/dist/preview/chunk.C65EHQ7V.js +1 -0
  45. package/dist/preview/{chunk.B23WZQXQ.js → chunk.CAXILB7K.js} +1 -1
  46. package/dist/preview/{chunk.UVA7AALY.js → chunk.CCQMDZHO.js} +1 -1
  47. package/dist/preview/{chunk.G4ULQK64.js → chunk.CGK2PY76.js} +1 -1
  48. package/dist/preview/{chunk.DEAP3H2L.js → chunk.CI4RZL4Z.js} +1 -1
  49. package/dist/preview/chunk.CYTTZOYL.js +25 -0
  50. package/dist/preview/chunk.D5LOTCBU.js +3 -0
  51. package/dist/preview/chunk.DBFJVVWF.js +1 -0
  52. package/dist/preview/{chunk.7XLS6XTY.js → chunk.DDFRFSVN.js} +1 -1
  53. package/dist/preview/{chunk.GX4G4BX3.js → chunk.DIFIHNR3.js} +1 -1
  54. package/dist/preview/{chunk.VN23AGIY.js → chunk.DWK3GXRR.js} +1 -1
  55. package/dist/preview/{chunk.ZN3PUM2I.js → chunk.DZSZUX34.js} +1 -1
  56. package/dist/preview/chunk.E3XJMO7Q.js +1 -0
  57. package/dist/preview/chunk.EJ2WE764.js +18 -0
  58. package/dist/preview/{chunk.22BZU7ME.js → chunk.EJ4MSVX2.js} +1 -1
  59. package/dist/preview/chunk.ERPILTRY.js +1 -0
  60. package/dist/preview/{chunk.DC35FJAB.js → chunk.FFXBDOKA.js} +1 -1
  61. package/dist/preview/{chunk.UXMPFPFH.js → chunk.FGDGTES4.js} +2 -2
  62. package/dist/preview/chunk.FNVGNISQ.js +3 -0
  63. package/dist/preview/{chunk.ROZTJ6IY.js → chunk.FXCQJPN4.js} +1 -1
  64. package/dist/preview/chunk.G2JAYG2Z.js +1 -0
  65. package/dist/preview/{chunk.UFDJXQQQ.js → chunk.GHN62OMG.js} +6 -6
  66. package/dist/preview/{chunk.5ODHHH35.js → chunk.H5SN46VK.js} +1 -1
  67. package/dist/preview/{chunk.W4BKYSZX.js → chunk.H7AH3IW4.js} +1 -1
  68. package/dist/preview/{chunk.6JO5HQDR.js → chunk.HMMK7LCL.js} +1 -1
  69. package/dist/preview/{chunk.SVPKUWZU.js → chunk.HOFATBGD.js} +1 -1
  70. package/dist/preview/{chunk.JT3MFPRD.js → chunk.HRNNRA2I.js} +1 -1
  71. package/dist/preview/{chunk.7KVUUEZA.js → chunk.HSMJHCR3.js} +1 -1
  72. package/dist/preview/{chunk.RPDH32XV.js → chunk.IEDCFSN5.js} +1 -1
  73. package/dist/preview/{chunk.PCDUV3WP.js → chunk.JIEDJEHK.js} +1 -1
  74. package/dist/preview/chunk.JNIDS66Z.js +1 -0
  75. package/dist/preview/{chunk.DDO3GLEJ.js → chunk.JO3BBRSR.js} +1 -1
  76. package/dist/preview/{chunk.H5S7OL2U.js → chunk.JVDPRQ7J.js} +1 -1
  77. package/dist/preview/{chunk.SEHRPTNA.js → chunk.K7TK3KRB.js} +1 -1
  78. package/dist/preview/{chunk.ELOFPE25.js → chunk.KB5BCW23.js} +1 -1
  79. package/dist/preview/{chunk.6AKW7TXM.js → chunk.KL5H7KEV.js} +1 -1
  80. package/dist/preview/{chunk.ILIIBSGA.js → chunk.KPQLM4TM.js} +1 -1
  81. package/dist/preview/{chunk.2N4Z5K5S.js → chunk.KQPKYWDM.js} +1 -1
  82. package/dist/preview/{chunk.QHY5NVYH.js → chunk.KXFNRJ46.js} +1 -1
  83. package/dist/preview/chunk.KZUMXT5J.js +74 -0
  84. package/dist/preview/chunk.MAHNJO6U.js +1 -0
  85. package/dist/preview/{chunk.AJSUHPBE.js → chunk.MBB5A6BT.js} +1 -1
  86. package/dist/preview/chunk.MENLUNM5.js +1 -0
  87. package/dist/preview/{chunk.PLTH2LW5.js → chunk.MIE3ODQ2.js} +1 -1
  88. package/dist/preview/{chunk.QDWSU47A.js → chunk.MT5DXJKN.js} +1 -1
  89. package/dist/preview/{chunk.AFNSAQEQ.js → chunk.MY5HJW2Z.js} +1 -1
  90. package/dist/preview/{chunk.5HGD6OWL.js → chunk.N3T2O6EW.js} +2 -2
  91. package/dist/preview/{chunk.66P5IDTH.js → chunk.NEPQBMFT.js} +1 -1
  92. package/dist/preview/{chunk.NOGGSLVG.js → chunk.NIAM7OTV.js} +1 -1
  93. package/dist/preview/{chunk.BZMQDEIY.js → chunk.NTC2H5ZX.js} +1 -1
  94. package/dist/preview/chunk.NWWJNNEK.js +2 -0
  95. package/dist/preview/{chunk.5J3O2FVG.js → chunk.O3YIWIVQ.js} +1 -1
  96. package/dist/preview/chunk.O67JXUVG.js +1 -0
  97. package/dist/preview/{chunk.4HEFUOLV.js → chunk.OIMGD7FR.js} +1 -1
  98. package/dist/preview/{chunk.DD2NKFDX.js → chunk.OM2NIQWA.js} +1 -1
  99. package/dist/preview/chunk.OMRQTLI5.js +1 -0
  100. package/dist/preview/{chunk.O2BHPYA4.js → chunk.OTSBF367.js} +2 -2
  101. package/dist/preview/{chunk.Y4FZKUOK.js → chunk.OXWOUE3W.js} +1 -1
  102. package/dist/preview/{chunk.2B6P4GPS.js → chunk.PDMX3GTL.js} +1 -1
  103. package/dist/preview/{chunk.75GVFX7L.js → chunk.PDS4HT46.js} +1 -1
  104. package/dist/preview/{chunk.EVBCEEQ4.js → chunk.PWAP2GJS.js} +1 -1
  105. package/dist/preview/chunk.Q2EGESEZ.js +1 -0
  106. package/dist/preview/{chunk.L3WTKQQL.js → chunk.Q4GJIJAU.js} +1 -1
  107. package/dist/preview/chunk.Q4MI53KK.js +5 -0
  108. package/dist/preview/{chunk.SWMDFXUX.js → chunk.QAMW5QDT.js} +1 -1
  109. package/dist/preview/{chunk.M4AYA2PL.js → chunk.QS32TO4N.js} +1 -1
  110. package/dist/preview/{chunk.BLUKSGI4.js → chunk.QSPLKCTX.js} +1 -1
  111. package/dist/preview/{chunk.WPXPVD33.js → chunk.R4HDKNT3.js} +1 -1
  112. package/dist/preview/chunk.REUMBCSV.js +1 -0
  113. package/dist/preview/{chunk.MAKODQO3.js → chunk.RUFYORIJ.js} +1 -1
  114. package/dist/preview/{chunk.5YAOKOGV.js → chunk.SGPXYDSG.js} +1 -1
  115. package/dist/preview/chunk.SJUXFPTI.js +1 -0
  116. package/dist/preview/{chunk.OUDATENL.js → chunk.SME4HD5I.js} +1 -1
  117. package/dist/preview/{chunk.2GEJNG2U.js → chunk.SMHP2CQH.js} +1 -1
  118. package/dist/preview/chunk.SSAETRHR.js +5 -0
  119. package/dist/preview/{chunk.MYNMBOLD.js → chunk.STDJ6XG5.js} +1 -1
  120. package/dist/preview/{chunk.IQ3PRWGO.js → chunk.T3JIZNE7.js} +2 -2
  121. package/dist/preview/chunk.T535ZLRM.js +1 -0
  122. package/dist/preview/{chunk.QGU5QTR6.js → chunk.UAVK54Z6.js} +1 -1
  123. package/dist/preview/{chunk.RD2X25XB.js → chunk.V4HVFLFQ.js} +1 -1
  124. package/dist/preview/chunk.V6IL7CIZ.js +1 -0
  125. package/dist/preview/{chunk.T6WHGKWR.js → chunk.VCTAFSZ5.js} +1 -1
  126. package/dist/preview/{chunk.OWOOKLIU.js → chunk.VZDHRY3U.js} +1 -1
  127. package/dist/preview/{chunk.X6KYRBL6.js → chunk.WBS7ND2C.js} +1 -1
  128. package/dist/preview/chunk.WNS5LEO5.js +1 -0
  129. package/dist/preview/chunk.WUVXIUA7.js +1 -0
  130. package/dist/preview/{chunk.Z2TDZSMN.js → chunk.WYPCLZL7.js} +1 -1
  131. package/dist/preview/{chunk.IQMD7DG3.js → chunk.XBYJCGPU.js} +1 -1
  132. package/dist/preview/{chunk.CHHYIMB7.js → chunk.XCEZCOX4.js} +1 -1
  133. package/dist/preview/{chunk.CY3ELWCM.js → chunk.XCWZFLIB.js} +1 -1
  134. package/dist/preview/chunk.XIW4SZHD.js +1 -0
  135. package/dist/preview/{chunk.FULEUL34.js → chunk.XUO67YMT.js} +1 -1
  136. package/dist/preview/{chunk.RYRQ66JN.js → chunk.XUXZW7DU.js} +1 -1
  137. package/dist/preview/chunk.XYGNS637.js +1 -0
  138. package/dist/preview/{chunk.H7N7WN4U.js → chunk.Y4ZM75WL.js} +1 -1
  139. package/dist/preview/{chunk.5STU3KYG.js → chunk.YOUB3J3Y.js} +1 -1
  140. package/dist/preview/{chunk.3FON2Y72.js → chunk.YXAKHXYB.js} +1 -1
  141. package/dist/preview/chunk.YZBJUAS6.js +1 -0
  142. package/dist/preview/{chunk.7V56P2A7.js → chunk.Z2ZQJ3DD.js} +1 -1
  143. package/dist/preview/{chunk.OFWNMTGB.js → chunk.ZELWW7UA.js} +2 -2
  144. package/dist/preview/{chunk.N6EJXXQK.js → chunk.ZLTHWCKL.js} +2 -2
  145. package/dist/preview/chunk.ZP7JEVVU.js +1 -0
  146. package/dist/preview/{chunk.NUWDMH47.js → chunk.ZRH5X3MR.js} +1 -1
  147. package/dist/preview/{chunk.DNVWSWL2.js → chunk.ZSGDVNVN.js} +1 -1
  148. package/dist/preview/chunk.ZVG4FXJK.js +1 -0
  149. package/dist/preview/chunk.ZY7US4Y7.js +6 -0
  150. package/dist/preview/{chunk.4TX6VCBT.js → chunk.ZZAI57VI.js} +1 -1
  151. package/dist/preview/index.html +53 -52
  152. package/dist/preview/page.js +2 -2
  153. package/dist/preview/splash.js +7 -6
  154. package/package.json +6 -6
  155. package/dist/preview/chunk.2AT3GRXM.js +0 -1
  156. package/dist/preview/chunk.4HRYB7HF.js +0 -1
  157. package/dist/preview/chunk.5MZYCELA.js +0 -6
  158. package/dist/preview/chunk.7OBIBPYH.js +0 -1
  159. package/dist/preview/chunk.7YOAW7ED.js +0 -1
  160. package/dist/preview/chunk.ACTXR2MI.js +0 -3
  161. package/dist/preview/chunk.AI34V6WV.js +0 -74
  162. package/dist/preview/chunk.CAKFNKN5.js +0 -1
  163. package/dist/preview/chunk.CGALLZ54.js +0 -1
  164. package/dist/preview/chunk.DHJ3FQTR.js +0 -1
  165. package/dist/preview/chunk.DZZL5IDD.js +0 -5
  166. package/dist/preview/chunk.H24OC6OE.js +0 -1
  167. package/dist/preview/chunk.H73ZPYUX.js +0 -1
  168. package/dist/preview/chunk.HANJZ6FA.js +0 -1
  169. package/dist/preview/chunk.HIMQ65QT.js +0 -1
  170. package/dist/preview/chunk.IQPILSV3.js +0 -18
  171. package/dist/preview/chunk.IYBEXENQ.js +0 -1
  172. package/dist/preview/chunk.J7Q2WAF4.js +0 -28
  173. package/dist/preview/chunk.JYFZCJ4N.js +0 -2
  174. package/dist/preview/chunk.KDXU5DT3.js +0 -1
  175. package/dist/preview/chunk.KL7E4YHJ.js +0 -1
  176. package/dist/preview/chunk.LAYQ5PFS.js +0 -1
  177. package/dist/preview/chunk.LTZUF5VG.js +0 -1
  178. package/dist/preview/chunk.M7RESZB6.js +0 -25
  179. package/dist/preview/chunk.MGALQLRW.js +0 -1
  180. package/dist/preview/chunk.NAD7ZXYP.js +0 -1
  181. package/dist/preview/chunk.NHTGAP3G.js +0 -3
  182. package/dist/preview/chunk.NUYA4BWI.js +0 -1
  183. package/dist/preview/chunk.OKZT2QBM.js +0 -2
  184. package/dist/preview/chunk.OUPURRDE.js +0 -1
  185. package/dist/preview/chunk.PD2DECOP.js +0 -1
  186. package/dist/preview/chunk.PKWQKFPE.js +0 -2
  187. package/dist/preview/chunk.RMR24LFJ.js +0 -4
  188. package/dist/preview/chunk.RRKI24WY.js +0 -1
  189. package/dist/preview/chunk.SGCW2XRC.js +0 -1
  190. package/dist/preview/chunk.SS7234R6.js +0 -1
  191. package/dist/preview/chunk.TKUNRFDE.js +0 -1
  192. package/dist/preview/chunk.U6ZRJKVM.js +0 -1
  193. package/dist/preview/chunk.UKQUUPKE.js +0 -1
  194. package/dist/preview/chunk.VC3V7HLL.js +0 -1
  195. package/dist/preview/chunk.VIH5AX7S.js +0 -5
  196. package/dist/preview/chunk.WKI5INH7.js +0 -1
  197. package/dist/preview/chunk.Y4S7CDRB.js +0 -1
@@ -0,0 +1,35 @@
1
+ import{a as Ee,b as Re,c as Le,d as we,e as U,f as ue,g as pe,h as fe}from"./chunk.XIW4SZHD.js";import{c as j,e as ce}from"./chunk.KQPKYWDM.js";import{a as ge}from"./chunk.BN7C5ZYX.js";import{G as H,T as z,ba as le,da as de}from"./chunk.CYTTZOYL.js";import"./chunk.SDO3U72B.js";import{Z as q,la as ae,oa as se,od as _}from"./chunk.Q4MI53KK.js";import"./chunk.FQLNBIQ5.js";import{b as C}from"./chunk.AJZBJBMO.js";var b=C(H(),1);var I=C(H(),1),Ae=(e,t)=>`graview:last-visit:${t??"anyone"}:${e.join(",")}`;function Oe(e,t,o){let n=new Set;for(let r of e)if(!(r.author.id!==void 0&&r.author.id===o)&&Date.parse(r.at)>t)for(let i of r.writes)n.add(i);return n}function ye(e,t,o){let n=Ae(t,o?.id),[r]=(0,I.useState)(()=>{try{let i=globalThis.localStorage?.getItem(n);return i?Number(i):null}catch{return null}});return(0,I.useEffect)(()=>{let i=()=>{if(document.visibilityState==="hidden")try{globalThis.localStorage?.setItem(n,String(Date.now()))}catch{}};return document.addEventListener("visibilitychange",i),window.addEventListener("pagehide",i),()=>{document.removeEventListener("visibilitychange",i),window.removeEventListener("pagehide",i)}},[n]),(0,I.useMemo)(()=>r===null?new Set:Oe(e,r,o?.id),[e,r,o?.id])}function me(e,t,o){let n=new Set;if(o===void 0)return n;n.add(o);for(let r of[...e.out(o),...e.in(o)])n.add(r.id);for(let r of t)if(r.author.id===o)for(let i of r.primitives)i.op==="add-node"&&n.add(i.node.id);return n}var J=C(H(),1);var v=C(z(),1),Ce=`.graview-workflows{position:absolute;left:0;top:0;pointer-events:none;z-index:${_.plots};opacity:var(--graview-altitude);transition:opacity 640ms cubic-bezier(.33,0,.2,1)}
2
+ .graview-workflow-wire{fill:none;stroke:var(--graview-accent);stroke-width:1.5;stroke-opacity:.7;stroke-linecap:round}
3
+ .graview-workflow-wire[data-wire=reads]{stroke-dasharray:3 4;stroke-opacity:.55}
4
+ .graview-workflow-spot{fill:var(--graview-accent);stroke:var(--graview-panel);stroke-width:1.5}
5
+ .graview-workflow{position:absolute;transform:translate(10px,-50%);max-width:16rem;padding:.25rem .5rem;border-radius:.375rem;background:var(--graview-panel);color:var(--graview-ink);border:1px solid color-mix(in oklab,var(--graview-accent) 45%,transparent);font-size:.75rem;line-height:1.25;box-shadow:0 1px 2px color-mix(in oklab,var(--graview-ink) 12%,transparent)}
6
+ .graview-workflow-title{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
7
+ .graview-workflow-last{display:block;color:var(--graview-ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
8
+ .graview-workflows [data-graview-workflow-status=paused]{opacity:.45}`,Fe=(e,t)=>{let o=n=>n.map(r=>se(t,r).toLowerCase()).join(", ");return[e.reads.length>0?`reads ${o(e.reads)}`:"",e.writes.length>0?`writes ${o(e.writes)}`:""].filter(Boolean).join("; ")};function We({frame:e,width:t,height:o,pan:n,app:r,workflows:i,acts:c,runs:y,graphVersion:k,hiddenKinds:h}){let u=(0,J.useMemo)(()=>ue(r,i,c),[r,i,c]),d=e.city,M=new Map;for(let s of e.nodes)s.plot&&Math.round(s.plane)===2&&!h.has(s.kind)&&M.set(s.kind,s.plot);let x=pe(u,M),S=(0,J.useMemo)(()=>new Map(u.map(s=>[s.name,y?fe(y.last(s.name)):void 0])),[u,y,k]);if(!d||x.length===0)return null;let a=d.cell,P=d.tilt??.5,O=d.originX+n.x,G=d.originY+n.y,N=(s,p)=>{let m=j(s,p,a,P);return{x:O+m.x,y:G+m.y}},F=new Map(u.map(s=>[s.name,s]));return(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)("style",{children:Ce}),(0,v.jsxs)("div",{className:"graview-workflows","data-graview-workflows":x.length,style:{width:t,height:o},children:[(0,v.jsx)("svg",{"aria-hidden":"true",width:t,height:o,style:{position:"absolute",left:0,top:0,overflow:"visible"},children:x.map(s=>{let p=F.get(s.name),m=N(s.col,s.row),W=[...p.writes.map(f=>[f,"writes"]),...p.reads.filter(f=>!p.writes.includes(f)).map(f=>[f,"reads"])];return(0,v.jsxs)("g",{"data-graview-workflow-status":p.status,children:[W.map(([f,L])=>{let $=M.get(f);if(!$)return null;let E=N($.col+$.side/2,$.row+$.side/2);return(0,v.jsx)("path",{className:"graview-workflow-wire","data-wire":L,"data-graview-workflow-wire":`${s.name}:${f}`,d:`M${m.x.toFixed(1)} ${m.y.toFixed(1)}L${E.x.toFixed(1)} ${E.y.toFixed(1)}`},f)}),(0,v.jsx)("circle",{className:"graview-workflow-spot",cx:m.x.toFixed(1),cy:m.y.toFixed(1),r:4})]},s.name)})}),x.map(s=>{let p=F.get(s.name),m=N(s.col,s.row),W=p.status==="paused",f=S.get(s.name),L=[W?"Paused":"",f??""].filter(Boolean).join(" \xB7 "),$=Fe(p,r.schema);return(0,v.jsxs)("div",{className:"graview-workflow",role:"group","aria-label":`Workflow: ${p.title}${W?", paused":""}. ${$?`${$.replace(/^./,E=>E.toUpperCase())}.`:""}${f?` ${f}.`:""}`,"data-graview-workflow":s.name,"data-graview-workflow-status":p.status,"data-graview-workflow-beside":s.beside,style:{left:m.x,top:m.y},children:[(0,v.jsx)("span",{className:"graview-workflow-title",children:p.title}),L?(0,v.jsx)("span",{className:"graview-workflow-last",children:L}):null]},s.name)})]})]})}var w=C(z(),1);function Be(e,t,o={x:0,y:0}){let n=(r,i)=>{let c=j(r,i,t.cell,t.tilt);return{x:t.originX+o.x+c.x,y:t.originY+o.y+c.y}};return[n(e.col,e.row),n(e.col+e.side,e.row),n(e.col+e.side,e.row+e.side),n(e.col,e.row+e.side)]}var X=e=>e.map(t=>`${t.x.toFixed(1)},${t.y.toFixed(1)}`).join(" ");function tt({frame:e,width:t,height:o,pan:n,pinned:r,close:i,today:c,swallowed:y,chosen:k=[],onFocus:h}){let{selection:u,store:d,scheme:M,principal:x}=le(),S=de(),a=(0,b.useMemo)(()=>d.log.all(),[d,S]),P=ye(a,d.schema.kinds,x),O=(0,b.useMemo)(()=>me(d.graph,a,x?.id),[d,a,x?.id]),G=ge(),N=e.city,F=e.nodes.filter(g=>g.plot!==void 0&&Math.round(g.plane)===2),s=N?.cell??0,p=N?.tilt??.5,m=(0,b.useRef)(h);m.current=h;let W=(0,b.useCallback)(g=>!m.current||y?.current?!1:(m.current(g),!0),[y]),f=(0,b.useRef)(new Map),L=(0,b.useRef)({nodes:void 0,names:new Map});L.current.nodes!==S&&(L.current={nodes:S,names:new Map});let $=L.current.names,E=new Map;for(let g of F){let D=g.aggregate?.memberIds??[],R=ce(d.schema,g.kind),ee=l=>R?d.graph.getNode(l)?.[R.field]:void 0,Y=D.filter(l=>k.includes(l)),te=`${s}|${p}|${g.plot.col},${g.plot.row},${g.plot.side}|${Y.join(",")}|${D.map(l=>`${l}=${String(ee(l))}`).join(",")}`,V=f.current.get(g.id);if(V&&V.key===te){E.set(g.id,V);continue}let ne={cell:s,originX:0,originY:0,tilt:p},oe={x:0,y:0},$e=d.schema.tryDefinition(g.kind),Se=l=>{let A=$.get(l);if(A!==void 0)return A;let T=d.graph.getNode(l),ie=T?ae($e,T):l;return $.set(l,ie),ie},B=R?R.values.map(()=>[]):[[]],K=R?[...R.tiers]:["waiting"];for(let l of Y.length>0?[...Y,...D.filter(A=>!Y.includes(A))]:D){let A=R?R.values.indexOf(ee(l)):0;A>=0?B[A].push(l):(B.length===K.length&&(B.push([]),K.push("waiting")),B[B.length-1].push(l))}let{blocks:Pe,rests:Me}=U(g.plot,B,K.map(l=>we[l])),Ne=Be(g.plot,ne,oe),re=R?_e(d.schema,g.kind):void 0;E.set(g.id,{key:te,tile:X(Ne),rests:Me.map(l=>({count:l.count,rows:l.rows,at:j(l.col,l.row,s,p)})),buildings:Pe.map(l=>{let T=(re?d.graph.getNode(l.id):void 0)?.[re];return{id:l.id,tier:K[l.lane],overdue:typeof T=="string"&&K[l.lane]!=="done"&&T.slice(0,10)<(c??new Date().toISOString().slice(0,10)),name:Se(l.id),width:l.footprint*s,...ze(l,ne,oe)}})})}if(f.current=E,!N)return null;let ve={position:"absolute",left:0,top:0,pointerEvents:"none",overflow:"visible"},he=u.join(`
9
+ `),ke=G.join(`
10
+ `),xe=P?[...P].join(`
11
+ `):"",be=O?[...O].join(`
12
+ `):"";return(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)("style",{children:Xe(M)}),(0,w.jsx)("svg",{className:"graview-plots","aria-hidden":"true","data-graview-world":"",width:t,height:o,style:ve,"data-graview-plots":F.length,"data-graview-named":i?"":void 0,children:(0,w.jsx)("g",{transform:`translate(${(N.originX+n.x).toFixed(1)} ${(N.originY+n.y).toFixed(1)})`,children:F.map(g=>(0,w.jsx)(Ye,{id:g.id,drawing:E.get(g.id),pinned:r?.has(g.id)??!1,chosenKey:he,flaggedKey:ke,recentKey:xe,ownKey:be,named:i??!1,press:W},g.id))})})]})}var je=34,Z=6,Ie=9,Ke=3,Q=2;function Te(e,t){return t||e.name.length*Z<=e.width*1.6?e.name:`${e.name.slice(0,Math.max(1,Math.floor(e.width*1.6/Z)-1))}\u2026`}function De(e,t){let o=new Map,n=[],r=e.filter(i=>t.has(i.id));for(let i of[...r,...e.filter(c=>!t.has(c.id))]){let c=t.has(i.id);if(!c&&i.width<je)continue;let y=Te(i,c),k=y.length*Z/2+Q,h=i.top.y-3,u={left:i.top.x-k,right:i.top.x+k,top:h-Ie-Q,bottom:h+Ke+Q};n.some(d=>d.left<u.right&&u.left<d.right&&d.top<u.bottom&&u.top<d.bottom)||(n.push(u),o.set(i.id,y))}return o}var Ye=(0,b.memo)(function({id:t,drawing:o,pinned:n,chosenKey:r,flaggedKey:i,recentKey:c,ownKey:y,named:k,press:h}){let u=new Set(r.split(`
13
+ `)),d=new Set(i.split(`
14
+ `)),M=new Set(c.split(`
15
+ `)),x=new Set(y.split(`
16
+ `)),S=(0,b.useMemo)(()=>k?De(o.buildings,u):null,[k,o,r]);return(0,w.jsxs)("g",{className:"graview-plot","data-graview-plot":t,"data-graview-pinned":n?"":void 0,children:[(0,w.jsx)("polygon",{className:"graview-plot-tile",points:o.tile,onClick:a=>{h(t)&&a.stopPropagation()}}),o.buildings.length>0?(0,w.jsxs)("g",{className:"graview-village","data-graview-village":o.buildings.length,"data-graview-rest":o.rests.reduce((a,P)=>a+P.count,0)||void 0,children:[o.buildings.map(a=>(0,w.jsxs)("g",{className:"graview-building","data-graview-building":a.id,"data-graview-tier":a.tier,"data-graview-flagged":d.has(a.id)||a.overdue?"":void 0,"data-graview-overdue":a.overdue?"":void 0,"data-graview-recent":M.has(a.id)?"":void 0,"data-graview-own":x.has(a.id)?"":void 0,"data-graview-selected":u.has(a.id)?"":void 0,children:[(0,w.jsx)("polygon",{className:"graview-iso-left",points:a.left}),(0,w.jsx)("polygon",{className:"graview-iso-right",points:a.right}),(0,w.jsx)("polygon",{className:"graview-iso-roof",points:a.roof}),S?.has(a.id)?(0,w.jsx)("text",{className:"graview-building-name",x:a.top.x,y:a.top.y-3,textAnchor:"middle",children:S.get(a.id)}):null]},a.id)),o.rests.map((a,P)=>(0,w.jsxs)("text",{className:"graview-village-rest",x:a.at.x-3,y:a.at.y+4,textAnchor:"end",children:[(0,w.jsx)("title",{children:`${q(a.count)} more ${a.rows>1?`in ${a.rows} rows`:"in this row"} than the plot has room to show`}),"+",q(a.count)]},P))]}):null]})});function _e(e,t){return Object.keys(e.tryDefinition(t)?.fields.shape??{}).find(o=>/^(due|deadline|due[-_ ]?(on|date|at|by))$/i.test(o))}function ze(e,t,o){let n=e.footprint/2,r=(S,a,P=0)=>{let O=j(S,a,t.cell,t.tilt);return{x:t.originX+o.x+O.x,y:t.originY+o.y+O.y-P}},i=Math.min(1,t.tilt??.5),c=e.footprint*t.cell*.5*e.height*(Math.sqrt(1-i*i)/Math.sqrt(.75)),y=r(e.col-n,e.row-n,c),k=r(e.col+n,e.row-n,c),h=r(e.col+n,e.row+n,c),u=r(e.col-n,e.row+n,c),d=r(e.col+n,e.row+n),M=r(e.col-n,e.row+n),x=r(e.col+n,e.row-n);return{roof:X([y,k,h,u]),left:X([u,h,d,M]),right:X([h,k,x,d]),top:y}}function nt(e,t,o){let n=e.x-t.originX-o.x,r=e.y-t.originY-o.y,i=t.tilt??.5;return{col:n/t.cell+r/(t.cell*i),row:r/(t.cell*i)-n/t.cell}}function Xe(e){let t=e==="light",o=(n,r="var(--graview-ink)")=>`color-mix(in oklab, ${r} ${n}, var(--graview-panel))`;return`.graview-plots{z-index:${_.plots};opacity:var(--graview-altitude);transition:opacity 640ms cubic-bezier(.33,0,.2,1)}
17
+ .graview-plot-tile{fill:color-mix(in oklab,var(--graview-ink) ${t?5:9}%,transparent);stroke:color-mix(in oklab,var(--graview-ink) ${t?22:30}%,transparent);stroke-linejoin:round;pointer-events:auto;cursor:pointer}
18
+ .graview-plot-tile:hover{fill:color-mix(in oklab,var(--graview-ink) ${t?10:16}%,transparent)}
19
+ .graview-plot[data-graview-pinned] .graview-plot-tile{stroke-dasharray:4 3}
20
+ .graview-village{pointer-events:none}
21
+ .graview-building{--s:${t?30:40}%}
22
+ .graview-building[data-graview-tier=active]{--s:${t?64:70}%}
23
+ .graview-building polygon{stroke:var(--graview-panel);stroke-width:.6;stroke-opacity:.6;fill:${o("var(--s)")}}
24
+ .graview-building .graview-iso-left{fill:${o(`calc(var(--s) + ${t?15:-10}%)`)}}
25
+ .graview-building .graview-iso-right{fill:${o(`calc(var(--s) + ${t?8:-16}%)`)}}
26
+ .graview-building[data-graview-tier=done] polygon{fill:${o(t?"13%":"18%")}}
27
+ .graview-building[data-graview-flagged] polygon{fill:var(--graview-warn);stroke:var(--graview-warn)}
28
+ .graview-building[data-graview-flagged] .graview-iso-left{fill:color-mix(in oklab,var(--graview-warn) 80%,var(--graview-ink))}
29
+ .graview-building[data-graview-recent]{filter:drop-shadow(0 0 2px color-mix(in oklab,var(--graview-accent) 70%,transparent))}
30
+ .graview-building[data-graview-own] .graview-iso-roof{stroke:var(--graview-ink);stroke-width:1.4;stroke-opacity:1}
31
+ .graview-building[data-graview-selected] polygon{stroke:var(--graview-accent);stroke-width:1.4;stroke-opacity:1}
32
+ .graview-building[data-graview-selected] .graview-iso-roof{fill:${o("45%","var(--graview-accent)")}}
33
+ .graview-building-name{font-size:.625rem;fill:var(--graview-ink);paint-order:stroke;stroke:var(--graview-ground);stroke-width:3px}
34
+ .graview-ground:has(> .graview-plots[data-graview-named]) [data-graview-plot] .graview-kind-landmark{opacity:.3;transition:opacity 240ms}
35
+ .graview-village-rest{font-size:.6875rem;font-variant-numeric:tabular-nums;fill:var(--graview-ink-muted)}`}export{tt as Plots,We as WorkflowsLayer,ze as buildingFaces,U as districtBlocks,Re as heightOf,De as namesWithRoom,Be as tileCorners,nt as toLattice,Ee as villageCap,Le as villageOf};
@@ -0,0 +1 @@
1
+ import{a as n}from"./chunk.EJ2WE764.js";import"./chunk.T3JIZNE7.js";import"./chunk.26H33GJC.js";import"./chunk.DBFJVVWF.js";import"./chunk.SSAETRHR.js";import"./chunk.Q355UPFG.js";import{l as s}from"./chunk.YZBJUAS6.js";import"./chunk.NTC2H5ZX.js";import"./chunk.2RASWDMQ.js";import"./chunk.XCWZFLIB.js";import"./chunk.AWUO3M5D.js";import"./chunk.VZDHRY3U.js";import"./chunk.V4HVFLFQ.js";import"./chunk.A2R53GWF.js";import"./chunk.QAMW5QDT.js";import"./chunk.B5PJCYBU.js";import"./chunk.Q2EGESEZ.js";import"./chunk.SMHP2CQH.js";import"./chunk.ZZAI57VI.js";import"./chunk.34DRUCH2.js";import"./chunk.NEPQBMFT.js";import"./chunk.2PJ6STKA.js";import"./chunk.MBB5A6BT.js";import"./chunk.T535ZLRM.js";import"./chunk.ERPILTRY.js";import"./chunk.OTSBF367.js";import"./chunk.JVDPRQ7J.js";import"./chunk.BJUUSIQY.js";import"./chunk.57YDGGJK.js";import"./chunk.H7AH3IW4.js";import"./chunk.XOZU4OFA.js";import"./chunk.4TH3CGAZ.js";import"./chunk.MB7LKKUD.js";import"./chunk.WVUJXDXZ.js";import"./chunk.XYGNS637.js";import"./chunk.DZSZUX34.js";import"./chunk.4EXC26LI.js";import"./chunk.PWAP2GJS.js";import"./chunk.AHPYNDVA.js";import"./chunk.FNVGNISQ.js";import"./chunk.GZHZLJBF.js";import"./chunk.WUVXIUA7.js";import"./chunk.OJGHDWI6.js";import"./chunk.BN7C5ZYX.js";import"./chunk.REUMBCSV.js";import"./chunk.2KIWGQXC.js";import"./chunk.D5LOTCBU.js";import"./chunk.KZUMXT5J.js";import"./chunk.CGK2PY76.js";import{G as y,T as i}from"./chunk.CYTTZOYL.js";import"./chunk.SDO3U72B.js";import"./chunk.Q4MI53KK.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 +1 @@
1
- import{b as P,c as m,d as k}from"./chunk.FULEUL34.js";import{b as v,c as w,d as S,e as x,f as M}from"./chunk.B3WVCSW5.js";import"./chunk.L3WTKQQL.js";import"./chunk.QDWSU47A.js";import"./chunk.DZZL5IDD.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";var O=new Set(["input","select","textarea"]),g=r=>r.namespaceURI==="http://www.w3.org/1999/xhtml"&&O.has(r.localName),N=r=>r.localName==="select"||r.type==="checkbox"||r.type==="radio",E=r=>r.type==="checkbox"||r.type==="radio"?!r.checked:r.localName!=="select"&&r.value==="";function h(r){return r.type==="checkbox"||r.type==="radio"?`checked:${r.checked}`:r.localName==="select"&&r.multiple?`selected:${[...r.selectedOptions].map(n=>n.value).join("\0")}`:`value:${r.value}`}function F(r=n=>n.isTrusted){let n=new WeakMap,d=new WeakSet,o=new WeakMap,i={heard(e,t){if(!(!g(t)||!r(e))&&(e.type==="input"||e.type==="change"&&N(t))&&((N(t)||E(t))&&d.delete(t),E(t)&&o.delete(t),n.set(t,h(t)),t.type==="radio"&&t.name)){let c=t.getRootNode();for(let u of c.querySelectorAll?.('input[type="radio"]')??[])u.name===t.name&&n.set(u,h(u))}},filled(e){n.delete(e),o.delete(e),g(e)&&!E(e)?d.add(e):d.delete(e)},press(e,t,c){if(!r(e))return;let u=t.closest("[data-act]");if(!u||!w(u))return;let l=e.type==="keydown"?e.key:void 0;if(!(e.type!=="click"&&!((l==="Enter"||l===" ")&&t===u&&!v(u))))return i.collect(u,c)},collect(e,t){if(!e.hasAttribute("data-act")||!t.contains(e))return;let c=e.closest("[data-record]"),u=e.closest("fieldset, [role='group']")??t,l=[];for(let a of u.querySelectorAll("input[name], select[name], textarea[name]")){let s=a,f=!d.has(s)&&n.get(s)===h(s);if(s.type==="radio"){if(!s.checked)continue;l.push({name:s.name,value:s.value,typed:f,empty:!1,chosen:!0});continue}if(s.localName==="select"){l.push({name:s.name,value:s.value,typed:f,empty:s.value===""&&!f,chosen:!0});continue}if(s.type==="checkbox"){l.push({name:s.name,value:s.checked,typed:f,empty:!s.checked&&!d.has(s)&&!f});continue}let R=(s.type==="number"||s.type==="range")&&s.value!==""&&Number.isFinite(s.valueAsNumber)?s.valueAsNumber:s.value,A=f?o.get(s):void 0;l.push({name:s.name,value:R,typed:f,empty:s.value===""&&!f,...A?{from:A}:{}})}return{as:e.getAttribute("data-act")??"",...c&&t.contains(c)?{record:c.getAttribute("data-record")}:{},fields:l}},prefilled(e,t){d.delete(e),o.set(e,t),n.set(e,h(e))}};return i}var b=new WeakMap,L=(r,n)=>{n.tab&&r.removeAttribute("tabindex"),n.role&&r.getAttribute("role")==="button"&&r.removeAttribute("role"),r.removeAttribute("data-graview-press"),b.delete(r)};function W(r){for(let n of r.querySelectorAll("[data-act], [data-graview-press], [role], [aria-pressed], [aria-expanded]")){let d=b.get(n),o=w(n)&&!v(n)&&!g(n),i=!o&&S(n,d?.role?null:n.getAttribute("role"));if(d&&(d.bound!==o||!(o||i))&&L(n,d),(o||i)&&!b.has(n)){let e=!x(n),t=o&&M(n);e&&n.setAttribute("tabindex","0"),t&&n.setAttribute("role","button"),n.setAttribute("data-graview-press",""),b.set(n,{tab:e,role:t,bound:o})}}}var y=new WeakSet;function V(r){for(let n of r.querySelectorAll("svg")){let d=n.hasAttribute("role")||n.hasAttribute("aria-label")||n.hasAttribute("aria-labelledby")||[...n.children].some(e=>e.localName==="title"),o=n.hasAttribute("tabindex")||n.hasAttribute("data-graview-link")||n.hasAttribute("data-graview-press")||n.querySelector("[tabindex], [data-graview-link], [data-graview-press], a")!==null,i=!d&&!o;i&&!y.has(n)&&!n.hasAttribute("aria-hidden")?(n.setAttribute("aria-hidden","true"),y.add(n)):!i&&y.has(n)&&(n.removeAttribute("aria-hidden"),y.delete(n))}}var j=1e3;function I(r){let n=r.getAttribute("data-debounce")?.trim(),d=n?Number(n):Number.NaN;return Number.isFinite(d)?Math.min(1e4,Math.max(250,Math.round(d))):j}function B(r){let n=r.trusted??(e=>e.isTrusted),d=r.timers??{set:(e,t)=>setTimeout(e,t),clear:e=>clearTimeout(e)},o=new Map,i=(e,t)=>{let c=o.get(e);c&&d.clear(c.handle),o.delete(e);let u=r.reader.collect(e,t);u&&r.save(u,e)};return{heard(e,t,c){if(!g(t)||!n(e)||!t.hasAttribute("data-act"))return;let u=t.getAttribute("data-save");if(e.type==="input"&&u==="input"){let l=o.get(t);l&&d.clear(l.handle),o.set(t,{root:c,handle:d.set(()=>i(t,c),I(t))})}else e.type==="change"&&(u==="change"||u==="input"&&o.has(t))&&i(t,c)},flush(){for(let[e,{root:t}]of[...o])i(e,t)},get waiting(){return o.size}}}var H=new Set(["text","search","email","url","tel","number"]);function D(r,n,d,o){for(let i of r.querySelectorAll("input[data-prefill], textarea[data-prefill]")){let e=i;if(d.has(e))continue;let t=e.getAttribute("data-prefill")??"";if(t===""||e.getAttribute("name")!==t||e.localName==="input"&&!H.has(e.type))continue;if(e.value!==""){d.add(e);continue}let u=[...(e.closest("fieldset, [role='group']")??r).querySelectorAll("[data-act]")],l=e.closest("[data-record]"),a=new Set(u.map(p=>p.closest("[data-record]")?.getAttribute("data-record")).filter(p=>typeof p=="string")),s=l&&r.contains(l)?l.getAttribute("data-record"):a.size===1?[...a][0]:void 0;if(!s)continue;let f=o({record:s,field:t,acts:u.map(p=>p.getAttribute("data-act")??"")});if(f!==void 0){if(e.value=f,d.add(e),e.value!==f){e.value="";continue}n.prefilled(e,{record:s,field:t,value:f})}}}function _(r,n,d,o){let i=k(n,o.as);if(!i)return m("undeclared",`This view may not ask for \u201C${o.as}\u201D: its manifest does not name it.`);let e=r.allMutations().find(a=>a.name===i.act);if(!e)return m("unknown-act","There is no act by that name here.");let t={};if(o.record!==void 0){let a=i.record??e.subject?.arg;if(!a)return m("unbound",`\u201C${o.as}\u201D is not done to a record.`);if(!d.has(o.record))return m("unbound","That press is bound to a record this view was not shown.");t[a]=o.record}for(let[a,s]of Object.entries(i.constants??{})){if(a in t)return m("malformed",`\u201C${a}\u201D is both the bound record and a constant.`);t[a]=s}let c=e.input?.shape??{},u=new Set(Object.keys(c)),l=new Set;for(let a of o.fields)if(!(!u.has(a.name)||a.name in t)){if(l.has(a.name))return m("malformed",`Two fields here are called \u201C${a.name}\u201D.`);if(l.add(a.name),a.typed&&a.chosen){let s=P(c[a.name])?.find(f=>String(f)===String(a.value));if(s!==void 0)t[a.name]=s;else if(typeof a.value=="string"&&d.has(a.value))t[a.name]=a.value;else return m("untyped",`\u201C${a.name}\u201D was a choice among the view's own words, not one this app declares, so it was not sent.`)}else{if(a.typed&&a.from&&!(o.record===a.from.record&&a.name===a.from.field&&T(r,i,a.from.record,a.from.field)))return m("untyped",`\u201C${a.name}\u201D was filled in from a record for an act that writes it back there, not for this one, so it was not sent.`);if(a.typed&&a.from&&String(a.value)===a.from.value)t[a.name]=r.graph.getNode(a.from.record)?.[a.name]??a.value;else if(a.typed)t[a.name]=a.value;else if(!a.empty)return m("untyped",`\u201C${a.name}\u201D was filled in by the view, not typed by you, so it was not sent.`)}}return{ok:!0,name:i.act,args:t}}function T(r,n,d,o){let i=r.allMutations().find(u=>u.name===n.act),e=i?.subject;if(!i||!e||(n.record??e.arg)!==e.arg||o===e.arg||Object.hasOwn(n.constants??{},o)||!Object.hasOwn(i.input.shape??{},o)||Object.keys(i.writesOther??{}).length>0)return!1;let t=r.graph.getNode(d)?.kind,c=t===void 0?void 0:r.schema.tryDefinition(t);return!c||e.kinds!=="*"&&!e.kinds.includes(t)||!Object.hasOwn(c.fields.shape??{},o)?!1:i.writes?.includes(o)??!1}function C(r,n,d,o,i){if(!o.has(i.record))return;let e=r.seenBy(n).graph.getNode(i.record);if(!e||!i.acts.some(u=>{let l=k(d,u);if(!l||!T(r,l,i.record,i.field))return!1;let a=r.allMutations().find(s=>s.name===l.act).subject;return r.permits({name:l.act,args:{[a.arg]:i.record}},n).ok}))return;let c=e[i.field];return typeof c=="string"?c:typeof c=="number"&&Number.isFinite(c)?String(c):void 0}export{j as SAVE_DEBOUNCE_MS,F as createPressReader,B as createSaver,D as fillPrefills,_ as judgePress,W as markPresses,C as prefillOf,V as quietPictures,I as saveDebounceOf,T as writesBack};
1
+ import{b as P,c as m,d as k}from"./chunk.XUO67YMT.js";import{b as v,c as w,d as S,e as x,f as M}from"./chunk.B3WVCSW5.js";import"./chunk.Q4GJIJAU.js";import"./chunk.MT5DXJKN.js";import"./chunk.Q4MI53KK.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";var O=new Set(["input","select","textarea"]),g=r=>r.namespaceURI==="http://www.w3.org/1999/xhtml"&&O.has(r.localName),N=r=>r.localName==="select"||r.type==="checkbox"||r.type==="radio",E=r=>r.type==="checkbox"||r.type==="radio"?!r.checked:r.localName!=="select"&&r.value==="";function h(r){return r.type==="checkbox"||r.type==="radio"?`checked:${r.checked}`:r.localName==="select"&&r.multiple?`selected:${[...r.selectedOptions].map(n=>n.value).join("\0")}`:`value:${r.value}`}function F(r=n=>n.isTrusted){let n=new WeakMap,d=new WeakSet,o=new WeakMap,i={heard(e,t){if(!(!g(t)||!r(e))&&(e.type==="input"||e.type==="change"&&N(t))&&((N(t)||E(t))&&d.delete(t),E(t)&&o.delete(t),n.set(t,h(t)),t.type==="radio"&&t.name)){let c=t.getRootNode();for(let u of c.querySelectorAll?.('input[type="radio"]')??[])u.name===t.name&&n.set(u,h(u))}},filled(e){n.delete(e),o.delete(e),g(e)&&!E(e)?d.add(e):d.delete(e)},press(e,t,c){if(!r(e))return;let u=t.closest("[data-act]");if(!u||!w(u))return;let l=e.type==="keydown"?e.key:void 0;if(!(e.type!=="click"&&!((l==="Enter"||l===" ")&&t===u&&!v(u))))return i.collect(u,c)},collect(e,t){if(!e.hasAttribute("data-act")||!t.contains(e))return;let c=e.closest("[data-record]"),u=e.closest("fieldset, [role='group']")??t,l=[];for(let a of u.querySelectorAll("input[name], select[name], textarea[name]")){let s=a,f=!d.has(s)&&n.get(s)===h(s);if(s.type==="radio"){if(!s.checked)continue;l.push({name:s.name,value:s.value,typed:f,empty:!1,chosen:!0});continue}if(s.localName==="select"){l.push({name:s.name,value:s.value,typed:f,empty:s.value===""&&!f,chosen:!0});continue}if(s.type==="checkbox"){l.push({name:s.name,value:s.checked,typed:f,empty:!s.checked&&!d.has(s)&&!f});continue}let R=(s.type==="number"||s.type==="range")&&s.value!==""&&Number.isFinite(s.valueAsNumber)?s.valueAsNumber:s.value,A=f?o.get(s):void 0;l.push({name:s.name,value:R,typed:f,empty:s.value===""&&!f,...A?{from:A}:{}})}return{as:e.getAttribute("data-act")??"",...c&&t.contains(c)?{record:c.getAttribute("data-record")}:{},fields:l}},prefilled(e,t){d.delete(e),o.set(e,t),n.set(e,h(e))}};return i}var b=new WeakMap,L=(r,n)=>{n.tab&&r.removeAttribute("tabindex"),n.role&&r.getAttribute("role")==="button"&&r.removeAttribute("role"),r.removeAttribute("data-graview-press"),b.delete(r)};function W(r){for(let n of r.querySelectorAll("[data-act], [data-graview-press], [role], [aria-pressed], [aria-expanded]")){let d=b.get(n),o=w(n)&&!v(n)&&!g(n),i=!o&&S(n,d?.role?null:n.getAttribute("role"));if(d&&(d.bound!==o||!(o||i))&&L(n,d),(o||i)&&!b.has(n)){let e=!x(n),t=o&&M(n);e&&n.setAttribute("tabindex","0"),t&&n.setAttribute("role","button"),n.setAttribute("data-graview-press",""),b.set(n,{tab:e,role:t,bound:o})}}}var y=new WeakSet;function V(r){for(let n of r.querySelectorAll("svg")){let d=n.hasAttribute("role")||n.hasAttribute("aria-label")||n.hasAttribute("aria-labelledby")||[...n.children].some(e=>e.localName==="title"),o=n.hasAttribute("tabindex")||n.hasAttribute("data-graview-link")||n.hasAttribute("data-graview-press")||n.querySelector("[tabindex], [data-graview-link], [data-graview-press], a")!==null,i=!d&&!o;i&&!y.has(n)&&!n.hasAttribute("aria-hidden")?(n.setAttribute("aria-hidden","true"),y.add(n)):!i&&y.has(n)&&(n.removeAttribute("aria-hidden"),y.delete(n))}}var j=1e3;function I(r){let n=r.getAttribute("data-debounce")?.trim(),d=n?Number(n):Number.NaN;return Number.isFinite(d)?Math.min(1e4,Math.max(250,Math.round(d))):j}function B(r){let n=r.trusted??(e=>e.isTrusted),d=r.timers??{set:(e,t)=>setTimeout(e,t),clear:e=>clearTimeout(e)},o=new Map,i=(e,t)=>{let c=o.get(e);c&&d.clear(c.handle),o.delete(e);let u=r.reader.collect(e,t);u&&r.save(u,e)};return{heard(e,t,c){if(!g(t)||!n(e)||!t.hasAttribute("data-act"))return;let u=t.getAttribute("data-save");if(e.type==="input"&&u==="input"){let l=o.get(t);l&&d.clear(l.handle),o.set(t,{root:c,handle:d.set(()=>i(t,c),I(t))})}else e.type==="change"&&(u==="change"||u==="input"&&o.has(t))&&i(t,c)},flush(){for(let[e,{root:t}]of[...o])i(e,t)},get waiting(){return o.size}}}var H=new Set(["text","search","email","url","tel","number"]);function D(r,n,d,o){for(let i of r.querySelectorAll("input[data-prefill], textarea[data-prefill]")){let e=i;if(d.has(e))continue;let t=e.getAttribute("data-prefill")??"";if(t===""||e.getAttribute("name")!==t||e.localName==="input"&&!H.has(e.type))continue;if(e.value!==""){d.add(e);continue}let u=[...(e.closest("fieldset, [role='group']")??r).querySelectorAll("[data-act]")],l=e.closest("[data-record]"),a=new Set(u.map(p=>p.closest("[data-record]")?.getAttribute("data-record")).filter(p=>typeof p=="string")),s=l&&r.contains(l)?l.getAttribute("data-record"):a.size===1?[...a][0]:void 0;if(!s)continue;let f=o({record:s,field:t,acts:u.map(p=>p.getAttribute("data-act")??"")});if(f!==void 0){if(e.value=f,d.add(e),e.value!==f){e.value="";continue}n.prefilled(e,{record:s,field:t,value:f})}}}function _(r,n,d,o){let i=k(n,o.as);if(!i)return m("undeclared",`This view may not ask for \u201C${o.as}\u201D: its manifest does not name it.`);let e=r.allMutations().find(a=>a.name===i.act);if(!e)return m("unknown-act","There is no act by that name here.");let t={};if(o.record!==void 0){let a=i.record??e.subject?.arg;if(!a)return m("unbound",`\u201C${o.as}\u201D is not done to a record.`);if(!d.has(o.record))return m("unbound","That press is bound to a record this view was not shown.");t[a]=o.record}for(let[a,s]of Object.entries(i.constants??{})){if(a in t)return m("malformed",`\u201C${a}\u201D is both the bound record and a constant.`);t[a]=s}let c=e.input?.shape??{},u=new Set(Object.keys(c)),l=new Set;for(let a of o.fields)if(!(!u.has(a.name)||a.name in t)){if(l.has(a.name))return m("malformed",`Two fields here are called \u201C${a.name}\u201D.`);if(l.add(a.name),a.typed&&a.chosen){let s=P(c[a.name])?.find(f=>String(f)===String(a.value));if(s!==void 0)t[a.name]=s;else if(typeof a.value=="string"&&d.has(a.value))t[a.name]=a.value;else return m("untyped",`\u201C${a.name}\u201D was a choice among the view's own words, not one this app declares, so it was not sent.`)}else{if(a.typed&&a.from&&!(o.record===a.from.record&&a.name===a.from.field&&T(r,i,a.from.record,a.from.field)))return m("untyped",`\u201C${a.name}\u201D was filled in from a record for an act that writes it back there, not for this one, so it was not sent.`);if(a.typed&&a.from&&String(a.value)===a.from.value)t[a.name]=r.graph.getNode(a.from.record)?.[a.name]??a.value;else if(a.typed)t[a.name]=a.value;else if(!a.empty)return m("untyped",`\u201C${a.name}\u201D was filled in by the view, not typed by you, so it was not sent.`)}}return{ok:!0,name:i.act,args:t}}function T(r,n,d,o){let i=r.allMutations().find(u=>u.name===n.act),e=i?.subject;if(!i||!e||(n.record??e.arg)!==e.arg||o===e.arg||Object.hasOwn(n.constants??{},o)||!Object.hasOwn(i.input.shape??{},o)||Object.keys(i.writesOther??{}).length>0)return!1;let t=r.graph.getNode(d)?.kind,c=t===void 0?void 0:r.schema.tryDefinition(t);return!c||e.kinds!=="*"&&!e.kinds.includes(t)||!Object.hasOwn(c.fields.shape??{},o)?!1:i.writes?.includes(o)??!1}function C(r,n,d,o,i){if(!o.has(i.record))return;let e=r.seenBy(n).graph.getNode(i.record);if(!e||!i.acts.some(u=>{let l=k(d,u);if(!l||!T(r,l,i.record,i.field))return!1;let a=r.allMutations().find(s=>s.name===l.act).subject;return r.permits({name:l.act,args:{[a.arg]:i.record}},n).ok}))return;let c=e[i.field];return typeof c=="string"?c:typeof c=="number"&&Number.isFinite(c)?String(c):void 0}export{j as SAVE_DEBOUNCE_MS,F as createPressReader,B as createSaver,D as fillPrefills,_ as judgePress,W as markPresses,C as prefillOf,V as quietPictures,I as saveDebounceOf,T as writesBack};
@@ -1 +1 @@
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{e as $,g as F,h as P,i as B,l as K,m as H}from"./chunk.NUYA4BWI.js";import"./chunk.OKZT2QBM.js";import"./chunk.ACTXR2MI.js";import"./chunk.AI34V6WV.js";import"./chunk.G4ULQK64.js";import{G as se,Ia as A,T as S}from"./chunk.M7RESZB6.js";import{a as q}from"./chunk.SDO3U72B.js";import"./chunk.DZZL5IDD.js";import"./chunk.FQLNBIQ5.js";import{b as T}from"./chunk.AJZBJBMO.js";var r=T(se(),1);var j=T(S(),1),Z=A(q(()=>(__graviewPreload(import.meta.url,["./chunk.AI34V6WV.js","./chunk.G4ULQK64.js","./chunk.M7RESZB6.js","./chunk.SDO3U72B.js","./chunk.DZZL5IDD.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.RYRQ66JN.js")))),U={Part:Z.part((n,t)=>(0,j.jsx)(n.WhenMonth,{...t}),{quiet:!0}),prefetch:()=>Z.prefetch()};var o=T(S(),1),E="try \u201Ctomorrow 3pm\u201D, \u201CFri 10:30\u201D or \u201C17 Oct\u201D";function _(n,t,i,b=!1){let y=Date.UTC(+n.day.slice(0,4),+n.day.slice(5,7)-1,+n.day.slice(8,10),0,t?n.minutes??0:0),x={weekday:b?"long":"short",year:"numeric",month:b?"long":"short",day:"numeric",...t?{hour:"numeric",minute:"2-digit"}:{},timeZone:"UTC"},h;try{h=new Intl.DateTimeFormat(i??"en-US",x)}catch{h=new Intl.DateTimeFormat("en-US",x)}return h.format(y).replace(/ /g," ")}function V(n,t){if(n.length===4)return n;let i=Date.UTC(+n.slice(0,4),+n.slice(5,7)-1,1);try{return new Intl.DateTimeFormat(t??"en-US",{month:"long",year:"numeric",timeZone:"UTC"}).format(i)}catch{return new Intl.DateTimeFormat("en-US",{month:"long",year:"numeric",timeZone:"UTC"}).format(i)}}function me({value:n,time:t,instant:i=!1,partial:b=!1,label:y,name:x,required:h,autoFocus:G,autoSelect:N,locale:s,onChange:J,onLeave:Q,onCancel:X,inputRef:W,boxStyle:Y}){let k=(0,r.useId)(),p=(0,r.useRef)(null),O=(0,r.useRef)(null),I=e=>b&&!t&&e!==void 0?K(e):void 0,C=e=>{let a=I(e);if(a!==void 0)return V(a,s);let l=F(e);return l?_(l,t,s):e??""},[g,D]=(0,r.useState)(()=>C(n)),[R,w]=(0,r.useState)(!1),[ee,L]=(0,r.useState)(n),[ne,te]=(0,r.useState)(n);n!==ne&&(te(n),n!==ee&&(L(n),D(C(n)))),(0,r.useEffect)(()=>{N&&(p.current?.focus(),p.current?.select())},[N]);let d=t&&i?B(s):void 0,M=g===C(n),u=F(n),c=I(M?n:g),f=c!==void 0?void 0:M?u:H(g,{today:$().day,time:t,...u?{base:u}:{},...s?{locale:s}:{}}),re=M?n:c!==void 0?c:f?P(f,{time:t,instant:i}):void 0,v=g.trim()==="",m=!v&&f===void 0&&c===void 0;(0,r.useEffect)(()=>{p.current?.setCustomValidity(m?`Not a date this reads \u2014 ${E}`:"")},[m]);let z=e=>{L(e),J(e)},oe=e=>{D(e);let a=I(e);if(a!==void 0)return z(a);let l=e.trim()===""?void 0:H(e,{today:$().day,time:t,...u?{base:u}:{},...s?{locale:s}:{}});z(l?P(l,{time:t,instant:i}):void 0)},ae=e=>{let a=t?{day:e,minutes:f?.minutes??u?.minutes??540}:{day:e},l=P(a,{time:t,instant:i});D(C(l)),z(l),w(!1),requestAnimationFrame(()=>{p.current?.focus(),p.current?.select()})},ie=v?`Type a date, or pick one \u2014 ${E}`:m?`Not a date this reads \u2014 ${E}`:c!==void 0?`${V(c,s)} (${c.length===4?"a year":"a month"} alone)`:f?`${_(f,t,s,!0)}${d?` ${d.short}`:""}`:"";return(0,o.jsxs)("span",{"data-graview-when":t?i?"instant":"moment":"day",style:{display:"inline-flex",flex:"1 1 14rem",flexWrap:"wrap",alignItems:"center",gap:"4px 6px",maxWidth:"100%",minWidth:0},onBlur:e=>{let a=e.relatedTarget;a&&e.currentTarget.contains(a)||!a&&typeof document<"u"&&!document.hasFocus()||(w(!1),Q?.(re))},children:[(0,o.jsx)("input",{ref:e=>{p.current=e,typeof W=="function"?W(e):W&&(W.current=e)},type:"text",name:x,required:h,autoFocus:G,"aria-label":y,"aria-describedby":`${k}-said`,"aria-invalid":m||void 0,autoComplete:"off",spellCheck:!1,enterKeyHint:"done",placeholder:t?"tomorrow 3pm":"17 Oct",value:g,"data-graview-part":"control",onChange:e=>oe(e.target.value),onKeyDown:e=>{e.key==="Escape"?(e.preventDefault(),X?.()):e.key==="ArrowDown"&&e.altKey&&(e.preventDefault(),w(!0))},style:{flex:"1 1 12ch",minWidth:"10ch",maxWidth:"100%",boxSizing:"border-box",font:"inherit",...Y}}),(0,o.jsx)("button",{ref:O,type:"button","aria-label":`Pick a date for ${y}`,"aria-expanded":R,"aria-controls":`${k}-month`,"data-graview-part":"when-pick",onClick:()=>w(e=>!e),onPointerEnter:()=>U.prefetch(),style:{display:"inline-flex",alignItems:"center",justifyContent:"center",minWidth:32,minHeight:32,padding:0,borderRadius:6},children:(0,o.jsxs)("svg",{"aria-hidden":"true",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.4",children:[(0,o.jsx)("rect",{x:"2",y:"3",width:"12",height:"11",rx:"1.5"}),(0,o.jsx)("path",{d:"M2 6.5h12M5.5 1.5v3M10.5 1.5v3"})]})}),(0,o.jsxs)("span",{id:`${k}-said`,"aria-live":"polite","data-graview-part":"when-said",...d?{"data-graview-zone":d.zone,title:`Times are in ${d.zone.replace(/_/g," ")} (${d.short})`}:{},style:{flexBasis:"100%",fontSize:"0.75rem",color:m?"var(--graview-bad)":"var(--graview-ink-faint)"},children:[ie,d&&!m&&!v?(0,o.jsx)("span",{"data-graview-part":"when-zone",children:` \xB7 ${(d.zone.split("/").at(-1)??d.zone).replace(/_/g," ")} time`}):null]}),R?(0,o.jsx)(r.Suspense,{fallback:null,children:(0,o.jsx)(U.Part,{id:`${k}-month`,label:y,selected:f?.day??u?.day,today:$().day,locale:s,onPick:ae,onClose:()=>{w(!1),O.current?.focus()}})}):null]})}export{me as WhenInput,_ as wallAsRead};
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{e as $,g as F,h as P,i as B,l as K,m as H}from"./chunk.REUMBCSV.js";import"./chunk.2KIWGQXC.js";import"./chunk.D5LOTCBU.js";import"./chunk.KZUMXT5J.js";import"./chunk.CGK2PY76.js";import{G as se,Ia as A,T as S}from"./chunk.CYTTZOYL.js";import{a as q}from"./chunk.SDO3U72B.js";import"./chunk.Q4MI53KK.js";import"./chunk.FQLNBIQ5.js";import{b as T}from"./chunk.AJZBJBMO.js";var r=T(se(),1);var j=T(S(),1),Z=A(q(()=>(__graviewPreload(import.meta.url,["./chunk.KZUMXT5J.js","./chunk.CGK2PY76.js","./chunk.CYTTZOYL.js","./chunk.SDO3U72B.js","./chunk.Q4MI53KK.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.XUXZW7DU.js")))),U={Part:Z.part((n,t)=>(0,j.jsx)(n.WhenMonth,{...t}),{quiet:!0}),prefetch:()=>Z.prefetch()};var o=T(S(),1),E="try \u201Ctomorrow 3pm\u201D, \u201CFri 10:30\u201D or \u201C17 Oct\u201D";function _(n,t,i,b=!1){let y=Date.UTC(+n.day.slice(0,4),+n.day.slice(5,7)-1,+n.day.slice(8,10),0,t?n.minutes??0:0),x={weekday:b?"long":"short",year:"numeric",month:b?"long":"short",day:"numeric",...t?{hour:"numeric",minute:"2-digit"}:{},timeZone:"UTC"},h;try{h=new Intl.DateTimeFormat(i??"en-US",x)}catch{h=new Intl.DateTimeFormat("en-US",x)}return h.format(y).replace(/ /g," ")}function V(n,t){if(n.length===4)return n;let i=Date.UTC(+n.slice(0,4),+n.slice(5,7)-1,1);try{return new Intl.DateTimeFormat(t??"en-US",{month:"long",year:"numeric",timeZone:"UTC"}).format(i)}catch{return new Intl.DateTimeFormat("en-US",{month:"long",year:"numeric",timeZone:"UTC"}).format(i)}}function me({value:n,time:t,instant:i=!1,partial:b=!1,label:y,name:x,required:h,autoFocus:G,autoSelect:N,locale:s,onChange:J,onLeave:Q,onCancel:X,inputRef:W,boxStyle:Y}){let k=(0,r.useId)(),p=(0,r.useRef)(null),O=(0,r.useRef)(null),I=e=>b&&!t&&e!==void 0?K(e):void 0,C=e=>{let a=I(e);if(a!==void 0)return V(a,s);let l=F(e);return l?_(l,t,s):e??""},[g,D]=(0,r.useState)(()=>C(n)),[R,w]=(0,r.useState)(!1),[ee,L]=(0,r.useState)(n),[ne,te]=(0,r.useState)(n);n!==ne&&(te(n),n!==ee&&(L(n),D(C(n)))),(0,r.useEffect)(()=>{N&&(p.current?.focus(),p.current?.select())},[N]);let d=t&&i?B(s):void 0,M=g===C(n),u=F(n),c=I(M?n:g),f=c!==void 0?void 0:M?u:H(g,{today:$().day,time:t,...u?{base:u}:{},...s?{locale:s}:{}}),re=M?n:c!==void 0?c:f?P(f,{time:t,instant:i}):void 0,v=g.trim()==="",m=!v&&f===void 0&&c===void 0;(0,r.useEffect)(()=>{p.current?.setCustomValidity(m?`Not a date this reads \u2014 ${E}`:"")},[m]);let z=e=>{L(e),J(e)},oe=e=>{D(e);let a=I(e);if(a!==void 0)return z(a);let l=e.trim()===""?void 0:H(e,{today:$().day,time:t,...u?{base:u}:{},...s?{locale:s}:{}});z(l?P(l,{time:t,instant:i}):void 0)},ae=e=>{let a=t?{day:e,minutes:f?.minutes??u?.minutes??540}:{day:e},l=P(a,{time:t,instant:i});D(C(l)),z(l),w(!1),requestAnimationFrame(()=>{p.current?.focus(),p.current?.select()})},ie=v?`Type a date, or pick one \u2014 ${E}`:m?`Not a date this reads \u2014 ${E}`:c!==void 0?`${V(c,s)} (${c.length===4?"a year":"a month"} alone)`:f?`${_(f,t,s,!0)}${d?` ${d.short}`:""}`:"";return(0,o.jsxs)("span",{"data-graview-when":t?i?"instant":"moment":"day",style:{display:"inline-flex",flex:"1 1 14rem",flexWrap:"wrap",alignItems:"center",gap:"4px 6px",maxWidth:"100%",minWidth:0},onBlur:e=>{let a=e.relatedTarget;a&&e.currentTarget.contains(a)||!a&&typeof document<"u"&&!document.hasFocus()||(w(!1),Q?.(re))},children:[(0,o.jsx)("input",{ref:e=>{p.current=e,typeof W=="function"?W(e):W&&(W.current=e)},type:"text",name:x,required:h,autoFocus:G,"aria-label":y,"aria-describedby":`${k}-said`,"aria-invalid":m||void 0,autoComplete:"off",spellCheck:!1,enterKeyHint:"done",placeholder:t?"tomorrow 3pm":"17 Oct",value:g,"data-graview-part":"control",onChange:e=>oe(e.target.value),onKeyDown:e=>{e.key==="Escape"?(e.preventDefault(),X?.()):e.key==="ArrowDown"&&e.altKey&&(e.preventDefault(),w(!0))},style:{flex:"1 1 12ch",minWidth:"10ch",maxWidth:"100%",boxSizing:"border-box",font:"inherit",...Y}}),(0,o.jsx)("button",{ref:O,type:"button","aria-label":`Pick a date for ${y}`,"aria-expanded":R,"aria-controls":`${k}-month`,"data-graview-part":"when-pick",onClick:()=>w(e=>!e),onPointerEnter:()=>U.prefetch(),style:{display:"inline-flex",alignItems:"center",justifyContent:"center",minWidth:32,minHeight:32,padding:0,borderRadius:6},children:(0,o.jsxs)("svg",{"aria-hidden":"true",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.4",children:[(0,o.jsx)("rect",{x:"2",y:"3",width:"12",height:"11",rx:"1.5"}),(0,o.jsx)("path",{d:"M2 6.5h12M5.5 1.5v3M10.5 1.5v3"})]})}),(0,o.jsxs)("span",{id:`${k}-said`,"aria-live":"polite","data-graview-part":"when-said",...d?{"data-graview-zone":d.zone,title:`Times are in ${d.zone.replace(/_/g," ")} (${d.short})`}:{},style:{flexBasis:"100%",fontSize:"0.75rem",color:m?"var(--graview-bad)":"var(--graview-ink-faint)"},children:[ie,d&&!m&&!v?(0,o.jsx)("span",{"data-graview-part":"when-zone",children:` \xB7 ${(d.zone.split("/").at(-1)??d.zone).replace(/_/g," ")} time`}):null]}),R?(0,o.jsx)(r.Suspense,{fallback:null,children:(0,o.jsx)(U.Part,{id:`${k}-month`,label:y,selected:f?.day??u?.day,today:$().day,locale:s,onPick:ae,onClose:()=>{w(!1),O.current?.focus()}})}):null]})}export{me as WhenInput,_ as wallAsRead};
@@ -1,4 +1,4 @@
1
- import{G as I}from"./chunk.M7RESZB6.js";import{Jc as $,Kc as k,Lc as y,Mc as _,Nc as O,Tc as x,dd as S,fd as T,id as E,jd as R}from"./chunk.DZZL5IDD.js";import{a as b}from"./chunk.AJZBJBMO.js";var N=b(l=>{"use strict";var V=I();function D(r){var e="https://react.dev/errors/"+r;if(1<arguments.length){e+="?args[]="+encodeURIComponent(arguments[1]);for(var a=2;a<arguments.length;a++)e+="&args[]="+encodeURIComponent(arguments[a])}return"Minified React error #"+r+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function d(){}var s={d:{f:d,r:function(){throw Error(D(522))},D:d,C:d,L:d,m:d,X:d,S:d,M:d},p:0,findDOMNode:null},j=Symbol.for("react.portal");function W(r,e,a){var t=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:j,key:t==null?null:""+t,children:r,containerInfo:e,implementation:a}}var u=V.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function h(r,e){if(r==="font")return"";if(typeof e=="string")return e==="use-credentials"?e:""}l.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=s;l.createPortal=function(r,e){var a=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)throw Error(D(299));return W(r,e,null,a)};l.flushSync=function(r){var e=u.T,a=s.p;try{if(u.T=null,s.p=2,r)return r()}finally{u.T=e,s.p=a,s.d.f()}};l.preconnect=function(r,e){typeof r=="string"&&(e?(e=e.crossOrigin,e=typeof e=="string"?e==="use-credentials"?e:"":void 0):e=null,s.d.C(r,e))};l.prefetchDNS=function(r){typeof r=="string"&&s.d.D(r)};l.preinit=function(r,e){if(typeof r=="string"&&e&&typeof e.as=="string"){var a=e.as,t=h(a,e.crossOrigin),n=typeof e.integrity=="string"?e.integrity:void 0,i=typeof e.fetchPriority=="string"?e.fetchPriority:void 0;a==="style"?s.d.S(r,typeof e.precedence=="string"?e.precedence:void 0,{crossOrigin:t,integrity:n,fetchPriority:i}):a==="script"&&s.d.X(r,{crossOrigin:t,integrity:n,fetchPriority:i,nonce:typeof e.nonce=="string"?e.nonce:void 0})}};l.preinitModule=function(r,e){if(typeof r=="string")if(typeof e=="object"&&e!==null){if(e.as==null||e.as==="script"){var a=h(e.as,e.crossOrigin);s.d.M(r,{crossOrigin:a,integrity:typeof e.integrity=="string"?e.integrity:void 0,nonce:typeof e.nonce=="string"?e.nonce:void 0})}}else e==null&&s.d.M(r)};l.preload=function(r,e){if(typeof r=="string"&&typeof e=="object"&&e!==null&&typeof e.as=="string"){var a=e.as,t=h(a,e.crossOrigin);s.d.L(r,a,{crossOrigin:t,integrity:typeof e.integrity=="string"?e.integrity:void 0,nonce:typeof e.nonce=="string"?e.nonce:void 0,type:typeof e.type=="string"?e.type:void 0,fetchPriority:typeof e.fetchPriority=="string"?e.fetchPriority:void 0,referrerPolicy:typeof e.referrerPolicy=="string"?e.referrerPolicy:void 0,imageSrcSet:typeof e.imageSrcSet=="string"?e.imageSrcSet:void 0,imageSizes:typeof e.imageSizes=="string"?e.imageSizes:void 0,media:typeof e.media=="string"?e.media:void 0})}};l.preloadModule=function(r,e){if(typeof r=="string")if(e){var a=h(e.as,e.crossOrigin);s.d.m(r,{as:typeof e.as=="string"&&e.as!=="script"?e.as:void 0,crossOrigin:a,integrity:typeof e.integrity=="string"?e.integrity:void 0})}else s.d.m(r)};l.requestFormReset=function(r){s.d.r(r)};l.unstable_batchedUpdates=function(r,e){return r(e)};l.useFormState=function(r,e,a){return u.H.useFormState(r,e,a)};l.useFormStatus=function(){return u.H.useHostTransitionStatus()};l.version="19.2.8"});var Y=b((J,P)=>{"use strict";function L(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(L)}catch(r){console.error(r)}}L(),P.exports=N()});var B={name:"Graview",typography:{body:y.body,mono:y.mono},schemes:k},A={ground:"--graview-ground",groundDeep:"--graview-ground-deep",wash:"--graview-wash",panel:"--graview-panel",panelMuted:"--graview-panel-muted",panelWarning:"--graview-panel-warning",edge:"--graview-edge",edgeBright:"--graview-edge-bright",ink:"--graview-ink",inkMuted:"--graview-ink-muted",inkFaint:"--graview-ink-faint",accent:"--graview-accent",accentDim:"--graview-accent-dim",accentInk:"--graview-accent-ink",warn:"--graview-warn",good:"--graview-good",bad:"--graview-bad",glow:"--graview-glow",bar:"--graview-bar",float:"--graview-float",liftLow:"--graview-lift-low",liftHigh:"--graview-lift-high",tintAlpha:"--graview-tint-alpha",tintLightness:"--graview-tint-lightness",gridAlpha:"--graview-grid-alpha"};function H(r){return Object.keys(A).map(e=>` ${A[e]}: ${r[e]};`).join(`
1
+ import{G as I}from"./chunk.CYTTZOYL.js";import{$c as x,Rc as $,Sc as k,Tc as y,Uc as _,Vc as O,ld as S,nd as T,qd as E,rd as R}from"./chunk.Q4MI53KK.js";import{a as b}from"./chunk.AJZBJBMO.js";var N=b(l=>{"use strict";var V=I();function D(r){var e="https://react.dev/errors/"+r;if(1<arguments.length){e+="?args[]="+encodeURIComponent(arguments[1]);for(var a=2;a<arguments.length;a++)e+="&args[]="+encodeURIComponent(arguments[a])}return"Minified React error #"+r+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function d(){}var s={d:{f:d,r:function(){throw Error(D(522))},D:d,C:d,L:d,m:d,X:d,S:d,M:d},p:0,findDOMNode:null},j=Symbol.for("react.portal");function W(r,e,a){var t=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:j,key:t==null?null:""+t,children:r,containerInfo:e,implementation:a}}var u=V.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function h(r,e){if(r==="font")return"";if(typeof e=="string")return e==="use-credentials"?e:""}l.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=s;l.createPortal=function(r,e){var a=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)throw Error(D(299));return W(r,e,null,a)};l.flushSync=function(r){var e=u.T,a=s.p;try{if(u.T=null,s.p=2,r)return r()}finally{u.T=e,s.p=a,s.d.f()}};l.preconnect=function(r,e){typeof r=="string"&&(e?(e=e.crossOrigin,e=typeof e=="string"?e==="use-credentials"?e:"":void 0):e=null,s.d.C(r,e))};l.prefetchDNS=function(r){typeof r=="string"&&s.d.D(r)};l.preinit=function(r,e){if(typeof r=="string"&&e&&typeof e.as=="string"){var a=e.as,t=h(a,e.crossOrigin),n=typeof e.integrity=="string"?e.integrity:void 0,i=typeof e.fetchPriority=="string"?e.fetchPriority:void 0;a==="style"?s.d.S(r,typeof e.precedence=="string"?e.precedence:void 0,{crossOrigin:t,integrity:n,fetchPriority:i}):a==="script"&&s.d.X(r,{crossOrigin:t,integrity:n,fetchPriority:i,nonce:typeof e.nonce=="string"?e.nonce:void 0})}};l.preinitModule=function(r,e){if(typeof r=="string")if(typeof e=="object"&&e!==null){if(e.as==null||e.as==="script"){var a=h(e.as,e.crossOrigin);s.d.M(r,{crossOrigin:a,integrity:typeof e.integrity=="string"?e.integrity:void 0,nonce:typeof e.nonce=="string"?e.nonce:void 0})}}else e==null&&s.d.M(r)};l.preload=function(r,e){if(typeof r=="string"&&typeof e=="object"&&e!==null&&typeof e.as=="string"){var a=e.as,t=h(a,e.crossOrigin);s.d.L(r,a,{crossOrigin:t,integrity:typeof e.integrity=="string"?e.integrity:void 0,nonce:typeof e.nonce=="string"?e.nonce:void 0,type:typeof e.type=="string"?e.type:void 0,fetchPriority:typeof e.fetchPriority=="string"?e.fetchPriority:void 0,referrerPolicy:typeof e.referrerPolicy=="string"?e.referrerPolicy:void 0,imageSrcSet:typeof e.imageSrcSet=="string"?e.imageSrcSet:void 0,imageSizes:typeof e.imageSizes=="string"?e.imageSizes:void 0,media:typeof e.media=="string"?e.media:void 0})}};l.preloadModule=function(r,e){if(typeof r=="string")if(e){var a=h(e.as,e.crossOrigin);s.d.m(r,{as:typeof e.as=="string"&&e.as!=="script"?e.as:void 0,crossOrigin:a,integrity:typeof e.integrity=="string"?e.integrity:void 0})}else s.d.m(r)};l.requestFormReset=function(r){s.d.r(r)};l.unstable_batchedUpdates=function(r,e){return r(e)};l.useFormState=function(r,e,a){return u.H.useFormState(r,e,a)};l.useFormStatus=function(){return u.H.useHostTransitionStatus()};l.version="19.2.8"});var Y=b((J,P)=>{"use strict";function L(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(L)}catch(r){console.error(r)}}L(),P.exports=N()});var B={name:"Graview",typography:{body:y.body,mono:y.mono},schemes:k},A={ground:"--graview-ground",groundDeep:"--graview-ground-deep",wash:"--graview-wash",panel:"--graview-panel",panelMuted:"--graview-panel-muted",panelWarning:"--graview-panel-warning",edge:"--graview-edge",edgeBright:"--graview-edge-bright",ink:"--graview-ink",inkMuted:"--graview-ink-muted",inkFaint:"--graview-ink-faint",accent:"--graview-accent",accentDim:"--graview-accent-dim",accentInk:"--graview-accent-ink",warn:"--graview-warn",good:"--graview-good",bad:"--graview-bad",glow:"--graview-glow",bar:"--graview-bar",float:"--graview-float",liftLow:"--graview-lift-low",liftHigh:"--graview-lift-high",tintAlpha:"--graview-tint-alpha",tintLightness:"--graview-tint-lightness",gridAlpha:"--graview-grid-alpha"};function H(r){return Object.keys(A).map(e=>` ${A[e]}: ${r[e]};`).join(`
2
2
  `)}function C(r,e){let a=r===e?r:`${r} ${e}`;return` ${a} [data-graview-view] { transition: none; }
3
3
  ${a} [data-graview-touched] > * { animation: none; }
4
4
  ${a} [data-graview-view][data-graview-wrote] > *,
@@ -1 +1 @@
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 t}from"./chunk.SDO3U72B.js";var d=t(()=>(__graviewPreload(import.meta.url,["./chunk.6JO5HQDR.js","./chunk.BBLIT7S7.js","./chunk.NJSK3UO2.js","./chunk.X6KYRBL6.js","./chunk.BZMQDEIY.js","./chunk.3L37FY3G.js","./chunk.FULEUL34.js","./chunk.B3WVCSW5.js","./chunk.L3WTKQQL.js","./chunk.QDWSU47A.js","./chunk.H5S7OL2U.js","./chunk.SDO3U72B.js","./chunk.DZZL5IDD.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.OFWNMTGB.js")));function v(i,r){let e=!1,n=()=>{window.removeEventListener("online",n),e||o()},o=()=>void i().then(m=>{e||r(m)},()=>{e||window.addEventListener("online",n)});return o(),()=>{e=!0,window.removeEventListener("online",n)}}export{d as a,v as b};
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 t}from"./chunk.SDO3U72B.js";var d=t(()=>(__graviewPreload(import.meta.url,["./chunk.HMMK7LCL.js","./chunk.BBLIT7S7.js","./chunk.NJSK3UO2.js","./chunk.WBS7ND2C.js","./chunk.NTC2H5ZX.js","./chunk.3L37FY3G.js","./chunk.XUO67YMT.js","./chunk.B3WVCSW5.js","./chunk.Q4GJIJAU.js","./chunk.MT5DXJKN.js","./chunk.JVDPRQ7J.js","./chunk.SDO3U72B.js","./chunk.Q4MI53KK.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.ZELWW7UA.js")));function v(i,r){let e=!1,n=()=>{window.removeEventListener("online",n),e||o()},o=()=>void i().then(m=>{e||r(m)},()=>{e||window.addEventListener("online",n)});return o(),()=>{e=!0,window.removeEventListener("online",n)}}export{d as a,v as b};
@@ -0,0 +1,25 @@
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 Ye}from"./chunk.SDO3U72B.js";import{Fd as uo,Id as co,N as to,Na as no,Pc as io,Ra as Mt,Ta as oo,Yd as po,db as ro,ge as fo,he as yo,ne as mo,qd as ao,re as go,te as Ue,ue as Ct,xd as so,zd as lo}from"./chunk.Q4MI53KK.js";import{a as $e,b as H}from"./chunk.AJZBJBMO.js";var _o=$e(S=>{"use strict";var Nt=Symbol.for("react.transitional.element"),li=Symbol.for("react.portal"),di=Symbol.for("react.fragment"),ui=Symbol.for("react.strict_mode"),ci=Symbol.for("react.profiler"),pi=Symbol.for("react.consumer"),fi=Symbol.for("react.context"),yi=Symbol.for("react.forward_ref"),mi=Symbol.for("react.suspense"),gi=Symbol.for("react.memo"),Mo=Symbol.for("react.lazy"),hi=Symbol.for("react.activity"),ko=Symbol.iterator;function wi(e){return e===null||typeof e!="object"?null:(e=ko&&e[ko]||e["@@iterator"],typeof e=="function"?e:null)}var Co={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Oo=Object.assign,Vo={};function we(e,t,n){this.props=e,this.context=t,this.refs=Vo,this.updater=n||Co}we.prototype.isReactComponent={};we.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};we.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Io(){}Io.prototype=we.prototype;function Wt(e,t,n){this.props=e,this.context=t,this.refs=Vo,this.updater=n||Co}var jt=Wt.prototype=new Io;jt.constructor=Wt;Oo(jt,we.prototype);jt.isPureReactComponent=!0;var Ao=Array.isArray;function Dt(){}var I={H:null,A:null,T:null,S:null},Lo=Object.prototype.hasOwnProperty;function Gt(e,t,n){var o=n.ref;return{$$typeof:Nt,type:e,key:t,ref:o!==void 0?o:null,props:n}}function Si(e,t){return Gt(e.type,t,e.props)}function Ft(e){return typeof e=="object"&&e!==null&&e.$$typeof===Nt}function vi(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var Ro=/\/+/g;function Ht(e,t){return typeof e=="object"&&e!==null&&e.key!=null?vi(""+e.key):t.toString(36)}function bi(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:switch(typeof e.status=="string"?e.then(Dt,Dt):(e.status="pending",e.then(function(t){e.status==="pending"&&(e.status="fulfilled",e.value=t)},function(t){e.status==="pending"&&(e.status="rejected",e.reason=t)})),e.status){case"fulfilled":return e.value;case"rejected":throw e.reason}}throw e}function he(e,t,n,o,r){var i=typeof e;(i==="undefined"||i==="boolean")&&(e=null);var a=!1;if(e===null)a=!0;else switch(i){case"bigint":case"string":case"number":a=!0;break;case"object":switch(e.$$typeof){case Nt:case li:a=!0;break;case Mo:return a=e._init,he(a(e._payload),t,n,o,r)}}if(a)return r=r(e),a=o===""?"."+Ht(e,0):o,Ao(r)?(n="",a!=null&&(n=a.replace(Ro,"$&/")+"/"),he(r,t,n,"",function(u){return u})):r!=null&&(Ft(r)&&(r=Si(r,n+(r.key==null||e&&e.key===r.key?"":(""+r.key).replace(Ro,"$&/")+"/")+a)),t.push(r)),1;a=0;var s=o===""?".":o+":";if(Ao(e))for(var l=0;l<e.length;l++)o=e[l],i=s+Ht(o,l),a+=he(o,t,n,i,r);else if(l=wi(e),typeof l=="function")for(e=l.call(e),l=0;!(o=e.next()).done;)o=o.value,i=s+Ht(o,l++),a+=he(o,t,n,i,r);else if(i==="object"){if(typeof e.then=="function")return he(bi(e),t,n,o,r);throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.")}return a}function ot(e,t,n){if(e==null)return e;var o=[],r=0;return he(e,o,"","",function(i){return t.call(n,i,r++)}),o}function xi(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var To=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof e=="object"&&e!==null&&typeof e.message=="string"?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},Pi={map:ot,forEach:function(e,t,n){ot(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return ot(e,function(){t++}),t},toArray:function(e){return ot(e,function(t){return t})||[]},only:function(e){if(!Ft(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};S.Activity=hi;S.Children=Pi;S.Component=we;S.Fragment=di;S.Profiler=ci;S.PureComponent=Wt;S.StrictMode=ui;S.Suspense=mi;S.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=I;S.__COMPILER_RUNTIME={__proto__:null,c:function(e){return I.H.useMemoCache(e)}};S.cache=function(e){return function(){return e.apply(null,arguments)}};S.cacheSignal=function(){return null};S.cloneElement=function(e,t,n){if(e==null)throw Error("The argument must be a React element, but you passed "+e+".");var o=Oo({},e.props),r=e.key;if(t!=null)for(i in t.key!==void 0&&(r=""+t.key),t)!Lo.call(t,i)||i==="key"||i==="__self"||i==="__source"||i==="ref"&&t.ref===void 0||(o[i]=t[i]);var i=arguments.length-2;if(i===1)o.children=n;else if(1<i){for(var a=Array(i),s=0;s<i;s++)a[s]=arguments[s+2];o.children=a}return Gt(e.type,r,o)};S.createContext=function(e){return e={$$typeof:fi,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:pi,_context:e},e};S.createElement=function(e,t,n){var o,r={},i=null;if(t!=null)for(o in t.key!==void 0&&(i=""+t.key),t)Lo.call(t,o)&&o!=="key"&&o!=="__self"&&o!=="__source"&&(r[o]=t[o]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var s=Array(a),l=0;l<a;l++)s[l]=arguments[l+2];r.children=s}if(e&&e.defaultProps)for(o in a=e.defaultProps,a)r[o]===void 0&&(r[o]=a[o]);return Gt(e,i,r)};S.createRef=function(){return{current:null}};S.forwardRef=function(e){return{$$typeof:yi,render:e}};S.isValidElement=Ft;S.lazy=function(e){return{$$typeof:Mo,_payload:{_status:-1,_result:e},_init:xi}};S.memo=function(e,t){return{$$typeof:gi,type:e,compare:t===void 0?null:t}};S.startTransition=function(e){var t=I.T,n={};I.T=n;try{var o=e(),r=I.S;r!==null&&r(n,o),typeof o=="object"&&o!==null&&typeof o.then=="function"&&o.then(Dt,To)}catch(i){To(i)}finally{t!==null&&n.types!==null&&(t.types=n.types),I.T=t}};S.unstable_useCacheRefresh=function(){return I.H.useCacheRefresh()};S.use=function(e){return I.H.use(e)};S.useActionState=function(e,t,n){return I.H.useActionState(e,t,n)};S.useCallback=function(e,t){return I.H.useCallback(e,t)};S.useContext=function(e){return I.H.useContext(e)};S.useDebugValue=function(){};S.useDeferredValue=function(e,t){return I.H.useDeferredValue(e,t)};S.useEffect=function(e,t){return I.H.useEffect(e,t)};S.useEffectEvent=function(e){return I.H.useEffectEvent(e)};S.useId=function(){return I.H.useId()};S.useImperativeHandle=function(e,t,n){return I.H.useImperativeHandle(e,t,n)};S.useInsertionEffect=function(e,t){return I.H.useInsertionEffect(e,t)};S.useLayoutEffect=function(e,t){return I.H.useLayoutEffect(e,t)};S.useMemo=function(e,t){return I.H.useMemo(e,t)};S.useOptimistic=function(e,t){return I.H.useOptimistic(e,t)};S.useReducer=function(e,t,n){return I.H.useReducer(e,t,n)};S.useRef=function(e){return I.H.useRef(e)};S.useState=function(e){return I.H.useState(e)};S.useSyncExternalStore=function(e,t,n){return I.H.useSyncExternalStore(e,t,n)};S.useTransition=function(){return I.H.useTransition()};S.version="19.2.8"});var W=$e((as,Ho)=>{"use strict";Ho.exports=_o()});var $o=$e(at=>{"use strict";var Ii=Symbol.for("react.transitional.element"),Li=Symbol.for("react.fragment");function zo(e,t,n){var o=null;if(n!==void 0&&(o=""+n),t.key!==void 0&&(o=""+t.key),"key"in t){n={};for(var r in t)r!=="key"&&(n[r]=t[r])}else n=t;return t=n.ref,{$$typeof:Ii,type:e,key:o,ref:t!==void 0?t:null,props:n}}at.Fragment=Li;at.jsx=zo;at.jsxs=zo});var _e=$e((gs,Uo)=>{"use strict";Uo.exports=$o()});var me={focusId:null,relation:null,expanded:[],pins:{}},Ze=e=>{let t=Number(e);return Number.isFinite(t)?t:null};function Q(e){let t=new URLSearchParams;e.focusId&&t.set("focus",e.focusId),e.relation&&t.set("relation",e.relation),e.overview&&t.set("overview","1"),e.zoom&&t.set("zoom","1"),e.past&&t.set("past","1"),e.shown&&e.shown.length>0&&t.set("show",[...e.shown].sort().join(",")),e.selection!==void 0&&e.selection.length>0&&t.set("sel",[...e.selection].sort().join(",")),e.expanded.length>0&&t.set("expand",[...e.expanded].sort().join(","));for(let o of Object.keys(e.pins).sort()){let r=e.pins[o];t.set(`pin.${o}`,`${Xe(r.x)},${Xe(r.y)}`)}e.pan&&(e.pan.x!==0||e.pan.y!==0)&&t.set("pan",`${Xe(e.pan.x)},${Xe(e.pan.y)}`);for(let o of Object.keys(e.within??{}).sort()){let r=e.within[o];r.length>0&&t.set(`in.${o}`,r)}e.q&&e.q.trim().length>0&&t.set("q",e.q);let n=t.toString();return n?`#${n}`:"#"}function ni(e){return e&&e.startsWith("agg:")?`aggregate:${e.slice(4)}`:e}function Je(e){let t=e.includes("#")?e.slice(e.indexOf("#")+1):e,n=new URLSearchParams(t),o=Object.create(null);for(let[m,y]of n){if(!m.startsWith("pin."))continue;let[g,b]=y.split(","),A=g===void 0?null:Ze(g),f=b===void 0?null:Ze(b);A===null||f===null||(o[m.slice(4)]={x:A,y:f})}let r=Object.create(null);for(let[m,y]of n)!m.startsWith("in.")||y.length===0||(r[m.slice(3)]=y);let i=n.get("view");i&&i.length>0&&r.view===void 0&&(r.view=i);let a=n.get("pan")?.split(",")??[],s=a[0]===void 0?null:Ze(a[0]),l=a[1]===void 0?null:Ze(a[1]),u=(n.get("sel")??"").split(",").filter(m=>m.length>0).sort(),c=n.get("overview")==="1";return{...u.length>0?{selection:u}:{},...c?{overview:!0}:{},...n.get("zoom")==="1"?{zoom:!0}:{},...n.get("past")==="1"?{past:!0}:{},...n.get("show")?{shown:[...new Set(n.get("show").split(",").filter(Boolean))].sort()}:{},...s!==null&&l!==null?{pan:{x:s,y:l}}:{},...Object.keys(r).length>0?{within:r}:{},...n.get("q")?.trim()?{q:n.get("q")}:{},focusId:ni(n.get("focus")),relation:n.get("relation"),expanded:(n.get("expand")??"").split(",").filter(m=>m.length>0&&(c||!m.startsWith("kind:"))).sort(),pins:o}}function Ka(e){let t=Je(e);return Q(t)==="#"?{...t,overview:!0}:t}function Ba(e){let t=Q(e);return t==="#overview=1"?"":t}function Xe(e){return Math.round(e*100)/100}function wo(e,t){return Q(e)===Q(t)}var ho="edge:";function So(e){if(!e.startsWith(ho))return null;let t=e.slice(ho.length).split(":");if(t.length!==3)return null;let[n,o,r]=t;if(!n||!o||!r)return null;try{return{kind:decodeURIComponent(n),from:decodeURIComponent(o),to:decodeURIComponent(r)}}catch{return null}}function Ot(e){let{pan:t,...n}=e;return{...n,pins:{}}}function q(e,t){if(t===e.focusId)return{...e,focusId:t};let n=Ot(e);return{...n.within?.q!==void 0?ee(n,"q",null):n,focusId:t}}function vo(e,t){return{...e,relation:t}}function ee(e,t,n){let o={...e.within??{}};if(n===null?delete o[t]:o[t]=n,Object.keys(o).length===0){let{within:r,...i}=e;return i}return{...e,within:o}}function de(e,t){if(t!==e.overview&&(e=Ot(e)),!t){let n=e.expanded.filter(o=>!o.startsWith("kind:"));return{...e,overview:!1,expanded:n}}return{...e,overview:t}}function Qe(e,t){if(t.length===0){let{selection:n,...o}=e;return o}return{...e,selection:[...t]}}function Ie(e,t){if(t!==(e.zoom===!0)&&(e=Ot(e)),!t){let{zoom:n,...o}=e;return o}return{...e,zoom:!0}}function et(e,t){let n=new Set(e.expanded);return n.has(t)?n.delete(t):n.add(t),{...e,expanded:[...n].sort()}}var nt="aggregate:",tt="kind:";function Vt(e){return`${tt}${e}`}function ge(e){return e.startsWith(tt)?e.slice(tt.length):null}var $a="kinds:beyond";function oi(e){let t=ge(e);return t?[t]:ue(e)}function te(...e){return`${nt}${[...e].sort().join("+")}`}function bo(e){return e.startsWith(nt)}function ue(e){return!bo(e)||e.includes("|")?[]:e.slice(nt.length).split("+").filter(Boolean)}function xo(e,t,n={}){let o=ge(t);if(o!==null&&e.overview&&n.ownPicture!==!0)return et(e,t);let r=o!==null?te(o):t;if(e.zoom&&e.focusId===r&&!(o!==null&&n.carry))return Ie(e,!1);if(o!==null&&n.carry){let i=de({...q(e,r),relation:null},!1);return ee(Ie(i,!0),"q",n.carry)}return Ie({...q(e,r),relation:null},!0)}function ri(e,t,n){return ee(de(q(e,te(t)),!1),"view",n)}function Ua(e,t){return e.id<t.id?-1:e.id>t.id?1:0}var Po="aggregate:";function It(e){return e.startsWith(Po)&&e.includes("|")}var Lt=e=>e?.off===!0,ii=e=>e!==void 0&&!Lt(e)&&(e.fast!==void 0||e.thinking!==void 0||e.answer!==void 0||e.decide!==void 0||e.complete!==void 0||e.turn!==void 0),Eo=e=>e!==void 0&&!Lt(e)&&(e.fast!==void 0||e.decide!==void 0),ai=e=>e?.suggestOnOpen!==!1&&Eo(e),si=e=>e?.hoverChips===!0&&Eo(e);var _t={};var Do=H(W(),1),Ei={turns:[],outcomes:new Map,busy:!1,pending:null,draft:null,draftNote:null},No=e=>`graview:seat:${e}`;function ki(e){if(!e)return{};try{let t=sessionStorage.getItem(e);if(!t)return{};let n=JSON.parse(t);return{...Array.isArray(n.turns)?{turns:n.turns}:{},...Array.isArray(n.outcomes)?{outcomes:new Map(n.outcomes)}:{},...n.draft?.drawn?{draft:n.draft}:{}}}catch{return{}}}function Ai(e,t){if(e)try{sessionStorage.setItem(e,JSON.stringify({turns:t.turns.slice(-40),outcomes:[...t.outcomes],draft:t.draft}))}catch{}}function Kt(e){let t=e===null?null:No(e),n={...Ei,...ki(t)},o=new Set,r=(i,a=!0)=>{n=i,a&&Ai(t,n);for(let s of[...o])s()};return{get:()=>n,subscribe(i){return o.add(i),()=>void o.delete(i)},setTurns:i=>r({...n,turns:i(n.turns)}),settle:(i,a)=>r({...n,outcomes:new Map(n.outcomes).set(i,a)}),setBusy:i=>r({...n,busy:i},!1),ask:i=>r({...n,pending:i.trim()||null}),takePending(){let i=n.pending;return i!==null&&r({...n,pending:null},!1),i},setDraft:(i,a=null)=>r({...n,draft:i,draftNote:a})}}function Ri(e){return(0,Do.useSyncExternalStore)(e.subscribe,e.get,e.get)}var jo=H(W(),1),Ti={entries:[],ghost:null,loaded:!1};function Wo(e,t){let n=new Map(e.map(o=>[o.id,o]));for(let o of t)n.set(o.id,{...n.get(o.id),...o});return[...n.values()].sort((o,r)=>o.at<r.at?1:o.at>r.at?-1:0)}function Bt(e){let t=Ti,n=new Set,o=r=>{t=r;for(let i of[...n])i()};return{get:()=>t,subscribe:r=>(n.add(r),()=>n.delete(r)),record:r=>{o({...t,entries:Wo(t.entries,[r])}),Promise.resolve(e()?.keep?.(r)).catch(i=>{console.warn("The host did not keep an AI interaction:",i)})},setGhost:r=>o({...t,ghost:r}),load:()=>{if(t.loaded)return;o({...t,loaded:!0});let r=e()?.load;r&&Promise.resolve(r()).then(i=>o({...t,entries:Wo(t.entries,i)})).catch(i=>{console.warn("The host's AI interactions could not be read:",i)})}}}function Mi(e){return(0,jo.useSyncExternalStore)(e.subscribe,e.get,e.get)}function Go(e){return e?.closest?.("[data-graview-pick]")?.getAttribute("data-graview-pick")??null}var rt=H(W(),1),it=(0,rt.createContext)(void 0),Ci=()=>(0,rt.useContext)(it);var E=H(W(),1),Le=(0,E.createContext)(null);function Ko(){return(0,E.useContext)(Le)}function Oi(e,t){let n=Ko(),o=(0,E.useMemo)(()=>n?n.live.seenBy(t):e,[n,e,t]),r=(0,E.useRef)(0),i=(0,E.useCallback)(a=>o.subscribe(()=>{r.current+=1,a()}),[o]);return(0,E.useSyncExternalStore)(i,()=>r.current,()=>0),o}var Bo=Ye(()=>(__graviewPreload(import.meta.url,["./chunk.YFVJUHAK.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.FC6AF6CC.js")));function qt(e){let[,t]=(0,E.useReducer)(o=>o+1,0),n=e.publishing?.mode==="on-publish"&&!so();return(0,E.useEffect)(()=>{n&&Bo().then(t,()=>{})},[n]),!n}var Fo,Vi=400;function zt(e,t,n){let o=(0,E.useContext)(Le),r=o!==null&&o.owns(e,t),[i,a]=(0,E.useState)(null),[s,l]=(0,E.useState)(Fo);(0,E.useEffect)(()=>{if(s||r||i===null)return;let P=!0;return Bo().then(T=>{Fo=T,P&&l(T)},()=>{}),()=>{P=!1}},[s,r,i]);let[u,c]=(0,E.useState)(0),[m,y]=(0,E.useMemo)(()=>r||i===null||!s?[]:[i>=e.log.length?void 0:s.askArchived(e,i,n)??s.askDeclaration(n,i),s.keptOf(e,n)],[r,e,i,n,s,u]),g=m&&"waiting"in m?m.waiting:void 0,b=m&&"seq"in m?m:null,[A,f]=(0,E.useState)(void 0);(0,E.useEffect)(()=>{if(!g)return;let P=!0,T=setTimeout(()=>P&&f(g),Vi);return g.then(()=>P&&c(_=>_+1)),()=>{P=!1,clearTimeout(T)}},[g]);let w=g!==void 0&&A!==g||b!==null,v=(0,E.useMemo)(()=>{if(r||i===null||i>=e.log.length||!s||w)return null;try{let P=s.pastAt(e,i,n);return{seq:i,at:P.past?.at,store:P}}catch{return null}},[r,e,i,n,s,w,u]),k=(0,E.useRef)(null),x=w?k.current:v;(0,E.useEffect)(()=>{k.current=x},[x]);let j=(0,E.useCallback)(P=>a(P===null?null:P>=e.log.length?Number.POSITIVE_INFINITY:P),[e]),G=(0,E.useCallback)((P,T)=>[e,x?.store].some(_=>_!==void 0&&(_===P||_.seenBy(T)===P)),[e,x]),D=i!==null,O=(0,E.useMemo)(()=>({past:x,open:D,show:j,live:e,host:n,owns:G,archive:b,kept:y}),[x,D,j,e,n,G,b,y]);return r?o:O}var qo=H(W(),1),$t=(0,qo.createContext)(null);var Yo=e=>`graview:setting:${e}`;function Zo(){return localStorage}function Xo(e,t){try{let n=(t??Zo()).getItem(Yo(e.name));if(n!==null&&e.options.some(o=>o.value===n))return n}catch{}return e.initial}function Jo(e,t,n){try{(n??Zo()).setItem(Yo(e.name),t)}catch{}}function Qo(e,t){if(typeof document>"u")return;let n=document.documentElement;if(e.honored==="root-font-size"){n.style.fontSize=t===e.initial?"":t;return}let o=`graview${e.name.replace(/-([a-z0-9])/g,(r,i)=>i.toUpperCase()).replace(/^[a-z]/,r=>r.toUpperCase())}`;t===e.initial?delete n.dataset[o]:n.dataset[o]=t}var L=H(W(),1);function Ut(e){return Ue(e)}var _i=12,Hi=4;function Di(e,t,n){let o=Ut(t);return e.get(o)??{participant:o,who:t.id??t.kind,at:null,mode:"docked",since:n,trail:[]}}var st=(e,t)=>t===null||e[e.length-1]===t?e:[...e,t].slice(-_i);function er(e,t){let n=e.filter(r=>r.length>0);if(n.length===0)return null;if(n.length<=Hi)return n[0];let o=new Set(n.map(r=>t(r)).filter(r=>r!==void 0));return o.size===1?Vt([...o][0]):n[0]}function Yt(e,t,n){let o=new Map(e);if(t.type==="rest"){for(let[a,s]of e)s.mode!=="asking"&&s.mode!=="docked"&&t.at-s.since>=t.holdMs&&o.set(a,{...s,mode:"docked",at:null,trail:[],say:void 0,confidence:void 0});return o}if(t.author.kind!=="agent")return o;let r=Di(e,t.author,t.at),i=a=>o.set(r.participant,{...r,...a,since:t.at});switch(t.type){case"read":{let a=er(t.ids,n);return i({at:a,mode:"reading",trail:st(r.trail,a)}),o}case"about-to-write":case"write":{let a=er(t.ids,n);return i({at:a,mode:"writing",trail:st(r.trail,a),say:void 0,confidence:void 0}),o}case"refused":return i({at:t.where,mode:"refused",say:t.say,confidence:void 0,trail:st(r.trail,t.where)}),o;case"asking":return i({at:t.where??r.at,mode:"asking",say:t.say,...t.confidence!==void 0?{confidence:t.confidence}:{confidence:void 0},trail:st(r.trail,t.where)}),o;case"said":return i({say:t.say,...t.confidence!==void 0?{confidence:t.confidence}:{confidence:void 0},...t.caption?{caption:t.caption}:{}}),o;case"over":return i({over:t.over}),o;case"home":return i({at:null,mode:"docked",trail:[],say:void 0,confidence:void 0,over:null}),o;default:return o}}var tr="graview:session";function nr(e){let t=()=>typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID().slice(0,8):Math.random().toString(36).slice(2,10);try{let n=e??sessionStorage,o=n.getItem(tr);if(o)return o;let r=t();return n.setItem(tr,r),r}catch{return t()}}var Zt={name:"share-where",title:"Where you are",description:"Whether the others here see which stop you are on.",honored:"root-attribute",options:[{value:"shared",label:"Shown"},{value:"private",label:"Hidden"}],initial:"shared"},Xt={name:"share-over",title:"What you point at",description:"Whether the others see the thing under your pointer, outlined in your color.",honored:"root-attribute",options:[{value:"private",label:"Kept to yourself"},{value:"shared",label:"Outlined for others"}],initial:"private"},or=[Zt,Xt],Ni=800;function rr(e){let{channel:t,store:n,view:o,principal:r,session:i,robots:a,seatWho:s,settingValues:l,setView:u,ttlMs:c=go,people:m,seats:y}=e,[g,b]=(0,L.useState)(()=>new Map),[A,f]=(0,L.useState)(null),[w,v]=(0,L.useState)(null),[k,x]=(0,L.useState)(null),j=typeof r.id=="string"&&r.id.length>0,G=j&&(l[Zt.name]??Zt.initial)==="shared",D=G&&(l[Xt.name]??Xt.initial)==="shared",O=Ut({kind:r.kind,...r.id?{id:r.id}:{},session:i}),P=j?ro(r,{graph:n.graph,schema:n.schema,...y?{seats:y}:{},...m?{people:m}:{}}):"",T=s?a.get(`agent:${s}:${i}`):void 0,_=(0,L.useMemo)(()=>!t||!G?null:{participant:O,kind:r.kind,name:P,...r.onBehalfOf?.id?{onBehalfOf:r.onBehalfOf.id,...r.onBehalfOf.name?{onBehalfOfName:r.onBehalfOf.name}:{}}:{},hue:io(r.id??"nobody"),stop:k??Q(o),...D?{over:A}:{},...T?{robot:{at:T.at,mode:T.mode}}:{},at:new Date().toISOString()},[t,G,D,O,P,r.id,r.kind,r.onBehalfOf?.id,r.onBehalfOf?.name,o,k,A,T?.at,T?.mode]),Ne=(0,L.useRef)(null),Ee=R=>R&&t?.here({...R,caret:Ne.current??void 0,at:new Date().toISOString()}),We=(0,L.useCallback)(R=>{Ne.current=R,Ee(_)},[t,_]);(0,L.useEffect)(()=>{if(!_)return;Ee(_);let R=setInterval(()=>Ee(_),Ni);return()=>clearInterval(R)},[t,_]),(0,L.useEffect)(()=>t?t.onWho(K=>b(Ct(new Map,K,Date.now(),c))):void 0,[t,c]);let ke=g.size>0;(0,L.useEffect)(()=>{if(!ke)return;let R=setInterval(()=>{b(K=>{let ae=Ct(K,[],Date.now(),c);return ae.size===K.size?K:ae})},Math.max(250,Math.min(1e3,c/4)));return()=>clearInterval(R)},[ke,c]),(0,L.useEffect)(()=>{if(!t||typeof window>"u")return;let R=()=>t.leave();return window.addEventListener("pagehide",R),()=>window.removeEventListener("pagehide",R)},[t]),(0,L.useEffect)(()=>{if(!D||typeof document>"u")return;let R=null,K=ae=>{let pe=Go(ae.target);pe!==R&&(R=pe,f(pe))};return document.addEventListener("pointermove",K,{passive:!0}),()=>document.removeEventListener("pointermove",K)},[D]);let re=(0,L.useRef)(null),Z=w?g.get(w)??null:null,je=(0,L.useCallback)(R=>{re.current=null,v(R)},[]);(0,L.useEffect)(()=>{if(w){if(!Z){v(null);return}Z.stop!==re.current?.stop&&(re.current={stop:Z.stop,at:Date.now()},u(Je(Z.stop)))}},[w,Z,u]),(0,L.useEffect)(()=>{let R=re.current;!w||R===null||Date.now()-R.at<400||wo(o,Je(R.stop))||v(null)},[o,w]),(0,L.useEffect)(()=>{if(!w||typeof document>"u")return;let R=K=>{K.key==="Escape"&&v(null)};return document.addEventListener("keydown",R),()=>document.removeEventListener("keydown",R)},[w]);let X=_!==null,ie=(0,L.useMemo)(()=>X?{participant:O,name:P}:null,[X,O,P]);return(0,L.useMemo)(()=>({who:g,sharing:ie,following:Z,follow:je,sayWhere:x,sayCaret:We}),[g,ie,Z,je,We])}var U=H(W(),1);function ir(e){return Ue(e.author)}function Wi(e,t){return e.length>1?"co-edited":t==="rule"?"rule":t==="agent"?"autonomous":"directed"}function ar(e,t,n,o,r){let i=new Map;for(let[l,u]of e)o-u.at<r&&i.set(l,u);let a=new Set(n.flatMap(l=>l.nodeIds)),s=(l,u,c)=>{let m=i.get(l),y=m?.participants.includes(ir(u))?m.participants:[...m?.participants??[],ir(u)];i.set(l,{at:o,manner:Wi(y,u.author.kind),intent:u.intent,wrote:(m?.wrote??!1)||(c.wrote??!1),read:(m?.read??!1)||(c.read??!1),broke:(m?.broke??!1)||a.has(l),participants:y})};for(let l of t){for(let u of l.writes)s(u,l,{wrote:!0});for(let u of l.reads)l.writes.includes(u)||s(u,l,{read:!0})}for(let l of n)for(let u of l.nodeIds){let c=i.get(u);i.set(u,{at:o,manner:c?.manner??"rule",intent:c?.intent??l.message,wrote:c?.wrote??!1,read:c?.read??!1,broke:!0,participants:c?.participants??["rule::"]})}return i}var ji=2600;function sr(e,t=ji){let[n,o]=(0,U.useState)(()=>new Map),r=(0,U.useRef)(n);r.current=n;let i=(0,U.useRef)(null),a=(0,U.useCallback)(l=>{r.current=l,o(l),i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{r.current=new Map,o(new Map)},t)},[t]);(0,U.useEffect)(()=>{let l=e.violations(),u=e.subscribe((c,m)=>{let y=e.violations(),g=co(e.allInvariants(),l,y).introduces;l=y,a(ar(r.current,m,g.map(b=>({nodeIds:b.nodeIds,message:b.message})),Date.now(),t))});return()=>{u(),i.current&&clearTimeout(i.current)}},[e,t,a]);let s=(0,U.useCallback)(l=>{l.reads.length!==0&&a(ar(r.current,[Gi(l)],[],Date.now(),t))},[t,a]);return{activity:n,noteAttention:s}}function Gi(e){return{id:`attention:${e.intent}`,seq:-1,batch:"attention",author:e.author,intent:e.intent,mutation:null,primitives:[],reads:e.reads,writes:[],at:new Date().toISOString()}}var d=H(W(),1);function lr(){let e=null,t=new Set,n=new Set,o=r=>{for(let i of n)i(r)};return{subscribe(r){return t.add(r),t.size===1&&o(!0),()=>{t.delete(r),t.size===0&&(e=null,o(!1))}},snapshot:()=>e,set(r){if(!(e===r||e&&r&&e.x===r.x&&e.y===r.y)){e=r;for(let i of t)i()}},get listeners(){return t.size},onActive(r){return n.add(r),()=>void n.delete(r)}}}var lt=H(W(),1),Fi=e=>e.definitions.some(t=>no(t).size>0);function dr(e,t,n){let[o,r]=(0,lt.useState)(void 0),i=(n.roles??[]).join("\0"),a=n.onBehalfOf?JSON.stringify(n.onBehalfOf):"";return(0,lt.useEffect)(()=>{if(!t||!Fi(e.schema)){r(void 0);return}let s=!0,l=!1,u=e.graph,c=()=>{l||(l=!0,queueMicrotask(()=>{l=!1,s&&e.reread()}))},m=oo(t,{kind:n.kind,...n.id===void 0?{}:{id:n.id},...n.roles?{roles:n.roles}:{},...n.onBehalfOf?{onBehalfOf:n.onBehalfOf}:{}},c);return Mt(u,m.read),r(m),e.reread(),()=>{s=!1,Mt(u,void 0)}},[e,t,n.kind,n.id,i,a]),o}function ur(){let e=!1,t=new Set;return{moving:()=>e,set(n){if(n!==e){e=n;for(let o of t)o()}},subscribe(n){return t.add(n),()=>t.delete(n)}}}var ne=H(_e(),1),Ki="graview:place-menu",He=(0,d.createContext)(null),yr=(0,d.createContext)("scene");function Bi({mode:e,children:t}){return(0,ne.jsx)(yr.Provider,{value:e,children:t})}function qi(){return(0,d.useContext)(yr)}var mr={kind:"human"},zi=[],$i=[],Ui=[],Jt=[];function gr(e,t){let n=(0,d.useId)();(0,d.useEffect)(()=>{if(!globalThis.__graviewWatch)return;let o=t??mr,r=()=>uo(e,o,n);r();let i,a=e.subscribe(()=>{clearTimeout(i),i=setTimeout(r,250)});return()=>{clearTimeout(i),a(),globalThis.__graviewWatch?.unseen?.({words:[],from:n,gone:!0})}},[e,t,n])}var Yi=()=>{try{return typeof location<"u"&&new URLSearchParams(location.search).get("as")==="published"?"published":void 0}catch{return}},Zi={off:!0};function Xi({store:e,views:t,initialView:n,scheme:o="dark",initialSelection:r,principal:i,as:a,seats:s=zi,onSeat:l,people:u=$i,memory:c,presenceTtlMs:m,app:y,settings:g=y?.settings??Ui,presence:b,typing:A,brand:f,locale:w,timeZone:v,onKeepLens:k,onProposeChange:x,providers:j,ai:G,files:D,resolveApp:O,history:P,linkedRecords:T,menuSections:_,keptViews:Ne,onExport:Ee,subscriptions:We,dismissals:ke,whileAway:re,workflowRuns:Z,signIn:je,view:X,onViewChange:ie,children:R}){let K=(0,d.useContext)(He),ae=_??K?.menuSections,pe=je??K?.signIn,St=Z??K?.workflowRuns,vt=Ne??K?.keptViews,bt=Ee??K?.onExport,[Fr,Kr]=(0,d.useState)(null),fe=Fr??i??s[0]?.principal??mr,Ge=zt(e,fe,P),hn=Ge.past&&Ge.live===e?Ge.past.store:e,xt=a??Yi(),Pt=!qt(e),N=(0,d.useMemo)(()=>Pt?e:hn.seenBy(fe,xt?{as:xt}:void 0),[Pt,e,hn,fe,xt]);gr(e,fe);let[se]=(0,d.useState)(()=>nr(c)),[wn,Br]=(0,d.useState)(!1),Sn=(0,d.useCallback)(()=>Br(!0),[]),le=(0,d.useMemo)(()=>b?[...g,...or]:g,[g,b]),[Et]=(0,d.useState)(()=>n??nn(t,e.schema)),[qr,vn]=(0,d.useState)(()=>Qe(Et??me,r??Et?.selection??[])),Ae=(0,d.useRef)(Et??me).current,[bn,zr]=(0,d.useState)(null),[xn,$r]=(0,d.useState)(null),z=(0,d.useContext)(He),[Pn]=(0,d.useState)(()=>z?.seatTalk??Kt(f?.name??e.schema.kinds.join(","))),kt=G??z?.ai??_t,Fe=(0,d.useMemo)(()=>kt.off?Zi:kt,[kt]),En=(0,d.useRef)(Fe.interactions);En.current=Fe.interactions;let[kn]=(0,d.useState)(()=>z?.aiDesk??Bt(()=>En.current)),[Ur]=(0,d.useState)(()=>z?.subscriptions??lo()),An=We??z?.subscriptions??Ur,At=k??z?.onKeepLens,Rn=x??z?.onProposeChange,Ke=y??z?.app,Be=w??z?.locale,Yr=f?.locale??Ke?.brand?.locale,qe=v??z?.timeZone;to({reader:Be,app:Yr,readerTimeZone:qe,appTimeZone:f?.timeZone??Ke?.brand?.timeZone});let Tn=(0,d.useRef)(null),Mn=(0,d.useCallback)(p=>{Tn.current=p},[]),Cn=(0,d.useCallback)(p=>Tn.current?.whereIs(p)??null,[]),[On]=(0,d.useState)(()=>lr()),[Vn]=(0,d.useState)(()=>ur()),[Rt,Zr]=(0,d.useState)(null),[Re,In]=(0,d.useState)(()=>new Map),Te=(0,d.useRef)(Re);Te.current=Re;let Me=(0,d.useRef)(null),Tt=(0,d.useCallback)(p=>N.graph.getNode(p)?.kind,[N]),J=(0,d.useCallback)(p=>{let h=Yt(Te.current,p,Tt);Te.current=h,In(h),Me.current&&clearTimeout(Me.current),[...h.values()].some(V=>V.mode!=="docked"&&V.mode!=="asking")&&(Me.current=setTimeout(()=>{let V=Yt(Te.current,{type:"rest",at:Date.now(),holdMs:tn},Tt);Te.current=V,In(V)},tn+20))},[Tt]),Ln=(0,d.useCallback)(p=>J({...p,at:p.at??Date.now()}),[J]),_n=(0,d.useCallback)(p=>{Zr(p),p&&J({type:"home",author:{kind:"agent",id:p,session:se},at:Date.now()})},[J,se]);(0,d.useEffect)(()=>N.subscribe((p,h)=>{for(let M of h)M.author.kind==="agent"&&J({type:"write",author:M.author,ids:M.writes,at:Date.now()})}),[N,J]),(0,d.useEffect)(()=>()=>{Me.current&&clearTimeout(Me.current)},[]);let $=(0,d.useMemo)(()=>({...fe,session:se}),[fe,se]),Hn=dr(N,T,$),Dn=(0,d.useCallback)(p=>{Kr(p),l?.(p)},[l]),[Ce,Xr]=(0,d.useState)(()=>Object.fromEntries(le.map(p=>[p.name,Xo(p,c)])));(0,d.useEffect)(()=>{for(let p of le)Qo(p,Ce[p.name]??p.initial)},[le,Ce]);let Nn=(0,d.useCallback)((p,h)=>{let M=le.find(V=>V.name===p);!M||!M.options.some(V=>V.value===h)||(Jo(M,h,c),Xr(V=>({...V,[p]:h})))},[le,c]),[Wn,Jr]=(0,d.useState)(null),{activity:jn,noteAttention:Gn}=sr(N),Fn=(0,d.useCallback)(p=>{Gn(p),J({type:"read",author:p.author,ids:p.reads,at:Date.now()})},[Gn,J]),ye=(0,d.useCallback)(p=>{if(ge(p)!==null||ue(p).length>0||It(p))return!0;let h=So(p);return h?N.graph.allEdges().some(M=>M.kind===h.kind&&M.from===h.from&&M.to===h.to):N.graph.getNode(p)!==void 0},[N]),Kn=(0,d.useCallback)(p=>{let h=p.selection??Jt,M=h.filter(ye),V=M.length===h.length?p:Qe(p,M);return V.focusId!==null&&!ye(V.focusId)&&(V=q(V,null)),V},[ye]),Oe=(0,d.useCallback)(p=>{let h=Kn(p),M=fr(N,$,h.shown);if(h.focusId!==null&&M.size>0){let V=ue(h.focusId),eo=N.graph.getNode(h.focusId);(V.length>0?V.every(ti=>M.has(ti)):eo?M.has(eo.kind):!1)&&(h={...h,focusId:null})}if(!h.overview&&h.focusId===null){let V=Ae.focusId!==null&&!ye(Ae.focusId)?nn(t,e.schema)??{...me,overview:!0}:Ae;V.focusId!==null&&ye(V.focusId)?h={...h,focusId:V.focusId}:V.overview===!0&&(h={...h,overview:!0})}return h},[Kn,ye,N,Ae,$,t,e.schema]),B=Oe(X??qr),Bn=(0,d.useMemo)(()=>fr(N,$,B.shown),[N,$,B.shown]),qn=(0,d.useMemo)(()=>[...N.modules.administered.entries()].map(([p,h])=>{let M=N.mayAdminister(p,$);return{name:p,...h.description?{description:h.description}:{},kinds:h.kinds??[],canShow:M,shown:M&&(B.shown??[]).includes(p)}}),[N,$,B.shown]),Ve=(0,d.useCallback)(p=>{let h=M=>Oe(typeof p=="function"?p(M):p);if(X!==void 0){ie?.(h(X));return}ie&&ie(h(B)),vn(M=>h(M))},[B,ie,X,Oe]);(0,d.useEffect)(()=>{X===void 0&&vn(p=>{let h=Oe(p);return h===p?p:h})},[B,X,Oe]);let zn=B.selection??Jt,$n=(0,d.useCallback)(p=>{Ve(h=>Qe(h,typeof p=="function"?p(h.selection??Jt):p))},[Ve]),{who:ze,following:Un,follow:Yn,sayWhere:Qr,sayCaret:Zn,sharing:Xn}=rr({channel:b,store:N,view:B,principal:$,session:se,robots:Re,seatWho:Rt,settingValues:Ce,setView:Ve,seats:s,people:u,...m!==void 0?{ttlMs:m}:{}}),ei=(0,d.useMemo)(()=>({store:N,scheme:o,views:t,view:B,setView:Ve,homeView:Ae,selection:zn,setSelection:$n,menuAt:bn,setMenuAt:zr,whereIs:Cn,pointer:On,motion:Vn,registerScene:Mn,robots:Re,noteSeat:Ln,seatWho:Rt,registerSeatWho:_n,actsDoor:xn,registerActsDoor:$r,seatTalk:Pn,aiDesk:kn,...c?{memory:c}:{},who:ze,following:Un,follow:Yn,sayWhere:Qr,sharing:Xn,session:se,ai:Fe,resolveApp:O,linkedRecords:T,menuSections:ae,...vt?{keptViews:vt}:{},...bt?{onExport:bt}:{},subscriptions:An,dismissals:ke,whileAway:re,...St?{workflowRuns:St}:{},signIn:pe,linkedReads:Hn,movedByHand:wn,noteMoved:Sn,emphasis:Wn,setEmphasis:Jr,activity:jn,noteAttention:Fn,principal:$,seats:s,people:u,takeSeat:Dn,settings:le,settingValues:Ce,chooseSetting:Nn,hiddenKinds:Bn,administered:qn,...j?{providers:j}:{},...f?{brand:f}:{},...At?{onKeepLens:At}:{},...Rn?{onProposeChange:Rn}:{},app:Ke,...Be?{locale:Be}:{},...qe?{timeZone:qe}:{}}),[N,o,t,B,Ve,zn,$n,bn,Cn,On,Vn,Mn,Re,Ln,Rt,_n,xn,Pn,kn,c,ze,Un,Yn,Xn,se,Fe,O,T,ae,vt,bt,An,ke,re,St,pe,Hn,wn,Sn,Wn,jn,Fn,$,s,u,Dn,le,Ce,Nn,Bn,qn,j,f,At,Ke,Be,qe]),Jn=(0,d.useMemo)(()=>A?{typing:A,sayCaret:Zn,who:ze}:null,[A,Zn,ze]),Qn=D?(0,ne.jsx)(it.Provider,{value:D,children:R}):R;return(0,ne.jsx)(He.Provider,{value:ei,children:(0,ne.jsx)(Le.Provider,{value:Ge,children:(0,ne.jsx)(na,{children:Pt?null:Jn?(0,ne.jsx)($t.Provider,{value:Jn,children:Qn}):Qn})})})}var hr=(0,d.createContext)(null),Qt,en=new Set,Ji=e=>(en.add(e),()=>void en.delete(e)),cr=()=>Qt;function Qi(e){if(!Qt){Qt=e;for(let t of[...en])t()}}var ea=300;function ta(e){let t=0;return async(n,o)=>{let r=++t;return await new Promise(i=>setTimeout(i,ea)),r===t?e(n,o):[]}}function na({children:e}){let{store:t,view:n,views:o,principal:r,hiddenKinds:i,selection:a,ai:s}=oe(),l=dt(),u=n.q,c=n.focusId,m=!!(u&&u.trim().length>0),y=(0,d.useSyncExternalStore)(Ji,cr,cr),g=(0,d.useMemo)(()=>m&&y?{flagged:new Set(t.violations().flatMap(k=>k.nodeIds)),touched:y.touchWeights(t.log.all())}:null,[t,l,m,y]),b=c?t.graph.getNode(c)?.kind??ge(c)??(ue(c).length===1?ue(c)[0]:void 0):void 0,A=(0,d.useMemo)(()=>s.near&&ta(s.near),[s.near]),f=(0,d.useMemo)(()=>!u||!g||!y?null:y.search(t,u,{...b?{inKind:b}:{},principal:r,places:o.places(),kinds:t.schema.kinds.filter(k=>!i.has(k)),from:[...a,...c&&t.graph.has(c)?[c]:[]],flagged:g.flagged,touched:g.touched,limit:200,rank:A}),[t,u,r,o,i,a,c,b,g,A]),[w,v]=(0,d.useState)();return(0,d.useEffect)(()=>void f?.later?.then(k=>v([f,k])),[f]),(0,ne.jsx)(hr.Provider,{value:w?.[0]===f?w[1]:f,children:e})}var pr=new WeakMap;function $s(e){let t=pr.get(e);return t||pr.set(e,t=new Set(e.matched)),t}function oa(){return(0,d.useContext)(hr)}function oe(){let e=(0,d.useContext)(He);if(!e)throw new Error("useGraview must be used inside a <GraviewProvider>.");return e}function on(){return(0,d.useContext)(He)??null}function dt(){let{store:e}=oe(),t=(0,d.useRef)(null),n=(0,d.useRef)(null),o=(0,d.useCallback)(()=>(n.current!==e&&(n.current=e,t.current=null),t.current??=e.graph.allNodes(),t.current),[e]),r=(0,d.useCallback)(i=>e.subscribe(()=>{t.current=null,i()}),[e]);return(0,d.useSyncExternalStore)(r,o,o)}function ra(e){let{store:t}=oe(),n=(0,d.useCallback)(r=>t.subscribe(r),[t]),o=(0,d.useCallback)(()=>e===null?void 0:t.graph.getNode(e),[t,e]);return(0,d.useSyncExternalStore)(n,o,o)}function fr(e,t,n){let o=new Set(e.modules.disabledKinds);for(let r of e.kindsKeptFrom(t))o.add(r);for(let[r,i]of e.modules.administered)if(!(e.mayAdminister(r,t)&&(n??[]).includes(r)))for(let a of i.kinds??[])o.add(a);return o}var tn=2600;var wr=new WeakSet,ia=e=>wr.has(e),aa=e=>void wr.add(e);function nn(e,t){let n=mo(e.arrangement?.()?.first,t,e.places());if(!(!n||n.to==="home"))return n.to==="place"?{...me,focusId:te(n.place.kind),within:{view:n.place.as}}:{...me,focusId:te(n.kind)}}var ce=H(W(),1);var rn=H(W(),1),sa=(0,rn.createContext)(null),an=(0,rn.createContext)(null);var Sr=(0,ce.createContext)(null);function la(){let e=(0,ce.useContext)(Sr),t=on(),n=(0,ce.useContext)(an),o=(i,a,s)=>t?.setView(l=>ee(ee(de(q(l,te(i)),!1),"view",a),"filter",s?.filter??null)),r=()=>t?.setView(i=>ee(de(i,!0),"view",null));return(0,ce.useMemo)(()=>e??{record:i=>{t&&(t.setView(a=>q(de(a,!1),i)),t.setSelection([i]))},place:(i,a)=>{if(i===yo)return r();if(i===fo)return n?n.open("/"):r();let s=t?.views.places().find(l=>l.as===i);s&&o(s.kind,s.as,a)},list:(i,a)=>o(i,null,a)},[e,t,n])}var vr=H(W(),1),da=(0,vr.createContext)(!1);var ut=Symbol.for("graview.default-view");function br(e){return Object.defineProperty(e,ut,{value:!0,enumerable:!1}),e}function xr(e){return typeof e=="function"&&e[ut]===!0}var ct=Symbol.for("graview.replaces-page");function Pr(e){return Object.defineProperty(e,ct,{value:!0,enumerable:!1}),e}function Er(e){return typeof e=="function"&&e[ct]===!0}var pt=Symbol.for("graview.bleeds");function kr(e){return Object.defineProperty(e,pt,{value:!0,enumerable:!1}),e}function Ar(e){return typeof e=="function"&&e[pt]===!0}var ft=Symbol.for("graview.previews");function Rr(e,t={}){return Object.defineProperty(e,ft,{value:t,enumerable:!1}),e}function Tr(e){return typeof e=="function"?e[ft]:void 0}function ua(e){return po(e)}function ca(e,t){if(t===e)return e;for(let r of t.registrations())e.register(r.kind,r,r.view,r);let n=t.arrangement?.();n&&e.arrange?.(n);let o=t.homes?.()??[];if(o.length>0)for(let r of o)e.home?.(r.view,r.name!==void 0?{name:r.name}:void 0);else{let r=t.homeView?.();r&&e.home?.(r)}return e}var C=H(W(),1),Y=H(_e(),1),sn=new Set,yt=0;function ln(e){return()=>{yt+=1;let t=e();return t.then(()=>void(yt-=1),()=>void(yt-=1)),t}}var pa=()=>yt,gt=(0,C.createContext)(null);function fa(){return{waiting:new Map,at:0}}function ya(e){for(let[t,n]of e.waiting)n<e.at&&e.waiting.delete(t);e.at+=1}var ma=e=>e?.waiting.size??0;function Or(e,t){e?.waiting.set(t,e.at)}function Vr(e){let t=(0,C.useContext)(gt);(0,C.useLayoutEffect)(()=>{t?.waiting.delete(e)},[t,e])}function ga(e){let t={},n=!1,o=new Set,r=(0,C.lazy)(ln(()=>e().then(a=>{n=!0;let s=a.default;function l(u){return Vr(t),(0,C.createElement)(s,u)}return{default:l}},a=>{for(let s of o)s.waiting.delete(t);throw a})));function i(a){let s=(0,C.useContext)(gt);return!n&&s&&(o.add(s),Or(s,t)),(0,C.createElement)(r,a)}return i}var Ir=!1,Lr=!1,mt=new Set;function ha(){Ir=!0}function wa(){Lr=!0;for(let e of[...mt])e();mt.clear()}var _r=()=>Lr||!Ir;function Sa(e){return _r()?(e(),()=>{}):(mt.add(e),()=>void mt.delete(e))}var Mr=!1;function dn(){for(let e of[...sn])e()}function va(){Mr||typeof window>"u"||(Mr=!0,window.addEventListener("online",dn))}function un(e){let t,n=!1,o=!1,r,i=0,a=new Set,s=()=>{i+=1;for(let y of[...a])y()},l=y=>(a.add(y),()=>void a.delete(y)),u=()=>i,c=()=>void m().catch(()=>{});function m(){if(n)return Promise.resolve(t);if(r)return r;let y=e().then(g=>(t=g,n=!0,o=!1,r=void 0,sn.delete(c),s(),g),g=>{throw r=void 0,o=!0,sn.add(c),va(),s(),g});return y.catch(()=>{}),r=y,y}return{load:m,prefetch:c,get current(){return t},get failed(){return o},part(y,g={}){let b=g.what??"This part",A={};function f(k){(0,C.useSyncExternalStore)(l,u,u),Vr(A);let x=(0,C.useRef)(null),j=(0,C.useRef)(null),G=(0,C.useRef)(!1);return(0,C.useEffect)(()=>{o&&r===void 0&&c()},[]),n&&typeof document<"u"&&x.current!==null&&document.activeElement===x.current&&(G.current=!0),(0,C.useLayoutEffect)(()=>{if(!(!n||!G.current)){G.current=!1;for(let D=j.current?.nextElementSibling??null;D!==null;D=D.nextElementSibling){let O=D.matches(Cr)?D:D.querySelector(Cr);if(O instanceof HTMLElement){O.focus();return}}}}),n?(0,Y.jsxs)(Y.Fragment,{children:[G.current?(0,Y.jsx)("span",{ref:j,hidden:!0}):null,y(t,k)]}):g.quiet?null:(0,Y.jsx)(ba,{what:b,button:x,...g.as?{as:g.as}:{}})}let w=(0,C.lazy)(ln(()=>m().then(()=>({default:f}),()=>({default:f}))));function v(k){let x=(0,C.useContext)(gt),[j]=(0,C.useState)(()=>n||o);return!n&&!o&&Or(x,A),(0,C.createElement)(j?f:w,k)}return v}}}var Cr="button,a[href],input,select,textarea,[tabindex]:not([tabindex='-1'])";function ba({what:e,button:t,as:n="p"}){let r=typeof navigator<"u"&&navigator.onLine===!1?`${e} will load when you're back online.`:`${e} didn't load.`;return(0,Y.jsxs)(n,{"data-testid":"lazy-part-missing",style:{margin:0,fontSize:"0.875rem",color:"var(--graview-ink-muted)"},children:[(0,Y.jsx)("span",{role:"status",children:r})," ",(0,Y.jsx)("button",{ref:t,type:"button","data-testid":"lazy-part-retry",onClick:dn,style:{font:"inherit",fontWeight:600,color:"var(--graview-ink)",background:"none",border:"1px solid var(--graview-edge)",borderRadius:6,padding:"2px 10px"},children:"Try again"})]})}var ve=H(W(),1);function xa(){let{selection:e,setSelection:t}=oe();return(0,ve.useMemo)(()=>({selection:e,set:n=>t(n),clear:()=>t([]),toggle:n=>t(o=>o.includes(n)?o.filter(r=>r!==n):[...o,n]),isSelected:n=>e.includes(n)}),[e,t])}function Pa(){let{store:e}=oe(),t=dt();return(0,ve.useMemo)(()=>Ea(e),[e,t])}var Hr=new WeakMap;function Ea(e){let t=Hr.get(e);if(!t){let n={violations:null};e.subscribe(()=>{n.violations=null}),Hr.set(e,n),t=n}return t.violations??=e.violations(),t.violations}function ka(){let{view:e,setView:t}=oe();return(0,ve.useMemo)(()=>({view:e,url:Q(e),focus:n=>t(o=>q(o,n)),show:n=>t(o=>vo(o,n)),toggle:n=>t(o=>et(o,n)),go:n=>t(n)}),[e,t])}var Se={at:0,depth:0,listeners:new Set,tell(){for(let e of this.listeners)e()}};typeof window<"u"&&window.addEventListener("popstate",e=>{let t=e.state;Se.at=typeof t?.graview=="number"?t.graview:0,Se.at>Se.depth&&(Se.depth=Se.at),Se.tell()});var F=H(W(),1),pn={profile:{trigger:"profile-button",pane:"profile",opens:"press",focus:"into",drawn:["shell","embed"]},problems:{trigger:"standing",pane:"problems",opens:"press",focus:"into",drawn:["shell","embed"]},places:{trigger:"app-places-open",pane:"app-places",opens:"press",focus:"into",drawn:["embed"]},here:{trigger:"here-open",pane:"here-list",opens:"press",focus:"into",drawn:["shell","embed","pages"]},suggested:{trigger:"suggested-button",pane:"suggested",opens:"press",focus:"into",drawn:["shell","embed","pages"]},"host-actions":{trigger:"host-bar-actions-open",pane:"host-bar-actions",opens:"press",focus:"into",drawn:["shell","embed"]},activity:{trigger:"activity-button",pane:"activity",opens:"press",focus:"into",drawn:["shell","embed","pages"]},find:{trigger:"find-box",pane:"find-strip",opens:"typing",focus:"stays",drawn:["shell"]},districts:{trigger:"beyond-more",pane:"beyond-list",opens:"press",focus:"into",drawn:["shell","embed"]},acts:{trigger:null,pane:"context-menu",opens:"context-menu",focus:"into",drawn:["shell","embed","pages"]},arrange:{trigger:"arrange-add",pane:"arrange-list",opens:"press",focus:"into",drawn:["pages"]},"studio-ask":{trigger:"studio-agent",pane:"studio-agent-panel",opens:"press",focus:"into",drawn:["studio"]}},Aa={position:"fixed",inset:"auto",margin:0,zIndex:ao("popover"),boxSizing:"border-box"},ht=6,be=8,Ra=e=>typeof e.showPopover=="function";function wt(e){try{return e.matches(":popover-open")}catch{return!1}}function Ta(e){if(typeof e=="function"){let o=e();return o?{left:o.x,right:o.x,top:o.y,bottom:o.y}:null}let t=e.current;if(!t||!t.isConnected)return null;let n=t.getBoundingClientRect();return{left:n.left,right:n.right,top:n.top,bottom:n.bottom}}function fn(e,t,n={}){let o=Ta(t);if(!o)return;let r={width:document.documentElement.clientWidth||innerWidth,height:innerHeight},i=e.dataset.graviewDesignedHeight??=e.style.maxHeight;e.style.maxHeight=i;let a=e.getBoundingClientRect(),s=r.height-o.bottom-ht-be,l=o.top-ht-be,u=a.height<=s||s>=l,c=Math.max(96,Math.floor(u?s:l)),m=Math.min(a.height,c);a.height>c&&(e.style.maxHeight=i?`min(${i}, ${c}px)`:`${c}px`);let y=a.width,g=n.align==="start"?o.left:o.right-y,b=typeof t=="function"?null:t.current?.closest("[data-graview-embed]")?.getBoundingClientRect();b&&y<=b.right-b.left&&(g<b.left?g=o.left+y<=b.right?o.left:b.left:g+y>b.right&&(g=o.right-y>=b.left?o.right-y:b.right-y));let A=y>=r.width-2*be?Math.max(0,(r.width-y)/2):Math.max(be,Math.min(g,r.width-be-y)),f=u?o.bottom+ht:Math.max(be,o.top-ht-m);e.style.left=`${Math.round(A)}px`,e.style.top=`${Math.round(f)}px`}function Dr(e,t,n,o={}){let r=o.align??"end";(0,F.useLayoutEffect)(()=>{let i=e.current;if(!t||!i)return;if(Ra(i)&&!wt(i))try{i.showPopover(),Ca()}catch{}let a=0,s=u=>{u?.target instanceof Node&&i.contains(u.target)||(cancelAnimationFrame(a),a=requestAnimationFrame(()=>fn(i,n,{align:r})))};fn(i,n,{align:r}),addEventListener("resize",s),addEventListener("scroll",s,!0);let l=typeof ResizeObserver>"u"?null:new ResizeObserver(()=>s());return l?.observe(i),()=>{if(cancelAnimationFrame(a),removeEventListener("resize",s),removeEventListener("scroll",s,!0),l?.disconnect(),i.isConnected&&wt(i))try{i.hidePopover()}catch{}}},[t,e,r])}var yn=new Set;function Ma(e){return yn.add(e),()=>yn.delete(e)}function Ca(){for(let e of yn)if(!(!e.isConnected||!wt(e)))try{e.hidePopover(),e.showPopover()}catch{}}var xe=null,Oa='button:not([disabled]), [href], input:not([disabled]):not([type="hidden"]), select:not([disabled]), textarea:not([disabled]), summary, [tabindex]:not([tabindex="-1"])';function Va(e){for(let t of e.querySelectorAll(Oa))if(t.closest("[hidden]")===null&&getComputedStyle(t).visibility!=="hidden")return t;return e}var cn=()=>{let e=document.activeElement;return e===null||e===document.body};function Ia(e,t={}){let{at:n,returnTo:o,onOpenChange:r}=t,i=t.popover!==!1,[a,s]=(0,F.useState)(!1),l=t.open??a,u=(0,F.useRef)(null),c=(0,F.useRef)(null),m=(0,F.useCallback)(v=>{u.current=v},[]),y=(0,F.useCallback)(v=>{c.current=v},[]),g=`graview-popover-${(0,F.useId)().replace(/:/g,"")}`,b=(0,F.useRef)({onOpenChange:r,returnTo:o,controlled:t.open!==void 0});b.current={onOpenChange:r,returnTo:o,controlled:t.open!==void 0};let A=(0,F.useCallback)(v=>{b.current.controlled||s(v),b.current.onOpenChange?.(v)},[]),f=(0,F.useCallback)(()=>{(document.querySelector(`[aria-controls="${g}"]`)??u.current??b.current.returnTo?.()??null)?.focus({preventScroll:!0})},[g]),w=(0,F.useCallback)(v=>{let k=c.current,x=typeof document>"u"?null:document.activeElement,j=x===null||x===document.body||k!==null&&k.contains(x);A(!1),!(!v||!j)&&(f(),requestAnimationFrame(()=>{cn()&&f()}))},[A,f]);return Dr(c,i&&l,n??u,t.align?{align:t.align}:{}),(0,F.useEffect)(()=>{if(!i||!l)return;let v={name:e,close:()=>w(!1)};if(xe&&xe.close!==v.close&&xe.close(),xe=v,pn[e].focus==="into"){let O=c.current;O&&!O.contains(document.activeElement)&&Va(O).focus({preventScroll:!0})}let k=O=>{O.key==="Escape"&&w(!0)},x=O=>{let P=O.target;if(!(P instanceof Node))return;let T=c.current;if(T?.contains(P)||u.current?.contains(P))return;let _=P instanceof Element?P.closest('[role="dialog"], [role="alertdialog"]'):null;_&&!(T&&_.contains(T))||(w(!1),pn[e].focus==="into"&&requestAnimationFrame(()=>{(cn()||T!==null&&T.contains(document.activeElement))&&f()}))},j=null,G=null,D=O=>{let P=O.target;if(!(P instanceof Element))return;let T=c.current,_=P.closest('[role="dialog"], [role="alertdialog"]');!_||T&&(T.contains(_)||_.contains(T))||(j=_,w(!1))};return document.addEventListener("keydown",k),document.addEventListener("pointerdown",x,!0),document.addEventListener("focusin",D),()=>{document.removeEventListener("keydown",k),document.removeEventListener("pointerdown",x,!0),document.removeEventListener("focusin",D);let O=j;O&&typeof MutationObserver<"u"&&(G?.disconnect(),G=new MutationObserver(()=>{O.isConnected||(G?.disconnect(),requestAnimationFrame(()=>{(cn()||document.activeElement.closest("[hidden]")!==null)&&f()}))}),G.observe(document.body,{childList:!0,subtree:!0}),setTimeout(()=>G?.disconnect(),10*6e4)),xe?.close===v.close&&(xe=null)}},[i,l,e,w,f]),{open:l,setOpen:v=>v?A(!0):w(!0),toggle:()=>l?w(!0):A(!0),trigger:{ref:m,"aria-expanded":l,"aria-controls":g,"data-graview-popover-trigger":e},pane:{ref:y,id:g,popover:"manual",tabIndex:-1,"data-graview-popover":e,"data-graview-overlay":""}}}var Pe=H(W(),1);var La=un(Ye(()=>(__graviewPreload(import.meta.url,["./chunk.CYTTZOYL.js","./chunk.SDO3U72B.js","./chunk.Q4MI53KK.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.HRNNRA2I.js"))));function _a(e,t,n){let o,r=!1,i=()=>{let{hidden:s,removed:l}=t.current();o||r||s.length+l.length===0||(o=()=>{},La.load().then(u=>{r||(o=u.watchTidied(e,t,n))},String))};i();let a=t.onChange?.(i);return()=>{r=!0,a?.(),o?.()}}function Ha(e,t){let[n,o]=(0,Pe.useState)();return(0,Pe.useEffect)(()=>t?_a(e,t,r=>o([e,r])):void 0,[e,t]),n?.[0]===e?n[1]:e}var Nr=H(W(),1),Da=(0,Nr.createContext)(!1);var Wr=H(W(),1),Na=(0,Wr.createContext)(null);var jr=H(W(),1),mn='button:not([disabled]), a[href], input:not([disabled]):not([type="hidden"]), select:not([disabled]), textarea:not([disabled]), summary, [tabindex]:not([tabindex="-1"])',gn=e=>e instanceof HTMLElement&&(e.matches(mn)||e.hasAttribute("tabindex")),De=e=>typeof e.checkVisibility=="function"?e.checkVisibility():e.getClientRects().length>0;function Wa(e,t){let n=l=>l.replace(/["\\]/g,"\\$&"),o=t.getAttribute("data-testid"),r=t.getAttribute("data-graview-pick"),i=t.getAttribute("aria-label"),a=o?`[data-testid="${n(o)}"]`:r?`[data-graview-pick="${n(r)}"]`:i?`${t.tagName.toLowerCase()}[aria-label="${n(i)}"]`:null;if(!a)return null;let s=e.querySelector(a);return s&&gn(s)&&De(s)?s:null}var ja=e=>e.isConnected&&gn(e)&&!e.matches(":disabled")&&e instanceof HTMLElement&&De(e);function Gr(e,t){let n=t?Wa(e,t):null;if(n)return n;let o=e.querySelector("[data-graview-view][tabindex]");if(o&&De(o))return o;for(let r of e.querySelectorAll(mn))if(De(r))return r;return gn(e)&&De(e)?e:null}function Ga(e){(0,jr.useEffect)(()=>{let t=e.current;if(!t||typeof MutationObserver>"u")return;let n=[],o=f=>{let w=f.target;if(w instanceof Element){n=[];for(let v=w;v&&v!==t.parentElement;v=v.parentElement)n.push(v)}},r=!1,i=!1,a=t.ownerDocument,s=()=>!i&&a.defaultView!==null,l=(f,w)=>void setTimeout(()=>s()&&w(),f),u=f=>void requestAnimationFrame(()=>s()&&f()),c=f=>{if(r=!1,i)return;let w=a.activeElement;if(!(!(w===null||w===a.body||w===a.documentElement)||n.length===0)){if(ja(n[0])){f&&n[0]instanceof HTMLElement&&n[0].focus({preventScroll:!0});return}for(let k of n.slice(1)){if(!k.isConnected)continue;let x=Gr(k,n[0]);if(x){x.focus({preventScroll:!0}),n=[];return}}}},m=(f,w=Date.now()+2500)=>{l(100,()=>{c(f);let v=a.activeElement;(v===null||v===a.body||v===a.documentElement)&&n.length>0&&Date.now()<w&&m(f,w)})},y=()=>{r||n.length===0||(r=!0,l(60,()=>u(()=>{c(!1),m(!1)})))},g=f=>{if(!(f instanceof KeyboardEvent&&!["Enter"," ","Escape"].includes(f.key))){if(!(f instanceof KeyboardEvent)){let w=f.target instanceof Element?f.target.closest(mn):null,v=a.activeElement,k=v===null||v===a.body||v===a.documentElement;if(w&&k&&t.contains(w)){n=[];for(let x=w;x&&x!==t.parentElement;x=x.parentElement)n.push(x);l(150,()=>u(()=>{c(!1),m(!1)}));return}}!(f instanceof KeyboardEvent)&&!(f.target instanceof Node&&n[0]?.contains(f.target))||l(150,()=>u(()=>{c(!0),m(!0)}))}},b=new MutationObserver(()=>{n.length>0&&!n[0].isConnected&&y()}),A=f=>{f.relatedTarget===null&&y()};return t.addEventListener("focusin",o),t.addEventListener("focusout",A),t.addEventListener("click",g),t.addEventListener("keydown",g),b.observe(t,{childList:!0,subtree:!0}),()=>{i=!0,t.removeEventListener("focusin",o),t.removeEventListener("focusout",A),t.removeEventListener("click",g),t.removeEventListener("keydown",g),b.disconnect()}},[e])}export{me as a,Q as b,Je as c,Ka as d,Ba as e,wo as f,ho as g,So as h,Ot as i,q as j,vo as k,ee as l,de as m,Qe as n,Ie as o,et as p,nt as q,Vt as r,ge as s,$a as t,oi as u,te as v,bo as w,ue as x,xo as y,ri as z,Ua as A,Po as B,It as C,ii as D,ai as E,si as F,W as G,Kt as H,Ri as I,Mi as J,Go as K,it as L,Ci as M,Le as N,Ko as O,Oi as P,qt as Q,zt as R,$t as S,_e as T,Ki as U,He as V,Bi as W,qi as X,gr as Y,Xi as Z,Qi as _,$s as $,oa as aa,oe as ba,on as ca,dt as da,ra as ea,ia as fa,aa as ga,nn as ha,sa as ia,an as ja,Sr as ka,la,da as ma,br as na,xr as oa,Pr as pa,Er as qa,kr as ra,Ar as sa,Rr as ta,Tr as ua,ua as va,ca as wa,ln as xa,pa as ya,gt as za,fa as Aa,ya as Ba,ma as Ca,ga as Da,ha as Ea,wa as Fa,_r as Ga,Sa as Ha,un as Ia,Ha as Ja,Da as Ka,Na as La,xa as Ma,Pa as Na,ka as Oa,Se as Pa,Ga as Qa,Aa as Ra,wt as Sa,Dr as Ta,Ma as Ua,Ia as Va};
2
+ /*! Bundled license information:
3
+
4
+ react/cjs/react.production.js:
5
+ (**
6
+ * @license React
7
+ * react.production.js
8
+ *
9
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
10
+ *
11
+ * This source code is licensed under the MIT license found in the
12
+ * LICENSE file in the root directory of this source tree.
13
+ *)
14
+
15
+ react/cjs/react-jsx-runtime.production.js:
16
+ (**
17
+ * @license React
18
+ * react-jsx-runtime.production.js
19
+ *
20
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
21
+ *
22
+ * This source code is licensed under the MIT license found in the
23
+ * LICENSE file in the root directory of this source tree.
24
+ *)
25
+ */
@@ -0,0 +1,3 @@
1
+ import{C as b,P as h,Z as g,bc as w,fc as x,ga as $,ha as k}from"./chunk.Q4MI53KK.js";function G(t,n,e){let r=t?.display?.format?.[n];return r?r(e):typeof e=="string"?k(e):String(e)}function Q(t,n,e,r){let s=t.tryDefinition(n)?.edges,i=s&&Object.hasOwn(s,e)?s[e]:void 0;return(r==="out"?i?.description:i?.inverse)??$(e).toLowerCase()}var S=Symbol.for("@graview/core:markdown");function F(t){let n=b(t);return!!n&&(n[S]===1||F(n.innerType))}var R=/^ {0,3}#{1,6}(?:[ \t]+|$)/,m=/^[ \t]*(?:[-*+•]|\d{1,9}[.)])[ \t]+(?:\[[ xX]\][ \t]+)?/,O=/^ {0,3}(?:(?:-[ \t]*){3,}|(?:\*[ \t]*){3,}|(?:_[ \t]*){3,})$/,N=/^ {0,3}(?:`{3,}|~{3,})/,M=/^ {0,3}(?:>[ \t]?)+/,W=/^\|?\s*:?-{2,}:?\s*(?:\|\s*:?-{2,}:?\s*)*\|?$/,_={amp:"&",lt:"<",gt:">",quot:'"',"#39":"'",nbsp:" "};function j(t){return t.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,(n,e)=>_[e]??"")}function T(t,n,e){let r=t.replace(/\r\n?/g,`
2
+ `).split(`
3
+ `),s=[],i=[],u=0,d=!1,a=()=>{let o=i.join(" ").replace(/\s+/g," ").trim();o&&(s.push(o),u+=o.length),i=[]},c=0;for(;c<r.length&&u<=e;){let o=r[c++];if(n&&N.test(o)){d=!d,d||a();continue}if(!d&&(o.trim().length===0||n&&(O.test(o)||W.test(o.trim())))){a();continue}let f=!d&&n&&R.test(o),l=!d&&m.test(o);if((f||l)&&a(),n&&!d?(o=o.replace(M,""),f&&(o=o.replace(R,"").replace(/[ \t]+#+[ \t]*$/,"")),l&&(o=o.replace(m,"")),o.includes("|")&&(o=o.replace(/^[ \t]*\||\|[ \t]*$/g,"").split("|").map(p=>p.trim()).filter(Boolean).join(" \xB7 ")),o=j(Number.isFinite(e)?o.slice(0,e*2+200):o)):l&&(o=o.replace(m,"")),i.push(o),f&&a(),i.reduce((p,A)=>p+A.length,0)>e)break}return a(),{blocks:s,more:r.slice(c).some(o=>o.trim().length>0&&!(n&&(N.test(o)||O.test(o))))}}function E(t,n){return`${(t.slice(0,n+1).replace(/\s+\S*$/,"")||t.slice(0,n)).replace(/[\s,;:.—-]+$/,"")}\u2026`}function K(t,n={}){let e=n.most??160,{blocks:r,more:s}=T(t,n.markdown===!0,e),i=r[0]??"";if(i.length<=e)return(s||r.length>1)&&i.length>0&&!/[.!?…:]$/.test(i)?`${i}\u2026`:i;let u=x(i);return u&&u.length<=e?u:E(i,e)}var v=t=>T(t,!0,Number.POSITIVE_INFINITY).blocks.join(" ");var I={d:1440,h:60,m:1};function rn(t){if(typeof t=="number")return Number.isFinite(t)&&t>=0?Math.round(t):void 0;if(typeof t!="string")return;let n=t.trim().toLowerCase();if(/^\d+$/.test(n))return Number(n);let e=/^(\d+):([0-5]\d)(?::([0-5]\d))?$/.exec(n);if(e)return Number(e[1])*60+Number(e[2])+Math.round(Number(e[3]??0)/60);let r=0,s=!1,i=n.replace(/(\d*[.,]?\d+) *(days?|d|hours?|hrs?|hr|h|minutes?|mins?|min|m)(?![a-z])/g,(u,d,a)=>(s=!0,r+=Number(d.replace(",","."))*I[a[0]]," "));return s&&/^[\s,+]*(?:and[\s,+]*)*$/.test(i)?Math.round(r):void 0}function D(t,n){if(!Number.isFinite(t))return String(t);let e=Math.round(Math.abs(t)),r=Math.floor(e/60),s=e%60,i=[r?`${g(r,n)} h`:"",s||!r?`${g(s,n)} min`:""].filter(Boolean).join(" ");return t<0?`\u2212${i}`:i}var P=/^(\+?1[ .-]?)?\(?([2-9]\d\d)\)?[ .-]?(\d{3})[ .-]?(\d{4})(?: *(?:ext\.?|x|#) *(\d+))?$/i;function L(t,n){let e=t.trim(),r=/[-_](US|CA)\b/i.test(h(n))?P.exec(e):null;if(!r)return e;let[,s,i,u,d,a]=r;return`${s?.startsWith("+")?"+1 ":""}(${i}) ${u}-${d}${a?` ext. ${a}`:""}`}function q(t){let[,n="",e]=/^(.*?)(?: *(?:ext\.?|x|#) *(\d+))?$/i.exec(t.trim())??[],r=n.replace(/\D/g,"");return r.length<3?void 0:`tel:${n.startsWith("+")?"+":""}${r}${e?`;ext=${e}`:""}`}var C=()=>/Mac|iPhone|iPad|iPod/.test(globalThis.navigator?.userAgent??"");function H(t,n=C()){let e=encodeURIComponent(t.trim());return n?`https://maps.apple.com/?q=${e}`:`https://www.google.com/maps/search/?api=1&query=${e}`}var U=t=>t?.fields?.shape??{},z=(t,n)=>{let e=U(t);return Object.hasOwn(e,n)?w(e[n]):void 0},y=(t,n)=>{let e=t?.computed,r=e&&Object.hasOwn(e,n)?e[n]:void 0;return typeof r=="object"?r:void 0},B=(t,n)=>{let e=y(t,n);return e?.as??(e?.format==="duration"?"duration":void 0)};function on(t,n){let e=y(t,n);if(!e)return;if(e.amount)return e.amount;let r=e.format==="money"||e.format==="percent"?e.format:void 0;return r||!e.format&&e.unit?{...r?{format:r}:{},...e.unit?{unit:e.unit}:{}}:void 0}function sn(t,n){return y(t,n)?.hidden===!0}function dn(t,n){return z(t,n)??(t&&B(t,n)==="duration"?"duration":void 0)}function un(t,n,e){return t==="duration"?typeof n=="number"?D(n,e):void 0:t==="phone"?typeof n=="string"?L(n,e):void 0:t==="place"&&typeof n=="string"?n.trim():void 0}function an(t,n){if(!(typeof n!="string"||!n.trim()))return t==="phone"?q(n):t==="place"?H(n):void 0}export{F as a,G as b,Q as c,K as d,v as e,rn as f,on as g,sn as h,dn as i,un as j,an as k};
@@ -0,0 +1 @@
1
+ import{G as w,T as d}from"./chunk.CYTTZOYL.js";import{je as u,we as f}from"./chunk.Q4MI53KK.js";import{b as i}from"./chunk.AJZBJBMO.js";var a=i(w(),1);var o=i(d(),1),x={textDecorationLine:"underline",textDecorationColor:"color-mix(in srgb, currentColor 50%, transparent)",textDecorationThickness:1,textUnderlineOffset:"0.2em"};function m({children:e,mark:r="\u2192"}){return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("span",{style:x,children:e}),(0,o.jsx)("span",{"aria-hidden":"true",children:r})]})}var n=i(d(),1);function R({context:e,stop:r,title:t,label:s,style:y,className:l,children:h,...p}){let c=u(e.views?.arrangement?.()),S=h??(0,n.jsx)(n.Fragment,{children:(0,n.jsxs)(m,{mark:"\u2197",children:["In ",c==="Scene"?"the scene":c.replace(/^The /,"the ")]})}),g=s?{"aria-label":s}:{};if(e.overview){let v=e.overview;return(0,n.jsx)("a",{href:r,...p,...g,...t?{title:t}:{},style:y,...l?{className:l}:{},onClick:b=>{b.preventDefault(),v(r)},children:S})}return e.embedded?null:(0,n.jsx)("a",{href:`${e.sceneHref??"/"}${r}`,...p,...g,...t?{title:t}:{},style:y,...l?{className:l}:{},children:S})}function k(){return(0,n.jsx)("a",{href:"#fresh","data-testid":"start-fresh",title:"Forget every edit made in this browser and return to the example",onClick:e=>{e.preventDefault(),window.location.assign(f(window.location.href))},style:{color:"inherit",display:"inline-flex",alignItems:"center",minHeight:24,minWidth:24},children:"Start fresh"})}function H(e){let r=(0,a.useRef)(0),t=(0,a.useCallback)(s=>e.subscribe(()=>{r.current+=1,s()}),[e]);return(0,a.useSyncExternalStore)(t,()=>r.current,()=>0)}function L(e){return e===void 0?{}:e==="sm"||e==="md"?{"data-size":e}:{style:{"--graview-control-height":typeof e=="number"?`${e}px`:e}}}var T=(e,r)=>r?`${e} ${r}`:e;export{m as a,R as b,k as c,H as d,L as e,T as f};
@@ -1 +1 @@
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 y,b as k,c as b}from"./chunk.U5P23GO7.js";import{a as A}from"./chunk.5STU3KYG.js";import{D as v,G as W,T as w,ba as h}from"./chunk.M7RESZB6.js";import{bb as g}from"./chunk.DZZL5IDD.js";import{b as d}from"./chunk.AJZBJBMO.js";var S=d(W(),1);var t=d(w(),1),l={display:"inline-flex",alignItems:"center",minHeight:24,minWidth:24,padding:"1px 8px",fontSize:"0.75rem"};function L({shows:e,onShows:i,mine:a,onMine:r}){let n={all:"All",changes:"Changes",ai:"AI"};return(0,t.jsxs)("div",{"data-testid":"activity-filter",role:"group","aria-label":"Show",style:{display:"flex",flexWrap:"wrap",gap:4,alignItems:"center"},children:[["all","changes","ai"].map(s=>(0,t.jsx)("button",{type:"button","data-shows":s,"aria-pressed":e===s,onClick:()=>i(s),style:{...l,...e===s?{borderColor:"var(--graview-accent)",color:"var(--graview-ink)"}:{}},children:n[s]},s)),(0,t.jsx)("button",{type:"button","data-testid":"activity-mine","aria-pressed":a,onClick:()=>r(!a),style:{...l,marginLeft:"auto",...a?{borderColor:"var(--graview-accent)",color:"var(--graview-ink)"}:{}},children:"Just mine"})]})}var $=e=>e.ask.kind==="suggest"?"suggest":e.ask.kind==="fill"?"fill in":e.ask.kind==="record"?"add one":e.ask.kind==="panel"?"draw a panel":`answer \u201C${e.ask.said}\u201D`;function T(e){let i=e.offered.filter(a=>e.accepted?.includes(a.id)).map(a=>a.label);switch(e.outcome){case"accepted":return i.length>0?`Took ${i.join(", ")}`:"Taken";case"partly":return`Took ${i.length} of ${e.offered.length}: ${i.join(", ")}`;case"dismissed":return"Dismissed";case"drawn":return e.panel?`Drew \u201C${e.panel.title}\u201D`:"Drew a panel";case"failed":return e.failed??"Failed";default:return"Offered, not yet taken"}}function O(e){let i=[...new Set((e.usage??[]).map(n=>n.model))];if(i.length===0)return null;let a=(e.usage??[]).flatMap(n=>n.costUsd===void 0?[]:[n.costUsd]),r=a.length>0?a.reduce((n,s)=>n+s,0):void 0;return`${i.join(", ")}${r!==void 0?` \xB7 $${r<.01?r.toPrecision(2):r.toFixed(2)}`:""}`}function V({entry:e,undo:i}){let{store:a,principal:r,seats:n,people:s,ai:I}=h(),c=A(),[p,u]=(0,S.useState)(!1),C=e.by.kind==="human"&&e.by.onBehalfOf===void 0&&(e.by.id===void 0||r.id===void 0||e.by.id===r.id)?"you":g(e.by,{graph:a.graph,schema:a.schema,seats:n,people:s}),f=O(e),x=v(I),m=o=>{u(!0),(__graviewPreload(import.meta.url,["./chunk.N6EJXXQK.js","./chunk.BJUUSIQY.js","./chunk.PZQNR4KZ.js","./chunk.W4BKYSZX.js","./chunk.T6WHGKWR.js","./chunk.XOZU4OFA.js","./chunk.Y2YYH3JN.js","./chunk.5STU3KYG.js","./chunk.ZN3PUM2I.js","./chunk.NUYA4BWI.js","./chunk.OKZT2QBM.js","./chunk.ACTXR2MI.js","./chunk.AI34V6WV.js","./chunk.G4ULQK64.js","./chunk.M7RESZB6.js","./chunk.SDO3U72B.js","./chunk.DZZL5IDD.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.2AT3GRXM.js")).then(o).finally(()=>u(!1))};return(0,t.jsxs)("li",{"data-testid":"activity-interaction","data-interaction":e.id,"data-outcome":e.outcome,style:y,children:[(0,t.jsx)("div",{"data-graview-activity-head":"",style:k,children:(0,t.jsxs)("span",{"data-graview-activity-words":"",style:b,children:[(0,t.jsx)("strong",{style:{fontWeight:600},children:C})," ",(0,t.jsxs)("span",{style:{color:"var(--graview-ink-muted)"},children:["asked AI to ",$(e)]}),(0,t.jsxs)("span",{style:{color:"var(--graview-ink-faint)"},children:[" \xB7 ",e.targetLabel]})]})}),e.offered.length>0&&e.outcome!=="accepted"&&e.outcome!=="partly"?(0,t.jsxs)("div",{"data-testid":"interaction-offered",style:{color:"var(--graview-ink-muted)"},children:["Offered ",e.offered.map(o=>o.label).join(", ")]}):null,(0,t.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:6,flexWrap:"wrap"},children:[(0,t.jsx)("span",{"data-testid":"interaction-outcome",style:{color:e.outcome==="failed"?"var(--graview-warn)":"var(--graview-ink)"},children:T(e)}),(e.batches??[]).map(o=>(0,t.jsx)("span",{"data-interaction-batch":o,style:{marginLeft:"auto"},children:i(o)},o))]}),f?(0,t.jsx)("div",{"data-testid":"interaction-model",style:{fontSize:"0.75rem",color:"var(--graview-ink-faint)"},children:f}):null,x?(0,t.jsxs)("div",{style:{display:"flex",gap:6,flexWrap:"wrap"},children:[e.panel?(0,t.jsx)("button",{type:"button","data-testid":"interaction-reopen",disabled:p,onClick:()=>m(o=>o.drawPanel(c,e.panel)),style:l,children:"Show the panel"}):null,(0,t.jsx)("button",{type:"button","data-testid":"interaction-again",disabled:p,onClick:()=>m(o=>o.askAgain(c,e)),style:l,children:"Ask again"})]}):null]})}export{L as a,V as b};
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 y,b as k,c as b}from"./chunk.U5P23GO7.js";import{a as A}from"./chunk.YOUB3J3Y.js";import{D as v,G as W,T as w,ba as h}from"./chunk.CYTTZOYL.js";import{db as g}from"./chunk.Q4MI53KK.js";import{b as d}from"./chunk.AJZBJBMO.js";var S=d(W(),1);var t=d(w(),1),l={display:"inline-flex",alignItems:"center",minHeight:24,minWidth:24,padding:"1px 8px",fontSize:"0.75rem"};function L({shows:e,onShows:i,mine:a,onMine:r}){let n={all:"All",changes:"Changes",ai:"AI"};return(0,t.jsxs)("div",{"data-testid":"activity-filter",role:"group","aria-label":"Show",style:{display:"flex",flexWrap:"wrap",gap:4,alignItems:"center"},children:[["all","changes","ai"].map(s=>(0,t.jsx)("button",{type:"button","data-shows":s,"aria-pressed":e===s,onClick:()=>i(s),style:{...l,...e===s?{borderColor:"var(--graview-accent)",color:"var(--graview-ink)"}:{}},children:n[s]},s)),(0,t.jsx)("button",{type:"button","data-testid":"activity-mine","aria-pressed":a,onClick:()=>r(!a),style:{...l,marginLeft:"auto",...a?{borderColor:"var(--graview-accent)",color:"var(--graview-ink)"}:{}},children:"Just mine"})]})}var $=e=>e.ask.kind==="suggest"?"suggest":e.ask.kind==="fill"?"fill in":e.ask.kind==="record"?"add one":e.ask.kind==="panel"?"draw a panel":`answer \u201C${e.ask.said}\u201D`;function T(e){let i=e.offered.filter(a=>e.accepted?.includes(a.id)).map(a=>a.label);switch(e.outcome){case"accepted":return i.length>0?`Took ${i.join(", ")}`:"Taken";case"partly":return`Took ${i.length} of ${e.offered.length}: ${i.join(", ")}`;case"dismissed":return"Dismissed";case"drawn":return e.panel?`Drew \u201C${e.panel.title}\u201D`:"Drew a panel";case"failed":return e.failed??"Failed";default:return"Offered, not yet taken"}}function O(e){let i=[...new Set((e.usage??[]).map(n=>n.model))];if(i.length===0)return null;let a=(e.usage??[]).flatMap(n=>n.costUsd===void 0?[]:[n.costUsd]),r=a.length>0?a.reduce((n,s)=>n+s,0):void 0;return`${i.join(", ")}${r!==void 0?` \xB7 $${r<.01?r.toPrecision(2):r.toFixed(2)}`:""}`}function V({entry:e,undo:i}){let{store:a,principal:r,seats:n,people:s,ai:I}=h(),c=A(),[p,u]=(0,S.useState)(!1),C=e.by.kind==="human"&&e.by.onBehalfOf===void 0&&(e.by.id===void 0||r.id===void 0||e.by.id===r.id)?"you":g(e.by,{graph:a.graph,schema:a.schema,seats:n,people:s}),f=O(e),x=v(I),m=o=>{u(!0),(__graviewPreload(import.meta.url,["./chunk.ZLTHWCKL.js","./chunk.BJUUSIQY.js","./chunk.57YDGGJK.js","./chunk.H7AH3IW4.js","./chunk.VCTAFSZ5.js","./chunk.XOZU4OFA.js","./chunk.4TH3CGAZ.js","./chunk.YOUB3J3Y.js","./chunk.DZSZUX34.js","./chunk.REUMBCSV.js","./chunk.2KIWGQXC.js","./chunk.D5LOTCBU.js","./chunk.KZUMXT5J.js","./chunk.CGK2PY76.js","./chunk.CYTTZOYL.js","./chunk.SDO3U72B.js","./chunk.Q4MI53KK.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.O67JXUVG.js")).then(o).finally(()=>u(!1))};return(0,t.jsxs)("li",{"data-testid":"activity-interaction","data-interaction":e.id,"data-outcome":e.outcome,style:y,children:[(0,t.jsx)("div",{"data-graview-activity-head":"",style:k,children:(0,t.jsxs)("span",{"data-graview-activity-words":"",style:b,children:[(0,t.jsx)("strong",{style:{fontWeight:600},children:C})," ",(0,t.jsxs)("span",{style:{color:"var(--graview-ink-muted)"},children:["asked AI to ",$(e)]}),(0,t.jsxs)("span",{style:{color:"var(--graview-ink-faint)"},children:[" \xB7 ",e.targetLabel]})]})}),e.offered.length>0&&e.outcome!=="accepted"&&e.outcome!=="partly"?(0,t.jsxs)("div",{"data-testid":"interaction-offered",style:{color:"var(--graview-ink-muted)"},children:["Offered ",e.offered.map(o=>o.label).join(", ")]}):null,(0,t.jsxs)("div",{style:{display:"flex",alignItems:"baseline",gap:6,flexWrap:"wrap"},children:[(0,t.jsx)("span",{"data-testid":"interaction-outcome",style:{color:e.outcome==="failed"?"var(--graview-warn)":"var(--graview-ink)"},children:T(e)}),(e.batches??[]).map(o=>(0,t.jsx)("span",{"data-interaction-batch":o,style:{marginLeft:"auto"},children:i(o)},o))]}),f?(0,t.jsx)("div",{"data-testid":"interaction-model",style:{fontSize:"0.75rem",color:"var(--graview-ink-faint)"},children:f}):null,x?(0,t.jsxs)("div",{style:{display:"flex",gap:6,flexWrap:"wrap"},children:[e.panel?(0,t.jsx)("button",{type:"button","data-testid":"interaction-reopen",disabled:p,onClick:()=>m(o=>o.drawPanel(c,e.panel)),style:l,children:"Show the panel"}):null,(0,t.jsx)("button",{type:"button","data-testid":"interaction-again",disabled:p,onClick:()=>m(o=>o.askAgain(c,e)),style:l,children:"Ask again"})]}):null]})}export{L as a,V as b};
@@ -1,4 +1,4 @@
1
- var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{a as G,b as J}from"./chunk.ELOFPE25.js";import"./chunk.JYFZCJ4N.js";import{a as K}from"./chunk.PLTH2LW5.js";import"./chunk.66P5IDTH.js";import"./chunk.KDXU5DT3.js";import"./chunk.H5S7OL2U.js";import"./chunk.PZQNR4KZ.js";import"./chunk.W4BKYSZX.js";import"./chunk.Y2YYH3JN.js";import{a as S,b as W}from"./chunk.MB7LKKUD.js";import"./chunk.SGCW2XRC.js";import"./chunk.ZN3PUM2I.js";import"./chunk.QIPASE42.js";import"./chunk.EVBCEEQ4.js";import"./chunk.OWT3VVOT.js";import"./chunk.NHTGAP3G.js";import"./chunk.NUYA4BWI.js";import"./chunk.OKZT2QBM.js";import"./chunk.ACTXR2MI.js";import"./chunk.AI34V6WV.js";import"./chunk.G4ULQK64.js";import{D as H,E as V,G as ee,Ia as _,Sa as x,T as D,ca as F}from"./chunk.M7RESZB6.js";import{a as j}from"./chunk.SDO3U72B.js";import{id as B,la as q}from"./chunk.DZZL5IDD.js";import"./chunk.FQLNBIQ5.js";import{b}from"./chunk.AJZBJBMO.js";var t=b(ee(),1);var a=b(D(),1);function ae(n){let r=[];return n.applied.length>0&&n.intent&&r.push(`${n.intent}.`),n.unchanged.length>0&&r.push(`${n.unchanged.length} already so.`),n.allOrNothing&&r.push("None of it was kept."),r.join(" ")}var re=_(j(()=>(__graviewPreload(import.meta.url,["./chunk.N6EJXXQK.js","./chunk.BJUUSIQY.js","./chunk.PZQNR4KZ.js","./chunk.W4BKYSZX.js","./chunk.T6WHGKWR.js","./chunk.XOZU4OFA.js","./chunk.Y2YYH3JN.js","./chunk.5STU3KYG.js","./chunk.ZN3PUM2I.js","./chunk.NUYA4BWI.js","./chunk.OKZT2QBM.js","./chunk.ACTXR2MI.js","./chunk.AI34V6WV.js","./chunk.G4ULQK64.js","./chunk.M7RESZB6.js","./chunk.SDO3U72B.js","./chunk.DZZL5IDD.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.4HEFUOLV.js")))),te=re.part((n,r)=>(0,a.jsx)(n.SeveralAi,{...r}),{quiet:!0});function ne(n){let r=F()?.ai;return!H(r)||!V(r)?null:(0,a.jsx)(t.Suspense,{fallback:null,children:(0,a.jsx)(te,{...n})})}function ge({store:n,chosen:r,principal:d,context:v,via:k,anchor:A,of:g,onChooseAll:E,onClear:m,onActed:Q}){let[U,X]=(0,t.useState)(0);(0,t.useEffect)(()=>n.subscribe(()=>X(e=>e+1)),[n]);let f=r.join(`
1
+ var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{a as G,b as J}from"./chunk.KB5BCW23.js";import"./chunk.72YXFJKC.js";import{a as K}from"./chunk.MIE3ODQ2.js";import"./chunk.NEPQBMFT.js";import"./chunk.ERPILTRY.js";import"./chunk.JVDPRQ7J.js";import"./chunk.57YDGGJK.js";import"./chunk.H7AH3IW4.js";import"./chunk.4TH3CGAZ.js";import{a as S,b as W}from"./chunk.MB7LKKUD.js";import"./chunk.XYGNS637.js";import"./chunk.DZSZUX34.js";import"./chunk.4EXC26LI.js";import"./chunk.PWAP2GJS.js";import"./chunk.AHPYNDVA.js";import"./chunk.FNVGNISQ.js";import"./chunk.REUMBCSV.js";import"./chunk.2KIWGQXC.js";import"./chunk.D5LOTCBU.js";import"./chunk.KZUMXT5J.js";import"./chunk.CGK2PY76.js";import{D as H,E as V,G as ee,Ia as _,Sa as x,T as D,ca as F}from"./chunk.CYTTZOYL.js";import{a as j}from"./chunk.SDO3U72B.js";import{na as q,qd as B}from"./chunk.Q4MI53KK.js";import"./chunk.FQLNBIQ5.js";import{b}from"./chunk.AJZBJBMO.js";var t=b(ee(),1);var a=b(D(),1);function ae(n){let r=[];return n.applied.length>0&&n.intent&&r.push(`${n.intent}.`),n.unchanged.length>0&&r.push(`${n.unchanged.length} already so.`),n.allOrNothing&&r.push("None of it was kept."),r.join(" ")}var re=_(j(()=>(__graviewPreload(import.meta.url,["./chunk.ZLTHWCKL.js","./chunk.BJUUSIQY.js","./chunk.57YDGGJK.js","./chunk.H7AH3IW4.js","./chunk.VCTAFSZ5.js","./chunk.XOZU4OFA.js","./chunk.4TH3CGAZ.js","./chunk.YOUB3J3Y.js","./chunk.DZSZUX34.js","./chunk.REUMBCSV.js","./chunk.2KIWGQXC.js","./chunk.D5LOTCBU.js","./chunk.KZUMXT5J.js","./chunk.CGK2PY76.js","./chunk.CYTTZOYL.js","./chunk.SDO3U72B.js","./chunk.Q4MI53KK.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.OIMGD7FR.js")))),te=re.part((n,r)=>(0,a.jsx)(n.SeveralAi,{...r}),{quiet:!0});function ne(n){let r=F()?.ai;return!H(r)||!V(r)?null:(0,a.jsx)(t.Suspense,{fallback:null,children:(0,a.jsx)(te,{...n})})}function ge({store:n,chosen:r,principal:d,context:v,via:k,anchor:A,of:g,onChooseAll:E,onClear:m,onActed:Q}){let[U,X]=(0,t.useState)(0);(0,t.useEffect)(()=>n.subscribe(()=>X(e=>e+1)),[n]);let f=r.join(`
2
2
  `),{acts:c,withheld:N}=(0,t.useMemo)(()=>G(n,r,{...d?{principal:d}:{},...v?{context:v}:{}}),[n,f,d,v,U]),[O,p]=(0,t.useState)(!1),[l,u]=(0,t.useState)(null),[s,P]=(0,t.useState)(null),h=(0,t.useRef)(null),L=(0,t.useId)(),w=(0,t.useMemo)(()=>[...new Set(r.map(e=>n.graph.getNode(e)?.kind))],[n,f]),Y=w.length===1&&w[0]?`${q(n.schema,w[0],r.length)} chosen`:`${r.length} chosen`,M=typeof matchMedia=="function"&&matchMedia("(pointer: coarse), (max-width: 599px)").matches?2:3,C=c.filter(e=>!e.more),Z=C.slice(0,M),R=[...C.slice(M),...c.filter(e=>e.more)];(0,t.useEffect)(()=>{u(null),p(!1)},[f]),(0,t.useLayoutEffect)(()=>{let e=h.current;if(!e)return;if(typeof e.showPopover=="function"&&!x(e))try{e.showPopover()}catch{}let i=()=>{W(e,A?.()??null),dispatchEvent(new Event(S))};i(),addEventListener("resize",i),addEventListener("scroll",i,!0);let o=typeof ResizeObserver=="function"?new ResizeObserver(i):null;return o?.observe(e),()=>{if(o?.disconnect(),removeEventListener("resize",i),removeEventListener("scroll",i,!0),e.isConnected&&x(e))try{e.hidePopover()}catch{}dispatchEvent(new Event(S))}},[A]);let y=(0,t.useRef)({asking:l,onClear:m});y.current={asking:l,onClear:m},(0,t.useEffect)(()=>{let e=i=>{if(i.key!=="Escape"||i.defaultPrevented)return;let o=document.activeElement;if(!(!(h.current?.contains(o)??!1)&&(o instanceof HTMLTextAreaElement||o instanceof HTMLInputElement&&o.type!=="checkbox"||o instanceof HTMLSelectElement))){if(i.preventDefault(),i.stopPropagation(),y.current.asking){u(null);return}y.current.onClear()}};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[]);let T=(e,i={})=>{let o=J(n,{mutation:e.mutation,subject:e.subject,args:{...e.args,...i},label:e.label},r,{...d?{author:d}:{},...k?{via:k}:{},...v?{context:v}:{}});u(null),p(!1),P(o.refused.length>0||o.applied.length===0?o:null),Q(o.refused.map(I=>I.id))},$=e=>{P(null),p(!1),e.open.length>0?u(e):T(e)},z=e=>(0,a.jsxs)("button",{type:"button",className:"graview-several-act","data-testid":"several-act","data-act":e.id,"data-mutation":e.mutation,...e.destructive?{"data-tone":"warn"}:{},"aria-pressed":l?.id===e.id?!0:void 0,onClick:()=>$(e),children:[e.label,e.open.length>0?"\u2026":""]},e.id);return(0,a.jsxs)("div",{ref:h,popover:"manual",role:"region","aria-label":"The chosen records",className:"graview-several-bar","data-testid":"several-bar","data-graview-foot":"","data-graview-overlay":"","data-graview-popover":"","data-graview-offstage":"",style:ie,children:[(0,a.jsx)("style",{children:oe}),(0,a.jsxs)("div",{className:"graview-several-line",children:[(0,a.jsx)("span",{role:"status","aria-live":"polite",className:"graview-several-count","data-testid":"several-count",children:Y}),(0,a.jsxs)("div",{role:"group","aria-label":`What to do with the ${r.length} chosen`,className:"graview-several-acts",children:[Z.map(z),R.length>0?(0,a.jsx)("button",{type:"button",className:"graview-several-act","data-testid":"several-more","aria-expanded":O,"aria-controls":L,onClick:()=>p(e=>!e),children:"More"}):null,E&&g!==void 0&&g>r.length?(0,a.jsxs)("button",{type:"button",className:"graview-several-quiet","data-testid":"several-all",onClick:E,children:["Choose all ",g]}):null,(0,a.jsx)("button",{type:"button",className:"graview-several-quiet","data-testid":"several-clear","aria-keyshortcuts":"Escape",title:"Put the choice down \u2014 Escape",onClick:m,children:"Clear"})]})]}),c.length>0&&r.length>1?(0,a.jsx)(ne,{chosen:r,acts:c,onAct:$}):null,O?(0,a.jsx)("div",{id:L,role:"group","aria-label":"More",className:"graview-several-acts","data-testid":"several-more-acts",children:R.map(z)}):null,c.length===0?(0,a.jsx)("p",{className:"graview-several-said","data-testid":"several-none",children:N.length>0?`Nothing here can be done to all of them by you: ${N[0].message}`:"Nothing can be done to all of these at once."}):null,l?(0,a.jsx)("div",{className:"graview-several-ask",role:"group","aria-label":`${l.label}, for all ${r.length}`,"data-testid":"several-ask",children:(0,a.jsx)(K,{store:n,affordance:l.affordance,onApply:e=>T(l,e),onCancel:()=>u(null)})}):null,s?(0,a.jsxs)("div",{role:"alert",className:"graview-several-said","data-testid":"several-outcome",children:[ae(s),s.refused.length>0?(0,a.jsxs)(a.Fragment,{children:[" ",s.refused.length===1?"One was not changed, and is still chosen:":`${s.refused.length} were not changed, and are still chosen:`,(0,a.jsx)("ul",{"data-testid":"several-refused",children:s.refused.map(e=>(0,a.jsxs)("li",{"data-record":e.id,children:["\u201C",e.label,"\u201D \u2014 ",e.message]},e.id))})]}):null]}):null]})}var ie={position:"fixed",inset:"auto",margin:0,zIndex:B("toast"),boxSizing:"border-box",width:"max-content",height:"auto",bottom:"calc(16px + env(safe-area-inset-bottom, 0px))",left:16,overflow:"visible"},oe=`
3
3
  .graview-several-bar{display:grid;gap:8px;padding:8px 10px;border:1px solid var(--graview-edge);border-radius:var(--graview-radius,12px);background:var(--graview-float);color:var(--graview-ink);box-shadow:var(--graview-lift-high);font-size:.875rem;line-height:1.4;max-height:70vh;overflow:auto}
4
4
  .graview-several-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0}
@@ -1 +1 @@
1
- import{b as a,c as b,d as c,e as d,f as e,g as f,h as g,i as h}from"./chunk.X6KYRBL6.js";import"./chunk.BZMQDEIY.js";import"./chunk.B3WVCSW5.js";import"./chunk.H5S7OL2U.js";import"./chunk.DZZL5IDD.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";export{h as createLinks,g as judgeDestination,e as listsOf,c as nowhere,f as placeVocabulary,a as placesSaid,b as quoted,d as whereOfWords};
1
+ import{b as a,c as b,d as c,e as d,f as e,g as f,h as g,i as h}from"./chunk.WBS7ND2C.js";import"./chunk.NTC2H5ZX.js";import"./chunk.B3WVCSW5.js";import"./chunk.JVDPRQ7J.js";import"./chunk.Q4MI53KK.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";export{h as createLinks,g as judgeDestination,e as listsOf,c as nowhere,f as placeVocabulary,a as placesSaid,b as quoted,d as whereOfWords};
@@ -1 +1 @@
1
- import{a as h}from"./chunk.ACTXR2MI.js";import{Aa as a,D as g,Da as b,H as k,K as w,Yb as x}from"./chunk.DZZL5IDD.js";var s=i=>i?._zod?.def,O=Symbol.for("@graview/core:collaborative"),v=/^\^\\d\{4\}-\\d\{2\}-\\d\{2\}\$$/;function R(i){let t=s(i),u=!0,f;for(let e=0;t&&e<4;e++){if(t.type==="optional"||t.type==="nullable")u=!1;else if(t.type==="default")u=!1,f=t.defaultValue;else break;t=s(t.innerType)}if(!t)return{why:"it is not a zod field"};let l=g(i),r={...u?{required:!0}:{},...f!==void 0?{default:f}:{},...l?{description:l}:{}},p=(t.checks??[]).map(e=>s(e)),c=a(i);if(c)return{spec:{type:c,...r}};if(b(i))return{spec:{type:"app-link",...r}};let d;for(let e=s(i),n=0;e&&d===void 0&&n<4;e=s(e.innerType),n++)d=e[O];let m=e=>d!==void 0&&d===1!=(e==="text")?{collaborative:d===1}:{};if(h(i))return{spec:{type:"text",format:"markdown",...r,...m("text")}};let y=x(i);if(y)return{spec:{type:y,...r}};switch(t.type){case"string":{let e=t.format;return e==="email"?{spec:{type:"email",...r}}:e==="url"?{spec:{type:"url",...r}}:e==="date"?{spec:{type:"date",...r}}:e==="datetime"||p.some(n=>n?.fn===w)?{spec:{type:"datetime",...r}}:p.some(n=>n?.format==="regex"&&(v.test(String(n?.pattern?.source??""))||n?.pattern?.source===k.source))?{spec:{type:"date",...r}}:{spec:{type:"string",...r,...m("string")}}}case"number":{let e={};for(let n of p){let o=n?.value;typeof o=="number"&&(n?.check==="greater_than"&&n.inclusive?e.min=Math.max(e.min??o,o):n?.check==="less_than"&&n.inclusive?e.max=Math.min(e.max??o,o):n?.check==="multiple_of"&&(e.step=o))}return{spec:{type:p.some(n=>n?.format==="safeint"||n?.format==="int")?"integer":"number",...e,...r}}}case"boolean":return{spec:{type:"boolean",...r}};case"enum":{let e=Object.keys(t.entries??{});return e.length>0?{spec:{type:"enum",options:e,...r}}:{why:"it is an enum with no options"}}case"array":{let e=s(t.element);if(e?.type==="enum"){let o=Object.keys(e.entries??{});return o.length>0?{spec:{type:"enum",multiple:!0,options:o,...r}}:{why:"it is a list of an enum with no options"}}let n=a(t.element)??(e?.type==="number"?"number":e?.type==="string"?"string":void 0);return n?{spec:{type:"list",of:n,...r}}:{why:`it is a list of ${String(e?.type??"something")}, and a document lists words, numbers, dates, images, videos or files`}}default:return{why:`it is a ${String(t.type)}, which a document has no field type for`}}}function T(i){let t=R(i);return"spec"in t?t.spec:void 0}export{T as a};
1
+ import{a as h}from"./chunk.D5LOTCBU.js";import{Ca as a,D as g,Fa as b,H as k,K as w,bc as x}from"./chunk.Q4MI53KK.js";var s=i=>i?._zod?.def,O=Symbol.for("@graview/core:collaborative"),v=/^\^\\d\{4\}-\\d\{2\}-\\d\{2\}\$$/;function R(i){let t=s(i),u=!0,f;for(let e=0;t&&e<4;e++){if(t.type==="optional"||t.type==="nullable")u=!1;else if(t.type==="default")u=!1,f=t.defaultValue;else break;t=s(t.innerType)}if(!t)return{why:"it is not a zod field"};let l=g(i),r={...u?{required:!0}:{},...f!==void 0?{default:f}:{},...l?{description:l}:{}},p=(t.checks??[]).map(e=>s(e)),c=a(i);if(c)return{spec:{type:c,...r}};if(b(i))return{spec:{type:"app-link",...r}};let d;for(let e=s(i),n=0;e&&d===void 0&&n<4;e=s(e.innerType),n++)d=e[O];let m=e=>d!==void 0&&d===1!=(e==="text")?{collaborative:d===1}:{};if(h(i))return{spec:{type:"text",format:"markdown",...r,...m("text")}};let y=x(i);if(y)return{spec:{type:y,...r}};switch(t.type){case"string":{let e=t.format;return e==="email"?{spec:{type:"email",...r}}:e==="url"?{spec:{type:"url",...r}}:e==="date"?{spec:{type:"date",...r}}:e==="datetime"||p.some(n=>n?.fn===w)?{spec:{type:"datetime",...r}}:p.some(n=>n?.format==="regex"&&(v.test(String(n?.pattern?.source??""))||n?.pattern?.source===k.source))?{spec:{type:"date",...r}}:{spec:{type:"string",...r,...m("string")}}}case"number":{let e={};for(let n of p){let o=n?.value;typeof o=="number"&&(n?.check==="greater_than"&&n.inclusive?e.min=Math.max(e.min??o,o):n?.check==="less_than"&&n.inclusive?e.max=Math.min(e.max??o,o):n?.check==="multiple_of"&&(e.step=o))}return{spec:{type:p.some(n=>n?.format==="safeint"||n?.format==="int")?"integer":"number",...e,...r}}}case"boolean":return{spec:{type:"boolean",...r}};case"enum":{let e=Object.keys(t.entries??{});return e.length>0?{spec:{type:"enum",options:e,...r}}:{why:"it is an enum with no options"}}case"array":{let e=s(t.element);if(e?.type==="enum"){let o=Object.keys(e.entries??{});return o.length>0?{spec:{type:"enum",multiple:!0,options:o,...r}}:{why:"it is a list of an enum with no options"}}let n=a(t.element)??(e?.type==="number"?"number":e?.type==="string"?"string":void 0);return n?{spec:{type:"list",of:n,...r}}:{why:`it is a list of ${String(e?.type??"something")}, and a document lists words, numbers, dates, images, videos or files`}}default:return{why:`it is a ${String(t.type)}, which a document has no field type for`}}}function T(i){let t=R(i);return"spec"in t?t.spec:void 0}export{T as a};
@@ -0,0 +1 @@
1
+ import"./chunk.KHRS2SKB.js";import"./chunk.25CQCCLN.js";import"./chunk.25VJPUDH.js";import"./chunk.T6PU3NKP.js";import"./chunk.KB5BCW23.js";import{a as x,b as P,c as L}from"./chunk.QSPLKCTX.js";import{b as R}from"./chunk.GHN62OMG.js";import"./chunk.2RASWDMQ.js";import"./chunk.XCWZFLIB.js";import"./chunk.6YK5E7ZQ.js";import"./chunk.AWUO3M5D.js";import"./chunk.VZDHRY3U.js";import"./chunk.V4HVFLFQ.js";import"./chunk.A2R53GWF.js";import"./chunk.QAMW5QDT.js";import"./chunk.B5PJCYBU.js";import"./chunk.Q2EGESEZ.js";import"./chunk.SMHP2CQH.js";import"./chunk.HJCQ6I3S.js";import"./chunk.EJ4MSVX2.js";import"./chunk.KQPKYWDM.js";import"./chunk.72YXFJKC.js";import"./chunk.OMRQTLI5.js";import"./chunk.MIE3ODQ2.js";import"./chunk.NEPQBMFT.js";import"./chunk.2PJ6STKA.js";import"./chunk.MBB5A6BT.js";import"./chunk.T535ZLRM.js";import"./chunk.ERPILTRY.js";import"./chunk.OTSBF367.js";import"./chunk.BIDL7GQD.js";import"./chunk.QS32TO4N.js";import"./chunk.JVDPRQ7J.js";import"./chunk.57YDGGJK.js";import"./chunk.H7AH3IW4.js";import"./chunk.VCTAFSZ5.js";import"./chunk.XOZU4OFA.js";import"./chunk.4TH3CGAZ.js";import"./chunk.Q5WEOX3Q.js";import"./chunk.MAHNJO6U.js";import"./chunk.75GENXGP.js";import"./chunk.YFVJUHAK.js";import"./chunk.NIAM7OTV.js";import"./chunk.WVUJXDXZ.js";import"./chunk.XYGNS637.js";import"./chunk.DZSZUX34.js";import"./chunk.4EXC26LI.js";import"./chunk.PWAP2GJS.js";import"./chunk.AHPYNDVA.js";import"./chunk.FNVGNISQ.js";import"./chunk.GZHZLJBF.js";import{s as T}from"./chunk.WUVXIUA7.js";import"./chunk.OJGHDWI6.js";import"./chunk.BN7C5ZYX.js";import"./chunk.REUMBCSV.js";import"./chunk.2KIWGQXC.js";import"./chunk.D5LOTCBU.js";import"./chunk.KZUMXT5J.js";import"./chunk.CGK2PY76.js";import{G as S,I as $,T as p,ba as C,da as A}from"./chunk.CYTTZOYL.js";import"./chunk.SDO3U72B.js";import{ka as v,qd as k}from"./chunk.Q4MI53KK.js";import"./chunk.FQLNBIQ5.js";import{b as i}from"./chunk.AJZBJBMO.js";var r=i(S(),1);var l=i(S(),1);var g=i(p(),1);var m={font:"inherit",fontSize:"0.875rem",minHeight:24,padding:0,border:0,borderRadius:2,background:"transparent",boxShadow:"none",color:"var(--graview-accent)",textDecoration:"underline",textUnderlineOffset:3,textAlign:"start",cursor:"pointer"};var e=i(p(),1);function Q({page:n=!1,go:E,onPick:y,onDiscard:N}){let{store:d,seatTalk:c}=C(),u=$(c),D=L(),h=E??D,{keep:M}=x(h),[H,f]=(0,r.useState)(!1);A();let t=u.draft;(0,r.useEffect)(()=>f(!1),[t]),(0,r.useEffect)(()=>{n||P(!1)},[n]);let w=(0,r.useRef)(null),b=t!==null&&!n;if((0,r.useLayoutEffect)(()=>{let s=w.current;if(!b||!s?.parentElement)return;let o=[];for(let a=s.previousElementSibling;a;a=a.previousElementSibling)a instanceof HTMLElement&&!a.inert&&a.tagName!=="STYLE"&&(a.inert=!0,o.push(a));return()=>{for(let a of o)a.inert=!1}},[b]),!t)return null;let G=R(t.drawn),F=d.schema.tryDefinition(t.kind),O=d.graph.nodesOfKind(t.kind).filter(s=>v(F,s)),q=()=>{c.setDraft(null),N?.()};return(0,e.jsxs)("section",{ref:w,"data-testid":"draft-frame","data-graview-draft-frame":n?"page":"scene","aria-label":`Draft: ${t.title}`,style:n?{display:"grid",gap:12,minWidth:0}:{position:"absolute",inset:12,zIndex:k("rail"),display:"grid",gridTemplateRows:"auto auto minmax(0, 1fr)",background:"var(--graview-panel)",border:"1px solid var(--graview-edge)",borderRadius:12,boxShadow:"var(--graview-lift-high)",overflow:"hidden",minHeight:0},children:[(0,e.jsxs)("p",{"data-testid":"draft-line",style:{...z,...n?{}:{padding:"10px 16px"}},children:[n?(0,e.jsx)("span",{children:"Draft"}):(0,e.jsxs)("span",{children:["Draft \u2014 ",(0,e.jsx)("span",{"data-testid":"draft-title",style:{color:"var(--graview-ink)",fontWeight:600},children:t.title})]}),(0,e.jsx)("span",{"aria-hidden":"true",children:"\xB7"}),(0,e.jsx)("button",{type:"button","data-testid":"draft-keep",disabled:H,title:`Keep \u201C${t.title}\u201D as a lens: a place of its own`,onClick:()=>{f(!0),M(t).finally(()=>f(!1))},style:m,children:"Keep as a lens"}),(0,e.jsx)("span",{"aria-hidden":"true",children:"\xB7"}),(0,e.jsx)("button",{type:"button","data-testid":"draft-discard",onClick:q,style:m,children:"Discard"})]}),u.draftNote?(0,e.jsx)("p",{"data-testid":"draft-note",role:"status",style:{margin:0,padding:n?0:"0 16px 8px",fontSize:"0.8125rem",color:"var(--graview-warn)"},children:u.draftNote}):(0,e.jsx)("span",{}),(0,e.jsx)("div",{"data-testid":"draft-lens","data-graview-draft":t.lens.name,role:"group","aria-label":t.title,tabIndex:0,style:n?{height:"min(72vh, 760px)",display:"grid",gridTemplateRows:"minmax(0, 1fr)",overflow:"auto",scrollbarGutter:"stable",border:"1px solid var(--graview-edge)",borderRadius:12,background:"var(--graview-panel)"}:{minHeight:0,overflow:"auto",scrollbarGutter:"stable",display:"grid",gridTemplateRows:"minmax(0, 1fr)"},onClick:s=>{let o=s.target?.closest("[data-graview-pick]")?.getAttribute("data-graview-pick");if(!o||!d.graph.getNode(o))return;s.preventDefault();let a=d.graph.getNode(o);y?(c.setDraft(null),y(o)):h({to:"record",id:o,kind:a.kind,label:o,address:"",said:""})},children:(0,e.jsx)(T,{kind:t.kind,view:t.title,children:(0,e.jsx)(G,{nodes:O,label:t.title,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1})})})]})}var z={margin:0,display:"flex",flexWrap:"wrap",alignItems:"baseline",gap:"4px 8px",fontSize:"0.875rem",color:"var(--graview-ink-muted)",borderBottom:"1px solid var(--graview-edge)",paddingBottom:8};export{Q as DraftFrame};