@openpalm/ui 0.12.0-rc.1 → 0.12.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (306) hide show
  1. package/build/.openpalm-ui-version +1 -1
  2. package/build/client/_app/immutable/chunks/B7L0wlSY.js +1 -0
  3. package/build/client/_app/immutable/chunks/B7L0wlSY.js.br +2 -0
  4. package/build/client/_app/immutable/chunks/B7L0wlSY.js.gz +0 -0
  5. package/build/client/_app/immutable/chunks/{BihYGk9Y.js → BEuC-NYT.js} +1 -1
  6. package/build/client/_app/immutable/chunks/BEuC-NYT.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/BEuC-NYT.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{D6NbA5vY.js → DHRKaBFV.js} +2 -2
  9. package/build/client/_app/immutable/chunks/DHRKaBFV.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/DHRKaBFV.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/{C5EI77dn.js → DOWJsT_T.js} +1 -1
  12. package/build/client/_app/immutable/chunks/DOWJsT_T.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/{C5EI77dn.js.gz → DOWJsT_T.js.gz} +0 -0
  14. package/build/client/_app/immutable/chunks/{CMRs-cy6.js → DkCRM8d5.js} +1 -1
  15. package/build/client/_app/immutable/chunks/DkCRM8d5.js.br +0 -0
  16. package/build/client/_app/immutable/chunks/DkCRM8d5.js.gz +0 -0
  17. package/build/client/_app/immutable/entry/{app.D4HjSNXN.js → app.Dgd8Sqiz.js} +2 -2
  18. package/build/client/_app/immutable/entry/app.Dgd8Sqiz.js.br +0 -0
  19. package/build/client/_app/immutable/entry/app.Dgd8Sqiz.js.gz +0 -0
  20. package/build/client/_app/immutable/entry/start.DN4LafZw.js +1 -0
  21. package/build/client/_app/immutable/entry/start.DN4LafZw.js.br +1 -0
  22. package/build/client/_app/immutable/entry/start.DN4LafZw.js.gz +0 -0
  23. package/build/client/_app/immutable/nodes/{1.Cv1FI9RA.js → 1.DiTVmAJ4.js} +1 -1
  24. package/build/client/_app/immutable/nodes/1.DiTVmAJ4.js.br +3 -0
  25. package/build/client/_app/immutable/nodes/1.DiTVmAJ4.js.gz +0 -0
  26. package/build/client/_app/immutable/nodes/{4.0ZfV2HFJ.js → 4.C-pAk-ut.js} +63 -62
  27. package/build/client/_app/immutable/nodes/4.C-pAk-ut.js.br +0 -0
  28. package/build/client/_app/immutable/nodes/4.C-pAk-ut.js.gz +0 -0
  29. package/build/client/_app/immutable/nodes/{5.B_jsAXs5.js → 5.WMP0f8pf.js} +1 -1
  30. package/build/client/_app/immutable/nodes/5.WMP0f8pf.js.br +0 -0
  31. package/build/client/_app/immutable/nodes/5.WMP0f8pf.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/{6.CD18u_qC.js → 6.9o6Bephx.js} +1 -1
  33. package/build/client/_app/immutable/nodes/6.9o6Bephx.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/6.9o6Bephx.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/{7.BXyjSbT8.js → 7._N3I_xWy.js} +1 -1
  36. package/build/client/_app/immutable/nodes/7._N3I_xWy.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/7._N3I_xWy.js.gz +0 -0
  38. package/build/client/_app/immutable/nodes/{8.CDTwcjzi.js → 8.aWZ5mSKB.js} +1 -1
  39. package/build/client/_app/immutable/nodes/8.aWZ5mSKB.js.br +0 -0
  40. package/build/client/_app/immutable/nodes/8.aWZ5mSKB.js.gz +0 -0
  41. package/build/client/_app/version.json +1 -1
  42. package/build/client/_app/version.json.br +1 -1
  43. package/build/client/_app/version.json.gz +0 -0
  44. package/build/server/chunks/1-BdcHiFUZ.js +9 -0
  45. package/build/server/chunks/{1-CVcQJtBc.js.map → 1-BdcHiFUZ.js.map} +1 -1
  46. package/build/server/chunks/{10-W-ONZquv.js → 10-DMi_4x3S.js} +4 -4
  47. package/build/server/chunks/{10-W-ONZquv.js.map → 10-DMi_4x3S.js.map} +1 -1
  48. package/build/server/chunks/4-siztlnPA.js +9 -0
  49. package/build/server/chunks/{4-CTyDAO7N.js.map → 4-siztlnPA.js.map} +1 -1
  50. package/build/server/chunks/{5-BXILJ_BC.js → 5-DR1iBcbj.js} +3 -3
  51. package/build/server/chunks/{5-BXILJ_BC.js.map → 5-DR1iBcbj.js.map} +1 -1
  52. package/build/server/chunks/{6-HdFbhR1m.js → 6-BdZadUUO.js} +3 -3
  53. package/build/server/chunks/{6-HdFbhR1m.js.map → 6-BdZadUUO.js.map} +1 -1
  54. package/build/server/chunks/7-CjmZOzkF.js +9 -0
  55. package/build/server/chunks/{7-k9H-eD_d.js.map → 7-CjmZOzkF.js.map} +1 -1
  56. package/build/server/chunks/{8-CQmCVu_8.js → 8-DVpEHTHq.js} +3 -3
  57. package/build/server/chunks/{8-CQmCVu_8.js.map → 8-DVpEHTHq.js.map} +1 -1
  58. package/build/server/chunks/{ChatMessage-DfLmvrJq.js → ChatMessage-BNxQgrRW.js} +2 -2
  59. package/build/server/chunks/{ChatMessage-DfLmvrJq.js.map → ChatMessage-BNxQgrRW.js.map} +1 -1
  60. package/build/server/chunks/{Navbar-Dnxvfk10.js → Navbar-UVOusnw-.js} +3 -3
  61. package/build/server/chunks/{Navbar-Dnxvfk10.js.map → Navbar-UVOusnw-.js.map} +1 -1
  62. package/build/server/chunks/{_page.svelte-DnHQefg6.js → _page.svelte-B5xh8SJ5.js} +6 -6
  63. package/build/server/chunks/{_page.svelte-DnHQefg6.js.map → _page.svelte-B5xh8SJ5.js.map} +1 -1
  64. package/build/server/chunks/{_page.svelte-Dea_LGsw.js → _page.svelte-B7FQDg28.js} +5 -5
  65. package/build/server/chunks/{_page.svelte-Dea_LGsw.js.map → _page.svelte-B7FQDg28.js.map} +1 -1
  66. package/build/server/chunks/{_page.svelte-BsDNnBfz.js → _page.svelte-CMyq-t3Q.js} +59 -13
  67. package/build/server/chunks/_page.svelte-CMyq-t3Q.js.map +1 -0
  68. package/build/server/chunks/{_page.svelte-CqkvpyUV.js → _page.svelte-D4Zivreu.js} +3 -3
  69. package/build/server/chunks/{_page.svelte-CqkvpyUV.js.map → _page.svelte-D4Zivreu.js.map} +1 -1
  70. package/build/server/chunks/{_page.svelte-DMBLB7p4.js → _page.svelte-w4SS3sVN.js} +5 -5
  71. package/build/server/chunks/{_page.svelte-DMBLB7p4.js.map → _page.svelte-w4SS3sVN.js.map} +1 -1
  72. package/build/server/chunks/{_server.ts-CERCOBc3.js → _server.ts-4Pwhm5iv.js} +5 -5
  73. package/build/server/chunks/{_server.ts-CERCOBc3.js.map → _server.ts-4Pwhm5iv.js.map} +1 -1
  74. package/build/server/chunks/{_server.ts-D1v6AXVY.js → _server.ts-5cUQFkT_.js} +2 -2
  75. package/build/server/chunks/{_server.ts-D1v6AXVY.js.map → _server.ts-5cUQFkT_.js.map} +1 -1
  76. package/build/server/chunks/{_server.ts-Ou4LHoL0.js → _server.ts-6sLoCHl6.js} +5 -5
  77. package/build/server/chunks/{_server.ts-Ou4LHoL0.js.map → _server.ts-6sLoCHl6.js.map} +1 -1
  78. package/build/server/chunks/{_server.ts-D1dT173b.js → _server.ts-748DtXrC.js} +5 -5
  79. package/build/server/chunks/{_server.ts-D1dT173b.js.map → _server.ts-748DtXrC.js.map} +1 -1
  80. package/build/server/chunks/{_server.ts-anQxgBbg.js → _server.ts-9zKJx2eV.js} +5 -5
  81. package/build/server/chunks/{_server.ts-anQxgBbg.js.map → _server.ts-9zKJx2eV.js.map} +1 -1
  82. package/build/server/chunks/{_server.ts-WQLovWTW.js → _server.ts-B1Ka3iiX.js} +6 -6
  83. package/build/server/chunks/{_server.ts-WQLovWTW.js.map → _server.ts-B1Ka3iiX.js.map} +1 -1
  84. package/build/server/chunks/{_server.ts-Dbnh0OAK.js → _server.ts-B25xvhiX.js} +5 -5
  85. package/build/server/chunks/{_server.ts-Dbnh0OAK.js.map → _server.ts-B25xvhiX.js.map} +1 -1
  86. package/build/server/chunks/{_server.ts-CW_MqxCL.js → _server.ts-B2kJ3mfg.js} +7 -7
  87. package/build/server/chunks/{_server.ts-CW_MqxCL.js.map → _server.ts-B2kJ3mfg.js.map} +1 -1
  88. package/build/server/chunks/{_server.ts-BfpKWyaE.js → _server.ts-B4WEAp6B.js} +5 -5
  89. package/build/server/chunks/{_server.ts-BfpKWyaE.js.map → _server.ts-B4WEAp6B.js.map} +1 -1
  90. package/build/server/chunks/{_server.ts-B5hR6mRJ.js → _server.ts-B7Fkprd8.js} +2 -2
  91. package/build/server/chunks/{_server.ts-B5hR6mRJ.js.map → _server.ts-B7Fkprd8.js.map} +1 -1
  92. package/build/server/chunks/{_server.ts-CHC5iyoo.js → _server.ts-BCKweCGM.js} +4 -4
  93. package/build/server/chunks/{_server.ts-CHC5iyoo.js.map → _server.ts-BCKweCGM.js.map} +1 -1
  94. package/build/server/chunks/{_server.ts-CGlVN30h.js → _server.ts-BEgkYvNh.js} +5 -5
  95. package/build/server/chunks/{_server.ts-CGlVN30h.js.map → _server.ts-BEgkYvNh.js.map} +1 -1
  96. package/build/server/chunks/{_server.ts-BmQi3d-p.js → _server.ts-BFp9Fobi.js} +4 -4
  97. package/build/server/chunks/{_server.ts-BmQi3d-p.js.map → _server.ts-BFp9Fobi.js.map} +1 -1
  98. package/build/server/chunks/{_server.ts-keJe--oH.js → _server.ts-BHIqLHCr.js} +2 -2
  99. package/build/server/chunks/{_server.ts-keJe--oH.js.map → _server.ts-BHIqLHCr.js.map} +1 -1
  100. package/build/server/chunks/{_server.ts-Ckf8jQdl.js → _server.ts-BMeLIoiB.js} +6 -6
  101. package/build/server/chunks/{_server.ts-Ckf8jQdl.js.map → _server.ts-BMeLIoiB.js.map} +1 -1
  102. package/build/server/chunks/{_server.ts-tSnumHIh.js → _server.ts-BR_JejQG.js} +5 -5
  103. package/build/server/chunks/{_server.ts-tSnumHIh.js.map → _server.ts-BR_JejQG.js.map} +1 -1
  104. package/build/server/chunks/{_server.ts-BfRDa9Ak.js → _server.ts-BSxbdNXo.js} +5 -5
  105. package/build/server/chunks/{_server.ts-BfRDa9Ak.js.map → _server.ts-BSxbdNXo.js.map} +1 -1
  106. package/build/server/chunks/{_server.ts-YGPIKWu1.js → _server.ts-BXOIslIH.js} +5 -5
  107. package/build/server/chunks/{_server.ts-YGPIKWu1.js.map → _server.ts-BXOIslIH.js.map} +1 -1
  108. package/build/server/chunks/{_server.ts-0B6ETUr-.js → _server.ts-B_du9gRB.js} +5 -5
  109. package/build/server/chunks/{_server.ts-0B6ETUr-.js.map → _server.ts-B_du9gRB.js.map} +1 -1
  110. package/build/server/chunks/{_server.ts-DSn8PZs3.js → _server.ts-BaTXv_bR.js} +5 -5
  111. package/build/server/chunks/{_server.ts-DSn8PZs3.js.map → _server.ts-BaTXv_bR.js.map} +1 -1
  112. package/build/server/chunks/{_server.ts-Dsl30Kqm.js → _server.ts-BdN5NtL4.js} +5 -5
  113. package/build/server/chunks/{_server.ts-Dsl30Kqm.js.map → _server.ts-BdN5NtL4.js.map} +1 -1
  114. package/build/server/chunks/{_server.ts-D53Q4y2U.js → _server.ts-Bf3mh1Vw.js} +5 -5
  115. package/build/server/chunks/{_server.ts-D53Q4y2U.js.map → _server.ts-Bf3mh1Vw.js.map} +1 -1
  116. package/build/server/chunks/{_server.ts-Cg_nVcGe.js → _server.ts-BhzFTv-h.js} +6 -6
  117. package/build/server/chunks/{_server.ts-Cg_nVcGe.js.map → _server.ts-BhzFTv-h.js.map} +1 -1
  118. package/build/server/chunks/{_server.ts-vz7XppYp.js → _server.ts-BiwKKu1y.js} +5 -5
  119. package/build/server/chunks/{_server.ts-vz7XppYp.js.map → _server.ts-BiwKKu1y.js.map} +1 -1
  120. package/build/server/chunks/{_server.ts-DhF_U44B.js → _server.ts-BkxwpAv2.js} +5 -5
  121. package/build/server/chunks/{_server.ts-DhF_U44B.js.map → _server.ts-BkxwpAv2.js.map} +1 -1
  122. package/build/server/chunks/{_server.ts-C40BmZoV.js → _server.ts-Byc_SyKx.js} +5 -5
  123. package/build/server/chunks/{_server.ts-C40BmZoV.js.map → _server.ts-Byc_SyKx.js.map} +1 -1
  124. package/build/server/chunks/{_server.ts-C2oIwHOm.js → _server.ts-C3ic1HZf.js} +5 -5
  125. package/build/server/chunks/{_server.ts-C2oIwHOm.js.map → _server.ts-C3ic1HZf.js.map} +1 -1
  126. package/build/server/chunks/{_server.ts-BEdChB0B.js → _server.ts-C9E9tYAO.js} +14 -7
  127. package/build/server/chunks/_server.ts-C9E9tYAO.js.map +1 -0
  128. package/build/server/chunks/{_server.ts-JWoayilI.js → _server.ts-CCEnPIKA.js} +15 -10
  129. package/build/server/chunks/_server.ts-CCEnPIKA.js.map +1 -0
  130. package/build/server/chunks/{_server.ts--ZXHd_7G.js → _server.ts-CCtCwyZb.js} +6 -6
  131. package/build/server/chunks/{_server.ts--ZXHd_7G.js.map → _server.ts-CCtCwyZb.js.map} +1 -1
  132. package/build/server/chunks/{_server.ts-CB1MjjTN.js → _server.ts-CDLW9TPG.js} +6 -6
  133. package/build/server/chunks/{_server.ts-CB1MjjTN.js.map → _server.ts-CDLW9TPG.js.map} +1 -1
  134. package/build/server/chunks/{_server.ts-B409KD6U.js → _server.ts-CILn0WEi.js} +25 -7
  135. package/build/server/chunks/_server.ts-CILn0WEi.js.map +1 -0
  136. package/build/server/chunks/{_server.ts-DjPUN7lf.js → _server.ts-CMytohFo.js} +5 -5
  137. package/build/server/chunks/{_server.ts-DjPUN7lf.js.map → _server.ts-CMytohFo.js.map} +1 -1
  138. package/build/server/chunks/{_server.ts-Dr56nQwT.js → _server.ts-CN8iu9En.js} +5 -5
  139. package/build/server/chunks/{_server.ts-Dr56nQwT.js.map → _server.ts-CN8iu9En.js.map} +1 -1
  140. package/build/server/chunks/{_server.ts-DErSZ0aB.js → _server.ts-CSN60plL.js} +2 -2
  141. package/build/server/chunks/{_server.ts-DErSZ0aB.js.map → _server.ts-CSN60plL.js.map} +1 -1
  142. package/build/server/chunks/{_server.ts-BzEFvvlp.js → _server.ts-CTKPnd64.js} +7 -7
  143. package/build/server/chunks/{_server.ts-BzEFvvlp.js.map → _server.ts-CTKPnd64.js.map} +1 -1
  144. package/build/server/chunks/{_server.ts-Cl0rLFUw.js → _server.ts-CV30eOSb.js} +6 -6
  145. package/build/server/chunks/{_server.ts-Cl0rLFUw.js.map → _server.ts-CV30eOSb.js.map} +1 -1
  146. package/build/server/chunks/{_server.ts-Cya45Eco.js → _server.ts-CZ9rxA09.js} +5 -5
  147. package/build/server/chunks/{_server.ts-Cya45Eco.js.map → _server.ts-CZ9rxA09.js.map} +1 -1
  148. package/build/server/chunks/{_server.ts-BVQjwsMp.js → _server.ts-C_c_15ac.js} +5 -5
  149. package/build/server/chunks/{_server.ts-BVQjwsMp.js.map → _server.ts-C_c_15ac.js.map} +1 -1
  150. package/build/server/chunks/{_server.ts-DESj9ag6.js → _server.ts-Cc-c2ehY.js} +5 -5
  151. package/build/server/chunks/{_server.ts-DESj9ag6.js.map → _server.ts-Cc-c2ehY.js.map} +1 -1
  152. package/build/server/chunks/{_server.ts-Bs3oAE6C.js → _server.ts-CfAx4ndA.js} +5 -5
  153. package/build/server/chunks/{_server.ts-Bs3oAE6C.js.map → _server.ts-CfAx4ndA.js.map} +1 -1
  154. package/build/server/chunks/{_server.ts-CcKpUv9a.js → _server.ts-CgPqNf7-.js} +5 -5
  155. package/build/server/chunks/{_server.ts-CcKpUv9a.js.map → _server.ts-CgPqNf7-.js.map} +1 -1
  156. package/build/server/chunks/{_server.ts-DUJObAJG.js → _server.ts-Cs7f-gaR.js} +6 -6
  157. package/build/server/chunks/{_server.ts-DUJObAJG.js.map → _server.ts-Cs7f-gaR.js.map} +1 -1
  158. package/build/server/chunks/{_server.ts-Dwhv7KnR.js → _server.ts-Cscu5y6A.js} +6 -6
  159. package/build/server/chunks/{_server.ts-Dwhv7KnR.js.map → _server.ts-Cscu5y6A.js.map} +1 -1
  160. package/build/server/chunks/{_server.ts-DYU3yoaF.js → _server.ts-Cwuo2EyS.js} +5 -5
  161. package/build/server/chunks/{_server.ts-DYU3yoaF.js.map → _server.ts-Cwuo2EyS.js.map} +1 -1
  162. package/build/server/chunks/{_server.ts-D2YDAvSW.js → _server.ts-CxWx02dy.js} +5 -5
  163. package/build/server/chunks/{_server.ts-D2YDAvSW.js.map → _server.ts-CxWx02dy.js.map} +1 -1
  164. package/build/server/chunks/{_server.ts-ComhXvuD.js → _server.ts-CzTX8a_p.js} +5 -5
  165. package/build/server/chunks/{_server.ts-ComhXvuD.js.map → _server.ts-CzTX8a_p.js.map} +1 -1
  166. package/build/server/chunks/{_server.ts-Z6Jl5czR.js → _server.ts-D2tkCP8q.js} +5 -5
  167. package/build/server/chunks/{_server.ts-Z6Jl5czR.js.map → _server.ts-D2tkCP8q.js.map} +1 -1
  168. package/build/server/chunks/{_server.ts-DtJPTK6T.js → _server.ts-D4B9IkKh.js} +5 -5
  169. package/build/server/chunks/{_server.ts-DtJPTK6T.js.map → _server.ts-D4B9IkKh.js.map} +1 -1
  170. package/build/server/chunks/{_server.ts-B2osMaU8.js → _server.ts-D5WwDggN.js} +5 -5
  171. package/build/server/chunks/{_server.ts-B2osMaU8.js.map → _server.ts-D5WwDggN.js.map} +1 -1
  172. package/build/server/chunks/{_server.ts-B1yfYKPg.js → _server.ts-DAv3C7oW.js} +5 -5
  173. package/build/server/chunks/{_server.ts-B1yfYKPg.js.map → _server.ts-DAv3C7oW.js.map} +1 -1
  174. package/build/server/chunks/{_server.ts-DFfzCkBR.js → _server.ts-DEV3GiN8.js} +5 -5
  175. package/build/server/chunks/{_server.ts-DFfzCkBR.js.map → _server.ts-DEV3GiN8.js.map} +1 -1
  176. package/build/server/chunks/{_server.ts-BOYEjBGJ.js → _server.ts-DE_dFybU.js} +7 -7
  177. package/build/server/chunks/{_server.ts-BOYEjBGJ.js.map → _server.ts-DE_dFybU.js.map} +1 -1
  178. package/build/server/chunks/{_server.ts-b0eG_upf.js → _server.ts-DFhNnn-G.js} +5 -5
  179. package/build/server/chunks/{_server.ts-b0eG_upf.js.map → _server.ts-DFhNnn-G.js.map} +1 -1
  180. package/build/server/chunks/{_server.ts-Dbczo4Pv.js → _server.ts-DMTF4KjV.js} +2 -2
  181. package/build/server/chunks/{_server.ts-Dbczo4Pv.js.map → _server.ts-DMTF4KjV.js.map} +1 -1
  182. package/build/server/chunks/{_server.ts-DsXYP4wI.js → _server.ts-DPpj-ZUv.js} +5 -5
  183. package/build/server/chunks/{_server.ts-DsXYP4wI.js.map → _server.ts-DPpj-ZUv.js.map} +1 -1
  184. package/build/server/chunks/{_server.ts-ALC_q9Pv.js → _server.ts-DPw4QRWb.js} +5 -5
  185. package/build/server/chunks/{_server.ts-ALC_q9Pv.js.map → _server.ts-DPw4QRWb.js.map} +1 -1
  186. package/build/server/chunks/{_server.ts-DGkBTOLd.js → _server.ts-DQP6uEx5.js} +5 -5
  187. package/build/server/chunks/{_server.ts-DGkBTOLd.js.map → _server.ts-DQP6uEx5.js.map} +1 -1
  188. package/build/server/chunks/{_server.ts-tVOMHVfT.js → _server.ts-DRpXmKSI.js} +6 -6
  189. package/build/server/chunks/{_server.ts-tVOMHVfT.js.map → _server.ts-DRpXmKSI.js.map} +1 -1
  190. package/build/server/chunks/{_server.ts-DMNpdAr1.js → _server.ts-DT8fIE9B.js} +5 -5
  191. package/build/server/chunks/{_server.ts-DMNpdAr1.js.map → _server.ts-DT8fIE9B.js.map} +1 -1
  192. package/build/server/chunks/{_server.ts-BP1-cpdO.js → _server.ts-DY4maxIB.js} +6 -6
  193. package/build/server/chunks/{_server.ts-BP1-cpdO.js.map → _server.ts-DY4maxIB.js.map} +1 -1
  194. package/build/server/chunks/{_server.ts-CfZXoUH1.js → _server.ts-DjJu23jV.js} +5 -5
  195. package/build/server/chunks/{_server.ts-CfZXoUH1.js.map → _server.ts-DjJu23jV.js.map} +1 -1
  196. package/build/server/chunks/{_server.ts-D4lQjUia.js → _server.ts-Djimbzpw.js} +7 -7
  197. package/build/server/chunks/{_server.ts-D4lQjUia.js.map → _server.ts-Djimbzpw.js.map} +1 -1
  198. package/build/server/chunks/{_server.ts-D47IinIP.js → _server.ts-Dpk6ddyU.js} +7 -7
  199. package/build/server/chunks/{_server.ts-D47IinIP.js.map → _server.ts-Dpk6ddyU.js.map} +1 -1
  200. package/build/server/chunks/{_server.ts-xxCrP77n.js → _server.ts-Dr6ShsbQ.js} +5 -5
  201. package/build/server/chunks/{_server.ts-xxCrP77n.js.map → _server.ts-Dr6ShsbQ.js.map} +1 -1
  202. package/build/server/chunks/{_server.ts-MPKhnT_9.js → _server.ts-DsbN7dr7.js} +5 -5
  203. package/build/server/chunks/{_server.ts-MPKhnT_9.js.map → _server.ts-DsbN7dr7.js.map} +1 -1
  204. package/build/server/chunks/{_server.ts-CPzXJpes.js → _server.ts-Dv7xll_B.js} +6 -6
  205. package/build/server/chunks/{_server.ts-CPzXJpes.js.map → _server.ts-Dv7xll_B.js.map} +1 -1
  206. package/build/server/chunks/{_server.ts-DJ8dviE4.js → _server.ts-Ieve8Oxl.js} +8 -8
  207. package/build/server/chunks/{_server.ts-DJ8dviE4.js.map → _server.ts-Ieve8Oxl.js.map} +1 -1
  208. package/build/server/chunks/{_server.ts-BX19lZQE.js → _server.ts-JPsLUf_g.js} +5 -5
  209. package/build/server/chunks/{_server.ts-BX19lZQE.js.map → _server.ts-JPsLUf_g.js.map} +1 -1
  210. package/build/server/chunks/{_server.ts-Df_d0aal.js → _server.ts-MJdHZvPF.js} +5 -5
  211. package/build/server/chunks/{_server.ts-Df_d0aal.js.map → _server.ts-MJdHZvPF.js.map} +1 -1
  212. package/build/server/chunks/{_server.ts-Bu5_FYA-.js → _server.ts-MORzCMU7.js} +5 -5
  213. package/build/server/chunks/{_server.ts-Bu5_FYA-.js.map → _server.ts-MORzCMU7.js.map} +1 -1
  214. package/build/server/chunks/{_server.ts-gBd2rolQ.js → _server.ts-QdyZiBuA.js} +5 -5
  215. package/build/server/chunks/{_server.ts-gBd2rolQ.js.map → _server.ts-QdyZiBuA.js.map} +1 -1
  216. package/build/server/chunks/{_server.ts-CSZz4p8L.js → _server.ts-RagJb3I4.js} +5 -5
  217. package/build/server/chunks/{_server.ts-CSZz4p8L.js.map → _server.ts-RagJb3I4.js.map} +1 -1
  218. package/build/server/chunks/{_server.ts-DzFK8bVm.js → _server.ts-Ts6pcZ0d.js} +5 -5
  219. package/build/server/chunks/{_server.ts-DzFK8bVm.js.map → _server.ts-Ts6pcZ0d.js.map} +1 -1
  220. package/build/server/chunks/{_server.ts-D30T84pQ.js → _server.ts-VuZwBycD.js} +5 -5
  221. package/build/server/chunks/{_server.ts-D30T84pQ.js.map → _server.ts-VuZwBycD.js.map} +1 -1
  222. package/build/server/chunks/{_server.ts-BsgERSUa.js → _server.ts-bClum6wa.js} +5 -5
  223. package/build/server/chunks/{_server.ts-BsgERSUa.js.map → _server.ts-bClum6wa.js.map} +1 -1
  224. package/build/server/chunks/{_server.ts-CI29Cyri.js → _server.ts-gLH0uvQH.js} +6 -6
  225. package/build/server/chunks/{_server.ts-CI29Cyri.js.map → _server.ts-gLH0uvQH.js.map} +1 -1
  226. package/build/server/chunks/{_server.ts-BaCAfVqq.js → _server.ts-lmfAKx6b.js} +7 -7
  227. package/build/server/chunks/{_server.ts-BaCAfVqq.js.map → _server.ts-lmfAKx6b.js.map} +1 -1
  228. package/build/server/chunks/{_server.ts-BCfPFzEV.js → _server.ts-op5C3XGb.js} +6 -6
  229. package/build/server/chunks/{_server.ts-BCfPFzEV.js.map → _server.ts-op5C3XGb.js.map} +1 -1
  230. package/build/server/chunks/{_server.ts-LS-MWWTz.js → _server.ts-zUZknmZx.js} +6 -6
  231. package/build/server/chunks/{_server.ts-LS-MWWTz.js.map → _server.ts-zUZknmZx.js.map} +1 -1
  232. package/build/server/chunks/{addon-helpers-CNp09lT6.js → addon-helpers-CoPzjA3s.js} +3 -3
  233. package/build/server/chunks/{addon-helpers-CNp09lT6.js.map → addon-helpers-CoPzjA3s.js.map} +1 -1
  234. package/build/server/chunks/{akm-Du5uQGJQ.js → akm-BS59M7h3.js} +2 -2
  235. package/build/server/chunks/{akm-Du5uQGJQ.js.map → akm-BS59M7h3.js.map} +1 -1
  236. package/build/server/chunks/{catalog-VJdRC16s.js → catalog-DAQWike4.js} +5 -5
  237. package/build/server/chunks/{catalog-VJdRC16s.js.map → catalog-DAQWike4.js.map} +1 -1
  238. package/build/server/chunks/{client-BQEOyapc.js → client-B3vN-Uvc.js} +2 -2
  239. package/build/server/chunks/{client-BQEOyapc.js.map → client-B3vN-Uvc.js.map} +1 -1
  240. package/build/server/chunks/{config-VQx1c1o2.js → config-Bdb4ZTos.js} +2 -2
  241. package/build/server/chunks/{config-VQx1c1o2.js.map → config-Bdb4ZTos.js.map} +1 -1
  242. package/build/server/chunks/{docker-DeSRsk_C.js → docker-DaU_SNhi.js} +2 -2
  243. package/build/server/chunks/{docker-DeSRsk_C.js.map → docker-DaU_SNhi.js.map} +1 -1
  244. package/build/server/chunks/{endpoints-CVaZyXGR.js → endpoints-1byh0xs8.js} +2 -2
  245. package/build/server/chunks/{endpoints-CVaZyXGR.js.map → endpoints-1byh0xs8.js.map} +1 -1
  246. package/build/server/chunks/{environment-BTWh1E9j.js → environment-BQh6a8iU.js} +2 -2
  247. package/build/server/chunks/{environment-BTWh1E9j.js.map → environment-BQh6a8iU.js.map} +1 -1
  248. package/build/server/chunks/{error.svelte-Cz7XJbXh.js → error.svelte-CEj0_dRA.js} +4 -4
  249. package/build/server/chunks/{error.svelte-Cz7XJbXh.js.map → error.svelte-CEj0_dRA.js.map} +1 -1
  250. package/build/server/chunks/{helpers-DEWuEDi5.js → helpers-Be-wOei2.js} +3 -3
  251. package/build/server/chunks/{helpers-DEWuEDi5.js.map → helpers-Be-wOei2.js.map} +1 -1
  252. package/build/server/chunks/{hooks.server-D_p0VTSA.js → hooks.server-DlA1ck_e.js} +6 -6
  253. package/build/server/chunks/{hooks.server-D_p0VTSA.js.map → hooks.server-DlA1ck_e.js.map} +1 -1
  254. package/build/server/chunks/{http-Bz9VDTR1.js → http-BbFgukqs.js} +2 -2
  255. package/build/server/chunks/{http-Bz9VDTR1.js.map → http-BbFgukqs.js.map} +1 -1
  256. package/build/server/chunks/{internal-CXonuT4k.js → internal-CP-qQJfY.js} +3 -3
  257. package/build/server/chunks/{internal-CXonuT4k.js.map → internal-CP-qQJfY.js.map} +1 -1
  258. package/build/server/chunks/{session-cookie-CQw8e0tc.js → session-cookie-C-kIy9pI.js} +2 -2
  259. package/build/server/chunks/{session-cookie-CQw8e0tc.js.map → session-cookie-C-kIy9pI.js.map} +1 -1
  260. package/build/server/chunks/{setup-deploy-BBl1pM-Q.js → setup-deploy-BL_wmz6j.js} +2 -2
  261. package/build/server/chunks/{setup-deploy-BBl1pM-Q.js.map → setup-deploy-BL_wmz6j.js.map} +1 -1
  262. package/build/server/chunks/{src-CHZNd5cO.js → src-BEj0DuSB.js} +167 -80
  263. package/build/server/chunks/src-BEj0DuSB.js.map +1 -0
  264. package/build/server/chunks/{state-BcQ5v_Ye.js → state-DAPDF26p.js} +2 -2
  265. package/build/server/chunks/{state-BcQ5v_Ye.js.map → state-DAPDF26p.js.map} +1 -1
  266. package/build/server/chunks/{state2-CGTr4dHs.js → state2-3fEu-ReG.js} +2 -2
  267. package/build/server/chunks/{state2-CGTr4dHs.js.map → state2-3fEu-ReG.js.map} +1 -1
  268. package/build/server/index.js +2 -2
  269. package/build/server/manifest.js +88 -88
  270. package/build/server/manifest.js.map +1 -1
  271. package/package.json +4 -2
  272. package/build/client/_app/immutable/chunks/BihYGk9Y.js.br +0 -0
  273. package/build/client/_app/immutable/chunks/BihYGk9Y.js.gz +0 -0
  274. package/build/client/_app/immutable/chunks/C5EI77dn.js.br +0 -0
  275. package/build/client/_app/immutable/chunks/CMRs-cy6.js.br +0 -0
  276. package/build/client/_app/immutable/chunks/CMRs-cy6.js.gz +0 -0
  277. package/build/client/_app/immutable/chunks/D6NbA5vY.js.br +0 -0
  278. package/build/client/_app/immutable/chunks/D6NbA5vY.js.gz +0 -0
  279. package/build/client/_app/immutable/chunks/lIgyewlB.js +0 -1
  280. package/build/client/_app/immutable/chunks/lIgyewlB.js.br +0 -2
  281. package/build/client/_app/immutable/chunks/lIgyewlB.js.gz +0 -0
  282. package/build/client/_app/immutable/entry/app.D4HjSNXN.js.br +0 -0
  283. package/build/client/_app/immutable/entry/app.D4HjSNXN.js.gz +0 -0
  284. package/build/client/_app/immutable/entry/start.BBmWGrcI.js +0 -1
  285. package/build/client/_app/immutable/entry/start.BBmWGrcI.js.br +0 -0
  286. package/build/client/_app/immutable/entry/start.BBmWGrcI.js.gz +0 -0
  287. package/build/client/_app/immutable/nodes/1.Cv1FI9RA.js.br +0 -2
  288. package/build/client/_app/immutable/nodes/1.Cv1FI9RA.js.gz +0 -0
  289. package/build/client/_app/immutable/nodes/4.0ZfV2HFJ.js.br +0 -0
  290. package/build/client/_app/immutable/nodes/4.0ZfV2HFJ.js.gz +0 -0
  291. package/build/client/_app/immutable/nodes/5.B_jsAXs5.js.br +0 -0
  292. package/build/client/_app/immutable/nodes/5.B_jsAXs5.js.gz +0 -0
  293. package/build/client/_app/immutable/nodes/6.CD18u_qC.js.br +0 -0
  294. package/build/client/_app/immutable/nodes/6.CD18u_qC.js.gz +0 -0
  295. package/build/client/_app/immutable/nodes/7.BXyjSbT8.js.br +0 -0
  296. package/build/client/_app/immutable/nodes/7.BXyjSbT8.js.gz +0 -0
  297. package/build/client/_app/immutable/nodes/8.CDTwcjzi.js.br +0 -0
  298. package/build/client/_app/immutable/nodes/8.CDTwcjzi.js.gz +0 -0
  299. package/build/server/chunks/1-CVcQJtBc.js +0 -9
  300. package/build/server/chunks/4-CTyDAO7N.js +0 -9
  301. package/build/server/chunks/7-k9H-eD_d.js +0 -9
  302. package/build/server/chunks/_page.svelte-BsDNnBfz.js.map +0 -1
  303. package/build/server/chunks/_server.ts-B409KD6U.js.map +0 -1
  304. package/build/server/chunks/_server.ts-BEdChB0B.js.map +0 -1
  305. package/build/server/chunks/_server.ts-JWoayilI.js.map +0 -1
  306. package/build/server/chunks/src-CHZNd5cO.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"session-cookie-CQw8e0tc.js","sources":["../../../.svelte-kit/adapter-node/chunks/session-cookie.js"],"sourcesContent":["import { m as SESSION_TTL_SECONDS } from \"./helpers.js\";\n//#region src/lib/server/session-cookie.ts\n/**\n* Single source of truth for the `op_session` cookie's Set-Cookie attributes.\n*\n* Every issuer (login, session, setup/complete) and the sliding-renewal path in\n* hooks.server.ts builds the cookie through these helpers so the attributes can\n* never drift apart. Logout uses `clearSessionCookie()` with the SAME path so\n* the browser actually drops the cookie.\n*\n* Attribute rationale:\n* - HttpOnly — the cookie is the only credential the browser holds; XSS\n* must not be able to read it.\n* - SameSite=Lax — the cookie must ride along on top-level GET navigations\n* (typing the admin URL, following a bookmark) so a valid\n* session loads admin with no prompt. SameSite=Strict drops\n* the cookie on cross-site top-level GETs (e.g. opening the\n* console from a link in another app on the LAN), which\n* would force a needless re-prompt. State-mutating requests\n* are independently CSRF-guarded by the Origin check\n* (SEC-2) in hooks.server.ts, so Lax is safe here.\n* - Secure — set ONLY when the request arrived over HTTPS. LAN installs\n* are commonly plain HTTP; hardcoding Secure would make the\n* browser refuse to send the cookie and break login entirely\n* on those deployments. We honour `x-forwarded-proto` first\n* (reverse-proxy TLS termination) then the request URL.\n* - Path=/ — valid for the whole app; matched by the clear on logout.\n* - Max-Age — SESSION_TTL_SECONDS (14 days), in lockstep with the token expiry.\n*/\nvar SESSION_COOKIE_NAME = \"op_session\";\n/** True when the request reached us over HTTPS (direct or via TLS-terminating proxy). */\nfunction isSecureRequest(request) {\n\tconst forwarded = request.headers.get(\"x-forwarded-proto\");\n\tif (forwarded) return forwarded.split(\",\")[0].trim().toLowerCase() === \"https\";\n\ttry {\n\t\treturn new URL(request.url).protocol === \"https:\";\n\t} catch {\n\t\treturn false;\n\t}\n}\n/**\n* Build the `Set-Cookie` value that issues/renews the session cookie.\n* `secure` is derived from the request so LAN-over-HTTP installs still work.\n*/\nfunction sessionCookieHeader(token, request) {\n\tconst parts = [\n\t\t`${SESSION_COOKIE_NAME}=${token}`,\n\t\t\"HttpOnly\",\n\t\t\"SameSite=Lax\",\n\t\t\"Path=/\",\n\t\t`Max-Age=${SESSION_TTL_SECONDS}`\n\t];\n\tif (isSecureRequest(request)) parts.push(\"Secure\");\n\treturn parts.join(\"; \");\n}\n/**\n* Build the `Set-Cookie` value that clears the session cookie (logout).\n* Must mirror name/path/attributes of the issued cookie so the browser deletes it.\n*/\nfunction clearSessionCookieHeader(request) {\n\tconst parts = [\n\t\t`${SESSION_COOKIE_NAME}=`,\n\t\t\"HttpOnly\",\n\t\t\"SameSite=Lax\",\n\t\t\"Path=/\",\n\t\t\"Max-Age=0\"\n\t];\n\tif (isSecureRequest(request)) parts.push(\"Secure\");\n\treturn parts.join(\"; \");\n}\n//#endregion\nexport { clearSessionCookieHeader as n, sessionCookieHeader as r, SESSION_COOKIE_NAME as t };\n"],"names":[],"mappings":";;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;AACG,IAAC,mBAAmB,GAAG;AAC1B;AACA,SAAS,eAAe,CAAC,OAAO,EAAE;AAClC,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;AAC3D,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,OAAO;AAC/E,CAAC,IAAI;AACL,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,QAAQ;AACnD,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,KAAK;AACd,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,SAAS,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE;AAC7C,CAAC,MAAM,KAAK,GAAG;AACf,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACnC,EAAE,UAAU;AACZ,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC;AACjC,EAAE;AACF,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;AACA;AACA;AACA;AACA;AACA,SAAS,wBAAwB,CAAC,OAAO,EAAE;AAC3C,CAAC,MAAM,KAAK,GAAG;AACf,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAC3B,EAAE,UAAU;AACZ,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE;AACF,EAAE;AACF,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;;;;"}
