graview 0.1.70 → 0.1.72

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 (235) hide show
  1. package/dist/preview/chunk.2IOJNFCR.js +1 -0
  2. package/dist/preview/{chunk.I7CSRZC2.js → chunk.2Q4ZXP7P.js} +1 -1
  3. package/dist/preview/{chunk.O2XPLDMM.js → chunk.2TTKQAWQ.js} +1 -1
  4. package/dist/preview/chunk.2YSE3SQN.js +23 -0
  5. package/dist/preview/{chunk.NZFO6BM3.js → chunk.2ZPR6FRI.js} +1 -1
  6. package/dist/preview/chunk.3BE4SHZD.js +1 -0
  7. package/dist/preview/{chunk.QODVFVWE.js → chunk.43HWCHBN.js} +1 -1
  8. package/dist/preview/{chunk.QILGAV7H.js → chunk.45OLF6BK.js} +1 -1
  9. package/dist/preview/{chunk.NTAC5NNE.js → chunk.47QWCVZD.js} +1 -1
  10. package/dist/preview/{chunk.7HNMG6LG.js → chunk.4A7BRBEA.js} +1 -1
  11. package/dist/preview/chunk.4EPCI6VY.js +1 -0
  12. package/dist/preview/{chunk.OXXZGPJZ.js → chunk.4PB5UFUJ.js} +1 -1
  13. package/dist/preview/{chunk.SWY6DIE4.js → chunk.4TDYDIIM.js} +3 -3
  14. package/dist/preview/{chunk.6VG2LCES.js → chunk.4VX7GPFS.js} +1 -1
  15. package/dist/preview/{chunk.TUVPQLFL.js → chunk.523X2YEQ.js} +1 -1
  16. package/dist/preview/{chunk.CHG522KL.js → chunk.53GQQETN.js} +1 -1
  17. package/dist/preview/{chunk.NBB5ALVJ.js → chunk.5MKZTHU2.js} +1 -1
  18. package/dist/preview/chunk.5OS4SYHE.js +1 -0
  19. package/dist/preview/{chunk.ZTHZHBVN.js → chunk.5ZT4R227.js} +1 -1
  20. package/dist/preview/{chunk.RIP2SAQ5.js → chunk.65SI77M7.js} +1 -1
  21. package/dist/preview/chunk.6ESAFTWB.js +1 -0
  22. package/dist/preview/chunk.6GUIFP2A.js +1 -0
  23. package/dist/preview/{chunk.M3HLZX6Q.js → chunk.6GZYKHEN.js} +1 -1
  24. package/dist/preview/{chunk.UVMHC6VM.js → chunk.6YKKZI4H.js} +1 -1
  25. package/dist/preview/{chunk.BBLA4PSP.js → chunk.73RMM4W7.js} +1 -1
  26. package/dist/preview/chunk.7DCBIMOI.js +1 -0
  27. package/dist/preview/chunk.7JE3J7H4.js +1 -0
  28. package/dist/preview/{chunk.YTRUZ56A.js → chunk.7QGDWAHH.js} +1 -1
  29. package/dist/preview/{chunk.JEQ6CA5M.js → chunk.7VCYVCYM.js} +2 -2
  30. package/dist/preview/{chunk.X7HMTN3Z.js → chunk.A4TBVXHQ.js} +1 -1
  31. package/dist/preview/{chunk.J4NY2K2A.js → chunk.A6LJPXJ3.js} +1 -1
  32. package/dist/preview/chunk.AAPXF6NP.js +1 -0
  33. package/dist/preview/chunk.APUICV5Z.js +1 -0
  34. package/dist/preview/chunk.ASNVH2G4.js +25 -0
  35. package/dist/preview/{chunk.CM7EDQ4E.js → chunk.CJHCUHVN.js} +1 -1
  36. package/dist/preview/chunk.CUEPNS3Z.js +1 -0
  37. package/dist/preview/{chunk.U3CV227I.js → chunk.CUJRWBPX.js} +1 -1
  38. package/dist/preview/{chunk.7TZXDPPO.js → chunk.D5PW6YWF.js} +3 -3
  39. package/dist/preview/chunk.DCIYOZYP.js +1 -0
  40. package/dist/preview/chunk.DEBW4FH6.js +1 -0
  41. package/dist/preview/{chunk.MR776WQ2.js → chunk.DYPSFTRP.js} +1 -1
  42. package/dist/preview/{chunk.BBMX3IIO.js → chunk.E6QZUT4L.js} +1 -1
  43. package/dist/preview/chunk.E7QZZRAQ.js +17 -0
  44. package/dist/preview/chunk.EHCMBAZO.js +3 -0
  45. package/dist/preview/chunk.EXTD5JWD.js +1 -0
  46. package/dist/preview/{chunk.KOVTQCHX.js → chunk.EZF2T3XQ.js} +1 -1
  47. package/dist/preview/chunk.EZSST3IU.js +1 -0
  48. package/dist/preview/{chunk.DIVANC3G.js → chunk.F2BZ4SC4.js} +1 -1
  49. package/dist/preview/chunk.F2I7ERGM.js +1 -0
  50. package/dist/preview/{chunk.UWEFODVV.js → chunk.FCV3NX6L.js} +1 -1
  51. package/dist/preview/{chunk.NZ5TJKPT.js → chunk.FFTBUXKX.js} +2 -2
  52. package/dist/preview/chunk.FILBI7XA.js +1 -0
  53. package/dist/preview/{chunk.MGG5DH2S.js → chunk.FKSI5522.js} +1 -1
  54. package/dist/preview/{chunk.I3ADXJQW.js → chunk.FQ2QUDZS.js} +1 -1
  55. package/dist/preview/{chunk.A5ENJJZN.js → chunk.G2ZDDO3C.js} +1 -1
  56. package/dist/preview/{chunk.IPKODEOZ.js → chunk.GAVEWSXU.js} +1 -1
  57. package/dist/preview/chunk.GH6QX7JR.js +87 -0
  58. package/dist/preview/chunk.GMHBAS45.js +1 -0
  59. package/dist/preview/{chunk.YCMMATFK.js → chunk.GOVRX2YX.js} +1 -1
  60. package/dist/preview/chunk.GXK5PI7I.js +1 -0
  61. package/dist/preview/{chunk.RECTEAG4.js → chunk.GYP3EF6Z.js} +1 -1
  62. package/dist/preview/chunk.H2RVMT4Y.js +111 -0
  63. package/dist/preview/chunk.HCHGKI64.js +1 -0
  64. package/dist/preview/chunk.HE7SAJKZ.js +1 -0
  65. package/dist/preview/{chunk.WAIIXXVI.js → chunk.HIIYDKFC.js} +2 -2
  66. package/dist/preview/chunk.HPDUGKEF.js +32 -0
  67. package/dist/preview/{chunk.DGDOZHYK.js → chunk.HQRPOGTS.js} +1 -1
  68. package/dist/preview/chunk.HUJLELZ3.js +1 -0
  69. package/dist/preview/chunk.HVRUHRXR.js +1 -0
  70. package/dist/preview/{chunk.6KYTCEIH.js → chunk.I46VNAMS.js} +1 -1
  71. package/dist/preview/{chunk.QAERSZVB.js → chunk.ID4GOKT6.js} +1 -1
  72. package/dist/preview/{chunk.RJ7UV3XI.js → chunk.IZKCTF2R.js} +1 -1
  73. package/dist/preview/chunk.IZUAZ6EV.js +1 -0
  74. package/dist/preview/{chunk.ZIGW5VOT.js → chunk.J3CUBMUZ.js} +1 -1
  75. package/dist/preview/{chunk.3HFBHLXC.js → chunk.J4D4BIB4.js} +1 -1
  76. package/dist/preview/{chunk.IRPMGHZN.js → chunk.J7GH2CGV.js} +1 -1
  77. package/dist/preview/{chunk.SSHEFQ4R.js → chunk.JE4RBRKH.js} +1 -1
  78. package/dist/preview/{chunk.4BSEYZMS.js → chunk.JJSZLCNU.js} +1 -1
  79. package/dist/preview/{chunk.KV3N6VRG.js → chunk.JKX4J3KG.js} +1 -1
  80. package/dist/preview/{chunk.FUTSLXWN.js → chunk.JMXBMLKH.js} +1 -1
  81. package/dist/preview/chunk.JOB3EKS6.js +1 -0
  82. package/dist/preview/{chunk.5IM2X3VT.js → chunk.JP33TNCH.js} +1 -1
  83. package/dist/preview/{chunk.BZXJKWNI.js → chunk.K6EN2YR4.js} +1 -1
  84. package/dist/preview/chunk.K6YKXTKC.js +1 -0
  85. package/dist/preview/{chunk.A7JORJJL.js → chunk.KAIZDIRK.js} +1 -1
  86. package/dist/preview/{chunk.7LAXSQQY.js → chunk.KAQGSLC6.js} +3 -3
  87. package/dist/preview/{chunk.QG3LV4RH.js → chunk.KFYSKZC4.js} +1 -1
  88. package/dist/preview/{chunk.VBHV4TLG.js → chunk.KHRS2SKB.js} +1 -1
  89. package/dist/preview/chunk.KHVW6Q3T.js +1 -0
  90. package/dist/preview/chunk.KMFH26SS.js +1 -0
  91. package/dist/preview/{chunk.2T24FYAO.js → chunk.L3ST2YKI.js} +1 -1
  92. package/dist/preview/{chunk.HIJ72QX6.js → chunk.L6BLZJ6K.js} +1 -1
  93. package/dist/preview/{chunk.NCBUECIW.js → chunk.LG2BQ5LB.js} +1 -1
  94. package/dist/preview/{chunk.LZ3HO3HM.js → chunk.LLYHHG67.js} +1 -1
  95. package/dist/preview/{chunk.VKQONZKR.js → chunk.LPWANRBL.js} +1 -1
  96. package/dist/preview/{chunk.3MPLUSVY.js → chunk.LSS64NAA.js} +1 -1
  97. package/dist/preview/{chunk.SUYYDJGZ.js → chunk.MFNWHXGL.js} +1 -1
  98. package/dist/preview/{chunk.UJF6YTEO.js → chunk.MNH3WUAB.js} +1 -1
  99. package/dist/preview/chunk.MQ7AB5N4.js +1 -0
  100. package/dist/preview/{chunk.CZUUFO6A.js → chunk.MU5JK5TK.js} +1 -1
  101. package/dist/preview/{chunk.RXUL6P7Y.js → chunk.N5CACZ5F.js} +1 -1
  102. package/dist/preview/{chunk.S6IKR6RD.js → chunk.NFC2TYA6.js} +1 -1
  103. package/dist/preview/{chunk.TD2V74XU.js → chunk.NKRDVOLJ.js} +1 -1
  104. package/dist/preview/{chunk.SGYZM6ZU.js → chunk.NNK2E2EP.js} +1 -1
  105. package/dist/preview/{chunk.J65CZJIC.js → chunk.NVPKYWMF.js} +1 -1
  106. package/dist/preview/{chunk.DWMFLLJO.js → chunk.NWJ7ELHN.js} +1 -1
  107. package/dist/preview/{chunk.NKUNCQB3.js → chunk.O5P6LXHF.js} +1 -1
  108. package/dist/preview/{chunk.2MWEYNVH.js → chunk.OFK6673S.js} +1 -1
  109. package/dist/preview/{chunk.C4LC2UEU.js → chunk.OG6FEP3K.js} +1 -1
  110. package/dist/preview/{chunk.CZI6J5CE.js → chunk.OHGAZ3D5.js} +1 -1
  111. package/dist/preview/{chunk.XJ4JYROM.js → chunk.ONVYKLRX.js} +1 -1
  112. package/dist/preview/chunk.OQ3FKUP2.js +1 -0
  113. package/dist/preview/chunk.OUJV4CYS.js +1 -0
  114. package/dist/preview/{chunk.T552MHMU.js → chunk.OWHH7JDV.js} +1 -1
  115. package/dist/preview/{chunk.SCN6IYDG.js → chunk.OXDCGGZV.js} +1 -1
  116. package/dist/preview/{chunk.YIDNZTON.js → chunk.P3Z4ZCL3.js} +1 -1
  117. package/dist/preview/chunk.PF7XQ5R5.js +1 -0
  118. package/dist/preview/{chunk.FSZQTX3K.js → chunk.PGT4ZQDG.js} +4 -4
  119. package/dist/preview/chunk.PH547SON.js +1 -0
  120. package/dist/preview/chunk.PS765ODQ.js +3 -0
  121. package/dist/preview/{chunk.MZSWWMX6.js → chunk.PVAYYFT2.js} +1 -1
  122. package/dist/preview/{chunk.F5STM4DX.js → chunk.Q6WOIE5I.js} +1 -1
  123. package/dist/preview/{chunk.55C7WO4X.js → chunk.QE257AXE.js} +1 -1
  124. package/dist/preview/chunk.QKNC5OUC.js +1 -0
  125. package/dist/preview/chunk.QMGBAKX6.js +2 -0
  126. package/dist/preview/{chunk.4QBW46XV.js → chunk.QNFX5VHW.js} +1 -1
  127. package/dist/preview/chunk.QPCDAQTW.js +1 -0
  128. package/dist/preview/{chunk.TS5APXWC.js → chunk.QPTQIGLX.js} +1 -1
  129. package/dist/preview/{chunk.LZNHTROY.js → chunk.R5YGW5ZX.js} +1 -1
  130. package/dist/preview/{chunk.4VTUC5TF.js → chunk.RJ6KEVZC.js} +1 -1
  131. package/dist/preview/{chunk.6QMRDSTD.js → chunk.RKVMRP7B.js} +1 -1
  132. package/dist/preview/{chunk.YBQUP3KE.js → chunk.S7U2CHHG.js} +1 -1
  133. package/dist/preview/{chunk.CLJKQLK2.js → chunk.SD2UYSV6.js} +2 -2
  134. package/dist/preview/chunk.SI5GGFQR.js +1 -0
  135. package/dist/preview/{chunk.7QWGIGHM.js → chunk.SMF5S4DQ.js} +1 -1
  136. package/dist/preview/{chunk.LEZGBHPZ.js → chunk.SNDFIJVX.js} +1 -1
  137. package/dist/preview/{chunk.F5756PXX.js → chunk.STHWM422.js} +2 -2
  138. package/dist/preview/{chunk.JIEBGUCA.js → chunk.SV75TRCH.js} +1 -1
  139. package/dist/preview/{chunk.U2DZE7A5.js → chunk.SXGPRFA4.js} +1 -1
  140. package/dist/preview/{chunk.ZGJUCVT5.js → chunk.T3RFZ66S.js} +1 -1
  141. package/dist/preview/{chunk.I6HIVTXU.js → chunk.T6ISUVUP.js} +1 -1
  142. package/dist/preview/{chunk.R65YX332.js → chunk.TBLOBXZ2.js} +1 -1
  143. package/dist/preview/{chunk.CVVNHQPO.js → chunk.TDWJU6GW.js} +1 -1
  144. package/dist/preview/{chunk.2QALBEWP.js → chunk.THLT6NVO.js} +1 -1
  145. package/dist/preview/{chunk.7FTATAH2.js → chunk.TQCVEKPH.js} +1 -1
  146. package/dist/preview/{chunk.PAIBRJVZ.js → chunk.TQF5XCUS.js} +1 -1
  147. package/dist/preview/{chunk.F5XWYO5W.js → chunk.TRP66PHK.js} +1 -1
  148. package/dist/preview/chunk.TWXYI5AP.js +2 -0
  149. package/dist/preview/{chunk.IQCMV5WD.js → chunk.UOUQZYVD.js} +1 -1
  150. package/dist/preview/{chunk.FJXKQZZS.js → chunk.UPL3D3ZO.js} +1 -1
  151. package/dist/preview/{chunk.U5Q7EVZQ.js → chunk.UXW43HNW.js} +1 -1
  152. package/dist/preview/{chunk.ZOSTOVXR.js → chunk.V4GSVXSV.js} +1 -1
  153. package/dist/preview/chunk.VCEDSOAK.js +1 -0
  154. package/dist/preview/{chunk.4O3STSC4.js → chunk.VE4AQFLW.js} +1 -1
  155. package/dist/preview/{chunk.HMV4ILAC.js → chunk.VGQDPEB5.js} +1 -1
  156. package/dist/preview/{chunk.5A5DI36V.js → chunk.VMYXBFPE.js} +1 -1
  157. package/dist/preview/{chunk.BQWMHHAZ.js → chunk.VNI6HZEF.js} +2 -2
  158. package/dist/preview/chunk.VQRY2NQ6.js +1 -0
  159. package/dist/preview/{chunk.K6EKSURO.js → chunk.VUE6ILQV.js} +1 -1
  160. package/dist/preview/{chunk.3KF5RYPW.js → chunk.W2VSEEKX.js} +1 -1
  161. package/dist/preview/{chunk.KP7HUXH5.js → chunk.WAPY4RCS.js} +1 -1
  162. package/dist/preview/chunk.WFRSGGU5.js +1 -0
  163. package/dist/preview/{chunk.XAN7QXMQ.js → chunk.WIVNFOQR.js} +1 -1
  164. package/dist/preview/chunk.WRIBFLVG.js +1 -0
  165. package/dist/preview/{chunk.TVNY7F64.js → chunk.WWD2TS47.js} +1 -1
  166. package/dist/preview/{chunk.5W7EGQCQ.js → chunk.WWFOQDPR.js} +2 -2
  167. package/dist/preview/{chunk.FBDCHJS2.js → chunk.X45EITTK.js} +1 -1
  168. package/dist/preview/{chunk.5FQHZVE3.js → chunk.X5MCAUFX.js} +1 -1
  169. package/dist/preview/{chunk.IJVR7ZL7.js → chunk.XBWFQ54R.js} +1 -1
  170. package/dist/preview/{chunk.JPJHM62B.js → chunk.XMBGT6UT.js} +1 -1
  171. package/dist/preview/chunk.XP4IVKKR.js +1 -0
  172. package/dist/preview/chunk.XYBWBMNU.js +1 -0
  173. package/dist/preview/{chunk.MYR36HW4.js → chunk.YC2IDHQX.js} +1 -1
  174. package/dist/preview/{chunk.ZQSV5XVB.js → chunk.YCYJHPWS.js} +1 -1
  175. package/dist/preview/{chunk.BJ3G7J2Z.js → chunk.YF5GCOSZ.js} +3 -2
  176. package/dist/preview/{chunk.3I2SGKKF.js → chunk.YGGBGHZU.js} +1 -1
  177. package/dist/preview/chunk.YRC6PKXP.js +1 -0
  178. package/dist/preview/{chunk.6NYSB6OZ.js → chunk.YRN67Z5K.js} +1 -1
  179. package/dist/preview/chunk.ZDUKVXBI.js +5 -0
  180. package/dist/preview/index.html +55 -55
  181. package/dist/preview/page.js +2 -2
  182. package/package.json +6 -6
  183. package/dist/preview/chunk.2QOB62XU.js +0 -1
  184. package/dist/preview/chunk.36FKQJFM.js +0 -2
  185. package/dist/preview/chunk.3A3DCALP.js +0 -1
  186. package/dist/preview/chunk.3GPYKWAD.js +0 -1
  187. package/dist/preview/chunk.3QPMFUMV.js +0 -1
  188. package/dist/preview/chunk.3ZP6IDUC.js +0 -1
  189. package/dist/preview/chunk.53HW224Y.js +0 -1
  190. package/dist/preview/chunk.AW74DZ5V.js +0 -17
  191. package/dist/preview/chunk.C67TMA4U.js +0 -111
  192. package/dist/preview/chunk.CCCSZRKU.js +0 -1
  193. package/dist/preview/chunk.CUA7F3YJ.js +0 -25
  194. package/dist/preview/chunk.DBSSCJQM.js +0 -1
  195. package/dist/preview/chunk.DW6KXAUM.js +0 -1
  196. package/dist/preview/chunk.DWPM7AWA.js +0 -1
  197. package/dist/preview/chunk.FXCKKVT5.js +0 -1
  198. package/dist/preview/chunk.HHQUCFN4.js +0 -1
  199. package/dist/preview/chunk.HPWMCS3H.js +0 -23
  200. package/dist/preview/chunk.HRLCDBMO.js +0 -1
  201. package/dist/preview/chunk.I7ODVOO5.js +0 -1
  202. package/dist/preview/chunk.IANOWT3Z.js +0 -1
  203. package/dist/preview/chunk.IFPJPJ4M.js +0 -1
  204. package/dist/preview/chunk.IUVRJDL3.js +0 -5
  205. package/dist/preview/chunk.J4CSY2D5.js +0 -2
  206. package/dist/preview/chunk.JJIKTTXB.js +0 -1
  207. package/dist/preview/chunk.KDOJC4FX.js +0 -1
  208. package/dist/preview/chunk.KJAOJTZZ.js +0 -1
  209. package/dist/preview/chunk.KLZPUTMU.js +0 -1
  210. package/dist/preview/chunk.LQ2PDW2M.js +0 -32
  211. package/dist/preview/chunk.M7DJJRFH.js +0 -1
  212. package/dist/preview/chunk.MNWP3TPN.js +0 -1
  213. package/dist/preview/chunk.MSWOETXN.js +0 -1
  214. package/dist/preview/chunk.NILR2BWR.js +0 -1
  215. package/dist/preview/chunk.NNYKLENL.js +0 -1
  216. package/dist/preview/chunk.PYGNO2AV.js +0 -87
  217. package/dist/preview/chunk.PZHCWMKT.js +0 -1
  218. package/dist/preview/chunk.QQUZ5RTQ.js +0 -1
  219. package/dist/preview/chunk.QVID5WHS.js +0 -1
  220. package/dist/preview/chunk.RHV73CBA.js +0 -3
  221. package/dist/preview/chunk.RP6C2IUM.js +0 -1
  222. package/dist/preview/chunk.RPHZY7N4.js +0 -1
  223. package/dist/preview/chunk.RSMCTI2N.js +0 -1
  224. package/dist/preview/chunk.S4QSZRKH.js +0 -1
  225. package/dist/preview/chunk.T4QRIJE4.js +0 -1
  226. package/dist/preview/chunk.UJM5EZDM.js +0 -3
  227. package/dist/preview/chunk.UJPX3BUV.js +0 -1
  228. package/dist/preview/chunk.UYBSVE2W.js +0 -1
  229. package/dist/preview/chunk.WMZ2BINI.js +0 -1
  230. package/dist/preview/chunk.X2RHBTJI.js +0 -1
  231. package/dist/preview/chunk.X3FPVFFB.js +0 -1
  232. package/dist/preview/chunk.X4PFLIXB.js +0 -1
  233. package/dist/preview/chunk.YR7DKU5T.js +0 -1
  234. package/dist/preview/chunk.ZBK3FCVE.js +0 -1
  235. package/dist/preview/chunk.ZH5L746C.js +0 -1
