@selvajs/selva 4.5.0 → 4.5.1

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 (357) hide show
  1. package/build/client/_app/immutable/chunks/{DuHtWI31.js → BYBRW46Q.js} +1 -1
  2. package/build/client/_app/immutable/chunks/BYBRW46Q.js.br +0 -0
  3. package/build/client/_app/immutable/chunks/BYBRW46Q.js.gz +0 -0
  4. package/build/client/_app/immutable/chunks/{DsuMOTav.js → BfWZCn9D.js} +2 -2
  5. package/build/client/_app/immutable/chunks/BfWZCn9D.js.br +0 -0
  6. package/build/client/_app/immutable/chunks/BfWZCn9D.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/{DnURu9OT.js → BoelBenK.js} +1 -1
  8. package/build/client/_app/immutable/chunks/BoelBenK.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/BoelBenK.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/{D_C_YIH8.js → BuvUOrz-.js} +1 -1
  11. package/build/client/_app/immutable/chunks/BuvUOrz-.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/BuvUOrz-.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/{Dtx1M6QG.js → CQjJB6sZ.js} +1 -1
  14. package/build/client/_app/immutable/chunks/CQjJB6sZ.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/CQjJB6sZ.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/{U_alzAUv.js → jJihnyaB.js} +1 -1
  17. package/build/client/_app/immutable/chunks/jJihnyaB.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/jJihnyaB.js.gz +0 -0
  19. package/build/client/_app/immutable/entry/{app.DXOixdTQ.js → app.CUlU8Xgx.js} +2 -2
  20. package/build/client/_app/immutable/entry/app.CUlU8Xgx.js.br +0 -0
  21. package/build/client/_app/immutable/entry/app.CUlU8Xgx.js.gz +0 -0
  22. package/build/client/_app/immutable/entry/start.yXH7NuOH.js +1 -0
  23. package/build/client/_app/immutable/entry/start.yXH7NuOH.js.br +2 -0
  24. package/build/client/_app/immutable/entry/start.yXH7NuOH.js.gz +0 -0
  25. package/build/client/_app/immutable/nodes/{1.Cgpx1yHy.js → 1.ntriGXw3.js} +1 -1
  26. package/build/client/_app/immutable/nodes/1.ntriGXw3.js.br +0 -0
  27. package/build/client/_app/immutable/nodes/1.ntriGXw3.js.gz +0 -0
  28. package/build/client/_app/immutable/nodes/11.BBxGjNus.js +4 -0
  29. package/build/client/_app/immutable/nodes/11.BBxGjNus.js.br +0 -0
  30. package/build/client/_app/immutable/nodes/11.BBxGjNus.js.gz +0 -0
  31. package/build/client/_app/immutable/nodes/{13.ByWkldPP.js → 13.BOOSKgNQ.js} +1 -1
  32. package/build/client/_app/immutable/nodes/13.BOOSKgNQ.js.br +0 -0
  33. package/build/client/_app/immutable/nodes/13.BOOSKgNQ.js.gz +0 -0
  34. package/build/client/_app/immutable/nodes/{14.87fRSA-Y.js → 14.st6sThI5.js} +1 -1
  35. package/build/client/_app/immutable/nodes/14.st6sThI5.js.br +0 -0
  36. package/build/client/_app/immutable/nodes/14.st6sThI5.js.gz +0 -0
  37. package/build/client/_app/immutable/nodes/{16.DWG3CLUv.js → 16.fAXfHZXp.js} +1 -1
  38. package/build/client/_app/immutable/nodes/16.fAXfHZXp.js.br +0 -0
  39. package/build/client/_app/immutable/nodes/16.fAXfHZXp.js.gz +0 -0
  40. package/build/client/_app/immutable/nodes/{17.CgiETa37.js → 17.BL_btSTd.js} +1 -1
  41. package/build/client/_app/immutable/nodes/17.BL_btSTd.js.br +0 -0
  42. package/build/client/_app/immutable/nodes/17.BL_btSTd.js.gz +0 -0
  43. package/build/client/_app/immutable/nodes/{19.DO2ja5iW.js → 19.D4mkSjY9.js} +1 -1
  44. package/build/client/_app/immutable/nodes/19.D4mkSjY9.js.br +0 -0
  45. package/build/client/_app/immutable/nodes/19.D4mkSjY9.js.gz +0 -0
  46. package/build/client/_app/immutable/nodes/{2.DIAYMP4_.js → 2.CNkzjKpD.js} +1 -1
  47. package/build/client/_app/immutable/nodes/2.CNkzjKpD.js.br +0 -0
  48. package/build/client/_app/immutable/nodes/2.CNkzjKpD.js.gz +0 -0
  49. package/build/client/_app/immutable/nodes/{20.DYgQYcr-.js → 20.93bCfNGI.js} +188 -188
  50. package/build/client/_app/immutable/nodes/20.93bCfNGI.js.br +0 -0
  51. package/build/client/_app/immutable/nodes/20.93bCfNGI.js.gz +0 -0
  52. package/build/client/_app/immutable/nodes/{21.CTwryTPC.js → 21.ClzCdrlw.js} +1 -1
  53. package/build/client/_app/immutable/nodes/21.ClzCdrlw.js.br +0 -0
  54. package/build/client/_app/immutable/nodes/21.ClzCdrlw.js.gz +0 -0
  55. package/build/client/_app/immutable/nodes/{23.uUN6jlSq.js → 23.DJerRiZ2.js} +1 -1
  56. package/build/client/_app/immutable/nodes/23.DJerRiZ2.js.br +0 -0
  57. package/build/client/_app/immutable/nodes/23.DJerRiZ2.js.gz +0 -0
  58. package/build/client/_app/immutable/nodes/{24.cDDvPQLh.js → 24.DOHyLmBO.js} +1 -1
  59. package/build/client/_app/immutable/nodes/24.DOHyLmBO.js.br +0 -0
  60. package/build/client/_app/immutable/nodes/24.DOHyLmBO.js.gz +0 -0
  61. package/build/client/_app/immutable/nodes/{27.lHQ_8tDM.js → 27.CkzNBFns.js} +1 -1
  62. package/build/client/_app/immutable/nodes/27.CkzNBFns.js.br +0 -0
  63. package/build/client/_app/immutable/nodes/27.CkzNBFns.js.gz +0 -0
  64. package/build/client/_app/immutable/nodes/{28.DZO_WZjq.js → 28.BGNl-6WV.js} +1 -1
  65. package/build/client/_app/immutable/nodes/28.BGNl-6WV.js.br +0 -0
  66. package/build/client/_app/immutable/nodes/28.BGNl-6WV.js.gz +0 -0
  67. package/build/client/_app/immutable/nodes/{29.BBkvtbbm.js → 29.BF0JasWQ.js} +1 -1
  68. package/build/client/_app/immutable/nodes/29.BF0JasWQ.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/29.BF0JasWQ.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/{3.Clu5JbAY.js → 3.BLNJLcvR.js} +1 -1
  71. package/build/client/_app/immutable/nodes/3.BLNJLcvR.js.br +0 -0
  72. package/build/client/_app/immutable/nodes/3.BLNJLcvR.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/{30.CunrYTKW.js → 30.C33KvKLy.js} +1 -1
  74. package/build/client/_app/immutable/nodes/30.C33KvKLy.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/30.C33KvKLy.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/{5.CwEyn2eq.js → 5.DcViAFBY.js} +1 -1
  77. package/build/client/_app/immutable/nodes/5.DcViAFBY.js.br +1 -0
  78. package/build/client/_app/immutable/nodes/5.DcViAFBY.js.gz +0 -0
  79. package/build/client/_app/immutable/nodes/{6.Cybg-4zL.js → 6.Jpw_unqM.js} +1 -1
  80. package/build/client/_app/immutable/nodes/6.Jpw_unqM.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/6.Jpw_unqM.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/{7.U-nwvAMy.js → 7.DI4lv1qr.js} +1 -1
  83. package/build/client/_app/immutable/nodes/7.DI4lv1qr.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/7.DI4lv1qr.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/{8.Ds78IC3h.js → 8.BJeZ3Zka.js} +1 -1
  86. package/build/client/_app/immutable/nodes/8.BJeZ3Zka.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/8.BJeZ3Zka.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/{9.B4Dh5-cJ.js → 9.BS42pKml.js} +1 -1
  89. package/build/client/_app/immutable/nodes/9.BS42pKml.js.br +0 -0
  90. package/build/client/_app/immutable/nodes/9.BS42pKml.js.gz +0 -0
  91. package/build/client/_app/version.json +1 -1
  92. package/build/client/_app/version.json.br +0 -0
  93. package/build/client/_app/version.json.gz +0 -0
  94. package/build/server/chunks/{1-B3qAsEuf.js → 1-CCtIB9oC.js} +2 -2
  95. package/build/server/chunks/{1-B3qAsEuf.js.map → 1-CCtIB9oC.js.map} +1 -1
  96. package/build/server/chunks/{10-YMBFU3cy.js → 10-Cj20BodR.js} +3 -3
  97. package/build/server/chunks/{10-YMBFU3cy.js.map → 10-Cj20BodR.js.map} +1 -1
  98. package/build/server/chunks/{11-DEH3nbKm.js → 11-C-goGrGx.js} +5 -5
  99. package/build/server/chunks/{11-DEH3nbKm.js.map → 11-C-goGrGx.js.map} +1 -1
  100. package/build/server/chunks/{13-D_djeolg.js → 13-DN-4EHom.js} +2 -2
  101. package/build/server/chunks/{13-D_djeolg.js.map → 13-DN-4EHom.js.map} +1 -1
  102. package/build/server/chunks/{14-B1A-3AIw.js → 14-j22gtg6q.js} +2 -2
  103. package/build/server/chunks/{14-B1A-3AIw.js.map → 14-j22gtg6q.js.map} +1 -1
  104. package/build/server/chunks/{15-KF7YQWQR.js → 15-CJJTHKeq.js} +2 -2
  105. package/build/server/chunks/{15-KF7YQWQR.js.map → 15-CJJTHKeq.js.map} +1 -1
  106. package/build/server/chunks/{16-27Ug2Gl4.js → 16-CPVRxJfK.js} +4 -4
  107. package/build/server/chunks/{16-27Ug2Gl4.js.map → 16-CPVRxJfK.js.map} +1 -1
  108. package/build/server/chunks/{17-B9EWzdfY.js → 17-CEs6NSIj.js} +2 -2
  109. package/build/server/chunks/{17-B9EWzdfY.js.map → 17-CEs6NSIj.js.map} +1 -1
  110. package/build/server/chunks/{19-DFpWVk9Q.js → 19-BK_uDFHq.js} +3 -3
  111. package/build/server/chunks/{19-DFpWVk9Q.js.map → 19-BK_uDFHq.js.map} +1 -1
  112. package/build/server/chunks/{2-psSdZh8h.js → 2-BBFUEdIk.js} +5 -5
  113. package/build/server/chunks/{2-psSdZh8h.js.map → 2-BBFUEdIk.js.map} +1 -1
  114. package/build/server/chunks/{20-B3RVyzHq.js → 20-TgvBHCqT.js} +7 -7
  115. package/build/server/chunks/{20-B3RVyzHq.js.map → 20-TgvBHCqT.js.map} +1 -1
  116. package/build/server/chunks/{21-DjJlF-s8.js → 21-CpVgaOZP.js} +2 -2
  117. package/build/server/chunks/{21-DjJlF-s8.js.map → 21-CpVgaOZP.js.map} +1 -1
  118. package/build/server/chunks/{23-Cv-iXsup.js → 23-DpZ-VAmj.js} +4 -4
  119. package/build/server/chunks/{23-Cv-iXsup.js.map → 23-DpZ-VAmj.js.map} +1 -1
  120. package/build/server/chunks/{24-C9N_eRrr.js → 24-IG8oF3LR.js} +2 -2
  121. package/build/server/chunks/{24-C9N_eRrr.js.map → 24-IG8oF3LR.js.map} +1 -1
  122. package/build/server/chunks/{27-HUwDEbMb.js → 27-BNuVmBlC.js} +2 -2
  123. package/build/server/chunks/{27-HUwDEbMb.js.map → 27-BNuVmBlC.js.map} +1 -1
  124. package/build/server/chunks/{28-l4BuMkhA.js → 28-O2gMewvR.js} +2 -2
  125. package/build/server/chunks/{28-l4BuMkhA.js.map → 28-O2gMewvR.js.map} +1 -1
  126. package/build/server/chunks/{29-DefkuWIf.js → 29-DeHI_lg6.js} +2 -2
  127. package/build/server/chunks/{29-DefkuWIf.js.map → 29-DeHI_lg6.js.map} +1 -1
  128. package/build/server/chunks/{3-FhxHeIS3.js → 3-_z4ofaYa.js} +2 -2
  129. package/build/server/chunks/{3-FhxHeIS3.js.map → 3-_z4ofaYa.js.map} +1 -1
  130. package/build/server/chunks/{30-BC7V7mS7.js → 30-B8zrsGBW.js} +2 -2
  131. package/build/server/chunks/{30-BC7V7mS7.js.map → 30-B8zrsGBW.js.map} +1 -1
  132. package/build/server/chunks/{5-BSabZ7B0.js → 5-jUoewty6.js} +3 -3
  133. package/build/server/chunks/{5-BSabZ7B0.js.map → 5-jUoewty6.js.map} +1 -1
  134. package/build/server/chunks/{6-BDAMjeLc.js → 6-Da49O-RB.js} +3 -3
  135. package/build/server/chunks/{6-BDAMjeLc.js.map → 6-Da49O-RB.js.map} +1 -1
  136. package/build/server/chunks/{7-C5uuYI8Y.js → 7-C4TEFQmD.js} +3 -3
  137. package/build/server/chunks/{7-C5uuYI8Y.js.map → 7-C4TEFQmD.js.map} +1 -1
  138. package/build/server/chunks/{8-Yg3bHJY8.js → 8-6Lblm8Bu.js} +2 -2
  139. package/build/server/chunks/{8-Yg3bHJY8.js.map → 8-6Lblm8Bu.js.map} +1 -1
  140. package/build/server/chunks/{9-BOWShy6C.js → 9-bV3k1piX.js} +3 -3
  141. package/build/server/chunks/{9-BOWShy6C.js.map → 9-bV3k1piX.js.map} +1 -1
  142. package/build/server/chunks/{AppHeader-vae2Doza.js → AppHeader-C76PLheq.js} +2 -2
  143. package/build/server/chunks/{AppHeader-vae2Doza.js.map → AppHeader-C76PLheq.js.map} +1 -1
  144. package/build/server/chunks/{UserChip-BPLEgzMp.js → UserChip-i0_3jHOb.js} +8 -3
  145. package/build/server/chunks/UserChip-i0_3jHOb.js.map +1 -0
  146. package/build/server/chunks/{_layout.svelte-D5GiNGr6.js → _layout.svelte-B-tWsdy4.js} +3 -3
  147. package/build/server/chunks/{_layout.svelte-D5GiNGr6.js.map → _layout.svelte-B-tWsdy4.js.map} +1 -1
  148. package/build/server/chunks/{_layout.svelte-_enyp5QE.js → _layout.svelte-B2RbgABg.js} +3 -3
  149. package/build/server/chunks/{_layout.svelte-_enyp5QE.js.map → _layout.svelte-B2RbgABg.js.map} +1 -1
  150. package/build/server/chunks/{_layout.svelte-aflz8r6I.js → _layout.svelte-DUeER8oS.js} +3 -3
  151. package/build/server/chunks/{_layout.svelte-aflz8r6I.js.map → _layout.svelte-DUeER8oS.js.map} +1 -1
  152. package/build/server/chunks/{_page.svelte-By_vYfbZ.js → _page.svelte-0KErHswo.js} +94 -4
  153. package/build/server/chunks/_page.svelte-0KErHswo.js.map +1 -0
  154. package/build/server/chunks/{_page.svelte-ZxjqrKH8.js → _page.svelte-BSHEM3UY.js} +3 -3
  155. package/build/server/chunks/{_page.svelte-ZxjqrKH8.js.map → _page.svelte-BSHEM3UY.js.map} +1 -1
  156. package/build/server/chunks/{_page.svelte-FDFRMnmB.js → _page.svelte-CDEfhXLp.js} +3 -3
  157. package/build/server/chunks/{_page.svelte-FDFRMnmB.js.map → _page.svelte-CDEfhXLp.js.map} +1 -1
  158. package/build/server/chunks/{_page.svelte-BDLD6pXj.js → _page.svelte-DDzV91b5.js} +124 -12
  159. package/build/server/chunks/{_page.svelte-BDLD6pXj.js.map → _page.svelte-DDzV91b5.js.map} +1 -1
  160. package/build/server/chunks/{_server.ts-DamGRKop.js → _server.ts-3LBSaM7L.js} +24 -12
  161. package/build/server/chunks/_server.ts-3LBSaM7L.js.map +1 -0
  162. package/build/server/chunks/{_server.ts-DRlwVsIx.js → _server.ts-B-un1ZTf.js} +3 -3
  163. package/build/server/chunks/{_server.ts-DRlwVsIx.js.map → _server.ts-B-un1ZTf.js.map} +1 -1
  164. package/build/server/chunks/{_server.ts-CF65FKS6.js → _server.ts-B6gtWjZd.js} +7 -7
  165. package/build/server/chunks/_server.ts-B6gtWjZd.js.map +1 -0
  166. package/build/server/chunks/{_server.ts-CMHRHdCD.js → _server.ts-B9Fdut8P.js} +14 -10
  167. package/build/server/chunks/_server.ts-B9Fdut8P.js.map +1 -0
  168. package/build/server/chunks/{_server.ts-kTCuqLDl.js → _server.ts-BJEEQ8tH.js} +15 -11
  169. package/build/server/chunks/_server.ts-BJEEQ8tH.js.map +1 -0
  170. package/build/server/chunks/{_server.ts-Ca_OJJFC.js → _server.ts-BKPaoj3Y.js} +14 -9
  171. package/build/server/chunks/_server.ts-BKPaoj3Y.js.map +1 -0
  172. package/build/server/chunks/{_server.ts-kbr9HYg5.js → _server.ts-BVpHuRup.js} +8 -8
  173. package/build/server/chunks/_server.ts-BVpHuRup.js.map +1 -0
  174. package/build/server/chunks/{_server.ts-DzA4EZf_.js → _server.ts-BplW_hNF.js} +7 -7
  175. package/build/server/chunks/_server.ts-BplW_hNF.js.map +1 -0
  176. package/build/server/chunks/{_server.ts-d6YTPmkY.js → _server.ts-Bv-G75Ze.js} +7 -7
  177. package/build/server/chunks/_server.ts-Bv-G75Ze.js.map +1 -0
  178. package/build/server/chunks/{_server.ts-DethCmgs.js → _server.ts-C5fD6gFa.js} +10 -10
  179. package/build/server/chunks/_server.ts-C5fD6gFa.js.map +1 -0
  180. package/build/server/chunks/{_server.ts-Cg6LtEov.js → _server.ts-C6rUlJpJ.js} +13 -6
  181. package/build/server/chunks/_server.ts-C6rUlJpJ.js.map +1 -0
  182. package/build/server/chunks/_server.ts-CLku3Kgz.js +66 -0
  183. package/build/server/chunks/_server.ts-CLku3Kgz.js.map +1 -0
  184. package/build/server/chunks/{_server.ts-AtxnIvMI.js → _server.ts-CNRwBoMm.js} +3 -3
  185. package/build/server/chunks/{_server.ts-AtxnIvMI.js.map → _server.ts-CNRwBoMm.js.map} +1 -1
  186. package/build/server/chunks/{_server.ts-BgVWq0qd.js → _server.ts-COuXITb8.js} +10 -10
  187. package/build/server/chunks/_server.ts-COuXITb8.js.map +1 -0
  188. package/build/server/chunks/{_server.ts-BZH3tqYX.js → _server.ts-CT1KXbVK.js} +34 -22
  189. package/build/server/chunks/_server.ts-CT1KXbVK.js.map +1 -0
  190. package/build/server/chunks/{_server.ts-Dz4bsmph.js → _server.ts-CTXCbdsb.js} +10 -9
  191. package/build/server/chunks/_server.ts-CTXCbdsb.js.map +1 -0
  192. package/build/server/chunks/{_server.ts-BQetLy9N.js → _server.ts-CXEl8kvu.js} +14 -13
  193. package/build/server/chunks/_server.ts-CXEl8kvu.js.map +1 -0
  194. package/build/server/chunks/{_server.ts-BmjNVAmP.js → _server.ts-CZ9lwb1J.js} +5 -5
  195. package/build/server/chunks/_server.ts-CZ9lwb1J.js.map +1 -0
  196. package/build/server/chunks/{_server.ts-Oi8Qzh0h.js → _server.ts-CaytsdFp.js} +7 -7
  197. package/build/server/chunks/_server.ts-CaytsdFp.js.map +1 -0
  198. package/build/server/chunks/{_server.ts-6F3Ly0cY.js → _server.ts-Cd6dVQ2J.js} +17 -9
  199. package/build/server/chunks/_server.ts-Cd6dVQ2J.js.map +1 -0
  200. package/build/server/chunks/{_server.ts-cHSphefi.js → _server.ts-CgRuMyJ9.js} +8 -8
  201. package/build/server/chunks/_server.ts-CgRuMyJ9.js.map +1 -0
  202. package/build/server/chunks/{_server.ts-PKbOblCf.js → _server.ts-CmCeYB9h.js} +25 -15
  203. package/build/server/chunks/_server.ts-CmCeYB9h.js.map +1 -0
  204. package/build/server/chunks/{_server.ts-13_Xvown.js → _server.ts-Codg_zX0.js} +8 -7
  205. package/build/server/chunks/_server.ts-Codg_zX0.js.map +1 -0
  206. package/build/server/chunks/{_server.ts-DW-Oh4l9.js → _server.ts-D-WjMJlD.js} +10 -6
  207. package/build/server/chunks/_server.ts-D-WjMJlD.js.map +1 -0
  208. package/build/server/chunks/{_server.ts-Bke_K04J.js → _server.ts-D4z7bYT1.js} +23 -10
  209. package/build/server/chunks/_server.ts-D4z7bYT1.js.map +1 -0
  210. package/build/server/chunks/{_server.ts-L9PpKy16.js → _server.ts-D7URpGBv.js} +13 -9
  211. package/build/server/chunks/_server.ts-D7URpGBv.js.map +1 -0
  212. package/build/server/chunks/{_server.ts-D2Qb9pui.js → _server.ts-DMwrtYEK.js} +13 -13
  213. package/build/server/chunks/_server.ts-DMwrtYEK.js.map +1 -0
  214. package/build/server/chunks/{_server.ts-B9uegfmw.js → _server.ts-DSVtVVVK.js} +16 -10
  215. package/build/server/chunks/_server.ts-DSVtVVVK.js.map +1 -0
  216. package/build/server/chunks/{_server.ts-Be15h83H.js → _server.ts-Df72lBuz.js} +23 -14
  217. package/build/server/chunks/_server.ts-Df72lBuz.js.map +1 -0
  218. package/build/server/chunks/{_server.ts-BlVwuKrl.js → _server.ts-DsXq-KLm.js} +25 -16
  219. package/build/server/chunks/_server.ts-DsXq-KLm.js.map +1 -0
  220. package/build/server/chunks/{_server.ts-DEBzt_W2.js → _server.ts-OQ5_sYi3.js} +30 -17
  221. package/build/server/chunks/_server.ts-OQ5_sYi3.js.map +1 -0
  222. package/build/server/chunks/{_server.ts-XAkApigL.js → _server.ts-UYOqhuxS.js} +11 -7
  223. package/build/server/chunks/_server.ts-UYOqhuxS.js.map +1 -0
  224. package/build/server/chunks/{_server.ts-DVOhTvBf.js → _server.ts-Xt4gRfAl.js} +15 -9
  225. package/build/server/chunks/_server.ts-Xt4gRfAl.js.map +1 -0
  226. package/build/server/chunks/{_server.ts-CpsGzKQC.js → _server.ts-ZtjukIa0.js} +15 -12
  227. package/build/server/chunks/_server.ts-ZtjukIa0.js.map +1 -0
  228. package/build/server/chunks/_server.ts-bR98vjY2.js +47 -0
  229. package/build/server/chunks/_server.ts-bR98vjY2.js.map +1 -0
  230. package/build/server/chunks/{_server.ts-Cg1WgIQn.js → _server.ts-deI69oUs.js} +7 -7
  231. package/build/server/chunks/_server.ts-deI69oUs.js.map +1 -0
  232. package/build/server/chunks/{_server.ts-bhjqtBoy.js → _server.ts-fxzTH5KH.js} +6 -6
  233. package/build/server/chunks/_server.ts-fxzTH5KH.js.map +1 -0
  234. package/build/server/chunks/{_server.ts-DvBucq0r.js → _server.ts-mFb6RwID.js} +6 -6
  235. package/build/server/chunks/_server.ts-mFb6RwID.js.map +1 -0
  236. package/build/server/chunks/{_server.ts-Cc-srcRk.js → _server.ts-sdl64bpd.js} +10 -7
  237. package/build/server/chunks/_server.ts-sdl64bpd.js.map +1 -0
  238. package/build/server/chunks/{access.server-CAPd1-c2.js → access.server-Rd56k7vs.js} +2 -2
  239. package/build/server/chunks/{access.server-CAPd1-c2.js.map → access.server-Rd56k7vs.js.map} +1 -1
  240. package/build/server/chunks/{api-errors-BhVEeWTV.js → api-errors-BrqxD-El.js} +52 -13
  241. package/build/server/chunks/api-errors-BrqxD-El.js.map +1 -0
  242. package/build/server/chunks/{computeLimits-DPO6NbLd.js → computeLimits-DnJ77wR9.js} +3 -3
  243. package/build/server/chunks/computeLimits-DnJ77wR9.js.map +1 -0
  244. package/build/server/chunks/{hooks.server-BEbVZKxO.js → hooks.server-BZKLAgww.js} +7 -6
  245. package/build/server/chunks/hooks.server-BZKLAgww.js.map +1 -0
  246. package/build/server/chunks/{package-MTlbeZ-4.js → package-K5EkWw87.js} +2 -2
  247. package/build/server/chunks/{package-MTlbeZ-4.js.map → package-K5EkWw87.js.map} +1 -1
  248. package/build/server/index.js +2 -2
  249. package/build/server/index.js.map +1 -1
  250. package/build/server/manifest.js +70 -63
  251. package/build/server/manifest.js.map +1 -1
  252. package/package.json +7 -7
  253. package/templates/.env.example +14 -5
  254. package/build/client/_app/immutable/chunks/D_C_YIH8.js.br +0 -0
  255. package/build/client/_app/immutable/chunks/D_C_YIH8.js.gz +0 -0
  256. package/build/client/_app/immutable/chunks/DnURu9OT.js.br +0 -0
  257. package/build/client/_app/immutable/chunks/DnURu9OT.js.gz +0 -0
  258. package/build/client/_app/immutable/chunks/DsuMOTav.js.br +0 -0
  259. package/build/client/_app/immutable/chunks/DsuMOTav.js.gz +0 -0
  260. package/build/client/_app/immutable/chunks/Dtx1M6QG.js.br +0 -0
  261. package/build/client/_app/immutable/chunks/Dtx1M6QG.js.gz +0 -0
  262. package/build/client/_app/immutable/chunks/DuHtWI31.js.br +0 -0
  263. package/build/client/_app/immutable/chunks/DuHtWI31.js.gz +0 -0
  264. package/build/client/_app/immutable/chunks/U_alzAUv.js.br +0 -0
  265. package/build/client/_app/immutable/chunks/U_alzAUv.js.gz +0 -0
  266. package/build/client/_app/immutable/entry/app.DXOixdTQ.js.br +0 -0
  267. package/build/client/_app/immutable/entry/app.DXOixdTQ.js.gz +0 -0
  268. package/build/client/_app/immutable/entry/start.lHsRDqJ_.js +0 -1
  269. package/build/client/_app/immutable/entry/start.lHsRDqJ_.js.br +0 -2
  270. package/build/client/_app/immutable/entry/start.lHsRDqJ_.js.gz +0 -0
  271. package/build/client/_app/immutable/nodes/1.Cgpx1yHy.js.br +0 -0
  272. package/build/client/_app/immutable/nodes/1.Cgpx1yHy.js.gz +0 -0
  273. package/build/client/_app/immutable/nodes/11.BIaqG9xz.js +0 -2
  274. package/build/client/_app/immutable/nodes/11.BIaqG9xz.js.br +0 -0
  275. package/build/client/_app/immutable/nodes/11.BIaqG9xz.js.gz +0 -0
  276. package/build/client/_app/immutable/nodes/13.ByWkldPP.js.br +0 -0
  277. package/build/client/_app/immutable/nodes/13.ByWkldPP.js.gz +0 -0
  278. package/build/client/_app/immutable/nodes/14.87fRSA-Y.js.br +0 -0
  279. package/build/client/_app/immutable/nodes/14.87fRSA-Y.js.gz +0 -0
  280. package/build/client/_app/immutable/nodes/16.DWG3CLUv.js.br +0 -0
  281. package/build/client/_app/immutable/nodes/16.DWG3CLUv.js.gz +0 -0
  282. package/build/client/_app/immutable/nodes/17.CgiETa37.js.br +0 -0
  283. package/build/client/_app/immutable/nodes/17.CgiETa37.js.gz +0 -0
  284. package/build/client/_app/immutable/nodes/19.DO2ja5iW.js.br +0 -0
  285. package/build/client/_app/immutable/nodes/19.DO2ja5iW.js.gz +0 -0
  286. package/build/client/_app/immutable/nodes/2.DIAYMP4_.js.br +0 -0
  287. package/build/client/_app/immutable/nodes/2.DIAYMP4_.js.gz +0 -0
  288. package/build/client/_app/immutable/nodes/20.DYgQYcr-.js.br +0 -0
  289. package/build/client/_app/immutable/nodes/20.DYgQYcr-.js.gz +0 -0
  290. package/build/client/_app/immutable/nodes/21.CTwryTPC.js.br +0 -0
  291. package/build/client/_app/immutable/nodes/21.CTwryTPC.js.gz +0 -0
  292. package/build/client/_app/immutable/nodes/23.uUN6jlSq.js.br +0 -0
  293. package/build/client/_app/immutable/nodes/23.uUN6jlSq.js.gz +0 -0
  294. package/build/client/_app/immutable/nodes/24.cDDvPQLh.js.br +0 -0
  295. package/build/client/_app/immutable/nodes/24.cDDvPQLh.js.gz +0 -0
  296. package/build/client/_app/immutable/nodes/27.lHQ_8tDM.js.br +0 -0
  297. package/build/client/_app/immutable/nodes/27.lHQ_8tDM.js.gz +0 -0
  298. package/build/client/_app/immutable/nodes/28.DZO_WZjq.js.br +0 -0
  299. package/build/client/_app/immutable/nodes/28.DZO_WZjq.js.gz +0 -0
  300. package/build/client/_app/immutable/nodes/29.BBkvtbbm.js.br +0 -0
  301. package/build/client/_app/immutable/nodes/29.BBkvtbbm.js.gz +0 -0
  302. package/build/client/_app/immutable/nodes/3.Clu5JbAY.js.br +0 -0
  303. package/build/client/_app/immutable/nodes/3.Clu5JbAY.js.gz +0 -0
  304. package/build/client/_app/immutable/nodes/30.CunrYTKW.js.br +0 -0
  305. package/build/client/_app/immutable/nodes/30.CunrYTKW.js.gz +0 -0
  306. package/build/client/_app/immutable/nodes/5.CwEyn2eq.js.br +0 -1
  307. package/build/client/_app/immutable/nodes/5.CwEyn2eq.js.gz +0 -0
  308. package/build/client/_app/immutable/nodes/6.Cybg-4zL.js.br +0 -0
  309. package/build/client/_app/immutable/nodes/6.Cybg-4zL.js.gz +0 -0
  310. package/build/client/_app/immutable/nodes/7.U-nwvAMy.js.br +0 -0
  311. package/build/client/_app/immutable/nodes/7.U-nwvAMy.js.gz +0 -0
  312. package/build/client/_app/immutable/nodes/8.Ds78IC3h.js.br +0 -0
  313. package/build/client/_app/immutable/nodes/8.Ds78IC3h.js.gz +0 -0
  314. package/build/client/_app/immutable/nodes/9.B4Dh5-cJ.js.br +0 -0
  315. package/build/client/_app/immutable/nodes/9.B4Dh5-cJ.js.gz +0 -0
  316. package/build/server/chunks/UserChip-BPLEgzMp.js.map +0 -1
  317. package/build/server/chunks/_page.svelte-By_vYfbZ.js.map +0 -1
  318. package/build/server/chunks/_server.ts-13_Xvown.js.map +0 -1
  319. package/build/server/chunks/_server.ts-6F3Ly0cY.js.map +0 -1
  320. package/build/server/chunks/_server.ts-B9uegfmw.js.map +0 -1
  321. package/build/server/chunks/_server.ts-BQetLy9N.js.map +0 -1
  322. package/build/server/chunks/_server.ts-BZH3tqYX.js.map +0 -1
  323. package/build/server/chunks/_server.ts-Be15h83H.js.map +0 -1
  324. package/build/server/chunks/_server.ts-BgVWq0qd.js.map +0 -1
  325. package/build/server/chunks/_server.ts-Bke_K04J.js.map +0 -1
  326. package/build/server/chunks/_server.ts-BlVwuKrl.js.map +0 -1
  327. package/build/server/chunks/_server.ts-BmjNVAmP.js.map +0 -1
  328. package/build/server/chunks/_server.ts-BwMyXo0z.js +0 -65
  329. package/build/server/chunks/_server.ts-BwMyXo0z.js.map +0 -1
  330. package/build/server/chunks/_server.ts-CF65FKS6.js.map +0 -1
  331. package/build/server/chunks/_server.ts-CMHRHdCD.js.map +0 -1
  332. package/build/server/chunks/_server.ts-Ca_OJJFC.js.map +0 -1
  333. package/build/server/chunks/_server.ts-Cc-srcRk.js.map +0 -1
  334. package/build/server/chunks/_server.ts-Cg1WgIQn.js.map +0 -1
  335. package/build/server/chunks/_server.ts-Cg6LtEov.js.map +0 -1
  336. package/build/server/chunks/_server.ts-CpsGzKQC.js.map +0 -1
  337. package/build/server/chunks/_server.ts-D2Qb9pui.js.map +0 -1
  338. package/build/server/chunks/_server.ts-DEBzt_W2.js.map +0 -1
  339. package/build/server/chunks/_server.ts-DVOhTvBf.js.map +0 -1
  340. package/build/server/chunks/_server.ts-DW-Oh4l9.js.map +0 -1
  341. package/build/server/chunks/_server.ts-DamGRKop.js.map +0 -1
  342. package/build/server/chunks/_server.ts-DethCmgs.js.map +0 -1
  343. package/build/server/chunks/_server.ts-DvBucq0r.js.map +0 -1
  344. package/build/server/chunks/_server.ts-Dz4bsmph.js.map +0 -1
  345. package/build/server/chunks/_server.ts-DzA4EZf_.js.map +0 -1
  346. package/build/server/chunks/_server.ts-L9PpKy16.js.map +0 -1
  347. package/build/server/chunks/_server.ts-Oi8Qzh0h.js.map +0 -1
  348. package/build/server/chunks/_server.ts-PKbOblCf.js.map +0 -1
  349. package/build/server/chunks/_server.ts-XAkApigL.js.map +0 -1
  350. package/build/server/chunks/_server.ts-bhjqtBoy.js.map +0 -1
  351. package/build/server/chunks/_server.ts-cHSphefi.js.map +0 -1
  352. package/build/server/chunks/_server.ts-d6YTPmkY.js.map +0 -1
  353. package/build/server/chunks/_server.ts-kTCuqLDl.js.map +0 -1
  354. package/build/server/chunks/_server.ts-kbr9HYg5.js.map +0 -1
  355. package/build/server/chunks/api-errors-BhVEeWTV.js.map +0 -1
  356. package/build/server/chunks/computeLimits-DPO6NbLd.js.map +0 -1
  357. package/build/server/chunks/hooks.server-BEbVZKxO.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@selvajs/selva",
