@openpalm/ui 0.12.44 → 0.12.46

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 (319) hide show
  1. package/build/.openpalm-ui-version +1 -1
  2. package/build/client/_app/immutable/chunks/2ZAFZoVB.js +1 -0
  3. package/build/client/_app/immutable/chunks/2ZAFZoVB.js.br +2 -0
  4. package/build/client/_app/immutable/chunks/2ZAFZoVB.js.gz +0 -0
  5. package/build/client/_app/immutable/chunks/{C263EwX8.js → BL3_TyMa.js} +1 -1
  6. package/build/client/_app/immutable/chunks/BL3_TyMa.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/BL3_TyMa.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{BOfhzsO0.js → Drpj1z9_.js} +1 -1
  9. package/build/client/_app/immutable/chunks/Drpj1z9_.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/Drpj1z9_.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/mcRX5VE_.js +3 -0
  12. package/build/client/_app/immutable/chunks/mcRX5VE_.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/mcRX5VE_.js.gz +0 -0
  14. package/build/client/_app/immutable/entry/{app.kSnQAR_r.js → app.BX4WOOkJ.js} +2 -2
  15. package/build/client/_app/immutable/entry/app.BX4WOOkJ.js.br +0 -0
  16. package/build/client/_app/immutable/entry/app.BX4WOOkJ.js.gz +0 -0
  17. package/build/client/_app/immutable/entry/start.CzUnjAo8.js +1 -0
  18. package/build/client/_app/immutable/entry/start.CzUnjAo8.js.br +0 -0
  19. package/build/client/_app/immutable/entry/start.CzUnjAo8.js.gz +0 -0
  20. package/build/client/_app/immutable/nodes/{1.BsVZFCPI.js → 1.3Ita1ei0.js} +1 -1
  21. package/build/client/_app/immutable/nodes/1.3Ita1ei0.js.br +2 -0
  22. package/build/client/_app/immutable/nodes/1.3Ita1ei0.js.gz +0 -0
  23. package/build/client/_app/immutable/nodes/{10.f9V6641a.js → 10.Dc8NvV1g.js} +1 -1
  24. package/build/client/_app/immutable/nodes/10.Dc8NvV1g.js.br +0 -0
  25. package/build/client/_app/immutable/nodes/10.Dc8NvV1g.js.gz +0 -0
  26. package/build/client/_app/immutable/nodes/{4.7q4gRwAu.js → 4.DvG4V4HI.js} +1 -1
  27. package/build/client/_app/immutable/nodes/4.DvG4V4HI.js.br +0 -0
  28. package/build/client/_app/immutable/nodes/4.DvG4V4HI.js.gz +0 -0
  29. package/build/client/_app/immutable/nodes/{5.0eWsC6Gy.js → 5.CkT1_Qjv.js} +1 -1
  30. package/build/client/_app/immutable/nodes/5.CkT1_Qjv.js.br +0 -0
  31. package/build/client/_app/immutable/nodes/5.CkT1_Qjv.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/{6.BhH4GsOD.js → 6.DrKhP9TL.js} +1 -1
  33. package/build/client/_app/immutable/nodes/6.DrKhP9TL.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/6.DrKhP9TL.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/{7.DxSYgHDg.js → 7.B2pS_1t8.js} +1 -1
  36. package/build/client/_app/immutable/nodes/7.B2pS_1t8.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/7.B2pS_1t8.js.gz +0 -0
  38. package/build/client/_app/immutable/nodes/{8._je1c8Vn.js → 8.C3Y0Lc8c.js} +1 -1
  39. package/build/client/_app/immutable/nodes/8.C3Y0Lc8c.js.br +0 -0
  40. package/build/client/_app/immutable/nodes/8.C3Y0Lc8c.js.gz +0 -0
  41. package/build/client/_app/immutable/nodes/{9.CX1687Ng.js → 9.DG10fYPM.js} +1 -1
  42. package/build/client/_app/immutable/nodes/9.DG10fYPM.js.br +0 -0
  43. package/build/client/_app/immutable/nodes/9.DG10fYPM.js.gz +0 -0
  44. package/build/client/_app/version.json +1 -1
  45. package/build/client/_app/version.json.br +1 -1
  46. package/build/client/_app/version.json.gz +0 -0
  47. package/build/server/chunks/1-CglqVQcN.js +9 -0
  48. package/build/server/chunks/{1-D1gNV4OA.js.map → 1-CglqVQcN.js.map} +1 -1
  49. package/build/server/chunks/{10-C1p2XJG4.js → 10-qMZlSh5O.js} +6 -6
  50. package/build/server/chunks/{10-C1p2XJG4.js.map → 10-qMZlSh5O.js.map} +1 -1
  51. package/build/server/chunks/{4-CoWnFM_n.js → 4-EE6ASb5C.js} +3 -3
  52. package/build/server/chunks/{4-CoWnFM_n.js.map → 4-EE6ASb5C.js.map} +1 -1
  53. package/build/server/chunks/{5-BoOkg3j-.js → 5-BGuvGGqS.js} +3 -3
  54. package/build/server/chunks/{5-BoOkg3j-.js.map → 5-BGuvGGqS.js.map} +1 -1
  55. package/build/server/chunks/{6-C2CYPs5n.js → 6-DrPAGM-5.js} +3 -3
  56. package/build/server/chunks/{6-C2CYPs5n.js.map → 6-DrPAGM-5.js.map} +1 -1
  57. package/build/server/chunks/{7-CD4RFM-K.js → 7-Cx9yQLgO.js} +3 -3
  58. package/build/server/chunks/{7-CD4RFM-K.js.map → 7-Cx9yQLgO.js.map} +1 -1
  59. package/build/server/chunks/{8-CGK5TPxb.js → 8-AUF_cwb9.js} +3 -3
  60. package/build/server/chunks/{8-CGK5TPxb.js.map → 8-AUF_cwb9.js.map} +1 -1
  61. package/build/server/chunks/{9-CwsLxJkm.js → 9-6nFv30kF.js} +3 -3
  62. package/build/server/chunks/{9-CwsLxJkm.js.map → 9-6nFv30kF.js.map} +1 -1
  63. package/build/server/chunks/{Navbar-BR0J8rAC.js → Navbar-CLVFD8Ra.js} +4 -4
  64. package/build/server/chunks/{Navbar-BR0J8rAC.js.map → Navbar-CLVFD8Ra.js.map} +1 -1
  65. package/build/server/chunks/{_page.svelte-CgIVqoEs.js → _page.svelte-BcFefKrM.js} +4 -4
  66. package/build/server/chunks/{_page.svelte-CgIVqoEs.js.map → _page.svelte-BcFefKrM.js.map} +1 -1
  67. package/build/server/chunks/{_page.svelte-Bg8heLoI.js → _page.svelte-BmHOd4nU.js} +2 -2
  68. package/build/server/chunks/{_page.svelte-Bg8heLoI.js.map → _page.svelte-BmHOd4nU.js.map} +1 -1
  69. package/build/server/chunks/{_page.svelte-CJaj_qOx.js → _page.svelte-C1OWQdmF.js} +3 -3
  70. package/build/server/chunks/{_page.svelte-CJaj_qOx.js.map → _page.svelte-C1OWQdmF.js.map} +1 -1
  71. package/build/server/chunks/{_page.svelte-DjJOojFy.js → _page.svelte-C6kPwBIh.js} +3 -3
  72. package/build/server/chunks/{_page.svelte-DjJOojFy.js.map → _page.svelte-C6kPwBIh.js.map} +1 -1
  73. package/build/server/chunks/{_page.svelte-Dc1I8reh.js → _page.svelte-DH-SZecr.js} +6 -6
  74. package/build/server/chunks/{_page.svelte-Dc1I8reh.js.map → _page.svelte-DH-SZecr.js.map} +1 -1
  75. package/build/server/chunks/{_page.svelte-8cQtZj7v.js → _page.svelte-DhvooKGO.js} +6 -6
  76. package/build/server/chunks/{_page.svelte-8cQtZj7v.js.map → _page.svelte-DhvooKGO.js.map} +1 -1
  77. package/build/server/chunks/{_page.svelte-CGyQoVDs.js → _page.svelte-JOxVtK8e.js} +6 -6
  78. package/build/server/chunks/{_page.svelte-CGyQoVDs.js.map → _page.svelte-JOxVtK8e.js.map} +1 -1
  79. package/build/server/chunks/{_server.ts-UYJEwCq8.js → _server.ts-3oB6eZi1.js} +5 -5
  80. package/build/server/chunks/{_server.ts-UYJEwCq8.js.map → _server.ts-3oB6eZi1.js.map} +1 -1
  81. package/build/server/chunks/{_server.ts-t8LgqnI8.js → _server.ts-80FvB3ny.js} +2 -2
  82. package/build/server/chunks/{_server.ts-t8LgqnI8.js.map → _server.ts-80FvB3ny.js.map} +1 -1
  83. package/build/server/chunks/{_server.ts-N1-CACT6.js → _server.ts-B-7JXWi-.js} +6 -6
  84. package/build/server/chunks/{_server.ts-N1-CACT6.js.map → _server.ts-B-7JXWi-.js.map} +1 -1
  85. package/build/server/chunks/{_server.ts-rwpADfIr.js → _server.ts-B-Kv-9-A.js} +5 -5
  86. package/build/server/chunks/{_server.ts-rwpADfIr.js.map → _server.ts-B-Kv-9-A.js.map} +1 -1
  87. package/build/server/chunks/{_server.ts-BGR9YdsG.js → _server.ts-B0FT4XmQ.js} +5 -5
  88. package/build/server/chunks/{_server.ts-BGR9YdsG.js.map → _server.ts-B0FT4XmQ.js.map} +1 -1
  89. package/build/server/chunks/{_server.ts-D_QxAyAv.js → _server.ts-B1ailtGc.js} +5 -5
  90. package/build/server/chunks/{_server.ts-D_QxAyAv.js.map → _server.ts-B1ailtGc.js.map} +1 -1
  91. package/build/server/chunks/{_server.ts-D2QecBSj.js → _server.ts-B2QiPHNM.js} +7 -7
  92. package/build/server/chunks/{_server.ts-D2QecBSj.js.map → _server.ts-B2QiPHNM.js.map} +1 -1
  93. package/build/server/chunks/{_server.ts-Dzt_2LfE.js → _server.ts-B3J2wNRL.js} +5 -5
  94. package/build/server/chunks/{_server.ts-Dzt_2LfE.js.map → _server.ts-B3J2wNRL.js.map} +1 -1
  95. package/build/server/chunks/{_server.ts-DlRhaMZr.js → _server.ts-B4CwtPzs.js} +5 -5
  96. package/build/server/chunks/{_server.ts-DlRhaMZr.js.map → _server.ts-B4CwtPzs.js.map} +1 -1
  97. package/build/server/chunks/{_server.ts-DsK5y38H.js → _server.ts-B4T__0VK.js} +5 -5
  98. package/build/server/chunks/{_server.ts-DsK5y38H.js.map → _server.ts-B4T__0VK.js.map} +1 -1
  99. package/build/server/chunks/{_server.ts-DZ7G-dxe.js → _server.ts-B7Cc_0iX.js} +5 -5
  100. package/build/server/chunks/{_server.ts-DZ7G-dxe.js.map → _server.ts-B7Cc_0iX.js.map} +1 -1
  101. package/build/server/chunks/{_server.ts-FgPiO6C7.js → _server.ts-B7ClHUYi.js} +5 -5
  102. package/build/server/chunks/{_server.ts-FgPiO6C7.js.map → _server.ts-B7ClHUYi.js.map} +1 -1
  103. package/build/server/chunks/{_server.ts-BadRoa1z.js → _server.ts-BBT19gaK.js} +5 -5
  104. package/build/server/chunks/{_server.ts-BadRoa1z.js.map → _server.ts-BBT19gaK.js.map} +1 -1
  105. package/build/server/chunks/{_server.ts-mVIXOXz8.js → _server.ts-BDTBuEt8.js} +6 -6
  106. package/build/server/chunks/{_server.ts-mVIXOXz8.js.map → _server.ts-BDTBuEt8.js.map} +1 -1
  107. package/build/server/chunks/{_server.ts-CUwTItmT.js → _server.ts-BFbQQBxZ.js} +7 -7
  108. package/build/server/chunks/{_server.ts-CUwTItmT.js.map → _server.ts-BFbQQBxZ.js.map} +1 -1
  109. package/build/server/chunks/{_server.ts-Bvd-ia9u.js → _server.ts-BMZpZwg5.js} +7 -7
  110. package/build/server/chunks/{_server.ts-Bvd-ia9u.js.map → _server.ts-BMZpZwg5.js.map} +1 -1
  111. package/build/server/chunks/{_server.ts-BWo-OyxA.js → _server.ts-BP6gM9xM.js} +6 -6
  112. package/build/server/chunks/{_server.ts-BWo-OyxA.js.map → _server.ts-BP6gM9xM.js.map} +1 -1
  113. package/build/server/chunks/{_server.ts-Cbgo5wRt.js → _server.ts-BUfcUzM9.js} +6 -6
  114. package/build/server/chunks/{_server.ts-Cbgo5wRt.js.map → _server.ts-BUfcUzM9.js.map} +1 -1
  115. package/build/server/chunks/{_server.ts-CgzPyTwl.js → _server.ts-BW4apWXS.js} +5 -5
  116. package/build/server/chunks/{_server.ts-CgzPyTwl.js.map → _server.ts-BW4apWXS.js.map} +1 -1
  117. package/build/server/chunks/{_server.ts-CWz_Oxl8.js → _server.ts-BZvL-Q4Z.js} +6 -6
  118. package/build/server/chunks/{_server.ts-CWz_Oxl8.js.map → _server.ts-BZvL-Q4Z.js.map} +1 -1
  119. package/build/server/chunks/{_server.ts-GrWc2_wY.js → _server.ts-BdQBTHQG.js} +5 -5
  120. package/build/server/chunks/{_server.ts-GrWc2_wY.js.map → _server.ts-BdQBTHQG.js.map} +1 -1
  121. package/build/server/chunks/{_server.ts-D13Tjtky.js → _server.ts-BoFEfCKf.js} +2 -2
  122. package/build/server/chunks/{_server.ts-D13Tjtky.js.map → _server.ts-BoFEfCKf.js.map} +1 -1
  123. package/build/server/chunks/{_server.ts-SUokTCB8.js → _server.ts-BpQq6Tra.js} +5 -5
  124. package/build/server/chunks/{_server.ts-SUokTCB8.js.map → _server.ts-BpQq6Tra.js.map} +1 -1
  125. package/build/server/chunks/{_server.ts-D0VED1uF.js → _server.ts-BqY-xaZZ.js} +2 -2
  126. package/build/server/chunks/{_server.ts-D0VED1uF.js.map → _server.ts-BqY-xaZZ.js.map} +1 -1
  127. package/build/server/chunks/{_server.ts-B8ckfBOc.js → _server.ts-C1LKBpj0.js} +5 -5
  128. package/build/server/chunks/{_server.ts-B8ckfBOc.js.map → _server.ts-C1LKBpj0.js.map} +1 -1
  129. package/build/server/chunks/{_server.ts-DFzmbpC_.js → _server.ts-C7x6L6tk.js} +5 -5
  130. package/build/server/chunks/{_server.ts-DFzmbpC_.js.map → _server.ts-C7x6L6tk.js.map} +1 -1
  131. package/build/server/chunks/{_server.ts-BQ3TKJuk.js → _server.ts-CE0SYtkK.js} +2 -2
  132. package/build/server/chunks/{_server.ts-BQ3TKJuk.js.map → _server.ts-CE0SYtkK.js.map} +1 -1
  133. package/build/server/chunks/{_server.ts-BVN3CaiN.js → _server.ts-CF0qco5A.js} +5 -5
  134. package/build/server/chunks/{_server.ts-BVN3CaiN.js.map → _server.ts-CF0qco5A.js.map} +1 -1
  135. package/build/server/chunks/{_server.ts-7lvswLUR.js → _server.ts-CGmeG_kw.js} +5 -5
  136. package/build/server/chunks/{_server.ts-7lvswLUR.js.map → _server.ts-CGmeG_kw.js.map} +1 -1
  137. package/build/server/chunks/{_server.ts-XnThb0jk.js → _server.ts-CHSYgfGm.js} +8 -8
  138. package/build/server/chunks/{_server.ts-XnThb0jk.js.map → _server.ts-CHSYgfGm.js.map} +1 -1
  139. package/build/server/chunks/{_server.ts-ConZrEff.js → _server.ts-CIFzw-xF.js} +5 -5
  140. package/build/server/chunks/{_server.ts-ConZrEff.js.map → _server.ts-CIFzw-xF.js.map} +1 -1
  141. package/build/server/chunks/{_server.ts-UZlOmrXI.js → _server.ts-CMbxd-HU.js} +5 -5
  142. package/build/server/chunks/{_server.ts-UZlOmrXI.js.map → _server.ts-CMbxd-HU.js.map} +1 -1
  143. package/build/server/chunks/{_server.ts-BjRpt-15.js → _server.ts-CR1X5u30.js} +5 -5
  144. package/build/server/chunks/{_server.ts-BjRpt-15.js.map → _server.ts-CR1X5u30.js.map} +1 -1
  145. package/build/server/chunks/{_server.ts-uK5g2dwE.js → _server.ts-CX3lXZH5.js} +7 -7
  146. package/build/server/chunks/{_server.ts-uK5g2dwE.js.map → _server.ts-CX3lXZH5.js.map} +1 -1
  147. package/build/server/chunks/{_server.ts-DymagmXD.js → _server.ts-CXKkMKQ4.js} +5 -5
  148. package/build/server/chunks/{_server.ts-DymagmXD.js.map → _server.ts-CXKkMKQ4.js.map} +1 -1
  149. package/build/server/chunks/{_server.ts-BAwI28Af.js → _server.ts-CZJtGGSI.js} +2 -2
  150. package/build/server/chunks/{_server.ts-BAwI28Af.js.map → _server.ts-CZJtGGSI.js.map} +1 -1
  151. package/build/server/chunks/{_server.ts-gEMbfdbQ.js → _server.ts-CZn0lwem.js} +5 -5
  152. package/build/server/chunks/{_server.ts-gEMbfdbQ.js.map → _server.ts-CZn0lwem.js.map} +1 -1
  153. package/build/server/chunks/{_server.ts-BpHYyIAQ.js → _server.ts-CdJYCrLs.js} +5 -5
  154. package/build/server/chunks/{_server.ts-BpHYyIAQ.js.map → _server.ts-CdJYCrLs.js.map} +1 -1
  155. package/build/server/chunks/{_server.ts-D5zW4x4G.js → _server.ts-CdZt-JNg.js} +7 -7
  156. package/build/server/chunks/{_server.ts-D5zW4x4G.js.map → _server.ts-CdZt-JNg.js.map} +1 -1
  157. package/build/server/chunks/{_server.ts-D-jybdjv.js → _server.ts-Ce3s5PXy.js} +6 -9
  158. package/build/server/chunks/_server.ts-Ce3s5PXy.js.map +1 -0
  159. package/build/server/chunks/{_server.ts-xlsvzVfi.js → _server.ts-CgsOXZNV.js} +5 -5
  160. package/build/server/chunks/{_server.ts-xlsvzVfi.js.map → _server.ts-CgsOXZNV.js.map} +1 -1
  161. package/build/server/chunks/{_server.ts-ZaEesYhm.js → _server.ts-CnQh9RiS.js} +4 -4
  162. package/build/server/chunks/{_server.ts-ZaEesYhm.js.map → _server.ts-CnQh9RiS.js.map} +1 -1
  163. package/build/server/chunks/{_server.ts-C654vCNg.js → _server.ts-Cp8ocpRl.js} +5 -5
  164. package/build/server/chunks/{_server.ts-C654vCNg.js.map → _server.ts-Cp8ocpRl.js.map} +1 -1
  165. package/build/server/chunks/{_server.ts-D9pV4tLm.js → _server.ts-CsXLIKHi.js} +5 -5
  166. package/build/server/chunks/{_server.ts-D9pV4tLm.js.map → _server.ts-CsXLIKHi.js.map} +1 -1
  167. package/build/server/chunks/{_server.ts-B8PEGtZu.js → _server.ts-CtoK9w9g.js} +5 -5
  168. package/build/server/chunks/{_server.ts-B8PEGtZu.js.map → _server.ts-CtoK9w9g.js.map} +1 -1
  169. package/build/server/chunks/{_server.ts-CDRiwnDy.js → _server.ts-D2KMdWo8.js} +5 -5
  170. package/build/server/chunks/{_server.ts-CDRiwnDy.js.map → _server.ts-D2KMdWo8.js.map} +1 -1
  171. package/build/server/chunks/{_server.ts-BuwilXIo.js → _server.ts-D9lzOGAs.js} +5 -5
  172. package/build/server/chunks/{_server.ts-BuwilXIo.js.map → _server.ts-D9lzOGAs.js.map} +1 -1
  173. package/build/server/chunks/{_server.ts-BuZUw21A.js → _server.ts-DApkklCw.js} +5 -5
  174. package/build/server/chunks/{_server.ts-BuZUw21A.js.map → _server.ts-DApkklCw.js.map} +1 -1
  175. package/build/server/chunks/{_server.ts-4Xr9h6Pa.js → _server.ts-DJIcnF85.js} +5 -5
  176. package/build/server/chunks/{_server.ts-4Xr9h6Pa.js.map → _server.ts-DJIcnF85.js.map} +1 -1
  177. package/build/server/chunks/{_server.ts-0QNGItBX.js → _server.ts-DKbAZCDd.js} +5 -5
  178. package/build/server/chunks/{_server.ts-0QNGItBX.js.map → _server.ts-DKbAZCDd.js.map} +1 -1
  179. package/build/server/chunks/{_server.ts-nOXme96k.js → _server.ts-DSqb4vX3.js} +5 -5
  180. package/build/server/chunks/{_server.ts-nOXme96k.js.map → _server.ts-DSqb4vX3.js.map} +1 -1
  181. package/build/server/chunks/{_server.ts-D2tB04Uo.js → _server.ts-DWki-8e0.js} +6 -9
  182. package/build/server/chunks/_server.ts-DWki-8e0.js.map +1 -0
  183. package/build/server/chunks/{_server.ts-DoGLNPhD.js → _server.ts-D_He4n7X.js} +5 -5
  184. package/build/server/chunks/{_server.ts-DoGLNPhD.js.map → _server.ts-D_He4n7X.js.map} +1 -1
  185. package/build/server/chunks/{_server.ts-D-tp2zQP.js → _server.ts-DaSVDkGq.js} +6 -6
  186. package/build/server/chunks/{_server.ts-D-tp2zQP.js.map → _server.ts-DaSVDkGq.js.map} +1 -1
  187. package/build/server/chunks/{_server.ts-Buq94QaZ.js → _server.ts-DdBxYqjt.js} +5 -5
  188. package/build/server/chunks/{_server.ts-Buq94QaZ.js.map → _server.ts-DdBxYqjt.js.map} +1 -1
  189. package/build/server/chunks/{_server.ts-Du2mXeIc.js → _server.ts-DiRmbVsw.js} +6 -6
  190. package/build/server/chunks/{_server.ts-Du2mXeIc.js.map → _server.ts-DiRmbVsw.js.map} +1 -1
  191. package/build/server/chunks/{_server.ts-Cq_S1dN_.js → _server.ts-Djw660AM.js} +5 -5
  192. package/build/server/chunks/{_server.ts-Cq_S1dN_.js.map → _server.ts-Djw660AM.js.map} +1 -1
  193. package/build/server/chunks/{_server.ts-F0itNDlp.js → _server.ts-DkPXHSDH.js} +7 -7
  194. package/build/server/chunks/{_server.ts-F0itNDlp.js.map → _server.ts-DkPXHSDH.js.map} +1 -1
  195. package/build/server/chunks/{_server.ts-CnKA-6OD.js → _server.ts-DlMMGbKO.js} +5 -5
  196. package/build/server/chunks/{_server.ts-CnKA-6OD.js.map → _server.ts-DlMMGbKO.js.map} +1 -1
  197. package/build/server/chunks/{_server.ts-CJLdr-ks.js → _server.ts-DnmPUsE2.js} +5 -5
  198. package/build/server/chunks/{_server.ts-CJLdr-ks.js.map → _server.ts-DnmPUsE2.js.map} +1 -1
  199. package/build/server/chunks/{_server.ts-WqCDAJIr.js → _server.ts-Dofrjtb5.js} +5 -5
  200. package/build/server/chunks/{_server.ts-WqCDAJIr.js.map → _server.ts-Dofrjtb5.js.map} +1 -1
  201. package/build/server/chunks/{_server.ts-CtaNnF4U.js → _server.ts-DpROn0ij.js} +6 -6
  202. package/build/server/chunks/{_server.ts-CtaNnF4U.js.map → _server.ts-DpROn0ij.js.map} +1 -1
  203. package/build/server/chunks/{_server.ts-BqdrhN6T.js → _server.ts-DsllAcG6.js} +6 -6
  204. package/build/server/chunks/{_server.ts-BqdrhN6T.js.map → _server.ts-DsllAcG6.js.map} +1 -1
  205. package/build/server/chunks/{_server.ts-CuGyrveA.js → _server.ts-DwFNvZgO.js} +5 -5
  206. package/build/server/chunks/{_server.ts-CuGyrveA.js.map → _server.ts-DwFNvZgO.js.map} +1 -1
  207. package/build/server/chunks/{_server.ts-D0hW9gvU.js → _server.ts-DxJc4i6x.js} +5 -5
  208. package/build/server/chunks/{_server.ts-D0hW9gvU.js.map → _server.ts-DxJc4i6x.js.map} +1 -1
  209. package/build/server/chunks/{_server.ts-CELMsabp.js → _server.ts-DytxnAbh.js} +5 -5
  210. package/build/server/chunks/{_server.ts-CELMsabp.js.map → _server.ts-DytxnAbh.js.map} +1 -1
  211. package/build/server/chunks/{_server.ts-BIdmvsMv.js → _server.ts-DzRgPyYY.js} +5 -5
  212. package/build/server/chunks/{_server.ts-BIdmvsMv.js.map → _server.ts-DzRgPyYY.js.map} +1 -1
  213. package/build/server/chunks/{_server.ts-CsrnhmTb.js → _server.ts-Gpoove_D.js} +5 -5
  214. package/build/server/chunks/{_server.ts-CsrnhmTb.js.map → _server.ts-Gpoove_D.js.map} +1 -1
  215. package/build/server/chunks/{_server.ts-C7FAbT1j.js → _server.ts-HbmEc_dp.js} +5 -5
  216. package/build/server/chunks/{_server.ts-C7FAbT1j.js.map → _server.ts-HbmEc_dp.js.map} +1 -1
  217. package/build/server/chunks/{_server.ts-DH0mwAYJ.js → _server.ts-LmSoWbJL.js} +5 -5
  218. package/build/server/chunks/{_server.ts-DH0mwAYJ.js.map → _server.ts-LmSoWbJL.js.map} +1 -1
  219. package/build/server/chunks/{_server.ts-fJtSOt2l.js → _server.ts-Qd4jSnEC.js} +6 -6
  220. package/build/server/chunks/{_server.ts-fJtSOt2l.js.map → _server.ts-Qd4jSnEC.js.map} +1 -1
  221. package/build/server/chunks/{_server.ts-8QPo43Xf.js → _server.ts-U-836iow.js} +5 -5
  222. package/build/server/chunks/{_server.ts-8QPo43Xf.js.map → _server.ts-U-836iow.js.map} +1 -1
  223. package/build/server/chunks/{_server.ts-SeumU7RQ.js → _server.ts-UpsHFuWx.js} +5 -5
  224. package/build/server/chunks/{_server.ts-SeumU7RQ.js.map → _server.ts-UpsHFuWx.js.map} +1 -1
  225. package/build/server/chunks/{_server.ts-D4_tom-k.js → _server.ts-V6-_75NH.js} +5 -5
  226. package/build/server/chunks/{_server.ts-D4_tom-k.js.map → _server.ts-V6-_75NH.js.map} +1 -1
  227. package/build/server/chunks/{_server.ts-CRTwAa3N.js → _server.ts-Wmpdk4bo.js} +5 -5
  228. package/build/server/chunks/{_server.ts-CRTwAa3N.js.map → _server.ts-Wmpdk4bo.js.map} +1 -1
  229. package/build/server/chunks/{_server.ts-DIvIb0la.js → _server.ts-clb7Zu10.js} +6 -6
  230. package/build/server/chunks/{_server.ts-DIvIb0la.js.map → _server.ts-clb7Zu10.js.map} +1 -1
  231. package/build/server/chunks/{_server.ts-DhAVjiUd.js → _server.ts-eJmJQRgW.js} +6 -6
  232. package/build/server/chunks/{_server.ts-DhAVjiUd.js.map → _server.ts-eJmJQRgW.js.map} +1 -1
  233. package/build/server/chunks/{_server.ts-4G38ZiPm.js → _server.ts-l3d3S-_A.js} +5 -5
  234. package/build/server/chunks/{_server.ts-4G38ZiPm.js.map → _server.ts-l3d3S-_A.js.map} +1 -1
  235. package/build/server/chunks/{_server.ts-CbwHb5ED.js → _server.ts-lqHOWGTq.js} +4 -4
  236. package/build/server/chunks/{_server.ts-CbwHb5ED.js.map → _server.ts-lqHOWGTq.js.map} +1 -1
  237. package/build/server/chunks/{_server.ts-CGAgOt_d.js → _server.ts-mH9aP1pi.js} +5 -5
  238. package/build/server/chunks/{_server.ts-CGAgOt_d.js.map → _server.ts-mH9aP1pi.js.map} +1 -1
  239. package/build/server/chunks/{_server.ts-BPOWpbse.js → _server.ts-qnaPCXUA.js} +5 -5
  240. package/build/server/chunks/{_server.ts-BPOWpbse.js.map → _server.ts-qnaPCXUA.js.map} +1 -1
  241. package/build/server/chunks/{_server.ts-BGDMBqlE.js → _server.ts-sStn8JSV.js} +5 -5
  242. package/build/server/chunks/{_server.ts-BGDMBqlE.js.map → _server.ts-sStn8JSV.js.map} +1 -1
  243. package/build/server/chunks/{addon-helpers-CpnCoaX5.js → addon-helpers-Cg15Dp5L.js} +3 -3
  244. package/build/server/chunks/{addon-helpers-CpnCoaX5.js.map → addon-helpers-Cg15Dp5L.js.map} +1 -1
  245. package/build/server/chunks/{akm-DS8qIY08.js → akm-RIWhKevU.js} +2 -2
  246. package/build/server/chunks/{akm-DS8qIY08.js.map → akm-RIWhKevU.js.map} +1 -1
  247. package/build/server/chunks/{catalog-BRAGF5mT.js → catalog-BfbWTnyr.js} +5 -5
  248. package/build/server/chunks/{catalog-BRAGF5mT.js.map → catalog-BfbWTnyr.js.map} +1 -1
  249. package/build/server/chunks/{client-WNC_rTIi.js → client-LEri8MRi.js} +2 -2
  250. package/build/server/chunks/{client-WNC_rTIi.js.map → client-LEri8MRi.js.map} +1 -1
  251. package/build/server/chunks/{config-DaoatST3.js → config-CAU3dGmV.js} +2 -2
  252. package/build/server/chunks/{config-DaoatST3.js.map → config-CAU3dGmV.js.map} +1 -1
  253. package/build/server/chunks/{docker-CwxqEp_G.js → docker-BG3px4tX.js} +2 -2
  254. package/build/server/chunks/{docker-CwxqEp_G.js.map → docker-BG3px4tX.js.map} +1 -1
  255. package/build/server/chunks/{endpoints-BltANYH6.js → endpoints-CM0QyBW3.js} +5 -33
  256. package/build/server/chunks/endpoints-CM0QyBW3.js.map +1 -0
  257. package/build/server/chunks/environment-DqfL567G.js.map +1 -1
  258. package/build/server/chunks/{error.svelte-Cepq36_V.js → error.svelte-BB4D98wn.js} +4 -4
  259. package/build/server/chunks/{error.svelte-Cepq36_V.js.map → error.svelte-BB4D98wn.js.map} +1 -1
  260. package/build/server/chunks/{helpers-13WhVOMk.js → helpers-Du6wAFM1.js} +3 -3
  261. package/build/server/chunks/{helpers-13WhVOMk.js.map → helpers-Du6wAFM1.js.map} +1 -1
  262. package/build/server/chunks/{hooks.server-ChI0JhLw.js → hooks.server-WbZdXFB1.js} +6 -6
  263. package/build/server/chunks/{hooks.server-ChI0JhLw.js.map → hooks.server-WbZdXFB1.js.map} +1 -1
  264. package/build/server/chunks/{http-4BaLbiCJ.js → http-DMBsHHDN.js} +2 -2
  265. package/build/server/chunks/{http-4BaLbiCJ.js.map → http-DMBsHHDN.js.map} +1 -1
  266. package/build/server/chunks/{internal-l3EWtEye.js → internal-Dxoo2R05.js} +3 -3
  267. package/build/server/chunks/{internal-l3EWtEye.js.map → internal-Dxoo2R05.js.map} +1 -1
  268. package/build/server/chunks/{paths-BFRLnvBp.js → paths-B-UhMFIL.js} +2 -2
  269. package/build/server/chunks/{paths-BFRLnvBp.js.map → paths-B-UhMFIL.js.map} +1 -1
  270. package/build/server/chunks/{session-cookie-DErsjR7e.js → session-cookie-Dpvcmedh.js} +2 -2
  271. package/build/server/chunks/{session-cookie-DErsjR7e.js.map → session-cookie-Dpvcmedh.js.map} +1 -1
  272. package/build/server/chunks/{setup-deploy-D9VREk8i.js → setup-deploy-CqKISPMu.js} +2 -2
  273. package/build/server/chunks/{setup-deploy-D9VREk8i.js.map → setup-deploy-CqKISPMu.js.map} +1 -1
  274. package/build/server/chunks/{src-NhUHZOQF.js → src-DfLnu33Z.js} +167 -9
  275. package/build/server/chunks/src-DfLnu33Z.js.map +1 -0
  276. package/build/server/chunks/{state-BateNC-M.js → state-BH8Kvc-z.js} +2 -2
  277. package/build/server/chunks/{state-BateNC-M.js.map → state-BH8Kvc-z.js.map} +1 -1
  278. package/build/server/chunks/{state2-D5q73U2E.js → state2-hYkvBX2o.js} +2 -2
  279. package/build/server/chunks/{state2-D5q73U2E.js.map → state2-hYkvBX2o.js.map} +1 -1
  280. package/build/server/index.js +1 -1
  281. package/build/server/manifest.js +91 -91
  282. package/build/server/manifest.js.map +1 -1
  283. package/package.json +2 -2
  284. package/build/client/_app/immutable/chunks/BK-tywES.js +0 -1
  285. package/build/client/_app/immutable/chunks/BK-tywES.js.br +0 -2
  286. package/build/client/_app/immutable/chunks/BK-tywES.js.gz +0 -0
  287. package/build/client/_app/immutable/chunks/BOfhzsO0.js.br +0 -0
  288. package/build/client/_app/immutable/chunks/BOfhzsO0.js.gz +0 -0
  289. package/build/client/_app/immutable/chunks/C263EwX8.js.br +0 -0
  290. package/build/client/_app/immutable/chunks/C263EwX8.js.gz +0 -0
  291. package/build/client/_app/immutable/chunks/CLensmFQ.js +0 -3
  292. package/build/client/_app/immutable/chunks/CLensmFQ.js.br +0 -0
  293. package/build/client/_app/immutable/chunks/CLensmFQ.js.gz +0 -0
  294. package/build/client/_app/immutable/entry/app.kSnQAR_r.js.br +0 -0
  295. package/build/client/_app/immutable/entry/app.kSnQAR_r.js.gz +0 -0
  296. package/build/client/_app/immutable/entry/start.CjknpNta.js +0 -1
  297. package/build/client/_app/immutable/entry/start.CjknpNta.js.br +0 -0
  298. package/build/client/_app/immutable/entry/start.CjknpNta.js.gz +0 -0
  299. package/build/client/_app/immutable/nodes/1.BsVZFCPI.js.br +0 -1
  300. package/build/client/_app/immutable/nodes/1.BsVZFCPI.js.gz +0 -0
  301. package/build/client/_app/immutable/nodes/10.f9V6641a.js.br +0 -0
  302. package/build/client/_app/immutable/nodes/10.f9V6641a.js.gz +0 -0
  303. package/build/client/_app/immutable/nodes/4.7q4gRwAu.js.br +0 -0
  304. package/build/client/_app/immutable/nodes/4.7q4gRwAu.js.gz +0 -0
  305. package/build/client/_app/immutable/nodes/5.0eWsC6Gy.js.br +0 -0
  306. package/build/client/_app/immutable/nodes/5.0eWsC6Gy.js.gz +0 -0
  307. package/build/client/_app/immutable/nodes/6.BhH4GsOD.js.br +0 -0
  308. package/build/client/_app/immutable/nodes/6.BhH4GsOD.js.gz +0 -0
  309. package/build/client/_app/immutable/nodes/7.DxSYgHDg.js.br +0 -0
  310. package/build/client/_app/immutable/nodes/7.DxSYgHDg.js.gz +0 -0
  311. package/build/client/_app/immutable/nodes/8._je1c8Vn.js.br +0 -0
  312. package/build/client/_app/immutable/nodes/8._je1c8Vn.js.gz +0 -0
  313. package/build/client/_app/immutable/nodes/9.CX1687Ng.js.br +0 -0
  314. package/build/client/_app/immutable/nodes/9.CX1687Ng.js.gz +0 -0
  315. package/build/server/chunks/1-D1gNV4OA.js +0 -9
  316. package/build/server/chunks/_server.ts-D-jybdjv.js.map +0 -1
  317. package/build/server/chunks/_server.ts-D2tB04Uo.js.map +0 -1
  318. package/build/server/chunks/endpoints-BltANYH6.js.map +0 -1
  319. package/build/server/chunks/src-NhUHZOQF.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"helpers-13WhVOMk.js","sources":["../../../.svelte-kit/adapter-node/chunks/helpers.js"],"sourcesContent":["import { Jt as readSecret, gt as createOpenCodeClient, sn as resolveOpenPalmHome } from \"./src.js\";\nimport { r as getActiveEndpoint } from \"./endpoints.js\";\nimport { createHash, createHmac, timingSafeEqual } from \"node:crypto\";\n//#region src/lib/server/session-store.ts\n/**\n* Stateless signed session tokens.\n*\n* Token format: `<expiresAt>.<hmac-sha256-hex>`\n* expiresAt — unix ms timestamp when the session expires\n* signature — HMAC-SHA256(expiresAt, login password)\n*\n* Tokens are self-validating: the server holds no per-session state and\n* sessions survive UI server restarts. Signing with the login password means\n* a password change invalidates all existing sessions — correct behaviour.\n*\n* The signing secret is resolved exactly like login verification\n* (`getUiLoginPassword`): `process.env.OP_UI_LOGIN_PASSWORD` first, then the\n* on-disk stack secret. When NEITHER exists, minting throws and validation\n* fails closed — there is deliberately no fallback secret, because a constant\n* key would let anyone forge an admin token. Reading the file per call also\n* means tokens minted right after the setup wizard writes the password are\n* signed with the real secret, without waiting for a process restart.\n*\n* Logout semantics (known trade-off of stateless tokens): logout revokes the\n* single token the browser presented (in-memory list, cleared on restart) and\n* clears the cookie. Earlier tokens issued to the same browser by sliding\n* renewal remain cryptographically valid until they expire — logout is\n* \"forget my cookie\", not \"kill every credential ever issued\". A real\n* kill-switch is changing the login password, which invalidates everything.\n*/\n/** Session lifetime for both the token expiry and the cookie Max-Age. 14 days. */\nvar SESSION_TTL_MS = 12096e5;\n/** Cookie Max-Age in seconds (Set-Cookie uses seconds, not ms). */\nvar SESSION_TTL_SECONDS = SESSION_TTL_MS / 1e3;\nvar _revoked = /* @__PURE__ */ new Set();\nvar _testOverrides = /* @__PURE__ */ new Set();\n/**\n* Read the operator UI login password from the host environment or the\n* file-based stack secret (`knowledge/secrets/op_ui_login_password`).\n*\n* This is the single source of truth for the password — login verification\n* (helpers.ts) and token signing below both use it, so they can never\n* disagree about whether a password exists. Returns \"\" when neither source\n* has a value (first boot, before the wizard runs).\n*/\nfunction getUiLoginPassword() {\n\tconst envValue = process.env.OP_UI_LOGIN_PASSWORD;\n\tif (envValue) return envValue;\n\treturn readSecret(resolveOpenPalmHome(), \"op_ui_login_password\")?.trimEnd() ?? \"\";\n}\n/** Sign `expiresAt` with the login password. Returns null when no password is configured. */\nfunction signToken(expiresAt) {\n\tconst secret = getUiLoginPassword();\n\tif (!secret) return null;\n\treturn createHmac(\"sha256\", secret).update(String(expiresAt)).digest(\"hex\");\n}\n/**\n* Mint a new signed session token with a 14-day TTL.\n* Place the result in the `op_session` cookie.\n* Throws when no login password is configured — callers must verify a\n* password exists (they all do: login/session/setup-complete check first).\n*/\nfunction createSession() {\n\tconst expiresAt = Date.now() + SESSION_TTL_MS;\n\tconst sig = signToken(expiresAt);\n\tif (sig === null) throw new Error(\"Cannot mint a session: no UI login password is configured.\");\n\treturn `${expiresAt}.${sig}`;\n}\n/**\n* Return true iff `token` is a valid, non-expired, non-revoked session.\n*/\nfunction validateSession(token) {\n\tif (!token) return false;\n\tif (_testOverrides.has(token)) return true;\n\tif (_revoked.has(token)) return false;\n\tconst dot = token.lastIndexOf(\".\");\n\tif (dot < 0) return false;\n\tconst expiresAt = Number(token.slice(0, dot));\n\tif (!Number.isFinite(expiresAt) || Date.now() >= expiresAt) return false;\n\tconst sig = token.slice(dot + 1);\n\tconst expected = signToken(expiresAt);\n\tif (expected === null) return false;\n\tif (sig.length !== expected.length) return false;\n\treturn timingSafeEqual(Buffer.from(sig), Buffer.from(expected));\n}\n/**\n* Sliding renewal: validate the old token, return a new one with a fresh\n* 14-day TTL, or return false if the old token is invalid/expired.\n* The caller must place the returned token in the `op_session` cookie.\n*/\nfunction touchSession(token) {\n\tif (!validateSession(token)) return false;\n\treturn createSession();\n}\n/**\n* Revoke a token (logout). The browser cookie must also be cleared by the caller.\n* The revocation list survives until the next server restart. Entries whose\n* embedded expiry has passed are pruned on each call — an expired token fails\n* validation anyway, so keeping it listed is pure memory growth.\n*/\nfunction invalidateSession(token) {\n\tconst now = Date.now();\n\tfor (const revoked of _revoked) {\n\t\tconst expiresAt = Number(revoked.slice(0, revoked.lastIndexOf(\".\")));\n\t\tif (!Number.isFinite(expiresAt) || expiresAt <= now) _revoked.delete(revoked);\n\t}\n\t_revoked.add(token);\n}\n//#endregion\n//#region src/lib/server/helpers.ts\n/**\n* Lazy OpenCode client bound to the currently active endpoint. The client is\n* recreated whenever the active endpoint URL changes so user switches in the\n* UI take effect on the next call.\n*/\nvar _openCodeClient;\nvar _openCodeClientUrl;\nfunction getOpenCodeClient() {\n\tconst { url } = getActiveEndpoint();\n\tif (!_openCodeClient || url !== _openCodeClientUrl) {\n\t\t_openCodeClient = createOpenCodeClient({ baseUrl: url });\n\t\t_openCodeClientUrl = url;\n\t}\n\treturn _openCodeClient;\n}\nfunction safeTokenCompare(a, b) {\n\tif (typeof a !== \"string\" || typeof b !== \"string\") return false;\n\tif (!a || !b) return false;\n\treturn timingSafeEqual(createHash(\"sha256\").update(a).digest(), createHash(\"sha256\").update(b).digest());\n}\n/** Standard JSON response with request ID header */\nfunction jsonResponse(status, body, requestId = \"\") {\n\treturn new Response(JSON.stringify(body), {\n\t\tstatus,\n\t\theaders: {\n\t\t\t\"content-type\": \"application/json\",\n\t\t\t...requestId ? { \"x-request-id\": requestId } : {}\n\t\t}\n\t});\n}\n/** Standard error envelope */\nfunction errorResponse(status, error, message, details = {}, requestId = \"\") {\n\treturn jsonResponse(status, {\n\t\terror,\n\t\tmessage,\n\t\tdetails,\n\t\trequestId\n\t}, requestId);\n}\n/** Extract or generate request ID */\nfunction getRequestId(event) {\n\treturn event.request.headers.get(\"x-request-id\") || crypto.randomUUID();\n}\n/**\n* Extract raw session token from the `op_session` cookie.\n*\n* Phase 2 of the auth/proxy refactor (docs/technical/auth-and-proxy-refactor-plan.md)\n* removed the legacy `x-admin-token` / `Authorization: Bearer` header fallbacks.\n* The cookie is HttpOnly + SameSite=Strict and is the ONLY credential the browser\n* holds; XSS cannot read it and out-of-process callers must obtain a session via\n* `POST /admin/auth/login` (or `/session`) and present the cookie on subsequent\n* requests.\n*/\nfunction extractToken(event) {\n\tconst match = (event.request.headers.get(\"cookie\") ?? \"\").match(/(?:^|;\\s*)op_session=([^;]+)/);\n\tif (match) return match[1];\n\treturn \"\";\n}\n/** Check admin auth — returns error Response or null if OK */\nfunction requireAdmin(event, requestId) {\n\tif (!getUiLoginPassword()) return errorResponse(503, \"admin_not_configured\", \"OP_UI_LOGIN_PASSWORD has not been set. Complete setup first.\", {}, requestId);\n\tif (!validateSession(extractToken(event))) return errorResponse(401, \"unauthorized\", \"Missing or invalid credentials\", {}, requestId);\n\treturn null;\n}\n/**\n* Identify caller by the presented `op_session` cookie.\n*\n* Returns \"admin\" when the cookie holds a valid session token.\n*/\nfunction identifyCallerByToken(event) {\n\tif (!getUiLoginPassword()) return null;\n\tif (validateSession(extractToken(event))) return \"admin\";\n\treturn null;\n}\n/** Parse JSON body safely — returns discriminated result with error type */\nasync function parseJsonBody(request, maxBytes = 1048576) {\n\ttry {\n\t\tconst contentLength = request.headers.get(\"content-length\");\n\t\tif (contentLength && parseInt(contentLength, 10) > maxBytes) return { error: \"too_large\" };\n\t\treturn { data: await request.json() };\n\t} catch (e) {\n\t\tconsole.warn(\"[helpers] Failed to parse JSON request body\", e);\n\t\treturn { error: \"invalid_json\" };\n\t}\n}\n/** Convert a ParseJsonBodyError to an appropriate HTTP error response */\nfunction jsonBodyError(err, requestId) {\n\tif (err.error === \"too_large\") return errorResponse(413, \"too_large\", \"Request body too large\", {}, requestId);\n\treturn errorResponse(400, \"invalid_json\", \"Request body must be valid JSON\", {}, requestId);\n}\n/**\n* Auth + JSON body wrapper for admin POST/DELETE handlers.\n*\n* Replaces the 4-line boilerplate copy-pasted across 30+ routes:\n* const requestId = getRequestId(event);\n* const authError = requireAdmin(event, requestId);\n* if (authError) return authError;\n* const result = await parseJsonBody(event.request);\n* if ('error' in result) return jsonBodyError(result, requestId);\n*\n* Use for routes that need both auth and a JSON body. For auth-only or\n* GET routes, call `requireAdmin` directly.\n*/\nasync function withAdminBody(event, handler) {\n\tconst requestId = getRequestId(event);\n\tconst originError = checkOriginHeader(event.request, UI_PORT);\n\tif (originError) return originError;\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst result = await parseJsonBody(event.request);\n\tif (\"error\" in result) return jsonBodyError(result, requestId);\n\treturn handler({\n\t\trequestId,\n\t\tbody: result.data\n\t});\n}\n/**\n* Reject requests whose Host header does not match localhost or 127.0.0.1\n* on the configured admin port.\n*\n* @param request Incoming Request (or SvelteKit RequestEvent.request)\n* @param port The port this server is bound to (e.g. 3880 or 8100)\n* @returns A 400 Response if the host is rejected; null if allowed\n*/\nfunction checkHostHeader(request, port) {\n\tconst normalized = (request.headers.get(\"host\") ?? \"\").trim().replace(/\\.$/, \"\");\n\tif ([`localhost:${port}`, `127.0.0.1:${port}`].includes(normalized)) return null;\n\treturn new Response(JSON.stringify({\n\t\terror: \"invalid_host\",\n\t\thost: normalized,\n\t\tmessage: \"Request rejected: Host header does not match allowed hosts. The admin UI binds to loopback (127.0.0.1) only; reach it via localhost or front it with a reverse proxy/tunnel for remote access.\"\n\t}), {\n\t\tstatus: 400,\n\t\theaders: { \"content-type\": \"application/json\" }\n\t});\n}\n/**\n* Reject POST/PUT/DELETE requests whose Origin header does not match\n* localhost or 127.0.0.1. Requests with no Origin (non-browser clients)\n* are always allowed.\n*\n* @param request Incoming Request\n* @param port The port this server is bound to\n* @returns A 403 Response if the origin is rejected; null if allowed\n*/\nfunction checkOriginHeader(request, port) {\n\tconst method = request.method.toUpperCase();\n\tif (method === \"GET\" || method === \"HEAD\" || method === \"OPTIONS\") return null;\n\tconst origin = request.headers.get(\"origin\");\n\tif (!origin) return null;\n\ttry {\n\t\tconst u = new URL(origin);\n\t\tif ([`localhost:${port}`, `127.0.0.1:${port}`].includes(u.host)) return null;\n\t} catch {}\n\treturn new Response(JSON.stringify({\n\t\terror: \"forbidden_origin\",\n\t\torigin\n\t}), {\n\t\tstatus: 403,\n\t\theaders: { \"content-type\": \"application/json\" }\n\t});\n}\nvar UI_PORT = Number(process.env.PORT ?? 3880);\n//#endregion\nexport { invalidateSession as _, getOpenCodeClient as a, jsonBodyError as c, requireAdmin as d, safeTokenCompare as f, getUiLoginPassword as g, createSession as h, errorResponse as i, jsonResponse as l, SESSION_TTL_SECONDS as m, checkHostHeader as n, getRequestId as o, withAdminBody as p, checkOriginHeader as r, identifyCallerByToken as s, UI_PORT as t, parseJsonBody as u, touchSession as v };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers-Du6wAFM1.js","sources":["../../../.svelte-kit/adapter-node/chunks/helpers.js"],"sourcesContent":["import { Jt as readSecret, gt as createOpenCodeClient, sn as resolveOpenPalmHome } from \"./src.js\";\nimport { r as getActiveEndpoint } from \"./endpoints.js\";\nimport { createHash, createHmac, timingSafeEqual } from \"node:crypto\";\n//#region src/lib/server/session-store.ts\n/**\n* Stateless signed session tokens.\n*\n* Token format: `<expiresAt>.<hmac-sha256-hex>`\n* expiresAt — unix ms timestamp when the session expires\n* signature — HMAC-SHA256(expiresAt, login password)\n*\n* Tokens are self-validating: the server holds no per-session state and\n* sessions survive UI server restarts. Signing with the login password means\n* a password change invalidates all existing sessions — correct behaviour.\n*\n* The signing secret is resolved exactly like login verification\n* (`getUiLoginPassword`): `process.env.OP_UI_LOGIN_PASSWORD` first, then the\n* on-disk stack secret. When NEITHER exists, minting throws and validation\n* fails closed — there is deliberately no fallback secret, because a constant\n* key would let anyone forge an admin token. Reading the file per call also\n* means tokens minted right after the setup wizard writes the password are\n* signed with the real secret, without waiting for a process restart.\n*\n* Logout semantics (known trade-off of stateless tokens): logout revokes the\n* single token the browser presented (in-memory list, cleared on restart) and\n* clears the cookie. Earlier tokens issued to the same browser by sliding\n* renewal remain cryptographically valid until they expire — logout is\n* \"forget my cookie\", not \"kill every credential ever issued\". A real\n* kill-switch is changing the login password, which invalidates everything.\n*/\n/** Session lifetime for both the token expiry and the cookie Max-Age. 14 days. */\nvar SESSION_TTL_MS = 12096e5;\n/** Cookie Max-Age in seconds (Set-Cookie uses seconds, not ms). */\nvar SESSION_TTL_SECONDS = SESSION_TTL_MS / 1e3;\nvar _revoked = /* @__PURE__ */ new Set();\nvar _testOverrides = /* @__PURE__ */ new Set();\n/**\n* Read the operator UI login password from the host environment or the\n* file-based stack secret (`knowledge/secrets/op_ui_login_password`).\n*\n* This is the single source of truth for the password — login verification\n* (helpers.ts) and token signing below both use it, so they can never\n* disagree about whether a password exists. Returns \"\" when neither source\n* has a value (first boot, before the wizard runs).\n*/\nfunction getUiLoginPassword() {\n\tconst envValue = process.env.OP_UI_LOGIN_PASSWORD;\n\tif (envValue) return envValue;\n\treturn readSecret(resolveOpenPalmHome(), \"op_ui_login_password\")?.trimEnd() ?? \"\";\n}\n/** Sign `expiresAt` with the login password. Returns null when no password is configured. */\nfunction signToken(expiresAt) {\n\tconst secret = getUiLoginPassword();\n\tif (!secret) return null;\n\treturn createHmac(\"sha256\", secret).update(String(expiresAt)).digest(\"hex\");\n}\n/**\n* Mint a new signed session token with a 14-day TTL.\n* Place the result in the `op_session` cookie.\n* Throws when no login password is configured — callers must verify a\n* password exists (they all do: login/session/setup-complete check first).\n*/\nfunction createSession() {\n\tconst expiresAt = Date.now() + SESSION_TTL_MS;\n\tconst sig = signToken(expiresAt);\n\tif (sig === null) throw new Error(\"Cannot mint a session: no UI login password is configured.\");\n\treturn `${expiresAt}.${sig}`;\n}\n/**\n* Return true iff `token` is a valid, non-expired, non-revoked session.\n*/\nfunction validateSession(token) {\n\tif (!token) return false;\n\tif (_testOverrides.has(token)) return true;\n\tif (_revoked.has(token)) return false;\n\tconst dot = token.lastIndexOf(\".\");\n\tif (dot < 0) return false;\n\tconst expiresAt = Number(token.slice(0, dot));\n\tif (!Number.isFinite(expiresAt) || Date.now() >= expiresAt) return false;\n\tconst sig = token.slice(dot + 1);\n\tconst expected = signToken(expiresAt);\n\tif (expected === null) return false;\n\tif (sig.length !== expected.length) return false;\n\treturn timingSafeEqual(Buffer.from(sig), Buffer.from(expected));\n}\n/**\n* Sliding renewal: validate the old token, return a new one with a fresh\n* 14-day TTL, or return false if the old token is invalid/expired.\n* The caller must place the returned token in the `op_session` cookie.\n*/\nfunction touchSession(token) {\n\tif (!validateSession(token)) return false;\n\treturn createSession();\n}\n/**\n* Revoke a token (logout). The browser cookie must also be cleared by the caller.\n* The revocation list survives until the next server restart. Entries whose\n* embedded expiry has passed are pruned on each call — an expired token fails\n* validation anyway, so keeping it listed is pure memory growth.\n*/\nfunction invalidateSession(token) {\n\tconst now = Date.now();\n\tfor (const revoked of _revoked) {\n\t\tconst expiresAt = Number(revoked.slice(0, revoked.lastIndexOf(\".\")));\n\t\tif (!Number.isFinite(expiresAt) || expiresAt <= now) _revoked.delete(revoked);\n\t}\n\t_revoked.add(token);\n}\n//#endregion\n//#region src/lib/server/helpers.ts\n/**\n* Lazy OpenCode client bound to the currently active endpoint. The client is\n* recreated whenever the active endpoint URL changes so user switches in the\n* UI take effect on the next call.\n*/\nvar _openCodeClient;\nvar _openCodeClientUrl;\nfunction getOpenCodeClient() {\n\tconst { url } = getActiveEndpoint();\n\tif (!_openCodeClient || url !== _openCodeClientUrl) {\n\t\t_openCodeClient = createOpenCodeClient({ baseUrl: url });\n\t\t_openCodeClientUrl = url;\n\t}\n\treturn _openCodeClient;\n}\nfunction safeTokenCompare(a, b) {\n\tif (typeof a !== \"string\" || typeof b !== \"string\") return false;\n\tif (!a || !b) return false;\n\treturn timingSafeEqual(createHash(\"sha256\").update(a).digest(), createHash(\"sha256\").update(b).digest());\n}\n/** Standard JSON response with request ID header */\nfunction jsonResponse(status, body, requestId = \"\") {\n\treturn new Response(JSON.stringify(body), {\n\t\tstatus,\n\t\theaders: {\n\t\t\t\"content-type\": \"application/json\",\n\t\t\t...requestId ? { \"x-request-id\": requestId } : {}\n\t\t}\n\t});\n}\n/** Standard error envelope */\nfunction errorResponse(status, error, message, details = {}, requestId = \"\") {\n\treturn jsonResponse(status, {\n\t\terror,\n\t\tmessage,\n\t\tdetails,\n\t\trequestId\n\t}, requestId);\n}\n/** Extract or generate request ID */\nfunction getRequestId(event) {\n\treturn event.request.headers.get(\"x-request-id\") || crypto.randomUUID();\n}\n/**\n* Extract raw session token from the `op_session` cookie.\n*\n* Phase 2 of the auth/proxy refactor (docs/technical/auth-and-proxy-refactor-plan.md)\n* removed the legacy `x-admin-token` / `Authorization: Bearer` header fallbacks.\n* The cookie is HttpOnly + SameSite=Strict and is the ONLY credential the browser\n* holds; XSS cannot read it and out-of-process callers must obtain a session via\n* `POST /admin/auth/login` (or `/session`) and present the cookie on subsequent\n* requests.\n*/\nfunction extractToken(event) {\n\tconst match = (event.request.headers.get(\"cookie\") ?? \"\").match(/(?:^|;\\s*)op_session=([^;]+)/);\n\tif (match) return match[1];\n\treturn \"\";\n}\n/** Check admin auth — returns error Response or null if OK */\nfunction requireAdmin(event, requestId) {\n\tif (!getUiLoginPassword()) return errorResponse(503, \"admin_not_configured\", \"OP_UI_LOGIN_PASSWORD has not been set. Complete setup first.\", {}, requestId);\n\tif (!validateSession(extractToken(event))) return errorResponse(401, \"unauthorized\", \"Missing or invalid credentials\", {}, requestId);\n\treturn null;\n}\n/**\n* Identify caller by the presented `op_session` cookie.\n*\n* Returns \"admin\" when the cookie holds a valid session token.\n*/\nfunction identifyCallerByToken(event) {\n\tif (!getUiLoginPassword()) return null;\n\tif (validateSession(extractToken(event))) return \"admin\";\n\treturn null;\n}\n/** Parse JSON body safely — returns discriminated result with error type */\nasync function parseJsonBody(request, maxBytes = 1048576) {\n\ttry {\n\t\tconst contentLength = request.headers.get(\"content-length\");\n\t\tif (contentLength && parseInt(contentLength, 10) > maxBytes) return { error: \"too_large\" };\n\t\treturn { data: await request.json() };\n\t} catch (e) {\n\t\tconsole.warn(\"[helpers] Failed to parse JSON request body\", e);\n\t\treturn { error: \"invalid_json\" };\n\t}\n}\n/** Convert a ParseJsonBodyError to an appropriate HTTP error response */\nfunction jsonBodyError(err, requestId) {\n\tif (err.error === \"too_large\") return errorResponse(413, \"too_large\", \"Request body too large\", {}, requestId);\n\treturn errorResponse(400, \"invalid_json\", \"Request body must be valid JSON\", {}, requestId);\n}\n/**\n* Auth + JSON body wrapper for admin POST/DELETE handlers.\n*\n* Replaces the 4-line boilerplate copy-pasted across 30+ routes:\n* const requestId = getRequestId(event);\n* const authError = requireAdmin(event, requestId);\n* if (authError) return authError;\n* const result = await parseJsonBody(event.request);\n* if ('error' in result) return jsonBodyError(result, requestId);\n*\n* Use for routes that need both auth and a JSON body. For auth-only or\n* GET routes, call `requireAdmin` directly.\n*/\nasync function withAdminBody(event, handler) {\n\tconst requestId = getRequestId(event);\n\tconst originError = checkOriginHeader(event.request, UI_PORT);\n\tif (originError) return originError;\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst result = await parseJsonBody(event.request);\n\tif (\"error\" in result) return jsonBodyError(result, requestId);\n\treturn handler({\n\t\trequestId,\n\t\tbody: result.data\n\t});\n}\n/**\n* Reject requests whose Host header does not match localhost or 127.0.0.1\n* on the configured admin port.\n*\n* @param request Incoming Request (or SvelteKit RequestEvent.request)\n* @param port The port this server is bound to (e.g. 3880 or 8100)\n* @returns A 400 Response if the host is rejected; null if allowed\n*/\nfunction checkHostHeader(request, port) {\n\tconst normalized = (request.headers.get(\"host\") ?? \"\").trim().replace(/\\.$/, \"\");\n\tif ([`localhost:${port}`, `127.0.0.1:${port}`].includes(normalized)) return null;\n\treturn new Response(JSON.stringify({\n\t\terror: \"invalid_host\",\n\t\thost: normalized,\n\t\tmessage: \"Request rejected: Host header does not match allowed hosts. The admin UI binds to loopback (127.0.0.1) only; reach it via localhost or front it with a reverse proxy/tunnel for remote access.\"\n\t}), {\n\t\tstatus: 400,\n\t\theaders: { \"content-type\": \"application/json\" }\n\t});\n}\n/**\n* Reject POST/PUT/DELETE requests whose Origin header does not match\n* localhost or 127.0.0.1. Requests with no Origin (non-browser clients)\n* are always allowed.\n*\n* @param request Incoming Request\n* @param port The port this server is bound to\n* @returns A 403 Response if the origin is rejected; null if allowed\n*/\nfunction checkOriginHeader(request, port) {\n\tconst method = request.method.toUpperCase();\n\tif (method === \"GET\" || method === \"HEAD\" || method === \"OPTIONS\") return null;\n\tconst origin = request.headers.get(\"origin\");\n\tif (!origin) return null;\n\ttry {\n\t\tconst u = new URL(origin);\n\t\tif ([`localhost:${port}`, `127.0.0.1:${port}`].includes(u.host)) return null;\n\t} catch {}\n\treturn new Response(JSON.stringify({\n\t\terror: \"forbidden_origin\",\n\t\torigin\n\t}), {\n\t\tstatus: 403,\n\t\theaders: { \"content-type\": \"application/json\" }\n\t});\n}\nvar UI_PORT = Number(process.env.PORT ?? 3880);\n//#endregion\nexport { invalidateSession as _, getOpenCodeClient as a, jsonBodyError as c, requireAdmin as d, safeTokenCompare as f, getUiLoginPassword as g, createSession as h, errorResponse as i, jsonResponse as l, SESSION_TTL_SECONDS as m, checkHostHeader as n, getRequestId as o, withAdminBody as p, checkOriginHeader as r, identifyCallerByToken as s, UI_PORT as t, parseJsonBody as u, touchSession as v };\n"],"names":[],"mappings":";;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,cAAc,GAAG,OAAO;AAC5B;AACG,IAAC,mBAAmB,GAAG,cAAc,GAAG;AAC3C,IAAI,QAAQ,mBAAmB,IAAI,GAAG,EAAE;AACxC,IAAI,cAAc,mBAAmB,IAAI,GAAG,EAAE;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,kBAAkB,GAAG;AAC9B,CAAC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB;AAClD,CAAC,IAAI,QAAQ,EAAE,OAAO,QAAQ;AAC9B,CAAC,OAAO,UAAU,CAAC,mBAAmB,EAAE,EAAE,sBAAsB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;AAClF;AACA;AACA,SAAS,SAAS,CAAC,SAAS,EAAE;AAC9B,CAAC,MAAM,MAAM,GAAG,kBAAkB,EAAE;AACpC,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI;AACzB,CAAC,OAAO,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,aAAa,GAAG;AACzB,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc;AAC9C,CAAC,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC;AACjC,CAAC,IAAI,GAAG,KAAK,IAAI,EAAE,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC;AAChG,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7B;AACA;AACA;AACA;AACA,SAAS,eAAe,CAAC,KAAK,EAAE;AAChC,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,KAAK;AACzB,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,IAAI;AAC3C,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK;AACtC,CAAC,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC;AACnC,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,OAAO,KAAK;AAC1B,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC9C,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,SAAS,EAAE,OAAO,KAAK;AACzE,CAAC,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;AACjC,CAAC,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC;AACtC,CAAC,IAAI,QAAQ,KAAK,IAAI,EAAE,OAAO,KAAK;AACpC,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE,OAAO,KAAK;AACjD,CAAC,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAChE;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,YAAY,CAAC,KAAK,EAAE;AAC7B,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK;AAC1C,CAAC,OAAO,aAAa,EAAE;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB,CAAC,KAAK,EAAE;AAClC,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;AACvB,CAAC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;AACjC,EAAE,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;AACtE,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;AAC/E,CAAC;AACD,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,eAAe;AACnB,IAAI,kBAAkB;AACtB,SAAS,iBAAiB,GAAG;AAC7B,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,iBAAiB,EAAE;AACpC,CAAC,IAAI,CAAC,eAAe,IAAI,GAAG,KAAK,kBAAkB,EAAE;AACrD,EAAE,eAAe,GAAG,oBAAoB,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AAC1D,EAAE,kBAAkB,GAAG,GAAG;AAC1B,CAAC;AACD,CAAC,OAAO,eAAe;AACvB;AACA,SAAS,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE;AAChC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,OAAO,KAAK;AACjE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,KAAK;AAC3B,CAAC,OAAO,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;AACzG;AACA;AACA,SAAS,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,GAAG,EAAE,EAAE;AACpD,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;AAC3C,EAAE,MAAM;AACR,EAAE,OAAO,EAAE;AACX,GAAG,cAAc,EAAE,kBAAkB;AACrC,GAAG,GAAG,SAAS,GAAG,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG;AAClD;AACA,EAAE,CAAC;AACH;AACA;AACA,SAAS,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE;AAC7E,CAAC,OAAO,YAAY,CAAC,MAAM,EAAE;AAC7B,EAAE,KAAK;AACP,EAAE,OAAO;AACT,EAAE,OAAO;AACT,EAAE;AACF,EAAE,EAAE,SAAS,CAAC;AACd;AACA;AACA,SAAS,YAAY,CAAC,KAAK,EAAE;AAC7B,CAAC,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,YAAY,CAAC,KAAK,EAAE;AAC7B,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,8BAA8B,CAAC;AAChG,CAAC,IAAI,KAAK,EAAE,OAAO,KAAK,CAAC,CAAC,CAAC;AAC3B,CAAC,OAAO,EAAE;AACV;AACA;AACA,SAAS,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE;AACxC,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,sBAAsB,EAAE,8DAA8D,EAAE,EAAE,EAAE,SAAS,CAAC;AAC5J,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,gCAAgC,EAAE,EAAE,EAAE,SAAS,CAAC;AACtI,CAAC,OAAO,IAAI;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,qBAAqB,CAAC,KAAK,EAAE;AACtC,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,OAAO,IAAI;AACvC,CAAC,IAAI,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,OAAO;AACzD,CAAC,OAAO,IAAI;AACZ;AACA;AACA,eAAe,aAAa,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,EAAE;AAC1D,CAAC,IAAI;AACL,EAAE,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;AAC7D,EAAE,IAAI,aAAa,IAAI,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC,GAAG,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE;AAC5F,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,EAAE,EAAE;AACvC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,CAAC,IAAI,CAAC,6CAA6C,EAAE,CAAC,CAAC;AAChE,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE;AAClC,CAAC;AACD;AACA;AACA,SAAS,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE;AACvC,CAAC,IAAI,GAAG,CAAC,KAAK,KAAK,WAAW,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,wBAAwB,EAAE,EAAE,EAAE,SAAS,CAAC;AAC/G,CAAC,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,iCAAiC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE;AAC7C,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,WAAW,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC;AAC9D,CAAC,IAAI,WAAW,EAAE,OAAO,WAAW;AACpC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;AAClD,CAAC,IAAI,OAAO,IAAI,MAAM,EAAE,OAAO,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC;AAC/D,CAAC,OAAO,OAAO,CAAC;AAChB,EAAE,SAAS;AACX,EAAE,IAAI,EAAE,MAAM,CAAC;AACf,EAAE,CAAC;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE;AACxC,CAAC,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;AACjF,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,IAAI;AACjF,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;AACpC,EAAE,KAAK,EAAE,cAAc;AACvB,EAAE,IAAI,EAAE,UAAU;AAClB,EAAE,OAAO,EAAE;AACX,EAAE,CAAC,EAAE;AACL,EAAE,MAAM,EAAE,GAAG;AACb,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB;AAC/C,EAAE,CAAC;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB,CAAC,OAAO,EAAE,IAAI,EAAE;AAC1C,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE;AAC5C,CAAC,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,SAAS,EAAE,OAAO,IAAI;AAC/E,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC7C,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI;AACzB,CAAC,IAAI;AACL,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC;AAC3B,EAAE,IAAI,CAAC,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,IAAI;AAC9E,CAAC,CAAC,CAAC,MAAM,CAAC;AACV,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;AACpC,EAAE,KAAK,EAAE,kBAAkB;AAC3B,EAAE;AACF,EAAE,CAAC,EAAE;AACL,EAAE,MAAM,EAAE,GAAG;AACb,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB;AAC/C,EAAE,CAAC;AACH;AACG,IAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI;;;;"}
