@selvajs/selva 2.0.1 → 2.0.2

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 (452) hide show
  1. package/build/client/.!34937!selva_example_0_1_0.gh +0 -0
  2. package/build/client/_app/immutable/assets/0.B0phAlf7.css.gz +0 -0
  3. package/build/client/_app/immutable/assets/20.5bKkcx-V.css +1 -0
  4. package/build/client/_app/immutable/assets/20.5bKkcx-V.css.br +0 -0
  5. package/build/client/_app/immutable/assets/20.5bKkcx-V.css.gz +0 -0
  6. package/build/client/_app/immutable/assets/index.CV-KWLNP.css.gz +0 -0
  7. package/build/client/_app/immutable/chunks/1s2jTHrf.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/2XlIPTRw.js.gz +0 -0
  9. package/build/client/_app/immutable/chunks/2_FEXmq1.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/2dX6Wjni.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/4tskcAVN.js.gz +0 -0
  12. package/build/client/_app/immutable/chunks/AEyooZaf.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/B1aRL9Hz.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/B8uG8z2c.js.gz +0 -0
  15. package/build/client/_app/immutable/chunks/B8zY50Bc.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/BCse3N0b.js.gz +0 -0
  17. package/build/client/_app/immutable/chunks/BGxzXVpM.js.gz +0 -0
  18. package/build/client/_app/immutable/chunks/BM4_iXSA.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/BMGykAfL.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/BNScKugQ.js.gz +0 -0
  21. package/build/client/_app/immutable/chunks/BNzEBMy8.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/BU9URCkw.js.gz +0 -0
  23. package/build/client/_app/immutable/chunks/BW4xleRz.js.gz +0 -0
  24. package/build/client/_app/immutable/chunks/BZmrLQwT.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/B_Lmgh7q.js.gz +0 -0
  26. package/build/client/_app/immutable/chunks/BapAUJpM.js.gz +0 -0
  27. package/build/client/_app/immutable/chunks/Bb9xebuT.js.gz +0 -0
  28. package/build/client/_app/immutable/chunks/BjkQG7dw.js.gz +0 -0
  29. package/build/client/_app/immutable/chunks/Bmz9gLBz.js.gz +0 -0
  30. package/build/client/_app/immutable/chunks/Bnpwcepm.js.gz +0 -0
  31. package/build/client/_app/immutable/chunks/BoR6OKl6.js.gz +0 -0
  32. package/build/client/_app/immutable/chunks/Br5bpmJC.js.gz +0 -0
  33. package/build/client/_app/immutable/chunks/BxCHY0iG.js.gz +0 -0
  34. package/build/client/_app/immutable/chunks/{BMwGnr2J.js → C-pNJcZ1.js} +1 -1
  35. package/build/client/_app/immutable/chunks/C-pNJcZ1.js.br +0 -0
  36. package/build/client/_app/immutable/chunks/C-pNJcZ1.js.gz +0 -0
  37. package/build/client/_app/immutable/chunks/C1Sz0rtw.js.gz +0 -0
  38. package/build/client/_app/immutable/chunks/C1aQuqo_.js.gz +0 -0
  39. package/build/client/_app/immutable/chunks/C26nmevH.js.gz +0 -0
  40. package/build/client/_app/immutable/chunks/C8ko2SLk.js.gz +0 -0
  41. package/build/client/_app/immutable/chunks/CAMhfNhW.js.gz +0 -0
  42. package/build/client/_app/immutable/chunks/CEnIp_6Y.js.gz +0 -0
  43. package/build/client/_app/immutable/chunks/CMjc_m7Z.js.gz +0 -0
  44. package/build/client/_app/immutable/chunks/CRRzXoPz.js.gz +0 -0
  45. package/build/client/_app/immutable/chunks/CXh1ITwj.js.gz +0 -0
  46. package/build/client/_app/immutable/chunks/CZ1oTCKP.js.gz +0 -0
  47. package/build/client/_app/immutable/chunks/Cbu9Tg11.js.gz +0 -0
  48. package/build/client/_app/immutable/chunks/CcYNc8-G.js.gz +0 -0
  49. package/build/client/_app/immutable/chunks/Cdcajer6.js.gz +0 -0
  50. package/build/client/_app/immutable/chunks/Ce2MupFq.js.gz +0 -0
  51. package/build/client/_app/immutable/chunks/CfP1DoGT.js.gz +0 -0
  52. package/build/client/_app/immutable/chunks/CfhPDo21.js.gz +0 -0
  53. package/build/client/_app/immutable/chunks/CkW8YtSm.js.gz +0 -0
  54. package/build/client/_app/immutable/chunks/CoR7xVWs.js.gz +0 -0
  55. package/build/client/_app/immutable/chunks/CpGv0MSX.js.gz +0 -0
  56. package/build/client/_app/immutable/chunks/{smW5maEe.js → CqdlMl9v.js} +1 -1
  57. package/build/client/_app/immutable/chunks/CqdlMl9v.js.br +0 -0
  58. package/build/client/_app/immutable/chunks/CqdlMl9v.js.gz +0 -0
  59. package/build/client/_app/immutable/chunks/{VmqnFAi3.js → Cvkx15k5.js} +1 -1
  60. package/build/client/_app/immutable/chunks/Cvkx15k5.js.br +0 -0
  61. package/build/client/_app/immutable/chunks/Cvkx15k5.js.gz +0 -0
  62. package/build/client/_app/immutable/chunks/Cvr8AlQE.js.gz +0 -0
  63. package/build/client/_app/immutable/chunks/D0QMYypb.js.gz +0 -0
  64. package/build/client/_app/immutable/chunks/D40b34QZ.js.gz +0 -0
  65. package/build/client/_app/immutable/chunks/D6MI_dhi.js.gz +0 -0
  66. package/build/client/_app/immutable/chunks/D7l1JayF.js.gz +0 -0
  67. package/build/client/_app/immutable/chunks/D99uXqZb.js.gz +0 -0
  68. package/build/client/_app/immutable/chunks/DEBBEmC0.js.gz +0 -0
  69. package/build/client/_app/immutable/chunks/DNsLImlA.js.gz +0 -0
  70. package/build/client/_app/immutable/chunks/DRDjLZb3.js.gz +0 -0
  71. package/build/client/_app/immutable/chunks/DTJeGfAL.js.gz +0 -0
  72. package/build/client/_app/immutable/chunks/DZFqETAQ.js.gz +0 -0
  73. package/build/client/_app/immutable/chunks/D_wr-JLf.js.gz +0 -0
  74. package/build/client/_app/immutable/chunks/Dl4WTuMB.js.gz +0 -0
  75. package/build/client/_app/immutable/chunks/Doks8ISn.js.gz +0 -0
  76. package/build/client/_app/immutable/chunks/DsnmJJEf.js.gz +0 -0
  77. package/build/client/_app/immutable/chunks/{CS49LPny.js → Dw1n4e1Z.js} +1 -1
  78. package/build/client/_app/immutable/chunks/Dw1n4e1Z.js.br +0 -0
  79. package/build/client/_app/immutable/chunks/Dw1n4e1Z.js.gz +0 -0
  80. package/build/client/_app/immutable/chunks/E3yOQTT0.js.gz +0 -0
  81. package/build/client/_app/immutable/chunks/Gxlzmh6y.js.gz +0 -0
  82. package/build/client/_app/immutable/chunks/Ib-7xmHT.js.gz +0 -0
  83. package/build/client/_app/immutable/chunks/P4Np3c9O.js.gz +0 -0
  84. package/build/client/_app/immutable/chunks/Zf7VV5ZB.js.gz +0 -0
  85. package/build/client/_app/immutable/chunks/_OLpdTiI.js.gz +0 -0
  86. package/build/client/_app/immutable/chunks/azBeeLR0.js.gz +0 -0
  87. package/build/client/_app/immutable/chunks/{BSyJ0ZuA.js → ej-X2XiW.js} +1 -1
  88. package/build/client/_app/immutable/chunks/ej-X2XiW.js.br +0 -0
  89. package/build/client/_app/immutable/chunks/ej-X2XiW.js.gz +0 -0
  90. package/build/client/_app/immutable/chunks/gMllmzma.js.gz +0 -0
  91. package/build/client/_app/immutable/chunks/hRoV10UM.js.gz +0 -0
  92. package/build/client/_app/immutable/chunks/iEBlyxZv.js.gz +0 -0
  93. package/build/client/_app/immutable/chunks/jFKgkeON.js.gz +0 -0
  94. package/build/client/_app/immutable/chunks/ooPBmYPj.js.gz +0 -0
  95. package/build/client/_app/immutable/chunks/pRg-f8xU.js.gz +0 -0
  96. package/build/client/_app/immutable/chunks/uINs3xv3.js.gz +0 -0
  97. package/build/client/_app/immutable/chunks/wamM80bu.js.gz +0 -0
  98. package/build/client/_app/immutable/chunks/xe-rGDG8.js +3 -0
  99. package/build/client/_app/immutable/chunks/xe-rGDG8.js.br +0 -0
  100. package/build/client/_app/immutable/chunks/xe-rGDG8.js.gz +0 -0
  101. package/build/client/_app/immutable/entry/{app.GElcRZPp.js → app.CFLPIelF.js} +2 -2
  102. package/build/client/_app/immutable/entry/app.CFLPIelF.js.br +0 -0
  103. package/build/client/_app/immutable/entry/app.CFLPIelF.js.gz +0 -0
  104. package/build/client/_app/immutable/entry/start.CrhtzCz1.js +1 -0
  105. package/build/client/_app/immutable/entry/start.CrhtzCz1.js.br +0 -0
  106. package/build/client/_app/immutable/entry/start.CrhtzCz1.js.gz +0 -0
  107. package/build/client/_app/immutable/nodes/{0.r0PA_Sxw.js → 0.KJ-PiM1c.js} +1 -1
  108. package/build/client/_app/immutable/nodes/0.KJ-PiM1c.js.br +0 -0
  109. package/build/client/_app/immutable/nodes/0.KJ-PiM1c.js.gz +0 -0
  110. package/build/client/_app/immutable/nodes/{1.CTfA0FAT.js → 1.B4cNXFZe.js} +1 -1
  111. package/build/client/_app/immutable/nodes/1.B4cNXFZe.js.br +0 -0
  112. package/build/client/_app/immutable/nodes/1.B4cNXFZe.js.gz +0 -0
  113. package/build/client/_app/immutable/nodes/10.C5pTC9MT.js +3 -0
  114. package/build/client/_app/immutable/nodes/10.C5pTC9MT.js.br +0 -0
  115. package/build/client/_app/immutable/nodes/10.C5pTC9MT.js.gz +0 -0
  116. package/build/client/_app/immutable/nodes/{11.Dk81DreT.js → 11.DO9irQLl.js} +1 -1
  117. package/build/client/_app/immutable/nodes/11.DO9irQLl.js.br +0 -0
  118. package/build/client/_app/immutable/nodes/11.DO9irQLl.js.gz +0 -0
  119. package/build/client/_app/immutable/nodes/12.BoPfAFdi.js.gz +0 -0
  120. package/build/client/_app/immutable/nodes/{13.B3m9NRrd.js → 13.Cmx49Kub.js} +1 -1
  121. package/build/client/_app/immutable/nodes/13.Cmx49Kub.js.br +0 -0
  122. package/build/client/_app/immutable/nodes/13.Cmx49Kub.js.gz +0 -0
  123. package/build/client/_app/immutable/nodes/{14.9MmuwEpn.js → 14.DtWKU29l.js} +1 -1
  124. package/build/client/_app/immutable/nodes/14.DtWKU29l.js.br +0 -0
  125. package/build/client/_app/immutable/nodes/14.DtWKU29l.js.gz +0 -0
  126. package/build/client/_app/immutable/nodes/15.CgB8Kdm8.js +13 -0
  127. package/build/client/_app/immutable/nodes/15.CgB8Kdm8.js.br +0 -0
  128. package/build/client/_app/immutable/nodes/15.CgB8Kdm8.js.gz +0 -0
  129. package/build/client/_app/immutable/nodes/{16.BMWgVDGJ.js → 16.CdiaMjqd.js} +2 -2
  130. package/build/client/_app/immutable/nodes/16.CdiaMjqd.js.br +0 -0
  131. package/build/client/_app/immutable/nodes/16.CdiaMjqd.js.gz +0 -0
  132. package/build/client/_app/immutable/nodes/{17.Bch7V784.js → 17.fdmJDdhR.js} +1 -1
  133. package/build/client/_app/immutable/nodes/17.fdmJDdhR.js.br +0 -0
  134. package/build/client/_app/immutable/nodes/17.fdmJDdhR.js.gz +0 -0
  135. package/build/client/_app/immutable/nodes/18.BpVlwZ30.js.gz +0 -0
  136. package/build/client/_app/immutable/nodes/{19.DQtOUgti.js → 19.CSLP9qPo.js} +1 -1
  137. package/build/client/_app/immutable/nodes/19.CSLP9qPo.js.br +0 -0
  138. package/build/client/_app/immutable/nodes/19.CSLP9qPo.js.gz +0 -0
  139. package/build/client/_app/immutable/nodes/{2.CyCY9Gpy.js → 2.BDo-orPp.js} +1 -1
  140. package/build/client/_app/immutable/nodes/2.BDo-orPp.js.br +0 -0
  141. package/build/client/_app/immutable/nodes/2.BDo-orPp.js.gz +0 -0
  142. package/build/client/_app/immutable/nodes/{20.CT0e7phi.js → 20.vMa5OYGG.js} +6 -6
  143. package/build/client/_app/immutable/nodes/20.vMa5OYGG.js.br +0 -0
  144. package/build/client/_app/immutable/nodes/20.vMa5OYGG.js.gz +0 -0
  145. package/build/client/_app/immutable/nodes/{21.C43xF0qL.js → 21.BXpF6SCn.js} +1 -1
  146. package/build/client/_app/immutable/nodes/21.BXpF6SCn.js.br +0 -0
  147. package/build/client/_app/immutable/nodes/21.BXpF6SCn.js.gz +0 -0
  148. package/build/client/_app/immutable/nodes/{23.CFT1SOUF.js → 23.sYDue3fB.js} +1 -1
  149. package/build/client/_app/immutable/nodes/23.sYDue3fB.js.br +0 -0
  150. package/build/client/_app/immutable/nodes/23.sYDue3fB.js.gz +0 -0
  151. package/build/client/_app/immutable/nodes/{24.BjGP5G3P.js → 24.CMNCTbEg.js} +1 -1
  152. package/build/client/_app/immutable/nodes/24.CMNCTbEg.js.br +0 -0
  153. package/build/client/_app/immutable/nodes/24.CMNCTbEg.js.gz +0 -0
  154. package/build/client/_app/immutable/nodes/25.oeBaWIUn.js.gz +0 -0
  155. package/build/client/_app/immutable/nodes/26.lPx5SjN1.js.gz +0 -0
  156. package/build/client/_app/immutable/nodes/{27.BS48zWld.js → 27.Cx5OgRDj.js} +1 -1
  157. package/build/client/_app/immutable/nodes/27.Cx5OgRDj.js.br +0 -0
  158. package/build/client/_app/immutable/nodes/27.Cx5OgRDj.js.gz +0 -0
  159. package/build/client/_app/immutable/nodes/{28.eQk5ZqHl.js → 28.CGYOjnep.js} +1 -1
  160. package/build/client/_app/immutable/nodes/28.CGYOjnep.js.br +0 -0
  161. package/build/client/_app/immutable/nodes/28.CGYOjnep.js.gz +0 -0
  162. package/build/client/_app/immutable/nodes/{29.-im11HaY.js → 29.CLf8RvpY.js} +1 -1
  163. package/build/client/_app/immutable/nodes/29.CLf8RvpY.js.br +0 -0
  164. package/build/client/_app/immutable/nodes/29.CLf8RvpY.js.gz +0 -0
  165. package/build/client/_app/immutable/nodes/{3.CfPrUs70.js → 3.BlV_x8MJ.js} +1 -1
  166. package/build/client/_app/immutable/nodes/3.BlV_x8MJ.js.br +0 -0
  167. package/build/client/_app/immutable/nodes/3.BlV_x8MJ.js.gz +0 -0
  168. package/build/client/_app/immutable/nodes/{30.DUz5JI16.js → 30.R_e5369k.js} +1 -1
  169. package/build/client/_app/immutable/nodes/30.R_e5369k.js.br +0 -0
  170. package/build/client/_app/immutable/nodes/30.R_e5369k.js.gz +0 -0
  171. package/build/client/_app/immutable/nodes/31.DKnO7o1W.js.gz +0 -0
  172. package/build/client/_app/immutable/nodes/32.D4xYDWvG.js.gz +0 -0
  173. package/build/client/_app/immutable/nodes/4.0a-qdY5B.js.gz +0 -0
  174. package/build/client/_app/immutable/nodes/{5.D4jMtb1M.js → 5.BkfXGrZY.js} +1 -1
  175. package/build/client/_app/immutable/nodes/5.BkfXGrZY.js.br +1 -0
  176. package/build/client/_app/immutable/nodes/5.BkfXGrZY.js.gz +0 -0
  177. package/build/client/_app/immutable/nodes/{6.BhoBomwz.js → 6.CrYuHI6-.js} +1 -1
  178. package/build/client/_app/immutable/nodes/6.CrYuHI6-.js.br +0 -0
  179. package/build/client/_app/immutable/nodes/6.CrYuHI6-.js.gz +0 -0
  180. package/build/client/_app/immutable/nodes/{7.CaJkp9fo.js → 7.CMw8RqJb.js} +1 -1
  181. package/build/client/_app/immutable/nodes/7.CMw8RqJb.js.br +0 -0
  182. package/build/client/_app/immutable/nodes/7.CMw8RqJb.js.gz +0 -0
  183. package/build/client/_app/immutable/nodes/{8.Bt2DWfca.js → 8.BFOXhEsE.js} +1 -1
  184. package/build/client/_app/immutable/nodes/8.BFOXhEsE.js.br +0 -0
  185. package/build/client/_app/immutable/nodes/8.BFOXhEsE.js.gz +0 -0
  186. package/build/client/_app/immutable/nodes/{9.C5-qch-V.js → 9.CDfx0uL-.js} +1 -1
  187. package/build/client/_app/immutable/nodes/9.CDfx0uL-.js.br +0 -0
  188. package/build/client/_app/immutable/nodes/9.CDfx0uL-.js.gz +0 -0
  189. package/build/client/_app/version.json +1 -1
  190. package/build/client/_app/version.json.br +0 -0
  191. package/build/client/_app/version.json.gz +0 -0
  192. package/build/client/favicon/favicon.svg.gz +0 -0
  193. package/build/client/robots.txt.gz +0 -0
  194. package/build/server/chunks/{0-BXYXs3Xm.js → 0-wC8vebb2.js} +4 -4
  195. package/build/server/chunks/{0-BXYXs3Xm.js.map → 0-wC8vebb2.js.map} +1 -1
  196. package/build/server/chunks/{1-V8dFtmbb.js → 1-BuhU5ws5.js} +2 -2
  197. package/build/server/chunks/{1-V8dFtmbb.js.map → 1-BuhU5ws5.js.map} +1 -1
  198. package/build/server/chunks/{10-J_ZMrbXX.js → 10-8FzClb5u.js} +6 -6
  199. package/build/server/chunks/{10-J_ZMrbXX.js.map → 10-8FzClb5u.js.map} +1 -1
  200. package/build/server/chunks/{11-C54ZyrYp.js → 11-DDY_rtxo.js} +6 -6
  201. package/build/server/chunks/{11-C54ZyrYp.js.map → 11-DDY_rtxo.js.map} +1 -1
  202. package/build/server/chunks/{12-CrOqT0Q5.js → 12-C_P4jkDv.js} +2 -2
  203. package/build/server/chunks/{12-CrOqT0Q5.js.map → 12-C_P4jkDv.js.map} +1 -1
  204. package/build/server/chunks/{13-DVoUfflf.js → 13-B5aiYDRf.js} +3 -3
  205. package/build/server/chunks/{13-DVoUfflf.js.map → 13-B5aiYDRf.js.map} +1 -1
  206. package/build/server/chunks/{14-DkBYx89e.js → 14-BaOmOh6D.js} +3 -3
  207. package/build/server/chunks/{14-DkBYx89e.js.map → 14-BaOmOh6D.js.map} +1 -1
  208. package/build/server/chunks/{15-CNzxJkd-.js → 15-DHGAmNDS.js} +4 -4
  209. package/build/server/chunks/{15-CNzxJkd-.js.map → 15-DHGAmNDS.js.map} +1 -1
  210. package/build/server/chunks/{16-cz9yc7Nq.js → 16-CzffXXom.js} +6 -6
  211. package/build/server/chunks/{16-cz9yc7Nq.js.map → 16-CzffXXom.js.map} +1 -1
  212. package/build/server/chunks/{17-BLqAW2P3.js → 17-DZkJ_eHV.js} +2 -2
  213. package/build/server/chunks/{17-BLqAW2P3.js.map → 17-DZkJ_eHV.js.map} +1 -1
  214. package/build/server/chunks/{18-DFxW4YE_.js → 18-DeVS-pOT.js} +2 -2
  215. package/build/server/chunks/{18-DFxW4YE_.js.map → 18-DeVS-pOT.js.map} +1 -1
  216. package/build/server/chunks/{19-BZm3F7yF.js → 19-Dp3tqQ1t.js} +3 -3
  217. package/build/server/chunks/{19-BZm3F7yF.js.map → 19-Dp3tqQ1t.js.map} +1 -1
  218. package/build/server/chunks/{2-CNp1ZQp0.js → 2-ByzJzwtP.js} +5 -5
  219. package/build/server/chunks/{2-CNp1ZQp0.js.map → 2-ByzJzwtP.js.map} +1 -1
  220. package/build/server/chunks/{20-BXy_jr30.js → 20-B0yVR9Gt.js} +12 -12
  221. package/build/server/chunks/{20-BXy_jr30.js.map → 20-B0yVR9Gt.js.map} +1 -1
  222. package/build/server/chunks/{21-DSjRU6S2.js → 21-C1DQ27EI.js} +3 -3
  223. package/build/server/chunks/{21-DSjRU6S2.js.map → 21-C1DQ27EI.js.map} +1 -1
  224. package/build/server/chunks/{23-CjL9FJFA.js → 23-Cu3Wc2EB.js} +6 -6
  225. package/build/server/chunks/{23-CjL9FJFA.js.map → 23-Cu3Wc2EB.js.map} +1 -1
  226. package/build/server/chunks/{24-D9rqHSTE.js → 24-BT4UP2RT.js} +4 -4
  227. package/build/server/chunks/{24-D9rqHSTE.js.map → 24-BT4UP2RT.js.map} +1 -1
  228. package/build/server/chunks/{25-DstWRI72.js → 25-ef6c33Ul.js} +2 -2
  229. package/build/server/chunks/{25-DstWRI72.js.map → 25-ef6c33Ul.js.map} +1 -1
  230. package/build/server/chunks/{27-nNwc75ro.js → 27-2TZYrjFq.js} +4 -4
  231. package/build/server/chunks/{27-nNwc75ro.js.map → 27-2TZYrjFq.js.map} +1 -1
  232. package/build/server/chunks/{28-CvOKckIC.js → 28-CgAgC0Z2.js} +3 -3
  233. package/build/server/chunks/{28-CvOKckIC.js.map → 28-CgAgC0Z2.js.map} +1 -1
  234. package/build/server/chunks/{29-omUxa3rd.js → 29-B5T9cb-n.js} +3 -3
  235. package/build/server/chunks/{29-omUxa3rd.js.map → 29-B5T9cb-n.js.map} +1 -1
  236. package/build/server/chunks/{3-D43IIYqW.js → 3-DADb713A.js} +2 -2
  237. package/build/server/chunks/{3-D43IIYqW.js.map → 3-DADb713A.js.map} +1 -1
  238. package/build/server/chunks/{30-BMQ7Cr8A.js → 30-DltbcIRy.js} +3 -3
  239. package/build/server/chunks/{30-BMQ7Cr8A.js.map → 30-DltbcIRy.js.map} +1 -1
  240. package/build/server/chunks/{31-Cba3pMW9.js → 31-CirH19D6.js} +2 -2
  241. package/build/server/chunks/{31-Cba3pMW9.js.map → 31-CirH19D6.js.map} +1 -1
  242. package/build/server/chunks/{32-BmfoNY4G.js → 32-CZojKYOy.js} +2 -2
  243. package/build/server/chunks/{32-BmfoNY4G.js.map → 32-CZojKYOy.js.map} +1 -1
  244. package/build/server/chunks/{5-lJnHNLmp.js → 5-BPpDRjc1.js} +2 -2
  245. package/build/server/chunks/{5-lJnHNLmp.js.map → 5-BPpDRjc1.js.map} +1 -1
  246. package/build/server/chunks/{6-BydCaB4v.js → 6-BNfcWbqm.js} +3 -3
  247. package/build/server/chunks/{6-BydCaB4v.js.map → 6-BNfcWbqm.js.map} +1 -1
  248. package/build/server/chunks/{7-D4q4IBnf.js → 7-C5iTPe4g.js} +2 -2
  249. package/build/server/chunks/{7-D4q4IBnf.js.map → 7-C5iTPe4g.js.map} +1 -1
  250. package/build/server/chunks/{8-1AErDsjI.js → 8-Cw1nSIV4.js} +3 -3
  251. package/build/server/chunks/{8-1AErDsjI.js.map → 8-Cw1nSIV4.js.map} +1 -1
  252. package/build/server/chunks/{9-Cr4VDcCh.js → 9-6pRErmUa.js} +4 -4
  253. package/build/server/chunks/{9-Cr4VDcCh.js.map → 9-6pRErmUa.js.map} +1 -1
  254. package/build/server/chunks/{_layout.svelte-Px4pdCxU.js → _layout.svelte-xYAKGoE5.js} +4 -4
  255. package/build/server/chunks/{_layout.svelte-Px4pdCxU.js.map → _layout.svelte-xYAKGoE5.js.map} +1 -1
  256. package/build/server/chunks/{_page.svelte-D6lEOLLp.js → _page.svelte-BR8dze-7.js} +14 -14
  257. package/build/server/chunks/_page.svelte-BR8dze-7.js.map +1 -0
  258. package/build/server/chunks/{_page.svelte-KapMJV5_.js → _page.svelte-BsU27A26.js} +3 -3
  259. package/build/server/chunks/_page.svelte-BsU27A26.js.map +1 -0
  260. package/build/server/chunks/{_page.svelte-5X2iRv32.js → _page.svelte-CaOLJFdL.js} +2 -2
  261. package/build/server/chunks/_page.svelte-CaOLJFdL.js.map +1 -0
  262. package/build/server/chunks/{_page.svelte-BcFniUOO.js → _page.svelte-DG_7CM7u.js} +5 -5
  263. package/build/server/chunks/{_page.svelte-BcFniUOO.js.map → _page.svelte-DG_7CM7u.js.map} +1 -1
  264. package/build/server/chunks/{_page.svelte-CX9DKxIH.js → _page.svelte-DS9orYLw.js} +2 -2
  265. package/build/server/chunks/_page.svelte-DS9orYLw.js.map +1 -0
  266. package/build/server/chunks/{_server.ts-CmUr8pln.js → _server.ts-1HIleN3S.js} +4 -4
  267. package/build/server/chunks/{_server.ts-CmUr8pln.js.map → _server.ts-1HIleN3S.js.map} +1 -1
  268. package/build/server/chunks/{_server.ts-C-XniPo8.js → _server.ts-1nksAmT8.js} +4 -4
  269. package/build/server/chunks/{_server.ts-C-XniPo8.js.map → _server.ts-1nksAmT8.js.map} +1 -1
  270. package/build/server/chunks/{_server.ts-7hKc3tb_.js → _server.ts-AE1drj36.js} +4 -4
  271. package/build/server/chunks/{_server.ts-7hKc3tb_.js.map → _server.ts-AE1drj36.js.map} +1 -1
  272. package/build/server/chunks/{_server.ts-DBh0rJrm.js → _server.ts-B0gZCMdj.js} +4 -4
  273. package/build/server/chunks/{_server.ts-DBh0rJrm.js.map → _server.ts-B0gZCMdj.js.map} +1 -1
  274. package/build/server/chunks/{_server.ts-_NTv7i9z.js → _server.ts-BSoy1Ljl.js} +4 -4
  275. package/build/server/chunks/{_server.ts-_NTv7i9z.js.map → _server.ts-BSoy1Ljl.js.map} +1 -1
  276. package/build/server/chunks/{_server.ts-CAcgx11J.js → _server.ts-BTi2idVf.js} +4 -4
  277. package/build/server/chunks/{_server.ts-CAcgx11J.js.map → _server.ts-BTi2idVf.js.map} +1 -1
  278. package/build/server/chunks/{_server.ts-D-QkfF2o.js → _server.ts-BYlDwqEg.js} +5 -5
  279. package/build/server/chunks/{_server.ts-D-QkfF2o.js.map → _server.ts-BYlDwqEg.js.map} +1 -1
  280. package/build/server/chunks/{_server.ts-CcQbKaET.js → _server.ts-BbzbsVfr.js} +4 -4
  281. package/build/server/chunks/{_server.ts-CcQbKaET.js.map → _server.ts-BbzbsVfr.js.map} +1 -1
  282. package/build/server/chunks/{_server.ts-BLHjzdRp.js → _server.ts-BdKZ7aOG.js} +4 -4
  283. package/build/server/chunks/{_server.ts-BLHjzdRp.js.map → _server.ts-BdKZ7aOG.js.map} +1 -1
  284. package/build/server/chunks/{_server.ts-BpkR7TzP.js → _server.ts-BgsmlYb6.js} +3 -3
  285. package/build/server/chunks/{_server.ts-BpkR7TzP.js.map → _server.ts-BgsmlYb6.js.map} +1 -1
  286. package/build/server/chunks/{_server.ts-BUc1sqlR.js → _server.ts-BnN8EQwQ.js} +4 -4
  287. package/build/server/chunks/{_server.ts-BUc1sqlR.js.map → _server.ts-BnN8EQwQ.js.map} +1 -1
  288. package/build/server/chunks/{_server.ts-pDmNGXOa.js → _server.ts-ByhZiyPJ.js} +4 -4
  289. package/build/server/chunks/{_server.ts-pDmNGXOa.js.map → _server.ts-ByhZiyPJ.js.map} +1 -1
  290. package/build/server/chunks/{_server.ts-D1AD48e8.js → _server.ts-C2YLv0RS.js} +4 -4
  291. package/build/server/chunks/{_server.ts-D1AD48e8.js.map → _server.ts-C2YLv0RS.js.map} +1 -1
  292. package/build/server/chunks/{_server.ts-Ch_RLYHQ.js → _server.ts-C3Cn_AWJ.js} +4 -4
  293. package/build/server/chunks/{_server.ts-Ch_RLYHQ.js.map → _server.ts-C3Cn_AWJ.js.map} +1 -1
  294. package/build/server/chunks/{_server.ts-Z87uowZI.js → _server.ts-C9ggXEGb.js} +4 -4
  295. package/build/server/chunks/{_server.ts-Z87uowZI.js.map → _server.ts-C9ggXEGb.js.map} +1 -1
  296. package/build/server/chunks/{_server.ts-B0wiCYbB.js → _server.ts-CKHs57oZ.js} +2 -2
  297. package/build/server/chunks/{_server.ts-B0wiCYbB.js.map → _server.ts-CKHs57oZ.js.map} +1 -1
  298. package/build/server/chunks/{_server.ts-C4WRZSco.js → _server.ts-CM4aZGc-.js} +3 -3
  299. package/build/server/chunks/{_server.ts-C4WRZSco.js.map → _server.ts-CM4aZGc-.js.map} +1 -1
  300. package/build/server/chunks/{_server.ts-la-ySldK.js → _server.ts-CN851WSH.js} +4 -4
  301. package/build/server/chunks/{_server.ts-la-ySldK.js.map → _server.ts-CN851WSH.js.map} +1 -1
  302. package/build/server/chunks/{_server.ts-Dmo73WWA.js → _server.ts-CNPmzTy6.js} +4 -4
  303. package/build/server/chunks/{_server.ts-Dmo73WWA.js.map → _server.ts-CNPmzTy6.js.map} +1 -1
  304. package/build/server/chunks/{_server.ts-C0F30GT4.js → _server.ts-CZW4ge6f.js} +4 -4
  305. package/build/server/chunks/{_server.ts-C0F30GT4.js.map → _server.ts-CZW4ge6f.js.map} +1 -1
  306. package/build/server/chunks/{_server.ts-DxKERFAd.js → _server.ts-CaERLUlr.js} +3 -3
  307. package/build/server/chunks/{_server.ts-DxKERFAd.js.map → _server.ts-CaERLUlr.js.map} +1 -1
  308. package/build/server/chunks/{_server.ts-CmGWhrdf.js → _server.ts-Cb4DODkC.js} +5 -5
  309. package/build/server/chunks/{_server.ts-CmGWhrdf.js.map → _server.ts-Cb4DODkC.js.map} +1 -1
  310. package/build/server/chunks/{_server.ts-DNPb5zS6.js → _server.ts-CbQpXSqd.js} +4 -4
  311. package/build/server/chunks/{_server.ts-DNPb5zS6.js.map → _server.ts-CbQpXSqd.js.map} +1 -1
  312. package/build/server/chunks/{_server.ts-Bb3Kpo0Y.js → _server.ts-Ch4yLIuo.js} +3 -3
  313. package/build/server/chunks/{_server.ts-Bb3Kpo0Y.js.map → _server.ts-Ch4yLIuo.js.map} +1 -1
  314. package/build/server/chunks/{_server.ts-B_MVq_5r.js → _server.ts-Cjz2LZbt.js} +4 -4
  315. package/build/server/chunks/{_server.ts-B_MVq_5r.js.map → _server.ts-Cjz2LZbt.js.map} +1 -1
  316. package/build/server/chunks/{_server.ts-BJWFkEuu.js → _server.ts-CyhcRpfW.js} +5 -5
  317. package/build/server/chunks/{_server.ts-BJWFkEuu.js.map → _server.ts-CyhcRpfW.js.map} +1 -1
  318. package/build/server/chunks/{_server.ts-BemU6FO1.js → _server.ts-CzJ60KtY.js} +5 -5
  319. package/build/server/chunks/{_server.ts-BemU6FO1.js.map → _server.ts-CzJ60KtY.js.map} +1 -1
  320. package/build/server/chunks/{_server.ts-BpAINcOs.js → _server.ts-D71yVIcY.js} +5 -15
  321. package/build/server/chunks/_server.ts-D71yVIcY.js.map +1 -0
  322. package/build/server/chunks/{_server.ts-CkXnisqg.js → _server.ts-DWL7YPsQ.js} +5 -5
  323. package/build/server/chunks/{_server.ts-CkXnisqg.js.map → _server.ts-DWL7YPsQ.js.map} +1 -1
  324. package/build/server/chunks/{_server.ts-BkKg2yyC.js → _server.ts-DnpbPKKN.js} +4 -4
  325. package/build/server/chunks/{_server.ts-BkKg2yyC.js.map → _server.ts-DnpbPKKN.js.map} +1 -1
  326. package/build/server/chunks/{_server.ts-gic0t4mu.js → _server.ts-Dnqx5-qU.js} +6 -6
  327. package/build/server/chunks/{_server.ts-gic0t4mu.js.map → _server.ts-Dnqx5-qU.js.map} +1 -1
  328. package/build/server/chunks/{_server.ts-CaHe7mo6.js → _server.ts-DrYz0SSH.js} +4 -4
  329. package/build/server/chunks/{_server.ts-CaHe7mo6.js.map → _server.ts-DrYz0SSH.js.map} +1 -1
  330. package/build/server/chunks/{_server.ts-DJUYnHrj.js → _server.ts-DraBBcmz.js} +4 -4
  331. package/build/server/chunks/{_server.ts-DJUYnHrj.js.map → _server.ts-DraBBcmz.js.map} +1 -1
  332. package/build/server/chunks/{_server.ts-MOiQ4br_.js → _server.ts-I3zLnhsz.js} +4 -4
  333. package/build/server/chunks/{_server.ts-MOiQ4br_.js.map → _server.ts-I3zLnhsz.js.map} +1 -1
  334. package/build/server/chunks/{_server.ts-DXPhlUCi.js → _server.ts-gCCprE5T.js} +4 -4
  335. package/build/server/chunks/{_server.ts-DXPhlUCi.js.map → _server.ts-gCCprE5T.js.map} +1 -1
  336. package/build/server/chunks/{_server.ts-BrZXNFlK.js → _server.ts-k0TOB-E9.js} +5 -5
  337. package/build/server/chunks/{_server.ts-BrZXNFlK.js.map → _server.ts-k0TOB-E9.js.map} +1 -1
  338. package/build/server/chunks/{_server.ts-CFIgn6q6.js → _server.ts-qFzkA4h-.js} +8 -8
  339. package/build/server/chunks/{_server.ts-CFIgn6q6.js.map → _server.ts-qFzkA4h-.js.map} +1 -1
  340. package/build/server/chunks/{_server.ts-0ncRaWJ_.js → _server.ts-v9eUA-cx.js} +4 -4
  341. package/build/server/chunks/{_server.ts-0ncRaWJ_.js.map → _server.ts-v9eUA-cx.js.map} +1 -1
  342. package/build/server/chunks/{access.server-GvriCjXN.js → access.server-DVG3xnR_.js} +3 -3
  343. package/build/server/chunks/{access.server-GvriCjXN.js.map → access.server-DVG3xnR_.js.map} +1 -1
  344. package/build/server/chunks/{api-errors-Dk5z97zb.js → api-errors-DGHmIOGJ.js} +2 -2
  345. package/build/server/chunks/{api-errors-Dk5z97zb.js.map → api-errors-DGHmIOGJ.js.map} +1 -1
  346. package/build/server/chunks/{auth-bootstrap.server-CfD5CPTj.js → auth-bootstrap.server-oox9p1sN.js} +10 -3
  347. package/build/server/chunks/auth-bootstrap.server-oox9p1sN.js.map +1 -0
  348. package/build/server/chunks/{bootHealth.server-Bn7taneH.js → bootHealth.server-DQx_qsNh.js} +2 -2
  349. package/build/server/chunks/{bootHealth.server-Bn7taneH.js.map → bootHealth.server-DQx_qsNh.js.map} +1 -1
  350. package/build/server/chunks/{hooks.server-CMWyl1Gd.js → hooks.server-aaRldGQ_.js} +4 -4
  351. package/build/server/chunks/{hooks.server-CMWyl1Gd.js.map → hooks.server-aaRldGQ_.js.map} +1 -1
  352. package/build/server/chunks/{permissions.server-Co6VKW9f.js → permissions.server-qrbshNHz.js} +2 -2
  353. package/build/server/chunks/{permissions.server-Co6VKW9f.js.map → permissions.server-qrbshNHz.js.map} +1 -1
  354. package/build/server/chunks/{providers.server-C32WKtDL.js → providers.server-Duyx-08B.js} +68 -68
  355. package/build/server/chunks/providers.server-Duyx-08B.js.map +1 -0
  356. package/build/server/chunks/{resolve.server-DYsU4jL3.js → resolve.server-BwfjDyaT.js} +3 -3
  357. package/build/server/chunks/{resolve.server-DYsU4jL3.js.map → resolve.server-BwfjDyaT.js.map} +1 -1
  358. package/build/server/chunks/{resolve.server2-Co65XNMI.js → resolve.server2-DjZg4oZg.js} +3 -3
  359. package/build/server/chunks/{resolve.server2-Co65XNMI.js.map → resolve.server2-DjZg4oZg.js.map} +1 -1
  360. package/build/server/chunks/{token.server-B8XVPI0F.js → token.server-CBtuQZt0.js} +2 -2
  361. package/build/server/chunks/token.server-CBtuQZt0.js.map +1 -0
  362. package/build/server/chunks/{utils2-Sy-_rI-0.js → utils2-QuTTpZq0.js} +2 -2
  363. package/build/server/chunks/{utils2-Sy-_rI-0.js.map → utils2-QuTTpZq0.js.map} +1 -1
  364. package/build/server/index.js +2 -2
  365. package/build/server/index.js.map +1 -1
  366. package/build/server/manifest.js +70 -70
  367. package/build/server/manifest.js.map +1 -1
  368. package/package.json +7 -8
  369. package/templates/.env.example +3 -2
  370. package/templates/ecosystem.config.cjs +7 -5
  371. package/build/client/_app/immutable/assets/20.DvtWUFNX.css +0 -1
  372. package/build/client/_app/immutable/assets/20.DvtWUFNX.css.br +0 -0
  373. package/build/client/_app/immutable/assets/20.DvtWUFNX.css.gz +0 -0
  374. package/build/client/_app/immutable/chunks/4PBDTLFF.js +0 -3
  375. package/build/client/_app/immutable/chunks/4PBDTLFF.js.br +0 -0
  376. package/build/client/_app/immutable/chunks/4PBDTLFF.js.gz +0 -0
  377. package/build/client/_app/immutable/chunks/BMwGnr2J.js.br +0 -0
  378. package/build/client/_app/immutable/chunks/BMwGnr2J.js.gz +0 -0
  379. package/build/client/_app/immutable/chunks/BSyJ0ZuA.js.br +0 -0
  380. package/build/client/_app/immutable/chunks/BSyJ0ZuA.js.gz +0 -0
  381. package/build/client/_app/immutable/chunks/CS49LPny.js.br +0 -0
  382. package/build/client/_app/immutable/chunks/CS49LPny.js.gz +0 -0
  383. package/build/client/_app/immutable/chunks/VmqnFAi3.js.br +0 -0
  384. package/build/client/_app/immutable/chunks/VmqnFAi3.js.gz +0 -0
  385. package/build/client/_app/immutable/chunks/smW5maEe.js.br +0 -0
  386. package/build/client/_app/immutable/chunks/smW5maEe.js.gz +0 -0
  387. package/build/client/_app/immutable/entry/app.GElcRZPp.js.br +0 -0
  388. package/build/client/_app/immutable/entry/app.GElcRZPp.js.gz +0 -0
  389. package/build/client/_app/immutable/entry/start.D-b3nSOP.js +0 -1
  390. package/build/client/_app/immutable/entry/start.D-b3nSOP.js.br +0 -0
  391. package/build/client/_app/immutable/entry/start.D-b3nSOP.js.gz +0 -0
  392. package/build/client/_app/immutable/nodes/0.r0PA_Sxw.js.br +0 -0
  393. package/build/client/_app/immutable/nodes/0.r0PA_Sxw.js.gz +0 -0
  394. package/build/client/_app/immutable/nodes/1.CTfA0FAT.js.br +0 -0
  395. package/build/client/_app/immutable/nodes/1.CTfA0FAT.js.gz +0 -0
  396. package/build/client/_app/immutable/nodes/10.Bl4yPogx.js +0 -3
  397. package/build/client/_app/immutable/nodes/10.Bl4yPogx.js.br +0 -0
  398. package/build/client/_app/immutable/nodes/10.Bl4yPogx.js.gz +0 -0
  399. package/build/client/_app/immutable/nodes/11.Dk81DreT.js.br +0 -0
  400. package/build/client/_app/immutable/nodes/11.Dk81DreT.js.gz +0 -0
  401. package/build/client/_app/immutable/nodes/13.B3m9NRrd.js.br +0 -0
  402. package/build/client/_app/immutable/nodes/13.B3m9NRrd.js.gz +0 -0
  403. package/build/client/_app/immutable/nodes/14.9MmuwEpn.js.br +0 -0
  404. package/build/client/_app/immutable/nodes/14.9MmuwEpn.js.gz +0 -0
  405. package/build/client/_app/immutable/nodes/15.94-Zje0s.js +0 -13
  406. package/build/client/_app/immutable/nodes/15.94-Zje0s.js.br +0 -0
  407. package/build/client/_app/immutable/nodes/15.94-Zje0s.js.gz +0 -0
  408. package/build/client/_app/immutable/nodes/16.BMWgVDGJ.js.br +0 -0
  409. package/build/client/_app/immutable/nodes/16.BMWgVDGJ.js.gz +0 -0
  410. package/build/client/_app/immutable/nodes/17.Bch7V784.js.br +0 -0
  411. package/build/client/_app/immutable/nodes/17.Bch7V784.js.gz +0 -0
  412. package/build/client/_app/immutable/nodes/19.DQtOUgti.js.br +0 -0
  413. package/build/client/_app/immutable/nodes/19.DQtOUgti.js.gz +0 -0
  414. package/build/client/_app/immutable/nodes/2.CyCY9Gpy.js.br +0 -0
  415. package/build/client/_app/immutable/nodes/2.CyCY9Gpy.js.gz +0 -0
  416. package/build/client/_app/immutable/nodes/20.CT0e7phi.js.br +0 -0
  417. package/build/client/_app/immutable/nodes/20.CT0e7phi.js.gz +0 -0
  418. package/build/client/_app/immutable/nodes/21.C43xF0qL.js.br +0 -0
  419. package/build/client/_app/immutable/nodes/21.C43xF0qL.js.gz +0 -0
  420. package/build/client/_app/immutable/nodes/23.CFT1SOUF.js.br +0 -0
  421. package/build/client/_app/immutable/nodes/23.CFT1SOUF.js.gz +0 -0
  422. package/build/client/_app/immutable/nodes/24.BjGP5G3P.js.br +0 -0
  423. package/build/client/_app/immutable/nodes/24.BjGP5G3P.js.gz +0 -0
  424. package/build/client/_app/immutable/nodes/27.BS48zWld.js.br +0 -0
  425. package/build/client/_app/immutable/nodes/27.BS48zWld.js.gz +0 -0
  426. package/build/client/_app/immutable/nodes/28.eQk5ZqHl.js.br +0 -0
  427. package/build/client/_app/immutable/nodes/28.eQk5ZqHl.js.gz +0 -0
  428. package/build/client/_app/immutable/nodes/29.-im11HaY.js.br +0 -0
  429. package/build/client/_app/immutable/nodes/29.-im11HaY.js.gz +0 -0
  430. package/build/client/_app/immutable/nodes/3.CfPrUs70.js.br +0 -0
  431. package/build/client/_app/immutable/nodes/3.CfPrUs70.js.gz +0 -0
  432. package/build/client/_app/immutable/nodes/30.DUz5JI16.js.br +0 -0
  433. package/build/client/_app/immutable/nodes/30.DUz5JI16.js.gz +0 -0
  434. package/build/client/_app/immutable/nodes/5.D4jMtb1M.js.br +0 -0
  435. package/build/client/_app/immutable/nodes/5.D4jMtb1M.js.gz +0 -0
  436. package/build/client/_app/immutable/nodes/6.BhoBomwz.js.br +0 -0
  437. package/build/client/_app/immutable/nodes/6.BhoBomwz.js.gz +0 -0
  438. package/build/client/_app/immutable/nodes/7.CaJkp9fo.js.br +0 -0
  439. package/build/client/_app/immutable/nodes/7.CaJkp9fo.js.gz +0 -0
  440. package/build/client/_app/immutable/nodes/8.Bt2DWfca.js.br +0 -0
  441. package/build/client/_app/immutable/nodes/8.Bt2DWfca.js.gz +0 -0
  442. package/build/client/_app/immutable/nodes/9.C5-qch-V.js.br +0 -0
  443. package/build/client/_app/immutable/nodes/9.C5-qch-V.js.gz +0 -0
  444. package/build/server/chunks/_page.svelte-5X2iRv32.js.map +0 -1
  445. package/build/server/chunks/_page.svelte-CX9DKxIH.js.map +0 -1
  446. package/build/server/chunks/_page.svelte-D6lEOLLp.js.map +0 -1
  447. package/build/server/chunks/_page.svelte-KapMJV5_.js.map +0 -1
  448. package/build/server/chunks/_server.ts-BpAINcOs.js.map +0 -1
  449. package/build/server/chunks/auth-bootstrap.server-CfD5CPTj.js.map +0 -1
  450. package/build/server/chunks/providers.server-C32WKtDL.js.map +0 -1
  451. package/build/server/chunks/token.server-B8XVPI0F.js.map +0 -1
  452. package/templates/selva.config.example.js +0 -338
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@selvajs/selva",
3
- "version": "2.0.1",
4
- "description": "Selva — self-contained Grasshopper-driven web app. Install + point at a selva.config.js to deploy.",
3
+ "version": "2.0.2",
4
+ "description": "Selva — self-contained Grasshopper-driven web app. Install, configure via .env, deploy.",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -32,16 +32,15 @@
32
32
  "devDependencies": {
33
33
  "@sveltejs/adapter-node": "^5.5.4",
34
34
  "@types/three": "^0.184.0",
35
- "esbuild": "^0.25.0",
36
35
  "tw-animate-css": "^1.4.0",
37
36
  "vitest": "^3.2.4",
38
- "@selvajs/config": "0.0.0",
37
+ "@selvajs/schemas": "2.0.2",
38
+ "@selvajs/ui": "2.0.2",
39
+ "@selvajs/header-auth-provider": "0.11.0",
39
40
  "@selvajs/supabase-provider": "0.10.0",
41
+ "@selvajs/config": "0.0.0",
40
42
  "@selvajs/local-provider": "0.10.0",
41
- "@selvajs/platform": "0.10.0",
42
- "@selvajs/header-auth-provider": "0.11.0",
43
- "@selvajs/schemas": "2.0.1",
44
- "@selvajs/ui": "2.0.1"
43
+ "@selvajs/platform": "0.10.0"
45
44
  },