3
- "version": "4.5.0",
3
+ "version": "4.5.1",
4
4
  "description": "Selva — self-contained Grasshopper-driven web app. Install, configure via .env, deploy.",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -17,7 +17,7 @@
17
17
  },
18
18
  "dependencies": {
19
19
  "@lucide/svelte": "^1.11.0",
20
- "@selvajs/compute": "^2.1.0",
20
+ "@selvajs/compute": "^2.3.0",
21
21
  "@supabase/supabase-js": "^2.104.1",
22
22
  "@sveltejs/kit": "2.58.0",
23
23
  "bits-ui": "^2.18.0",
@@ -39,11 +39,11 @@
39
39
  "vitest": "^3.2.6",
40
40
  "@selvajs/config": "0.0.1",
41
41
  "@selvajs/header-auth-provider": "0.11.0",
42
- "@selvajs/local-provider": "0.12.5",
43
- "@selvajs/platform": "0.14.0",
44
- "@selvajs/schemas": "4.5.0",
45
- "@selvajs/supabase-provider": "0.14.0",
46
- "@selvajs/ui": "4.9.0"
42
+ "@selvajs/local-provider": "0.12.7",
43
+ "@selvajs/platform": "0.14.2",
44
+ "@selvajs/schemas": "4.6.1",
45
+ "@selvajs/supabase-provider": "0.14.2",
46
+ "@selvajs/ui": "4.11.0"
47
47
  },
