graview 0.1.63 → 0.1.64

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 (179) hide show
  1. package/dist/preview/chunk.2D7K2IJQ.js +4 -0
  2. package/dist/preview/{chunk.GHN62OMG.js → chunk.2DH42I7L.js} +1 -1
  3. package/dist/preview/chunk.2E62YCMZ.js +1 -0
  4. package/dist/preview/{chunk.DIFIHNR3.js → chunk.2G5WLG3Z.js} +1 -1
  5. package/dist/preview/chunk.2HV5FF6O.js +1 -0
  6. package/dist/preview/{chunk.6Z2GHQQH.js → chunk.2JDAUKSN.js} +3 -3
  7. package/dist/preview/{chunk.DZSZUX34.js → chunk.2JEN2RCB.js} +1 -1
  8. package/dist/preview/{chunk.NEPQBMFT.js → chunk.2TCOLAL2.js} +1 -1
  9. package/dist/preview/{chunk.VZDHRY3U.js → chunk.2V7QTIAV.js} +1 -1
  10. package/dist/preview/{chunk.T3JIZNE7.js → chunk.2VIS2NAT.js} +1 -1
  11. package/dist/preview/{chunk.2PJ6STKA.js → chunk.2VYGDY5Z.js} +1 -1
  12. package/dist/preview/{chunk.5QXQ7PBI.js → chunk.37I45R6V.js} +1 -1
  13. package/dist/preview/chunk.3FKKH2XU.js +74 -0
  14. package/dist/preview/chunk.3J7XLJP2.js +1 -0
  15. package/dist/preview/chunk.3OEODIHB.js +1 -0
  16. package/dist/preview/{chunk.R4HDKNT3.js → chunk.3RD4JHVG.js} +1 -1
  17. package/dist/preview/{chunk.XCEZCOX4.js → chunk.3RUV4HE4.js} +1 -1
  18. package/dist/preview/{chunk.WUVXIUA7.js → chunk.3SAESG6X.js} +1 -1
  19. package/dist/preview/{chunk.OIMGD7FR.js → chunk.47N2G7A5.js} +1 -1
  20. package/dist/preview/{chunk.B5PJCYBU.js → chunk.4DZOAB4D.js} +1 -1
  21. package/dist/preview/chunk.4HTB6TX2.js +1 -0
  22. package/dist/preview/{chunk.EJ2WE764.js → chunk.4Q5PCMGZ.js} +4 -4
  23. package/dist/preview/{chunk.2F4AZZQR.js → chunk.4U45EY5M.js} +1 -1
  24. package/dist/preview/{chunk.PDMX3GTL.js → chunk.4VRX7FCO.js} +1 -1
  25. package/dist/preview/{chunk.HRNNRA2I.js → chunk.4XCYZRZ3.js} +1 -1
  26. package/dist/preview/chunk.52MBXPEK.js +1 -0
  27. package/dist/preview/{chunk.D5LOTCBU.js → chunk.5AD2QHWH.js} +1 -1
  28. package/dist/preview/{chunk.36OE6RKG.js → chunk.5B7NG6WH.js} +1 -1
  29. package/dist/preview/chunk.5HJ2GTKZ.js +1 -0
  30. package/dist/preview/{chunk.2KIWGQXC.js → chunk.5IEZF433.js} +1 -1
  31. package/dist/preview/{chunk.UAVK54Z6.js → chunk.5PPCK7QT.js} +1 -1
  32. package/dist/preview/{chunk.SSAETRHR.js → chunk.6NRWLCIZ.js} +2 -2
  33. package/dist/preview/{chunk.REUMBCSV.js → chunk.75JQCTR6.js} +1 -1
  34. package/dist/preview/{chunk.A2R53GWF.js → chunk.77JI5T4F.js} +1 -1
  35. package/dist/preview/{chunk.BQM3YAMR.js → chunk.77MLXWZV.js} +1 -1
  36. package/dist/preview/{chunk.33XNYHI6.js → chunk.7AOEZJRM.js} +1 -1
  37. package/dist/preview/{chunk.4EXC26LI.js → chunk.7CLKGKSF.js} +1 -1
  38. package/dist/preview/{chunk.NTC2H5ZX.js → chunk.7SRSE5IS.js} +1 -1
  39. package/dist/preview/{chunk.SMHP2CQH.js → chunk.7VAHHEDX.js} +1 -1
  40. package/dist/preview/{chunk.4MEQUUG4.js → chunk.7ZG77OI3.js} +1 -1
  41. package/dist/preview/chunk.7ZHH7WBN.js +1 -0
  42. package/dist/preview/{chunk.ZY7US4Y7.js → chunk.AJEK3I5X.js} +1 -1
  43. package/dist/preview/{chunk.T535ZLRM.js → chunk.APRWUIE3.js} +1 -1
  44. package/dist/preview/{chunk.KXFNRJ46.js → chunk.APUQIELA.js} +1 -1
  45. package/dist/preview/{chunk.OXWOUE3W.js → chunk.ATHLE33D.js} +1 -1
  46. package/dist/preview/chunk.B2YTHEX5.js +1 -0
  47. package/dist/preview/{chunk.KB5BCW23.js → chunk.B6JR7EQO.js} +1 -1
  48. package/dist/preview/{chunk.H5SN46VK.js → chunk.BN42H3C6.js} +1 -1
  49. package/dist/preview/{chunk.OM2NIQWA.js → chunk.BVIJXL4J.js} +1 -1
  50. package/dist/preview/{chunk.N3T2O6EW.js → chunk.CC7P435K.js} +2 -2
  51. package/dist/preview/{chunk.XBYJCGPU.js → chunk.CJHYGRWV.js} +1 -1
  52. package/dist/preview/chunk.CM65MCHA.js +1 -0
  53. package/dist/preview/{chunk.STDJ6XG5.js → chunk.D2XLECMP.js} +1 -1
  54. package/dist/preview/{chunk.72YXFJKC.js → chunk.DJIF7IAQ.js} +1 -1
  55. package/dist/preview/{chunk.CGK2PY76.js → chunk.DLWFULWE.js} +1 -1
  56. package/dist/preview/{chunk.MT5DXJKN.js → chunk.DMENNIHT.js} +1 -1
  57. package/dist/preview/{chunk.Q4GJIJAU.js → chunk.DN7UCBOA.js} +1 -1
  58. package/dist/preview/{chunk.EJ4MSVX2.js → chunk.DQAMVVE6.js} +1 -1
  59. package/dist/preview/{chunk.75GENXGP.js → chunk.DUP2CGVH.js} +1 -1
  60. package/dist/preview/{chunk.6XHPBJ5F.js → chunk.DYRULRFX.js} +1 -1
  61. package/dist/preview/{chunk.MY5HJW2Z.js → chunk.E4TXLT25.js} +1 -1
  62. package/dist/preview/{chunk.BN7C5ZYX.js → chunk.F6BNFLQM.js} +1 -1
  63. package/dist/preview/chunk.FN34P4IS.js +1 -0
  64. package/dist/preview/{chunk.MBB5A6BT.js → chunk.FUPYIOXZ.js} +1 -1
  65. package/dist/preview/{chunk.HSMJHCR3.js → chunk.FXRYMT3U.js} +1 -1
  66. package/dist/preview/{chunk.CI4RZL4Z.js → chunk.G5BVZLCM.js} +1 -1
  67. package/dist/preview/{chunk.4TH3CGAZ.js → chunk.G7YLK4PX.js} +1 -1
  68. package/dist/preview/chunk.GF62K25C.js +1 -0
  69. package/dist/preview/chunk.GFQPO3NC.js +1 -0
  70. package/dist/preview/{chunk.YOUB3J3Y.js → chunk.GH5UBSQI.js} +1 -1
  71. package/dist/preview/{chunk.DBFJVVWF.js → chunk.GHHKRFPD.js} +1 -1
  72. package/dist/preview/{chunk.24HNOLUS.js → chunk.GP5DAA4P.js} +1 -1
  73. package/dist/preview/{chunk.DWK3GXRR.js → chunk.HPG6CNKM.js} +1 -1
  74. package/dist/preview/chunk.HSJEOM3W.js +1 -0
  75. package/dist/preview/{chunk.JVDPRQ7J.js → chunk.HZPRMHSL.js} +1 -1
  76. package/dist/preview/{chunk.Q4MI53KK.js → chunk.IQGSEAQ2.js} +5 -5
  77. package/dist/preview/{chunk.JIEDJEHK.js → chunk.ITBG37WJ.js} +1 -1
  78. package/dist/preview/{chunk.HOFATBGD.js → chunk.JHUCKEJS.js} +1 -1
  79. package/dist/preview/{chunk.Y4ZM75WL.js → chunk.JOM6MFVE.js} +1 -1
  80. package/dist/preview/{chunk.ZSGDVNVN.js → chunk.JS2UZYGB.js} +1 -1
  81. package/dist/preview/{chunk.DDFRFSVN.js → chunk.K2PXP5H6.js} +1 -1
  82. package/dist/preview/{chunk.KL5H7KEV.js → chunk.K54ISAXN.js} +1 -1
  83. package/dist/preview/{chunk.YXAKHXYB.js → chunk.K5YFUMRS.js} +1 -1
  84. package/dist/preview/chunk.KHXRJLLU.js +50 -0
  85. package/dist/preview/{chunk.E3XJMO7Q.js → chunk.KMIFSPGQ.js} +1 -1
  86. package/dist/preview/chunk.L4V5VLSM.js +1 -0
  87. package/dist/preview/{chunk.VCTAFSZ5.js → chunk.LDMBJC3B.js} +1 -1
  88. package/dist/preview/{chunk.MIE3ODQ2.js → chunk.LTOQ22ZJ.js} +1 -1
  89. package/dist/preview/{chunk.CCQMDZHO.js → chunk.M5VHUIDB.js} +1 -1
  90. package/dist/preview/chunk.N643PVQA.js +1 -0
  91. package/dist/preview/{chunk.XUO67YMT.js → chunk.NGRL3QOI.js} +1 -1
  92. package/dist/preview/{chunk.ZELWW7UA.js → chunk.NRPBTV6O.js} +2 -2
  93. package/dist/preview/{chunk.ZLTHWCKL.js → chunk.O7HHNQK4.js} +2 -2
  94. package/dist/preview/{chunk.SGPXYDSG.js → chunk.OW3M4OBN.js} +1 -1
  95. package/dist/preview/{chunk.KQPKYWDM.js → chunk.OXFDB5BB.js} +1 -1
  96. package/dist/preview/{chunk.ZZAI57VI.js → chunk.P4TAX3HE.js} +1 -1
  97. package/dist/preview/{chunk.XUXZW7DU.js → chunk.P6FNJR6E.js} +1 -1
  98. package/dist/preview/{chunk.25CQCCLN.js → chunk.PR74PGLC.js} +1 -1
  99. package/dist/preview/{chunk.AW26EETU.js → chunk.PVDDSBRG.js} +1 -1
  100. package/dist/preview/{chunk.SME4HD5I.js → chunk.QROPDEJF.js} +1 -1
  101. package/dist/preview/{chunk.AWUO3M5D.js → chunk.QRT6BZR6.js} +1 -1
  102. package/dist/preview/{chunk.AHPYNDVA.js → chunk.R5MLRKAO.js} +1 -1
  103. package/dist/preview/{chunk.NWWJNNEK.js → chunk.RDA35HZB.js} +1 -1
  104. package/dist/preview/{chunk.FXCQJPN4.js → chunk.REXU6ARY.js} +1 -1
  105. package/dist/preview/{chunk.OMRQTLI5.js → chunk.S6QZBWCJ.js} +1 -1
  106. package/dist/preview/{chunk.RUFYORIJ.js → chunk.S7SHWDPR.js} +1 -1
  107. package/dist/preview/{chunk.QAMW5QDT.js → chunk.SADHOSRC.js} +1 -1
  108. package/dist/preview/chunk.SJHUC4TL.js +1 -0
  109. package/dist/preview/chunk.SL5FXE3R.js +1 -0
  110. package/dist/preview/{chunk.WBS7ND2C.js → chunk.T4JP6BGP.js} +1 -1
  111. package/dist/preview/{chunk.34DRUCH2.js → chunk.T4TRJDBF.js} +1 -1
  112. package/dist/preview/{chunk.QS32TO4N.js → chunk.TA2JTUNX.js} +1 -1
  113. package/dist/preview/{chunk.PWAP2GJS.js → chunk.TMHVYI5R.js} +1 -1
  114. package/dist/preview/chunk.TOLW64EO.js +1 -0
  115. package/dist/preview/chunk.TP3PZRHE.js +1 -0
  116. package/dist/preview/{chunk.57YDGGJK.js → chunk.TQ2G4AM4.js} +1 -1
  117. package/dist/preview/{chunk.O3YIWIVQ.js → chunk.TUR2DA2M.js} +1 -1
  118. package/dist/preview/{chunk.CAXILB7K.js → chunk.TYIBLD2D.js} +1 -1
  119. package/dist/preview/{chunk.FFXBDOKA.js → chunk.UD2GGG7L.js} +1 -1
  120. package/dist/preview/{chunk.Q2EGESEZ.js → chunk.UDU545CL.js} +1 -1
  121. package/dist/preview/{chunk.IEDCFSN5.js → chunk.UDYFGYJP.js} +1 -1
  122. package/dist/preview/{chunk.K7TK3KRB.js → chunk.UJNLT3L6.js} +1 -1
  123. package/dist/preview/chunk.UN2IAA5R.js +1 -0
  124. package/dist/preview/chunk.VLX7YWVH.js +25 -0
  125. package/dist/preview/{chunk.735AFUP5.js → chunk.VT4YBFZL.js} +1 -1
  126. package/dist/preview/{chunk.2RASWDMQ.js → chunk.VZAF3452.js} +2 -2
  127. package/dist/preview/{chunk.OTSBF367.js → chunk.WFCE7NLK.js} +2 -2
  128. package/dist/preview/{chunk.XCWZFLIB.js → chunk.WHX47OJM.js} +1 -1
  129. package/dist/preview/{chunk.ZRH5X3MR.js → chunk.WMARJ5E3.js} +1 -1
  130. package/dist/preview/chunk.WPQP54FM.js +1 -0
  131. package/dist/preview/{chunk.HMMK7LCL.js → chunk.WX23K7ZU.js} +1 -1
  132. package/dist/preview/{chunk.H7AH3IW4.js → chunk.X36BYTEG.js} +1 -1
  133. package/dist/preview/{chunk.B46UZHGW.js → chunk.XCLW4GP7.js} +1 -1
  134. package/dist/preview/{chunk.JO3BBRSR.js → chunk.XEG7ZDRG.js} +1 -1
  135. package/dist/preview/{chunk.KPQLM4TM.js → chunk.XIVELWAM.js} +1 -1
  136. package/dist/preview/{chunk.PDS4HT46.js → chunk.XJWKIXPV.js} +1 -1
  137. package/dist/preview/{chunk.5GC4VAHU.js → chunk.XQ5RTPEF.js} +1 -1
  138. package/dist/preview/{chunk.NIAM7OTV.js → chunk.YEXFVDRA.js} +1 -1
  139. package/dist/preview/{chunk.FGDGTES4.js → chunk.YIZPW7IK.js} +2 -2
  140. package/dist/preview/chunk.YLOGIJOH.js +1 -0
  141. package/dist/preview/chunk.YMXWS4XN.js +3 -0
  142. package/dist/preview/{chunk.WYPCLZL7.js → chunk.YSBTE3PX.js} +1 -1
  143. package/dist/preview/{chunk.V4HVFLFQ.js → chunk.Z26T5E76.js} +1 -1
  144. package/dist/preview/{chunk.37FLKAVZ.js → chunk.Z4XGEV34.js} +1 -1
  145. package/dist/preview/{chunk.XYGNS637.js → chunk.ZA5TDCBC.js} +1 -1
  146. package/dist/preview/{chunk.3OQ6S6H4.js → chunk.ZNDVJGTY.js} +1 -1
  147. package/dist/preview/{chunk.YZBJUAS6.js → chunk.ZQGLPP7A.js} +1 -1
  148. package/dist/preview/index.html +53 -53
  149. package/dist/preview/page.js +2 -2
  150. package/dist/preview/splash.js +3 -3
  151. package/package.json +6 -6
  152. package/dist/preview/chunk.26H33GJC.js +0 -50
  153. package/dist/preview/chunk.3JCHJLH6.js +0 -1
  154. package/dist/preview/chunk.47QEWSSE.js +0 -1
  155. package/dist/preview/chunk.4DAKQXDG.js +0 -1
  156. package/dist/preview/chunk.6CSHRMJC.js +0 -1
  157. package/dist/preview/chunk.6HKWAHPT.js +0 -1
  158. package/dist/preview/chunk.6YK5E7ZQ.js +0 -4
  159. package/dist/preview/chunk.ATDIDPKZ.js +0 -1
  160. package/dist/preview/chunk.BF3EZCG3.js +0 -1
  161. package/dist/preview/chunk.BKQICGFW.js +0 -1
  162. package/dist/preview/chunk.C65EHQ7V.js +0 -1
  163. package/dist/preview/chunk.CYTTZOYL.js +0 -25
  164. package/dist/preview/chunk.ERPILTRY.js +0 -1
  165. package/dist/preview/chunk.FNVGNISQ.js +0 -3
  166. package/dist/preview/chunk.G2JAYG2Z.js +0 -1
  167. package/dist/preview/chunk.JNIDS66Z.js +0 -1
  168. package/dist/preview/chunk.KZUMXT5J.js +0 -74
  169. package/dist/preview/chunk.MAHNJO6U.js +0 -1
  170. package/dist/preview/chunk.MENLUNM5.js +0 -1
  171. package/dist/preview/chunk.O67JXUVG.js +0 -1
  172. package/dist/preview/chunk.QSPLKCTX.js +0 -1
  173. package/dist/preview/chunk.SJUXFPTI.js +0 -1
  174. package/dist/preview/chunk.V6IL7CIZ.js +0 -1
  175. package/dist/preview/chunk.WNS5LEO5.js +0 -1
  176. package/dist/preview/chunk.XIW4SZHD.js +0 -1
  177. package/dist/preview/chunk.Z2ZQJ3DD.js +0 -1
  178. package/dist/preview/chunk.ZP7JEVVU.js +0 -1
  179. package/dist/preview/chunk.ZVG4FXJK.js +0 -1