46
45
  "scripts": {
47
46
  "dev": "vite dev",
@@ -16,8 +16,9 @@
16
16
  # Vars labeled "[local]" further down are only read by the local provider;
17
17
  # "[supabase]" only by the Supabase provider.
18
18
  #
19
- # Wiring a custom provider (e.g. your own SSO, an internal data store) means
20
- # editing selva.config.ts. The defaults below cover the shipped stacks.
19
+ # For a custom provider not shipped in the box, point SELVA_CONFIG_PATH at a
20
+ # .js file exporting a defineConfig() result. The defaults below cover the
21
+ # three bundled stacks.
21
22
  #
22
23
  # SELVA_AUTH_PROVIDER local | supabase | header (default: local)
23
24
  # SELVA_DATA_PROVIDER local | supabase (default: local)
@@ -1,13 +1,16 @@
1
1
  // PM2 process file — runtime template shipped with @selvajs/selva.
2
2
  //
3
- // Drop this into a deployment directory alongside selva.config.js and .env,
4
- // then `pm2 start ecosystem.config.cjs`.
3
+ // Drop this into a deployment directory alongside .env, then
4
+ // `pm2 start ecosystem.config.cjs`.
5
5
  //
6
6
  // Runtime config is loaded from .env via Node's --env-file flag (Node >= 20.6).
7
7
  // PM2's own env_file option is silently ignored by `pm2 start` (only works
8
8
  // under pm2-runtime) — using --env-file via node_args avoids that footgun.
9
9
  //
10
- // SELVA_CONFIG_PATH points the runtime at the operator's compiled config.
10
+ // Providers are picked from SELVA_AUTH_PROVIDER / SELVA_DATA_PROVIDER /
11
+ // SELVA_STORAGE_PROVIDER in .env. For custom providers not shipped in the box,
12
+ // set SELVA_CONFIG_PATH to a .js file exporting a defineConfig() result.
13
+ //
11
14
  // Rhino.Compute server URL + API key are configured in /admin/compute.
12
15
  module.exports = {
13
16
  apps: [
@@ -44,8 +47,7 @@ module.exports = {
44
47
  merge_logs: true,
45
48
 
46
49
  env: {
47
- NODE_ENV: 'production',
48
- SELVA_CONFIG_PATH: './selva.config.js'
50
+ NODE_ENV: 'production'
49
51
  }
50
52
  }
51
53
  ]
@@ -1 +0,0 @@
1
- [data-scroll-area-viewport]{scrollbar-width:none!important;-ms-overflow-style:none!important;-webkit-overflow-scrolling:touch!important}[data-scroll-area-viewport]::-webkit-scrollbar{display:none!important}:where([data-scroll-area-viewport]){display:flex;flex-direction:column;align-items:stretch}:where([data-scroll-area-content]){flex-grow:1}div.svelte-1b4l54a::-webkit-scrollbar{width:4px}div.svelte-1b4l54a::-webkit-scrollbar-track{background:transparent}div.svelte-1b4l54a::-webkit-scrollbar-thumb{background:hsl(var(--muted-foreground) / .15);border-radius:2px}[data-viewer-fullscreen] [data-slot=dialog-content],[data-viewer-fullscreen] [data-slot=dialog-overlay]{z-index:10001}.fullscreen-viewer.svelte-qgylmx{position:fixed;inset:0;z-index:10000;border-radius:0!important}.blur-overlay.svelte-qgylmx{pointer-events:none}.blur-overlay-active.svelte-qgylmx{animation:svelte-qgylmx-blur-in .35s cubic-bezier(.32,.72,0,1) forwards}.blur-overlay-inactive.svelte-qgylmx{animation:svelte-qgylmx-blur-out .35s cubic-bezier(.32,.72,0,1) forwards}@keyframes svelte-qgylmx-blur-in{0%{-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}}@keyframes svelte-qgylmx-blur-out{0%{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}to{-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}}@keyframes svelte-qgylmx-selva-viewer-fade-in{0%{opacity:0}to{opacity:1}}@keyframes svelte-16o83r0-selva-slideInLeft{0%{transform:translate(-110%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes svelte-16o83r0-selva-sweep{0%{width:0%;margin-left:0%}50%{width:60%;margin-left:20%}to{width:0%;margin-left:100%}}.content-wrapper.svelte-rxs5ka{display:grid;grid-template-rows:1fr;transition:grid-template-rows .3s cubic-bezier(.4,0,.2,1)}.content-wrapper.collapsed.svelte-rxs5ka{grid-template-rows:0fr}.content-inner.svelte-rxs5ka{min-height:0}.schema-grid.svelte-rxs5ka{grid-template-columns:repeat(var(--schema-cols),minmax(0,1fr))}.col-divider.svelte-rxs5ka{border-left:1px solid var(--border);padding-left:12px;margin-left:-12px}@container (max-width: 320px){.col-divider.svelte-rxs5ka{border-left:0;padding-left:0;margin-left:0}}.tab-content-container.svelte-m8oqhb{container-type:inline-size}@container (max-width: 320px){.schema-grid{grid-template-columns:1fr}}@container (min-width: 321px) and (max-width: 560px){.schema-grid{grid-template-columns:repeat(min(2,var(--schema-cols)),minmax(0,1fr))}}@supports not (container-type: inline-size){@media(max-width:639px){.schema-grid{grid-template-columns:1fr}}@media(min-width:640px)and (max-width:1023px){.schema-grid{grid-template-columns:repeat(min(2,var(--schema-cols)),minmax(0,1fr))}}}div.svelte-lgldvj{min-width:0}@media(min-width:1024px){div.svelte-lgldvj{width:var(--collapsed-w)}}.fullscreen-layout.svelte-1x5dn9j{position:fixed;inset:0;z-index:9999;padding:0!important}[data-pane-resizer][data-collapsed=true]{cursor:pointer!important}.panel-content-wrapper.svelte-1x5dn9j{display:flex;flex-direction:column;height:100%;min-height:0}.panel-footer.svelte-1x5dn9j{flex-shrink:0;padding-top:1.5rem;padding-bottom:1rem;display:flex;flex-direction:column;gap:.5rem}.drawer-container.svelte-1x5dn9j{position:absolute;bottom:0;left:0;right:0;z-index:100;display:flex;flex-direction:column;border-radius:1rem 1rem 0 0;background:var(--background);border-top:1px solid var(--border);box-shadow:0 -4px 24px #0000001f;transition:height .35s cubic-bezier(.32,.72,0,1);overflow:hidden}.drawer-closed.svelte-1x5dn9j{height:60px}.drawer-open.svelte-1x5dn9j{height:60svh}.drawer-handle-bar.svelte-1x5dn9j{position:relative;height:60px;padding:20px 1rem 0;display:flex;align-items:center;gap:.5rem;cursor:pointer;background:transparent;border:none;width:100%;flex-shrink:0;-webkit-tap-highlight-color:transparent}.drawer-handle-bar.svelte-1x5dn9j:active{background:var(--muted)}.drawer-pill.svelte-1x5dn9j{position:absolute;top:8px;left:50%;transform:translate(-50%);width:2.5rem;height:4px;border-radius:9999px;background:var(--muted-foreground);opacity:.4}.drawer-content.svelte-1x5dn9j{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.drawer-footer.svelte-1x5dn9j{flex-shrink:0;padding:0rem 1rem;border-top:1px solid var(--border)}
@@ -1,3 +0,0 @@
1
- import{o as ze,s as It}from"./D0QMYypb.js";import{w as xe}from"./BMGykAfL.js";import{e as P,g as j,j as O,J as ue,U as Ut}from"./ooPBmYPj.js";class ve{constructor(t,n){this.status=t,typeof n=="string"?this.body={message:n}:n?this.body=n:this.body={message:`Error: ${t}`}}toString(){return JSON.stringify(this.body)}}class Ce{constructor(t,n){try{new Headers({location:n})}catch{throw new Error(`Invalid redirect location ${JSON.stringify(n)}: this string contains characters that cannot be used in HTTP headers`)}this.status=t,this.location=n}}class De extends Error{constructor(t,n,r){super(r),this.status=t,this.text=n}}new URL("sveltekit-internal://");function Tt(e,t){return e==="/"||t==="ignore"?e:t==="never"?e.endsWith("/")?e.slice(0,-1):e:t==="always"&&!e.endsWith("/")?e+"/":e}function Lt(e){return e.split("%25").map(decodeURI).join("%25")}function Pt(e){for(const t in e)e[t]=decodeURIComponent(e[t]);return e}function Re({href:e}){return e.split("#")[0]}function C(){}function jt(...e){let t=5381;for(const n of e)if(typeof n=="string"){let r=n.length;for(;r;)t=t*33^n.charCodeAt(--r)}else if(ArrayBuffer.isView(n)){const r=new Uint8Array(n.buffer,n.byteOffset,n.byteLength);let a=r.length;for(;a;)t=t*33^r[--a]}else throw new TypeError("value must be a string or TypedArray");return(t>>>0).toString(36)}new TextEncoder;const Ot=new TextDecoder;function Nt(e){const t=atob(e),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n}const $t=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||"GET")!=="GET"&&Z.delete(Be(e)),$t(e,t));const Z=new Map;function xt(e,t){const n=Be(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:a,...s}=JSON.parse(r.textContent);const o=r.getAttribute("data-ttl");return o&&Z.set(n,{body:a,init:s,ttl:1e3*Number(o)}),r.getAttribute("data-b64")!==null&&(a=Nt(a)),Promise.resolve(new Response(a,s))}return window.fetch(e,t)}function Ct(e,t,n){if(Z.size>0){const r=Be(e,n),a=Z.get(r);if(a){if(performance.now()<a.ttl&&["default","force-cache","only-if-cached",void 0].includes(n?.cache))return new Response(a.body,a.init);Z.delete(r)}}return window.fetch(t,n)}function Be(e,t){let r=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){const a=[];t.headers&&a.push([...new Headers(t.headers)].join(",")),t.body&&(typeof t.body=="string"||ArrayBuffer.isView(t.body))&&a.push(t.body),r+=`[data-hash="${jt(...a)}"]`}return r}const Dt=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/;function Bt(e){const t=[];return{pattern:e==="/"?/^\/$/:new RegExp(`^${Mt(e).map(r=>{const a=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(r);if(a)return t.push({name:a[1],matcher:a[2],optional:!1,rest:!0,chained:!0}),"(?:/([^]*))?";const s=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(r);if(s)return t.push({name:s[1],matcher:s[2],optional:!0,rest:!1,chained:!0}),"(?:/([^/]+))?";if(!r)return;const o=r.split(/\[(.+?)\](?!\])/);return"/"+o.map((i,l)=>{if(l%2){if(i.startsWith("x+"))return Ie(String.fromCharCode(parseInt(i.slice(2),16)));if(i.startsWith("u+"))return Ie(String.fromCharCode(...i.slice(2).split("-").map(m=>parseInt(m,16))));const u=Dt.exec(i),[,d,p,h,f]=u;return t.push({name:h,matcher:f,optional:!!d,rest:!!p,chained:p?l===1&&o[0]==="":!1}),p?"([^]*?)":d?"([^/]*)?":"([^/]+?)"}return Ie(i)}).join("")}).join("")}/?$`),params:t}}function Ft(e){return e!==""&&!/^\([^)]+\)$/.test(e)}function Mt(e){return e.slice(1).split("/").filter(Ft)}function Vt(e,t,n){const r={},a=e.slice(1),s=a.filter(c=>c!==void 0);let o=0;for(let c=0;c<t.length;c+=1){const i=t[c];let l=a[c-o];if(i.chained&&i.rest&&o&&(l=a.slice(c-o,c+1).filter(u=>u).join("/"),o=0),l===void 0)if(i.rest)l="";else continue;if(!i.matcher||n[i.matcher](l)){r[i.name]=l;const u=t[c+1],d=a[c+1];u&&!u.rest&&u.optional&&d&&i.chained&&(o=0),!u&&!d&&Object.keys(r).length===s.length&&(o=0);continue}if(i.optional&&i.chained){o++;continue}return}if(!o)return r}function Ie(e){return e.normalize().replace(/[[\]]/g,"\\$&").replace(/%/g,"%25").replace(/\//g,"%2[Ff]").replace(/\?/g,"%3[Ff]").replace(/#/g,"%23").replace(/[.*+?^${}()|\\]/g,"\\$&")}function qt({nodes:e,server_loads:t,dictionary:n,matchers:r}){const a=new Set(t);return Object.entries(n).map(([c,[i,l,u]])=>{const{pattern:d,params:p}=Bt(c),h={id:c,exec:f=>{const m=d.exec(f);if(m)return Vt(m,p,r)},errors:[1,...u||[]].map(f=>e[f]),layouts:[0,...l||[]].map(o),leaf:s(i)};return h.errors.length=h.layouts.length=Math.max(h.errors.length,h.layouts.length),h});function s(c){const i=c<0;return i&&(c=~c),[i,e[c]]}function o(c){return c===void 0?c:[a.has(c),e[c]]}}function ot(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function Xe(e,t,n=JSON.stringify){const r=n(t);try{sessionStorage[e]=r}catch{}}const L=globalThis.__sveltekit_62cvo1?.base??"",Gt=globalThis.__sveltekit_62cvo1?.assets??L??"",Ht="1778769353572",st="sveltekit:snapshot",it="sveltekit:scroll",ct="sveltekit:states",Jt="sveltekit:pageurl",G="sveltekit:history",te="sveltekit:navigation",M={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},ie=location.origin;function Fe(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){const n=document.getElementsByTagName("base");t=n.length?n[0].href:document.URL}return new URL(e,t)}function V(){return{x:pageXOffset,y:pageYOffset}}function q(e,t){return e.getAttribute(`data-sveltekit-${t}`)}const Ze={...M,"":M.hover};function lt(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function ft(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()==="A"&&e.hasAttribute("href"))return e;e=lt(e)}}function Pe(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){const c=location.hash.split("#")[1]||"/";r.hash=`#${c}${r.hash}`}}catch{}const a=e instanceof SVGAElement?e.target.baseVal:e.target,s=!r||!!a||be(r,t,n)||(e.getAttribute("rel")||"").split(/\s+/).includes("external"),o=r?.origin===ie&&e.hasAttribute("download");return{url:r,external:s,target:a,download:o}}function de(e){let t=null,n=null,r=null,a=null,s=null,o=null,c=e;for(;c&&c!==document.documentElement;)r===null&&(r=q(c,"preload-code")),a===null&&(a=q(c,"preload-data")),t===null&&(t=q(c,"keepfocus")),n===null&&(n=q(c,"noscroll")),s===null&&(s=q(c,"reload")),o===null&&(o=q(c,"replacestate")),c=lt(c);function i(l){switch(l){case"":case"true":return!0;case"off":case"false":return!1;default:return}}return{preload_code:Ze[r??"off"],preload_data:Ze[a??"off"],keepfocus:i(t),noscroll:i(n),reload:i(s),replace_state:i(o)}}function Qe(e){const t=xe(e);let n=!0;function r(){n=!0,t.update(o=>o)}function a(o){n=!1,t.set(o)}function s(o){let c;return t.subscribe(i=>{(c===void 0||n&&i!==c)&&o(c=i)})}return{notify:r,set:a,subscribe:s}}const ut={v:C};function Kt(){const{set:e,subscribe:t}=xe(!1);let n;async function r(){clearTimeout(n);try{const a=await fetch(`${Gt}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(!a.ok)return!1;const o=(await a.json()).version!==Ht;return o&&(e(!0),ut.v(),clearTimeout(n)),o}catch{return!1}}return{subscribe:t,check:r}}function be(e,t,n){return e.origin!==ie||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function $n(e){}function Wt(e){return Uint8Array.fromBase64(e).buffer}function Yt(e){return Uint8Array.from(Buffer.from(e,"base64")).buffer}function zt(e){const t=atob(e),n=t.length,r=new Uint8Array(n);for(let a=0;a<n;a++)r[a]=t.charCodeAt(a);return r.buffer}const Xt=typeof Uint8Array.fromBase64=="function",Zt=typeof process=="object"&&process.versions?.node!==void 0,Qt=Xt?Wt:Zt?Yt:zt,en=-1,tn=-2,nn=-3,rn=-4,an=-5,on=-6,sn=-7;function xn(e,t){return dt(JSON.parse(e),t)}function dt(e,t){if(typeof e=="number")return s(e,!0);if(!Array.isArray(e)||e.length===0)throw new Error("Invalid input");const n=e,r=Array(n.length);let a=null;function s(o,c=!1){if(o===en)return;if(o===nn)return NaN;if(o===rn)return 1/0;if(o===an)return-1/0;if(o===on)return-0;if(c||typeof o!="number")throw new Error("Invalid input");if(o in r)return r[o];const i=n[o];if(!i||typeof i!="object")r[o]=i;else if(Array.isArray(i))if(typeof i[0]=="string"){const l=i[0],u=t&&Object.hasOwn(t,l)?t[l]:void 0;if(u){let d=i[1];if(typeof d!="number"&&(d=n.push(i[1])-1),a??=new Set,a.has(d))throw new Error("Invalid circular reference");return a.add(d),r[o]=u(s(d)),a.delete(d),r[o]}switch(l){case"Date":r[o]=new Date(i[1]);break;case"Set":const d=new Set;r[o]=d;for(let f=1;f<i.length;f+=1)d.add(s(i[f]));break;case"Map":const p=new Map;r[o]=p;for(let f=1;f<i.length;f+=2)p.set(s(i[f]),s(i[f+1]));break;case"RegExp":r[o]=new RegExp(i[1],i[2]);break;case"Object":{const f=i[1];if(typeof n[f]=="object"&&n[f][0]!=="BigInt")throw new Error("Invalid input");r[o]=Object(s(f));break}case"BigInt":r[o]=BigInt(i[1]);break;case"null":const h=Object.create(null);r[o]=h;for(let f=1;f<i.length;f+=2){if(i[f]==="__proto__")throw new Error("Cannot parse an object with a `__proto__` property");h[i[f]]=s(i[f+1])}break;case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Float16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"BigInt64Array":case"BigUint64Array":case"DataView":{if(n[i[1]][0]!=="ArrayBuffer")throw new Error("Invalid data");const f=globalThis[l],m=s(i[1]);r[o]=i[2]!==void 0?new f(m,i[2],i[3]):new f(m);break}case"ArrayBuffer":{const f=i[1];if(typeof f!="string")throw new Error("Invalid ArrayBuffer encoding");const m=Qt(f);r[o]=m;break}case"Temporal.Duration":case"Temporal.Instant":case"Temporal.PlainDate":case"Temporal.PlainTime":case"Temporal.PlainDateTime":case"Temporal.PlainMonthDay":case"Temporal.PlainYearMonth":case"Temporal.ZonedDateTime":{const f=l.slice(9);r[o]=Temporal[f].from(i[1]);break}case"URL":{const f=new URL(i[1]);r[o]=f;break}case"URLSearchParams":{const f=new URLSearchParams(i[1]);r[o]=f;break}default:throw new Error(`Unknown type ${l}`)}}else if(i[0]===sn){const l=i[1];if(!Number.isInteger(l)||l<0)throw new Error("Invalid input");const u=new Array(l);r[o]=u;for(let d=2;d<i.length;d+=2){const p=i[d];if(!Number.isInteger(p)||p<0||p>=l)throw new Error("Invalid input");u[p]=s(i[d+1])}}else{const l=new Array(i.length);r[o]=l;for(let u=0;u<i.length;u+=1){const d=i[u];d!==tn&&(l[u]=s(d))}}else{const l={};r[o]=l;for(const u of Object.keys(i)){if(u==="__proto__")throw new Error("Cannot parse an object with a `__proto__` property");const d=i[u];l[u]=s(d)}}return r[o]}return s(0)}const ht=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);[...ht];const cn=new Set([...ht]);[...cn];function ln(e){return e.filter(t=>t!=null)}const fn="x-sveltekit-invalidated",un="x-sveltekit-trailing-slash";function he(e){return e instanceof ve||e instanceof De?e.status:500}function dn(e){return e instanceof De?e.text:"Internal Error"}let k,ne,Ue;const hn=ze.toString().includes("$$")||/function \w+\(\) \{\}/.test(ze.toString()),et="a:";hn?(k={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(et)},ne={current:null},Ue={current:!1}):(k=new class{#e=P({});get data(){return j(this.#e)}set data(t){O(this.#e,t)}#t=P(null);get form(){return j(this.#t)}set form(t){O(this.#t,t)}#n=P(null);get error(){return j(this.#n)}set error(t){O(this.#n,t)}#r=P({});get params(){return j(this.#r)}set params(t){O(this.#r,t)}#a=P({id:null});get route(){return j(this.#a)}set route(t){O(this.#a,t)}#o=P({});get state(){return j(this.#o)}set state(t){O(this.#o,t)}#s=P(-1);get status(){return j(this.#s)}set status(t){O(this.#s,t)}#i=P(new URL(et));get url(){return j(this.#i)}set url(t){O(this.#i,t)}},ne=new class{#e=P(null);get current(){return j(this.#e)}set current(t){O(this.#e,t)}},Ue=new class{#e=P(!1);get current(){return j(this.#e)}set current(t){O(this.#e,t)}},ut.v=()=>Ue.current=!0);function Me(e){Object.assign(k,e)}const pn="/__data.json",_n=".html__data.json";function gn(e){return e.endsWith(".html")?e.replace(/\.html$/,_n):e.replace(/\/$/,"")+pn}const{tick:pt}=It,mn=new Set(["icon","shortcut icon","apple-touch-icon"]);let z=null;const B=ot(it)??{},re=ot(st)??{},D={url:Qe({}),page:Qe({}),navigating:xe(null),updated:Kt()};function Ve(e){B[e]=V()}function wn(e,t){let n=e+1;for(;B[n];)delete B[n],n+=1;for(n=t+1;re[n];)delete re[n],n+=1}function K(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(C)}async function _t(){if("serviceWorker"in navigator){const e=await navigator.serviceWorker.getRegistration(L||"/");e&&await e.update()}}let qe,je,pe,$,Oe,E;const _e=[],ge=[];let U=null;function ae(){U?.fork?.then(e=>e?.discard()),U=null}const fe=new Map,gt=new Set,yn=new Set,Q=new Set;let _={branch:[],error:null,url:null,nav:null},Ge=!1,me=!1,tt=!0,oe=!1,X=!1,mt=!1,ce=!1,W,R,T,x;const ee=new Set;let Te;const we=new Map;async function Fn(e,t,n){globalThis.__sveltekit_62cvo1&&(globalThis.__sveltekit_62cvo1.query,globalThis.__sveltekit_62cvo1.prerender),document.URL!==location.href&&(location.href=location.href),E=e,await e.hooks.init?.(),qe=qt(e),$=document.documentElement,Oe=t,je=e.nodes[0],pe=e.nodes[1],je(),pe(),R=history.state?.[G],T=history.state?.[te],R||(R=T=Date.now(),history.replaceState({...history.state,[G]:R,[te]:T},""));const r=B[R];function a(){r&&(history.scrollRestoration="manual",scrollTo(r.x,r.y))}n?(a(),await Ln(Oe,n)):(await H({type:"enter",url:Fe(E.hash?Pn(new URL(location.href)):location.href),replace_state:!0}),a()),Tn()}async function vn(e=!0,t=!0){if(await(Te||=Promise.resolve()),!Te)return;Te=null;const n=x={},r=await le(_.url,!0);if(ae(),ce&&we.forEach(a=>{a.forEach(({resource:s})=>{s.refresh?.()})}),e){const a=k.state,s=r&&await Ke(r);if(!s||n!==x)return;if(s.type==="redirect")return ke(new URL(s.location,_.url).href,{replaceState:!0},1,n);t||(s.props.page.state=a),Me(s.props.page),_={...s.state,nav:_.nav},Ne(),W.$set(s.props)}else Ne();await Promise.all([...we.values()].flatMap(a=>[...a.values()].map(({resource:s})=>s))).catch(C)}function Ne(){_e.length=0,ce=!1}function wt(e){ge.some(t=>t?.snapshot)&&(re[e]=ge.map(t=>t?.snapshot?.capture()))}function yt(e){re[e]?.forEach((t,n)=>{ge[n]?.snapshot?.restore(t)})}function nt(){Ve(R),Xe(it,B),wt(T),Xe(st,re)}async function ke(e,t,n,r){let a;t.invalidateAll&&ae(),await H({type:"goto",url:Fe(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:r,accept:()=>{t.invalidateAll&&(ce=!0,a=[],we.forEach((s,o)=>{for(const c of s.keys())a.push(o+"/"+c)})),t.invalidate&&t.invalidate.forEach(In)}}),t.invalidateAll&&ue().then(ue).then(()=>{we.forEach((s,o)=>{s.forEach(({resource:c},i)=>{a?.includes(o+"/"+i)&&c.refresh?.()})})})}async function bn(e){if(e.id!==U?.id){ae();const t={};ee.add(t),U={id:e.id,token:t,promise:Ke({...e,preload:t}).then(n=>(ee.delete(t),n.type==="loaded"&&n.state.error&&ae(),n)),fork:null}}return U.promise}async function Le(e){const t=(await le(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(n=>n[1]()))}async function vt(e,t,n){const r={params:_.params,route:{id:_.route?.id??null},url:new URL(location.href)};_={...e.state,nav:r};const a=document.querySelector("style[data-sveltekit]");if(a&&a.remove(),Object.assign(k,e.props.page),W=new E.root({target:t,props:{...e.props,stores:D,components:ge},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),yt(T),n){const s={from:null,to:{...r,scroll:B[R]??V()},willUnload:!1,type:"enter",complete:Promise.resolve()};Q.forEach(o=>o(s))}me=!0}async function se({url:e,params:t,branch:n,errors:r,status:a,error:s,route:o,form:c}){let i="never";if(L&&(e.pathname===L||e.pathname===L+"/"))i="always";else for(const f of n)f?.slash!==void 0&&(i=f.slash);e.pathname=Tt(e.pathname,i),e.search=e.search;const l={type:"loaded",state:{url:e,params:t,branch:n,error:s,route:o},props:{constructors:ln(n).map(f=>f.node.component),page:Ae(k)}};c!==void 0&&(l.props.form=c);let u={},d=!k,p=0;for(let f=0;f<Math.max(n.length,_.branch.length);f+=1){const m=n[f],b=_.branch[f];m?.data!==b?.data&&(d=!0),m&&(u={...u,...m.data},d&&(l.props[`data_${p}`]=u),p+=1)}return(!_.url||e.href!==_.url.href||_.error!==s||c!==void 0&&c!==k.form||d)&&(l.props.page={error:s,params:t,route:{id:o?.id??null},state:{},status:a,url:new URL(e),form:c??null,data:d?u:k.data}),l}async function He({loader:e,parent:t,url:n,params:r,route:a,server_data_node:s}){let o=null;const c={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},i=await e();return{node:i,loader:e,server:s,universal:i.universal?.load?{type:"data",data:o,uses:c}:null,data:o??s?.data??null,slash:i.universal?.trailingSlash??s?.slash}}function kn(e,t,n){let r=e instanceof Request?e.url:e;const a=new URL(r,n);a.origin===n.origin&&(r=a.href.slice(n.origin.length));const s=me?Ct(r,a.href,t):xt(r,t);return{resolved:a,promise:s}}function rt(e,t,n,r,a,s){if(ce)return!0;if(!a)return!1;if(a.parent&&e||a.route&&t||a.url&&n)return!0;for(const o of a.search_params)if(r.has(o))return!0;for(const o of a.params)if(s[o]!==_.params[o])return!0;for(const o of a.dependencies)if(_e.some(c=>c(new URL(o))))return!0;return!1}function Je(e,t){return e?.type==="data"?e:e?.type==="skip"?t??null:null}function En(e,t){if(!e)return new Set(t.searchParams.keys());const n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(const r of n){const a=e.searchParams.getAll(r),s=t.searchParams.getAll(r);a.every(o=>s.includes(o))&&s.every(o=>a.includes(o))&&n.delete(r)}return n}function at({error:e,url:t,route:n,params:r}){return{type:"loaded",state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Ae(k),constructors:[]}}}async function Ke({id:e,invalidating:t,url:n,params:r,route:a,preload:s}){if(U?.id===e)return ee.delete(U.token),U.promise;const{errors:o,layouts:c,leaf:i}=a,l=[...c,i];o.forEach(w=>w?.().catch(C)),l.forEach(w=>w?.[1]().catch(C));let u=null;const d=_.url?e!==ye(_.url):!1,p=_.route?a.id!==_.route.id:!1,h=En(_.url,n);let f=!1;{const w=l.map((y,A)=>{const S=_.branch[A],v=!!y?.[0]&&(S?.loader!==y[1]||rt(f,p,d,h,S.server?.uses,r));return v&&(f=!0),v});if(w.some(Boolean)){try{u=await At(n,w)}catch(y){const A=await J(y,{url:n,params:r,route:{id:e}});return ee.has(s)?at({error:A,url:n,params:r,route:a}):Ee({status:he(y),error:A,url:n,route:a})}if(u.type==="redirect")return u}}const m=u?.nodes;let b=!1;const g=l.map(async(w,y)=>{if(!w)return;const A=_.branch[y],S=m?.[y];if((!S||S.type==="skip")&&w[1]===A?.loader&&!rt(b,p,d,h,A.universal?.uses,r))return A;if(b=!0,S?.type==="error")throw S;return He({loader:w[1],url:n,params:r,route:a,parent:async()=>{const N={};for(let F=0;F<y;F+=1)Object.assign(N,(await g[F])?.data);return N},server_data_node:Je(S===void 0&&w[0]?{type:"skip"}:S??null,w[0]?A?.server:void 0)})});for(const w of g)w.catch(C);const I=[];for(let w=0;w<l.length;w+=1)if(l[w])try{I.push(await g[w])}catch(y){if(y instanceof Ce)return{type:"redirect",location:y.location};if(ee.has(s))return at({error:await J(y,{params:r,url:n,route:{id:a.id}}),url:n,params:r,route:a});let A=he(y),S;if(m?.includes(y))A=y.status??A,S=y.error;else if(y instanceof ve)S=y.body;else{if(await D.updated.check())return await _t(),await K(n);S=await J(y,{params:r,url:n,route:{id:a.id}})}const v=await bt(w,I,o);return v?se({url:n,params:r,branch:I.slice(0,v.idx).concat(v.node),errors:o,status:A,error:S,route:a}):await Et(n,{id:a.id},S,A)}else I.push(void 0);return se({url:n,params:r,branch:I,errors:o,status:200,error:null,route:a,form:t?void 0:null})}async function bt(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)r-=1;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function Ee({status:e,error:t,url:n,route:r}){const a={};let s=null;if(E.server_loads[0]===0)try{const c=await At(n,[!0]);if(c.type!=="data"||c.nodes[0]&&c.nodes[0].type!=="data")throw 0;s=c.nodes[0]??null}catch{(n.origin!==ie||n.pathname!==location.pathname||Ge)&&await K(n)}try{const o=await He({loader:je,url:n,params:a,route:r,parent:()=>Promise.resolve({}),server_data_node:Je(s)}),c={node:await pe(),loader:pe,universal:null,server:null,data:null};return se({url:n,params:a,branch:[o,c],status:e,error:t,errors:[],route:null})}catch(o){if(o instanceof Ce)return ke(new URL(o.location,location.href),{},0);throw o}}async function An(e){const t=e.href;if(fe.has(t))return fe.get(t);let n;try{const r=(async()=>{let a=await E.hooks.reroute({url:new URL(e),fetch:async(s,o)=>kn(s,o,e).promise})??e;if(typeof a=="string"){const s=new URL(e);E.hash?s.hash=a:s.pathname=a,a=s}return a})();fe.set(t,r),n=await r}catch{fe.delete(t);return}return n}async function le(e,t){if(e&&!be(e,L,E.hash)){const n=await An(e);if(!n)return;const r=Sn(n);for(const a of qe){const s=a.exec(r);if(s)return{id:ye(e),invalidating:t,route:a,params:Pt(s),url:e}}}}function Sn(e){return Lt(E.hash?e.hash.replace(/^#/,"").replace(/[?#].+/,""):e.pathname.slice(L.length))||"/"}function ye(e){return(E.hash?e.hash.replace(/^#/,""):e.pathname)+e.search}function kt({url:e,type:t,intent:n,delta:r,event:a,scroll:s}){let o=!1;const c=Ye(_,n,e,t,s??null);r!==void 0&&(c.navigation.delta=r),a!==void 0&&(c.navigation.event=a);const i={...c.navigation,cancel:()=>{o=!0,c.reject(new Error("navigation cancelled"))}};return oe||gt.forEach(l=>l(i)),o?null:c}async function H({type:e,url:t,popped:n,keepfocus:r,noscroll:a,replace_state:s,state:o={},redirect_count:c=0,nav_token:i={},accept:l=C,block:u=C,event:d}){const p=x;x=i;const h=await le(t,!1),f=e==="enter"?Ye(_,h,t,e):kt({url:t,type:e,delta:n?.delta,intent:h,scroll:n?.scroll,event:d});if(!f){u(),x===i&&(x=p);return}const m=R,b=T;l(),oe=!0,me&&f.navigation.type!=="enter"&&D.navigating.set(ne.current=f.navigation);let g=h&&await Ke(h);if(!g){if(be(t,L,E.hash))return await K(t,s);g=await Et(t,{id:null},await J(new De(404,"Not Found",`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404,s)}if(t=h?.url||t,x!==i)return f.reject(new Error("navigation aborted")),!1;if(g.type==="redirect"){if(c<20){await H({type:e,url:new URL(g.location,t),popped:n,keepfocus:r,noscroll:a,replace_state:s,state:o,redirect_count:c+1,nav_token:i}),f.fulfil(void 0);return}g=await Ee({status:500,error:await J(new Error("Redirect loop"),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}})}else g.props.page.status>=400&&await D.updated.check()&&(await _t(),await K(t,s));if(Ne(),Ve(m),wt(b),g.props.page.url.pathname!==t.pathname&&(t.pathname=g.props.page.url.pathname),o=n?n.state:o,!n){const v=s?0:1,N={[G]:R+=v,[te]:T+=v,[ct]:o};(s?history.replaceState:history.pushState).call(history,N,"",t),s||wn(R,T)}const I=h&&U?.id===h.id?U.fork:null;U?.fork&&!I&&ae(),U=null,g.props.page.state=o;let w;if(me){const v=(await Promise.all(Array.from(yn,Y=>Y(f.navigation)))).filter(Y=>typeof Y=="function");if(v.length>0){let Y=function(){v.forEach(Se=>{Q.delete(Se)})};v.push(Y),v.forEach(Se=>{Q.add(Se)})}const N=f.navigation.to;_={...g.state,nav:{params:N.params,route:N.route,url:N.url}},g.props.page&&(g.props.page.url=t);const F=I&&await I;F?w=F.commit():(z=null,W.$set(g.props),z&&Object.assign(g.props.page,z),Me(g.props.page),w=Ut?.()),mt=!0}else await vt(g,Oe,!1);const{activeElement:y}=document;await w,await ue(),await ue();let A=null;if(tt){const v=n?n.scroll:a?V():null;v?scrollTo(v.x,v.y):(A=t.hash&&document.getElementById(Rt(t)))?A.scrollIntoView():scrollTo(0,0)}const S=document.activeElement!==y&&document.activeElement!==document.body;!r&&!S&&We(t,!A),tt=!0,g.props.page&&(z&&Object.assign(g.props.page,z),Object.assign(k,g.props.page)),oe=!1,e==="popstate"&&yt(T),f.fulfil(void 0),f.navigation.to&&(f.navigation.to.scroll=V()),Q.forEach(v=>v(f.navigation)),D.navigating.set(ne.current=null)}async function Et(e,t,n,r,a){return e.origin===ie&&e.pathname===location.pathname&&!Ge?await Ee({status:r,error:n,url:e,route:t}):await K(e,a)}function Rn(){let e,t={element:void 0,href:void 0},n;$.addEventListener("mousemove",c=>{const i=c.target;clearTimeout(e),e=setTimeout(()=>{s(i,M.hover)},20)});function r(c){c.defaultPrevented||s(c.composedPath()[0],M.tap)}$.addEventListener("mousedown",r),$.addEventListener("touchstart",r,{passive:!0});const a=new IntersectionObserver(c=>{for(const i of c)i.isIntersecting&&(Le(new URL(i.target.href)),a.unobserve(i.target))},{threshold:0});async function s(c,i){const l=ft(c,$),u=l===t.element&&l?.href===t.href&&i>=n;if(!l||u)return;const{url:d,external:p,download:h}=Pe(l,L,E.hash);if(p||h)return;const f=de(l),m=d&&ye(_.url)===ye(d);if(!(f.reload||m))if(i<=f.preload_data){t={element:l,href:l.href},n=M.tap;const b=await le(d,!1);if(!b)return;bn(b)}else i<=f.preload_code&&(t={element:l,href:l.href},n=i,Le(d))}function o(){a.disconnect();for(const c of $.querySelectorAll("a")){const{url:i,external:l,download:u}=Pe(c,L,E.hash);if(l||u)continue;const d=de(c);d.reload||(d.preload_code===M.viewport&&a.observe(c),d.preload_code===M.eager&&Le(i))}}Q.add(o),o()}function J(e,t){if(e instanceof ve)return e.body;const n=he(e),r=dn(e);return E.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Mn(e,t={}){return e=new URL(Fe(e)),e.origin!==ie?Promise.reject(new Error("goto: invalid URL")):ke(e,t,0)}function In(e){if(typeof e=="function")_e.push(e);else{const{href:t}=new URL(e,location.href);_e.push(n=>n.href===t)}}function Vn(){return ce=!0,vn()}async function qn(e){e.type==="error"?await Un(e.error,e.status):e.type==="redirect"?await ke(e.location,{invalidateAll:!0},0):(k.form=e.data,k.status=e.status,W.$set({form:null,page:Ae(k)}),await pt(),W.$set({form:e.data}),e.type==="success"&&We(k.url))}async function Un(e,t=500){const n=new URL(location.href),{branch:r,route:a}=_;if(!a)return;const s=await bt(_.branch.length,r,a.errors);if(s){const o=await se({url:n,params:_.params,branch:r.slice(0,s.idx).concat(s.node),status:t,error:e,route:a});_={...o.state,nav:_.nav},W.$set(o.props),Me(o.props.page),pt().then(()=>We(_.url))}}function Tn(){history.scrollRestoration="manual",addEventListener("beforeunload",t=>{let n=!1;if(nt(),!oe){const r=Ye(_,void 0,null,"leave"),a={...r.navigation,cancel:()=>{n=!0,r.reject(new Error("navigation cancelled"))}};gt.forEach(s=>s(a))}n?(t.preventDefault(),t.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&nt()}),navigator.connection?.saveData||Rn(),$.addEventListener("click",async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;const n=ft(t.composedPath()[0],$);if(!n)return;const{url:r,external:a,target:s,download:o}=Pe(n,L,E.hash);if(!r)return;if(s==="_parent"||s==="_top"){if(window.parent!==window)return}else if(s&&s!=="_self")return;const c=de(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol==="https:"||r.protocol==="http:")||o)return;const[l,u]=(E.hash?r.hash.replace(/^#/,""):r.href).split("#"),d=l===Re(location);if(a||c.reload&&(!d||!u)){kt({url:r,type:"link",event:t})?oe=!0:t.preventDefault();return}if(u!==void 0&&d){const[,p]=_.url.href.split("#");if(p===u){if(t.preventDefault(),u===""||u==="top"&&n.ownerDocument.getElementById("top")===null)scrollTo({top:0});else{const h=n.ownerDocument.getElementById(decodeURIComponent(u));h&&(h.scrollIntoView(),h.focus())}return}if(X=!0,Ve(R),e(r),!c.replace_state)return;X=!1}t.preventDefault(),await new Promise(p=>{requestAnimationFrame(()=>{setTimeout(p,0)}),setTimeout(p,100)}),await H({type:"link",url:r,keepfocus:c.keepfocus,noscroll:c.noscroll,replace_state:c.replace_state??r.href===location.href,event:t})}),$.addEventListener("submit",t=>{if(t.defaultPrevented)return;const n=HTMLFormElement.prototype.cloneNode.call(t.target),r=t.submitter;if((r?.formTarget||n.target)==="_blank"||(r?.formMethod||n.method)!=="get")return;const o=new URL(r?.hasAttribute("formaction")&&r?.formAction||n.action);if(be(o,L,!1))return;const c=t.target,i=de(c);if(i.reload)return;t.preventDefault(),t.stopPropagation();const l=new FormData(c,r);o.search=new URLSearchParams(l).toString(),H({type:"form",url:o,keepfocus:i.keepfocus,noscroll:i.noscroll,replace_state:i.replace_state??o.href===location.href,event:t})}),addEventListener("popstate",async t=>{if(!$e){if(t.state?.[G]){const n=t.state[G];if(x={},n===R)return;const r=B[n],a=t.state[ct]??{},s=new URL(t.state[Jt]??location.href),o=t.state[te],c=_.url?Re(location)===Re(_.url):!1;if(o===T&&(mt||c)){a!==k.state&&(k.state=a),e(s),B[R]=V(),r&&scrollTo(r.x,r.y),R=n;return}const l=n-R;await H({type:"popstate",url:s,popped:{state:a,scroll:r,delta:l},accept:()=>{R=n,T=o},block:()=>{history.go(-l)},nav_token:x,event:t})}else if(!X){const n=new URL(location.href);e(n),E.hash&&location.reload()}}}),addEventListener("hashchange",()=>{X&&(X=!1,history.replaceState({...history.state,[G]:++R,[te]:T},"",location.href))});for(const t of document.querySelectorAll("link"))mn.has(t.rel)&&(t.href=t.href);addEventListener("pageshow",t=>{t.persisted&&D.navigating.set(ne.current=null)});function e(t){_.url=k.url=t,D.page.set(Ae(k)),D.page.notify()}}async function Ln(e,{status:t=200,error:n,node_ids:r,params:a,route:s,server_route:o,data:c,form:i}){Ge=!0;const l=new URL(location.href);let u;({params:a={},route:s={id:null}}=await le(l,!1)||{}),u=qe.find(({id:h})=>h===s.id);let d,p=!0;try{const h=r.map(async(m,b)=>{const g=c[b];return g?.uses&&(g.uses=St(g.uses)),He({loader:E.nodes[m],url:l,params:a,route:s,parent:async()=>{const I={};for(let w=0;w<b;w+=1)Object.assign(I,(await h[w]).data);return I},server_data_node:Je(g)})}),f=await Promise.all(h);if(u){const m=u.layouts;for(let b=0;b<m.length;b++)m[b]||f.splice(b,0,void 0)}d=await se({url:l,params:a,branch:f,status:t,error:n,errors:u?.errors,form:i,route:u??null})}catch(h){if(h instanceof Ce){await K(new URL(h.location,location.href));return}d=await Ee({status:he(h),error:await J(h,{url:l,params:a,route:s}),url:l,route:s}),e.textContent="",p=!1}d.props.page&&(d.props.page.state={}),await vt(d,e,p)}async function At(e,t){const n=new URL(e);n.pathname=gn(e.pathname),e.pathname.endsWith("/")&&n.searchParams.append(un,"1"),n.searchParams.append(fn,t.map(s=>s?"1":"0").join(""));const r=window.fetch,a=await r(n.href,{});if(!a.ok){let s;throw a.headers.get("content-type")?.includes("application/json")?s=await a.json():a.status===404?s="Not Found":a.status===500&&(s="Internal Error"),new ve(a.status,s)}return new Promise(async s=>{const o=new Map,c=a.body.getReader();function i(u){return dt(u,{...E.decoders,Promise:d=>new Promise((p,h)=>{o.set(d,{fulfil:p,reject:h})})})}let l="";for(;;){const{done:u,value:d}=await c.read();if(u&&!l)break;for(l+=!d&&l?`
2
- `:Ot.decode(d,{stream:!0});;){const p=l.indexOf(`
3
- `);if(p===-1)break;const h=JSON.parse(l.slice(0,p));if(l=l.slice(p+1),h.type==="redirect")return s(h);if(h.type==="data")h.nodes?.forEach(f=>{f?.type==="data"&&(f.uses=St(f.uses),f.data=i(f.data))}),s(h);else if(h.type==="chunk"){const{id:f,data:m,error:b}=h,g=o.get(f);o.delete(f),b?g.reject(i(b)):g.fulfil(i(m))}}}})}function St(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}let $e=!1;function We(e,t=!0){const n=document.querySelector("[autofocus]");if(n)n.focus();else{const r=Rt(e);if(r&&document.getElementById(r)){const{x:s,y:o}=V();setTimeout(()=>{const c=history.state;$e=!0,location.replace(new URL(`#${r}`,location.href)),history.replaceState(c,"",e),t&&scrollTo(s,o),$e=!1})}else{const s=document.body,o=s.getAttribute("tabindex");s.tabIndex=-1,s.focus({preventScroll:!0,focusVisible:!1}),o!==null?s.setAttribute("tabindex",o):s.removeAttribute("tabindex")}const a=getSelection();if(a&&a.type!=="None"){const s=[];for(let o=0;o<a.rangeCount;o+=1)s.push(a.getRangeAt(o));setTimeout(()=>{if(a.rangeCount===s.length){for(let o=0;o<a.rangeCount;o+=1){const c=s[o],i=a.getRangeAt(o);if(c.commonAncestorContainer!==i.commonAncestorContainer||c.startContainer!==i.startContainer||c.endContainer!==i.endContainer||c.startOffset!==i.startOffset||c.endOffset!==i.endOffset)return}a.removeAllRanges()}})}}}function Ye(e,t,n,r,a=null){let s,o;const c=new Promise((l,u)=>{s=l,o=u});return c.catch(C),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:V()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:a},willUnload:!t,type:r,complete:c},fulfil:s,reject:o}}function Ae(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Pn(e){const t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function Rt(e){let t;if(E.hash){const[,,n]=e.hash.split("#",3);t=n??""}else t=e.hash.slice(1);return decodeURIComponent(t)}export{qn as a,xn as b,E as c,Fn as d,Mn as g,Vn as i,$n as l,C as n,k as p,D as s};
@@ -1 +0,0 @@
1
- import{l as o,d as r}from"../chunks/4PBDTLFF.js";export{o as load_css,r as start};
@@ -1,3 +0,0 @@
1
- import"../chunks/DsnmJJEf.js";import{p as Jt,e as Yt,h as At,a as qt,i as Ft,c as o,$ as Gt,s,r as a,f as g,b as y,t as L,g as n,j as Kt,u as $t}from"../chunks/ooPBmYPj.js";import{d as Qt,s as S,a as Xt}from"../chunks/BMGykAfL.js";import{a as t,f as v,c as lt,t as T}from"../chunks/_OLpdTiI.js";import{i as w}from"../chunks/C8ko2SLk.js";import{e as jt,r as zt,s as Mt,a as Wt}from"../chunks/C1aQuqo_.js";import{c as x}from"../chunks/CcYNc8-G.js";import{h as Zt}from"../chunks/BM4_iXSA.js";import{S as te}from"../chunks/BZmrLQwT.js";import{C as Pt,a as It}from"../chunks/wamM80bu.js";import{S as ee}from"../chunks/BCse3N0b.js";import{L as ft}from"../chunks/B8uG8z2c.js";import{R as re,S as ae,a as oe,b as Lt}from"../chunks/BGxzXVpM.js";import{I as St}from"../chunks/jFKgkeON.js";import{B as kt}from"../chunks/azBeeLR0.js";import{X as se}from"../chunks/CEnIp_6Y.js";import{C as de,a as ne}from"../chunks/uINs3xv3.js";import{S as le}from"../chunks/2dX6Wjni.js";import{B as Tt}from"../chunks/B8zY50Bc.js";import{C as ie}from"../chunks/BU9URCkw.js";import{C as ce}from"../chunks/hRoV10UM.js";var ve=v(`<div class="bg-muted/30 flex items-start gap-4 rounded-lg border p-5"><div class="bg-accent text-accent-foreground rounded-md p-2.5"><!></div> <div class="min-w-0 flex-1"><p class="text-sm font-medium">Audit log not available on this deployment</p> <p class="text-muted-foreground mt-1 text-sm">This provider doesn't support audit queries. To enable audit logs, configure a
2
- provider with <code class="bg-muted rounded px-1 py-0.5 font-mono text-xs">auditQuery</code> in your <code class="bg-muted rounded px-1 py-0.5 font-mono text-xs">selva.config.ts</code>.</p></div></div>`),ue=v('<span class="truncate"> </span>'),me=v("<!> <!>",1),fe=v("<!> <!>",1),_e=v('<input type="hidden" name="type"/>'),pe=v("<!> Reset",1),ge=v('<form method="get" class="grid gap-4 md:grid-cols-[1fr_1fr_auto_auto_auto]"><div class="flex flex-col gap-1.5"><!> <!> <!></div> <div class="flex flex-col gap-1.5"><!> <!></div> <div class="flex flex-col gap-1.5"><!> <!></div> <div class="flex flex-col gap-1.5"><!> <!></div> <div class="flex items-end gap-2"><!> <!></div></form>'),he=v('Events <span class="text-muted-foreground ml-2 font-normal"> </span>',1),xe=v('<div class="text-muted-foreground flex flex-col items-center gap-2 py-12 text-sm"><!> <p>No events match these filters.</p></div>'),be=v('<span> </span> <span class="text-muted-foreground ml-1 font-mono text-xs"> </span>',1),ye=v('<span class="text-muted-foreground italic">Deleted user</span> <span class="text-muted-foreground ml-1 font-mono text-xs"> </span>',1),$e=v('<tr class="bg-muted/20 border-b"><td></td><td colspan="4" class="py-2 pr-4"><pre class="text-muted-foreground max-w-full overflow-x-auto text-xs"> </pre></td></tr>'),Pe=v('<tr class="hover:bg-muted/30 border-b"><td class="py-2"><button type="button" class="text-muted-foreground hover:text-foreground"><!></button></td><td class="py-2 pr-4 font-mono text-xs whitespace-nowrap"> </td><td class="py-2 pr-4"><!></td><td class="py-2 pr-4"><!></td><td class="py-2 pr-4"> </td></tr> <!>',1),Ie=v('<div class="overflow-x-auto"><table class="w-full text-sm"><thead class="text-muted-foreground border-b text-left text-xs uppercase"><tr><th class="w-8 py-2"></th><th class="py-2 pr-4">Time</th><th class="py-2 pr-4">Type</th><th class="py-2 pr-4">Actor</th><th class="py-2 pr-4">Target</th></tr></thead><tbody></tbody></table></div>'),Se=v('<div class="mt-4 flex justify-center"><!></div>'),ke=v("<!> <!>",1),Ce=v("<!> <!>",1),Ae=v("<!> <!>",1),je=v('<div class="space-y-6"><!> <!></div>');function Me(Dt,l){Jt(l,!0);const _t={"org.created":"Org · created","org.deleted":"Org · deleted","org_member.added":"Org member · added","org_member.removed":"Org member · removed","org_member.role_changed":"Org member · role changed","org_member.permissions_changed":"Org member · permissions changed","project.created":"Project · created","project.deleted":"Project · deleted","project_member.added":"Project member · added","project_member.removed":"Project member · removed","project_member.role_changed":"Project member · role changed","definition.created":"Definition · created","definition.deleted":"Definition · deleted","definition.published":"Definition · published","definition_version.created":"Version · created","definition_version.deleted":"Version · deleted","share_link.minted":"Share link · minted","share_link.revoked":"Share link · revoked","invite.created":"Invite · created","invite.accepted":"Invite · accepted","invite.revoked":"Invite · revoked"},Et={org:"Org",project:"Project",definition:"Definition",definition_version:"Version",share_link:"Share link",invite:"Invite",user:"User"};function it(e){if(!e)return"";const u=e.match(/^(\d{4}-\d{2}-\d{2})/);return u?u[1]:""}const Q="__all__";let D=Yt(At(l.data.filters.types[0]??Q));const X=At({});function Ot(e){X[e]=!X[e]}const Vt=$t(()=>{if(!l.data.nextCursor)return"";const e=[],u=(k,z)=>e.push(`${encodeURIComponent(k)}=${encodeURIComponent(z)}`);for(const k of l.data.filters.types)u("type",k);return l.data.filters.actorId&&u("actor",l.data.filters.actorId),l.data.filters.sinceIso&&u("since",it(l.data.filters.sinceIso)),l.data.filters.untilIso&&u("until",it(l.data.filters.untilIso)),u("cursor",JSON.stringify(l.data.nextCursor)),`?${e.join("&")}`});function Bt(e){try{return new Date(e).toLocaleString()}catch{return e}}function pt(e){return e.length<=8?e:e.slice(0,8)+"…"}function Rt(e){if(!e.target)return"—";const u=Et[e.target.kind]??e.target.kind;return e.target.name?`${u}: ${e.target.name}`:`${u}: ${pt(e.target.id)} (deleted)`}var gt=je();Zt("5hb2v4",e=>{Ft(()=>{Gt.title="Admin · Audit log"})});var Ct=o(gt);te(Ct,{eyebrow:"Admin",title:"Audit log",description:"Every domain event recorded on this instance — actor, type, target, timestamp."});var Ut=s(Ct,2);{var wt=e=>{var u=lt(),k=g(u);x(k,()=>It,(z,M)=>{M(z,{children:(W,ct)=>{var vt=lt(),E=g(vt);x(E,()=>Pt,(N,Z)=>{Z(N,{class:"pt-6",children:(O,H)=>{var C=ve(),A=o(C),$=o(A);ee($,{class:"h-4 w-4"}),a(A),y(2),a(C),t(O,C)},$$slots:{default:!0}})}),t(W,vt)},$$slots:{default:!0}})}),t(e,u)},Nt=e=>{var u=Ae(),k=g(u);x(k,()=>It,(M,W)=>{W(M,{children:(ct,vt)=>{var E=lt(),N=g(E);x(N,()=>Pt,(Z,O)=>{O(Z,{class:"pt-6",children:(H,C)=>{var A=ge(),$=o(A),V=o($);ft(V,{for:"audit-type",children:(d,h)=>{y();var c=T("Event type");t(d,c)},$$slots:{default:!0}});var J=s(V,2);x(J,()=>re,(d,h)=>{h(d,{type:"single",get value(){return n(D)},onValueChange:c=>Kt(D,c??Q,!0),children:(c,ut)=>{var G=fe(),mt=g(G);x(mt,()=>ae,(st,dt)=>{dt(st,{id:"audit-type",class:"h-9 text-sm",children:(nt,xt)=>{var I=ue(),K=o(I,!0);a(I),L(()=>S(K,n(D)===Q?"All event types":_t[n(D)]??n(D))),t(nt,I)},$$slots:{default:!0}})});var ot=s(mt,2);x(ot,()=>oe,(st,dt)=>{dt(st,{children:(nt,xt)=>{var I=me(),K=g(I);x(K,()=>Lt,(U,r)=>{r(U,{value:Q,label:"All event types"})});var bt=s(K,2);jt(bt,16,()=>l.data.knownTypes,U=>U,(U,r)=>{var m=lt(),p=g(m);x(p,()=>Lt,(P,j)=>{j(P,{get value(){return r},get label(){return _t[r]}})}),t(U,m)}),t(nt,I)},$$slots:{default:!0}})}),t(c,G)},$$slots:{default:!0}})});var tt=s(J,2);{var et=d=>{var h=_e();zt(h),L(()=>Mt(h,n(D))),t(d,h)};w(tt,d=>{n(D)!==Q&&d(et)})}a($);var Y=s($,2),f=o(Y);ft(f,{for:"audit-actor",children:(d,h)=>{y();var c=T("Actor user ID");t(d,c)},$$slots:{default:!0}});var _=s(f,2);St(_,{id:"audit-actor",name:"actor",placeholder:"User ID, or 'system'",get defaultValue(){return l.data.filters.actorId},class:"h-9 text-sm"}),a(Y);var b=s(Y,2),B=o(b);ft(B,{for:"audit-since",children:(d,h)=>{y();var c=T("From");t(d,c)},$$slots:{default:!0}});var q=s(B,2);{let d=$t(()=>it(l.data.filters.sinceIso));St(q,{id:"audit-since",name:"since",type:"date",get defaultValue(){return n(d)},class:"h-9 text-sm"})}a(b);var i=s(b,2),rt=o(i);ft(rt,{for:"audit-until",children:(d,h)=>{y();var c=T("To");t(d,c)},$$slots:{default:!0}});var at=s(rt,2);{let d=$t(()=>it(l.data.filters.untilIso));St(at,{id:"audit-until",name:"until",type:"date",get defaultValue(){return n(d)},class:"h-9 text-sm"})}a(i);var F=s(i,2),R=o(F);kt(R,{type:"submit",class:"h-9",children:(d,h)=>{y();var c=T("Apply");t(d,c)},$$slots:{default:!0}});var ht=s(R,2);kt(ht,{type:"button",variant:"ghost",href:"/admin/audit",class:"h-9",children:(d,h)=>{var c=pe(),ut=g(c);se(ut,{class:"h-4 w-4"}),y(),t(d,c)},$$slots:{default:!0}}),a(F),a(A),t(H,A)},$$slots:{default:!0}})}),t(ct,E)},$$slots:{default:!0}})});var z=s(k,2);x(z,()=>It,(M,W)=>{W(M,{children:(ct,vt)=>{var E=Ce(),N=g(E);x(N,()=>de,(O,H)=>{H(O,{children:(C,A)=>{var $=lt(),V=g($);x(V,()=>ne,(J,tt)=>{tt(J,{class:"text-sm font-medium",children:(et,Y)=>{y();var f=he(),_=s(g(f)),b=o(_);a(_),L(()=>S(b,`${l.data.rows.length??""}
3
- ${l.data.rows.length===1?"event":"events"}`)),t(et,f)},$$slots:{default:!0}})}),t(C,$)},$$slots:{default:!0}})});var Z=s(N,2);x(Z,()=>Pt,(O,H)=>{H(O,{children:(C,A)=>{var $=ke(),V=g($);{var J=f=>{var _=xe(),b=o(_);le(b,{class:"h-8 w-8 opacity-40"}),y(2),a(_),t(f,_)},tt=f=>{var _=Ie(),b=o(_),B=s(o(b));jt(B,21,()=>l.data.rows,q=>q.id,(q,i)=>{var rt=Pe(),at=g(rt),F=o(at),R=o(F),ht=o(R);{var d=r=>{ie(r,{class:"h-4 w-4"})},h=r=>{ce(r,{class:"h-4 w-4"})};w(ht,r=>{X[n(i).id]?r(d):r(h,-1)})}a(R),a(F);var c=s(F),ut=o(c,!0);a(c);var G=s(c),mt=o(G);Tt(mt,{variant:"outline",class:"font-mono text-[10px]",children:(r,m)=>{y();var p=T();L(()=>S(p,_t[n(i).type]??n(i).type)),t(r,p)},$$slots:{default:!0}}),a(G);var ot=s(G),st=o(ot);{var dt=r=>{Tt(r,{variant:"secondary",children:(m,p)=>{y();var P=T("System");t(m,P)},$$slots:{default:!0}})},nt=r=>{var m=be(),p=g(m),P=o(p,!0);a(p);var j=s(p,2),yt=o(j,!0);a(j),L(Ht=>{S(P,n(i).actor.name),S(yt,Ht)},[()=>pt(n(i).actor.id)]),t(r,m)},xt=r=>{var m=ye(),p=s(g(m),2),P=o(p,!0);a(p),L(j=>S(P,j),[()=>pt(n(i).actor.id)]),t(r,m)};w(st,r=>{n(i).actor.isSystem?r(dt):n(i).actor.name?r(nt,1):r(xt,-1)})}a(ot);var I=s(ot),K=o(I,!0);a(I),a(at);var bt=s(at,2);{var U=r=>{var m=$e(),p=s(o(m)),P=o(p),j=o(P,!0);a(P),a(p),a(m),L(yt=>S(j,yt),[()=>JSON.stringify(n(i).data,null,2)]),t(r,m)};w(bt,r=>{X[n(i).id]&&r(U)})}L((r,m)=>{Wt(R,"aria-label",X[n(i).id]?"Collapse details":"Expand details"),S(ut,r),S(K,m)},[()=>Bt(n(i).occurredAt),()=>Rt(n(i))]),Xt("click",R,()=>Ot(n(i).id)),t(q,rt)}),a(B),a(b),a(_),t(f,_)};w(V,f=>{l.data.rows.length===0?f(J):f(tt,-1)})}var et=s(V,2);{var Y=f=>{var _=Se(),b=o(_);kt(b,{variant:"outline",get href(){return n(Vt)},class:"h-9",children:(B,q)=>{y();var i=T("Load older");t(B,i)},$$slots:{default:!0}}),a(_),t(f,_)};w(et,f=>{l.data.nextCursor&&f(Y)})}t(C,$)},$$slots:{default:!0}})}),t(ct,E)},$$slots:{default:!0}})}),t(e,u)};w(Ut,e=>{l.data.available?e(Nt,-1):e(wt)})}a(gt),t(Dt,gt),qt()}Qt(["click"]);export{Me as component};
@@ -1,13 +0,0 @@
1
- import"../chunks/DsnmJJEf.js";import{p as ne,k as me,g as a,f as U,b as H,s as v,t as K,c as W,r as T,j as e,a as ie,e as F,u as se,i as _e,$ as ge,a8 as he}from"../chunks/ooPBmYPj.js";import{s as D}from"../chunks/BMGykAfL.js";import{t as N,a as r,c as $e,f as $}from"../chunks/_OLpdTiI.js";import{i as Q}from"../chunks/C8ko2SLk.js";import{c as le,e as xe}from"../chunks/C1aQuqo_.js";import{s as we,r as be,p as te,c as d,b as ye}from"../chunks/CcYNc8-G.js";import{h as Re}from"../chunks/BM4_iXSA.js";import{C as de,a as ce}from"../chunks/uINs3xv3.js";import{C as ue}from"../chunks/D7l1JayF.js";import{C as fe,a as pe}from"../chunks/wamM80bu.js";import{B as Pe}from"../chunks/azBeeLR0.js";import{I as Ce}from"../chunks/Bnpwcepm.js";import{A as Ae,a as ke,b as Oe,c as Le,d as Ee,e as Ue,f as Te,R as Me}from"../chunks/Ib-7xmHT.js";import{S as Se}from"../chunks/BZmrLQwT.js";function oe(q,L){let B=be(L,["$$slots","$$events","$$legacy"]);const c=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"}],["path",{d:"M21 3v5h-5"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"}],["path",{d:"M8 16H3v5"}]];Ce(q,we({name:"refresh-cw"},()=>B,{get iconNode(){return c}}))}var We=$("<!> <!>",1),He=$("<!> ",1),Ie=$('<div class="border-border bg-muted/50 text-muted-foreground flex items-center gap-2 rounded-md border px-3 py-2 text-sm"><!> <span>PM2 is restarting the app — waiting for the new process to come online…</span></div>'),je=$("<p> </p>"),Ne=$('<div class="space-y-2"><h4 class="text-sm font-medium">Update Logs</h4> <pre class="bg-muted text-foreground max-h-96 overflow-auto rounded-md p-4 font-mono text-xs"> </pre> <!></div>'),Be=$("<!> <!> <!>",1),Ge=$("<!> <!>",1),De=$("<!> <!>",1),Fe=$("<!> <!>",1),qe=$("<!> <!>",1),ze=$("<!> <!>",1);function Je(q,L){ne(L,!0);let B=te(L,"isRunning",3,!1),c=te(L,"isRestarting",3,!1),o=te(L,"logs",3,""),m=te(L,"exitCode",3,null),P=F(void 0),G=F(!1);me(()=>{o()&&a(P)&&(a(P).scrollTop=a(P).scrollHeight)});function z(){return c()?"Restarting & verifying…":B()?"Running…":"Run Update"}function X(){return m()===null?null:m()===0?{text:"✓ Update completed successfully",tone:"success"}:m()===-2?{text:"⚠ App did not respond within 90s after restart — check PM2 logs",tone:"destructive"}:{text:`Update failed (exit code ${m()})`,tone:"destructive"}}function J(){e(G,!0)}function Y(){e(G,!1),L.onRun?.()}var V=ze(),Z=U(V);d(Z,()=>pe,(u,E)=>{E(u,{children:(i,M)=>{var x=Ge(),C=U(x);d(C,()=>de,(A,k)=>{k(A,{children:(S,j)=>{var l=We(),f=U(l);d(f,()=>ce,(_,g)=>{g(_,{children:(b,s)=>{H();var t=N("Application Update");r(b,t)},$$slots:{default:!0}})});var n=v(f,2);d(n,()=>ue,(_,g)=>{g(_,{children:(b,s)=>{H();var t=N("Run the update script to pull latest changes and restart");r(b,t)},$$slots:{default:!0}})}),r(S,l)},$$slots:{default:!0}})});var I=v(C,2);d(I,()=>fe,(A,k)=>{k(A,{class:"space-y-4",children:(S,j)=>{var l=Be(),f=U(l);Pe(f,{onclick:J,get disabled(){return B()},variant:"destructive",children:(s,t)=>{var p=He(),y=U(p);{var R=w=>{oe(w,{class:"mr-2 h-4 w-4 animate-spin"})};Q(y,w=>{c()&&w(R)})}var O=v(y);K(w=>D(O,` ${w??""}`),[()=>z()]),r(s,p)},$$slots:{default:!0}});var n=v(f,2);{var _=s=>{var t=Ie(),p=W(t);oe(p,{class:"h-4 w-4 animate-spin"}),H(2),T(t),r(s,t)};Q(n,s=>{c()&&m()===null&&s(_)})}var g=v(n,2);{var b=s=>{var t=Ne(),p=v(W(t),2),y=W(p,!0);T(p),ye(p,h=>e(P,h),()=>a(P));var R=v(p,2);{var O=h=>{const ae=se(X);var ee=je(),ve=W(ee,!0);T(ee),K(()=>{le(ee,1,`text-sm font-medium ${a(ae).tone==="success"?"text-success":a(ae).tone==="destructive"?"text-destructive":"text-muted-foreground"}`),D(ve,a(ae).text)}),r(h,ee)},w=se(()=>X());Q(R,h=>{a(w)&&h(O)})}T(t),K(()=>D(y,o())),r(s,t)};Q(g,s=>{o()&&s(b)})}r(S,l)},$$slots:{default:!0}})}),r(i,x)},$$slots:{default:!0}})});var re=v(Z,2);d(re,()=>Me,(u,E)=>{E(u,{get open(){return a(G)},onOpenChange:i=>e(G,i,!0),children:(i,M)=>{var x=$e(),C=U(x);d(C,()=>Ae,(I,A)=>{A(I,{children:(k,S)=>{var j=qe(),l=U(j);d(l,()=>ke,(n,_)=>{_(n,{children:(g,b)=>{var s=De(),t=U(s);d(t,()=>Oe,(y,R)=>{R(y,{children:(O,w)=>{H();var h=N("Run Update?");r(O,h)},$$slots:{default:!0}})});var p=v(t,2);d(p,()=>Le,(y,R)=>{R(y,{children:(O,w)=>{H();var h=N(`This will pull the latest changes and restart the application. The service will be
2
- temporarily unavailable.`);r(O,h)},$$slots:{default:!0}})}),r(g,s)},$$slots:{default:!0}})});var f=v(l,2);d(f,()=>Ee,(n,_)=>{_(n,{children:(g,b)=>{var s=Fe(),t=U(s);d(t,()=>Ue,(y,R)=>{R(y,{children:(O,w)=>{H();var h=N("Cancel");r(O,h)},$$slots:{default:!0}})});var p=v(t,2);d(p,()=>Te,(y,R)=>{R(y,{onclick:Y,get disabled(){return B()},children:(O,w)=>{H();var h=N();K(()=>D(h,c()?"Restarting…":"Continue")),r(O,h)},$$slots:{default:!0}})}),r(g,s)},$$slots:{default:!0}})}),r(k,j)},$$slots:{default:!0}})}),r(i,x)},$$slots:{default:!0}})}),r(q,V),ie()}var Ve=$("<!> <!>",1),Ke=$('<div class="flex items-start justify-between gap-4 px-4 py-3"><div class="min-w-0 flex-1"><code class="text-foreground font-mono text-xs"> </code> <p class="text-muted-foreground mt-1 text-xs"> </p></div> <span> </span></div>'),Qe=$('<div class="divide-y rounded-lg border"></div>'),Xe=$("<!> <!>",1),Ye=$('<div class="space-y-6"><!> <!> <!></div>');function vt(q,L){ne(L,!0);const B={ALLOW_CROSS_ORG_PUBLIC:"When on, projects can be made visible to every authenticated user on the instance, not just their own org.",ALLOW_ORG_COMPUTE_OVERRIDE:"When on, individual orgs can configure their own Rhino.Compute server instead of the instance pool.",ALLOW_ORG_CREATION:'When on, signed-in users see a "Create organization" action. Off by default in self-hosted instances.',ENABLE_SHARING:"When on, editors can mint per-definition share links that grant anonymous external access. When off, the mint/list/revoke routes return 404 and any previously-minted tokens stop resolving."};let c=F(!1),o=F(""),m=F(null),P=F(!1);async function G(){try{const u=await fetch("/api/health",{cache:"no-store"});return u.ok?await u.json():null}catch{return null}}async function z(u){e(o,a(o)+`
3
- Waiting for app to come back online…
4
- `),await new Promise(M=>setTimeout(M,2e3));const E=45;let i=0;for(let M=0;M<E;M++){const x=await G();if(x){if(u&&x.commit){if(x.commit!==u){e(o,a(o)+`✓ App is back online on new commit ${x.commit.slice(0,7)}
5
- `),e(m,0),e(c,!1),e(P,!1);return}i=0}else if(i+=1,i>=2){e(o,a(o)+`✓ App is back online!
6
- `),e(m,0),e(c,!1),e(P,!1);return}}else i=0;await new Promise(C=>setTimeout(C,2e3))}e(o,a(o)+`⚠ App did not come back within 90s — check PM2 logs.
7
- `),e(m,-2),e(c,!1),e(P,!1)}async function X(){e(c,!0),e(P,!1),e(o,""),e(m,null);const E=(await G())?.commit??null;try{const i=await fetch("/admin/api/system/update",{method:"POST"});if(!i.ok){e(o,"Failed to start update process"),e(m,i.status,!0),e(c,!1);return}const M=i.body?.getReader(),x=new TextDecoder;if(!M){e(o,"Failed to read response"),e(m,-1),e(c,!1);return}let C="",I=!1,A=!1,k=null;for(;;){const{done:S,value:j}=await M.read();if(S)break;C+=x.decode(j,{stream:!0});const l=C.split(`
8
-
9
- `);C=l.pop();for(const f of l)if(f.startsWith("data: "))try{const n=JSON.parse(f.slice(6));n.type==="log"?e(o,a(o)+(n.data+`
10
- `)):n.type==="restarting"?(e(o,a(o)+(n.data+`
11
- `)),e(P,!0),I=!0):n.type==="exit"&&(A=!0,k=n.code)}catch{}}I?await z(E):A&&k===0?(e(m,0),e(c,!1)):A?(e(m,k??-1,!0),e(c,!1)):await z(E)}catch(i){a(P)?await z(E):(e(o,a(o)+(`
12
- Error: `+(i instanceof Error?i.message:"Unknown error"))),e(m,-1),e(c,!1))}}var J=Ye();Re("1uq49ma",u=>{_e(()=>{ge.title="Admin · System"})});var Y=W(J);Se(Y,{eyebrow:"Admin",title:"System settings",description:"Instance-wide configuration, platform flags, and the update runner. To change platform flags, edit your selva.config.ts configuration and restart the app."});var V=v(Y,2);d(V,()=>pe,(u,E)=>{E(u,{children:(i,M)=>{var x=Xe(),C=U(x);d(C,()=>de,(A,k)=>{k(A,{children:(S,j)=>{var l=Ve(),f=U(l);d(f,()=>ce,(_,g)=>{g(_,{class:"text-sm font-medium",children:(b,s)=>{H();var t=N("Platform flags");r(b,t)},$$slots:{default:!0}})});var n=v(f,2);d(n,()=>ue,(_,g)=>{g(_,{children:(b,s)=>{H();var t=N(`Resolved state of the env-driven flags that control instance behavior. To change a flag,
13
- edit your environment configuration and restart the app.`);r(b,t)},$$slots:{default:!0}})}),r(S,l)},$$slots:{default:!0}})});var I=v(C,2);d(I,()=>fe,(A,k)=>{k(A,{children:(S,j)=>{var l=Qe();xe(l,21,()=>Object.entries(L.data.flags),([f,n])=>f,(f,n)=>{var _=se(()=>he(a(n),2));let g=()=>a(_)[0],b=()=>a(_)[1];var s=Ke(),t=W(s),p=W(t),y=W(p,!0);T(p);var R=v(p,2),O=W(R,!0);T(R),T(t);var w=v(t,2),h=W(w,!0);T(w),T(s),K(()=>{D(y,g()),D(O,B[g()]),le(w,1,`rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide uppercase ${b()?"border-success/40 bg-success/10 text-success":"border-border text-muted-foreground"}`),D(h,b()?"On":"Off")}),r(f,s)}),T(l),r(S,l)},$$slots:{default:!0}})}),r(i,x)},$$slots:{default:!0}})});var Z=v(V,2);{var re=u=>{Je(u,{get isRunning(){return a(c)},get isRestarting(){return a(P)},get logs(){return a(o)},get exitCode(){return a(m)},onRun:X})};Q(Z,u=>{L.data.canManageUpdates&&u(re)})}T(J),r(q,J),ie()}export{vt as component};