@@ -1,9 +1,9 @@
1
1
  import { r as redirect } from './exports-D1quPX8S.js';
2
- import { aa as isSetupComplete, aK as resolveOpenPalmHome, q as classifyLocalInstall, w as composePs, m as buildComposeOptions, K as deriveLaunchStatus, Q as detectRuntime, L as deriveLocalStackState, r as collectBindAddressWarnings, av as readSecret, az as readStackRuntimeEnv, F as createLogger } from './src-NhUHZOQF.js';
3
- import { g as getState } from './state-BateNC-M.js';
4
- import { b as listRemoteStatuses } from './endpoints-BltANYH6.js';
5
- import { c as checkHostHeader, a as checkOriginHeader, i as identifyCallerByToken, t as touchSession, U as UI_PORT } from './helpers-13WhVOMk.js';
6
- import { S as SESSION_COOKIE_NAME, s as sessionCookieHeader } from './session-cookie-DErsjR7e.js';
2
+ import { aa as isSetupComplete, aK as resolveOpenPalmHome, q as classifyLocalInstall, w as composePs, m as buildComposeOptions, K as deriveLaunchStatus, Q as detectRuntime, L as deriveLocalStackState, r as collectBindAddressWarnings, av as readSecret, az as readStackRuntimeEnv, F as createLogger } from './src-DfLnu33Z.js';
3
+ import { g as getState } from './state-BH8Kvc-z.js';
4
+ import { b as listRemoteStatuses } from './endpoints-CM0QyBW3.js';
5
+ import { c as checkHostHeader, a as checkOriginHeader, i as identifyCallerByToken, t as touchSession, U as UI_PORT } from './helpers-Du6wAFM1.js';
6
+ import { S as SESSION_COOKIE_NAME, s as sessionCookieHeader } from './session-cookie-Dpvcmedh.js';
7
7
  import { c as computeFeatureFlags } from './features-h0rPqe2e.js';
