libre-webui 0.33.0 → 0.34.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. package/backend/dist/db.d.ts +2 -2
  2. package/backend/dist/db.d.ts.map +1 -1
  3. package/backend/dist/db.js +14 -6
  4. package/backend/dist/db.js.map +1 -1
  5. package/backend/dist/env.d.ts.map +1 -1
  6. package/backend/dist/env.js +21 -9
  7. package/backend/dist/env.js.map +1 -1
  8. package/backend/dist/index.d.ts.map +1 -1
  9. package/backend/dist/index.js +24 -35
  10. package/backend/dist/index.js.map +1 -1
  11. package/backend/dist/middleware/cors.d.ts +28 -0
  12. package/backend/dist/middleware/cors.d.ts.map +1 -0
  13. package/backend/dist/middleware/cors.js +70 -0
  14. package/backend/dist/middleware/cors.js.map +1 -0
  15. package/backend/dist/middleware/preferencesBody.d.ts +4 -0
  16. package/backend/dist/middleware/preferencesBody.d.ts.map +1 -0
  17. package/backend/dist/middleware/preferencesBody.js +43 -0
  18. package/backend/dist/middleware/preferencesBody.js.map +1 -0
  19. package/backend/dist/models/personaModel.d.ts.map +1 -1
  20. package/backend/dist/models/personaModel.js +2 -2
  21. package/backend/dist/models/personaModel.js.map +1 -1
  22. package/backend/dist/models/userModel.d.ts.map +1 -1
  23. package/backend/dist/models/userModel.js +3 -3
  24. package/backend/dist/models/userModel.js.map +1 -1
  25. package/backend/dist/persistence/postgresResourceRepositories.js +3 -3
  26. package/backend/dist/persistence/postgresResourceRepositories.js.map +1 -1
  27. package/backend/dist/persistence/sqliteResourceRepositories.js +3 -3
  28. package/backend/dist/persistence/sqliteResourceRepositories.js.map +1 -1
  29. package/backend/dist/routes/calendar.js +2 -2
  30. package/backend/dist/routes/calendar.js.map +1 -1
  31. package/backend/dist/routes/documents.js +2 -2
  32. package/backend/dist/routes/documents.js.map +1 -1
  33. package/backend/dist/routes/huggingfaceHub.d.ts.map +1 -1
  34. package/backend/dist/routes/huggingfaceHub.js +47 -21
  35. package/backend/dist/routes/huggingfaceHub.js.map +1 -1
  36. package/backend/dist/routes/preferences.d.ts.map +1 -1
  37. package/backend/dist/routes/preferences.js +2 -1
  38. package/backend/dist/routes/preferences.js.map +1 -1
  39. package/backend/dist/services/agentCliService.d.ts.map +1 -1
  40. package/backend/dist/services/agentCliService.js +3 -1
  41. package/backend/dist/services/agentCliService.js.map +1 -1
  42. package/backend/dist/services/automationService.d.ts.map +1 -1
  43. package/backend/dist/services/automationService.js +3 -4
  44. package/backend/dist/services/automationService.js.map +1 -1
  45. package/backend/dist/services/chatService.d.ts.map +1 -1
  46. package/backend/dist/services/chatService.js +11 -11
  47. package/backend/dist/services/chatService.js.map +1 -1
  48. package/backend/dist/services/chatToolRuntimeService.d.ts +11 -0
  49. package/backend/dist/services/chatToolRuntimeService.d.ts.map +1 -1
  50. package/backend/dist/services/chatToolRuntimeService.js +2 -13
  51. package/backend/dist/services/chatToolRuntimeService.js.map +1 -1
  52. package/backend/dist/services/codexOAuthService.js +11 -7
  53. package/backend/dist/services/codexOAuthService.js.map +1 -1
  54. package/backend/dist/services/documentService.d.ts.map +1 -1
  55. package/backend/dist/services/documentService.js +3 -3
  56. package/backend/dist/services/documentService.js.map +1 -1
  57. package/backend/dist/services/galleryService.d.ts.map +1 -1
  58. package/backend/dist/services/galleryService.js +2 -2
  59. package/backend/dist/services/galleryService.js.map +1 -1
  60. package/backend/dist/services/libreClawService.d.ts +1 -1
  61. package/backend/dist/services/libreClawService.d.ts.map +1 -1
  62. package/backend/dist/services/libreClawService.js +16 -16
  63. package/backend/dist/services/libreClawService.js.map +1 -1
  64. package/backend/dist/services/memoryService.d.ts.map +1 -1
  65. package/backend/dist/services/memoryService.js +2 -2
  66. package/backend/dist/services/memoryService.js.map +1 -1
  67. package/backend/dist/services/mutationEngineService.js +2 -2
  68. package/backend/dist/services/mutationEngineService.js.map +1 -1
  69. package/backend/dist/services/ollamaService.d.ts +7 -2
  70. package/backend/dist/services/ollamaService.d.ts.map +1 -1
  71. package/backend/dist/services/ollamaService.js +120 -98
  72. package/backend/dist/services/ollamaService.js.map +1 -1
  73. package/backend/dist/services/ollamaSettingsService.js +1 -1
  74. package/backend/dist/services/ollamaSettingsService.js.map +1 -1
  75. package/backend/dist/services/pluginAudioGenerationService.d.ts.map +1 -1
  76. package/backend/dist/services/pluginAudioGenerationService.js +24 -11
  77. package/backend/dist/services/pluginAudioGenerationService.js.map +1 -1
  78. package/backend/dist/services/pluginCredentialsService.js +2 -2
  79. package/backend/dist/services/pluginCredentialsService.js.map +1 -1
  80. package/backend/dist/services/pluginEmbeddingService.d.ts.map +1 -1
  81. package/backend/dist/services/pluginEmbeddingService.js +20 -16
  82. package/backend/dist/services/pluginEmbeddingService.js.map +1 -1
  83. package/backend/dist/services/pluginImageGenerationService.d.ts.map +1 -1
  84. package/backend/dist/services/pluginImageGenerationService.js +93 -62
  85. package/backend/dist/services/pluginImageGenerationService.js.map +1 -1
  86. package/backend/dist/services/pluginSTTService.d.ts.map +1 -1
  87. package/backend/dist/services/pluginSTTService.js +15 -11
  88. package/backend/dist/services/pluginSTTService.js.map +1 -1
  89. package/backend/dist/services/pluginService.d.ts.map +1 -1
  90. package/backend/dist/services/pluginService.js +26 -23
  91. package/backend/dist/services/pluginService.js.map +1 -1
  92. package/backend/dist/services/pluginTTSService.d.ts.map +1 -1
  93. package/backend/dist/services/pluginTTSService.js +34 -27
  94. package/backend/dist/services/pluginTTSService.js.map +1 -1
  95. package/backend/dist/services/pluginVariablesService.d.ts.map +1 -1
  96. package/backend/dist/services/pluginVariablesService.js +2 -2
  97. package/backend/dist/services/pluginVariablesService.js.map +1 -1
  98. package/backend/dist/services/pluginVideoGenerationService.d.ts.map +1 -1
  99. package/backend/dist/services/pluginVideoGenerationService.js +33 -24
  100. package/backend/dist/services/pluginVideoGenerationService.js.map +1 -1
  101. package/backend/dist/services/preferencesService.d.ts +5 -0
  102. package/backend/dist/services/preferencesService.d.ts.map +1 -1
  103. package/backend/dist/services/preferencesService.js +15 -10
  104. package/backend/dist/services/preferencesService.js.map +1 -1
  105. package/backend/dist/services/promptService.d.ts.map +1 -1
  106. package/backend/dist/services/promptService.js +4 -4
  107. package/backend/dist/services/promptService.js.map +1 -1
  108. package/backend/dist/services/skillService.d.ts.map +1 -1
  109. package/backend/dist/services/skillService.js +6 -6
  110. package/backend/dist/services/skillService.js.map +1 -1
  111. package/backend/dist/services/toolApprovalService.d.ts.map +1 -1
  112. package/backend/dist/services/toolApprovalService.js +2 -3
  113. package/backend/dist/services/toolApprovalService.js.map +1 -1
  114. package/backend/dist/services/toolServerService.d.ts.map +1 -1
  115. package/backend/dist/services/toolServerService.js +4 -5
  116. package/backend/dist/services/toolServerService.js.map +1 -1
  117. package/backend/dist/services/workApprovalService.d.ts.map +1 -1
  118. package/backend/dist/services/workApprovalService.js +3 -3
  119. package/backend/dist/services/workApprovalService.js.map +1 -1
  120. package/backend/dist/services/workModelProviderService.d.ts +13 -2
  121. package/backend/dist/services/workModelProviderService.d.ts.map +1 -1
  122. package/backend/dist/services/workModelProviderService.js +16 -5
  123. package/backend/dist/services/workModelProviderService.js.map +1 -1
  124. package/backend/dist/services/workPolicyService.d.ts.map +1 -1
  125. package/backend/dist/services/workPolicyService.js +2 -2
  126. package/backend/dist/services/workPolicyService.js.map +1 -1
  127. package/backend/dist/services/workTaskService.d.ts.map +1 -1
  128. package/backend/dist/services/workTaskService.js +7 -7
  129. package/backend/dist/services/workTaskService.js.map +1 -1
  130. package/backend/dist/storage.d.ts.map +1 -1
  131. package/backend/dist/storage.js +2 -2
  132. package/backend/dist/storage.js.map +1 -1
  133. package/backend/dist/types/index.d.ts +1 -0
  134. package/backend/dist/types/index.d.ts.map +1 -1
  135. package/backend/dist/types/index.js.map +1 -1
  136. package/backend/dist/utils/backgroundSettings.d.ts +7 -0
  137. package/backend/dist/utils/backgroundSettings.d.ts.map +1 -0
  138. package/backend/dist/utils/backgroundSettings.js +39 -0
  139. package/backend/dist/utils/backgroundSettings.js.map +1 -0
  140. package/backend/dist/utils/hash.js +1 -1
  141. package/backend/dist/utils/hash.js.map +1 -1
  142. package/backend/dist/utils/pluginDefinitionTrust.js +1 -1
  143. package/backend/dist/utils/providerFetch.d.ts +90 -0
  144. package/backend/dist/utils/providerFetch.d.ts.map +1 -0
  145. package/backend/dist/utils/providerFetch.js +316 -0
  146. package/backend/dist/utils/providerFetch.js.map +1 -0
  147. package/backend/dist/utils/websocketCloseCodes.d.ts +31 -0
  148. package/backend/dist/utils/websocketCloseCodes.d.ts.map +1 -0
  149. package/backend/dist/utils/websocketCloseCodes.js +134 -0
  150. package/backend/dist/utils/websocketCloseCodes.js.map +1 -0
  151. package/backend/dist/workScreenServer.d.ts.map +1 -1
  152. package/backend/dist/workScreenServer.js +7 -2
  153. package/backend/dist/workScreenServer.js.map +1 -1
  154. package/backend/package.json +5 -14
  155. package/bin/cli-args.js +71 -0
  156. package/bin/cli.js +14 -3
  157. package/frontend/dist/artifact-runtime/.build-fingerprint +1 -1
  158. package/frontend/dist/assets/index-Bv773ECu.js +17 -0
  159. package/frontend/dist/assets/index-CxFIHoRc.css +1 -0
  160. package/frontend/dist/index.html +26 -25
  161. package/frontend/dist/js/{ArtifactContainer-BB6A8cT5.js → ArtifactContainer-Cdrv0kJM.js} +1 -1
  162. package/frontend/dist/js/{ArtifactDemoPage-Bf1dW5Z3.js → ArtifactDemoPage-BcXPfD-W.js} +1 -1
  163. package/frontend/dist/js/{ArtifactSandboxFrame-DsZW0Axy.js → ArtifactSandboxFrame-5qM5QELi.js} +1 -1
  164. package/frontend/dist/js/ArtifactSlideOutPanel-tuGsj_HW.js +1 -0
  165. package/frontend/dist/js/AutomationModal-DL9kNzgL.js +1 -0
  166. package/frontend/dist/js/AutomationsPage-BMtR7wCN.js +1 -0
  167. package/frontend/dist/js/{AvatarUpload-gfZ9QWR3.js → AvatarUpload-DrfSzzOZ.js} +1 -1
  168. package/frontend/dist/js/{Button-BQ5JnUVj.js → Button-BxwbQ5xw.js} +1 -1
  169. package/frontend/dist/js/CalendarPage-BBkLlXa5.js +1 -0
  170. package/frontend/dist/js/ChannelsPage-C2KWU3sZ.js +1 -0
  171. package/frontend/dist/js/ChatPage-CWsAjCPP.js +14 -0
  172. package/frontend/dist/js/ConnectModels-flyZgito.js +1 -0
  173. package/frontend/dist/js/{EvaluationsPage-Cydglp6R.js → EvaluationsPage-DUntWRVo.js} +2 -2
  174. package/frontend/dist/js/{FirstTimeSetup-C5cc-bc9.js → FirstTimeSetup-CMQ000Hh.js} +1 -1
  175. package/frontend/dist/js/{GalleryPage-Dvq2GVoH.js → GalleryPage-DNSo3Q0p.js} +1 -1
  176. package/frontend/dist/js/HomePage-BOXsuk3g.js +1 -0
  177. package/frontend/dist/js/LanguageSwitcher-BIrE0C-N.js +1 -0
  178. package/frontend/dist/js/LibreClawPage-D97-90n6.js +1 -0
  179. package/frontend/dist/js/{Logo-BlcOFpac.js → Logo-BHz_QQlV.js} +1 -1
  180. package/frontend/dist/js/{LogoMark-CNeQ6eO9.js → LogoMark-BDqTSfCe.js} +1 -1
  181. package/frontend/dist/js/ModelManagerModals-DzEVkCuT.js +1 -0
  182. package/frontend/dist/js/NotesPage-VBGqE4aV.js +3 -0
  183. package/frontend/dist/js/{PasswordStrengthMeter-DVFLKG_-.js → PasswordStrengthMeter-DLQ5jaO_.js} +1 -1
  184. package/frontend/dist/js/{PersonasPage-DK9-SDZQ.js → PersonasPage-D8-4PyoM.js} +2 -2
  185. package/frontend/dist/js/PluginUsagePage-CHcweo11.js +1 -0
  186. package/frontend/dist/js/RichMessageContent-D7wqrY68.js +1 -0
  187. package/frontend/dist/js/RichMessageContent-yWLHf4YS.js +3 -0
  188. package/frontend/dist/js/SettingsModal-CxVt1ObR.js +19 -0
  189. package/frontend/dist/js/SettingsToggle-DdhWCK7-.js +1 -0
  190. package/frontend/dist/js/{ShareDialog-CZpU1itx.js → ShareDialog-J5zbwIWY.js} +1 -1
  191. package/frontend/dist/js/{SystemPage-BVaaKTRs.js → SystemPage-CEjZpR5I.js} +1 -1
  192. package/frontend/dist/js/UserManagementPanel-Dhwk4I0s.js +1 -0
  193. package/frontend/dist/js/{WhatsNewModal-CoFCdUpf.js → WhatsNewModal-5lCndkFc.js} +1 -1
  194. package/frontend/dist/js/WorkPage-c8xOdYyy.js +7 -0
  195. package/frontend/dist/js/api-CHEuZtwG.js +1 -0
  196. package/frontend/dist/js/{api-DQdJeQjd.js → api-DEOxp9DN.js} +1 -1
  197. package/frontend/dist/js/{appNavigation-DRM2Jr4r.js → appNavigation-DToyRu19.js} +1 -1
  198. package/frontend/dist/js/appStore-Bsxed1km.js +2 -0
  199. package/frontend/dist/js/appVersion-CgCvuf4s.js +1 -0
  200. package/frontend/dist/js/{ar-C8Izi_rT.js → ar-DNI77Stn.js} +1 -1
  201. package/frontend/dist/js/authStore-8w9Idb5o.js +4 -0
  202. package/frontend/dist/js/authStore-DwmcyHDN.js +1 -0
  203. package/frontend/dist/js/{bn-BJJgi-6Q.js → bn-u6oyZr4U.js} +1 -1
  204. package/frontend/dist/js/{chatStore-8jYk48hC.js → chatStore-lyGhYu24.js} +3 -3
  205. package/frontend/dist/js/composerStyles-DqJg-2vE.js +1 -0
  206. package/frontend/dist/js/{config-D4dduT3C.js → config-B5SBQwEe.js} +1 -1
  207. package/frontend/dist/js/{cs-DheVrMUl.js → cs-BIkJ6jwb.js} +1 -1
  208. package/frontend/dist/js/{da-BLszIs3a.js → da-DV3V6XJ_.js} +1 -1
  209. package/frontend/dist/js/{de-BvWdcr7T.js → de-DdcTQ-vn.js} +1 -1
  210. package/frontend/dist/js/{es-CQ8Yauda.js → es-Cw-ozFaX.js} +1 -1
  211. package/frontend/dist/js/{evaluationsApi-CBKjxZUn.js → evaluationsApi-BvkmhMgQ.js} +1 -1
  212. package/frontend/dist/js/{fr-BD5h-w8z.js → fr-Y2NfnlYR.js} +1 -1
  213. package/frontend/dist/js/{hi-IlRhC5IE.js → hi-BKU62_1Y.js} +1 -1
  214. package/frontend/dist/js/{id-DalGMQEJ.js → id-q6wo4InR.js} +1 -1
  215. package/frontend/dist/js/{is-DuQqmHeS.js → is-_B6QblCu.js} +1 -1
  216. package/frontend/dist/js/{it-DDaqAdB1.js → it-NUupXhzK.js} +1 -1
  217. package/frontend/dist/js/{ja-CYCu9F9Y.js → ja-BUvl9RXq.js} +1 -1
  218. package/frontend/dist/js/{ko-P3JZPOXE.js → ko-df4leR83.js} +1 -1
  219. package/frontend/dist/js/{messageCodeStyles-0_YpQDk4.js → messageCodeStyles-DchDafYE.js} +2 -2
  220. package/frontend/dist/js/{ms-B3ZIqlUn.js → ms-CN-7Q9S2.js} +1 -1
  221. package/frontend/dist/js/{nl-1Qpsmmz1.js → nl-OEm4uNIo.js} +1 -1
  222. package/frontend/dist/js/{pl-ErrMri3_.js → pl-B9pHpjg7.js} +1 -1
  223. package/frontend/dist/js/{pt-0T0R9AtX.js → pt-D3uaEKud.js} +1 -1
  224. package/frontend/dist/js/{ru-B34INyPg.js → ru-z9H07lhi.js} +1 -1
  225. package/frontend/dist/js/{sv-BSqDwAur.js → sv-GkQDA4wx.js} +1 -1
  226. package/frontend/dist/js/{teamEventStream-RoMYo102.js → teamEventStream-C0_UAzCG.js} +1 -1
  227. package/frontend/dist/js/{th-DK9M4-Iy.js → th-0hzCkDzt.js} +1 -1
  228. package/frontend/dist/js/{tr-DUrkEwr1.js → tr-CZDobfHQ.js} +1 -1
  229. package/frontend/dist/js/ui-BQojEu4t.js +2 -0
  230. package/frontend/dist/js/{ui-vendor-6y6qiSk5.js → ui-vendor-BvD5yGW1.js} +1 -1
  231. package/frontend/dist/js/{uk-B5DYTi0e.js → uk-BwspIPCI.js} +1 -1
  232. package/frontend/dist/js/{useChat-ImXXcy0q.js → useChat-CDllZR7C.js} +1 -1
  233. package/frontend/dist/js/useDialogFocus-BQLdAGYH.js +1 -0
  234. package/frontend/dist/js/{useTranslation-D0mJ4NnO.js → useTranslation-rdLmo6zV.js} +1 -1
  235. package/frontend/dist/js/{utils-Bn0RE9_8.js → utils-CKWltgs8.js} +1 -1
  236. package/frontend/dist/js/utils-vendor-Bla8iz2s.js +1 -0
  237. package/frontend/dist/js/{vi-CrtPQUIM.js → vi-Dipdv5ta.js} +1 -1
  238. package/frontend/dist/js/workApi-0L8fBGq1.js +6 -0
  239. package/frontend/dist/js/workApi-BjDBLsFh.js +1 -0
  240. package/frontend/dist/js/{zh-gbOKajYe.js → zh-CgdWmtP_.js} +1 -1
  241. package/package.json +6 -16
  242. package/plugins/codex-oauth.json +1 -0
  243. package/frontend/dist/assets/index-DegYzMyw.js +0 -70
  244. package/frontend/dist/assets/index-gKj8Y1JB.css +0 -1
  245. package/frontend/dist/js/ArtifactSlideOutPanel-Cartcixp.js +0 -1
  246. package/frontend/dist/js/AutomationModal-BI_3nFeg.js +0 -1
  247. package/frontend/dist/js/AutomationsPage-ChMXj4UG.js +0 -1
  248. package/frontend/dist/js/CalendarPage-Ce1ud5St.js +0 -1
  249. package/frontend/dist/js/ChannelsPage-kl8zJ2HA.js +0 -1
  250. package/frontend/dist/js/ChatPage-Bj98c6rc.js +0 -14
  251. package/frontend/dist/js/ConnectModels-CPftHmE3.js +0 -1
  252. package/frontend/dist/js/HomePage-zVjADRoX.js +0 -1
  253. package/frontend/dist/js/LibreClawPage-x0Qmtcnc.js +0 -1
  254. package/frontend/dist/js/ModelManagerModals-K1oiXMTv.js +0 -1
  255. package/frontend/dist/js/NotesPage-BnqBv-n1.js +0 -3
  256. package/frontend/dist/js/PluginUsagePage-DX9uxdRr.js +0 -1
  257. package/frontend/dist/js/RichMessageContent-BzfhfzQ4.js +0 -1
  258. package/frontend/dist/js/RichMessageContent-XMkRvBen.js +0 -3
  259. package/frontend/dist/js/SettingsModal-CMOwEhkG.js +0 -19
  260. package/frontend/dist/js/SettingsToggle-B7UynBmZ.js +0 -1
  261. package/frontend/dist/js/UserManagementPanel-BxAvybHj.js +0 -1
  262. package/frontend/dist/js/WorkPage-Du6llCSU.js +0 -7
  263. package/frontend/dist/js/api-CatP45JH.js +0 -1
  264. package/frontend/dist/js/appStore-BXbVcTeo.js +0 -2
  265. package/frontend/dist/js/appVersion-BUroqcki.js +0 -1
  266. package/frontend/dist/js/authStore-DkqtNSYP.js +0 -4
  267. package/frontend/dist/js/authStore-bqAN5v4N.js +0 -1
  268. package/frontend/dist/js/axios-CYkJpKn8.js +0 -1
  269. package/frontend/dist/js/ui-UU79S5lB.js +0 -2
  270. package/frontend/dist/js/useDictation-eMIAncoT.js +0 -1
  271. package/frontend/dist/js/utils-vendor-BbPbaAuC.js +0 -9
  272. package/frontend/dist/js/webauthnClient-CPSq528Q.js +0 -1
  273. package/frontend/dist/js/workApi-BM8qVq_w.js +0 -1
  274. package/frontend/dist/js/workApi-xhF57amo.js +0 -6
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-hePW80VL.js";import{i as t,r as n,t as r}from"./react-vendor-D0Ec-185.js";import{t as i}from"./useQuery-BKulzCS7.js";import{d as a}from"./router-vendor-CMbYTGdh.js";import{t as o}from"./logger-DnuT4jgB.js";import{t as s}from"./useTranslation-rdLmo6zV.js";import{t as c}from"./utils-CKWltgs8.js";import{h as l,s as u,t as d}from"./chatStore-lyGhYu24.js";import{Dn as f,G as p,Jn as m,Jt as h,Kt as g,M as _,Pn as v,Pt as y,S as b,Sn as x,Tn as S,Ut as C,Yn as ee,Z as w,c as T,et as te,n as E,nr as D,or as O,t as k,xr as A}from"./ui-vendor-BvD5yGW1.js";import{C as ne,g as re,t as ie,y as j}from"./api-DEOxp9DN.js";import{t as ae}from"./authStore-8w9Idb5o.js";var M=e(t(),1),oe=n(),N=r();function P(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:e.toString()}function se({hfTask:e,hfSort:t,canInstallModels:n,loadingHf:r,hfModels:i,expandedHfModel:a,hfGgufFiles:o,loadingGguf:l,pullingModel:u,pullProgress:d,setHfTask:f,setHfSort:p,onToggleHfModel:h,onPullHfGguf:_,onCancelPull:v,onRefreshHfModels:b}){let{t:C}=s();return(0,N.jsxs)(`div`,{className:`flex-1 flex flex-col overflow-hidden`,children:[(0,N.jsx)(`div`,{className:`px-3 py-2 border-b border-gray-200 dark:border-dark-300 flex-shrink-0 space-y-2`,children:(0,N.jsxs)(`div`,{className:`flex gap-2`,children:[(0,N.jsxs)(`select`,{value:e,onChange:e=>f(e.target.value),onMouseDown:e=>e.stopPropagation(),className:`flex-1 px-2 py-1.5 rounded-lg border text-xs bg-gray-50 dark:bg-dark-50 border-gray-200 dark:border-dark-300 text-gray-900 dark:text-gray-100`,children:[(0,N.jsx)(`option`,{value:`text-generation`,children:C(`modelManager.huggingface.taskTextGeneration`)}),(0,N.jsx)(`option`,{value:`text-to-speech`,children:C(`modelManager.huggingface.taskTextToSpeech`)}),(0,N.jsx)(`option`,{value:`text-to-image`,children:C(`modelManager.huggingface.taskTextToImage`)}),(0,N.jsx)(`option`,{value:`automatic-speech-recognition`,children:C(`modelManager.huggingface.taskSpeechRecognition`)})]}),(0,N.jsxs)(`select`,{value:t,onChange:e=>p(e.target.value),onMouseDown:e=>e.stopPropagation(),className:`px-2 py-1.5 rounded-lg border text-xs bg-gray-50 dark:bg-dark-50 border-gray-200 dark:border-dark-300 text-gray-900 dark:text-gray-100`,children:[(0,N.jsx)(`option`,{value:`downloads`,children:C(`modelManager.huggingface.sortDownloads`)}),(0,N.jsx)(`option`,{value:`likes`,children:C(`modelManager.huggingface.sortLikes`)}),(0,N.jsx)(`option`,{value:`lastModified`,children:C(`modelManager.huggingface.sortRecent`)})]})]})}),(0,N.jsxs)(`div`,{className:`scroll-region min-h-0 flex-1 scrollbar-thin`,children:[!n&&(0,N.jsx)(`div`,{className:`mx-3 mb-1 mt-3 rounded-lg border border-amber-200 bg-amber-500/10 px-3 py-2 text-xs text-ink dark:border-amber-800 dark:bg-amber-900/20`,children:C(`modelSelector.pullRestricted`)}),r?(0,N.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,N.jsx)(y,{className:`h-6 w-6 animate-spin text-gray-400`})}):i.length===0?(0,N.jsxs)(`div`,{className:`px-4 py-8 text-center text-gray-500 dark:text-gray-400`,children:[(0,N.jsx)(k,{className:`h-8 w-8 mx-auto mb-2 text-gray-300 dark:text-gray-600`}),(0,N.jsx)(`p`,{className:`text-sm`,children:C(`modelManager.huggingface.noModelsFound`)})]}):(0,N.jsx)(`div`,{className:`divide-y divide-gray-100 dark:divide-dark-200`,children:i.map(e=>{let t=a===e.id,r=o[e.id]||[],i=l===e.id;return(0,N.jsxs)(`div`,{className:`bg-white dark:bg-dark-100`,children:[(0,N.jsx)(`div`,{className:`px-3 py-3 cursor-pointer hover:bg-gray-50 dark:hover:bg-dark-200`,onMouseDown:t=>{t.preventDefault(),t.stopPropagation(),h(e.id)},children:(0,N.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,N.jsx)(`div`,{className:`flex-shrink-0 rounded-lg bg-yellow-500/20 p-2 dark:bg-yellow-900/30`,children:(0,N.jsx)(k,{className:`h-4 w-4 text-yellow-600 dark:text-yellow-400`})}),(0,N.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(`h4`,{dir:`ltr`,className:`text-sm font-medium text-gray-900 dark:text-gray-100 truncate`,children:e.id}),e.gated&&(0,N.jsx)(`span`,{className:`rounded bg-yellow-500/20 px-1.5 py-0.5 text-xs text-ink dark:bg-yellow-900/30`,children:`Gated`})]}),(0,N.jsxs)(`p`,{className:`text-xs text-gray-500 dark:text-gray-400 mt-0.5`,children:[`by `,e.author]}),(0,N.jsxs)(`div`,{className:`flex items-center gap-3 mt-1.5 text-xs text-gray-400 dark:text-gray-500`,children:[(0,N.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(S,{className:`h-3 w-3`}),P(e.downloads)]}),(0,N.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(g,{className:`h-3 w-3`}),P(e.likes)]}),e.pipeline_tag&&(0,N.jsx)(`span`,{className:`px-1.5 py-0.5 rounded bg-gray-100 dark:bg-dark-200`,children:e.pipeline_tag})]})]}),(0,N.jsxs)(`div`,{className:`flex items-center gap-2 flex-shrink-0`,children:[(0,N.jsx)(`a`,{href:`https://huggingface.co/${e.id}`,target:`_blank`,rel:`noopener noreferrer`,onMouseDown:e=>e.stopPropagation(),className:`p-1.5 rounded-lg hover:bg-gray-100 dark:hover:bg-dark-200`,children:(0,N.jsx)(x,{className:`h-4 w-4 text-gray-400`})}),(0,N.jsx)(m,{className:c(`h-4 w-4 text-gray-400 transition-transform`,t&&`rotate-180`)})]})]})}),t&&(0,N.jsx)(`div`,{className:`px-3 pb-3 pt-1 border-t border-gray-100 dark:border-dark-200 bg-gray-50 dark:bg-dark-200`,children:i?(0,N.jsxs)(`div`,{className:`flex items-center justify-center py-4`,children:[(0,N.jsx)(y,{className:`h-4 w-4 animate-spin text-gray-400`}),(0,N.jsx)(`span`,{className:`ml-2 text-xs text-gray-500`,children:C(`modelManager.huggingface.checkingGguf`)})]}):r.length===0?(0,N.jsx)(`div`,{className:`py-4 text-center text-xs text-gray-500 dark:text-gray-400`,children:C(`modelManager.huggingface.noGgufAvailable`)}):(0,N.jsxs)(`div`,{className:`space-y-2`,children:[(0,N.jsx)(`div`,{className:`text-xs font-medium text-gray-600 dark:text-gray-300 mb-2`,children:C(`modelManager.huggingface.ggufFilesCount`,{count:r.length})}),r.map(e=>{let t=u===e.ollamaCommand;return(0,N.jsxs)(`div`,{className:`flex items-center gap-2 p-2 rounded-lg bg-white dark:bg-dark-100 border border-gray-200 dark:border-dark-300`,children:[(0,N.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,N.jsx)(`div`,{className:`text-xs font-medium text-gray-800 dark:text-gray-200 truncate`,children:e.filename}),(0,N.jsxs)(`div`,{className:`flex items-center gap-2 mt-0.5 text-xs text-gray-500 dark:text-gray-400`,children:[(0,N.jsx)(`span`,{children:e.sizeFormatted}),e.quantization&&(0,N.jsx)(`span`,{className:`px-1.5 py-0.5 rounded bg-purple-100 dark:bg-purple-900/30 text-purple-700 dark:text-purple-400`,children:e.quantization})]})]}),t?(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(`div`,{className:`text-xs text-gray-500 w-12 text-right`,children:d?.percent===void 0?`...`:`${d.percent}%`}),(0,N.jsx)(`button`,{onMouseDown:e=>{e.preventDefault(),e.stopPropagation(),v()},className:`p-1.5 rounded-lg text-red-500 hover:bg-red-50 dark:hover:bg-red-900/20`,children:(0,N.jsx)(E,{className:`h-4 w-4`})})]}):n?(0,N.jsxs)(`button`,{onMouseDown:t=>{t.preventDefault(),t.stopPropagation(),_(e.ollamaCommand,e.filename)},disabled:!!u,className:c(`px-3 py-1.5 rounded-lg text-xs font-medium`,`bg-primary-100 dark:bg-primary-900/30`,`text-primary-700 dark:text-primary-400`,`hover:bg-primary-200 dark:hover:bg-primary-900/50`,`disabled:opacity-50 disabled:cursor-not-allowed`),children:[(0,N.jsx)(S,{className:`h-3 w-3 inline mr-1`}),C(`models.pull`)]}):(0,N.jsx)(`span`,{className:`rounded bg-amber-500/20 px-2 py-1 text-[11px] font-medium text-ink dark:bg-amber-900/30`,children:C(`modelSelector.adminOnlyPull`)})]},e.filename)}),u?.startsWith(`hf.co/`)&&u.includes(e.id)&&d?.percent!==void 0&&(0,N.jsx)(`div`,{className:`w-full bg-gray-200 dark:bg-dark-300 rounded-full h-1.5 overflow-hidden mt-2`,children:(0,N.jsx)(`div`,{className:`h-1.5 rounded-full bg-primary-500 transition-all duration-300`,style:{width:`${d.percent}%`}})})]})})]},e.id)})})]}),(0,N.jsxs)(`div`,{className:`px-3 py-2 border-t border-gray-200 dark:border-dark-300 flex items-center justify-between flex-shrink-0`,children:[(0,N.jsxs)(`a`,{href:`https://huggingface.co/models`,target:`_blank`,rel:`noopener noreferrer`,onMouseDown:e=>e.stopPropagation(),className:`text-xs text-primary-600 dark:text-primary-400 hover:underline flex items-center gap-1`,children:[(0,N.jsx)(x,{className:`h-3 w-3`}),C(`modelManager.huggingface.browseAllLink`)]}),(0,N.jsx)(`button`,{onMouseDown:e=>{e.preventDefault(),e.stopPropagation(),b()},className:`p-1.5 rounded-lg hover:bg-gray-100 dark:hover:bg-dark-200`,children:(0,N.jsx)(w,{className:c(`h-3.5 w-3.5 text-gray-400`,r&&`animate-spin`)})})]})]})}function ce({filteredGroups:e,selectedModel:t,showImageGen:n,getModelValue:r,getModelIcon:i,getModelLabel:a,getModelSubLabel:o,onModelSelect:l,onOpenGallery:u}){let{t:d}=s();return(0,N.jsxs)(`div`,{className:`scroll-region min-h-0 flex-1 scrollbar-thin scrollbar-thumb-gray-300 dark:scrollbar-thumb-dark-400`,children:[e.length>0?e.map(e=>(0,N.jsxs)(`div`,{children:[(0,N.jsx)(`div`,{className:`px-3 py-2 text-xs font-semibold text-gray-500 dark:text-gray-400 bg-gray-100 dark:bg-dark-300 border-b border-gray-200 dark:border-dark-400 sticky top-0`,children:(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[e.icon,e.label,` (`,e.models.length,`)`]})}),e.models.map(e=>{let n=r(e);return(0,N.jsx)(`button`,{type:`button`,"data-testid":`model-selector-option`,"data-model-value":n,"aria-pressed":t===n,onClick:()=>l(n),className:c(`block w-full cursor-pointer border-b border-gray-100 px-3 py-3 text-start last:border-b-0 dark:border-dark-200`,`hover:bg-gray-50 dark:hover:bg-dark-200`,`bg-white dark:bg-dark-100 transition-colors`,`focus-visible:relative focus-visible:z-10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary-500/50`,t===n&&`bg-primary-50 dark:bg-primary-900/30`),children:(0,N.jsxs)(`div`,{className:`flex items-center gap-3`,children:[i(e),(0,N.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,N.jsx)(`div`,{dir:e.isPersona?`auto`:`ltr`,className:`text-sm font-medium text-gray-900 dark:text-gray-100 truncate`,children:a(e)}),o(e)&&(0,N.jsx)(`div`,{dir:`auto`,className:`text-xs text-gray-500 dark:text-gray-400 truncate`,children:o(e)})]}),t===n&&(0,N.jsx)(ee,{className:`h-4 w-4 text-primary-600 dark:text-primary-400 flex-shrink-0`})]})},n)})]},e.type)):(0,N.jsxs)(`div`,{className:`px-4 py-8 text-center text-gray-500 dark:text-gray-400`,children:[(0,N.jsx)(f,{className:`h-8 w-8 mx-auto mb-2 text-gray-300 dark:text-gray-600`}),(0,N.jsx)(`p`,{className:`text-sm`,children:d(`models.noModelsFound`)})]}),n&&(0,N.jsxs)(`div`,{className:`border-t border-gray-200 dark:border-dark-300`,children:[(0,N.jsx)(`div`,{className:`px-3 py-2 text-xs font-semibold text-gray-500 dark:text-gray-400 bg-gray-100 dark:bg-dark-300`,children:(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(te,{className:`h-4 w-4 text-blue-600 dark:text-blue-400`}),d(`modelSelector.actions`)]})}),(0,N.jsx)(`div`,{onMouseDown:e=>{e.preventDefault(),u()},className:`px-3 py-3 cursor-pointer hover:bg-blue-50 dark:hover:bg-blue-900/20 bg-white dark:bg-dark-100`,children:(0,N.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,N.jsx)(C,{className:`h-4 w-4 text-blue-600 dark:text-blue-400`}),(0,N.jsxs)(`div`,{className:`flex-1`,children:[(0,N.jsx)(`div`,{className:`text-sm font-medium text-gray-900 dark:text-gray-100`,children:d(`gallery.generate`)}),(0,N.jsx)(`div`,{className:`text-xs text-gray-500 dark:text-gray-400`,children:d(`gallery.generateDescription`)})]})]})})]})]})}function le({libraryCategories:e,libraryCategory:t,canInstallModels:n,loadingLibrary:r,filteredLibraryModels:i,pullingModel:a,pullProgress:o,setLibraryCategory:l,isModelInstalled:u,onModelSelect:d,onPullModel:f,onCancelPull:p,onRefreshLibrary:m}){let{t:h}=s();return(0,N.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:[(0,N.jsx)(`div`,{className:`px-3 py-2 border-b border-gray-200 dark:border-dark-300 flex-shrink-0`,children:(0,N.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:e.map(e=>(0,N.jsx)(`button`,{onMouseDown:t=>{t.preventDefault(),t.stopPropagation(),l(e)},className:c(`px-2.5 py-1 rounded-full text-xs font-medium transition-colors`,t===e?`bg-primary-100 dark:bg-primary-900/30 text-primary-700 dark:text-primary-400`:`bg-gray-100 dark:bg-dark-200 text-gray-600 dark:text-gray-400 hover:bg-gray-200 dark:hover:bg-dark-300`),children:e.charAt(0).toUpperCase()+e.slice(1)},e))})}),(0,N.jsxs)(`div`,{className:`scroll-region min-h-0 flex-1 scrollbar-thin`,children:[!n&&(0,N.jsx)(`div`,{className:`mx-3 mb-1 mt-3 rounded-lg border border-amber-200 bg-amber-500/10 px-3 py-2 text-xs text-ink dark:border-amber-800 dark:bg-amber-900/20`,children:h(`modelSelector.pullRestricted`)}),r?(0,N.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,N.jsx)(y,{className:`h-6 w-6 animate-spin text-gray-400`})}):i.length===0?(0,N.jsxs)(`div`,{className:`px-4 py-8 text-center text-gray-500 dark:text-gray-400`,children:[(0,N.jsx)(v,{className:`h-8 w-8 mx-auto mb-2 text-gray-300 dark:text-gray-600`}),(0,N.jsx)(`p`,{className:`text-sm`,children:h(`models.noModelsFound`)})]}):(0,N.jsx)(`div`,{className:`divide-y divide-gray-100 dark:divide-dark-200`,children:i.map(e=>{let t=u(e.name),r=a===e.name;return(0,N.jsxs)(`div`,{className:c(`px-3 py-3 bg-white dark:bg-dark-100`,t&&`bg-green-50/50 dark:bg-green-900/10`),children:[(0,N.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,N.jsx)(`div`,{className:`p-2 rounded-lg bg-blue-100 dark:bg-blue-900/30 flex-shrink-0`,children:(0,N.jsx)(v,{className:`h-4 w-4 text-blue-600 dark:text-blue-400`})}),(0,N.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(`h4`,{dir:`ltr`,className:`text-sm font-medium text-gray-900 dark:text-gray-100 truncate`,children:e.name}),t&&(0,N.jsx)(`span`,{className:`px-1.5 py-0.5 rounded text-xs bg-green-100 dark:bg-green-900/30 text-green-700 dark:text-green-400`,children:h(`modelSelector.installed`)}),(e.category===`cloud`||e.tags?.includes(`cloud`))&&(0,N.jsxs)(`span`,{className:`px-1.5 py-0.5 rounded text-xs bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-400 flex items-center gap-1`,children:[(0,N.jsx)(v,{className:`h-3 w-3`}),`Cloud`]})]}),(0,N.jsx)(`p`,{className:`text-xs text-gray-500 dark:text-gray-400 line-clamp-1 mt-0.5`,children:e.description}),(0,N.jsxs)(`div`,{className:`flex items-center gap-2 mt-1.5`,children:[e.sizes.slice(0,3).map(e=>(0,N.jsx)(`span`,{className:`px-1.5 py-0.5 rounded text-xs bg-gray-100 dark:bg-dark-200 text-gray-600 dark:text-gray-400`,children:e},e)),e.pulls&&(0,N.jsxs)(`span`,{className:`text-xs text-gray-400 dark:text-gray-500 flex items-center gap-1`,children:[(0,N.jsx)(S,{className:`h-3 w-3`}),e.pulls]})]})]}),(0,N.jsx)(`div`,{className:`flex-shrink-0`,children:r?(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(`div`,{className:`text-xs text-gray-500 w-12 text-right`,children:o?.percent===void 0?`...`:`${o.percent}%`}),(0,N.jsx)(`button`,{onClick:p,className:`p-1.5 rounded-lg text-red-500 hover:bg-red-50 dark:hover:bg-red-900/20`,children:(0,N.jsx)(E,{className:`h-4 w-4`})})]}):t?(0,N.jsx)(`button`,{onClick:()=>d(e.name),className:`px-3 py-1.5 rounded-lg text-xs font-medium bg-green-100 dark:bg-green-900/30 text-green-700 dark:text-green-400 hover:bg-green-200 dark:hover:bg-green-900/50`,children:h(`modelSelector.use`)}):n?(0,N.jsxs)(`button`,{onClick:()=>f(e.name),className:`px-3 py-1.5 rounded-lg text-xs font-medium bg-primary-100 dark:bg-primary-900/30 text-primary-700 dark:text-primary-400 hover:bg-primary-200 dark:hover:bg-primary-900/50`,children:[(0,N.jsx)(S,{className:`h-3 w-3 inline mr-1`}),h(`modelSelector.pull`)]}):(0,N.jsx)(`span`,{className:`rounded bg-amber-500/20 px-2 py-1 text-[11px] font-medium text-ink dark:bg-amber-900/30`,children:h(`modelSelector.adminOnlyPull`)})})]}),r&&o?.percent!==void 0&&(0,N.jsx)(`div`,{className:`mt-2 w-full bg-gray-200 dark:bg-dark-300 rounded-full h-1.5 overflow-hidden`,children:(0,N.jsx)(`div`,{className:`h-1.5 rounded-full bg-primary-500 transition-all duration-300`,style:{width:`${o.percent}%`}})})]},e.name)})})]}),(0,N.jsxs)(`div`,{className:`px-3 py-2 border-t border-gray-200 dark:border-dark-300 flex items-center justify-between flex-shrink-0`,children:[(0,N.jsxs)(`a`,{href:`https://ollama.com/library`,target:`_blank`,rel:`noopener noreferrer`,onMouseDown:e=>e.stopPropagation(),className:`text-xs text-primary-600 dark:text-primary-400 hover:underline flex items-center gap-1`,children:[(0,N.jsx)(x,{className:`h-3 w-3`}),h(`modelManager.huggingface.browseAllLink`)]}),(0,N.jsx)(`button`,{onMouseDown:e=>{e.preventDefault(),e.stopPropagation(),m()},className:`p-1.5 rounded-lg hover:bg-gray-100 dark:hover:bg-dark-200`,children:(0,N.jsx)(w,{className:c(`h-3.5 w-3.5 text-gray-400`,r&&`animate-spin`)})})]})]})}var ue=o(`components:model-selector`),F=({models:e,selectedModel:t,onModelChange:n,currentPersona:r,className:o,disabled:f=!1,compact:g=!1,showImageGen:y=!1,onModelsRefresh:x,getModelValue:S,getModelLabel:C,getModelTitle:ee,triggerRef:w,triggerTestId:te,selectTestId:ie,ariaLabel:P})=>{let{t:F}=s(),[I,de]=(0,M.useState)(!1),[L,R]=(0,M.useState)(``),[z,B]=(0,M.useState)(`installed`),fe=(0,M.useRef)(null),V=(0,M.useRef)(null),H=(0,M.useRef)(null),U=(0,M.useRef)(null),pe=a(),{user:me,systemInfo:he}=ae(),W=me?.role===`admin`||he?.requiresAuth===!1,[G,ge]=(0,M.useState)(`all`),[_e,ve]=(0,M.useState)(``),[ye,be]=(0,M.useState)(`text-generation`),[xe,Se]=(0,M.useState)(`downloads`),[Ce,we]=(0,M.useState)(``),[Te,Ee]=(0,M.useState)(null),[De,Oe]=(0,M.useState)({}),[ke,Ae]=(0,M.useState)(null),[K,q]=(0,M.useState)(null),[je,J]=(0,M.useState)(null),[Me,Y]=(0,M.useState)(null),Ne=[`all`,`general`,`coding`,`reasoning`,`vision`,`embedding`,`cloud`],Pe=[{type:`legacy`,label:F(`modelSelector.providerNotRecorded`,`Provider not recorded`),icon:(0,N.jsx)(D,{className:`h-4 w-4 text-gray-500 dark:text-dark-600`}),models:e.filter(e=>e.isLegacySelection),color:`gray`},{type:`unavailable`,label:F(`modelSelector.unavailableSelections`,`Unavailable selections`),icon:(0,N.jsx)(E,{className:`h-4 w-4 text-gray-500 dark:text-dark-600`}),models:e.filter(e=>e.isUnavailable&&!e.isLegacySelection),color:`gray`},{type:`personas`,label:F(`modelSelector.personas`),icon:(0,N.jsx)(T,{className:`h-4 w-4 text-gray-500 dark:text-dark-600`}),models:e.filter(e=>e.isPersona&&!e.isUnavailable),color:`purple`},{type:`agents`,label:F(`modelSelector.agentModels`,`Agents`),icon:(0,N.jsx)(b,{className:`h-4 w-4 text-gray-500 dark:text-dark-600`}),models:e.filter(e=>e.isAgent&&!e.isUnavailable),color:`green`},{type:`ollama`,label:F(`modelSelector.ollamaModels`),icon:(0,N.jsx)(O,{className:`h-4 w-4 text-gray-500 dark:text-dark-600`}),models:e.filter(e=>l(e)&&!e.name.includes(`embed`)),color:`green`},{type:`plugins`,label:F(`modelSelector.pluginModels`),icon:(0,N.jsx)(k,{className:`h-4 w-4 text-gray-500 dark:text-dark-600`}),models:e.filter(e=>e.isPlugin&&!e.isUnavailable),color:`green`}].filter(e=>e.models.length>0).map(e=>({...e,models:e.models.filter(e=>e.name.toLowerCase().includes(L.toLowerCase())||e.personaName&&e.personaName.toLowerCase().includes(L.toLowerCase())||e.pluginName&&e.pluginName.toLowerCase().includes(L.toLowerCase()))})).filter(e=>e.models.length>0),X=e=>S?.(e)??e.name,Fe=d(e=>e.modelMetadata),Ie=d(e=>e.personas),Z=e.find(e=>X(e)===t),Le=e=>{if(!e.name.startsWith(`persona:`))return;let t=e.name.slice(8),n=t;try{n=decodeURIComponent(t)}catch{}let r=Ie[t]??Ie[n];if(r?.name)return r.name;if(e.personaName&&e.personaName!==t)return e.personaName},Re=e=>{if(!e.name.startsWith(`persona:`))return;let t=e.name.slice(8),n=t;try{n=decodeURIComponent(t)}catch{}return Ie[t]??Ie[n]};(0,M.useImperativeHandle)(w,()=>H.current);let Q=(0,M.useCallback)((e=!0)=>{de(!1),R(``),e&&window.requestAnimationFrame(()=>H.current?.focus())},[]),{data:ze=[],isLoading:Be,refetch:Ve}=i({queryKey:[`ollama-library-selector`,_e,G===`cloud`?`cloud`:`all`],queryFn:async()=>{let e=await j.getLibraryModels({search:_e||void 0,sort:`popular`,category:G===`cloud`?`cloud`:void 0});return e.success&&e.data?e.data:[]},enabled:I&&z===`ollama`}),{data:He=[],isLoading:Ue,refetch:We}=i({queryKey:[`hf-models-selector`,ye,Ce,xe],queryFn:async()=>{let e=await ne.getModels({task:ye,search:Ce||void 0,sort:xe,limit:30});return e.success&&e.data?e.data:[]},enabled:I&&z===`huggingface`}),Ge=ze.filter(e=>{let t=!L||e.name.toLowerCase().includes(L.toLowerCase())||e.description.toLowerCase().includes(L.toLowerCase()),n=G===`all`||e.category===G;return t&&n}),Ke=(0,M.useCallback)(async e=>{let[t,n]=e.split(`/`);if(!(!t||!n)){Ae(e);try{let r=await ne.getGgufFiles(t,n);r.success&&r.data&&Oe(t=>({...t,[e]:r.data}))}catch(e){ue.error(`Failed to load GGUF files:`,e)}finally{Ae(null)}}},[]),qe=(0,M.useCallback)(e=>{Te===e?Ee(null):(Ee(e),De[e]||Ke(e))},[Te,De,Ke]),Je=(0,M.useCallback)((e,t)=>{if(!W){A.error(F(`modelSelector.pullRestricted`));return}if(!K){q(e),J({status:`starting`});try{let n=j.pullModelStream(e,e=>{J(e)},()=>{J(null),q(null),Y(null),A.success(F(`modelDownload.success`,{name:t})),x?.()},e=>{J(null),q(null),Y(null),A.error(F(`modelDownload.failed`,{error:e}))});Y(()=>n)}catch{J(null),q(null),A.error(F(`modelDownload.startFailed`))}}},[W,x,K,F]);(0,M.useEffect)(()=>{let e=setTimeout(()=>{z===`huggingface`?we(L):z===`ollama`&&ve(L)},300);return()=>clearTimeout(e)},[L,z]),(0,M.useEffect)(()=>{if(!I)return;let e=e=>{if(e.key===`Escape`){e.preventDefault(),Q();return}if(e.key===`Tab`&&V.current){let t=Array.from(V.current.querySelectorAll(`button:not([disabled]), input:not([disabled]), [tabindex]:not([tabindex="-1"])`)).filter(e=>e.offsetParent!==null),n=t[0],r=t[t.length-1];if(!n||!r)return;e.shiftKey&&document.activeElement===n?(e.preventDefault(),r.focus()):!e.shiftKey&&document.activeElement===r&&(e.preventDefault(),n.focus())}};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[Q,I]),(0,M.useEffect)(()=>{I&&U.current&&U.current.focus()},[I]);let Ye=async t=>{let r=e.find(e=>X(e)===t)??e.find(e=>!e.isPlugin&&!e.isPersona&&e.name===t),i=r?X(r):t,a=r?.name??t;Q();try{let e=await j.listRunningModels();if(e.success&&e.data){let t=e.data;t.length>0&&(r?.isPlugin!==!0&&t.some(e=>e.name===a||a.startsWith(`persona:`))||await j.unloadAllModels())}}catch(e){ue.warn(`Failed to unload models before switch:`,e)}n({target:{value:i}})},Xe=async e=>{if(!W){A.error(F(`modelSelector.pullRestricted`));return}if(!K){q(e),J({status:`starting`});try{let t=j.pullModelStream(e,e=>{J(e)},()=>{J(null),q(null),Y(null),A.success(F(`modelDownload.success`,{name:e})),x?.()},e=>{J(null),q(null),Y(null),A.error(F(`modelDownload.failed`,{error:e}))});Y(()=>t)}catch{J(null),q(null),A.error(F(`modelDownload.startFailed`))}}},Ze=()=>{Me&&(Me(),Y(null),q(null),J(null),A.success(F(`modelDownload.cancelled`)))},Qe=t=>e.some(e=>l(e)&&(e.name===t||e.name.startsWith(t+`:`))),$e=e=>{let t=Fe[u(e)]?.avatar;if(t&&!e.isPersona)return(0,N.jsx)(`img`,{src:t,alt:``,className:`h-4 w-4 shrink-0 rounded-full object-cover`});if(e.isPersona||e.isLegacySelection){let t=Re(e);if(t)return(0,N.jsx)(`img`,{src:re(t,64),alt:``,className:`h-4 w-4 shrink-0 rounded object-cover`})}return e.isLegacySelection?(0,N.jsx)(D,{className:`h-4 w-4 text-gray-500 dark:text-dark-600`}):e.isPersona?(0,N.jsx)(T,{className:`h-4 w-4 text-gray-500 dark:text-dark-600`}):e.isPlugin?(0,N.jsx)(k,{className:`h-4 w-4 text-gray-500 dark:text-dark-600`}):(0,N.jsx)(O,{className:`h-4 w-4 text-gray-500 dark:text-dark-600`})},$=e=>{if(C)return C(e);let t=Fe[u(e)]?.label;return t&&!e.isPersona?t:e.isLegacySelection?`${Le(e)??e.name} (${F(`modelSelector.legacyProvider`,`provider not recorded`)})`:e.isPersona?Le(e)||e.personaName||e.name:e.isAgent?e.isUnavailable?`${e.agentName||e.name} (${F(`modelSelector.unavailable`,`unavailable`)})`:e.agentName||e.name:(e.isPlugin,e.isUnavailable?`${e.name} (${F(`modelSelector.unavailable`,`unavailable`)})`:e.name)},et=e=>e.isLegacySelection?e.isUnavailable?F(`modelSelector.providerUnavailable`,`provider unavailable`):F(`modelSelector.reselectProvider`,`reselect a provider to pin this model`):e.isPersona?`via ${e.model}`:e.isPlugin?e.isUnavailable?`via ${e.pluginName||e.pluginId} · ${F(`modelSelector.providerUnavailable`,`provider unavailable`)}`:`via ${e.pluginName}`:e.isUnavailable?F(`modelSelector.providerUnavailable`,`provider unavailable`):null;return(0,N.jsxs)(`div`,{className:c(`relative min-w-0`,o),ref:fe,children:[(0,N.jsxs)(`button`,{ref:H,"data-testid":te,type:`button`,onClick:()=>!f&&de(!I),disabled:f,"aria-haspopup":`dialog`,"aria-expanded":I,"aria-label":P&&Z?`${P}: ${$(Z)}`:P,className:c(g?`flex h-9 w-full min-w-0 items-center justify-between gap-2 px-2.5 text-start`:`w-full flex items-center justify-between gap-2 px-3 py-2.5 text-start`,`rounded-xl border border-line bg-surface-subtle text-sm text-ink hover:bg-hover-solid`,`transition-colors duration-150 focus:outline-none focus:ring-2 focus:ring-primary-500/20 focus:border-primary-500/40`,f?`opacity-50 cursor-not-allowed`:`cursor-pointer`),title:g?Z?ee?.(Z)??$(Z):F(`modelSelector.selectModel`):void 0,children:[(()=>{if(!Z)return g?(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,N.jsx)(O,{className:`h-4 w-4 shrink-0`}),(0,N.jsx)(`span`,{className:`truncate text-xs font-medium text-ink-subtle`,children:F(`modelSelector.selectModel`)})]}):F(`modelSelector.selectModel`);if(g){let e=$(Z);return(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,N.jsx)(`span`,{className:`shrink-0`,children:$e(Z)}),(0,N.jsx)(`span`,{dir:Z.isPersona?`auto`:`ltr`,className:`truncate text-xs font-medium text-ink`,children:e})]})}let e=$(Z),t=et(Z);return(0,N.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[$e(Z),(0,N.jsxs)(`div`,{className:`flex flex-col min-w-0`,children:[(0,N.jsx)(`span`,{dir:Z.isPersona?`auto`:`ltr`,className:`text-sm font-medium truncate`,children:e}),t&&(0,N.jsx)(`span`,{dir:`auto`,className:`text-xs text-gray-500 dark:text-gray-400 truncate`,children:t})]}),Z.isPersona&&r&&(0,N.jsxs)(`div`,{className:`flex items-center gap-1 ms-auto`,children:[(0,N.jsx)(D,{className:`h-3 w-3 text-gray-500 dark:text-dark-600`}),r.embedding_model&&(0,N.jsx)(_,{className:`h-3 w-3 text-gray-400 dark:text-dark-500`})]})]})})(),(0,N.jsx)(m,{className:c(g?`h-3 w-3`:`h-4 w-4`,`shrink-0 text-ink-subtle transition-transform duration-150 motion-reduce:transition-none`,I&&`rotate-180`)})]}),I&&(0,oe.createPortal)((0,N.jsxs)(`div`,{className:`fixed inset-0 z-[999999] flex items-center justify-center p-3 sm:p-6`,children:[(0,N.jsx)(`div`,{className:`absolute inset-0 bg-gray-950/55 backdrop-blur-md`,onClick:()=>Q()}),(0,N.jsxs)(`div`,{ref:V,role:`dialog`,"aria-modal":`true`,"aria-label":F(`modelSelector.selectModel`),className:c(`relative flex w-full max-w-xl flex-col overflow-hidden bg-white/[0.98] dark:bg-dark-25/[0.98]`,`h-[min(620px,88vh)] rounded-[1.5rem] border border-black/[0.08] dark:border-white/[0.09]`,`shadow-[0_30px_100px_rgba(0,0,0,0.28)] backdrop-blur-xl animate-scale-in`),onClick:e=>e.stopPropagation(),children:[(0,N.jsxs)(`div`,{className:`flex-shrink-0`,children:[(0,N.jsxs)(`div`,{className:`flex items-center justify-between px-4 pb-2 pt-4 sm:px-5 sm:pt-5`,children:[(0,N.jsx)(`h2`,{className:`text-lg font-medium tracking-[-0.025em] text-gray-950 dark:text-dark-950 rtl:tracking-normal`,children:F(`modelSelector.selectModel`)}),(0,N.jsx)(`button`,{type:`button`,onClick:()=>Q(),className:`flex h-9 w-9 items-center justify-center rounded-full text-gray-400 transition-colors hover:bg-gray-100 hover:text-gray-950 dark:text-dark-500 dark:hover:bg-dark-200 dark:hover:text-dark-950`,title:F(`common.close`),children:(0,N.jsx)(E,{className:`h-4 w-4`})})]}),(0,N.jsx)(`div`,{className:`px-4 pb-3 sm:px-5`,children:(0,N.jsxs)(`div`,{className:`relative`,children:[(0,N.jsx)(p,{className:`absolute start-3 top-1/2 -translate-y-1/2 h-4 w-4 text-gray-400`}),(0,N.jsx)(`input`,{ref:U,type:`text`,placeholder:F(z===`installed`?`modelSelector.searchInstalled`:z===`ollama`?`modelSelector.searchOllama`:`modelSelector.searchHuggingFace`),value:L,onChange:e=>R(e.target.value),className:c(`w-full rounded-xl border border-black/[0.07] bg-gray-100/70 py-2.5 ps-10 pe-4 text-sm dark:border-white/[0.07] dark:bg-dark-200/70`,`focus:outline-none focus:ring-2 focus:ring-primary-500/20`,`text-gray-900 dark:text-dark-900 placeholder:text-gray-400 dark:placeholder:text-dark-500`)})]})}),(0,N.jsxs)(`div`,{className:`mx-4 mb-3 flex rounded-xl bg-gray-100/70 p-1 dark:bg-dark-200/70 sm:mx-5`,children:[(0,N.jsxs)(`button`,{onClick:()=>{B(`installed`)},className:c(`flex-1 rounded-lg px-2 py-2 text-xs font-medium transition-colors sm:px-4`,z===`installed`?`bg-white text-gray-950 shadow-sm dark:bg-dark-300 dark:text-dark-950`:`text-gray-500 hover:text-gray-800 dark:text-dark-500 dark:hover:text-dark-800`),"aria-pressed":z===`installed`,children:[(0,N.jsx)(h,{className:`h-4 w-4 inline me-1.5`}),F(`modelSelector.installed`)]}),(0,N.jsxs)(`button`,{onClick:()=>{B(`ollama`)},className:c(`flex-1 rounded-lg px-2 py-2 text-xs font-medium transition-colors sm:px-4`,z===`ollama`?`bg-white text-gray-950 shadow-sm dark:bg-dark-300 dark:text-dark-950`:`text-gray-500 hover:text-gray-800 dark:text-dark-500 dark:hover:text-dark-800`),"aria-pressed":z===`ollama`,children:[(0,N.jsx)(v,{className:`h-4 w-4 inline me-1.5`}),`Ollama`]}),(0,N.jsxs)(`button`,{onClick:()=>{B(`huggingface`)},className:c(`flex-1 rounded-lg px-2 py-2 text-xs font-medium transition-colors sm:px-4`,z===`huggingface`?`bg-white text-gray-950 shadow-sm dark:bg-dark-300 dark:text-dark-950`:`text-gray-500 hover:text-gray-800 dark:text-dark-500 dark:hover:text-dark-800`),"aria-pressed":z===`huggingface`,children:[(0,N.jsx)(k,{className:`h-4 w-4 inline me-1.5`}),`HuggingFace`]})]})]}),z===`installed`&&(0,N.jsx)(ce,{filteredGroups:Pe,selectedModel:t,showImageGen:y,getModelValue:X,getModelIcon:$e,getModelLabel:$,getModelSubLabel:et,onModelSelect:Ye,onOpenGallery:()=>{Q(!1),pe(`/gallery`)}}),z===`ollama`&&(0,N.jsx)(le,{libraryCategories:Ne,libraryCategory:G,canInstallModels:W,loadingLibrary:Be,filteredLibraryModels:Ge,pullingModel:K,pullProgress:je,setLibraryCategory:ge,isModelInstalled:Qe,onModelSelect:Ye,onPullModel:Xe,onCancelPull:Ze,onRefreshLibrary:()=>{Ve()}}),z===`huggingface`&&(0,N.jsx)(se,{hfTask:ye,hfSort:xe,canInstallModels:W,loadingHf:Ue,hfModels:He,expandedHfModel:Te,hfGgufFiles:De,loadingGguf:ke,pullingModel:K,pullProgress:je,setHfTask:be,setHfSort:Se,onToggleHfModel:qe,onPullHfGguf:Je,onCancelPull:Ze,onRefreshHfModels:()=>{We()}})]})]}),document.body),(0,N.jsx)(`select`,{"data-testid":ie,"aria-label":P,"aria-hidden":`true`,dir:`ltr`,value:t,onChange:n,className:`hidden`,tabIndex:-1,children:e.map(e=>(0,N.jsx)(`option`,{value:X(e),children:$(e)},`${e.isLegacySelection?`legacy`:e.isPersona?`persona`:e.isPlugin?`plugin`:`ollama`}:${e.pluginId||``}:${X(e)}`))})]})},I=o(`hooks:dictation`),de=()=>{if(typeof window>`u`)return;let e=window;return e.SpeechRecognition||e.webkitSpeechRecognition},L=[{mimeType:`audio/webm;codecs=opus`,format:`webm`}],R=300,z=.25,B=e=>`${encodeURIComponent(e.plugin)}:${encodeURIComponent(e.model)}`;function fe(e){if(typeof MediaRecorder>`u`)return;let t=new Set((e.config?.formats||[]).map(e=>e.toLowerCase()));return L.find(e=>(t.size===0||t.has(e.format))&&(typeof MediaRecorder.isTypeSupported!=`function`||MediaRecorder.isTypeSupported(e.mimeType)))?.mimeType}function V({onStart:e,onText:t,ownerKey:n}){let{t:r,i18n:i}=s(),[a,o]=(0,M.useState)(`idle`),[c,l]=(0,M.useState)([]),u=(0,M.useRef)(null),d=(0,M.useRef)(null),f=(0,M.useRef)(null),p=(0,M.useRef)(null),m=(0,M.useRef)(null),h=(0,M.useRef)(0),g=(0,M.useRef)(`idle`),_=(0,M.useRef)(void 0),v=(0,M.useRef)(e),y=(0,M.useRef)(t);(0,M.useEffect)(()=>{v.current=e,y.current=t},[e,t]),(0,M.useEffect)(()=>{let e=!1;return ie.getModels().then(t=>{!e&&t.success&&t.data&&l(t.data)}).catch(()=>{e||l([])}),()=>{e=!0}},[]);let b=(0,M.useMemo)(()=>typeof window<`u`&&window.isSecureContext&&typeof navigator<`u`&&!!navigator.mediaDevices&&!!de(),[]),x=typeof window<`u`&&window.isSecureContext&&typeof navigator<`u`&&!!navigator.mediaDevices?.getUserMedia,S=(0,M.useMemo)(()=>[...b?[{key:`browser`,kind:`browser`}]:[],...x?c.filter(e=>!!fe(e)).map(e=>({key:B(e),kind:`provider`,model:e})):[]],[b,x,c]),[C,ee]=(0,M.useState)(``),w=(0,M.useMemo)(()=>S.find(e=>e.key===C)??S[0],[C,S]),T=w?.kind===`provider`?w.model:void 0,te=S.length>0,E=(0,M.useCallback)(()=>{m.current!==null&&(window.clearTimeout(m.current),m.current=null)},[]),D=(0,M.useCallback)(e=>{g.current=e,o(e)},[]),O=(0,M.useCallback)(()=>{h.current+=1,E(),u.current?.stop(),u.current=null,p.current?.abort(),p.current=null;let e=d.current;d.current=null,e&&(e.ondataavailable=null,e.onerror=null,e.onstop=null,e.state===`recording`&&e.stop()),f.current?.getTracks().forEach(e=>e.stop()),f.current=null,D(`idle`)},[E,D]);return(0,M.useEffect)(()=>(_.current=n,O),[O,n]),{supported:te,phase:a,toggle:(0,M.useCallback)(async()=>{let e=g.current;if(e===`starting`||e===`transcribing`){O();return}if(e===`recording`){d.current?.state===`recording`?(D(`transcribing`),d.current.stop()):O();return}if(T){let e=h.current+1;h.current=e;let t=_.current;v.current(),D(`starting`);try{let n=await navigator.mediaDevices.getUserMedia({audio:!0});if(h.current!==e||_.current!==t){n.getTracks().forEach(e=>e.stop());return}f.current=n;let a=fe(T),o=a?new MediaRecorder(n,{mimeType:a}):new MediaRecorder(n),s=[];o.ondataavailable=e=>{e.data.size>0&&s.push(e.data)},o.onerror=()=>{n.getTracks().forEach(e=>e.stop()),E(),h.current===e&&(d.current=null,f.current=null,D(`idle`),A.error(r(`voiceMode.transcriptionFailed`)))},o.onstop=()=>{if(n.getTracks().forEach(e=>e.stop()),E(),h.current!==e||_.current!==t)return;if(d.current=null,f.current=null,s.length===0){D(`idle`);return}let a=new Blob(s,{type:o.mimeType||s[0].type||`audio/webm`}),c=new AbortController;p.current=c,D(`transcribing`),ie.transcribe(a,T,{language:i.language,signal:c.signal,fallbackMessage:r(`voiceMode.transcriptionFailed`)}).then(n=>{h.current!==e||_.current!==t||c.signal.aborted||y.current(n.text.trim())}).catch(e=>{c.signal.aborted||(I.error(`Provider transcription failed:`,e),A.error(e instanceof Error?e.message:r(`voiceMode.transcriptionFailed`)))}).finally(()=>{p.current===c&&h.current===e&&(p.current=null,D(`idle`))})},d.current=o,o.start(250);let c=T.config?.max_duration_seconds,l=typeof c==`number`&&c>0?Math.min(c,R):R;m.current=window.setTimeout(()=>{h.current===e&&o.state===`recording`&&o.stop()},Math.max(.1,l-z)*1e3),D(`recording`);return}catch(t){if(h.current!==e)return;I.error(`Failed to start provider dictation:`,t),E(),f.current?.getTracks().forEach(e=>e.stop()),f.current=null,d.current=null,D(`idle`),A.error(r(`voiceMode.transcriptionFailed`));return}}let t=de();if(!t)return;let n=h.current+1;h.current=n;let a=_.current,o=new t;o.lang=i.language,o.continuous=!0,o.interimResults=!0,v.current(),o.onresult=e=>{if(h.current!==n||_.current!==a||u.current!==o)return;let t=``;for(let n=0;n<e.results.length;n++)t+=e.results[n][0]?.transcript??``;y.current(t.trim())},o.onend=()=>{h.current===n&&(u.current=null,D(`idle`))},o.onerror=()=>{h.current===n&&(u.current=null,D(`idle`))},u.current=o,D(`recording`);try{o.start()}catch(e){I.error(`Failed to start dictation:`,e),u.current=null,D(`idle`)}},[O,E,i.language,T,D,r]),cancel:O,sources:S,activeSourceKey:w?.key??``,setSourceKey:ee,providerModel:T}}var H=`relative rounded-[24px] border border-line bg-surface p-2.5 shadow-subtle transition-[border-color,box-shadow,background-color] duration-150 ease-out focus-within:border-primary-500/50 focus-within:ring-2 focus-within:ring-primary-500/10 dark:bg-surface-subtle dark:focus-within:border-primary-400/50 dark:focus-within:ring-primary-400/10 motion-reduce:transition-none`,U=`h-9 w-9 shrink-0 rounded-full border-transparent bg-ink p-0 text-ink-inverse shadow-none hover:bg-ink hover:text-ink-inverse hover:opacity-90 disabled:border-line disabled:bg-surface-subtle disabled:text-ink-subtle disabled:opacity-100 disabled:hover:bg-surface-subtle disabled:hover:text-ink-subtle disabled:hover:opacity-100 dark:disabled:bg-surface-raised dark:disabled:hover:bg-surface-raised focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-500/40 focus-visible:ring-offset-2 focus-visible:ring-offset-surface dark:focus-visible:ring-primary-400/40 transition-[background-color,color,opacity,box-shadow] duration-150 ease-out motion-reduce:transition-none touch-manipulation`;export{F as i,H as n,V as r,U as t};
@@ -1 +1 @@
1
- import{n as e,t}from"./logger-DnuT4jgB.js";var n=t(`config`);function r(e){return e.apiBaseUrl?.trim()?e.apiBaseUrl.trim():e.protocol===`file:`?`http://localhost:3001/api`:`${e.origin}/api`}var i=r({protocol:window.location.protocol,origin:window.location.origin,apiBaseUrl:void 0}),a=e(),o=()=>{a&&(n.debug(`API_BASE_URL configured as:`,i),n.debug(`Window location:`,window.location),n.debug(`Environment variables:`,{BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,VITE_APP_VERSION:`0.33.0`}))};export{o as n,i as t};
1
+ import{n as e,t}from"./logger-DnuT4jgB.js";var n=t(`config`);function r(e){return e.apiBaseUrl?.trim()?e.apiBaseUrl.trim():e.protocol===`file:`?`http://localhost:3001/api`:`${e.origin}/api`}var i=r({protocol:window.location.protocol,origin:window.location.origin,apiBaseUrl:void 0}),a=e(),o=()=>{a&&(n.debug(`API_BASE_URL configured as:`,i),n.debug(`Window location:`,window.location),n.debug(`Environment variables:`,{BASE_URL:`/`,DEV:!1,MODE:`production`,PROD:!0,SSR:!1,VITE_APP_VERSION:`0.34.1`}))};export{o as n,i as t};