ocean-brain 0.8.0 → 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 (244) hide show
  1. package/package.json +3 -2
  2. package/server/client/dist/assets/{ArrowRight.es-C4zlc54Z.js → ArrowRight.es-CbA8ey6a.js} +1 -1
  3. package/server/client/dist/assets/{Calendar-COrN6Hjv.js → Calendar-CgWgr1BV.js} +1 -1
  4. package/server/client/dist/assets/{Callout-BK0K9E74.js → Callout-DKruIT0f.js} +1 -1
  5. package/server/client/dist/assets/{Copy.es-zm8f_XXX.js → Copy.es-DFbgpaNJ.js} +1 -1
  6. package/server/client/dist/assets/{Graph-BH1fzhue.js → Graph-kCltGRlY.js} +1 -1
  7. package/server/client/dist/assets/{Image-KXuHOG4b.js → Image-7W0DZwMo.js} +1 -1
  8. package/server/client/dist/assets/{Image.es-BKahRbIm.js → Image.es-5pXLx9TU.js} +1 -1
  9. package/server/client/dist/assets/Note-BW6Np_5g.js +20 -0
  10. package/server/client/dist/assets/{Plus.es-BqeC8T8h.js → Plus.es-B0sg64VJ.js} +1 -1
  11. package/server/client/dist/assets/{Reminders-BYG5rz1M.js → Reminders-C10fHQcl.js} +1 -1
  12. package/server/client/dist/assets/{Search-DBWsIMDP.js → Search-tf2nV4v0.js} +1 -1
  13. package/server/client/dist/assets/{SurfaceCard-CNSQfYfM.js → SurfaceCard-pydtvHfu.js} +1 -1
  14. package/server/client/dist/assets/{Tag-5aCfSO8Y.js → Tag-uCoYbISy.js} +1 -1
  15. package/server/client/dist/assets/{TagNotes-BPZjN-6l.js → TagNotes-CqOcQiRw.js} +1 -1
  16. package/server/client/dist/assets/{Trash.es-CRQkTnXZ.js → Trash.es-w32Goxfa.js} +1 -1
  17. package/server/client/dist/assets/{ViewNotes-DGLNF96x.js → ViewNotes-slPXXoOY.js} +1 -1
  18. package/server/client/dist/assets/{ViewSectionDialog-CzskgmMF.js → ViewSectionDialog-brTrsF6G.js} +1 -1
  19. package/server/client/dist/assets/{Views-DR5jT23G.js → Views-B_wsb-XJ.js} +1 -1
  20. package/server/client/dist/assets/{graph-vendor-UTvF2NS_.js → graph-vendor-BAF95C0g.js} +1 -1
  21. package/server/client/dist/assets/{image.api-8dlMwzMd.js → image.api-CYsjXiMr.js} +1 -1
  22. package/server/client/dist/assets/{index-VHp17GQX.js → index-BR05aSXr.js} +4 -4
  23. package/server/client/dist/assets/{index-DGIAh3ZY.js → index-D83QbOcw.js} +1 -1
  24. package/server/client/dist/assets/{index-BEUqDuAZ.css → index-DPI6YoDt.css} +1 -1
  25. package/server/client/dist/assets/{manage-image-RqtWKas2.js → manage-image-BYIhWu56.js} +1 -1
  26. package/server/client/dist/assets/{manage-image-detail-BTSIbLlQ.js → manage-image-detail-6KgmQvbN.js} +1 -1
  27. package/server/client/dist/assets/{mcp-EDurbggR.js → mcp-Dd98N9Hq.js} +2 -2
  28. package/server/client/dist/assets/{mcp-admin-adapter-DmGUo5G8.js → mcp-admin-adapter-DOgBsYpl.js} +1 -1
  29. package/server/client/dist/assets/note-core-CMGUaW1v.js +176 -0
  30. package/server/client/dist/assets/note-vendor-Hoz9Q4-4.js +54 -0
  31. package/server/client/dist/assets/{placeholder-DeKgSBnC.js → placeholder-siHGg9aK.js} +4 -4
  32. package/server/client/dist/assets/{properties-BjrZvOYn.js → properties-CyVRKgcT.js} +1 -1
  33. package/server/client/dist/assets/{tag.api-Dl8DQd0m.js → tag.api-CwmC8crB.js} +1 -1
  34. package/server/client/dist/assets/{trash-C5ntddLu.js → trash-wojQBK9Z.js} +1 -1
  35. package/server/client/dist/assets/{useReminderMutate-CoXXqJY2.js → useReminderMutate-DuVKxpBh.js} +1 -1
  36. package/server/client/dist/index.html +5 -5
  37. package/server/dist/app.js +0 -1
  38. package/server/dist/features/auth/http/api.js +0 -1
  39. package/server/dist/features/auth/http/login-page.js +272 -5
  40. package/server/dist/features/auth/http/pages.js +20 -3
  41. package/server/dist/features/auth/service.js +3 -2
  42. package/server/dist/features/cache/graphql/cache.field.resolver.js +0 -1
  43. package/server/dist/features/cache/graphql/cache.mutation.resolver.js +0 -1
  44. package/server/dist/features/cache/graphql/cache.query.resolver.js +0 -1
  45. package/server/dist/features/cache/graphql/cache.resolver.js +0 -1
  46. package/server/dist/features/cache/graphql/cache.type-defs.js +0 -1
  47. package/server/dist/features/cache/graphql/index.js +0 -1
  48. package/server/dist/features/image/graphql/image.field.resolver.js +0 -1
  49. package/server/dist/features/image/graphql/image.mutation.resolver.js +0 -1
  50. package/server/dist/features/image/graphql/image.query.resolver.js +0 -1
  51. package/server/dist/features/image/graphql/image.resolver.js +0 -1
  52. package/server/dist/features/image/graphql/image.type-defs.js +0 -1
  53. package/server/dist/features/image/graphql/index.js +0 -1
  54. package/server/dist/features/image/http/upload.js +0 -1
  55. package/server/dist/features/image/services/delete.js +0 -1
  56. package/server/dist/features/image/services/upload.js +0 -1
  57. package/server/dist/features/image/services/validation.js +0 -1
  58. package/server/dist/features/mcp-admin/http/handlers.js +0 -1
  59. package/server/dist/features/mcp-admin/service.js +0 -1
  60. package/server/dist/features/note/graphql/index.js +0 -1
  61. package/server/dist/features/note/graphql/note.field.resolver.js +0 -1
  62. package/server/dist/features/note/graphql/note.mutation.resolver.js +0 -1
  63. package/server/dist/features/note/graphql/note.query.resolver.js +0 -1
  64. package/server/dist/features/note/graphql/note.resolver.js +0 -1
  65. package/server/dist/features/note/graphql/note.type-defs.js +0 -1
  66. package/server/dist/features/note/http/mcp.js +0 -1
  67. package/server/dist/features/note/services/authoring.js +0 -1
  68. package/server/dist/features/note/services/cleanup.js +0 -1
  69. package/server/dist/features/note/services/content-blocks.js +0 -1
  70. package/server/dist/features/note/services/markdown-intent-write.js +0 -1
  71. package/server/dist/features/note/services/markdown-patch.js +0 -1
  72. package/server/dist/features/note/services/properties.js +0 -1
  73. package/server/dist/features/note/services/search-backfill.js +0 -1
  74. package/server/dist/features/note/services/search.js +0 -1
  75. package/server/dist/features/note/services/snapshot.js +0 -1
  76. package/server/dist/features/note/services/tag-filter.js +0 -1
  77. package/server/dist/features/note/services/trash.js +0 -1
  78. package/server/dist/features/note/services/write-conflict.js +0 -1
  79. package/server/dist/features/note/services/write.js +0 -1
  80. package/server/dist/features/placeholder/graphql/index.js +0 -1
  81. package/server/dist/features/placeholder/graphql/placeholder.field.resolver.js +0 -1
  82. package/server/dist/features/placeholder/graphql/placeholder.mutation.resolver.js +0 -1
  83. package/server/dist/features/placeholder/graphql/placeholder.query.resolver.js +0 -1
  84. package/server/dist/features/placeholder/graphql/placeholder.resolver.js +0 -1
  85. package/server/dist/features/placeholder/graphql/placeholder.type-defs.js +0 -1
  86. package/server/dist/features/reminder/graphql/index.js +0 -1
  87. package/server/dist/features/reminder/graphql/reminder.field.resolver.js +0 -1
  88. package/server/dist/features/reminder/graphql/reminder.mutation.resolver.js +0 -1
  89. package/server/dist/features/reminder/graphql/reminder.query.resolver.js +0 -1
  90. package/server/dist/features/reminder/graphql/reminder.resolver.js +0 -1
  91. package/server/dist/features/reminder/graphql/reminder.type-defs.js +0 -1
  92. package/server/dist/features/tag/graphql/index.js +0 -1
  93. package/server/dist/features/tag/graphql/tag.field.resolver.js +0 -1
  94. package/server/dist/features/tag/graphql/tag.mutation.resolver.js +0 -1
  95. package/server/dist/features/tag/graphql/tag.query.resolver.js +0 -1
  96. package/server/dist/features/tag/graphql/tag.resolver.js +0 -1
  97. package/server/dist/features/tag/graphql/tag.type-defs.js +0 -1
  98. package/server/dist/features/tag/http/mcp.js +0 -1
  99. package/server/dist/features/tag/services/organization.js +0 -1
  100. package/server/dist/features/view/graphql/index.js +0 -1
  101. package/server/dist/features/view/graphql/view.mutation.resolver.js +0 -1
  102. package/server/dist/features/view/graphql/view.query.resolver.js +0 -1
  103. package/server/dist/features/view/graphql/view.resolver.js +0 -1
  104. package/server/dist/features/view/graphql/view.type-defs.js +0 -1
  105. package/server/dist/features/view/services/workspace.js +0 -1
  106. package/server/dist/main.js +0 -1
  107. package/server/dist/models.js +0 -1
  108. package/server/dist/modules/app-version.js +0 -1
  109. package/server/dist/modules/auth-guard.js +0 -1
  110. package/server/dist/modules/auth-mode.js +0 -1
  111. package/server/dist/modules/auth-redirect.js +0 -1
  112. package/server/dist/modules/blocknote-markdown-editor.js +53 -0
  113. package/server/dist/modules/blocknote-tree.js +0 -1
  114. package/server/dist/modules/blocknote.js +10 -4
  115. package/server/dist/modules/data-maintenance.js +0 -1
  116. package/server/dist/modules/error-handler.js +0 -1
  117. package/server/dist/modules/graphql.js +0 -1
  118. package/server/dist/modules/logger.js +0 -1
  119. package/server/dist/modules/mcp-auth.js +0 -1
  120. package/server/dist/modules/mcp-token.js +0 -1
  121. package/server/dist/modules/prisma-runtime.js +0 -1
  122. package/server/dist/modules/rate-limit.js +0 -1
  123. package/server/dist/modules/recovery-retention.js +0 -1
  124. package/server/dist/modules/server-events-handler.js +0 -1
  125. package/server/dist/modules/server-events.js +0 -1
  126. package/server/dist/modules/session-store.js +0 -1
  127. package/server/dist/modules/use-async.js +0 -1
  128. package/server/dist/paths.js +0 -1
  129. package/server/dist/routes/api.js +0 -1
  130. package/server/dist/routes/auth-pages.js +0 -1
  131. package/server/dist/routes/client.js +0 -1
  132. package/server/dist/routes/graphql.js +0 -1
  133. package/server/dist/routes/index.js +0 -1
  134. package/server/dist/routes/mcp.js +0 -1
  135. package/server/dist/schema/index.js +0 -1
  136. package/server/dist/start.js +0 -1
  137. package/server/dist/types/index.js +0 -1
  138. package/server/dist/types/input.js +0 -1
  139. package/server/client/dist/assets/Note-C143cKKw.js +0 -12
  140. package/server/client/dist/assets/note-core-BklwyZHk.js +0 -180
  141. package/server/client/dist/assets/note-vendor-DkYKUmLo.js +0 -54
  142. package/server/client/dist/fonts/Pretendard-Bold.woff +0 -0
  143. package/server/client/dist/fonts/Pretendard-Regular.woff +0 -0
  144. package/server/dist/app.js.map +0 -1
  145. package/server/dist/features/auth/http/api.js.map +0 -1
  146. package/server/dist/features/auth/http/login-page.js.map +0 -1
  147. package/server/dist/features/auth/http/pages.js.map +0 -1
  148. package/server/dist/features/auth/service.js.map +0 -1
  149. package/server/dist/features/cache/graphql/cache.field.resolver.js.map +0 -1
  150. package/server/dist/features/cache/graphql/cache.mutation.resolver.js.map +0 -1
  151. package/server/dist/features/cache/graphql/cache.query.resolver.js.map +0 -1
  152. package/server/dist/features/cache/graphql/cache.resolver.js.map +0 -1
  153. package/server/dist/features/cache/graphql/cache.type-defs.js.map +0 -1
  154. package/server/dist/features/cache/graphql/index.js.map +0 -1
  155. package/server/dist/features/image/graphql/image.field.resolver.js.map +0 -1
  156. package/server/dist/features/image/graphql/image.mutation.resolver.js.map +0 -1
  157. package/server/dist/features/image/graphql/image.query.resolver.js.map +0 -1
  158. package/server/dist/features/image/graphql/image.resolver.js.map +0 -1
  159. package/server/dist/features/image/graphql/image.type-defs.js.map +0 -1
  160. package/server/dist/features/image/graphql/index.js.map +0 -1
  161. package/server/dist/features/image/http/upload.js.map +0 -1
  162. package/server/dist/features/image/services/delete.js.map +0 -1
  163. package/server/dist/features/image/services/upload.js.map +0 -1
  164. package/server/dist/features/image/services/validation.js.map +0 -1
  165. package/server/dist/features/mcp-admin/http/handlers.js.map +0 -1
  166. package/server/dist/features/mcp-admin/service.js.map +0 -1
  167. package/server/dist/features/note/graphql/index.js.map +0 -1
  168. package/server/dist/features/note/graphql/note.field.resolver.js.map +0 -1
  169. package/server/dist/features/note/graphql/note.mutation.resolver.js.map +0 -1
  170. package/server/dist/features/note/graphql/note.query.resolver.js.map +0 -1
  171. package/server/dist/features/note/graphql/note.resolver.js.map +0 -1
  172. package/server/dist/features/note/graphql/note.type-defs.js.map +0 -1
  173. package/server/dist/features/note/http/mcp.js.map +0 -1
  174. package/server/dist/features/note/services/authoring.js.map +0 -1
  175. package/server/dist/features/note/services/cleanup.js.map +0 -1
  176. package/server/dist/features/note/services/content-blocks.js.map +0 -1
  177. package/server/dist/features/note/services/markdown-intent-write.js.map +0 -1
  178. package/server/dist/features/note/services/markdown-patch.js.map +0 -1
  179. package/server/dist/features/note/services/properties.js.map +0 -1
  180. package/server/dist/features/note/services/search-backfill.js.map +0 -1
  181. package/server/dist/features/note/services/search.js.map +0 -1
  182. package/server/dist/features/note/services/snapshot.js.map +0 -1
  183. package/server/dist/features/note/services/tag-filter.js.map +0 -1
  184. package/server/dist/features/note/services/trash.js.map +0 -1
  185. package/server/dist/features/note/services/write-conflict.js.map +0 -1
  186. package/server/dist/features/note/services/write.js.map +0 -1
  187. package/server/dist/features/placeholder/graphql/index.js.map +0 -1
  188. package/server/dist/features/placeholder/graphql/placeholder.field.resolver.js.map +0 -1
  189. package/server/dist/features/placeholder/graphql/placeholder.mutation.resolver.js.map +0 -1
  190. package/server/dist/features/placeholder/graphql/placeholder.query.resolver.js.map +0 -1
  191. package/server/dist/features/placeholder/graphql/placeholder.resolver.js.map +0 -1
  192. package/server/dist/features/placeholder/graphql/placeholder.type-defs.js.map +0 -1
  193. package/server/dist/features/reminder/graphql/index.js.map +0 -1
  194. package/server/dist/features/reminder/graphql/reminder.field.resolver.js.map +0 -1
  195. package/server/dist/features/reminder/graphql/reminder.mutation.resolver.js.map +0 -1
  196. package/server/dist/features/reminder/graphql/reminder.query.resolver.js.map +0 -1
  197. package/server/dist/features/reminder/graphql/reminder.resolver.js.map +0 -1
  198. package/server/dist/features/reminder/graphql/reminder.type-defs.js.map +0 -1
  199. package/server/dist/features/tag/graphql/index.js.map +0 -1
  200. package/server/dist/features/tag/graphql/tag.field.resolver.js.map +0 -1
  201. package/server/dist/features/tag/graphql/tag.mutation.resolver.js.map +0 -1
  202. package/server/dist/features/tag/graphql/tag.query.resolver.js.map +0 -1
  203. package/server/dist/features/tag/graphql/tag.resolver.js.map +0 -1
  204. package/server/dist/features/tag/graphql/tag.type-defs.js.map +0 -1
  205. package/server/dist/features/tag/http/mcp.js.map +0 -1
  206. package/server/dist/features/tag/services/organization.js.map +0 -1
  207. package/server/dist/features/view/graphql/index.js.map +0 -1
  208. package/server/dist/features/view/graphql/view.mutation.resolver.js.map +0 -1
  209. package/server/dist/features/view/graphql/view.query.resolver.js.map +0 -1
  210. package/server/dist/features/view/graphql/view.resolver.js.map +0 -1
  211. package/server/dist/features/view/graphql/view.type-defs.js.map +0 -1
  212. package/server/dist/features/view/services/workspace.js.map +0 -1
  213. package/server/dist/main.js.map +0 -1
  214. package/server/dist/models.js.map +0 -1
  215. package/server/dist/modules/app-version.js.map +0 -1
  216. package/server/dist/modules/auth-guard.js.map +0 -1
  217. package/server/dist/modules/auth-mode.js.map +0 -1
  218. package/server/dist/modules/auth-redirect.js.map +0 -1
  219. package/server/dist/modules/blocknote-tree.js.map +0 -1
  220. package/server/dist/modules/blocknote.js.map +0 -1
  221. package/server/dist/modules/data-maintenance.js.map +0 -1
  222. package/server/dist/modules/error-handler.js.map +0 -1
  223. package/server/dist/modules/graphql.js.map +0 -1
  224. package/server/dist/modules/logger.js.map +0 -1
  225. package/server/dist/modules/mcp-auth.js.map +0 -1
  226. package/server/dist/modules/mcp-token.js.map +0 -1
  227. package/server/dist/modules/prisma-runtime.js.map +0 -1
  228. package/server/dist/modules/rate-limit.js.map +0 -1
  229. package/server/dist/modules/recovery-retention.js.map +0 -1
  230. package/server/dist/modules/server-events-handler.js.map +0 -1
  231. package/server/dist/modules/server-events.js.map +0 -1
  232. package/server/dist/modules/session-store.js.map +0 -1
  233. package/server/dist/modules/use-async.js.map +0 -1
  234. package/server/dist/paths.js.map +0 -1
  235. package/server/dist/routes/api.js.map +0 -1
  236. package/server/dist/routes/auth-pages.js.map +0 -1
  237. package/server/dist/routes/client.js.map +0 -1
  238. package/server/dist/routes/graphql.js.map +0 -1
  239. package/server/dist/routes/index.js.map +0 -1
  240. package/server/dist/routes/mcp.js.map +0 -1
  241. package/server/dist/schema/index.js.map +0 -1
  242. package/server/dist/start.js.map +0 -1
  243. package/server/dist/types/index.js.map +0 -1
  244. package/server/dist/types/input.js.map +0 -1
@@ -5,6 +5,7 @@ import { sanitizeRedirectPath } from "../../modules/auth-redirect.js";
5
5
  import { createAppError } from "../../modules/error-handler.js";
6
6
  const AUTH_SESSION_GENERATION_HEADER = "X-Ocean-Brain-Session-Generation";
7
7
  const AUTH_SESSION_GENERATION = crypto.randomUUID();
8
+ const getSessionGeneration = () => AUTH_SESSION_GENERATION;
8
9
  const createPasswordHash = async (password) => {
9
10
  const salt = crypto.randomBytes(16).toString("hex");
10
11
  const hash = crypto.pbkdf2Sync(password, salt, 1e3, 64, "sha512").toString("hex");
@@ -18,7 +19,7 @@ const comparePassword = async (password, storedHash) => {
18
19
  const compareSharedSecret = compareCommonSharedSecret;
19
20
  const buildSessionResponse = (authConfig, req) => buildAuthSessionResponse(authConfig, Boolean(req.session?.authenticated));
20
21
  const setSessionStatusHeaders = (res) => {
21
- res.set(AUTH_SESSION_GENERATION_HEADER, AUTH_SESSION_GENERATION);
22
+ res.set(AUTH_SESSION_GENERATION_HEADER, getSessionGeneration());
22
23
  res.set("Cache-Control", "no-store");
23
24
  };
24
25
  const refreshCsrfToken = (req) => {
@@ -64,9 +65,9 @@ export {
64
65
  compareSharedSecret,
65
66
  createPasswordHash,
66
67
  destroySession,
68
+ getSessionGeneration,
67
69
  refreshCsrfToken,
68
70
  regenerateSession,
69
71
  sanitizeRedirectPath,
70
72
  setSessionStatusHeaders
71
73
  };
72
- //# sourceMappingURL=service.js.map
@@ -2,4 +2,3 @@ const cacheFieldResolvers = {};
2
2
  export {
3
3
  cacheFieldResolvers
4
4
  };
5
- //# sourceMappingURL=cache.field.resolver.js.map
@@ -46,4 +46,3 @@ export {
46
46
  createDeleteCacheMutationResolver,
47
47
  createSetCacheMutationResolver
48
48
  };
49
- //# sourceMappingURL=cache.mutation.resolver.js.map
@@ -18,4 +18,3 @@ export {
18
18
  createAllCachesQueryResolver,
19
19
  createCacheQueryResolver
20
20
  };
21
- //# sourceMappingURL=cache.query.resolver.js.map
@@ -9,4 +9,3 @@ const cacheResolvers = {
9
9
  export {
10
10
  cacheResolvers
11
11
  };
12
- //# sourceMappingURL=cache.resolver.js.map
@@ -29,4 +29,3 @@ export {
29
29
  cacheType,
30
30
  cacheTypeDefs
31
31
  };
32
- //# sourceMappingURL=cache.type-defs.js.map
@@ -18,4 +18,3 @@ export {
18
18
  createDeleteCacheMutationResolver,
19
19
  createSetCacheMutationResolver
20
20
  };
21
- //# sourceMappingURL=index.js.map
@@ -11,4 +11,3 @@ export {
11
11
  createImageReferenceCountFieldResolver,
12
12
  imageFieldResolvers
13
13
  };
14
- //# sourceMappingURL=image.field.resolver.js.map
@@ -18,4 +18,3 @@ export {
18
18
  createDeleteImageMutationResolver,
19
19
  imageMutationResolvers
20
20
  };
21
- //# sourceMappingURL=image.mutation.resolver.js.map
@@ -37,4 +37,3 @@ export {
37
37
  createImageQueryResolver,
38
38
  imageQueryResolvers
39
39
  };
40
- //# sourceMappingURL=image.query.resolver.js.map
@@ -9,4 +9,3 @@ const imageResolvers = {
9
9
  export {
10
10
  imageResolvers
11
11
  };
12
- //# sourceMappingURL=image.resolver.js.map
@@ -28,4 +28,3 @@ const imageTypeDefs = gql`
28
28
  export {
29
29
  imageTypeDefs
30
30
  };
31
- //# sourceMappingURL=image.type-defs.js.map
@@ -13,4 +13,3 @@ export {
13
13
  imageResolvers,
14
14
  imageTypeDefs
15
15
  };
16
- //# sourceMappingURL=index.js.map
@@ -56,4 +56,3 @@ const createUploadImageHandler = (persistImage = persistUploadedImage) => {
56
56
  export {
57
57
  createUploadImageHandler
58
58
  };
59
- //# sourceMappingURL=upload.js.map
@@ -49,4 +49,3 @@ export {
49
49
  deleteImageById,
50
50
  resolveStoredImagePath
51
51
  };
52
- //# sourceMappingURL=delete.js.map
@@ -107,4 +107,3 @@ export {
107
107
  hashImageBuffer,
108
108
  persistUploadedImage
109
109
  };
110
- //# sourceMappingURL=upload.js.map
@@ -108,4 +108,3 @@ export {
108
108
  normalizeImageContentType,
109
109
  validateImagePayload
110
110
  };
111
- //# sourceMappingURL=validation.js.map
@@ -47,4 +47,3 @@ export {
47
47
  createMcpAdminSetEnabledHandler,
48
48
  createMcpAdminStatusHandler
49
49
  };
50
- //# sourceMappingURL=handlers.js.map
@@ -85,4 +85,3 @@ const createMcpAdminService = (db = models) => {
85
85
  export {
86
86
  createMcpAdminService
87
87
  };
88
- //# sourceMappingURL=service.js.map
@@ -5,4 +5,3 @@ export {
5
5
  noteResolvers,
6
6
  noteTypeDefs
7
7
  };
8
- //# sourceMappingURL=index.js.map
@@ -24,4 +24,3 @@ export {
24
24
  noteFieldResolvers,
25
25
  noteSnapshotFieldResolvers
26
26
  };
27
- //# sourceMappingURL=note.field.resolver.js.map
@@ -293,4 +293,3 @@ const noteMutationResolvers = {
293
293
  export {
294
294
  noteMutationResolvers
295
295
  };
296
- //# sourceMappingURL=note.mutation.resolver.js.map
@@ -435,4 +435,3 @@ export {
435
435
  createNoteQueryResolver,
436
436
  noteQueryResolvers
437
437
  };
438
- //# sourceMappingURL=note.query.resolver.js.map
@@ -12,4 +12,3 @@ export {
12
12
  createAllNotesQueryResolver2 as createAllNotesQueryResolver,
13
13
  noteResolvers
14
14
  };
15
- //# sourceMappingURL=note.resolver.js.map
@@ -319,4 +319,3 @@ export {
319
319
  noteType,
320
320
  noteTypeDefs
321
321
  };
322
- //# sourceMappingURL=note.type-defs.js.map
@@ -523,4 +523,3 @@ export {
523
523
  createMcpUpdateNoteHandler,
524
524
  createMcpUpdateNoteMetadataHandler
525
525
  };
526
- //# sourceMappingURL=mcp.js.map
@@ -168,4 +168,3 @@ export {
168
168
  createNoteFromMarkdown,
169
169
  updateNoteFromMarkdown
170
170
  };
171
- //# sourceMappingURL=authoring.js.map
@@ -196,4 +196,3 @@ export {
196
196
  listNoteCleanupCandidates,
197
197
  normalizeCleanupKeywords
198
198
  };
199
- //# sourceMappingURL=cleanup.js.map
@@ -110,4 +110,3 @@ export {
110
110
  parseNoteContent,
111
111
  syncReferenceTitlesInContent
112
112
  };
113
- //# sourceMappingURL=content-blocks.js.map
@@ -460,4 +460,3 @@ export {
460
460
  replaceNoteMarkdown,
461
461
  updateNoteMetadata
462
462
  };
463
- //# sourceMappingURL=markdown-intent-write.js.map
@@ -509,4 +509,3 @@ export {
509
509
  countExplicitTagTokens,
510
510
  countMarkdownReferenceTokens
511
511
  };
512
- //# sourceMappingURL=markdown-patch.js.map
@@ -871,4 +871,3 @@ export {
871
871
  updateNotePropertyDefinition,
872
872
  validateNotePropertiesPatchValues
873
873
  };
874
- //# sourceMappingURL=properties.js.map
@@ -81,4 +81,3 @@ export {
81
81
  createNoteSearchBackfillService,
82
82
  runNoteSearchBackfillInBackground
83
83
  };
84
- //# sourceMappingURL=search-backfill.js.map
@@ -175,4 +175,3 @@ export {
175
175
  parseNoteSearchQuery,
176
176
  resetUnknownNoteSearchNodeTypeCountsForTest
177
177
  };
178
- //# sourceMappingURL=search.js.map
@@ -623,4 +623,3 @@ export {
623
623
  resolveRestoredSnapshotTags,
624
624
  restoreNoteSnapshot
625
625
  };
626
- //# sourceMappingURL=snapshot.js.map
@@ -15,4 +15,3 @@ export {
15
15
  buildNoteTagNamesWhere,
16
16
  normalizeNoteTagNames
17
17
  };
18
- //# sourceMappingURL=tag-filter.js.map
@@ -357,4 +357,3 @@ export {
357
357
  restoreTrashedNoteById,
358
358
  trashNoteById
359
359
  };
360
- //# sourceMappingURL=trash.js.map
@@ -84,4 +84,3 @@ export {
84
84
  isNoteVersionConflictError,
85
85
  parseNoteVersion
86
86
  };
87
- //# sourceMappingURL=write-conflict.js.map
@@ -118,4 +118,3 @@ export {
118
118
  updateNoteWithVersionGuard,
119
119
  updateNoteWithVersionGuardAndSnapshot
120
120
  };
121
- //# sourceMappingURL=write.js.map
@@ -24,4 +24,3 @@ export {
24
24
  placeholderResolvers,
25
25
  placeholderTypeDefs
26
26
  };
27
- //# sourceMappingURL=index.js.map
@@ -2,4 +2,3 @@ const placeholderFieldResolvers = {};
2
2
  export {
3
3
  placeholderFieldResolvers
4
4
  };
5
- //# sourceMappingURL=placeholder.field.resolver.js.map
@@ -69,4 +69,3 @@ export {
69
69
  createUpdatePlaceholderMutationResolver,
70
70
  placeholderMutationResolvers
71
71
  };
72
- //# sourceMappingURL=placeholder.mutation.resolver.js.map
@@ -33,4 +33,3 @@ export {
33
33
  createPlaceholderQueryResolver,
34
34
  placeholderQueryResolvers
35
35
  };
36
- //# sourceMappingURL=placeholder.query.resolver.js.map
@@ -9,4 +9,3 @@ const placeholderResolvers = {
9
9
  export {
10
10
  placeholderResolvers
11
11
  };
12
- //# sourceMappingURL=placeholder.resolver.js.map
@@ -47,4 +47,3 @@ export {
47
47
  placeholderType,
48
48
  placeholderTypeDefs
49
49
  };
50
- //# sourceMappingURL=placeholder.type-defs.js.map
@@ -24,4 +24,3 @@ export {
24
24
  reminderResolvers,
25
25
  reminderTypeDefs
26
26
  };
27
- //# sourceMappingURL=index.js.map
@@ -7,4 +7,3 @@ const reminderFieldResolvers = {
7
7
  export {
8
8
  reminderFieldResolvers
9
9
  };
10
- //# sourceMappingURL=reminder.field.resolver.js.map
@@ -56,4 +56,3 @@ export {
56
56
  createUpdateReminderMutationResolver,
57
57
  reminderMutationResolvers
58
58
  };
59
- //# sourceMappingURL=reminder.mutation.resolver.js.map
@@ -76,4 +76,3 @@ export {
76
76
  createUpcomingRemindersQueryResolver,
77
77
  reminderQueryResolvers
78
78
  };
79
- //# sourceMappingURL=reminder.query.resolver.js.map
@@ -9,4 +9,3 @@ const reminderResolvers = {
9
9
  export {
10
10
  reminderResolvers
11
11
  };
12
- //# sourceMappingURL=reminder.resolver.js.map
@@ -48,4 +48,3 @@ export {
48
48
  reminderType,
49
49
  reminderTypeDefs
50
50
  };
51
- //# sourceMappingURL=reminder.type-defs.js.map
@@ -11,4 +11,3 @@ export {
11
11
  tagResolvers,
12
12
  tagTypeDefs
13
13
  };
14
- //# sourceMappingURL=index.js.map
@@ -7,4 +7,3 @@ const tagFieldResolvers = {
7
7
  export {
8
8
  tagFieldResolvers
9
9
  };
10
- //# sourceMappingURL=tag.field.resolver.js.map
@@ -12,4 +12,3 @@ export {
12
12
  createTagMutationResolver,
13
13
  tagMutationResolvers
14
14
  };
15
- //# sourceMappingURL=tag.mutation.resolver.js.map
@@ -38,4 +38,3 @@ const tagQueryResolvers = {
38
38
  export {
39
39
  tagQueryResolvers
40
40
  };
41
- //# sourceMappingURL=tag.query.resolver.js.map
@@ -9,4 +9,3 @@ const tagResolvers = {
9
9
  export {
10
10
  tagResolvers
11
11
  };
12
- //# sourceMappingURL=tag.resolver.js.map
@@ -45,4 +45,3 @@ export {
45
45
  tagType,
46
46
  tagTypeDefs
47
47
  };
48
- //# sourceMappingURL=tag.type-defs.js.map
@@ -20,4 +20,3 @@ const createMcpCreateTagHandler = (ensureTag = ensureTagByName) => {
20
20
  export {
21
21
  createMcpCreateTagHandler
22
22
  };
23
- //# sourceMappingURL=mcp.js.map
@@ -93,4 +93,3 @@ export {
93
93
  ensureTagByName,
94
94
  normalizeTagName
95
95
  };
96
- //# sourceMappingURL=organization.js.map
@@ -8,4 +8,3 @@ export {
8
8
  viewResolvers,
9
9
  viewTypeDefs
10
10
  };
11
- //# sourceMappingURL=index.js.map
@@ -50,4 +50,3 @@ const viewMutationResolvers = {
50
50
  export {
51
51
  viewMutationResolvers
52
52
  };
53
- //# sourceMappingURL=view.mutation.resolver.js.map
@@ -56,4 +56,3 @@ const viewQueryResolvers = {
56
56
  export {
57
57
  viewQueryResolvers
58
58
  };
59
- //# sourceMappingURL=view.query.resolver.js.map
@@ -7,4 +7,3 @@ const viewResolvers = {
7
7
  export {
8
8
  viewResolvers
9
9
  };
10
- //# sourceMappingURL=view.resolver.js.map
@@ -138,4 +138,3 @@ export {
138
138
  viewType,
139
139
  viewTypeDefs
140
140
  };
141
- //# sourceMappingURL=view.type-defs.js.map
@@ -814,4 +814,3 @@ export {
814
814
  updateViewSection,
815
815
  updateViewTab
816
816
  };
817
- //# sourceMappingURL=workspace.js.map
@@ -30,4 +30,3 @@ try {
30
30
  `);
31
31
  process.exit(1);
32
32
  }
33
- //# sourceMappingURL=main.js.map
@@ -5,4 +5,3 @@ export * from "@prisma/client";
5
5
  export {
6
6
  models_default as default
7
7
  };
8
- //# sourceMappingURL=models.js.map
@@ -102,4 +102,3 @@ export {
102
102
  resolveMcpCompatibilityVersionFromPaths,
103
103
  resolveOceanBrainVersion
104
104
  };
105
- //# sourceMappingURL=app-version.js.map
@@ -102,4 +102,3 @@ export {
102
102
  requireSessionForGraphql,
103
103
  requireSessionForWrite
104
104
  };
105
- //# sourceMappingURL=auth-guard.js.map
@@ -23,4 +23,3 @@ export {
23
23
  logAuthConfig,
24
24
  resolveAuthConfig
25
25
  };
26
- //# sourceMappingURL=auth-mode.js.map
@@ -7,4 +7,3 @@ const sanitizeRedirectPath = (value) => sanitizeCommonRedirectPath(value, {
7
7
  export {
8
8
  sanitizeRedirectPath
9
9
  };
10
- //# sourceMappingURL=auth-redirect.js.map
@@ -0,0 +1,53 @@
1
+ import { BlockNoteEditor } from "@blocknote/core";
2
+ import { JSDOM } from "jsdom";
3
+ const restoreGlobalProperty = (key, descriptor) => {
4
+ if (descriptor) {
5
+ Object.defineProperty(globalThis, key, descriptor);
6
+ return;
7
+ }
8
+ Reflect.deleteProperty(globalThis, key);
9
+ };
10
+ class BlockNoteMarkdownEditor {
11
+ editor = BlockNoteEditor.create();
12
+ dom = new JSDOM();
13
+ queue = Promise.resolve();
14
+ static create() {
15
+ return new BlockNoteMarkdownEditor();
16
+ }
17
+ runWithDom(operation) {
18
+ const run = this.queue.then(async () => {
19
+ const previousWindow = Object.getOwnPropertyDescriptor(globalThis, "window");
20
+ const previousDocument = Object.getOwnPropertyDescriptor(globalThis, "document");
21
+ Object.defineProperty(globalThis, "window", {
22
+ configurable: true,
23
+ writable: true,
24
+ value: this.dom.window
25
+ });
26
+ Object.defineProperty(globalThis, "document", {
27
+ configurable: true,
28
+ writable: true,
29
+ value: this.dom.window.document
30
+ });
31
+ try {
32
+ return await operation();
33
+ } finally {
34
+ restoreGlobalProperty("window", previousWindow);
35
+ restoreGlobalProperty("document", previousDocument);
36
+ }
37
+ });
38
+ this.queue = run.then(
39
+ () => void 0,
40
+ () => void 0
41
+ );
42
+ return run;
43
+ }
44
+ blocksToMarkdownLossy(blocks) {
45
+ return this.runWithDom(() => this.editor.blocksToMarkdownLossy(blocks));
46
+ }
47
+ tryParseMarkdownToBlocks(markdown) {
48
+ return this.runWithDom(() => this.editor.tryParseMarkdownToBlocks(markdown));
49
+ }
50
+ }
51
+ export {
52
+ BlockNoteMarkdownEditor
53
+ };
@@ -38,4 +38,3 @@ export {
38
38
  parseBlockNoteContent,
39
39
  walkBlockNoteTree
40
40
  };
41
- //# sourceMappingURL=blocknote-tree.js.map
@@ -1,6 +1,6 @@
1
- import { ServerBlockNoteEditor } from "@blocknote/server-util";
2
1
  import { ensureTagByName } from "../features/tag/services/organization.js";
3
2
  import models from "../models.js";
3
+ import { BlockNoteMarkdownEditor } from "./blocknote-markdown-editor.js";
4
4
  const UNSUPPORTED_MARKDOWN_BLOCK_TYPES = /* @__PURE__ */ new Set(["tableOfContents"]);
5
5
  const TAG_PLACEHOLDER_PREFIX = "OCEAN_BRAIN_TAG_";
6
6
  const TAG_PLACEHOLDER_SUFFIX = "_TOKEN";
@@ -529,7 +529,7 @@ function protectMarkdownLineEndHardBreakMarker(line, lineEnding, hasContinuation
529
529
  }
530
530
  const placeholder = createHardBreakPlaceholder(placeholderToToken.size);
531
531
  const shouldPreserveAsHardBreak = hasContinuationLine && !hasUnclosedInlineCodeSpanAtLineEnd(line);
532
- placeholderToToken.set(placeholder, shouldPreserveAsHardBreak ? "" : "\\");
532
+ placeholderToToken.set(placeholder, shouldPreserveAsHardBreak ? "\n" : "\\");
533
533
  return `${line.slice(0, -1)}${placeholder}`;
534
534
  }
535
535
  function isMarkdownHardBreakContinuationLine(line) {
@@ -654,6 +654,13 @@ function restoreProtectedTextInValue(value, placeholderToToken) {
654
654
  function restoreProtectedText(text, placeholderToToken) {
655
655
  let restoredText = text;
656
656
  for (const [placeholder, token] of placeholderToToken.entries()) {
657
+ if (placeholder.startsWith(HARD_BREAK_PLACEHOLDER_PREFIX) && token === "\n") {
658
+ restoredText = restoredText.split(`${placeholder} `).join(placeholder).split(`${placeholder}
659
+ `).join(`${placeholder}
660
+ `).split(`${placeholder}\r
661
+ `).join(`${placeholder}\r
662
+ `);
663
+ }
657
664
  restoredText = restoredText.split(placeholder).join(token);
658
665
  }
659
666
  return restoredText;
@@ -828,7 +835,7 @@ function collectTagIds(blocks) {
828
835
  let editorInstance = null;
829
836
  function getEditor() {
830
837
  if (!editorInstance) {
831
- editorInstance = ServerBlockNoteEditor.create();
838
+ editorInstance = BlockNoteMarkdownEditor.create();
832
839
  }
833
840
  return editorInstance;
834
841
  }
@@ -943,4 +950,3 @@ export {
943
950
  hasUnsupportedMarkdownBlocks,
944
951
  markdownToBlocksJson
945
952
  };
946
- //# sourceMappingURL=blocknote.js.map
@@ -72,4 +72,3 @@ export {
72
72
  runDataMaintenanceInBackground,
73
73
  startDataMaintenanceScheduler
74
74
  };
75
- //# sourceMappingURL=data-maintenance.js.map
@@ -48,4 +48,3 @@ export {
48
48
  createAppError,
49
49
  createErrorHandler
50
50
  };
51
- //# sourceMappingURL=error-handler.js.map
@@ -4,4 +4,3 @@ function gql(texts, ...values) {
4
4
  export {
5
5
  gql
6
6
  };
7
- //# sourceMappingURL=graphql.js.map
@@ -51,4 +51,3 @@ export {
51
51
  logger_default as default,
52
52
  loggerOptions
53
53
  };
54
- //# sourceMappingURL=logger.js.map
@@ -128,4 +128,3 @@ export {
128
128
  createReadOnlyMcpValidationRule,
129
129
  isMcpVersionCompatible
130
130
  };
131
- //# sourceMappingURL=mcp-auth.js.map
@@ -25,4 +25,3 @@ export {
25
25
  issueMcpToken,
26
26
  verifyMcpToken
27
27
  };
28
- //# sourceMappingURL=mcp-token.js.map
@@ -38,4 +38,3 @@ export {
38
38
  resolvePrismaSchemaPath,
39
39
  runPrismaMigrateDeploy
40
40
  };
41
- //# sourceMappingURL=prisma-runtime.js.map
@@ -29,4 +29,3 @@ export {
29
29
  createAuthAttemptRateLimit,
30
30
  createSessionAccessRateLimit
31
31
  };
32
- //# sourceMappingURL=rate-limit.js.map
@@ -23,4 +23,3 @@ export {
23
23
  createRetentionCutoff,
24
24
  resolveRetentionCutoff
25
25
  };
26
- //# sourceMappingURL=recovery-retention.js.map
@@ -48,4 +48,3 @@ const createServerEventsHandler = () => {
48
48
  export {
49
49
  createServerEventsHandler
50
50
  };
51
- //# sourceMappingURL=server-events-handler.js.map