8
8
  import './utils-BSRjJDrZ.js';
9
9
  import './chunk-CLZ62Ad-.js';
@@ -152,4 +152,4 @@ var handle = async ({ event, resolve }) => {
152
152
  };
153
153
 
154
154
  export { _resetLaunchCache, handle };
155
- //# sourceMappingURL=hooks.server-ChI0JhLw.js.map
155
+ //# sourceMappingURL=hooks.server-WbZdXFB1.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.server-ChI0JhLw.js","sources":["../../../.svelte-kit/adapter-node/entries/hooks.server.js"],"sourcesContent":["import { i as redirect } from \"../chunks/exports.js\";\nimport { $ as composePs, G as deriveLocalStackState, Jt as readSecret, K as detectRuntime, N as buildComposeOptions, U as classifyLocalInstall, Ut as readStackRuntimeEnv, W as deriveLaunchStatus, dt as isSetupComplete, fn as createLogger, sn as resolveOpenPalmHome, t as collectBindAddressWarnings } from \"../chunks/src.js\";\nimport { t as getState } from \"../chunks/state.js\";\nimport { a as listRemoteStatuses } from \"../chunks/endpoints.js\";\nimport { n as checkHostHeader, r as checkOriginHeader, s as identifyCallerByToken, t as UI_PORT, v as touchSession } from \"../chunks/helpers.js\";\nimport { r as sessionCookieHeader, t as SESSION_COOKIE_NAME } from \"../chunks/session-cookie.js\";\nimport { t as computeFeatureFlags } from \"../chunks/features.js\";\n//#region src/hooks.server.ts\nvar logger = createLogger(\"admin\");\nvar startupApplyDone = false;\nvar setupCompleteMemo = false;\nvar localStatusCache = null;\n/** Test-only: clear the 5s launch-routing cache so each test resolves fresh. */\nfunction _resetLaunchCache() {\n\tlocalStatusCache = null;\n}\nfunction loadProcessEnv() {\n\tif (startupApplyDone) return;\n\tstartupApplyDone = true;\n\tfor (const line of collectBindAddressWarnings(process.env)) logger.warn(line);\n\ttry {\n\t\tconst state = getState();\n\t\tif (!process.env.OP_UI_LOGIN_PASSWORD) {\n\t\t\tconst pw = readSecret(state.homeDir, \"op_ui_login_password\");\n\t\t\tif (pw) process.env.OP_UI_LOGIN_PASSWORD = pw.trimEnd();\n\t\t}\n\t\tconst stackVars = readStackRuntimeEnv(state.homeDir);\n\t\tfor (const [k, v] of Object.entries(stackVars)) if (v && !process.env[k]) process.env[k] = v;\n\t} catch (err) {\n\t\tlogger.error(\"process env load failed\", { error: String(err) });\n\t}\n}\nloadProcessEnv();\nvar SETUP_PATHS = [\n\t\"/setup\",\n\t\"/api/setup\",\n\t\"/health\",\n\t\"/guardian/health\"\n];\nfunction isLocalhostAddress(ip) {\n\treturn ip === \"127.0.0.1\" || ip === \"::1\" || ip === \"::ffff:127.0.0.1\";\n}\nfunction parseComposePsServices(stdout) {\n\tconst services = [];\n\tfor (const line of stdout.split(\"\\n\")) {\n\t\tconst trimmed = line.trim();\n\t\tif (!trimmed) continue;\n\t\ttry {\n\t\t\tconst parsed = JSON.parse(trimmed);\n\t\t\tservices.push({\n\t\t\t\tservice: String(parsed.Service ?? parsed.Name ?? \"\"),\n\t\t\t\tstate: String(parsed.State ?? \"\"),\n\t\t\t\thealth: String(parsed.Health ?? \"\")\n\t\t\t});\n\t\t} catch {\n\t\t\tcontinue;\n\t\t}\n\t}\n\treturn services;\n}\nasync function resolveLaunchRouting() {\n\tif (localStatusCache && localStatusCache.expiresAt > Date.now()) return localStatusCache.value;\n\tconst state = getState();\n\tconst installState = classifyLocalInstall(state.stackDir, state.homeDir);\n\tconst composeResult = await composePs(buildComposeOptions(state));\n\tconst value = {\n\t\tinstallState,\n\t\tlaunch: deriveLaunchStatus({\n\t\t\tlocal: {\n\t\t\t\tstate: deriveLocalStackState(installState, composeResult.ok ? parseComposePsServices(composeResult.stdout) : []),\n\t\t\t\truntime: installState === \"not_installed\" ? await detectRuntime() : void 0,\n\t\t\t\tdetail: { installState }\n\t\t\t},\n\t\t\tremotes: await listRemoteStatuses()\n\t\t})\n\t};\n\tlocalStatusCache = {\n\t\tvalue,\n\t\texpiresAt: Date.now() + 5e3\n\t};\n\treturn value;\n}\nvar handle = async ({ event, resolve }) => {\n\tconst hostError = checkHostHeader(event.request, UI_PORT);\n\tif (hostError) return hostError;\n\tconst originError = checkOriginHeader(event.request, UI_PORT);\n\tif (originError) return originError;\n\tconst path = event.url.pathname;\n\tif (path.startsWith(\"/admin\") && !computeFeatureFlags().admin) redirect(302, \"/chat\");\n\tconst isSetupPath = SETUP_PATHS.some((p) => path === p || path.startsWith(p + \"/\"));\n\tconst setupComplete = setupCompleteMemo || isSetupComplete(resolveOpenPalmHome());\n\tif (setupComplete) setupCompleteMemo = true;\n\tif (isSetupPath && !setupComplete) {\n\t\tif (!isLocalhostAddress(event.getClientAddress())) return new Response(JSON.stringify({\n\t\t\terror: \"setup_localhost_only\",\n\t\t\tmessage: \"Setup is only accessible from the host machine until installation is complete.\"\n\t\t}), {\n\t\t\tstatus: 403,\n\t\t\theaders: { \"content-type\": \"application/json\" }\n\t\t});\n\t}\n\tif (!isSetupPath) {\n\t\tconst { installState, launch } = await resolveLaunchRouting();\n\t\tconst desiredPath = installState === \"setup_incomplete\" && launch.local.state === \"running\" ? \"/splash\" : launch.recommendedRoute === \"chat\" ? \"/chat\" : \"/splash\";\n\t\tconst usageRoute = path.startsWith(\"/chat\") || path.startsWith(\"/advanced\");\n\t\tconst exempt = path.startsWith(\"/api/\") || path.startsWith(\"/proxy/\") || path.startsWith(\"/login\") || path.startsWith(\"/health\") || path.startsWith(\"/guardian/health\") || path.startsWith(\"/admin\") || path.startsWith(\"/splash\") || usageRoute;\n\t\tif (path === \"/\" || path !== desiredPath && !exempt) redirect(302, desiredPath);\n\t}\n\tevent.locals.role = identifyCallerByToken(event);\n\tlet renewedCookie = null;\n\tif (event.locals.role === \"admin\") {\n\t\tconst match = (event.request.headers.get(\"cookie\") ?? \"\").match(new RegExp(`(?:^|;\\\\s*)${SESSION_COOKIE_NAME}=([^;]+)`));\n\t\tconst renewed = match ? touchSession(match[1]) : false;\n\t\tif (renewed) renewedCookie = sessionCookieHeader(renewed, event.request);\n\t}\n\tconst isAuthPath = path === \"/login\" || path.startsWith(\"/login/\");\n\tif (event.request.method === \"GET\" && (event.request.headers.get(\"accept\") ?? \"\").includes(\"text/html\") && !event.locals.role && !isSetupPath && !isAuthPath) {\n\t\tconst redirectTo = path + event.url.search;\n\t\tredirect(302, `/login?redirectTo=${encodeURIComponent(redirectTo)}`);\n\t}\n\tconst response = await resolve(event);\n\tif (renewedCookie) {\n\t\tif (!(response.headers.get(\"set-cookie\") ?? \"\").includes(`op_session=`)) response.headers.append(\"set-cookie\", renewedCookie);\n\t}\n\tresponse.headers.set(\"X-Frame-Options\", path === \"/admin/akm/health-report\" ? \"SAMEORIGIN\" : \"DENY\");\n\tresponse.headers.set(\"X-Content-Type-Options\", \"nosniff\");\n\tresponse.headers.set(\"Referrer-Policy\", \"no-referrer\");\n\treturn response;\n};\n//#endregion\nexport { _resetLaunchCache, handle };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.server-WbZdXFB1.js","sources":["../../../.svelte-kit/adapter-node/entries/hooks.server.js"],"sourcesContent":["import { i as redirect } from \"../chunks/exports.js\";\nimport { $ as composePs, G as deriveLocalStackState, Jt as readSecret, K as detectRuntime, N as buildComposeOptions, U as classifyLocalInstall, Ut as readStackRuntimeEnv, W as deriveLaunchStatus, dt as isSetupComplete, fn as createLogger, sn as resolveOpenPalmHome, t as collectBindAddressWarnings } from \"../chunks/src.js\";\nimport { t as getState } from \"../chunks/state.js\";\nimport { a as listRemoteStatuses } from \"../chunks/endpoints.js\";\nimport { n as checkHostHeader, r as checkOriginHeader, s as identifyCallerByToken, t as UI_PORT, v as touchSession } from \"../chunks/helpers.js\";\nimport { r as sessionCookieHeader, t as SESSION_COOKIE_NAME } from \"../chunks/session-cookie.js\";\nimport { t as computeFeatureFlags } from \"../chunks/features.js\";\n//#region src/hooks.server.ts\nvar logger = createLogger(\"admin\");\nvar startupApplyDone = false;\nvar setupCompleteMemo = false;\nvar localStatusCache = null;\n/** Test-only: clear the 5s launch-routing cache so each test resolves fresh. */\nfunction _resetLaunchCache() {\n\tlocalStatusCache = null;\n}\nfunction loadProcessEnv() {\n\tif (startupApplyDone) return;\n\tstartupApplyDone = true;\n\tfor (const line of collectBindAddressWarnings(process.env)) logger.warn(line);\n\ttry {\n\t\tconst state = getState();\n\t\tif (!process.env.OP_UI_LOGIN_PASSWORD) {\n\t\t\tconst pw = readSecret(state.homeDir, \"op_ui_login_password\");\n\t\t\tif (pw) process.env.OP_UI_LOGIN_PASSWORD = pw.trimEnd();\n\t\t}\n\t\tconst stackVars = readStackRuntimeEnv(state.homeDir);\n\t\tfor (const [k, v] of Object.entries(stackVars)) if (v && !process.env[k]) process.env[k] = v;\n\t} catch (err) {\n\t\tlogger.error(\"process env load failed\", { error: String(err) });\n\t}\n}\nloadProcessEnv();\nvar SETUP_PATHS = [\n\t\"/setup\",\n\t\"/api/setup\",\n\t\"/health\",\n\t\"/guardian/health\"\n];\nfunction isLocalhostAddress(ip) {\n\treturn ip === \"127.0.0.1\" || ip === \"::1\" || ip === \"::ffff:127.0.0.1\";\n}\nfunction parseComposePsServices(stdout) {\n\tconst services = [];\n\tfor (const line of stdout.split(\"\\n\")) {\n\t\tconst trimmed = line.trim();\n\t\tif (!trimmed) continue;\n\t\ttry {\n\t\t\tconst parsed = JSON.parse(trimmed);\n\t\t\tservices.push({\n\t\t\t\tservice: String(parsed.Service ?? parsed.Name ?? \"\"),\n\t\t\t\tstate: String(parsed.State ?? \"\"),\n\t\t\t\thealth: String(parsed.Health ?? \"\")\n\t\t\t});\n\t\t} catch {\n\t\t\tcontinue;\n\t\t}\n\t}\n\treturn services;\n}\nasync function resolveLaunchRouting() {\n\tif (localStatusCache && localStatusCache.expiresAt > Date.now()) return localStatusCache.value;\n\tconst state = getState();\n\tconst installState = classifyLocalInstall(state.stackDir, state.homeDir);\n\tconst composeResult = await composePs(buildComposeOptions(state));\n\tconst value = {\n\t\tinstallState,\n\t\tlaunch: deriveLaunchStatus({\n\t\t\tlocal: {\n\t\t\t\tstate: deriveLocalStackState(installState, composeResult.ok ? parseComposePsServices(composeResult.stdout) : []),\n\t\t\t\truntime: installState === \"not_installed\" ? await detectRuntime() : void 0,\n\t\t\t\tdetail: { installState }\n\t\t\t},\n\t\t\tremotes: await listRemoteStatuses()\n\t\t})\n\t};\n\tlocalStatusCache = {\n\t\tvalue,\n\t\texpiresAt: Date.now() + 5e3\n\t};\n\treturn value;\n}\nvar handle = async ({ event, resolve }) => {\n\tconst hostError = checkHostHeader(event.request, UI_PORT);\n\tif (hostError) return hostError;\n\tconst originError = checkOriginHeader(event.request, UI_PORT);\n\tif (originError) return originError;\n\tconst path = event.url.pathname;\n\tif (path.startsWith(\"/admin\") && !computeFeatureFlags().admin) redirect(302, \"/chat\");\n\tconst isSetupPath = SETUP_PATHS.some((p) => path === p || path.startsWith(p + \"/\"));\n\tconst setupComplete = setupCompleteMemo || isSetupComplete(resolveOpenPalmHome());\n\tif (setupComplete) setupCompleteMemo = true;\n\tif (isSetupPath && !setupComplete) {\n\t\tif (!isLocalhostAddress(event.getClientAddress())) return new Response(JSON.stringify({\n\t\t\terror: \"setup_localhost_only\",\n\t\t\tmessage: \"Setup is only accessible from the host machine until installation is complete.\"\n\t\t}), {\n\t\t\tstatus: 403,\n\t\t\theaders: { \"content-type\": \"application/json\" }\n\t\t});\n\t}\n\tif (!isSetupPath) {\n\t\tconst { installState, launch } = await resolveLaunchRouting();\n\t\tconst desiredPath = installState === \"setup_incomplete\" && launch.local.state === \"running\" ? \"/splash\" : launch.recommendedRoute === \"chat\" ? \"/chat\" : \"/splash\";\n\t\tconst usageRoute = path.startsWith(\"/chat\") || path.startsWith(\"/advanced\");\n\t\tconst exempt = path.startsWith(\"/api/\") || path.startsWith(\"/proxy/\") || path.startsWith(\"/login\") || path.startsWith(\"/health\") || path.startsWith(\"/guardian/health\") || path.startsWith(\"/admin\") || path.startsWith(\"/splash\") || usageRoute;\n\t\tif (path === \"/\" || path !== desiredPath && !exempt) redirect(302, desiredPath);\n\t}\n\tevent.locals.role = identifyCallerByToken(event);\n\tlet renewedCookie = null;\n\tif (event.locals.role === \"admin\") {\n\t\tconst match = (event.request.headers.get(\"cookie\") ?? \"\").match(new RegExp(`(?:^|;\\\\s*)${SESSION_COOKIE_NAME}=([^;]+)`));\n\t\tconst renewed = match ? touchSession(match[1]) : false;\n\t\tif (renewed) renewedCookie = sessionCookieHeader(renewed, event.request);\n\t}\n\tconst isAuthPath = path === \"/login\" || path.startsWith(\"/login/\");\n\tif (event.request.method === \"GET\" && (event.request.headers.get(\"accept\") ?? \"\").includes(\"text/html\") && !event.locals.role && !isSetupPath && !isAuthPath) {\n\t\tconst redirectTo = path + event.url.search;\n\t\tredirect(302, `/login?redirectTo=${encodeURIComponent(redirectTo)}`);\n\t}\n\tconst response = await resolve(event);\n\tif (renewedCookie) {\n\t\tif (!(response.headers.get(\"set-cookie\") ?? \"\").includes(`op_session=`)) response.headers.append(\"set-cookie\", renewedCookie);\n\t}\n\tresponse.headers.set(\"X-Frame-Options\", path === \"/admin/akm/health-report\" ? \"SAMEORIGIN\" : \"DENY\");\n\tresponse.headers.set(\"X-Content-Type-Options\", \"nosniff\");\n\tresponse.headers.set(\"Referrer-Policy\", \"no-referrer\");\n\treturn response;\n};\n//#endregion\nexport { _resetLaunchCache, handle };\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { g as getActiveEndpoint } from './endpoints-BltANYH6.js';
1
+ import { g as getActiveEndpoint } from './endpoints-CM0QyBW3.js';
2
2
 
