hermium 0.1.10 → 0.3.0

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 (216) hide show
  1. package/README.md +56 -0
  2. package/bin/hermium.mjs +201 -136
  3. package/dist/api.mjs +3513 -0
  4. package/dist/{web-server → server}/_chunks/ssr-renderer.mjs +1 -1
  5. package/dist/{web-server → server}/_libs/base-ui__react.mjs +338 -34
  6. package/dist/{web-server → server}/_libs/base-ui__utils.mjs +38 -33
  7. package/dist/server/_libs/comma-separated-tokens.mjs +10 -0
  8. package/dist/{web-server → server}/_libs/floating-ui__core.mjs +3 -3
  9. package/dist/{web-server → server}/_libs/floating-ui__dom.mjs +4 -4
  10. package/dist/{web-server → server}/_libs/floating-ui__react-dom.mjs +3 -3
  11. package/dist/{web-server → server}/_libs/floating-ui__utils.mjs +38 -38
  12. package/dist/{web-server → server}/_libs/h3.mjs +3 -3
  13. package/dist/server/_libs/hast-util-is-element.mjs +75 -0
  14. package/dist/{web-server → server}/_libs/hast-util-to-jsx-runtime.mjs +2 -2
  15. package/dist/server/_libs/hast-util-to-text.mjs +305 -0
  16. package/dist/server/_libs/highlight.js.mjs +14756 -0
  17. package/dist/server/_libs/lowlight.mjs +262 -0
  18. package/dist/{web-server → server}/_libs/mdast-util-from-markdown.mjs +1 -1
  19. package/dist/{web-server → server}/_libs/mdast-util-gfm-autolink-literal+[...].mjs +2 -2
  20. package/dist/{web-server → server}/_libs/mdast-util-to-hast.mjs +1 -1
  21. package/dist/{web-server → server}/_libs/micromark-core-commonmark.mjs +24 -24
  22. package/dist/{web-server → server}/_libs/micromark-extension-gfm-autolink-literal+[...].mjs +1 -1
  23. package/dist/{web-server → server}/_libs/micromark-extension-gfm-footnote+[...].mjs +2 -2
  24. package/dist/{web-server → server}/_libs/micromark-extension-gfm-table.mjs +1 -1
  25. package/dist/{web-server → server}/_libs/micromark-extension-gfm-task-list-item+[...].mjs +1 -1
  26. package/dist/{web-server → server}/_libs/micromark-factory-destination.mjs +1 -1
  27. package/dist/{web-server → server}/_libs/micromark-factory-label.mjs +1 -1
  28. package/dist/{web-server → server}/_libs/micromark-factory-space.mjs +1 -1
  29. package/dist/{web-server → server}/_libs/micromark-factory-whitespace.mjs +1 -1
  30. package/dist/{web-server → server}/_libs/micromark-util-character.mjs +12 -12
  31. package/dist/{web-server → server}/_libs/micromark-util-classify-character+[...].mjs +1 -1
  32. package/dist/{web-server → server}/_libs/micromark-util-html-tag-name.mjs +2 -2
  33. package/dist/{web-server → server}/_libs/micromark-util-sanitize-uri.mjs +1 -1
  34. package/dist/{web-server → server}/_libs/micromark.mjs +3 -3
  35. package/dist/{web-server → server}/_libs/property-information.mjs +2 -3
  36. package/dist/{web-server → server}/_libs/react-dom.mjs +1 -1
  37. package/dist/{web-server → server}/_libs/react.mjs +42 -42
  38. package/dist/server/_libs/rehype-highlight.mjs +94 -0
  39. package/dist/server/_libs/space-separated-tokens.mjs +6 -0
  40. package/dist/server/_libs/tabler__icons-react.mjs +140 -0
  41. package/dist/server/_libs/tailwind-merge.mjs +3255 -0
  42. package/dist/server/_libs/tanstack__history.mjs +29 -0
  43. package/dist/{web-server → server}/_libs/tanstack__react-router.mjs +3 -3
  44. package/dist/{web-server → server}/_libs/tanstack__router-core.mjs +47 -741
  45. package/dist/server/_libs/unist-util-find-after.mjs +41 -0
  46. package/dist/{web-server → server}/_libs/unist-util-position.mjs +2 -2
  47. package/dist/{web-server → server}/_libs/use-sync-external-store.mjs +1 -1
  48. package/dist/server/_libs/zustand.mjs +43 -0
  49. package/dist/server/_ssr/ChatInputBlock-Bu2-iop_.mjs +220 -0
  50. package/dist/server/_ssr/MarkdownMessage-CNS7OSKN.mjs +68 -0
  51. package/dist/server/_ssr/chat._sessionId-P02iSfut.mjs +477 -0
  52. package/dist/{web-server/_ssr/index-CoDfv1vI.mjs → server/_ssr/chat.index-BYB_48NC.mjs} +6 -8
  53. package/dist/server/_ssr/index-C1mT_2d8.mjs +4890 -0
  54. package/dist/server/_ssr/index-DFV9_oCk.mjs +43 -0
  55. package/dist/server/_ssr/memory-CW_fSOG9.mjs +257 -0
  56. package/dist/{web-server/_ssr/router-CS6Zq3md.mjs → server/_ssr/router-CUAfx91O.mjs} +1009 -1108
  57. package/dist/server/_ssr/settings-DoXurzvn.mjs +10 -0
  58. package/dist/server/_ssr/skills-Cs7A5ZwO.mjs +422 -0
  59. package/dist/server/_ssr/theme-BK4-7E2h.mjs +42 -0
  60. package/dist/server/_ssr/usage-Bs2-LXGz.mjs +298 -0
  61. package/dist/server/_tanstack-start-manifest_v-C7Upe2TI.mjs +4 -0
  62. package/dist/server/index.mjs +502 -240
  63. package/package.json +4 -3
  64. package/dist/public/assets/IconAlertCircle-BW147gsG.js +0 -1
  65. package/dist/public/assets/IconAlertTriangle-DCoTLVSd.js +0 -1
  66. package/dist/public/assets/IconCheck-DAO7Fpl9.js +0 -1
  67. package/dist/public/assets/IconCode-BqfTl5wU.js +0 -1
  68. package/dist/public/assets/IconLoader2-B_pehSXN.js +0 -1
  69. package/dist/public/assets/IconRefresh-BbMGoMV8.js +0 -1
  70. package/dist/public/assets/geist-cyrillic-wght-normal-CHSlOQsW.woff2 +0 -0
  71. package/dist/public/assets/geist-latin-ext-wght-normal-DMtmJ5ZE.woff2 +0 -0
  72. package/dist/public/assets/geist-latin-wght-normal-Dm3htQBi.woff2 +0 -0
  73. package/dist/public/assets/index-BL9a2Xg9.js +0 -1
  74. package/dist/public/assets/index-BSwXjgjr.js +0 -1
  75. package/dist/public/assets/index-BWl8tn18.js +0 -1
  76. package/dist/public/assets/index-CQh8SXb2.js +0 -94
  77. package/dist/public/assets/index-Cxd-kSUY.js +0 -1
  78. package/dist/public/assets/index-DA5SH--7.js +0 -2
  79. package/dist/public/assets/index-DCHbvtBS.js +0 -1
  80. package/dist/public/assets/index-DCYXJZEe.js +0 -1
  81. package/dist/public/assets/index-DFDfp0ca.js +0 -1
  82. package/dist/public/assets/index-GuAAqSCJ.js +0 -14
  83. package/dist/public/assets/index-WIDirTHx.js +0 -29
  84. package/dist/public/assets/index-X3XZcAzy.js +0 -1
  85. package/dist/public/assets/input-7TQEEJq6.js +0 -1
  86. package/dist/public/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 +0 -0
  87. package/dist/public/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 +0 -0
  88. package/dist/public/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 +0 -0
  89. package/dist/public/assets/inter-greek-wght-normal-CkhJZR-_.woff2 +0 -0
  90. package/dist/public/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
  91. package/dist/public/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
  92. package/dist/public/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 +0 -0
  93. package/dist/public/assets/models-BlUb1eaf.js +0 -1
  94. package/dist/public/assets/styles-PHtUFHUr.css +0 -1
  95. package/dist/public/assets/switch-B_iYUUM3.js +0 -1
  96. package/dist/public/assets/syntax-highlighter-DcBYfnEK.js +0 -6
  97. package/dist/public/assets/textarea-Dm4aaRqS.js +0 -1
  98. package/dist/public/favicon.ico +0 -0
  99. package/dist/public/favicon.png +0 -0
  100. package/dist/public/manifest.json +0 -25
  101. package/dist/public/nous-logo.png +0 -0
  102. package/dist/public/robots.txt +0 -3
  103. package/dist/web-server/_libs/babel__runtime.mjs +0 -237
  104. package/dist/web-server/_libs/character-entities-legacy.mjs +0 -111
  105. package/dist/web-server/_libs/character-reference-invalid.mjs +0 -33
  106. package/dist/web-server/_libs/comma-separated-tokens.mjs +0 -31
  107. package/dist/web-server/_libs/cookie-es.mjs +0 -44
  108. package/dist/web-server/_libs/hast-util-parse-selector.mjs +0 -39
  109. package/dist/web-server/_libs/hastscript.mjs +0 -200
  110. package/dist/web-server/_libs/is-alphabetical.mjs +0 -7
  111. package/dist/web-server/_libs/is-alphanumerical.mjs +0 -8
  112. package/dist/web-server/_libs/is-decimal.mjs +0 -7
  113. package/dist/web-server/_libs/is-hexadecimal.mjs +0 -7
  114. package/dist/web-server/_libs/lowlight.mjs +0 -1
  115. package/dist/web-server/_libs/parse-entities.mjs +0 -245
  116. package/dist/web-server/_libs/react-syntax-highlighter.mjs +0 -941
  117. package/dist/web-server/_libs/refractor.mjs +0 -2425
  118. package/dist/web-server/_libs/seroval-plugins.mjs +0 -58
  119. package/dist/web-server/_libs/seroval.mjs +0 -1775
  120. package/dist/web-server/_libs/space-separated-tokens.mjs +0 -11
  121. package/dist/web-server/_libs/tabler__icons-react.mjs +0 -233
  122. package/dist/web-server/_libs/tanstack__history.mjs +0 -204
  123. package/dist/web-server/_libs/tanstack__query-core.mjs +0 -2552
  124. package/dist/web-server/_libs/tanstack__react-query.mjs +0 -190
  125. package/dist/web-server/_libs/zod.mjs +0 -3915
  126. package/dist/web-server/_libs/zustand.mjs +0 -343
  127. package/dist/web-server/_ssr/index--Bo2_ipW.mjs +0 -277
  128. package/dist/web-server/_ssr/index-BEvygh5x.mjs +0 -612
  129. package/dist/web-server/_ssr/index-BFaKxYfN.mjs +0 -40
  130. package/dist/web-server/_ssr/index-BdrMzRTd.mjs +0 -513
  131. package/dist/web-server/_ssr/index-Cwp8Gyl1.mjs +0 -1812
  132. package/dist/web-server/_ssr/index-DQsfKYjV.mjs +0 -449
  133. package/dist/web-server/_ssr/index-Dbs9k8Ea.mjs +0 -251
  134. package/dist/web-server/_ssr/index-Dk93oyZD.mjs +0 -213
  135. package/dist/web-server/_ssr/index-KNJ7huw_.mjs +0 -369
  136. package/dist/web-server/_ssr/index.mjs +0 -1558
  137. package/dist/web-server/_ssr/input-BV1DMASc.mjs +0 -20
  138. package/dist/web-server/_ssr/models-MzrvbL2i.mjs +0 -43
  139. package/dist/web-server/_ssr/start-HYkvq4Ni.mjs +0 -4
  140. package/dist/web-server/_ssr/switch-Bd-Sg0HG.mjs +0 -33
  141. package/dist/web-server/_ssr/syntax-highlighter-5vezNTce.mjs +0 -62
  142. package/dist/web-server/_ssr/textarea-CB4kQp9w.mjs +0 -18
  143. package/dist/web-server/_tanstack-start-manifest_v-m5lY48LR.mjs +0 -4
  144. package/dist/web-server/index.mjs +0 -611
  145. /package/dist/{web-server → server}/__23tanstack-start-plugin-adapters-Cwee5PKy.mjs +0 -0
  146. /package/dist/{web-server → server}/_libs/bail.mjs +0 -0
  147. /package/dist/{web-server → server}/_libs/ccount.mjs +0 -0
  148. /package/dist/{web-server → server}/_libs/character-entities.mjs +0 -0
  149. /package/dist/{web-server → server}/_libs/class-variance-authority.mjs +0 -0
  150. /package/dist/{web-server → server}/_libs/clsx.mjs +0 -0
  151. /package/dist/{web-server/_libs/croner.mjs → server/_libs/cookie-es.mjs} +0 -0
  152. /package/dist/{web-server/_libs/crossws.mjs → server/_libs/croner.mjs} +0 -0
  153. /package/dist/{web-server/_libs/fault.mjs → server/_libs/crossws.mjs} +0 -0
  154. /package/dist/{web-server → server}/_libs/decode-named-character-reference+[...].mjs +0 -0
  155. /package/dist/{web-server → server}/_libs/devlop.mjs +0 -0
  156. /package/dist/{web-server → server}/_libs/escape-string-regexp.mjs +0 -0
  157. /package/dist/{web-server → server}/_libs/estree-util-is-identifier-name.mjs +0 -0
  158. /package/dist/{web-server → server}/_libs/extend.mjs +0 -0
  159. /package/dist/{web-server → server}/_libs/hast-util-whitespace.mjs +0 -0
  160. /package/dist/{web-server → server}/_libs/hookable.mjs +0 -0
  161. /package/dist/{web-server → server}/_libs/html-url-attributes.mjs +0 -0
  162. /package/dist/{web-server → server}/_libs/inline-style-parser.mjs +0 -0
  163. /package/dist/{web-server → server}/_libs/is-plain-obj.mjs +0 -0
  164. /package/dist/{web-server → server}/_libs/isbot.mjs +0 -0
  165. /package/dist/{web-server → server}/_libs/longest-streak.mjs +0 -0
  166. /package/dist/{web-server → server}/_libs/markdown-table.mjs +0 -0
  167. /package/dist/{web-server → server}/_libs/mdast-util-find-and-replace.mjs +0 -0
  168. /package/dist/{web-server → server}/_libs/mdast-util-gfm-footnote.mjs +0 -0
  169. /package/dist/{web-server → server}/_libs/mdast-util-gfm-strikethrough.mjs +0 -0
  170. /package/dist/{web-server → server}/_libs/mdast-util-gfm-table.mjs +0 -0
  171. /package/dist/{web-server → server}/_libs/mdast-util-gfm-task-list-item.mjs +0 -0
  172. /package/dist/{web-server → server}/_libs/mdast-util-gfm.mjs +0 -0
  173. /package/dist/{web-server → server}/_libs/mdast-util-phrasing.mjs +0 -0
  174. /package/dist/{web-server → server}/_libs/mdast-util-to-markdown.mjs +0 -0
  175. /package/dist/{web-server → server}/_libs/mdast-util-to-string.mjs +0 -0
  176. /package/dist/{web-server → server}/_libs/micromark-extension-gfm-strikethrough+[...].mjs +0 -0
  177. /package/dist/{web-server → server}/_libs/micromark-extension-gfm-tagfilter+[...].mjs +0 -0
  178. /package/dist/{web-server → server}/_libs/micromark-extension-gfm.mjs +0 -0
  179. /package/dist/{web-server → server}/_libs/micromark-factory-title.mjs +0 -0
  180. /package/dist/{web-server → server}/_libs/micromark-util-chunked.mjs +0 -0
  181. /package/dist/{web-server → server}/_libs/micromark-util-combine-extensions+[...].mjs +0 -0
  182. /package/dist/{web-server → server}/_libs/micromark-util-decode-numeric-character-reference+[...].mjs +0 -0
  183. /package/dist/{web-server → server}/_libs/micromark-util-decode-string.mjs +0 -0
  184. /package/dist/{web-server → server}/_libs/micromark-util-encode.mjs +0 -0
  185. /package/dist/{web-server → server}/_libs/micromark-util-normalize-identifier+[...].mjs +0 -0
  186. /package/dist/{web-server → server}/_libs/micromark-util-resolve-all.mjs +0 -0
  187. /package/dist/{web-server → server}/_libs/micromark-util-subtokenize.mjs +0 -0
  188. /package/dist/{web-server → server}/_libs/ocache.mjs +0 -0
  189. /package/dist/{web-server → server}/_libs/ohash.mjs +0 -0
  190. /package/dist/{web-server → server}/_libs/react-markdown.mjs +0 -0
  191. /package/dist/{web-server → server}/_libs/remark-gfm.mjs +0 -0
  192. /package/dist/{web-server → server}/_libs/remark-parse.mjs +0 -0
  193. /package/dist/{web-server → server}/_libs/remark-rehype.mjs +0 -0
  194. /package/dist/{web-server → server}/_libs/reselect.mjs +0 -0
  195. /package/dist/{web-server → server}/_libs/rou3.mjs +0 -0
  196. /package/dist/{web-server/_libs/format.mjs → server/_libs/seroval-plugins.mjs} +0 -0
  197. /package/dist/{web-server/_libs/highlight.js.mjs → server/_libs/seroval.mjs} +0 -0
  198. /package/dist/{web-server → server}/_libs/srvx.mjs +0 -0
  199. /package/dist/{web-server → server}/_libs/style-to-js.mjs +0 -0
  200. /package/dist/{web-server → server}/_libs/style-to-object.mjs +0 -0
  201. /package/dist/{web-server → server}/_libs/tanstack__react-store.mjs +0 -0
  202. /package/dist/{web-server → server}/_libs/tanstack__store.mjs +0 -0
  203. /package/dist/{web-server → server}/_libs/trim-lines.mjs +0 -0
  204. /package/dist/{web-server → server}/_libs/trough.mjs +0 -0
  205. /package/dist/{web-server → server}/_libs/ufo.mjs +0 -0
  206. /package/dist/{web-server → server}/_libs/unctx.mjs +0 -0
  207. /package/dist/{web-server → server}/_libs/ungap__structured-clone.mjs +0 -0
  208. /package/dist/{web-server → server}/_libs/unified.mjs +0 -0
  209. /package/dist/{web-server → server}/_libs/unist-util-is.mjs +0 -0
  210. /package/dist/{web-server → server}/_libs/unist-util-stringify-position.mjs +0 -0
  211. /package/dist/{web-server → server}/_libs/unist-util-visit-parents.mjs +0 -0
  212. /package/dist/{web-server → server}/_libs/unist-util-visit.mjs +0 -0
  213. /package/dist/{web-server → server}/_libs/unstorage.mjs +0 -0
  214. /package/dist/{web-server → server}/_libs/vfile-message.mjs +0 -0
  215. /package/dist/{web-server → server}/_libs/vfile.mjs +0 -0
  216. /package/dist/{web-server → server}/_libs/zwitch.mjs +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hermium",