1
+ {"version":3,"file":"session-cookie-C-kIy9pI.js","sources":["../../../.svelte-kit/adapter-node/chunks/session-cookie.js"],"sourcesContent":["import { m as SESSION_TTL_SECONDS } from \"./helpers.js\";\n//#region src/lib/server/session-cookie.ts\n/**\n* Single source of truth for the `op_session` cookie's Set-Cookie attributes.\n*\n* Every issuer (login, session, setup/complete) and the sliding-renewal path in\n* hooks.server.ts builds the cookie through these helpers so the attributes can\n* never drift apart. Logout uses `clearSessionCookie()` with the SAME path so\n* the browser actually drops the cookie.\n*\n* Attribute rationale:\n* - HttpOnly — the cookie is the only credential the browser holds; XSS\n* must not be able to read it.\n* - SameSite=Lax — the cookie must ride along on top-level GET navigations\n* (typing the admin URL, following a bookmark) so a valid\n* session loads admin with no prompt. SameSite=Strict drops\n* the cookie on cross-site top-level GETs (e.g. opening the\n* console from a link in another app on the LAN), which\n* would force a needless re-prompt. State-mutating requests\n* are independently CSRF-guarded by the Origin check\n* (SEC-2) in hooks.server.ts, so Lax is safe here.\n* - Secure — set ONLY when the request arrived over HTTPS. LAN installs\n* are commonly plain HTTP; hardcoding Secure would make the\n* browser refuse to send the cookie and break login entirely\n* on those deployments. We honour `x-forwarded-proto` first\n* (reverse-proxy TLS termination) then the request URL.\n* - Path=/ — valid for the whole app; matched by the clear on logout.\n* - Max-Age — SESSION_TTL_SECONDS (14 days), in lockstep with the token expiry.\n*/\nvar SESSION_COOKIE_NAME = \"op_session\";\n/** True when the request reached us over HTTPS (direct or via TLS-terminating proxy). */\nfunction isSecureRequest(request) {\n\tconst forwarded = request.headers.get(\"x-forwarded-proto\");\n\tif (forwarded) return forwarded.split(\",\")[0].trim().toLowerCase() === \"https\";\n\ttry {\n\t\treturn new URL(request.url).protocol === \"https:\";\n\t} catch {\n\t\treturn false;\n\t}\n}\n/**\n* Build the `Set-Cookie` value that issues/renews the session cookie.\n* `secure` is derived from the request so LAN-over-HTTP installs still work.\n*/\nfunction sessionCookieHeader(token, request) {\n\tconst parts = [\n\t\t`${SESSION_COOKIE_NAME}=${token}`,\n\t\t\"HttpOnly\",\n\t\t\"SameSite=Lax\",\n\t\t\"Path=/\",\n\t\t`Max-Age=${SESSION_TTL_SECONDS}`\n\t];\n\tif (isSecureRequest(request)) parts.push(\"Secure\");\n\treturn parts.join(\"; \");\n}\n/**\n* Build the `Set-Cookie` value that clears the session cookie (logout).\n* Must mirror name/path/attributes of the issued cookie so the browser deletes it.\n*/\nfunction clearSessionCookieHeader(request) {\n\tconst parts = [\n\t\t`${SESSION_COOKIE_NAME}=`,\n\t\t\"HttpOnly\",\n\t\t\"SameSite=Lax\",\n\t\t\"Path=/\",\n\t\t\"Max-Age=0\"\n\t];\n\tif (isSecureRequest(request)) parts.push(\"Secure\");\n\treturn parts.join(\"; \");\n}\n//#endregion\nexport { clearSessionCookieHeader as n, sessionCookieHeader as r, SESSION_COOKIE_NAME as t };\n"],"names":[],"mappings":";;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;AACG,IAAC,mBAAmB,GAAG;AAC1B;AACA,SAAS,eAAe,CAAC,OAAO,EAAE;AAClC,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;AAC3D,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,OAAO;AAC/E,CAAC,IAAI;AACL,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,QAAQ;AACnD,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,KAAK;AACd,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,SAAS,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE;AAC7C,CAAC,MAAM,KAAK,GAAG;AACf,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACnC,EAAE,UAAU;AACZ,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC;AACjC,EAAE;AACF,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;AACA;AACA;AACA;AACA;AACA,SAAS,wBAAwB,CAAC,OAAO,EAAE;AAC3C,CAAC,MAAM,KAAK,GAAG;AACf,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAC3B,EAAE,UAAU;AACZ,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE;AACF,EAAE;AACF,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;;;;"}
@@ -1,4 +1,4 @@
1
- import { j as backupSetupInputs, aE as runDeploy, aB as resolveDeployJournalPath, aa as isSetupComplete, aD as resolveStackDir, ao as readDeployJournal, ah as markSetupComplete } from './src-CHZNd5cO.js';
1
+ import { j as backupSetupInputs, aI as runDeploy, aF as resolveDeployJournalPath, ae as isSetupComplete, aH as resolveStackDir, as as readDeployJournal, al as markSetupComplete } from './src-BEj0DuSB.js';
2
2
 