3
3
  //#region src/lib/server/opencode/http.ts
4
4
  /**
@@ -28,4 +28,4 @@ async function opencodeFetch(path, init) {
28
28
  }
29
29
 
30
30
  export { opencodeFetch as o };
31
- //# sourceMappingURL=http-4BaLbiCJ.js.map
31
+ //# sourceMappingURL=http-DMBsHHDN.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"http-4BaLbiCJ.js","sources":["../../../.svelte-kit/adapter-node/chunks/http.js"],"sourcesContent":["import { r as getActiveEndpoint } from \"./endpoints.js\";\n//#region src/lib/server/opencode/http.ts\n/**\n* HTTP transport for talking to the active OpenCode endpoint.\n*\n* Used by sibling modules (`config.ts`, `catalog.ts`) — not part of the\n* public API of `$lib/server/opencode`. Reads the active endpoint per-call\n* so user switches in the UI take effect immediately.\n*/\nasync function opencodeFetch(path, init) {\n\tconst endpoint = getActiveEndpoint();\n\tconst headers = {\n\t\t\"content-type\": \"application/json\",\n\t\t...init?.headers\n\t};\n\tif (endpoint.password) {\n\t\tconst user = endpoint.username || \"openpalm\";\n\t\theaders[\"authorization\"] = `Basic ${btoa(`${user}:${endpoint.password}`)}`;\n\t}\n\tconst response = await fetch(`${endpoint.url}${path}`, {\n\t\t...init,\n\t\theaders\n\t});\n\tif (!response.ok) throw new Error(`${init?.method ?? \"GET\"} ${path} failed with ${response.status}`);\n\tif (response.status === 204) return;\n\treturn await response.json();\n}\n//#endregion\nexport { opencodeFetch as t };\n"],"names":[],"mappings":";;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE;AACzC,CAAC,MAAM,QAAQ,GAAG,iBAAiB,EAAE;AACrC,CAAC,MAAM,OAAO,GAAG;AACjB,EAAE,cAAc,EAAE,kBAAkB;AACpC,EAAE,GAAG,IAAI,EAAE;AACX,EAAE;AACF,CAAC,IAAI,QAAQ,CAAC,QAAQ,EAAE;AACxB,EAAE,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,IAAI,UAAU;AAC9C,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5E,CAAC;AACD,CAAC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE;AACxD,EAAE,GAAG,IAAI;AACT,EAAE;AACF,EAAE,CAAC;AACH,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AACrG,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;AAC9B,CAAC,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE;AAC7B;;;;"}
1
+ {"version":3,"file":"http-DMBsHHDN.js","sources":["../../../.svelte-kit/adapter-node/chunks/http.js"],"sourcesContent":["import { r as getActiveEndpoint } from \"./endpoints.js\";\n//#region src/lib/server/opencode/http.ts\n/**\n* HTTP transport for talking to the active OpenCode endpoint.\n*\n* Used by sibling modules (`config.ts`, `catalog.ts`) — not part of the\n* public API of `$lib/server/opencode`. Reads the active endpoint per-call\n* so user switches in the UI take effect immediately.\n*/\nasync function opencodeFetch(path, init) {\n\tconst endpoint = getActiveEndpoint();\n\tconst headers = {\n\t\t\"content-type\": \"application/json\",\n\t\t...init?.headers\n\t};\n\tif (endpoint.password) {\n\t\tconst user = endpoint.username || \"openpalm\";\n\t\theaders[\"authorization\"] = `Basic ${btoa(`${user}:${endpoint.password}`)}`;\n\t}\n\tconst response = await fetch(`${endpoint.url}${path}`, {\n\t\t...init,\n\t\theaders\n\t});\n\tif (!response.ok) throw new Error(`${init?.method ?? \"GET\"} ${path} failed with ${response.status}`);\n\tif (response.status === 204) return;\n\treturn await response.json();\n}\n//#endregion\nexport { opencodeFetch as t };\n"],"names":[],"mappings":";;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE;AACzC,CAAC,MAAM,QAAQ,GAAG,iBAAiB,EAAE;AACrC,CAAC,MAAM,OAAO,GAAG;AACjB,EAAE,cAAc,EAAE,kBAAkB;AACpC,EAAE,GAAG,IAAI,EAAE;AACX,EAAE;AACF,CAAC,IAAI,QAAQ,CAAC,QAAQ,EAAE;AACxB,EAAE,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,IAAI,UAAU;AAC9C,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5E,CAAC;AACD,CAAC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE;AACxD,EAAE,GAAG,IAAI;AACT,EAAE;AACF,EAAE,CAAC;AACH,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AACrG,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;AAC9B,CAAC,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE;AAC7B;;;;"}
@@ -889,7 +889,7 @@ var options = {
889
889
  app: ({ head, body, assets, nonce, env }) => "<!doctype html>\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <meta name=\"theme-color\" content=\"#ffffff\" />\n <meta name=\"color-scheme\" content=\"light\" />\n <script>\n (() => {\n const storageKey = 'openpalm.theme';\n const darkThemeColor = '#161c22';\n const lightThemeColor = '#f9fafb';\n\n try {\n const stored = window.localStorage.getItem(storageKey);\n const preference = stored === 'light' || stored === 'dark' || stored === 'system' ? stored : 'system';\n const resolved = preference === 'system'\n ? (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light')\n : preference;\n const root = document.documentElement;\n root.setAttribute('data-theme', resolved);\n root.style.colorScheme = resolved;\n\n const themeColorMeta = document.querySelector('meta[name=\"theme-color\"]');\n if (themeColorMeta) {\n themeColorMeta.setAttribute('content', resolved === 'dark' ? darkThemeColor : lightThemeColor);\n }\n\n const colorSchemeMeta = document.querySelector('meta[name=\"color-scheme\"]');\n if (colorSchemeMeta) {\n colorSchemeMeta.setAttribute('content', resolved);\n }\n } catch {\n // Keep the default light metadata if storage access is unavailable.\n }\n })();\n <\/script>\n <link rel=\"preconnect\" href=\"https://fonts.googleapis.com\" />\n <link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap\"\n rel=\"stylesheet\"\n />\n " + head + "\n </head>\n <body data-sveltekit-preload-data=\"hover\">\n <div style=\"display: contents\">" + body + "</div>\n </body>\n</html>\n",
890
890
  error: ({ status, message }) => "<!doctype html>\n<html lang=\"en\">\n <head>\n <meta charset=\"utf-8\" />\n <title>" + message + "</title>\n\n <style>\n body {\n --bg: white;\n --fg: #222;\n --divider: #ccc;\n background: var(--bg);\n color: var(--fg);\n font-family:\n system-ui,\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n Roboto,\n Oxygen,\n Ubuntu,\n Cantarell,\n 'Open Sans',\n 'Helvetica Neue',\n sans-serif;\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100vh;\n margin: 0;\n }\n\n .error {\n display: flex;\n align-items: center;\n max-width: 32rem;\n margin: 0 1rem;\n }\n\n .status {\n font-weight: 200;\n font-size: 3rem;\n line-height: 1;\n position: relative;\n top: -0.05rem;\n }\n\n .message {\n border-left: 1px solid var(--divider);\n padding: 0 0 0 1rem;\n margin: 0 0 0 1rem;\n min-height: 2.5rem;\n display: flex;\n align-items: center;\n }\n\n .message h1 {\n font-weight: 400;\n font-size: 1em;\n margin: 0;\n }\n\n @media (prefers-color-scheme: dark) {\n body {\n --bg: #222;\n --fg: #ddd;\n --divider: #666;\n }\n }\n </style>\n </head>\n <body>\n <div class=\"error\">\n <span class=\"status\">" + status + "</span>\n <div class=\"message\">\n <h1>" + message + "</h1>\n </div>\n </div>\n </body>\n</html>\n"
891
891
  },