@@ -0,0 +1,74 @@
1
+ var __graviewPreload=(base,files)=>{if(typeof document>"u")return;const asked=globalThis.__graviewPreloaded??=new Set;for(const file of files){const href=new URL(file,base).href;if(asked.has(href))continue;asked.add(href);const link=document.createElement("link");link.rel="modulepreload";link.href=href;document.head.append(link)}};import{c as br}from"./chunk.DLWFULWE.js";import{G as R,Ka as O,O as xn,Oa as Ln,Pa as An,Qa as En,Ta as j,V as L,Xa as Y,a as Te,da as fe,e as Ne,ea as Z,l as wn,m as vn,pa as Sn,s as bn,v as ae,xa as Pn,z as kn}from"./chunk.VLX7YWVH.js";import{a as C}from"./chunk.SDO3U72B.js";import{$c as sn,Pc as rn,Qc as tn,Rd as ue,Sd as oe,Td as dn,Vd as Ee,Xc as I,Xd as cn,Yc as on,Yd as pn,Zc as an,Zd as J,bd as ln,cd as Ae,db as en,ee as un,fe as fn,ge as gn,he as mn,je as yn,ke as He,la as Je,oe as hn,pa as Ze,qa as Xe,vb as nn}from"./chunk.IQGSEAQ2.js";import{b as v}from"./chunk.AJZBJBMO.js";var Be=v(R(),1),Hn=new WeakMap,ge=e=>{let n=Hn.get(e);return n||Hn.set(e,n={open:null,drawn:0,listeners:new Set}),n},kr=e=>{for(let n of[...e.listeners])n()},xr=0;function Dt(e,n){let t=ge(e);t.open=n?{...n,at:++xr}:null,kr(t)}var Tn=e=>n=>{let t=ge(e);return t.listeners.add(n),()=>void t.listeners.delete(n)};function Nn(e){let n=()=>e?ge(e).drawn>0:!1;return(0,Be.useSyncExternalStore)(e?Tn(e):Sr,n,n)}var Sr=()=>()=>{};function $t(e){let n=()=>ge(e).open;return(0,Be.useSyncExternalStore)(Tn(e),n,n)}var V=v(R(),1),Bn=v(br(),1);function Pr(e){let[n,t]=(0,V.useState)(null),[r,a]=(0,V.useState)(null);return(0,V.useLayoutEffect)(()=>{e.current!==r&&a(e.current)}),(0,V.useLayoutEffect)(()=>{if(!r||typeof ResizeObserver>"u")return;let o=()=>Math.round(r.getBoundingClientRect().width),i=o();t(i);let c=new ResizeObserver(()=>{let p=o();p!==i&&(i=p,(0,Bn.flushSync)(()=>t(p)))});return c.observe(r),()=>c.disconnect()},[r]),n}function Lr(e=!0){let[n,t]=(0,V.useState)();return(0,V.useEffect)(()=>{if(!e)return t(void 0);let r=0,a=()=>t(innerHeight),o=()=>{a(),clearTimeout(r),r=window.setTimeout(a,300)},i=c=>{for(let[p,d]of[[window,"resize"],[window,"orientationchange"],[window.visualViewport,"resize"]])p?.[c](d,o)};return i("addEventListener"),a(),()=>{clearTimeout(r),i("removeEventListener")}},[e]),n}var me={position:"absolute",width:1,height:1,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(50%)",whiteSpace:"nowrap"};var E=v(R(),1);var N=v(L(),1),Mn=6e3;function Ar(e){return{...e,notify:n=>e.notify({...n,from:"framework"})}}var Er=e=>({place:"overview",...e&&!/^(aggregate|kind):/.test(e)?{record:e}:{}});function Hr(){let e=[],n=0,t=new Set,r=new Map,a,o=()=>{for(let d of[...t])d()},i=d=>{if(clearTimeout(r.get(d.id)),r.delete(d.id),d.kind!=="toast")return;let u=(d.actions?.length??0)+(d.action?1:0),l=d.timeout??(u>0?!1:Mn);l!==!1&&r.set(d.id,setTimeout(()=>a?.()?i(d):c(d.id),l))},c=d=>{clearTimeout(r.get(d)),r.delete(d),e.some(u=>u.id===d)&&(e=e.filter(u=>u.id!==d),o())},p=d=>{e=e.some(u=>u.id===d.id)?e.map(u=>u.id===d.id?d:u):[...e,d],i(d),o()};return{notify(d){let u=d.id??`notice-${++n}`;return p({...d,id:u,said:++n}),{id:u,dismiss:()=>c(u),update:l=>{let m=e.find(h=>h.id===u);m&&p({...m,...l,id:u,kind:m.kind,said:l.sentence!==void 0&&l.sentence!==m.sentence?++n:m.said})}}},dismiss:c,hold(d){a=d},list:()=>e,subscribe(d){return t.add(d),()=>t.delete(d)}}}function Tr({notices:e}){let n=e.reduce((c,p)=>!c||p.said>c.said?p:c,void 0),[t,r]=(0,E.useState)(""),[a,o]=(0,E.useState)(""),i=(0,E.useRef)(0);return(0,E.useEffect)(()=>{if(!n||n.said===i.current)return;i.current=n.said;let c=n.tone==="bad";(c?o:r)("");let p=setTimeout(()=>(c?o:r)(n.sentence),50);return()=>clearTimeout(p)},[n]),(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)("div",{role:"status","aria-live":"polite","data-testid":"notices-said",style:me,children:t}),(0,N.jsx)("div",{role:"alert","data-testid":"notices-alarm",style:me,children:a})]})}var Nr=(0,E.createContext)(null);function Br({board:e,anchor:n,report:t}){let r=(0,E.useSyncExternalStore)(e.subscribe,e.list,e.list);return(0,E.useEffect)(()=>Rr(Me.prefetch),[]),(0,N.jsxs)(N.Fragment,{children:[r.length>0?(0,N.jsx)(E.Suspense,{fallback:null,children:(0,N.jsx)(Cr,{notices:r,anchor:n,board:e,...t?{report:t}:{}})}):null,(0,N.jsx)(Tr,{notices:r})]})}var Me=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.MB7LKKUD.js","./chunk.3FKKH2XU.js","./chunk.DLWFULWE.js","./chunk.VLX7YWVH.js","./chunk.SDO3U72B.js","./chunk.IQGSEAQ2.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.4U45EY5M.js")))),Mr=()=>Me.load().then(()=>{},()=>{}),Cr=Me.part((e,n)=>(0,N.jsx)(e.NoticeStacks,{...n}),{quiet:!0});function Rr(e){let n=()=>{(typeof navigator>"u"||navigator.onLine!==!1)&&e()},t=globalThis;if(t.requestIdleCallback){let a=t.requestIdleCallback(n,{timeout:5e3});return()=>t.cancelIdleCallback?.(a)}let r=setTimeout(n,2500);return()=>clearTimeout(r)}var M=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.ATHLE33D.js","./chunk.P4TAX3HE.js","./chunk.T4TRJDBF.js","./chunk.APUQIELA.js","./chunk.S6QZBWCJ.js","./chunk.LTOQ22ZJ.js","./chunk.2TCOLAL2.js","./chunk.2VYGDY5Z.js","./chunk.FUPYIOXZ.js","./chunk.3OEODIHB.js","./chunk.X36BYTEG.js","./chunk.U5P23GO7.js","./chunk.GZHZLJBF.js","./chunk.3SAESG6X.js","./chunk.OJGHDWI6.js","./chunk.F6BNFLQM.js","./chunk.75JQCTR6.js","./chunk.5IEZF433.js","./chunk.5AD2QHWH.js","./chunk.3FKKH2XU.js","./chunk.DLWFULWE.js","./chunk.VLX7YWVH.js","./chunk.SDO3U72B.js","./chunk.IQGSEAQ2.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.CC7P435K.js"))));var y=v(R(),1);var Ce=e=>Math.round(e).toString(16).padStart(2,"0");function Cn(e){let n=t=>{let r=e?.schemes?.[t]?.ground,a=r?rn(r)[0]:void 0;return a?`#${Ce(a.r)}${Ce(a.g)}${Ce(a.b)}`:void 0};if(e?.scheme==="light"||e?.scheme==="dark"){let t=n(e.scheme);return t?[{color:t}]:[]}return["light","dark"].flatMap(t=>{let r=n(t);return r?[{color:r,media:`(prefers-color-scheme: ${t})`}]:[]})}var Re=v(R(),1);var Rn=v(R(),1);function ie(e){return(0,Rn.useMemo)(()=>e===void 0||e===""?void 0:{__html:e},[e])}var _=v(L(),1);function Oe({brand:e,size:n=22}){let t=xn(),r=sn(e),a=On(r?.light),o=a?On(r?.dark):void 0,i=ie(a!==void 0&&I(a)?a:void 0),c=ie(o!==void 0&&I(o)?o:void 0),p={display:"inline-flex",flex:"0 0 auto",height:n,color:"var(--graview-accent)"},d=ln(e);if(d)return(0,_.jsx)("span",{className:"graview-logo graview-emoji-mark","data-testid":"app-mark","aria-hidden":!0,style:{...p,alignItems:"center",fontSize:`${n*.86/16}rem`,lineHeight:1},children:d});if(!a)return null;let u=e?.logoAlt??e?.name??"",l=u!==""&&u!==e?.name,m=l?{role:"img","aria-label":u}:{"aria-hidden":!0};if(o){let w=(x,b,S)=>I(x)?(0,_.jsx)("span",{className:"graview-logo-face","data-graview-scheme-only":S,dangerouslySetInnerHTML:b}):(0,_.jsx)("img",{className:"graview-logo-face","data-graview-scheme-only":S,src:Ae(t,x),alt:""});return(0,_.jsxs)("span",{className:"graview-logo","data-testid":"app-mark",style:p,...m,children:[w(a,i,"light"),w(o,c,"dark")]})}let h=r?.darkFallback==="invert"?{"data-graview-logo-fallback":"invert"}:{};return I(a)?(0,_.jsx)("span",{className:"graview-logo","data-testid":"app-mark",style:p,...h,...m,dangerouslySetInnerHTML:i}):(0,_.jsx)("img",{className:"graview-logo","data-testid":"app-mark",src:Ae(t,a),alt:l?u:"",...h,style:{...p,width:"auto"}})}function On(e){if(!(!e||!an(e)))return I(e)&&on(e)!==null?void 0:e}function Or(e){(0,Re.useEffect)(()=>{if(!e||typeof document>"u")return;let n=[...document.querySelectorAll('link[rel~="icon"]')],t=n.map(a=>a.getAttribute("href")),r;n.length===0&&(r=document.createElement("link"),r.rel="icon",r.setAttribute("data-graview-favicon",""),document.head.appendChild(r),n.push(r));for(let a of n)a.href=e;return()=>{r&&r.remove(),n.forEach((a,o)=>{a!==r&&t[o]!==null&&t[o]!==void 0&&a.setAttribute("href",t[o])})}},[e])}function Fr(e){let n=e?JSON.stringify(Cn(e)):"[]";(0,Re.useEffect)(()=>{let t=JSON.parse(n);if(t.length===0||typeof document>"u")return;let r=[...document.head.querySelectorAll('meta[name="theme-color"]:not([data-graview-theme-color])')];r.forEach(o=>o.setAttribute("name","graview-theme-color-held"));let a=t.map(({color:o,media:i})=>{let c=document.createElement("meta");return c.name="theme-color",c.content=o,i&&(c.media=i),c.setAttribute("data-graview-theme-color",""),document.head.appendChild(c),c});return()=>{a.forEach(o=>o.remove()),r.forEach(o=>o.setAttribute("name","theme-color"))}},[n])}var s=v(L(),1),Vr=M.part((e,n)=>(0,s.jsx)(e.TidyFoot,{...n}),{quiet:!0}),Dr=M.part((e,n)=>(0,s.jsx)(e.Here,{...n}),{quiet:!0});function $r(){let e=Z(),[n,t]=(0,y.useState)("");return(0,y.useEffect)(()=>e?.store.subscribe((r,a)=>{a.some(o=>o.author.id!==e.principal.id)&&M.load().then(o=>o.sayTheirChange(a,e,t),String)}),[e]),(0,s.jsx)("span",{role:"status",className:"graview-bar-said",children:n})}var Fn="home",Vn="/",U="scene:whole";function Ir(e){let{store:n,principal:t,views:r}=e,a=n.kindsKeptFrom(t),o=n.schema.kinds.filter(f=>!n.modules.disabledKinds.has(f)&&!a.has(f)),i=r?.arrangement?.(),c=r?.places()??[],p=mn(i,n.schema,c),d=gn(n.schema,i,[...n.modules.administered.values()].flatMap(f=>f.kinds??[])),u=(f,P)=>(!n.graph.size.nodes||n.graph.count(f)>0)&&(p?P?p.places.has(`${f}|${P}`):p.kinds.has(f):!d.has(f)),l=[{key:Fn,label:"Home",path:Vn,group:"home",primary:!0}],m=c.filter(f=>o.includes(f.kind)&&f.as!==yn),h=m.filter(f=>!f.hidden),w=new Set(oe(h).map(f=>J(f,c,n.schema).toLowerCase())),x=f=>cn(f.as,pn(f,c)?Ee(n.schema,f.kind).slice(1):void 0),b=new Set(i?.hide??[]),S=hn(o,i?.order,h);for(let{kind:f,view:P}of S){if(P){l.push({key:`place:${P.kind}:${P.as}`,label:J(P,c,n.schema),path:x(P),group:"lists",kind:f,primary:p?p.places.has(`${f}|${P.as}`):!0});continue}let Q=Ze(n.schema,f),T=w.has(Q.toLowerCase());l.push({key:`kind:${f}`,label:T?Xe(n.schema,f):Q,path:Ee(n.schema,f),group:"lists",kind:f,primary:T||b.has(f)?!1:u(f),...b.has(f)?{hidden:!0}:{}})}for(let f of oe(m)){if(S.some(T=>T.view&&ue(T.view,f)))continue;let P=x(f),Q=[f.kind,...f.over??[]].some(T=>o.includes(T)&&u(T,f.as));l.some(T=>T.path===P)||l.push({key:`place:${f.kind}:${f.as}`,label:J(f,c,n.schema),path:P,group:"pictures",kind:f.kind,primary:Q,hidden:f.hidden})}return o.some(f=>Object.keys(n.schema.tryDefinition(f)?.edges??{}).length>0)&&l.push({key:"connections",label:"Connections",path:"/map",group:"pictures",primary:!1}),l}function _r(e,n){let[t="/",r=""]=n.split("?"),a=e.find(i=>i.path===(r?`${t}?${r}`:t))??e.find(i=>i.path===t);if(a)return a.key;let o=`/${t.split("/").filter(Boolean)[0]??""}`;return e.find(i=>i.group==="lists"&&i.path===o)?.key??null}var Dn=(0,y.createContext)(null),Wr=()=>(0,y.useContext)(Dn),W=30,$n=48,X=640,Ve=4,Fe=2;function In(e){let{widths:n,current:t,room:r,more:a,gap:o=Ve,primary:i,most:c=fn}=e;if(n.length===0||!(r>0)||!(a>0)||n.some(l=>!(l>0)))return null;let p=(l,m)=>l.reduce((h,w)=>h+n[w],0)+o*Math.max(0,l.length-1)+(m?o+a:0),d=(l,m)=>t<0||!l.includes(t)||l.slice(0,m).includes(t)?l.slice(0,m):[...l.filter(h=>h!==t).slice(0,m-1),t].sort((h,w)=>h-w),u=d(n.map((l,m)=>m).filter(l=>i?.[l]!==!1||l===t),c);if(p(u,u.length<n.length)<=r)return u.length>=Fe?u:null;for(let l=u.length-1;l>=Fe;l--){let m=d(u,l);if(p(m,!0)<=r)return m}return null}var zr=`
2
+ .graview-bar{display:block;margin:0;padding:0;container:graview-bar/inline-size;flex:0 0 auto;position:relative;background:var(--graview-bar);border-bottom:1px solid var(--graview-edge);color:var(--graview-ink);font-family:var(--graview-font-body,system-ui)}
3
+ .graview-bar-row{display:flex;flex-wrap:nowrap;align-items:center;gap:16px;height:${$n-1}px;margin:0;padding:0 16px}
4
+ .graview-bar-home,.graview-bar-face,.graview-bar-place,.graview-bar-item,.graview-bar-at{display:inline-flex;align-items:center;box-sizing:border-box;min-width:0;margin:0;border:0;background:none;box-shadow:none;font:inherit;letter-spacing:normal;text-transform:none;text-decoration:none;color:var(--graview-ink);cursor:pointer;text-align:left}
5
+ .graview-bar-app{display:flex;flex:0 1 auto;max-width:50%}
6
+ .graview-bar-app::after{content:"";flex:0 100000 auto;width:2px;min-width:0}
7
+ .graview-bar-name{margin:0;display:flex;font-family:var(--graview-font-display,var(--graview-font-body,system-ui));font-size:.9375rem;font-weight:600;line-height:1.25}
8
+ .graview-bar-home{gap:8px;min-width:auto;min-height:30px;padding:0;letter-spacing:-.005em}
9
+ .graview-bar-app-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal;word-break:normal}
10
+ .graview-bar-faces{display:inline-flex;flex:0 0 auto;box-sizing:border-box;height:30px;margin:0;padding:2px;gap:2px;border:1px solid var(--graview-edge);border-radius:8px}
11
+ .graview-bar-face{gap:6px;padding:0 10px;border-radius:6px;font-size:.8125rem;white-space:nowrap;color:var(--graview-ink-muted)}
12
+ .graview-bar-face span{min-width:0;max-width:11em;overflow:hidden;text-overflow:ellipsis}
13
+ .graview-bar-face[aria-pressed=true]{color:var(--graview-ink);font-weight:600;background:color-mix(in srgb,var(--graview-accent) 16%,transparent)}
14
+ [data-switch-drawn=icons] .graview-bar-face{padding:0 8px}
15
+ .graview-bar-said,[data-switch-drawn=icons] .graview-bar-face span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
16
+ .graview-bar-mid{display:flex;flex:1 100 0;min-width:0}
17
+ .graview-bar-mid[data-place]{min-width:9em;flex-basis:auto}
18
+ .graview-bar-place-at{position:relative;display:inline-flex;min-width:0;max-width:100%}
19
+ .graview-bar-place{gap:6px;height:30px;max-width:100%;padding:0 8px;border:1px solid transparent;border-radius:8px;font-size:.875rem;font-weight:600}
20
+ .graview-bar-face:hover,.graview-bar-place:hover{border-color:var(--graview-edge);color:var(--graview-ink)}
21
+ .graview-bar-place-words{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
22
+ .graview-bar-mid[data-places=standing]{flex:0 0 auto}
23
+ .graview-bar-places{display:flex;align-items:center;gap:${Ve}px;min-width:0;margin:0;padding:0}
24
+ .graview-bar-at{gap:6px;flex:0 0 auto;height:30px;padding:0 8px;border-block:2px solid transparent;border-radius:0;font-size:.875rem;font-weight:500;white-space:nowrap;color:var(--graview-ink-muted)}
25
+ .graview-bar-at:is(:hover,[aria-current],[aria-expanded=true]){color:var(--graview-ink)}
26
+ .graview-bar-at[aria-current]{font-weight:600;border-bottom-color:var(--graview-accent)}
27
+ .graview-bar-ruler{position:absolute;left:0;top:0;display:flex;width:0;height:0;overflow:hidden;visibility:hidden;pointer-events:none}
28
+ .graview-bar-ruler .graview-bar-at{font-weight:600}
29
+ .graview-bar-ruler>.graview-bar-name{flex:none;white-space:nowrap;letter-spacing:-.005em}
30
+ .graview-bar-list{display:grid;align-content:start;width:min(320px,calc(100vw - 24px));height:auto;max-height:min(70vh,560px);overflow:auto;margin:0;padding:6px;border-radius:10px;border:1px solid var(--graview-edge);background:var(--graview-float);box-shadow:var(--graview-lift-high);color:var(--graview-ink)}
31
+ .graview-bar-list[hidden]{display:none}
32
+ .graview-bar-list p{margin:8px 8px 2px;font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--graview-ink-muted)}
33
+ .graview-bar-list ul,.graview-bar-list li{display:grid;margin:0;padding:0;list-style:none}
34
+ .graview-bar-item{align-items:flex-start;gap:10px;width:100%;padding:7px 8px;border-radius:7px;font-size:.875rem;line-height:1.3;overflow-wrap:anywhere}
35
+ .graview-bar-item:hover{background:color-mix(in srgb,var(--graview-ink) 7%,transparent)}
36
+ .graview-bar-item[aria-current]{font-weight:600;background:color-mix(in srgb,var(--graview-accent) 14%,transparent)}
37
+ .graview-bar-mark{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:14px;height:1.3em;color:var(--graview-ink-muted)}
38
+ .graview-bar :focus-visible{outline:2px solid var(--graview-accent);outline-offset:1px}
39
+ .graview-bar-tools{display:contents}
40
+ .graview-bar-tools>*{margin-left:-8px}
41
+ .graview-bar-tools>:is(.graview-bar-find,.graview-bar-find-open){margin-left:auto}
42
+ .graview-bar-own{display:flex;align-items:center;flex:0 0 auto}
43
+ .graview-bar-own:empty{display:none}
44
+ .graview-bar-host{display:flex;align-items:center;gap:2px;flex:0 0 auto}
45
+ .graview-bar-host-action{display:inline-flex;align-items:center;gap:6px;box-sizing:border-box;min-width:${W}px;height:${W}px;margin:0;padding:0 10px;border-radius:8px;border:1px solid transparent;background:none;box-shadow:none;font:inherit;font-size:.875rem;font-weight:500;letter-spacing:normal;text-transform:none;white-space:nowrap;color:var(--graview-ink-muted);cursor:pointer}
46
+ .graview-bar-host-action:is(:hover,[aria-expanded=true]){border-color:var(--graview-edge);color:var(--graview-ink)}
47
+ .graview-bar-host-action[data-folded]{padding:0}
48
+ .graview-bar-host-mark{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:16px;height:16px;font-size:.9375rem;line-height:1}
49
+ .graview-bar-host-mark svg{width:16px;height:16px}
50
+ .graview-bar-list .graview-bar-host-action{width:100%;justify-content:flex-start;white-space:normal;overflow-wrap:anywhere}
51
+ .graview-bar-find{position:relative;display:flex;min-width:7.5rem;flex:0 600 9rem;--graview-bar-find-end:3.25em}
52
+ .graview-bar-find-slot{display:flex;flex:1;min-width:0}
53
+ .graview-bar-find-keys{position:absolute;right:10px;line-height:30px;pointer-events:none;font-size:.75rem;color:var(--graview-ink-faint)}
54
+ .graview-bar-find:is(:focus-within,:has(input:not(:placeholder-shown))){flex-basis:16rem;--graview-bar-find-end:10px}
55
+ :is(:focus-within,:has(input:not(:placeholder-shown)))>.graview-bar-find-keys,.graview-bar-find-open{display:none}
56
+ .graview-bar-line{display:flex;flex:0 0 auto;padding:6px 8px;background:var(--graview-ground);border-bottom:1px solid var(--graview-edge);font-family:var(--graview-font-body,system-ui)}
57
+ .graview-bar-line .graview-bar-place{height:auto;min-height:32px}
58
+ .graview-bar-line .graview-bar-place-words{white-space:normal}
59
+ @media (pointer:coarse){.graview-bar-find-keys{display:none}}
60
+ @container graview-bar (max-width: ${X-1}px){
61
+ .graview-bar-row{gap:10px;padding:0 12px}
62
+ .graview-bar-app,.graview-bar-home{max-width:none;flex:1 1 auto;min-width:28px}
63
+ .graview-bar-name,.graview-bar-app-name{min-width:0}
64
+ .graview-bar-mid,.graview-bar-find{display:none}
65
+ .graview-bar-find-open{display:inline-flex}
66
+ .graview-bar-own{--graview-activity-mark:inline}
67
+ .graview-bar-own .graview-activity-word{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
68
+ .graview-bar[data-finding] :is(.graview-bar-app,.graview-bar-faces,.graview-bar-find-open){display:none}
69
+ .graview-bar[data-finding] .graview-bar-find{display:flex;flex:1 1 auto;min-width:0}
70
+ }
71
+ @container graview-bar (max-width: 300px){
72
+ .graview-bar-row{gap:4px;padding:0 10px}
73
+ }`,ee={display:"inline-flex",alignItems:"center",justifyContent:"center",gap:6,minWidth:W,height:W,padding:0,borderRadius:8,border:"1px solid transparent",background:"none",boxShadow:"none",color:"var(--graview-ink-muted)",font:"inherit",fontSize:"0.875rem",cursor:"pointer",flex:"0 0 auto"};function Kr({brand:e,name:n,heading:t=1,home:r,faces:a,places:o,current:i,reach:c,tools:p,find:d=!0,description:u,findBox:l,onFind:m,switch:h="words",scenePlaces:w,skips:x,named:b=!0,actions:S}){let se=(0,y.useRef)(null),f=Z()?.who.size,[P,Q]=(0,y.useState)(null),[T,or]=(0,y.useState)(null),[A,ar]=(0,y.useState)(!1),[ir,ze]=(0,y.useState)(!1),[sr,lr]=(0,y.useState)(!0),[Ke,dr]=(0,y.useState)(null),[cr,pr]=(0,y.useState)(!0),le=a?a.pages.current:!w,te=le?{places:o,current:i,reach:c}:w,xe=te&&{...te,places:dn(te.places),here:te.places.find(g=>g.key===te.current)?.label},k=xe&&xe.places.length>0?xe:null,Se=k?k.places.findIndex(g=>g.key===k.current):-1,qe=!!a&&h==="words",Ge=k?k.places.map(g=>g.primary===!1?"0":"1").join(""):"",$=(0,y.useCallback)(()=>{let g=se.current;if(!g)return;let B=tt(g,Se,qe,Ge);B!==void 0&&dr(B);let q=B?!0:Gr(g);q!==null&&lr(q)},[Se,qe,Ge]);(0,y.useLayoutEffect)(()=>{let g=se.current;if(!g)return;let B=()=>{let G=g.getBoundingClientRect().width;ar(G<X);let vr=g.querySelector("[data-graview-bar-host-ruler]");pr(G>=X+(vr?.getBoundingClientRect().width??0)),g.style.setProperty("--graview-bar-width",`${Math.round(G)}px`),$()};B();let q=typeof document>"u"?void 0:document.fonts;if(q?.ready.then($),q?.addEventListener?.("loadingdone",$),typeof ResizeObserver>"u")return()=>q?.removeEventListener?.("loadingdone",$);let pe=new ResizeObserver(B);pe.observe(g);for(let G of g.querySelectorAll(".graview-bar-tools > *"))pe.observe(G);let Le=g.querySelector(".graview-bar-tools"),Qe=typeof MutationObserver>"u"||!Le?null:new MutationObserver(()=>{for(let G of Le.children)pe.observe(G)});return Qe?.observe(Le,{childList:!0}),()=>{Qe?.disconnect(),pe.disconnect(),q?.removeEventListener?.("loadingdone",$)}},[$]);let Pe=(0,y.useRef)(m);Pe.current=m,(0,y.useLayoutEffect)(()=>{Pe.current?.(d&&P?{slot:P,compact:A,own:T}:null)},[d,P,A,T]),(0,y.useLayoutEffect)(()=>()=>Pe.current?.(null),[]);let ur=(0,y.useCallback)(()=>{ze(!0),requestAnimationFrame(()=>P?.querySelector("input")?.focus())},[P]),je=(0,y.useRef)(null),de=(0,y.useRef)(!1),Ye=(0,y.useCallback)(()=>{ze(!1),de.current&&(de.current=!1,requestAnimationFrame(()=>je.current?.focus()))},[]),fr=t===!1?"span":`h${t}`,gr=r.href!==void 0?"a":"button",mr=g=>B=>{!g||!zn(B)||(B.preventDefault(),g())},yr=!le,Ue=k&&!A&&Ke!==null&&!(Se<0&&k.here)?Ke.split(",").map(Number).filter(g=>g<k.places.length):null,ce=k?(0,s.jsx)(nt,{places:k.places,current:k.current,here:k.here,reach:k.reach,scene:yr,stands:Ue}):null,hr=k?k.places.map(g=>g.label).join(`
74
+ `):"";(0,y.useLayoutEffect)($,[$,n,e,hr,k?.current,le,A,h,d]);let wr=h==="icons"||!sr||A?"icons":"words";return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("header",{ref:se,className:"graview-bar","data-testid":"app-bar","data-graview-app-bar":"",...ir&&A?{"data-finding":""}:{},children:[(0,s.jsx)("style",{children:zr}),x,(0,s.jsxs)("div",{className:"graview-bar-row",children:[b?(0,s.jsx)("div",{className:"graview-bar-app",children:(0,s.jsx)(fr,{className:"graview-bar-name",children:(0,s.jsxs)(gr,{...r.href!==void 0?{href:r.href,onClick:mr(r.go)}:{type:"button",onClick:r.go},"data-testid":"app-home",...r.current?{"aria-current":"page"}:{},title:u?`${n} \u2014 ${u}`:`${n} \u2014 home`,className:"graview-bar-home",children:[(0,s.jsx)(Oe,{brand:e,size:20}),(0,s.jsx)("span",{className:"graview-bar-app-name","data-testid":"app-name",children:n})]})})}):null,a?(0,s.jsx)(qr,{faces:a,form:h,drawn:wr}):null,(0,s.jsx)("div",{className:"graview-bar-mid",...Ue?{"data-places":"standing"}:!A&&ce?{"data-place":""}:{},children:A?null:ce}),!A&&k&&k.places.length>1?(0,s.jsxs)("span",{className:"graview-bar-ruler","aria-hidden":"true","data-graview-bar-ruler":"",children:[k.places.map(g=>(0,s.jsx)("span",{className:"graview-bar-at",children:g.label},g.key)),(0,s.jsxs)("span",{className:"graview-bar-at",children:[ye,(0,s.jsx)(qn,{})]})]}):null,S&&S.length>0?(0,s.jsx)("span",{className:"graview-bar-ruler","aria-hidden":"true","data-graview-bar-host-ruler":"",children:(0,s.jsx)("span",{className:"graview-bar-host",children:S.map(g=>(0,s.jsxs)("span",{className:"graview-bar-host-action",children:[g.icon?(0,s.jsx)(Gn,{icon:g.icon}):null,(0,s.jsx)("span",{children:g.label})]},g.label))})}):null,b?(0,s.jsx)("span",{className:"graview-bar-ruler","aria-hidden":"true",children:(0,s.jsx)("span",{className:"graview-bar-name",children:n})}):null,(0,s.jsxs)("div",{className:"graview-bar-tools",children:[d?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("button",{type:"button",className:"graview-bar-find-open",ref:je,"data-testid":"app-find-open","aria-label":"Find",title:"Find",onClick:ur,style:{...ee,display:void 0},children:(0,s.jsx)(Qr,{})}),(0,s.jsxs)("div",{className:"graview-bar-find","data-testid":"app-find",onBlur:g=>{let B=g.relatedTarget;B instanceof Node&&g.currentTarget.contains(B)||g.currentTarget.querySelector("input")?.value||Ye()},onKeyDownCapture:g=>{g.key==="Escape"&&A&&(de.current=!0)},onKeyDown:g=>{g.key!=="Escape"||!A||(!g.defaultPrevented||!g.currentTarget.querySelector("input")?.value?Ye():de.current=!1)},children:[(0,s.jsx)("div",{ref:Q,className:"graview-bar-find-slot",children:l}),(0,s.jsx)(Yr,{})]})]}):null,(0,s.jsx)("div",{ref:or,className:"graview-bar-own","data-graview-bar-own":""}),f?(0,s.jsx)(y.Suspense,{fallback:null,children:(0,s.jsx)(Dr,{scene:!le,compact:A})}):null,(0,s.jsx)($r,{}),S&&S.length>0?(0,s.jsx)(Xr,{actions:S,folded:A||!cr}):null,p]})]})]}),A&&ce?(0,s.jsx)("div",{className:"graview-bar-line","data-graview-place-line":"","data-testid":"app-place-line",children:ce}):null]})}function qr({faces:e,form:n,drawn:t}){let r=a=>{let o=e[a];return(0,s.jsxs)("button",{type:"button",className:"graview-bar-face","data-testid":`app-face-${a}`,"aria-pressed":o.current,title:o.label,...o.reach&&!o.current?{onPointerEnter:o.reach,onPointerDown:o.reach,onFocus:o.reach}:{},onClick:()=>{o.current||o.go()},children:[a==="scene"?(0,s.jsx)(Kn,{}):(0,s.jsx)(Ur,{}),(0,s.jsx)("span",{children:o.label})]})};return(0,s.jsxs)("div",{className:"graview-bar-faces",role:"group","aria-label":`${e.scene.label} or ${e.pages.label}`,"data-testid":"app-faces","data-switch":n,"data-switch-drawn":t,children:[r("scene"),r("pages")]})}function Gr(e){let n=e.querySelector(".graview-bar-faces"),t=e.querySelector(".graview-bar-mid"),r=e.querySelector(".graview-bar-find");if(!n||!t||r?.matches(":focus-within")||e.getBoundingClientRect().width<X)return null;let o=Yn(n),i=t.querySelector(".graview-bar-place-words"),c=i?parseFloat(getComputedStyle(i).fontSize)||14:0,p=i?Math.min(i.scrollWidth+34,14*c):0,d=Wn(e);if(d===null)return!1;let u=t.getBoundingClientRect().width-p-d-_n(e);if(r&&r.getBoundingClientRect().width>0){let l=parseFloat(getComputedStyle(r).flexBasis);isFinite(l)&&(u-=Math.max(0,l-r.getBoundingClientRect().width))}return n.getAttribute("data-switch-drawn")==="icons"?u>=o+2:u>=-1}function _n(e){let n=e.querySelector(".graview-bar-row"),t=e.getBoundingClientRect();if(!n||!(t.width>0))return 0;let r=t.right-(parseFloat(getComputedStyle(n).paddingRight)||0),a=r;for(let o of n.querySelectorAll(":scope > *, .graview-bar-tools > *")){if(o.classList.contains("graview-bar-tools")||o.classList.contains("graview-bar-ruler")||o.classList.contains("graview-bar-said"))continue;let i=o.getBoundingClientRect();i.width>0&&(a=Math.max(a,i.right))}return Math.max(0,a-r)}function Wn(e){let n=e.querySelector(".graview-bar-app"),t=e.querySelector(".graview-bar-ruler>.graview-bar-name");if(!n||!t)return 0;let r=i=>i?.getBoundingClientRect().width??0,a=r(n.firstElementChild)-r(e.querySelector(".graview-bar-app-name"))+r(t)+2,o=parseFloat(getComputedStyle(n).maxWidth)/100*(n.parentElement.clientWidth-2*n.offsetLeft)||1/0;return a>o+.5?null:Math.max(0,a-r(n))}var zn=e=>e.button===0&&!(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey);function jr(){let e=globalThis.navigator?.platform??"";return/Mac|iPhone|iPad|iPod/.test(e)?"\u2318K":"Ctrl K"}function Yr(){let e=Nn(Z()?.aiDesk);return(0,s.jsx)("span",{className:"graview-bar-find-keys","data-testid":"app-find-keys","aria-hidden":"true",children:e?"/":jr()})}function ne({size:e,box:n=e,children:t}){return(0,s.jsx)("svg",{width:e,height:e,viewBox:`0 0 ${n} ${n}`,"aria-hidden":"true",focusable:"false",style:{flex:"0 0 auto"},children:t})}function Kn(){return(0,s.jsxs)(ne,{size:14,children:[(0,s.jsx)("path",{d:"M7 1.5 L12.5 4.5 L7 7.5 L1.5 4.5 Z",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinejoin:"round"}),(0,s.jsx)("path",{d:"M1.5 7.5 L7 10.5 L12.5 7.5",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinejoin:"round",strokeLinecap:"round"})]})}function Ur(){return(0,s.jsxs)(ne,{size:14,children:[(0,s.jsx)("rect",{x:"2.25",y:"1.75",width:"9.5",height:"10.5",rx:"1.5",fill:"none",stroke:"currentColor",strokeWidth:"1.3"}),(0,s.jsx)("path",{d:"M4.5 5 H9.5 M4.5 7.25 H9.5 M4.5 9.5 H7.5",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round"})]})}function qn(){return(0,s.jsx)(ne,{size:10,children:(0,s.jsx)("path",{d:"M2 3.5 L5 6.5 L8 3.5",fill:"none",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round",strokeLinejoin:"round"})})}function Qr(){return(0,s.jsxs)(ne,{size:16,children:[(0,s.jsx)("circle",{cx:"7",cy:"7",r:"4.75",fill:"none",stroke:"currentColor",strokeWidth:"1.5"}),(0,s.jsx)("path",{d:"M10.5 10.5 L14 14",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}function Jr({place:e}){if(e.key===U)return(0,s.jsx)(Kn,{});if(e.group==="home")return(0,s.jsx)(ne,{size:13,box:14,children:(0,s.jsx)("path",{d:"M2 6.5 L7 2 L12 6.5 V12 H2 Z",fill:"none",stroke:"currentColor",strokeWidth:"1.3",strokeLinejoin:"round"})});let n=e.kind?`hsl(${Math.round(tn(e.kind))} 55% 52%`:"rgb(128 128 128";return(0,s.jsx)("span",{"aria-hidden":"true",style:{display:"inline-block",width:12,height:8,clipPath:"polygon(50% 0, 100% 50%, 50% 100%, 0 50%)",background:e.group==="lists"?`${n})`:`linear-gradient(${n}), ${n})) center / 6px 4px no-repeat, ${n} / 0.35)`}})}var Zr=[{group:"home"},{group:"lists",heading:"Lists"},{group:"pictures",heading:"Pictures"}],ye="More";function Xr({actions:e,folded:n}){let t=Y("host-actions",{popover:n}),r=e.map(o=>o.label).join(", "),a=o=>e.map(i=>(0,s.jsxs)("button",{type:"button",className:n?"graview-bar-host-action graview-bar-item":"graview-bar-host-action","data-testid":"host-bar-action",onClick:()=>{o(),i.onSelect()},children:[i.icon?(0,s.jsx)(Gn,{icon:i.icon}):null,(0,s.jsx)("span",{children:i.label})]},i.label));return n?(0,s.jsxs)("div",{className:"graview-bar-host",children:[(0,s.jsx)("button",{type:"button",className:"graview-bar-host-action","data-testid":"host-bar-actions-open","data-folded":"",...t.trigger,onClick:t.toggle,"aria-label":`${ye} \u2014 ${r}`,title:r,children:(0,s.jsxs)(ne,{size:16,children:[(0,s.jsx)("circle",{cx:"3",cy:"8",r:"1.4",fill:"currentColor"}),(0,s.jsx)("circle",{cx:"8",cy:"8",r:"1.4",fill:"currentColor"}),(0,s.jsx)("circle",{cx:"13",cy:"8",r:"1.4",fill:"currentColor"})]})}),(0,s.jsx)("div",{...t.pane,"data-testid":"host-bar-actions",hidden:!t.open,className:"graview-bar-list",style:j,"aria-label":"From the host",children:a(()=>t.setOpen(!1))})]}):(0,s.jsx)("div",{className:"graview-bar-host","data-testid":"host-bar-actions-standing",role:"group","aria-label":"From the host",children:a(()=>{})})}function Gn({icon:e}){let n=ie(I(e)?e:void 0);return n?(0,s.jsx)("span",{className:"graview-bar-host-mark","aria-hidden":"true",dangerouslySetInnerHTML:n}):(0,s.jsx)("span",{className:"graview-bar-host-mark","aria-hidden":"true",children:e})}function jn({place:e,current:n,reach:t,standing:r,done:a}){let o=e.key===n,i=t.href?.(e.path);return(0,s.jsxs)(i!==void 0?"a":"button",{className:r?"graview-bar-at":"graview-bar-item","data-testid":`app-place-${e.key}`,"data-place-path":e.path,...o?{"aria-current":"page"}:{},...i!==void 0?{href:i}:{type:"button"},onClick:p=>{a(),t.go&&(i!==void 0&&!zn(p)||(p.preventDefault(),t.go(e)))},children:[r?null:(0,s.jsx)("span",{className:"graview-bar-mark",children:(0,s.jsx)(Jr,{place:e})}),r&&o?(0,s.jsx)("span",{"data-testid":"app-place-current",children:e.label}):(0,s.jsx)("span",{children:e.label})]})}function et({places:e,current:n,reach:t,id:r,done:a}){return(0,s.jsx)(s.Fragment,{children:Zr.map(({group:o,heading:i})=>{let c=e.filter(d=>d.group===o);if(c.length===0)return null;let p=`${r}-${o}`;return(0,s.jsxs)("div",{role:"group",...i?{"aria-labelledby":p}:{"aria-label":c[0].label},"data-place-group":o,children:[i?(0,s.jsx)("p",{id:p,children:i}):null,(0,s.jsx)("ul",{children:c.map(d=>(0,s.jsx)("li",{children:(0,s.jsx)(jn,{place:d,current:n,reach:t,standing:!1,done:a})},d.key))})]},o)})})}function nt({places:e,current:n,here:t,reach:r,scene:a,stands:o}){let i=Y("places"),c=(0,y.useRef)(o);i.open||(c.current=o);let p=c.current,u=e.find(b=>b.key===n)?.label??t??"Places",l=p?e.filter((b,S)=>!p.includes(S)):e,m=rt(e,n,a),h=Z(),w=h?.keptViews?.current(),x=!!(w&&(w.removed.length>0||h.views.places().some(b=>b.hidden)||w.may.lenses&&(h.views.arrangement?.()?.hide?.length??0)>0));return(0,s.jsxs)("nav",{className:p?"graview-bar-places":"graview-bar-place-at","aria-label":a?"What the scene shows":"The app\u2019s places",...p?{"data-testid":"app-places-standing"}:{},...m,children:[p?.map(b=>(0,s.jsx)(jn,{place:e[b],current:n,reach:r,standing:!0,done:()=>{}},e[b].key)),l.length>0||x?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("button",{type:"button",className:p?"graview-bar-at":"graview-bar-place","data-testid":"app-places-open",...i.trigger,onClick:i.toggle,"aria-label":p?`${ye} \u2014 ${l.length} more ${a?"pictures":"places"}`:`${u} \u2014 ${a?"everything the scene shows":"every place"}`,title:p?l.map(b=>b.label).join(", "):u,children:[p?ye:(0,s.jsx)("span",{className:"graview-bar-place-words","data-testid":"app-place-current",children:u}),(0,s.jsx)(qn,{})]}),(0,s.jsxs)("div",{...i.pane,"data-testid":"app-places",hidden:!i.open,className:"graview-bar-list",style:j,children:[(0,s.jsx)(et,{places:l,current:n,reach:r,id:i.pane.id,done:()=>i.setOpen(!1)}),x&&i.open?(0,s.jsx)(y.Suspense,{fallback:null,children:(0,s.jsx)(Vr,{id:i.pane.id,scene:a,reach:r,done:()=>i.setOpen(!1)})}):null]})]}):null]})}function rt(e,n,t){let r=Z()?.setMenuAt,a=o=>{let i=o.target.closest?.("[data-place-path],[data-testid=app-places-open]");if(!i||!r)return;let c={at:0};o.type==="pointerdown"?document.addEventListener("pointerup",()=>c.at||=Date.now(),{once:!0}):o.preventDefault();let p=o.nativeEvent;M.load().then(d=>d.placeGesture(p,i,e,n,t,r,c),String)};return{onContextMenu:o=>o.shiftKey||a(o),onKeyDown:o=>(o.key==="ContextMenu"||o.key==="F10"&&o.shiftKey)&&a(o),onPointerDown:o=>o.pointerType!=="mouse"&&o.isPrimary&&a(o)}}function tt(e,n,t,r){let a=e.querySelector("[data-graview-bar-ruler]"),o=e.querySelector(".graview-bar-mid");if(!a||!o)return null;let i=e.querySelector(".graview-bar-find");if(i?.matches(":focus-within"))return;if(e.getBoundingClientRect().width<X)return null;let c=Wn(e);if(c===null)return null;let p=[...a.children].map(S=>S.getBoundingClientRect().width),d=p.pop()??0,u=e.querySelector(".graview-bar-faces"),l=u&&t?Yn(u):0,m=u?.getAttribute("data-switch-drawn")==="words"?l:0,h=o.getBoundingClientRect().left+c,w=i?.getBoundingClientRect(),x=(w&&w.width>0?w.right-h-(parseFloat(getComputedStyle(i).minWidth)||0)-16:o.getBoundingClientRect().width-c)-_n(e),b=[...r].map(S=>S!=="0");return In({widths:p,current:n,room:Math.floor(x+m-l),more:d,primary:b})?.join(",")??null}function Yn(e){return[...e.querySelectorAll(".graview-bar-face span")].reduce((n,t)=>n+t.scrollWidth+10,0)}var ot=e=>`graview:lenses:${e}`,at=(e,n)=>e?.name??n.kinds.join(",");function De(e){try{let n=JSON.parse(localStorage.getItem(ot(e))??"[]");return Array.isArray(n)?n.filter(t=>typeof t?.title=="string"&&typeof t.lens=="string"):[]}catch{return[]}}var z=v(R(),1);var H=v(L(),1);function it({scheme:e,onScheme:n,profileHref:t,keeping:r,hostActions:a=st,signature:o=!1}){let{store:i,principal:c,seats:p,people:d}=fe(),u=Y("profile"),l=u.open,[m,h]=(0,z.useState)(!1);(0,z.useEffect)(()=>ct(he),[]),l&&!m&&h(!0),(0,z.useEffect)(()=>{l&&he()},[l]);let w=c.id===void 0?void 0:i.graph.getNode(c.id),x=w===void 0?c.id===void 0?"Nobody in particular":en(c,{graph:i.graph,schema:i.schema,seats:p,people:d}):Je(i.schema.tryDefinition(w.kind),w);return(0,H.jsxs)("div",{style:{position:"relative"},children:[(0,H.jsx)("button",{type:"button","data-testid":"profile-button",...u.trigger,onClick:u.toggle,onPointerEnter:he,onFocus:he,"aria-label":`${x} \u2014 you, your seat and your settings`,title:`${x} \u2014 you, your seat and your settings`,style:{...ee,borderRadius:999},children:(0,H.jsx)("span",{"aria-hidden":"true","data-testid":"profile-mark",style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:W-4,height:W-4,borderRadius:999,fontSize:"0.8125rem",fontWeight:600,background:"var(--graview-panel-muted)",color:"var(--graview-ink)",border:"1px solid var(--graview-edge)"},children:pt(x)})}),(0,H.jsxs)("section",{...u.pane,"aria-label":"Profile","data-testid":"profile","data-graview-offstage":"",hidden:!l,style:{...j,width:280,maxWidth:"calc(100vw - 32px)",maxHeight:"min(62cqh, 520px)",overflowY:"auto",overflowX:"hidden",display:l?"grid":"none",gap:12,padding:12,borderRadius:10,border:"1px solid var(--graview-edge)",background:"var(--graview-float)",boxShadow:"var(--graview-lift-high)"},children:[m?(0,H.jsx)(z.Suspense,{fallback:null,children:(0,H.jsx)(lt,{part:"top",name:x,me:w,profileHref:t,hostActions:a,close:()=>u.setOpen(!1)})}):null,(0,H.jsxs)("div",{className:"graview-profile-keeping","data-testid":"profile-keeping",style:ft,children:[(0,H.jsx)("span",{style:ut,children:"Keeping this app"}),r]}),m?(0,H.jsx)(z.Suspense,{fallback:null,children:(0,H.jsx)(dt,{part:"rest",name:x,me:w,scheme:e,onScheme:n,hostActions:a,signature:o,close:()=>u.setOpen(!1)})}):null]})]})}var st=[],he=()=>M.prefetch(),lt=M.part((e,n)=>(0,H.jsx)(e.ProfilePane,{...n}),{what:"The rest of your menu"}),dt=M.part((e,n)=>(0,H.jsx)(e.ProfilePane,{...n}),{quiet:!0});function ct(e){let n=()=>{(typeof navigator>"u"||navigator.onLine!==!1)&&e()},t=globalThis;if(t.requestIdleCallback){let a=t.requestIdleCallback(n,{timeout:5e3});return()=>t.cancelIdleCallback?.(a)}let r=setTimeout(n,2500);return()=>clearTimeout(r)}function pt(e){return(e.trim()[0]??"?").toUpperCase()}var ut={fontSize:"0.75rem",letterSpacing:"0.14em",textTransform:"uppercase",color:"var(--graview-ink-faint)"},ft={paddingTop:10,borderTop:"1px solid var(--graview-edge)"};function gt(e){return!(e==="hidden"||e===!1)}var $e=v(R(),1);var Un="The whole thing",we=e=>`scene:${e.kind}:${e.as}`;function Qn(e){let{view:n}=e,t=e.places.filter(l=>!e.hidden.has(l.kind)),r=oe(t),a=(l,m)=>{if(l===U)return wn(vn(m,!0),"view",null);let h=r.find(w=>we(w)===l);return h?kn(m,h.over?.find(w=>m.focusId===ae(w))??h.kind,h.as):null},o=n.within?.view,i=l=>n.focusId===ae(l.kind)&&(o===void 0?t.filter(m=>m.kind===l.kind).at(-1)===l:o===l.as),c=t.find(l=>i(l)&&(o!==void 0||!n.overview)),p=c?r.find(l=>ue(l,c)):void 0,d=r.filter(l=>!l.hidden||l===p);return{places:[{key:U,label:Un,path:`${He}${Ne(a(U,Te))}`,group:"home"},...d.map(l=>({key:we(l),label:J(l,t,e.schema),path:`${He}${Ne(a(we(l),Te))}`,group:"pictures",kind:l.kind,hidden:l.hidden}))],current:p?we(p):U,to:a}}function mt(){let{store:e,views:n,hiddenKinds:t}=fe(),{view:r,go:a}=En(),o=n.places(),i=(0,$e.useMemo)(()=>Qn({places:o,hidden:t,view:r,schema:e.schema}),[o,t,r,e.schema]),c=(0,$e.useMemo)(()=>({go:p=>{let d=i.to(p.key,r);d&&a(d)}}),[i,r,a]);return{places:i.places,current:i.current,reach:c}}var re=v(R(),1);var F=v(L(),1),yt=M.part((e,n)=>(0,F.jsx)(e.ProblemRows,{...n}),{what:"The problems",as:"li"}),Ie=()=>M.prefetch();function ht({clean:e="All rules hold"}){let n=An(),{set:t}=Ln(),r=n.length,[a,o]=(0,re.useState)(!1),i=Y("problems",{open:a&&r>0,onOpenChange:o}),c=i.open,p=Zn(n,e);return(0,re.useEffect)(()=>{if(r===0)return;let d=setTimeout(Ie,1500);return()=>clearTimeout(d)},[r>0]),(0,F.jsxs)("div",{style:{position:"relative",display:"inline-flex"},children:[(0,F.jsxs)("button",{type:"button","data-testid":"standing",...i.trigger,"aria-disabled":r===0?!0:void 0,"aria-label":p,onClick:r===0?void 0:i.toggle,onPointerEnter:r===0?void 0:Ie,onFocus:r===0?void 0:Ie,title:p,style:{...ee,padding:r===0?0:"0 8px",cursor:r===0?"default":"pointer",color:r===0?"var(--graview-ink-muted)":Jn(n),fontVariantNumeric:"tabular-nums",fontWeight:600},children:[(0,F.jsx)(Xn,{tone:r===0?"var(--graview-good)":Jn(n)}),r>0?(0,F.jsx)("span",{"aria-hidden":"true",children:r}):null]}),c?(0,F.jsx)("ol",{...i.pane,"data-testid":"problems",style:{...j,width:300,maxHeight:"min(48cqh, 420px)",overflow:"auto",margin:0,padding:4,listStyle:"none",display:"grid",borderRadius:10,border:"1px solid var(--graview-edge)",background:"var(--graview-float)",boxShadow:"var(--graview-lift-high)"},children:(0,F.jsx)(re.Suspense,{fallback:null,children:(0,F.jsx)(yt,{violations:n,pick:d=>{t(d.nodeIds),i.setOpen(!1)}})})}):null]})}function Zn(e,n){return e.length===0?n:`${nn(e)} \u2014 open what is broken, and what would fix it`}var Jn=e=>e.some(n=>n.status==="could-not-judge"||n.status==="over-budget")?"var(--graview-bad)":"var(--graview-warn)";function Xn({tone:e}){return(0,F.jsx)("span",{"aria-hidden":"true",style:{width:8,height:8,borderRadius:999,flex:"0 0 auto",background:e}})}function wt(e,n,t=[]){if(e.focusId)return e.focusId;let a=(e.selection??[]).map(bn).find(o=>o!==null)??t.find(o=>n.includes(o))??n[0]??null;return a===null?null:ae(a)}var be=v(L(),1),ve=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.QRT6BZR6.js","./chunk.2V7QTIAV.js","./chunk.Z26T5E76.js","./chunk.77JI5T4F.js","./chunk.4DZOAB4D.js","./chunk.UDU545CL.js","./chunk.7VAHHEDX.js","./chunk.2VYGDY5Z.js","./chunk.FUPYIOXZ.js","./chunk.APRWUIE3.js","./chunk.3OEODIHB.js","./chunk.WFCE7NLK.js","./chunk.WVUJXDXZ.js","./chunk.ZA5TDCBC.js","./chunk.2JEN2RCB.js","./chunk.7CLKGKSF.js","./chunk.TMHVYI5R.js","./chunk.R5MLRKAO.js","./chunk.YMXWS4XN.js","./chunk.GZHZLJBF.js","./chunk.3SAESG6X.js","./chunk.OJGHDWI6.js","./chunk.F6BNFLQM.js","./chunk.75JQCTR6.js","./chunk.5IEZF433.js","./chunk.5AD2QHWH.js","./chunk.3FKKH2XU.js","./chunk.DLWFULWE.js","./chunk.VLX7YWVH.js","./chunk.SDO3U72B.js","./chunk.IQGSEAQ2.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.52MBXPEK.js"))));function vt(){return ve.load().then(()=>{})}var bt=[{cardinality:"one",fidelity:"full",slot:"page"},{cardinality:"one",fidelity:"summary",slot:"card"},{cardinality:"one",fidelity:"glyph",slot:"row"},{cardinality:"many",fidelity:"full"},{cardinality:"many",fidelity:"summary"},{cardinality:"many",fidelity:"glyph"}];function kt({schema:e,specs:n,kind:t,view:r}){let a=ve.current.frameworkViews(e,n).lookup(t,{cardinality:r.cardinality,fidelity:r.fidelity});return a?(0,be.jsx)(a,{...r}):null}var xt=ve.part((e,n)=>(0,be.jsx)(kt,{...n}),{what:"This view"});function er(e,n,t){for(let r of n.kinds){let a=t?.[r];for(let o of bt){let i=p=>(0,be.jsx)(xt,{schema:n,specs:t,kind:r,view:p}),c=o.slot!==void 0&&a?.[o.slot]!==void 0;c&&(i.says=(p,d)=>ve.current?.frameworkViews(n,t).lookup(r,{cardinality:o.cardinality,fidelity:o.fidelity})?.says?.(p,d)),e.register(r,{cardinality:o.cardinality,fidelity:o.fidelity},c?i:Sn(i))}}return e}function St(e,n){return er(Pn(e),e,n)}var _e=v(R(),1);var D=v(L(),1),nr=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.2DH42I7L.js","./chunk.VZAF3452.js","./chunk.WHX47OJM.js","./chunk.2D7K2IJQ.js","./chunk.QRT6BZR6.js","./chunk.2V7QTIAV.js","./chunk.Z26T5E76.js","./chunk.77JI5T4F.js","./chunk.SADHOSRC.js","./chunk.4DZOAB4D.js","./chunk.UDU545CL.js","./chunk.7VAHHEDX.js","./chunk.HJCQ6I3S.js","./chunk.DQAMVVE6.js","./chunk.OXFDB5BB.js","./chunk.DJIF7IAQ.js","./chunk.2VYGDY5Z.js","./chunk.FUPYIOXZ.js","./chunk.APRWUIE3.js","./chunk.3OEODIHB.js","./chunk.WFCE7NLK.js","./chunk.BIDL7GQD.js","./chunk.TA2JTUNX.js","./chunk.HZPRMHSL.js","./chunk.TQ2G4AM4.js","./chunk.X36BYTEG.js","./chunk.G7YLK4PX.js","./chunk.Q5WEOX3Q.js","./chunk.2E62YCMZ.js","./chunk.DUP2CGVH.js","./chunk.YEXFVDRA.js","./chunk.WVUJXDXZ.js","./chunk.ZA5TDCBC.js","./chunk.2JEN2RCB.js","./chunk.7CLKGKSF.js","./chunk.TMHVYI5R.js","./chunk.R5MLRKAO.js","./chunk.YMXWS4XN.js","./chunk.GZHZLJBF.js","./chunk.3SAESG6X.js","./chunk.OJGHDWI6.js","./chunk.F6BNFLQM.js","./chunk.75JQCTR6.js","./chunk.5IEZF433.js","./chunk.5AD2QHWH.js","./chunk.3FKKH2XU.js","./chunk.DLWFULWE.js","./chunk.VLX7YWVH.js","./chunk.SDO3U72B.js","./chunk.IQGSEAQ2.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.GFQPO3NC.js"))));function Pt({lens:e,view:n}){let t=nr.current.declaredLensView(e);return(0,D.jsx)(t,{...n})}var Lt=nr.part((e,n)=>(0,D.jsx)(Pt,{...n}),{what:"This picture"});function At(e){let n=r=>(0,D.jsx)(_e.Suspense,{fallback:null,children:(0,D.jsx)(Lt,{lens:e,view:r})});e.lens==="blocks"&&(n.flows=!0);let t=e.lens==="blocks"?e.options.blocks?.[0]:void 0;return typeof t?.headline=="string"&&(n.lede=t),e.create===!1&&(n.creates=!1),n}var rr=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.QRT6BZR6.js","./chunk.2V7QTIAV.js","./chunk.Z26T5E76.js","./chunk.77JI5T4F.js","./chunk.4DZOAB4D.js","./chunk.UDU545CL.js","./chunk.7VAHHEDX.js","./chunk.2VYGDY5Z.js","./chunk.FUPYIOXZ.js","./chunk.APRWUIE3.js","./chunk.3OEODIHB.js","./chunk.WFCE7NLK.js","./chunk.WVUJXDXZ.js","./chunk.ZA5TDCBC.js","./chunk.2JEN2RCB.js","./chunk.7CLKGKSF.js","./chunk.TMHVYI5R.js","./chunk.R5MLRKAO.js","./chunk.YMXWS4XN.js","./chunk.GZHZLJBF.js","./chunk.3SAESG6X.js","./chunk.OJGHDWI6.js","./chunk.F6BNFLQM.js","./chunk.75JQCTR6.js","./chunk.5IEZF433.js","./chunk.5AD2QHWH.js","./chunk.3FKKH2XU.js","./chunk.DLWFULWE.js","./chunk.VLX7YWVH.js","./chunk.SDO3U72B.js","./chunk.IQGSEAQ2.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.HSJEOM3W.js"))));function Et({blocks:e,view:n}){let t=rr.current.homeView(e);return(0,D.jsx)(t,{...n})}var Ht=rr.part((e,n)=>(0,D.jsx)(Et,{...n}),{what:"The home"});function Tt(e){let n=t=>(0,D.jsx)(_e.Suspense,{fallback:null,children:(0,D.jsx)(Ht,{blocks:e,view:t})});return Object.defineProperty(n,Symbol.for("graview.home-blocks"),{value:!0}),n}function Nt(e,n){return n.home&&n.home.length>0&&e.home?.(Tt(n.home)),tr(e,n),e.arrange?.(n.pages),e}function tr(e,n,t){for(let r of un(n).drawn){if(t&&e.places().some(i=>i.title===r.title))continue;let a=At(r),o={title:r.title,lens:r.lens,...r.across?{across:r.across}:{},...t?{beside:t}:{},...r.hidden?{hidden:!0}:{},over:r.kinds,...t?{}:{declared:!0}};for(let i of r.kinds)e.register(i,{cardinality:"many",fidelity:"full"},a,o),e.register(i,{cardinality:"many",fidelity:"summary"},a,o)}}function Bt(e,n,t){t.length>0&&tr(e,{schema:n,lenses:t.map(({lens:r,...a})=>({...a,name:r}))},!0)}function Mt(e,n,t){Bt(e,n,De(t))}var K=v(R(),1),ke=v(L(),1);var We=e=>`graview:first-look:${e}`;function Ct(e,n){if(e.seen!==void 0)try{return typeof e.seen=="function"?e.seen():e.seen}catch{return!0}try{return window.localStorage.getItem(We(n))!==null}catch{return!1}}function Rt(e,n){if(e.seen===void 0)try{window.localStorage.setItem(We(n),"seen")}catch{}}var Ot=O(C(()=>(__graviewPreload(import.meta.url,["./chunk.VLX7YWVH.js","./chunk.SDO3U72B.js","./chunk.IQGSEAQ2.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.5PPCK7QT.js")))),Ft=Ot.part((e,n)=>{let t=e.FirstLookHints;return(0,ke.jsx)(t,{...n})},{quiet:!0});function Vt({firstLook:e,root:n,app:t}){let r=(0,K.useRef)(null);r.current=e===!0?{}:e||null;let[a,o]=(0,K.useState)(()=>r.current!==null&&typeof window<"u"&&!Ct(r.current,t)),i=(0,K.useCallback)(c=>{if(o(!1),c===null)return;let p=r.current??{};Rt(p,t),p.onDone?.(c)},[t]);return!a||r.current===null?null:(0,ke.jsx)(K.Suspense,{fallback:null,children:(0,ke.jsx)(Ft,{root:n,steps:r.current.steps??[],onEnd:i})})}export{ge as a,kr as b,Dt as c,Nn as d,$t as e,ie as f,Or as g,Fr as h,Pr as i,Lr as j,me as k,Ar as l,Er as m,Hr as n,Nr as o,Br as p,Mr as q,M as r,Ir as s,_r as t,Dn as u,Wr as v,ee as w,Kr as x,it as y,gt as z,mt as A,ot as B,at as C,De as D,ht as E,Zn as F,Xn as G,wt as H,Nt as I,Bt as J,Mt as K,vt as L,St as M,Vt as N};
@@ -0,0 +1 @@
1
+ import{b as f}from"./chunk.4Q5PCMGZ.js";import"./chunk.2VIS2NAT.js";import"./chunk.KHXRJLLU.js";import"./chunk.GHHKRFPD.js";import"./chunk.6NRWLCIZ.js";import"./chunk.Q355UPFG.js";import{l as g}from"./chunk.ZQGLPP7A.js";import"./chunk.7SRSE5IS.js";import"./chunk.VZAF3452.js";import"./chunk.WHX47OJM.js";import"./chunk.QRT6BZR6.js";import"./chunk.2V7QTIAV.js";import"./chunk.Z26T5E76.js";import"./chunk.77JI5T4F.js";import"./chunk.SADHOSRC.js";import"./chunk.4DZOAB4D.js";import"./chunk.UDU545CL.js";import"./chunk.7VAHHEDX.js";import"./chunk.P4TAX3HE.js";import"./chunk.T4TRJDBF.js";import"./chunk.2TCOLAL2.js";import"./chunk.2VYGDY5Z.js";import"./chunk.FUPYIOXZ.js";import"./chunk.APRWUIE3.js";import"./chunk.3OEODIHB.js";import"./chunk.WFCE7NLK.js";import"./chunk.HZPRMHSL.js";import"./chunk.BJUUSIQY.js";import"./chunk.TQ2G4AM4.js";import"./chunk.X36BYTEG.js";import"./chunk.XOZU4OFA.js";import"./chunk.G7YLK4PX.js";import"./chunk.MB7LKKUD.js";import"./chunk.WVUJXDXZ.js";import"./chunk.ZA5TDCBC.js";import"./chunk.2JEN2RCB.js";import"./chunk.7CLKGKSF.js";import"./chunk.TMHVYI5R.js";import"./chunk.R5MLRKAO.js";import"./chunk.YMXWS4XN.js";import"./chunk.GZHZLJBF.js";import"./chunk.3SAESG6X.js";import"./chunk.OJGHDWI6.js";import"./chunk.F6BNFLQM.js";import"./chunk.75JQCTR6.js";import"./chunk.5IEZF433.js";import"./chunk.5AD2QHWH.js";import"./chunk.3FKKH2XU.js";import"./chunk.DLWFULWE.js";import{G as b,V as h}from"./chunk.VLX7YWVH.js";import"./chunk.SDO3U72B.js";import{qe as n}from"./chunk.IQGSEAQ2.js";import"./chunk.FQLNBIQ5.js";import{b as t}from"./chunk.AJZBJBMO.js";var m=t(b(),1),a=t(h(),1);function P({store:c,auto:y,brand:i,views:u,presence:s,steering:r,overview:o,scope:d,titleLevel:w=2,quickAsk:l,props:e}){let v=(0,m.useMemo)(()=>g({scope:`.${d}`}),[d]);return(0,a.jsxs)("div",{"data-embed-content":"",style:y?{flex:"0 0 auto",background:"var(--graview-ground)"}:{flex:"1 1 auto",minHeight:0,overflow:"auto",background:"var(--graview-ground)"},children:[(0,a.jsx)("style",{children:v}),(0,a.jsx)("div",{"data-embed-measure":"",style:{display:"flow-root"},children:(0,a.jsx)(f,{context:{store:c,embedded:!0,...e.bar!==!1?{barAbove:!0}:{},...o?{overview:o}:{},titleLevel:w,views:u,settings:e.app.settings??[],app:e.app,...s?{presence:s}:{},...i?{brand:i}:{},...e.locale?{locale:e.locale}:{},...e.timeZone?{timeZone:e.timeZone}:{},...e.principal?{principal:e.principal}:{},...e.seats?{seats:e.seats}:{},...e.people?{people:e.people}:{},...e.subscriptions?{subscriptions:e.subscriptions}:{},dismissals:e.dismissals,whileAway:e.whileAway,...e.signIn?{signIn:e.signIn}:{},...l!==void 0?{quickAsk:l}:{}},...e.pages?{registry:e.pages}:{},...r?{steering:r}:{},...e.routing==="address"?n(e.basePath)===""?{}:{basename:n(e.basePath)}:{initialPath:e.path??"/"},...e.path!==void 0?{path:e.path}:{},...e.hrefOf?{hrefOf:e.hrefOf}:e.routing==="address"?{}:{hrefOf:!1},...e.onNavigate?{onNavigate:e.onNavigate}:{}})})]})}export{P as PagesContent};
@@ -0,0 +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{G as k,Ka as o,V as n}from"./chunk.VLX7YWVH.js";import{a as t}from"./chunk.SDO3U72B.js";import{b as p}from"./chunk.AJZBJBMO.js";var f=o(t(()=>(__graviewPreload(import.meta.url,["./chunk.WVUJXDXZ.js","./chunk.ZA5TDCBC.js","./chunk.2JEN2RCB.js","./chunk.7CLKGKSF.js","./chunk.TMHVYI5R.js","./chunk.R5MLRKAO.js","./chunk.YMXWS4XN.js","./chunk.GZHZLJBF.js","./chunk.3SAESG6X.js","./chunk.OJGHDWI6.js","./chunk.F6BNFLQM.js","./chunk.75JQCTR6.js","./chunk.5IEZF433.js","./chunk.5AD2QHWH.js","./chunk.3FKKH2XU.js","./chunk.DLWFULWE.js","./chunk.VLX7YWVH.js","./chunk.SDO3U72B.js","./chunk.IQGSEAQ2.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.UD2GGG7L.js")))),y=f.part((e,r)=>e.drawFiles(r),{quiet:!0});var d=o(t(()=>(__graviewPreload(import.meta.url,["./chunk.GZHZLJBF.js","./chunk.3SAESG6X.js","./chunk.OJGHDWI6.js","./chunk.F6BNFLQM.js","./chunk.75JQCTR6.js","./chunk.5IEZF433.js","./chunk.5AD2QHWH.js","./chunk.3FKKH2XU.js","./chunk.DLWFULWE.js","./chunk.VLX7YWVH.js","./chunk.SDO3U72B.js","./chunk.IQGSEAQ2.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.QROPDEJF.js")))),I=d.part((e,r)=>e.drawLinkedRecord(r),{quiet:!0}),w=d.part((e,r)=>e.drawLinkedPicker(r),{what:"Picking a linked record"});var s=p(n(),1),m=o(t(()=>(__graviewPreload(import.meta.url,["./chunk.GZHZLJBF.js","./chunk.3SAESG6X.js","./chunk.OJGHDWI6.js","./chunk.F6BNFLQM.js","./chunk.75JQCTR6.js","./chunk.5IEZF433.js","./chunk.5AD2QHWH.js","./chunk.3FKKH2XU.js","./chunk.DLWFULWE.js","./chunk.VLX7YWVH.js","./chunk.SDO3U72B.js","./chunk.IQGSEAQ2.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.XQ5RTPEF.js")))),g=m.part((e,r)=>(0,s.jsx)(e.RepeatPicker,{...r}),{quiet:!0}),E=m.part((e,r)=>(0,s.jsx)(e.RepeatEditor,{...r}),{quiet:!0});var a=p(k(),1),i=p(n(),1),c=o(t(()=>(__graviewPreload(import.meta.url,["./chunk.75JQCTR6.js","./chunk.5IEZF433.js","./chunk.5AD2QHWH.js","./chunk.3FKKH2XU.js","./chunk.DLWFULWE.js","./chunk.VLX7YWVH.js","./chunk.SDO3U72B.js","./chunk.IQGSEAQ2.js","./chunk.FQLNBIQ5.js","./chunk.AJZBJBMO.js"]),import("./chunk.M5VHUIDB.js")))),l=c.part((e,r)=>(0,i.jsx)(e.WhenInput,{...r}),{quiet:!0});function M(e){return(0,i.jsx)(a.Suspense,{fallback:(0,i.jsx)("span",{"data-graview-when-arriving":"",style:{display:"inline-block",minHeight:24}}),children:(0,i.jsx)(l,{...e})})}var N=()=>c.load().then(()=>{},()=>{});export{y as a,I as b,w as c,g as d,E as e,M as f,N as g};
@@ -1,4 +1,4 @@
1
- import{a as qe,c as Be}from"./chunk.QSPLKCTX.js";import{b as Ve}from"./chunk.GHN62OMG.js";import{a as Ie,b as Ke,c as Fe,d as j}from"./chunk.2RASWDMQ.js";import"./chunk.XCWZFLIB.js";import{k as Me,l as Le}from"./chunk.6YK5E7ZQ.js";import"./chunk.AWUO3M5D.js";import"./chunk.VZDHRY3U.js";import"./chunk.V4HVFLFQ.js";import{e as Ee}from"./chunk.A2R53GWF.js";import{m as Pe}from"./chunk.QAMW5QDT.js";import{a as Te,b as Oe}from"./chunk.B5PJCYBU.js";import{h as $e}from"./chunk.Q2EGESEZ.js";import{e as Se,f as Ne}from"./chunk.SMHP2CQH.js";import"./chunk.HJCQ6I3S.js";import"./chunk.EJ4MSVX2.js";import{e as ne}from"./chunk.KQPKYWDM.js";import"./chunk.72YXFJKC.js";import{a as xe}from"./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{a as Ae,b as Ce,j as Re}from"./chunk.FXCQJPN4.js";import"./chunk.G4JJXA63.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.NIAM7OTV.js";import"./chunk.WVUJXDXZ.js";import"./chunk.XYGNS637.js";import{a as ye}from"./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 ke}from"./chunk.WUVXIUA7.js";import"./chunk.OJGHDWI6.js";import"./chunk.BN7C5ZYX.js";import"./chunk.REUMBCSV.js";import{d as te,l as be}from"./chunk.2KIWGQXC.js";import{c as me}from"./chunk.D5LOTCBU.js";import{B as De,q as J}from"./chunk.KZUMXT5J.js";import"./chunk.CGK2PY76.js";import{G as tt,Na as ee,Oa as Y,T as we,W as ve,ba as V,da as X,j as ge,l as ue,m as fe,oa as he,r as U}from"./chunk.CYTTZOYL.js";import"./chunk.SDO3U72B.js";import{L as se,T as de,Z as D,bb as Z,la as G,na as le,pa as pe,ra as ce}from"./chunk.Q4MI53KK.js";import"./chunk.FQLNBIQ5.js";import{b as Q}from"./chunk.AJZBJBMO.js";var f=Q(tt(),1);var nt=300,it=14,z=50,at=3,ot=2;function _e(e,n,o){let p=e.tryDefinition(n)?.fields?.shape;return(p?.[o]===void 0?void 0:ye(p[o]))?.type}var rt=(e,n)=>Object.keys(e.tryDefinition(n)?.fields?.shape??{}),st=e=>e==="date"||e==="datetime",Ge=/^(due|dueOn|dueAt|dueDate|deadline|by)$/i,dt=/^(date|on|day|when|at|start|starts|startsOn|startsAt|begins|from|sown|scheduled|scheduledFor|planned|plannedFor)$/i,lt=/^(done|finished|complete|completed|closed)$/i;function ae(e,n){let o=e.tryDefinition(n),p=rt(e,n),a=p.filter(u=>st(_e(e,n,u)));if(a.length===0)return;let i=o?.fieldRoles??{},s=u=>i[u]!==void 0&&a.includes(i[u])?i[u]:void 0,c=s("start")??s("when")??a.find(u=>Ge.test(u))??a.find(u=>dt.test(u));if(!c)return;let S=s("end")??a.find(u=>u!==c&&/^(end|ends|until|to|finish|finished|harvested|through)$/i.test(u)),g=p.find(u=>lt.test(u)&&_e(e,n,u)==="boolean");return{field:c,due:Ge.test(c),...S?{end:S}:{},...g?{done:g}:{}}}function ie(e,n){return Math.round((Date.parse(`${n.slice(0,10)}T00:00:00Z`)-Date.parse(`${e.slice(0,10)}T00:00:00Z`))/864e5)}var q=e=>typeof e=="string"&&/^\d{4}-\d{2}-\d{2}/.test(e)?e.slice(0,10):void 0;function je(e,n,o,p){let a=ne(e,n);if(a&&o.length>0&&o.length<=nt)return{shape:"board",field:a.field};let i=ae(e,n);if(i&&!i.due){let s=r=>{let y=q(r[i.field]),h=q(Z(r,i.field,p));return y&&h?ie(y,h):0},c=o.map(r=>({from:q(Z(r,i.field,p)),to:i.end&&q(r[i.end])?L(q(r[i.end]),s(r)):void 0})).filter(r=>r.from!==void 0).map(r=>({from:r.from,to:r.to&&r.to>r.from?r.to:r.from})),S=`${p.slice(0,7)}-01`,g=L(`${L(S,31).slice(0,7)}-01`,-1),u=c.filter(r=>r.from<=g&&r.to>=S),w=c.map(r=>ie(r.from,r.to)).sort((r,y)=>r-y),l=w[Math.floor(w.length/2)]??0;if(u.length>0&&l<=it){let r=L(p,-((new Date(`${p}T00:00:00Z`).getUTCDay()+6)%7)),y=L(r,6),h=u.every(m=>m.from>=r&&m.to<=y);return{shape:"calendar",start:i.field,...i.end?{end:i.end}:{},...i.done?{done:i.done}:{},range:h?"week":"month"}}}return{shape:"table"}}function ze(e,n){let o=ae(e,n);return o?{by:o.field,direction:o.due?"asc":"desc"}:void 0}function He(e,n,o={}){switch(n.shape){case"board":return{lens:"columns",kind:e,column:n.field};case"calendar":return{lens:"calendar",kind:e,start:n.start,...n.end?{end:n.end}:{},...n.done?{done:n.done}:{},range:n.range};case"table":return{lens:"blocks",kind:e,as:"row",...o.group?.by?{group:o.group.by}:{},...o.sort?{sort:{by:o.sort.by,...o.sort.direction==="desc"?{direction:"desc"}:{}}}:{}}}}var pt=60;function We(e,n,o,p){let a=e.tryDefinition(n),i=o.slice(0,pt),s=new Map;i.forEach(w=>{let l=G(a,w);te(w,a,{glance:!0,said:[l]}).forEach((r,y)=>{if(r.long||r.files||r.app)return;let h=s.get(r.key);h?h.count++:s.set(r.key,{label:r.label,count:1,at:y})})});let c=Math.max(1,Math.ceil(i.length/3)),S=[...s.entries()].filter(([,w])=>w.count>=c).sort((w,l)=>w[1].at-l[1].at).slice(0,at).map(([w,l])=>({about:"field",key:w,label:l.label})),g=new Map;for(let w of i){let l=new Set;for(let[r,y]of[["out",p.outEdges(w.id)],["in",p.inEdges(w.id)]])for(let h of y){let m=p.getNode(r==="out"?h.to:h.from);if(!m||m.id===w.id)continue;let b=`${h.kind}|${r}`;if(l.has(b))continue;l.add(b);let A=g.get(b);A?A.count++:g.set(b,{edge:h.kind,direction:r,far:m.kind,count:1})}}let u=[...g.entries()].sort((w,l)=>l[1].count-w[1].count).slice(0,ot).map(([w,l])=>{let r=me(e,l.direction==="out"?n:l.far,l.edge,l.direction);return{about:"edge",key:w,label:r.charAt(0).toUpperCase()+r.slice(1),edge:l.edge,direction:l.direction}});return[...S,...u]}function Ze(e,n,o,p){if(o.about==="field"){let s=e.tryDefinition(n.kind);return{text:te(n,s,{excerpt:!0}).find(S=>S.key===o.key)?.value??""}}let i=(o.direction==="out"?p.outEdges(n.id):p.inEdges(n.id)).filter(s=>s.kind===o.edge).map(s=>p.getNode(o.direction==="out"?s.to:s.from)).filter(s=>s!==void 0).map(s=>G(e.tryDefinition(s.kind),s));return i.length===0?{text:""}:i.length===1?{text:i[0]}:{text:`${i[0]} +${i.length-1}`,title:i.join(", ")}}function Ue(e,n,o=()=>{}){let p=new Map;for(let a of e){let i=a.nodeIds.filter(c=>n.has(c));if(i.length===0&&!(a.subjectId!==void 0&&n.has(a.subjectId)))continue;let s=p.get(a.invariant)??{invariant:a.invariant,label:o(a.invariant)||a.label||a.message,violations:[],records:new Set};s.violations.push(a);for(let c of i)s.records.add(c);a.subjectId!==void 0&&n.has(a.subjectId)&&s.records.add(a.subjectId),p.set(a.invariant,s)}return[...p.values()].sort((a,i)=>i.violations.length-a.violations.length).map(a=>({invariant:a.invariant,label:a.label,violations:a.violations,records:[...a.records]}))}var Ye=6;function Je(e,n,o,p){let a=ae(e,n);if(!a)return;let i=ne(e,n),s=g=>{if(a.done!==void 0&&g[a.done]===!0)return!0;if(!i)return!1;let u=i.values.indexOf(String(g[i.field]));return u>=0&&i.tiers[u]==="done"},c=0,S=0;for(let g of o){let u=q(Z(g,a.field,p));if(!u||s(g))continue;let w=ie(p,u);a.due&&w<0?c++:w>=0&&w<=Ye&&S++}if(!(c===0&&S===0))return{field:a.field,due:a.due,overdue:c,soon:S}}function L(e,n){return new Date(Date.parse(`${e.slice(0,10)}T00:00:00Z`)+n*864e5).toISOString().slice(0,10)}function oe(e,n,o){return n==="overdue"?[{key:e.field,value:`before:${o}`}]:[{key:e.field,value:`after:${L(o,-1)}`},{key:e.field,value:`before:${L(o,Ye+1)}`}]}function Qe(e,n,o,p){let a=new Set,i=new Set;for(let s of e)if(!(s.at<=o))for(let c of s.primitives)c.op==="add-node"&&c.node?.kind===n?a.add(c.node.id):(c.op==="patch-node"||c.op==="splice-text")&&c.id!==void 0&&p(c.id)===n&&i.add(c.id);for(let s of a)i.delete(s);return{added:[...a].filter(s=>p(s)===n).length,changed:[...i].filter(s=>p(s)===n).length}}var t=Q(we(),1),Xe="as",ct=(e,n)=>`graview:kind-seen:${e}:${n}`;function gt(e){try{return localStorage.getItem(e)}catch{return null}}function ut(e,n){try{localStorage.setItem(e,n)}catch{}}var ft=(e,n)=>({...ge(fe(e,!1),n),relation:null});function Yt({kind:e,members:n,flagged:o=[],label:p,retired:a=0}){let{store:i,brand:s,principal:c,views:S,view:g}=V(),{go:u}=Y(),w=X(),l=i.schema,r=l.tryDefinition(e),y=p??pe(l,e),h=i.today()??se(),m=n,b=(0,f.useId)(),A=(0,f.useMemo)(()=>je(l,e,m,h),[l,e,m,h]),x=g.within?.[Xe]==="table"?{shape:"table"}:A,k=Te(g),C=x.shape==="table"&&!k.sort?ze(l,e):void 0,v=C?{...k,sort:C}:k,R=(0,f.useMemo)(()=>new Set(o),[o]),T=(0,f.useMemo)(()=>$e(m,v,{schema:l,graph:i.graph,flagged:R,today:h}),[m,v,l,i,R,h,w]),I=(0,f.useMemo)(()=>Ne(l,Se(l,e)),[l,e]),M=S.arrangement?.()?.lists?.[e]?.filters,K=$=>u(Oe(g,$)),B=(0,f.useMemo)(()=>({name:s?.name??"app",schema:l,...i.policy?{policy:i.policy}:{}}),[s,l,i]),H=JSON.stringify(He(e,x,v)),P=(0,f.useMemo)(()=>{let $=Re(JSON.parse(H),{app:B,sight:Ce(B,c)});return Ae($)?void 0:$},[H,B,c]),W=x.shape!=="table"&&P!==void 0;return(0,t.jsxs)("section",{"aria-labelledby":b,className:"graview-kind-stop","data-testid":"kind-stop","data-graview-kind-stop":e,"data-graview-shape":x.shape,children:[(0,t.jsx)("style",{children:St}),(0,t.jsx)(wt,{kind:e,plural:y,count:m.length,headingId:b,description:r?.description}),(0,t.jsx)(ht,{kind:e,plural:y,members:m,today:h,arrangement:v,onArrange:K}),(m.length>1||a>0)&&!W?(0,t.jsx)(Pe,{schema:l,graph:i.graph,kind:e,arrangement:v,onChange:K,offers:I,...M?{filters:M}:{},kept:{shown:T.nodes.length,of:m.length},testId:"kind-arrange",chips:{nodes:m,flagged:R,today:h},...a>0?{past:{count:a,widen:()=>u(Ee(g,!0))}}:{}}):null,m.length>0?(0,t.jsx)(yt,{derived:A,shape:x,draft:P}):null,(0,t.jsx)("div",{className:"graview-kind-stop-body","data-testid":"kind-stop-body",children:m.length===0?(0,t.jsx)("p",{className:"graview-kind-stop-empty","data-testid":"kind-stop-empty",children:"Nothing here yet."}):W?(0,t.jsx)(kt,{draft:P,nodes:m}):T.nodes.length===0?(0,t.jsxs)("p",{className:"graview-kind-stop-empty","data-testid":"kind-stop-none-kept",children:["None of the ",D(m.length)," ",y.toLowerCase()," ",v.query?`says \u201C${v.query}\u201D`:"is kept by these filters","."," ",(0,t.jsx)("button",{type:"button",className:"graview-kind-stop-link",onClick:()=>K({}),children:"Show them all"})]}):(0,t.jsx)(xt,{kind:e,nodes:T.nodes,groups:T.grouped?T.groups.map($=>({key:$.key,label:$.label,nodes:$.nodes})):void 0,flagged:R,plural:y,arrangement:v})})]})}function wt({kind:e,plural:n,count:o,headingId:p,description:a}){let{store:i,setSelection:s,setMenuAt:c}=V(),S=(0,f.useMemo)(()=>({about:[U(e)]}),[e]),{affordances:g}=Me(S),{apply:u,preview:w}=Le(),l=(0,f.useMemo)(()=>{let x=k=>i.allMutations().find(C=>C.name===k.mutation)?.creates?.includes(e)??!1;return g.find(k=>!k.destructive&&!k.setsAside&&x(k))},[g,i,e]),[r,y]=(0,f.useState)(!1),[h,m]=(0,f.useState)(null),b=(0,f.useRef)(null),A=(0,f.useRef)(null);(0,f.useEffect)(()=>{let x=A.current;!x||x.closest('[data-testid="kind-stop"]')?.contains(document.activeElement)||x.focus({preventScroll:!0})},[e]);let O=(x,k)=>{try{w(x,k),u(x,k),m(null),y(!1),requestAnimationFrame(()=>b.current?.focus())}catch(C){return m(be(i.schema,i.allMutations(),C)),[]}};return(0,t.jsxs)("header",{className:"graview-kind-stop-head",children:[(0,t.jsxs)("div",{className:"graview-kind-stop-title",children:[(0,t.jsx)("h2",{id:p,ref:A,tabIndex:-1,"data-testid":"kind-stop-title",children:n}),(0,t.jsxs)("p",{"data-testid":"kind-stop-count",children:[le(i.schema,e,o),a?` \xB7 ${a}`:""]})]}),(0,t.jsxs)("div",{className:"graview-kind-stop-acts",children:[l?(0,t.jsx)("button",{ref:b,type:"button",className:"graview-kind-stop-primary","data-testid":"kind-stop-primary","data-affordance":l.id,"aria-expanded":l.open.length>0?r:void 0,onClick:()=>{m(null),l.open.length===0?O(l):y(x=>!x)},children:l.label}):null,(0,t.jsx)("button",{type:"button",className:"graview-kind-stop-quiet","data-testid":"kind-stop-acts","aria-haspopup":"menu","aria-label":`What can be done with the ${n.toLowerCase()}`,onClick:x=>{let k=x.currentTarget.getBoundingClientRect();s([U(e)]),c({x:Math.round(k.left),y:Math.round(k.bottom+4),on:U(e)})},children:"Acts\u2026"})]}),r&&l?(0,t.jsx)("div",{className:"graview-kind-stop-ask","data-testid":"kind-stop-ask","aria-label":l.label,role:"group",children:(0,t.jsx)(xe,{affordance:l,onApply:x=>O(l,x),onCancel:()=>{y(!1),b.current?.focus()}})}):null,h?(0,t.jsx)("p",{role:"alert",className:"graview-kind-stop-failed","data-testid":"kind-stop-failed",children:h}):null]})}var vt=J.part((e,n)=>(0,t.jsx)(e.ProblemRows,{...n}),{what:"The problems",as:"li"});function ht({kind:e,plural:n,members:o,today:p,arrangement:a,onArrange:i}){let{store:s,brand:c,setSelection:S}=V(),g=s.schema,u=ee(),w=(0,f.useMemo)(()=>new Set(o.map(v=>v.id)),[o]),l=(0,f.useMemo)(()=>Ue(u,w,v=>s.allInvariants().find(R=>R.name===v)?.label),[u,w,s]),r=(0,f.useMemo)(()=>Je(g,e,o,p),[g,e,o,p]),y=ct(De(c,g),e),[h]=(0,f.useState)(()=>gt(y));(0,f.useEffect)(()=>()=>ut(y,new Date().toISOString()),[y]);let m=X(),b=(0,f.useMemo)(()=>h?Qe(s.log.all(),e,h,v=>s.graph.getNode(v)?.kind):null,[h,s,e,m]),[A,O]=(0,f.useState)(null),x=v=>i({...a,filter:[...(a.filter??[]).filter(R=>!v?.some(T=>T.key===R.key)),...v??[]]}),k=l.reduce((v,R)=>v+R.violations.length,0),C=[];if(r&&(r.overdue>0||r.soon>0)){let v=r.field;C.push((0,t.jsxs)("li",{"data-testid":"kind-stop-dates",children:[r.overdue>0?(0,t.jsxs)("button",{type:"button",className:"graview-kind-stop-fact","data-tone":"warn",onClick:()=>x(oe(r,"overdue",p)),"aria-label":`${D(r.overdue)} overdue \u2014 show only these`,children:[D(r.overdue)," overdue"]}):null,r.soon>0?(0,t.jsxs)("button",{type:"button",className:"graview-kind-stop-fact",onClick:()=>x(oe(r,"soon",p)),"aria-label":`${D(r.soon)} in the next 7 days \u2014 show only these`,children:[D(r.soon)," ",r.due?"due":""," in the next 7 days"]}):null,(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text",children:[" by ",ce(g.tryDefinition(e),v).toLowerCase()]})]},"dates"))}if(l.length>0&&C.push((0,t.jsxs)("li",{"data-testid":"kind-stop-problems","data-graview-problems":k,children:[(0,t.jsxs)("span",{className:"graview-kind-stop-warn",children:[(0,t.jsx)("span",{"aria-hidden":"true",children:"\u26A0 "}),k===1?"1 problem":`${D(k)} problems`]}),(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text",children:[" in ",n.toLowerCase(),":"]}),(0,t.jsx)("ul",{className:"graview-kind-stop-rules",children:l.map(v=>(0,t.jsx)(mt,{group:v,open:A===v.invariant,onToggle:()=>O(R=>R===v.invariant?null:v.invariant),onPick:R=>S([R])},v.invariant))}),(0,t.jsxs)("button",{type:"button",className:"graview-kind-stop-link","data-testid":"kind-stop-only-problems",onClick:()=>x([{key:"is",value:"flagged"}]),children:["Show only the ",n.toLowerCase()," with a problem"]})]},"problems")),b&&(b.added>0||b.changed>0)){let v=[b.added>0?`${D(b.added)} added`:"",b.changed>0?`${D(b.changed)} changed`:""].filter(Boolean);C.push((0,t.jsxs)("li",{"data-testid":"kind-stop-since",children:[(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text",children:["Since you last looked (",de(h.slice(0,10)),"):"]})," ",v.join(", ")]},"since"))}return C.length===0?null:(0,t.jsx)("ul",{className:"graview-kind-stop-going-on","aria-label":`What is going on in the ${n.toLowerCase()}`,"data-testid":"kind-stop-going-on",children:C})}function mt({group:e,open:n,onToggle:o,onPick:p}){let a=(0,f.useId)();return(0,t.jsxs)("li",{"data-graview-rule":e.invariant,children:[(0,t.jsxs)("button",{type:"button",className:"graview-kind-stop-rule","aria-expanded":n,"aria-controls":a,onClick:o,onPointerEnter:J.prefetch,onFocus:J.prefetch,children:[(0,t.jsx)("span",{"aria-hidden":"true",className:"graview-kind-stop-chevron","data-open":n||void 0,children:"\u203A"}),e.label," ",(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text",children:["\xB7 ",D(e.violations.length)]})]}),n?(0,t.jsx)("ol",{id:a,className:"graview-kind-stop-problem-rows","data-testid":"kind-stop-problem-rows",children:(0,t.jsx)(f.Suspense,{fallback:null,children:(0,t.jsx)(vt,{violations:e.violations,pick:i=>{let s=i.subjectId??e.records[0]??i.nodeIds[0];s!==void 0&&p(s)}})})}):null]})}var bt={board:"Board",calendar:"Calendar",table:"Table"};function yt({derived:e,shape:n,draft:o}){let{view:p}=V(),{go:a}=Y(),{keep:i}=qe(Be()),[s,c]=(0,f.useState)(!1),S=e.shape==="table"?[]:[e.shape,"table"];return(0,t.jsxs)("div",{className:"graview-kind-stop-shape","data-testid":"kind-stop-shape",children:[S.length>0?(0,t.jsx)("span",{role:"group","aria-label":"Show as",className:"graview-kind-stop-switch",children:S.map(g=>(0,t.jsx)("button",{type:"button","aria-pressed":n.shape===g,"data-testid":`kind-stop-as-${g}`,onClick:()=>a(ue(p,Xe,g===e.shape?null:g)),children:bt[g]},g))}):null,(0,t.jsx)("span",{className:"graview-kind-stop-quiet-text","data-testid":"kind-stop-derived",children:o?`${o.said.replace(/\.$/,"")}, derived from the declaration`:"Derived from the declaration"}),o?(0,t.jsx)("button",{type:"button",className:"graview-kind-stop-link","data-testid":"kind-stop-keep",disabled:s,title:`Keep \u201C${o.title}\u201D as a lens: a place of its own`,onClick:()=>{c(!0),i(o).finally(()=>c(!1))},children:"Keep as a lens"}):null]})}function kt({draft:e,nodes:n}){let o=Ve(e.drawn);return(0,t.jsx)("div",{className:"graview-kind-stop-lens","data-graview-draft":e.lens.name,children:(0,t.jsx)(ve,{mode:"scene",children:(0,t.jsx)(ke,{kind:e.kind,view:e.title,children:(0,t.jsx)(o,{nodes:n,label:e.title,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1})})})})}function xt({kind:e,nodes:n,groups:o,flagged:p,plural:a,arrangement:i}){let{store:s,views:c,view:S,selection:g,setSelection:u,setMenuAt:w,principal:l}=V(),{go:r}=Y(),y=s.schema,h=s.graph,m=(0,f.useMemo)(()=>(o?o.flatMap(d=>d.nodes):n).map(d=>d.id),[n,o]),b=Ie(m),A=(0,f.useMemo)(()=>s.permittedMutations(l).some(d=>{let N=d.subject?.kinds;return N!==void 0&&(N==="*"||N.includes(e))}),[s,l,e]),O=(0,f.useRef)(null),x=d=>{b.choose(d),requestAnimationFrame(()=>{let N=b.list.current;((d[0]===void 0?null:N?.querySelector(`[data-graview-choose-box="${CSS.escape(d[0])}"]`))??N)?.focus({preventScroll:!0})})},k=b.chosen.length,C=c.lookup(e,{cardinality:"one",fidelity:"glyph"}),v=C!==void 0&&!he(C)?C:void 0,R=d=>g.includes(d),T=ee(),I=(0,f.useMemo)(()=>We(y,e,n,h),[y,e,n,h]),[M,K]=(0,f.useState)(z);(0,f.useEffect)(()=>K(z),[i.query,i.filter?.length,i.sort?.by,i.group?.by]);let B=y.tryDefinition(e),H=d=>T.filter(N=>N.nodeIds.includes(d)||N.subjectId===d).map(N=>N.message),P=i.sort?.by,W=`${a}${i.sort?`, in order of ${I.find(d=>d.key===P)?.label.toLowerCase()??P}`:""}`,$=M,et=d=>{let N=G(B,d),F=p.has(d.id)?H(d.id):[];return(0,t.jsxs)("tr",{"data-graview-pick":d.id,tabIndex:-1,"data-graview-record":d.id,"data-flagged":F.length>0||void 0,...A?{"data-graview-choose":d.id}:{},children:[A?(0,t.jsx)("td",{className:"graview-choose-at",children:(0,t.jsx)("input",{...b.boxProps(d.id,N),onPointerEnter:j,onFocus:j})}):null,(0,t.jsxs)("th",{scope:"row",className:"graview-kind-stop-name",children:[v?(0,t.jsx)("div",{"data-graview-pick":d.id,className:"graview-kind-stop-own-row",children:(0,t.jsx)(v,{node:d,cardinality:"one",fidelity:"glyph",mode:"scene",selected:R(d.id),...F.length>0?{flagged:[d.id]}:{}})}):(0,t.jsx)("button",{type:"button","data-testid":"kind-stop-row-go",title:`Go to ${N}`,onClick:()=>r(ft(S,d.id)),children:N}),F.length>0?(0,t.jsxs)("span",{className:"graview-kind-stop-flag",title:F.join(" \xB7 "),children:[(0,t.jsx)("span",{"aria-hidden":"true",children:"\u26A0"}),(0,t.jsx)("span",{className:"graview-kind-stop-hidden",children:`Problem: ${F.join(". ")}`})]}):null]}),I.map(_=>{let E=Ze(y,d,_,h);return(0,t.jsx)("td",{"data-label":_.label,"data-short":E.text.length>0&&E.text.length<=14||void 0,"data-empty":E.text?void 0:"",...E.title?{title:E.title}:{},children:E.text?(0,t.jsx)("span",{children:E.text}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("b",{"aria-hidden":"true",children:"\u2014"}),(0,t.jsx)("i",{className:"graview-kind-stop-hidden",children:"none"})]})},_.key)}),(0,t.jsx)("td",{className:"graview-kind-stop-row-acts",children:(0,t.jsx)("button",{type:"button","data-testid":"kind-stop-row-acts","aria-haspopup":"menu","aria-label":`What can be done with ${N}`,onClick:_=>{let E=_.currentTarget.getBoundingClientRect();u([d.id]),w({x:Math.round(E.left),y:Math.round(E.bottom+4),on:d.id})},children:(0,t.jsx)("span",{"aria-hidden":"true",children:"\u22EF"})})})]},d.id)},re=d=>{let N=d.slice(0,Math.max(0,$));return $-=N.length,N.map(et)};return(0,t.jsxs)("div",{className:"graview-kind-stop-table-at",...A?{...b.listProps,ref:d=>{O.current=d,b.list.current=d},tabIndex:-1,role:"group","aria-label":k>0?`${a}, ${k} chosen`:a,"data-graview-choosable":""}:{},children:[A?(0,t.jsx)("style",{children:Ke}):null,(0,t.jsxs)("table",{className:"graview-kind-stop-table","data-testid":"kind-stop-table",children:[(0,t.jsx)("caption",{className:"graview-kind-stop-hidden",children:W}),(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{children:[A?(0,t.jsx)("td",{className:"graview-choose-at graview-choose-all",children:(0,t.jsx)("input",{type:"checkbox",className:"graview-choose-box","data-testid":"kind-stop-choose-all","aria-label":`Choose all ${D(n.length)} ${a.toLowerCase()}`,checked:k>0&&k===n.length,ref:d=>{d&&(d.indeterminate=k>0&&k<n.length)},onPointerEnter:j,onFocus:j,onChange:()=>k===n.length?b.clear():b.choose(m)})}):null,(0,t.jsx)("th",{scope:"col","aria-sort":P==="label"?i.sort?.direction==="desc"?"descending":"ascending":void 0,children:"Name"}),I.map(d=>(0,t.jsx)("th",{scope:"col","aria-sort":d.about==="field"&&d.key===P?i.sort?.direction==="desc"?"descending":"ascending":void 0,children:d.label},d.key)),(0,t.jsx)("th",{scope:"col",children:(0,t.jsx)("span",{className:"graview-kind-stop-hidden",children:"Acts"})})]})}),o?o.map(d=>$<=0?null:(0,t.jsxs)("tbody",{"data-graview-group":d.key,children:[(0,t.jsx)("tr",{className:"graview-kind-stop-group",children:(0,t.jsxs)("th",{scope:"rowgroup",colSpan:I.length+(A?3:2),children:[d.label," ",(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text",children:["\xB7 ",D(d.nodes.length)]})]})}),re(d.nodes)]},d.key||"-")):(0,t.jsx)("tbody",{children:re(n)})]}),A?(0,t.jsx)(Fe,{store:s,chosen:b.chosen,principal:l,anchor:()=>O.current?.closest('[data-testid="kind-stop"]')??null,of:m.length,onChooseAll:()=>b.choose(m),onClear:b.clear,onActed:x}):null,n.length>M?(0,t.jsxs)("p",{className:"graview-kind-stop-more",children:[(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text","data-testid":"kind-stop-shown",children:[D(M)," of ",D(n.length)," shown"]})," ",(0,t.jsxs)("button",{type:"button",className:"graview-kind-stop-link","data-testid":"kind-stop-more",onClick:()=>K(d=>d+z),children:["Show ",D(Math.min(z,n.length-M))," more"]})]}):null]})}var St=`
1
+ import{a as qe,c as Be}from"./chunk.FN34P4IS.js";import{b as Ve}from"./chunk.2DH42I7L.js";import{a as Ie,b as Ke,c as Fe,d as j}from"./chunk.VZAF3452.js";import"./chunk.WHX47OJM.js";import{k as Me,l as Le}from"./chunk.2D7K2IJQ.js";import"./chunk.QRT6BZR6.js";import"./chunk.2V7QTIAV.js";import"./chunk.Z26T5E76.js";import{e as Ee}from"./chunk.77JI5T4F.js";import{m as Pe}from"./chunk.SADHOSRC.js";import{a as Te,b as Oe}from"./chunk.4DZOAB4D.js";import{h as $e}from"./chunk.UDU545CL.js";import{e as Se,f as Ne}from"./chunk.7VAHHEDX.js";import"./chunk.HJCQ6I3S.js";import"./chunk.DQAMVVE6.js";import{e as ne}from"./chunk.OXFDB5BB.js";import"./chunk.DJIF7IAQ.js";import{a as xe}from"./chunk.LTOQ22ZJ.js";import"./chunk.2TCOLAL2.js";import"./chunk.2VYGDY5Z.js";import"./chunk.FUPYIOXZ.js";import"./chunk.APRWUIE3.js";import"./chunk.3OEODIHB.js";import"./chunk.WFCE7NLK.js";import{a as Ae,b as Ce,j as Re}from"./chunk.REXU6ARY.js";import"./chunk.G4JJXA63.js";import"./chunk.BIDL7GQD.js";import"./chunk.TA2JTUNX.js";import"./chunk.HZPRMHSL.js";import"./chunk.TQ2G4AM4.js";import"./chunk.X36BYTEG.js";import"./chunk.LDMBJC3B.js";import"./chunk.XOZU4OFA.js";import"./chunk.G7YLK4PX.js";import"./chunk.Q5WEOX3Q.js";import"./chunk.2E62YCMZ.js";import"./chunk.DUP2CGVH.js";import"./chunk.YEXFVDRA.js";import"./chunk.WVUJXDXZ.js";import"./chunk.ZA5TDCBC.js";import{a as ye}from"./chunk.2JEN2RCB.js";import"./chunk.7CLKGKSF.js";import"./chunk.TMHVYI5R.js";import"./chunk.R5MLRKAO.js";import"./chunk.YMXWS4XN.js";import"./chunk.GZHZLJBF.js";import{s as ke}from"./chunk.3SAESG6X.js";import"./chunk.OJGHDWI6.js";import"./chunk.F6BNFLQM.js";import"./chunk.75JQCTR6.js";import{d as te,l as be}from"./chunk.5IEZF433.js";import{c as me}from"./chunk.5AD2QHWH.js";import{C as De,r as J}from"./chunk.3FKKH2XU.js";import"./chunk.DLWFULWE.js";import{G as tt,Pa as ee,Qa as Y,V as we,Y as ve,da as V,fa as X,j as ge,l as ue,m as fe,qa as he,r as U}from"./chunk.VLX7YWVH.js";import"./chunk.SDO3U72B.js";import{L as se,T as de,Z as D,bb as Z,la as G,na as le,pa as pe,ra as ce}from"./chunk.IQGSEAQ2.js";import"./chunk.FQLNBIQ5.js";import{b as Q}from"./chunk.AJZBJBMO.js";var f=Q(tt(),1);var nt=300,it=14,z=50,at=3,ot=2;function _e(e,n,o){let p=e.tryDefinition(n)?.fields?.shape;return(p?.[o]===void 0?void 0:ye(p[o]))?.type}var rt=(e,n)=>Object.keys(e.tryDefinition(n)?.fields?.shape??{}),st=e=>e==="date"||e==="datetime",Ge=/^(due|dueOn|dueAt|dueDate|deadline|by)$/i,dt=/^(date|on|day|when|at|start|starts|startsOn|startsAt|begins|from|sown|scheduled|scheduledFor|planned|plannedFor)$/i,lt=/^(done|finished|complete|completed|closed)$/i;function ae(e,n){let o=e.tryDefinition(n),p=rt(e,n),a=p.filter(u=>st(_e(e,n,u)));if(a.length===0)return;let i=o?.fieldRoles??{},s=u=>i[u]!==void 0&&a.includes(i[u])?i[u]:void 0,c=s("start")??s("when")??a.find(u=>Ge.test(u))??a.find(u=>dt.test(u));if(!c)return;let S=s("end")??a.find(u=>u!==c&&/^(end|ends|until|to|finish|finished|harvested|through)$/i.test(u)),g=p.find(u=>lt.test(u)&&_e(e,n,u)==="boolean");return{field:c,due:Ge.test(c),...S?{end:S}:{},...g?{done:g}:{}}}function ie(e,n){return Math.round((Date.parse(`${n.slice(0,10)}T00:00:00Z`)-Date.parse(`${e.slice(0,10)}T00:00:00Z`))/864e5)}var q=e=>typeof e=="string"&&/^\d{4}-\d{2}-\d{2}/.test(e)?e.slice(0,10):void 0;function je(e,n,o,p){let a=ne(e,n);if(a&&o.length>0&&o.length<=nt)return{shape:"board",field:a.field};let i=ae(e,n);if(i&&!i.due){let s=r=>{let y=q(r[i.field]),h=q(Z(r,i.field,p));return y&&h?ie(y,h):0},c=o.map(r=>({from:q(Z(r,i.field,p)),to:i.end&&q(r[i.end])?L(q(r[i.end]),s(r)):void 0})).filter(r=>r.from!==void 0).map(r=>({from:r.from,to:r.to&&r.to>r.from?r.to:r.from})),S=`${p.slice(0,7)}-01`,g=L(`${L(S,31).slice(0,7)}-01`,-1),u=c.filter(r=>r.from<=g&&r.to>=S),w=c.map(r=>ie(r.from,r.to)).sort((r,y)=>r-y),l=w[Math.floor(w.length/2)]??0;if(u.length>0&&l<=it){let r=L(p,-((new Date(`${p}T00:00:00Z`).getUTCDay()+6)%7)),y=L(r,6),h=u.every(m=>m.from>=r&&m.to<=y);return{shape:"calendar",start:i.field,...i.end?{end:i.end}:{},...i.done?{done:i.done}:{},range:h?"week":"month"}}}return{shape:"table"}}function ze(e,n){let o=ae(e,n);return o?{by:o.field,direction:o.due?"asc":"desc"}:void 0}function He(e,n,o={}){switch(n.shape){case"board":return{lens:"columns",kind:e,column:n.field};case"calendar":return{lens:"calendar",kind:e,start:n.start,...n.end?{end:n.end}:{},...n.done?{done:n.done}:{},range:n.range};case"table":return{lens:"blocks",kind:e,as:"row",...o.group?.by?{group:o.group.by}:{},...o.sort?{sort:{by:o.sort.by,...o.sort.direction==="desc"?{direction:"desc"}:{}}}:{}}}}var pt=60;function We(e,n,o,p){let a=e.tryDefinition(n),i=o.slice(0,pt),s=new Map;i.forEach(w=>{let l=G(a,w);te(w,a,{glance:!0,said:[l]}).forEach((r,y)=>{if(r.long||r.files||r.app)return;let h=s.get(r.key);h?h.count++:s.set(r.key,{label:r.label,count:1,at:y})})});let c=Math.max(1,Math.ceil(i.length/3)),S=[...s.entries()].filter(([,w])=>w.count>=c).sort((w,l)=>w[1].at-l[1].at).slice(0,at).map(([w,l])=>({about:"field",key:w,label:l.label})),g=new Map;for(let w of i){let l=new Set;for(let[r,y]of[["out",p.outEdges(w.id)],["in",p.inEdges(w.id)]])for(let h of y){let m=p.getNode(r==="out"?h.to:h.from);if(!m||m.id===w.id)continue;let b=`${h.kind}|${r}`;if(l.has(b))continue;l.add(b);let A=g.get(b);A?A.count++:g.set(b,{edge:h.kind,direction:r,far:m.kind,count:1})}}let u=[...g.entries()].sort((w,l)=>l[1].count-w[1].count).slice(0,ot).map(([w,l])=>{let r=me(e,l.direction==="out"?n:l.far,l.edge,l.direction);return{about:"edge",key:w,label:r.charAt(0).toUpperCase()+r.slice(1),edge:l.edge,direction:l.direction}});return[...S,...u]}function Ze(e,n,o,p){if(o.about==="field"){let s=e.tryDefinition(n.kind);return{text:te(n,s,{excerpt:!0}).find(S=>S.key===o.key)?.value??""}}let i=(o.direction==="out"?p.outEdges(n.id):p.inEdges(n.id)).filter(s=>s.kind===o.edge).map(s=>p.getNode(o.direction==="out"?s.to:s.from)).filter(s=>s!==void 0).map(s=>G(e.tryDefinition(s.kind),s));return i.length===0?{text:""}:i.length===1?{text:i[0]}:{text:`${i[0]} +${i.length-1}`,title:i.join(", ")}}function Ue(e,n,o=()=>{}){let p=new Map;for(let a of e){let i=a.nodeIds.filter(c=>n.has(c));if(i.length===0&&!(a.subjectId!==void 0&&n.has(a.subjectId)))continue;let s=p.get(a.invariant)??{invariant:a.invariant,label:o(a.invariant)||a.label||a.message,violations:[],records:new Set};s.violations.push(a);for(let c of i)s.records.add(c);a.subjectId!==void 0&&n.has(a.subjectId)&&s.records.add(a.subjectId),p.set(a.invariant,s)}return[...p.values()].sort((a,i)=>i.violations.length-a.violations.length).map(a=>({invariant:a.invariant,label:a.label,violations:a.violations,records:[...a.records]}))}var Ye=6;function Je(e,n,o,p){let a=ae(e,n);if(!a)return;let i=ne(e,n),s=g=>{if(a.done!==void 0&&g[a.done]===!0)return!0;if(!i)return!1;let u=i.values.indexOf(String(g[i.field]));return u>=0&&i.tiers[u]==="done"},c=0,S=0;for(let g of o){let u=q(Z(g,a.field,p));if(!u||s(g))continue;let w=ie(p,u);a.due&&w<0?c++:w>=0&&w<=Ye&&S++}if(!(c===0&&S===0))return{field:a.field,due:a.due,overdue:c,soon:S}}function L(e,n){return new Date(Date.parse(`${e.slice(0,10)}T00:00:00Z`)+n*864e5).toISOString().slice(0,10)}function oe(e,n,o){return n==="overdue"?[{key:e.field,value:`before:${o}`}]:[{key:e.field,value:`after:${L(o,-1)}`},{key:e.field,value:`before:${L(o,Ye+1)}`}]}function Qe(e,n,o,p){let a=new Set,i=new Set;for(let s of e)if(!(s.at<=o))for(let c of s.primitives)c.op==="add-node"&&c.node?.kind===n?a.add(c.node.id):(c.op==="patch-node"||c.op==="splice-text")&&c.id!==void 0&&p(c.id)===n&&i.add(c.id);for(let s of a)i.delete(s);return{added:[...a].filter(s=>p(s)===n).length,changed:[...i].filter(s=>p(s)===n).length}}var t=Q(we(),1),Xe="as",ct=(e,n)=>`graview:kind-seen:${e}:${n}`;function gt(e){try{return localStorage.getItem(e)}catch{return null}}function ut(e,n){try{localStorage.setItem(e,n)}catch{}}var ft=(e,n)=>({...ge(fe(e,!1),n),relation:null});function Yt({kind:e,members:n,flagged:o=[],label:p,retired:a=0}){let{store:i,brand:s,principal:c,views:S,view:g}=V(),{go:u}=Y(),w=X(),l=i.schema,r=l.tryDefinition(e),y=p??pe(l,e),h=i.today()??se(),m=n,b=(0,f.useId)(),A=(0,f.useMemo)(()=>je(l,e,m,h),[l,e,m,h]),x=g.within?.[Xe]==="table"?{shape:"table"}:A,k=Te(g),C=x.shape==="table"&&!k.sort?ze(l,e):void 0,v=C?{...k,sort:C}:k,R=(0,f.useMemo)(()=>new Set(o),[o]),T=(0,f.useMemo)(()=>$e(m,v,{schema:l,graph:i.graph,flagged:R,today:h}),[m,v,l,i,R,h,w]),I=(0,f.useMemo)(()=>Ne(l,Se(l,e)),[l,e]),M=S.arrangement?.()?.lists?.[e]?.filters,K=$=>u(Oe(g,$)),B=(0,f.useMemo)(()=>({name:s?.name??"app",schema:l,...i.policy?{policy:i.policy}:{}}),[s,l,i]),H=JSON.stringify(He(e,x,v)),P=(0,f.useMemo)(()=>{let $=Re(JSON.parse(H),{app:B,sight:Ce(B,c)});return Ae($)?void 0:$},[H,B,c]),W=x.shape!=="table"&&P!==void 0;return(0,t.jsxs)("section",{"aria-labelledby":b,className:"graview-kind-stop","data-testid":"kind-stop","data-graview-kind-stop":e,"data-graview-shape":x.shape,children:[(0,t.jsx)("style",{children:St}),(0,t.jsx)(wt,{kind:e,plural:y,count:m.length,headingId:b,description:r?.description}),(0,t.jsx)(ht,{kind:e,plural:y,members:m,today:h,arrangement:v,onArrange:K}),(m.length>1||a>0)&&!W?(0,t.jsx)(Pe,{schema:l,graph:i.graph,kind:e,arrangement:v,onChange:K,offers:I,...M?{filters:M}:{},kept:{shown:T.nodes.length,of:m.length},testId:"kind-arrange",chips:{nodes:m,flagged:R,today:h},...a>0?{past:{count:a,widen:()=>u(Ee(g,!0))}}:{}}):null,m.length>0?(0,t.jsx)(yt,{derived:A,shape:x,draft:P}):null,(0,t.jsx)("div",{className:"graview-kind-stop-body","data-testid":"kind-stop-body",children:m.length===0?(0,t.jsx)("p",{className:"graview-kind-stop-empty","data-testid":"kind-stop-empty",children:"Nothing here yet."}):W?(0,t.jsx)(kt,{draft:P,nodes:m}):T.nodes.length===0?(0,t.jsxs)("p",{className:"graview-kind-stop-empty","data-testid":"kind-stop-none-kept",children:["None of the ",D(m.length)," ",y.toLowerCase()," ",v.query?`says \u201C${v.query}\u201D`:"is kept by these filters","."," ",(0,t.jsx)("button",{type:"button",className:"graview-kind-stop-link",onClick:()=>K({}),children:"Show them all"})]}):(0,t.jsx)(xt,{kind:e,nodes:T.nodes,groups:T.grouped?T.groups.map($=>({key:$.key,label:$.label,nodes:$.nodes})):void 0,flagged:R,plural:y,arrangement:v})})]})}function wt({kind:e,plural:n,count:o,headingId:p,description:a}){let{store:i,setSelection:s,setMenuAt:c}=V(),S=(0,f.useMemo)(()=>({about:[U(e)]}),[e]),{affordances:g}=Me(S),{apply:u,preview:w}=Le(),l=(0,f.useMemo)(()=>{let x=k=>i.allMutations().find(C=>C.name===k.mutation)?.creates?.includes(e)??!1;return g.find(k=>!k.destructive&&!k.setsAside&&x(k))},[g,i,e]),[r,y]=(0,f.useState)(!1),[h,m]=(0,f.useState)(null),b=(0,f.useRef)(null),A=(0,f.useRef)(null);(0,f.useEffect)(()=>{let x=A.current;!x||x.closest('[data-testid="kind-stop"]')?.contains(document.activeElement)||x.focus({preventScroll:!0})},[e]);let O=(x,k)=>{try{w(x,k),u(x,k),m(null),y(!1),requestAnimationFrame(()=>b.current?.focus())}catch(C){return m(be(i.schema,i.allMutations(),C)),[]}};return(0,t.jsxs)("header",{className:"graview-kind-stop-head",children:[(0,t.jsxs)("div",{className:"graview-kind-stop-title",children:[(0,t.jsx)("h2",{id:p,ref:A,tabIndex:-1,"data-testid":"kind-stop-title",children:n}),(0,t.jsxs)("p",{"data-testid":"kind-stop-count",children:[le(i.schema,e,o),a?` \xB7 ${a}`:""]})]}),(0,t.jsxs)("div",{className:"graview-kind-stop-acts",children:[l?(0,t.jsx)("button",{ref:b,type:"button",className:"graview-kind-stop-primary","data-testid":"kind-stop-primary","data-affordance":l.id,"aria-expanded":l.open.length>0?r:void 0,onClick:()=>{m(null),l.open.length===0?O(l):y(x=>!x)},children:l.label}):null,(0,t.jsx)("button",{type:"button",className:"graview-kind-stop-quiet","data-testid":"kind-stop-acts","aria-haspopup":"menu","aria-label":`What can be done with the ${n.toLowerCase()}`,onClick:x=>{let k=x.currentTarget.getBoundingClientRect();s([U(e)]),c({x:Math.round(k.left),y:Math.round(k.bottom+4),on:U(e)})},children:"Acts\u2026"})]}),r&&l?(0,t.jsx)("div",{className:"graview-kind-stop-ask","data-testid":"kind-stop-ask","aria-label":l.label,role:"group",children:(0,t.jsx)(xe,{affordance:l,onApply:x=>O(l,x),onCancel:()=>{y(!1),b.current?.focus()}})}):null,h?(0,t.jsx)("p",{role:"alert",className:"graview-kind-stop-failed","data-testid":"kind-stop-failed",children:h}):null]})}var vt=J.part((e,n)=>(0,t.jsx)(e.ProblemRows,{...n}),{what:"The problems",as:"li"});function ht({kind:e,plural:n,members:o,today:p,arrangement:a,onArrange:i}){let{store:s,brand:c,setSelection:S}=V(),g=s.schema,u=ee(),w=(0,f.useMemo)(()=>new Set(o.map(v=>v.id)),[o]),l=(0,f.useMemo)(()=>Ue(u,w,v=>s.allInvariants().find(R=>R.name===v)?.label),[u,w,s]),r=(0,f.useMemo)(()=>Je(g,e,o,p),[g,e,o,p]),y=ct(De(c,g),e),[h]=(0,f.useState)(()=>gt(y));(0,f.useEffect)(()=>()=>ut(y,new Date().toISOString()),[y]);let m=X(),b=(0,f.useMemo)(()=>h?Qe(s.log.all(),e,h,v=>s.graph.getNode(v)?.kind):null,[h,s,e,m]),[A,O]=(0,f.useState)(null),x=v=>i({...a,filter:[...(a.filter??[]).filter(R=>!v?.some(T=>T.key===R.key)),...v??[]]}),k=l.reduce((v,R)=>v+R.violations.length,0),C=[];if(r&&(r.overdue>0||r.soon>0)){let v=r.field;C.push((0,t.jsxs)("li",{"data-testid":"kind-stop-dates",children:[r.overdue>0?(0,t.jsxs)("button",{type:"button",className:"graview-kind-stop-fact","data-tone":"warn",onClick:()=>x(oe(r,"overdue",p)),"aria-label":`${D(r.overdue)} overdue \u2014 show only these`,children:[D(r.overdue)," overdue"]}):null,r.soon>0?(0,t.jsxs)("button",{type:"button",className:"graview-kind-stop-fact",onClick:()=>x(oe(r,"soon",p)),"aria-label":`${D(r.soon)} in the next 7 days \u2014 show only these`,children:[D(r.soon)," ",r.due?"due":""," in the next 7 days"]}):null,(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text",children:[" by ",ce(g.tryDefinition(e),v).toLowerCase()]})]},"dates"))}if(l.length>0&&C.push((0,t.jsxs)("li",{"data-testid":"kind-stop-problems","data-graview-problems":k,children:[(0,t.jsxs)("span",{className:"graview-kind-stop-warn",children:[(0,t.jsx)("span",{"aria-hidden":"true",children:"\u26A0 "}),k===1?"1 problem":`${D(k)} problems`]}),(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text",children:[" in ",n.toLowerCase(),":"]}),(0,t.jsx)("ul",{className:"graview-kind-stop-rules",children:l.map(v=>(0,t.jsx)(mt,{group:v,open:A===v.invariant,onToggle:()=>O(R=>R===v.invariant?null:v.invariant),onPick:R=>S([R])},v.invariant))}),(0,t.jsxs)("button",{type:"button",className:"graview-kind-stop-link","data-testid":"kind-stop-only-problems",onClick:()=>x([{key:"is",value:"flagged"}]),children:["Show only the ",n.toLowerCase()," with a problem"]})]},"problems")),b&&(b.added>0||b.changed>0)){let v=[b.added>0?`${D(b.added)} added`:"",b.changed>0?`${D(b.changed)} changed`:""].filter(Boolean);C.push((0,t.jsxs)("li",{"data-testid":"kind-stop-since",children:[(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text",children:["Since you last looked (",de(h.slice(0,10)),"):"]})," ",v.join(", ")]},"since"))}return C.length===0?null:(0,t.jsx)("ul",{className:"graview-kind-stop-going-on","aria-label":`What is going on in the ${n.toLowerCase()}`,"data-testid":"kind-stop-going-on",children:C})}function mt({group:e,open:n,onToggle:o,onPick:p}){let a=(0,f.useId)();return(0,t.jsxs)("li",{"data-graview-rule":e.invariant,children:[(0,t.jsxs)("button",{type:"button",className:"graview-kind-stop-rule","aria-expanded":n,"aria-controls":a,onClick:o,onPointerEnter:J.prefetch,onFocus:J.prefetch,children:[(0,t.jsx)("span",{"aria-hidden":"true",className:"graview-kind-stop-chevron","data-open":n||void 0,children:"\u203A"}),e.label," ",(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text",children:["\xB7 ",D(e.violations.length)]})]}),n?(0,t.jsx)("ol",{id:a,className:"graview-kind-stop-problem-rows","data-testid":"kind-stop-problem-rows",children:(0,t.jsx)(f.Suspense,{fallback:null,children:(0,t.jsx)(vt,{violations:e.violations,pick:i=>{let s=i.subjectId??e.records[0]??i.nodeIds[0];s!==void 0&&p(s)}})})}):null]})}var bt={board:"Board",calendar:"Calendar",table:"Table"};function yt({derived:e,shape:n,draft:o}){let{view:p}=V(),{go:a}=Y(),{keep:i}=qe(Be()),[s,c]=(0,f.useState)(!1),S=e.shape==="table"?[]:[e.shape,"table"];return(0,t.jsxs)("div",{className:"graview-kind-stop-shape","data-testid":"kind-stop-shape",children:[S.length>0?(0,t.jsx)("span",{role:"group","aria-label":"Show as",className:"graview-kind-stop-switch",children:S.map(g=>(0,t.jsx)("button",{type:"button","aria-pressed":n.shape===g,"data-testid":`kind-stop-as-${g}`,onClick:()=>a(ue(p,Xe,g===e.shape?null:g)),children:bt[g]},g))}):null,(0,t.jsx)("span",{className:"graview-kind-stop-quiet-text","data-testid":"kind-stop-derived",children:o?`${o.said.replace(/\.$/,"")}, derived from the declaration`:"Derived from the declaration"}),o?(0,t.jsx)("button",{type:"button",className:"graview-kind-stop-link","data-testid":"kind-stop-keep",disabled:s,title:`Keep \u201C${o.title}\u201D as a lens: a place of its own`,onClick:()=>{c(!0),i(o).finally(()=>c(!1))},children:"Keep as a lens"}):null]})}function kt({draft:e,nodes:n}){let o=Ve(e.drawn);return(0,t.jsx)("div",{className:"graview-kind-stop-lens","data-graview-draft":e.lens.name,children:(0,t.jsx)(ve,{mode:"scene",children:(0,t.jsx)(ke,{kind:e.kind,view:e.title,children:(0,t.jsx)(o,{nodes:n,label:e.title,fidelity:"full",cardinality:"many",mode:"fullscreen",selected:!1})})})})}function xt({kind:e,nodes:n,groups:o,flagged:p,plural:a,arrangement:i}){let{store:s,views:c,view:S,selection:g,setSelection:u,setMenuAt:w,principal:l}=V(),{go:r}=Y(),y=s.schema,h=s.graph,m=(0,f.useMemo)(()=>(o?o.flatMap(d=>d.nodes):n).map(d=>d.id),[n,o]),b=Ie(m),A=(0,f.useMemo)(()=>s.permittedMutations(l).some(d=>{let N=d.subject?.kinds;return N!==void 0&&(N==="*"||N.includes(e))}),[s,l,e]),O=(0,f.useRef)(null),x=d=>{b.choose(d),requestAnimationFrame(()=>{let N=b.list.current;((d[0]===void 0?null:N?.querySelector(`[data-graview-choose-box="${CSS.escape(d[0])}"]`))??N)?.focus({preventScroll:!0})})},k=b.chosen.length,C=c.lookup(e,{cardinality:"one",fidelity:"glyph"}),v=C!==void 0&&!he(C)?C:void 0,R=d=>g.includes(d),T=ee(),I=(0,f.useMemo)(()=>We(y,e,n,h),[y,e,n,h]),[M,K]=(0,f.useState)(z);(0,f.useEffect)(()=>K(z),[i.query,i.filter?.length,i.sort?.by,i.group?.by]);let B=y.tryDefinition(e),H=d=>T.filter(N=>N.nodeIds.includes(d)||N.subjectId===d).map(N=>N.message),P=i.sort?.by,W=`${a}${i.sort?`, in order of ${I.find(d=>d.key===P)?.label.toLowerCase()??P}`:""}`,$=M,et=d=>{let N=G(B,d),F=p.has(d.id)?H(d.id):[];return(0,t.jsxs)("tr",{"data-graview-pick":d.id,tabIndex:-1,"data-graview-record":d.id,"data-flagged":F.length>0||void 0,...A?{"data-graview-choose":d.id}:{},children:[A?(0,t.jsx)("td",{className:"graview-choose-at",children:(0,t.jsx)("input",{...b.boxProps(d.id,N),onPointerEnter:j,onFocus:j})}):null,(0,t.jsxs)("th",{scope:"row",className:"graview-kind-stop-name",children:[v?(0,t.jsx)("div",{"data-graview-pick":d.id,className:"graview-kind-stop-own-row",children:(0,t.jsx)(v,{node:d,cardinality:"one",fidelity:"glyph",mode:"scene",selected:R(d.id),...F.length>0?{flagged:[d.id]}:{}})}):(0,t.jsx)("button",{type:"button","data-testid":"kind-stop-row-go",title:`Go to ${N}`,onClick:()=>r(ft(S,d.id)),children:N}),F.length>0?(0,t.jsxs)("span",{className:"graview-kind-stop-flag",title:F.join(" \xB7 "),children:[(0,t.jsx)("span",{"aria-hidden":"true",children:"\u26A0"}),(0,t.jsx)("span",{className:"graview-kind-stop-hidden",children:`Problem: ${F.join(". ")}`})]}):null]}),I.map(_=>{let E=Ze(y,d,_,h);return(0,t.jsx)("td",{"data-label":_.label,"data-short":E.text.length>0&&E.text.length<=14||void 0,"data-empty":E.text?void 0:"",...E.title?{title:E.title}:{},children:E.text?(0,t.jsx)("span",{children:E.text}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("b",{"aria-hidden":"true",children:"\u2014"}),(0,t.jsx)("i",{className:"graview-kind-stop-hidden",children:"none"})]})},_.key)}),(0,t.jsx)("td",{className:"graview-kind-stop-row-acts",children:(0,t.jsx)("button",{type:"button","data-testid":"kind-stop-row-acts","aria-haspopup":"menu","aria-label":`What can be done with ${N}`,onClick:_=>{let E=_.currentTarget.getBoundingClientRect();u([d.id]),w({x:Math.round(E.left),y:Math.round(E.bottom+4),on:d.id})},children:(0,t.jsx)("span",{"aria-hidden":"true",children:"\u22EF"})})})]},d.id)},re=d=>{let N=d.slice(0,Math.max(0,$));return $-=N.length,N.map(et)};return(0,t.jsxs)("div",{className:"graview-kind-stop-table-at",...A?{...b.listProps,ref:d=>{O.current=d,b.list.current=d},tabIndex:-1,role:"group","aria-label":k>0?`${a}, ${k} chosen`:a,"data-graview-choosable":""}:{},children:[A?(0,t.jsx)("style",{children:Ke}):null,(0,t.jsxs)("table",{className:"graview-kind-stop-table","data-testid":"kind-stop-table",children:[(0,t.jsx)("caption",{className:"graview-kind-stop-hidden",children:W}),(0,t.jsx)("thead",{children:(0,t.jsxs)("tr",{children:[A?(0,t.jsx)("td",{className:"graview-choose-at graview-choose-all",children:(0,t.jsx)("input",{type:"checkbox",className:"graview-choose-box","data-testid":"kind-stop-choose-all","aria-label":`Choose all ${D(n.length)} ${a.toLowerCase()}`,checked:k>0&&k===n.length,ref:d=>{d&&(d.indeterminate=k>0&&k<n.length)},onPointerEnter:j,onFocus:j,onChange:()=>k===n.length?b.clear():b.choose(m)})}):null,(0,t.jsx)("th",{scope:"col","aria-sort":P==="label"?i.sort?.direction==="desc"?"descending":"ascending":void 0,children:"Name"}),I.map(d=>(0,t.jsx)("th",{scope:"col","aria-sort":d.about==="field"&&d.key===P?i.sort?.direction==="desc"?"descending":"ascending":void 0,children:d.label},d.key)),(0,t.jsx)("th",{scope:"col",children:(0,t.jsx)("span",{className:"graview-kind-stop-hidden",children:"Acts"})})]})}),o?o.map(d=>$<=0?null:(0,t.jsxs)("tbody",{"data-graview-group":d.key,children:[(0,t.jsx)("tr",{className:"graview-kind-stop-group",children:(0,t.jsxs)("th",{scope:"rowgroup",colSpan:I.length+(A?3:2),children:[d.label," ",(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text",children:["\xB7 ",D(d.nodes.length)]})]})}),re(d.nodes)]},d.key||"-")):(0,t.jsx)("tbody",{children:re(n)})]}),A?(0,t.jsx)(Fe,{store:s,chosen:b.chosen,principal:l,anchor:()=>O.current?.closest('[data-testid="kind-stop"]')??null,of:m.length,onChooseAll:()=>b.choose(m),onClear:b.clear,onActed:x}):null,n.length>M?(0,t.jsxs)("p",{className:"graview-kind-stop-more",children:[(0,t.jsxs)("span",{className:"graview-kind-stop-quiet-text","data-testid":"kind-stop-shown",children:[D(M)," of ",D(n.length)," shown"]})," ",(0,t.jsxs)("button",{type:"button",className:"graview-kind-stop-link","data-testid":"kind-stop-more",onClick:()=>K(d=>d+z),children:["Show ",D(Math.min(z,n.length-M))," more"]})]}):null]})}var St=`
2
2
  .graview-kind-stop{container-type:inline-size;box-sizing:border-box;height:100%;min-height:0;display:flex;flex-direction:column;gap:10px;padding:16px 18px 12px;border:1px solid var(--graview-edge);border-radius:var(--graview-radius,12px);background:var(--graview-panel);color:var(--graview-ink);box-shadow:var(--graview-lift-low);overflow:auto;overscroll-behavior:contain}
3
3
  [data-graview-map-panel] .graview-kind-stop{height:auto;padding:4px 6px 12px;border:0;box-shadow:none;background:none;overflow:visible}
4
4
  .graview-kind-stop :focus-visible{outline:2px solid var(--graview-accent);outline-offset:2px}
@@ -1 +1 @@
1
- import{a as Ie}from"./chunk.HJCQ6I3S.js";import{a as Se,b as Fe,c as Te,d as Ce}from"./chunk.EJ4MSVX2.js";import"./chunk.XIW4SZHD.js";import{c as Me}from"./chunk.KQPKYWDM.js";import"./chunk.REUMBCSV.js";import"./chunk.2KIWGQXC.js";import"./chunk.D5LOTCBU.js";import{G as Qe,T as Oe}from"./chunk.CYTTZOYL.js";import"./chunk.SDO3U72B.js";import"./chunk.Q4MI53KK.js";import"./chunk.FQLNBIQ5.js";import{b as Re}from"./chunk.AJZBJBMO.js";var I=Re(Qe(),1);var O=.5,fe=1,Pe=.76,Ne=3,Ze=3,Ae=.6;function et(t){let n=De(t);for(;;){let s=n.next();if(s.done)return s.value}}function*De(t){let{ribbons:n,plots:s,cell:i}=t,u=t.tilt??.5,g=t.labels??[],k=[...s.values()],p=new Map;if(k.length===0||i<=0)return p;let R=1/0,j=1/0,E=-1/0,W=-1/0;for(let o of k)R=Math.min(R,o.col),j=Math.min(j,o.row),E=Math.max(E,o.col+o.side),W=Math.max(W,o.row+o.side);R-=3,j-=3,E+=3,W+=3;let M=Math.round((E-R)/O)+1,P=Math.round((W-j)/O)+1,H=o=>R+o*O,_=o=>j+o*O,B=4,te=(o,c)=>{if(g.length===0)return!1;let l=Me(o,c,i,u);for(let f of g)if(l.x>f.x-B&&l.x<f.x+f.width+B&&l.y>f.y-B&&l.y<f.y+f.height+B)return!0;return!1},L=(o,c)=>{for(let l of k)if(o>l.col-Pe&&o<l.col+l.side+Pe&&c>l.row-Pe&&c<l.row+l.side+Pe)return!0;return!1},A=M*P,N=new Uint8Array(A),S=new Uint8Array(A),ne=new Uint8Array(A),oe=new Uint8Array(A),G=new Uint8Array(A),re=new Uint8Array(A),V=new Float32Array(A);for(let o=0;o<P;o++){let c=_(o);for(let l=0;l<M;l++){let f=H(l),m=o*M+l;if(S[m]=L(f,c)?0:1,N[m]=S[m]&&!te(f,c)?1:0,l+1<M){let a=f+O/2;oe[m]=L(a,c)?0:1,ne[m]=oe[m]&&!te(a,c)?1:0}if(o+1<P){let a=c+O/2;re[m]=L(f,a)?0:1,G[m]=re[m]&&!te(f,a)?1:0}let e=1/0;for(let a of k)e=Math.min(e,Math.max(0,a.col-f,f-(a.col+a.side),a.row-c,c-(a.row+a.side)));V[m]=e}}let J=(o,c)=>{let l=[],f=(e,a)=>{let w=[],b=Math.min(1,a/3);for(let r=Math.ceil((e+b)/O-1e-9)*O;r<=e+a-b+1e-9;r+=O)w.push(r);return w},m=(e,a,w,b)=>{let r=Math.round((e-R)/O),d=Math.round((a-j)/O);r>=0&&d>=0&&r<M&&d<P&&c[d*M+r]&&l.push({i:r,j:d,out:w,curb:b})};for(let e of f(o.row,o.side))m(o.col-fe,e,1,{col:o.col,row:e}),m(o.col+o.side+fe,e,0,{col:o.col+o.side,row:e});for(let e of f(o.col,o.side))m(e,o.row-fe,3,{col:e,row:o.row}),m(e,o.row+o.side+fe,2,{col:e,row:o.row+o.side});return l};yield;let se=new Uint8Array(A),ie=new Uint8Array(A),le=[[1,0],[-1,0],[0,1],[0,-1]],ae=[1,0,3,2],D=A*4,X=new Float64Array(D),F=[new Int32Array(D),new Int32Array(D)],U=new je,ge=(o,c,l,f,m)=>{let e=l?N:S,a=l?ne:oe,w=l?G:re,b=J(o,e),r=J(c,e),d=new Map(r.map(h=>[h.j*M+h.i,h]));if(b.length===0||r.length===0)return{reached:-1,best:1/0,starts:b,goal:d,back:f};let y=(h,x)=>{let $=H(h),K=_(x);return(Math.max(0,c.col-$,$-(c.col+c.side))+Math.max(0,c.row-K,K-(c.row+c.side)))*Ae};X.fill(1/0),f.fill(-1),U.clear();let Y=-1,v=1/0;for(let h of b){let x=(h.j*M+h.i)*4+h.out;X[x]=0,U.push(x,y(h.i,h.j))}for(;U.size>0;){let h=U.peekKey();if(h>=v||h>=m)break;let x=U.pop(),$=x>>2,K=x&3,ee=$%M,ue=($-ee)/M,Ee=d.get($);if(Ee){let q=X[x]+(K===ae[Ee.out]?0:Ne);q<v&&(v=q,Y=x);continue}for(let q=0;q<4;q++){let[pe,Be]=le[q],be=ee+pe,xe=ue+Be;if(be<0||xe<0||be>=M||xe>=P)continue;let ke=xe*M+be;if(!e[ke])continue;let Le=pe+Be>0?$:ke;if(!(pe!==0?a:w)[Le])continue;let _e=(pe!==0?se:ie)[Le]?Ae:1,Je=O*_e*(1+Math.max(0,V[ke]-Ze))+(q===K?0:Ne),ve=ke*4+q,$e=X[x]+Je;$e<X[ve]&&(X[ve]=$e,f[ve]=x,U.push(ve,$e+y(be,xe)))}}return{reached:Y,best:v,starts:b,goal:d,back:f}},Q=new Map;for(let o of n){let c=s.get(o.from),l=s.get(o.to);if(!c||!l||c===l)continue;let f=ge(c,l,!1,F[1],1/0);if(f.reached===-1){yield;continue}let m=ge(c,l,!0,F[0],1.3*f.best+2+Ae*fe+1e-9),e=m.reached!==-1&&m.best<=1.3*f.best+2?m:f;if(e.reached===-1)continue;let{reached:a,starts:w,goal:b,back:r}=e,d=[];for(let v=a;v!==-1;v=r[v]){let h=v>>2,x=d[d.length-1],$={i:h%M,j:Math.floor(h/M)};(!x||x.i!==$.i||x.j!==$.j)&&d.push($)}d.reverse();for(let v=1;v<d.length;v++){let h=d[v-1],x=d[v],$=h.i+h.j<x.i+x.j?h:x;(h.i!==x.i?se:ie)[$.j*M+$.i]=1}let y=w.find(v=>v.i===d[0].i&&v.j===d[0].j),Y=b.get(d[d.length-1].j*M+d[d.length-1].i);Q.set(o.key,{cells:d,start:y.curb,end:Y.curb}),yield}let ce=new Map(n.map(o=>[o.key,o.width])),de=new Map(n.map((o,c)=>[o.key,c])),we=i*u/Math.sqrt(1+u*u),Z=(o,c)=>o==="col"?`r${c.row.toFixed(2)}`:`c${c.col.toFixed(2)}`,T=new Map;for(let[o,c]of Q)for(let l=1;l<c.cells.length;l++){let f=c.cells[l-1],m=c.cells[l],e=Z(f.i!==m.i?"col":"row",{col:H(f.i),row:_(f.j)});T.set(e,(T.get(e)??new Set).add(o))}for(let[o,c]of Q){let l=[c.start,...c.cells.map(r=>({col:H(r.i),row:_(r.j)})),c.end],f=r=>r>=2&&r<=c.cells.length,m=[];for(let r=1;r<l.length;r++){let d=Math.abs(l[r].col-l[r-1].col)>1e-9?"col":"row",y=m[m.length-1];y&&y.axis===d?y.to=r:m.push({from:r-1,to:r,axis:d})}if(m.length===0)continue;let e=m.map(r=>{if(!Array.from({length:r.to-r.from},(h,x)=>f(r.from+1+x)).some(Boolean))return 0;let d=T.get(Z(r.axis,l[r.from]))??new Set;if(!d.has(o))return 0;let y=[...d].sort((h,x)=>(de.get(h)??0)-(de.get(x)??0)),v=-(y.reduce((h,x)=>h+(ce.get(x)??2)+2,0)-2)/2;for(let h of y){if(h===o)return(v+(ce.get(h)??2)/2)/we;v+=(ce.get(h)??2)+2}return 0}),a=r=>{let d=m[r],y=l[d.from];return d.axis==="col"?{row:y.row+e[r]}:{col:y.col+e[r]}},w=(r,d,y)=>({col:r.col??d.col??y.col,row:r.row??d.row??y.row}),b=[w(a(0),{},l[0])];for(let r=0;r+1<m.length;r++)b.push(w(a(r),a(r+1),l[m[r].to]));b.push(w(a(m.length-1),{},l[l.length-1])),p.set(o,b.map(r=>Me(r.col,r.row,i,u)))}return p}var je=class{items=[];keys=[];get size(){return this.items.length}clear(){this.items.length=0,this.keys.length=0}peekKey(){return this.keys[0]??1/0}push(n,s){this.items.push(n),this.keys.push(s);let i=this.items.length-1;for(;i>0;){let u=i-1>>1;if(this.keys[u]<=this.keys[i])break;this.swap(i,u),i=u}}pop(){let n=this.items[0],s=this.items.pop(),i=this.keys.pop();if(this.items.length>0){this.items[0]=s,this.keys[0]=i;let u=0;for(;;){let g=2*u+1,k=g+1,p=u;if(g<this.items.length&&this.keys[g]<this.keys[p]&&(p=g),k<this.items.length&&this.keys[k]<this.keys[p]&&(p=k),p===u)break;this.swap(u,p),u=p}}return n}swap(n,s){let i=this.items[n];this.items[n]=this.items[s],this.items[s]=i;let u=this.keys[n];this.keys[n]=this.keys[s],this.keys[s]=u}},tt=16,z=new Map,Ue=0;function me(t){let n=[...t.plots].map(([s,i])=>`${s}:${i.col},${i.row},${i.side}`).join(";");return`${t.ribbons.map(s=>`${s.key}>${s.from}>${s.to}>${s.width}`).join(";")}|${n}`}var nt=t=>t.map(n=>`${Math.round(n.x)},${Math.round(n.y)},${Math.round(n.width)},${Math.round(n.height)}`).join(";"),Ke=(t,n)=>`${n}|${t.cell}|${t.tilt??.5}|${nt(t.labels??[])}`;function qe(t,n,s){for(z.set(Ke(t,n),{ground:n,cell:t.cell,tilt:t.tilt??.5,runs:s});z.size>tt;)z.delete(z.keys().next().value)}function ye(t){let n=Ke(t,me(t)),s=z.get(n);if(s)return z.delete(n),z.set(n,s),s.runs}function ze(t){let n=ye(t);if(n)return n;Ue+=1;let s=et(t);return qe(t,me(t),s),s}function We(t,n,s=8){let i=ye(t);if(i)return n(i),()=>{};let u=me(t),g=De(t),k=!1,p;Ue+=1;let R=()=>{if(p=void 0,k)return;let j=performance.now();for(;;){let E=g.next();if(E.done){qe(t,u,E.value),n(E.value);return}if(performance.now()-j>=s)break}p=setTimeout(R,0)};return p=setTimeout(R,0),()=>{k=!0,p!==void 0&&clearTimeout(p)}}function Ge(t,n,s){let i;for(let g of z.values())g.ground===t&&g.tilt===s&&(i=g);if(!i||n<=0)return;if(i.cell===n)return i.runs;let u=n/i.cell;return new Map([...i.runs].map(([g,k])=>[g,k.map(p=>({x:p.x*u,y:p.y*u}))]))}function Ve(t,n){let s=t.col+t.side,i=s+.25+.22*Math.max(0,n),u=t.row+t.side*Math.max(.1,.3-.06*n),g=t.row+t.side*Math.min(.9,.7+.06*n);return[{col:s,row:u},{col:i,row:u},{col:i,row:g},{col:s,row:g}]}function Xe(t,n){return t.map(s=>Me(s.col,s.row,n.cell,n.tilt))}function Ye(t){return t.map((n,s)=>`${s===0?"M":"L"} ${n.x.toFixed(1)} ${n.y.toFixed(1)}`).join(" ")}function He(t){if(t.length===0)return{x:0,y:0};let n=0;for(let i=1;i<t.length;i++)n+=Math.hypot(t[i].x-t[i-1].x,t[i].y-t[i-1].y);let s=n/2;for(let i=1;i<t.length;i++){let u=t[i-1],g=t[i],k=Math.hypot(g.x-u.x,g.y-u.y);if(k>=s&&k>0)return{x:u.x+(g.x-u.x)*s/k,y:u.y+(g.y-u.y)*s/k};s-=k}return t[t.length-1]}var C=Re(Oe(),1),he=new Map,ot=(t,n)=>t.length===n.length&&t.every((s,i)=>Math.round(s.x)===Math.round(n[i].x)&&Math.round(s.y)===Math.round(n[i].y)&&Math.round(s.width)===Math.round(n[i].width)&&Math.round(s.height)===Math.round(n[i].height));function dt({frame:t,width:n,height:s,pan:i,store:u,graphVersion:g,selection:k,view:p,emphasis:R,hiddenKinds:j,drawn:E}){let[W,M]=(0,I.useState)(null),P=t.city,H=e=>u.graph.getNode(e)?.kind,_=(0,I.useMemo)(()=>Se(u.graph.allEdges(),e=>u.graph.getNode(e)?.kind),[u,g]),B=new Map;for(let e of t.nodes){let a=e.id.startsWith("kind:")?Te(e.id):null;a!==null&&e.plot&&Math.round(e.plane)===2&&B.set(a,e.plot)}let te=[...B].map(([e,a])=>`${e}:${a.col},${a.row},${a.side}`).join(";"),L=P?.cell??0,A=_.filter(e=>B.has(e.from)&&B.has(e.to)&&!j.has(e.from)&&!j.has(e.to)&&E(e.edge)),N=P?.tilt??.5,S=`${te}|${L}|${N}`,[ne,oe]=(0,I.useState)(null),[G,re]=(0,I.useState)(null),V=t.t>=1,J=!!P&&!!p.overview;(0,I.useLayoutEffect)(()=>{let e=G?.parentElement;if(!e||!P||!V)return;let a=e.getBoundingClientRect(),w=P.originX+i.x,b=P.originY+i.y,r=[...e.querySelectorAll('[data-graview-view^="kind:"] .graview-kind-face')].flatMap(d=>{let y=d.getBoundingClientRect();return y.width>0&&y.height>0?[{x:y.left-a.left-w,y:y.top-a.top-b,width:y.width,height:y.height}]:[]});for(he.set(S,r);he.size>16;)he.delete(he.keys().next().value);oe(d=>d?.cards===S&&ot(d.labels,r)?d:{cards:S,labels:r})},[G,V,S]);let se=Math.max(0,...A.map(e=>e.links)),ie=A.map(e=>({key:e.key,from:e.from,to:e.to,width:Ie(e.links,se)})),le=me({ribbons:ie,plots:B}),ae=typeof window>"u",D=ne?.cards===S?ne.labels:he.get(S)??(ae?[]:void 0),F=L>0&&J&&V&&D!==void 0?{ribbons:ie,plots:B,cell:L,tilt:N,labels:D}:null,[U,ge]=(0,I.useState)(0),Q=F!==null&&!ae&&ye(F)===void 0,ce=`${le}|${L}|${N}|${(D??[]).map(e=>`${Math.round(e.x)},${Math.round(e.y)},${Math.round(e.width)},${Math.round(e.height)}`).join(";")}`;(0,I.useEffect)(()=>{if(!(!Q||!F))return We(F,()=>ge(e=>e+1))},[Q,ce]);let de=(0,I.useMemo)(()=>{if(L===0||!J)return[];let e=F?ae?ze(F):ye(F):Ge(le,L,N);if(!e)return[];let a=new Map;return A.flatMap(w=>{let b;if(w.from===w.to){let r=a.get(w.from)??0;a.set(w.from,r+1),b=Xe(Ve(B.get(w.from),r),{cell:L,tilt:N})}else b=e.get(w.key);return!b||b.length<2?[]:[{ribbon:w,points:b,d:Ye(b),middle:He(b),width:Ie(w.links,se)}]})},[L,N,le,D,V,J,U]),we=(0,I.useRef)([]),Z=(0,I.useRef)({x:0,y:0});if(Z.current=P?{x:P.originX+i.x,y:P.originY+i.y}:{x:0,y:0},(0,I.useEffect)(()=>{let e=G?.parentElement;if(!e||typeof window>"u")return;let a=0,w=null,b=()=>{a=0;let y=w;if(!y)return;let Y=y.target;if(y.pointerType==="touch"||y.buttons!==0||Y?.closest("[data-graview-view], button, a, input, select, textarea, [data-graview-overlay], [data-graview-offstage]")){M(null);return}let v=e.getBoundingClientRect(),h=y.clientX-v.left-Z.current.x,x=y.clientY-v.top-Z.current.y,$=null,K=1/0;for(let ee of we.current){let ue=rt(ee.points,h,x);ue<=ee.reach&&ue<K&&(K=ue,$=ee.key)}M($)},r=y=>{w=y,a===0&&(a=requestAnimationFrame(b))},d=()=>M(null);return e.addEventListener("pointermove",r,{passive:!0}),e.addEventListener("pointerleave",d),()=>{a!==0&&cancelAnimationFrame(a),e.removeEventListener("pointermove",r),e.removeEventListener("pointerleave",d)}},[G]),!P||!p.overview)return null;let T=Fe(k,p,H);if(T.records.length>0||T.lens!==null)return null;let o=T.districts.length>0?de.filter(({ribbon:e})=>T.districts.includes(e.from)||T.districts.includes(e.to)):de;if(o.length===0&&A.length===0)return null;let c=R??null,l=o.find(({ribbon:e})=>e.key===W);we.current=o.map(({ribbon:e,points:a,width:w})=>({key:e.key,points:a,reach:w/2+6}));let f={x:P.originX+i.x,y:P.originY+i.y},m=`translate(${f.x.toFixed(1)} ${f.y.toFixed(1)})`;return(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("svg",{ref:re,className:"graview-ribbons","aria-hidden":"true","data-graview-world":"","data-graview-ribbons":o.length,width:n,height:s,style:{position:"absolute",left:0,top:0,pointerEvents:"none",overflow:"visible"},children:(0,C.jsx)("g",{transform:m,children:o.map(({ribbon:e,d:a,width:w})=>{let b=W===e.key||c!==null&&c===e.edge||T.districts.length>0,r=c!==null&&c!==e.edge;return(0,C.jsx)("g",{className:"graview-ribbon","data-graview-ribbon":e.edge,"data-graview-from":`kind:${e.from}`,"data-graview-to":`kind:${e.to}`,"data-graview-links":e.links,"data-graview-lit":b&&!r?"":void 0,"data-graview-receded":r?"":void 0,children:(0,C.jsx)("path",{className:"graview-ribbon-band",d:a,style:{strokeWidth:w}})},e.key)})})}),l?(0,C.jsx)("div",{className:"graview-ribbon-said","data-graview-world":"","data-testid":"ribbon-said",role:"status",style:{position:"absolute",left:f.x+l.middle.x,top:f.y+l.middle.y,pointerEvents:"none"},children:Ce(u.schema,l.ribbon)}):null]})}function rt(t,n,s){let i=1/0;for(let u=1;u<t.length;u++){let g=t[u-1],k=t[u],p=k.x-g.x,R=k.y-g.y,j=p*p+R*R,E=j===0?0:Math.max(0,Math.min(1,((n-g.x)*p+(s-g.y)*R)/j));i=Math.min(i,Math.hypot(n-(g.x+E*p),s-(g.y+E*R)))}return i}export{dt as Ribbons,rt as distanceTo};
1
+ import{a as Ie}from"./chunk.HJCQ6I3S.js";import{a as Se,b as Fe,c as Te,d as Ce}from"./chunk.DQAMVVE6.js";import"./chunk.WPQP54FM.js";import{c as Me}from"./chunk.OXFDB5BB.js";import"./chunk.75JQCTR6.js";import"./chunk.5IEZF433.js";import"./chunk.5AD2QHWH.js";import{G as Qe,V as Oe}from"./chunk.VLX7YWVH.js";import"./chunk.SDO3U72B.js";import"./chunk.IQGSEAQ2.js";import"./chunk.FQLNBIQ5.js";import{b as Re}from"./chunk.AJZBJBMO.js";var I=Re(Qe(),1);var O=.5,fe=1,Pe=.76,Ne=3,Ze=3,Ae=.6;function et(t){let n=De(t);for(;;){let s=n.next();if(s.done)return s.value}}function*De(t){let{ribbons:n,plots:s,cell:i}=t,u=t.tilt??.5,g=t.labels??[],k=[...s.values()],p=new Map;if(k.length===0||i<=0)return p;let R=1/0,j=1/0,E=-1/0,W=-1/0;for(let o of k)R=Math.min(R,o.col),j=Math.min(j,o.row),E=Math.max(E,o.col+o.side),W=Math.max(W,o.row+o.side);R-=3,j-=3,E+=3,W+=3;let M=Math.round((E-R)/O)+1,P=Math.round((W-j)/O)+1,H=o=>R+o*O,_=o=>j+o*O,B=4,te=(o,c)=>{if(g.length===0)return!1;let l=Me(o,c,i,u);for(let f of g)if(l.x>f.x-B&&l.x<f.x+f.width+B&&l.y>f.y-B&&l.y<f.y+f.height+B)return!0;return!1},L=(o,c)=>{for(let l of k)if(o>l.col-Pe&&o<l.col+l.side+Pe&&c>l.row-Pe&&c<l.row+l.side+Pe)return!0;return!1},A=M*P,N=new Uint8Array(A),S=new Uint8Array(A),ne=new Uint8Array(A),oe=new Uint8Array(A),G=new Uint8Array(A),re=new Uint8Array(A),V=new Float32Array(A);for(let o=0;o<P;o++){let c=_(o);for(let l=0;l<M;l++){let f=H(l),m=o*M+l;if(S[m]=L(f,c)?0:1,N[m]=S[m]&&!te(f,c)?1:0,l+1<M){let a=f+O/2;oe[m]=L(a,c)?0:1,ne[m]=oe[m]&&!te(a,c)?1:0}if(o+1<P){let a=c+O/2;re[m]=L(f,a)?0:1,G[m]=re[m]&&!te(f,a)?1:0}let e=1/0;for(let a of k)e=Math.min(e,Math.max(0,a.col-f,f-(a.col+a.side),a.row-c,c-(a.row+a.side)));V[m]=e}}let J=(o,c)=>{let l=[],f=(e,a)=>{let w=[],b=Math.min(1,a/3);for(let r=Math.ceil((e+b)/O-1e-9)*O;r<=e+a-b+1e-9;r+=O)w.push(r);return w},m=(e,a,w,b)=>{let r=Math.round((e-R)/O),d=Math.round((a-j)/O);r>=0&&d>=0&&r<M&&d<P&&c[d*M+r]&&l.push({i:r,j:d,out:w,curb:b})};for(let e of f(o.row,o.side))m(o.col-fe,e,1,{col:o.col,row:e}),m(o.col+o.side+fe,e,0,{col:o.col+o.side,row:e});for(let e of f(o.col,o.side))m(e,o.row-fe,3,{col:e,row:o.row}),m(e,o.row+o.side+fe,2,{col:e,row:o.row+o.side});return l};yield;let se=new Uint8Array(A),ie=new Uint8Array(A),le=[[1,0],[-1,0],[0,1],[0,-1]],ae=[1,0,3,2],D=A*4,X=new Float64Array(D),F=[new Int32Array(D),new Int32Array(D)],U=new je,ge=(o,c,l,f,m)=>{let e=l?N:S,a=l?ne:oe,w=l?G:re,b=J(o,e),r=J(c,e),d=new Map(r.map(h=>[h.j*M+h.i,h]));if(b.length===0||r.length===0)return{reached:-1,best:1/0,starts:b,goal:d,back:f};let y=(h,x)=>{let $=H(h),K=_(x);return(Math.max(0,c.col-$,$-(c.col+c.side))+Math.max(0,c.row-K,K-(c.row+c.side)))*Ae};X.fill(1/0),f.fill(-1),U.clear();let Y=-1,v=1/0;for(let h of b){let x=(h.j*M+h.i)*4+h.out;X[x]=0,U.push(x,y(h.i,h.j))}for(;U.size>0;){let h=U.peekKey();if(h>=v||h>=m)break;let x=U.pop(),$=x>>2,K=x&3,ee=$%M,ue=($-ee)/M,Ee=d.get($);if(Ee){let q=X[x]+(K===ae[Ee.out]?0:Ne);q<v&&(v=q,Y=x);continue}for(let q=0;q<4;q++){let[pe,Be]=le[q],be=ee+pe,xe=ue+Be;if(be<0||xe<0||be>=M||xe>=P)continue;let ke=xe*M+be;if(!e[ke])continue;let Le=pe+Be>0?$:ke;if(!(pe!==0?a:w)[Le])continue;let _e=(pe!==0?se:ie)[Le]?Ae:1,Je=O*_e*(1+Math.max(0,V[ke]-Ze))+(q===K?0:Ne),ve=ke*4+q,$e=X[x]+Je;$e<X[ve]&&(X[ve]=$e,f[ve]=x,U.push(ve,$e+y(be,xe)))}}return{reached:Y,best:v,starts:b,goal:d,back:f}},Q=new Map;for(let o of n){let c=s.get(o.from),l=s.get(o.to);if(!c||!l||c===l)continue;let f=ge(c,l,!1,F[1],1/0);if(f.reached===-1){yield;continue}let m=ge(c,l,!0,F[0],1.3*f.best+2+Ae*fe+1e-9),e=m.reached!==-1&&m.best<=1.3*f.best+2?m:f;if(e.reached===-1)continue;let{reached:a,starts:w,goal:b,back:r}=e,d=[];for(let v=a;v!==-1;v=r[v]){let h=v>>2,x=d[d.length-1],$={i:h%M,j:Math.floor(h/M)};(!x||x.i!==$.i||x.j!==$.j)&&d.push($)}d.reverse();for(let v=1;v<d.length;v++){let h=d[v-1],x=d[v],$=h.i+h.j<x.i+x.j?h:x;(h.i!==x.i?se:ie)[$.j*M+$.i]=1}let y=w.find(v=>v.i===d[0].i&&v.j===d[0].j),Y=b.get(d[d.length-1].j*M+d[d.length-1].i);Q.set(o.key,{cells:d,start:y.curb,end:Y.curb}),yield}let ce=new Map(n.map(o=>[o.key,o.width])),de=new Map(n.map((o,c)=>[o.key,c])),we=i*u/Math.sqrt(1+u*u),Z=(o,c)=>o==="col"?`r${c.row.toFixed(2)}`:`c${c.col.toFixed(2)}`,T=new Map;for(let[o,c]of Q)for(let l=1;l<c.cells.length;l++){let f=c.cells[l-1],m=c.cells[l],e=Z(f.i!==m.i?"col":"row",{col:H(f.i),row:_(f.j)});T.set(e,(T.get(e)??new Set).add(o))}for(let[o,c]of Q){let l=[c.start,...c.cells.map(r=>({col:H(r.i),row:_(r.j)})),c.end],f=r=>r>=2&&r<=c.cells.length,m=[];for(let r=1;r<l.length;r++){let d=Math.abs(l[r].col-l[r-1].col)>1e-9?"col":"row",y=m[m.length-1];y&&y.axis===d?y.to=r:m.push({from:r-1,to:r,axis:d})}if(m.length===0)continue;let e=m.map(r=>{if(!Array.from({length:r.to-r.from},(h,x)=>f(r.from+1+x)).some(Boolean))return 0;let d=T.get(Z(r.axis,l[r.from]))??new Set;if(!d.has(o))return 0;let y=[...d].sort((h,x)=>(de.get(h)??0)-(de.get(x)??0)),v=-(y.reduce((h,x)=>h+(ce.get(x)??2)+2,0)-2)/2;for(let h of y){if(h===o)return(v+(ce.get(h)??2)/2)/we;v+=(ce.get(h)??2)+2}return 0}),a=r=>{let d=m[r],y=l[d.from];return d.axis==="col"?{row:y.row+e[r]}:{col:y.col+e[r]}},w=(r,d,y)=>({col:r.col??d.col??y.col,row:r.row??d.row??y.row}),b=[w(a(0),{},l[0])];for(let r=0;r+1<m.length;r++)b.push(w(a(r),a(r+1),l[m[r].to]));b.push(w(a(m.length-1),{},l[l.length-1])),p.set(o,b.map(r=>Me(r.col,r.row,i,u)))}return p}var je=class{items=[];keys=[];get size(){return this.items.length}clear(){this.items.length=0,this.keys.length=0}peekKey(){return this.keys[0]??1/0}push(n,s){this.items.push(n),this.keys.push(s);let i=this.items.length-1;for(;i>0;){let u=i-1>>1;if(this.keys[u]<=this.keys[i])break;this.swap(i,u),i=u}}pop(){let n=this.items[0],s=this.items.pop(),i=this.keys.pop();if(this.items.length>0){this.items[0]=s,this.keys[0]=i;let u=0;for(;;){let g=2*u+1,k=g+1,p=u;if(g<this.items.length&&this.keys[g]<this.keys[p]&&(p=g),k<this.items.length&&this.keys[k]<this.keys[p]&&(p=k),p===u)break;this.swap(u,p),u=p}}return n}swap(n,s){let i=this.items[n];this.items[n]=this.items[s],this.items[s]=i;let u=this.keys[n];this.keys[n]=this.keys[s],this.keys[s]=u}},tt=16,z=new Map,Ue=0;function me(t){let n=[...t.plots].map(([s,i])=>`${s}:${i.col},${i.row},${i.side}`).join(";");return`${t.ribbons.map(s=>`${s.key}>${s.from}>${s.to}>${s.width}`).join(";")}|${n}`}var nt=t=>t.map(n=>`${Math.round(n.x)},${Math.round(n.y)},${Math.round(n.width)},${Math.round(n.height)}`).join(";"),Ke=(t,n)=>`${n}|${t.cell}|${t.tilt??.5}|${nt(t.labels??[])}`;function qe(t,n,s){for(z.set(Ke(t,n),{ground:n,cell:t.cell,tilt:t.tilt??.5,runs:s});z.size>tt;)z.delete(z.keys().next().value)}function ye(t){let n=Ke(t,me(t)),s=z.get(n);if(s)return z.delete(n),z.set(n,s),s.runs}function ze(t){let n=ye(t);if(n)return n;Ue+=1;let s=et(t);return qe(t,me(t),s),s}function We(t,n,s=8){let i=ye(t);if(i)return n(i),()=>{};let u=me(t),g=De(t),k=!1,p;Ue+=1;let R=()=>{if(p=void 0,k)return;let j=performance.now();for(;;){let E=g.next();if(E.done){qe(t,u,E.value),n(E.value);return}if(performance.now()-j>=s)break}p=setTimeout(R,0)};return p=setTimeout(R,0),()=>{k=!0,p!==void 0&&clearTimeout(p)}}function Ge(t,n,s){let i;for(let g of z.values())g.ground===t&&g.tilt===s&&(i=g);if(!i||n<=0)return;if(i.cell===n)return i.runs;let u=n/i.cell;return new Map([...i.runs].map(([g,k])=>[g,k.map(p=>({x:p.x*u,y:p.y*u}))]))}function Ve(t,n){let s=t.col+t.side,i=s+.25+.22*Math.max(0,n),u=t.row+t.side*Math.max(.1,.3-.06*n),g=t.row+t.side*Math.min(.9,.7+.06*n);return[{col:s,row:u},{col:i,row:u},{col:i,row:g},{col:s,row:g}]}function Xe(t,n){return t.map(s=>Me(s.col,s.row,n.cell,n.tilt))}function Ye(t){return t.map((n,s)=>`${s===0?"M":"L"} ${n.x.toFixed(1)} ${n.y.toFixed(1)}`).join(" ")}function He(t){if(t.length===0)return{x:0,y:0};let n=0;for(let i=1;i<t.length;i++)n+=Math.hypot(t[i].x-t[i-1].x,t[i].y-t[i-1].y);let s=n/2;for(let i=1;i<t.length;i++){let u=t[i-1],g=t[i],k=Math.hypot(g.x-u.x,g.y-u.y);if(k>=s&&k>0)return{x:u.x+(g.x-u.x)*s/k,y:u.y+(g.y-u.y)*s/k};s-=k}return t[t.length-1]}var C=Re(Oe(),1),he=new Map,ot=(t,n)=>t.length===n.length&&t.every((s,i)=>Math.round(s.x)===Math.round(n[i].x)&&Math.round(s.y)===Math.round(n[i].y)&&Math.round(s.width)===Math.round(n[i].width)&&Math.round(s.height)===Math.round(n[i].height));function dt({frame:t,width:n,height:s,pan:i,store:u,graphVersion:g,selection:k,view:p,emphasis:R,hiddenKinds:j,drawn:E}){let[W,M]=(0,I.useState)(null),P=t.city,H=e=>u.graph.getNode(e)?.kind,_=(0,I.useMemo)(()=>Se(u.graph.allEdges(),e=>u.graph.getNode(e)?.kind),[u,g]),B=new Map;for(let e of t.nodes){let a=e.id.startsWith("kind:")?Te(e.id):null;a!==null&&e.plot&&Math.round(e.plane)===2&&B.set(a,e.plot)}let te=[...B].map(([e,a])=>`${e}:${a.col},${a.row},${a.side}`).join(";"),L=P?.cell??0,A=_.filter(e=>B.has(e.from)&&B.has(e.to)&&!j.has(e.from)&&!j.has(e.to)&&E(e.edge)),N=P?.tilt??.5,S=`${te}|${L}|${N}`,[ne,oe]=(0,I.useState)(null),[G,re]=(0,I.useState)(null),V=t.t>=1,J=!!P&&!!p.overview;(0,I.useLayoutEffect)(()=>{let e=G?.parentElement;if(!e||!P||!V)return;let a=e.getBoundingClientRect(),w=P.originX+i.x,b=P.originY+i.y,r=[...e.querySelectorAll('[data-graview-view^="kind:"] .graview-kind-face')].flatMap(d=>{let y=d.getBoundingClientRect();return y.width>0&&y.height>0?[{x:y.left-a.left-w,y:y.top-a.top-b,width:y.width,height:y.height}]:[]});for(he.set(S,r);he.size>16;)he.delete(he.keys().next().value);oe(d=>d?.cards===S&&ot(d.labels,r)?d:{cards:S,labels:r})},[G,V,S]);let se=Math.max(0,...A.map(e=>e.links)),ie=A.map(e=>({key:e.key,from:e.from,to:e.to,width:Ie(e.links,se)})),le=me({ribbons:ie,plots:B}),ae=typeof window>"u",D=ne?.cards===S?ne.labels:he.get(S)??(ae?[]:void 0),F=L>0&&J&&V&&D!==void 0?{ribbons:ie,plots:B,cell:L,tilt:N,labels:D}:null,[U,ge]=(0,I.useState)(0),Q=F!==null&&!ae&&ye(F)===void 0,ce=`${le}|${L}|${N}|${(D??[]).map(e=>`${Math.round(e.x)},${Math.round(e.y)},${Math.round(e.width)},${Math.round(e.height)}`).join(";")}`;(0,I.useEffect)(()=>{if(!(!Q||!F))return We(F,()=>ge(e=>e+1))},[Q,ce]);let de=(0,I.useMemo)(()=>{if(L===0||!J)return[];let e=F?ae?ze(F):ye(F):Ge(le,L,N);if(!e)return[];let a=new Map;return A.flatMap(w=>{let b;if(w.from===w.to){let r=a.get(w.from)??0;a.set(w.from,r+1),b=Xe(Ve(B.get(w.from),r),{cell:L,tilt:N})}else b=e.get(w.key);return!b||b.length<2?[]:[{ribbon:w,points:b,d:Ye(b),middle:He(b),width:Ie(w.links,se)}]})},[L,N,le,D,V,J,U]),we=(0,I.useRef)([]),Z=(0,I.useRef)({x:0,y:0});if(Z.current=P?{x:P.originX+i.x,y:P.originY+i.y}:{x:0,y:0},(0,I.useEffect)(()=>{let e=G?.parentElement;if(!e||typeof window>"u")return;let a=0,w=null,b=()=>{a=0;let y=w;if(!y)return;let Y=y.target;if(y.pointerType==="touch"||y.buttons!==0||Y?.closest("[data-graview-view], button, a, input, select, textarea, [data-graview-overlay], [data-graview-offstage]")){M(null);return}let v=e.getBoundingClientRect(),h=y.clientX-v.left-Z.current.x,x=y.clientY-v.top-Z.current.y,$=null,K=1/0;for(let ee of we.current){let ue=rt(ee.points,h,x);ue<=ee.reach&&ue<K&&(K=ue,$=ee.key)}M($)},r=y=>{w=y,a===0&&(a=requestAnimationFrame(b))},d=()=>M(null);return e.addEventListener("pointermove",r,{passive:!0}),e.addEventListener("pointerleave",d),()=>{a!==0&&cancelAnimationFrame(a),e.removeEventListener("pointermove",r),e.removeEventListener("pointerleave",d)}},[G]),!P||!p.overview)return null;let T=Fe(k,p,H);if(T.records.length>0||T.lens!==null)return null;let o=T.districts.length>0?de.filter(({ribbon:e})=>T.districts.includes(e.from)||T.districts.includes(e.to)):de;if(o.length===0&&A.length===0)return null;let c=R??null,l=o.find(({ribbon:e})=>e.key===W);we.current=o.map(({ribbon:e,points:a,width:w})=>({key:e.key,points:a,reach:w/2+6}));let f={x:P.originX+i.x,y:P.originY+i.y},m=`translate(${f.x.toFixed(1)} ${f.y.toFixed(1)})`;return(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)("svg",{ref:re,className:"graview-ribbons","aria-hidden":"true","data-graview-world":"","data-graview-ribbons":o.length,width:n,height:s,style:{position:"absolute",left:0,top:0,pointerEvents:"none",overflow:"visible"},children:(0,C.jsx)("g",{transform:m,children:o.map(({ribbon:e,d:a,width:w})=>{let b=W===e.key||c!==null&&c===e.edge||T.districts.length>0,r=c!==null&&c!==e.edge;return(0,C.jsx)("g",{className:"graview-ribbon","data-graview-ribbon":e.edge,"data-graview-from":`kind:${e.from}`,"data-graview-to":`kind:${e.to}`,"data-graview-links":e.links,"data-graview-lit":b&&!r?"":void 0,"data-graview-receded":r?"":void 0,children:(0,C.jsx)("path",{className:"graview-ribbon-band",d:a,style:{strokeWidth:w}})},e.key)})})}),l?(0,C.jsx)("div",{className:"graview-ribbon-said","data-graview-world":"","data-testid":"ribbon-said",role:"status",style:{position:"absolute",left:f.x+l.middle.x,top:f.y+l.middle.y,pointerEvents:"none"},children:Ce(u.schema,l.ribbon)}):null]})}function rt(t,n,s){let i=1/0;for(let u=1;u<t.length;u++){let g=t[u-1],k=t[u],p=k.x-g.x,R=k.y-g.y,j=p*p+R*R,E=j===0?0:Math.max(0,Math.min(1,((n-g.x)*p+(s-g.y)*R)/j));i=Math.min(i,Math.hypot(n-(g.x+E*p),s-(g.y+E*R)))}return i}export{dt as Ribbons,rt as distanceTo};
@@ -1 +1 @@
1
- import{l as C}from"./chunk.OJGHDWI6.js";import{j as A}from"./chunk.2KIWGQXC.js";import{G as w,La as $,T as R,ba as v,c as I,ca as K,da as U,x as H}from"./chunk.CYTTZOYL.js";import{C as N,Pb as L,Yb as j,ec as V,ld as W,md as G,pc as B,xb as _}from"./chunk.Q4MI53KK.js";import{b as m}from"./chunk.AJZBJBMO.js";function z(n,e,t={}){let o=n.graph.getNode(e);if(!o)return[];let i=t.principal?new Set(n.permittedMutations(t.principal).map(s=>s.name)):void 0,d=o.kind,p=n.schema.tryDefinition(d);if(!p)return[];let r=n.seenFor,a=r?L.keptFrom?.(n,r)?.(o):void 0,c=new Map;for(let s of n.allMutations()){let u=s.subject;if(!u||!(u.kinds==="*"||u.kinds.includes(d))||i&&!i.has(s.name))continue;let g=s.input.shape??{};for(let l of B(s,p)){if(a?.(l)||!j(s,n.schema,n.graph,e,l,r&&_(r).id))continue;let k=l in g,F=[];for(let h of Object.keys(g)){if(h===u.arg||h===l||te(g[h]))continue;let S=V(s.input).find(E=>E.name===h);F.push({name:h,...S?{kinds:S.kinds}:{},...S?{candidates:S.kinds.includes("*")?n.graph.allNodes().map(E=>E.id):S.kinds.flatMap(E=>n.graph.nodesOfKind(E).map(ne=>ne.id))}:{},shape:A(s.input,h)})}let ee={field:l,mutation:s.name,title:s.title??s.name,shape:k?A(s.input,l):{type:"unknown"},takesValue:k,alternatives:[],open:F,clearable:k&&(s.clearable?.includes(l)??!1),call:h=>({name:s.name,args:k?{[u.arg]:e,[l]:h}:{[u.arg]:e}})};c.set(l,[...c.get(l)??[],ee])}}return[...c.values()].map(s=>{let u=[...s.filter(l=>l.takesValue),...s.filter(l=>!l.takesValue)],[b,...g]=u;return{...b,alternatives:g}})}function te(n){let e=N(n)?.type;return e==="optional"||e==="default"||e==="nullable"}var P=m(w(),1);function Me(n){let{store:e,principal:t}=v(),o=U(),i=(0,P.useMemo)(()=>n===null?[]:z(e,n,{principal:t}),[e,n,o,t]),d=(0,P.useCallback)((p,r,a={})=>{let c=p.call(r);e.apply({name:c.name,args:{...c.args,...a}},{author:t})},[e,t]);return{fields:i,commit:d}}var q=m(w(),1);function en(){let{brand:n}=v(),e=n?.kit;return(0,q.useMemo)(()=>W(e),[e])}function nn(n,e){let t=G(n,e),o={...t.color!==void 0?{color:t.color}:{},...t.pattern!==void 0?{pattern:t.pattern}:{},...t.width!==void 0?{width:t.width}:{},...t.cap!==void 0?{cap:t.cap}:{},...t.opacity!==void 0?{opacity:t.opacity}:{}};return{connector:t,style:C(e,{[e]:o})}}var Q=m(w(),1);var x=m(R(),1);function re(n){let e=n?.hint;return typeof e=="string"&&e.length>0?e:void 0}function oe(n){if(n instanceof Error&&n.message)return n.message;let e=String(n);return e==="[object Object]"?"The view threw without a message.":e}var Y=class extends Q.Component{static contextType=$;state={};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){console.error(`[graview] the ${this.props.view??"view"} of ${this.props.kind} threw while rendering`,e,t.componentStack),this.context?.(e,{module:"@graview/react"})}render(){let{error:e}=this.state;if(!e)return this.props.children;let t=re(e);return(0,x.jsxs)("div",{role:"alert","data-graview-view-error":this.props.kind,style:{display:"flex",flexDirection:"column",gap:"0.375rem",padding:"var(--graview-pad, 12px)",height:"100%",overflow:"auto",boxSizing:"border-box",borderRadius:"var(--graview-radius-sm, 6px)",background:"var(--graview-panel-warning, #fdf3ec)",color:"var(--graview-ink, #1a1a1a)",font:"var(--graview-font-body, 13px/1.45 system-ui)",fontSize:"0.875rem",lineHeight:1.45},children:[(0,x.jsx)("strong",{style:{color:"var(--graview-warn, #b4462a)"},children:this.props.view?`${this.props.view} could not draw`:"This view could not draw"}),(0,x.jsx)("span",{style:{color:"var(--graview-ink-muted, #555)"},children:this.props.kind}),(0,x.jsx)("span",{children:oe(e)}),t?(0,x.jsx)("span",{style:{color:"var(--graview-ink-muted, #555)"},children:t}):null]})}};var y=m(w(),1);var X=m(R(),1),T=(0,y.createContext)([]);function sn({sections:n,children:e}){let t=(0,y.useContext)(T),o=(0,y.useMemo)(()=>[...t,...n.filter(i=>!t.includes(i))],[t,n]);return(0,X.jsx)(T.Provider,{value:o,children:e})}function J(){let n=(0,y.useContext)(T),e=K()?.menuSections;return(0,y.useMemo)(()=>e?[...n,...e.filter(t=>!n.includes(t))]:n,[n,e])}function cn(){let n=J();return(0,y.useCallback)(e=>{for(let t of n)try{t(e)?.prepare?.()}catch{}},[n])}function dn(n){let e=J();if(n===null||e.length===0)return{start:[],end:[]};let t=e.flatMap(o=>{try{let i=o(n);return i&&((i.items?.length??0)>0||i.render)?[i]:[]}catch{return[]}});return{start:t.filter(o=>o.at==="start"),end:t.filter(o=>o.at!=="start")}}var ie=m(w(),1);function pn(){return v().activity}var O=(n,e)=>n.length*e*.58;var ae=156,se=2,M=ae-18,ce=7.1,de=16;function ue(n,e){let t=0,o=M;for(let i of n.split(" ")){let d=e(i),p=o+e(" ")+d;if(p<=M)o=p;else{let r=Math.ceil(d/M)||1;t+=r,o=d-(r-1)*M}}return t}var le=16.25,Z=27,pe=(n,e)=>{let t=Math.ceil(n.length*ce/M);return e?Math.max(Z,Math.ceil(Math.max(t,ue(n,e))*le)+6):Math.max(Z,t*de+6)};function yn(n,e,t){return n.length===0?0:10+n.reduce((o,i)=>o+pe(i,t),0)+(n.length-1)*se}var fe=27,me=8,hn=4,ye=64,gn=n=>Math.max(1,Math.min(me,n)),xn=n=>n*fe+ye;var f=m(w(),1);function Sn(n,{units:e,target:t=0,legibleAt:o=260}){let[i,d]=(0,f.useState)(e);(0,f.useEffect)(()=>{let r=n.current;if(r===null||typeof ResizeObserver>"u")return;let a=new ResizeObserver(([c])=>{let s=c?.contentRect.width??0;s>0&&d(s)});return a.observe(r),()=>a.disconnect()},[n]);let p=i/e;return{scale:p,width:i,touchable:p*t>=24,legible:i>=o}}function En(n="--graview-font-body",e="sans-serif"){let t=(0,f.useRef)(void 0),o=(0,f.useMemo)(()=>{if(typeof getComputedStyle!="function"||typeof document>"u")return e;let i=getComputedStyle(document.documentElement).getPropertyValue(n).trim();return i.length>0?i:e},[n,e]);return(0,f.useMemo)(()=>{t.current===void 0&&(t.current=typeof document>"u"?null:document.createElement("canvas").getContext("2d")??null);let i=t.current;return i===null?O:(d,p)=>{i.font=`${p}px ${o}`;let r=i.measureText(d).width;return r>0?r:O(d,p)}},[o])}var Mn=(0,f.createContext)(void 0);var D=3;function he(n){let e=I(n),t=e.focusId;if(!t)return null;if(e.within?.view){let[i]=H(t);if(i)return{at:`screen:${i}`,audience:!0}}return{at:t,audience:!1}}var ge=102,xe=32;function Pn(n,e,t){let o=[],i=new Map,d=new Map,p=0;for(let r of n){let a=he(r.stop),c=a?e(a.at):null;if(!a||!c){r.name&&o.push({kind:"edge",presence:r,point:{x:t-8,y:ge+p++*xe}});continue}if(!r.name){let l=d.get(a.at);d.set(a.at,{n:(l?.n??0)+1,box:c});continue}let s=i.get(a.at)??[];if(s.push(r),i.set(a.at,s),s.length>D)continue;let u=c,b=s.length-1,g=a.audience?{x:u.x+u.width*.5+(b-1)*26,y:u.y+Math.min(u.height,24)}:{x:u.x+u.width*.5-26-b*26,y:u.y+u.height-4};o.push({kind:"person",presence:r,point:g,at:a.at,index:b,of:s.length,audience:a.audience})}for(let[r,a]of i){if(a.length<=D)continue;let c=e(r);c&&o.push({kind:"count",at:r,point:{x:c.x+c.width*.5+2*26+18,y:c.y+c.height-4},n:a.length-D})}for(let[r,{n:a,box:c}]of d)o.push({kind:"count",at:r,point:{x:c.x+c.width*.5+40,y:c.y+c.height-4},n:a});for(let r of n)if(r.name){if(r.robot?.at&&r.robot.mode!=="docked"){let a=e(r.robot.at);a&&o.push({kind:"robot",presence:r,point:{x:a.x+a.width/2+22,y:a.y+a.height-4},mode:r.robot.mode})}if(r.over){let a=e(r.over);a&&o.push({kind:"over",presence:r,box:a})}}return o}export{pn as a,O as b,ae as c,se as d,Z as e,yn as f,fe as g,hn as h,ye as i,gn as j,xn as k,Sn as l,En as m,z as n,Me as o,en as p,nn as q,Pn as r,Y as s,sn as t,cn as u,dn as v};
1
+ import{l as C}from"./chunk.OJGHDWI6.js";import{j as A}from"./chunk.5IEZF433.js";import{G as w,Na as $,V as R,c as I,da as v,ea as K,fa as U,x as H}from"./chunk.VLX7YWVH.js";import{C as N,Pb as L,Yb as j,ec as V,nd as W,od as G,pc as B,xb as _}from"./chunk.IQGSEAQ2.js";import{b as m}from"./chunk.AJZBJBMO.js";function z(n,e,t={}){let o=n.graph.getNode(e);if(!o)return[];let i=t.principal?new Set(n.permittedMutations(t.principal).map(s=>s.name)):void 0,d=o.kind,p=n.schema.tryDefinition(d);if(!p)return[];let r=n.seenFor,a=r?L.keptFrom?.(n,r)?.(o):void 0,c=new Map;for(let s of n.allMutations()){let u=s.subject;if(!u||!(u.kinds==="*"||u.kinds.includes(d))||i&&!i.has(s.name))continue;let g=s.input.shape??{};for(let l of B(s,p)){if(a?.(l)||!j(s,n.schema,n.graph,e,l,r&&_(r).id))continue;let k=l in g,F=[];for(let h of Object.keys(g)){if(h===u.arg||h===l||te(g[h]))continue;let S=V(s.input).find(E=>E.name===h);F.push({name:h,...S?{kinds:S.kinds}:{},...S?{candidates:S.kinds.includes("*")?n.graph.allNodes().map(E=>E.id):S.kinds.flatMap(E=>n.graph.nodesOfKind(E).map(ne=>ne.id))}:{},shape:A(s.input,h)})}let ee={field:l,mutation:s.name,title:s.title??s.name,shape:k?A(s.input,l):{type:"unknown"},takesValue:k,alternatives:[],open:F,clearable:k&&(s.clearable?.includes(l)??!1),call:h=>({name:s.name,args:k?{[u.arg]:e,[l]:h}:{[u.arg]:e}})};c.set(l,[...c.get(l)??[],ee])}}return[...c.values()].map(s=>{let u=[...s.filter(l=>l.takesValue),...s.filter(l=>!l.takesValue)],[b,...g]=u;return{...b,alternatives:g}})}function te(n){let e=N(n)?.type;return e==="optional"||e==="default"||e==="nullable"}var P=m(w(),1);function Me(n){let{store:e,principal:t}=v(),o=U(),i=(0,P.useMemo)(()=>n===null?[]:z(e,n,{principal:t}),[e,n,o,t]),d=(0,P.useCallback)((p,r,a={})=>{let c=p.call(r);e.apply({name:c.name,args:{...c.args,...a}},{author:t})},[e,t]);return{fields:i,commit:d}}var q=m(w(),1);function en(){let{brand:n}=v(),e=n?.kit;return(0,q.useMemo)(()=>W(e),[e])}function nn(n,e){let t=G(n,e),o={...t.color!==void 0?{color:t.color}:{},...t.pattern!==void 0?{pattern:t.pattern}:{},...t.width!==void 0?{width:t.width}:{},...t.cap!==void 0?{cap:t.cap}:{},...t.opacity!==void 0?{opacity:t.opacity}:{}};return{connector:t,style:C(e,{[e]:o})}}var Q=m(w(),1);var x=m(R(),1);function re(n){let e=n?.hint;return typeof e=="string"&&e.length>0?e:void 0}function oe(n){if(n instanceof Error&&n.message)return n.message;let e=String(n);return e==="[object Object]"?"The view threw without a message.":e}var Y=class extends Q.Component{static contextType=$;state={};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){console.error(`[graview] the ${this.props.view??"view"} of ${this.props.kind} threw while rendering`,e,t.componentStack),this.context?.(e,{module:"@graview/react"})}render(){let{error:e}=this.state;if(!e)return this.props.children;let t=re(e);return(0,x.jsxs)("div",{role:"alert","data-graview-view-error":this.props.kind,style:{display:"flex",flexDirection:"column",gap:"0.375rem",padding:"var(--graview-pad, 12px)",height:"100%",overflow:"auto",boxSizing:"border-box",borderRadius:"var(--graview-radius-sm, 6px)",background:"var(--graview-panel-warning, #fdf3ec)",color:"var(--graview-ink, #1a1a1a)",font:"var(--graview-font-body, 13px/1.45 system-ui)",fontSize:"0.875rem",lineHeight:1.45},children:[(0,x.jsx)("strong",{style:{color:"var(--graview-warn, #b4462a)"},children:this.props.view?`${this.props.view} could not draw`:"This view could not draw"}),(0,x.jsx)("span",{style:{color:"var(--graview-ink-muted, #555)"},children:this.props.kind}),(0,x.jsx)("span",{children:oe(e)}),t?(0,x.jsx)("span",{style:{color:"var(--graview-ink-muted, #555)"},children:t}):null]})}};var y=m(w(),1);var X=m(R(),1),T=(0,y.createContext)([]);function sn({sections:n,children:e}){let t=(0,y.useContext)(T),o=(0,y.useMemo)(()=>[...t,...n.filter(i=>!t.includes(i))],[t,n]);return(0,X.jsx)(T.Provider,{value:o,children:e})}function J(){let n=(0,y.useContext)(T),e=K()?.menuSections;return(0,y.useMemo)(()=>e?[...n,...e.filter(t=>!n.includes(t))]:n,[n,e])}function cn(){let n=J();return(0,y.useCallback)(e=>{for(let t of n)try{t(e)?.prepare?.()}catch{}},[n])}function dn(n){let e=J();if(n===null||e.length===0)return{start:[],end:[]};let t=e.flatMap(o=>{try{let i=o(n);return i&&((i.items?.length??0)>0||i.render)?[i]:[]}catch{return[]}});return{start:t.filter(o=>o.at==="start"),end:t.filter(o=>o.at!=="start")}}var ie=m(w(),1);function pn(){return v().activity}var O=(n,e)=>n.length*e*.58;var ae=156,se=2,M=ae-18,ce=7.1,de=16;function ue(n,e){let t=0,o=M;for(let i of n.split(" ")){let d=e(i),p=o+e(" ")+d;if(p<=M)o=p;else{let r=Math.ceil(d/M)||1;t+=r,o=d-(r-1)*M}}return t}var le=16.25,Z=27,pe=(n,e)=>{let t=Math.ceil(n.length*ce/M);return e?Math.max(Z,Math.ceil(Math.max(t,ue(n,e))*le)+6):Math.max(Z,t*de+6)};function yn(n,e,t){return n.length===0?0:10+n.reduce((o,i)=>o+pe(i,t),0)+(n.length-1)*se}var fe=27,me=8,hn=4,ye=64,gn=n=>Math.max(1,Math.min(me,n)),xn=n=>n*fe+ye;var f=m(w(),1);function Sn(n,{units:e,target:t=0,legibleAt:o=260}){let[i,d]=(0,f.useState)(e);(0,f.useEffect)(()=>{let r=n.current;if(r===null||typeof ResizeObserver>"u")return;let a=new ResizeObserver(([c])=>{let s=c?.contentRect.width??0;s>0&&d(s)});return a.observe(r),()=>a.disconnect()},[n]);let p=i/e;return{scale:p,width:i,touchable:p*t>=24,legible:i>=o}}function En(n="--graview-font-body",e="sans-serif"){let t=(0,f.useRef)(void 0),o=(0,f.useMemo)(()=>{if(typeof getComputedStyle!="function"||typeof document>"u")return e;let i=getComputedStyle(document.documentElement).getPropertyValue(n).trim();return i.length>0?i:e},[n,e]);return(0,f.useMemo)(()=>{t.current===void 0&&(t.current=typeof document>"u"?null:document.createElement("canvas").getContext("2d")??null);let i=t.current;return i===null?O:(d,p)=>{i.font=`${p}px ${o}`;let r=i.measureText(d).width;return r>0?r:O(d,p)}},[o])}var Mn=(0,f.createContext)(void 0);var D=3;function he(n){let e=I(n),t=e.focusId;if(!t)return null;if(e.within?.view){let[i]=H(t);if(i)return{at:`screen:${i}`,audience:!0}}return{at:t,audience:!1}}var ge=102,xe=32;function Pn(n,e,t){let o=[],i=new Map,d=new Map,p=0;for(let r of n){let a=he(r.stop),c=a?e(a.at):null;if(!a||!c){r.name&&o.push({kind:"edge",presence:r,point:{x:t-8,y:ge+p++*xe}});continue}if(!r.name){let l=d.get(a.at);d.set(a.at,{n:(l?.n??0)+1,box:c});continue}let s=i.get(a.at)??[];if(s.push(r),i.set(a.at,s),s.length>D)continue;let u=c,b=s.length-1,g=a.audience?{x:u.x+u.width*.5+(b-1)*26,y:u.y+Math.min(u.height,24)}:{x:u.x+u.width*.5-26-b*26,y:u.y+u.height-4};o.push({kind:"person",presence:r,point:g,at:a.at,index:b,of:s.length,audience:a.audience})}for(let[r,a]of i){if(a.length<=D)continue;let c=e(r);c&&o.push({kind:"count",at:r,point:{x:c.x+c.width*.5+2*26+18,y:c.y+c.height-4},n:a.length-D})}for(let[r,{n:a,box:c}]of d)o.push({kind:"count",at:r,point:{x:c.x+c.width*.5+40,y:c.y+c.height-4},n:a});for(let r of n)if(r.name){if(r.robot?.at&&r.robot.mode!=="docked"){let a=e(r.robot.at);a&&o.push({kind:"robot",presence:r,point:{x:a.x+a.width/2+22,y:a.y+a.height-4},mode:r.robot.mode})}if(r.over){let a=e(r.over);a&&o.push({kind:"over",presence:r,box:a})}}return o}export{pn as a,O as b,ae as c,se as d,Z as e,yn as f,fe as g,hn as h,ye as i,gn as j,xn as k,Sn as l,En as m,z as n,Me as o,en as p,nn as q,Pn as r,Y as s,sn as t,cn as u,dn as v};
@@ -1,2 +1,2 @@
1
- import{f as k,h,i as b,n as S,o as w,p as I}from"./chunk.ZLTHWCKL.js";import"./chunk.BJUUSIQY.js";import"./chunk.57YDGGJK.js";import"./chunk.H7AH3IW4.js";import"./chunk.VCTAFSZ5.js";import"./chunk.XOZU4OFA.js";import"./chunk.4TH3CGAZ.js";import{a as A}from"./chunk.YOUB3J3Y.js";import"./chunk.DZSZUX34.js";import"./chunk.REUMBCSV.js";import"./chunk.2KIWGQXC.js";import"./chunk.D5LOTCBU.js";import"./chunk.KZUMXT5J.js";import"./chunk.CGK2PY76.js";import{G as M,T as f}from"./chunk.CYTTZOYL.js";import"./chunk.SDO3U72B.js";import"./chunk.Q4MI53KK.js";import"./chunk.FQLNBIQ5.js";import{b as d}from"./chunk.AJZBJBMO.js";var n=d(M(),1);var r=d(f(),1),C="several";function T({chosen:c,acts:p,onAct:N}){let t=A(),u=(0,n.useMemo)(()=>[...c].sort(),[c]),i=u.join(`
1
+ import{f as k,h,i as b,n as S,o as w,p as I}from"./chunk.O7HHNQK4.js";import"./chunk.BJUUSIQY.js";import"./chunk.TQ2G4AM4.js";import"./chunk.X36BYTEG.js";import"./chunk.LDMBJC3B.js";import"./chunk.XOZU4OFA.js";import"./chunk.G7YLK4PX.js";import{a as A}from"./chunk.GH5UBSQI.js";import"./chunk.2JEN2RCB.js";import"./chunk.75JQCTR6.js";import"./chunk.5IEZF433.js";import"./chunk.5AD2QHWH.js";import"./chunk.3FKKH2XU.js";import"./chunk.DLWFULWE.js";import{G as M,V as f}from"./chunk.VLX7YWVH.js";import"./chunk.SDO3U72B.js";import"./chunk.IQGSEAQ2.js";import"./chunk.FQLNBIQ5.js";import{b as d}from"./chunk.AJZBJBMO.js";var n=d(M(),1);var r=d(f(),1),C="several";function T({chosen:c,acts:p,onAct:N}){let t=A(),u=(0,n.useMemo)(()=>[...c].sort(),[c]),i=u.join(`
2
2
  `),o=(0,n.useMemo)(()=>({on:"selection",ids:u}),[i]),l=(0,n.useMemo)(()=>p.filter(e=>e.open.length===0&&!e.more&&!e.destructive),[p]),g=(0,n.useMemo)(()=>new Map(l.map(e=>[h(e.id),e])),[l]),v=S(t,o,C),[y,x]=(0,n.useState)(null);(0,n.useEffect)(()=>{if(v!==void 0)return;let e=!0;return w(t,o,{by:C,ask:()=>b(t.ai,{store:t.store,target:o,principal:t.principal,interaction:k(),places:t.places,selection:t.selection,...t.place?{place:t.place}:{},shared:l.map(a=>({id:a.id,label:a.label,mutation:a.mutation,args:a.args}))})}).then(a=>{e&&x({key:i,result:a})}),()=>{e=!1}},[i]);let s=v??(y?.key===i?y.result:void 0);if(s===void 0)return(0,r.jsx)("span",{role:"status",className:"graview-several-quiet","data-testid":"several-ai-thinking",style:{textDecoration:"none"},children:"AI: thinking\u2026"});let m=s.offers.filter(e=>e.type!=="act"||g.has(e.id));if(m.length===0)return null;let E=e=>{let a=g.get(e.id);if(a){t.desk.record({...s.interaction,outcome:"accepted",accepted:[e.id]}),N(a);return}I(t,s,e)};return(0,r.jsx)("div",{role:"group","aria-label":"Suggested by AI",className:"graview-several-acts","data-testid":"several-ai",children:m.map(e=>(0,r.jsxs)("button",{type:"button",className:"graview-several-act","data-testid":"several-ai-offer","data-ai-offer":e.id,"data-ai-offer-type":e.type,onClick:()=>E(e),children:[e.label,(0,r.jsx)("span",{style:{color:"var(--graview-ink-faint)",fontWeight:400},children:" \xB7 suggested"})]},e.id))})}export{T as SeveralAi};
@@ -1 +1 @@
1
- import{e as a}from"./chunk.Q2EGESEZ.js";import{l as i}from"./chunk.CYTTZOYL.js";import{Zd as o}from"./chunk.Q4MI53KK.js";function p(t){let r=t.within??{};return o({...r.sort?{sort:r.sort}:{},...r.filter?{filter:r.filter}:{},...r.group?{group:r.group}:{},...r.q?{q:r.q}:{},...r.archived?{archived:r.archived}:{}})}function c(t,r){let m=a(r),e=t;for(let n of["sort","filter","group","q","archived"])e=i(e,n,m[n]??null);return e}export{p as a,c as b};
1
+ import{e as a}from"./chunk.UDU545CL.js";import{l as i}from"./chunk.VLX7YWVH.js";import{$d as o}from"./chunk.IQGSEAQ2.js";function p(t){let r=t.within??{};return o({...r.sort?{sort:r.sort}:{},...r.filter?{filter:r.filter}:{},...r.group?{group:r.group}:{},...r.q?{q:r.q}:{},...r.archived?{archived:r.archived}:{}})}function c(t,r){let m=a(r),e=t;for(let n of["sort","filter","group","q","archived"])e=i(e,n,m[n]??null);return e}export{p as a,c as b};
@@ -0,0 +1 @@
1
+ import{a as n}from"./chunk.4Q5PCMGZ.js";import"./chunk.2VIS2NAT.js";import"./chunk.KHXRJLLU.js";import"./chunk.GHHKRFPD.js";import"./chunk.6NRWLCIZ.js";import"./chunk.Q355UPFG.js";import{l as s}from"./chunk.ZQGLPP7A.js";import"./chunk.7SRSE5IS.js";import"./chunk.VZAF3452.js";import"./chunk.WHX47OJM.js";import"./chunk.QRT6BZR6.js";import"./chunk.2V7QTIAV.js";import"./chunk.Z26T5E76.js";import"./chunk.77JI5T4F.js";import"./chunk.SADHOSRC.js";import"./chunk.4DZOAB4D.js";import"./chunk.UDU545CL.js";import"./chunk.7VAHHEDX.js";import"./chunk.P4TAX3HE.js";import"./chunk.T4TRJDBF.js";import"./chunk.2TCOLAL2.js";import"./chunk.2VYGDY5Z.js";import"./chunk.FUPYIOXZ.js";import"./chunk.APRWUIE3.js";import"./chunk.3OEODIHB.js";import"./chunk.WFCE7NLK.js";import"./chunk.HZPRMHSL.js";import"./chunk.BJUUSIQY.js";import"./chunk.TQ2G4AM4.js";import"./chunk.X36BYTEG.js";import"./chunk.XOZU4OFA.js";import"./chunk.G7YLK4PX.js";import"./chunk.MB7LKKUD.js";import"./chunk.WVUJXDXZ.js";import"./chunk.ZA5TDCBC.js";import"./chunk.2JEN2RCB.js";import"./chunk.7CLKGKSF.js";import"./chunk.TMHVYI5R.js";import"./chunk.R5MLRKAO.js";import"./chunk.YMXWS4XN.js";import"./chunk.GZHZLJBF.js";import"./chunk.3SAESG6X.js";import"./chunk.OJGHDWI6.js";import"./chunk.F6BNFLQM.js";import"./chunk.75JQCTR6.js";import"./chunk.5IEZF433.js";import"./chunk.5AD2QHWH.js";import"./chunk.3FKKH2XU.js";import"./chunk.DLWFULWE.js";import{G as y,V as i}from"./chunk.VLX7YWVH.js";import"./chunk.SDO3U72B.js";import"./chunk.IQGSEAQ2.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};