3
3
  //#region src/lib/server/setup-deploy.ts
4
4
  var _state = {
@@ -72,4 +72,4 @@ function prepareSetupRestorePoint(state) {
72
72
  }
73
73
 
74
74
  export { getDeployState as g, prepareSetupRestorePoint as p, resetDeployState as r, startDeploy as s };
75
- //# sourceMappingURL=setup-deploy-BBl1pM-Q.js.map
75
+ //# sourceMappingURL=setup-deploy-BL_wmz6j.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup-deploy-BBl1pM-Q.js","sources":["../../../.svelte-kit/adapter-node/chunks/setup-deploy.js"],"sourcesContent":["import { A as readDeployJournal, M as runDeploy, O as backupSetupInputs, Yt as resolveStackDir, j as resolveDeployJournalPath, k as markSetupComplete, ut as isSetupComplete } from \"./src.js\";\n//#region src/lib/server/setup-deploy.ts\nvar _state = {\n\tdeploying: false,\n\tsetupComplete: false,\n\tdeployStatus: [],\n\tdeployError: null,\n\timageWarning: null,\n\tphase: \"writing-config\"\n};\nvar _deployPromise = null;\nfunction deployStateFromJournal(state) {\n\tconst journal = readDeployJournal(resolveDeployJournalPath(state));\n\treturn {\n\t\tdeploying: journal.deploying,\n\t\tinterrupted: journal.interrupted,\n\t\tsetupComplete: journal.setupComplete || isSetupComplete(resolveStackDir()),\n\t\tdeployStatus: journal.deployStatus,\n\t\tdeployError: journal.deployError,\n\t\timageWarning: journal.imageWarning,\n\t\tphase: journal.phase\n\t};\n}\nfunction getDeployState(state) {\n\tif (state) _state = deployStateFromJournal(state);\n\telse if (!_state.setupComplete && !_state.deploying && isSetupComplete(resolveStackDir())) _state.setupComplete = true;\n\treturn {\n\t\t..._state,\n\t\tdeployStatus: _state.deployStatus.map((entry) => ({ ...entry }))\n\t};\n}\nfunction resetDeployState() {\n\t_state = {\n\t\tdeploying: false,\n\t\tsetupComplete: false,\n\t\tdeployStatus: [],\n\t\tdeployError: null,\n\t\timageWarning: null,\n\t\tphase: \"writing-config\"\n\t};\n}\nfunction startDeploy(state) {\n\tif (_deployPromise) {\n\t\t_state.deployError = \"install_in_progress: A deploy is already running. Wait for it to finish.\";\n\t\treturn;\n\t}\n\t_deployPromise = (async () => {\n\t\tawait runDeploy(state, {\n\t\t\tjournalPath: resolveDeployJournalPath(state),\n\t\t\tonUpdate(progress) {\n\t\t\t\t_state = {\n\t\t\t\t\tdeploying: progress.deploying,\n\t\t\t\t\tinterrupted: progress.interrupted,\n\t\t\t\t\tsetupComplete: progress.setupComplete,\n\t\t\t\t\tdeployStatus: progress.deployStatus,\n\t\t\t\t\tdeployError: progress.deployError,\n\t\t\t\t\timageWarning: progress.imageWarning,\n\t\t\t\t\tphase: progress.phase\n\t\t\t\t};\n\t\t\t},\n\t\t\tmarkSetupComplete() {\n\t\t\t\tmarkSetupComplete(state);\n\t\t\t}\n\t\t});\n\t})().finally(() => {\n\t\t_deployPromise = null;\n\t});\n}\nfunction prepareSetupRestorePoint(state) {\n\treturn backupSetupInputs(state);\n}\n//#endregion\nexport { startDeploy as i, prepareSetupRestorePoint as n, resetDeployState as r, getDeployState as t };\n"],"names":[],"mappings":";;AACA;AACA,IAAI,MAAM,GAAG;AACb,CAAC,SAAS,EAAE,KAAK;AACjB,CAAC,aAAa,EAAE,KAAK;AACrB,CAAC,YAAY,EAAE,EAAE;AACjB,CAAC,WAAW,EAAE,IAAI;AAClB,CAAC,YAAY,EAAE,IAAI;AACnB,CAAC,KAAK,EAAE;AACR,CAAC;AACD,IAAI,cAAc,GAAG,IAAI;AACzB,SAAS,sBAAsB,CAAC,KAAK,EAAE;AACvC,CAAC,MAAM,OAAO,GAAG,iBAAiB,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;AACnE,CAAC,OAAO;AACR,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;AAC9B,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;AAClC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;AAC5E,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;AACpC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;AAClC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;AACpC,EAAE,KAAK,EAAE,OAAO,CAAC;AACjB,EAAE;AACF;AACA,SAAS,cAAc,CAAC,KAAK,EAAE;AAC/B,CAAC,IAAI,KAAK,EAAE,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC;AAClD,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,EAAE,MAAM,CAAC,aAAa,GAAG,IAAI;AACvH,CAAC,OAAO;AACR,EAAE,GAAG,MAAM;AACX,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AACjE,EAAE;AACF;AACA,SAAS,gBAAgB,GAAG;AAC5B,CAAC,MAAM,GAAG;AACV,EAAE,SAAS,EAAE,KAAK;AAClB,EAAE,aAAa,EAAE,KAAK;AACtB,EAAE,YAAY,EAAE,EAAE;AAClB,EAAE,WAAW,EAAE,IAAI;AACnB,EAAE,YAAY,EAAE,IAAI;AACpB,EAAE,KAAK,EAAE;AACT,EAAE;AACF;AACA,SAAS,WAAW,CAAC,KAAK,EAAE;AAC5B,CAAC,IAAI,cAAc,EAAE;AACrB,EAAE,MAAM,CAAC,WAAW,GAAG,0EAA0E;AACjG,EAAE;AACF,CAAC;AACD,CAAC,cAAc,GAAG,CAAC,YAAY;AAC/B,EAAE,MAAM,SAAS,CAAC,KAAK,EAAE;AACzB,GAAG,WAAW,EAAE,wBAAwB,CAAC,KAAK,CAAC;AAC/C,GAAG,QAAQ,CAAC,QAAQ,EAAE;AACtB,IAAI,MAAM,GAAG;AACb,KAAK,SAAS,EAAE,QAAQ,CAAC,SAAS;AAClC,KAAK,WAAW,EAAE,QAAQ,CAAC,WAAW;AACtC,KAAK,aAAa,EAAE,QAAQ,CAAC,aAAa;AAC1C,KAAK,YAAY,EAAE,QAAQ,CAAC,YAAY;AACxC,KAAK,WAAW,EAAE,QAAQ,CAAC,WAAW;AACtC,KAAK,YAAY,EAAE,QAAQ,CAAC,YAAY;AACxC,KAAK,KAAK,EAAE,QAAQ,CAAC;AACrB,KAAK;AACL,GAAG,CAAC;AACJ,GAAG,iBAAiB,GAAG;AACvB,IAAI,iBAAiB,CAAC,KAAK,CAAC;AAC5B,GAAG;AACH,GAAG,CAAC;AACJ,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM;AACpB,EAAE,cAAc,GAAG,IAAI;AACvB,CAAC,CAAC,CAAC;AACH;AACA,SAAS,wBAAwB,CAAC,KAAK,EAAE;AACzC,CAAC,OAAO,iBAAiB,CAAC,KAAK,CAAC;AAChC;;;;"}
1
+ {"version":3,"file":"setup-deploy-BL_wmz6j.js","sources":["../../../.svelte-kit/adapter-node/chunks/setup-deploy.js"],"sourcesContent":["import { A as readDeployJournal, M as runDeploy, O as backupSetupInputs, Yt as resolveStackDir, j as resolveDeployJournalPath, k as markSetupComplete, ut as isSetupComplete } from \"./src.js\";\n//#region src/lib/server/setup-deploy.ts\nvar _state = {\n\tdeploying: false,\n\tsetupComplete: false,\n\tdeployStatus: [],\n\tdeployError: null,\n\timageWarning: null,\n\tphase: \"writing-config\"\n};\nvar _deployPromise = null;\nfunction deployStateFromJournal(state) {\n\tconst journal = readDeployJournal(resolveDeployJournalPath(state));\n\treturn {\n\t\tdeploying: journal.deploying,\n\t\tinterrupted: journal.interrupted,\n\t\tsetupComplete: journal.setupComplete || isSetupComplete(resolveStackDir()),\n\t\tdeployStatus: journal.deployStatus,\n\t\tdeployError: journal.deployError,\n\t\timageWarning: journal.imageWarning,\n\t\tphase: journal.phase\n\t};\n}\nfunction getDeployState(state) {\n\tif (state) _state = deployStateFromJournal(state);\n\telse if (!_state.setupComplete && !_state.deploying && isSetupComplete(resolveStackDir())) _state.setupComplete = true;\n\treturn {\n\t\t..._state,\n\t\tdeployStatus: _state.deployStatus.map((entry) => ({ ...entry }))\n\t};\n}\nfunction resetDeployState() {\n\t_state = {\n\t\tdeploying: false,\n\t\tsetupComplete: false,\n\t\tdeployStatus: [],\n\t\tdeployError: null,\n\t\timageWarning: null,\n\t\tphase: \"writing-config\"\n\t};\n}\nfunction startDeploy(state) {\n\tif (_deployPromise) {\n\t\t_state.deployError = \"install_in_progress: A deploy is already running. Wait for it to finish.\";\n\t\treturn;\n\t}\n\t_deployPromise = (async () => {\n\t\tawait runDeploy(state, {\n\t\t\tjournalPath: resolveDeployJournalPath(state),\n\t\t\tonUpdate(progress) {\n\t\t\t\t_state = {\n\t\t\t\t\tdeploying: progress.deploying,\n\t\t\t\t\tinterrupted: progress.interrupted,\n\t\t\t\t\tsetupComplete: progress.setupComplete,\n\t\t\t\t\tdeployStatus: progress.deployStatus,\n\t\t\t\t\tdeployError: progress.deployError,\n\t\t\t\t\timageWarning: progress.imageWarning,\n\t\t\t\t\tphase: progress.phase\n\t\t\t\t};\n\t\t\t},\n\t\t\tmarkSetupComplete() {\n\t\t\t\tmarkSetupComplete(state);\n\t\t\t}\n\t\t});\n\t})().finally(() => {\n\t\t_deployPromise = null;\n\t});\n}\nfunction prepareSetupRestorePoint(state) {\n\treturn backupSetupInputs(state);\n}\n//#endregion\nexport { startDeploy as i, prepareSetupRestorePoint as n, resetDeployState as r, getDeployState as t };\n"],"names":[],"mappings":";;AACA;AACA,IAAI,MAAM,GAAG;AACb,CAAC,SAAS,EAAE,KAAK;AACjB,CAAC,aAAa,EAAE,KAAK;AACrB,CAAC,YAAY,EAAE,EAAE;AACjB,CAAC,WAAW,EAAE,IAAI;AAClB,CAAC,YAAY,EAAE,IAAI;AACnB,CAAC,KAAK,EAAE;AACR,CAAC;AACD,IAAI,cAAc,GAAG,IAAI;AACzB,SAAS,sBAAsB,CAAC,KAAK,EAAE;AACvC,CAAC,MAAM,OAAO,GAAG,iBAAiB,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;AACnE,CAAC,OAAO;AACR,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;AAC9B,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;AAClC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;AAC5E,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;AACpC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;AAClC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;AACpC,EAAE,KAAK,EAAE,OAAO,CAAC;AACjB,EAAE;AACF;AACA,SAAS,cAAc,CAAC,KAAK,EAAE;AAC/B,CAAC,IAAI,KAAK,EAAE,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC;AAClD,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,EAAE,MAAM,CAAC,aAAa,GAAG,IAAI;AACvH,CAAC,OAAO;AACR,EAAE,GAAG,MAAM;AACX,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AACjE,EAAE;AACF;AACA,SAAS,gBAAgB,GAAG;AAC5B,CAAC,MAAM,GAAG;AACV,EAAE,SAAS,EAAE,KAAK;AAClB,EAAE,aAAa,EAAE,KAAK;AACtB,EAAE,YAAY,EAAE,EAAE;AAClB,EAAE,WAAW,EAAE,IAAI;AACnB,EAAE,YAAY,EAAE,IAAI;AACpB,EAAE,KAAK,EAAE;AACT,EAAE;AACF;AACA,SAAS,WAAW,CAAC,KAAK,EAAE;AAC5B,CAAC,IAAI,cAAc,EAAE;AACrB,EAAE,MAAM,CAAC,WAAW,GAAG,0EAA0E;AACjG,EAAE;AACF,CAAC;AACD,CAAC,cAAc,GAAG,CAAC,YAAY;AAC/B,EAAE,MAAM,SAAS,CAAC,KAAK,EAAE;AACzB,GAAG,WAAW,EAAE,wBAAwB,CAAC,KAAK,CAAC;AAC/C,GAAG,QAAQ,CAAC,QAAQ,EAAE;AACtB,IAAI,MAAM,GAAG;AACb,KAAK,SAAS,EAAE,QAAQ,CAAC,SAAS;AAClC,KAAK,WAAW,EAAE,QAAQ,CAAC,WAAW;AACtC,KAAK,aAAa,EAAE,QAAQ,CAAC,aAAa;AAC1C,KAAK,YAAY,EAAE,QAAQ,CAAC,YAAY;AACxC,KAAK,WAAW,EAAE,QAAQ,CAAC,WAAW;AACtC,KAAK,YAAY,EAAE,QAAQ,CAAC,YAAY;AACxC,KAAK,KAAK,EAAE,QAAQ,CAAC;AACrB,KAAK;AACL,GAAG,CAAC;AACJ,GAAG,iBAAiB,GAAG;AACvB,IAAI,iBAAiB,CAAC,KAAK,CAAC;AAC5B,GAAG;AACH,GAAG,CAAC;AACJ,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM;AACpB,EAAE,cAAc,GAAG,IAAI;AACvB,CAAC,CAAC,CAAC;AACH;AACA,SAAS,wBAAwB,CAAC,KAAK,EAAE;AACzC,CAAC,OAAO,iBAAiB,CAAC,KAAK,CAAC;AAChC;;;;"}
@@ -261,7 +261,7 @@ function releaseInstallLock(handle) {
261
261
  }
262
262
  }
