@openpalm/ui 0.13.0-beta.1 → 0.13.0-beta.3

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 (408) hide show
  1. package/build/.openpalm-ui-version +1 -1
  2. package/build/client/_app/immutable/assets/9.vqGkbIg9.css +1 -0
  3. package/build/client/_app/immutable/assets/9.vqGkbIg9.css.br +0 -0
  4. package/build/client/_app/immutable/assets/9.vqGkbIg9.css.gz +0 -0
  5. package/build/client/_app/immutable/chunks/BApqEZP1.js +3 -0
  6. package/build/client/_app/immutable/chunks/BApqEZP1.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/BApqEZP1.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{D1nSxXur.js → B_jhBV5Z.js} +1 -1
  9. package/build/client/_app/immutable/chunks/B_jhBV5Z.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/B_jhBV5Z.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/C3ad4Ajc.js +1 -0
  12. package/build/client/_app/immutable/chunks/C3ad4Ajc.js.br +2 -0
  13. package/build/client/_app/immutable/chunks/C3ad4Ajc.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/CItB5oU8.js +3 -0
  15. package/build/client/_app/immutable/chunks/CItB5oU8.js.br +0 -0
  16. package/build/client/_app/immutable/chunks/CItB5oU8.js.gz +0 -0
  17. package/build/client/_app/immutable/chunks/{CvItGqWG.js → DBHgGGCD.js} +1 -1
  18. package/build/client/_app/immutable/chunks/DBHgGGCD.js.br +0 -0
  19. package/build/client/_app/immutable/chunks/DBHgGGCD.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/{BMyudKzg.js → DuFsBiCS.js} +1 -1
  21. package/build/client/_app/immutable/chunks/DuFsBiCS.js.br +0 -0
  22. package/build/client/_app/immutable/chunks/DuFsBiCS.js.gz +0 -0
  23. package/build/client/_app/immutable/chunks/{Db8xkqW6.js → Gis7OmMK.js} +1 -1
  24. package/build/client/_app/immutable/chunks/Gis7OmMK.js.br +0 -0
  25. package/build/client/_app/immutable/chunks/Gis7OmMK.js.gz +0 -0
  26. package/build/client/_app/immutable/chunks/S17SDfo_.js +1 -0
  27. package/build/client/_app/immutable/chunks/S17SDfo_.js.br +0 -0
  28. package/build/client/_app/immutable/chunks/S17SDfo_.js.gz +0 -0
  29. package/build/client/_app/immutable/entry/{app.ByeYK7_P.js → app.C4X372ym.js} +2 -2
  30. package/build/client/_app/immutable/entry/app.C4X372ym.js.br +0 -0
  31. package/build/client/_app/immutable/entry/app.C4X372ym.js.gz +0 -0
  32. package/build/client/_app/immutable/entry/start.ggMsTuLf.js +1 -0
  33. package/build/client/_app/immutable/entry/start.ggMsTuLf.js.br +0 -0
  34. package/build/client/_app/immutable/entry/start.ggMsTuLf.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/0.mcDF2Cfv.js +1 -0
  36. package/build/client/_app/immutable/nodes/0.mcDF2Cfv.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/0.mcDF2Cfv.js.gz +0 -0
  38. package/build/client/_app/immutable/nodes/{1.DOwkg43h.js → 1.CAn1ptt2.js} +1 -1
  39. package/build/client/_app/immutable/nodes/1.CAn1ptt2.js.br +1 -0
  40. package/build/client/_app/immutable/nodes/1.CAn1ptt2.js.gz +0 -0
  41. package/build/client/_app/immutable/nodes/{10.Cs6atPP0.js → 10.3GZpnfRU.js} +1 -1
  42. package/build/client/_app/immutable/nodes/10.3GZpnfRU.js.br +0 -0
  43. package/build/client/_app/immutable/nodes/10.3GZpnfRU.js.gz +0 -0
  44. package/build/client/_app/immutable/nodes/{11.D1ux0xRH.js → 11.D1-UoUiI.js} +2 -2
  45. package/build/client/_app/immutable/nodes/11.D1-UoUiI.js.br +0 -0
  46. package/build/client/_app/immutable/nodes/11.D1-UoUiI.js.gz +0 -0
  47. package/build/client/_app/immutable/nodes/{4.vRThg0Ke.js → 4.6EwsExLl.js} +1 -1
  48. package/build/client/_app/immutable/nodes/4.6EwsExLl.js.br +0 -0
  49. package/build/client/_app/immutable/nodes/4.6EwsExLl.js.gz +0 -0
  50. package/build/client/_app/immutable/nodes/{5.y3u2P8a-.js → 5.DLFettGd.js} +1 -1
  51. package/build/client/_app/immutable/nodes/5.DLFettGd.js.br +0 -0
  52. package/build/client/_app/immutable/nodes/5.DLFettGd.js.gz +0 -0
  53. package/build/client/_app/immutable/nodes/6.inuW_1g7.js +2 -0
  54. package/build/client/_app/immutable/nodes/6.inuW_1g7.js.br +0 -0
  55. package/build/client/_app/immutable/nodes/6.inuW_1g7.js.gz +0 -0
  56. package/build/client/_app/immutable/nodes/{7.DQ9bZrdN.js → 7.Dc4BVu5u.js} +2 -2
  57. package/build/client/_app/immutable/nodes/7.Dc4BVu5u.js.br +0 -0
  58. package/build/client/_app/immutable/nodes/7.Dc4BVu5u.js.gz +0 -0
  59. package/build/client/_app/immutable/nodes/9.CJ5rBqR8.js +126 -0
  60. package/build/client/_app/immutable/nodes/9.CJ5rBqR8.js.br +0 -0
  61. package/build/client/_app/immutable/nodes/9.CJ5rBqR8.js.gz +0 -0
  62. package/build/client/_app/version.json +1 -1
  63. package/build/client/_app/version.json.br +1 -1
  64. package/build/client/_app/version.json.gz +0 -0
  65. package/build/server/chunks/{0-D6JYWBmc.js → 0-C44Ua1bY.js} +5 -5
  66. package/build/server/chunks/{0-D6JYWBmc.js.map → 0-C44Ua1bY.js.map} +1 -1
  67. package/build/server/chunks/1-DPdXHBBi.js +9 -0
  68. package/build/server/chunks/{1-QFaO6yhK.js.map → 1-DPdXHBBi.js.map} +1 -1
  69. package/build/server/chunks/{10-BHQuL7xa.js → 10-B6ZAGGzR.js} +3 -3
  70. package/build/server/chunks/{10-BHQuL7xa.js.map → 10-B6ZAGGzR.js.map} +1 -1
  71. package/build/server/chunks/{11-nYH7HWHs.js → 11-Bi4ih8mU.js} +3 -3
  72. package/build/server/chunks/{11-nYH7HWHs.js.map → 11-Bi4ih8mU.js.map} +1 -1
  73. package/build/server/chunks/{3-DflhJGSw.js → 3-DqhvOSLm.js} +7 -7
  74. package/build/server/chunks/{3-DflhJGSw.js.map → 3-DqhvOSLm.js.map} +1 -1
  75. package/build/server/chunks/4-bICPXf8d.js +9 -0
  76. package/build/server/chunks/4-bICPXf8d.js.map +1 -0
  77. package/build/server/chunks/{5-_ostMB1h.js → 5-pYxB3IGQ.js} +3 -3
  78. package/build/server/chunks/{5-_ostMB1h.js.map → 5-pYxB3IGQ.js.map} +1 -1
  79. package/build/server/chunks/6-2tNBfccH.js +9 -0
  80. package/build/server/chunks/6-2tNBfccH.js.map +1 -0
  81. package/build/server/chunks/7-IbStFnJM.js +9 -0
  82. package/build/server/chunks/7-IbStFnJM.js.map +1 -0
  83. package/build/server/chunks/{9-DPtmsJHR.js → 9-PfezrnbG.js} +5 -5
  84. package/build/server/chunks/{9-DPtmsJHR.js.map → 9-PfezrnbG.js.map} +1 -1
  85. package/build/server/chunks/{ChatNavbar-ZxJwQIGL.js → ChatNavbar-f5OrMEL5.js} +8 -8
  86. package/build/server/chunks/{ChatNavbar-ZxJwQIGL.js.map → ChatNavbar-f5OrMEL5.js.map} +1 -1
  87. package/build/server/chunks/{IconServer-ByAeszv0.js → IconServer-C0heXLme.js} +5 -5
  88. package/build/server/chunks/IconServer-C0heXLme.js.map +1 -0
  89. package/build/server/chunks/{IconStop-DFbhUtaJ.js → IconSoundOn-DHtvjphK.js} +4 -10
  90. package/build/server/chunks/IconSoundOn-DHtvjphK.js.map +1 -0
  91. package/build/server/chunks/{format-date-gcou_Av8.js → IconStop-C89_dmt4.js} +9 -3
  92. package/build/server/chunks/IconStop-C89_dmt4.js.map +1 -0
  93. package/build/server/chunks/{_layout.svelte-DFMW9sdO.js → _layout.svelte-BLxvGwKC.js} +5 -3
  94. package/build/server/chunks/_layout.svelte-BLxvGwKC.js.map +1 -0
  95. package/build/server/chunks/{_page.svelte-CborsVrn.js → _page.svelte-BXLl2Q4a.js} +5 -5
  96. package/build/server/chunks/_page.svelte-BXLl2Q4a.js.map +1 -0
  97. package/build/server/chunks/{_page.svelte-DDFJprLE.js → _page.svelte-BgKDQB1v.js} +3 -3
  98. package/build/server/chunks/{_page.svelte-DDFJprLE.js.map → _page.svelte-BgKDQB1v.js.map} +1 -1
  99. package/build/server/chunks/{_page.svelte-Cz3JYioD.js → _page.svelte-Cqsoa84V.js} +11 -11
  100. package/build/server/chunks/_page.svelte-Cqsoa84V.js.map +1 -0
  101. package/build/server/chunks/{_page.svelte-CknIT-b6.js → _page.svelte-DV50Zgo7.js} +3 -3
  102. package/build/server/chunks/{_page.svelte-CknIT-b6.js.map → _page.svelte-DV50Zgo7.js.map} +1 -1
  103. package/build/server/chunks/{_page.svelte-DojSR6TL.js → _page.svelte-DpFvF_2S.js} +30 -14
  104. package/build/server/chunks/_page.svelte-DpFvF_2S.js.map +1 -0
  105. package/build/server/chunks/{_page.svelte-CKJNzmVG.js → _page.svelte-MAzX_A0b.js} +7 -7
  106. package/build/server/chunks/{_page.svelte-CKJNzmVG.js.map → _page.svelte-MAzX_A0b.js.map} +1 -1
  107. package/build/server/chunks/{_page.svelte-BLGF_oAz.js → _page.svelte-fk6X6VPw.js} +11 -11
  108. package/build/server/chunks/{_page.svelte-BLGF_oAz.js.map → _page.svelte-fk6X6VPw.js.map} +1 -1
  109. package/build/server/chunks/{_server.ts-BG89__4Y.js → _server.ts-2o4Kzn8i.js} +7 -7
  110. package/build/server/chunks/{_server.ts-BG89__4Y.js.map → _server.ts-2o4Kzn8i.js.map} +1 -1
  111. package/build/server/chunks/{_server.ts-DVXK2VD6.js → _server.ts-6-piDAMf.js} +7 -7
  112. package/build/server/chunks/{_server.ts-DVXK2VD6.js.map → _server.ts-6-piDAMf.js.map} +1 -1
  113. package/build/server/chunks/{_server.ts-1Vco45Qu.js → _server.ts-6BViNoJ6.js} +6 -6
  114. package/build/server/chunks/{_server.ts-1Vco45Qu.js.map → _server.ts-6BViNoJ6.js.map} +1 -1
  115. package/build/server/chunks/{_server.ts-Bj17GHeW.js → _server.ts-B-6OFzv-.js} +6 -6
  116. package/build/server/chunks/{_server.ts-Bj17GHeW.js.map → _server.ts-B-6OFzv-.js.map} +1 -1
  117. package/build/server/chunks/{_server.ts-Bbtu4jaC.js → _server.ts-B2iTN8SC.js} +8 -8
  118. package/build/server/chunks/{_server.ts-Bbtu4jaC.js.map → _server.ts-B2iTN8SC.js.map} +1 -1
  119. package/build/server/chunks/{_server.ts-B0jGXHG1.js → _server.ts-BB6y3ZlT.js} +6 -6
  120. package/build/server/chunks/{_server.ts-B0jGXHG1.js.map → _server.ts-BB6y3ZlT.js.map} +1 -1
  121. package/build/server/chunks/{_server.ts-DrHEkbDq.js → _server.ts-BBxdJ3b2.js} +7 -7
  122. package/build/server/chunks/{_server.ts-DrHEkbDq.js.map → _server.ts-BBxdJ3b2.js.map} +1 -1
  123. package/build/server/chunks/{_server.ts-CKcFu8B-.js → _server.ts-BJ27moeF.js} +7 -7
  124. package/build/server/chunks/_server.ts-BJ27moeF.js.map +1 -0
  125. package/build/server/chunks/{_server.ts-D1mP7Ux6.js → _server.ts-BM6hefLc.js} +6 -6
  126. package/build/server/chunks/{_server.ts-D1mP7Ux6.js.map → _server.ts-BM6hefLc.js.map} +1 -1
  127. package/build/server/chunks/{_server.ts-BV6i7XBr.js → _server.ts-BNQHTPJK.js} +6 -6
  128. package/build/server/chunks/{_server.ts-BV6i7XBr.js.map → _server.ts-BNQHTPJK.js.map} +1 -1
  129. package/build/server/chunks/{_server.ts-CFz_IeN4.js → _server.ts-BNnRODmS.js} +7 -7
  130. package/build/server/chunks/{_server.ts-CFz_IeN4.js.map → _server.ts-BNnRODmS.js.map} +1 -1
  131. package/build/server/chunks/{_server.ts-CtiJiKFW.js → _server.ts-BQyuBKbf.js} +6 -6
  132. package/build/server/chunks/{_server.ts-CtiJiKFW.js.map → _server.ts-BQyuBKbf.js.map} +1 -1
  133. package/build/server/chunks/{_server.ts-y3HSMNEG.js → _server.ts-BQzhAVgc.js} +2 -2
  134. package/build/server/chunks/{_server.ts-y3HSMNEG.js.map → _server.ts-BQzhAVgc.js.map} +1 -1
  135. package/build/server/chunks/{_server.ts-Bfkzx4ao.js → _server.ts-BTey3b5e.js} +6 -6
  136. package/build/server/chunks/{_server.ts-Bfkzx4ao.js.map → _server.ts-BTey3b5e.js.map} +1 -1
  137. package/build/server/chunks/{_server.ts-B9GH6f46.js → _server.ts-BWeAmxEz.js} +6 -6
  138. package/build/server/chunks/{_server.ts-B9GH6f46.js.map → _server.ts-BWeAmxEz.js.map} +1 -1
  139. package/build/server/chunks/{_server.ts-S90K5IJI.js → _server.ts-BageNPqU.js} +7 -7
  140. package/build/server/chunks/{_server.ts-S90K5IJI.js.map → _server.ts-BageNPqU.js.map} +1 -1
  141. package/build/server/chunks/{_server.ts-DJxUVpVr.js → _server.ts-BcsSKsVE.js} +6 -6
  142. package/build/server/chunks/{_server.ts-DJxUVpVr.js.map → _server.ts-BcsSKsVE.js.map} +1 -1
  143. package/build/server/chunks/{_server.ts-CbkJG3Yk.js → _server.ts-Bd15KCCI.js} +6 -6
  144. package/build/server/chunks/{_server.ts-CbkJG3Yk.js.map → _server.ts-Bd15KCCI.js.map} +1 -1
  145. package/build/server/chunks/{_server.ts-BRiu2AFG.js → _server.ts-BiGuckTs.js} +8 -8
  146. package/build/server/chunks/{_server.ts-BRiu2AFG.js.map → _server.ts-BiGuckTs.js.map} +1 -1
  147. package/build/server/chunks/{_server.ts-BjEVNsPT.js → _server.ts-BlCDDGQe.js} +6 -6
  148. package/build/server/chunks/{_server.ts-BjEVNsPT.js.map → _server.ts-BlCDDGQe.js.map} +1 -1
  149. package/build/server/chunks/{_server.ts-nasuSdo-.js → _server.ts-Bsxn3ZEt.js} +6 -6
  150. package/build/server/chunks/{_server.ts-nasuSdo-.js.map → _server.ts-Bsxn3ZEt.js.map} +1 -1
  151. package/build/server/chunks/{_server.ts-9TnX_Hfn.js → _server.ts-BtlVh8sp.js} +3 -3
  152. package/build/server/chunks/{_server.ts-9TnX_Hfn.js.map → _server.ts-BtlVh8sp.js.map} +1 -1
  153. package/build/server/chunks/_server.ts-BunhH3W1.js +58 -0
  154. package/build/server/chunks/_server.ts-BunhH3W1.js.map +1 -0
  155. package/build/server/chunks/{_server.ts-FhE6fUSD.js → _server.ts-BwMkzx-i.js} +7 -7
  156. package/build/server/chunks/{_server.ts-FhE6fUSD.js.map → _server.ts-BwMkzx-i.js.map} +1 -1
  157. package/build/server/chunks/{_server.ts-HlB5nMY9.js → _server.ts-Bx0tx6Hd.js} +6 -6
  158. package/build/server/chunks/{_server.ts-HlB5nMY9.js.map → _server.ts-Bx0tx6Hd.js.map} +1 -1
  159. package/build/server/chunks/{_server.ts-CyzJdUdD.js → _server.ts-ByVaX_Hp.js} +6 -6
  160. package/build/server/chunks/{_server.ts-CyzJdUdD.js.map → _server.ts-ByVaX_Hp.js.map} +1 -1
  161. package/build/server/chunks/{_server.ts-ClO4pSRG.js → _server.ts-C-VVdGFH.js} +6 -6
  162. package/build/server/chunks/{_server.ts-ClO4pSRG.js.map → _server.ts-C-VVdGFH.js.map} +1 -1
  163. package/build/server/chunks/{_server.ts-4SFWMa3H.js → _server.ts-C17zuPHB.js} +6 -6
  164. package/build/server/chunks/{_server.ts-4SFWMa3H.js.map → _server.ts-C17zuPHB.js.map} +1 -1
  165. package/build/server/chunks/{_server.ts-uqxkiRQ1.js → _server.ts-C24KcaLY.js} +6 -6
  166. package/build/server/chunks/{_server.ts-uqxkiRQ1.js.map → _server.ts-C24KcaLY.js.map} +1 -1
  167. package/build/server/chunks/{_server.ts-tchYVZRL.js → _server.ts-C8Tvzew7.js} +2 -2
  168. package/build/server/chunks/{_server.ts-tchYVZRL.js.map → _server.ts-C8Tvzew7.js.map} +1 -1
  169. package/build/server/chunks/{_server.ts-Chf0EFLa.js → _server.ts-CA37rdjz.js} +6 -6
  170. package/build/server/chunks/{_server.ts-Chf0EFLa.js.map → _server.ts-CA37rdjz.js.map} +1 -1
  171. package/build/server/chunks/{_server.ts-DjFDthjg.js → _server.ts-CBv61dGN.js} +7 -7
  172. package/build/server/chunks/{_server.ts-DjFDthjg.js.map → _server.ts-CBv61dGN.js.map} +1 -1
  173. package/build/server/chunks/{_server.ts-HN1FxysS.js → _server.ts-CEgqNbg2.js} +7 -7
  174. package/build/server/chunks/{_server.ts-HN1FxysS.js.map → _server.ts-CEgqNbg2.js.map} +1 -1
  175. package/build/server/chunks/{_server.ts-Cp6d9DIG.js → _server.ts-CF6j3bbg.js} +6 -6
  176. package/build/server/chunks/{_server.ts-Cp6d9DIG.js.map → _server.ts-CF6j3bbg.js.map} +1 -1
  177. package/build/server/chunks/{_server.ts-BYUzlpfe.js → _server.ts-CFlF9O0n.js} +6 -6
  178. package/build/server/chunks/{_server.ts-BYUzlpfe.js.map → _server.ts-CFlF9O0n.js.map} +1 -1
  179. package/build/server/chunks/{_server.ts-D2dBUHv-.js → _server.ts-CM8lR2Jk.js} +6 -6
  180. package/build/server/chunks/{_server.ts-D2dBUHv-.js.map → _server.ts-CM8lR2Jk.js.map} +1 -1
  181. package/build/server/chunks/{_server.ts-BI2IrCte.js → _server.ts-CMi1odxU.js} +6 -6
  182. package/build/server/chunks/{_server.ts-BI2IrCte.js.map → _server.ts-CMi1odxU.js.map} +1 -1
  183. package/build/server/chunks/{_server.ts-1VKTjr08.js → _server.ts-CPolXmaB.js} +7 -7
  184. package/build/server/chunks/{_server.ts-1VKTjr08.js.map → _server.ts-CPolXmaB.js.map} +1 -1
  185. package/build/server/chunks/{_server.ts-4eT-crTl.js → _server.ts-CZ-P41xW.js} +6 -6
  186. package/build/server/chunks/{_server.ts-4eT-crTl.js.map → _server.ts-CZ-P41xW.js.map} +1 -1
  187. package/build/server/chunks/{_server.ts-Ci1n4eQ3.js → _server.ts-Cc6blM9a.js} +6 -6
  188. package/build/server/chunks/{_server.ts-Ci1n4eQ3.js.map → _server.ts-Cc6blM9a.js.map} +1 -1
  189. package/build/server/chunks/{_server.ts-B8p1cZWN.js → _server.ts-CcFK2dxk.js} +6 -6
  190. package/build/server/chunks/{_server.ts-B8p1cZWN.js.map → _server.ts-CcFK2dxk.js.map} +1 -1
  191. package/build/server/chunks/{_server.ts-Db2X5ulY.js → _server.ts-CfB1cDLU.js} +7 -7
  192. package/build/server/chunks/{_server.ts-Db2X5ulY.js.map → _server.ts-CfB1cDLU.js.map} +1 -1
  193. package/build/server/chunks/{_server.ts-CXt9azl0.js → _server.ts-ChK8wuma.js} +6 -6
  194. package/build/server/chunks/{_server.ts-CXt9azl0.js.map → _server.ts-ChK8wuma.js.map} +1 -1
  195. package/build/server/chunks/{_server.ts-Cg_4-N8w.js → _server.ts-ClJrWUgt.js} +2 -2
  196. package/build/server/chunks/{_server.ts-Cg_4-N8w.js.map → _server.ts-ClJrWUgt.js.map} +1 -1
  197. package/build/server/chunks/{_server.ts-at5EQV31.js → _server.ts-CpMO1w5D.js} +8 -8
  198. package/build/server/chunks/{_server.ts-at5EQV31.js.map → _server.ts-CpMO1w5D.js.map} +1 -1
  199. package/build/server/chunks/{_server.ts-BeCTOV2T.js → _server.ts-CpwGXL04.js} +6 -6
  200. package/build/server/chunks/{_server.ts-BeCTOV2T.js.map → _server.ts-CpwGXL04.js.map} +1 -1
  201. package/build/server/chunks/{_server.ts-Y4JoeA12.js → _server.ts-CrUHXfa7.js} +6 -6
  202. package/build/server/chunks/{_server.ts-Y4JoeA12.js.map → _server.ts-CrUHXfa7.js.map} +1 -1
  203. package/build/server/chunks/{_server.ts-DJFB76Z4.js → _server.ts-CtNaQ39q.js} +6 -6
  204. package/build/server/chunks/{_server.ts-DJFB76Z4.js.map → _server.ts-CtNaQ39q.js.map} +1 -1
  205. package/build/server/chunks/{_server.ts-CYY3W2qh.js → _server.ts-Cu39Y3ON.js} +10 -10
  206. package/build/server/chunks/_server.ts-Cu39Y3ON.js.map +1 -0
  207. package/build/server/chunks/{_server.ts-Rv6Qmjnm.js → _server.ts-CyHlj4Xc.js} +6 -6
  208. package/build/server/chunks/{_server.ts-Rv6Qmjnm.js.map → _server.ts-CyHlj4Xc.js.map} +1 -1
  209. package/build/server/chunks/{_server.ts-BvwD-tU2.js → _server.ts-CyMs8VXZ.js} +4 -4
  210. package/build/server/chunks/{_server.ts-BvwD-tU2.js.map → _server.ts-CyMs8VXZ.js.map} +1 -1
  211. package/build/server/chunks/{_server.ts-Q1zB1kiD.js → _server.ts-CydVYzX1.js} +6 -6
  212. package/build/server/chunks/{_server.ts-Q1zB1kiD.js.map → _server.ts-CydVYzX1.js.map} +1 -1
  213. package/build/server/chunks/{_server.ts-B7jtS1rc.js → _server.ts-CyiErd_B.js} +9 -9
  214. package/build/server/chunks/{_server.ts-B7jtS1rc.js.map → _server.ts-CyiErd_B.js.map} +1 -1
  215. package/build/server/chunks/{_server.ts-GuptvcVQ.js → _server.ts-Czl57SUr.js} +6 -6
  216. package/build/server/chunks/{_server.ts-GuptvcVQ.js.map → _server.ts-Czl57SUr.js.map} +1 -1
  217. package/build/server/chunks/{_server.ts-C1k-QptM.js → _server.ts-D7I9KZ4H.js} +6 -6
  218. package/build/server/chunks/{_server.ts-C1k-QptM.js.map → _server.ts-D7I9KZ4H.js.map} +1 -1
  219. package/build/server/chunks/{_server.ts-B46NQmKl.js → _server.ts-DDweV2eg.js} +6 -6
  220. package/build/server/chunks/{_server.ts-B46NQmKl.js.map → _server.ts-DDweV2eg.js.map} +1 -1
  221. package/build/server/chunks/{_server.ts-c64R3qMS.js → _server.ts-DFq2AVjG.js} +6 -6
  222. package/build/server/chunks/{_server.ts-c64R3qMS.js.map → _server.ts-DFq2AVjG.js.map} +1 -1
  223. package/build/server/chunks/{_server.ts-BG50sNod.js → _server.ts-DPJJQkZp.js} +6 -6
  224. package/build/server/chunks/{_server.ts-BG50sNod.js.map → _server.ts-DPJJQkZp.js.map} +1 -1
  225. package/build/server/chunks/{_server.ts-C7wn5VUY.js → _server.ts-DQFO2xa9.js} +6 -6
  226. package/build/server/chunks/{_server.ts-C7wn5VUY.js.map → _server.ts-DQFO2xa9.js.map} +1 -1
  227. package/build/server/chunks/{_server.ts-D81J9NzU.js → _server.ts-DYS4PknE.js} +6 -6
  228. package/build/server/chunks/{_server.ts-D81J9NzU.js.map → _server.ts-DYS4PknE.js.map} +1 -1
  229. package/build/server/chunks/{_server.ts-C7uAOfo3.js → _server.ts-DcBrsY-a.js} +8 -8
  230. package/build/server/chunks/{_server.ts-C7uAOfo3.js.map → _server.ts-DcBrsY-a.js.map} +1 -1
  231. package/build/server/chunks/{_server.ts-C_qRsJI2.js → _server.ts-DcZIXa7_.js} +6 -6
  232. package/build/server/chunks/{_server.ts-C_qRsJI2.js.map → _server.ts-DcZIXa7_.js.map} +1 -1
  233. package/build/server/chunks/{_server.ts-y7XlQItn.js → _server.ts-DdWIcyaa.js} +2 -2
  234. package/build/server/chunks/{_server.ts-y7XlQItn.js.map → _server.ts-DdWIcyaa.js.map} +1 -1
  235. package/build/server/chunks/{_server.ts-BLxV2y7p.js → _server.ts-DhZ0i-VZ.js} +7 -7
  236. package/build/server/chunks/{_server.ts-BLxV2y7p.js.map → _server.ts-DhZ0i-VZ.js.map} +1 -1
  237. package/build/server/chunks/{_server.ts-DvKpBV-Y.js → _server.ts-DiY7qGzB.js} +2 -2
  238. package/build/server/chunks/{_server.ts-DvKpBV-Y.js.map → _server.ts-DiY7qGzB.js.map} +1 -1
  239. package/build/server/chunks/{_server.ts-DhfQc2ah.js → _server.ts-DkWPvbVT.js} +6 -6
  240. package/build/server/chunks/{_server.ts-DhfQc2ah.js.map → _server.ts-DkWPvbVT.js.map} +1 -1
  241. package/build/server/chunks/{_server.ts-MvwnQkPT.js → _server.ts-DmuQV3XR.js} +4 -4
  242. package/build/server/chunks/{_server.ts-MvwnQkPT.js.map → _server.ts-DmuQV3XR.js.map} +1 -1
  243. package/build/server/chunks/{_server.ts-BFOoXmaJ.js → _server.ts-DprY8V8n.js} +6 -6
  244. package/build/server/chunks/{_server.ts-BFOoXmaJ.js.map → _server.ts-DprY8V8n.js.map} +1 -1
  245. package/build/server/chunks/{_server.ts-CQIXn8xb.js → _server.ts-Dr7DPWfx.js} +7 -7
  246. package/build/server/chunks/{_server.ts-CQIXn8xb.js.map → _server.ts-Dr7DPWfx.js.map} +1 -1
  247. package/build/server/chunks/{_server.ts-C5NMGLvR.js → _server.ts-DsRKY-Kc.js} +6 -6
  248. package/build/server/chunks/{_server.ts-C5NMGLvR.js.map → _server.ts-DsRKY-Kc.js.map} +1 -1
  249. package/build/server/chunks/{_server.ts-Bu-Ie_Mc.js → _server.ts-DtY45qj6.js} +6 -6
  250. package/build/server/chunks/{_server.ts-Bu-Ie_Mc.js.map → _server.ts-DtY45qj6.js.map} +1 -1
  251. package/build/server/chunks/{_server.ts-Dk7RL-D7.js → _server.ts-DxbCMYot.js} +6 -6
  252. package/build/server/chunks/{_server.ts-Dk7RL-D7.js.map → _server.ts-DxbCMYot.js.map} +1 -1
  253. package/build/server/chunks/{_server.ts-BUE0dmBz.js → _server.ts-DzO2o8u_.js} +6 -6
  254. package/build/server/chunks/{_server.ts-BUE0dmBz.js.map → _server.ts-DzO2o8u_.js.map} +1 -1
  255. package/build/server/chunks/{_server.ts-DPw-9Fvz.js → _server.ts-G80g1-Vi.js} +6 -6
  256. package/build/server/chunks/{_server.ts-DPw-9Fvz.js.map → _server.ts-G80g1-Vi.js.map} +1 -1
  257. package/build/server/chunks/{_server.ts-CTKwaXm1.js → _server.ts-RjE7mkg4.js} +6 -6
  258. package/build/server/chunks/{_server.ts-CTKwaXm1.js.map → _server.ts-RjE7mkg4.js.map} +1 -1
  259. package/build/server/chunks/{_server.ts-C0Zlu5Xy.js → _server.ts-SqpxZ5hM.js} +6 -6
  260. package/build/server/chunks/{_server.ts-C0Zlu5Xy.js.map → _server.ts-SqpxZ5hM.js.map} +1 -1
  261. package/build/server/chunks/{_server.ts-DTOMs2Oo.js → _server.ts-TecIejZG.js} +7 -7
  262. package/build/server/chunks/{_server.ts-DTOMs2Oo.js.map → _server.ts-TecIejZG.js.map} +1 -1
  263. package/build/server/chunks/{_server.ts-CUPbFKq2.js → _server.ts-UMlNzGum.js} +6 -6
  264. package/build/server/chunks/{_server.ts-CUPbFKq2.js.map → _server.ts-UMlNzGum.js.map} +1 -1
  265. package/build/server/chunks/{_server.ts-DK409rto.js → _server.ts-WTL-RZDk.js} +6 -6
  266. package/build/server/chunks/{_server.ts-DK409rto.js.map → _server.ts-WTL-RZDk.js.map} +1 -1
  267. package/build/server/chunks/{_server.ts-DW3mRh_v.js → _server.ts-YQAFFkYo.js} +7 -7
  268. package/build/server/chunks/{_server.ts-DW3mRh_v.js.map → _server.ts-YQAFFkYo.js.map} +1 -1
  269. package/build/server/chunks/{_server.ts-CP02aPdv.js → _server.ts-ZkptKFXP.js} +6 -6
  270. package/build/server/chunks/{_server.ts-CP02aPdv.js.map → _server.ts-ZkptKFXP.js.map} +1 -1
  271. package/build/server/chunks/{_server.ts-CHuyT9rF.js → _server.ts-opJkoWRS.js} +6 -6
  272. package/build/server/chunks/{_server.ts-CHuyT9rF.js.map → _server.ts-opJkoWRS.js.map} +1 -1
  273. package/build/server/chunks/{_server.ts-rPbq-4rb.js → _server.ts-s_DZwJLK.js} +6 -6
  274. package/build/server/chunks/{_server.ts-rPbq-4rb.js.map → _server.ts-s_DZwJLK.js.map} +1 -1
  275. package/build/server/chunks/{_server.ts-C43E5b3d.js → _server.ts-ukIYk-_Z.js} +6 -6
  276. package/build/server/chunks/{_server.ts-C43E5b3d.js.map → _server.ts-ukIYk-_Z.js.map} +1 -1
  277. package/build/server/chunks/{_server.ts-CMwOXeFC.js → _server.ts-vXf4p_i0.js} +7 -7
  278. package/build/server/chunks/{_server.ts-CMwOXeFC.js.map → _server.ts-vXf4p_i0.js.map} +1 -1
  279. package/build/server/chunks/{addon-helpers-Cpj40OF3.js → addon-helpers-CEjIrSBN.js} +3 -3
  280. package/build/server/chunks/{addon-helpers-Cpj40OF3.js.map → addon-helpers-CEjIrSBN.js.map} +1 -1
  281. package/build/server/chunks/{akm-D8uSJNzt.js → akm-rRfSaKvH.js} +2 -2
  282. package/build/server/chunks/{akm-D8uSJNzt.js.map → akm-rRfSaKvH.js.map} +1 -1
  283. package/build/server/chunks/{catalog-C9ClLZ62.js → catalog-DMG_Bwji.js} +5 -5
  284. package/build/server/chunks/{catalog-C9ClLZ62.js.map → catalog-DMG_Bwji.js.map} +1 -1
  285. package/build/server/chunks/{client-utk4T8Jl.js → client-BvFq2PRx.js} +2 -2
  286. package/build/server/chunks/{client-utk4T8Jl.js.map → client-BvFq2PRx.js.map} +1 -1
  287. package/build/server/chunks/{compose-args2-cix5m26E.js → compose-args2-C39WGM9r.js} +2 -2
  288. package/build/server/chunks/compose-args2-C39WGM9r.js.map +1 -0
  289. package/build/server/chunks/{config-BV78mCrh.js → config-BndRz7Yl.js} +2 -2
  290. package/build/server/chunks/{config-BV78mCrh.js.map → config-BndRz7Yl.js.map} +1 -1
  291. package/build/server/chunks/{connections-api-CpQ5k7QC.js → connections-api-BvJpsZBj.js} +2 -2
  292. package/build/server/chunks/{connections-api-CpQ5k7QC.js.map → connections-api-BvJpsZBj.js.map} +1 -1
  293. package/build/server/chunks/{docker2-DqIy9JYf.js → docker2-Ba2Whd9Y.js} +2 -2
  294. package/build/server/chunks/docker2-Ba2Whd9Y.js.map +1 -0
  295. package/build/server/chunks/{docker3-DvrSgFLt.js → docker3-DhaO_Pxj.js} +2 -2
  296. package/build/server/chunks/{docker3-DvrSgFLt.js.map → docker3-DhaO_Pxj.js.map} +1 -1
  297. package/build/server/chunks/{endpoints-CU3ehglV.js → endpoints-CuL8lAcu.js} +3 -3
  298. package/build/server/chunks/{endpoints-CU3ehglV.js.map → endpoints-CuL8lAcu.js.map} +1 -1
  299. package/build/server/chunks/environment-BYp8JQYM.js.map +1 -1
  300. package/build/server/chunks/{error.svelte-B9DQG_Wh.js → error.svelte-C8Qx6FF6.js} +4 -4
  301. package/build/server/chunks/{error.svelte-B9DQG_Wh.js.map → error.svelte-C8Qx6FF6.js.map} +1 -1
  302. package/build/server/chunks/{features-DLGlNjZX.js → features-WsEodW5F.js} +3 -3
  303. package/build/server/chunks/{features-DLGlNjZX.js.map → features-WsEodW5F.js.map} +1 -1
  304. package/build/server/chunks/{helpers-7BvhniSt.js → helpers-XmKveZFr.js} +4 -4
  305. package/build/server/chunks/{helpers-7BvhniSt.js.map → helpers-XmKveZFr.js.map} +1 -1
  306. package/build/server/chunks/{hooks.server-CwIkB_d8.js → hooks.server-o4bkPFRD.js} +21 -15
  307. package/build/server/chunks/hooks.server-o4bkPFRD.js.map +1 -0
  308. package/build/server/chunks/{http-D0qKwTqb.js → http-CL5QncYd.js} +2 -2
  309. package/build/server/chunks/{http-D0qKwTqb.js.map → http-CL5QncYd.js.map} +1 -1
  310. package/build/server/chunks/{internal-CVxYC2gp.js → internal-D66tKQSe.js} +3 -3
  311. package/build/server/chunks/{internal-CVxYC2gp.js.map → internal-D66tKQSe.js.map} +1 -1
  312. package/build/server/chunks/{landing-BAWznbys.js → landing-DvVXSE_x.js} +46 -9
  313. package/build/server/chunks/landing-DvVXSE_x.js.map +1 -0
  314. package/build/server/chunks/{paths-lkOb-n87.js → paths-BpdOajoE.js} +2 -2
  315. package/build/server/chunks/{paths-lkOb-n87.js.map → paths-BpdOajoE.js.map} +1 -1
  316. package/build/server/chunks/runtime-context.svelte-C5zNEC6u.js +72 -0
  317. package/build/server/chunks/runtime-context.svelte-C5zNEC6u.js.map +1 -0
  318. package/build/server/chunks/{session-cookie-WuIYBiMY.js → session-cookie-B0Fc-L8S.js} +2 -2
  319. package/build/server/chunks/{session-cookie-WuIYBiMY.js.map → session-cookie-B0Fc-L8S.js.map} +1 -1
  320. package/build/server/chunks/{setup-deploy-DaMn6d6g.js → setup-deploy-BjJIt1Gf.js} +2 -2
  321. package/build/server/chunks/{setup-deploy-DaMn6d6g.js.map → setup-deploy-BjJIt1Gf.js.map} +1 -1
  322. package/build/server/chunks/{src-CS2sSYOR.js → src-i2v6xhSC.js} +4 -4
  323. package/build/server/chunks/{src-CS2sSYOR.js.map → src-i2v6xhSC.js.map} +1 -1
  324. package/build/server/chunks/{state-BRh7vs9j.js → state-fVG29xFj.js} +2 -2
  325. package/build/server/chunks/{state-BRh7vs9j.js.map → state-fVG29xFj.js.map} +1 -1
  326. package/build/server/chunks/{state2-COVNCCTq.js → state2-Dl7-d1h_.js} +2 -2
  327. package/build/server/chunks/{state2-COVNCCTq.js.map → state2-Dl7-d1h_.js.map} +1 -1
  328. package/build/server/chunks/{voice-state.svelte-bOoc1Vo0.js → voice-state.svelte-BAiqUOIX.js} +2 -2
  329. package/build/server/chunks/voice-state.svelte-BAiqUOIX.js.map +1 -0
  330. package/build/server/index.js +1 -1
  331. package/build/server/manifest.js +102 -95
  332. package/build/server/manifest.js.map +1 -1
  333. package/package.json +3 -3
  334. package/build/client/_app/immutable/assets/9.B0-fGtW-.css +0 -1
  335. package/build/client/_app/immutable/assets/9.B0-fGtW-.css.br +0 -0
  336. package/build/client/_app/immutable/assets/9.B0-fGtW-.css.gz +0 -0
  337. package/build/client/_app/immutable/chunks/BLc6D58Y.js +0 -3
  338. package/build/client/_app/immutable/chunks/BLc6D58Y.js.br +0 -0
  339. package/build/client/_app/immutable/chunks/BLc6D58Y.js.gz +0 -0
  340. package/build/client/_app/immutable/chunks/BMyudKzg.js.br +0 -0
  341. package/build/client/_app/immutable/chunks/BMyudKzg.js.gz +0 -0
  342. package/build/client/_app/immutable/chunks/BNkLu9ey.js +0 -3
  343. package/build/client/_app/immutable/chunks/BNkLu9ey.js.br +0 -0
  344. package/build/client/_app/immutable/chunks/BNkLu9ey.js.gz +0 -0
  345. package/build/client/_app/immutable/chunks/BkqRukKX.js +0 -1
  346. package/build/client/_app/immutable/chunks/BkqRukKX.js.br +0 -2
  347. package/build/client/_app/immutable/chunks/BkqRukKX.js.gz +0 -0
  348. package/build/client/_app/immutable/chunks/CvItGqWG.js.br +0 -0
  349. package/build/client/_app/immutable/chunks/CvItGqWG.js.gz +0 -0
  350. package/build/client/_app/immutable/chunks/D1nSxXur.js.br +0 -0
  351. package/build/client/_app/immutable/chunks/D1nSxXur.js.gz +0 -0
  352. package/build/client/_app/immutable/chunks/DIM-KrDw.js +0 -1
  353. package/build/client/_app/immutable/chunks/DIM-KrDw.js.br +0 -0
  354. package/build/client/_app/immutable/chunks/DIM-KrDw.js.gz +0 -0
  355. package/build/client/_app/immutable/chunks/Db8xkqW6.js.br +0 -0
  356. package/build/client/_app/immutable/chunks/Db8xkqW6.js.gz +0 -0
  357. package/build/client/_app/immutable/entry/app.ByeYK7_P.js.br +0 -0
  358. package/build/client/_app/immutable/entry/app.ByeYK7_P.js.gz +0 -0
  359. package/build/client/_app/immutable/entry/start.kykyp6T0.js +0 -1
  360. package/build/client/_app/immutable/entry/start.kykyp6T0.js.br +0 -1
  361. package/build/client/_app/immutable/entry/start.kykyp6T0.js.gz +0 -0
  362. package/build/client/_app/immutable/nodes/0.CLEDwEKf.js +0 -1
  363. package/build/client/_app/immutable/nodes/0.CLEDwEKf.js.br +0 -0
  364. package/build/client/_app/immutable/nodes/0.CLEDwEKf.js.gz +0 -0
  365. package/build/client/_app/immutable/nodes/1.DOwkg43h.js.br +0 -0
  366. package/build/client/_app/immutable/nodes/1.DOwkg43h.js.gz +0 -0
  367. package/build/client/_app/immutable/nodes/10.Cs6atPP0.js.br +0 -0
  368. package/build/client/_app/immutable/nodes/10.Cs6atPP0.js.gz +0 -0
  369. package/build/client/_app/immutable/nodes/11.D1ux0xRH.js.br +0 -0
  370. package/build/client/_app/immutable/nodes/11.D1ux0xRH.js.gz +0 -0
  371. package/build/client/_app/immutable/nodes/4.vRThg0Ke.js.br +0 -0
  372. package/build/client/_app/immutable/nodes/4.vRThg0Ke.js.gz +0 -0
  373. package/build/client/_app/immutable/nodes/5.y3u2P8a-.js.br +0 -0
  374. package/build/client/_app/immutable/nodes/5.y3u2P8a-.js.gz +0 -0
  375. package/build/client/_app/immutable/nodes/6.Vtev5Cm4.js +0 -2
  376. package/build/client/_app/immutable/nodes/6.Vtev5Cm4.js.br +0 -0
  377. package/build/client/_app/immutable/nodes/6.Vtev5Cm4.js.gz +0 -0
  378. package/build/client/_app/immutable/nodes/7.DQ9bZrdN.js.br +0 -0
  379. package/build/client/_app/immutable/nodes/7.DQ9bZrdN.js.gz +0 -0
  380. package/build/client/_app/immutable/nodes/9.2IPaJ-1P.js +0 -126
  381. package/build/client/_app/immutable/nodes/9.2IPaJ-1P.js.br +0 -0
  382. package/build/client/_app/immutable/nodes/9.2IPaJ-1P.js.gz +0 -0
  383. package/build/server/chunks/1-QFaO6yhK.js +0 -9
  384. package/build/server/chunks/4-dgm3mFwb.js +0 -9
  385. package/build/server/chunks/4-dgm3mFwb.js.map +0 -1
  386. package/build/server/chunks/6-Bz787Ixu.js +0 -9
  387. package/build/server/chunks/6-Bz787Ixu.js.map +0 -1
  388. package/build/server/chunks/7-Cs4tQiJY.js +0 -9
  389. package/build/server/chunks/7-Cs4tQiJY.js.map +0 -1
  390. package/build/server/chunks/IconServer-ByAeszv0.js.map +0 -1
  391. package/build/server/chunks/IconStop-DFbhUtaJ.js.map +0 -1
  392. package/build/server/chunks/_layout.svelte-DFMW9sdO.js.map +0 -1
  393. package/build/server/chunks/_page.svelte-CborsVrn.js.map +0 -1
  394. package/build/server/chunks/_page.svelte-Cz3JYioD.js.map +0 -1
  395. package/build/server/chunks/_page.svelte-DojSR6TL.js.map +0 -1
  396. package/build/server/chunks/_server.ts-CKcFu8B-.js.map +0 -1
  397. package/build/server/chunks/_server.ts-CYY3W2qh.js.map +0 -1
  398. package/build/server/chunks/compose-args2-cix5m26E.js.map +0 -1
  399. package/build/server/chunks/docker2-DqIy9JYf.js.map +0 -1
  400. package/build/server/chunks/format-date-gcou_Av8.js.map +0 -1
  401. package/build/server/chunks/hooks.server-CwIkB_d8.js.map +0 -1
  402. package/build/server/chunks/landing-BAWznbys.js.map +0 -1
  403. package/build/server/chunks/runtime-context.svelte-FZapSP7A.js +0 -24
  404. package/build/server/chunks/runtime-context.svelte-FZapSP7A.js.map +0 -1
  405. package/build/server/chunks/voice-state.svelte-bOoc1Vo0.js.map +0 -1
  406. /package/build/client/_app/immutable/assets/{IconStop.BsTA83Hx.css → IconSoundOn.BsTA83Hx.css} +0 -0
  407. /package/build/client/_app/immutable/assets/{IconStop.BsTA83Hx.css.br → IconSoundOn.BsTA83Hx.css.br} +0 -0
  408. /package/build/client/_app/immutable/assets/{IconStop.BsTA83Hx.css.gz → IconSoundOn.BsTA83Hx.css.gz} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_page.svelte-BXLl2Q4a.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/setup/_page.svelte.js"],"sourcesContent":["import { $ as run, U as escape_html, V as attr, a as derived, n as attr_class, o as ensure_array_like, r as attr_style, s as head, u as stringify } from \"../../../chunks/dev.js\";\nimport \"../../../chunks/index-server.js\";\nimport { a as addonProfileId, n as OLLAMA_DEFAULT_CHAT_MODEL, t as KNOWN_EMBEDDING_MODEL_DIMS } from \"../../../chunks/provider-constants.js\";\nimport { a as PROVIDERS, i as PORTALS, n as LOCAL_PROVIDERS, o as WIZARD_EXCLUDED_PROVIDERS, r as LOCAL_PROVIDER_IDS, s as friendlyProviderName, t as FRIENDLY_PROVIDER_NAMES } from \"../../../chunks/constants.js\";\nimport { t as resolve } from \"../../../chunks/paths.js\";\nimport { t as IconLogo } from \"../../../chunks/IconLogo.js\";\nimport \"../../../chunks/IconServer.js\";\nimport { t as Spinner } from \"../../../chunks/Spinner.js\";\nimport { t as IconMic } from \"../../../chunks/IconMic.js\";\nimport { n as IconAlert, t as IconAgent } from \"../../../chunks/IconAgent.js\";\n//#region src/lib/client/helpers.ts\nfunction selectAddonProfileId(profiles, addon, gpuDetected, variant) {\n\tconst avail = (p) => p.available !== false;\n\tconst preferred = addonProfileId(addon, variant ?? (gpuDetected ? \"cuda\" : \"cpu\"));\n\tconst cpu = addonProfileId(addon, \"cpu\");\n\treturn (profiles.find((p) => p.id === preferred && avail(p)) ?? profiles.find((p) => p.default && avail(p)) ?? profiles.find((p) => p.id === cpu && avail(p)) ?? profiles.find((p) => avail(p)))?.id;\n}\n/** Strip an Ollama-style \":tag\" suffix so \"llama3.2\" matches \"llama3.2:latest\". */\nfunction baseModelId(model) {\n\treturn model.replace(/:.*$/, \"\");\n}\n/** True for embedding models — never offered/auto-picked for the chat/small role. */\nfunction isEmbeddingModelId(model) {\n\tconst base = baseModelId(model);\n\tif (KNOWN_EMBEDDING_MODEL_DIMS[model] !== void 0 || KNOWN_EMBEDDING_MODEL_DIMS[base] !== void 0) return true;\n\treturn /(?:^|[-/_.])(embed|embedding|bge|gte|e5|nomic|mxbai|arctic-embed|minilm)/i.test(model);\n}\n/** Heuristic score for a chat ('llm') or 'small' model. Higher = better default. */\nfunction scoreModelForRole(roleId, model) {\n\tconst m = model.toLowerCase();\n\tlet s = 0;\n\tif (/instruct|chat|-it\\b|\\bit\\b/.test(m)) s += 30;\n\tif (/coder|code/.test(m)) s += 8;\n\tconst sizeMatch = m.match(/(\\d+(?:\\.\\d+)?)\\s*x?\\s*b\\b/);\n\tconst sizeB = sizeMatch ? parseFloat(sizeMatch[1]) : 0;\n\tif (roleId === \"llm\") s += Math.min(40, sizeB);\n\telse s += Math.max(0, 20 - Math.min(20, sizeB));\n\treturn s;\n}\n/**\n* Build the ranked list of model options for a role across all verified\n* providers. For chat/small: embedding models are excluded and results are\n* ordered best-first (host/cloud before local, provider's declared default,\n* then the role heuristic) so options[0] is the sensible auto-pick. For\n* embedding: only real embedding models are returned (may be empty — akm\n* self-embeds locally, so an empty list is fine and the role is auto-handled).\n*/\nfunction buildModelOptions(roleId, verifiedProviders, providerState) {\n\tconst options = [];\n\tfor (const p of verifiedProviders) {\n\t\tconst st = providerState[p.id];\n\t\tif (!st) continue;\n\t\tconst defaultModel = roleId === \"embedding\" ? p.embModel : p.llmModel;\n\t\tconst models = st.models.length > 0 ? st.models : [];\n\t\tconst matchedDefault = defaultModel ? models.find((m) => m === defaultModel || baseModelId(m) === baseModelId(defaultModel)) : void 0;\n\t\tfor (const m of models) {\n\t\t\tif (roleId !== \"embedding\" && isEmbeddingModelId(m)) continue;\n\t\t\tconst dims = roleId === \"embedding\" ? KNOWN_EMBEDDING_MODEL_DIMS[m] ?? KNOWN_EMBEDDING_MODEL_DIMS[baseModelId(m)] ?? (m === matchedDefault ? p.embDims : 0) ?? 0 : 0;\n\t\t\toptions.push({\n\t\t\t\tid: m,\n\t\t\t\tconnId: p.id,\n\t\t\t\tproviderName: p.name,\n\t\t\t\tbaseUrl: st.baseUrl || p.baseUrl,\n\t\t\t\tisDefault: m === matchedDefault,\n\t\t\t\tdims\n\t\t\t});\n\t\t}\n\t}\n\tif (roleId === \"embedding\") return options.filter((o) => o.isDefault || o.dims > 0);\n\treturn options.sort((a, b) => (LOCAL_PROVIDER_IDS.has(a.connId) ? 1 : 0) - (LOCAL_PROVIDER_IDS.has(b.connId) ? 1 : 0) || (b.isDefault ? 1 : 0) - (a.isDefault ? 1 : 0) || scoreModelForRole(roleId, b.id) - scoreModelForRole(roleId, a.id));\n}\n/**\n* Resolve which voice engine to use for one side (TTS or STT).\n*\n* - An explicit engine in `side` wins unconditionally.\n* - No explicit engine + bundled voice enabled → openpalm-voice.\n* - No explicit engine + bundled voice off → fallback engine (e.g. 'browser-tts').\n*\n* Pass fallbackEngine='' for the \"persisted\" form (nothing saved when untouched).\n* Pass a concrete fallback for the \"displayed\" form so the UI shows the real default.\n*/\nfunction resolveVoiceSide(side, enableVoice, fallbackEngine) {\n\tif (side.engine) return side;\n\tif (enableVoice) return { engine: \"openpalm-voice\" };\n\treturn { engine: fallbackEngine };\n}\nfunction isPortalEnabled(portalSelection, chId, locked) {\n\tif (locked) return true;\n\tconst sel = portalSelection[chId];\n\tif (typeof sel === \"object\" && sel !== null) return sel.enabled;\n\treturn !!sel;\n}\nfunction getCredValue(portalSelection, chId, key) {\n\tconst sel = portalSelection[chId];\n\tif (typeof sel === \"object\" && sel !== null) return String(sel[key] ?? \"\");\n\treturn \"\";\n}\n/** 32-hex-char (128-bit) random password used as the OP_UI_LOGIN_PASSWORD default. */\nfunction generatePassword() {\n\tconst arr = new Uint8Array(16);\n\tcrypto.getRandomValues(arr);\n\treturn Array.from(arr, (b) => b.toString(16).padStart(2, \"0\")).join(\"\");\n}\n/**\n* Collapse the wizard's `portalSelection` state into the enabled-portals config\n* consumed by the install payload. Locked portals (e.g. the API endpoint) are\n* always `true`; toggled portals with credentials become `{ enabled, ...creds }`;\n* a plain-boolean selection becomes `true`. Disabled portals are omitted.\n*/\nfunction buildPortalsConfig(portalSelection) {\n\tconst result = {};\n\tfor (const ch of PORTALS) {\n\t\tconst sel = portalSelection[ch.id];\n\t\tif (ch.locked) result[ch.id] = true;\n\t\telse if (typeof sel === \"object\" && sel !== null) {\n\t\t\tif (sel.enabled) {\n\t\t\t\tconst entry = { enabled: true };\n\t\t\t\tif (ch.credentials) for (const cred of ch.credentials) {\n\t\t\t\t\tconst v = sel[cred.key];\n\t\t\t\t\tif (v) entry[cred.key] = v;\n\t\t\t\t}\n\t\t\t\tresult[ch.id] = entry;\n\t\t\t}\n\t\t} else if (sel) result[ch.id] = true;\n\t}\n\treturn result;\n}\n/**\n* Build the list of verified providers used to assemble capabilities/models.\n*\n* When OpenCode is available: start from the verified OpenCode providers\n* (inheriting llmModel/embModel/embDims from the static fallback for local\n* providers), then append any verified static providers not already in the\n* OpenCode list (e.g. Ollama added by the wizard's \"Include Ollama\" toggle).\n* When OpenCode is unavailable: just the verified static providers.\n*/\nfunction buildVerifiedProviders(opencodeAvailable, opencodeProviders, providerState) {\n\tif (opencodeAvailable) {\n\t\tconst fromOpenCode = opencodeProviders.filter((p) => providerState[p.id]?.verified).map((p) => {\n\t\t\tconst st = providerState[p.id];\n\t\t\tconst fallback = PROVIDERS.find((fp) => fp.id === p.id);\n\t\t\treturn {\n\t\t\t\tid: p.id,\n\t\t\t\tname: p.name ?? p.id,\n\t\t\t\tkind: \"cloud\",\n\t\t\t\tgroup: \"\",\n\t\t\t\torder: 0,\n\t\t\t\ticon: \"\",\n\t\t\t\tdesc: \"\",\n\t\t\t\tbaseUrl: st?.baseUrl ?? \"\",\n\t\t\t\tllmModel: fallback?.llmModel ?? \"\",\n\t\t\t\tembModel: fallback?.embModel ?? \"\",\n\t\t\t\tembDims: fallback?.embDims ?? 0\n\t\t\t};\n\t\t});\n\t\tconst openCodeIds = new Set(fromOpenCode.map((p) => p.id));\n\t\tconst fromStatic = PROVIDERS.filter((p) => !openCodeIds.has(p.id) && providerState[p.id]?.verified).map((p) => {\n\t\t\tconst st = providerState[p.id];\n\t\t\treturn {\n\t\t\t\tid: p.id,\n\t\t\t\tname: p.name,\n\t\t\t\tkind: p.kind,\n\t\t\t\tgroup: p.group,\n\t\t\t\torder: p.order,\n\t\t\t\ticon: p.icon,\n\t\t\t\tdesc: p.desc,\n\t\t\t\tbaseUrl: st?.baseUrl ?? p.baseUrl,\n\t\t\t\tllmModel: p.llmModel,\n\t\t\t\tembModel: p.embModel,\n\t\t\t\tembDims: p.embDims\n\t\t\t};\n\t\t});\n\t\treturn [...fromOpenCode, ...fromStatic];\n\t}\n\treturn PROVIDERS.filter((p) => providerState[p.id]?.verified);\n}\n/**\n* Fill any unset chat ('llm') / 'small' role with the best-ranked option from\n* the verified providers. Embedding is never auto-selected — akm self-embeds\n* locally, so the wizard leaves it unset unless the user picks one explicitly.\n* Returns a NEW selection object; already-set roles are preserved untouched.\n*/\nfunction computeAutoModelSelection(current, verifiedProviders, providerState) {\n\tconst next = { ...current };\n\tfor (const roleId of [\n\t\t\"llm\",\n\t\t\"embedding\",\n\t\t\"small\"\n\t]) {\n\t\tif (next[roleId]) continue;\n\t\tif (roleId === \"embedding\") continue;\n\t\tconst options = buildModelOptions(roleId, verifiedProviders, providerState);\n\t\tif (options.length === 0) continue;\n\t\tconst best = options[0];\n\t\tnext[roleId] = {\n\t\t\tconnId: best.connId,\n\t\t\tmodel: best.id,\n\t\t\tdims: best.dims\n\t\t};\n\t}\n\treturn next;\n}\n/**\n* Resolve an imported host preference (e.g. \"github-copilot/gpt-5.4\") to a\n* concrete selection using a 4-tier match against the role's options:\n* 1. exact full id (\"openai/gpt-4o\")\n* 2. provider-hint + model-name-part\n* 3. model-name-part alone\n* 4. offline fallback: provider verified but model list not yet loaded —\n* trust the host preference directly rather than dropping it (#5).\n* Returns undefined when nothing matches (or no preference given).\n*/\nfunction resolvePreferredModelSelection(roleId, preferredModel, verifiedProviders, providerState) {\n\tif (!preferredModel) return void 0;\n\tconst slashIdx = preferredModel.indexOf(\"/\");\n\tconst providerHint = slashIdx > 0 ? preferredModel.slice(0, slashIdx) : \"\";\n\tconst modelIdPart = slashIdx > 0 ? preferredModel.slice(slashIdx + 1) : preferredModel;\n\tconst options = buildModelOptions(roleId, verifiedProviders, providerState);\n\tconst exactFull = options.find((o) => o.id === preferredModel);\n\tif (exactFull) return {\n\t\tconnId: exactFull.connId,\n\t\tmodel: exactFull.id,\n\t\tdims: exactFull.dims\n\t};\n\tconst providerMatch = providerHint ? options.find((o) => o.connId === providerHint && o.id === modelIdPart) : void 0;\n\tif (providerMatch) return {\n\t\tconnId: providerMatch.connId,\n\t\tmodel: providerMatch.id,\n\t\tdims: providerMatch.dims\n\t};\n\tconst nameMatch = options.find((o) => o.id === modelIdPart);\n\tif (nameMatch) return {\n\t\tconnId: nameMatch.connId,\n\t\tmodel: nameMatch.id,\n\t\tdims: nameMatch.dims\n\t};\n\tif (providerHint && verifiedProviders.some((p) => p.id === providerHint)) return {\n\t\tconnId: providerHint,\n\t\tmodel: modelIdPart,\n\t\tdims: 0\n\t};\n}\n//#endregion\n//#region src/lib/setup/payload.ts\n/** Serialize one voice side, or undefined when not chosen / a \"skip-\" sentinel. */\nfunction voicePayload(v) {\n\tif (!v.engine || v.engine.startsWith(\"skip-\")) return void 0;\n\tconst out = {\n\t\tenabled: true,\n\t\tengine: v.engine\n\t};\n\tif (v.provider) out.provider = v.provider;\n\tif (v.baseURL) out.baseURL = v.baseURL;\n\tif (v.model) out.model = v.model;\n\tif (v.voice) out.voice = v.voice;\n\tif (v.language) out.language = v.language;\n\tif (v.apiKey) out.apiKey = v.apiKey;\n\treturn out;\n}\n/**\n* Build the install payload for /api/setup/complete from resolved wizard state.\n*\n* Pure — no reactivity, no fetch. Mirrors the former `payload` $derived exactly:\n* - capabilities: verified providers referenced by the selected llm/emb/small.\n* - addons: in-stack Ollama (suppressed when a host runtime is running), the\n* bundled voice addon (when either side targets openpalm-voice), and portals.\n* - llm/embedding go directly to akm config; voice sides only when explicit.\n*/\nfunction buildSetupPayload(input) {\n\tconst { modelSelection, verifiedProviders, providerState, ollamaEnabled, hostLocalLlmRunning, persistedVoiceTts, persistedVoiceStt, selectedVoiceProfile, selectedOllamaProfile, portalSelection, uiLoginPassword, imageTag, hostAkmEnabled } = input;\n\tconst llm = modelSelection.llm;\n\tconst emb = modelSelection.embedding;\n\tconst small = modelSelection.small;\n\tconst capabilityProviderIds = {};\n\tif (llm) capabilityProviderIds[llm.connId] = true;\n\tif (emb) capabilityProviderIds[emb.connId] = true;\n\tif (small?.model) capabilityProviderIds[small.connId] = true;\n\tconst capabilities = verifiedProviders.filter((p) => capabilityProviderIds[p.id]).map((p) => {\n\t\tconst st = providerState[p.id];\n\t\treturn {\n\t\t\tid: p.id,\n\t\t\tname: p.name,\n\t\t\tprovider: p.id,\n\t\t\tbaseUrl: st?.baseUrl ?? p.baseUrl,\n\t\t\tapiKey: st?.apiKey ?? \"\"\n\t\t};\n\t});\n\tconst llmConnId = llm?.connId ?? \"\";\n\tconst embConnId = emb?.connId ?? \"\";\n\tconst llmCap = capabilities.find((c) => c.id === llmConnId);\n\tconst embCap = capabilities.find((c) => c.id === embConnId);\n\tconst llmProvider = llmCap?.provider ?? \"\";\n\tconst embProvider = embCap?.provider ?? \"\";\n\tconst addons = {};\n\tif (ollamaEnabled && !hostLocalLlmRunning) addons.ollama = true;\n\tif (persistedVoiceTts.engine === \"openpalm-voice\" || persistedVoiceStt.engine === \"openpalm-voice\") addons.voice = true;\n\tconst portalCredentials = {};\n\tconst portalsConfig = buildPortalsConfig(portalSelection);\n\tfor (const chId of Object.keys(portalsConfig)) {\n\t\tconst chVal = portalsConfig[chId];\n\t\tif (chVal === true) addons[chId] = true;\n\t\telse if (typeof chVal === \"object\" && chVal !== null) {\n\t\t\taddons[chId] = true;\n\t\t\tconst creds = {};\n\t\t\tfor (const key of Object.keys(chVal)) if (key !== \"enabled\" && chVal[key]) creds[key] = String(chVal[key]);\n\t\t\tif (Object.keys(creds).length > 0) portalCredentials[chId] = creds;\n\t\t}\n\t}\n\tconst result = {\n\t\tversion: 2,\n\t\taddons,\n\t\tsecurity: { uiLoginPassword },\n\t\tconnections: capabilities\n\t};\n\tif (llmProvider && llm?.model) result.llm = {\n\t\tprovider: llmProvider,\n\t\tmodel: llm.model,\n\t\tbaseUrl: llmCap?.baseUrl ?? \"\"\n\t};\n\tif (embProvider && emb?.model) result.embedding = {\n\t\tprovider: embProvider,\n\t\tmodel: emb.model,\n\t\tdims: emb.dims ?? 1536,\n\t\tbaseUrl: embCap?.baseUrl ?? \"\"\n\t};\n\tconst ttsCap = voicePayload(persistedVoiceTts);\n\tif (ttsCap) result.tts = ttsCap;\n\tconst sttCap = voicePayload(persistedVoiceStt);\n\tif (sttCap) result.stt = sttCap;\n\tif ((persistedVoiceTts.engine === \"openpalm-voice\" || persistedVoiceStt.engine === \"openpalm-voice\") && selectedVoiceProfile) result.voiceProfile = selectedVoiceProfile;\n\tif (ollamaEnabled && selectedOllamaProfile) result.ollamaProfile = selectedOllamaProfile;\n\tif (Object.keys(portalCredentials).length > 0) result.portalCredentials = portalCredentials;\n\tif (imageTag.trim()) result.imageTag = imageTag.trim();\n\tif (hostAkmEnabled) result.hostAkm = true;\n\treturn result;\n}\n/**\n* Parse the current-config response into a PartialSetupState for rerun pre-fill.\n*\n* The inverse of buildSetupPayload: keeps the two directions from drifting on\n* field semantics (llm/embedding/voice engines/profiles/addons/portals). Mirrors\n* the former inline rerun parser in setup/+page.svelte. Pure — no side effects.\n*/\nfunction parseSetupConfig(data) {\n\tconst result = {\n\t\tenabledAddons: [],\n\t\tportalCredentials: {}\n\t};\n\tif (typeof data.hostAkm === \"boolean\") result.hostAkmEnabled = data.hostAkm;\n\tif (data.llm?.provider && data.llm?.model) result.llm = {\n\t\tconnId: data.llm.provider,\n\t\tmodel: data.llm.model\n\t};\n\tif (data.embedding?.provider && data.embedding?.model) result.embedding = {\n\t\tconnId: data.embedding.provider,\n\t\tmodel: data.embedding.model,\n\t\tdims: data.embedding.dims\n\t};\n\tif (data.voice?.tts) {\n\t\tconst storedTts = data.voice.tts;\n\t\tresult.voiceTts = storedTts.engine ? {\n\t\t\t...storedTts,\n\t\t\tengine: storedTts.engine\n\t\t} : { engine: \"\" };\n\t}\n\tif (data.voice?.stt) {\n\t\tconst storedStt = data.voice.stt;\n\t\tresult.voiceStt = storedStt.engine ? {\n\t\t\t...storedStt,\n\t\t\tengine: storedStt.engine\n\t\t} : { engine: \"\" };\n\t}\n\tif (data.voice?.selectedProfile && typeof data.voice.selectedProfile === \"string\") result.selectedVoiceProfile = data.voice.selectedProfile;\n\tconst imp = data.importedModelPreferences;\n\tif (imp?.model) result.importedLlmModel = imp.model;\n\tif (imp?.small_model) result.importedSmallModel = imp.small_model;\n\tconst enabled = Array.isArray(data.enabledAddons) ? data.enabledAddons : [];\n\tresult.enabledAddons = enabled;\n\tif (enabled.includes(\"ollama\")) result.ollamaEnabled = true;\n\tif (data.ollama?.selectedProfile && typeof data.ollama.selectedProfile === \"string\") result.selectedOllamaProfile = data.ollama.selectedProfile;\n\tresult.portalCredentials = data.portalCredentials ?? {};\n\treturn result;\n}\n//#endregion\n//#region src/lib/setup-api.ts\nvar SETUP_BASE = \"/api/setup\";\nasync function setupRequest(method, path, body, signal) {\n\tconst init = { method };\n\tif (body !== void 0) {\n\t\tinit.headers = { \"Content-Type\": \"application/json\" };\n\t\tinit.body = JSON.stringify(body);\n\t}\n\tif (signal) init.signal = signal;\n\treturn fetch(`${SETUP_BASE}${path}`, init);\n}\n/** GET /voice-profiles — null when the response was not ok. */\nasync function fetchVoiceProfiles() {\n\tconst res = await setupRequest(\"GET\", \"/voice-profiles\");\n\tif (!res.ok) return null;\n\treturn await res.json();\n}\n/** GET /ollama-profiles — null when the response was not ok. */\nasync function fetchOllamaProfiles() {\n\tconst res = await setupRequest(\"GET\", \"/ollama-profiles\");\n\tif (!res.ok) return null;\n\treturn await res.json();\n}\n/** GET /recommend — null when the response was not ok. */\nasync function fetchRecommendation() {\n\tconst res = await setupRequest(\"GET\", \"/recommend\");\n\tif (!res.ok) return null;\n\treturn await res.json();\n}\n/** POST /opencode/ensure — null when the response was not ok. */\nasync function ensureOpenCode() {\n\tconst res = await setupRequest(\"POST\", \"/opencode/ensure\");\n\tif (!res.ok) return null;\n\treturn await res.json();\n}\n/** GET /opencode/status — null when the response was not ok. */\nasync function fetchOpenCodeStatus() {\n\tconst res = await setupRequest(\"GET\", \"/opencode/status\");\n\tif (!res.ok) return null;\n\treturn await res.json();\n}\n/** GET /opencode/providers — null when the response was not ok. */\nasync function fetchOpenCodeProviders() {\n\tconst res = await setupRequest(\"GET\", \"/opencode/providers\");\n\tif (!res.ok) return null;\n\treturn await res.json();\n}\n/** GET /detect-providers — null when the response was not ok. */\nasync function fetchDetectedProviders() {\n\tconst res = await setupRequest(\"GET\", \"/detect-providers\");\n\tif (!res.ok) return null;\n\treturn await res.json();\n}\n/**\n* POST /models/:provider — list models for a provider connection.\n* Throws with the server's `error` (or an HTTP fallback) on a non-ok response\n* OR a 200 body with status === 'recoverable_error'.\n*/\nasync function fetchProviderModels(provider, input) {\n\tconst res = await setupRequest(\"POST\", `/models/${encodeURIComponent(provider)}`, {\n\t\tapiKey: input.apiKey ?? \"\",\n\t\tbaseUrl: input.baseUrl ?? \"\"\n\t});\n\tconst data = await res.json();\n\tif (!res.ok || data.status === \"recoverable_error\") throw new Error(data.error ?? `Failed to fetch models (HTTP ${res.status})`);\n\treturn data;\n}\n/** POST /opencode/provider/:id/oauth/authorize — throws the server message on non-ok. */\nasync function authorizeOpenCodeOAuth(providerId, methodIndex) {\n\tconst res = await setupRequest(\"POST\", `/opencode/provider/${encodeURIComponent(providerId)}/oauth/authorize`, { method: methodIndex });\n\tconst data = await res.json();\n\tif (!res.ok) throw new Error(data.message ?? \"OAuth failed\");\n\treturn data;\n}\n/**\n* POST /opencode/provider/:id/oauth/callback — the long-poll callback (caller\n* supplies the combined abort/timeout signal). Returns { ok, data }; `data` is\n* null when the body couldn't be parsed. Network/abort errors propagate so the\n* caller can distinguish user-cancel from timeout.\n*/\nasync function pollOpenCodeOAuthCallback(providerId, methodIndex, signal) {\n\tconst res = await setupRequest(\"POST\", `/opencode/provider/${encodeURIComponent(providerId)}/oauth/callback`, { method: methodIndex }, signal);\n\tconst data = await res.json().catch(() => null);\n\treturn {\n\t\tok: res.ok,\n\t\tdata\n\t};\n}\n/** POST /complete — returns { ok, data }; `data` is {} when the body can't parse. */\nasync function completeSetup(payload) {\n\tconst res = await setupRequest(\"POST\", \"/complete\", payload);\n\tconst data = await res.json().catch(() => ({}));\n\treturn {\n\t\tok: res.ok,\n\t\tdata\n\t};\n}\n/** GET /deploy-status — returns { ok, data }; `data` is null when not ok. */\nasync function fetchDeployStatus() {\n\tconst res = await setupRequest(\"GET\", \"/deploy-status\");\n\tif (!res.ok) return {\n\t\tok: false,\n\t\tdata: null\n\t};\n\treturn {\n\t\tok: true,\n\t\tdata: await res.json()\n\t};\n}\n/** POST /retry-deploy — returns { ok, data }; `data` is {} when the body can't parse. */\nasync function retryDeploy() {\n\tconst res = await setupRequest(\"POST\", \"/retry-deploy\");\n\tconst data = await res.json().catch(() => ({}));\n\treturn {\n\t\tok: res.ok,\n\t\tdata\n\t};\n}\n/** GET /host-status — null when the response was not ok. */\nasync function fetchHostStatus() {\n\tconst res = await setupRequest(\"GET\", \"/host-status\");\n\tif (!res.ok) return null;\n\treturn await res.json();\n}\n/** POST /import-host — returns { ok, data }; `data` is null when the body can't parse. */\nasync function importHost() {\n\tconst res = await setupRequest(\"POST\", \"/import-host\");\n\tconst data = await res.json().catch(() => null);\n\treturn {\n\t\tok: res.ok,\n\t\tdata\n\t};\n}\n/** GET /current-config — null when the response was not ok. */\nasync function fetchCurrentConfig() {\n\tconst res = await setupRequest(\"GET\", \"/current-config\");\n\tif (!res.ok) return null;\n\treturn await res.json();\n}\n/** GET /status — parses the body regardless of HTTP status (matches the mount check). */\nasync function fetchSetupStatus() {\n\treturn await (await setupRequest(\"GET\", \"/status\")).json();\n}\n//#endregion\n//#region src/lib/setup/setup-state.svelte.ts\nvar INITIAL = {\n\tcurrentStep: 0,\n\tmaxVisitedStep: 0,\n\tshowDeploy: false,\n\tsystemCheckPassed: false,\n\tmodelMode: \"cloud\",\n\tvoiceEnabled: false,\n\tuiLoginPassword: \"\",\n\tstep0Error: \"\",\n\tautoModeImporting: false,\n\tgpuDetected: false,\n\tproviderState: {},\n\tdetectedHostProviders: [],\n\tdetectedProviders: [],\n\topencodeAvailable: false,\n\topencodeProviders: [],\n\topencodeAuth: {},\n\thostProviderCount: 0,\n\tallowEmptyInstall: false,\n\trecommendation: null,\n\trecommendationAlert: \"\",\n\trecommendationApplied: false,\n\tdetectedGpuVramMb: 0,\n\tdetectedGpuVendor: \"\",\n\tdetectedGpuName: \"\",\n\tmodelSelection: {},\n\tvoiceTts: { engine: \"\" },\n\tvoiceStt: { engine: \"\" },\n\tvoiceProfiles: [],\n\tselectedVoiceProfile: \"\",\n\timportedLlmModel: void 0,\n\timportedSmallModel: void 0,\n\tportalSelection: {\n\t\tdiscord: {\n\t\t\tenabled: false,\n\t\t\tbotToken: \"\",\n\t\t\tapplicationId: \"\"\n\t\t},\n\t\tslack: {\n\t\t\tenabled: false,\n\t\t\tslackBotToken: \"\",\n\t\t\tslackAppToken: \"\"\n\t\t}\n\t},\n\tollamaEnabled: false,\n\tollamaProfiles: [],\n\tselectedOllamaProfile: \"\",\n\timageTag: \"\",\n\thostAkmEnabled: false,\n\tinstallError: \"\",\n\tinstalling: false,\n\temptyAiAck: false,\n\tdeployData: {},\n\tdeployDone: false,\n\tdeployHasWarnings: false,\n\tdeployError: null,\n\tdeployPollErrors: 0,\n\tsavedCloudLlm: void 0,\n\tdetectedCloudConn: \"\",\n\thostImportTriggered: false,\n\thostImporting: false,\n\thostImportError: \"\",\n\tisRerun: false\n};\nvar SetupState = class {\n\tcurrentStep = INITIAL.currentStep;\n\tmaxVisitedStep = INITIAL.maxVisitedStep;\n\tshowDeploy = INITIAL.showDeploy;\n\tsystemCheckPassed = INITIAL.systemCheckPassed;\n\tmodelMode = INITIAL.modelMode;\n\tvoiceEnabled = INITIAL.voiceEnabled;\n\tuiLoginPassword = INITIAL.uiLoginPassword;\n\tstep0Error = INITIAL.step0Error;\n\tautoModeImporting = INITIAL.autoModeImporting;\n\tgpuDetected = INITIAL.gpuDetected;\n\tproviderState = INITIAL.providerState;\n\tdetectedHostProviders = INITIAL.detectedHostProviders;\n\tdetectedProviders = INITIAL.detectedProviders;\n\topencodeAvailable = INITIAL.opencodeAvailable;\n\topencodeProviders = INITIAL.opencodeProviders;\n\topencodeAuth = INITIAL.opencodeAuth;\n\thostProviderCount = INITIAL.hostProviderCount;\n\tallowEmptyInstall = INITIAL.allowEmptyInstall;\n\trecommendation = INITIAL.recommendation;\n\trecommendationAlert = INITIAL.recommendationAlert;\n\trecommendationApplied = INITIAL.recommendationApplied;\n\tdetectedGpuVramMb = INITIAL.detectedGpuVramMb;\n\tdetectedGpuVendor = INITIAL.detectedGpuVendor;\n\tdetectedGpuName = INITIAL.detectedGpuName;\n\t/** Generation counter per provider — discard stale verify results */\n\tverifyGeneration = {};\n\t/** AbortControllers for in-flight OAuth long-poll requests */\n\toauthAbortControllers = {};\n\tmodelSelection = INITIAL.modelSelection;\n\tvoiceTts = INITIAL.voiceTts;\n\tvoiceStt = INITIAL.voiceStt;\n\tvoiceProfiles = INITIAL.voiceProfiles;\n\tselectedVoiceProfile = INITIAL.selectedVoiceProfile;\n\timportedLlmModel = INITIAL.importedLlmModel;\n\timportedSmallModel = INITIAL.importedSmallModel;\n\tportalSelection = INITIAL.portalSelection;\n\tollamaEnabled = INITIAL.ollamaEnabled;\n\tollamaProfiles = INITIAL.ollamaProfiles;\n\tselectedOllamaProfile = INITIAL.selectedOllamaProfile;\n\timageTag = INITIAL.imageTag;\n\thostAkmEnabled = INITIAL.hostAkmEnabled;\n\tinstallError = INITIAL.installError;\n\tinstalling = INITIAL.installing;\n\temptyAiAck = INITIAL.emptyAiAck;\n\tdeployData = INITIAL.deployData;\n\tdeployDone = INITIAL.deployDone;\n\tdeployHasWarnings = INITIAL.deployHasWarnings;\n\tdeployError = INITIAL.deployError;\n\tdeployPollErrors = INITIAL.deployPollErrors;\n\tdeployTimer = null;\n\tsavedCloudLlm = INITIAL.savedCloudLlm;\n\tdetectedCloudConn = INITIAL.detectedCloudConn;\n\thostImportTriggered = INITIAL.hostImportTriggered;\n\thostImporting = INITIAL.hostImporting;\n\thostImportError = INITIAL.hostImportError;\n\tisRerun = INITIAL.isRerun;\n\tconstructor() {\n\t\tObject.assign(this, structuredClone(INITIAL));\n\t}\n\t#hostLocalLlmRunning = derived(() => this.providerState.ollama?.ollamaMode === \"running\" || this.detectedHostProviders.some((p) => p.provider === \"ollama\" || p.provider === \"lmstudio\"));\n\tget hostLocalLlmRunning() {\n\t\treturn this.#hostLocalLlmRunning();\n\t}\n\tset hostLocalLlmRunning($$value) {\n\t\treturn this.#hostLocalLlmRunning($$value);\n\t}\n\t#verifiedCount = derived(() => {\n\t\treturn (this.opencodeAvailable ? this.opencodeProviders.map((p) => p.id) : PROVIDERS.map((p) => p.id)).filter((id) => this.providerState[id]?.verified).length;\n\t});\n\tget verifiedCount() {\n\t\treturn this.#verifiedCount();\n\t}\n\tset verifiedCount($$value) {\n\t\treturn this.#verifiedCount($$value);\n\t}\n\t#hasUsableAI = derived(() => !!this.modelSelection.llm?.model);\n\tget hasUsableAI() {\n\t\treturn this.#hasUsableAI();\n\t}\n\tset hasUsableAI($$value) {\n\t\treturn this.#hasUsableAI($$value);\n\t}\n\t#verifiedProviders = derived(() => buildVerifiedProviders(this.opencodeAvailable, this.opencodeProviders, this.providerState));\n\tget verifiedProviders() {\n\t\treturn this.#verifiedProviders();\n\t}\n\tset verifiedProviders($$value) {\n\t\treturn this.#verifiedProviders($$value);\n\t}\n\t#canComplete = derived(() => !!this.modelSelection.llm?.model || this.allowEmptyInstall);\n\tget canComplete() {\n\t\treturn this.#canComplete();\n\t}\n\tset canComplete($$value) {\n\t\treturn this.#canComplete($$value);\n\t}\n\t#hasOpenAI = derived(() => PROVIDERS.some((p) => p.id === \"openai\" && this.providerState[p.id]?.verified));\n\tget hasOpenAI() {\n\t\treturn this.#hasOpenAI();\n\t}\n\tset hasOpenAI($$value) {\n\t\treturn this.#hasOpenAI($$value);\n\t}\n\t#voiceDefaults = derived(() => this.hasOpenAI ? {\n\t\ttts: \"openai-tts\",\n\t\tstt: \"openai-stt\"\n\t} : {\n\t\ttts: \"browser-tts\",\n\t\tstt: \"browser-stt\"\n\t});\n\tget voiceDefaults() {\n\t\treturn this.#voiceDefaults();\n\t}\n\tset voiceDefaults($$value) {\n\t\treturn this.#voiceDefaults($$value);\n\t}\n\t#enableVoice = derived(() => this.voiceTts.engine === \"openpalm-voice\" || this.voiceStt.engine === \"openpalm-voice\");\n\tget enableVoice() {\n\t\treturn this.#enableVoice();\n\t}\n\tset enableVoice($$value) {\n\t\treturn this.#enableVoice($$value);\n\t}\n\t#displayedVoiceTts = derived(() => resolveVoiceSide(this.voiceTts, this.enableVoice, this.voiceDefaults.tts));\n\tget displayedVoiceTts() {\n\t\treturn this.#displayedVoiceTts();\n\t}\n\tset displayedVoiceTts($$value) {\n\t\treturn this.#displayedVoiceTts($$value);\n\t}\n\t#displayedVoiceStt = derived(() => resolveVoiceSide(this.voiceStt, this.enableVoice, this.voiceDefaults.stt));\n\tget displayedVoiceStt() {\n\t\treturn this.#displayedVoiceStt();\n\t}\n\tset displayedVoiceStt($$value) {\n\t\treturn this.#displayedVoiceStt($$value);\n\t}\n\t#persistedVoiceTts = derived(() => resolveVoiceSide(this.voiceTts, this.enableVoice, \"\"));\n\tget persistedVoiceTts() {\n\t\treturn this.#persistedVoiceTts();\n\t}\n\tset persistedVoiceTts($$value) {\n\t\treturn this.#persistedVoiceTts($$value);\n\t}\n\t#persistedVoiceStt = derived(() => resolveVoiceSide(this.voiceStt, this.enableVoice, \"\"));\n\tget persistedVoiceStt() {\n\t\treturn this.#persistedVoiceStt();\n\t}\n\tset persistedVoiceStt($$value) {\n\t\treturn this.#persistedVoiceStt($$value);\n\t}\n\t#payload = derived(() => buildSetupPayload({\n\t\tmodelSelection: this.modelSelection,\n\t\tverifiedProviders: this.verifiedProviders,\n\t\tproviderState: this.providerState,\n\t\tollamaEnabled: this.ollamaEnabled,\n\t\thostLocalLlmRunning: this.hostLocalLlmRunning,\n\t\tpersistedVoiceTts: this.persistedVoiceTts,\n\t\tpersistedVoiceStt: this.persistedVoiceStt,\n\t\tselectedVoiceProfile: this.selectedVoiceProfile,\n\t\tselectedOllamaProfile: this.selectedOllamaProfile,\n\t\tportalSelection: this.portalSelection,\n\t\tuiLoginPassword: this.uiLoginPassword,\n\t\timageTag: this.imageTag,\n\t\thostAkmEnabled: this.hostAkmEnabled\n\t}));\n\tget payload() {\n\t\treturn this.#payload();\n\t}\n\tset payload($$value) {\n\t\treturn this.#payload($$value);\n\t}\n\tasync loadVoiceProfiles() {\n\t\ttry {\n\t\t\tconst data = await fetchVoiceProfiles();\n\t\t\tif (!data) return;\n\t\t\tif (!Array.isArray(data.profiles)) return;\n\t\t\tthis.voiceProfiles = data.profiles;\n\t\t\tconst fallback = selectAddonProfileId(data.profiles, \"voice\", this.gpuDetected);\n\t\t\tif (fallback) this.selectedVoiceProfile = fallback;\n\t\t\tif (this.gpuDetected && this.selectedVoiceProfile !== addonProfileId(\"voice\", \"cuda\")) {\n\t\t\t\tconst cuda = this.voiceProfiles.find((p) => p.id === addonProfileId(\"voice\", \"cuda\") && p.available !== false);\n\t\t\t\tif (cuda) this.selectedVoiceProfile = cuda.id;\n\t\t\t}\n\t\t} catch {}\n\t}\n\tasync loadOllamaProfiles() {\n\t\ttry {\n\t\t\tconst data = await fetchOllamaProfiles();\n\t\t\tif (!data) return;\n\t\t\tif (!Array.isArray(data.profiles)) return;\n\t\t\tthis.ollamaProfiles = data.profiles;\n\t\t\tconst fallback = this.gpuDetected ? data.profiles.find((p) => p.id === addonProfileId(\"ollama\", \"cuda\") && p.available !== false) ?? data.profiles.find((p) => p.default && p.available !== false) ?? data.profiles.find((p) => p.available !== false) : data.profiles.find((p) => p.id === addonProfileId(\"ollama\", \"cpu\") && p.available !== false) ?? data.profiles.find((p) => p.default && p.available !== false) ?? data.profiles.find((p) => p.available !== false);\n\t\t\tif (data.selectedProfile && typeof data.selectedProfile === \"string\") this.selectedOllamaProfile = data.selectedProfile;\n\t\t\telse if (fallback) this.selectedOllamaProfile = fallback.id;\n\t\t} catch {}\n\t}\n\tinitProviderState() {\n\t\tconst state = {};\n\t\tfor (const p of PROVIDERS) state[p.id] = {\n\t\t\tselected: false,\n\t\t\tverified: false,\n\t\t\tverifying: false,\n\t\t\terror: false,\n\t\t\tapiKey: \"\",\n\t\t\tbaseUrl: p.baseUrl ?? \"\",\n\t\t\tmodels: [],\n\t\t\tollamaMode: null\n\t\t};\n\t\tthis.providerState = state;\n\t}\n\tenableRecommendedOllama(variant) {\n\t\tthis.ollamaEnabled = true;\n\t\tconst st = this.providerState.ollama;\n\t\tif (st) {\n\t\t\tst.selected = true;\n\t\t\tst.verified = true;\n\t\t\tst.ollamaMode = \"instack\";\n\t\t\tst.baseUrl = \"http://ollama:11434\";\n\t\t\tif (st.models.length === 0) st.models = [OLLAMA_DEFAULT_CHAT_MODEL];\n\t\t}\n\t\tthis.selectedOllamaProfile = selectAddonProfileId(this.ollamaProfiles, \"ollama\", this.gpuDetected, variant) ?? addonProfileId(\"ollama\", variant ?? (this.gpuDetected ? \"cuda\" : \"cpu\"));\n\t}\n\thandleConnectModeChange(mode) {\n\t\tthis.modelMode = mode;\n\t\tif (mode === \"local\") {\n\t\t\tif (this.modelSelection.llm && !LOCAL_PROVIDER_IDS.has(this.modelSelection.llm.connId)) this.savedCloudLlm = this.modelSelection.llm;\n\t\t\tif (!this.hostLocalLlmRunning) this.enableRecommendedOllama();\n\t\t\tconst localOpt = this.getModelOptionsForRole(\"llm\").find((o) => LOCAL_PROVIDER_IDS.has(o.connId));\n\t\t\tthis.modelSelection.llm = localOpt ? {\n\t\t\t\tconnId: localOpt.connId,\n\t\t\t\tmodel: localOpt.id,\n\t\t\t\tdims: localOpt.dims\n\t\t\t} : {\n\t\t\t\tconnId: \"ollama\",\n\t\t\t\tmodel: OLLAMA_DEFAULT_CHAT_MODEL,\n\t\t\t\tdims: 0\n\t\t\t};\n\t\t} else if (mode === \"cloud\") {\n\t\t\tif (this.savedCloudLlm) this.modelSelection.llm = this.savedCloudLlm;\n\t\t}\n\t}\n\tasync fetchAndApplyRecommendation() {\n\t\tif (this.recommendationApplied) return;\n\t\tlet rec;\n\t\tif (this.recommendation) rec = this.recommendation;\n\t\telse try {\n\t\t\tconst data = await fetchRecommendation();\n\t\t\tif (!data) return;\n\t\t\tif (!data.ok || !data.recommendation) return;\n\t\t\trec = data.recommendation;\n\t\t\tif (Array.isArray(data.hostProviders)) this.detectedHostProviders = data.hostProviders;\n\t\t\tif (data.gpu) {\n\t\t\t\tthis.detectedGpuVramMb = data.gpu.vramMb ?? 0;\n\t\t\t\tthis.detectedGpuVendor = data.gpu.vendor ?? \"\";\n\t\t\t\tthis.detectedGpuName = data.gpu.name ?? \"\";\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tconsole.warn(\"fetchAndApplyRecommendation failed\", e);\n\t\t\treturn;\n\t\t}\n\t\tthis.recommendationApplied = true;\n\t\tthis.recommendation = rec;\n\t\tswitch (rec.action) {\n\t\t\tcase \"use-cloud\":\n\t\t\t\tthis.recommendationAlert = \"\";\n\t\t\t\tbreak;\n\t\t\tcase \"use-host-providers\":\n\t\t\t\tthis.recommendationAlert = rec.alert;\n\t\t\t\tif (!this.hostImportTriggered) {\n\t\t\t\t\tthis.hostImportTriggered = true;\n\t\t\t\t\tawait this.handleHostImport();\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase \"enable-ollama\":\n\t\t\t\tthis.recommendationAlert = rec.alert;\n\t\t\t\tthis.enableRecommendedOllama(rec.profileVariant);\n\t\t\t\tbreak;\n\t\t\tcase \"connect-manually\":\n\t\t\t\tthis.recommendationAlert = rec.alert;\n\t\t\t\tbreak;\n\t\t}\n\t}\n\thandleEnableVoiceChange(v) {\n\t\tif (v) {\n\t\t\tif (this.voiceTts.engine !== \"openpalm-voice\") this.voiceTts = { engine: \"openpalm-voice\" };\n\t\t\tif (this.voiceStt.engine !== \"openpalm-voice\") this.voiceStt = { engine: \"openpalm-voice\" };\n\t\t\tif (!this.selectedVoiceProfile) {\n\t\t\t\tconst match = selectAddonProfileId(this.voiceProfiles, \"voice\", this.gpuDetected);\n\t\t\t\tif (match) this.selectedVoiceProfile = match;\n\t\t\t}\n\t\t} else {\n\t\t\tif (this.voiceTts.engine === \"openpalm-voice\") this.voiceTts = { engine: \"\" };\n\t\t\tif (this.voiceStt.engine === \"openpalm-voice\") this.voiceStt = { engine: \"\" };\n\t\t}\n\t}\n\tgoToStep(n) {\n\t\tif (n < 0 || n > 3) return;\n\t\tif (n > 0 && !this.systemCheckPassed) return;\n\t\tthis.currentStep = n;\n\t\tif (n > this.maxVisitedStep) this.maxVisitedStep = n;\n\t\tthis.showDeploy = false;\n\t\tif (n === 1 && !this.isRerun) {\n\t\t\tthis.fetchAndApplyRecommendation();\n\t\t\tthis.applyImportedModelPreferences();\n\t\t\tthis.autoSelectModels();\n\t\t}\n\t}\n\tautoSelectModels() {\n\t\tconst next = computeAutoModelSelection(this.modelSelection, this.verifiedProviders, this.providerState);\n\t\tfor (const roleId of [\"llm\", \"small\"]) if (!this.modelSelection[roleId] && next[roleId]) this.modelSelection[roleId] = next[roleId];\n\t}\n\tgetModelOptionsForRole(roleId) {\n\t\treturn buildModelOptions(roleId, this.verifiedProviders, this.providerState);\n\t}\n\tapplyImportedOpenCodeModelSelections(selectedModels) {\n\t\tif (!selectedModels) return;\n\t\tif (selectedModels.llm) this.importedLlmModel = selectedModels.llm;\n\t\tif (selectedModels.small) this.importedSmallModel = selectedModels.small;\n\t\tthis.applyImportedModelPreferences();\n\t}\n\tapplyImportedModelPreferences() {\n\t\tif (this.importedLlmModel) {\n\t\t\tconst llmSelection = resolvePreferredModelSelection(\"llm\", this.importedLlmModel, this.verifiedProviders, this.providerState);\n\t\t\tif (llmSelection) this.modelSelection.llm = llmSelection;\n\t\t}\n\t\tif (this.importedSmallModel) {\n\t\t\tconst smallSelection = resolvePreferredModelSelection(\"small\", this.importedSmallModel, this.verifiedProviders, this.providerState);\n\t\t\tif (smallSelection) this.modelSelection.small = smallSelection;\n\t\t}\n\t}\n\tasync checkOpenCodeAndInit() {\n\t\ttry {\n\t\t\tif ((await ensureOpenCode())?.ok) {\n\t\t\t\tthis.opencodeAvailable = true;\n\t\t\t\tawait this.loadOpenCodeProviders();\n\t\t\t\treturn;\n\t\t\t}\n\t\t} catch {}\n\t\ttry {\n\t\t\tif ((await fetchOpenCodeStatus())?.available) {\n\t\t\t\tthis.opencodeAvailable = true;\n\t\t\t\tawait this.loadOpenCodeProviders();\n\t\t\t}\n\t\t} catch {}\n\t}\n\tasync loadOpenCodeProviders() {\n\t\tconst data = await fetchOpenCodeProviders();\n\t\tif (!data) return;\n\t\tif (!data.available || !Array.isArray(data.providers)) return;\n\t\tconst providers = data.providers;\n\t\tconst auth = data.auth ?? {};\n\t\tconst connected = new Set(Array.isArray(data.connected) ? data.connected : []);\n\t\tconst existingIds = new Set(providers.map((p) => p.id));\n\t\tfor (const lp of LOCAL_PROVIDERS) if (!existingIds.has(lp.id)) providers.push(lp);\n\t\tthis.opencodeProviders = providers;\n\t\tthis.opencodeAuth = auth;\n\t\tconst newState = { ...this.providerState };\n\t\tfor (const ocp of providers) {\n\t\t\tif (!newState[ocp.id]) newState[ocp.id] = {\n\t\t\t\tselected: false,\n\t\t\t\tverified: false,\n\t\t\t\tverifying: false,\n\t\t\t\terror: false,\n\t\t\t\tapiKey: \"\",\n\t\t\t\tbaseUrl: ocp.localUrl ?? \"\",\n\t\t\t\tmodels: [],\n\t\t\t\tollamaMode: null\n\t\t\t};\n\t\t\tconst modelIds = Object.keys(ocp.models ?? {});\n\t\t\tif (modelIds.length > 0 && newState[ocp.id].models.length === 0) newState[ocp.id].models = modelIds;\n\t\t\tif (connected.has(ocp.id)) newState[ocp.id].verified = true;\n\t\t}\n\t\tthis.providerState = newState;\n\t\tthis.applyImportedOpenCodeModelSelections(data.selectedModels);\n\t}\n\tasync detectProviders() {\n\t\ttry {\n\t\t\tconst data = await fetchDetectedProviders();\n\t\t\tif (data) {\n\t\t\t\tthis.detectedProviders = data.providers ?? [];\n\t\t\t\tfor (const dp of this.detectedProviders) {\n\t\t\t\t\tif (!dp.available) continue;\n\t\t\t\t\tconst st = this.providerState[dp.provider];\n\t\t\t\t\tif (st) {\n\t\t\t\t\t\tst.baseUrl = dp.url;\n\t\t\t\t\t\tif (!st.selected) {\n\t\t\t\t\t\t\tst.selected = true;\n\t\t\t\t\t\t\tif (dp.provider === \"ollama\") st.ollamaMode = \"running\";\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthis.verifyProvider(dp.provider);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} catch {\n\t\t\tthis.detectedProviders = [];\n\t\t}\n\t}\n\tasync verifyProvider(id) {\n\t\tconst p = PROVIDERS.find((x) => x.id === id);\n\t\tif (!p) return;\n\t\tconst st = this.providerState[id];\n\t\tif (!st) return;\n\t\tif (id === \"ollama\" && st.ollamaMode === \"instack\") {\n\t\t\tst.verified = true;\n\t\t\tst.error = false;\n\t\t\treturn;\n\t\t}\n\t\tconst gen = (this.verifyGeneration[id] ?? 0) + 1;\n\t\tthis.verifyGeneration[id] = gen;\n\t\tst.verifying = true;\n\t\tst.error = false;\n\t\tconst baseUrl = (st.baseUrl || p.baseUrl).trim();\n\t\tconst apiKey = (st.apiKey ?? \"\").trim();\n\t\ttry {\n\t\t\tconst result = await fetchProviderModels(id, {\n\t\t\t\tbaseUrl,\n\t\t\t\tapiKey\n\t\t\t});\n\t\t\tif (this.verifyGeneration[id] !== gen) return;\n\t\t\tst.verified = true;\n\t\t\tst.error = false;\n\t\t\tst.models = result.models ?? [];\n\t\t} catch (e) {\n\t\t\tif (this.verifyGeneration[id] !== gen) return;\n\t\t\tst.verified = false;\n\t\t\tst.error = true;\n\t\t\tst.errorMessage = e instanceof Error ? e.message : \"\";\n\t\t\tst.models = [];\n\t\t}\n\t\tst.verifying = false;\n\t}\n\tasync startOpenCodeOAuth(providerId, methodIndex) {\n\t\tconst st = this.providerState[providerId];\n\t\tif (!st) return;\n\t\tst.verifying = true;\n\t\tst.error = false;\n\t\ttry {\n\t\t\tconst oauthRes = await authorizeOpenCodeOAuth(providerId, methodIndex);\n\t\t\tst.oauthPolling = true;\n\t\t\tst.oauthUrl = oauthRes.url ?? \"\";\n\t\t\tst.oauthInstructions = oauthRes.instructions ?? \"\";\n\t\t\tif (oauthRes.url && oauthRes.method === \"auto\") window.open(oauthRes.url, \"_blank\");\n\t\t\tawait this.pollOpenCodeOAuth(providerId, methodIndex);\n\t\t} catch (e) {\n\t\t\tst.verifying = false;\n\t\t\tst.error = true;\n\t\t\tst.errorMessage = e instanceof Error ? e.message : \"OAuth failed\";\n\t\t\tst.oauthPolling = false;\n\t\t}\n\t}\n\tasync pollOpenCodeOAuth(providerId, methodIndex) {\n\t\tconst st = this.providerState[providerId];\n\t\tconst ac = new AbortController();\n\t\tthis.oauthAbortControllers[providerId] = ac;\n\t\tconst timeoutSignal = AbortSignal.timeout(10 * 6e4);\n\t\tconst combinedSignal = AbortSignal.any ? AbortSignal.any([ac.signal, timeoutSignal]) : ac.signal;\n\t\ttry {\n\t\t\tconst { ok, data } = await pollOpenCodeOAuthCallback(providerId, methodIndex, combinedSignal);\n\t\t\tif (ok && data?.ok) {\n\t\t\t\tst.verified = true;\n\t\t\t\tst.error = false;\n\t\t\t} else {\n\t\t\t\tst.error = true;\n\t\t\t\tst.errorMessage = data?.message ?? \"Authorization failed\";\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tif (e instanceof Error && e.name === \"AbortError\" && ac.signal.aborted) return;\n\t\t\tif (e instanceof Error && e.name === \"AbortError\") {\n\t\t\t\tst.error = true;\n\t\t\t\tst.errorMessage = \"Authorization timed out. Try again.\";\n\t\t\t} else {\n\t\t\t\tst.error = true;\n\t\t\t\tst.errorMessage = e instanceof Error ? e.message : \"Authorization failed\";\n\t\t\t}\n\t\t} finally {\n\t\t\tdelete this.oauthAbortControllers[providerId];\n\t\t\tst.oauthPolling = false;\n\t\t\tst.verifying = false;\n\t\t}\n\t}\n\tcancelOAuth(id) {\n\t\tconst ac = this.oauthAbortControllers[id];\n\t\tif (ac) {\n\t\t\tac.abort();\n\t\t\tdelete this.oauthAbortControllers[id];\n\t\t}\n\t\tconst st = this.providerState[id];\n\t\tif (st) {\n\t\t\tst.oauthPolling = false;\n\t\t\tst.verifying = false;\n\t\t}\n\t}\n\tasync handleInstall() {\n\t\tif (this.installing) return;\n\t\tthis.installError = \"\";\n\t\tif (!!!this.payload.llm && !this.isRerun && !this.emptyAiAck) {\n\t\t\tif (!window.confirm(\"No AI is set up here. You can connect this app to an assistant running on another computer, or add a provider later from your dashboard.\\n\\nInstall now?\")) return;\n\t\t\tthis.emptyAiAck = true;\n\t\t}\n\t\tthis.installing = true;\n\t\tif ((this.persistedVoiceTts.engine === \"openpalm-voice\" || this.persistedVoiceStt.engine === \"openpalm-voice\") && !this.selectedVoiceProfile) this.selectedVoiceProfile = selectAddonProfileId(this.voiceProfiles, \"voice\", this.gpuDetected) ?? addonProfileId(\"voice\", \"cpu\");\n\t\tif (this.ollamaEnabled && !this.selectedOllamaProfile) this.selectedOllamaProfile = addonProfileId(\"ollama\", this.gpuDetected ? \"cuda\" : \"cpu\");\n\t\ttry {\n\t\t\tconst { ok, data } = await completeSetup(this.payload);\n\t\t\tif (!ok || !data.ok) {\n\t\t\t\tthis.installError = data.message ?? data.error ?? \"Install failed.\";\n\t\t\t\tthis.installing = false;\n\t\t\t\tthis.showDeploy = false;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.showDeploy = true;\n\t\t\tthis.startDeployPolling();\n\t\t} catch (e) {\n\t\t\tthis.installError = `Network error: ${e instanceof Error ? e.message : \"unable to reach server.\"}`;\n\t\t\tthis.installing = false;\n\t\t}\n\t}\n\tstartDeployPolling() {\n\t\tthis.stopDeployPolling();\n\t\tthis.pollDeployStatus();\n\t\tthis.deployTimer = setInterval(() => {\n\t\t\tthis.pollDeployStatus();\n\t\t}, 2500);\n\t}\n\tstopDeployPolling() {\n\t\tif (this.deployTimer) {\n\t\t\tclearInterval(this.deployTimer);\n\t\t\tthis.deployTimer = null;\n\t\t}\n\t}\n\tasync pollDeployStatus() {\n\t\ttry {\n\t\t\tconst { ok, data } = await fetchDeployStatus();\n\t\t\tif (!ok || !data) {\n\t\t\t\tthis.deployPollErrors++;\n\t\t\t\tif (this.deployPollErrors >= 5) {\n\t\t\t\t\tthis.stopDeployPolling();\n\t\t\t\t\tthis.deployError = \"Lost contact with the installer. Services may still be starting in the background.\";\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.deployPollErrors = 0;\n\t\t\tthis.deployData = data;\n\t\t\tif (data.deployError) {\n\t\t\t\tthis.stopDeployPolling();\n\t\t\t\tthis.deployError = data.deployError;\n\t\t\t} else if (data.setupComplete && data.deployStatus && data.deployStatus.length > 0) {\n\t\t\t\tconst rows = data.deployStatus;\n\t\t\t\tconst allRunning = rows.every((s) => s.status === \"running\");\n\t\t\t\tconst onlyWarningsLeft = !data.deploying && rows.every((s) => s.status === \"running\" || s.status === \"warning\") && rows.some((s) => s.status === \"warning\");\n\t\t\t\tif (allRunning) {\n\t\t\t\t\tthis.stopDeployPolling();\n\t\t\t\t\tthis.deployDone = true;\n\t\t\t\t} else if (onlyWarningsLeft) {\n\t\t\t\t\tthis.stopDeployPolling();\n\t\t\t\t\tthis.deployHasWarnings = true;\n\t\t\t\t\tthis.deployDone = true;\n\t\t\t\t}\n\t\t\t} else if (data.setupComplete && !data.deploying && (!data.deployStatus || data.deployStatus.length === 0)) {\n\t\t\t\tthis.stopDeployPolling();\n\t\t\t\tthis.deployDone = true;\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tthis.deployPollErrors++;\n\t\t\tif (this.deployPollErrors >= 5) {\n\t\t\t\tthis.stopDeployPolling();\n\t\t\t\tthis.deployError = err instanceof Error ? `Lost contact with the installer: ${err.message}` : \"Lost contact with the installer.\";\n\t\t\t}\n\t\t}\n\t}\n\thandlePortalToggle(id) {\n\t\tconst sel = this.portalSelection[id];\n\t\tif (typeof sel === \"object\" && sel !== null) sel.enabled = !sel.enabled;\n\t\telse this.portalSelection[id] = !sel;\n\t}\n\thandleCredentialChange(chId, credKey, value) {\n\t\tconst sel = this.portalSelection[chId];\n\t\tif (typeof sel === \"object\" && sel !== null) sel[credKey] = value;\n\t}\n\tasync handleDeployRetry() {\n\t\tthis.installing = false;\n\t\tthis.deployError = null;\n\t\tthis.deployDone = false;\n\t\tthis.deployHasWarnings = false;\n\t\tthis.deployData = {};\n\t\tthis.deployPollErrors = 0;\n\t\tconst { ok, data } = await retryDeploy();\n\t\tif (!ok || data?.ok === false) {\n\t\t\tthis.deployError = data?.message ?? \"Retry failed.\";\n\t\t\treturn;\n\t\t}\n\t\tthis.installing = true;\n\t\tthis.pollDeployStatus();\n\t}\n\thandleDeployBack() {\n\t\tthis.installing = false;\n\t\tthis.deployError = null;\n\t\tthis.deployDone = false;\n\t\tthis.deployHasWarnings = false;\n\t\tthis.deployData = {};\n\t\tthis.deployPollErrors = 0;\n\t\tthis.showDeploy = false;\n\t\tthis.currentStep = 3;\n\t}\n\thandleSystemCheckPass() {\n\t\tthis.systemCheckPassed = true;\n\t\tthis.goToStep(1);\n\t}\n\thandleGpuDetected() {\n\t\tthis.gpuDetected = true;\n\t\tif (this.voiceProfiles.length > 0 && this.selectedVoiceProfile !== addonProfileId(\"voice\", \"cuda\")) {\n\t\t\tconst cuda = this.voiceProfiles.find((p) => p.id === addonProfileId(\"voice\", \"cuda\") && p.available !== false);\n\t\t\tif (cuda) this.selectedVoiceProfile = cuda.id;\n\t\t}\n\t}\n\tasync loadHostStatus() {\n\t\ttry {\n\t\t\tconst data = await fetchHostStatus();\n\t\t\tif (data) {\n\t\t\t\tthis.hostProviderCount = Math.max(data.providerCount ?? 0, data.credentialCount ?? 0);\n\t\t\t\tif (data.imageTag && !this.imageTag) this.imageTag = data.imageTag;\n\t\t\t\tif (typeof data.hostAkmAvailable === \"boolean\") {\n\t\t\t\t\tif (!this.isRerun) this.hostAkmEnabled = data.hostAkmAvailable;\n\t\t\t\t}\n\t\t\t\tif (data.modelPreferences?.model) this.importedLlmModel = data.modelPreferences.model;\n\t\t\t\tif (data.modelPreferences?.small_model) this.importedSmallModel = data.modelPreferences.small_model;\n\t\t\t\tif (this.hostProviderCount > 0 && !this.hostImportTriggered && (this.currentStep === 1 || this.isRerun)) {\n\t\t\t\t\tthis.hostImportTriggered = true;\n\t\t\t\t\tthis.handleHostImport();\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tconsole.warn(\"loadHostStatus failed\", e);\n\t\t}\n\t}\n\tmarkProviderVerifiedFromImport(id) {\n\t\tlet st = this.providerState[id];\n\t\tif (!st) {\n\t\t\tst = {\n\t\t\t\tselected: true,\n\t\t\t\tverified: true,\n\t\t\t\tverifying: false,\n\t\t\t\terror: false,\n\t\t\t\tapiKey: \"\",\n\t\t\t\tbaseUrl: \"\",\n\t\t\t\tmodels: [],\n\t\t\t\tollamaMode: null\n\t\t\t};\n\t\t\tthis.providerState[id] = st;\n\t\t\treturn;\n\t\t}\n\t\tst.verified = true;\n\t\tst.error = false;\n\t}\n\tasync handleHostImport() {\n\t\tthis.hostImporting = true;\n\t\tthis.hostImportError = \"\";\n\t\ttry {\n\t\t\tconst { ok, data } = await importHost();\n\t\t\tif (!ok || !data?.ok) {\n\t\t\t\tthis.hostImportError = data?.error ?? `Couldn't import providers from this computer. You can sign in or add a provider manually instead.`;\n\t\t\t\tthis.hostImporting = false;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst importedIds = data.importedProviders ?? data.pushedProviders ?? [];\n\t\t\tfor (const id of importedIds) this.markProviderVerifiedFromImport(id);\n\t\t\tif (this.opencodeAvailable) try {\n\t\t\t\tawait this.loadOpenCodeProviders();\n\t\t\t} catch (e) {\n\t\t\t\tconsole.warn(\"handleHostImport: reloading OpenCode providers failed\", e);\n\t\t\t}\n\t\t\tthis.applyImportedModelPreferences();\n\t\t\tawait Promise.allSettled(Object.keys(this.providerState).filter((id) => !this.providerState[id].verified && PROVIDERS.some((p) => p.id === id)).map((id) => this.verifyProvider(id)));\n\t\t\tthis.applyImportedModelPreferences();\n\t\t\tthis.autoSelectModels();\n\t\t\tthis.hostImporting = false;\n\t\t\tif (!this.isRerun) this.goToStep(1);\n\t\t} catch (e) {\n\t\t\tthis.hostImportError = \"Network error importing providers from this computer: \" + (e instanceof Error ? e.message : \"unable to reach the server.\");\n\t\t\tthis.hostImporting = false;\n\t\t}\n\t}\n\t/**\n\t* Restore EVERY wizard field to the same default the original\n\t* component-scoped `$state` had on a fresh mount. Because `setupState` is a\n\t* module singleton, a second SPA entry to /setup (client-side pushState nav —\n\t* no full reload, so the module is not re-initialized) would otherwise reopen\n\t* a STALE wizard (stale step, bypassed system check, stale selections). This\n\t* runs at the START of `init()` (which fires once per mount) so every mount\n\t* begins clean; the rerun-prefill and in-flight-deploy pickup in `init()`\n\t* then re-apply the appropriate non-default state AFTER this reset.\n\t*\n\t* NOT to be called mid-flow — only at mount, where there is no in-flight work\n\t* to clobber (any prior mount's polling/OAuth was already torn down by\n\t* `dispose()` on unmount; this also defensively tears it down again).\n\t*/\n\treset() {\n\t\tthis.stopDeployPolling();\n\t\tfor (const id of Object.keys(this.oauthAbortControllers)) {\n\t\t\ttry {\n\t\t\t\tthis.oauthAbortControllers[id].abort();\n\t\t\t} catch {}\n\t\t\tdelete this.oauthAbortControllers[id];\n\t\t}\n\t\tthis.verifyGeneration = {};\n\t\tObject.assign(this, structuredClone(INITIAL));\n\t}\n\tinit() {\n\t\tthis.reset();\n\t\tthis.initProviderState();\n\t\tconst params = new URLSearchParams(window.location.search);\n\t\tthis.isRerun = params.get(\"rerun\") === \"1\";\n\t\tif (this.isRerun) {\n\t\t\tthis.systemCheckPassed = true;\n\t\t\tthis.maxVisitedStep = 3;\n\t\t\tthis.uiLoginPassword = generatePassword();\n\t\t\tfetchCurrentConfig().then((data) => {\n\t\t\t\tif (!data) return;\n\t\t\t\tconst parsed = parseSetupConfig(data);\n\t\t\t\tif (parsed.hostAkmEnabled !== void 0) this.hostAkmEnabled = parsed.hostAkmEnabled;\n\t\t\t\tif (parsed.llm) this.modelSelection.llm = parsed.llm;\n\t\t\t\tif (parsed.embedding) this.modelSelection.embedding = parsed.embedding;\n\t\t\t\tif (parsed.voiceTts) this.voiceTts = parsed.voiceTts;\n\t\t\t\tif (parsed.voiceStt) this.voiceStt = parsed.voiceStt;\n\t\t\t\tif (parsed.selectedVoiceProfile) this.selectedVoiceProfile = parsed.selectedVoiceProfile;\n\t\t\t\tif (parsed.importedLlmModel) this.importedLlmModel = parsed.importedLlmModel;\n\t\t\t\tif (parsed.importedSmallModel) this.importedSmallModel = parsed.importedSmallModel;\n\t\t\t\tif (parsed.ollamaEnabled) this.ollamaEnabled = true;\n\t\t\t\tif (parsed.selectedOllamaProfile) this.selectedOllamaProfile = parsed.selectedOllamaProfile;\n\t\t\t\tfor (const chId of [\"discord\", \"slack\"]) {\n\t\t\t\t\tconst sel = this.portalSelection[chId];\n\t\t\t\t\tif (typeof sel === \"object\" && sel !== null) {\n\t\t\t\t\t\tif (parsed.enabledAddons.includes(chId)) sel.enabled = true;\n\t\t\t\t\t\tconst c = parsed.portalCredentials[chId];\n\t\t\t\t\t\tif (c && typeof c === \"object\") Object.assign(sel, c);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}).catch((e) => {\n\t\t\t\tconsole.error(\"[setup] failed to load existing config:\", e);\n\t\t\t});\n\t\t} else {\n\t\t\tthis.uiLoginPassword = generatePassword();\n\t\t\tfetchSetupStatus().then((data) => {\n\t\t\t\tif (data.setupComplete) window.location.href = \"/\";\n\t\t\t}).catch((e) => {\n\t\t\t\tconsole.error(\"[setup] failed to check setup status:\", e);\n\t\t\t});\n\t\t}\n\t\tfetchDeployStatus().then(({ ok, data }) => {\n\t\t\tif (!ok || !data) return;\n\t\t\tif (data.deploying || data.deployError) {\n\t\t\t\tthis.deployData = data;\n\t\t\t\tthis.showDeploy = true;\n\t\t\t\tthis.startDeployPolling();\n\t\t\t}\n\t\t}).catch((e) => {\n\t\t\tconsole.error(\"[setup] failed to fetch deploy status:\", e);\n\t\t});\n\t\tthis.loadHostStatus();\n\t\tthis.loadVoiceProfiles();\n\t\tthis.loadOllamaProfiles();\n\t\tthis.checkOpenCodeAndInit().then(() => this.detectProviders()).catch((e) => {\n\t\t\tconsole.error(\"[setup] provider detection failed:\", e);\n\t\t});\n\t}\n\tdispose() {\n\t\tthis.stopDeployPolling();\n\t\tfor (const id of Object.keys(this.oauthAbortControllers)) {\n\t\t\ttry {\n\t\t\t\tthis.oauthAbortControllers[id].abort();\n\t\t\t} catch {}\n\t\t\tdelete this.oauthAbortControllers[id];\n\t\t}\n\t}\n};\nvar setupState = new SetupState();\n//#endregion\n//#region ../ui-kit/src/lib/components/common/FriendlyError.svelte\nfunction FriendlyError($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/** Render compactly without the technical-details disclosure (inline forms). */\n\t\tlet { error, role = \"alert\", compact = false } = $$props;\n\t\tif (error) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"friendly-error svelte-jyx78z\"${attr(\"role\", role)}><div class=\"friendly-error-header svelte-jyx78z\">`);\n\t\t\tIconAlert($$renderer, { size: 18 });\n\t\t\t$$renderer.push(`<!----> <strong class=\"friendly-error-title svelte-jyx78z\">${escape_html(error.title)}</strong></div> `);\n\t\t\tif (error.body) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"friendly-error-body svelte-jyx78z\">${escape_html(error.body)}</p>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (error.hint) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"friendly-error-hint svelte-jyx78z\">${escape_html(error.hint)}</p>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (error.links && error.links.length > 0) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"friendly-error-links svelte-jyx78z\"><!--[-->`);\n\t\t\t\tconst each_array = ensure_array_like(error.links);\n\t\t\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\t\t\tlet link = each_array[$$index];\n\t\t\t\t\t$$renderer.push(`<a${attr(\"href\", link.href)} target=\"_blank\" rel=\"noopener noreferrer\" class=\"friendly-error-link svelte-jyx78z\">${escape_html(link.label)} →</a>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (!compact && error.raw && error.raw !== error.body) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<details class=\"friendly-error-details svelte-jyx78z\"><summary class=\"svelte-jyx78z\">Technical details</summary> <pre class=\"svelte-jyx78z\">${escape_html(error.raw)}</pre></details>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]-->`);\n\t});\n}\n//#endregion\n//#region src/lib/client/error-messages.ts\nvar DOCKER_LINK = {\n\tlabel: \"Docker setup\",\n\thref: \"https://docs.docker.com/get-docker/\"\n};\nfunction rawText(raw) {\n\tif (!raw) return \"\";\n\tif (raw instanceof Error) return raw.message;\n\tif (typeof raw === \"string\") return raw;\n\ttry {\n\t\treturn JSON.stringify(raw);\n\t} catch {\n\t\treturn String(raw);\n\t}\n}\nfunction friendlyError(raw, context = \"generic\", opts = {}) {\n\tconst text = rawText(raw);\n\tconst lower = text.toLowerCase();\n\tconst providerLabel = opts.providerName ? `${opts.providerName} didn't accept that key` : \"API key rejected\";\n\tif (/\\b(401|403|unauthorized|forbidden|invalid.?api.?key)\\b/i.test(text)) return {\n\t\ttitle: providerLabel,\n\t\tbody: \"The provider rejected the API key.\",\n\t\thint: \"Common causes: extra spaces, wrong account, or the key was revoked. Double-check the key and that it has access to the model you selected. Most providers show the key in their dashboard.\",\n\t\traw: text\n\t};\n\tif (/\\b(ENOTFOUND|ECONNREFUSED|getaddrinfo|EAI_AGAIN|EHOSTUNREACH)\\b/i.test(text)) return {\n\t\ttitle: \"Couldn't reach the host\",\n\t\tbody: text,\n\t\thint: \"Confirm the URL is correct and the service is online. For local providers (Ollama, LM Studio) make sure the server is running on this machine.\",\n\t\traw: text\n\t};\n\tif (/(timeout|timed out|AbortError|ETIMEDOUT)/i.test(text)) return {\n\t\ttitle: \"Request timed out\",\n\t\tbody: \"The provider didn't respond in time.\",\n\t\thint: \"It may be slow or temporarily down. Try again in a moment.\",\n\t\traw: text\n\t};\n\tif (lower.includes(\"docker\") || lower.includes(\"compose\") || lower.includes(\"daemon\")) return {\n\t\ttitle: \"Docker isn't available\",\n\t\tbody: \"OpenPalm needs Docker (with Compose v2) installed and running.\",\n\t\thint: \"Start Docker Desktop (macOS/Windows) or the docker daemon (Linux), then retry.\",\n\t\tlinks: [DOCKER_LINK],\n\t\traw: text\n\t};\n\tif (/EADDRINUSE/i.test(text) || /port.*in.?use/i.test(lower)) return {\n\t\ttitle: \"A required port is already in use\",\n\t\tbody: text,\n\t\thint: \"Another program is using one of OpenPalm's default ports. Quit the conflicting app, or change OpenPalm's port from the Admin Dashboard after setup.\",\n\t\traw: text\n\t};\n\tif (/EACCES|EPERM|permission denied/i.test(text)) return {\n\t\ttitle: \"Permission denied\",\n\t\tbody: text,\n\t\thint: \"OpenPalm couldn't write to its data directory. Check that ~/.openpalm/ is writable by your user.\",\n\t\traw: text\n\t};\n\tswitch (context) {\n\t\tcase \"provider-verify\":\n\t\tcase \"model-fetch\": return {\n\t\t\ttitle: \"Couldn't connect to the provider\",\n\t\t\tbody: text || \"Verification failed.\",\n\t\t\thint: \"Check the API key and base URL, then click Verify again.\",\n\t\t\traw: text\n\t\t};\n\t\tcase \"setup-complete\": return {\n\t\t\ttitle: \"Setup couldn't finish\",\n\t\t\tbody: text || \"Writing configuration failed.\",\n\t\t\thint: \"Check the technical details below, then retry. If the issue persists, the admin dashboard logs may help.\",\n\t\t\traw: text\n\t\t};\n\t\tcase \"deploy\":\n\t\tcase \"deploy-poll\": return {\n\t\t\ttitle: \"Deployment ran into a problem\",\n\t\t\tbody: text || \"One or more services failed to start.\",\n\t\t\thint: \"Image pulls can take several minutes on first install. Retry to attempt again; check Docker logs if it keeps failing.\",\n\t\t\traw: text\n\t\t};\n\t\tcase \"system-check\": return {\n\t\t\ttitle: \"System check failed\",\n\t\t\tbody: text || \"A required dependency is missing.\",\n\t\t\thint: \"Resolve the failing check above, then click Retry.\",\n\t\t\traw: text\n\t\t};\n\t\tcase \"portal\": return {\n\t\t\ttitle: \"Portal credential issue\",\n\t\t\tbody: text || \"A required field is missing or invalid.\",\n\t\t\thint: \"Confirm the bot token and other required fields are correct.\",\n\t\t\traw: text\n\t\t};\n\t\tcase \"port-conflict\": return {\n\t\t\ttitle: \"A required port is already in use\",\n\t\t\tbody: text || \"Another process is using one of OpenPalm's ports.\",\n\t\t\thint: \"Another program is using one of OpenPalm's default ports. Quit the conflicting app, or change OpenPalm's port from the Admin Dashboard after setup.\",\n\t\t\traw: text\n\t\t};\n\t\tdefault: return {\n\t\t\ttitle: \"Something went wrong\",\n\t\t\tbody: text || \"An unexpected error occurred.\",\n\t\t\thint: \"Try again. If the problem persists, check the admin dashboard logs.\",\n\t\t\traw: text\n\t\t};\n\t}\n}\n//#endregion\n//#region src/routes/setup/steps/SystemCheckStep.svelte\nfunction SystemCheckStep($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tnew Set([\n\t\t\t\"ollama\",\n\t\t\t\"lmstudio\",\n\t\t\t\"model-runner\"\n\t\t]);\n\t\tconst s = setupState;\n\t\t/** True when re-running an existing install; suppresses misleading\n\t\t* port-conflict warnings that just reflect the running stack itself. */\n\t\tconst isRerun = derived(() => s.isRerun);\n\t\tlet loading = true;\n\t\tlet result = null;\n\t\tconst portConflicts = derived(() => isRerun() ? [] : []);\n\t\tconst blockingPortConflicts = derived(() => portConflicts().filter((p) => p.blocking));\n\t\tderived(() => blockingPortConflicts().length > 0);\n\t\tderived(() => false);\n\t\t$$renderer.push(`<h2>System Check</h2> <p class=\"step-description\">Let's make sure your machine has everything OpenPalm needs.</p> `);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <div class=\"syscheck-list svelte-1txhq2p\" aria-live=\"polite\"><div${attr_class(\"syscheck-row svelte-1txhq2p\", void 0, {\n\t\t\t\"syscheck-row--ok\": void 0,\n\t\t\t\"syscheck-row--fail\": result\n\t\t})}><div class=\"syscheck-icon svelte-1txhq2p\">`);\n\t\t$$renderer.push(\"<!--[0-->\");\n\t\tSpinner($$renderer, { size: 16 });\n\t\t$$renderer.push(`<!--]--></div> <div class=\"syscheck-body svelte-1txhq2p\"><div class=\"syscheck-title svelte-1txhq2p\">Docker is installed and running</div> `);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></div></div> <div${attr_class(\"syscheck-row svelte-1txhq2p\", void 0, {\n\t\t\t\"syscheck-row--ok\": void 0,\n\t\t\t\"syscheck-row--fail\": result\n\t\t})}><div class=\"syscheck-icon svelte-1txhq2p\">`);\n\t\t$$renderer.push(\"<!--[0-->\");\n\t\tSpinner($$renderer, { size: 16 });\n\t\t$$renderer.push(`<!--]--></div> <div class=\"syscheck-body svelte-1txhq2p\"><div class=\"syscheck-title svelte-1txhq2p\">Docker can run multi-container apps</div> `);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></div></div> `);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></div> <div class=\"step-actions\"><button class=\"btn btn-secondary\" id=\"btn-syscheck-retry\"${attr(\"disabled\", loading, true)}>${escape_html(\"Checking…\")}</button> <button class=\"btn btn-primary\" id=\"btn-syscheck-next\"${attr(\"disabled\", loading, true)}>Continue</button></div>`);\n\t});\n}\n//#endregion\n//#region src/routes/setup/steps/ProviderOAuthList.svelte\nfunction ProviderOAuthList($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/**\n\t\t* ProviderOAuthList — OAuth provider list for CloudAttachPanel.\n\t\t*\n\t\t* Renders a compact vertical list of OAuth-capable providers,\n\t\t* filtered through WIZARD_EXCLUDED_PROVIDERS (no Anthropic).\n\t\t*\n\t\t* Takes NO props: reads the setup-state store directly (opencodeProviders /\n\t\t* opencodeAuth / providerState) and calls its OAuth methods\n\t\t* (startOpenCodeOAuth / cancelOAuth), mirroring Screen1ModelsStep / ReviewStep.\n\t\t*/\n\t\tconst s = setupState;\n\t\tconst opencodeProviders = derived(() => s.opencodeProviders);\n\t\tconst opencodeAuth = derived(() => s.opencodeAuth);\n\t\tconst providerState = derived(() => s.providerState);\n\t\tconst RECOGNIZABLE_FIRST = [\n\t\t\t\"openai\",\n\t\t\t\"google\",\n\t\t\t\"github-copilot\",\n\t\t\t\"groq\",\n\t\t\t\"mistral\",\n\t\t\t\"huggingface\"\n\t\t];\n\t\tconst filteredProviders = derived(() => opencodeProviders().filter((p) => {\n\t\t\tif (WIZARD_EXCLUDED_PROVIDERS.has(p.id)) return false;\n\t\t\tif (providerState()[p.id]?.verified) return false;\n\t\t\treturn (opencodeAuth()[p.id] ?? []).some((m) => m.type === \"oauth\");\n\t\t}).sort((a, b) => {\n\t\t\tconst ia = RECOGNIZABLE_FIRST.indexOf(a.id);\n\t\t\tconst ib = RECOGNIZABLE_FIRST.indexOf(b.id);\n\t\t\treturn (ia === -1 ? 99 : ia) - (ib === -1 ? 99 : ib);\n\t\t}));\n\t\tconst OAUTH_CAP = 4;\n\t\tconst visibleOauth = derived(() => filteredProviders().slice(0, OAUTH_CAP));\n\t\tconst hiddenOauthCount = derived(() => Math.max(0, filteredProviders().length - OAUTH_CAP));\n\t\tfunction getState(id) {\n\t\t\treturn providerState()[id] ?? {\n\t\t\t\tselected: false,\n\t\t\t\tverified: false,\n\t\t\t\tverifying: false,\n\t\t\t\terror: false,\n\t\t\t\tapiKey: \"\",\n\t\t\t\tbaseUrl: \"\",\n\t\t\t\tmodels: [],\n\t\t\t\tollamaMode: null\n\t\t\t};\n\t\t}\n\t\tfunction oauthMethodIndex(id) {\n\t\t\treturn (opencodeAuth()[id] ?? []).findIndex((m) => m.type === \"oauth\");\n\t\t}\n\t\t$$renderer.push(`<div class=\"oauth-list svelte-1kgjxt0\" role=\"list\">`);\n\t\tif (filteredProviders().length === 0) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<p class=\"oauth-empty svelte-1kgjxt0\">Nothing more to add — you're all connected.</p>`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--[-->`);\n\t\t\tconst each_array = ensure_array_like(visibleOauth());\n\t\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\t\tlet provider = each_array[$$index];\n\t\t\t\tconst st = getState(provider.id);\n\t\t\t\toauthMethodIndex(provider.id);\n\t\t\t\t$$renderer.push(`<div class=\"oauth-row svelte-1kgjxt0\" role=\"listitem\"${attr(\"data-provider\", provider.id)}><span class=\"oauth-name svelte-1kgjxt0\">${escape_html(provider.name)}</span> `);\n\t\t\t\tif (st.verified) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<span class=\"oauth-status oauth-status--ok svelte-1kgjxt0\"${attr(\"aria-label\", `${stringify(provider.name)} connected`)}>Connected ✓</span>`);\n\t\t\t\t} else if (st.oauthPolling) {\n\t\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t\t$$renderer.push(`<div class=\"oauth-polling svelte-1kgjxt0\">`);\n\t\t\t\t\tif (st.oauthUrl) {\n\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\t$$renderer.push(`<a${attr(\"href\", st.oauthUrl)} target=\"_blank\" rel=\"noopener\" class=\"oauth-open-link svelte-1kgjxt0\">Open authorization page →</a>`);\n\t\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\t\t\tif (st.oauthInstructions) {\n\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\t$$renderer.push(`<p class=\"oauth-instructions svelte-1kgjxt0\">${escape_html(st.oauthInstructions)}</p>`);\n\t\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<!--]--> <div class=\"oauth-waiting svelte-1kgjxt0\">`);\n\t\t\t\t\tSpinner($$renderer, {});\n\t\t\t\t\t$$renderer.push(`<!----> Waiting for authorization…</div> <button type=\"button\" class=\"btn-oauth-cancel svelte-1kgjxt0\">Cancel</button></div>`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<button type=\"button\" class=\"btn btn-secondary btn-sm\"${attr(\"disabled\", st.verifying, true)}>${escape_html(st.verifying ? \"Signing in…\" : \"Sign in\")}</button>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\t\tif (st.error && !st.oauthPolling) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<span class=\"oauth-error svelte-1kgjxt0\" role=\"alert\">${escape_html(st.errorMessage ?? \"Authorization failed\")}</span>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (hiddenOauthCount() > 0) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<button type=\"button\" class=\"oauth-more svelte-1kgjxt0\">${escape_html(`Show ${hiddenOauthCount()} more services`)}</button>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]-->`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></div>`);\n\t});\n}\n//#endregion\n//#region src/routes/setup/steps/CloudAttachPanel.svelte\nfunction CloudAttachPanel($$renderer) {\n\t/**\n\t* CloudAttachPanel — the simplest possible \"connect your AI\" step.\n\t*\n\t* Two states only, no jargon:\n\t* - An AI account was found on this computer → one \"Use this account\" button.\n\t* - Otherwise (or \"use a different account\") → sign-in buttons.\n\t*\n\t* Deliberately NO provider count/list, NO \"other options\", and NO custom\n\t* endpoint / API-key fields — those are power-user concerns that live in the\n\t* admin dashboard after setup, not in first-run.\n\t*/\n\tconst s = setupState;\n\tconst cloudProviders = [];\n\tconst hostImporting = derived(() => s.hostImporting);\n\tconst verifiedCount = derived(() => s.verifiedCount);\n\tconst hasFoundAccount = derived(() => cloudProviders.length > 0);\n\tconst connected = derived(() => verifiedCount() > 0);\n\tlet signInInstead = false;\n\tconst showSignIn = derived(() => !hasFoundAccount() || signInInstead);\n\t$$renderer.push(`<div class=\"cloud-attach svelte-v318we\">`);\n\tif (!showSignIn()) {\n\t\t$$renderer.push(\"<!--[0-->\");\n\t\tif (connected()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<p class=\"connected svelte-v318we\" role=\"status\"><span class=\"check svelte-v318we\" aria-hidden=\"true\">✓</span> Connected your AI account.</p> <button type=\"button\" class=\"account-link svelte-v318we\">Use a different account</button>`);\n\t\t} else if (hostImporting()) {\n\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t$$renderer.push(`<p class=\"connecting svelte-v318we\" role=\"status\">`);\n\t\t\tSpinner($$renderer, {});\n\t\t\t$$renderer.push(`<!----> Connecting your AI account…</p>`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<p class=\"lead svelte-v318we\">We found an AI account on this computer.</p> <button type=\"button\" class=\"btn-connect svelte-v318we\" id=\"btn-host-import\">Use this account</button> <button type=\"button\" class=\"account-link svelte-v318we\">Use a different account</button>`);\n\t\t}\n\t\t$$renderer.push(`<!--]-->`);\n\t} else {\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<p class=\"lead svelte-v318we\">Sign in to your AI service:</p> `);\n\t\tProviderOAuthList($$renderer, {});\n\t\t$$renderer.push(`<!----> `);\n\t\tif (hasFoundAccount()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<button type=\"button\" class=\"account-link svelte-v318we\">Use the account on this computer instead</button>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]-->`);\n\t}\n\t$$renderer.push(`<!--]--></div>`);\n}\n//#endregion\n//#region src/routes/setup/steps/LocalModelsStatus.svelte\nfunction LocalModelsStatus($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/**\n\t\t* LocalModelsStatus — shows the local model runtime state for Screen 1.\n\t\t*\n\t\t* Takes NO props: reads the setup-state store directly (detected host runtimes,\n\t\t* GPU info, in-stack Ollama selection) and calls its recommendation re-check,\n\t\t* mirroring Screen1ModelsStep / ReviewStep.\n\t\t*/\n\t\tconst s = setupState;\n\t\tconst hostProviders = derived(() => s.detectedHostProviders);\n\t\tconst gpuVramMb = derived(() => s.detectedGpuVramMb);\n\t\tconst gpuVendor = derived(() => s.detectedGpuVendor);\n\t\tconst gpuName = derived(() => s.detectedGpuName);\n\t\tconst ollamaEnabled = derived(() => s.ollamaEnabled);\n\t\tconst selectedOllamaProfile = derived(() => s.selectedOllamaProfile);\n\t\tconst isAppleSilicon = derived(() => gpuVendor() === \"apple\");\n\t\tconst hasRunningRuntime = derived(() => hostProviders().length > 0);\n\t\tconst gpuGb = derived(() => Math.round(gpuVramMb() / 1024));\n\t\tconst profileLabel = derived(() => selectedOllamaProfile().endsWith(\"cuda\") ? \"CUDA\" : selectedOllamaProfile().endsWith(\"rocm\") ? \"ROCm\" : \"CPU\");\n\t\tfunction runtimeLabel(provider) {\n\t\t\tif (provider === \"ollama\") return \"Ollama\";\n\t\t\tif (provider === \"lmstudio\") return \"LM Studio\";\n\t\t\tif (provider === \"model-runner\") return \"Docker Model Runner\";\n\t\t\treturn provider;\n\t\t}\n\t\t$$renderer.push(`<div class=\"local-models-status svelte-1fl6n4z\">`);\n\t\tif (hasRunningRuntime()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"status-row status-row--running svelte-1fl6n4z\" role=\"status\"><span class=\"status-icon svelte-1fl6n4z\" aria-hidden=\"true\">●</span> <span class=\"status-text svelte-1fl6n4z\">Using ${escape_html(hostProviders().map((p) => runtimeLabel(p.provider)).join(\", \"))} already running on your machine.</span></div>`);\n\t\t} else if (isAppleSilicon()) {\n\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t$$renderer.push(`<div class=\"status-callout status-callout--apple svelte-1fl6n4z\" role=\"note\"><div class=\"callout-icon svelte-1fl6n4z\" aria-hidden=\"true\"><svg width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><circle cx=\"12\" cy=\"12\" r=\"10\"></circle><line x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"></line><line x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"></line></svg></div> <div class=\"callout-body svelte-1fl6n4z\"><p class=\"callout-title svelte-1fl6n4z\">Apple Silicon detected</p> <p class=\"callout-desc svelte-1fl6n4z\">For best performance, install <a href=\"https://ollama.com/download\" target=\"_blank\" rel=\"noopener\" class=\"svelte-1fl6n4z\">Ollama for macOS</a> and leave it running before continuing. Once Ollama is running, click Re-check to continue.</p> <button class=\"btn-recheck svelte-1fl6n4z\" type=\"button\" id=\"btn-local-recheck\">Re-check</button></div></div>`);\n\t\t} else if (ollamaEnabled() && gpuVramMb() >= 8192) {\n\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t$$renderer.push(`<div class=\"status-row status-row--will-install svelte-1fl6n4z\" role=\"status\"><span class=\"status-icon svelte-1fl6n4z\" aria-hidden=\"true\">◎</span> <span class=\"status-text svelte-1fl6n4z\">Will install Ollama in the stack `);\n\t\t\tif (gpuName()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`(GPU: ${escape_html(gpuName())}, ${escape_html(gpuGb())} GB, profile: ${escape_html(profileLabel())})`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]-->.\n First pull downloads ~4–8 GB.</span></div>`);\n\t\t} else if (ollamaEnabled()) {\n\t\t\t$$renderer.push(\"<!--[3-->\");\n\t\t\t$$renderer.push(`<div class=\"status-row status-row--will-install svelte-1fl6n4z\" role=\"status\"><span class=\"status-icon svelte-1fl6n4z\" aria-hidden=\"true\">◎</span> <span class=\"status-text svelte-1fl6n4z\">Will install Ollama in the stack (CPU mode). First pull downloads ~4–8 GB.</span></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></div>`);\n\t});\n}\n//#endregion\n//#region src/routes/setup/steps/Screen1ModelsStep.svelte\nfunction Screen1ModelsStep($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/**\n\t\t* Screen1ModelsStep — \"Connect your AI brain\"\n\t\t*\n\t\t* Redesigned flat RadioRow layout (spec: /tmp/wiz/connect-redesign.html).\n\t\t* Three primary choices in a hairline-divided list:\n\t\t* 1. Detected cloud service (shown only when verifiedCount > 0 or llmProvider set)\n\t\t* 2. Run on this computer (local AI — co-equal primary option)\n\t\t* 3. Sign in to a cloud service (expands ProviderOAuthList inline)\n\t\t*\n\t\t* Takes NO props: this step reads the setup-state store\n\t\t* ($lib/setup/setup-state.svelte.ts) directly for its reactive inputs\n\t\t* (providerState, verifiedCount, detected GPU/host info, model selection, …)\n\t\t* and calls the store's methods for actions (handleConnectModeChange,\n\t\t* handleHostImport, startOpenCodeOAuth/cancelOAuth, fetchAndApplyRecommendation,\n\t\t* goToStep, allowEmptyInstall). Local aliases near the top of the script map\n\t\t* those store members to the names the template uses.\n\t\t*/\n\t\tconst MIN_LOCAL_GPU_VRAM_MB = 8192;\n\t\tconst s = setupState;\n\t\tconst detectionLoading = derived(() => s.autoModeImporting);\n\t\tconst systemCheckError = derived(() => s.systemCheckPassed ? \"\" : s.step0Error || \"\");\n\t\tconst gpuVramMb = derived(() => s.detectedGpuVramMb);\n\t\tconst gpuVendor = derived(() => s.detectedGpuVendor);\n\t\tconst hostProviders = derived(() => s.detectedHostProviders);\n\t\tconst opencodeProviders = derived(() => s.opencodeProviders);\n\t\tconst hostImporting = derived(() => s.hostImporting);\n\t\tconst verifiedCount = derived(() => s.verifiedCount);\n\t\tconst allowEmptyInstall = derived(() => s.allowEmptyInstall);\n\t\tconst llmModel = derived(() => s.modelSelection.llm?.model ?? \"\");\n\t\tconst llmProvider = derived(() => s.modelSelection.llm?.connId ?? \"\");\n\t\tconst detectedCloudConn = derived(() => s.detectedCloudConn);\n\t\tconst localAvailable = derived(() => gpuVramMb() >= MIN_LOCAL_GPU_VRAM_MB || gpuVendor() === \"apple\" || hostProviders().length > 0);\n\t\tfunction friendlyServiceLabel(connId) {\n\t\t\tif (FRIENDLY_PROVIDER_NAMES[connId]) return FRIENDLY_PROVIDER_NAMES[connId];\n\t\t\tconst fromProviders = opencodeProviders().find((p) => p.id === connId)?.name;\n\t\t\tif (fromProviders) return fromProviders;\n\t\t\treturn connId;\n\t\t}\n\t\tconst detectedConn = derived(() => detectedCloudConn() || (llmProvider() && !LOCAL_PROVIDER_IDS.has(llmProvider()) ? llmProvider() : \"\"));\n\t\tconst detectedServiceLabel = derived(() => detectedConn() ? friendlyServiceLabel(detectedConn()) : \"\");\n\t\tconst detectedIsLocal = derived(() => LOCAL_PROVIDER_IDS.has(llmProvider()));\n\t\tconst showDetectedRow = derived(() => !!detectedConn() && verifiedCount() > 0);\n\t\tlet selectedRow = run(() => showDetectedRow() ? \"detected\" : detectedIsLocal() && llmProvider() ? \"local\" : null);\n\t\tconst showLocalPanel = derived(() => selectedRow === \"local\");\n\t\tconst showSignInPanel = derived(() => selectedRow === \"cloud\");\n\t\tconst cloudRowTitle = derived(() => showDetectedRow() ? \"Sign in to a different service\" : \"Sign in to a cloud AI service\");\n\t\tconst cloudRowSub = derived(() => showDetectedRow() ? \"Google Gemini, GitHub Copilot, and others\" : \"OpenAI, Google Gemini, GitHub Copilot, and others\");\n\t\t$$renderer.push(`<div data-testid=\"step-models\" class=\"screen-models svelte-z6usuj\">`);\n\t\tif (systemCheckError()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"s1-alert s1-alert--error svelte-z6usuj\" role=\"alert\"><span class=\"s1-alert-text svelte-z6usuj\">${escape_html(systemCheckError())}</span> <button type=\"button\" class=\"s1-alert-btn svelte-z6usuj\" id=\"btn-syscheck-retry\">Retry</button></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (detectionLoading() || hostImporting()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"s1-shimmer svelte-z6usuj\" aria-busy=\"true\" aria-label=\"Detecting AI services…\"><span class=\"s1-shimmer-bar svelte-z6usuj\"></span> <span class=\"s1-shimmer-bar s1-shimmer-bar--short svelte-z6usuj\"></span> <span class=\"s1-shimmer-bar s1-shimmer-bar--shorter svelte-z6usuj\"></span></div>`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\tif (verifiedCount() > 0 && showDetectedRow()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"s1-detected-banner svelte-z6usuj\" role=\"status\"><div class=\"s1-detected-check svelte-z6usuj\" aria-hidden=\"true\">✓</div> <div class=\"s1-detected-text svelte-z6usuj\"><div class=\"s1-detected-title svelte-z6usuj\">${escape_html(detectedServiceLabel())} is already connected — you're good to go</div> <div class=\"s1-detected-sub svelte-z6usuj\">We found your account on this computer. Just continue, or choose something different below.</div></div></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> <div class=\"s1-choice-list svelte-z6usuj\" role=\"radiogroup\" aria-label=\"Which AI should your assistant use\">`);\n\t\t\tif (showDetectedRow()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<button type=\"button\"${attr_class(\"s1-choice-row svelte-z6usuj\", void 0, { \"s1-choice-row--selected\": selectedRow === \"detected\" })} role=\"radio\"${attr(\"aria-checked\", selectedRow === \"detected\")}><div class=\"s1-radio-dot svelte-z6usuj\"><div class=\"s1-radio-dot-inner svelte-z6usuj\"></div></div> <div class=\"s1-choice-body svelte-z6usuj\"><div class=\"s1-choice-title svelte-z6usuj\">${escape_html(detectedServiceLabel())}</div> <div class=\"s1-choice-sub svelte-z6usuj\">Use your existing ${escape_html(detectedServiceLabel())} subscription</div></div> <span class=\"s1-badge-recommended svelte-z6usuj\">Recommended</span></button>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> <button type=\"button\"${attr_class(\"s1-choice-row svelte-z6usuj\", void 0, {\n\t\t\t\t\"s1-choice-row--selected\": selectedRow === \"local\",\n\t\t\t\t\"s1-choice-row--unavailable\": !localAvailable()\n\t\t\t})} role=\"radio\"${attr(\"aria-checked\", selectedRow === \"local\")}${attr(\"disabled\", !localAvailable(), true)}><div class=\"s1-radio-dot svelte-z6usuj\"><div class=\"s1-radio-dot-inner svelte-z6usuj\"></div></div> <div class=\"s1-choice-icon svelte-z6usuj\" aria-hidden=\"true\"><svg viewBox=\"0 0 18 18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\" class=\"svelte-z6usuj\"><rect x=\"1.5\" y=\"2.5\" width=\"15\" height=\"10\" rx=\"1.5\" class=\"svelte-z6usuj\"></rect><path d=\"M5.5 15.5h7M9 12.5v3\" stroke-linecap=\"round\" class=\"svelte-z6usuj\"></path><circle cx=\"9\" cy=\"7.5\" r=\"2.5\" class=\"svelte-z6usuj\"></circle></svg></div> <div class=\"s1-choice-body svelte-z6usuj\"><div class=\"s1-choice-title svelte-z6usuj\">Run on this computer</div> <div class=\"s1-choice-sub svelte-z6usuj\">`);\n\t\t\tif (localAvailable()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`Private &amp; free — no account needed, no data leaves your machine`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`Needs a more capable computer — requires 8 GB+ graphics card or Apple Silicon`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></div></div></button> `);\n\t\t\tif (showLocalPanel()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"s1-local-panel svelte-z6usuj\" aria-live=\"polite\">`);\n\t\t\t\tLocalModelsStatus($$renderer, {});\n\t\t\t\t$$renderer.push(`<!----></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> <button type=\"button\"${attr_class(\"s1-choice-row svelte-z6usuj\", void 0, { \"s1-choice-row--selected\": selectedRow === \"cloud\" })} role=\"radio\"${attr(\"aria-checked\", selectedRow === \"cloud\")}><div class=\"s1-radio-dot svelte-z6usuj\"><div class=\"s1-radio-dot-inner svelte-z6usuj\"></div></div> <div class=\"s1-choice-body svelte-z6usuj\"><div class=\"s1-choice-title svelte-z6usuj\">${escape_html(cloudRowTitle())}</div> <div class=\"s1-choice-sub svelte-z6usuj\">${escape_html(cloudRowSub())}</div></div></button> `);\n\t\t\tif (showSignInPanel()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"s1-signin-panel svelte-z6usuj\" aria-live=\"polite\">`);\n\t\t\t\tCloudAttachPanel($$renderer, {});\n\t\t\t\t$$renderer.push(`<!----></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div> `);\n\t\t\tif (!llmModel() && !allowEmptyInstall()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"s1-empty-install-row svelte-z6usuj\"><p class=\"s1-empty-install-hint svelte-z6usuj\">No AI here? You can still continue — connect this app to an assistant\n running on another computer, or add a provider later from your dashboard.</p> <button type=\"button\" class=\"s1-btn-empty-install svelte-z6usuj\">I'll set this up later</button></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]-->`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></div>`);\n\t});\n}\n//#endregion\n//#region src/routes/setup/steps/Screen2ExtrasStep.svelte\nfunction Screen2ExtrasStep($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/**\n\t\t* Screen2ExtrasStep — \"Optional extras\"\n\t\t*\n\t\t* Flat hairline-row layout (spec: /tmp/wiz/extras-finish-redesign.html).\n\t\t* Three rows with inline accordion expansion (no modal, no bordered cards,\n\t\t* no sub-section headings):\n\t\t* 1. Voice — bundled openpalm-voice; toggle drives onvoiceenabledchange + engine defaults\n\t\t* 2. Discord — botToken + applicationId credential fields\n\t\t* 3. Slack — slackBotToken + slackAppToken credential fields\n\t\t*\n\t\t* Takes NO props: this step reads the setup-state store\n\t\t* ($lib/setup/setup-state.svelte.ts) directly for modelMode / voiceEnabled /\n\t\t* displayed voice engines / hasOpenAI / portalSelection, and writes back\n\t\t* through the store (handleEnableVoiceChange, voice engine setters,\n\t\t* handlePortalToggle, handleCredentialChange). Local aliases near the top of\n\t\t* the script map those store members to the names the template uses.\n\t\t*/\n\t\tconst s = setupState;\n\t\tderived(() => s.modelMode);\n\t\tconst voiceEnabled = derived(() => s.voiceEnabled);\n\t\tderived(() => s.displayedVoiceTts);\n\t\tderived(() => s.displayedVoiceStt);\n\t\tderived(() => s.hasOpenAI);\n\t\tconst portalSelection = derived(() => s.portalSelection);\n\t\tfunction isPortalEnabled$2(chId, locked) {\n\t\t\treturn isPortalEnabled(portalSelection(), chId, locked);\n\t\t}\n\t\tfunction getCredValue$1(chId, key) {\n\t\t\treturn getCredValue(portalSelection(), chId, key);\n\t\t}\n\t\tconst configurablePortals = derived(() => PORTALS.filter((ch) => !ch.locked));\n\t\tconst discordCh = derived(() => configurablePortals().find((ch) => ch.id === \"discord\"));\n\t\tconst slackCh = derived(() => configurablePortals().find((ch) => ch.id === \"slack\"));\n\t\tconst discordOn = derived(() => isPortalEnabled$2(\"discord\"));\n\t\tconst slackOn = derived(() => isPortalEnabled$2(\"slack\"));\n\t\t$$renderer.push(`<div data-testid=\"step-extras\" class=\"addon-list svelte-85kisn\" role=\"list\"><div class=\"addon-row svelte-85kisn\" role=\"listitem\"><div class=\"addon-row-header svelte-85kisn\"><div class=\"addon-icon voice-icon svelte-85kisn\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#3b82f6\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-85kisn\"><rect x=\"9\" y=\"3\" width=\"6\" height=\"11\" rx=\"3\"></rect><path d=\"M5 11a7 7 0 0014 0M12 18v3\"></path></svg></div> <div class=\"addon-body svelte-85kisn\"><div class=\"addon-title svelte-85kisn\">Voice</div> <div class=\"addon-sub svelte-85kisn\">Talk to your assistant and hear it reply</div></div> <div class=\"toggle-wrap svelte-85kisn\"><label class=\"toggle svelte-85kisn\" aria-label=\"Enable Voice\"><input type=\"checkbox\"${attr(\"checked\", voiceEnabled(), true)} class=\"svelte-85kisn\"/> <div class=\"toggle-track svelte-85kisn\"></div> <div class=\"toggle-thumb svelte-85kisn\"></div></label></div></div> <div${attr_class(\"addon-panel svelte-85kisn\", void 0, { \"open\": voiceEnabled() })} aria-live=\"polite\"><div class=\"addon-panel-inner svelte-85kisn\"><p class=\"panel-question svelte-85kisn\">How should your assistant speak?</p> <div class=\"voice-option svelte-85kisn\"><div class=\"voice-option-dot svelte-85kisn\"><div class=\"voice-option-dot-inner svelte-85kisn\"></div></div> <div><div class=\"voice-option-text svelte-85kisn\">Built-in voice — free, runs on this computer</div> <div class=\"voice-option-sub svelte-85kisn\">No internet needed. Sounds natural, works out of the box.</div></div></div></div></div></div> `);\n\t\tif (discordCh()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"addon-row svelte-85kisn\" role=\"listitem\"><div class=\"addon-row-header svelte-85kisn\"><div class=\"addon-icon discord-icon svelte-85kisn\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"#5865f2\" class=\"svelte-85kisn\"><path d=\"M19 5.3A16 16 0 0015 4l-.2.4a14 14 0 00-4 0L10.5 4a16 16 0 00-4 1.3C4 9 3.3 12.6 3.6 16.2A16 16 0 008.5 18.7c.4-.5.8-1.1 1-1.7a9 9 0 01-1.6-.8l.4-.3a11 11 0 009.4 0l.4.3a9 9 0 01-1.6.8c.3.6.6 1.2 1 1.7a16 16 0 004.9-2.5c.4-4.2-.7-7.8-2.4-10.9zM9 14c-.8 0-1.4-.7-1.4-1.6S8.2 10.8 9 10.8s1.4.7 1.4 1.6S9.8 14 9 14zm6 0c-.8 0-1.4-.7-1.4-1.6s.6-1.6 1.4-1.6 1.4.7 1.4 1.6S15.8 14 15 14z\"></path></svg></div> <div class=\"addon-body svelte-85kisn\"><div class=\"addon-title svelte-85kisn\">Discord</div> <div class=\"addon-sub svelte-85kisn\">Reach your assistant from a Discord server</div></div> <div class=\"toggle-wrap svelte-85kisn\"><label class=\"toggle svelte-85kisn\" aria-label=\"Enable Discord\"><input type=\"checkbox\"${attr(\"checked\", discordOn(), true)} class=\"svelte-85kisn\"/> <div class=\"toggle-track svelte-85kisn\"></div> <div class=\"toggle-thumb svelte-85kisn\"></div></label></div></div> <div${attr_class(\"addon-panel svelte-85kisn\", void 0, { \"open\": discordOn() })} aria-live=\"polite\"><div class=\"addon-panel-inner svelte-85kisn\"><div class=\"field-group svelte-85kisn\"><div><label class=\"field-label svelte-85kisn\" for=\"cred-discord-botToken\">Bot token</label> <input class=\"field-input svelte-85kisn\" type=\"password\" id=\"cred-discord-botToken\" placeholder=\"Paste your bot token here\" autocomplete=\"off\"${attr(\"value\", getCredValue$1(\"discord\", \"botToken\"))}/> <p class=\"field-help svelte-85kisn\"><a href=\"https://discord.com/developers/docs/quick-start/getting-started\" target=\"_blank\" rel=\"noopener\" class=\"svelte-85kisn\">How to create a Discord bot and get your token →</a></p></div> <div><label class=\"field-label svelte-85kisn\" for=\"cred-discord-applicationId\">Application ID</label> <input class=\"field-input svelte-85kisn\" type=\"text\" id=\"cred-discord-applicationId\" placeholder=\"Your app's numeric ID\" autocomplete=\"off\"${attr(\"value\", getCredValue$1(\"discord\", \"applicationId\"))}/> <p class=\"field-help svelte-85kisn\">Found in the Discord Developer Portal under your application's General Information page.</p></div></div></div></div></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (slackCh()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"addon-row svelte-85kisn\" role=\"listitem\"><div class=\"addon-row-header svelte-85kisn\"><div class=\"addon-icon slack-icon svelte-85kisn\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" class=\"svelte-85kisn\"><path fill=\"#36C5F0\" d=\"M9 13.5a2 2 0 11-2-2h2v2z\"></path><path fill=\"#2EB67D\" d=\"M10.5 9a2 2 0 112 2H10.5v-2z\"></path><path fill=\"#ECB22E\" d=\"M15 10.5a2 2 0 112 2h-2v-2z\"></path><path fill=\"#E01E5A\" d=\"M13.5 15a2 2 0 11-2 2v-2h2z\"></path></svg></div> <div class=\"addon-body svelte-85kisn\"><div class=\"addon-title svelte-85kisn\">Slack</div> <div class=\"addon-sub svelte-85kisn\">Reach your assistant from a Slack workspace</div></div> <div class=\"toggle-wrap svelte-85kisn\"><label class=\"toggle svelte-85kisn\" aria-label=\"Enable Slack\"><input type=\"checkbox\"${attr(\"checked\", slackOn(), true)} class=\"svelte-85kisn\"/> <div class=\"toggle-track svelte-85kisn\"></div> <div class=\"toggle-thumb svelte-85kisn\"></div></label></div></div> <div${attr_class(\"addon-panel svelte-85kisn\", void 0, { \"open\": slackOn() })} aria-live=\"polite\"><div class=\"addon-panel-inner svelte-85kisn\"><div class=\"field-group svelte-85kisn\"><div><label class=\"field-label svelte-85kisn\" for=\"cred-slack-slackBotToken\">Bot token</label> <input class=\"field-input svelte-85kisn\" type=\"password\" id=\"cred-slack-slackBotToken\" placeholder=\"xoxb-…\" autocomplete=\"off\"${attr(\"value\", getCredValue$1(\"slack\", \"slackBotToken\"))}/></div> <div><label class=\"field-label svelte-85kisn\" for=\"cred-slack-slackAppToken\">App-level token</label> <input class=\"field-input svelte-85kisn\" type=\"password\" id=\"cred-slack-slackAppToken\" placeholder=\"xapp-…\" autocomplete=\"off\"${attr(\"value\", getCredValue$1(\"slack\", \"slackAppToken\"))}/> <p class=\"field-help svelte-85kisn\"><a href=\"https://api.slack.com/quickstart\" target=\"_blank\" rel=\"noopener\" class=\"svelte-85kisn\">How to create a Slack app and get your tokens →</a></p></div></div></div></div></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></div>`);\n\t});\n}\n//#endregion\n//#region src/routes/setup/steps/ReviewStep.svelte\nfunction ReviewStep($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst s = setupState;\n\t\tderived(() => s.uiLoginPassword);\n\t\tconst verifiedProviders = derived(() => s.verifiedProviders);\n\t\tconst modelSelection = derived(() => s.modelSelection);\n\t\tconst activeTts = derived(() => s.voiceEnabled ? s.displayedVoiceTts.engine : \"\");\n\t\tconst activeStt = derived(() => s.voiceEnabled ? s.displayedVoiceStt.engine : \"\");\n\t\tconst portalSelection = derived(() => s.portalSelection);\n\t\tconst ollamaEnabled = derived(() => s.ollamaEnabled);\n\t\tconst hostProviderLabel = derived(() => s.detectedHostProviders.length > 0 ? s.detectedHostProviders[0].provider : \"\");\n\t\tderived(() => s.payload);\n\t\tconst installError = derived(() => s.installError);\n\t\tconst isRerun = derived(() => s.isRerun);\n\t\tconst systemCheckPassed = derived(() => s.systemCheckPassed);\n\t\tfunction isPortalEnabled$1(chId, locked) {\n\t\t\treturn isPortalEnabled(portalSelection(), chId, locked);\n\t\t}\n\t\tconst aiLabel = derived(() => {\n\t\t\tconst connId = modelSelection().llm?.connId;\n\t\t\tif (!connId) return \"\";\n\t\t\treturn friendlyProviderName(connId, { localLabel: \"Runs on this computer\" });\n\t\t});\n\t\tconst voiceActive = derived(() => !!(activeTts() && !activeTts().startsWith(\"skip-\")) || !!(activeStt() && !activeStt().startsWith(\"skip-\")));\n\t\tconst activePortals = derived(() => PORTALS.filter((ch) => !ch.locked && isPortalEnabled$1(ch.id, ch.locked)));\n\t\tlet passwordCopied = false;\n\t\tif (verifiedProviders().length === 0) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"review-note svelte-1q74f52\">No AI set up here yet — that's fine. After install you can connect this app to an\n assistant running on another computer, or add a provider, anytime from your dashboard.</div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (!isRerun()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"password-block svelte-1q74f52\"><p class=\"password-label svelte-1q74f52\">Sign-in password</p> <div class=\"password-row svelte-1q74f52\">`);\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<span class=\"password-value password-value--dots svelte-1q74f52\" aria-label=\"Sign-in password\">••••••••••••••••</span>`);\n\t\t\t$$renderer.push(`<!--]--> <div class=\"password-actions svelte-1q74f52\"><button type=\"button\" class=\"btn-icon svelte-1q74f52\"${attr(\"aria-label\", \"Show password\")}${attr(\"title\", \"Show\")}>`);\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M1 8s2.5-5 7-5 7 5 7 5-2.5 5-7 5-7-5-7-5z\"></path><circle cx=\"8\" cy=\"8\" r=\"2\"></circle></svg>`);\n\t\t\t$$renderer.push(`<!--]--></button> <button type=\"button\"${attr_class(\"btn-icon svelte-1q74f52\", void 0, { \"btn-icon--copied\": passwordCopied })}${attr(\"aria-label\", \"Copy password\")} title=\"Copy\">`);\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><rect x=\"5\" y=\"5\" width=\"8\" height=\"8\" rx=\"1.5\"></rect><path d=\"M3 11V3h8\"></path></svg>`);\n\t\t\t$$renderer.push(`<!--]--></button></div></div> <p class=\"password-note svelte-1q74f52\">Already saved on this computer — keep a copy somewhere safe just in case.</p></div>`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<div class=\"password-block svelte-1q74f52\"><p class=\"password-label svelte-1q74f52\">Sign-in password</p> <div class=\"password-row svelte-1q74f52\"><span class=\"password-value password-value--dots svelte-1q74f52\" aria-label=\"Sign-in password\">••••••••</span> <div class=\"password-actions svelte-1q74f52\"><span class=\"rerun-note svelte-1q74f52\">Previously set — not changed.</span></div></div></div>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--> <div class=\"summary-list svelte-1q74f52\" aria-label=\"What's set up\"><p class=\"summary-section-label svelte-1q74f52\">What's being set up</p> `);\n\t\tif (aiLabel()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"summary-row svelte-1q74f52\"><span class=\"summary-icon svelte-1q74f52\" aria-hidden=\"true\">`);\n\t\t\tIconAgent($$renderer, { size: 16 });\n\t\t\t$$renderer.push(`<!----></span> <div class=\"summary-body svelte-1q74f52\"><div class=\"summary-key svelte-1q74f52\">AI</div> <div class=\"summary-val svelte-1q74f52\">${escape_html(aiLabel())}</div></div> <button type=\"button\" class=\"btn-change svelte-1q74f52\">Change</button></div>`);\n\t\t} else if (verifiedProviders().length > 0) {\n\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t$$renderer.push(`<div class=\"summary-row svelte-1q74f52\"><span class=\"summary-icon svelte-1q74f52\" aria-hidden=\"true\">`);\n\t\t\tIconAgent($$renderer, { size: 16 });\n\t\t\t$$renderer.push(`<!----></span> <div class=\"summary-body svelte-1q74f52\"><div class=\"summary-key svelte-1q74f52\">AI</div> <div class=\"summary-val svelte-1q74f52\">${escape_html(friendlyProviderName(verifiedProviders()[0].id))}</div></div> <button type=\"button\" class=\"btn-change svelte-1q74f52\">Change</button></div>`);\n\t\t} else if (ollamaEnabled()) {\n\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t$$renderer.push(`<div class=\"summary-row svelte-1q74f52\"><span class=\"summary-icon svelte-1q74f52\" aria-hidden=\"true\">`);\n\t\t\tIconAgent($$renderer, { size: 16 });\n\t\t\t$$renderer.push(`<!----></span> <div class=\"summary-body svelte-1q74f52\"><div class=\"summary-key svelte-1q74f52\">AI</div> <div class=\"summary-val svelte-1q74f52\">Runs on this computer</div></div> <button type=\"button\" class=\"btn-change svelte-1q74f52\">Change</button></div>`);\n\t\t} else if (hostProviderLabel()) {\n\t\t\t$$renderer.push(\"<!--[3-->\");\n\t\t\t$$renderer.push(`<div class=\"summary-row svelte-1q74f52\"><span class=\"summary-icon svelte-1q74f52\" aria-hidden=\"true\">`);\n\t\t\tIconAgent($$renderer, { size: 16 });\n\t\t\t$$renderer.push(`<!----></span> <div class=\"summary-body svelte-1q74f52\"><div class=\"summary-key svelte-1q74f52\">AI</div> <div class=\"summary-val svelte-1q74f52\">${escape_html(friendlyProviderName(hostProviderLabel()))}</div></div> <button type=\"button\" class=\"btn-change svelte-1q74f52\">Change</button></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (voiceActive()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"summary-row svelte-1q74f52\"><span class=\"summary-icon svelte-1q74f52\" aria-hidden=\"true\">`);\n\t\t\tIconMic($$renderer, { size: 16 });\n\t\t\t$$renderer.push(`<!----></span> <div class=\"summary-body svelte-1q74f52\"><div class=\"summary-key svelte-1q74f52\">Voice</div> <div class=\"summary-val svelte-1q74f52\">On — built-in voice</div></div> <button type=\"button\" class=\"btn-change svelte-1q74f52\">Change</button></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <!--[-->`);\n\t\tconst each_array = ensure_array_like(activePortals());\n\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\tlet ch = each_array[$$index];\n\t\t\t$$renderer.push(`<div class=\"summary-row svelte-1q74f52\"><span class=\"summary-icon svelte-1q74f52\" aria-hidden=\"true\">${escape_html(ch.icon)}</span> <div class=\"summary-body svelte-1q74f52\"><div class=\"summary-key svelte-1q74f52\">Chat app</div> <div class=\"summary-val svelte-1q74f52\">${escape_html(ch.name)}</div></div> <button type=\"button\" class=\"btn-change svelte-1q74f52\">Change</button></div>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></div> `);\n\t\tif (installError()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\tFriendlyError($$renderer, { error: friendlyError(installError(), \"setup-complete\") });\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (!systemCheckPassed()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"review-warning svelte-1q74f52\" role=\"alert\">⚠ System check has not passed yet — Install is disabled until Docker is confirmed available.</div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <div class=\"review-save-row svelte-1q74f52\"><button type=\"button\" class=\"btn-save svelte-1q74f52\" aria-label=\"Save configuration as JSON file\">Save configuration</button></div>`);\n\t});\n}\n//#endregion\n//#region src/routes/setup/steps/DeployStep.svelte\nfunction DeployStep($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/** Non-fatal: install used cached images because the registry pull failed. */\n\t\t/** Terminal state reached with non-running rows that are all warnings. */\n\t\tlet { deployData, deployDone, deployHasWarnings = false, deployError, onback, onretry } = $$props;\n\t\tconst warningRows = derived(() => (deployData.deployStatus ?? []).filter((s) => s.status === \"warning\"));\n\t\tconst isElectron = typeof window !== \"undefined\" && !!window.openpalm;\n\t\tconst windowPort = typeof window !== \"undefined\" ? Number(window.location.port) || 3880 : 3880;\n\t\tconst adminPort = derived(() => deployData.ports?.admin ?? windowPort);\n\t\tconst assistantPort = derived(() => deployData.ports?.assistant ?? 3800);\n\t\tconst serviceLinks = derived(() => ({\n\t\t\tassistant: {\n\t\t\t\tport: assistantPort(),\n\t\t\t\tlabel: \"Assistant (OpenCode)\",\n\t\t\t\tpath: \"\"\n\t\t\t},\n\t\t\tadmin: {\n\t\t\t\tport: adminPort(),\n\t\t\t\tlabel: \"Admin Dashboard\",\n\t\t\t\tpath: \"/host\"\n\t\t\t}\n\t\t}));\n\t\tconst services = derived(() => deployData.deployStatus ?? []);\n\t\tconst total = derived(() => services().length);\n\t\tconst running = derived(() => services().filter((s) => s.status === \"running\").length);\n\t\tconst pct = derived(() => total() > 0 ? Math.round(running() / total() * 100) : 0);\n\t\tconst phase = derived(() => deployData.phase ?? \"writing-config\");\n\t\tconst voiceEnabled = derived(() => services().some((s) => /^voice(-cuda|-rocm)?$/.test(s.service ?? \"\")));\n\t\tconst deployTitle = derived(() => {\n\t\t\tif (deployDone) return deployHasWarnings ? \"Setup Complete (with warnings)\" : \"Setup Complete\";\n\t\t\tif (deployError) return \"Deployment Issue\";\n\t\t\tswitch (phase()) {\n\t\t\t\tcase \"writing-config\": return \"Preparing Configuration…\";\n\t\t\t\tcase \"pulling-images\": return voiceEnabled() ? \"Downloading Images (incl. Voice ~2.4 GB)…\" : \"Downloading Images…\";\n\t\t\t\tcase \"starting\": return \"Starting Services…\";\n\t\t\t\tcase \"starting-voice\": return \"Starting Voice Addon…\";\n\t\t\t\tcase \"ready\": return \"Setup Complete\";\n\t\t\t}\n\t\t\treturn \"Deploying…\";\n\t\t});\n\t\tconst deploySubtitle = derived(() => {\n\t\t\tif (deployDone) return deployHasWarnings ? \"Setup is complete. Some services are still warming up in the background — they will be ready shortly.\" : \"Your OpenPalm stack is up and running.\";\n\t\t\tif (deployError) return \"Setup could not finish starting the stack.\";\n\t\t\tswitch (phase()) {\n\t\t\t\tcase \"writing-config\": return \"Writing config files and validating settings.\";\n\t\t\t\tcase \"pulling-images\": return voiceEnabled() ? \"Downloading container images. The voice model (~2.4 GB) is the largest — on a typical home connection this step can take 10–30 minutes. The wizard will wait — keep this tab open.\" : \"Downloading container images — first install can take 3–8 minutes depending on connection.\";\n\t\t\t\tcase \"starting\": return `${running()} of ${total()} services running.`;\n\t\t\t\tcase \"starting-voice\": return \"Pulling the voice image (~2.4 GB) and warming up Kokoro + Whisper models. First launch can take 5–30 minutes on slow connections — the wizard will wait.\";\n\t\t\t\tcase \"ready\": return \"All services are up.\";\n\t\t\t}\n\t\t\treturn \"Writing configuration and starting services.\";\n\t\t});\n\t\tconst noStartMode = derived(() => deployDone && services().length === 0);\n\t\t$$renderer.push(`<div class=\"deploy-header\"><h2 id=\"deploy-title\">${escape_html(deployTitle())}</h2> <p class=\"step-description\" id=\"deploy-subtitle\">${escape_html(deploySubtitle())}</p></div> <div class=\"deploy-progress-summary\"><div class=\"deploy-progress-meta\"><span class=\"deploy-progress-label\">Progress</span> <span${attr_class(`deploy-progress-value ${deployError ? \"deploy-progress-value--error\" : \"\"}`)} id=\"deploy-progress-value\">`);\n\t\tif (deployError) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`Error`);\n\t\t} else if (deployDone) {\n\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t$$renderer.push(`${escape_html(services().length > 0 ? \"100%\" : \"\")}`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`${escape_html(pct())}%`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></span></div> <div class=\"deploy-progress-bar\"><div class=\"deploy-progress-fill\" id=\"deploy-progress-fill\"${attr_style(`width:${stringify(deployDone && services().length > 0 ? 100 : deployDone ? 0 : pct())}%`)}></div></div></div> <div class=\"deploy-services\" id=\"deploy-services\"><!--[-->`);\n\t\tconst each_array = ensure_array_like(services());\n\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\tlet svc = each_array[$$index];\n\t\t\t$$renderer.push(`<div class=\"deploy-service-row\"><div class=\"deploy-service-indicator\">`);\n\t\t\tif (svc.status === \"running\") {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<span class=\"deploy-check\"><svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"var(--s-moss)\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"></polyline></svg></span>`);\n\t\t\t} else if (svc.status === \"error\" || svc.status === \"warning\") {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`<span class=\"deploy-warning\"><svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"var(--s-ink-2)\" stroke-width=\"2.3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 9v4\"></path><path d=\"M12 17h.01\"></path><path d=\"M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z\"></path></svg></span>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<span class=\"deploy-spinner\">`);\n\t\t\t\tSpinner($$renderer, {});\n\t\t\t\t$$renderer.push(`<!----></span>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></div> <div class=\"deploy-service-info\"><span class=\"deploy-service-name\">${escape_html(svc.service || svc.label || \"\")}</span> <span class=\"deploy-service-status\">${escape_html(svc.label || svc.status)}</span></div> <div class=\"deploy-service-bar\"><div${attr_class(`deploy-bar-fill ${svc.status === \"running\" ? \"complete\" : svc.status === \"ready\" ? \"ready\" : svc.status === \"warning\" ? \"warning\" : svc.status === \"error\" ? \"stopped\" : \"indeterminate\"}`, \"svelte-1orw49v\")}></div></div></div>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></div> `);\n\t\tif (deployError) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div id=\"deploy-failure\">`);\n\t\t\tFriendlyError($$renderer, { error: friendlyError(deployError, \"deploy\") });\n\t\t\t$$renderer.push(`<!----></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (!deployDone && !deployError) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<aside class=\"deploy-tips\" id=\"deploy-tips\"><div class=\"deploy-tips-header\"><span class=\"deploy-tips-kicker\">Tips</span> <h3>${escape_html(voiceEnabled() ? \"First install may take 10–30 minutes\" : \"First startup takes a few minutes\")}</h3></div> <ul>`);\n\t\t\tif (voiceEnabled()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<li>The OpenPalm Voice image is ~2.4 GB — the largest piece by far. Download speed depends on your internet connection.</li> <li>The wizard waits as long as the download takes. Progress bars below show each service's state.</li>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<li>Container images are being downloaded for the first time.</li>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--> <li>The admin console will be available once all services are healthy.</li> `);\n\t\t\tif (isElectron) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<li>You can leave this window — we'll let you know when it's ready.</li>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<li><strong>Keep this tab open while installation runs.</strong></li>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></ul></aside>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (deployDone) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"done-state\" id=\"deploy-done\"><div class=\"done-icon\"><svg width=\"48\" height=\"48\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"var(--s-moss)\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M22 11.08V12a10 10 0 1 1-5.93-9.14\"></path><polyline points=\"22 4 12 14.01 9 11.01\"></polyline></svg></div> <h2>${escape_html(deployHasWarnings ? \"Setup Complete (with warnings)\" : \"Setup Complete\")}</h2> `);\n\t\t\tif (noStartMode()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"done-subtitle\">Configuration saved. Run 'openpalm start' to start services.</p>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<p class=\"done-subtitle\">${escape_html(deployHasWarnings ? \"Setup is complete. Some services are still warming up in the background.\" : \"Your OpenPalm stack is up and running.\")}</p> `);\n\t\t\t\tif (deployHasWarnings && warningRows().length > 0) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<div class=\"deploy-warnings-note svelte-1orw49v\" role=\"status\" id=\"deploy-warnings-note\">Still warming up: ${escape_html(warningRows().map((s) => s.label || s.service).join(\", \"))}. You can finish setup now — these will be ready shortly.</div>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\t\tif (deployData.imageWarning) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<div class=\"feedback feedback--warning\" role=\"status\" id=\"deploy-image-warning\" style=\"margin-top:12px\"><span>⚠ ${escape_html(deployData.imageWarning)}</span></div>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\t\tif (!isElectron) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<p class=\"done-close-hint svelte-1orw49v\">Setup is complete. You can safely close this tab now.</p>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--> <ul class=\"service-list\" id=\"deploy-service-list\"><!--[-->`);\n\t\t\t\tconst each_array_1 = ensure_array_like(services());\n\t\t\t\tfor (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n\t\t\t\t\tlet svc = each_array_1[$$index_1];\n\t\t\t\t\tconst name = svc.service || svc.label || \"\";\n\t\t\t\t\tconst linkInfo = serviceLinks()[name];\n\t\t\t\t\tconst isWarming = svc.status === \"warning\";\n\t\t\t\t\t$$renderer.push(`<li>`);\n\t\t\t\t\tif (linkInfo) {\n\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\tconst url = \"http://127.0.0.1:\" + linkInfo.port + linkInfo.path;\n\t\t\t\t\t\t$$renderer.push(`<span class=\"deploy-svc-name\">${escape_html(linkInfo.label)}</span> <a${attr(\"href\", url)} target=\"_blank\" rel=\"noopener\" class=\"deploy-svc-link\">${escape_html(url)}</a> <span class=\"deploy-svc-status\">${escape_html(isWarming ? svc.label || \"⚠ Warming up\" : \"✓ Running\")}</span>`);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t\t$$renderer.push(`<span class=\"deploy-svc-name\">${escape_html(name)}</span> <span class=\"deploy-svc-status\">${escape_html(isWarming ? svc.label || \"⚠ Warming up\" : \"✓ Running\")}</span>`);\n\t\t\t\t\t}\n\t\t\t\t\t$$renderer.push(`<!--]--></li>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></ul> <div class=\"done-links\"><a${attr(\"href\", resolve(\"/chat\"))} class=\"btn btn-primary\">Open Chat</a> <a${attr(\"href\", `http://127.0.0.1:${stringify(assistantPort())}`)} target=\"_blank\" rel=\"noopener\" class=\"btn btn-secondary\">OpenCode UI</a> <a${attr(\"href\", resolve(\"/host\"))} class=\"btn btn-secondary\">Admin Dashboard</a></div>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (deployError) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"step-actions\" id=\"deploy-error-actions\"><button class=\"btn btn-secondary\" id=\"btn-deploy-back\">Back to Review</button> <button class=\"btn btn-primary\" id=\"btn-deploy-retry\">Retry</button></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]-->`);\n\t});\n}\n//#endregion\n//#region src/routes/setup/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst s = setupState;\n\t\thead(\"g40i6i\", $$renderer, ($$renderer) => {\n\t\t\t$$renderer.title(($$renderer) => {\n\t\t\t\t$$renderer.push(`<title>OpenPalm Setup</title>`);\n\t\t\t});\n\t\t});\n\t\t$$renderer.push(`<main class=\"setup-page\" aria-label=\"Setup wizard\">`);\n\t\tif (s.isRerun) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"rerun-banner\"><span>Updating existing installation</span> <a${attr(\"href\", resolve(\"/\"))} class=\"rerun-back-link\">← Back to Admin</a></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (s.currentStep === 0 && !s.showDeploy) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div style=\"display:none\" aria-hidden=\"true\"><section class=\"step-content step-content--hidden\" id=\"step-0\" data-testid=\"step-system-check\">`);\n\t\t\tSystemCheckStep($$renderer, {});\n\t\t\t$$renderer.push(`<!----></section></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (s.showDeploy) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div style=\"flex:1; padding: 32px; overflow-y: auto;\">`);\n\t\t\tDeployStep($$renderer, {\n\t\t\t\tdeployData: s.deployData,\n\t\t\t\tdeployDone: s.deployDone,\n\t\t\t\tdeployHasWarnings: s.deployHasWarnings,\n\t\t\t\tdeployError: s.deployError,\n\t\t\t\tonback: () => s.handleDeployBack(),\n\t\t\t\tonretry: () => void s.handleDeployRetry()\n\t\t\t});\n\t\t\t$$renderer.push(`<!----></div>`);\n\t\t} else if (s.currentStep >= 1) {\n\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t$$renderer.push(`<header class=\"wiz-topbar\"><div class=\"wiz-wordmark\">`);\n\t\t\tIconLogo($$renderer, { size: 30 });\n\t\t\t$$renderer.push(`<!----> <b>OpenPalm</b><span>setup</span></div> <nav class=\"wiz-ticker\" aria-label=\"Setup steps\"><!--[-->`);\n\t\t\tconst each_array = ensure_array_like([\n\t\t\t\t{\n\t\t\t\t\tn: 1,\n\t\t\t\t\tlabel: \"Connect\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tn: 2,\n\t\t\t\t\tlabel: \"Add-ons\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tn: 3,\n\t\t\t\t\tlabel: \"Finish\"\n\t\t\t\t}\n\t\t\t]);\n\t\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\t\tlet tick = each_array[$$index];\n\t\t\t\t$$renderer.push(`<div${attr_class(\"wiz-tick\", void 0, {\n\t\t\t\t\t\"wiz-tick--active\": s.currentStep === tick.n,\n\t\t\t\t\t\"wiz-tick--done\": s.currentStep > tick.n\n\t\t\t\t})}${attr(\"aria-current\", s.currentStep === tick.n ? \"step\" : void 0)}>`);\n\t\t\t\tif (s.currentStep > tick.n) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<svg viewBox=\"0 0 12 12\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" width=\"12\" height=\"12\" aria-hidden=\"true\"><path d=\"M2 6l3 3 5-5\"></path></svg>`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<span class=\"wiz-tick-num\">${escape_html(tick.n)}</span>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--> ${escape_html(tick.label)}</div>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></nav></header> <div class=\"wiz-stage\"><div class=\"wiz-content\"><div class=\"wiz-content-scroll\"><div class=\"wiz-eyebrow\">`);\n\t\t\tif (s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`STEP 1 · Connect`);\n\t\t\t} else if (s.currentStep === 2) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`STEP 2 · Add-ons`);\n\t\t\t} else if (s.currentStep === 3) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`STEP 3 · Finish`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div> <h1 class=\"wiz-title\">`);\n\t\t\tif (s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`Connect your <span class=\"accent\">AI brain</span>`);\n\t\t\t} else if (s.currentStep === 2) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`Optional <span class=\"accent\">extras</span>`);\n\t\t\t} else if (s.currentStep === 3) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`You're all <span class=\"accent\">set</span>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></h1> <p class=\"wiz-lede\">`);\n\t\t\tif (s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\tif (s.hasUsableAI) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`We found an AI service already set up. Just continue, or choose something different.`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`Your assistant needs a source of intelligence. Pick one and you're set — you can add more later.`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t} else if (s.currentStep === 2) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`All optional — turn on only what you want now. You can add or remove anything later from your dashboard.`);\n\t\t\t} else if (s.currentStep === 3) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`OpenPalm is ready to install. Save the password you'll use to sign in.`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></p> `);\n\t\t\tif (s.recommendationAlert && s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"feedback feedback--warning\" role=\"alert\" data-testid=\"recommendation-alert\"><span>${escape_html(s.recommendationAlert)}</span></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (s.hostImportError && s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"feedback feedback--error\" role=\"alert\" data-testid=\"host-import-error\"><span>${escape_html(s.hostImportError)}</span></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<section class=\"step-content\" id=\"step-1\">`);\n\t\t\t\tScreen1ModelsStep($$renderer, {});\n\t\t\t\t$$renderer.push(`<!----></section>`);\n\t\t\t} else if (s.currentStep === 2) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`<section class=\"step-content\" id=\"step-2\">`);\n\t\t\t\tScreen2ExtrasStep($$renderer, {});\n\t\t\t\t$$renderer.push(`<!----></section>`);\n\t\t\t} else if (s.currentStep === 3) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`<section class=\"step-content\" id=\"step-3\" data-testid=\"step-review\">`);\n\t\t\t\tReviewStep($$renderer, {});\n\t\t\t\t$$renderer.push(`<!----></section>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div> <footer class=\"wiz-footer\"><div class=\"wiz-footer-left\">`);\n\t\t\tif (s.currentStep > 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<button class=\"btn btn-secondary\" aria-label=\"Back\">Back</button>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<div></div>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></div> <div class=\"wiz-footer-right\">`);\n\t\t\tif (s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<button class=\"btn btn-primary\" id=\"btn-screen1-next\"${attr(\"disabled\", !s.canComplete, true)}>`);\n\t\t\t\tif (s.modelSelection.llm?.connId && !LOCAL_PROVIDER_IDS.has(s.modelSelection.llm.connId)) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`Use ${escape_html(friendlyProviderName(s.modelSelection.llm.connId, { extraProviders: s.opencodeProviders }))} — Continue`);\n\t\t\t\t} else if (s.ollamaEnabled || s.detectedHostProviders.length > 0 || s.modelSelection.llm?.connId && LOCAL_PROVIDER_IDS.has(s.modelSelection.llm.connId)) {\n\t\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t\t$$renderer.push(`Use local AI — Continue`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`Continue`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></button>`);\n\t\t\t} else if (s.currentStep === 2) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`<button class=\"btn btn-primary\" id=\"btn-screen2-next\">Continue</button>`);\n\t\t\t} else if (s.currentStep === 3) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`<button class=\"btn btn-primary\" id=\"btn-install\"${attr(\"disabled\", !s.canComplete || s.installing, true)}>`);\n\t\t\t\tif (s.installing) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`Installing...`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`${escape_html(s.isRerun ? \"Update\" : \"Install\")}`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></button>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div></footer></div> <aside class=\"wiz-aside\" aria-label=\"Setup guide\"><div class=\"wiz-aside-top\"><img class=\"wiz-mascot\" src=\"/wizard-128.png\" alt=\"OpenPalm setup guide\"/> <div><b class=\"wiz-greet-name\">`);\n\t\t\tif (s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\tif (s.hasUsableAI) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`You're almost done!`);\n\t\t\t\t} else if (s.modelMode === \"local\" || s.ollamaEnabled || s.detectedHostProviders.length > 0) {\n\t\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t\t$$renderer.push(`Great choice.`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`Pick what works for you.`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t} else if (s.currentStep === 2) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`While you're here…`);\n\t\t\t} else if (s.currentStep === 3) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`You're ready.`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></b> <span class=\"wiz-greet-sub\">`);\n\t\t\tif (s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`Your setup guide`);\n\t\t\t} else if (s.currentStep === 2) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`A few optional extras`);\n\t\t\t} else if (s.currentStep === 3) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`Everything's in order`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></span></div></div> <p class=\"wiz-guide-lede\">`);\n\t\t\tif (s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\tif (s.hasUsableAI) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`We found an AI account on this computer. Just hit <strong>Continue</strong> and your assistant will use it automatically.`);\n\t\t\t\t} else if (s.modelMode === \"local\" || s.ollamaEnabled || s.detectedHostProviders.length > 0) {\n\t\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t\t$$renderer.push(`Running AI locally means your conversations never leave your machine. Perfect for privacy.`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`Sign in once and you're set. A browser tab will open for you to log in — come back here when you're done, it connects automatically.`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t} else if (s.currentStep === 2) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`All of this is optional. Skip this whole step if you want — your assistant works fine without any of these. You can turn them on whenever you're ready from the dashboard.`);\n\t\t\t} else if (s.currentStep === 3) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`You're ready. Click <strong>Install OpenPalm</strong> and it'll start up in the background. The first launch pulls a few files — this takes a minute or two. When it's done, open your browser, sign in with that password, and you're good to go. Everything can be changed later from the dashboard.`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></p> <div class=\"wiz-guide-bullets\">`);\n\t\t\tif (s.currentStep === 1) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\tif (s.hasUsableAI) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<div class=\"wiz-bullet\"><div class=\"wiz-bullet-icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><path d=\"M9 12l2 2 4-4\"></path><circle cx=\"12\" cy=\"12\" r=\"9\"></circle></svg></div> <div>Your existing connection is ready to use. No extra setup needed — just continue to the next step.</div></div> <div class=\"wiz-bullet\"><div class=\"wiz-bullet-icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><path d=\"M12 3l1.5 4.5H18l-3.75 2.7 1.5 4.5L12 12l-3.75 2.7 1.5-4.5L6 7.5h4.5z\"></path></svg></div> <div>Want to use something different? Select another option from the list — you can switch any time from the dashboard.</div></div>`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<div class=\"wiz-bullet\"><div class=\"wiz-bullet-icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><circle cx=\"12\" cy=\"8\" r=\"4\"></circle><path d=\"M4 20c0-4 3.6-7 8-7s8 3 8 7\"></path></svg></div> <div><strong>Cloud services</strong> like ChatGPT are fast and easy — you just sign in.</div></div> <div class=\"wiz-bullet\"><div class=\"wiz-bullet-icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"12\" rx=\"2\"></rect><path d=\"M8 20h8M12 16v4\"></path></svg></div> <div><strong>Running locally</strong> keeps everything on your computer — private, free, no internet needed.</div></div>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t} else if (s.currentStep === 2) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`<div class=\"wiz-bullet\"><div class=\"wiz-bullet-icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><rect x=\"9\" y=\"3\" width=\"6\" height=\"11\" rx=\"3\"></rect><path d=\"M5 11a7 7 0 0014 0M12 18v3\"></path></svg></div> <div>Voice runs locally — free, no internet needed. A small model downloads the first time you use it.</div></div> <div class=\"wiz-bullet\"><div class=\"wiz-bullet-icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><circle cx=\"12\" cy=\"12\" r=\"9\"></circle><path d=\"M12 8v4l3 3\"></path></svg></div> <div>Setup help: <a href=\"https://discord.com/developers/docs/quick-start/getting-started\" target=\"_blank\" rel=\"noopener\">How to set up a Discord bot →</a></div></div> <div class=\"wiz-bullet\"><div class=\"wiz-bullet-icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><path d=\"M3 12h18M3 6h18M3 18h18\"></path></svg></div> <div><a href=\"https://api.slack.com/quickstart\" target=\"_blank\" rel=\"noopener\">How to set up a Slack app →</a></div></div>`);\n\t\t\t} else if (s.currentStep === 3) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`<div class=\"wiz-bullet\"><div class=\"wiz-bullet-icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><rect x=\"3\" y=\"11\" width=\"18\" height=\"10\" rx=\"2\"></rect><path d=\"M7 11V7a5 5 0 0110 0v4\"></path></svg></div> <div>Your sign-in password is already saved on this computer — keep a copy somewhere safe just in case.</div></div> <div class=\"wiz-bullet\"><div class=\"wiz-bullet-icon\" aria-hidden=\"true\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\"><path d=\"M9 12l2 2 4-4\"></path><circle cx=\"12\" cy=\"12\" r=\"9\"></circle></svg></div> <div>Everything can be changed from the dashboard after install — providers, voice, portals, and more.</div></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div> <div class=\"wiz-guide-privacy\"><svg viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" aria-hidden=\"true\"><path d=\"M8 1.5L2 4v4c0 3.3 2.5 5.8 6 6.5 3.5-.7 6-3.2 6-6.5V4L8 1.5z\"></path></svg> <span>It's your own assistant, running right here on your computer.</span></div></aside></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></main>`);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":"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"}