3
- "version": "0.1.10",
3
+ "version": "0.3.0",
4
4
  "description": "Hermium CLI — self-hosted AI chat dashboard for Hermes Agent",
5
5
  "repository": {
6
6
  "type": "git",
@@ -27,9 +27,10 @@
27
27
  "dist"
28
28
  ],
29
29
  "scripts": {
30
- "build": "node scripts/build.mjs"
30
+ "build": "node scripts/build.mjs",
31
+ "clean": "rm -rf dist .turbo"
31
32
  },
32
33
  "dependencies": {
33
34
  "picocolors": "^1.1.1"
34
35
  }
35
- }
36
+ }
@@ -1 +0,0 @@
1
- import{c as e}from"./index-CQh8SXb2.js";const t=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M12 8v4",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]],o=e("outline","alert-circle","AlertCircle",t);export{o as I};
@@ -1 +0,0 @@
1
- import{c as e}from"./index-CQh8SXb2.js";const t=[["path",{d:"M12 9v4",key:"svg-0"}],["path",{d:"M10.363 3.591l-8.106 13.534a1.914 1.914 0 0 0 1.636 2.871h16.214a1.914 1.914 0 0 0 1.636 -2.87l-8.106 -13.536a1.914 1.914 0 0 0 -3.274 0",key:"svg-1"}],["path",{d:"M12 16h.01",key:"svg-2"}]],o=e("outline","alert-triangle","AlertTriangle",t);export{o as I};
@@ -1 +0,0 @@
1
- import{c}from"./index-CQh8SXb2.js";const e=[["path",{d:"M5 12l5 5l10 -10",key:"svg-0"}]],t=c("outline","check","Check",e);export{t as I};
@@ -1 +0,0 @@
1
- import{c as o}from"./index-CQh8SXb2.js";const e=[["path",{d:"M12 5l0 14",key:"svg-0"}],["path",{d:"M18 11l-6 -6",key:"svg-1"}],["path",{d:"M6 11l6 -6",key:"svg-2"}]],s=o("outline","arrow-up","ArrowUp",e);const t=[["path",{d:"M7 8l-4 4l4 4",key:"svg-0"}],["path",{d:"M17 8l4 4l-4 4",key:"svg-1"}],["path",{d:"M14 4l-4 16",key:"svg-2"}]],c=o("outline","code","Code",t);export{c as I,s as a};
@@ -1 +0,0 @@
1
- import{c as o}from"./index-CQh8SXb2.js";const e=[["path",{d:"M12 3a9 9 0 1 0 9 9",key:"svg-0"}]],t=o("outline","loader-2","Loader2",e);export{t as I};
@@ -1 +0,0 @@
1
- import{c as e}from"./index-CQh8SXb2.js";const o=[["path",{d:"M20 11a8.1 8.1 0 0 0 -15.5 -2m-.5 -4v4h4",key:"svg-0"}],["path",{d:"M4 13a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4",key:"svg-1"}]],s=e("outline","refresh","Refresh",o);export{s as I};
@@ -1 +0,0 @@
1
- import{c as i,o as j,L as N,j as e,M as b,k as y,O as k,P as w,r as m,Q as M,S}from"./index-CQh8SXb2.js";const _=[["path",{d:"M17 7l-10 10",key:"svg-0"}],["path",{d:"M8 7l9 0l0 9",key:"svg-1"}]],u=i("outline","arrow-up-right","ArrowUpRight",_);const C=[["path",{d:"M15 10l-4 4l6 6l4 -16l-18 7l4 2l2 6l3 -4",key:"svg-0"}]],z=i("outline","brand-telegram","BrandTelegram",C);const A=[["path",{d:"M12 3l8 4.5l0 9l-8 4.5l-8 -4.5l0 -9l8 -4.5",key:"svg-0"}],["path",{d:"M12 12l8 -4.5",key:"svg-1"}],["path",{d:"M12 12l0 9",key:"svg-2"}],["path",{d:"M12 12l-8 -4.5",key:"svg-3"}],["path",{d:"M16 5.25l-8 4.5",key:"svg-4"}]],I=i("outline","package","Package",A);const T=[["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 0 0 -18 0",key:"svg-0"}],["path",{d:"M3.6 9h16.8",key:"svg-1"}],["path",{d:"M3.6 15h16.8",key:"svg-2"}],["path",{d:"M11.5 3a17 17 0 0 0 0 18",key:"svg-3"}],["path",{d:"M12.5 3a17 17 0 0 1 0 18",key:"svg-4"}]],L=i("outline","world","World",T);function P(){return j({queryKey:["models"],queryFn:N,staleTime:3e5,gcTime:6e5,refetchOnWindowFocus:!1})}const p={appearance:{icon:k,title:"Appearance",description:"Choose your preferred theme",get content(){return e.jsx(W,{})}},model:{icon:y,title:"Model",description:"Choose your default AI model",get content(){return e.jsx(H,{})}},about:{icon:b,title:"About",description:"Links and community",get content(){return e.jsx(B,{})}}};function B(){const{data:s}=w();return e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-3.5 rounded-xl border border-border bg-background px-4 py-3 shadow-sm",children:[e.jsx("div",{className:"flex size-9 shrink-0 items-center justify-center rounded-lg bg-violet-50 dark:bg-violet-950/40",children:e.jsx(I,{className:"size-5 text-violet-600 dark:text-violet-400"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("div",{className:"font-medium",children:"Hermium"}),e.jsxs("div",{className:"text-xs text-muted-foreground",children:[s?.current?`Version ${s.current}`:"Loading version...",s?.outdated&&s.latest&&e.jsxs("span",{className:"ml-1.5 text-amber-600 dark:text-amber-400",children:["(v",s.latest," available)"]})]})]})]}),e.jsxs("a",{href:"https://github.com/abboskhonov/hermium",target:"_blank",rel:"noopener noreferrer",className:"group flex items-center gap-3.5 rounded-xl border border-border bg-background px-4 py-3 text-sm text-foreground shadow-sm hover:border-foreground/20 hover:shadow-md transition-all",children:[e.jsx("div",{className:"flex size-9 shrink-0 items-center justify-center rounded-lg bg-neutral-100 dark:bg-neutral-800",children:e.jsx(b,{className:"size-5 text-neutral-700 dark:text-neutral-300"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("div",{className:"font-medium",children:"GitHub"}),e.jsx("div",{className:"text-xs text-muted-foreground truncate",children:"abboskhonov/hermium"})]}),e.jsx(u,{className:"size-4 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity shrink-0"})]}),e.jsxs("a",{href:"https://hermium.vercel.app",target:"_blank",rel:"noopener noreferrer",className:"group flex items-center gap-3.5 rounded-xl border border-border bg-background px-4 py-3 text-sm text-foreground shadow-sm hover:border-foreground/20 hover:shadow-md transition-all",children:[e.jsx("div",{className:"flex size-9 shrink-0 items-center justify-center rounded-lg bg-emerald-50 dark:bg-emerald-950/40",children:e.jsx(L,{className:"size-5 text-emerald-600 dark:text-emerald-400"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("div",{className:"font-medium",children:"Website"}),e.jsx("div",{className:"text-xs text-muted-foreground truncate",children:"hermium.vercel.app"})]}),e.jsx(u,{className:"size-4 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity shrink-0"})]}),e.jsxs("a",{href:"https://t.me/hermium_chat",target:"_blank",rel:"noopener noreferrer",className:"group flex items-center gap-3.5 rounded-xl border border-border bg-background px-4 py-3 text-sm text-foreground shadow-sm hover:border-foreground/20 hover:shadow-md transition-all",children:[e.jsx("div",{className:"flex size-9 shrink-0 items-center justify-center rounded-lg bg-sky-50 dark:bg-sky-950/40",children:e.jsx(z,{className:"size-5 text-sky-500 dark:text-sky-400"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("div",{className:"font-medium",children:"Telegram"}),e.jsx("div",{className:"text-xs text-muted-foreground truncate",children:"@hermium_chat"})]}),e.jsx(u,{className:"size-4 text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity shrink-0"})]})]})}function H(){const{data:s,isLoading:a}=P(),[r,n]=m.useState(""),[c,h]=m.useState(!1),f=s?.models??[],l=s?.default_model,o=r||l||"",v=m.useCallback(async()=>{if(o){h(!0);try{await M({model:o})}catch{}finally{h(!1)}}},[o]);return e.jsxs("div",{className:"space-y-3",children:[e.jsx("label",{className:"text-sm font-medium text-foreground",children:"Active Model"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Pick the model your Hermes agent currently uses."}),a?e.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading…"}):f.length===0?e.jsxs("div",{className:"text-sm text-muted-foreground",children:["No models found. Check your ",e.jsx("code",{children:"~/.hermes/config.yaml"}),"."]}):e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("select",{value:o,onChange:d=>n(d.target.value),className:"rounded-lg border border-border bg-background px-3 py-2 text-sm text-foreground shadow-sm outline-none focus-visible:ring-2 focus-visible:ring-ring min-w-[240px]",children:f.map(d=>e.jsx("option",{value:d.id,children:d.name},d.id))}),e.jsx("button",{onClick:v,disabled:c||!o||o===l,className:t("rounded-lg px-4 py-2 text-sm font-medium transition-colors",c||!o||o===l?"bg-muted text-muted-foreground cursor-not-allowed":"bg-primary text-primary-foreground hover:bg-primary/90"),children:c?"Saving…":"Save"})]}),l&&e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Current: ",e.jsx("span",{className:"font-medium text-foreground",children:l})]})]})}function R({variant:s}){const a=s==="light";return e.jsx("div",{className:"relative w-full aspect-[16/10] overflow-hidden rounded-lg",children:s==="system"?e.jsxs("div",{className:"flex h-full w-full",children:[e.jsxs("div",{className:"flex h-full w-1/2 bg-neutral-100",children:[e.jsx(x,{light:!0}),e.jsx(g,{light:!0})]}),e.jsxs("div",{className:"flex h-full w-1/2 bg-neutral-900",children:[e.jsx(x,{light:!1}),e.jsx(g,{light:!1})]})]}):e.jsxs("div",{className:t("flex h-full w-full",a?"bg-neutral-100":"bg-neutral-900"),children:[e.jsx(x,{light:a}),e.jsx(g,{light:a})]})})}function x({light:s}){const a=s?"bg-white":"bg-neutral-800",r=s?"bg-neutral-200":"bg-neutral-700",n=s?"bg-neutral-300":"bg-neutral-600";return e.jsxs("div",{className:t("flex w-[28%] flex-col gap-1.5 p-1.5",a),children:[e.jsx("div",{className:t("h-1.5 w-4 rounded-sm",n)}),e.jsx("div",{className:t("mt-1 h-0.5 w-full rounded-sm",r)}),e.jsx("div",{className:t("h-0.5 w-3/4 rounded-sm",r)}),e.jsx("div",{className:t("h-0.5 w-5/6 rounded-sm",r)}),e.jsx("div",{className:t("mt-auto h-0.5 w-2/3 rounded-sm",r)})]})}function g({light:s}){const a=s?"bg-neutral-50":"bg-neutral-950",r=s?"bg-neutral-200":"bg-neutral-700",n=s?"bg-neutral-100":"bg-neutral-800";return e.jsxs("div",{className:t("flex flex-1 flex-col gap-1.5 p-1.5",a),children:[e.jsx("div",{className:t("h-2 w-full rounded-sm",n)}),e.jsx("div",{className:t("ml-auto h-2 w-2/3 rounded-sm",r)}),e.jsx("div",{className:t("h-2 w-5/6 rounded-sm",n)}),e.jsx("div",{className:t("ml-auto h-2 w-1/2 rounded-sm",r)}),e.jsx("div",{className:t("mt-auto h-1.5 w-full rounded-sm",s?"bg-white":"bg-neutral-800")})]})}function W(){const{theme:s,setTheme:a}=S();return e.jsxs("div",{className:"space-y-1.5",children:[e.jsx("label",{className:"text-sm font-medium text-foreground",children:"Theme"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Choose how Hermium looks for you."}),e.jsx("div",{className:"grid grid-cols-3 gap-3 pt-1",children:[{id:"light",label:"Light"},{id:"dark",label:"Dark"},{id:"system",label:"System"}].map(r=>{const n=r.id===s;return e.jsxs("button",{onClick:()=>a(r.id),className:t("flex flex-col items-center gap-2 rounded-xl border p-2 text-xs font-medium transition-all",n?"border-[#2563eb] bg-primary/5 text-foreground ring-1 ring-[#2563eb]":"border-border text-muted-foreground hover:border-foreground/20 hover:text-foreground"),children:[e.jsx(R,{variant:r.id}),r.label]},r.id)})})]})}function t(...s){return s.filter(Boolean).join(" ")}function U({section:s}){const a=s&&s in p?s:"appearance",r=p[a];return e.jsx("div",{className:"flex-1 overflow-y-auto",children:e.jsxs("div",{className:"mx-auto max-w-2xl px-8 py-8",children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"text-lg font-semibold text-foreground",children:r.title}),e.jsx("p",{className:"text-sm text-muted-foreground mt-0.5",children:r.description})]}),e.jsx("div",{className:"rounded-xl border border-border bg-card p-6",children:r.content})]})})}export{H as M,U as S};
@@ -1 +0,0 @@
1
- import{R as o,j as e}from"./index-CQh8SXb2.js";import{S as s}from"./index-BL9a2Xg9.js";function i(){const{section:t}=o.useSearch();return e.jsx(s,{section:t})}export{i as component};
@@ -1 +0,0 @@
1
- import{u as c,l as r,r as o,a as u,j as i}from"./index-CQh8SXb2.js";function f(){const s=c(),a=r(e=>e.sessionsLoaded),t=r(e=>e.sessions),n=o.useRef(!1);return o.useEffect(()=>{if(a)if(t.length>0)s({to:"/chat/$sessionId",params:{sessionId:t[0].id},replace:!0});else{if(n.current)return;n.current=!0,u().then(e=>{s({to:"/chat/$sessionId",params:{sessionId:e.id},replace:!0})}).catch(()=>{n.current=!1})}},[a,t,s]),i.jsx("div",{className:"flex flex-1 items-center justify-center",children:i.jsx("p",{className:"text-sm text-muted-foreground",children:"Loading conversations…"})})}export{f as component};