263
263
  //#endregion
264
- //#region ../lib/src/control-plane/env.ts
264
+ //#region ../lib/package.json
265
265
  var import_main = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
266
266
  var fs$1 = __require("fs");
267
267
  var path = __require("path");
@@ -529,6 +529,119 @@ var import_main = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
529
529
  module.exports.populate = DotenvModule.populate;
530
530
  module.exports = DotenvModule;
531
531
  })))();
532
+ var package_default = {
533
+ version: "0.12.0-rc.2"};
534
+ //#endregion
535
+ //#region ../lib/src/control-plane/versioning.ts
536
+ var SEMVER_RE = /^v?\d+\.\d+\.\d+(?:[-+].*)?$/;
537
+ /**
538
+ * The canonical control-plane / platform version.
539
+ *
540
+ * This is the ONE source of truth for "which @openpalm/lib (and therefore which
541
+ * RELEASE_MIGRATIONS + lifecycle) is running." It travels with the data/ui
542
+ * build (the published @openpalm/ui inlines this lib), so it self-updates in
543
+ * place — it is NOT the Electron harness version (see
544
+ * packages/electron/src/harness-contract.ts: HARNESS_CONTRACT_VERSION).
545
+ *
546
+ * Stored Docker-canonical (`v`-prefixed) because every consumer that stamps a
547
+ * version into stack.env / a skeleton / a migration target wants the Docker tag
548
+ * form. Use `formatForDisplay` for user-facing strings and `normalizeVersion`
549
+ * for npm-style (no-`v`) comparisons.
550
+ *
551
+ * Replaces the former implicit `v${libPkg.version}` scattered through lifecycle
552
+ * / migrations so the platform version has a single, named home.
553
+ */
554
+ var PLATFORM_VERSION = formatForDocker(package_default.version);
555
+ function isComparableSemver(version) {
556
+ return !!version && SEMVER_RE.test(version.trim());
557
+ }
558
+ function parseComparableVersion(version) {
559
+ const clean = normalizeVersion(version).split("+")[0];
560
+ const dashIdx = clean.indexOf("-");
561
+ const main = dashIdx === -1 ? clean : clean.slice(0, dashIdx);
562
+ const prerelease = dashIdx === -1 ? null : clean.slice(dashIdx + 1);
563
+ const [major = 0, minor = 0, patch = 0] = main.split(".").map(Number);
564
+ return {
565
+ major,
566
+ minor,
567
+ patch,
568
+ prerelease
569
+ };
570
+ }
571
+ function comparePrerelease(a, b) {
572
+ const aParts = a.split(".");
573
+ const bParts = b.split(".");
574
+ for (let i = 0; i < Math.max(aParts.length, bParts.length); i++) {
575
+ if (i >= aParts.length) return -1;
576
+ if (i >= bParts.length) return 1;
577
+ const aNum = Number(aParts[i]);
578
+ const bNum = Number(bParts[i]);
579
+ const aIsNum = !Number.isNaN(aNum);
580
+ const bIsNum = !Number.isNaN(bNum);
581
+ if (aIsNum && bIsNum) {
582
+ if (aNum !== bNum) return aNum > bNum ? 1 : -1;
583
+ continue;
584
+ }
585
+ if (aIsNum !== bIsNum) return aIsNum ? -1 : 1;
586
+ if (aParts[i] !== bParts[i]) return aParts[i] > bParts[i] ? 1 : -1;
587
+ }
588
+ return 0;
589
+ }
590
+ function compareComparableVersions(a, b) {
591
+ const aParsed = parseComparableVersion(a);
592
+ const bParsed = parseComparableVersion(b);
593
+ if (aParsed.major !== bParsed.major) return aParsed.major > bParsed.major ? 1 : -1;
594
+ if (aParsed.minor !== bParsed.minor) return aParsed.minor > bParsed.minor ? 1 : -1;
595
+ if (aParsed.patch !== bParsed.patch) return aParsed.patch > bParsed.patch ? 1 : -1;
596
+ if (aParsed.prerelease === null && bParsed.prerelease !== null) return 1;
597
+ if (aParsed.prerelease !== null && bParsed.prerelease === null) return -1;
598
+ if (aParsed.prerelease !== null && bParsed.prerelease !== null) return comparePrerelease(aParsed.prerelease, bParsed.prerelease);
599
+ return 0;
600
+ }
601
+ function majorVersionOf(version) {
602
+ if (!isComparableSemver(version)) return null;
603
+ return parseComparableVersion(version).major;
604
+ }
605
+ function isSameMajorVersion(a, b) {
606
+ const aMajor = majorVersionOf(a);
607
+ const bMajor = majorVersionOf(b);
608
+ return aMajor !== null && bMajor !== null && aMajor === bMajor;
609
+ }
610
+ /**
611
+ * npm/display form: strip a single leading `v` and trim. `v0.12.0` → `0.12.0`.
612
+ * Pass-through for an already-bare version. Empty/whitespace → ''.
613
+ */
614
+ function normalizeVersion(version) {
615
+ return (version ?? "").trim().replace(/^v/, "");
616
+ }
617
+ /**
618
+ * Docker-tag form: ensure exactly one leading `v`. `0.12.0` → `v0.12.0`,
619
+ * `v0.12.0` → `v0.12.0`. Empty/whitespace → '' (callers gate on RELEASE_TAG_REGEX
620
+ * before treating a value as a real tag).
621
+ */
622
+ function formatForDocker(version) {
623
+ const bare = normalizeVersion(version);
624
+ return bare ? `v${bare}` : "";
625
+ }
626
+ /**
627
+ * True when `version` carries a semver pre-release segment (`0.12.0-rc.1`).
628
+ * Build metadata (`+build.5`) is NOT a pre-release. Non-semver → false.
629
+ */
630
+ function isPrerelease(version) {
631
+ if (!isComparableSemver(version)) return false;
632
+ return parseComparableVersion(version).prerelease !== null;
633
+ }
634
+ /**
635
+ * User-facing presentation form: drop the leading `v` so the UI shows one
636
+ * canonical spelling regardless of whether the value arrived as a Docker tag or
637
+ * an npm version. Non-semver values are returned trimmed but otherwise untouched
638
+ * (e.g. a moving `latest`/`dev` tag).
639
+ */
640
+ function formatForDisplay(version) {
641
+ return normalizeVersion(version);
642
+ }
643
+ //#endregion
644
+ //#region ../lib/src/control-plane/env.ts
532
645
  function parseEnvContent(content) {
533
646
  return (0, import_main.parse)(content);
534
647
  }