@@ -1,4 +1,4 @@
1
- import{a as L,b as _,c as B,d as V,e as E,r as G,t as H,u as S,v as N,w as q,x as W,y as z,z as Q}from"./chunk.RD2FSSLV.js";import"./chunk.IUVRJDL3.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";var j=["drawElementImageToTexture","copyElementImageToTexture"],T=null,M=(r,e)=>r==="texture"?{texture:e}:{destination:{texture:e}};function ne(){return typeof globalThis>"u"?void 0:globalThis}function v(r,e){let t=[],n=ne(),s=!!(n?.navigator&&"gpu"in n.navigator);s||t.push("navigator.gpu is absent \u2014 WebGPU is unavailable.");let o=r??n?.GPUQueue?.prototype??void 0,i=null;if(o){for(let d of j)if(typeof o[d]=="function"){i=d;break}}i||t.push("No element-capture method on GPUQueue. Run Chromium 147+ with --enable-blink-features=CanvasDrawElement.");let c=e??n?.HTMLCanvasElement?.prototype??void 0,l=typeof c?.updateElementGeometry=="function";l||t.push("canvas.updateElementGeometry is absent \u2014 geometry cannot be reported.");let p=typeof c?.requestPaint=="function";p||t.push("canvas.requestPaint is absent \u2014 there is no capture-safe moment to hook.");let y=!1,h="unknown";if(typeof document<"u"){let d=document.createElement("canvas");y="layoutSubtree"in d||typeof d.captureElementImage=="function","layoutSubtree"in d?h="no":typeof d.captureElementImage=="function"&&(h="yes")}return{available:i!==null,captureMethod:i,geometrySync:l,hitTestFollowsGeometry:l?h:"no",layoutSubtree:y,paintEvents:p,webgpu:s,usable:s&&i!==null,notes:t}}var w=class extends Error{constructor(t){super(`HTML-in-Canvas is unavailable:
1
+ import{a as L,b as _,c as B,d as V,e as E,r as G,t as H,u as S,v as N,w as q,x as W,y as z,z as Q}from"./chunk.RD2FSSLV.js";import"./chunk.ZDUKVXBI.js";import"./chunk.FQLNBIQ5.js";import"./chunk.AJZBJBMO.js";var j=["drawElementImageToTexture","copyElementImageToTexture"],T=null,M=(r,e)=>r==="texture"?{texture:e}:{destination:{texture:e}};function ne(){return typeof globalThis>"u"?void 0:globalThis}function v(r,e){let t=[],n=ne(),s=!!(n?.navigator&&"gpu"in n.navigator);s||t.push("navigator.gpu is absent \u2014 WebGPU is unavailable.");let o=r??n?.GPUQueue?.prototype??void 0,i=null;if(o){for(let d of j)if(typeof o[d]=="function"){i=d;break}}i||t.push("No element-capture method on GPUQueue. Run Chromium 147+ with --enable-blink-features=CanvasDrawElement.");let c=e??n?.HTMLCanvasElement?.prototype??void 0,l=typeof c?.updateElementGeometry=="function";l||t.push("canvas.updateElementGeometry is absent \u2014 geometry cannot be reported.");let p=typeof c?.requestPaint=="function";p||t.push("canvas.requestPaint is absent \u2014 there is no capture-safe moment to hook.");let y=!1,h="unknown";if(typeof document<"u"){let d=document.createElement("canvas");y="layoutSubtree"in d||typeof d.captureElementImage=="function","layoutSubtree"in d?h="no":typeof d.captureElementImage=="function"&&(h="yes")}return{available:i!==null,captureMethod:i,geometrySync:l,hitTestFollowsGeometry:l?h:"no",layoutSubtree:y,paintEvents:p,webgpu:s,usable:s&&i!==null,notes:t}}var w=class extends Error{constructor(t){super(`HTML-in-Canvas is unavailable:
2
2
  ${t.notes.join(`
3
3
  `)}`);this.capabilities=t;this.name="PlatformUnavailableError"}};function O(r,e,t){let n=r;for(let s of j){let o=n[s];if(typeof o=="function"){if(T){o.call(n,{source:e},M(T,t));return}try{o.call(n,{source:e},M("texture",t)),T="texture"}catch(i){if(!(i instanceof TypeError)||!/texture/i.test(i.message))throw i;o.call(n,{source:e},M("destination",t)),T="destination"}return}}throw new w(v(r))}function F(r,e=!0){e?r.setAttribute("drawable",""):r.removeAttribute("drawable")}function D(r){let e=r.changedElements;return e?new Set(Array.from(e)):null}function re(r,e){let t=r;if(typeof t.captureElementImage!="function")throw new w(v(void 0,r));return t.captureElementImage(e)}function U(r,e,t){let n=r;if(typeof n.updateElementGeometry!="function")throw new w(v(void 0,r));n.updateElementGeometry(e,t)}function ie(r,e){r.clearElementGeometry?.(e)}function m(r){r.requestPaint?.()}function I(r,e=!0){let t=r;e?t.setAttribute("content","drawable"):t.removeAttribute("content"),"layoutSubtree"in t?t.layoutSubtree=e:e?t.setAttribute("layoutsubtree",""):t.removeAttribute("layoutsubtree")}var R=`
4
4
  struct Plane {
@@ -0,0 +1 @@
1
+ import{a as n}from"./chunk.2YSE3SQN.js";import"./chunk.Q6WOIE5I.js";import"./chunk.4TDYDIIM.js";import"./chunk.STHWM422.js";import"./chunk.Q355UPFG.js";import{p as s}from"./chunk.IZUAZ6EV.js";import"./chunk.KFYSKZC4.js";import"./chunk.VNI6HZEF.js";import"./chunk.THLT6NVO.js";import"./chunk.KMFH26SS.js";import"./chunk.YF5GCOSZ.js";import"./chunk.F2BZ4SC4.js";import"./chunk.WAPY4RCS.js";import"./chunk.JJSZLCNU.js";import"./chunk.JKX4J3KG.js";import"./chunk.JMXBMLKH.js";import"./chunk.PVAYYFT2.js";import"./chunk.MB7LKKUD.js";import"./chunk.I46VNAMS.js";import"./chunk.3BE4SHZD.js";import"./chunk.LG2BQ5LB.js";import"./chunk.L3ST2YKI.js";import"./chunk.7VCYVCYM.js";import"./chunk.CJHCUHVN.js";import"./chunk.MFNWHXGL.js";import"./chunk.DCIYOZYP.js";import"./chunk.O5P6LXHF.js";import"./chunk.BJUUSIQY.js";import"./chunk.VGQDPEB5.js";import"./chunk.WIVNFOQR.js";import"./chunk.XOZU4OFA.js";import"./chunk.53GQQETN.js";import"./chunk.WVUJXDXZ.js";import"./chunk.J7GH2CGV.js";import"./chunk.SMF5S4DQ.js";import"./chunk.XP4IVKKR.js";import"./chunk.R5YGW5ZX.js";import"./chunk.QMGBAKX6.js";import"./chunk.PS765ODQ.js";import"./chunk.MIE4TJRW.js";import"./chunk.DEBW4FH6.js";import"./chunk.RD2FSSLV.js";import"./chunk.OWHH7JDV.js";import"./chunk.T3RFZ66S.js";import"./chunk.TDWJU6GW.js";import"./chunk.P3Z4ZCL3.js";import"./chunk.45OLF6BK.js";import"./chunk.T6ISUVUP.js";import"./chunk.GH6QX7JR.js";import"./chunk.J4D4BIB4.js";import{G as y,_ as i}from"./chunk.ASNVH2G4.js";import"./chunk.SDO3U72B.js";import"./chunk.ZDUKVXBI.js";import"./chunk.FQLNBIQ5.js";import{b as r}from"./chunk.AJZBJBMO.js";var c=r(y(),1),e=r(i(),1);function v({store:d,views:t,as:a,scope:o}){let l=(0,c.useMemo)(()=>s({scope:`.${o}`}),[o]);return(0,e.jsxs)("div",{"data-testid":"embed-picture","data-embed-content":"",tabIndex:0,"aria-label":t.places().find(m=>m.as===a)?.title??"The picture",style:{flex:"1 1 auto",minHeight:0,display:"grid",gridTemplateRows:"minmax(0, 1fr)",overflow:"auto",background:"var(--graview-ground)",color:"var(--graview-ink)",fontFamily:"var(--graview-font-body, system-ui)"},children:[(0,e.jsx)("style",{children:l}),(0,e.jsx)(n,{store:d,views:t,as:a})]})}export{v as PictureFace};
@@ -1 +1 @@
1
- import{b as T,c as m,d as k}from"./chunk.K6EKSURO.js";import{b as v,d as w,e as P,f as M,g as N}from"./chunk.M5FP4Y4Q.js";var j=new Set(["input","select","textarea"]),g=r=>r.namespaceURI==="http://www.w3.org/1999/xhtml"&&j.has(r.localName),R=r=>r.localName==="select"||r.type==="checkbox"||r.type==="radio",S=r=>r.type==="checkbox"||r.type==="radio"?!r.checked:r.localName!=="select"&&r.value==="";function y(r){return r.type==="checkbox"||r.type==="radio"?`checked:${r.checked}`:r.localName==="select"&&r.multiple?`selected:${[...r.selectedOptions].map(t=>t.value).join("\0")}`:`value:${r.value}`}function D(r=t=>t.isTrusted){let t=new WeakMap,s=new WeakSet,o=new WeakMap,i={heard(e,n){if(!(!g(n)||!r(e))&&(e.type==="input"||e.type==="change"&&R(n))&&((R(n)||S(n))&&s.delete(n),S(n)&&o.delete(n),t.set(n,y(n)),n.type==="radio"&&n.name)){let u=n.getRootNode();for(let c of u.querySelectorAll?.('input[type="radio"]')??[])c.name===n.name&&t.set(c,y(c))}},filled(e){t.delete(e),o.delete(e),g(e)&&!S(e)?s.add(e):s.delete(e)},press(e,n,u){if(!r(e))return;let c=n.closest("[data-act]");if(!c||!w(c))return;let l=e.type==="keydown"?e.key:void 0;if(!(e.type!=="click"&&!((l==="Enter"||l===" ")&&n===c&&!v(c))))return i.collect(c,u)},collect(e,n){if(!e.hasAttribute("data-act")||!n.contains(e))return;let u=e.closest("[data-record]"),c=e.closest("fieldset, [role='group']")??n,l=[];for(let a of c.querySelectorAll("input[name], select[name], textarea[name]")){let d=a,f=!s.has(d)&&t.get(d)===y(d);if(d.type==="radio"){if(!d.checked)continue;l.push({name:d.name,value:d.value,typed:f,empty:!1,chosen:!0});continue}if(d.localName==="select"){l.push({name:d.name,value:d.value,typed:f,empty:d.value===""&&!f,chosen:!0});continue}if(d.type==="checkbox"){l.push({name:d.name,value:d.checked,typed:f,empty:!d.checked&&!s.has(d)&&!f});continue}let O=(d.type==="number"||d.type==="range")&&d.value!==""&&Number.isFinite(d.valueAsNumber)?d.valueAsNumber:d.value,x=f?o.get(d):void 0;l.push({name:d.name,value:O,typed:f,empty:d.value===""&&!f,...x?{from:x}:{}})}return{as:e.getAttribute("data-act")??"",...u&&n.contains(u)?{record:u.getAttribute("data-record")}:{},fields:l}},prefilled(e,n){s.delete(e),o.set(e,n),t.set(e,y(e))}};return i}var b=new WeakMap,L=(r,t)=>{t.tab&&r.removeAttribute("tabindex"),t.role&&r.getAttribute("role")==="button"&&r.removeAttribute("role"),r.removeAttribute("data-graview-press"),b.delete(r)};function V(r){for(let t of r.querySelectorAll("[data-act], [data-graview-press], [role], [aria-pressed], [aria-expanded]")){let s=b.get(t),o=w(t)&&!v(t)&&!g(t),i=!o&&P(t,s?.role?null:t.getAttribute("role"));if(s&&(s.bound!==o||!(o||i))&&L(t,s),(o||i)&&!b.has(t)){let e=!M(t),n=o&&N(t);e&&t.setAttribute("tabindex","0"),n&&t.setAttribute("role","button"),t.setAttribute("data-graview-press",""),b.set(t,{tab:e,role:n,bound:o})}}}var h=new WeakSet;function z(r){for(let t of r.querySelectorAll("svg")){let s=t.hasAttribute("role")||t.hasAttribute("aria-label")||t.hasAttribute("aria-labelledby")||[...t.children].some(e=>e.localName==="title"),o=t.hasAttribute("tabindex")||t.hasAttribute("data-graview-link")||t.hasAttribute("data-graview-press")||t.querySelector("[tabindex], [data-graview-link], [data-graview-press], a")!==null,i=!s&&!o;i&&!h.has(t)&&!t.hasAttribute("aria-hidden")?(t.setAttribute("aria-hidden","true"),h.add(t)):!i&&h.has(t)&&(t.removeAttribute("aria-hidden"),h.delete(t))}}var I=1e3;function H(r){let t=r.getAttribute("data-debounce")?.trim(),s=t?Number(t):Number.NaN;return Number.isFinite(s)?Math.min(1e4,Math.max(250,Math.round(s))):I}function B(r){let t=r.trusted??(e=>e.isTrusted),s=r.timers??{set:(e,n)=>setTimeout(e,n),clear:e=>clearTimeout(e)},o=new Map,i=(e,n)=>{let u=o.get(e);u&&s.clear(u.handle),o.delete(e);let c=r.reader.collect(e,n);c&&r.save(c,e)};return{heard(e,n,u){if(!g(n)||!t(e)||!n.hasAttribute("data-act"))return;let c=n.getAttribute("data-save");if(e.type==="input"&&c==="input"){let l=o.get(n);l&&s.clear(l.handle),o.set(n,{root:u,handle:s.set(()=>i(n,u),H(n))})}else e.type==="change"&&(c==="change"||c==="input"&&o.has(n))&&i(n,u)},flush(){for(let[e,{root:n}]of[...o])i(e,n)},get waiting(){return o.size}}}var q=new Set(["text","search","email","url","tel","number"]);function C(r,t,s,o){for(let i of r.querySelectorAll("input[data-prefill], textarea[data-prefill]")){let e=i;if(s.has(e))continue;let n=e.getAttribute("data-prefill")??"";if(n===""||e.getAttribute("name")!==n||e.localName==="input"&&!q.has(e.type))continue;if(e.value!==""){s.add(e);continue}let c=[...(e.closest("fieldset, [role='group']")??r).querySelectorAll("[data-act]")],l=e.closest("[data-record]"),a=new Set(c.map(p=>p.closest("[data-record]")?.getAttribute("data-record")).filter(p=>typeof p=="string")),d=l&&r.contains(l)?l.getAttribute("data-record"):a.size===1?[...a][0]:void 0;if(!d)continue;let f=o({record:d,field:n,acts:c.map(p=>p.getAttribute("data-act")??"")});if(f!==void 0){if(e.value=f,s.add(e),e.value!==f){e.value="";continue}t.prefilled(e,{record:d,field:n,value:f})}}}function J(r,t,s,o){let i=k(t,o.as);if(!i)return m("undeclared",`This view may not ask for \u201C${o.as}\u201D: its manifest does not name it.`);let e=r.allMutations().find(a=>a.name===i.act);if(!e)return m("unknown-act","There is no act by that name here.");let n={};if(o.record!==void 0){let a=i.record??e.subject?.arg;if(!a)return m("unbound",`\u201C${o.as}\u201D is not done to a record.`);if(!s.has(o.record))return m("unbound","That press is bound to a record this view was not shown.");n[a]=o.record}for(let[a,d]of Object.entries(i.constants??{})){if(a in n)return m("malformed",`\u201C${a}\u201D is both the bound record and a constant.`);n[a]=d}let u=e.input?.shape??{},c=new Set(Object.keys(u)),l=new Set;for(let a of o.fields){if(!c.has(a.name)||a.name in n)continue;if(l.has(a.name))return m("malformed",`Two fields here are called \u201C${a.name}\u201D.`);l.add(a.name);let d=u[a.name];if(!a.chosen&&a.value===""&&!E(d,"")){a.typed&&a.from&&E(d,null)&&(n[a.name]=null);continue}if(a.typed&&a.chosen){let f=T(u[a.name])?.find(p=>String(p)===String(a.value));if(f!==void 0)n[a.name]=f;else if(typeof a.value=="string"&&s.has(a.value))n[a.name]=a.value;else return m("untyped",`\u201C${a.name}\u201D was a choice among the view's own words, not one this app declares, so it was not sent.`)}else{if(a.typed&&a.from&&!(o.record===a.from.record&&a.name===a.from.field&&A(r,i,a.from.record,a.from.field)))return m("untyped",`\u201C${a.name}\u201D was filled in from a record for an act that writes it back there, not for this one, so it was not sent.`);if(a.typed&&a.from&&String(a.value)===a.from.value)n[a.name]=r.graph.getNode(a.from.record)?.[a.name]??a.value;else if(a.typed)n[a.name]=a.value;else if(!a.empty)if(F(r,d,a.value,o.record!==void 0&&A(r,i,o.record,a.name)?o.record:void 0,a.name))n[a.name]=a.value;else return m("untyped",`\u201C${a.name}\u201D was filled in by the view, not typed by you, so it was not sent.`)}}return{ok:!0,name:i.act,args:n}}function E(r,t){let s=r?.safeParse;return typeof s=="function"?s.call(r,t).success:!1}function $(r){let t=r;for(let s=0;s<8&&t?._zod?.def;s+=1){let o=t._zod.def;if(o.type==="default"||o.type==="prefault"){let i=o.defaultValue;return{value:typeof i=="function"?i():i}}if(!("innerType"in o))return;t=o.innerType}}function F(r,t,s,o,i){if(!E(t,s))return!1;if(s===0||s===!1||s==="0")return!0;let e=$(t);if(e&&Object.is(e.value,s))return!0;if(o===void 0)return!1;let n=r.graph.getNode(o)?.[i];return n!=null&&String(n)===String(s)}function A(r,t,s,o){let i=r.allMutations().find(c=>c.name===t.act),e=i?.subject;if(!i||!e||(t.record??e.arg)!==e.arg||o===e.arg||Object.hasOwn(t.constants??{},o)||!Object.hasOwn(i.input.shape??{},o)||Object.keys(i.writesOther??{}).length>0)return!1;let n=r.graph.getNode(s)?.kind,u=n===void 0?void 0:r.schema.tryDefinition(n);return!u||e.kinds!=="*"&&!e.kinds.includes(n)||!Object.hasOwn(u.fields.shape??{},o)?!1:i.writes?.includes(o)??!1}function K(r,t,s,o,i){if(!o.has(i.record))return;let e=r.seenBy(t).graph.getNode(i.record);if(!e||!i.acts.some(c=>{let l=k(s,c);if(!l||!A(r,l,i.record,i.field))return!1;let a=r.allMutations().find(d=>d.name===l.act).subject;return r.permits({name:l.act,args:{[a.arg]:i.record}},t).ok}))return;let u=e[i.field];return typeof u=="string"?u:typeof u=="number"&&Number.isFinite(u)?String(u):void 0}export{D as a,V as b,z as c,I as d,H as e,B as f,C as g,J as h,E as i,A as j,K as k};
1
+ import{b as T,c as m,d as k}from"./chunk.VUE6ILQV.js";import{b as v,d as w,e as P,f as M,g as N}from"./chunk.M5FP4Y4Q.js";var j=new Set(["input","select","textarea"]),g=r=>r.namespaceURI==="http://www.w3.org/1999/xhtml"&&j.has(r.localName),R=r=>r.localName==="select"||r.type==="checkbox"||r.type==="radio",S=r=>r.type==="checkbox"||r.type==="radio"?!r.checked:r.localName!=="select"&&r.value==="";function y(r){return r.type==="checkbox"||r.type==="radio"?`checked:${r.checked}`:r.localName==="select"&&r.multiple?`selected:${[...r.selectedOptions].map(t=>t.value).join("\0")}`:`value:${r.value}`}function D(r=t=>t.isTrusted){let t=new WeakMap,s=new WeakSet,o=new WeakMap,i={heard(e,n){if(!(!g(n)||!r(e))&&(e.type==="input"||e.type==="change"&&R(n))&&((R(n)||S(n))&&s.delete(n),S(n)&&o.delete(n),t.set(n,y(n)),n.type==="radio"&&n.name)){let u=n.getRootNode();for(let c of u.querySelectorAll?.('input[type="radio"]')??[])c.name===n.name&&t.set(c,y(c))}},filled(e){t.delete(e),o.delete(e),g(e)&&!S(e)?s.add(e):s.delete(e)},press(e,n,u){if(!r(e))return;let c=n.closest("[data-act]");if(!c||!w(c))return;let l=e.type==="keydown"?e.key:void 0;if(!(e.type!=="click"&&!((l==="Enter"||l===" ")&&n===c&&!v(c))))return i.collect(c,u)},collect(e,n){if(!e.hasAttribute("data-act")||!n.contains(e))return;let u=e.closest("[data-record]"),c=e.closest("fieldset, [role='group']")??n,l=[];for(let a of c.querySelectorAll("input[name], select[name], textarea[name]")){let d=a,f=!s.has(d)&&t.get(d)===y(d);if(d.type==="radio"){if(!d.checked)continue;l.push({name:d.name,value:d.value,typed:f,empty:!1,chosen:!0});continue}if(d.localName==="select"){l.push({name:d.name,value:d.value,typed:f,empty:d.value===""&&!f,chosen:!0});continue}if(d.type==="checkbox"){l.push({name:d.name,value:d.checked,typed:f,empty:!d.checked&&!s.has(d)&&!f});continue}let O=(d.type==="number"||d.type==="range")&&d.value!==""&&Number.isFinite(d.valueAsNumber)?d.valueAsNumber:d.value,x=f?o.get(d):void 0;l.push({name:d.name,value:O,typed:f,empty:d.value===""&&!f,...x?{from:x}:{}})}return{as:e.getAttribute("data-act")??"",...u&&n.contains(u)?{record:u.getAttribute("data-record")}:{},fields:l}},prefilled(e,n){s.delete(e),o.set(e,n),t.set(e,y(e))}};return i}var b=new WeakMap,L=(r,t)=>{t.tab&&r.removeAttribute("tabindex"),t.role&&r.getAttribute("role")==="button"&&r.removeAttribute("role"),r.removeAttribute("data-graview-press"),b.delete(r)};function V(r){for(let t of r.querySelectorAll("[data-act], [data-graview-press], [role], [aria-pressed], [aria-expanded]")){let s=b.get(t),o=w(t)&&!v(t)&&!g(t),i=!o&&P(t,s?.role?null:t.getAttribute("role"));if(s&&(s.bound!==o||!(o||i))&&L(t,s),(o||i)&&!b.has(t)){let e=!M(t),n=o&&N(t);e&&t.setAttribute("tabindex","0"),n&&t.setAttribute("role","button"),t.setAttribute("data-graview-press",""),b.set(t,{tab:e,role:n,bound:o})}}}var h=new WeakSet;function z(r){for(let t of r.querySelectorAll("svg")){let s=t.hasAttribute("role")||t.hasAttribute("aria-label")||t.hasAttribute("aria-labelledby")||[...t.children].some(e=>e.localName==="title"),o=t.hasAttribute("tabindex")||t.hasAttribute("data-graview-link")||t.hasAttribute("data-graview-press")||t.querySelector("[tabindex], [data-graview-link], [data-graview-press], a")!==null,i=!s&&!o;i&&!h.has(t)&&!t.hasAttribute("aria-hidden")?(t.setAttribute("aria-hidden","true"),h.add(t)):!i&&h.has(t)&&(t.removeAttribute("aria-hidden"),h.delete(t))}}var I=1e3;function H(r){let t=r.getAttribute("data-debounce")?.trim(),s=t?Number(t):Number.NaN;return Number.isFinite(s)?Math.min(1e4,Math.max(250,Math.round(s))):I}function B(r){let t=r.trusted??(e=>e.isTrusted),s=r.timers??{set:(e,n)=>setTimeout(e,n),clear:e=>clearTimeout(e)},o=new Map,i=(e,n)=>{let u=o.get(e);u&&s.clear(u.handle),o.delete(e);let c=r.reader.collect(e,n);c&&r.save(c,e)};return{heard(e,n,u){if(!g(n)||!t(e)||!n.hasAttribute("data-act"))return;let c=n.getAttribute("data-save");if(e.type==="input"&&c==="input"){let l=o.get(n);l&&s.clear(l.handle),o.set(n,{root:u,handle:s.set(()=>i(n,u),H(n))})}else e.type==="change"&&(c==="change"||c==="input"&&o.has(n))&&i(n,u)},flush(){for(let[e,{root:n}]of[...o])i(e,n)},get waiting(){return o.size}}}var q=new Set(["text","search","email","url","tel","number"]);function C(r,t,s,o){for(let i of r.querySelectorAll("input[data-prefill], textarea[data-prefill]")){let e=i;if(s.has(e))continue;let n=e.getAttribute("data-prefill")??"";if(n===""||e.getAttribute("name")!==n||e.localName==="input"&&!q.has(e.type))continue;if(e.value!==""){s.add(e);continue}let c=[...(e.closest("fieldset, [role='group']")??r).querySelectorAll("[data-act]")],l=e.closest("[data-record]"),a=new Set(c.map(p=>p.closest("[data-record]")?.getAttribute("data-record")).filter(p=>typeof p=="string")),d=l&&r.contains(l)?l.getAttribute("data-record"):a.size===1?[...a][0]:void 0;if(!d)continue;let f=o({record:d,field:n,acts:c.map(p=>p.getAttribute("data-act")??"")});if(f!==void 0){if(e.value=f,s.add(e),e.value!==f){e.value="";continue}t.prefilled(e,{record:d,field:n,value:f})}}}function J(r,t,s,o){let i=k(t,o.as);if(!i)return m("undeclared",`This view may not ask for \u201C${o.as}\u201D: its manifest does not name it.`);let e=r.allMutations().find(a=>a.name===i.act);if(!e)return m("unknown-act","There is no act by that name here.");let n={};if(o.record!==void 0){let a=i.record??e.subject?.arg;if(!a)return m("unbound",`\u201C${o.as}\u201D is not done to a record.`);if(!s.has(o.record))return m("unbound","That press is bound to a record this view was not shown.");n[a]=o.record}for(let[a,d]of Object.entries(i.constants??{})){if(a in n)return m("malformed",`\u201C${a}\u201D is both the bound record and a constant.`);n[a]=d}let u=e.input?.shape??{},c=new Set(Object.keys(u)),l=new Set;for(let a of o.fields){if(!c.has(a.name)||a.name in n)continue;if(l.has(a.name))return m("malformed",`Two fields here are called \u201C${a.name}\u201D.`);l.add(a.name);let d=u[a.name];if(!a.chosen&&a.value===""&&!E(d,"")){a.typed&&a.from&&E(d,null)&&(n[a.name]=null);continue}if(a.typed&&a.chosen){let f=T(u[a.name])?.find(p=>String(p)===String(a.value));if(f!==void 0)n[a.name]=f;else if(typeof a.value=="string"&&s.has(a.value))n[a.name]=a.value;else return m("untyped",`\u201C${a.name}\u201D was a choice among the view's own words, not one this app declares, so it was not sent.`)}else{if(a.typed&&a.from&&!(o.record===a.from.record&&a.name===a.from.field&&A(r,i,a.from.record,a.from.field)))return m("untyped",`\u201C${a.name}\u201D was filled in from a record for an act that writes it back there, not for this one, so it was not sent.`);if(a.typed&&a.from&&String(a.value)===a.from.value)n[a.name]=r.graph.getNode(a.from.record)?.[a.name]??a.value;else if(a.typed)n[a.name]=a.value;else if(!a.empty)if(F(r,d,a.value,o.record!==void 0&&A(r,i,o.record,a.name)?o.record:void 0,a.name))n[a.name]=a.value;else return m("untyped",`\u201C${a.name}\u201D was filled in by the view, not typed by you, so it was not sent.`)}}return{ok:!0,name:i.act,args:n}}function E(r,t){let s=r?.safeParse;return typeof s=="function"?s.call(r,t).success:!1}function $(r){let t=r;for(let s=0;s<8&&t?._zod?.def;s+=1){let o=t._zod.def;if(o.type==="default"||o.type==="prefault"){let i=o.defaultValue;return{value:typeof i=="function"?i():i}}if(!("innerType"in o))return;t=o.innerType}}function F(r,t,s,o,i){if(!E(t,s))return!1;if(s===0||s===!1||s==="0")return!0;let e=$(t);if(e&&Object.is(e.value,s))return!0;if(o===void 0)return!1;let n=r.graph.getNode(o)?.[i];return n!=null&&String(n)===String(s)}function A(r,t,s,o){let i=r.allMutations().find(c=>c.name===t.act),e=i?.subject;if(!i||!e||(t.record??e.arg)!==e.arg||o===e.arg||Object.hasOwn(t.constants??{},o)||!Object.hasOwn(i.input.shape??{},o)||Object.keys(i.writesOther??{}).length>0)return!1;let n=r.graph.getNode(s)?.kind,u=n===void 0?void 0:r.schema.tryDefinition(n);return!u||e.kinds!=="*"&&!e.kinds.includes(n)||!Object.hasOwn(u.fields.shape??{},o)?!1:i.writes?.includes(o)??!1}function K(r,t,s,o,i){if(!o.has(i.record))return;let e=r.seenBy(t).graph.getNode(i.record);if(!e||!i.acts.some(c=>{let l=k(s,c);if(!l||!A(r,l,i.record,i.field))return!1;let a=r.allMutations().find(d=>d.name===l.act).subject;return r.permits({name:l.act,args:{[a.arg]:i.record}},t).ok}))return;let u=e[i.field];return typeof u=="string"?u:typeof u=="number"&&Number.isFinite(u)?String(u):void 0}export{D as a,V as b,z as c,I as d,H as e,B as f,C as g,J as h,E as i,A as j,K as k};
@@ -1,4 +1,4 @@
1
- import{a as Bt,b as Vt,c as We,d as Kt,h as Jt,i as ie,j as Yt,k as Gt}from"./chunk.F5756PXX.js";import{a as _t}from"./chunk.NCBUECIW.js";import{d as At}from"./chunk.YIDNZTON.js";import{c as Nt}from"./chunk.QILGAV7H.js";import{A as It,C as zt,J as jt,K as Wt,i as Mt,j as Tt,u as Ot,v as Ut,z as Ht}from"./chunk.PYGNO2AV.js";import{c as Qr}from"./chunk.3HFBHLXC.js";import{G as H,P as Dt,T as Ft,Y as ae,ha as kt}from"./chunk.CUA7F3YJ.js";import{de as xt,ee as Et,fd as wt,fe as Pt,jd as St,pb as vt,qa as be,ve as Ct,we as $t,xe as Lt,yd as bt}from"./chunk.IUVRJDL3.js";import{b as F}from"./chunk.AJZBJBMO.js";function Zr(e,t){return xt(e,t).slice(1)}function xe(e,t){return e.kinds.find(r=>Zr(e,r)===t)}function _n(e,t,r){return Et(e,t,r)}function Nn(e,t){return Pt(e,t)}var le=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,Ee=/^[\\/]{2}/;function Xt(e,t){return t+e.replace(/\\/g,"/")}var Qt="popstate";function Pe(e){return typeof e=="object"&&e!=null&&"pathname"in e&&"search"in e&&"hash"in e&&"state"in e&&"key"in e}function qt(e={}){let{initialEntries:t=["/"],initialIndex:r,v5Compat:a=!1}=e,n;n=t.map((c,g)=>d(c,typeof c=="string"?null:c.state,g===0?"default":void 0,typeof c=="string"?void 0:c.mask));let i=s(r??n.length-1),o="POP",l=null;function s(c){return Math.min(Math.max(c,0),n.length-1)}function u(){return n[i]}function d(c,g=null,h,v){let y=Ce(n?u().pathname:"/",c,g,h,v);return k(y.pathname.charAt(0)==="/",`relative pathnames are not supported in memory history: ${JSON.stringify(c)}`),y}function f(c){return typeof c=="string"?c:z(c)}return{get index(){return i},get action(){return o},get location(){return u()},createHref:f,createURL(c){return new URL(f(c),"http://localhost")},encodeLocation(c){let g=typeof c=="string"?j(c):c;return{pathname:g.pathname||"",search:g.search||"",hash:g.hash||""}},push(c,g){o="PUSH";let h=Pe(c)?c:d(c,g);i+=1,n.splice(i,n.length,h),a&&l&&l({action:o,location:h,delta:1})},replace(c,g){o="REPLACE";let h=Pe(c)?c:d(c,g);n[i]=h,a&&l&&l({action:o,location:h,delta:0})},go(c){o="POP";let g=s(i+c),h=n[g];i=g,l&&l({action:o,location:h,delta:c})},listen(c){return l=c,()=>{l=null}}}}function er(e={}){function t(a,n){let i=n.state?.masked,{pathname:o,search:l,hash:s}=i||a.location;return Ce("",{pathname:o,search:l,hash:s},n.state&&n.state.usr||null,n.state&&n.state.key||"default",i?{pathname:a.location.pathname,search:a.location.search,hash:a.location.hash}:void 0)}function r(a,n){return typeof n=="string"?n:z(n)}return ea(t,r,null,e)}function $(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function k(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function qr(){return Math.random().toString(36).substring(2,10)}function Zt(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function Ce(e,t,r=null,a,n){return{pathname:typeof e=="string"?e:e.pathname,search:"",hash:"",...typeof t=="string"?j(t):t,state:r,key:t&&t.key||a||qr(),mask:n}}function z({pathname:e="/",search:t="",hash:r=""}){return t&&t!=="?"&&(e+=t.charAt(0)==="?"?t:"?"+t),r&&r!=="#"&&(e+=r.charAt(0)==="#"?r:"#"+r),e}function j(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substring(r),e=e.substring(0,r));let a=e.indexOf("?");a>=0&&(t.search=e.substring(a),e=e.substring(0,a)),e&&(t.pathname=e)}return t}function ea(e,t,r,a={}){let{window:n=document.defaultView,v5Compat:i=!1}=a,o=n.history,l="POP",s=null,u=d();u==null&&(u=0,o.replaceState({...o.state,idx:u},""));function d(){return(o.state||{idx:null}).idx}function f(){l="POP";let y=d(),R=y==null?null:y-u;u=y,s&&s({action:l,location:v.location,delta:R})}function c(y,R){l="PUSH";let E=Pe(y)?y:Ce(v.location,y,R);r&&r(E,y),u=d()+1;let P=Zt(E,u),C=v.createHref(E.mask||E);try{o.pushState(P,"",C)}catch(b){if(b instanceof DOMException&&b.name==="DataCloneError")throw b;n.location.assign(C)}i&&s&&s({action:l,location:v.location,delta:1})}function g(y,R){l="REPLACE";let E=Pe(y)?y:Ce(v.location,y,R);r&&r(E,y),u=d();let P=Zt(E,u),C=v.createHref(E.mask||E);o.replaceState(P,"",C),i&&s&&s({action:l,location:v.location,delta:0})}function h(y){return ta(n,y)}let v={get action(){return l},get location(){return e(n,o)},listen(y){if(s)throw new Error("A history only accepts one active listener");return n.addEventListener(Qt,f),s=y,()=>{n.removeEventListener(Qt,f),s=null}},createHref(y){return t(n,y)},createURL:h,encodeLocation(y){let R=h(y);return{pathname:R.pathname,search:R.search,hash:R.hash}},push:c,replace:g,go(y){return o.go(y)}};return v}function ta(e,t,r=!1){let a="http://localhost";e&&(a=e.location.origin!=="null"?e.location.origin:e.location.href),$(a,"No window.location.(origin|href) available to create URL");let n=typeof t=="string"?t:z(t);return n=n.replace(/ $/,"%20"),!r&&Ee.test(n)&&(n=a+n),new URL(n,a)}var ra=F(H(),1);function ar(e,t,r="/"){return aa(e,t,r,!1)}function aa(e,t,r,a,n){let i=O((typeof t=="string"?j(t):t).pathname||"/",r);if(i==null)return null;let o=n??na(e),l=null,s=ur(i);for(let u=0;l==null&&u<o.length;++u)l=ga(o[u],s,a);return l}function nr(e,t){let{route:r,pathname:a,params:n}=e;return{id:r.id,pathname:a,params:n,loaderData:t[r.id],handle:r.handle}}function na(e){let t=or(e);return oa(t),t}function or(e,t=[],r=[],a="",n=!1){let i=(o,l,s=n,u)=>{let d={relativePath:u===void 0?o.path||"":u,caseSensitive:o.caseSensitive===!0,childrenIndex:l,route:o};if(d.relativePath.startsWith("/")){if(!d.relativePath.startsWith(a)&&s)return;$(d.relativePath.startsWith(a),`Absolute route path "${d.relativePath}" nested under path "${a}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),d.relativePath=d.relativePath.slice(a.length)}let f=A([a,d.relativePath]),c=r.concat(d);o.children&&o.children.length>0&&($(o.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${f}".`),or(o.children,t,c,f,s)),!(o.path==null&&!o.index)&&t.push({path:f,score:ma(f,o.index),routesMeta:c.map((g,h)=>{let[v,y]=sr(g.relativePath,g.caseSensitive,h===c.length-1);return{...g,matcher:v,compiledParams:y}})})};return e.forEach((o,l)=>{if(o.path===""||!o.path?.includes("?"))i(o,l);else for(let s of ir(o.path))i(o,l,!0,s)}),t}function ir(e){let t=e.split("/");if(t.length===0)return[];let[r,...a]=t,n=r.endsWith("?"),i=r.replace(/\?$/,"");if(a.length===0)return n?[i,""]:[i];let o=ir(a.join("/")),l=[];return l.push(...o.map(s=>s===""?i:[i,s].join("/"))),n&&l.push(...o),l.map(s=>e.startsWith("/")&&s===""?"/":s)}function oa(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:pa(t.routesMeta.map(a=>a.childrenIndex),r.routesMeta.map(a=>a.childrenIndex)))}var ia=/^:[\w-]+$/,la=/^:[\w-]+/,sa=3.5,ua=3,ca=2,da=1,fa=10,ha=-2,tr=e=>e==="*";function ma(e,t){let r=e.split("/"),a=r.length;return r.some(tr)&&(a+=ha),t&&(a+=ca),r.filter(n=>!tr(n)).reduce((n,i)=>n+(ia.test(i)?ua:la.test(i)?sa:i===""?da:fa),a)}function pa(e,t){return e.length===t.length&&e.slice(0,-1).every((r,a)=>r===t[a])?e[e.length-1]-t[t.length-1]:0}function ga(e,t,r=!1){let{routesMeta:a}=e,n={},i="/",o=[];for(let l=0;l<a.length;++l){let s=a[l],u=l===a.length-1,d=i==="/"?t:t.slice(i.length)||"/",f={path:s.relativePath,caseSensitive:s.caseSensitive,end:u},c=s.matcher&&s.compiledParams?lr(f,d,s.matcher,s.compiledParams):ne(f,d),g=s.route;if(!c&&u&&r&&!a[a.length-1].route.index&&(c=ne({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},d)),!c)return null;Object.assign(n,c.params),o.push({params:n,pathname:A([i,c.pathname]),pathnameBase:va(A([i,c.pathnameBase])),route:g}),c.pathnameBase!=="/"&&(i=A([i,c.pathnameBase]))}return o}function ne(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[r,a]=sr(e.path,e.caseSensitive,e.end);return lr(e,t,r,a)}function lr(e,t,r,a){let n=t.match(r);if(!n)return null;let i=n[0],o=$e(i,1),l=n.slice(1);return{params:a.reduce((s,{paramName:u,isOptional:d},f)=>{if(u==="*"){let g=l[f]||"";o=$e(i.slice(0,i.length-g.length),1)}let c=l[f];return d&&!c?s[u]=void 0:s[u]=(c||"").replace(/%2F/g,"/"),s},{}),pathname:i,pathnameBase:o,pattern:e}}function sr(e,t=!1,r=!0){k(e==="*"||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let a=[],n="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(i,o,l,s,u)=>{if(a.push({paramName:o,isOptional:l!=null}),l){let d=u.charAt(s+i.length);return d&&d!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/((?:[^/?()[\]*^\\]|\\.)+)\?(?=\/|$|\()/g,"(?:/$1)?");return e.endsWith("*")?(a.push({paramName:"*"}),n+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?n+="\\/*$":e!==""&&e!=="/"&&(n+="(?:(?=\\/|$))"),[new RegExp(n,t?void 0:"i"),a]}function ur(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return k(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function O(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,a=e.charAt(r);return a&&a!=="/"?null:e.slice(r)||"/"}function ya(e,t="/"){let{pathname:r,search:a="",hash:n=""}=typeof e=="string"?j(e):e,i;return r?(r=cr(r),r.startsWith("/")||r.startsWith("\\")?i=rr(r.substring(1),"/"):i=rr(r,t)):i=t,{pathname:i,search:wa(a),hash:Sa(n)}}function rr(e,t){let r=$e(t).split("/");return e.split("/").forEach(a=>{a===".."?r.length>1&&r.pop():a!=="."&&r.push(a)}),r.length>1?r.join("/"):"/"}function Be(e,t,r,a){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(a)}]. Please separate it out to the \`to.${r}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function Ra(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function se(e){let t=Ra(e);return t.map((r,a)=>a===t.length-1?r.pathname:r.pathnameBase)}function Q(e,t,r,a=!1){let n;typeof e=="string"?n=j(e):(n={...e},$(!n.pathname||!n.pathname.includes("?"),Be("?","pathname","search",n)),$(!n.pathname||!n.pathname.includes("#"),Be("#","pathname","hash",n)),$(!n.search||!n.search.includes("#"),Be("#","search","hash",n)));let i=e===""||n.pathname==="",o=i?"/":n.pathname,l;if(o==null)l=r;else{let f=t.length-1;if(!a&&o.startsWith("..")){let c=o.split("/");for(;c[0]==="..";)c.shift(),f-=1;n.pathname=c.join("/")}l=f>=0?t[f]:"/"}let s=ya(n,l),u=o&&o!=="/"&&o.endsWith("/"),d=(i||o===".")&&r.endsWith("/");return!s.pathname.endsWith("/")&&(u||d)&&(s.pathname+="/"),s}var cr=e=>e.replace(/[\\/]{2,}/g,"/"),A=e=>cr(e.join("/"));function $e(e,t=0){let r=e.length;for(;r>t&&e.charCodeAt(r-1)===47;)r--;return r===e.length?e:e.slice(0,r)}var va=e=>$e(e).replace(/^\/*/,"/"),wa=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Sa=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;var Ve=class{status;statusText;data;error;internal;constructor(e,t,r,a=!1){this.status=e,this.statusText=t||"",this.internal=a,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}};function dr(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}function Ke(e){return A(e.map(t=>t.route.path).filter(Boolean))||"/"}var Je=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function Le(e,t){let r=e;if(typeof r!="string"||!le.test(r))return{absoluteURL:void 0,isExternal:!1,to:r};let a=r,n=!1;if(Je)try{let i=new URL(window.location.href),o=Ee.test(r)?new URL(Xt(r,i.protocol)):new URL(r),l=O(o.pathname,t);o.origin===i.origin&&l!=null?r=l+o.search+o.hash:n=!0}catch{k(!1,`<Link to="${r}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:a,isExternal:n,to:r}}var fr=new URL("http://localhost");function ue(e){if(e.createURL)return e.createURL("/");try{return new URL(e.createHref("/"),fr)}catch{return fr}}function Ye(e,t){return e.origin===t.origin&&(e.origin!=="null"||e.protocol===t.protocol&&e.host===t.host)}function ba(e,t){if(e.startsWith("//"))return!0;let r=t.protocol.toLowerCase();return e.toLowerCase().startsWith(r)?t.host===""||e.slice(r.length).startsWith("//"):!1}function ce(e,t,r,a){let n=null;try{n=e==null?null:new URL(e,r)}catch{}let i=new URL(t,r),o=n!=null&&!Ye(n,r),l=!Ye(i,r);if(a==="reject"){if(o||l)throw new Error("External navigation is not allowed")}else if(l&&(n==null||!ba(e,n)||!Ye(n,i)))throw new Error("External navigation is not allowed")}var hr=["POST","PUT","PATCH","DELETE"],Vn=new Set(hr),xa=["GET",...hr],Kn=new Set(xa);var Jn=Symbol("ResetLoaderData");var Ea=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];function mr(e){try{return Ea.includes(new URL(e).protocol)}catch{return!1}}var M=F(H(),1);var Z=M.createContext(null);Z.displayName="DataRouter";var De=M.createContext(null);De.displayName="DataRouterState";var Fe=M.createContext(null);Fe.displayName="DataRouterData";var oe=M.createContext(null);oe.displayName="DataRouterNavigation";var Ge=M.createContext(!1);function Xe(){return M.useContext(Ge)}var ke=M.createContext({isTransitioning:!1});ke.displayName="ViewTransition";var Qe=M.createContext(null);Qe.displayName="Fetchers";var Ze=M.createContext(null);Ze.displayName="Await";var _=M.createContext(null);_.displayName="Navigation";var J=M.createContext(null);J.displayName="Location";var I=M.createContext({outlet:null,matches:[],isDataRoute:!1});I.displayName="Route";var de=M.createContext(!1);de.displayName="IsDataRoute";var fe=M.createContext(void 0);fe.displayName="RouteId";var Me=M.createContext(null);Me.displayName="RouteError";var pr="REACT_ROUTER_ERROR",Pa="REDIRECT",Ca="ROUTE_ERROR_RESPONSE";function gr(e){if(e.startsWith(`${pr}:${Pa}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.location=="string"&&typeof t.reloadDocument=="boolean"&&typeof t.replace=="boolean")return t}catch{}}function yr(e){if(e.startsWith(`${pr}:${Ca}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string")return new Ve(t.status,t.statusText,t.data)}catch{}}var m=F(H(),1);function he(e,{relative:t}={}){$(Y(),"useHref() may be used only in the context of a <Router> component.");let{basename:r,navigator:a}=m.useContext(_),{hash:n,pathname:i,search:o}=q(e,{relative:t}),l=i;return r!=="/"&&(l=i==="/"?r:A([r,i])),a.createHref({pathname:l,search:o,hash:n})}function Y(){return m.useContext(J)!=null}function D(){return $(Y(),"useLocation() may be used only in the context of a <Router> component."),m.useContext(J).location}function $a(){return m.useContext(J).navigationType}var vr="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function V(){return m.useContext(de)?Na():La()}function La(){$(Y(),"useNavigate() may be used only in the context of a <Router> component.");let e=m.useContext(Z),{basename:t,navigator:r}=m.useContext(_),{matches:a}=m.useContext(I),{pathname:n}=D(),i=JSON.stringify(se(a)),o=m.useRef(!1);return m.useLayoutEffect(()=>{o.current=!0}),m.useCallback((l,s={})=>{if(k(o.current,vr),!o.current)return;if(typeof l=="number"){r.go(l);return}let u=Q(l,JSON.parse(i),n,s.relative==="path");e==null&&t!=="/"&&(u.pathname=u.pathname==="/"?t:A([t,u.pathname])),ce(typeof l=="string"?l:z(l),r.createHref(u),ue(r),"reject"),(s.replace?r.replace:r.push)(u,s.state,s)},[t,r,i,n,e])}var oo=m.createContext(null);function wr(){let{matches:e}=m.useContext(I);return e[e.length-1]?.params??{}}function q(e,{relative:t}={}){let{matches:r}=m.useContext(I),{pathname:a}=D(),n=JSON.stringify(se(r));return m.useMemo(()=>Q(e,JSON.parse(n),a,t==="path"),[e,n,a,t])}function et(e,t){return tt(e,t)}function tt(e,t,r){$(Y(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:a}=m.useContext(_),{matches:n}=m.useContext(I),i=n[n.length-1],o=i?i.params:{};i&&i.pathname;let l=i?i.pathnameBase:"/";i&&i.route;let s=D(),u;if(t){let h=typeof t=="string"?j(t):t;$(l==="/"||h.pathname?.startsWith(l),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${l}" but pathname "${h.pathname}" was given in the \`location\` prop.`),u=h}else u=s;let d=u.pathname||"/",f=d;if(l!=="/"){let h=l.replace(/^\//,"").split("/");f="/"+d.replace(/^\//,"").split("/").slice(h.length).join("/")}let c;r?r.state.matches.length?c=r.state.matches.map(h=>Object.assign(h,{route:r.manifest[h.route.id]||h.route})):c=r.router.match(r.state.location):c=ar(e,{pathname:f});let g=Sr(c&&c.map(h=>Object.assign({},h,{params:Object.assign({},o,h.params),pathname:A([l,a.encodeLocation?a.encodeLocation(h.pathname.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:h.pathname]),pathnameBase:h.pathnameBase==="/"?l:A([l,a.encodeLocation?a.encodeLocation(h.pathnameBase.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:h.pathnameBase])})),n,r);return t&&g?m.createElement(J.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",mask:void 0,...u},navigationType:"POP"}},g):g}function Da(){let e=at(),t=dr(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null;return m.createElement(m.Fragment,null,m.createElement("h2",null,"Unexpected Application Error!"),m.createElement("h3",{style:{fontStyle:"italic"}},t),r?m.createElement("pre",{style:{padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"}},r):null,null)}var Fa=m.createElement(Da,null),ka=class extends m.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static contextType=Ge;static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&typeof e=="object"&&e&&"digest"in e&&typeof e.digest=="string"){let r=yr(e.digest);r&&(e=r)}let t=e!==void 0?m.createElement(I.Provider,{value:this.props.routeContext},m.createElement(de.Provider,{value:this.props.routeContext.isDataRoute},m.createElement(fe.Provider,{value:this.props.routeContext.matches[this.props.routeContext.matches.length-1]?.route.id},m.createElement(Me.Provider,{value:e,children:this.props.component})))):this.props.children;return this.context?m.createElement(Ma,{error:e},t):t}},qe=new WeakMap;function Ma({children:e,error:t}){let{basename:r,navigator:a}=m.useContext(_);if(typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){let n=gr(t.digest);if(n){let i=qe.get(t);if(i)throw i;let o=Le(n.location,r),l=o.absoluteURL||o.to;if(ce(n.location,l,ue(a),"allow-explicit"),mr(l))throw new Error("Invalid redirect location");if(Je&&!qe.get(t))if(o.isExternal||n.reloadDocument)window.location.href=l;else{let s=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(o.to,{replace:n.replace}));throw qe.set(t,s),s}return m.createElement("meta",{httpEquiv:"refresh",content:`0;url=${l}`})}}return e}function Ta({routeContext:e,match:t,children:r}){let a=m.useContext(Z);return a&&a.static&&a.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=t.route.id),m.createElement(I.Provider,{value:e},m.createElement(de.Provider,{value:e.isDataRoute},m.createElement(fe.Provider,{value:t.route.id},r)))}function Sr(e,t=[],r){let a=r?.state;if(e==null){if(!a)return null;if(a.errors)e=a.matches;else if(t.length===0&&!a.initialized&&a.matches.length>0)e=a.matches;else return null}let n=e,i=a?.errors;if(i!=null){let d=n.findIndex(f=>f.route.id&&i?.[f.route.id]!==void 0);$(d>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(i).join(",")}`),n=n.slice(0,Math.min(n.length,d+1))}let o=!1,l=-1;if(r&&a){o=a.renderFallback;for(let d=0;d<n.length;d++){let f=n[d];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(l=d),f.route.id){let{loaderData:c,errors:g}=a,h=f.route.loader&&!c.hasOwnProperty(f.route.id)&&(!g||g[f.route.id]===void 0);if(f.route.lazy||h){r.isStatic&&(o=!0),l>=0?n=n.slice(0,l+1):n=[n[0]];break}}}}let s=r?.onError,u=a&&s?(d,f)=>{s(d,{location:a.location,params:a.matches?.[0]?.params??{},pattern:Ke(a.matches),errorInfo:f})}:void 0;return n.reduceRight((d,f,c)=>{let g,h=!1,v=null,y=null;a&&(g=i&&f.route.id?i[f.route.id]:void 0,v=f.route.errorElement||Fa,o&&(l<0&&c===0?(Aa("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),h=!0,y=null):l===c&&(h=!0,y=f.route.hydrateFallbackElement||null)));let R=t.concat(n.slice(0,c+1)),E=()=>{let P;return g?P=v:h?P=y:f.route.Component?P=m.createElement(f.route.Component,null):f.route.element?P=f.route.element:P=d,m.createElement(Ta,{match:f,routeContext:{outlet:d,matches:R,isDataRoute:a!=null},children:P})};return a&&(f.route.ErrorBoundary||f.route.errorElement||c===0)?m.createElement(ka,{location:a.location,revalidation:a.revalidation,component:v,error:g,children:E(),routeContext:{outlet:null,matches:R,isDataRoute:!0},onError:u}):E()},null)}function Te(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function ee(e){let t=m.useContext(Z);return $(t,Te(e)),t}function me(e){let t=m.useContext(De);return $(t,Te(e)),t}function _e(e){let t=m.useContext(Fe);return $(t,Te(e)),t}function _a(e){let t=m.useContext(oe);return $(t,Te(e)),t}function Ne(e){let t=m.useContext(fe);return $(t,`${e} can only be used on routes that contain a unique "id"`),t}function rt(){let{navigation:e}=_a("useNavigation");return m.useMemo(()=>{let{matches:t,historyAction:r,...a}=e;return a},[e])}function pe(){let{matches:e}=me("useMatches"),{loaderData:t}=_e("useMatches");return m.useMemo(()=>e.map(r=>nr(r,t)),[e,t])}function at(){let e=m.useContext(Me),t=_e("useRouteError"),r=Ne("useRouteError");return e!==void 0?e:t.errors?.[r]}function Na(){let{router:e}=ee("useNavigate"),t=Ne("useNavigate"),r=m.useRef(!1);return m.useLayoutEffect(()=>{r.current=!0}),m.useCallback(async(a,n={})=>{k(r.current,vr),r.current&&(typeof a=="number"?await e.navigate(a):await e.navigate(a,{fromRouteId:t,...n}))},[e,t])}var Rr={};function Aa(e,t,r){!t&&!Rr[e]&&(Rr[e]=!0,k(!1,r))}var Oa={"&":"\\u0026",">":"\\u003e","<":"\\u003c","\u2028":"\\u2028","\u2029":"\\u2029"},Ua=/[&><\u2028\u2029]/g;function nt(e){return e.replace(Ua,t=>Oa[t])}function br(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}async function xr(e,t){if(e.id in t)return t[e.id];try{let r=await import(e.module);return t[e.id]=r,r}catch(r){if(console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(r),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode&&import.meta.hot)throw r;return window.location.reload(),new Promise(()=>{})}}function Er(e){return e!=null&&typeof e.page=="string"}function Ha(e){return e==null?!1:e.href==null?e.rel==="preload"&&typeof e.imageSrcSet=="string"&&typeof e.imageSizes=="string":typeof e.rel=="string"&&typeof e.href=="string"}async function Pr(e,t,r){return ja((await Promise.all(e.map(async a=>{let n=t.routes[a.route.id];if(n){let i=await xr(n,r);return i.links?i.links():[]}return[]}))).flat(1).filter(Ha).filter(a=>a.rel==="stylesheet"||a.rel==="preload").map(a=>a.rel==="stylesheet"?{...a,rel:"prefetch",as:"style"}:{...a,rel:"prefetch"}))}function ot(e,t,r,a,n,i){let o=(s,u)=>r[u]?s.route.id!==r[u].route.id:!0,l=(s,u)=>r[u].pathname!==s.pathname||r[u].route.path?.endsWith("*")&&r[u].params["*"]!==s.params["*"];return i==="assets"?t.filter((s,u)=>o(s,u)||l(s,u)):i==="data"?t.filter((s,u)=>{let d=a.routes[s.route.id];if(!d||!d.hasLoader)return!1;if(o(s,u)||l(s,u))return!0;if(s.route.shouldRevalidate){let f=s.route.shouldRevalidate({currentUrl:new URL(n.pathname+n.search+n.hash,window.origin),currentParams:r[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:s.params,defaultShouldRevalidate:!0});if(typeof f=="boolean")return f}return!0}):[]}function Cr(e,t,{includeHydrateFallback:r}={}){return Ia(e.map(a=>{let n=t.routes[a.route.id];if(!n)return[];let i=[n.module];return n.clientActionModule&&(i=i.concat(n.clientActionModule)),n.clientLoaderModule&&(i=i.concat(n.clientLoaderModule)),r&&n.hydrateFallbackModule&&(i=i.concat(n.hydrateFallbackModule)),n.imports&&(i=i.concat(n.imports)),i}).flat(1))}function Ia(e){return[...new Set(e)]}function za(e){let t={},r=Object.keys(e).sort();for(let a of r)t[a]=e[a];return t}function ja(e,t){let r=new Set,a=new Set(t);return e.reduce((n,i)=>{if(t&&!Er(i)&&i.as==="script"&&i.href&&a.has(i.href))return n;let o=JSON.stringify(za(i));return r.has(o)||(r.add(o),n.push({key:o,link:i})),n},[])}var it=F(H(),1);var mo=Symbol("SingleFetchRedirect");function lt(e,t,r){let a=typeof e=="string"?new URL(e,r??(typeof window>"u"?"server://singlefetch/":window.location.origin)):new URL(e);return r&&a.origin!==r&&(a=new URL(a.pathname+a.search+a.hash,r)),a.pathname.endsWith("/")?a.pathname=`${a.pathname}_.${t}`:a.pathname=`${a.pathname}.${t}`,a}var S=F(H(),1);var te=S.createContext(void 0);te.displayName="FrameworkContext";function Ae(){let e=S.useContext(te);return br(e,"You must render this element inside a <HydratedRouter> element"),e}function $r(e,t){let r=S.useContext(te),[a,n]=S.useState(!1),[i,o]=S.useState(!1),{onFocus:l,onBlur:s,onMouseEnter:u,onMouseLeave:d,onTouchStart:f}=t,c=S.useRef(null);S.useEffect(()=>{if(e==="render"&&o(!0),e==="viewport"){let v=R=>{R.forEach(E=>{o(E.isIntersecting)})},y=new IntersectionObserver(v,{threshold:.5});return c.current&&y.observe(c.current),()=>{y.disconnect()}}},[e]),S.useEffect(()=>{if(a){let v=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(v)}}},[a]);let g=()=>{n(!0)},h=()=>{n(!1),o(!1)};return r?e!=="intent"?[i,c,{}]:[i,c,{onFocus:ge(l,g),onBlur:ge(s,h),onMouseEnter:ge(u,g),onMouseLeave:ge(d,h),onTouchStart:ge(f,g)}]:[!1,c,{}]}function ge(e,t){return r=>{e&&e(r),r.defaultPrevented||t(r)}}function Lr({page:e,...t}){let r=Xe(),{nonce:a}=Ae(),{router:n}=ee("PrefetchPageLinks"),i=S.useMemo(()=>n.match(e),[n,n.routes,e]);return i?(t.nonce==null&&a&&(t={...t,nonce:a}),r?S.createElement(Ba,{page:e,matches:i,...t}):S.createElement(Va,{page:e,matches:i,...t})):null}function Wa(e){let{manifest:t,routeModules:r}=Ae(),[a,n]=S.useState([]);return S.useEffect(()=>{let i=!1;return Pr(e,t,r).then(o=>{i||n(o)}),()=>{i=!0}},[e,t,r]),a}function Ba({page:e,matches:t,...r}){let a=D(),{unstable_apiServerOrigin:n}=Ae(),i=S.useMemo(()=>{if(e===a.pathname+a.search+a.hash)return[];let o=lt(e,"rsc",n),l=!1,s=[];for(let u of t)typeof u.route.shouldRevalidate=="function"?l=!0:s.push(u.route.id);return l&&s.length>0&&o.searchParams.set("_routes",s.join(",")),[n?o.toString():o.pathname+o.search]},[e,a,t,n]);return S.createElement(S.Fragment,null,i.map(o=>S.createElement("link",{key:o,rel:"prefetch",as:"fetch",href:o,...r})))}function Va({page:e,matches:t,...r}){let a=D(),{manifest:n,routeModules:i,unstable_apiServerOrigin:o}=Ae(),{matches:l}=me("PrefetchPageLinks"),{loaderData:s}=_e("PrefetchPageLinks"),u=S.useMemo(()=>ot(e,t,l,n,a,"data"),[e,t,l,n,a]),d=S.useMemo(()=>ot(e,t,l,n,a,"assets"),[e,t,l,n,a]),f=S.useMemo(()=>{if(e===a.pathname+a.search+a.hash)return[];let h=new Set,v=!1;if(t.forEach(R=>{let E=n.routes[R.route.id];!E||!E.hasLoader||(!u.some(P=>P.route.id===R.route.id)&&R.route.id in s&&i[R.route.id]?.shouldRevalidate||E.hasClientLoader?v=!0:h.add(R.route.id))}),h.size===0)return[];let y=lt(e,"data",o);return v&&h.size>0&&y.searchParams.set("_routes",t.filter(R=>h.has(R.route.id)).map(R=>R.route.id).join(",")),[o?y.toString():y.pathname+y.search]},[s,a,n,u,t,e,i,o]),c=S.useMemo(()=>Cr(d,n),[d,n]),g=Wa(d);return S.createElement(S.Fragment,null,f.map(h=>S.createElement("link",{key:h,rel:"prefetch",as:"fetch",href:h,...r})),c.map(h=>S.createElement("link",{key:h,rel:"modulepreload",href:h,...r})),g.map(({key:h,link:v})=>S.createElement("link",{key:h,nonce:r.nonce,...v,crossOrigin:v.crossOrigin??r.crossOrigin})))}function Dr(...e){return t=>{e.forEach(r=>{typeof r=="function"?r(t):r!=null&&(r.current=t)})}}var w=F(H(),1),Qa=F(H(),1);var Do=w.memo(Za);function Za({routes:e,manifest:t,state:r,isStatic:a,onError:n}){let i=w.useContext(Z);$(i,"You must render this element inside a <DataRouterContext.Provider> element");let o=w.useContext(te)?.routeDiscoveryRuntime;return w.useEffect(()=>{r.initialized&&o?.markReady()},[r.initialized,o]),tt(e,void 0,{router:i.router,manifest:t,state:r,isStatic:a,onError:n})}function qa({basename:e,children:t,initialEntries:r,initialIndex:a,useTransitions:n}){let i=w.useRef(null);i.current==null&&(i.current=qt({initialEntries:r,initialIndex:a,v5Compat:!0}));let o=i.current,[l,s]=w.useState({action:o.action,location:o.location}),u=w.useCallback(d=>{n===!1?s(d):w.startTransition(()=>s(d))},[n]);return w.useLayoutEffect(()=>o.listen(u),[o,u]),w.createElement(ye,{basename:e,children:t,location:l.location,navigationType:l.action,navigator:o,useTransitions:n})}function en({to:e,replace:t,state:r,relative:a}){$(Y(),"<Navigate> may be used only in the context of a <Router> component.");let{static:n,navigator:i}=w.useContext(_);k(!n,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:o}=w.useContext(I),{pathname:l}=D(),s=V(),u=Q(e,se(o),l,a==="path");ce(typeof e=="string"?e:z(e),i.createHref(u),ue(i),"reject");let d=JSON.stringify(u);return w.useEffect(()=>{s(JSON.parse(d),{replace:t,state:r,relative:a})},[s,d,a,t,r]),null}function Fr(e){$(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function ye({basename:e="/",children:t=null,location:r,navigationType:a="POP",navigator:n,static:i=!1,useTransitions:o}){$(!Y(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let l=e.replace(/^\/*/,"/"),s=w.useMemo(()=>({basename:l,navigator:n,static:i,useTransitions:o,future:{}}),[l,n,i,o]);typeof r=="string"&&(r=j(r));let{pathname:u="/",search:d="",hash:f="",state:c=null,key:g="default",mask:h}=r,v=w.useMemo(()=>{let y=O(u,l);return y==null?null:{location:{pathname:y,search:d,hash:f,state:c,key:g,mask:h},navigationType:a}},[l,u,d,f,c,g,a,h]);return k(v!=null,`<Router basename="${l}"> is not able to match the URL "${u}${d}${f}" because it does not start with the basename, so the <Router> won't render anything.`),v==null?null:w.createElement(_.Provider,{value:s},w.createElement(J.Provider,{children:t,value:v}))}function tn({children:e,location:t}){return et(Oe(e),t)}function Oe(e,t=[]){let r=[];return w.Children.forEach(e,(a,n)=>{if(!w.isValidElement(a))return;let i=[...t,n];if(a.type===w.Fragment){r.push.apply(r,Oe(a.props.children,i));return}$(a.type===Fr,`[${typeof a.type=="string"?a.type:a.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`);let o=a.props;$(!o.index||!o.children,"An index route cannot have child routes.");let l={id:o.id||i.join("-"),caseSensitive:o.caseSensitive,element:o.element,Component:o.Component,index:o.index,path:o.path,middleware:o.middleware,loader:o.loader,action:o.action,hydrateFallbackElement:o.hydrateFallbackElement,HydrateFallback:o.HydrateFallback,errorElement:o.errorElement,ErrorBoundary:o.ErrorBoundary,shouldRevalidate:o.shouldRevalidate,handle:o.handle,lazy:o.lazy};o.children&&(l.children=Oe(o.children,i)),r.push(l)}),r}var He="application/x-www-form-urlencoded";function Ie(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement}function rn(e){return Ie(e)&&e.tagName.toLowerCase()==="button"}function an(e){return Ie(e)&&e.tagName.toLowerCase()==="form"}function nn(e){return Ie(e)&&e.tagName.toLowerCase()==="input"}function on(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function kr(e,t){return e.button===0&&(!t||t==="_self")&&!on(e)}function ze(e=""){return new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,r)=>{let a=e[r];return t.concat(Array.isArray(a)?a.map(n=>[r,n]):[[r,a]])},[]))}function Mr(e,t){let r=ze(e);return t&&t.forEach((a,n)=>{r.has(n)||t.getAll(n).forEach(i=>{r.append(n,i)})}),r}var Ue=null;function ln(){if(Ue===null)try{new FormData(document.createElement("form"),0),Ue=!1}catch{Ue=!0}return Ue}var sn=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function st(e){return e!=null&&!sn.has(e)?(k(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${He}"`),null):e}function Tr(e,t){let r,a,n,i,o;if(an(e)){let l=e.getAttribute("action");a=l?O(l,t):null,r=e.getAttribute("method")||"get",n=st(e.getAttribute("enctype"))||He,i=new FormData(e)}else if(rn(e)||nn(e)&&(e.type==="submit"||e.type==="image")){let l=e.form;if(l==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let s=e.getAttribute("formaction")||l.getAttribute("action");if(a=s?O(s,t):null,r=e.getAttribute("formmethod")||l.getAttribute("method")||"get",n=st(e.getAttribute("formenctype"))||st(l.getAttribute("enctype"))||He,i=new FormData(l,e),!ln()){let{name:u,type:d,value:f}=e;if(d==="image"){let c=u?`${u}.`:"";i.append(`${c}x`,"0"),i.append(`${c}y`,"0")}else u&&i.append(u,f)}}else{if(Ie(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r="get",a=null,n=He,o=e}return i&&n==="text/plain"&&(o=i,i=void 0),{action:a,method:r.toLowerCase(),encType:n,formData:i,body:o}}var p=F(H(),1);var dn=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{dn&&(window.__reactRouterVersion="8")}catch{}function fn({basename:e,children:t,useTransitions:r,window:a}){let n=p.useRef(null);n.current==null&&(n.current=er({window:a,v5Compat:!0}));let i=n.current,[o,l]=p.useState({action:i.action,location:i.location}),s=p.useCallback(u=>{r===!1?l(u):p.startTransition(()=>l(u))},[r]);return p.useLayoutEffect(()=>i.listen(s),[i,s]),p.createElement(ye,{basename:e,children:t,location:o.location,navigationType:o.action,navigator:i,useTransitions:r})}function _r({basename:e,children:t,history:r,useTransitions:a}){let[n,i]=p.useState({action:r.action,location:r.location}),o=p.useCallback(l=>{a===!1?i(l):p.startTransition(()=>i(l))},[a]);return p.useLayoutEffect(()=>r.listen(o),[r,o]),p.createElement(ye,{basename:e,children:t,location:n.location,navigationType:n.action,navigator:r,useTransitions:a})}_r.displayName="unstable_HistoryRouter";var Re=p.forwardRef(function({onClick:t,discover:r="render",prefetch:a="none",relative:n,reloadDocument:i,replace:o,mask:l,state:s,target:u,to:d,preventScrollReset:f,viewTransition:c,defaultShouldRevalidate:g,...h},v){let{basename:y,navigator:R,useTransitions:E}=p.useContext(_),P=typeof d=="string"&&le.test(d),C=Le(d,y);d=C.to;let b=he(d,{relative:n}),T=D(),L=null;if(l){let K=Q(l,[],T.mask?T.mask.pathname:"/",!0);y!=="/"&&(K.pathname=K.pathname==="/"?y:A([y,K.pathname])),L=R.createHref(K)}let[U,X,B]=$r(a,h),we=Ur(d,{replace:o,mask:l,state:s,target:u,preventScrollReset:f,relative:n,viewTransition:c,defaultShouldRevalidate:g,useTransitions:E});function re(K){t&&t(K),K.defaultPrevented||we(K)}let Se=!(C.isExternal||i),Rt=p.createElement("a",{...h,...B,href:(Se?L:void 0)||C.absoluteURL||b,onClick:Se?re:t,ref:Dr(v,X),target:u,"data-discover":!P&&r==="render"?"true":void 0});return U&&!P?p.createElement(p.Fragment,null,Rt,p.createElement(Lr,{page:b})):Rt});Re.displayName="Link";var Nr=p.forwardRef(function({"aria-current":t="page",caseSensitive:r=!1,className:a="",end:n=!1,style:i,to:o,viewTransition:l,children:s,...u},d){let f=q(o,{relative:u.relative}),c=D(),g=p.useContext(oe),{navigator:h,basename:v}=p.useContext(_),y=g!=null&&jr(f)&&l===!0,R=h.encodeLocation?h.encodeLocation(f).pathname:f.pathname,E=c.pathname,P=g?.navigation.location?g.navigation.location.pathname:null;r||(E=E.toLowerCase(),P=P?P.toLowerCase():null,R=R.toLowerCase()),P&&v&&(P=O(P,v)||P);let C=R!=="/"&&R.endsWith("/")?R.length-1:R.length,b=E===R||!n&&E.startsWith(R)&&E.charAt(C)==="/",T=P!=null&&(P===R||!n&&P.startsWith(R)&&P.charAt(C)==="/"),L={isActive:b,isPending:T,isTransitioning:y},U=b?t:void 0,X;typeof a=="function"?X=a(L):X=[a,b?"active":null,T?"pending":null,y?"transitioning":null].filter(Boolean).join(" ");let B=typeof i=="function"?i(L):i;return p.createElement(Re,{...u,"aria-current":U,className:X,ref:d,style:B,to:o,viewTransition:l},typeof s=="function"?s(L):s)});Nr.displayName="NavLink";var Ar=p.forwardRef(({discover:e="render",fetcherKey:t,navigate:r,reloadDocument:a,replace:n,state:i,method:o="get",action:l,onSubmit:s,relative:u,preventScrollReset:d,viewTransition:f,defaultShouldRevalidate:c,...g},h)=>{let{useTransitions:v}=p.useContext(_),y=Hr(),R=Ir(l,{relative:u}),E=o.toLowerCase()==="get"?"get":"post",P=typeof l=="string"&&le.test(l);return p.createElement("form",{ref:h,method:E,action:R,onSubmit:a?s:b=>{if(s&&s(b),b.defaultPrevented)return;b.preventDefault();let T=b.nativeEvent.submitter,L=T?.getAttribute("formmethod")||o,U=()=>y(T||b.currentTarget,{fetcherKey:t,method:L,navigate:r,replace:n,state:i,relative:u,preventScrollReset:d,viewTransition:f,defaultShouldRevalidate:c});v&&r!==!1?p.startTransition(()=>U()):U()},...g,"data-discover":!P&&e==="render"?"true":void 0})});Ar.displayName="Form";function Or({getKey:e,storageKey:t,...r}){let a=p.useContext(te),{basename:n}=p.useContext(_),i=D(),o=pe();zr({getKey:e,storageKey:t});let l=p.useMemo(()=>{if(!a||!e)return null;let u=ct(i,o,n,e);return u!==i.key?u:null},[]);if(!a||a.isSpaMode)return null;let s=((u,d)=>{if(!window.history.state||!window.history.state.key){let f=Math.random().toString(32).slice(2);window.history.replaceState({key:f},"")}try{let f=JSON.parse(sessionStorage.getItem(u)||"{}")[d||window.history.state.key];typeof f=="number"&&window.scrollTo(0,f)}catch(f){console.error(f),sessionStorage.removeItem(u)}}).toString();return r.nonce==null&&a?.nonce&&(r.nonce=a.nonce),p.createElement("script",{...r,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:`(${s})(${nt(JSON.stringify(t||ut))}, ${nt(JSON.stringify(l))})`}})}Or.displayName="ScrollRestoration";function Ur(e,{target:t,replace:r,mask:a,state:n,preventScrollReset:i,relative:o,viewTransition:l,defaultShouldRevalidate:s,useTransitions:u}={}){let d=V(),f=D(),c=q(e,{relative:o});return p.useCallback(g=>{if(kr(g,t)){g.preventDefault();let h=r!==void 0?r:z(f)===z(c),v=()=>d(e,{replace:h,mask:a,state:n,preventScrollReset:i,relative:o,viewTransition:l,defaultShouldRevalidate:s});u?p.startTransition(()=>v()):v()}},[f,d,c,r,a,n,t,e,i,o,l,s,u])}function dt(e){k(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=p.useRef(ze(e)),r=p.useRef(!1),a=D(),n=p.useMemo(()=>Mr(a.search,r.current?null:t.current),[a.search]),i=V();return[n,p.useCallback((o,l)=>{let s=ze(typeof o=="function"?o(new URLSearchParams(n)):o);r.current=!0,i("?"+s,l)},[i,n])]}var hn=0,mn=()=>`__${String(++hn)}__`;function Hr(){let{router:e}=ee("useSubmit"),{basename:t}=p.useContext(_),r=Ne("useSubmit"),a=e.fetch,n=e.navigate;return p.useCallback(async(i,o={})=>{let{action:l,method:s,encType:u,formData:d,body:f}=Tr(i,t);o.navigate===!1?await a(o.fetcherKey||mn(),r,o.action||l,{defaultShouldRevalidate:o.defaultShouldRevalidate,preventScrollReset:o.preventScrollReset,relative:o.relative,formData:d,body:f,formMethod:o.method||s,formEncType:o.encType||u,flushSync:o.flushSync}):await n(o.action||l,{defaultShouldRevalidate:o.defaultShouldRevalidate,preventScrollReset:o.preventScrollReset,relative:o.relative,formData:d,body:f,formMethod:o.method||s,formEncType:o.encType||u,replace:o.replace,state:o.state,fromRouteId:r,flushSync:o.flushSync,viewTransition:o.viewTransition})},[a,n,t,r])}function Ir(e,{relative:t}={}){let{basename:r}=p.useContext(_),a=p.useContext(I);$(a,"useFormAction must be used inside a RouteContext");let[n]=a.matches.slice(-1),i={...q(e||".",{relative:t})},o=D();if(e==null){i.search=o.search;let l=new URLSearchParams(i.search),s=l.getAll("index");if(s.some(u=>u==="")){l.delete("index"),s.filter(d=>d).forEach(d=>l.append("index",d));let u=l.toString();i.search=u?`?${u}`:""}}return(!e||e===".")&&n.route.index&&(i.search=i.search?i.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(i.pathname=i.pathname==="/"?r:A([r,i.pathname])),z(i)}var ut="react-router-scroll-positions",je={};function ct(e,t,r,a){let n=null;return a&&(r!=="/"?n=a({...e,pathname:O(e.pathname,r)||e.pathname},t):n=a(e,t)),n==null&&(n=e.key),n}function zr({getKey:e,storageKey:t}={}){let{router:r}=ee("useScrollRestoration"),{restoreScrollPosition:a,preventScrollReset:n}=me("useScrollRestoration"),{basename:i}=p.useContext(_),o=D(),l=pe(),s=rt();p.useEffect(()=>(window.history.scrollRestoration="manual",()=>{window.history.scrollRestoration="auto"}),[]),gn(p.useCallback(u=>{u.persisted&&(window.history.scrollRestoration="manual")},[])),pn(p.useCallback(()=>{if(s.state==="idle"){let u=ct(o,l,i,e);je[u]=window.scrollY}try{sessionStorage.setItem(t||ut,JSON.stringify(je))}catch(u){k(!1,`Failed to save scroll positions in sessionStorage, <ScrollRestoration /> will not work properly (${u}).`)}window.history.scrollRestoration="auto"},[s.state,e,i,o,l,t])),typeof document<"u"&&(p.useLayoutEffect(()=>{try{let u=sessionStorage.getItem(t||ut);u&&(je=JSON.parse(u))}catch{}},[t]),p.useLayoutEffect(()=>{let u=r?.enableScrollRestoration(je,()=>window.scrollY,e?(d,f)=>ct(d,f,i,e):void 0);return()=>u&&u()},[r,i,e]),p.useLayoutEffect(()=>{if(a!==!1){if(typeof a=="number"){window.scrollTo(0,a);return}try{if(o.hash){let u=document.getElementById(decodeURIComponent(o.hash.slice(1)));if(u){u.scrollIntoView();return}}}catch{k(!1,`"${o.hash.slice(1)}" is not a decodable element ID. The view will not scroll to it.`)}n!==!0&&window.scrollTo(0,0)}},[o,a,n]))}function pn(e,t){let{capture:r}=t||{};p.useEffect(()=>{let a=r!=null?{capture:r}:void 0;return window.addEventListener("pagehide",e,a),()=>{window.removeEventListener("pagehide",e,a)}},[e,r])}function gn(e,t){let{capture:r}=t||{};p.useEffect(()=>{let a=r!=null?{capture:r}:void 0;return window.addEventListener("pageshow",e,a),()=>{window.removeEventListener("pageshow",e,a)}},[e,r])}function jr(e,{relative:t}={}){let r=p.useContext(ke);$(r!=null,"`useViewTransitionState` must be used within `react-router/dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:a}=ee("useViewTransitionState"),n=q(e,{relative:t});if(!r.isTransitioning)return!1;let i=O(r.currentLocation.pathname,a)||r.currentLocation.pathname,o=O(r.nextLocation.pathname,a)||r.nextLocation.pathname;return ne(n.pathname,o)!=null||ne(n.pathname,i)!=null}var Wr=F(H(),1),Br=F(Qr(),1);var ve=F(ae(),1);function Vr({context:e,own:t}){return ie(e.store),kt()?(0,ve.jsx)(yn,{context:e,...t?{own:t}:{}}):null}function yn({context:e,own:t}){let r=Ft()?.live??e.store;if(ie(r),!Bt(r.batches().length))return null;let n=(0,ve.jsx)(Wr.Suspense,{fallback:null,children:(0,ve.jsx)(Vt,{remembers:!1})});return t?(0,Br.createPortal)(n,t):(0,ve.jsx)("div",{className:"graview-bar-own",children:n})}var N=F(H(),1);var G=F(H(),1),Rn=(0,G.createContext)(null);function $i(){let e=new Map,t=new Set,r=()=>{for(let a of t)a()};return{count:a=>e.get(a)??0,place(a){return e.set(a,(e.get(a)??0)+1),r(),()=>{e.set(a,(e.get(a)??1)-1),r()}},subscribe(a){return t.add(a),()=>t.delete(a)}}}function Kr(e){let t=(0,G.useContext)(Rn);(0,G.useLayoutEffect)(()=>t?.place(e),[t,e])}function Li(e,t){return(0,G.useSyncExternalStore)(e.subscribe,()=>e.count(t)>0,()=>!1)}var Jr=F(H(),1),W=F(ae(),1),ft="var(--graview-text-small)",ht="var(--graview-text-body)",Ai="var(--graview-font-display, var(--graview-font-body, system-ui))",mt={maxWidth:760,margin:"0 auto",padding:"40px var(--graview-page-gutter, 20px) max(96px, calc(var(--graview-foot-room, 0px) + env(safe-area-inset-bottom, 0px)))",display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:40},pt=1160,Oi={...mt,maxWidth:pt},Yr={margin:0,fontSize:"var(--graview-text-title)",lineHeight:1.2,letterSpacing:"-0.012em",overflowWrap:"anywhere",textWrap:"balance"},Ui={margin:0,fontSize:"var(--graview-text-heading)",lineHeight:1.3,textWrap:"balance"},Hi={margin:0,fontSize:ft,letterSpacing:"0.08em",textTransform:"uppercase",color:"var(--graview-ink-muted)"},Ii={margin:0,fontSize:ht,color:"var(--graview-ink-muted)",maxWidth:"60ch"},Gr={color:"var(--graview-ink-muted)",fontSize:ft},zi={borderTop:"1px solid var(--graview-edge)",paddingTop:24},vn={color:"var(--graview-accent)",textDecorationColor:"color-mix(in srgb, currentColor 50%, transparent)",textDecorationThickness:1,textUnderlineOffset:"0.2em",display:"inline-flex",alignItems:"center",columnGap:"0.3em",minHeight:24},ji={...vn,textDecoration:"none"},Wi={color:"inherit",textDecoration:"none",display:"inline-flex",alignItems:"center",minHeight:24},Bi=`.graview-list{container-type:inline-size}
1
+ import{a as Bt,b as Vt,c as We,d as Kt,h as Jt,i as ie,j as Yt,k as Gt}from"./chunk.STHWM422.js";import{a as _t}from"./chunk.LG2BQ5LB.js";import{d as At}from"./chunk.P3Z4ZCL3.js";import{c as Nt}from"./chunk.45OLF6BK.js";import{A as It,C as zt,J as jt,K as Wt,i as Mt,j as Tt,u as Ot,v as Ut,z as Ht}from"./chunk.GH6QX7JR.js";import{c as Qr}from"./chunk.J4D4BIB4.js";import{G as H,P as Dt,T as Ft,_ as ae,ja as kt}from"./chunk.ASNVH2G4.js";import{de as xt,ee as Et,fd as wt,fe as Pt,jd as St,pb as vt,qa as be,ve as Ct,we as $t,xe as Lt,yd as bt}from"./chunk.ZDUKVXBI.js";import{b as F}from"./chunk.AJZBJBMO.js";function Zr(e,t){return xt(e,t).slice(1)}function xe(e,t){return e.kinds.find(r=>Zr(e,r)===t)}function Nn(e,t,r){return Et(e,t,r)}function An(e,t){return Pt(e,t)}var le=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,Ee=/^[\\/]{2}/;function Xt(e,t){return t+e.replace(/\\/g,"/")}var Qt="popstate";function Pe(e){return typeof e=="object"&&e!=null&&"pathname"in e&&"search"in e&&"hash"in e&&"state"in e&&"key"in e}function qt(e={}){let{initialEntries:t=["/"],initialIndex:r,v5Compat:a=!1}=e,n;n=t.map((c,g)=>d(c,typeof c=="string"?null:c.state,g===0?"default":void 0,typeof c=="string"?void 0:c.mask));let i=s(r??n.length-1),o="POP",l=null;function s(c){return Math.min(Math.max(c,0),n.length-1)}function u(){return n[i]}function d(c,g=null,h,v){let y=Ce(n?u().pathname:"/",c,g,h,v);return k(y.pathname.charAt(0)==="/",`relative pathnames are not supported in memory history: ${JSON.stringify(c)}`),y}function f(c){return typeof c=="string"?c:z(c)}return{get index(){return i},get action(){return o},get location(){return u()},createHref:f,createURL(c){return new URL(f(c),"http://localhost")},encodeLocation(c){let g=typeof c=="string"?j(c):c;return{pathname:g.pathname||"",search:g.search||"",hash:g.hash||""}},push(c,g){o="PUSH";let h=Pe(c)?c:d(c,g);i+=1,n.splice(i,n.length,h),a&&l&&l({action:o,location:h,delta:1})},replace(c,g){o="REPLACE";let h=Pe(c)?c:d(c,g);n[i]=h,a&&l&&l({action:o,location:h,delta:0})},go(c){o="POP";let g=s(i+c),h=n[g];i=g,l&&l({action:o,location:h,delta:c})},listen(c){return l=c,()=>{l=null}}}}function er(e={}){function t(a,n){let i=n.state?.masked,{pathname:o,search:l,hash:s}=i||a.location;return Ce("",{pathname:o,search:l,hash:s},n.state&&n.state.usr||null,n.state&&n.state.key||"default",i?{pathname:a.location.pathname,search:a.location.search,hash:a.location.hash}:void 0)}function r(a,n){return typeof n=="string"?n:z(n)}return ea(t,r,null,e)}function $(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function k(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function qr(){return Math.random().toString(36).substring(2,10)}function Zt(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function Ce(e,t,r=null,a,n){return{pathname:typeof e=="string"?e:e.pathname,search:"",hash:"",...typeof t=="string"?j(t):t,state:r,key:t&&t.key||a||qr(),mask:n}}function z({pathname:e="/",search:t="",hash:r=""}){return t&&t!=="?"&&(e+=t.charAt(0)==="?"?t:"?"+t),r&&r!=="#"&&(e+=r.charAt(0)==="#"?r:"#"+r),e}function j(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substring(r),e=e.substring(0,r));let a=e.indexOf("?");a>=0&&(t.search=e.substring(a),e=e.substring(0,a)),e&&(t.pathname=e)}return t}function ea(e,t,r,a={}){let{window:n=document.defaultView,v5Compat:i=!1}=a,o=n.history,l="POP",s=null,u=d();u==null&&(u=0,o.replaceState({...o.state,idx:u},""));function d(){return(o.state||{idx:null}).idx}function f(){l="POP";let y=d(),R=y==null?null:y-u;u=y,s&&s({action:l,location:v.location,delta:R})}function c(y,R){l="PUSH";let E=Pe(y)?y:Ce(v.location,y,R);r&&r(E,y),u=d()+1;let P=Zt(E,u),C=v.createHref(E.mask||E);try{o.pushState(P,"",C)}catch(b){if(b instanceof DOMException&&b.name==="DataCloneError")throw b;n.location.assign(C)}i&&s&&s({action:l,location:v.location,delta:1})}function g(y,R){l="REPLACE";let E=Pe(y)?y:Ce(v.location,y,R);r&&r(E,y),u=d();let P=Zt(E,u),C=v.createHref(E.mask||E);o.replaceState(P,"",C),i&&s&&s({action:l,location:v.location,delta:0})}function h(y){return ta(n,y)}let v={get action(){return l},get location(){return e(n,o)},listen(y){if(s)throw new Error("A history only accepts one active listener");return n.addEventListener(Qt,f),s=y,()=>{n.removeEventListener(Qt,f),s=null}},createHref(y){return t(n,y)},createURL:h,encodeLocation(y){let R=h(y);return{pathname:R.pathname,search:R.search,hash:R.hash}},push:c,replace:g,go(y){return o.go(y)}};return v}function ta(e,t,r=!1){let a="http://localhost";e&&(a=e.location.origin!=="null"?e.location.origin:e.location.href),$(a,"No window.location.(origin|href) available to create URL");let n=typeof t=="string"?t:z(t);return n=n.replace(/ $/,"%20"),!r&&Ee.test(n)&&(n=a+n),new URL(n,a)}var ra=F(H(),1);function ar(e,t,r="/"){return aa(e,t,r,!1)}function aa(e,t,r,a,n){let i=O((typeof t=="string"?j(t):t).pathname||"/",r);if(i==null)return null;let o=n??na(e),l=null,s=ur(i);for(let u=0;l==null&&u<o.length;++u)l=ga(o[u],s,a);return l}function nr(e,t){let{route:r,pathname:a,params:n}=e;return{id:r.id,pathname:a,params:n,loaderData:t[r.id],handle:r.handle}}function na(e){let t=or(e);return oa(t),t}function or(e,t=[],r=[],a="",n=!1){let i=(o,l,s=n,u)=>{let d={relativePath:u===void 0?o.path||"":u,caseSensitive:o.caseSensitive===!0,childrenIndex:l,route:o};if(d.relativePath.startsWith("/")){if(!d.relativePath.startsWith(a)&&s)return;$(d.relativePath.startsWith(a),`Absolute route path "${d.relativePath}" nested under path "${a}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),d.relativePath=d.relativePath.slice(a.length)}let f=A([a,d.relativePath]),c=r.concat(d);o.children&&o.children.length>0&&($(o.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${f}".`),or(o.children,t,c,f,s)),!(o.path==null&&!o.index)&&t.push({path:f,score:ma(f,o.index),routesMeta:c.map((g,h)=>{let[v,y]=sr(g.relativePath,g.caseSensitive,h===c.length-1);return{...g,matcher:v,compiledParams:y}})})};return e.forEach((o,l)=>{if(o.path===""||!o.path?.includes("?"))i(o,l);else for(let s of ir(o.path))i(o,l,!0,s)}),t}function ir(e){let t=e.split("/");if(t.length===0)return[];let[r,...a]=t,n=r.endsWith("?"),i=r.replace(/\?$/,"");if(a.length===0)return n?[i,""]:[i];let o=ir(a.join("/")),l=[];return l.push(...o.map(s=>s===""?i:[i,s].join("/"))),n&&l.push(...o),l.map(s=>e.startsWith("/")&&s===""?"/":s)}function oa(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:pa(t.routesMeta.map(a=>a.childrenIndex),r.routesMeta.map(a=>a.childrenIndex)))}var ia=/^:[\w-]+$/,la=/^:[\w-]+/,sa=3.5,ua=3,ca=2,da=1,fa=10,ha=-2,tr=e=>e==="*";function ma(e,t){let r=e.split("/"),a=r.length;return r.some(tr)&&(a+=ha),t&&(a+=ca),r.filter(n=>!tr(n)).reduce((n,i)=>n+(ia.test(i)?ua:la.test(i)?sa:i===""?da:fa),a)}function pa(e,t){return e.length===t.length&&e.slice(0,-1).every((r,a)=>r===t[a])?e[e.length-1]-t[t.length-1]:0}function ga(e,t,r=!1){let{routesMeta:a}=e,n={},i="/",o=[];for(let l=0;l<a.length;++l){let s=a[l],u=l===a.length-1,d=i==="/"?t:t.slice(i.length)||"/",f={path:s.relativePath,caseSensitive:s.caseSensitive,end:u},c=s.matcher&&s.compiledParams?lr(f,d,s.matcher,s.compiledParams):ne(f,d),g=s.route;if(!c&&u&&r&&!a[a.length-1].route.index&&(c=ne({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},d)),!c)return null;Object.assign(n,c.params),o.push({params:n,pathname:A([i,c.pathname]),pathnameBase:va(A([i,c.pathnameBase])),route:g}),c.pathnameBase!=="/"&&(i=A([i,c.pathnameBase]))}return o}function ne(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[r,a]=sr(e.path,e.caseSensitive,e.end);return lr(e,t,r,a)}function lr(e,t,r,a){let n=t.match(r);if(!n)return null;let i=n[0],o=$e(i,1),l=n.slice(1);return{params:a.reduce((s,{paramName:u,isOptional:d},f)=>{if(u==="*"){let g=l[f]||"";o=$e(i.slice(0,i.length-g.length),1)}let c=l[f];return d&&!c?s[u]=void 0:s[u]=(c||"").replace(/%2F/g,"/"),s},{}),pathname:i,pathnameBase:o,pattern:e}}function sr(e,t=!1,r=!0){k(e==="*"||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let a=[],n="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(i,o,l,s,u)=>{if(a.push({paramName:o,isOptional:l!=null}),l){let d=u.charAt(s+i.length);return d&&d!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/((?:[^/?()[\]*^\\]|\\.)+)\?(?=\/|$|\()/g,"(?:/$1)?");return e.endsWith("*")?(a.push({paramName:"*"}),n+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?n+="\\/*$":e!==""&&e!=="/"&&(n+="(?:(?=\\/|$))"),[new RegExp(n,t?void 0:"i"),a]}function ur(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return k(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function O(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,a=e.charAt(r);return a&&a!=="/"?null:e.slice(r)||"/"}function ya(e,t="/"){let{pathname:r,search:a="",hash:n=""}=typeof e=="string"?j(e):e,i;return r?(r=cr(r),r.startsWith("/")||r.startsWith("\\")?i=rr(r.substring(1),"/"):i=rr(r,t)):i=t,{pathname:i,search:wa(a),hash:Sa(n)}}function rr(e,t){let r=$e(t).split("/");return e.split("/").forEach(a=>{a===".."?r.length>1&&r.pop():a!=="."&&r.push(a)}),r.length>1?r.join("/"):"/"}function Be(e,t,r,a){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(a)}]. Please separate it out to the \`to.${r}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function Ra(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function se(e){let t=Ra(e);return t.map((r,a)=>a===t.length-1?r.pathname:r.pathnameBase)}function Q(e,t,r,a=!1){let n;typeof e=="string"?n=j(e):(n={...e},$(!n.pathname||!n.pathname.includes("?"),Be("?","pathname","search",n)),$(!n.pathname||!n.pathname.includes("#"),Be("#","pathname","hash",n)),$(!n.search||!n.search.includes("#"),Be("#","search","hash",n)));let i=e===""||n.pathname==="",o=i?"/":n.pathname,l;if(o==null)l=r;else{let f=t.length-1;if(!a&&o.startsWith("..")){let c=o.split("/");for(;c[0]==="..";)c.shift(),f-=1;n.pathname=c.join("/")}l=f>=0?t[f]:"/"}let s=ya(n,l),u=o&&o!=="/"&&o.endsWith("/"),d=(i||o===".")&&r.endsWith("/");return!s.pathname.endsWith("/")&&(u||d)&&(s.pathname+="/"),s}var cr=e=>e.replace(/[\\/]{2,}/g,"/"),A=e=>cr(e.join("/"));function $e(e,t=0){let r=e.length;for(;r>t&&e.charCodeAt(r-1)===47;)r--;return r===e.length?e:e.slice(0,r)}var va=e=>$e(e).replace(/^\/*/,"/"),wa=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Sa=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;var Ve=class{status;statusText;data;error;internal;constructor(e,t,r,a=!1){this.status=e,this.statusText=t||"",this.internal=a,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}};function dr(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}function Ke(e){return A(e.map(t=>t.route.path).filter(Boolean))||"/"}var Je=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function Le(e,t){let r=e;if(typeof r!="string"||!le.test(r))return{absoluteURL:void 0,isExternal:!1,to:r};let a=r,n=!1;if(Je)try{let i=new URL(window.location.href),o=Ee.test(r)?new URL(Xt(r,i.protocol)):new URL(r),l=O(o.pathname,t);o.origin===i.origin&&l!=null?r=l+o.search+o.hash:n=!0}catch{k(!1,`<Link to="${r}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:a,isExternal:n,to:r}}var fr=new URL("http://localhost");function ue(e){if(e.createURL)return e.createURL("/");try{return new URL(e.createHref("/"),fr)}catch{return fr}}function Ye(e,t){return e.origin===t.origin&&(e.origin!=="null"||e.protocol===t.protocol&&e.host===t.host)}function ba(e,t){if(e.startsWith("//"))return!0;let r=t.protocol.toLowerCase();return e.toLowerCase().startsWith(r)?t.host===""||e.slice(r.length).startsWith("//"):!1}function ce(e,t,r,a){let n=null;try{n=e==null?null:new URL(e,r)}catch{}let i=new URL(t,r),o=n!=null&&!Ye(n,r),l=!Ye(i,r);if(a==="reject"){if(o||l)throw new Error("External navigation is not allowed")}else if(l&&(n==null||!ba(e,n)||!Ye(n,i)))throw new Error("External navigation is not allowed")}var hr=["POST","PUT","PATCH","DELETE"],Kn=new Set(hr),xa=["GET",...hr],Jn=new Set(xa);var Yn=Symbol("ResetLoaderData");var Ea=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];function mr(e){try{return Ea.includes(new URL(e).protocol)}catch{return!1}}var M=F(H(),1);var Z=M.createContext(null);Z.displayName="DataRouter";var De=M.createContext(null);De.displayName="DataRouterState";var Fe=M.createContext(null);Fe.displayName="DataRouterData";var oe=M.createContext(null);oe.displayName="DataRouterNavigation";var Ge=M.createContext(!1);function Xe(){return M.useContext(Ge)}var ke=M.createContext({isTransitioning:!1});ke.displayName="ViewTransition";var Qe=M.createContext(null);Qe.displayName="Fetchers";var Ze=M.createContext(null);Ze.displayName="Await";var _=M.createContext(null);_.displayName="Navigation";var J=M.createContext(null);J.displayName="Location";var I=M.createContext({outlet:null,matches:[],isDataRoute:!1});I.displayName="Route";var de=M.createContext(!1);de.displayName="IsDataRoute";var fe=M.createContext(void 0);fe.displayName="RouteId";var Me=M.createContext(null);Me.displayName="RouteError";var pr="REACT_ROUTER_ERROR",Pa="REDIRECT",Ca="ROUTE_ERROR_RESPONSE";function gr(e){if(e.startsWith(`${pr}:${Pa}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.location=="string"&&typeof t.reloadDocument=="boolean"&&typeof t.replace=="boolean")return t}catch{}}function yr(e){if(e.startsWith(`${pr}:${Ca}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string")return new Ve(t.status,t.statusText,t.data)}catch{}}var m=F(H(),1);function he(e,{relative:t}={}){$(Y(),"useHref() may be used only in the context of a <Router> component.");let{basename:r,navigator:a}=m.useContext(_),{hash:n,pathname:i,search:o}=q(e,{relative:t}),l=i;return r!=="/"&&(l=i==="/"?r:A([r,i])),a.createHref({pathname:l,search:o,hash:n})}function Y(){return m.useContext(J)!=null}function D(){return $(Y(),"useLocation() may be used only in the context of a <Router> component."),m.useContext(J).location}function $a(){return m.useContext(J).navigationType}var vr="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function V(){return m.useContext(de)?Na():La()}function La(){$(Y(),"useNavigate() may be used only in the context of a <Router> component.");let e=m.useContext(Z),{basename:t,navigator:r}=m.useContext(_),{matches:a}=m.useContext(I),{pathname:n}=D(),i=JSON.stringify(se(a)),o=m.useRef(!1);return m.useLayoutEffect(()=>{o.current=!0}),m.useCallback((l,s={})=>{if(k(o.current,vr),!o.current)return;if(typeof l=="number"){r.go(l);return}let u=Q(l,JSON.parse(i),n,s.relative==="path");e==null&&t!=="/"&&(u.pathname=u.pathname==="/"?t:A([t,u.pathname])),ce(typeof l=="string"?l:z(l),r.createHref(u),ue(r),"reject"),(s.replace?r.replace:r.push)(u,s.state,s)},[t,r,i,n,e])}var io=m.createContext(null);function wr(){let{matches:e}=m.useContext(I);return e[e.length-1]?.params??{}}function q(e,{relative:t}={}){let{matches:r}=m.useContext(I),{pathname:a}=D(),n=JSON.stringify(se(r));return m.useMemo(()=>Q(e,JSON.parse(n),a,t==="path"),[e,n,a,t])}function et(e,t){return tt(e,t)}function tt(e,t,r){$(Y(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:a}=m.useContext(_),{matches:n}=m.useContext(I),i=n[n.length-1],o=i?i.params:{};i&&i.pathname;let l=i?i.pathnameBase:"/";i&&i.route;let s=D(),u;if(t){let h=typeof t=="string"?j(t):t;$(l==="/"||h.pathname?.startsWith(l),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${l}" but pathname "${h.pathname}" was given in the \`location\` prop.`),u=h}else u=s;let d=u.pathname||"/",f=d;if(l!=="/"){let h=l.replace(/^\//,"").split("/");f="/"+d.replace(/^\//,"").split("/").slice(h.length).join("/")}let c;r?r.state.matches.length?c=r.state.matches.map(h=>Object.assign(h,{route:r.manifest[h.route.id]||h.route})):c=r.router.match(r.state.location):c=ar(e,{pathname:f});let g=Sr(c&&c.map(h=>Object.assign({},h,{params:Object.assign({},o,h.params),pathname:A([l,a.encodeLocation?a.encodeLocation(h.pathname.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:h.pathname]),pathnameBase:h.pathnameBase==="/"?l:A([l,a.encodeLocation?a.encodeLocation(h.pathnameBase.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:h.pathnameBase])})),n,r);return t&&g?m.createElement(J.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",mask:void 0,...u},navigationType:"POP"}},g):g}function Da(){let e=at(),t=dr(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null;return m.createElement(m.Fragment,null,m.createElement("h2",null,"Unexpected Application Error!"),m.createElement("h3",{style:{fontStyle:"italic"}},t),r?m.createElement("pre",{style:{padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"}},r):null,null)}var Fa=m.createElement(Da,null),ka=class extends m.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static contextType=Ge;static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&typeof e=="object"&&e&&"digest"in e&&typeof e.digest=="string"){let r=yr(e.digest);r&&(e=r)}let t=e!==void 0?m.createElement(I.Provider,{value:this.props.routeContext},m.createElement(de.Provider,{value:this.props.routeContext.isDataRoute},m.createElement(fe.Provider,{value:this.props.routeContext.matches[this.props.routeContext.matches.length-1]?.route.id},m.createElement(Me.Provider,{value:e,children:this.props.component})))):this.props.children;return this.context?m.createElement(Ma,{error:e},t):t}},qe=new WeakMap;function Ma({children:e,error:t}){let{basename:r,navigator:a}=m.useContext(_);if(typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){let n=gr(t.digest);if(n){let i=qe.get(t);if(i)throw i;let o=Le(n.location,r),l=o.absoluteURL||o.to;if(ce(n.location,l,ue(a),"allow-explicit"),mr(l))throw new Error("Invalid redirect location");if(Je&&!qe.get(t))if(o.isExternal||n.reloadDocument)window.location.href=l;else{let s=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(o.to,{replace:n.replace}));throw qe.set(t,s),s}return m.createElement("meta",{httpEquiv:"refresh",content:`0;url=${l}`})}}return e}function Ta({routeContext:e,match:t,children:r}){let a=m.useContext(Z);return a&&a.static&&a.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=t.route.id),m.createElement(I.Provider,{value:e},m.createElement(de.Provider,{value:e.isDataRoute},m.createElement(fe.Provider,{value:t.route.id},r)))}function Sr(e,t=[],r){let a=r?.state;if(e==null){if(!a)return null;if(a.errors)e=a.matches;else if(t.length===0&&!a.initialized&&a.matches.length>0)e=a.matches;else return null}let n=e,i=a?.errors;if(i!=null){let d=n.findIndex(f=>f.route.id&&i?.[f.route.id]!==void 0);$(d>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(i).join(",")}`),n=n.slice(0,Math.min(n.length,d+1))}let o=!1,l=-1;if(r&&a){o=a.renderFallback;for(let d=0;d<n.length;d++){let f=n[d];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(l=d),f.route.id){let{loaderData:c,errors:g}=a,h=f.route.loader&&!c.hasOwnProperty(f.route.id)&&(!g||g[f.route.id]===void 0);if(f.route.lazy||h){r.isStatic&&(o=!0),l>=0?n=n.slice(0,l+1):n=[n[0]];break}}}}let s=r?.onError,u=a&&s?(d,f)=>{s(d,{location:a.location,params:a.matches?.[0]?.params??{},pattern:Ke(a.matches),errorInfo:f})}:void 0;return n.reduceRight((d,f,c)=>{let g,h=!1,v=null,y=null;a&&(g=i&&f.route.id?i[f.route.id]:void 0,v=f.route.errorElement||Fa,o&&(l<0&&c===0?(Aa("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),h=!0,y=null):l===c&&(h=!0,y=f.route.hydrateFallbackElement||null)));let R=t.concat(n.slice(0,c+1)),E=()=>{let P;return g?P=v:h?P=y:f.route.Component?P=m.createElement(f.route.Component,null):f.route.element?P=f.route.element:P=d,m.createElement(Ta,{match:f,routeContext:{outlet:d,matches:R,isDataRoute:a!=null},children:P})};return a&&(f.route.ErrorBoundary||f.route.errorElement||c===0)?m.createElement(ka,{location:a.location,revalidation:a.revalidation,component:v,error:g,children:E(),routeContext:{outlet:null,matches:R,isDataRoute:!0},onError:u}):E()},null)}function Te(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function ee(e){let t=m.useContext(Z);return $(t,Te(e)),t}function me(e){let t=m.useContext(De);return $(t,Te(e)),t}function _e(e){let t=m.useContext(Fe);return $(t,Te(e)),t}function _a(e){let t=m.useContext(oe);return $(t,Te(e)),t}function Ne(e){let t=m.useContext(fe);return $(t,`${e} can only be used on routes that contain a unique "id"`),t}function rt(){let{navigation:e}=_a("useNavigation");return m.useMemo(()=>{let{matches:t,historyAction:r,...a}=e;return a},[e])}function pe(){let{matches:e}=me("useMatches"),{loaderData:t}=_e("useMatches");return m.useMemo(()=>e.map(r=>nr(r,t)),[e,t])}function at(){let e=m.useContext(Me),t=_e("useRouteError"),r=Ne("useRouteError");return e!==void 0?e:t.errors?.[r]}function Na(){let{router:e}=ee("useNavigate"),t=Ne("useNavigate"),r=m.useRef(!1);return m.useLayoutEffect(()=>{r.current=!0}),m.useCallback(async(a,n={})=>{k(r.current,vr),r.current&&(typeof a=="number"?await e.navigate(a):await e.navigate(a,{fromRouteId:t,...n}))},[e,t])}var Rr={};function Aa(e,t,r){!t&&!Rr[e]&&(Rr[e]=!0,k(!1,r))}var Oa={"&":"\\u0026",">":"\\u003e","<":"\\u003c","\u2028":"\\u2028","\u2029":"\\u2029"},Ua=/[&><\u2028\u2029]/g;function nt(e){return e.replace(Ua,t=>Oa[t])}function br(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}async function xr(e,t){if(e.id in t)return t[e.id];try{let r=await import(e.module);return t[e.id]=r,r}catch(r){if(console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(r),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode&&import.meta.hot)throw r;return window.location.reload(),new Promise(()=>{})}}function Er(e){return e!=null&&typeof e.page=="string"}function Ha(e){return e==null?!1:e.href==null?e.rel==="preload"&&typeof e.imageSrcSet=="string"&&typeof e.imageSizes=="string":typeof e.rel=="string"&&typeof e.href=="string"}async function Pr(e,t,r){return ja((await Promise.all(e.map(async a=>{let n=t.routes[a.route.id];if(n){let i=await xr(n,r);return i.links?i.links():[]}return[]}))).flat(1).filter(Ha).filter(a=>a.rel==="stylesheet"||a.rel==="preload").map(a=>a.rel==="stylesheet"?{...a,rel:"prefetch",as:"style"}:{...a,rel:"prefetch"}))}function ot(e,t,r,a,n,i){let o=(s,u)=>r[u]?s.route.id!==r[u].route.id:!0,l=(s,u)=>r[u].pathname!==s.pathname||r[u].route.path?.endsWith("*")&&r[u].params["*"]!==s.params["*"];return i==="assets"?t.filter((s,u)=>o(s,u)||l(s,u)):i==="data"?t.filter((s,u)=>{let d=a.routes[s.route.id];if(!d||!d.hasLoader)return!1;if(o(s,u)||l(s,u))return!0;if(s.route.shouldRevalidate){let f=s.route.shouldRevalidate({currentUrl:new URL(n.pathname+n.search+n.hash,window.origin),currentParams:r[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:s.params,defaultShouldRevalidate:!0});if(typeof f=="boolean")return f}return!0}):[]}function Cr(e,t,{includeHydrateFallback:r}={}){return Ia(e.map(a=>{let n=t.routes[a.route.id];if(!n)return[];let i=[n.module];return n.clientActionModule&&(i=i.concat(n.clientActionModule)),n.clientLoaderModule&&(i=i.concat(n.clientLoaderModule)),r&&n.hydrateFallbackModule&&(i=i.concat(n.hydrateFallbackModule)),n.imports&&(i=i.concat(n.imports)),i}).flat(1))}function Ia(e){return[...new Set(e)]}function za(e){let t={},r=Object.keys(e).sort();for(let a of r)t[a]=e[a];return t}function ja(e,t){let r=new Set,a=new Set(t);return e.reduce((n,i)=>{if(t&&!Er(i)&&i.as==="script"&&i.href&&a.has(i.href))return n;let o=JSON.stringify(za(i));return r.has(o)||(r.add(o),n.push({key:o,link:i})),n},[])}var it=F(H(),1);var po=Symbol("SingleFetchRedirect");function lt(e,t,r){let a=typeof e=="string"?new URL(e,r??(typeof window>"u"?"server://singlefetch/":window.location.origin)):new URL(e);return r&&a.origin!==r&&(a=new URL(a.pathname+a.search+a.hash,r)),a.pathname.endsWith("/")?a.pathname=`${a.pathname}_.${t}`:a.pathname=`${a.pathname}.${t}`,a}var S=F(H(),1);var te=S.createContext(void 0);te.displayName="FrameworkContext";function Ae(){let e=S.useContext(te);return br(e,"You must render this element inside a <HydratedRouter> element"),e}function $r(e,t){let r=S.useContext(te),[a,n]=S.useState(!1),[i,o]=S.useState(!1),{onFocus:l,onBlur:s,onMouseEnter:u,onMouseLeave:d,onTouchStart:f}=t,c=S.useRef(null);S.useEffect(()=>{if(e==="render"&&o(!0),e==="viewport"){let v=R=>{R.forEach(E=>{o(E.isIntersecting)})},y=new IntersectionObserver(v,{threshold:.5});return c.current&&y.observe(c.current),()=>{y.disconnect()}}},[e]),S.useEffect(()=>{if(a){let v=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(v)}}},[a]);let g=()=>{n(!0)},h=()=>{n(!1),o(!1)};return r?e!=="intent"?[i,c,{}]:[i,c,{onFocus:ge(l,g),onBlur:ge(s,h),onMouseEnter:ge(u,g),onMouseLeave:ge(d,h),onTouchStart:ge(f,g)}]:[!1,c,{}]}function ge(e,t){return r=>{e&&e(r),r.defaultPrevented||t(r)}}function Lr({page:e,...t}){let r=Xe(),{nonce:a}=Ae(),{router:n}=ee("PrefetchPageLinks"),i=S.useMemo(()=>n.match(e),[n,n.routes,e]);return i?(t.nonce==null&&a&&(t={...t,nonce:a}),r?S.createElement(Ba,{page:e,matches:i,...t}):S.createElement(Va,{page:e,matches:i,...t})):null}function Wa(e){let{manifest:t,routeModules:r}=Ae(),[a,n]=S.useState([]);return S.useEffect(()=>{let i=!1;return Pr(e,t,r).then(o=>{i||n(o)}),()=>{i=!0}},[e,t,r]),a}function Ba({page:e,matches:t,...r}){let a=D(),{unstable_apiServerOrigin:n}=Ae(),i=S.useMemo(()=>{if(e===a.pathname+a.search+a.hash)return[];let o=lt(e,"rsc",n),l=!1,s=[];for(let u of t)typeof u.route.shouldRevalidate=="function"?l=!0:s.push(u.route.id);return l&&s.length>0&&o.searchParams.set("_routes",s.join(",")),[n?o.toString():o.pathname+o.search]},[e,a,t,n]);return S.createElement(S.Fragment,null,i.map(o=>S.createElement("link",{key:o,rel:"prefetch",as:"fetch",href:o,...r})))}function Va({page:e,matches:t,...r}){let a=D(),{manifest:n,routeModules:i,unstable_apiServerOrigin:o}=Ae(),{matches:l}=me("PrefetchPageLinks"),{loaderData:s}=_e("PrefetchPageLinks"),u=S.useMemo(()=>ot(e,t,l,n,a,"data"),[e,t,l,n,a]),d=S.useMemo(()=>ot(e,t,l,n,a,"assets"),[e,t,l,n,a]),f=S.useMemo(()=>{if(e===a.pathname+a.search+a.hash)return[];let h=new Set,v=!1;if(t.forEach(R=>{let E=n.routes[R.route.id];!E||!E.hasLoader||(!u.some(P=>P.route.id===R.route.id)&&R.route.id in s&&i[R.route.id]?.shouldRevalidate||E.hasClientLoader?v=!0:h.add(R.route.id))}),h.size===0)return[];let y=lt(e,"data",o);return v&&h.size>0&&y.searchParams.set("_routes",t.filter(R=>h.has(R.route.id)).map(R=>R.route.id).join(",")),[o?y.toString():y.pathname+y.search]},[s,a,n,u,t,e,i,o]),c=S.useMemo(()=>Cr(d,n),[d,n]),g=Wa(d);return S.createElement(S.Fragment,null,f.map(h=>S.createElement("link",{key:h,rel:"prefetch",as:"fetch",href:h,...r})),c.map(h=>S.createElement("link",{key:h,rel:"modulepreload",href:h,...r})),g.map(({key:h,link:v})=>S.createElement("link",{key:h,nonce:r.nonce,...v,crossOrigin:v.crossOrigin??r.crossOrigin})))}function Dr(...e){return t=>{e.forEach(r=>{typeof r=="function"?r(t):r!=null&&(r.current=t)})}}var w=F(H(),1),Qa=F(H(),1);var Fo=w.memo(Za);function Za({routes:e,manifest:t,state:r,isStatic:a,onError:n}){let i=w.useContext(Z);$(i,"You must render this element inside a <DataRouterContext.Provider> element");let o=w.useContext(te)?.routeDiscoveryRuntime;return w.useEffect(()=>{r.initialized&&o?.markReady()},[r.initialized,o]),tt(e,void 0,{router:i.router,manifest:t,state:r,isStatic:a,onError:n})}function qa({basename:e,children:t,initialEntries:r,initialIndex:a,useTransitions:n}){let i=w.useRef(null);i.current==null&&(i.current=qt({initialEntries:r,initialIndex:a,v5Compat:!0}));let o=i.current,[l,s]=w.useState({action:o.action,location:o.location}),u=w.useCallback(d=>{n===!1?s(d):w.startTransition(()=>s(d))},[n]);return w.useLayoutEffect(()=>o.listen(u),[o,u]),w.createElement(ye,{basename:e,children:t,location:l.location,navigationType:l.action,navigator:o,useTransitions:n})}function en({to:e,replace:t,state:r,relative:a}){$(Y(),"<Navigate> may be used only in the context of a <Router> component.");let{static:n,navigator:i}=w.useContext(_);k(!n,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:o}=w.useContext(I),{pathname:l}=D(),s=V(),u=Q(e,se(o),l,a==="path");ce(typeof e=="string"?e:z(e),i.createHref(u),ue(i),"reject");let d=JSON.stringify(u);return w.useEffect(()=>{s(JSON.parse(d),{replace:t,state:r,relative:a})},[s,d,a,t,r]),null}function Fr(e){$(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function ye({basename:e="/",children:t=null,location:r,navigationType:a="POP",navigator:n,static:i=!1,useTransitions:o}){$(!Y(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let l=e.replace(/^\/*/,"/"),s=w.useMemo(()=>({basename:l,navigator:n,static:i,useTransitions:o,future:{}}),[l,n,i,o]);typeof r=="string"&&(r=j(r));let{pathname:u="/",search:d="",hash:f="",state:c=null,key:g="default",mask:h}=r,v=w.useMemo(()=>{let y=O(u,l);return y==null?null:{location:{pathname:y,search:d,hash:f,state:c,key:g,mask:h},navigationType:a}},[l,u,d,f,c,g,a,h]);return k(v!=null,`<Router basename="${l}"> is not able to match the URL "${u}${d}${f}" because it does not start with the basename, so the <Router> won't render anything.`),v==null?null:w.createElement(_.Provider,{value:s},w.createElement(J.Provider,{children:t,value:v}))}function tn({children:e,location:t}){return et(Oe(e),t)}function Oe(e,t=[]){let r=[];return w.Children.forEach(e,(a,n)=>{if(!w.isValidElement(a))return;let i=[...t,n];if(a.type===w.Fragment){r.push.apply(r,Oe(a.props.children,i));return}$(a.type===Fr,`[${typeof a.type=="string"?a.type:a.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`);let o=a.props;$(!o.index||!o.children,"An index route cannot have child routes.");let l={id:o.id||i.join("-"),caseSensitive:o.caseSensitive,element:o.element,Component:o.Component,index:o.index,path:o.path,middleware:o.middleware,loader:o.loader,action:o.action,hydrateFallbackElement:o.hydrateFallbackElement,HydrateFallback:o.HydrateFallback,errorElement:o.errorElement,ErrorBoundary:o.ErrorBoundary,shouldRevalidate:o.shouldRevalidate,handle:o.handle,lazy:o.lazy};o.children&&(l.children=Oe(o.children,i)),r.push(l)}),r}var He="application/x-www-form-urlencoded";function Ie(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement}function rn(e){return Ie(e)&&e.tagName.toLowerCase()==="button"}function an(e){return Ie(e)&&e.tagName.toLowerCase()==="form"}function nn(e){return Ie(e)&&e.tagName.toLowerCase()==="input"}function on(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function kr(e,t){return e.button===0&&(!t||t==="_self")&&!on(e)}function ze(e=""){return new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,r)=>{let a=e[r];return t.concat(Array.isArray(a)?a.map(n=>[r,n]):[[r,a]])},[]))}function Mr(e,t){let r=ze(e);return t&&t.forEach((a,n)=>{r.has(n)||t.getAll(n).forEach(i=>{r.append(n,i)})}),r}var Ue=null;function ln(){if(Ue===null)try{new FormData(document.createElement("form"),0),Ue=!1}catch{Ue=!0}return Ue}var sn=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function st(e){return e!=null&&!sn.has(e)?(k(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${He}"`),null):e}function Tr(e,t){let r,a,n,i,o;if(an(e)){let l=e.getAttribute("action");a=l?O(l,t):null,r=e.getAttribute("method")||"get",n=st(e.getAttribute("enctype"))||He,i=new FormData(e)}else if(rn(e)||nn(e)&&(e.type==="submit"||e.type==="image")){let l=e.form;if(l==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let s=e.getAttribute("formaction")||l.getAttribute("action");if(a=s?O(s,t):null,r=e.getAttribute("formmethod")||l.getAttribute("method")||"get",n=st(e.getAttribute("formenctype"))||st(l.getAttribute("enctype"))||He,i=new FormData(l,e),!ln()){let{name:u,type:d,value:f}=e;if(d==="image"){let c=u?`${u}.`:"";i.append(`${c}x`,"0"),i.append(`${c}y`,"0")}else u&&i.append(u,f)}}else{if(Ie(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r="get",a=null,n=He,o=e}return i&&n==="text/plain"&&(o=i,i=void 0),{action:a,method:r.toLowerCase(),encType:n,formData:i,body:o}}var p=F(H(),1);var dn=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{dn&&(window.__reactRouterVersion="8")}catch{}function fn({basename:e,children:t,useTransitions:r,window:a}){let n=p.useRef(null);n.current==null&&(n.current=er({window:a,v5Compat:!0}));let i=n.current,[o,l]=p.useState({action:i.action,location:i.location}),s=p.useCallback(u=>{r===!1?l(u):p.startTransition(()=>l(u))},[r]);return p.useLayoutEffect(()=>i.listen(s),[i,s]),p.createElement(ye,{basename:e,children:t,location:o.location,navigationType:o.action,navigator:i,useTransitions:r})}function _r({basename:e,children:t,history:r,useTransitions:a}){let[n,i]=p.useState({action:r.action,location:r.location}),o=p.useCallback(l=>{a===!1?i(l):p.startTransition(()=>i(l))},[a]);return p.useLayoutEffect(()=>r.listen(o),[r,o]),p.createElement(ye,{basename:e,children:t,location:n.location,navigationType:n.action,navigator:r,useTransitions:a})}_r.displayName="unstable_HistoryRouter";var Re=p.forwardRef(function({onClick:t,discover:r="render",prefetch:a="none",relative:n,reloadDocument:i,replace:o,mask:l,state:s,target:u,to:d,preventScrollReset:f,viewTransition:c,defaultShouldRevalidate:g,...h},v){let{basename:y,navigator:R,useTransitions:E}=p.useContext(_),P=typeof d=="string"&&le.test(d),C=Le(d,y);d=C.to;let b=he(d,{relative:n}),T=D(),L=null;if(l){let K=Q(l,[],T.mask?T.mask.pathname:"/",!0);y!=="/"&&(K.pathname=K.pathname==="/"?y:A([y,K.pathname])),L=R.createHref(K)}let[U,X,B]=$r(a,h),we=Ur(d,{replace:o,mask:l,state:s,target:u,preventScrollReset:f,relative:n,viewTransition:c,defaultShouldRevalidate:g,useTransitions:E});function re(K){t&&t(K),K.defaultPrevented||we(K)}let Se=!(C.isExternal||i),Rt=p.createElement("a",{...h,...B,href:(Se?L:void 0)||C.absoluteURL||b,onClick:Se?re:t,ref:Dr(v,X),target:u,"data-discover":!P&&r==="render"?"true":void 0});return U&&!P?p.createElement(p.Fragment,null,Rt,p.createElement(Lr,{page:b})):Rt});Re.displayName="Link";var Nr=p.forwardRef(function({"aria-current":t="page",caseSensitive:r=!1,className:a="",end:n=!1,style:i,to:o,viewTransition:l,children:s,...u},d){let f=q(o,{relative:u.relative}),c=D(),g=p.useContext(oe),{navigator:h,basename:v}=p.useContext(_),y=g!=null&&jr(f)&&l===!0,R=h.encodeLocation?h.encodeLocation(f).pathname:f.pathname,E=c.pathname,P=g?.navigation.location?g.navigation.location.pathname:null;r||(E=E.toLowerCase(),P=P?P.toLowerCase():null,R=R.toLowerCase()),P&&v&&(P=O(P,v)||P);let C=R!=="/"&&R.endsWith("/")?R.length-1:R.length,b=E===R||!n&&E.startsWith(R)&&E.charAt(C)==="/",T=P!=null&&(P===R||!n&&P.startsWith(R)&&P.charAt(C)==="/"),L={isActive:b,isPending:T,isTransitioning:y},U=b?t:void 0,X;typeof a=="function"?X=a(L):X=[a,b?"active":null,T?"pending":null,y?"transitioning":null].filter(Boolean).join(" ");let B=typeof i=="function"?i(L):i;return p.createElement(Re,{...u,"aria-current":U,className:X,ref:d,style:B,to:o,viewTransition:l},typeof s=="function"?s(L):s)});Nr.displayName="NavLink";var Ar=p.forwardRef(({discover:e="render",fetcherKey:t,navigate:r,reloadDocument:a,replace:n,state:i,method:o="get",action:l,onSubmit:s,relative:u,preventScrollReset:d,viewTransition:f,defaultShouldRevalidate:c,...g},h)=>{let{useTransitions:v}=p.useContext(_),y=Hr(),R=Ir(l,{relative:u}),E=o.toLowerCase()==="get"?"get":"post",P=typeof l=="string"&&le.test(l);return p.createElement("form",{ref:h,method:E,action:R,onSubmit:a?s:b=>{if(s&&s(b),b.defaultPrevented)return;b.preventDefault();let T=b.nativeEvent.submitter,L=T?.getAttribute("formmethod")||o,U=()=>y(T||b.currentTarget,{fetcherKey:t,method:L,navigate:r,replace:n,state:i,relative:u,preventScrollReset:d,viewTransition:f,defaultShouldRevalidate:c});v&&r!==!1?p.startTransition(()=>U()):U()},...g,"data-discover":!P&&e==="render"?"true":void 0})});Ar.displayName="Form";function Or({getKey:e,storageKey:t,...r}){let a=p.useContext(te),{basename:n}=p.useContext(_),i=D(),o=pe();zr({getKey:e,storageKey:t});let l=p.useMemo(()=>{if(!a||!e)return null;let u=ct(i,o,n,e);return u!==i.key?u:null},[]);if(!a||a.isSpaMode)return null;let s=((u,d)=>{if(!window.history.state||!window.history.state.key){let f=Math.random().toString(32).slice(2);window.history.replaceState({key:f},"")}try{let f=JSON.parse(sessionStorage.getItem(u)||"{}")[d||window.history.state.key];typeof f=="number"&&window.scrollTo(0,f)}catch(f){console.error(f),sessionStorage.removeItem(u)}}).toString();return r.nonce==null&&a?.nonce&&(r.nonce=a.nonce),p.createElement("script",{...r,suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:`(${s})(${nt(JSON.stringify(t||ut))}, ${nt(JSON.stringify(l))})`}})}Or.displayName="ScrollRestoration";function Ur(e,{target:t,replace:r,mask:a,state:n,preventScrollReset:i,relative:o,viewTransition:l,defaultShouldRevalidate:s,useTransitions:u}={}){let d=V(),f=D(),c=q(e,{relative:o});return p.useCallback(g=>{if(kr(g,t)){g.preventDefault();let h=r!==void 0?r:z(f)===z(c),v=()=>d(e,{replace:h,mask:a,state:n,preventScrollReset:i,relative:o,viewTransition:l,defaultShouldRevalidate:s});u?p.startTransition(()=>v()):v()}},[f,d,c,r,a,n,t,e,i,o,l,s,u])}function dt(e){k(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=p.useRef(ze(e)),r=p.useRef(!1),a=D(),n=p.useMemo(()=>Mr(a.search,r.current?null:t.current),[a.search]),i=V();return[n,p.useCallback((o,l)=>{let s=ze(typeof o=="function"?o(new URLSearchParams(n)):o);r.current=!0,i("?"+s,l)},[i,n])]}var hn=0,mn=()=>`__${String(++hn)}__`;function Hr(){let{router:e}=ee("useSubmit"),{basename:t}=p.useContext(_),r=Ne("useSubmit"),a=e.fetch,n=e.navigate;return p.useCallback(async(i,o={})=>{let{action:l,method:s,encType:u,formData:d,body:f}=Tr(i,t);o.navigate===!1?await a(o.fetcherKey||mn(),r,o.action||l,{defaultShouldRevalidate:o.defaultShouldRevalidate,preventScrollReset:o.preventScrollReset,relative:o.relative,formData:d,body:f,formMethod:o.method||s,formEncType:o.encType||u,flushSync:o.flushSync}):await n(o.action||l,{defaultShouldRevalidate:o.defaultShouldRevalidate,preventScrollReset:o.preventScrollReset,relative:o.relative,formData:d,body:f,formMethod:o.method||s,formEncType:o.encType||u,replace:o.replace,state:o.state,fromRouteId:r,flushSync:o.flushSync,viewTransition:o.viewTransition})},[a,n,t,r])}function Ir(e,{relative:t}={}){let{basename:r}=p.useContext(_),a=p.useContext(I);$(a,"useFormAction must be used inside a RouteContext");let[n]=a.matches.slice(-1),i={...q(e||".",{relative:t})},o=D();if(e==null){i.search=o.search;let l=new URLSearchParams(i.search),s=l.getAll("index");if(s.some(u=>u==="")){l.delete("index"),s.filter(d=>d).forEach(d=>l.append("index",d));let u=l.toString();i.search=u?`?${u}`:""}}return(!e||e===".")&&n.route.index&&(i.search=i.search?i.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(i.pathname=i.pathname==="/"?r:A([r,i.pathname])),z(i)}var ut="react-router-scroll-positions",je={};function ct(e,t,r,a){let n=null;return a&&(r!=="/"?n=a({...e,pathname:O(e.pathname,r)||e.pathname},t):n=a(e,t)),n==null&&(n=e.key),n}function zr({getKey:e,storageKey:t}={}){let{router:r}=ee("useScrollRestoration"),{restoreScrollPosition:a,preventScrollReset:n}=me("useScrollRestoration"),{basename:i}=p.useContext(_),o=D(),l=pe(),s=rt();p.useEffect(()=>(window.history.scrollRestoration="manual",()=>{window.history.scrollRestoration="auto"}),[]),gn(p.useCallback(u=>{u.persisted&&(window.history.scrollRestoration="manual")},[])),pn(p.useCallback(()=>{if(s.state==="idle"){let u=ct(o,l,i,e);je[u]=window.scrollY}try{sessionStorage.setItem(t||ut,JSON.stringify(je))}catch(u){k(!1,`Failed to save scroll positions in sessionStorage, <ScrollRestoration /> will not work properly (${u}).`)}window.history.scrollRestoration="auto"},[s.state,e,i,o,l,t])),typeof document<"u"&&(p.useLayoutEffect(()=>{try{let u=sessionStorage.getItem(t||ut);u&&(je=JSON.parse(u))}catch{}},[t]),p.useLayoutEffect(()=>{let u=r?.enableScrollRestoration(je,()=>window.scrollY,e?(d,f)=>ct(d,f,i,e):void 0);return()=>u&&u()},[r,i,e]),p.useLayoutEffect(()=>{if(a!==!1){if(typeof a=="number"){window.scrollTo(0,a);return}try{if(o.hash){let u=document.getElementById(decodeURIComponent(o.hash.slice(1)));if(u){u.scrollIntoView();return}}}catch{k(!1,`"${o.hash.slice(1)}" is not a decodable element ID. The view will not scroll to it.`)}n!==!0&&window.scrollTo(0,0)}},[o,a,n]))}function pn(e,t){let{capture:r}=t||{};p.useEffect(()=>{let a=r!=null?{capture:r}:void 0;return window.addEventListener("pagehide",e,a),()=>{window.removeEventListener("pagehide",e,a)}},[e,r])}function gn(e,t){let{capture:r}=t||{};p.useEffect(()=>{let a=r!=null?{capture:r}:void 0;return window.addEventListener("pageshow",e,a),()=>{window.removeEventListener("pageshow",e,a)}},[e,r])}function jr(e,{relative:t}={}){let r=p.useContext(ke);$(r!=null,"`useViewTransitionState` must be used within `react-router/dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:a}=ee("useViewTransitionState"),n=q(e,{relative:t});if(!r.isTransitioning)return!1;let i=O(r.currentLocation.pathname,a)||r.currentLocation.pathname,o=O(r.nextLocation.pathname,a)||r.nextLocation.pathname;return ne(n.pathname,o)!=null||ne(n.pathname,i)!=null}var Wr=F(H(),1),Br=F(Qr(),1);var ve=F(ae(),1);function Vr({context:e,own:t}){return ie(e.store),kt()?(0,ve.jsx)(yn,{context:e,...t?{own:t}:{}}):null}function yn({context:e,own:t}){let r=Ft()?.live??e.store;if(ie(r),!Bt(r.batches().length))return null;let n=(0,ve.jsx)(Wr.Suspense,{fallback:null,children:(0,ve.jsx)(Vt,{remembers:!1})});return t?(0,Br.createPortal)(n,t):(0,ve.jsx)("div",{className:"graview-bar-own",children:n})}var N=F(H(),1);var G=F(H(),1),Rn=(0,G.createContext)(null);function Li(){let e=new Map,t=new Set,r=()=>{for(let a of t)a()};return{count:a=>e.get(a)??0,place(a){return e.set(a,(e.get(a)??0)+1),r(),()=>{e.set(a,(e.get(a)??1)-1),r()}},subscribe(a){return t.add(a),()=>t.delete(a)}}}function Kr(e){let t=(0,G.useContext)(Rn);(0,G.useLayoutEffect)(()=>t?.place(e),[t,e])}function Di(e,t){return(0,G.useSyncExternalStore)(e.subscribe,()=>e.count(t)>0,()=>!1)}var Jr=F(H(),1),W=F(ae(),1),ft="var(--graview-text-small)",ht="var(--graview-text-body)",Oi="var(--graview-font-display, var(--graview-font-body, system-ui))",mt={maxWidth:760,margin:"0 auto",padding:"40px var(--graview-page-gutter, 20px) max(96px, calc(var(--graview-foot-room, 0px) + env(safe-area-inset-bottom, 0px)))",display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:40},pt=1160,Ui={...mt,maxWidth:pt},Yr={margin:0,fontSize:"var(--graview-text-title)",lineHeight:1.2,letterSpacing:"-0.012em",overflowWrap:"anywhere",textWrap:"balance"},Hi={margin:0,fontSize:"var(--graview-text-heading)",lineHeight:1.3,textWrap:"balance"},Ii={margin:0,fontSize:ft,letterSpacing:"0.08em",textTransform:"uppercase",color:"var(--graview-ink-muted)"},zi={margin:0,fontSize:ht,color:"var(--graview-ink-muted)",maxWidth:"60ch"},Gr={color:"var(--graview-ink-muted)",fontSize:ft},ji={borderTop:"1px solid var(--graview-edge)",paddingTop:24},vn={color:"var(--graview-accent)",textDecorationColor:"color-mix(in srgb, currentColor 50%, transparent)",textDecorationThickness:1,textUnderlineOffset:"0.2em",display:"inline-flex",alignItems:"center",columnGap:"0.3em",minHeight:24},Wi={...vn,textDecoration:"none"},Bi={color:"inherit",textDecoration:"none",display:"inline-flex",alignItems:"center",minHeight:24},Vi=`.graview-list{container-type:inline-size}
2
2
  .graview-rows{display:grid;grid-template-columns:minmax(0,1fr);column-gap:1.5rem;margin:0;padding:0;list-style:none;border-top:1px solid var(--graview-edge)}
3
3
  .graview-row{grid-column:1/-1;display:grid;grid-template-columns:subgrid;align-items:baseline;align-content:center;position:relative;box-sizing:border-box;min-height:2.75rem;padding:.5rem 0;border-bottom:1px solid var(--graview-edge);overflow-wrap:anywhere}
4
4
  .graview-row-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:24px;color:inherit;text-decoration:none;font-size:var(--graview-text-body);font-weight:500;line-height:1.3;text-wrap:pretty;hyphens:manual}
@@ -17,9 +17,9 @@ import{a as Bt,b as Vt,c as We,d as Kt,h as Jt,i as ie,j as Yt,k as Gt}from"./ch
17
17
  .graview-group-toggle{display:inline-flex;gap:.5em;align-items:center;min-height:2.75rem;margin:-.375rem 0;padding:0 .5rem 0 0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-align:start;cursor:pointer;border-radius:var(--graview-radius-sm)}
18
18
  .graview-group-toggle:focus-visible{outline:2px solid var(--graview-accent);outline-offset:2px}
19
19
  .graview-group-toggle>span{color:var(--graview-ink-muted);font-weight:var(--graview-weight-body)}
20
- @container (min-width:36rem){.graview-rows{grid-template-columns:minmax(0,1fr) fit-content(40%)}.graview-group-head:has(+.graview-rows){position:sticky;top:0;z-index:${bt.raised};background:var(--graview-ground)}}`,Vi={font:"inherit",fontSize:ft,padding:"8px 14px",borderRadius:"var(--graview-radius-sm, 8px)",border:"1px solid var(--graview-edge-bright)",background:"var(--graview-panel)",color:"var(--graview-ink)",cursor:"pointer"};function Ki({kind:e,brand:t,size:r=10,schema:a}){return(0,W.jsx)(_t,{kind:e,...a?{schema:a}:{},...t?{brand:t}:{},size:Math.round(r*1.6)})}function Ji(e,t,r){return e.author.kind==="human"&&(e.author.id===void 0||t?.id===void 0||e.author.id===t.id)?"you":r?vt(e.author,r):e.author.kind==="agent"?e.author.id??"an agent":e.author.id??e.author.kind}function Yi(e,t,r){return wn(e,t,r).map(a=>a.text).join(" \xB7 ")}function wn(e,t,r,a=()=>!1){return At(e,t,{limit:3,said:[r],glance:!0}).map(n=>n.long?{text:Nt(n.stored,{markdown:n.markdown,most:100})}:a(n.key)?{text:n.alone,choice:n.key}:{text:n.alone})}function Gi({runs:e}){return(0,W.jsx)(W.Fragment,{children:e.map((t,r)=>{let a=r===0?"":t.choice===void 0&&e[r-1].choice===void 0?" \xB7 ":" ";return(0,W.jsx)(Jr.Fragment,{children:t.choice!==void 0?(0,W.jsxs)(W.Fragment,{children:[a,(0,W.jsx)("span",{className:"graview-chip","data-graview-field":t.choice,children:t.text})]}):`${a}${t.text}`},r)})})}var Xi=(e,t)=>be(e.schema,t),Sn=(e,t)=>{let r=e.kindsKeptFrom(t);return e.schema.kinds.filter(a=>!e.modules.disabledKinds.has(a)&&!r.has(a))},bn=e=>Lt(Sn(e.store,e.principal),e.views?.arrangement?.()?.order),Qi=e=>{let t=new Set(e.views?.arrangement?.()?.hide??[]);return bn(e).filter(r=>!t.has(r))},Zi=e=>e.charAt(0).toUpperCase()+e.slice(1);var x=F(ae(),1);function dl({context:e,children:t}){let{store:r,brand:a}=e;ie(r);let n=Dt();return Mt(e.embedded?void 0:St(e.assetsAt??n,wt(a))),Tt(e.embedded?void 0:a),(0,x.jsxs)("div",{style:{...e.embedded?{}:{minHeight:"100vh"},display:"flex",flexDirection:"column",background:"var(--graview-ground)",color:"var(--graview-ink)",fontFamily:"var(--graview-font-body, system-ui)",fontSize:ht,lineHeight:1.5},children:[e.embedded?null:(0,x.jsx)(En,{context:e}),(0,x.jsx)("div",{style:{flex:1},children:t}),e.remembers?(0,x.jsx)("footer",{style:{borderTop:"1px solid var(--graview-edge)",padding:"14px 20px max(20px, calc(var(--graview-foot-room, 0px) + env(safe-area-inset-bottom, 0px)))",...Gr},children:(0,x.jsx)("div",{style:{maxWidth:pt,margin:"0 auto",display:"flex",gap:14,flexWrap:"wrap",alignItems:"center",justifyContent:"flex-end"},children:(0,x.jsxs)("span",{"data-testid":"remembered",children:["Remembered in this browser \xB7 ",(0,x.jsx)(Jt,{})]})})}):null]})}var xn=(0,N.createContext)(null);function En({context:e}){let{store:t,brand:r,sceneHref:a="/",invariantContext:n}=e,i=D(),o=V(),l=he("/").replace(/\/$/,""),s=(0,N.useContext)(xn),u=s?.places===!1?[]:Ot({store:t,principal:e.principal,views:e.views}),d=e.views?.arrangement?.(),f=`${i.pathname}${i.search}`,c=t.violations(n),g=c.length,h=jt(c,"All rules hold"),v=i.pathname.split("/").filter(Boolean),y=v.length===2&&xe(t.schema,v[0])!==void 0&&t.graph.getNode(decodeURIComponent(v[1]))!==void 0;return(0,x.jsx)(x.Fragment,{children:(0,x.jsx)(It,{brand:r,name:r?.name??"Graview",description:r?.subtitle,home:{href:`${l}/`,go:()=>o("/"),current:i.pathname==="/"},faces:{scene:{label:Ct(d),current:!1,go:()=>window.location.assign(a)},pages:{label:$t(d),current:!0,go:()=>{}}},places:u,current:Ut(u,f),reach:{href:R=>`${l}${R}`,go:R=>o(R.path)},...s?{onFind:s.onFind,find:s.find}:{findBox:(0,x.jsx)(kn,{context:e})},skips:(0,x.jsx)(Kt,{to:[{label:"Skip to the content",testid:"content",go:()=>{let R=document.querySelector("[data-graview-skip-target]");We(R?.querySelector('[data-graview-choose-box][tabindex="0"]')??R??document.querySelector("main"))}},...y?[{label:"Skip to what can be done",testid:"acts",go:()=>void We(document.querySelector("main [data-affordance]:not([disabled]):not([tabindex='-1'])")??document.querySelector("main [data-affordance]:not([disabled])")??document.querySelector("main"))}]:[]]}),tools:(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(Re,{to:"/problems","data-testid":"standing-link","aria-label":h,title:h,style:{...Ht,position:"relative",textDecoration:"none",color:g===0?"var(--graview-ink-muted)":"var(--graview-warn)"},children:(0,x.jsx)(Wt,{tone:g===0?"var(--graview-good)":"var(--graview-warn)"})}),s?null:(0,x.jsx)(Vr,{context:e}),e.views?(0,x.jsx)(zt,{...e.signature?{signature:!0}:{}}):null]})})})}function fl({context:e,style:t,bleedTop:r,spans:a,children:n,...i}){let o=e.embedded||e.framed?"section":"main",l=(0,x.jsxs)(o,{style:{...mt,...t},"data-graview-page-main":"",...r?{"data-graview-bleed-top":r==="full"?"full":""}:{},...i,children:[r?(0,x.jsx)("style",{children:r==="full"?Cn:Pn}):null,n]});return a?(0,x.jsx)($n,{children:l}):l}var Pn='@media (max-width:680px){[data-graview-bleed-top=""]:not(:has([data-graview-bleed]>[data-worker-view-fallback])){padding-top:0 !important}}',Xr="[data-worker-view-fallback],[data-worker-view-failed],[data-graview-view-error]",gt=`[data-graview-bleed-top=full]:not(:has([data-graview-bleed=full] :is(${Xr})))`,Cn=`${gt}:not(:has(>header>:not([data-graview-page-title]))){padding-top:0 !important}${gt}>header:not(:has(>:not([data-graview-page-title]))){position:absolute}${gt} [data-graview-line-over-view]{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}`;function $n({children:e}){return(0,x.jsx)("div",{"data-graview-page-spans":"",style:{containerType:"inline-size",minWidth:0,width:"100%",flex:"1 1 0%"},children:e})}function hl({when:e,full:t,children:r}){return!e&&!t?(0,x.jsx)(x.Fragment,{children:r}):(0,x.jsxs)("div",{"data-graview-bleed":t?"full":"",style:{display:"grid",minWidth:0},children:[(0,x.jsx)("style",{children:t?Ln:Dn}),r]})}var yt=`[data-graview-bleed=full]:not(:has(${Xr}))`,Ln=`${yt}{margin-left:calc(50% - 50cqw + env(safe-area-inset-left,0px));margin-right:calc(50% - 50cqw + env(safe-area-inset-right,0px))}${yt} [data-worker-view-beside-under]{box-sizing:border-box;width:100%;max-width:calc(760px + 2*var(--graview-page-gutter,20px));margin-inline:auto;padding-inline:var(--graview-page-gutter,20px)}${yt} [data-testid="draft-view-line"]{padding-inline:var(--graview-page-gutter,20px)}`,Dn='@media (max-width:680px){[data-graview-bleed=""]:not(:has(>[data-worker-view-fallback])){margin-inline:min(0px,calc(env(safe-area-inset-left,0px) - var(--graview-page-gutter,20px))) min(0px,calc(env(safe-area-inset-right,0px) - var(--graview-page-gutter,20px)))}}',Fn={position:"absolute",width:1,height:1,margin:-1,overflow:"hidden",clip:"rect(0 0 0 0)",whiteSpace:"nowrap"};function ml({context:e,unseen:t,children:r,...a}){let n=`h${e.titleLevel??(e.framed&&!e.barAbove?1:2)}`;return(0,x.jsx)(n,{style:t?Fn:Yr,"data-graview-page-title":"",...a,children:r})}function kn({context:e,narrowsLists:t=!0,className:r,size:a}){Kr("find");let n=D(),i=V(),[o,l]=dt(),s=n.pathname.split("/").filter(Boolean),u=t&&s.length===1&&xe(e.store.schema,s[0])!==void 0,d=n.pathname==="/search",f=u||d?o.get("q")??"":"",c=u?`Narrow ${be(e.store.schema,xe(e.store.schema,s[0])).toLowerCase()}\u2026`:"",[g,h]=(0,N.useState)(!0);(0,N.useLayoutEffect)(()=>{let C=R.current;if(!C||!c||typeof ResizeObserver>"u")return;let b=()=>{let L=getComputedStyle(C),U=document.createElement("canvas").getContext("2d");U&&(U.font=`${L.fontWeight} ${L.fontSize} ${L.fontFamily}`,h(U.measureText(c).width<=C.clientWidth-parseFloat(L.paddingLeft)-parseFloat(L.paddingRight)))};b();let T=new ResizeObserver(b);return T.observe(C),()=>T.disconnect()},[c]);let[v,y]=(0,N.useState)(f),R=(0,N.useRef)(null);(0,N.useEffect)(()=>{let C=b=>{if(b.defaultPrevented||b.altKey)return;let T=!b.shiftKey&&(b.metaKey||b.ctrlKey)&&b.key.toLowerCase()==="k",L=document.activeElement,U=L instanceof HTMLInputElement||L instanceof HTMLTextAreaElement||L instanceof HTMLSelectElement||L instanceof HTMLElement&&L.isContentEditable,X=b.key==="/"&&!b.metaKey&&!b.ctrlKey&&!U;if(!T&&!X)return;let B=R.current,we=B?.closest("[data-graview-embed]"),re=b.target,Se=re===document.body||re===document.documentElement;!B||!(Se||!we||re instanceof Node&&we.contains(re))||(b.preventDefault(),B.closest("[data-graview-app-bar]")?.querySelector('[data-testid="app-find-open"]')?.click(),requestAnimationFrame(()=>{B.focus(),B.select()}))};return document.addEventListener("keydown",C),()=>document.removeEventListener("keydown",C)},[]);let E=(0,N.useRef)(new Set([f]));(0,N.useEffect)(()=>{E.current.has(f)||(E.current=new Set([f]),y(f))},[f]);let P=C=>{if(y(C),E.current.add(C),u){let T=new URLSearchParams(o);C.trim()?T.set("q",C):T.delete("q"),l(T,{replace:!0});return}let b=C.trim()?`/search?${new URLSearchParams({q:C}).toString()}`:"/search";i(b,{replace:d})};return(0,x.jsxs)("form",{role:"search","aria-label":u?"Narrow this list":"Find anything",className:Gt("graview-find",r),...Yt(a),onSubmit:C=>{C.preventDefault(),u&&v.trim()&&i(`/search?${new URLSearchParams({q:v}).toString()}`)},children:[(0,x.jsx)("input",{ref:R,type:"search","data-testid":"nav-find",value:v,onChange:C=>P(C.target.value),placeholder:u?g?c:"Narrow\u2026":"Find\u2026","aria-keyshortcuts":"/ Meta+K Control+K","aria-label":u?"Narrow this list":"Find anything",className:"graview-find-box"}),(0,x.jsx)("style",{children:Mn})]})}var Mn=`:where(.graview-find){display:flex;min-width:0;flex:1 1 auto}
20
+ @container (min-width:36rem){.graview-rows{grid-template-columns:minmax(0,1fr) fit-content(40%)}.graview-group-head:has(+.graview-rows){position:sticky;top:0;z-index:${bt.raised};background:var(--graview-ground)}}`,Ki={font:"inherit",fontSize:ft,padding:"8px 14px",borderRadius:"var(--graview-radius-sm, 8px)",border:"1px solid var(--graview-edge-bright)",background:"var(--graview-panel)",color:"var(--graview-ink)",cursor:"pointer"};function Ji({kind:e,brand:t,size:r=10,schema:a}){return(0,W.jsx)(_t,{kind:e,...a?{schema:a}:{},...t?{brand:t}:{},size:Math.round(r*1.6)})}function Yi(e,t,r){return e.author.kind==="human"&&(e.author.id===void 0||t?.id===void 0||e.author.id===t.id)?"you":r?vt(e.author,r):e.author.kind==="agent"?e.author.id??"an agent":e.author.id??e.author.kind}function Gi(e,t,r){return wn(e,t,r).map(a=>a.text).join(" \xB7 ")}function wn(e,t,r,a=()=>!1){return At(e,t,{limit:3,said:[r],glance:!0}).map(n=>n.long?{text:Nt(n.stored,{markdown:n.markdown,most:100})}:a(n.key)?{text:n.alone,choice:n.key}:{text:n.alone})}function Xi({runs:e}){return(0,W.jsx)(W.Fragment,{children:e.map((t,r)=>{let a=r===0?"":t.choice===void 0&&e[r-1].choice===void 0?" \xB7 ":" ";return(0,W.jsx)(Jr.Fragment,{children:t.choice!==void 0?(0,W.jsxs)(W.Fragment,{children:[a,(0,W.jsx)("span",{className:"graview-chip","data-graview-field":t.choice,children:t.text})]}):`${a}${t.text}`},r)})})}var Qi=(e,t)=>be(e.schema,t),Sn=(e,t)=>{let r=e.kindsKeptFrom(t);return e.schema.kinds.filter(a=>!e.modules.disabledKinds.has(a)&&!r.has(a))},bn=e=>Lt(Sn(e.store,e.principal),e.views?.arrangement?.()?.order),Zi=e=>{let t=new Set(e.views?.arrangement?.()?.hide??[]);return bn(e).filter(r=>!t.has(r))},qi=e=>e.charAt(0).toUpperCase()+e.slice(1);var x=F(ae(),1);function fl({context:e,children:t}){let{store:r,brand:a}=e;ie(r);let n=Dt();return Mt(e.embedded?void 0:St(e.assetsAt??n,wt(a))),Tt(e.embedded?void 0:a),(0,x.jsxs)("div",{style:{...e.embedded?{}:{minHeight:"100vh"},display:"flex",flexDirection:"column",background:"var(--graview-ground)",color:"var(--graview-ink)",fontFamily:"var(--graview-font-body, system-ui)",fontSize:ht,lineHeight:1.5},children:[e.embedded?null:(0,x.jsx)(En,{context:e}),(0,x.jsx)("div",{style:{flex:1},children:t}),e.remembers?(0,x.jsx)("footer",{style:{borderTop:"1px solid var(--graview-edge)",padding:"14px 20px max(20px, calc(var(--graview-foot-room, 0px) + env(safe-area-inset-bottom, 0px)))",...Gr},children:(0,x.jsx)("div",{style:{maxWidth:pt,margin:"0 auto",display:"flex",gap:14,flexWrap:"wrap",alignItems:"center",justifyContent:"flex-end"},children:(0,x.jsxs)("span",{"data-testid":"remembered",children:["Remembered in this browser \xB7 ",(0,x.jsx)(Jt,{})]})})}):null]})}var xn=(0,N.createContext)(null);function En({context:e}){let{store:t,brand:r,sceneHref:a="/",invariantContext:n}=e,i=D(),o=V(),l=he("/").replace(/\/$/,""),s=(0,N.useContext)(xn),u=s?.places===!1?[]:Ot({store:t,principal:e.principal,views:e.views}),d=e.views?.arrangement?.(),f=`${i.pathname}${i.search}`,c=t.violations(n),g=c.length,h=jt(c,"All rules hold"),v=i.pathname.split("/").filter(Boolean),y=v.length===2&&xe(t.schema,v[0])!==void 0&&t.graph.getNode(decodeURIComponent(v[1]))!==void 0;return(0,x.jsx)(x.Fragment,{children:(0,x.jsx)(It,{brand:r,name:r?.name??"Graview",description:r?.subtitle,home:{href:`${l}/`,go:()=>o("/"),current:i.pathname==="/"},faces:{scene:{label:Ct(d),current:!1,go:()=>window.location.assign(a)},pages:{label:$t(d),current:!0,go:()=>{}}},places:u,current:Ut(u,f),reach:{href:R=>`${l}${R}`,go:R=>o(R.path)},...s?{onFind:s.onFind,find:s.find}:{findBox:(0,x.jsx)(Mn,{context:e})},skips:(0,x.jsx)(Kt,{to:[{label:"Skip to the content",testid:"content",go:()=>{let R=document.querySelector("[data-graview-skip-target]");We(R?.querySelector('[data-graview-choose-box][tabindex="0"]')??R??document.querySelector("main"))}},...y?[{label:"Skip to what can be done",testid:"acts",go:()=>void We(document.querySelector("main [data-affordance]:not([disabled]):not([tabindex='-1'])")??document.querySelector("main [data-affordance]:not([disabled])")??document.querySelector("main"))}]:[]]}),tools:(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(Re,{to:"/problems","data-testid":"standing-link","aria-label":h,title:h,style:{...Ht,position:"relative",textDecoration:"none",color:g===0?"var(--graview-ink-muted)":"var(--graview-warn)"},children:(0,x.jsx)(Wt,{tone:g===0?"var(--graview-good)":"var(--graview-warn)"})}),s?null:(0,x.jsx)(Vr,{context:e}),e.views?(0,x.jsx)(zt,{...e.signature?{signature:!0}:{}}):null]})})})}function hl({context:e,style:t,bleedTop:r,spans:a,children:n,...i}){let o=e.embedded||e.framed?"section":"main",l=(0,x.jsxs)(o,{style:{...mt,...t},"data-graview-page-main":"",...r?{"data-graview-bleed-top":r==="full"?"full":""}:{},...i,children:[r?(0,x.jsx)("style",{children:r==="full"?Cn:Pn}):null,n]});return a?(0,x.jsx)($n,{children:l}):l}var Pn='@media (max-width:680px){[data-graview-bleed-top=""]:not(:has([data-graview-bleed]>:is([data-worker-view-fallback],[data-graview-view-error]))){padding-top:0 !important}}',Xr="[data-worker-view-fallback],[data-worker-view-failed],[data-graview-view-error]",gt=`[data-graview-bleed-top=full]:not(:has([data-graview-bleed=full] :is(${Xr})))`,Cn=`${gt}:not(:has(>header>:not([data-graview-page-title]))){padding-top:0 !important}${gt}>header:not(:has(>:not([data-graview-page-title]))){position:absolute}${gt} [data-graview-line-over-view]{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}`;function $n({children:e}){return(0,x.jsx)("div",{"data-graview-page-spans":"",style:{containerType:"inline-size",minWidth:0,width:"100%",flex:"1 1 0%"},children:e})}function ml({when:e,full:t,children:r}){return!e&&!t?(0,x.jsx)(x.Fragment,{children:r}):(0,x.jsxs)("div",{"data-graview-bleed":t?"full":"",style:{display:"grid",minWidth:0},children:[(0,x.jsx)("style",{children:t?Ln:Fn}),r]})}var yt=`[data-graview-bleed=full]:not(:has(${Xr}))`,Ln=`${yt}{margin-left:calc(50% - 50cqw + env(safe-area-inset-left,0px));margin-right:calc(50% - 50cqw + env(safe-area-inset-right,0px))}${yt} [data-worker-view-beside-under]{box-sizing:border-box;width:100%;max-width:calc(760px + 2*var(--graview-page-gutter,20px));margin-inline:auto;padding-inline:var(--graview-page-gutter,20px)}${yt} [data-testid="draft-view-line"]{padding-inline:var(--graview-page-gutter,20px)}`,Dn="[data-worker-view-fallback],[data-graview-view-error]",Fn=`@media (max-width:680px){[data-graview-bleed=""]:not(:has(>:is(${Dn}))){margin-left:min(0px,calc(env(safe-area-inset-left,0px) - var(--graview-page-gutter,20px)));margin-right:min(0px,calc(env(safe-area-inset-right,0px) - var(--graview-page-gutter,20px)))}}`,kn={position:"absolute",width:1,height:1,margin:-1,overflow:"hidden",clip:"rect(0 0 0 0)",whiteSpace:"nowrap"};function pl({context:e,unseen:t,children:r,...a}){let n=`h${e.titleLevel??(e.framed&&!e.barAbove?1:2)}`;return(0,x.jsx)(n,{style:t?kn:Yr,"data-graview-page-title":"",...a,children:r})}function Mn({context:e,narrowsLists:t=!0,className:r,size:a}){Kr("find");let n=D(),i=V(),[o,l]=dt(),s=n.pathname.split("/").filter(Boolean),u=t&&s.length===1&&xe(e.store.schema,s[0])!==void 0,d=n.pathname==="/search",f=u||d?o.get("q")??"":"",c=u?`Narrow ${be(e.store.schema,xe(e.store.schema,s[0])).toLowerCase()}\u2026`:"",[g,h]=(0,N.useState)(!0);(0,N.useLayoutEffect)(()=>{let C=R.current;if(!C||!c||typeof ResizeObserver>"u")return;let b=()=>{let L=getComputedStyle(C),U=document.createElement("canvas").getContext("2d");U&&(U.font=`${L.fontWeight} ${L.fontSize} ${L.fontFamily}`,h(U.measureText(c).width<=C.clientWidth-parseFloat(L.paddingLeft)-parseFloat(L.paddingRight)))};b();let T=new ResizeObserver(b);return T.observe(C),()=>T.disconnect()},[c]);let[v,y]=(0,N.useState)(f),R=(0,N.useRef)(null);(0,N.useEffect)(()=>{let C=b=>{if(b.defaultPrevented||b.altKey)return;let T=!b.shiftKey&&(b.metaKey||b.ctrlKey)&&b.key.toLowerCase()==="k",L=document.activeElement,U=L instanceof HTMLInputElement||L instanceof HTMLTextAreaElement||L instanceof HTMLSelectElement||L instanceof HTMLElement&&L.isContentEditable,X=b.key==="/"&&!b.metaKey&&!b.ctrlKey&&!U;if(!T&&!X)return;let B=R.current,we=B?.closest("[data-graview-embed]"),re=b.target,Se=re===document.body||re===document.documentElement;!B||!(Se||!we||re instanceof Node&&we.contains(re))||(b.preventDefault(),B.closest("[data-graview-app-bar]")?.querySelector('[data-testid="app-find-open"]')?.click(),requestAnimationFrame(()=>{B.focus(),B.select()}))};return document.addEventListener("keydown",C),()=>document.removeEventListener("keydown",C)},[]);let E=(0,N.useRef)(new Set([f]));(0,N.useEffect)(()=>{E.current.has(f)||(E.current=new Set([f]),y(f))},[f]);let P=C=>{if(y(C),E.current.add(C),u){let T=new URLSearchParams(o);C.trim()?T.set("q",C):T.delete("q"),l(T,{replace:!0});return}let b=C.trim()?`/search?${new URLSearchParams({q:C}).toString()}`:"/search";i(b,{replace:d})};return(0,x.jsxs)("form",{role:"search","aria-label":u?"Narrow this list":"Find anything",className:Gt("graview-find",r),...Yt(a),onSubmit:C=>{C.preventDefault(),u&&v.trim()&&i(`/search?${new URLSearchParams({q:v}).toString()}`)},children:[(0,x.jsx)("input",{ref:R,type:"search","data-testid":"nav-find",value:v,onChange:C=>P(C.target.value),placeholder:u?g?c:"Narrow\u2026":"Find\u2026","aria-keyshortcuts":"/ Meta+K Control+K","aria-label":u?"Narrow this list":"Find anything",className:"graview-find-box"}),(0,x.jsx)("style",{children:Tn})]})}var Tn=`:where(.graview-find){display:flex;min-width:0;flex:1 1 auto}
21
21
  :where(.graview-find[data-size=md]){--graview-control-height:36px}
22
- :where(.graview-find-box){box-sizing:border-box;width:100%;min-width:0;height:var(--graview-control-height,30px);padding:0 var(--graview-bar-find-end,10px) 0 10px;font:inherit;font-size:.875rem;color:var(--graview-ink);background:var(--graview-ground);border:1px solid var(--graview-edge);border-radius:8px}`;export{Zr as a,xe as b,_n as c,Nn as d,he as e,D as f,$a as g,V as h,wr as i,qa as j,en as k,Fr as l,tn as m,fn as n,Re as o,dt as p,ft as q,Ai as r,Oi as s,Ui as t,Hi as u,Ii as v,Gr as w,zi as x,vn as y,ji as z,Wi as A,Bi as B,Vi as C,Ki as D,Ji as E,Yi as F,wn as G,Gi as H,Xi as I,Sn as J,bn as K,Qi as L,Zi as M,Vr as N,Rn as O,$i as P,Li as Q,dl as R,xn as S,fl as T,hl as U,ml as V,kn as W};
22
+ :where(.graview-find-box){box-sizing:border-box;width:100%;min-width:0;height:var(--graview-control-height,30px);padding:0 var(--graview-bar-find-end,10px) 0 10px;font:inherit;font-size:.875rem;color:var(--graview-ink);background:var(--graview-ground);border:1px solid var(--graview-edge);border-radius:8px}`;export{Zr as a,xe as b,Nn as c,An as d,he as e,D as f,$a as g,V as h,wr as i,qa as j,en as k,Fr as l,tn as m,fn as n,Re as o,dt as p,ft as q,Oi as r,Ui as s,Hi as t,Ii as u,zi as v,Gr as w,ji as x,vn as y,Wi as z,Bi as A,Vi as B,Ki as C,Ji as D,Yi as E,Gi as F,wn as G,Xi as H,Qi as I,Sn as J,bn as K,Zi as L,qi as M,Vr as N,Rn as O,Li as P,Di as Q,fl as R,xn as S,hl as T,ml as U,pl as V,Mn as W};
23
23
  /*! Bundled license information:
24
24
 
25
25
  react-router/dist/production/lib/router/url.js: