ocean-brain 0.7.5 → 0.8.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 (263) hide show
  1. package/dist/index.js +3 -3
  2. package/dist/mcp.js +180 -736
  3. package/package.json +6 -2
  4. package/server/client/dist/assets/ArrowRight.es-CbA8ey6a.js +1 -0
  5. package/server/client/dist/assets/{Calendar-Bc2zJueR.js → Calendar-CgWgr1BV.js} +2 -2
  6. package/server/client/dist/assets/Callout-DKruIT0f.js +1 -0
  7. package/server/client/dist/assets/Copy.es-DFbgpaNJ.js +1 -0
  8. package/server/client/dist/assets/Graph-kCltGRlY.js +1 -0
  9. package/server/client/dist/assets/{Image-DxWhlIDG.js → Image-7W0DZwMo.js} +1 -1
  10. package/server/client/dist/assets/Image.es-5pXLx9TU.js +1 -0
  11. package/server/client/dist/assets/Note-BW6Np_5g.js +20 -0
  12. package/server/client/dist/assets/Plus.es-B0sg64VJ.js +1 -0
  13. package/server/client/dist/assets/Reminders-C10fHQcl.js +1 -0
  14. package/server/client/dist/assets/Search-tf2nV4v0.js +1 -0
  15. package/server/client/dist/assets/{SurfaceCard-CkAVMLPs.js → SurfaceCard-pydtvHfu.js} +1 -1
  16. package/server/client/dist/assets/Tag-uCoYbISy.js +1 -0
  17. package/server/client/dist/assets/TagNotes-CqOcQiRw.js +1 -0
  18. package/server/client/dist/assets/Trash.es-w32Goxfa.js +1 -0
  19. package/server/client/dist/assets/ViewNotes-slPXXoOY.js +1 -0
  20. package/server/client/dist/assets/ViewSectionDialog-brTrsF6G.js +102 -0
  21. package/server/client/dist/assets/Views-B_wsb-XJ.js +1 -0
  22. package/server/client/dist/assets/{graph-vendor-CUxe67Lr.js → graph-vendor-BAF95C0g.js} +2 -2
  23. package/server/client/dist/assets/image.api-CYsjXiMr.js +17 -0
  24. package/server/client/dist/assets/index-BR05aSXr.js +342 -0
  25. package/server/client/dist/assets/{index-D3BfroIT.js → index-D83QbOcw.js} +1 -1
  26. package/server/client/dist/assets/{index-C5BGzDgt.css → index-DPI6YoDt.css} +1 -1
  27. package/server/client/dist/assets/manage-image-BYIhWu56.js +1 -0
  28. package/server/client/dist/assets/{manage-image-detail-C8Q7K7I3.js → manage-image-detail-6KgmQvbN.js} +1 -1
  29. package/server/client/dist/assets/mcp-Dd98N9Hq.js +4 -0
  30. package/server/client/dist/assets/mcp-admin-adapter-DOgBsYpl.js +1 -0
  31. package/server/client/dist/assets/note-core-CMGUaW1v.js +176 -0
  32. package/server/client/dist/assets/note-vendor-Hoz9Q4-4.js +54 -0
  33. package/server/client/dist/assets/{placeholder-Cr_nI8UI.js → placeholder-siHGg9aK.js} +4 -4
  34. package/server/client/dist/assets/{properties-CvYWJWUM.js → properties-CyVRKgcT.js} +1 -1
  35. package/server/client/dist/assets/tag.api-CwmC8crB.js +21 -0
  36. package/server/client/dist/assets/trash-wojQBK9Z.js +1 -0
  37. package/server/client/dist/assets/{useReminderMutate-CDmIEwsw.js → useReminderMutate-DuVKxpBh.js} +1 -1
  38. package/server/client/dist/index.html +5 -5
  39. package/server/dist/app.js +0 -1
  40. package/server/dist/features/auth/http/api.js +0 -1
  41. package/server/dist/features/auth/http/login-page.js +272 -5
  42. package/server/dist/features/auth/http/pages.js +20 -3
  43. package/server/dist/features/auth/service.js +3 -2
  44. package/server/dist/features/cache/graphql/cache.field.resolver.js +0 -1
  45. package/server/dist/features/cache/graphql/cache.mutation.resolver.js +0 -1
  46. package/server/dist/features/cache/graphql/cache.query.resolver.js +0 -1
  47. package/server/dist/features/cache/graphql/cache.resolver.js +0 -1
  48. package/server/dist/features/cache/graphql/cache.type-defs.js +0 -1
  49. package/server/dist/features/cache/graphql/index.js +0 -1
  50. package/server/dist/features/image/graphql/image.field.resolver.js +0 -1
  51. package/server/dist/features/image/graphql/image.mutation.resolver.js +0 -1
  52. package/server/dist/features/image/graphql/image.query.resolver.js +0 -1
  53. package/server/dist/features/image/graphql/image.resolver.js +0 -1
  54. package/server/dist/features/image/graphql/image.type-defs.js +0 -1
  55. package/server/dist/features/image/graphql/index.js +0 -1
  56. package/server/dist/features/image/http/upload.js +34 -24
  57. package/server/dist/features/image/services/delete.js +0 -1
  58. package/server/dist/features/image/services/upload.js +0 -1
  59. package/server/dist/features/image/services/validation.js +110 -0
  60. package/server/dist/features/mcp-admin/http/handlers.js +11 -4
  61. package/server/dist/features/mcp-admin/service.js +0 -1
  62. package/server/dist/features/note/graphql/index.js +0 -1
  63. package/server/dist/features/note/graphql/note.field.resolver.js +0 -1
  64. package/server/dist/features/note/graphql/note.mutation.resolver.js +0 -1
  65. package/server/dist/features/note/graphql/note.query.resolver.js +0 -1
  66. package/server/dist/features/note/graphql/note.resolver.js +0 -1
  67. package/server/dist/features/note/graphql/note.type-defs.js +0 -1
  68. package/server/dist/features/note/http/mcp.js +8 -44
  69. package/server/dist/features/note/services/authoring.js +0 -1
  70. package/server/dist/features/note/services/cleanup.js +2 -3
  71. package/server/dist/features/note/services/content-blocks.js +0 -1
  72. package/server/dist/features/note/services/markdown-intent-write.js +11 -44
  73. package/server/dist/features/note/services/markdown-patch.js +4 -124
  74. package/server/dist/features/note/services/properties.js +0 -1
  75. package/server/dist/features/note/services/search-backfill.js +0 -1
  76. package/server/dist/features/note/services/search.js +0 -1
  77. package/server/dist/features/note/services/snapshot.js +0 -1
  78. package/server/dist/features/note/services/tag-filter.js +0 -1
  79. package/server/dist/features/note/services/trash.js +0 -1
  80. package/server/dist/features/note/services/write-conflict.js +0 -1
  81. package/server/dist/features/note/services/write.js +13 -14
  82. package/server/dist/features/placeholder/graphql/index.js +0 -1
  83. package/server/dist/features/placeholder/graphql/placeholder.field.resolver.js +0 -1
  84. package/server/dist/features/placeholder/graphql/placeholder.mutation.resolver.js +0 -1
  85. package/server/dist/features/placeholder/graphql/placeholder.query.resolver.js +0 -1
  86. package/server/dist/features/placeholder/graphql/placeholder.resolver.js +0 -1
  87. package/server/dist/features/placeholder/graphql/placeholder.type-defs.js +0 -1
  88. package/server/dist/features/reminder/graphql/index.js +0 -1
  89. package/server/dist/features/reminder/graphql/reminder.field.resolver.js +0 -1
  90. package/server/dist/features/reminder/graphql/reminder.mutation.resolver.js +0 -1
  91. package/server/dist/features/reminder/graphql/reminder.query.resolver.js +0 -1
  92. package/server/dist/features/reminder/graphql/reminder.resolver.js +0 -1
  93. package/server/dist/features/reminder/graphql/reminder.type-defs.js +0 -1
  94. package/server/dist/features/tag/graphql/index.js +0 -1
  95. package/server/dist/features/tag/graphql/tag.field.resolver.js +0 -1
  96. package/server/dist/features/tag/graphql/tag.mutation.resolver.js +0 -1
  97. package/server/dist/features/tag/graphql/tag.query.resolver.js +16 -2
  98. package/server/dist/features/tag/graphql/tag.resolver.js +0 -1
  99. package/server/dist/features/tag/graphql/tag.type-defs.js +2 -1
  100. package/server/dist/features/tag/http/mcp.js +0 -1
  101. package/server/dist/features/tag/services/organization.js +0 -1
  102. package/server/dist/features/view/graphql/index.js +0 -1
  103. package/server/dist/features/view/graphql/view.mutation.resolver.js +0 -1
  104. package/server/dist/features/view/graphql/view.query.resolver.js +0 -1
  105. package/server/dist/features/view/graphql/view.resolver.js +0 -1
  106. package/server/dist/features/view/graphql/view.type-defs.js +0 -1
  107. package/server/dist/features/view/services/workspace.js +0 -1
  108. package/server/dist/main.js +0 -1
  109. package/server/dist/models.js +0 -1
  110. package/server/dist/modules/app-version.js +104 -0
  111. package/server/dist/modules/auth-guard.js +0 -1
  112. package/server/dist/modules/auth-mode.js +0 -1
  113. package/server/dist/modules/auth-redirect.js +0 -1
  114. package/server/dist/modules/blocknote-markdown-editor.js +53 -0
  115. package/server/dist/modules/blocknote-tree.js +0 -1
  116. package/server/dist/modules/blocknote.js +10 -4
  117. package/server/dist/modules/data-maintenance.js +0 -1
  118. package/server/dist/modules/error-handler.js +0 -1
  119. package/server/dist/modules/graphql.js +0 -1
  120. package/server/dist/modules/logger.js +0 -1
  121. package/server/dist/modules/mcp-auth.js +62 -2
  122. package/server/dist/modules/mcp-token.js +0 -1
  123. package/server/dist/modules/prisma-runtime.js +0 -1
  124. package/server/dist/modules/rate-limit.js +0 -1
  125. package/server/dist/modules/recovery-retention.js +0 -1
  126. package/server/dist/modules/server-events-handler.js +0 -1
  127. package/server/dist/modules/server-events.js +0 -1
  128. package/server/dist/modules/session-store.js +0 -1
  129. package/server/dist/modules/use-async.js +0 -1
  130. package/server/dist/paths.js +1 -1
  131. package/server/dist/routes/api.js +2 -9
  132. package/server/dist/routes/auth-pages.js +0 -1
  133. package/server/dist/routes/client.js +51 -2
  134. package/server/dist/routes/graphql.js +0 -1
  135. package/server/dist/routes/index.js +0 -1
  136. package/server/dist/routes/mcp.js +0 -1
  137. package/server/dist/schema/index.js +0 -1
  138. package/server/dist/start.js +0 -1
  139. package/server/dist/types/index.js +0 -1
  140. package/server/dist/types/input.js +0 -1
  141. package/server/client/dist/assets/Callout-B4kA_Cvr.js +0 -1
  142. package/server/client/dist/assets/Graph-uq5jfJgt.js +0 -1
  143. package/server/client/dist/assets/Image.es-BpAOJjJT.js +0 -1
  144. package/server/client/dist/assets/Note-Bo8ZYRP-.js +0 -22
  145. package/server/client/dist/assets/Plus.es-Dc_js8AC.js +0 -1
  146. package/server/client/dist/assets/Reminders-lj7Equld.js +0 -1
  147. package/server/client/dist/assets/Search-1wcRO5--.js +0 -1
  148. package/server/client/dist/assets/Tag-CeygwFfv.js +0 -1
  149. package/server/client/dist/assets/TagNotes-B8DqItxw.js +0 -1
  150. package/server/client/dist/assets/Trash.es-OuQVb_SX.js +0 -1
  151. package/server/client/dist/assets/ViewNotes-BH7PbdOD.js +0 -1
  152. package/server/client/dist/assets/ViewSectionTableRenderer-BJwhd5be.js +0 -102
  153. package/server/client/dist/assets/Views-eYFtsdFj.js +0 -1
  154. package/server/client/dist/assets/image.api-C0eYGCeH.js +0 -17
  155. package/server/client/dist/assets/index-jIfkRdY_.js +0 -361
  156. package/server/client/dist/assets/manage-image-C0YwkLIP.js +0 -1
  157. package/server/client/dist/assets/mcp-DHHhTLC8.js +0 -1
  158. package/server/client/dist/assets/note-core-Z6kqulGB.js +0 -180
  159. package/server/client/dist/assets/note-vendor-i1M2FSI2.js +0 -54
  160. package/server/client/dist/assets/trash-DA27aW7L.js +0 -1
  161. package/server/client/dist/fonts/Pretendard-Bold.woff +0 -0
  162. package/server/client/dist/fonts/Pretendard-Regular.woff +0 -0
  163. package/server/dist/app.js.map +0 -1
  164. package/server/dist/features/auth/http/api.js.map +0 -1
  165. package/server/dist/features/auth/http/login-page.js.map +0 -1
  166. package/server/dist/features/auth/http/pages.js.map +0 -1
  167. package/server/dist/features/auth/service.js.map +0 -1
  168. package/server/dist/features/cache/graphql/cache.field.resolver.js.map +0 -1
  169. package/server/dist/features/cache/graphql/cache.mutation.resolver.js.map +0 -1
  170. package/server/dist/features/cache/graphql/cache.query.resolver.js.map +0 -1
  171. package/server/dist/features/cache/graphql/cache.resolver.js.map +0 -1
  172. package/server/dist/features/cache/graphql/cache.type-defs.js.map +0 -1
  173. package/server/dist/features/cache/graphql/index.js.map +0 -1
  174. package/server/dist/features/image/graphql/image.field.resolver.js.map +0 -1
  175. package/server/dist/features/image/graphql/image.mutation.resolver.js.map +0 -1
  176. package/server/dist/features/image/graphql/image.query.resolver.js.map +0 -1
  177. package/server/dist/features/image/graphql/image.resolver.js.map +0 -1
  178. package/server/dist/features/image/graphql/image.type-defs.js.map +0 -1
  179. package/server/dist/features/image/graphql/index.js.map +0 -1
  180. package/server/dist/features/image/http/upload.js.map +0 -1
  181. package/server/dist/features/image/services/delete.js.map +0 -1
  182. package/server/dist/features/image/services/remote-fetch.js +0 -176
  183. package/server/dist/features/image/services/remote-fetch.js.map +0 -1
  184. package/server/dist/features/image/services/upload.js.map +0 -1
  185. package/server/dist/features/mcp-admin/http/handlers.js.map +0 -1
  186. package/server/dist/features/mcp-admin/service.js.map +0 -1
  187. package/server/dist/features/note/graphql/index.js.map +0 -1
  188. package/server/dist/features/note/graphql/note.field.resolver.js.map +0 -1
  189. package/server/dist/features/note/graphql/note.mutation.resolver.js.map +0 -1
  190. package/server/dist/features/note/graphql/note.query.resolver.js.map +0 -1
  191. package/server/dist/features/note/graphql/note.resolver.js.map +0 -1
  192. package/server/dist/features/note/graphql/note.type-defs.js.map +0 -1
  193. package/server/dist/features/note/http/mcp.js.map +0 -1
  194. package/server/dist/features/note/services/authoring.js.map +0 -1
  195. package/server/dist/features/note/services/cleanup.js.map +0 -1
  196. package/server/dist/features/note/services/content-blocks.js.map +0 -1
  197. package/server/dist/features/note/services/markdown-intent-write.js.map +0 -1
  198. package/server/dist/features/note/services/markdown-patch.js.map +0 -1
  199. package/server/dist/features/note/services/properties.js.map +0 -1
  200. package/server/dist/features/note/services/search-backfill.js.map +0 -1
  201. package/server/dist/features/note/services/search.js.map +0 -1
  202. package/server/dist/features/note/services/snapshot.js.map +0 -1
  203. package/server/dist/features/note/services/tag-filter.js.map +0 -1
  204. package/server/dist/features/note/services/trash.js.map +0 -1
  205. package/server/dist/features/note/services/write-conflict.js.map +0 -1
  206. package/server/dist/features/note/services/write.js.map +0 -1
  207. package/server/dist/features/placeholder/graphql/index.js.map +0 -1
  208. package/server/dist/features/placeholder/graphql/placeholder.field.resolver.js.map +0 -1
  209. package/server/dist/features/placeholder/graphql/placeholder.mutation.resolver.js.map +0 -1
  210. package/server/dist/features/placeholder/graphql/placeholder.query.resolver.js.map +0 -1
  211. package/server/dist/features/placeholder/graphql/placeholder.resolver.js.map +0 -1
  212. package/server/dist/features/placeholder/graphql/placeholder.type-defs.js.map +0 -1
  213. package/server/dist/features/reminder/graphql/index.js.map +0 -1
  214. package/server/dist/features/reminder/graphql/reminder.field.resolver.js.map +0 -1
  215. package/server/dist/features/reminder/graphql/reminder.mutation.resolver.js.map +0 -1
  216. package/server/dist/features/reminder/graphql/reminder.query.resolver.js.map +0 -1
  217. package/server/dist/features/reminder/graphql/reminder.resolver.js.map +0 -1
  218. package/server/dist/features/reminder/graphql/reminder.type-defs.js.map +0 -1
  219. package/server/dist/features/tag/graphql/index.js.map +0 -1
  220. package/server/dist/features/tag/graphql/tag.field.resolver.js.map +0 -1
  221. package/server/dist/features/tag/graphql/tag.mutation.resolver.js.map +0 -1
  222. package/server/dist/features/tag/graphql/tag.query.resolver.js.map +0 -1
  223. package/server/dist/features/tag/graphql/tag.resolver.js.map +0 -1
  224. package/server/dist/features/tag/graphql/tag.type-defs.js.map +0 -1
  225. package/server/dist/features/tag/http/mcp.js.map +0 -1
  226. package/server/dist/features/tag/services/organization.js.map +0 -1
  227. package/server/dist/features/view/graphql/index.js.map +0 -1
  228. package/server/dist/features/view/graphql/view.mutation.resolver.js.map +0 -1
  229. package/server/dist/features/view/graphql/view.query.resolver.js.map +0 -1
  230. package/server/dist/features/view/graphql/view.resolver.js.map +0 -1
  231. package/server/dist/features/view/graphql/view.type-defs.js.map +0 -1
  232. package/server/dist/features/view/services/workspace.js.map +0 -1
  233. package/server/dist/main.js.map +0 -1
  234. package/server/dist/models.js.map +0 -1
  235. package/server/dist/modules/auth-guard.js.map +0 -1
  236. package/server/dist/modules/auth-mode.js.map +0 -1
  237. package/server/dist/modules/auth-redirect.js.map +0 -1
  238. package/server/dist/modules/blocknote-tree.js.map +0 -1
  239. package/server/dist/modules/blocknote.js.map +0 -1
  240. package/server/dist/modules/data-maintenance.js.map +0 -1
  241. package/server/dist/modules/error-handler.js.map +0 -1
  242. package/server/dist/modules/graphql.js.map +0 -1
  243. package/server/dist/modules/logger.js.map +0 -1
  244. package/server/dist/modules/mcp-auth.js.map +0 -1
  245. package/server/dist/modules/mcp-token.js.map +0 -1
  246. package/server/dist/modules/prisma-runtime.js.map +0 -1
  247. package/server/dist/modules/rate-limit.js.map +0 -1
  248. package/server/dist/modules/recovery-retention.js.map +0 -1
  249. package/server/dist/modules/server-events-handler.js.map +0 -1
  250. package/server/dist/modules/server-events.js.map +0 -1
  251. package/server/dist/modules/session-store.js.map +0 -1
  252. package/server/dist/modules/use-async.js.map +0 -1
  253. package/server/dist/paths.js.map +0 -1
  254. package/server/dist/routes/api.js.map +0 -1
  255. package/server/dist/routes/auth-pages.js.map +0 -1
  256. package/server/dist/routes/client.js.map +0 -1
  257. package/server/dist/routes/graphql.js.map +0 -1
  258. package/server/dist/routes/index.js.map +0 -1
  259. package/server/dist/routes/mcp.js.map +0 -1
  260. package/server/dist/schema/index.js.map +0 -1
  261. package/server/dist/start.js.map +0 -1
  262. package/server/dist/types/index.js.map +0 -1
  263. package/server/dist/types/input.js.map +0 -1
@@ -1 +0,0 @@
1
- import{j as e}from"./note-vendor-i1M2FSI2.js";import{a6 as L,q as T,y as G,k as S,ah as C,a0 as F,P as N,J as k,L as q,aY as B,T as O,B as D,a1 as z,i as h,j as K,aO as Q}from"./index-jIfkRdY_.js";import{f as U,d as W}from"./image.api-C0eYGCeH.js";import{a as x}from"./graph-vendor-CUxe67Lr.js";import{I as H}from"./Image-DxWhlIDG.js";import{S as M}from"./SurfaceCard-CkAVMLPs.js";import{c as $,n as J}from"./Trash.es-OuQVb_SX.js";import"./note-core-Z6kqulGB.js";const V=n=>{const{data:a}=L({queryKey:T.images.list(n.searchParams),async queryFn(){const s=await U({offset:n.searchParams.offset,limit:n.searchParams.limit});if(s.type==="error")throw s;return s.allImages}});return n.render(a)},b=16;function X(n,a,s){return Math.max(Math.floor((Math.max(n,0)+s)/(a+s)),1)}function _(n,a,s){return n*a+(n-1)*s}function Y({minItemWidth:n,gap:a,rows:s,fallback:l,override:g}){const[i,w]=x.useState(null),[v,p]=x.useState(l??s),r=x.useRef(null),o=x.useCallback(t=>{w(t)},[]),d=g==null,y=d?v:g;return x.useLayoutEffect(()=>{if(!d){r.current=null;return}if(!i){r.current=null,p(c=>c===(l??s)?c:l??s);return}let t=null;const I=()=>{const c=i.offsetWidth,E=X(c,n,a),u=r.current;let j=E;if(u!==null&&u!==E)if(E>u){const f=_(u+1,n,a);c<f+b&&(j=u)}else{const f=_(u,n,a);c>f-b&&(j=u)}r.current=j;const A=Math.max(j*s,s);p(f=>f===A?f:A)},m=()=>{t===null&&(t=window.requestAnimationFrame(()=>{t=null,I()}))};if(m(),typeof ResizeObserver<"u"){const c=new ResizeObserver(()=>{m()});return c.observe(i),()=>{c.disconnect(),t!==null&&window.cancelAnimationFrame(t)}}return window.addEventListener("resize",m),window.addEventListener("orientationchange",m),()=>{window.removeEventListener("resize",m),window.removeEventListener("orientationchange",m),t!==null&&window.cancelAnimationFrame(t)}},[i,l,a,d,n,s]),{containerRef:o,limit:y,isAutoLimit:d}}const Z=240,ee=20,te=4,R=192,P=K(Q),de=()=>{const n=G(),a=S(),s=P.useNavigate(),{page:l}=P.useSearch(),{containerRef:g,limit:i}=Y({minItemWidth:Z,gap:ee,rows:te}),w=C({mutationFn:W,onSuccess:r=>{if(r.type==="error")throw r;a.invalidateQueries({queryKey:T.images.listAll(),exact:!1})}}),v=async r=>{await n("Delete this image? It is not referenced by any notes.")&&w.mutate(r)},p=r=>r===1?"1 reference":`${r} references`;return e.jsx("div",{ref:g,children:e.jsx(F,{fallback:e.jsx(N,{title:"Images",variant:"default",heading:e.jsx(h,{width:136,height:24,className:"rounded-full"}),description:e.jsx(h,{width:232,height:16,className:"rounded-full"}),children:e.jsx("div",{className:"flex flex-col gap-4",children:e.jsx("div",{className:"grid-auto-cards grid gap-4",children:Array.from({length:3},(r,o)=>e.jsxs(M,{flush:!0,children:[e.jsx("div",{className:"flex items-center justify-center bg-muted/25 p-3",style:{height:R},children:e.jsx(h,{width:"100%",height:R-24,className:"rounded-[12px]"})}),e.jsxs("div",{className:"flex items-center justify-between gap-3 border-t border-border-subtle px-3 py-2.5",children:[e.jsx(h,{width:92,height:14,className:"rounded-full"}),e.jsx(h,{width:32,height:32,className:"rounded-[12px]"})]})]},o))})})}),errorTitle:"Failed to load images",errorDescription:"Retry loading uploaded image metadata",resetKeys:[l,i],children:e.jsx(V,{searchParams:{offset:(l-1)*i,limit:i},render:({images:r,totalCount:o})=>{const d=o>0?`Images (${o})`:void 0,y="Review and manage the images you uploaded inside notes";return r.length===0?e.jsx(N,{title:"Images",variant:"default",heading:d,description:y,children:e.jsx(k,{title:"There are no images",description:"Upload an image in any note and it will appear here"})}):e.jsx(N,{title:"Images",variant:"default",heading:d,description:y,children:e.jsxs("div",{className:"flex flex-col gap-4",children:[e.jsx("div",{className:"grid-auto-cards grid gap-4",children:r.map(t=>e.jsxs(M,{flush:!0,children:[e.jsx(q,{to:B,params:{id:t.id},className:"focus-ring-soft block overflow-hidden rounded-t-[18px] outline-none",children:e.jsx("div",{className:"flex items-center justify-center bg-muted/25 p-3",style:{height:R},children:e.jsx(H,{className:"h-full w-full rounded-[12px] object-contain transition-transform duration-200 hover:scale-[1.02]",src:t.url,alt:t.id})})}),e.jsxs("div",{className:"flex items-center justify-between gap-3 border-t border-border-subtle px-3 py-2.5",children:[e.jsxs("div",{className:"flex min-w-0 items-center gap-2 text-fg-secondary",children:[e.jsx($,{className:"h-3.5 w-3.5 shrink-0 text-fg-tertiary"}),e.jsx(O,{as:"span",variant:"meta",weight:"medium",tone:"secondary",className:"truncate",children:p(t.referenceCount)})]}),e.jsx(D,{variant:"ghost",size:"icon-sm",disabled:t.referenceCount>0,onClick:()=>v(t.id),children:e.jsx(J,{className:"h-4 w-4"})})]})]},t.id))}),o&&i<o&&e.jsx(z,{page:l,last:Math.ceil(o/i),onChange:t=>{s({search:I=>({...I,page:t})})}})]})})}})})})};export{de as default};
@@ -1 +0,0 @@
1
- import{j as e}from"./note-vendor-i1M2FSI2.js";import{aR as r,k as Q,u as B,ah as p,P as E,T as t,aS as G,B as M,n as w,w as J,I as K,o as O,r as T,m as U}from"./index-jIfkRdY_.js";import{a as h}from"./graph-vendor-CUxe67Lr.js";import{S as x}from"./SurfaceCard-CkAVMLPs.js";import"./note-core-Z6kqulGB.js";const D=async()=>{const{data:s}=await r.get("/api/mcp-admin/status");return s},z=async s=>{const{data:n}=await r.post("/api/mcp-admin/enabled",{enabled:s});return n},V=async()=>{const{data:s}=await r.post("/api/mcp-admin/token/rotate");return s},H=async()=>{const{data:s}=await r.post("/api/mcp-admin/token/revoke");return s},o=["mcp-admin","status"],W=s=>JSON.stringify({mcpServers:{"ocean-brain":{command:"npx",args:["-y","ocean-brain","mcp","--server",s,"--token-file","/path/to/token.txt"]}}},null,2),X=s=>JSON.stringify({mcpServers:{"ocean-brain":{command:"npx",args:["-y","ocean-brain","mcp","--server",s,"--token","your-token-here"]}}},null,2),se=()=>{const s=U(),n=Q(),[c,S]=h.useState(()=>window.location.origin),[v,g]=h.useState(""),[k,P]=h.useState("token-file"),{data:y,isLoading:A}=B({queryKey:o,queryFn:D}),b=p({mutationFn:z,onSuccess:a=>{n.setQueryData(o,a),s(a.enabled?"MCP access enabled.":"MCP access disabled.")}}),j=p({mutationFn:V,onSuccess:async({token:a})=>{g(a),s("A new MCP token has been issued."),await n.invalidateQueries({queryKey:o})}}),f=p({mutationFn:H,onSuccess:a=>{g(""),n.setQueryData(o,a),s("The active MCP token has been revoked.")}}),l=y?.enabled??!1,d=y?.hasActiveToken??!1,I=!A&&!b.isPending,i="space-y-1",N="space-y-4.5",F="inline-flex items-center gap-3 rounded-[14px] border border-border-subtle bg-muted px-3 py-2",L="rounded-full border border-border-subtle bg-hover-subtle px-2.5 py-1",R="space-y-3 rounded-[16px] border border-border-subtle bg-surface px-4 py-3",q="overflow-x-auto rounded-[14px] border border-border-subtle bg-surface px-4 py-3 text-xs text-fg-secondary",u={variant:"subheading",weight:"medium",tracking:"tight"},C="font-medium text-fg-tertiary",m=k==="token-file"?{title:"Token file",description:"Recommended. Keeps the token out of config.",snippet:W(c)}:{title:"Inline token",description:"Useful for quick local testing.",snippet:X(c)};return e.jsx(E,{title:"MCP",variant:"default",description:"Manage MCP access, tokens, and connection details",children:e.jsxs("div",{className:"grid grid-cols-1 gap-4",children:[e.jsx(x,{tone:"elevated",children:e.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-4",children:[e.jsxs("div",{className:i,children:[e.jsx(t,{as:"h2",...u,children:"MCP Access"}),e.jsx(t,{as:"p",variant:"meta",tone:"secondary",children:"Allow or block MCP requests at the server level."})]}),e.jsxs("div",{className:F,children:[e.jsx(t,{as:"span",variant:"meta",weight:"medium",tone:"secondary",children:l?"Enabled":"Disabled"}),e.jsx(G,{"aria-label":"Allow MCP access",checked:l,disabled:!I,onCheckedChange:()=>{b.mutate(!l)}})]})]})}),e.jsx(x,{tone:"elevated",children:e.jsxs("div",{className:N,children:[e.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[e.jsxs("div",{className:i,children:[e.jsx(t,{as:"h2",...u,children:"Token Management"}),e.jsx(t,{as:"p",variant:"meta",tone:"secondary",className:"max-w-[64ch]",children:"Ocean Brain supports one active MCP token at a time. Rotating immediately invalidates the previous one."})]}),e.jsx(t,{as:"span",variant:"meta",weight:"medium",tone:d?"secondary":"tertiary",className:L,children:d?"1 active token":"No active token"})]}),e.jsxs("div",{className:"flex flex-wrap gap-2.5",children:[e.jsx(M,{onClick:()=>j.mutate(void 0),isLoading:j.isPending,children:"Rotate token"}),e.jsx(M,{variant:"soft-danger",onClick:()=>f.mutate(),isLoading:f.isPending,disabled:!d,children:"Revoke token"})]}),v&&e.jsxs("div",{className:"space-y-2.5",children:[e.jsx(w,{htmlFor:"issued-mcp-token",className:C,children:"Issued token"}),e.jsx(J,{id:"issued-mcp-token",rows:3,readOnly:!0,value:v})]})]})}),e.jsx(x,{tone:"elevated",children:e.jsxs("div",{className:N,children:[e.jsxs("div",{className:i,children:[e.jsx(t,{as:"h2",...u,children:"Connection Guide"}),e.jsx(t,{as:"p",variant:"meta",tone:"secondary",children:"Connect your MCP client with either a token file or an inline token."})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(w,{htmlFor:"mcp-server-url",className:C,children:"Server URL"}),e.jsx(K,{id:"mcp-server-url",value:c,onChange:a=>S(a.target.value)})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs(O,{type:"single",variant:"pills",size:"sm",value:k,onValueChange:a=>{(a==="token-file"||a==="inline-token")&&P(a)},children:[e.jsx(T,{value:"token-file",children:"Token file"}),e.jsx(T,{value:"inline-token",children:"Inline token"})]}),e.jsxs("div",{className:R,children:[e.jsxs("div",{className:i,children:[e.jsx(t,{as:"p",variant:"meta",weight:"semibold",children:m.title}),e.jsx(t,{as:"p",variant:"meta",tone:"secondary",children:m.description})]}),e.jsx("pre",{className:q,children:m.snippet})]})]})]})})]})})};export{se as default};