@@ -675,64 +788,6 @@ function buildPlatformImageTagEnv(tag, perImage, pinnedImages = []) {
675
788
  };
676
789
  }
677
790
  //#endregion
678
- //#region ../lib/src/control-plane/versioning.ts
679
- var SEMVER_RE = /^v?\d+\.\d+\.\d+(?:[-+].*)?$/;
680
- function isComparableSemver(version) {
681
- return !!version && SEMVER_RE.test(version.trim());
682
- }
683
- function parseComparableVersion(version) {
684
- const clean = version.trim().replace(/^v/, "").split("+")[0];
685
- const dashIdx = clean.indexOf("-");
686
- const main = dashIdx === -1 ? clean : clean.slice(0, dashIdx);
687
- const prerelease = dashIdx === -1 ? null : clean.slice(dashIdx + 1);
688
- const [major = 0, minor = 0, patch = 0] = main.split(".").map(Number);
689
- return {
690
- major,
691
- minor,
692
- patch,
693
- prerelease
694
- };
695
- }
696
- function comparePrerelease(a, b) {
697
- const aParts = a.split(".");
698
- const bParts = b.split(".");
699
- for (let i = 0; i < Math.max(aParts.length, bParts.length); i++) {
700
- if (i >= aParts.length) return -1;
701
- if (i >= bParts.length) return 1;
702
- const aNum = Number(aParts[i]);
703
- const bNum = Number(bParts[i]);
704
- const aIsNum = !Number.isNaN(aNum);
705
- const bIsNum = !Number.isNaN(bNum);
706
- if (aIsNum && bIsNum) {
707
- if (aNum !== bNum) return aNum > bNum ? 1 : -1;
708
- continue;
709
- }
710
- if (aIsNum !== bIsNum) return aIsNum ? -1 : 1;
711
- if (aParts[i] !== bParts[i]) return aParts[i] > bParts[i] ? 1 : -1;
712
- }
713
- return 0;
714
- }
715
- function compareComparableVersions(a, b) {
716
- const aParsed = parseComparableVersion(a);
717
- const bParsed = parseComparableVersion(b);
718
- if (aParsed.major !== bParsed.major) return aParsed.major > bParsed.major ? 1 : -1;
719
- if (aParsed.minor !== bParsed.minor) return aParsed.minor > bParsed.minor ? 1 : -1;
720
- if (aParsed.patch !== bParsed.patch) return aParsed.patch > bParsed.patch ? 1 : -1;
721
- if (aParsed.prerelease === null && bParsed.prerelease !== null) return 1;
722
- if (aParsed.prerelease !== null && bParsed.prerelease === null) return -1;
723
- if (aParsed.prerelease !== null && bParsed.prerelease !== null) return comparePrerelease(aParsed.prerelease, bParsed.prerelease);
724
- return 0;
725
- }
726
- function majorVersionOf(version) {
727
- if (!isComparableSemver(version)) return null;
728
- return parseComparableVersion(version).major;
729
- }
730
- function isSameMajorVersion(a, b) {
731
- const aMajor = majorVersionOf(a);
732
- const bMajor = majorVersionOf(b);
733
- return aMajor !== null && bMajor !== null && aMajor === bMajor;
734
- }
735
- //#endregion
736
791
  //#region ../lib/src/control-plane/migrations.ts