48
48
  "scripts": {
49
49
  "dev": "vite dev",
@@ -315,13 +315,13 @@ BODY_SIZE_LIMIT=210M
315
315
  # proxy's read_timeout or your hosting platform's function cap, requests
316
316
  # will 502 at those layers regardless of this value — bump those configs
317
317
  # in lockstep when targeting long-running definitions.
318
- # MAX_SOLVE_DURATION_MS=60000
318
+ # MAX_SOLVE_DURATION_MS=100000
319
319
  #
320
320
  # Per-key rate limit on /api/compute (fixed window, in-process Map). Keyed by
321
321
  # user OR share-link, so anonymous link consumers don't share a bucket with
322
- # the link's owner. Default 120 / 60_000ms = 2 solves/sec sustained — well
322
+ # the link's owner. Default 120 / 100_000ms 1.2 solves/sec sustained — well
323
323
  # above what a slider scrub produces with the client-side throttle.
324
- # COMPUTE_RATE_LIMIT_WINDOW_MS=60000
324
+ # COMPUTE_RATE_LIMIT_WINDOW_MS=100000
325
325
  # COMPUTE_RATE_LIMIT_MAX=120
326
326
  #
327
327
  # Upload caps (.gh and cover image). REMOTE_DEFINITION_MAX_BYTES tracks
@@ -329,8 +329,17 @@ BODY_SIZE_LIMIT=210M
329
329
  # MAX_GH_FILE_SIZE_BYTES=52428800 # 50 MB
330
330
  # MAX_IMAGE_FILE_SIZE_BYTES=10485760 # 10 MB
331
331
  #
332
- # /api/compute JSON body cap (inputs + values, NOT the .gh).
333
- # COMPUTE_REQUEST_MAX_BYTES=5242880 # 5 MB
332
+ # /api/compute JSON *request* body cap (inputs + values, NOT the .gh). A `file`
333
+ # widget input embeds the uploaded geometry as base64 in `values`, and the
334
+ # client file cap is 150 MB raw (~200 MB base64) — so this is sized to clear
335
+ # that plus JSON envelope slack. Must stay <= BODY_SIZE_LIMIT above.
336
+ # COMPUTE_REQUEST_MAX_BYTES=220200960 # 210 MB
337
+ #
338
+ # /api/compute JSON *response* body cap. A `file`-typed output (e.g. an
339
+ # exported .3dm) is base64-embedded in the solve response. Defensive backstop:
340
+ # turns an opaque crash (V8's ~512 MB string wall / browser OOM) into a clear
341
+ # 413. Sized above any legitimate inline payload, below the V8 string wall.
342
+ # COMPUTE_RESPONSE_MAX_BYTES=314572800 # 300 MB
334
343
  #
335
344
  # Remote-definition fetch deadline + cache TTL.
336
345
  # REMOTE_DEFINITION_FETCH_TIMEOUT_MS=30000
@@ -1 +0,0 @@
1
- import{l as o,s as r}from"../chunks/U_alzAUv.js";export{o as load_css,r as start};
@@ -1,2 +0,0 @@
1
- )�import{l as o,s as r}from"../chunks/U_alzAUv.js";export{o as load_css,r as start};
2
- 
@@ -1,2 +0,0 @@
1
- import"../chunks/DsnmJJEf.js";import{o as dt}from"../chunks/CsdWDH4Y.js";import{ba as pe,aP as he,af as t,a_ as h,aQ as ut,bl as Le,bh as ct,aN as vt,a8 as ft,V as n,$ as mt,b7 as o,ac as ee,aJ as ve,aW as s,aK as Pe,be as E,bk as y,bg as pt}from"../chunks/DEk358l3.js";import{d as ht,e as Y,s as $}from"../chunks/T-Nslbso.js";import{i as k}from"../chunks/BnZOgasr.js";import{e as Ve,j as ke,r as gt,h as xt}from"../chunks/6CzuHfQM.js";import{a as d,f,c as Ne,t as Re}from"../chunks/DS1KfRtl.js";import{c as He}from"../chunks/DCBLBrrW.js";import{h as _t}from"../chunks/DfVTcmam.js";import{i as bt}from"../chunks/U_alzAUv.js";import{S as yt}from"../chunks/C33A5aSj.js";import{S as kt}from"../chunks/BiG82jCv.js";import{a as wt,C as Ct}from"../chunks/2BnY_oab.js";import{E as St}from"../chunks/BnIDUuJL.js";import{S as Kt}from"../chunks/BjB88iwt.js";import{P as Ye}from"../chunks/CJPg7PqR.js";import{B as fe}from"../chunks/BH9oGrlA.js";import{I as me}from"../chunks/B48NJnzU.js";import{C as Mt}from"../chunks/CBjt6cm5.js";import{R as At}from"../chunks/BUqheMDA.js";import{T as Wt}from"../chunks/BHzbkLpq.js";import{r as It}from"../chunks/Cbu9Tg11.js";import{S as $t}from"../chunks/Ba74WbdD.js";import{t as Te}from"../chunks/BfHBnYuG.js";import{C as Be}from"../chunks/E7F5LllG.js";import{C as Fe}from"../chunks/BMNUAT2D.js";const Pt=6e4,Vt=5e3;function Nt(we){let u=pe(he({state:"idle",reachable:!1,rhinoVersion:null,computeVersion:null,selvaInstalled:!1,selvaVersion:null,plugins:{}})),j=null,ge=0,_=!1;async function Ce(){if(_)return!1;try{const V=await fetch(`/admin/api/compute/status?serverId=${we()}`);if(_)return!1;if(!V.ok)return h(u,{...t(u),reachable:!1},!0),!1;const w=await V.json();return h(u,{reachable:w.reachable,rhinoVersion:w.rhinoVersion,computeVersion:w.computeVersion,selvaInstalled:w.selvaInstalled,selvaVersion:w.selvaVersion,plugins:w.plugins??{},state:w.reachable?w.selvaInstalled?"ok":"warning":"error"},!0),w.reachable}catch{return _||h(u,{...t(u),reachable:!1},!0),!1}}async function m(){const V=await Ce();_||V||(Date.now()<ge?(h(u,{...t(u),state:"checking"},!0),j=setTimeout(m,Vt)):h(u,{...t(u),state:"error",reachable:!1},!0))}function K(){_||(j!==null&&(clearTimeout(j),j=null),ge=Date.now()+Pt,h(u,{...t(u),state:"checking"},!0),m())}function Q(){_=!0,j!==null&&(clearTimeout(j),j=null)}return{get state(){return t(u)},check:K,stop:Q}}var Rt=f('<button class="text-muted-foreground hover:text-foreground ml-auto flex items-center gap-1 text-xs"> <!></button>'),Tt=f('<p class="text-muted-foreground text-xs">No organizations exist yet.</p>'),Ot=f('<label class="hover:bg-muted/40 flex items-center gap-2 rounded px-2 py-1 text-xs"><input type="checkbox" class="h-3.5 w-3.5"/> <span class="truncate"> </span> <span class="text-muted-foreground ml-auto font-mono text-[10px]"> </span></label>'),Ut=f('<div class="grid gap-1 sm:grid-cols-2"></div>'),Et=f(`<p class="text-muted-foreground text-xs">This server is the global default — it stays visible to every org regardless of the
2
- allowlist.</p>`),jt=f('<p class="text-muted-foreground text-xs">No orgs selected — this server is dormant (admin-only).</p>'),zt=f('<div class="space-y-2"><div class="flex items-center gap-3"><p class="text-muted-foreground text-xs">Available to</p> <div class="bg-muted inline-flex rounded-md p-0.5"><button>All orgs</button> <button>Specific orgs</button></div> <!></div> <!> <!></div>'),Dt=f('<span class="flex items-center gap-1 rounded-full bg-green-100 px-2 py-0.5 text-xs font-medium text-green-800 dark:bg-green-900/30 dark:text-green-400"><!> default</span>'),Lt=f('<button class="text-muted-foreground hover:text-foreground text-xs underline-offset-2 hover:underline">set as default</button>'),Ht=f("<!> ",1),Yt=f("<!> <!>",1),Bt=f('<span class="text-red-600 dark:text-red-400">Not installed</span>'),Ft=f('<div class="grid grid-cols-3 gap-2"><div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Rhino</p> <p class="mt-0.5 text-xs font-medium"> </p></div> <div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Compute</p> <p class="mt-0.5 text-xs font-medium"> </p></div> <div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Selva Plugin</p> <p class="mt-0.5 text-xs font-medium"><!></p></div></div>'),Gt=f('<button class="text-muted-foreground hover:text-destructive shrink-0 text-xs underline-offset-2 hover:underline">Clear</button>'),Jt=f('<button class="text-muted-foreground hover:text-foreground shrink-0 text-xs underline-offset-2 hover:underline">Undo</button>'),qt=f('<div class="bg-muted/40 flex items-center justify-between rounded-md px-3 py-1.5"><span class="text-xs font-medium"> </span> <span class="text-muted-foreground text-xs"> </span></div>'),Qt=f('<div class="mt-2 grid gap-1.5 sm:grid-cols-2 lg:grid-cols-3"></div>'),Xt=f('<div><button class="text-muted-foreground hover:text-foreground flex items-center gap-1 text-xs"><!> </button> <!></div>'),Zt=f('<div><div class="flex items-center justify-between"><div class="flex items-center gap-2"><!> <!></div> <div class="flex items-center gap-3"><div class="flex items-center gap-1.5"><!> <span> </span></div> <!> <!> <!></div></div> <!> <div class="grid gap-2 sm:grid-cols-2"><div class="space-y-1"><p class="text-muted-foreground text-xs">Server URL</p> <!></div> <div class="space-y-1"><p class="text-muted-foreground text-xs">API Key (optional)</p> <div class="flex gap-1.5"><!> <!></div></div> <div class="space-y-1"><p class="text-muted-foreground text-xs">Timeout (ms)</p> <!></div> <div class="space-y-1"><p class="text-muted-foreground text-xs">Retries</p> <!></div></div> <!> <!></div>'),ea=f("<!> Add server",1),ta=f('<!> <button type="button" class="border-muted-foreground/30 text-muted-foreground hover:border-foreground/50 hover:text-foreground hover:bg-muted/30 flex w-full items-center justify-center gap-2 rounded-lg border border-dashed py-4 text-sm font-medium transition-colors"><!> Add another server</button>',1),aa=f('<div class="space-y-6"><!> <!></div>');function Wa(we,u){ut(u,!0);const j=(a,e=Pe)=>{const l=y(()=>e().sharedWith==="all"),v=y(()=>t(l)?new Set:new Set(e().sharedWith)),x=y(()=>e().id===t(K));var b=zt(),I=n(b),B=o(n(I),2),N=n(B),X=o(N,2);s(B);var F=o(B,2);{var te=c=>{var g=Rt(),M=n(g),O=o(M);{var J=S=>{Be(S,{class:"h-3 w-3"})},U=S=>{Fe(S,{class:"h-3 w-3"})};k(O,S=>{xe[e().id]?S(J):S(U,-1)})}s(g),E(()=>$(M,`${t(v).size??""}/${u.data.orgs.length??""} selected `)),Y("click",g,()=>xe[e().id]=!xe[e().id]),d(c,g)};k(F,c=>{!t(l)&&u.data.orgs.length>0&&c(te)})}s(I);var ae=o(I,2);{var ne=c=>{var g=Ne(),M=ee(g);{var O=U=>{var S=Tt();d(U,S)},J=U=>{var S=Ut();Ve(S,21,()=>u.data.orgs,re=>re.id,(re,oe)=>{var Z=Ot(),q=n(Z);gt(q);var ie=o(q,2),le=n(ie,!0);s(ie);var de=o(ie,2),_e=n(de,!0);s(de),s(Z),E(Me=>{xt(q,Me),$(le,t(oe).name),$(_e,t(oe).slug)},[()=>t(v).has(t(oe).id)]),Y("change",q,()=>qe(e(),t(oe).id)),d(re,Z)}),s(S),d(U,S)};k(M,U=>{u.data.orgs.length===0?U(O):U(J,-1)})}d(c,g)};k(ae,c=>{!t(l)&&xe[e().id]&&c(ne)})}var R=o(ae,2);{var G=c=>{var g=Et();d(c,g)},T=c=>{var g=jt();d(c,g)};k(R,c=>{!t(l)&&t(x)?c(G):!t(l)&&t(v).size===0&&c(T,1)})}s(b),E(()=>{ke(N,1,`rounded px-2 py-0.5 text-xs ${t(l)?"bg-background shadow-sm":"text-muted-foreground hover:text-foreground"}`),ke(X,1,`rounded px-2 py-0.5 text-xs ${t(l)?"text-muted-foreground hover:text-foreground":"bg-background shadow-sm"}`)}),Y("click",N,()=>Ue(e(),!0)),Y("click",X,()=>Ue(e(),!1)),d(a,b)},ge=(a,e=Pe,l=Pe)=>{const v=y(()=>t(C)[e().id]?.state),x=y(()=>Ce[t(v)?.state??"idle"]),b=y(()=>t(v)?.state==="checking"),I=y(()=>Object.entries(t(v)?.plugins??{})),B=y(()=>V.has(e().id));var N=Zt(),X=n(N),F=n(X),te=n(F);me(te,{placeholder:"label",get value(){return e().label},oninput:r=>{const i=r.target;e().label=i.value.toLowerCase().replace(/[^a-z0-9_-]/g,""),i.value=e().label,P(e().id)},class:"h-7 w-32 font-mono text-xs"});var ae=o(te,2);{var ne=r=>{var i=Dt(),p=n(i);$t(p,{class:"h-3 w-3"}),ve(),s(i),d(r,i)},R=r=>{var i=Lt();Y("click",i,()=>{h(K,e().id,!0),P(e().id)}),d(r,i)};k(ae,r=>{e().id===t(K)?r(ne):r(R,-1)})}s(F);var G=o(F,2),T=n(G),c=n(T);Mt(c,{get class(){return`h-2.5 w-2.5 shrink-0 fill-current ${t(x).color??""}`}});var g=o(c,2),M=n(g,!0);s(g),s(T);var O=o(T,2);fe(O,{variant:"outline",size:"sm",onclick:()=>t(C)[e().id]?.check(),get disabled(){return t(b)},class:"h-7",title:"Probe this server's availability (retries for up to 1 min)",children:(r,i)=>{var p=Ht(),A=ee(p);{let D=y(()=>t(b)?"animate-spin":"");At(A,{get class(){return`mr-1.5 h-3.5 w-3.5 ${t(D)??""}`}})}var z=o(A);E(()=>$(z,` ${t(b)?"Checking…":"Check"}`)),d(r,p)},$$slots:{default:!0}});var J=o(O,2);{var U=r=>{var i=Yt(),p=ee(i);fe(p,{variant:"ghost",size:"sm",onclick:()=>Ge(e().id),get disabled(){return t(Q)},class:"text-muted-foreground hover:text-foreground h-7",children:(z,D)=>{ve();var L=Re("Discard");d(z,L)},$$slots:{default:!0}});var A=o(p,2);fe(A,{size:"sm",onclick:Qe,get disabled(){return t(Q)},class:"h-7",children:(z,D)=>{ve();var L=Re();E(()=>$(L,t(Q)?"Saving…":"Save changes")),d(z,L)},$$slots:{default:!0}}),d(r,i)};k(J,r=>{t(B)&&r(U)})}var S=o(J,2);{let r=y(()=>e().id===t(K)),i=y(()=>e().id===t(K)?"Set another server as default before deleting":void 0);fe(S,{variant:"ghost",size:"sm",onclick:()=>Je(l()),get disabled(){return t(r)},get title(){return t(i)},class:"text-destructive hover:text-destructive h-7 w-7 p-0",children:(p,A)=>{Wt(p,{class:"h-3.5 w-3.5"})},$$slots:{default:!0}})}s(G),s(X);var re=o(X,2);{var oe=r=>{var i=Ft(),p=n(i),A=o(n(p),2),z=n(A,!0);s(A),s(p);var D=o(p,2),L=o(n(D),2),We=n(L,!0);s(L),s(D);var be=o(D,2),W=o(n(be),2),ue=n(W);{var ce=H=>{var se=Re();E(()=>$(se,t(v).selvaVersion)),d(H,se)},ye=H=>{var se=Bt();d(H,se)};k(ue,H=>{t(v).selvaInstalled?H(ce):H(ye,-1)})}s(W),s(be),s(i),E(()=>{$(z,t(v).rhinoVersion??"-"),$(We,t(v).computeVersion??"-")}),d(r,i)};k(re,r=>{t(v)?.reachable&&r(oe)})}var Z=o(re,2),q=n(Z),ie=o(n(q),2);me(ie,{placeholder:"http://localhost:5000",oninput:()=>P(e().id),class:"font-mono text-xs",get value(){return e().serverUrl},set value(r){e().serverUrl=r}}),s(q);var le=o(q,2),de=o(n(le),2),_e=n(de);{let r=y(()=>e().hasApiKey&&e().apiKey!==_&&!e().apiKey?"Key set - enter new value to replace":e().apiKey===_?"Key will be cleared on save":""),i=y(()=>e().apiKey===_?"":e().apiKey),p=y(()=>e().apiKey===_);me(_e,{type:"password",get placeholder(){return t(r)},get value(){return t(i)},get disabled(){return t(p)},oninput:A=>{e().apiKey=A.target.value,P(e().id)},class:"font-mono text-xs"})}var Me=o(_e,2);{var Ze=r=>{var i=Gt();Y("click",i,()=>{e().apiKey=_,P(e().id)}),d(r,i)},et=r=>{var i=Jt();Y("click",i,()=>e().apiKey=""),d(r,i)};k(Me,r=>{e().hasApiKey&&e().apiKey!==_&&!e().apiKey?r(Ze):e().apiKey===_&&r(et,1)})}s(de),s(le);var Ae=o(le,2),tt=o(n(Ae),2);me(tt,{type:"number",placeholder:"30000",oninput:()=>P(e().id),onblur:()=>{e().timeoutMs=Math.min(3e5,Math.max(1e3,Number(e().timeoutMs)||3e4))},class:"text-xs",get value(){return e().timeoutMs},set value(r){e().timeoutMs=r}}),s(Ae);var je=o(Ae,2),at=o(n(je),2);me(at,{type:"number",placeholder:"0",oninput:()=>P(e().id),onblur:()=>{e().retryCount=Math.min(5,Math.max(0,Number(e().retryCount)||0))},class:"text-xs",get value(){return e().retryCount},set value(r){e().retryCount=r}}),s(je),s(Z);var ze=o(Z,2);{var rt=r=>{j(r,e)};k(ze,r=>{u.data.tenancy!=="single"&&r(rt)})}var ot=o(ze,2);{var st=r=>{var i=Xt(),p=n(i),A=n(p);{var z=W=>{Be(W,{class:"h-3 w-3"})},D=W=>{Fe(W,{class:"h-3 w-3"})};k(A,W=>{w[e().id]?W(z):W(D,-1)})}var L=o(A);s(p);var We=o(p,2);{var be=W=>{var ue=Qt();Ve(ue,21,()=>t(I),([ce,ye])=>ce,(ce,ye)=>{var H=y(()=>pt(t(ye),2));let se=()=>t(H)[0],nt=()=>t(H)[1];var Ie=qt(),$e=n(Ie),it=n($e,!0);s($e);var De=o($e,2),lt=n(De,!0);s(De),s(Ie),E(()=>{$(it,se()),$(lt,nt())}),d(ce,Ie)}),s(ue),d(W,ue)};k(We,W=>{w[e().id]&&W(be)})}s(i),E(()=>$(L,` ${t(I).length??""} Grasshopper plugin${t(I).length===1?"":"s"}`)),Y("click",p,()=>w[e().id]=!w[e().id]),d(r,i)};k(ot,r=>{t(v)?.reachable&&t(I).length>0&&r(st)})}s(N),E(()=>{ke(N,1,`space-y-3 rounded-lg border p-4 transition-colors ${t(B)?"border-amber-400/60 bg-amber-50/30 dark:border-amber-500/40 dark:bg-amber-950/10":"bg-muted/30"}`),ke(g,1,`text-xs font-medium ${t(x).color??""}`),$(M,t(x).label)}),d(a,N)},_="__clear__",Ce={idle:{label:"Not checked",color:"text-muted-foreground"},ok:{label:"Online",color:"text-green-600 dark:text-green-400"},warning:{label:"Warning",color:"text-yellow-600 dark:text-yellow-400"},error:{label:"Offline",color:"text-red-600 dark:text-red-400"},checking:{label:"Checking…",color:"text-blue-600 dark:text-blue-400"}};let m=pe(he([])),K=pe(""),Q=pe(!1);const V=new yt;let w=he({}),xe=he({});function P(a){V.add(a)}function Ge(a){V.delete(a);const e=u.data.servers.find(v=>v.id===a),l=t(m).findIndex(v=>v.id===a);if(!(l<0)){if(!e){t(C)[a]?.stop();const{[a]:v,...x}=t(C);h(C,x,!0),h(m,t(m).filter(b=>b.id!==a),!0);return}t(m)[l]={id:e.id,label:e.label,serverUrl:e.serverUrl,sharedWith:e.sharedWith==="all"?"all":[...e.sharedWith],timeoutMs:e.timeoutMs??3e4,retryCount:e.retryCount??0,apiKey:"",hasApiKey:e.hasApiKey},h(K,u.data.defaultServerId,!0)}}let C=pe(he({}));function Se(a){return t(C)[a]||(t(C)[a]=Nt(()=>a)),t(C)[a]}Le(()=>{V.size===0&&(h(m,u.data.servers.map(a=>({id:a.id,label:a.label,serverUrl:a.serverUrl,sharedWith:a.sharedWith==="all"?"all":[...a.sharedWith],timeoutMs:a.timeoutMs??3e4,retryCount:a.retryCount??0,apiKey:"",hasApiKey:a.hasApiKey})),!0),h(K,u.data.defaultServerId,!0))}),Le(()=>{const a=u.data.servers.map(e=>e.id);ct(()=>{for(const e of a)Se(e)})}),dt(()=>{for(const a of Object.values(t(C)))a.stop()});function Oe(){const a=It();t(m).length===0&&h(K,a,!0),h(m,[...t(m),{id:a,label:"new-server",serverUrl:"http://localhost:5000",sharedWith:"all",apiKey:"",hasApiKey:!1,timeoutMs:3e4,retryCount:0}],!0),Se(a),P(a)}function Je(a){const e=t(m)[a];t(C)[e.id]?.stop();const{[e.id]:l,...v}=t(C);h(C,v,!0),h(m,t(m).filter((x,b)=>b!==a),!0),t(K)===e.id&&t(m)[0]&&h(K,t(m)[0].id,!0);for(const x of t(m))P(x.id)}function Ue(a,e){a.sharedWith=e?"all":[],P(a.id)}function qe(a,e){a.sharedWith!=="all"&&(a.sharedWith=a.sharedWith.includes(e)?a.sharedWith.filter(l=>l!==e):[...a.sharedWith,e],P(a.id))}async function Qe(){h(Q,!0);try{const a={defaultServerId:t(K),servers:t(m).map(({apiKey:l,hasApiKey:v,retryCount:x,timeoutMs:b,...I})=>({...I,timeoutMs:Math.min(3e5,Math.max(1e3,Number(b)||3e4)),...l===_?{apiKey:null}:l?{apiKey:l}:{},...Number(x)?{retryCount:Math.min(5,Math.max(0,Number(x)))}:{}}))},e=await fetch("/admin/api/compute",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(e.ok){Te.success("Compute config saved"),await bt(),V.clear();for(const l of Object.values(t(C)))l.stop();h(C,{},!0);for(const l of t(m))Se(l.id)}else{const l=await e.json().catch(()=>({error:"Unknown error"}));Te.error(l.message||l.error||`Failed to save (${e.status})`)}}catch{Te.error("Failed to save compute config")}finally{h(Q,!1)}}var Ke=aa();_t("1h8e46q",a=>{ft(()=>{mt.title="Admin · Compute"})});var Ee=n(Ke);kt(Ee,{eyebrow:"Admin",title:"Compute",description:"Manage compute servers. Share servers with specific orgs to expose them in pickers. When ALLOW_ORG_COMPUTE_OVERRIDE is on, org owners can configure their own servers."});var Xe=o(Ee,2);He(Xe,()=>Ct,(a,e)=>{e(a,{children:(l,v)=>{var x=Ne(),b=ee(x);He(b,()=>wt,(I,B)=>{B(I,{class:"space-y-3 pt-6",children:(N,X)=>{var F=Ne(),te=ee(F);{var ae=R=>{St(R,{get icon(){return Kt},title:"No servers configured",actions:T=>{fe(T,{variant:"outline",size:"sm",onclick:Oe,children:(c,g)=>{var M=ea(),O=ee(M);Ye(O,{class:"mr-1.5 h-3.5 w-3.5"}),ve(),d(c,M)},$$slots:{default:!0}})},$$slots:{actions:!0}})},ne=R=>{var G=ta(),T=ee(G);Ve(T,19,()=>t(m),M=>M.id,(M,O,J)=>{ge(M,()=>t(O),()=>t(J))});var c=o(T,2),g=n(c);Ye(g,{class:"h-4 w-4"}),ve(),s(c),Y("click",c,Oe),d(R,G)};k(te,R=>{t(m).length===0?R(ae):R(ne,-1)})}d(N,F)},$$slots:{default:!0}})}),d(l,x)},$$slots:{default:!0}})}),s(Ke),d(we,Ke),vt()}ht(["click","change"]);export{Wa as component};
@@ -1 +0,0 @@
1
- g@dpn��Ķ�9�Ē���V�%)]ho�Q��ͦ�}&D�!�j����<�og8�~��]l�b#t>�Z�٣���~�Eq��Wj�f��+lIT|e�(z(��.�^w�#��9֢Gq���-�ѥM�ɸ�i<�0wjK�*F�V)S&�ȩ5����.6�Z�Wp���(�Ɍ���{���T�T��>�I?W��a ���%L��6
@@ -1 +0,0 @@
1
- {"version":3,"file":"UserChip-BPLEgzMp.js","sources":["../../../.svelte-kit/adapter-node/chunks/UserChip.js"],"sourcesContent":["import { aj as spread_props, k as attr_class, j as attr, I as escape_html, a6 as props_id, m as attributes, n as bind_props, y as derived, G as ensure_array_like, am as stringify, r as clsx, l as attr_style } from \"./renderer.js\";\nimport \"clsx\";\nimport { g as toggleMode, u as useFooter } from \"./footerContext.svelte.js\";\nimport { B as Button } from \"./button.js\";\nimport { I as Icon } from \"./utils3.js\";\nimport { R as Root, D as Dialog_content, b as Dialog_header, c as Dialog_title, a as Dialog_description } from \"./index2.js\";\nimport { downloadFileData } from \"@selvajs/compute\";\nimport { S as SvelteMap } from \"./index-server.js\";\nimport { d as DialogTriggerState } from \"./dialog-description.js\";\nimport { l as createId, h as boxWith, v as mergeProps, a as attachRef, b as boolToEmptyStrOrUndef, p as getDataOpenClosed, c as boolToStr, q as getDataTransitionAttrs, k as createBitsAttrs } from \"./create-id.js\";\nimport { C as Circle_alert } from \"./circle-alert.js\";\nimport { C as Context, S as SPACE, d as ENTER, w as watch, o as noop } from \"./noop.js\";\nimport { o as on } from \"./events.js\";\nimport { k as PresenceManager, n as afterTick } from \"./scroll-lock.js\";\nimport { C as Chevron_down } from \"./chevron-down.js\";\nimport { C as Chevron_right } from \"./chevron-right.js\";\nimport { T as Triangle_alert } from \"./triangle-alert.js\";\nimport { p as page } from \"./index.js\";\nimport \"@sveltejs/kit/internal\";\nimport \"./exports.js\";\nimport \"./utils.js\";\nimport \"@sveltejs/kit/internal/server\";\nimport \"./root.js\";\nimport \"./client.js\";\nfunction Sun($$renderer, $$props) {\n let { $$slots, $$events, ...props } = $$props;\n const iconNode = [\n [\"circle\", { \"cx\": \"12\", \"cy\": \"12\", \"r\": \"4\" }],\n [\"path\", { \"d\": \"M12 2v2\" }],\n [\"path\", { \"d\": \"M12 20v2\" }],\n [\"path\", { \"d\": \"m4.93 4.93 1.41 1.41\" }],\n [\"path\", { \"d\": \"m17.66 17.66 1.41 1.41\" }],\n [\"path\", { \"d\": \"M2 12h2\" }],\n [\"path\", { \"d\": \"M20 12h2\" }],\n [\"path\", { \"d\": \"m6.34 17.66-1.41 1.41\" }],\n [\"path\", { \"d\": \"m19.07 4.93-1.41 1.41\" }]\n ];\n Icon($$renderer, spread_props([{ name: \"sun\" }, props, { iconNode }]));\n}\nfunction Moon($$renderer, $$props) {\n let { $$slots, $$events, ...props } = $$props;\n const iconNode = [\n [\n \"path\",\n {\n \"d\": \"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401\"\n }\n ]\n ];\n Icon($$renderer, spread_props([{ name: \"moon\" }, props, { iconNode }]));\n}\nfunction Mode_toggle($$renderer) {\n Button($$renderer, {\n onclick: toggleMode,\n variant: \"outline\",\n size: \"icon\",\n children: ($$renderer2) => {\n Sun($$renderer2, {\n class: \"h-[1.2rem] w-[1.2rem] scale-100 rotate-0 transition-all dark:scale-0 dark:-rotate-90\"\n });\n $$renderer2.push(`<!----> `);\n Moon($$renderer2, {\n class: \"absolute h-[1.2rem] w-[1.2rem] scale-0 rotate-90 transition-all dark:scale-100 dark:rotate-0\"\n });\n $$renderer2.push(`<!----> <span class=\"sr-only\">Toggle theme</span>`);\n },\n $$slots: { default: true }\n });\n}\nfunction PageHeader($$renderer, $$props) {\n let {\n homeUrl = \"/app\",\n title = void 0,\n logo = \"/favicon/favicon.svg\",\n brandName = \"Selva\",\n navItems,\n rightContent,\n subnav,\n showModeToggle = true,\n class: className = \"\"\n } = $$props;\n $$renderer.push(`<header${attr_class(`top-0 backdrop-blur-sm sticky z-40 border-b border-border bg-background/90 ${className}`)}><div class=\"gap-5 flex h-(--header-h) items-center px-(--page-px)\"><a${attr(\"href\", homeUrl)} class=\"gap-2 flex shrink-0 items-center\"><img${attr(\"src\", logo)} alt=\"\" aria-hidden=\"true\" class=\"h-5 w-5\"/> <span class=\"font-semibold text-sm tracking-tight\">${escape_html(brandName)}</span></a> `);\n if (title !== void 0) {\n $$renderer.push(\"<!--[0-->\");\n $$renderer.push(`<span class=\"text-sm text-border\">/</span> <span class=\"text-sm font-medium text-muted-foreground\">${escape_html(title ?? \"\")}</span>`);\n } else {\n $$renderer.push(\"<!--[-1-->\");\n }\n $$renderer.push(`<!--]--> `);\n if (navItems) {\n $$renderer.push(\"<!--[0-->\");\n $$renderer.push(`<nav class=\"ml-5 gap-1 flex\">`);\n navItems($$renderer);\n $$renderer.push(`<!----></nav>`);\n } else {\n $$renderer.push(\"<!--[-1-->\");\n }\n $$renderer.push(`<!--]--> <div class=\"gap-2 ml-auto flex items-center\">`);\n if (rightContent) {\n $$renderer.push(\"<!--[0-->\");\n rightContent($$renderer);\n $$renderer.push(`<!---->`);\n } else {\n $$renderer.push(\"<!--[-1-->\");\n }\n $$renderer.push(`<!--]--> `);\n if (showModeToggle) {\n $$renderer.push(\"<!--[0-->\");\n Mode_toggle($$renderer);\n } else {\n $$renderer.push(\"<!--[-1-->\");\n }\n $$renderer.push(`<!--]--></div></div> `);\n if (subnav) {\n $$renderer.push(\"<!--[0-->\");\n $$renderer.push(`<div class=\"h-10 flex items-center border-t border-border/60 px-(--page-px)\">`);\n subnav($$renderer);\n $$renderer.push(`<!----></div>`);\n } else {\n $$renderer.push(\"<!--[-1-->\");\n }\n $$renderer.push(`<!--]--></header>`);\n}\nfunction Log_in($$renderer, $$props) {\n let { $$slots, $$events, ...props } = $$props;\n const iconNode = [\n [\"path\", { \"d\": \"m10 17 5-5-5-5\" }],\n [\"path\", { \"d\": \"M15 12H3\" }],\n [\"path\", { \"d\": \"M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4\" }]\n ];\n Icon($$renderer, spread_props([{ name: \"log-in\" }, props, { iconNode }]));\n}\nfunction Log_out($$renderer, $$props) {\n let { $$slots, $$events, ...props } = $$props;\n const iconNode = [\n [\"path\", { \"d\": \"m16 17 5-5-5-5\" }],\n [\"path\", { \"d\": \"M21 12H9\" }],\n [\"path\", { \"d\": \"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4\" }]\n ];\n Icon($$renderer, spread_props([{ name: \"log-out\" }, props, { iconNode }]));\n}\nfunction Dialog_trigger$1($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const uid = props_id($$renderer2);\n let {\n id = createId(uid),\n ref = null,\n children,\n child,\n disabled = false,\n $$slots,\n $$events,\n ...restProps\n } = $$props;\n const triggerState = DialogTriggerState.create({\n id: boxWith(() => id),\n ref: boxWith(() => ref, (v) => ref = v),\n disabled: boxWith(() => Boolean(disabled))\n });\n const mergedProps = derived(() => mergeProps(restProps, triggerState.props));\n if (child) {\n $$renderer2.push(\"<!--[0-->\");\n child($$renderer2, { props: mergedProps() });\n $$renderer2.push(`<!---->`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n $$renderer2.push(`<button${attributes({ ...mergedProps() })}>`);\n children?.($$renderer2);\n $$renderer2.push(`<!----></button>`);\n }\n $$renderer2.push(`<!--]-->`);\n bind_props($$props, { ref });\n });\n}\nconst collapsibleAttrs = createBitsAttrs({\n component: \"collapsible\",\n parts: [\"root\", \"content\", \"trigger\"]\n});\nconst CollapsibleRootContext = new Context(\"Collapsible.Root\");\nclass CollapsibleRootState {\n static create(opts) {\n return CollapsibleRootContext.set(new CollapsibleRootState(opts));\n }\n opts;\n attachment;\n contentNode = null;\n contentPresence;\n contentId = void 0;\n constructor(opts) {\n this.opts = opts;\n this.toggleOpen = this.toggleOpen.bind(this);\n this.attachment = attachRef(this.opts.ref);\n this.contentPresence = new PresenceManager({\n ref: boxWith(() => this.contentNode),\n open: this.opts.open,\n onComplete: () => {\n this.opts.onOpenChangeComplete.current(this.opts.open.current);\n }\n });\n }\n toggleOpen() {\n this.opts.open.current = !this.opts.open.current;\n }\n #props = derived(() => ({\n id: this.opts.id.current,\n \"data-state\": getDataOpenClosed(this.opts.open.current),\n \"data-disabled\": boolToEmptyStrOrUndef(this.opts.disabled.current),\n [collapsibleAttrs.root]: \"\",\n ...this.attachment\n }));\n get props() {\n return this.#props();\n }\n set props($$value) {\n return this.#props($$value);\n }\n}\nclass CollapsibleContentState {\n static create(opts) {\n return new CollapsibleContentState(opts, CollapsibleRootContext.get());\n }\n opts;\n root;\n attachment;\n #present = derived(() => {\n if (this.opts.hiddenUntilFound.current) return this.root.opts.open.current;\n return this.opts.forceMount.current || this.root.opts.open.current;\n });\n get present() {\n return this.#present();\n }\n set present($$value) {\n return this.#present($$value);\n }\n #originalStyles;\n #isMountAnimationPrevented = false;\n #width = 0;\n #height = 0;\n constructor(opts, root) {\n this.opts = opts;\n this.root = root;\n this.#isMountAnimationPrevented = root.opts.open.current;\n this.root.contentId = this.opts.id.current;\n this.attachment = attachRef(this.opts.ref, (v) => this.root.contentNode = v);\n watch.pre(() => this.opts.id.current, (id) => {\n this.root.contentId = id;\n });\n watch.pre(\n [\n () => this.opts.ref.current,\n () => this.opts.hiddenUntilFound.current\n ],\n ([node, hiddenUntilFound]) => {\n if (!node || !hiddenUntilFound) return;\n const handleBeforeMatch = () => {\n if (this.root.opts.open.current) return;\n requestAnimationFrame(() => {\n this.root.opts.open.current = true;\n });\n };\n return on(node, \"beforematch\", handleBeforeMatch);\n }\n );\n watch([() => this.opts.ref.current, () => this.present], ([node]) => {\n if (!node) return;\n afterTick(() => {\n if (!this.opts.ref.current) return;\n this.#originalStyles = this.#originalStyles || {\n transitionDuration: node.style.transitionDuration,\n animationName: node.style.animationName\n };\n node.style.transitionDuration = \"0s\";\n node.style.animationName = \"none\";\n const rect = node.getBoundingClientRect();\n this.#height = rect.height;\n this.#width = rect.width;\n if (!this.#isMountAnimationPrevented) {\n const { animationName, transitionDuration } = this.#originalStyles;\n node.style.transitionDuration = transitionDuration;\n node.style.animationName = animationName;\n }\n });\n });\n }\n get shouldRender() {\n return this.root.contentPresence.shouldRender;\n }\n #snippetProps = derived(() => ({ open: this.root.opts.open.current }));\n get snippetProps() {\n return this.#snippetProps();\n }\n set snippetProps($$value) {\n return this.#snippetProps($$value);\n }\n #props = derived(() => ({\n id: this.opts.id.current,\n style: {\n \"--bits-collapsible-content-height\": this.#height ? `${this.#height}px` : void 0,\n \"--bits-collapsible-content-width\": this.#width ? `${this.#width}px` : void 0\n },\n hidden: this.opts.hiddenUntilFound.current && !this.root.opts.open.current ? \"until-found\" : void 0,\n \"data-state\": getDataOpenClosed(this.root.opts.open.current),\n ...getDataTransitionAttrs(this.root.contentPresence.transitionStatus),\n \"data-disabled\": boolToEmptyStrOrUndef(this.root.opts.disabled.current),\n [collapsibleAttrs.content]: \"\",\n ...this.opts.hiddenUntilFound.current && !this.shouldRender ? {} : {\n hidden: this.opts.hiddenUntilFound.current ? !this.shouldRender : this.opts.forceMount.current ? void 0 : !this.shouldRender\n },\n ...this.attachment\n }));\n get props() {\n return this.#props();\n }\n set props($$value) {\n return this.#props($$value);\n }\n}\nclass CollapsibleTriggerState {\n static create(opts) {\n return new CollapsibleTriggerState(opts, CollapsibleRootContext.get());\n }\n opts;\n root;\n attachment;\n #isDisabled = derived(() => this.opts.disabled.current || this.root.opts.disabled.current);\n constructor(opts, root) {\n this.opts = opts;\n this.root = root;\n this.attachment = attachRef(this.opts.ref);\n this.onclick = this.onclick.bind(this);\n this.onkeydown = this.onkeydown.bind(this);\n }\n onclick(e) {\n if (this.#isDisabled()) return;\n if (e.button !== 0) return e.preventDefault();\n this.root.toggleOpen();\n }\n onkeydown(e) {\n if (this.#isDisabled()) return;\n if (e.key === SPACE || e.key === ENTER) {\n e.preventDefault();\n this.root.toggleOpen();\n }\n }\n #props = derived(() => ({\n id: this.opts.id.current,\n type: \"button\",\n disabled: this.#isDisabled(),\n \"aria-controls\": this.root.contentId,\n \"aria-expanded\": boolToStr(this.root.opts.open.current),\n \"data-state\": getDataOpenClosed(this.root.opts.open.current),\n \"data-disabled\": boolToEmptyStrOrUndef(this.#isDisabled()),\n [collapsibleAttrs.trigger]: \"\",\n //\n onclick: this.onclick,\n onkeydown: this.onkeydown,\n ...this.attachment\n }));\n get props() {\n return this.#props();\n }\n set props($$value) {\n return this.#props($$value);\n }\n}\nfunction Collapsible$1($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const uid = props_id($$renderer2);\n let {\n children,\n child,\n id = createId(uid),\n ref = null,\n open = false,\n disabled = false,\n onOpenChange = noop,\n onOpenChangeComplete = noop,\n $$slots,\n $$events,\n ...restProps\n } = $$props;\n const rootState = CollapsibleRootState.create({\n open: boxWith(() => open, (v) => {\n open = v;\n onOpenChange(v);\n }),\n disabled: boxWith(() => disabled),\n id: boxWith(() => id),\n ref: boxWith(() => ref, (v) => ref = v),\n onOpenChangeComplete: boxWith(() => onOpenChangeComplete)\n });\n const mergedProps = derived(() => mergeProps(restProps, rootState.props));\n if (child) {\n $$renderer2.push(\"<!--[0-->\");\n child($$renderer2, { props: mergedProps() });\n $$renderer2.push(`<!---->`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n $$renderer2.push(`<div${attributes({ ...mergedProps() })}>`);\n children?.($$renderer2);\n $$renderer2.push(`<!----></div>`);\n }\n $$renderer2.push(`<!--]-->`);\n bind_props($$props, { ref, open });\n });\n}\nfunction Collapsible_content$1($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const uid = props_id($$renderer2);\n let {\n child,\n ref = null,\n forceMount = false,\n hiddenUntilFound = false,\n children,\n id = createId(uid),\n $$slots,\n $$events,\n ...restProps\n } = $$props;\n const contentState = CollapsibleContentState.create({\n id: boxWith(() => id),\n forceMount: boxWith(() => forceMount),\n hiddenUntilFound: boxWith(() => hiddenUntilFound),\n ref: boxWith(() => ref, (v) => ref = v)\n });\n const mergedProps = derived(() => mergeProps(restProps, contentState.props));\n if (child) {\n $$renderer2.push(\"<!--[0-->\");\n child($$renderer2, { ...contentState.snippetProps, props: mergedProps() });\n $$renderer2.push(`<!---->`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n $$renderer2.push(`<div${attributes({ ...mergedProps() })}>`);\n children?.($$renderer2);\n $$renderer2.push(`<!----></div>`);\n }\n $$renderer2.push(`<!--]-->`);\n bind_props($$props, { ref });\n });\n}\nfunction Collapsible_trigger$1($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const uid = props_id($$renderer2);\n let {\n children,\n child,\n ref = null,\n id = createId(uid),\n disabled = false,\n $$slots,\n $$events,\n ...restProps\n } = $$props;\n const triggerState = CollapsibleTriggerState.create({\n id: boxWith(() => id),\n ref: boxWith(() => ref, (v) => ref = v),\n disabled: boxWith(() => disabled)\n });\n const mergedProps = derived(() => mergeProps(restProps, triggerState.props));\n if (child) {\n $$renderer2.push(\"<!--[0-->\");\n child($$renderer2, { props: mergedProps() });\n $$renderer2.push(`<!---->`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n $$renderer2.push(`<button${attributes({ ...mergedProps() })}>`);\n children?.($$renderer2);\n $$renderer2.push(`<!----></button>`);\n }\n $$renderer2.push(`<!--]-->`);\n bind_props($$props, { ref });\n });\n}\nfunction Collapsible($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { ref = null, open = false, $$slots, $$events, ...restProps } = $$props;\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n if (Collapsible$1) {\n $$renderer3.push(\"<!--[-->\");\n Collapsible$1($$renderer3, spread_props([\n { \"data-slot\": \"collapsible\" },\n restProps,\n {\n get ref() {\n return ref;\n },\n set ref($$value) {\n ref = $$value;\n $$settled = false;\n },\n get open() {\n return open;\n },\n set open($$value) {\n open = $$value;\n $$settled = false;\n }\n }\n ]));\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n bind_props($$props, { ref, open });\n });\n}\nfunction Collapsible_trigger($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { ref = null, $$slots, $$events, ...restProps } = $$props;\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n if (Collapsible_trigger$1) {\n $$renderer3.push(\"<!--[-->\");\n Collapsible_trigger$1($$renderer3, spread_props([\n { \"data-slot\": \"collapsible-trigger\" },\n restProps,\n {\n get ref() {\n return ref;\n },\n set ref($$value) {\n ref = $$value;\n $$settled = false;\n }\n }\n ]));\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n bind_props($$props, { ref });\n });\n}\nfunction Collapsible_content($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { ref = null, $$slots, $$events, ...restProps } = $$props;\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n if (Collapsible_content$1) {\n $$renderer3.push(\"<!--[-->\");\n Collapsible_content$1($$renderer3, spread_props([\n { \"data-slot\": \"collapsible-content\" },\n restProps,\n {\n get ref() {\n return ref;\n },\n set ref($$value) {\n ref = $$value;\n $$settled = false;\n }\n }\n ]));\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n bind_props($$props, { ref });\n });\n}\nfunction Dialog_trigger($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { ref = null, $$slots, $$events, ...restProps } = $$props;\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n if (Dialog_trigger$1) {\n $$renderer3.push(\"<!--[-->\");\n Dialog_trigger$1($$renderer3, spread_props([\n { \"data-slot\": \"dialog-trigger\" },\n restProps,\n {\n get ref() {\n return ref;\n },\n set ref($$value) {\n ref = $$value;\n $$settled = false;\n }\n }\n ]));\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n bind_props($$props, { ref });\n });\n}\nconst APP_DEFAULTS = {\n // File upload limits\n FILE_UPLOAD: {\n MAX_SIZE_MB: 150,\n MAX_SIZE_BYTES: 150 * 1024 * 1024\n },\n // File size formatting\n FILE_SIZE: {\n /** Bytes per kilobyte */\n BYTES_PER_KB: 1024\n }\n};\nconst MIME_BY_EXT = {\n \".png\": \"image/png\",\n \".jpg\": \"image/jpeg\",\n \".jpeg\": \"image/jpeg\",\n \".webp\": \"image/webp\",\n \".gif\": \"image/gif\",\n \".svg\": \"image/svg+xml\",\n \".json\": \"application/json\",\n \".txt\": \"text/plain\",\n \".csv\": \"text/csv\",\n \".xml\": \"application/xml\",\n \".pdf\": \"application/pdf\",\n \".3dm\": \"model/vnd.3dm\",\n \".obj\": \"model/obj\",\n \".stl\": \"model/stl\"\n};\nfunction saveSingleFile(file) {\n const ext = (file.fileType ?? \"\").toLowerCase();\n const mime = MIME_BY_EXT[ext] ?? \"application/octet-stream\";\n let blob;\n if (file.isBase64Encoded) {\n const binary = atob(file.data);\n const bytes = new Uint8Array(binary.length);\n for (let i = 0; i < binary.length; i++)\n bytes[i] = binary.charCodeAt(i);\n blob = new Blob([bytes], { type: mime });\n } else {\n blob = new Blob([file.data], { type: mime });\n }\n const fullName = `${file.fileName}${file.fileType ?? \"\"}`;\n const a = document.createElement(\"a\");\n a.href = URL.createObjectURL(blob);\n a.download = fullName;\n a.click();\n URL.revokeObjectURL(a.href);\n}\nasync function downloadFiles(fileData, fileName = \"grasshopper-output\") {\n try {\n const filesArray = Array.isArray(fileData) ? fileData : [fileData];\n if (filesArray.length === 0) {\n console.warn(\"[FileDownload] No files to download\");\n return;\n }\n if (filesArray.length === 1) {\n saveSingleFile(filesArray[0]);\n return;\n }\n await downloadFileData(filesArray, fileName);\n } catch (error) {\n console.error(\"[FileDownload] Error downloading files:\", error);\n throw error;\n }\n}\nfunction isFileData(data) {\n return typeof data === \"object\" && data !== null && \"fileName\" in data && \"data\" in data && \"isBase64Encoded\" in data;\n}\nfunction groupMessages(messages) {\n const grouped = new SvelteMap();\n for (const msg of messages) {\n const baseMsg = msg.replace(/\\([a-f0-9-]{36}\\)$/i, \"(...)\").trim();\n grouped.set(baseMsg, (grouped.get(baseMsg) ?? 0) + 1);\n }\n return Array.from(grouped.entries()).map(([message, count]) => ({ message, count })).sort((a, b) => b.count - a.count);\n}\nfunction formatFileSize(bytes) {\n if (bytes === 0)\n return \"0 Bytes\";\n const k = APP_DEFAULTS.FILE_SIZE.BYTES_PER_KB;\n const sizes = [\"Bytes\", \"KB\", \"MB\", \"GB\"];\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n return Math.round(bytes / Math.pow(k, i) * 100) / 100 + \" \" + sizes[i];\n}\nfunction getBase64FileSize(base64) {\n return Math.ceil(base64.length * 3 / 4);\n}\nfunction ComputeMessagesDialog($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { errors = [], warnings = [], trigger } = $$props;\n let open = false;\n let showErrors = true;\n let showWarnings = false;\n const groupedErrors = derived(() => groupMessages(errors));\n const groupedWarnings = derived(() => groupMessages(warnings));\n const totalCount = derived(() => errors.length + warnings.length);\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n if (Root) {\n $$renderer3.push(\"<!--[-->\");\n Root($$renderer3, {\n get open() {\n return open;\n },\n set open($$value) {\n open = $$value;\n $$settled = false;\n },\n children: ($$renderer4) => {\n if (Dialog_trigger) {\n $$renderer4.push(\"<!--[-->\");\n Dialog_trigger($$renderer4, {\n class: \"focus:outline-none\",\n children: ($$renderer5) => {\n trigger($$renderer5);\n $$renderer5.push(`<!---->`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n $$renderer4.push(` `);\n if (Dialog_content) {\n $$renderer4.push(\"<!--[-->\");\n Dialog_content($$renderer4, {\n class: \"max-w-2xl max-h-[80vh]\",\n children: ($$renderer5) => {\n if (Dialog_header) {\n $$renderer5.push(\"<!--[-->\");\n Dialog_header($$renderer5, {\n children: ($$renderer6) => {\n if (Dialog_title) {\n $$renderer6.push(\"<!--[-->\");\n Dialog_title($$renderer6, {\n class: \"gap-2 flex items-center\",\n children: ($$renderer7) => {\n Circle_alert($$renderer7, { class: \"h-5 w-5\" });\n $$renderer7.push(`<!----> Compute Messages`);\n },\n $$slots: { default: true }\n });\n $$renderer6.push(\"<!--]-->\");\n } else {\n $$renderer6.push(\"<!--[!-->\");\n $$renderer6.push(\"<!--]-->\");\n }\n $$renderer6.push(` `);\n if (Dialog_description) {\n $$renderer6.push(\"<!--[-->\");\n Dialog_description($$renderer6, {\n children: ($$renderer7) => {\n $$renderer7.push(`<!---->${escape_html(totalCount())}\n\t\t\t\t${escape_html(totalCount() === 1 ? \"issue\" : \"issues\")} detected during solve`);\n },\n $$slots: { default: true }\n });\n $$renderer6.push(\"<!--]-->\");\n } else {\n $$renderer6.push(\"<!--[!-->\");\n $$renderer6.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n $$renderer5.push(` <div class=\"space-y-3 pr-2 overflow-y-auto\" style=\"max-height: calc(80vh - 180px);\">`);\n if (errors.length > 0) {\n $$renderer5.push(\"<!--[0-->\");\n if (Collapsible) {\n $$renderer5.push(\"<!--[-->\");\n Collapsible($$renderer5, {\n get open() {\n return showErrors;\n },\n set open($$value) {\n showErrors = $$value;\n $$settled = false;\n },\n children: ($$renderer6) => {\n $$renderer6.push(`<div class=\"overflow-hidden rounded-lg border border-destructive bg-card\"><div class=\"px-4 py-3 flex items-center\">`);\n if (Collapsible_trigger) {\n $$renderer6.push(\"<!--[-->\");\n Collapsible_trigger($$renderer6, {\n class: \"-mx-4 -my-3 gap-3 px-4 py-3 flex flex-1 items-center text-left transition-colors hover:bg-destructive/5\",\n children: ($$renderer7) => {\n if (showErrors) {\n $$renderer7.push(\"<!--[0-->\");\n Chevron_down($$renderer7, { class: \"h-4 w-4 shrink-0 text-destructive\" });\n } else {\n $$renderer7.push(\"<!--[-1-->\");\n Chevron_right($$renderer7, { class: \"h-4 w-4 shrink-0 text-destructive\" });\n }\n $$renderer7.push(`<!--]--> `);\n Circle_alert($$renderer7, { class: \"h-4 w-4 shrink-0 text-destructive\" });\n $$renderer7.push(`<!----> <span class=\"text-sm font-medium text-destructive\">${escape_html(errors.length === 1 ? \"1 Error\" : `${errors.length} Errors`)}</span>`);\n },\n $$slots: { default: true }\n });\n $$renderer6.push(\"<!--]-->\");\n } else {\n $$renderer6.push(\"<!--[!-->\");\n $$renderer6.push(\"<!--]-->\");\n }\n $$renderer6.push(`</div> `);\n if (Collapsible_content) {\n $$renderer6.push(\"<!--[-->\");\n Collapsible_content($$renderer6, {\n class: \"space-y-0\",\n children: ($$renderer7) => {\n $$renderer7.push(`<div class=\"max-h-60 px-4 py-3 overflow-y-auto border-t border-destructive bg-card\"><ul class=\"space-y-2\"><!--[-->`);\n const each_array = ensure_array_like(groupedErrors());\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let { message, count } = each_array[$$index];\n $$renderer7.push(`<li class=\"gap-2 text-sm flex text-destructive/90\"><span class=\"shrink-0\">•</span> <span class=\"flex-1\">${escape_html(message)} `);\n if (count > 1) {\n $$renderer7.push(\"<!--[0-->\");\n $$renderer7.push(`<span class=\"ml-1 font-medium text-destructive/70\">×${escape_html(count)}</span>`);\n } else {\n $$renderer7.push(\"<!--[-1-->\");\n }\n $$renderer7.push(`<!--]--></span></li>`);\n }\n $$renderer7.push(`<!--]--></ul></div>`);\n },\n $$slots: { default: true }\n });\n $$renderer6.push(\"<!--]-->\");\n } else {\n $$renderer6.push(\"<!--[!-->\");\n $$renderer6.push(\"<!--]-->\");\n }\n $$renderer6.push(`</div>`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> `);\n if (warnings.length > 0) {\n $$renderer5.push(\"<!--[0-->\");\n if (Collapsible) {\n $$renderer5.push(\"<!--[-->\");\n Collapsible($$renderer5, {\n get open() {\n return showWarnings;\n },\n set open($$value) {\n showWarnings = $$value;\n $$settled = false;\n },\n children: ($$renderer6) => {\n $$renderer6.push(`<div class=\"overflow-hidden rounded-lg border border-warning/50 bg-card\"><div class=\"px-4 py-3 flex items-center\">`);\n if (Collapsible_trigger) {\n $$renderer6.push(\"<!--[-->\");\n Collapsible_trigger($$renderer6, {\n class: \"-mx-4 -my-3 gap-3 px-4 py-3 flex flex-1 items-center text-left transition-colors hover:bg-warning/5\",\n children: ($$renderer7) => {\n if (showWarnings) {\n $$renderer7.push(\"<!--[0-->\");\n Chevron_down($$renderer7, { class: \"h-4 w-4 shrink-0 text-warning\" });\n } else {\n $$renderer7.push(\"<!--[-1-->\");\n Chevron_right($$renderer7, { class: \"h-4 w-4 shrink-0 text-warning\" });\n }\n $$renderer7.push(`<!--]--> `);\n Triangle_alert($$renderer7, { class: \"h-4 w-4 shrink-0 text-warning\" });\n $$renderer7.push(`<!----> <span class=\"text-sm font-medium text-warning\">${escape_html(warnings.length === 1 ? \"1 Warning\" : `${warnings.length} Warnings`)}</span>`);\n },\n $$slots: { default: true }\n });\n $$renderer6.push(\"<!--]-->\");\n } else {\n $$renderer6.push(\"<!--[!-->\");\n $$renderer6.push(\"<!--]-->\");\n }\n $$renderer6.push(`</div> `);\n if (Collapsible_content) {\n $$renderer6.push(\"<!--[-->\");\n Collapsible_content($$renderer6, {\n class: \"space-y-0\",\n children: ($$renderer7) => {\n $$renderer7.push(`<div class=\"max-h-60 px-4 py-3 overflow-y-auto border-t border-warning/50 bg-card\"><ul class=\"space-y-2\"><!--[-->`);\n const each_array_1 = ensure_array_like(groupedWarnings());\n for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n let { message, count } = each_array_1[$$index_1];\n $$renderer7.push(`<li class=\"gap-2 text-sm flex text-muted-foreground\"><span class=\"shrink-0\">•</span> <span class=\"flex-1\">${escape_html(message)} `);\n if (count > 1) {\n $$renderer7.push(\"<!--[0-->\");\n $$renderer7.push(`<span class=\"ml-1 font-medium text-warning/70\">×${escape_html(count)}</span>`);\n } else {\n $$renderer7.push(\"<!--[-1-->\");\n }\n $$renderer7.push(`<!--]--></span></li>`);\n }\n $$renderer7.push(`<!--]--></ul></div>`);\n },\n $$slots: { default: true }\n });\n $$renderer6.push(\"<!--]-->\");\n } else {\n $$renderer6.push(\"<!--[!-->\");\n $$renderer6.push(\"<!--]-->\");\n }\n $$renderer6.push(`</div>`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--></div>`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nfunction FooterItemRenderer($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { item } = $$props;\n const itemProps = derived(() => item.getProps());\n if (item.onClick) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<button class=\"gap-1.5 px-2 py-0.5 rounded flex cursor-pointer items-center transition-colors hover:bg-muted\">`);\n if (item.component) {\n $$renderer2.push(\"<!--[-->\");\n item.component($$renderer2, spread_props([itemProps()]));\n $$renderer2.push(\"<!--]-->\");\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(\"<!--]-->\");\n }\n $$renderer2.push(`</button>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n $$renderer2.push(`<div class=\"flex items-center\">`);\n if (item.component) {\n $$renderer2.push(\"<!--[-->\");\n item.component($$renderer2, spread_props([itemProps()]));\n $$renderer2.push(\"<!--]-->\");\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(\"<!--]-->\");\n }\n $$renderer2.push(`</div>`);\n }\n $$renderer2.push(`<!--]-->`);\n });\n}\nfunction PageFooter($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n errors = [],\n warnings = [],\n copyrightName = \"Selva\",\n footerText,\n children\n } = $$props;\n let footerStore = (() => {\n try {\n return useFooter();\n } catch {\n return null;\n }\n })();\n const leftItems = derived(() => footerStore ? Array.from(footerStore.items.values()).filter((item) => item.position === \"left\").sort((a, b) => (b.priority ?? 0) - (a.priority ?? 0)) : []);\n const rightItems = derived(() => footerStore ? Array.from(footerStore.items.values()).filter((item) => item.position === \"right\").sort((a, b) => (b.priority ?? 0) - (a.priority ?? 0)) : []);\n let _currentYear = (/* @__PURE__ */ new Date()).getFullYear();\n const hasMessages = derived(() => errors.length > 0 || warnings.length > 0);\n const totalCount = derived(() => errors.length + warnings.length);\n const copyrightLine = derived(() => footerText ? footerText.replace(\"{name}\", copyrightName).replace(\"{year}\", String(_currentYear)) : `by ${copyrightName} © ${_currentYear}`);\n $$renderer2.push(`<footer class=\"px-4 gap-4 text-xs h-7 flex shrink-0 items-center justify-between border-t border-border bg-background text-muted-foreground select-none\"><div class=\"gap-4 flex items-center\"><!--[-->`);\n const each_array = ensure_array_like(leftItems());\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let item = each_array[$$index];\n FooterItemRenderer($$renderer2, { item });\n }\n $$renderer2.push(`<!--]--> `);\n if (hasMessages()) {\n $$renderer2.push(\"<!--[0-->\");\n {\n let trigger = function($$renderer3) {\n $$renderer3.push(`<div${attr_class(`gap-1.5 px-2 py-1 rounded flex cursor-pointer items-center transition-colors hover:bg-muted ${stringify(errors.length > 0 ? \"text-destructive hover:bg-destructive/10\" : \"text-warning hover:bg-warning/10\")}`)}${attr(\"title\", `${totalCount()} ${totalCount() === 1 ? \"issue\" : \"issues\"}`)}>`);\n if (errors.length > 0) {\n $$renderer3.push(\"<!--[0-->\");\n Circle_alert($$renderer3, { class: \"h-3.5 w-3.5\" });\n $$renderer3.push(`<!----> <span class=\"font-medium\">${escape_html(errors.length)} Error${escape_html(errors.length !== 1 ? \"s\" : \"\")}</span>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (warnings.length > 0) {\n $$renderer3.push(\"<!--[0-->\");\n if (errors.length > 0) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<span class=\"text-border\">•</span>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n Triangle_alert($$renderer3, { class: \"h-3.5 w-3.5\" });\n $$renderer3.push(`<!----> <span class=\"font-medium\">${escape_html(warnings.length)} Warning${escape_html(warnings.length !== 1 ? \"s\" : \"\")}</span>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n };\n ComputeMessagesDialog($$renderer2, { errors, warnings, trigger });\n }\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> `);\n if (children) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"gap-4 flex items-center\">`);\n children($$renderer2);\n $$renderer2.push(`<!----></div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></div> <div class=\"gap-4 ml-auto flex items-center\"><!--[-->`);\n const each_array_1 = ensure_array_like(rightItems());\n for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n let item = each_array_1[$$index_1];\n FooterItemRenderer($$renderer2, { item });\n }\n $$renderer2.push(`<!--]--> <p>${escape_html(copyrightLine())}</p></div></footer>`);\n });\n}\nfunction AppShell($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n showHeader = true,\n homeUrl = \"/\",\n title = void 0,\n logo = \"/favicon/favicon.svg\",\n brandName = \"Selva\",\n copyrightName = void 0,\n showModeToggle = true,\n navItems,\n rightContent,\n subnav,\n headerClass = \"\",\n header,\n mode: _mode = \"scroll\",\n sidenav,\n showFooter = false,\n errors = [],\n warnings = [],\n footerText,\n footerChildren,\n class: className = \"\",\n bodyClass = \"\",\n children\n } = $$props;\n const _copyright = derived(() => copyrightName ?? brandName);\n const rootClass = derived(() => _mode === \"fixed\" ? `flex flex-col h-screen overflow-hidden bg-background ${className}` : `flex flex-col min-h-screen bg-background ${className}`);\n const bodyShellClass = derived(() => _mode === \"fixed\" ? `flex flex-1 min-h-0 ${sidenav ? \"flex-row\" : \"flex-col\"} ${bodyClass}`.trim() : `flex-1 ${sidenav ? \"flex flex-row\" : \"\"} ${bodyClass}`.trim());\n const bodyShellStyle = \"\";\n $$renderer2.push(`<div${attr_class(clsx(rootClass()))}>`);\n if (showHeader) {\n $$renderer2.push(\"<!--[0-->\");\n if (header) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<header${attr_class(`top-0 backdrop-blur-sm sticky z-40 border-b border-border bg-background/90 ${headerClass}`)}><div class=\"flex h-(--header-h) items-center px-(--page-px)\">`);\n header($$renderer2);\n $$renderer2.push(`<!----></div></header>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n PageHeader($$renderer2, {\n homeUrl,\n title,\n logo,\n brandName,\n showModeToggle,\n navItems,\n rightContent,\n subnav,\n class: headerClass\n });\n }\n $$renderer2.push(`<!--]-->`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> <div${attr_class(clsx(bodyShellClass()))}${attr_style(bodyShellStyle)}>`);\n if (sidenav) {\n $$renderer2.push(\"<!--[0-->\");\n sidenav($$renderer2);\n $$renderer2.push(`<!----> <main class=\"flex-1 overflow-y-auto\">`);\n children($$renderer2);\n $$renderer2.push(`<!----></main>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n children($$renderer2);\n $$renderer2.push(`<!---->`);\n }\n $$renderer2.push(`<!--]--></div> `);\n if (showFooter) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"bottom-0 sticky z-10 shrink-0\">`);\n PageFooter($$renderer2, {\n errors,\n warnings,\n copyrightName: _copyright(),\n footerText,\n children: ($$renderer3) => {\n if (footerChildren) {\n $$renderer3.push(\"<!--[0-->\");\n footerChildren($$renderer3);\n $$renderer3.push(`<!---->`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]-->`);\n }\n });\n $$renderer2.push(`<!----></div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></div>`);\n });\n}\nfunction UserChip($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const pageData = derived(() => page.data);\n const user = derived(() => pageData().user ?? null);\n const profile = derived(() => pageData().profile ?? null);\n const showLogout = derived(() => !pageData().hasProxyAuth);\n const label = derived(() => profile()?.displayName ?? user()?.email?.split(\"@\")[0] ?? user()?.id ?? \"\");\n const initial = derived(() => label()[0]?.toUpperCase() ?? \"\");\n const loginHref = derived(() => `/login?redirectTo=${encodeURIComponent(page.url.pathname + page.url.search)}`);\n if (user()) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"border-border bg-card flex items-center gap-px rounded-full border shadow-sm\"><div class=\"flex items-center gap-2 py-1 pr-3 pl-1\"><div class=\"bg-primary text-primary-foreground flex h-6 w-6 shrink-0 items-center justify-center rounded-full text-xs font-semibold\">${escape_html(initial())}</div> <span class=\"text-foreground hidden max-w-32 truncate text-sm font-medium sm:block\">${escape_html(label())}</span></div> `);\n if (showLogout()) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"bg-border w-px self-stretch\"></div> <form method=\"POST\" action=\"/logout\"><button type=\"submit\" title=\"Log out\" class=\"text-muted-foreground hover:text-foreground hover:bg-muted rounded-full p-2 transition-colors\">`);\n Log_out($$renderer2, { class: \"h-3.5 w-3.5\" });\n $$renderer2.push(`<!----></button></form>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n $$renderer2.push(`<a${attr(\"href\", loginHref())} class=\"border-border bg-card text-muted-foreground hover:text-foreground flex items-center gap-2 rounded-full border px-3 py-1.5 text-sm font-medium shadow-sm transition-colors\">`);\n Log_in($$renderer2, { class: \"h-3.5 w-3.5\" });\n $$renderer2.push(`<!----> <span class=\"hidden sm:block\">Log in</span></a>`);\n }\n $$renderer2.push(`<!--]-->`);\n });\n}\nexport {\n APP_DEFAULTS as A,\n Dialog_trigger as D,\n MIME_BY_EXT as M,\n UserChip as U,\n AppShell as a,\n downloadFiles as d,\n formatFileSize as f,\n getBase64FileSize as g,\n isFileData as i\n};\n"],"names":[],"mappings":"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"}