892
- version_hash: "16344d2"
892
+ version_hash: "dp2r2s"
893
893
  };
894
894
  async function get_hooks() {
895
895
  let handle;
@@ -897,7 +897,7 @@ async function get_hooks() {
897
897
  let handleError;
898
898
  let handleValidationError;
899
899
  let init;
900
- ({handle, handleFetch, handleError, handleValidationError, init} = await import('./hooks.server-ChI0JhLw.js'));
900
+ ({handle, handleFetch, handleError, handleValidationError, init} = await import('./hooks.server-WbZdXFB1.js'));
901
901
  let reroute;
902
902
  let transport;
903
903
  return {
@@ -912,4 +912,4 @@ async function get_hooks() {
912
912
  }
913
913
 
914
914
  export { IN_WEBCONTAINER as I, NULL_BODY_STATUS as N, disable_search as a, merge_tracing as b, resolve as c, decode_pathname as d, resolve_route as e, find_route as f, get_hooks as g, make_trackable as m, normalize_path as n, options as o, read_implementation as r, set_read_implementation as s, try_get_request_store as t, with_request_store as w };
915
- //# sourceMappingURL=internal-l3EWtEye.js.map
915
+ //# sourceMappingURL=internal-Dxoo2R05.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal-l3EWtEye.js","sources":["../../../.svelte-kit/adapter-node/chunks/server.js","../../../.svelte-kit/adapter-node/chunks/routing.js","../../../.svelte-kit/adapter-node/chunks/internal.js"],"sourcesContent":["//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/runtime/server/constants.js\nvar NULL_BODY_STATUS = [\n\t101,\n\t103,\n\t204,\n\t205,\n\t304\n];\nvar IN_WEBCONTAINER = !!globalThis.process?.versions?.webcontainer;\n//#endregion\n//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/exports/internal/event.js\n/** @import { RequestEvent } from '@sveltejs/kit' */\n/** @import { RequestStore } from 'types' */\n/** @import { AsyncLocalStorage } from 'node:async_hooks' */\n/** @type {RequestStore | null} */\nvar sync_store = null;\n/** @type {AsyncLocalStorage<RequestStore | null> | null} */\nvar als;\nimport(\"node:async_hooks\").then((hooks) => als = new hooks.AsyncLocalStorage()).catch(() => {});\nfunction get_request_store() {\n\tconst result = try_get_request_store();\n\tif (!result) {\n\t\tlet message = \"Could not get the request store.\";\n\t\tif (als) message += \" This is an internal error.\";\n\t\telse message += \" In environments without `AsyncLocalStorage`, the request store (used by e.g. remote functions) must be accessed synchronously, not after an `await`. If it was accessed synchronously then this is an internal error.\";\n\t\tthrow new Error(message);\n\t}\n\treturn result;\n}\nfunction try_get_request_store() {\n\treturn sync_store ?? als?.getStore() ?? null;\n}\n/**\n* @template T\n* @param {RequestStore | null} store\n* @param {() => T} fn\n*/\nfunction with_request_store(store, fn) {\n\ttry {\n\t\tsync_store = store;\n\t\treturn als ? als.run(store, fn) : fn();\n\t} finally {\n\t\tif (!IN_WEBCONTAINER) sync_store = null;\n\t}\n}\n//#endregion\n//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/exports/internal/server.js\n/**\n* @template {{ tracing: { enabled: boolean, root: import('@opentelemetry/api').Span, current: import('@opentelemetry/api').Span } }} T\n* @param {T} event_like\n* @param {import('@opentelemetry/api').Span} current\n* @returns {T}\n*/\nfunction merge_tracing(event_like, current) {\n\treturn {\n\t\t...event_like,\n\t\ttracing: {\n\t\t\t...event_like.tracing,\n\t\t\tcurrent\n\t\t}\n\t};\n}\n//#endregion\nexport { IN_WEBCONTAINER as a, with_request_store as i, get_request_store as n, NULL_BODY_STATUS as o, try_get_request_store as r, merge_tracing as t };\n","//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/utils/url.js\n/**\n* Matches a URI scheme. See https://www.rfc-editor.org/rfc/rfc3986#section-3.1\n* @type {RegExp}\n*/\nvar SCHEME = /^[a-z][a-z\\d+\\-.]+:/i;\nvar internal = new URL(\"sveltekit-internal://\");\n/**\n* @param {string} base\n* @param {string} path\n*/\nfunction resolve(base, path) {\n\tif (path[0] === \"/\" && path[1] === \"/\") return path;\n\tlet url = new URL(base, internal);\n\turl = new URL(path, url);\n\treturn url.protocol === internal.protocol ? url.pathname + url.search + url.hash : url.href;\n}\n/**\n* @param {string} path\n* @param {import('types').TrailingSlash} trailing_slash\n*/\nfunction normalize_path(path, trailing_slash) {\n\tif (path === \"/\" || trailing_slash === \"ignore\") return path;\n\tif (trailing_slash === \"never\") return path.endsWith(\"/\") ? path.slice(0, -1) : path;\n\telse if (trailing_slash === \"always\" && !path.endsWith(\"/\")) return path + \"/\";\n\treturn path;\n}\n/**\n* Decode pathname excluding %25 to prevent further double decoding of params\n* @param {string} pathname\n*/\nfunction decode_pathname(pathname) {\n\treturn pathname.split(\"%25\").map(decodeURI).join(\"%25\");\n}\n/** @param {Record<string, string>} params */\nfunction decode_params(params) {\n\tfor (const key in params) params[key] = decodeURIComponent(params[key]);\n\treturn params;\n}\n/**\n* @param {URL} url\n* @param {() => void} callback\n* @param {(search_param: string) => void} search_params_callback\n* @param {boolean} [allow_hash]\n*/\nfunction make_trackable(url, callback, search_params_callback, allow_hash = false) {\n\tconst tracked = new URL(url);\n\tObject.defineProperty(tracked, \"searchParams\", {\n\t\tvalue: new Proxy(tracked.searchParams, { get(obj, key) {\n\t\t\tif (key === \"get\" || key === \"getAll\" || key === \"has\") return (param, ...rest) => {\n\t\t\t\tsearch_params_callback(param);\n\t\t\t\treturn obj[key](param, ...rest);\n\t\t\t};\n\t\t\tcallback();\n\t\t\tconst value = Reflect.get(obj, key);\n\t\t\treturn typeof value === \"function\" ? value.bind(obj) : value;\n\t\t} }),\n\t\tenumerable: true,\n\t\tconfigurable: true\n\t});\n\t/**\n\t* URL properties that could change during the lifetime of the page,\n\t* which excludes things like `origin`\n\t*/\n\tconst tracked_url_properties = [\n\t\t\"href\",\n\t\t\"pathname\",\n\t\t\"search\",\n\t\t\"toString\",\n\t\t\"toJSON\"\n\t];\n\tif (allow_hash) tracked_url_properties.push(\"hash\");\n\tfor (const property of tracked_url_properties) Object.defineProperty(tracked, property, {\n\t\tget() {\n\t\t\tcallback();\n\t\t\treturn url[property];\n\t\t},\n\t\tenumerable: true,\n\t\tconfigurable: true\n\t});\n\ttracked[Symbol.for(\"nodejs.util.inspect.custom\")] = (_depth, opts, inspect) => {\n\t\treturn inspect(url, opts);\n\t};\n\ttracked.searchParams[Symbol.for(\"nodejs.util.inspect.custom\")] = (_depth, opts, inspect) => {\n\t\treturn inspect(url.searchParams, opts);\n\t};\n\tif (!allow_hash) disable_hash(tracked);\n\treturn tracked;\n}\n/**\n* Disallow access to `url.hash` on the server and in `load`\n* @param {URL} url\n*/\nfunction disable_hash(url) {\n\tallow_nodejs_console_log(url);\n\tObject.defineProperty(url, \"hash\", { get() {\n\t\tthrow new Error(\"Cannot access event.url.hash. Consider using `page.url.hash` inside a component instead\");\n\t} });\n}\n/**\n* Disallow access to `url.search` and `url.searchParams` during prerendering\n* @param {URL} url\n*/\nfunction disable_search(url) {\n\tallow_nodejs_console_log(url);\n\tfor (const property of [\"search\", \"searchParams\"]) Object.defineProperty(url, property, { get() {\n\t\tthrow new Error(`Cannot access url.${property} on a page with prerendering enabled`);\n\t} });\n}\n/**\n* Allow URL to be console logged, bypassing disabled properties.\n* @param {URL} url\n*/\nfunction allow_nodejs_console_log(url) {\n\turl[Symbol.for(\"nodejs.util.inspect.custom\")] = (_depth, opts, inspect) => {\n\t\treturn inspect(new URL(url), opts);\n\t};\n}\n//#endregion\n//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/utils/routing.js\n/**\n* Returns `false` for `(group)` segments\n* @param {string} segment\n*/\nfunction affects_path(segment) {\n\treturn segment !== \"\" && !/^\\([^)]+\\)$/.test(segment);\n}\n/**\n* Splits a route id into its segments, removing segments that\n* don't affect the path (i.e. groups). The root route is represented by `/`\n* and will be returned as `['']`.\n* @param {string} route\n* @returns string[]\n*/\nfunction get_route_segments(route) {\n\treturn route.slice(1).split(\"/\").filter(affects_path);\n}\n/**\n* @param {RegExpMatchArray} match\n* @param {import('types').RouteParam[]} params\n* @param {Record<string, import('@sveltejs/kit').ParamMatcher>} matchers\n*/\nfunction exec(match, params, matchers) {\n\t/** @type {Record<string, string>} */\n\tconst result = {};\n\tconst values = match.slice(1);\n\tconst values_needing_match = values.filter((value) => value !== void 0);\n\tlet buffered = 0;\n\tfor (let i = 0; i < params.length; i += 1) {\n\t\tconst param = params[i];\n\t\tlet value = values[i - buffered];\n\t\tif (param.chained && param.rest && buffered) {\n\t\t\tvalue = values.slice(i - buffered, i + 1).filter((s) => s).join(\"/\");\n\t\t\tbuffered = 0;\n\t\t}\n\t\tif (value === void 0) if (param.rest) value = \"\";\n\t\telse continue;\n\t\tif (!param.matcher || matchers[param.matcher](value)) {\n\t\t\tresult[param.name] = value;\n\t\t\tconst next_param = params[i + 1];\n\t\t\tconst next_value = values[i + 1];\n\t\t\tif (next_param && !next_param.rest && next_param.optional && next_value && param.chained) buffered = 0;\n\t\t\tif (!next_param && !next_value && Object.keys(result).length === values_needing_match.length) buffered = 0;\n\t\t\tcontinue;\n\t\t}\n\t\tif (param.optional && param.chained) {\n\t\t\tbuffered++;\n\t\t\tcontinue;\n\t\t}\n\t\treturn;\n\t}\n\tif (buffered) return;\n\treturn result;\n}\nvar basic_param_pattern = /\\[(\\[)?(\\.\\.\\.)?(\\w+?)(?:=(\\w+))?\\]\\]?/g;\n/**\n* Populate a route ID with params to resolve a pathname.\n* @example\n* ```js\n* resolveRoute(\n* `/blog/[slug]/[...somethingElse]`,\n* {\n* slug: 'hello-world',\n* somethingElse: 'something/else'\n* }\n* ); // `/blog/hello-world/something/else`\n* ```\n* @param {string} id\n* @param {Record<string, string | undefined>} params\n* @returns {string}\n*/\nfunction resolve_route(id, params) {\n\tconst segments = get_route_segments(id);\n\tconst has_id_trailing_slash = id != \"/\" && id.endsWith(\"/\");\n\treturn \"/\" + segments.map((segment) => segment.replace(basic_param_pattern, (_, optional, rest, name) => {\n\t\tconst param_value = params[name];\n\t\tif (!param_value) {\n\t\t\tif (optional) return \"\";\n\t\t\tif (rest && param_value !== void 0) return \"\";\n\t\t\tthrow new Error(`Missing parameter '${name}' in route ${id}`);\n\t\t}\n\t\tif (param_value.startsWith(\"/\") || param_value.endsWith(\"/\")) throw new Error(`Parameter '${name}' in route ${id} cannot start or end with a slash -- this would cause an invalid route like foo//bar`);\n\t\treturn param_value;\n\t})).filter(Boolean).join(\"/\") + (has_id_trailing_slash ? \"/\" : \"\");\n}\n/**\n* Find the first route that matches the given path\n* @template {{pattern: RegExp, params: import('types').RouteParam[]}} Route\n* @param {string} path - The decoded pathname to match\n* @param {Route[]} routes\n* @param {Record<string, import('@sveltejs/kit').ParamMatcher>} matchers\n* @returns {{ route: Route, params: Record<string, string> } | null}\n*/\nfunction find_route(path, routes, matchers) {\n\tfor (const route of routes) {\n\t\tconst match = route.pattern.exec(path);\n\t\tif (!match) continue;\n\t\tconst matched = exec(match, route.params, matchers);\n\t\tif (matched) return {\n\t\t\troute,\n\t\t\tparams: decode_params(matched)\n\t\t};\n\t}\n\treturn null;\n}\n//#endregion\nexport { decode_pathname as a, normalize_path as c, decode_params as i, resolve as l, resolve_route as n, disable_search as o, SCHEME as r, make_trackable as s, find_route as t };\n","import \"./environment.js\";\nimport { A as component_context, B as hydration_failed, C as init_operations, D as flushSync, E as boundary, F as set_hydrate_node, I as set_hydrating, J as LEGACY_PROPS, K as async_mode_flag, L as hydration_mismatch, M as push, N as hydrate_node, P as hydrating, S as get_next_sibling, T as set, W as HYDRATION_ERROR, X as array_from, Z as define_property, _ as set_active_reaction, a as derived, b as create_text, c as render, f as is_passive_event, g as set_active_effect, h as get, it as setContext, j as pop, m as active_reaction, p as active_effect, v as component_root, w as mutable_source, x as get_first_child, y as clear_text_content } from \"./dev.js\";\nimport \"./index-server.js\";\n//#region \\0virtual:__sveltekit/server\nvar read_implementation = null;\nfunction set_read_implementation(fn) {\n\tread_implementation = fn;\n}\nfunction set_manifest(_) {}\n//#endregion\n//#region ../../node_modules/.bun/svelte@5.55.9+b050a890ad81aed8/node_modules/svelte/src/internal/client/dom/elements/events.js\n/**\n* Used on elements, as a map of event type -> event handler,\n* and on events themselves to track which element handled an event\n*/\nvar event_symbol = Symbol(\"events\");\n/** @type {Set<string>} */\nvar all_registered_events = /* @__PURE__ */ new Set();\n/** @type {Set<(events: Array<string>) => void>} */\nvar root_event_handles = /* @__PURE__ */ new Set();\nvar last_propagated_event = null;\n/**\n* @this {EventTarget}\n* @param {Event} event\n* @returns {void}\n*/\nfunction handle_event_propagation(event) {\n\tvar handler_element = this;\n\tvar owner_document = handler_element.ownerDocument;\n\tvar event_name = event.type;\n\tvar path = event.composedPath?.() || [];\n\tvar current_target = path[0] || event.target;\n\tlast_propagated_event = event;\n\tvar path_idx = 0;\n\tvar handled_at = last_propagated_event === event && event[event_symbol];\n\tif (handled_at) {\n\t\tvar at_idx = path.indexOf(handled_at);\n\t\tif (at_idx !== -1 && (handler_element === document || handler_element === window)) {\n\t\t\tevent[event_symbol] = handler_element;\n\t\t\treturn;\n\t\t}\n\t\tvar handler_idx = path.indexOf(handler_element);\n\t\tif (handler_idx === -1) return;\n\t\tif (at_idx <= handler_idx) path_idx = at_idx;\n\t}\n\tcurrent_target = path[path_idx] || event.target;\n\tif (current_target === handler_element) return;\n\tdefine_property(event, \"currentTarget\", {\n\t\tconfigurable: true,\n\t\tget() {\n\t\t\treturn current_target || owner_document;\n\t\t}\n\t});\n\tvar previous_reaction = active_reaction;\n\tvar previous_effect = active_effect;\n\tset_active_reaction(null);\n\tset_active_effect(null);\n\ttry {\n\t\t/**\n\t\t* @type {unknown}\n\t\t*/\n\t\tvar throw_error;\n\t\t/**\n\t\t* @type {unknown[]}\n\t\t*/\n\t\tvar other_errors = [];\n\t\twhile (current_target !== null) {\n\t\t\t/** @type {null | Element} */\n\t\t\tvar parent_element = current_target.assignedSlot || current_target.parentNode || current_target.host || null;\n\t\t\ttry {\n\t\t\t\tvar delegated = current_target[event_symbol]?.[event_name];\n\t\t\t\tif (delegated != null && (!current_target.disabled || event.target === current_target)) delegated.call(current_target, event);\n\t\t\t} catch (error) {\n\t\t\t\tif (throw_error) other_errors.push(error);\n\t\t\t\telse throw_error = error;\n\t\t\t}\n\t\t\tif (event.cancelBubble || parent_element === handler_element || parent_element === null) break;\n\t\t\tcurrent_target = parent_element;\n\t\t}\n\t\tif (throw_error) {\n\t\t\tfor (let error of other_errors) queueMicrotask(() => {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t\tthrow throw_error;\n\t\t}\n\t} finally {\n\t\tevent[event_symbol] = handler_element;\n\t\tdelete event.currentTarget;\n\t\tset_active_reaction(previous_reaction);\n\t\tset_active_effect(previous_effect);\n\t}\n}\nglobalThis?.window?.trustedTypes;\n//#endregion\n//#region ../../node_modules/.bun/svelte@5.55.9+b050a890ad81aed8/node_modules/svelte/src/internal/client/dom/template.js\n/**\n* @param {TemplateNode} start\n* @param {TemplateNode | null} end\n*/\nfunction assign_nodes(start, end) {\n\tvar effect = active_effect;\n\tif (effect.nodes === null) effect.nodes = {\n\t\tstart,\n\t\tend,\n\t\ta: null,\n\t\tt: null\n\t};\n}\n/**\n* Mounts a component to the given target and returns the exports and potentially the props (if compiled with `accessors: true`) of the component.\n* Transitions will play during the initial render unless the `intro` option is set to `false`.\n*\n* @template {Record<string, any>} Props\n* @template {Record<string, any>} Exports\n* @param {ComponentType<SvelteComponent<Props>> | Component<Props, Exports, any>} component\n* @param {MountOptions<Props>} options\n* @returns {Exports}\n*/\nfunction mount(component, options) {\n\treturn _mount(component, options);\n}\n/**\n* Hydrates a component on the given target and returns the exports and potentially the props (if compiled with `accessors: true`) of the component\n*\n* @template {Record<string, any>} Props\n* @template {Record<string, any>} Exports\n* @param {ComponentType<SvelteComponent<Props>> | Component<Props, Exports, any>} component\n* @param {{} extends Props ? {\n* \t\ttarget: Document | Element | ShadowRoot;\n* \t\tprops?: Props;\n* \t\tevents?: Record<string, (e: any) => any>;\n* \tcontext?: Map<any, any>;\n* \t\tintro?: boolean;\n* \t\trecover?: boolean;\n*\t\ttransformError?: (error: unknown) => unknown;\n* \t} : {\n* \t\ttarget: Document | Element | ShadowRoot;\n* \t\tprops: Props;\n* \t\tevents?: Record<string, (e: any) => any>;\n* \tcontext?: Map<any, any>;\n* \t\tintro?: boolean;\n* \t\trecover?: boolean;\n*\t\ttransformError?: (error: unknown) => unknown;\n* \t}} options\n* @returns {Exports}\n*/\nfunction hydrate(component, options) {\n\tinit_operations();\n\toptions.intro = options.intro ?? false;\n\tconst target = options.target;\n\tconst was_hydrating = hydrating;\n\tconst previous_hydrate_node = hydrate_node;\n\ttry {\n\t\tvar anchor = /* @__PURE__ */ get_first_child(target);\n\t\twhile (anchor && (anchor.nodeType !== 8 || anchor.data !== \"[\")) anchor = /* @__PURE__ */ get_next_sibling(anchor);\n\t\tif (!anchor) throw HYDRATION_ERROR;\n\t\tset_hydrating(true);\n\t\tset_hydrate_node(anchor);\n\t\tconst instance = _mount(component, {\n\t\t\t...options,\n\t\t\tanchor\n\t\t});\n\t\tset_hydrating(false);\n\t\treturn instance;\n\t} catch (error) {\n\t\tif (error instanceof Error && error.message.split(\"\\n\").some((line) => line.startsWith(\"https://svelte.dev/e/\"))) throw error;\n\t\tif (error !== HYDRATION_ERROR) console.warn(\"Failed to hydrate: \", error);\n\t\tif (options.recover === false) hydration_failed();\n\t\tinit_operations();\n\t\tclear_text_content(target);\n\t\tset_hydrating(false);\n\t\treturn mount(component, options);\n\t} finally {\n\t\tset_hydrating(was_hydrating);\n\t\tset_hydrate_node(previous_hydrate_node);\n\t}\n}\n/** @type {Map<EventTarget, Map<string, number>>} */\nvar listeners = /* @__PURE__ */ new Map();\n/**\n* @template {Record<string, any>} Exports\n* @param {ComponentType<SvelteComponent<any>> | Component<any>} Component\n* @param {MountOptions} options\n* @returns {Exports}\n*/\nfunction _mount(Component, { target, anchor, props = {}, events, context, intro = true, transformError }) {\n\tinit_operations();\n\t/** @type {Exports} */\n\tvar component = void 0;\n\tvar unmount = component_root(() => {\n\t\tvar anchor_node = anchor ?? target.appendChild(create_text());\n\t\tboundary(anchor_node, { pending: () => {} }, (anchor_node) => {\n\t\t\tpush({});\n\t\t\tvar ctx = component_context;\n\t\t\tif (context) ctx.c = context;\n\t\t\tif (events)\n /** @type {any} */ props.$$events = events;\n\t\t\tif (hydrating) assign_nodes(anchor_node, null);\n\t\t\tcomponent = Component(anchor_node, props) || {};\n\t\t\tif (hydrating) {\n\t\t\t\t/** @type {Effect & { nodes: EffectNodes }} */ active_effect.nodes.end = hydrate_node;\n\t\t\t\tif (hydrate_node === null || hydrate_node.nodeType !== 8 || hydrate_node.data !== \"]\") {\n\t\t\t\t\thydration_mismatch();\n\t\t\t\t\tthrow HYDRATION_ERROR;\n\t\t\t\t}\n\t\t\t}\n\t\t\tpop();\n\t\t}, transformError);\n\t\t/** @type {Set<string>} */\n\t\tvar registered_events = /* @__PURE__ */ new Set();\n\t\t/** @param {Array<string>} events */\n\t\tvar event_handle = (events) => {\n\t\t\tfor (var i = 0; i < events.length; i++) {\n\t\t\t\tvar event_name = events[i];\n\t\t\t\tif (registered_events.has(event_name)) continue;\n\t\t\t\tregistered_events.add(event_name);\n\t\t\t\tvar passive = is_passive_event(event_name);\n\t\t\t\tfor (const node of [target, document]) {\n\t\t\t\t\tvar counts = listeners.get(node);\n\t\t\t\t\tif (counts === void 0) {\n\t\t\t\t\t\tcounts = /* @__PURE__ */ new Map();\n\t\t\t\t\t\tlisteners.set(node, counts);\n\t\t\t\t\t}\n\t\t\t\t\tvar count = counts.get(event_name);\n\t\t\t\t\tif (count === void 0) {\n\t\t\t\t\t\tnode.addEventListener(event_name, handle_event_propagation, { passive });\n\t\t\t\t\t\tcounts.set(event_name, 1);\n\t\t\t\t\t} else counts.set(event_name, count + 1);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tevent_handle(array_from(all_registered_events));\n\t\troot_event_handles.add(event_handle);\n\t\treturn () => {\n\t\t\tfor (var event_name of registered_events) for (const node of [target, document]) {\n\t\t\t\tvar counts = listeners.get(node);\n\t\t\t\tvar count = counts.get(event_name);\n\t\t\t\tif (--count == 0) {\n\t\t\t\t\tnode.removeEventListener(event_name, handle_event_propagation);\n\t\t\t\t\tcounts.delete(event_name);\n\t\t\t\t\tif (counts.size === 0) listeners.delete(node);\n\t\t\t\t} else counts.set(event_name, count);\n\t\t\t}\n\t\t\troot_event_handles.delete(event_handle);\n\t\t\tif (anchor_node !== anchor) anchor_node.parentNode?.removeChild(anchor_node);\n\t\t};\n\t});\n\tmounted_components.set(component, unmount);\n\treturn component;\n}\n/**\n* References of the components that were mounted or hydrated.\n* Uses a `WeakMap` to avoid memory leaks.\n*/\nvar mounted_components = /* @__PURE__ */ new WeakMap();\n/**\n* Unmounts a component that was previously mounted using `mount` or `hydrate`.\n*\n* Since 5.13.0, if `options.outro` is `true`, [transitions](https://svelte.dev/docs/svelte/transition) will play before the component is removed from the DOM.\n*\n* Returns a `Promise` that resolves after transitions have completed if `options.outro` is true, or immediately otherwise (prior to 5.13.0, returns `void`).\n*\n* ```js\n* import { mount, unmount } from 'svelte';\n* import App from './App.svelte';\n*\n* const app = mount(App, { target: document.body });\n*\n* // later...\n* unmount(app, { outro: true });\n* ```\n* @param {Record<string, any>} component\n* @param {{ outro?: boolean }} [options]\n* @returns {Promise<void>}\n*/\nfunction unmount(component, options) {\n\tconst fn = mounted_components.get(component);\n\tif (fn) {\n\t\tmounted_components.delete(component);\n\t\treturn fn(options);\n\t}\n\treturn Promise.resolve();\n}\n//#endregion\n//#region ../../node_modules/.bun/svelte@5.55.9+b050a890ad81aed8/node_modules/svelte/src/legacy/legacy-client.js\n/** @import { ComponentConstructorOptions, ComponentType, SvelteComponent, Component } from 'svelte' */\n/**\n* Takes the component function and returns a Svelte 4 compatible component constructor.\n*\n* @deprecated Use this only as a temporary solution to migrate your imperative component code to Svelte 5.\n*\n* @template {Record<string, any>} Props\n* @template {Record<string, any>} Exports\n* @template {Record<string, any>} Events\n* @template {Record<string, any>} Slots\n*\n* @param {SvelteComponent<Props, Events, Slots> | Component<Props>} component\n* @returns {ComponentType<SvelteComponent<Props, Events, Slots> & Exports>}\n*/\nfunction asClassComponent$1(component) {\n\treturn class extends Svelte4Component {\n\t\t/** @param {any} options */\n\t\tconstructor(options) {\n\t\t\tsuper({\n\t\t\t\tcomponent,\n\t\t\t\t...options\n\t\t\t});\n\t\t}\n\t};\n}\n/**\n* Support using the component as both a class and function during the transition period\n* @typedef {{new (o: ComponentConstructorOptions): SvelteComponent;(...args: Parameters<Component<Record<string, any>>>): ReturnType<Component<Record<string, any>, Record<string, any>>>;}} LegacyComponentType\n*/\nvar Svelte4Component = class {\n\t/** @type {any} */\n\t#events;\n\t/** @type {Record<string, any>} */\n\t#instance;\n\t/**\n\t* @param {ComponentConstructorOptions & {\n\t* component: any;\n\t* }} options\n\t*/\n\tconstructor(options) {\n\t\tvar sources = /* @__PURE__ */ new Map();\n\t\t/**\n\t\t* @param {string | symbol} key\n\t\t* @param {unknown} value\n\t\t*/\n\t\tvar add_source = (key, value) => {\n\t\t\tvar s = /* @__PURE__ */ mutable_source(value, false, false);\n\t\t\tsources.set(key, s);\n\t\t\treturn s;\n\t\t};\n\t\tconst props = new Proxy({\n\t\t\t...options.props || {},\n\t\t\t$$events: {}\n\t\t}, {\n\t\t\tget(target, prop) {\n\t\t\t\treturn get(sources.get(prop) ?? add_source(prop, Reflect.get(target, prop)));\n\t\t\t},\n\t\t\thas(target, prop) {\n\t\t\t\tif (prop === LEGACY_PROPS) return true;\n\t\t\t\tget(sources.get(prop) ?? add_source(prop, Reflect.get(target, prop)));\n\t\t\t\treturn Reflect.has(target, prop);\n\t\t\t},\n\t\t\tset(target, prop, value) {\n\t\t\t\tset(sources.get(prop) ?? add_source(prop, value), value);\n\t\t\t\treturn Reflect.set(target, prop, value);\n\t\t\t}\n\t\t});\n\t\tthis.#instance = (options.hydrate ? hydrate : mount)(options.component, {\n\t\t\ttarget: options.target,\n\t\t\tanchor: options.anchor,\n\t\t\tprops,\n\t\t\tcontext: options.context,\n\t\t\tintro: options.intro ?? false,\n\t\t\trecover: options.recover,\n\t\t\ttransformError: options.transformError\n\t\t});\n\t\tif (!async_mode_flag && (!options?.props?.$$host || options.sync === false)) flushSync();\n\t\tthis.#events = props.$$events;\n\t\tfor (const key of Object.keys(this.#instance)) {\n\t\t\tif (key === \"$set\" || key === \"$destroy\" || key === \"$on\") continue;\n\t\t\tdefine_property(this, key, {\n\t\t\t\tget() {\n\t\t\t\t\treturn this.#instance[key];\n\t\t\t\t},\n\t\t\t\t/** @param {any} value */\n\t\t\t\tset(value) {\n\t\t\t\t\tthis.#instance[key] = value;\n\t\t\t\t},\n\t\t\t\tenumerable: true\n\t\t\t});\n\t\t}\n\t\tthis.#instance.$set = (next) => {\n\t\t\tObject.assign(props, next);\n\t\t};\n\t\tthis.#instance.$destroy = () => {\n\t\t\tunmount(this.#instance);\n\t\t};\n\t}\n\t/** @param {Record<string, any>} props */\n\t$set(props) {\n\t\tthis.#instance.$set(props);\n\t}\n\t/**\n\t* @param {string} event\n\t* @param {(...args: any[]) => any} callback\n\t* @returns {any}\n\t*/\n\t$on(event, callback) {\n\t\tthis.#events[event] = this.#events[event] || [];\n\t\t/** @param {any[]} args */\n\t\tconst cb = (...args) => callback.call(this, ...args);\n\t\tthis.#events[event].push(cb);\n\t\treturn () => {\n\t\t\tthis.#events[event] = this.#events[event].filter(\n\t\t\t\t/** @param {any} fn */\n\t\t\t\t(fn) => fn !== cb\n\t\t\t);\n\t\t};\n\t}\n\t$destroy() {\n\t\tthis.#instance.$destroy();\n\t}\n};\n//#endregion\n//#region ../../node_modules/.bun/svelte@5.55.9+b050a890ad81aed8/node_modules/svelte/src/legacy/legacy-server.js\n/** @import { SvelteComponent } from '../index.js' */\n/** @import { Csp } from '#server' */\n/** @typedef {{ head: string, html: string, css: { code: string, map: null }; hashes?: { script: `sha256-${string}`[] } }} LegacyRenderResult */\n/**\n* Takes a Svelte 5 component and returns a Svelte 4 compatible component constructor.\n*\n* @deprecated Use this only as a temporary solution to migrate your imperative component code to Svelte 5.\n*\n* @template {Record<string, any>} Props\n* @template {Record<string, any>} Exports\n* @template {Record<string, any>} Events\n* @template {Record<string, any>} Slots\n*\n* @param {SvelteComponent<Props, Events, Slots>} component\n* @returns {typeof SvelteComponent<Props, Events, Slots> & Exports}\n*/\nfunction asClassComponent(component) {\n\tconst component_constructor = asClassComponent$1(component);\n\t/** @type {(props?: {}, opts?: { $$slots?: {}; context?: Map<any, any>; csp?: Csp; transformError?: (error: unknown) => unknown }) => LegacyRenderResult & PromiseLike<LegacyRenderResult> } */\n\tconst _render = (props, { context, csp, transformError } = {}) => {\n\t\tconst result = render(component, {\n\t\t\tprops,\n\t\t\tcontext,\n\t\t\tcsp,\n\t\t\ttransformError\n\t\t});\n\t\tconst munged = Object.defineProperties({}, {\n\t\t\tcss: { value: {\n\t\t\t\tcode: \"\",\n\t\t\t\tmap: null\n\t\t\t} },\n\t\t\thead: { get: () => result.head },\n\t\t\thtml: { get: () => result.body },\n\t\t\tthen: { \n\t\t\t/**\n\t\t\t* this is not type-safe, but honestly it's the best I can do right now, and it's a straightforward function.\n\t\t\t*\n\t\t\t* @template TResult1\n\t\t\t* @template [TResult2=never]\n\t\t\t* @param { (value: LegacyRenderResult) => TResult1 } onfulfilled\n\t\t\t* @param { (reason: unknown) => TResult2 } onrejected\n\t\t\t*/\nvalue: (onfulfilled, onrejected) => {\n\t\t\t\tif (!async_mode_flag) {\n\t\t\t\t\tconst user_result = onfulfilled({\n\t\t\t\t\t\tcss: munged.css,\n\t\t\t\t\t\thead: munged.head,\n\t\t\t\t\t\thtml: munged.html\n\t\t\t\t\t});\n\t\t\t\t\treturn Promise.resolve(user_result);\n\t\t\t\t}\n\t\t\t\treturn result.then((result) => {\n\t\t\t\t\treturn onfulfilled({\n\t\t\t\t\t\tcss: munged.css,\n\t\t\t\t\t\thead: result.head,\n\t\t\t\t\t\thtml: result.body,\n\t\t\t\t\t\thashes: result.hashes\n\t\t\t\t\t});\n\t\t\t\t}, onrejected);\n\t\t\t} }\n\t\t});\n\t\treturn munged;\n\t};\n\tcomponent_constructor.render = _render;\n\treturn component_constructor;\n}\n//#endregion\n//#region .svelte-kit/generated/root.svelte\nfunction Root($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { stores, page, constructors, components = [], form, data_0 = null, data_1 = null, data_2 = null } = $$props;\n\t\tsetContext(\"__svelte__\", stores);\n\t\tstores.page.set(page);\n\t\tconst Pyramid_2 = derived(() => constructors[2]);\n\t\tif (constructors[1]) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\tconst Pyramid_0 = constructors[0];\n\t\t\tif (Pyramid_0) {\n\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\tPyramid_0($$renderer, {\n\t\t\t\t\tdata: data_0,\n\t\t\t\t\tform,\n\t\t\t\t\tparams: page.params,\n\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\tif (constructors[2]) {\n\t\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\t\tconst Pyramid_1 = constructors[1];\n\t\t\t\t\t\t\tif (Pyramid_1) {\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\t\t\t\t\tPyramid_1($$renderer, {\n\t\t\t\t\t\t\t\t\tdata: data_1,\n\t\t\t\t\t\t\t\t\tform,\n\t\t\t\t\t\t\t\t\tparams: page.params,\n\t\t\t\t\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\t\t\t\t\tif (Pyramid_2()) {\n\t\t\t\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\t\t\t\t\t\t\t\tPyramid_2()($$renderer, {\n\t\t\t\t\t\t\t\t\t\t\t\tdata: data_2,\n\t\t\t\t\t\t\t\t\t\t\t\tform,\n\t\t\t\t\t\t\t\t\t\t\t\tparams: page.params\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t\t\tconst Pyramid_1 = constructors[1];\n\t\t\t\t\t\t\tif (Pyramid_1) {\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\t\t\t\t\tPyramid_1($$renderer, {\n\t\t\t\t\t\t\t\t\tdata: data_1,\n\t\t\t\t\t\t\t\t\tform,\n\t\t\t\t\t\t\t\t\tparams: page.params\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t\t\t},\n\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t});\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t}\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\tconst Pyramid_0 = constructors[0];\n\t\t\tif (Pyramid_0) {\n\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\tPyramid_0($$renderer, {\n\t\t\t\t\tdata: data_0,\n\t\t\t\t\tform,\n\t\t\t\t\tparams: page.params\n\t\t\t\t});\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t}\n\t\t}\n\t\t$$renderer.push(`<!--]--> `);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]-->`);\n\t});\n}\n//#endregion\n//#region .svelte-kit/generated/server/internal.js\nvar options = {\n\tapp_template_contains_nonce: false,\n\tasync: false,\n\tcsp: {\n\t\t\"mode\": \"hash\",\n\t\t\"directives\": {\n\t\t\t\"default-src\": [\"self\"],\n\t\t\t\"frame-src\": [\n\t\t\t\t\"self\",\n\t\t\t\t\"http://localhost:*\",\n\t\t\t\t\"http://127.0.0.1:*\",\n\t\t\t\t\"https://localhost:*\",\n\t\t\t\t\"https://127.0.0.1:*\"\n\t\t\t],\n\t\t\t\"connect-src\": [\"self\"],\n\t\t\t\"font-src\": [\"self\", \"https://fonts.gstatic.com\"],\n\t\t\t\"img-src\": [\"self\", \"data:\"],\n\t\t\t\"media-src\": [\"self\", \"blob:\"],\n\t\t\t\"object-src\": [\"none\"],\n\t\t\t\"script-src\": [\"self\"],\n\t\t\t\"style-src\": [\n\t\t\t\t\"self\",\n\t\t\t\t\"unsafe-inline\",\n\t\t\t\t\"https://fonts.googleapis.com\"\n\t\t\t],\n\t\t\t\"base-uri\": [\"none\"],\n\t\t\t\"frame-ancestors\": [\"none\"],\n\t\t\t\"upgrade-insecure-requests\": false,\n\t\t\t\"block-all-mixed-content\": false\n\t\t},\n\t\t\"reportOnly\": {\n\t\t\t\"upgrade-insecure-requests\": false,\n\t\t\t\"block-all-mixed-content\": false\n\t\t}\n\t},\n\tcsrf_check_origin: true,\n\tcsrf_trusted_origins: [],\n\tembedded: false,\n\tenv_public_prefix: \"PUBLIC_\",\n\tenv_private_prefix: \"\",\n\thash_routing: false,\n\thooks: null,\n\tpreload_strategy: \"modulepreload\",\n\troot: asClassComponent(Root),\n\tservice_worker: false,\n\tservice_worker_options: void 0,\n\tserver_error_boundaries: false,\n\ttemplates: {\n\t\tapp: ({ head, body, assets, nonce, env }) => \"<!doctype html>\\n<html lang=\\\"en\\\">\\n <head>\\n <meta charset=\\\"utf-8\\\" />\\n <meta name=\\\"viewport\\\" content=\\\"width=device-width, initial-scale=1\\\" />\\n <meta name=\\\"theme-color\\\" content=\\\"#ffffff\\\" />\\n <meta name=\\\"color-scheme\\\" content=\\\"light\\\" />\\n <script>\\n (() => {\\n const storageKey = 'openpalm.theme';\\n const darkThemeColor = '#161c22';\\n const lightThemeColor = '#f9fafb';\\n\\n try {\\n const stored = window.localStorage.getItem(storageKey);\\n const preference = stored === 'light' || stored === 'dark' || stored === 'system' ? stored : 'system';\\n const resolved = preference === 'system'\\n ? (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light')\\n : preference;\\n const root = document.documentElement;\\n root.setAttribute('data-theme', resolved);\\n root.style.colorScheme = resolved;\\n\\n const themeColorMeta = document.querySelector('meta[name=\\\"theme-color\\\"]');\\n if (themeColorMeta) {\\n themeColorMeta.setAttribute('content', resolved === 'dark' ? darkThemeColor : lightThemeColor);\\n }\\n\\n const colorSchemeMeta = document.querySelector('meta[name=\\\"color-scheme\\\"]');\\n if (colorSchemeMeta) {\\n colorSchemeMeta.setAttribute('content', resolved);\\n }\\n } catch {\\n // Keep the default light metadata if storage access is unavailable.\\n }\\n })();\\n <\\/script>\\n <link rel=\\\"preconnect\\\" href=\\\"https://fonts.googleapis.com\\\" />\\n <link rel=\\\"preconnect\\\" href=\\\"https://fonts.gstatic.com\\\" crossorigin />\\n <link\\n href=\\\"https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap\\\"\\n rel=\\\"stylesheet\\\"\\n />\\n \" + head + \"\\n </head>\\n <body data-sveltekit-preload-data=\\\"hover\\\">\\n <div style=\\\"display: contents\\\">\" + body + \"</div>\\n </body>\\n</html>\\n\",\n\t\terror: ({ status, message }) => \"<!doctype html>\\n<html lang=\\\"en\\\">\\n\t<head>\\n\t\t<meta charset=\\\"utf-8\\\" />\\n\t\t<title>\" + message + \"</title>\\n\\n\t\t<style>\\n\t\t\tbody {\\n\t\t\t\t--bg: white;\\n\t\t\t\t--fg: #222;\\n\t\t\t\t--divider: #ccc;\\n\t\t\t\tbackground: var(--bg);\\n\t\t\t\tcolor: var(--fg);\\n\t\t\t\tfont-family:\\n\t\t\t\t\tsystem-ui,\\n\t\t\t\t\t-apple-system,\\n\t\t\t\t\tBlinkMacSystemFont,\\n\t\t\t\t\t'Segoe UI',\\n\t\t\t\t\tRoboto,\\n\t\t\t\t\tOxygen,\\n\t\t\t\t\tUbuntu,\\n\t\t\t\t\tCantarell,\\n\t\t\t\t\t'Open Sans',\\n\t\t\t\t\t'Helvetica Neue',\\n\t\t\t\t\tsans-serif;\\n\t\t\t\tdisplay: flex;\\n\t\t\t\talign-items: center;\\n\t\t\t\tjustify-content: center;\\n\t\t\t\theight: 100vh;\\n\t\t\t\tmargin: 0;\\n\t\t\t}\\n\\n\t\t\t.error {\\n\t\t\t\tdisplay: flex;\\n\t\t\t\talign-items: center;\\n\t\t\t\tmax-width: 32rem;\\n\t\t\t\tmargin: 0 1rem;\\n\t\t\t}\\n\\n\t\t\t.status {\\n\t\t\t\tfont-weight: 200;\\n\t\t\t\tfont-size: 3rem;\\n\t\t\t\tline-height: 1;\\n\t\t\t\tposition: relative;\\n\t\t\t\ttop: -0.05rem;\\n\t\t\t}\\n\\n\t\t\t.message {\\n\t\t\t\tborder-left: 1px solid var(--divider);\\n\t\t\t\tpadding: 0 0 0 1rem;\\n\t\t\t\tmargin: 0 0 0 1rem;\\n\t\t\t\tmin-height: 2.5rem;\\n\t\t\t\tdisplay: flex;\\n\t\t\t\talign-items: center;\\n\t\t\t}\\n\\n\t\t\t.message h1 {\\n\t\t\t\tfont-weight: 400;\\n\t\t\t\tfont-size: 1em;\\n\t\t\t\tmargin: 0;\\n\t\t\t}\\n\\n\t\t\t@media (prefers-color-scheme: dark) {\\n\t\t\t\tbody {\\n\t\t\t\t\t--bg: #222;\\n\t\t\t\t\t--fg: #ddd;\\n\t\t\t\t\t--divider: #666;\\n\t\t\t\t}\\n\t\t\t}\\n\t\t</style>\\n\t</head>\\n\t<body>\\n\t\t<div class=\\\"error\\\">\\n\t\t\t<span class=\\\"status\\\">\" + status + \"</span>\\n\t\t\t<div class=\\\"message\\\">\\n\t\t\t\t<h1>\" + message + \"</h1>\\n\t\t\t</div>\\n\t\t</div>\\n\t</body>\\n</html>\\n\"\n\t},\n\tversion_hash: \"16344d2\"\n};\nasync function get_hooks() {\n\tlet handle;\n\tlet handleFetch;\n\tlet handleError;\n\tlet handleValidationError;\n\tlet init;\n\t({handle, handleFetch, handleError, handleValidationError, init} = await import(\"../entries/hooks.server.js\"));\n\tlet reroute;\n\tlet transport;\n\treturn {\n\t\thandle,\n\t\thandleFetch,\n\t\thandleError,\n\t\thandleValidationError,\n\t\tinit,\n\t\treroute,\n\t\ttransport\n\t};\n}\n//#endregion\nexport { set_read_implementation as a, set_manifest as i, options as n, read_implementation as r, get_hooks as t };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal-Dxoo2R05.js","sources":["../../../.svelte-kit/adapter-node/chunks/server.js","../../../.svelte-kit/adapter-node/chunks/routing.js","../../../.svelte-kit/adapter-node/chunks/internal.js"],"sourcesContent":["//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/runtime/server/constants.js\nvar NULL_BODY_STATUS = [\n\t101,\n\t103,\n\t204,\n\t205,\n\t304\n];\nvar IN_WEBCONTAINER = !!globalThis.process?.versions?.webcontainer;\n//#endregion\n//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/exports/internal/event.js\n/** @import { RequestEvent } from '@sveltejs/kit' */\n/** @import { RequestStore } from 'types' */\n/** @import { AsyncLocalStorage } from 'node:async_hooks' */\n/** @type {RequestStore | null} */\nvar sync_store = null;\n/** @type {AsyncLocalStorage<RequestStore | null> | null} */\nvar als;\nimport(\"node:async_hooks\").then((hooks) => als = new hooks.AsyncLocalStorage()).catch(() => {});\nfunction get_request_store() {\n\tconst result = try_get_request_store();\n\tif (!result) {\n\t\tlet message = \"Could not get the request store.\";\n\t\tif (als) message += \" This is an internal error.\";\n\t\telse message += \" In environments without `AsyncLocalStorage`, the request store (used by e.g. remote functions) must be accessed synchronously, not after an `await`. If it was accessed synchronously then this is an internal error.\";\n\t\tthrow new Error(message);\n\t}\n\treturn result;\n}\nfunction try_get_request_store() {\n\treturn sync_store ?? als?.getStore() ?? null;\n}\n/**\n* @template T\n* @param {RequestStore | null} store\n* @param {() => T} fn\n*/\nfunction with_request_store(store, fn) {\n\ttry {\n\t\tsync_store = store;\n\t\treturn als ? als.run(store, fn) : fn();\n\t} finally {\n\t\tif (!IN_WEBCONTAINER) sync_store = null;\n\t}\n}\n//#endregion\n//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/exports/internal/server.js\n/**\n* @template {{ tracing: { enabled: boolean, root: import('@opentelemetry/api').Span, current: import('@opentelemetry/api').Span } }} T\n* @param {T} event_like\n* @param {import('@opentelemetry/api').Span} current\n* @returns {T}\n*/\nfunction merge_tracing(event_like, current) {\n\treturn {\n\t\t...event_like,\n\t\ttracing: {\n\t\t\t...event_like.tracing,\n\t\t\tcurrent\n\t\t}\n\t};\n}\n//#endregion\nexport { IN_WEBCONTAINER as a, with_request_store as i, get_request_store as n, NULL_BODY_STATUS as o, try_get_request_store as r, merge_tracing as t };\n","//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/utils/url.js\n/**\n* Matches a URI scheme. See https://www.rfc-editor.org/rfc/rfc3986#section-3.1\n* @type {RegExp}\n*/\nvar SCHEME = /^[a-z][a-z\\d+\\-.]+:/i;\nvar internal = new URL(\"sveltekit-internal://\");\n/**\n* @param {string} base\n* @param {string} path\n*/\nfunction resolve(base, path) {\n\tif (path[0] === \"/\" && path[1] === \"/\") return path;\n\tlet url = new URL(base, internal);\n\turl = new URL(path, url);\n\treturn url.protocol === internal.protocol ? url.pathname + url.search + url.hash : url.href;\n}\n/**\n* @param {string} path\n* @param {import('types').TrailingSlash} trailing_slash\n*/\nfunction normalize_path(path, trailing_slash) {\n\tif (path === \"/\" || trailing_slash === \"ignore\") return path;\n\tif (trailing_slash === \"never\") return path.endsWith(\"/\") ? path.slice(0, -1) : path;\n\telse if (trailing_slash === \"always\" && !path.endsWith(\"/\")) return path + \"/\";\n\treturn path;\n}\n/**\n* Decode pathname excluding %25 to prevent further double decoding of params\n* @param {string} pathname\n*/\nfunction decode_pathname(pathname) {\n\treturn pathname.split(\"%25\").map(decodeURI).join(\"%25\");\n}\n/** @param {Record<string, string>} params */\nfunction decode_params(params) {\n\tfor (const key in params) params[key] = decodeURIComponent(params[key]);\n\treturn params;\n}\n/**\n* @param {URL} url\n* @param {() => void} callback\n* @param {(search_param: string) => void} search_params_callback\n* @param {boolean} [allow_hash]\n*/\nfunction make_trackable(url, callback, search_params_callback, allow_hash = false) {\n\tconst tracked = new URL(url);\n\tObject.defineProperty(tracked, \"searchParams\", {\n\t\tvalue: new Proxy(tracked.searchParams, { get(obj, key) {\n\t\t\tif (key === \"get\" || key === \"getAll\" || key === \"has\") return (param, ...rest) => {\n\t\t\t\tsearch_params_callback(param);\n\t\t\t\treturn obj[key](param, ...rest);\n\t\t\t};\n\t\t\tcallback();\n\t\t\tconst value = Reflect.get(obj, key);\n\t\t\treturn typeof value === \"function\" ? value.bind(obj) : value;\n\t\t} }),\n\t\tenumerable: true,\n\t\tconfigurable: true\n\t});\n\t/**\n\t* URL properties that could change during the lifetime of the page,\n\t* which excludes things like `origin`\n\t*/\n\tconst tracked_url_properties = [\n\t\t\"href\",\n\t\t\"pathname\",\n\t\t\"search\",\n\t\t\"toString\",\n\t\t\"toJSON\"\n\t];\n\tif (allow_hash) tracked_url_properties.push(\"hash\");\n\tfor (const property of tracked_url_properties) Object.defineProperty(tracked, property, {\n\t\tget() {\n\t\t\tcallback();\n\t\t\treturn url[property];\n\t\t},\n\t\tenumerable: true,\n\t\tconfigurable: true\n\t});\n\ttracked[Symbol.for(\"nodejs.util.inspect.custom\")] = (_depth, opts, inspect) => {\n\t\treturn inspect(url, opts);\n\t};\n\ttracked.searchParams[Symbol.for(\"nodejs.util.inspect.custom\")] = (_depth, opts, inspect) => {\n\t\treturn inspect(url.searchParams, opts);\n\t};\n\tif (!allow_hash) disable_hash(tracked);\n\treturn tracked;\n}\n/**\n* Disallow access to `url.hash` on the server and in `load`\n* @param {URL} url\n*/\nfunction disable_hash(url) {\n\tallow_nodejs_console_log(url);\n\tObject.defineProperty(url, \"hash\", { get() {\n\t\tthrow new Error(\"Cannot access event.url.hash. Consider using `page.url.hash` inside a component instead\");\n\t} });\n}\n/**\n* Disallow access to `url.search` and `url.searchParams` during prerendering\n* @param {URL} url\n*/\nfunction disable_search(url) {\n\tallow_nodejs_console_log(url);\n\tfor (const property of [\"search\", \"searchParams\"]) Object.defineProperty(url, property, { get() {\n\t\tthrow new Error(`Cannot access url.${property} on a page with prerendering enabled`);\n\t} });\n}\n/**\n* Allow URL to be console logged, bypassing disabled properties.\n* @param {URL} url\n*/\nfunction allow_nodejs_console_log(url) {\n\turl[Symbol.for(\"nodejs.util.inspect.custom\")] = (_depth, opts, inspect) => {\n\t\treturn inspect(new URL(url), opts);\n\t};\n}\n//#endregion\n//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/utils/routing.js\n/**\n* Returns `false` for `(group)` segments\n* @param {string} segment\n*/\nfunction affects_path(segment) {\n\treturn segment !== \"\" && !/^\\([^)]+\\)$/.test(segment);\n}\n/**\n* Splits a route id into its segments, removing segments that\n* don't affect the path (i.e. groups). The root route is represented by `/`\n* and will be returned as `['']`.\n* @param {string} route\n* @returns string[]\n*/\nfunction get_route_segments(route) {\n\treturn route.slice(1).split(\"/\").filter(affects_path);\n}\n/**\n* @param {RegExpMatchArray} match\n* @param {import('types').RouteParam[]} params\n* @param {Record<string, import('@sveltejs/kit').ParamMatcher>} matchers\n*/\nfunction exec(match, params, matchers) {\n\t/** @type {Record<string, string>} */\n\tconst result = {};\n\tconst values = match.slice(1);\n\tconst values_needing_match = values.filter((value) => value !== void 0);\n\tlet buffered = 0;\n\tfor (let i = 0; i < params.length; i += 1) {\n\t\tconst param = params[i];\n\t\tlet value = values[i - buffered];\n\t\tif (param.chained && param.rest && buffered) {\n\t\t\tvalue = values.slice(i - buffered, i + 1).filter((s) => s).join(\"/\");\n\t\t\tbuffered = 0;\n\t\t}\n\t\tif (value === void 0) if (param.rest) value = \"\";\n\t\telse continue;\n\t\tif (!param.matcher || matchers[param.matcher](value)) {\n\t\t\tresult[param.name] = value;\n\t\t\tconst next_param = params[i + 1];\n\t\t\tconst next_value = values[i + 1];\n\t\t\tif (next_param && !next_param.rest && next_param.optional && next_value && param.chained) buffered = 0;\n\t\t\tif (!next_param && !next_value && Object.keys(result).length === values_needing_match.length) buffered = 0;\n\t\t\tcontinue;\n\t\t}\n\t\tif (param.optional && param.chained) {\n\t\t\tbuffered++;\n\t\t\tcontinue;\n\t\t}\n\t\treturn;\n\t}\n\tif (buffered) return;\n\treturn result;\n}\nvar basic_param_pattern = /\\[(\\[)?(\\.\\.\\.)?(\\w+?)(?:=(\\w+))?\\]\\]?/g;\n/**\n* Populate a route ID with params to resolve a pathname.\n* @example\n* ```js\n* resolveRoute(\n* `/blog/[slug]/[...somethingElse]`,\n* {\n* slug: 'hello-world',\n* somethingElse: 'something/else'\n* }\n* ); // `/blog/hello-world/something/else`\n* ```\n* @param {string} id\n* @param {Record<string, string | undefined>} params\n* @returns {string}\n*/\nfunction resolve_route(id, params) {\n\tconst segments = get_route_segments(id);\n\tconst has_id_trailing_slash = id != \"/\" && id.endsWith(\"/\");\n\treturn \"/\" + segments.map((segment) => segment.replace(basic_param_pattern, (_, optional, rest, name) => {\n\t\tconst param_value = params[name];\n\t\tif (!param_value) {\n\t\t\tif (optional) return \"\";\n\t\t\tif (rest && param_value !== void 0) return \"\";\n\t\t\tthrow new Error(`Missing parameter '${name}' in route ${id}`);\n\t\t}\n\t\tif (param_value.startsWith(\"/\") || param_value.endsWith(\"/\")) throw new Error(`Parameter '${name}' in route ${id} cannot start or end with a slash -- this would cause an invalid route like foo//bar`);\n\t\treturn param_value;\n\t})).filter(Boolean).join(\"/\") + (has_id_trailing_slash ? \"/\" : \"\");\n}\n/**\n* Find the first route that matches the given path\n* @template {{pattern: RegExp, params: import('types').RouteParam[]}} Route\n* @param {string} path - The decoded pathname to match\n* @param {Route[]} routes\n* @param {Record<string, import('@sveltejs/kit').ParamMatcher>} matchers\n* @returns {{ route: Route, params: Record<string, string> } | null}\n*/\nfunction find_route(path, routes, matchers) {\n\tfor (const route of routes) {\n\t\tconst match = route.pattern.exec(path);\n\t\tif (!match) continue;\n\t\tconst matched = exec(match, route.params, matchers);\n\t\tif (matched) return {\n\t\t\troute,\n\t\t\tparams: decode_params(matched)\n\t\t};\n\t}\n\treturn null;\n}\n//#endregion\nexport { decode_pathname as a, normalize_path as c, decode_params as i, resolve as l, resolve_route as n, disable_search as o, SCHEME as r, make_trackable as s, find_route as t };\n","import \"./environment.js\";\nimport { A as component_context, B as hydration_failed, C as init_operations, D as flushSync, E as boundary, F as set_hydrate_node, I as set_hydrating, J as LEGACY_PROPS, K as async_mode_flag, L as hydration_mismatch, M as push, N as hydrate_node, P as hydrating, S as get_next_sibling, T as set, W as HYDRATION_ERROR, X as array_from, Z as define_property, _ as set_active_reaction, a as derived, b as create_text, c as render, f as is_passive_event, g as set_active_effect, h as get, it as setContext, j as pop, m as active_reaction, p as active_effect, v as component_root, w as mutable_source, x as get_first_child, y as clear_text_content } from \"./dev.js\";\nimport \"./index-server.js\";\n//#region \\0virtual:__sveltekit/server\nvar read_implementation = null;\nfunction set_read_implementation(fn) {\n\tread_implementation = fn;\n}\nfunction set_manifest(_) {}\n//#endregion\n//#region ../../node_modules/.bun/svelte@5.55.9+b050a890ad81aed8/node_modules/svelte/src/internal/client/dom/elements/events.js\n/**\n* Used on elements, as a map of event type -> event handler,\n* and on events themselves to track which element handled an event\n*/\nvar event_symbol = Symbol(\"events\");\n/** @type {Set<string>} */\nvar all_registered_events = /* @__PURE__ */ new Set();\n/** @type {Set<(events: Array<string>) => void>} */\nvar root_event_handles = /* @__PURE__ */ new Set();\nvar last_propagated_event = null;\n/**\n* @this {EventTarget}\n* @param {Event} event\n* @returns {void}\n*/\nfunction handle_event_propagation(event) {\n\tvar handler_element = this;\n\tvar owner_document = handler_element.ownerDocument;\n\tvar event_name = event.type;\n\tvar path = event.composedPath?.() || [];\n\tvar current_target = path[0] || event.target;\n\tlast_propagated_event = event;\n\tvar path_idx = 0;\n\tvar handled_at = last_propagated_event === event && event[event_symbol];\n\tif (handled_at) {\n\t\tvar at_idx = path.indexOf(handled_at);\n\t\tif (at_idx !== -1 && (handler_element === document || handler_element === window)) {\n\t\t\tevent[event_symbol] = handler_element;\n\t\t\treturn;\n\t\t}\n\t\tvar handler_idx = path.indexOf(handler_element);\n\t\tif (handler_idx === -1) return;\n\t\tif (at_idx <= handler_idx) path_idx = at_idx;\n\t}\n\tcurrent_target = path[path_idx] || event.target;\n\tif (current_target === handler_element) return;\n\tdefine_property(event, \"currentTarget\", {\n\t\tconfigurable: true,\n\t\tget() {\n\t\t\treturn current_target || owner_document;\n\t\t}\n\t});\n\tvar previous_reaction = active_reaction;\n\tvar previous_effect = active_effect;\n\tset_active_reaction(null);\n\tset_active_effect(null);\n\ttry {\n\t\t/**\n\t\t* @type {unknown}\n\t\t*/\n\t\tvar throw_error;\n\t\t/**\n\t\t* @type {unknown[]}\n\t\t*/\n\t\tvar other_errors = [];\n\t\twhile (current_target !== null) {\n\t\t\t/** @type {null | Element} */\n\t\t\tvar parent_element = current_target.assignedSlot || current_target.parentNode || current_target.host || null;\n\t\t\ttry {\n\t\t\t\tvar delegated = current_target[event_symbol]?.[event_name];\n\t\t\t\tif (delegated != null && (!current_target.disabled || event.target === current_target)) delegated.call(current_target, event);\n\t\t\t} catch (error) {\n\t\t\t\tif (throw_error) other_errors.push(error);\n\t\t\t\telse throw_error = error;\n\t\t\t}\n\t\t\tif (event.cancelBubble || parent_element === handler_element || parent_element === null) break;\n\t\t\tcurrent_target = parent_element;\n\t\t}\n\t\tif (throw_error) {\n\t\t\tfor (let error of other_errors) queueMicrotask(() => {\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t\tthrow throw_error;\n\t\t}\n\t} finally {\n\t\tevent[event_symbol] = handler_element;\n\t\tdelete event.currentTarget;\n\t\tset_active_reaction(previous_reaction);\n\t\tset_active_effect(previous_effect);\n\t}\n}\nglobalThis?.window?.trustedTypes;\n//#endregion\n//#region ../../node_modules/.bun/svelte@5.55.9+b050a890ad81aed8/node_modules/svelte/src/internal/client/dom/template.js\n/**\n* @param {TemplateNode} start\n* @param {TemplateNode | null} end\n*/\nfunction assign_nodes(start, end) {\n\tvar effect = active_effect;\n\tif (effect.nodes === null) effect.nodes = {\n\t\tstart,\n\t\tend,\n\t\ta: null,\n\t\tt: null\n\t};\n}\n/**\n* Mounts a component to the given target and returns the exports and potentially the props (if compiled with `accessors: true`) of the component.\n* Transitions will play during the initial render unless the `intro` option is set to `false`.\n*\n* @template {Record<string, any>} Props\n* @template {Record<string, any>} Exports\n* @param {ComponentType<SvelteComponent<Props>> | Component<Props, Exports, any>} component\n* @param {MountOptions<Props>} options\n* @returns {Exports}\n*/\nfunction mount(component, options) {\n\treturn _mount(component, options);\n}\n/**\n* Hydrates a component on the given target and returns the exports and potentially the props (if compiled with `accessors: true`) of the component\n*\n* @template {Record<string, any>} Props\n* @template {Record<string, any>} Exports\n* @param {ComponentType<SvelteComponent<Props>> | Component<Props, Exports, any>} component\n* @param {{} extends Props ? {\n* \t\ttarget: Document | Element | ShadowRoot;\n* \t\tprops?: Props;\n* \t\tevents?: Record<string, (e: any) => any>;\n* \tcontext?: Map<any, any>;\n* \t\tintro?: boolean;\n* \t\trecover?: boolean;\n*\t\ttransformError?: (error: unknown) => unknown;\n* \t} : {\n* \t\ttarget: Document | Element | ShadowRoot;\n* \t\tprops: Props;\n* \t\tevents?: Record<string, (e: any) => any>;\n* \tcontext?: Map<any, any>;\n* \t\tintro?: boolean;\n* \t\trecover?: boolean;\n*\t\ttransformError?: (error: unknown) => unknown;\n* \t}} options\n* @returns {Exports}\n*/\nfunction hydrate(component, options) {\n\tinit_operations();\n\toptions.intro = options.intro ?? false;\n\tconst target = options.target;\n\tconst was_hydrating = hydrating;\n\tconst previous_hydrate_node = hydrate_node;\n\ttry {\n\t\tvar anchor = /* @__PURE__ */ get_first_child(target);\n\t\twhile (anchor && (anchor.nodeType !== 8 || anchor.data !== \"[\")) anchor = /* @__PURE__ */ get_next_sibling(anchor);\n\t\tif (!anchor) throw HYDRATION_ERROR;\n\t\tset_hydrating(true);\n\t\tset_hydrate_node(anchor);\n\t\tconst instance = _mount(component, {\n\t\t\t...options,\n\t\t\tanchor\n\t\t});\n\t\tset_hydrating(false);\n\t\treturn instance;\n\t} catch (error) {\n\t\tif (error instanceof Error && error.message.split(\"\\n\").some((line) => line.startsWith(\"https://svelte.dev/e/\"))) throw error;\n\t\tif (error !== HYDRATION_ERROR) console.warn(\"Failed to hydrate: \", error);\n\t\tif (options.recover === false) hydration_failed();\n\t\tinit_operations();\n\t\tclear_text_content(target);\n\t\tset_hydrating(false);\n\t\treturn mount(component, options);\n\t} finally {\n\t\tset_hydrating(was_hydrating);\n\t\tset_hydrate_node(previous_hydrate_node);\n\t}\n}\n/** @type {Map<EventTarget, Map<string, number>>} */\nvar listeners = /* @__PURE__ */ new Map();\n/**\n* @template {Record<string, any>} Exports\n* @param {ComponentType<SvelteComponent<any>> | Component<any>} Component\n* @param {MountOptions} options\n* @returns {Exports}\n*/\nfunction _mount(Component, { target, anchor, props = {}, events, context, intro = true, transformError }) {\n\tinit_operations();\n\t/** @type {Exports} */\n\tvar component = void 0;\n\tvar unmount = component_root(() => {\n\t\tvar anchor_node = anchor ?? target.appendChild(create_text());\n\t\tboundary(anchor_node, { pending: () => {} }, (anchor_node) => {\n\t\t\tpush({});\n\t\t\tvar ctx = component_context;\n\t\t\tif (context) ctx.c = context;\n\t\t\tif (events)\n /** @type {any} */ props.$$events = events;\n\t\t\tif (hydrating) assign_nodes(anchor_node, null);\n\t\t\tcomponent = Component(anchor_node, props) || {};\n\t\t\tif (hydrating) {\n\t\t\t\t/** @type {Effect & { nodes: EffectNodes }} */ active_effect.nodes.end = hydrate_node;\n\t\t\t\tif (hydrate_node === null || hydrate_node.nodeType !== 8 || hydrate_node.data !== \"]\") {\n\t\t\t\t\thydration_mismatch();\n\t\t\t\t\tthrow HYDRATION_ERROR;\n\t\t\t\t}\n\t\t\t}\n\t\t\tpop();\n\t\t}, transformError);\n\t\t/** @type {Set<string>} */\n\t\tvar registered_events = /* @__PURE__ */ new Set();\n\t\t/** @param {Array<string>} events */\n\t\tvar event_handle = (events) => {\n\t\t\tfor (var i = 0; i < events.length; i++) {\n\t\t\t\tvar event_name = events[i];\n\t\t\t\tif (registered_events.has(event_name)) continue;\n\t\t\t\tregistered_events.add(event_name);\n\t\t\t\tvar passive = is_passive_event(event_name);\n\t\t\t\tfor (const node of [target, document]) {\n\t\t\t\t\tvar counts = listeners.get(node);\n\t\t\t\t\tif (counts === void 0) {\n\t\t\t\t\t\tcounts = /* @__PURE__ */ new Map();\n\t\t\t\t\t\tlisteners.set(node, counts);\n\t\t\t\t\t}\n\t\t\t\t\tvar count = counts.get(event_name);\n\t\t\t\t\tif (count === void 0) {\n\t\t\t\t\t\tnode.addEventListener(event_name, handle_event_propagation, { passive });\n\t\t\t\t\t\tcounts.set(event_name, 1);\n\t\t\t\t\t} else counts.set(event_name, count + 1);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tevent_handle(array_from(all_registered_events));\n\t\troot_event_handles.add(event_handle);\n\t\treturn () => {\n\t\t\tfor (var event_name of registered_events) for (const node of [target, document]) {\n\t\t\t\tvar counts = listeners.get(node);\n\t\t\t\tvar count = counts.get(event_name);\n\t\t\t\tif (--count == 0) {\n\t\t\t\t\tnode.removeEventListener(event_name, handle_event_propagation);\n\t\t\t\t\tcounts.delete(event_name);\n\t\t\t\t\tif (counts.size === 0) listeners.delete(node);\n\t\t\t\t} else counts.set(event_name, count);\n\t\t\t}\n\t\t\troot_event_handles.delete(event_handle);\n\t\t\tif (anchor_node !== anchor) anchor_node.parentNode?.removeChild(anchor_node);\n\t\t};\n\t});\n\tmounted_components.set(component, unmount);\n\treturn component;\n}\n/**\n* References of the components that were mounted or hydrated.\n* Uses a `WeakMap` to avoid memory leaks.\n*/\nvar mounted_components = /* @__PURE__ */ new WeakMap();\n/**\n* Unmounts a component that was previously mounted using `mount` or `hydrate`.\n*\n* Since 5.13.0, if `options.outro` is `true`, [transitions](https://svelte.dev/docs/svelte/transition) will play before the component is removed from the DOM.\n*\n* Returns a `Promise` that resolves after transitions have completed if `options.outro` is true, or immediately otherwise (prior to 5.13.0, returns `void`).\n*\n* ```js\n* import { mount, unmount } from 'svelte';\n* import App from './App.svelte';\n*\n* const app = mount(App, { target: document.body });\n*\n* // later...\n* unmount(app, { outro: true });\n* ```\n* @param {Record<string, any>} component\n* @param {{ outro?: boolean }} [options]\n* @returns {Promise<void>}\n*/\nfunction unmount(component, options) {\n\tconst fn = mounted_components.get(component);\n\tif (fn) {\n\t\tmounted_components.delete(component);\n\t\treturn fn(options);\n\t}\n\treturn Promise.resolve();\n}\n//#endregion\n//#region ../../node_modules/.bun/svelte@5.55.9+b050a890ad81aed8/node_modules/svelte/src/legacy/legacy-client.js\n/** @import { ComponentConstructorOptions, ComponentType, SvelteComponent, Component } from 'svelte' */\n/**\n* Takes the component function and returns a Svelte 4 compatible component constructor.\n*\n* @deprecated Use this only as a temporary solution to migrate your imperative component code to Svelte 5.\n*\n* @template {Record<string, any>} Props\n* @template {Record<string, any>} Exports\n* @template {Record<string, any>} Events\n* @template {Record<string, any>} Slots\n*\n* @param {SvelteComponent<Props, Events, Slots> | Component<Props>} component\n* @returns {ComponentType<SvelteComponent<Props, Events, Slots> & Exports>}\n*/\nfunction asClassComponent$1(component) {\n\treturn class extends Svelte4Component {\n\t\t/** @param {any} options */\n\t\tconstructor(options) {\n\t\t\tsuper({\n\t\t\t\tcomponent,\n\t\t\t\t...options\n\t\t\t});\n\t\t}\n\t};\n}\n/**\n* Support using the component as both a class and function during the transition period\n* @typedef {{new (o: ComponentConstructorOptions): SvelteComponent;(...args: Parameters<Component<Record<string, any>>>): ReturnType<Component<Record<string, any>, Record<string, any>>>;}} LegacyComponentType\n*/\nvar Svelte4Component = class {\n\t/** @type {any} */\n\t#events;\n\t/** @type {Record<string, any>} */\n\t#instance;\n\t/**\n\t* @param {ComponentConstructorOptions & {\n\t* component: any;\n\t* }} options\n\t*/\n\tconstructor(options) {\n\t\tvar sources = /* @__PURE__ */ new Map();\n\t\t/**\n\t\t* @param {string | symbol} key\n\t\t* @param {unknown} value\n\t\t*/\n\t\tvar add_source = (key, value) => {\n\t\t\tvar s = /* @__PURE__ */ mutable_source(value, false, false);\n\t\t\tsources.set(key, s);\n\t\t\treturn s;\n\t\t};\n\t\tconst props = new Proxy({\n\t\t\t...options.props || {},\n\t\t\t$$events: {}\n\t\t}, {\n\t\t\tget(target, prop) {\n\t\t\t\treturn get(sources.get(prop) ?? add_source(prop, Reflect.get(target, prop)));\n\t\t\t},\n\t\t\thas(target, prop) {\n\t\t\t\tif (prop === LEGACY_PROPS) return true;\n\t\t\t\tget(sources.get(prop) ?? add_source(prop, Reflect.get(target, prop)));\n\t\t\t\treturn Reflect.has(target, prop);\n\t\t\t},\n\t\t\tset(target, prop, value) {\n\t\t\t\tset(sources.get(prop) ?? add_source(prop, value), value);\n\t\t\t\treturn Reflect.set(target, prop, value);\n\t\t\t}\n\t\t});\n\t\tthis.#instance = (options.hydrate ? hydrate : mount)(options.component, {\n\t\t\ttarget: options.target,\n\t\t\tanchor: options.anchor,\n\t\t\tprops,\n\t\t\tcontext: options.context,\n\t\t\tintro: options.intro ?? false,\n\t\t\trecover: options.recover,\n\t\t\ttransformError: options.transformError\n\t\t});\n\t\tif (!async_mode_flag && (!options?.props?.$$host || options.sync === false)) flushSync();\n\t\tthis.#events = props.$$events;\n\t\tfor (const key of Object.keys(this.#instance)) {\n\t\t\tif (key === \"$set\" || key === \"$destroy\" || key === \"$on\") continue;\n\t\t\tdefine_property(this, key, {\n\t\t\t\tget() {\n\t\t\t\t\treturn this.#instance[key];\n\t\t\t\t},\n\t\t\t\t/** @param {any} value */\n\t\t\t\tset(value) {\n\t\t\t\t\tthis.#instance[key] = value;\n\t\t\t\t},\n\t\t\t\tenumerable: true\n\t\t\t});\n\t\t}\n\t\tthis.#instance.$set = (next) => {\n\t\t\tObject.assign(props, next);\n\t\t};\n\t\tthis.#instance.$destroy = () => {\n\t\t\tunmount(this.#instance);\n\t\t};\n\t}\n\t/** @param {Record<string, any>} props */\n\t$set(props) {\n\t\tthis.#instance.$set(props);\n\t}\n\t/**\n\t* @param {string} event\n\t* @param {(...args: any[]) => any} callback\n\t* @returns {any}\n\t*/\n\t$on(event, callback) {\n\t\tthis.#events[event] = this.#events[event] || [];\n\t\t/** @param {any[]} args */\n\t\tconst cb = (...args) => callback.call(this, ...args);\n\t\tthis.#events[event].push(cb);\n\t\treturn () => {\n\t\t\tthis.#events[event] = this.#events[event].filter(\n\t\t\t\t/** @param {any} fn */\n\t\t\t\t(fn) => fn !== cb\n\t\t\t);\n\t\t};\n\t}\n\t$destroy() {\n\t\tthis.#instance.$destroy();\n\t}\n};\n//#endregion\n//#region ../../node_modules/.bun/svelte@5.55.9+b050a890ad81aed8/node_modules/svelte/src/legacy/legacy-server.js\n/** @import { SvelteComponent } from '../index.js' */\n/** @import { Csp } from '#server' */\n/** @typedef {{ head: string, html: string, css: { code: string, map: null }; hashes?: { script: `sha256-${string}`[] } }} LegacyRenderResult */\n/**\n* Takes a Svelte 5 component and returns a Svelte 4 compatible component constructor.\n*\n* @deprecated Use this only as a temporary solution to migrate your imperative component code to Svelte 5.\n*\n* @template {Record<string, any>} Props\n* @template {Record<string, any>} Exports\n* @template {Record<string, any>} Events\n* @template {Record<string, any>} Slots\n*\n* @param {SvelteComponent<Props, Events, Slots>} component\n* @returns {typeof SvelteComponent<Props, Events, Slots> & Exports}\n*/\nfunction asClassComponent(component) {\n\tconst component_constructor = asClassComponent$1(component);\n\t/** @type {(props?: {}, opts?: { $$slots?: {}; context?: Map<any, any>; csp?: Csp; transformError?: (error: unknown) => unknown }) => LegacyRenderResult & PromiseLike<LegacyRenderResult> } */\n\tconst _render = (props, { context, csp, transformError } = {}) => {\n\t\tconst result = render(component, {\n\t\t\tprops,\n\t\t\tcontext,\n\t\t\tcsp,\n\t\t\ttransformError\n\t\t});\n\t\tconst munged = Object.defineProperties({}, {\n\t\t\tcss: { value: {\n\t\t\t\tcode: \"\",\n\t\t\t\tmap: null\n\t\t\t} },\n\t\t\thead: { get: () => result.head },\n\t\t\thtml: { get: () => result.body },\n\t\t\tthen: { \n\t\t\t/**\n\t\t\t* this is not type-safe, but honestly it's the best I can do right now, and it's a straightforward function.\n\t\t\t*\n\t\t\t* @template TResult1\n\t\t\t* @template [TResult2=never]\n\t\t\t* @param { (value: LegacyRenderResult) => TResult1 } onfulfilled\n\t\t\t* @param { (reason: unknown) => TResult2 } onrejected\n\t\t\t*/\nvalue: (onfulfilled, onrejected) => {\n\t\t\t\tif (!async_mode_flag) {\n\t\t\t\t\tconst user_result = onfulfilled({\n\t\t\t\t\t\tcss: munged.css,\n\t\t\t\t\t\thead: munged.head,\n\t\t\t\t\t\thtml: munged.html\n\t\t\t\t\t});\n\t\t\t\t\treturn Promise.resolve(user_result);\n\t\t\t\t}\n\t\t\t\treturn result.then((result) => {\n\t\t\t\t\treturn onfulfilled({\n\t\t\t\t\t\tcss: munged.css,\n\t\t\t\t\t\thead: result.head,\n\t\t\t\t\t\thtml: result.body,\n\t\t\t\t\t\thashes: result.hashes\n\t\t\t\t\t});\n\t\t\t\t}, onrejected);\n\t\t\t} }\n\t\t});\n\t\treturn munged;\n\t};\n\tcomponent_constructor.render = _render;\n\treturn component_constructor;\n}\n//#endregion\n//#region .svelte-kit/generated/root.svelte\nfunction Root($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { stores, page, constructors, components = [], form, data_0 = null, data_1 = null, data_2 = null } = $$props;\n\t\tsetContext(\"__svelte__\", stores);\n\t\tstores.page.set(page);\n\t\tconst Pyramid_2 = derived(() => constructors[2]);\n\t\tif (constructors[1]) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\tconst Pyramid_0 = constructors[0];\n\t\t\tif (Pyramid_0) {\n\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\tPyramid_0($$renderer, {\n\t\t\t\t\tdata: data_0,\n\t\t\t\t\tform,\n\t\t\t\t\tparams: page.params,\n\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\tif (constructors[2]) {\n\t\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\t\tconst Pyramid_1 = constructors[1];\n\t\t\t\t\t\t\tif (Pyramid_1) {\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\t\t\t\t\tPyramid_1($$renderer, {\n\t\t\t\t\t\t\t\t\tdata: data_1,\n\t\t\t\t\t\t\t\t\tform,\n\t\t\t\t\t\t\t\t\tparams: page.params,\n\t\t\t\t\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\t\t\t\t\tif (Pyramid_2()) {\n\t\t\t\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\t\t\t\t\t\t\t\tPyramid_2()($$renderer, {\n\t\t\t\t\t\t\t\t\t\t\t\tdata: data_2,\n\t\t\t\t\t\t\t\t\t\t\t\tform,\n\t\t\t\t\t\t\t\t\t\t\t\tparams: page.params\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t\t\tconst Pyramid_1 = constructors[1];\n\t\t\t\t\t\t\tif (Pyramid_1) {\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\t\t\t\t\tPyramid_1($$renderer, {\n\t\t\t\t\t\t\t\t\tdata: data_1,\n\t\t\t\t\t\t\t\t\tform,\n\t\t\t\t\t\t\t\t\tparams: page.params\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t\t\t},\n\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t});\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t}\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\tconst Pyramid_0 = constructors[0];\n\t\t\tif (Pyramid_0) {\n\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\tPyramid_0($$renderer, {\n\t\t\t\t\tdata: data_0,\n\t\t\t\t\tform,\n\t\t\t\t\tparams: page.params\n\t\t\t\t});\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t}\n\t\t}\n\t\t$$renderer.push(`<!--]--> `);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]-->`);\n\t});\n}\n//#endregion\n//#region .svelte-kit/generated/server/internal.js\nvar options = {\n\tapp_template_contains_nonce: false,\n\tasync: false,\n\tcsp: {\n\t\t\"mode\": \"hash\",\n\t\t\"directives\": {\n\t\t\t\"default-src\": [\"self\"],\n\t\t\t\"frame-src\": [\n\t\t\t\t\"self\",\n\t\t\t\t\"http://localhost:*\",\n\t\t\t\t\"http://127.0.0.1:*\",\n\t\t\t\t\"https://localhost:*\",\n\t\t\t\t\"https://127.0.0.1:*\"\n\t\t\t],\n\t\t\t\"connect-src\": [\"self\"],\n\t\t\t\"font-src\": [\"self\", \"https://fonts.gstatic.com\"],\n\t\t\t\"img-src\": [\"self\", \"data:\"],\n\t\t\t\"media-src\": [\"self\", \"blob:\"],\n\t\t\t\"object-src\": [\"none\"],\n\t\t\t\"script-src\": [\"self\"],\n\t\t\t\"style-src\": [\n\t\t\t\t\"self\",\n\t\t\t\t\"unsafe-inline\",\n\t\t\t\t\"https://fonts.googleapis.com\"\n\t\t\t],\n\t\t\t\"base-uri\": [\"none\"],\n\t\t\t\"frame-ancestors\": [\"none\"],\n\t\t\t\"upgrade-insecure-requests\": false,\n\t\t\t\"block-all-mixed-content\": false\n\t\t},\n\t\t\"reportOnly\": {\n\t\t\t\"upgrade-insecure-requests\": false,\n\t\t\t\"block-all-mixed-content\": false\n\t\t}\n\t},\n\tcsrf_check_origin: true,\n\tcsrf_trusted_origins: [],\n\tembedded: false,\n\tenv_public_prefix: \"PUBLIC_\",\n\tenv_private_prefix: \"\",\n\thash_routing: false,\n\thooks: null,\n\tpreload_strategy: \"modulepreload\",\n\troot: asClassComponent(Root),\n\tservice_worker: false,\n\tservice_worker_options: void 0,\n\tserver_error_boundaries: false,\n\ttemplates: {\n\t\tapp: ({ head, body, assets, nonce, env }) => \"<!doctype html>\\n<html lang=\\\"en\\\">\\n <head>\\n <meta charset=\\\"utf-8\\\" />\\n <meta name=\\\"viewport\\\" content=\\\"width=device-width, initial-scale=1\\\" />\\n <meta name=\\\"theme-color\\\" content=\\\"#ffffff\\\" />\\n <meta name=\\\"color-scheme\\\" content=\\\"light\\\" />\\n <script>\\n (() => {\\n const storageKey = 'openpalm.theme';\\n const darkThemeColor = '#161c22';\\n const lightThemeColor = '#f9fafb';\\n\\n try {\\n const stored = window.localStorage.getItem(storageKey);\\n const preference = stored === 'light' || stored === 'dark' || stored === 'system' ? stored : 'system';\\n const resolved = preference === 'system'\\n ? (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light')\\n : preference;\\n const root = document.documentElement;\\n root.setAttribute('data-theme', resolved);\\n root.style.colorScheme = resolved;\\n\\n const themeColorMeta = document.querySelector('meta[name=\\\"theme-color\\\"]');\\n if (themeColorMeta) {\\n themeColorMeta.setAttribute('content', resolved === 'dark' ? darkThemeColor : lightThemeColor);\\n }\\n\\n const colorSchemeMeta = document.querySelector('meta[name=\\\"color-scheme\\\"]');\\n if (colorSchemeMeta) {\\n colorSchemeMeta.setAttribute('content', resolved);\\n }\\n } catch {\\n // Keep the default light metadata if storage access is unavailable.\\n }\\n })();\\n <\\/script>\\n <link rel=\\\"preconnect\\\" href=\\\"https://fonts.googleapis.com\\\" />\\n <link rel=\\\"preconnect\\\" href=\\\"https://fonts.gstatic.com\\\" crossorigin />\\n <link\\n href=\\\"https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap\\\"\\n rel=\\\"stylesheet\\\"\\n />\\n \" + head + \"\\n </head>\\n <body data-sveltekit-preload-data=\\\"hover\\\">\\n <div style=\\\"display: contents\\\">\" + body + \"</div>\\n </body>\\n</html>\\n\",\n\t\terror: ({ status, message }) => \"<!doctype html>\\n<html lang=\\\"en\\\">\\n\t<head>\\n\t\t<meta charset=\\\"utf-8\\\" />\\n\t\t<title>\" + message + \"</title>\\n\\n\t\t<style>\\n\t\t\tbody {\\n\t\t\t\t--bg: white;\\n\t\t\t\t--fg: #222;\\n\t\t\t\t--divider: #ccc;\\n\t\t\t\tbackground: var(--bg);\\n\t\t\t\tcolor: var(--fg);\\n\t\t\t\tfont-family:\\n\t\t\t\t\tsystem-ui,\\n\t\t\t\t\t-apple-system,\\n\t\t\t\t\tBlinkMacSystemFont,\\n\t\t\t\t\t'Segoe UI',\\n\t\t\t\t\tRoboto,\\n\t\t\t\t\tOxygen,\\n\t\t\t\t\tUbuntu,\\n\t\t\t\t\tCantarell,\\n\t\t\t\t\t'Open Sans',\\n\t\t\t\t\t'Helvetica Neue',\\n\t\t\t\t\tsans-serif;\\n\t\t\t\tdisplay: flex;\\n\t\t\t\talign-items: center;\\n\t\t\t\tjustify-content: center;\\n\t\t\t\theight: 100vh;\\n\t\t\t\tmargin: 0;\\n\t\t\t}\\n\\n\t\t\t.error {\\n\t\t\t\tdisplay: flex;\\n\t\t\t\talign-items: center;\\n\t\t\t\tmax-width: 32rem;\\n\t\t\t\tmargin: 0 1rem;\\n\t\t\t}\\n\\n\t\t\t.status {\\n\t\t\t\tfont-weight: 200;\\n\t\t\t\tfont-size: 3rem;\\n\t\t\t\tline-height: 1;\\n\t\t\t\tposition: relative;\\n\t\t\t\ttop: -0.05rem;\\n\t\t\t}\\n\\n\t\t\t.message {\\n\t\t\t\tborder-left: 1px solid var(--divider);\\n\t\t\t\tpadding: 0 0 0 1rem;\\n\t\t\t\tmargin: 0 0 0 1rem;\\n\t\t\t\tmin-height: 2.5rem;\\n\t\t\t\tdisplay: flex;\\n\t\t\t\talign-items: center;\\n\t\t\t}\\n\\n\t\t\t.message h1 {\\n\t\t\t\tfont-weight: 400;\\n\t\t\t\tfont-size: 1em;\\n\t\t\t\tmargin: 0;\\n\t\t\t}\\n\\n\t\t\t@media (prefers-color-scheme: dark) {\\n\t\t\t\tbody {\\n\t\t\t\t\t--bg: #222;\\n\t\t\t\t\t--fg: #ddd;\\n\t\t\t\t\t--divider: #666;\\n\t\t\t\t}\\n\t\t\t}\\n\t\t</style>\\n\t</head>\\n\t<body>\\n\t\t<div class=\\\"error\\\">\\n\t\t\t<span class=\\\"status\\\">\" + status + \"</span>\\n\t\t\t<div class=\\\"message\\\">\\n\t\t\t\t<h1>\" + message + \"</h1>\\n\t\t\t</div>\\n\t\t</div>\\n\t</body>\\n</html>\\n\"\n\t},\n\tversion_hash: \"dp2r2s\"\n};\nasync function get_hooks() {\n\tlet handle;\n\tlet handleFetch;\n\tlet handleError;\n\tlet handleValidationError;\n\tlet init;\n\t({handle, handleFetch, handleError, handleValidationError, init} = await import(\"../entries/hooks.server.js\"));\n\tlet reroute;\n\tlet transport;\n\treturn {\n\t\thandle,\n\t\thandleFetch,\n\t\thandleError,\n\t\thandleValidationError,\n\t\tinit,\n\t\treroute,\n\t\ttransport\n\t};\n}\n//#endregion\nexport { set_read_implementation as a, set_manifest as i, options as n, read_implementation as r, get_hooks as t };\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { e as resolve_route, t as try_get_request_store } from './internal-l3EWtEye.js';
1
+ import { e as resolve_route, t as try_get_request_store } from './internal-Dxoo2R05.js';
2
2
  import { i as initial_base, c as base } from './environment-DqfL567G.js';
3
3
 
4
4
  //#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/runtime/app/paths/server.js
@@ -14,4 +14,4 @@ function resolve(id, params) {
14
14
  }
15
15
 
16
16
  export { resolve as r };
17
- //# sourceMappingURL=paths-BFRLnvBp.js.map
17
+ //# sourceMappingURL=paths-B-UhMFIL.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"paths-BFRLnvBp.js","sources":["../../../.svelte-kit/adapter-node/chunks/paths.js"],"sourcesContent":["import { r as try_get_request_store } from \"./server.js\";\nimport { d as initial_base, u as base } from \"./environment.js\";\nimport { n as resolve_route } from \"./routing.js\";\nimport \"./internal.js\";\n//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/runtime/app/paths/server.js\n/** @type {import('./client.js').resolve} */\nfunction resolve(id, params) {\n\tif (!id.startsWith(\"/\")) throw new Error(`Cannot use \\`resolve(...)\\` with a non-absolute pathname or route ID (got \"${id}\"). \\`resolve\\` is only for internal pathnames and route IDs; external URLs should be used directly.`);\n\tconst resolved = resolve_route(id, params);\n\t{\n\t\tconst store = try_get_request_store();\n\t\tif (store && !store.state.prerendering?.fallback) return (store.event.url.pathname.slice(initial_base.length).split(\"/\").slice(2).map(() => \"..\").join(\"/\") || \".\") + resolved;\n\t}\n\treturn base + resolved;\n}\n//#endregion\nexport { resolve as t };\n"],"names":[],"mappings":";;;AAIA;AACA;AACA,SAAS,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE;AAC7B,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,2EAA2E,EAAE,EAAE,CAAC,oGAAoG,CAAC,CAAC;AACjO,CAAC,MAAM,QAAQ,GAAG,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC;AAC3C,CAAC;AACD,EAAE,MAAM,KAAK,GAAG,qBAAqB,EAAE;AACvC,EAAE,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,QAAQ;AAChL,CAAC;AACD,CAAC,OAAO,IAAI,GAAG,QAAQ;AACvB;;;;"}
1
+ {"version":3,"file":"paths-B-UhMFIL.js","sources":["../../../.svelte-kit/adapter-node/chunks/paths.js"],"sourcesContent":["import { r as try_get_request_store } from \"./server.js\";\nimport { d as initial_base, u as base } from \"./environment.js\";\nimport { n as resolve_route } from \"./routing.js\";\nimport \"./internal.js\";\n//#region ../../node_modules/.bun/@sveltejs+kit@2.61.0+aeb06e9cf8e23ab6/node_modules/@sveltejs/kit/src/runtime/app/paths/server.js\n/** @type {import('./client.js').resolve} */\nfunction resolve(id, params) {\n\tif (!id.startsWith(\"/\")) throw new Error(`Cannot use \\`resolve(...)\\` with a non-absolute pathname or route ID (got \"${id}\"). \\`resolve\\` is only for internal pathnames and route IDs; external URLs should be used directly.`);\n\tconst resolved = resolve_route(id, params);\n\t{\n\t\tconst store = try_get_request_store();\n\t\tif (store && !store.state.prerendering?.fallback) return (store.event.url.pathname.slice(initial_base.length).split(\"/\").slice(2).map(() => \"..\").join(\"/\") || \".\") + resolved;\n\t}\n\treturn base + resolved;\n}\n//#endregion\nexport { resolve as t };\n"],"names":[],"mappings":";;;AAIA;AACA;AACA,SAAS,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE;AAC7B,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,2EAA2E,EAAE,EAAE,CAAC,oGAAoG,CAAC,CAAC;AACjO,CAAC,MAAM,QAAQ,GAAG,aAAa,CAAC,EAAE,EAAE,MAAM,CAAC;AAC3C,CAAC;AACD,EAAE,MAAM,KAAK,GAAG,qBAAqB,EAAE;AACvC,EAAE,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,QAAQ;AAChL,CAAC;AACD,CAAC,OAAO,IAAI,GAAG,QAAQ;AACvB;;;;"}