737
792
  /**
738
793
  * On-disk layout migration harness.
@@ -4734,10 +4789,6 @@ function resolveLocalOpenpalmDir() {
4734
4789
  */
4735
4790
  var NPM_REGISTRY = "https://registry.npmjs.org";
4736
4791
  var UI_PACKAGE = "@openpalm/ui";
4737
- /** Strip a single leading 'v' so a release ref (v1.2.3) becomes an npm version (1.2.3). */
4738
- function toNpmVersion(repoRef) {
4739
- return repoRef.replace(/^v/, "");
4740
- }
4741
4792
  /**
4742
4793
  * Resolve the npm manifest for `@openpalm/ui` by exact version OR dist-tag.
4743
4794
  * `GET <registry>/@openpalm/ui/<version-or-tag>` returns the abbreviated
@@ -4748,10 +4799,13 @@ async function fetchNpmUiManifest(versionOrTag) {
4748
4799
  if (!res.ok) throw new Error(`npm registry returned HTTP ${res.status} for ${UI_PACKAGE}@${versionOrTag}`);
4749
4800
  const m = await res.json();
4750
4801
  if (!m.version || !m.dist?.tarball) throw new Error(`npm manifest for ${UI_PACKAGE}@${versionOrTag} is missing version/dist.tarball`);
4802
+ const rawMin = typeof m.minHarnessContract === "number" ? m.minHarnessContract : Number(m.minHarnessContract);
4803
+ const minHarnessContract = Number.isFinite(rawMin) && rawMin > 0 ? rawMin : 0;
4751
4804
  return {
4752
4805
  version: m.version,
4753
4806
  tarball: m.dist.tarball,
4754
- integrity: m.dist.integrity ?? null
4807
+ integrity: m.dist.integrity ?? null,
4808
+ minHarnessContract
4755
4809
  };
4756
4810
  }
4757
4811
  /**
@@ -4828,7 +4882,7 @@ async function downloadNpmUiBundle(manifest, uiDir, dataDir) {
4828
4882
  async function seedUiBuild(repoRef, dataDir, options) {
4829
4883
  const uiDir = join(dataDir, "ui");
4830
4884
  mkdirSync(uiDir, { recursive: true });
4831
- const manifest = await fetchNpmUiManifest(toNpmVersion(repoRef));
4885
+ const manifest = await fetchNpmUiManifest(normalizeVersion(repoRef));
4832
4886
  logger$9.debug("downloading UI build from npm", { version: manifest.version });
4833
4887
  await downloadNpmUiBundle(manifest, uiDir, dataDir);
4834
4888
  }
@@ -6723,8 +6777,6 @@ function writeFileAtomic(path, content, mode) {
6723
6777
  writeFileSync(tmp, content, mode !== void 0 ? { mode } : {});
6724
6778
  renameSync(tmp, path);
6725
6779
  }
6726
- var package_default = {
6727
- version: "0.12.0-rc.1"};
6728
6780
  //#endregion
6729
6781
  //#region ../lib/src/control-plane/rollback.ts
6730
6782
  /**
@@ -6878,9 +6930,12 @@ var DOCKER_REGISTRY_TIMEOUT_MS = 1e4;
6878
6930
  /**
6879
6931
  * Resolve the best Docker image tag from a registry tags payload.
6880
6932
  *
6881
- * Constraints (both optional):
6882
- * - `sameMajorAs` — only consider tags whose major component matches this tag.
6883
- * - `atOrBelow` — only consider tags whose version is <= this tag.
6933
+ * Constraints (all optional):
6934
+ * - `sameMajorAs` — only consider tags whose major component matches this tag.
6935
+ * - `atOrBelow` — only consider tags whose version is <= this tag.
6936
+ * - `skipPrerelease` — ignore prerelease tags (`-rc`, `-beta`, …). Used so a
6937
+ * STABLE base never auto-jumps onto a prerelease (#494),
6938
+ * mirroring the UI card's channel gate.
6884
6939
  *
6885
6940
  * With no constraints: returns the first semver tag found, or the first
6886
6941
  * non-"latest" tag as a fallback (mirrors the original resolveNewestDockerTag).
@@ -6889,8 +6944,8 @@ var DOCKER_REGISTRY_TIMEOUT_MS = 1e4;
6889
6944
  function resolveNewestDockerTag(payload, constraints = {}) {
6890
6945
  const results = payload?.results;
6891
6946
  if (!Array.isArray(results)) return null;
6892
- const { sameMajorAs, atOrBelow } = constraints;
6893
- if (!(sameMajorAs !== void 0 || atOrBelow !== void 0)) {
6947
+ const { sameMajorAs, atOrBelow, skipPrerelease } = constraints;
6948
+ if (!(sameMajorAs !== void 0 || atOrBelow !== void 0 || skipPrerelease === true)) {
6894
6949
  let fallback = null;
6895
6950
  for (const entry of results) {
6896
6951
  const name = typeof entry?.name === "string" ? entry.name.trim() : "";
@@ -6904,6 +6959,7 @@ function resolveNewestDockerTag(payload, constraints = {}) {
6904
6959
  for (const entry of results) {
6905
6960
  const name = typeof entry?.name === "string" ? entry.name.trim() : "";
6906
6961
  if (!isComparableSemver(name)) continue;
6962
+ if (skipPrerelease && isPrerelease(name)) continue;
6907
6963
  if (sameMajorAs !== void 0 && !isSameMajorVersion(name, sameMajorAs)) continue;
6908
6964
  if (atOrBelow !== void 0 && compareComparableVersions(name, atOrBelow) > 0) continue;
6909
6965
  if (!best || compareComparableVersions(name, best) > 0) best = name;
@@ -6913,7 +6969,32 @@ function resolveNewestDockerTag(payload, constraints = {}) {
6913
6969
  function resolvePlatformVersionPolicyBaseTag(state) {
6914
6970
  const configured = parseEnvFile(`${state.stashDir}/env/stack.env`).OP_IMAGE_TAG?.trim();
6915
6971
  if (isComparableSemver(configured)) return configured;
6916
- return `v${package_default.version}`;
6972
+ return PLATFORM_VERSION;
6973
+ }
6974
+ /**
6975
+ * Host-vs-target guard (#492), keyed on the RUNNING control-plane version.
6976
+ *
6977
+ * The migrations a release needs live inside the @openpalm/lib that is actually
6978
+ * executing — i.e. PLATFORM_VERSION (the version of the running data/ui build, or
6979
+ * the compiled-in CLI lib). If a user points the stack at a tag NEWER than the
6980
+ * control plane they're running, `ensureReleaseMigrated` runs an OLD migration
6981
+ * array that doesn't contain that release's migrations → the new images come up
6982
+ * against half-migrated files. There is no safe recovery, so this is a HARD block
6983
+ * (not a warning): nothing is written before it throws.
6984
+ *
6985
+ * The thin-harness design (§6.5) makes this satisfiable: the supervisor self-
6986
+ * updates data/ui to the current platform BEFORE the UI serves the upgrade
6987
+ * request, so "target ≤ running platform" only fails when the user genuinely
6988
+ * picks a tag the running control plane cannot migrate to — at which point the
6989
+ * fix is to update the app / control plane first, not to proceed.
6990
+ *
6991
+ * Non-semver targets (a moving `latest`/`dev` tag) are not comparable and are
6992
+ * left to the resolver paths that turn them into a concrete release first.
6993
+ */
6994
+ function assertTargetNotNewerThanPlatform(targetTag) {
6995
+ if (!isComparableSemver(targetTag) || !isComparableSemver(PLATFORM_VERSION)) return;
6996
+ if (compareComparableVersions(targetTag, PLATFORM_VERSION) <= 0) return;
6997
+ throw new Error(`Version ${formatForDisplay(targetTag)} is newer than the OpenPalm control plane you're running (${formatForDisplay(PLATFORM_VERSION)}). Update the OpenPalm app / control plane first, then update the stack. Nothing was changed.`);
6917
6998
  }
6918
6999
  function resolveImageNamespace(state) {
6919
7000
  const namespace = (parseEnvFile(`${state.stashDir}/env/stack.env`).OP_IMAGE_NAMESPACE ?? process.env.OP_IMAGE_NAMESPACE ?? "openpalm").trim().toLowerCase();
@@ -7017,9 +7098,13 @@ async function resolveLatestPlatformTag(namespace) {
7017
7098
  if (!latestTag) throw new Error("No usable Docker image tag found");
7018
7099
  return latestTag;
7019
7100
  }
7020
- async function resolveLatestPlatformTagForCurrentMajor(namespace, currentTag) {
7021
- const latestTag = resolveNewestDockerTag(await fetchDockerTagsPayload(namespace, "assistant"), { sameMajorAs: currentTag });
7022
- if (!latestTag) throw new Error(`No usable Docker image tag found in major ${currentTag.replace(/^v/, "").split(".")[0]}`);
7101
+ async function resolveLatestPlatformTagForCurrentMajor(namespace, currentTag, opts = {}) {
7102
+ const skipPrerelease = !opts.allowPrerelease && !isPrerelease(currentTag);
7103
+ const latestTag = resolveNewestDockerTag(await fetchDockerTagsPayload(namespace, "assistant"), {
7104
+ sameMajorAs: currentTag,
7105
+ skipPrerelease
7106
+ });
7107
+ if (!latestTag) throw new Error(`No usable Docker image tag found in major ${majorVersionOf(currentTag) ?? currentTag}`);
7023
7108
  return latestTag;
7024
7109
  }
7025
7110
  async function updateStackEnvToLatestImageTag(state, resolvedTag) {
@@ -7077,11 +7162,12 @@ async function withStackEnvRollback(state, run) {
7077
7162
  *
7078
7163
  * Callers handle their own audit logging and admin self-recreation.
7079
7164
  */
7080
- async function performUpgrade(state) {
7165
+ async function performUpgrade(state, opts = {}) {
7081
7166
  return withStackEnvRollback(state, async () => {
7082
7167
  const composeOpts = buildComposeOptions(state);
7083
7168
  const namespace = resolveImageNamespace(state);
7084
- const imageTag = await resolveLatestPlatformTagForCurrentMajor(namespace, resolvePlatformVersionPolicyBaseTag(state));
7169
+ const imageTag = await resolveLatestPlatformTagForCurrentMajor(namespace, resolvePlatformVersionPolicyBaseTag(state), { allowPrerelease: opts.allowPrerelease });
7170
+ assertTargetNotNewerThanPlatform(imageTag);
7085
7171
  ensureReleaseMigrated({
7086
7172
  homeDir: state.homeDir,
7087
7173
  targetVersion: imageTag
@@ -7123,6 +7209,7 @@ async function applyTagChange(state, tag) {
7123
7209
  const msg = e instanceof Error ? e.message : String(e);
7124
7210
  throw new Error(`Cannot resolve "latest" to a concrete release: ${msg}. Check your network connection or select a specific version.`);
7125
7211
  }
7212
+ assertTargetNotNewerThanPlatform(resolvedTag);
7126
7213
  const stackEnvPath = `${state.stashDir}/env/stack.env`;
7127
7214
  const currentEnv = parseEnvFile(stackEnvPath);
7128
7215
  const pinnedImages = parsePinnedImages(currentEnv.OP_PINNED_IMAGES);
@@ -9768,5 +9855,5 @@ function collectBindAddressWarnings(env) {
9768
9855
  return warnings;
9769
9856
  }
9770
9857
 
9771
- export { getAddonProfiles as $, AKM_USER_ENV_REF as A, composeStop as B, CORE_SERVICES as C, composeUp as D, createLogger as E, createOpenCodeClient as F, createState as G, deleteUserEnvKey as H, deriveLaunchStatus as I, deriveLocalStackState as J, detectGpu as K, detectHostOpenCode as L, MigrationError as M, detectLocalProviders as N, detectRuntime as O, disableHostAkmSharing as P, enableHostAkmSharing as Q, ensureAkmUserEnv as R, ensureHomeDirs as S, ensureMigrated as T, ensureOpenCodeConfig as U, ensureOpenCodeSystemConfig as V, ensureSecrets as W, executeAutomation as X, fetchProviderModels as Y, getAddonProfileAvailability as Z, getAddonProfileSelection as _, addonProfileId as a, getAddonServiceNames as a0, getAkmStats as a1, getDockerEvents as a2, getHostAkmSharingStatus as a3, getRegistryAddonConfig as a4, hostAkmStashPath as a5, importHostOpenCode as a6, initializeStateSecrets as a7, isAllowedService as a8, isHostAkmAvailable as a9, resolveDataDir as aA, resolveDeployJournalPath as aB, resolveRuntimeFiles as aC, resolveStackDir as aD, runDeploy as aE, seedUiBuild as aF, setAddonEnabled as aG, setAddonProfileSelection as aH, summarizeComposeStderr as aI, useExistingProviderForAssistantCli as aJ, validateProposedState as aK, writeFileAtomic as aL, writeRuntimeFiles as aM, writeSecretFile as aN, writeStackSecretEnv as aO, writeTaskFile as aP, writeUserEnvKey as aQ, writeVoiceVars as aR, isSetupComplete as aa, listAssistantCliTools as ab, listAvailableAddonIds as ac, listEnabledAddonIds as ad, listSecretFiles as ae, loadAutomations as af, mapDockerError as ag, markSetupComplete as ah, parseComposeStderr as ai, parseEnvFile as aj, patchSecretsEnvFile as ak, performSetup as al, performUpgrade as am, readAutomationLogs as an, readDeployJournal as ao, readSecret as ap, readSecretFile as aq, readStackEnv as ar, readStackRuntimeEnv as as, readStackSecretEnv as at, readTaskFile as au, readUserEnvFile as av, recommendSetup as aw, removeSecretFile as ax, removeTaskFile as ay, resolveComposeProjectName as az, annotateAddonProfileAvailability as b, applyInstall as c, applyTagChange as d, applyUninstall as e, applyUpdate as f, assertSafeSecretFilename as g, assertSafeTaskFilename as h, authJsonPath as i, backupSetupInputs as j, buildAkmEndpoint as k, buildAkmEnv as l, buildComposeOptions as m, buildManagedServices as n, checkDocker as o, checkDockerCompose as p, classifyLocalInstall as q, collectBindAddressWarnings as r, composeDown as s, composeLogs as t, composePreflight as u, composePs as v, composePull as w, composeRestart as x, composeStart as y, composeStats as z };
9772
- //# sourceMappingURL=src-CHZNd5cO.js.map
9858
+ export { formatForDisplay as $, AKM_USER_ENV_REF as A, composeStats as B, CORE_SERVICES as C, composeStop as D, composeUp as E, createLogger as F, createOpenCodeClient as G, createState as H, deleteUserEnvKey as I, deriveLaunchStatus as J, deriveLocalStackState as K, detectGpu as L, MigrationError as M, detectHostOpenCode as N, detectLocalProviders as O, PLATFORM_VERSION as P, detectRuntime as Q, disableHostAkmSharing as R, enableHostAkmSharing as S, ensureAkmUserEnv as T, ensureHomeDirs as U, ensureMigrated as V, ensureOpenCodeConfig as W, ensureOpenCodeSystemConfig as X, ensureSecrets as Y, executeAutomation as Z, fetchProviderModels as _, addonProfileId as a, getAddonProfileAvailability as a0, getAddonProfileSelection as a1, getAddonProfiles as a2, getAddonServiceNames as a3, getAkmStats as a4, getDockerEvents as a5, getHostAkmSharingStatus as a6, getRegistryAddonConfig as a7, hostAkmStashPath as a8, importHostOpenCode as a9, recommendSetup as aA, removeSecretFile as aB, removeTaskFile as aC, resolveComposeProjectName as aD, resolveDataDir as aE, resolveDeployJournalPath as aF, resolveRuntimeFiles as aG, resolveStackDir as aH, runDeploy as aI, seedUiBuild as aJ, setAddonEnabled as aK, setAddonProfileSelection as aL, summarizeComposeStderr as aM, useExistingProviderForAssistantCli as aN, validateProposedState as aO, writeFileAtomic as aP, writeRuntimeFiles as aQ, writeSecretFile as aR, writeStackSecretEnv as aS, writeTaskFile as aT, writeUserEnvKey as aU, writeVoiceVars as aV, initializeStateSecrets as aa, isAllowedService as ab, isComparableSemver as ac, isHostAkmAvailable as ad, isSetupComplete as ae, listAssistantCliTools as af, listAvailableAddonIds as ag, listEnabledAddonIds as ah, listSecretFiles as ai, loadAutomations as aj, mapDockerError as ak, markSetupComplete as al, parseComposeStderr as am, parseEnvFile as an, patchSecretsEnvFile as ao, performSetup as ap, performUpgrade as aq, readAutomationLogs as ar, readDeployJournal as as, readSecret as at, readSecretFile as au, readStackEnv as av, readStackRuntimeEnv as aw, readStackSecretEnv as ax, readTaskFile as ay, readUserEnvFile as az, annotateAddonProfileAvailability as b, applyInstall as c, applyTagChange as d, applyUninstall as e, applyUpdate as f, assertSafeSecretFilename as g, assertSafeTaskFilename as h, authJsonPath as i, backupSetupInputs as j, buildAkmEndpoint as k, buildAkmEnv as l, buildComposeOptions as m, buildManagedServices as n, checkDocker as o, checkDockerCompose as p, classifyLocalInstall as q, collectBindAddressWarnings as r, compareComparableVersions as s, composeDown as t, composeLogs as u, composePreflight as v, composePs as w, composePull as x, composeRestart as y, composeStart as z };
9859
+ //# sourceMappingURL=src-BEj0DuSB.js.map