ocean-brain 0.3.3 → 0.4.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 (253) hide show
  1. package/dist/mcp.js +151 -37
  2. package/package.json +5 -5
  3. package/scripts/postinstall-prisma.mjs +3 -2
  4. package/server/client/dist/assets/Calendar-CSXEuWmQ.js +25 -0
  5. package/server/client/dist/assets/Callout-Ap1OcxWN.js +1 -0
  6. package/server/client/dist/assets/Graph-C0Ax9qjI.js +1 -0
  7. package/server/client/dist/assets/{Image-ZxF459sC.js → Image-CSbcG-5a.js} +1 -1
  8. package/server/client/dist/assets/{Image.es-CFTbON7k.js → Image.es-Fbe7aDDo.js} +1 -1
  9. package/server/client/dist/assets/{ModalActionRow-Hg6MY61u.js → ModalActionRow-DjI5b4bl.js} +1 -1
  10. package/server/client/dist/assets/Note-BY6WgYLq.js +1 -0
  11. package/server/client/dist/assets/Note-W4f6H9K0.css +1 -0
  12. package/server/client/dist/assets/Reminders-vRksvSQE.js +1 -0
  13. package/server/client/dist/assets/Search-Cq4tuiJO.js +1 -0
  14. package/server/client/dist/assets/{SurfaceCard-BV6y4bCo.js → SurfaceCard-Br6TjX5W.js} +1 -1
  15. package/server/client/dist/assets/Tag-ARDLA-Pb.js +1 -0
  16. package/server/client/dist/assets/TagNotes-CDGVrCJU.js +1 -0
  17. package/server/client/dist/assets/{Trash.es-CPtRLE0y.js → Trash.es-BfCEiL3-.js} +1 -1
  18. package/server/client/dist/assets/ViewNotes-ZBOQ1adH.js +1 -0
  19. package/server/client/dist/assets/Views-DQHPfdwM.js +1 -0
  20. package/server/client/dist/assets/{image.api-Dsrx9S-G.js → image.api-DGXlQ_Ca.js} +1 -1
  21. package/server/client/dist/assets/index-B28TO4FC.js +1 -0
  22. package/server/client/dist/assets/{index-CD2bFEqK.css → index-Bm9l_L20.css} +1 -1
  23. package/server/client/dist/assets/index-Bsx4P7EA.js +210 -0
  24. package/server/client/dist/assets/manage-image-Dg297A_h.js +1 -0
  25. package/server/client/dist/assets/manage-image-detail-hk6jWyiB.js +1 -0
  26. package/server/client/dist/assets/mcp-CSjmBjFR.js +1 -0
  27. package/server/client/dist/assets/{note-core-BCgMq5QA.js → note-core-GgFcksAF.js} +1 -1
  28. package/server/client/dist/assets/{note-vendor-BofYbzmZ.js → note-vendor-5N5mRkIT.js} +3 -3
  29. package/server/client/dist/assets/{placeholder-MNsco0AT.js → placeholder-Bmiowo28.js} +4 -4
  30. package/server/client/dist/assets/trash-CM7SbVtW.js +1 -0
  31. package/server/client/dist/assets/{useReminderMutate-yJak8FzP.js → useReminderMutate-DsIvVpCQ.js} +2 -2
  32. package/server/client/dist/assets/view-dashboard-CP8nhfxQ.js +90 -0
  33. package/server/client/dist/index.html +4 -4
  34. package/server/dist/app.js +8 -84
  35. package/server/dist/app.js.map +1 -1
  36. package/server/dist/features/auth/http/api.js +43 -0
  37. package/server/dist/features/auth/http/api.js.map +1 -0
  38. package/server/dist/features/auth/http/login-page.js +28 -0
  39. package/server/dist/features/auth/http/login-page.js.map +1 -0
  40. package/server/dist/features/auth/http/pages.js +50 -0
  41. package/server/dist/features/auth/http/pages.js.map +1 -0
  42. package/server/dist/features/auth/service.js +94 -0
  43. package/server/dist/features/auth/service.js.map +1 -0
  44. package/server/dist/features/cache/graphql/cache.field.resolver.js +5 -0
  45. package/server/dist/features/cache/graphql/cache.field.resolver.js.map +1 -0
  46. package/server/dist/features/cache/graphql/cache.mutation.resolver.js +49 -0
  47. package/server/dist/features/cache/graphql/cache.mutation.resolver.js.map +1 -0
  48. package/server/dist/features/cache/graphql/cache.query.resolver.js +21 -0
  49. package/server/dist/features/cache/graphql/cache.query.resolver.js.map +1 -0
  50. package/server/dist/features/cache/graphql/cache.resolver.js +12 -0
  51. package/server/dist/features/cache/graphql/cache.resolver.js.map +1 -0
  52. package/server/dist/features/cache/graphql/cache.type-defs.js +32 -0
  53. package/server/dist/features/cache/graphql/cache.type-defs.js.map +1 -0
  54. package/server/dist/features/cache/graphql/index.js +21 -0
  55. package/server/dist/features/cache/graphql/index.js.map +1 -0
  56. package/server/dist/features/image/graphql/image.field.resolver.js +14 -0
  57. package/server/dist/features/image/graphql/image.field.resolver.js.map +1 -0
  58. package/server/dist/features/image/graphql/image.mutation.resolver.js +21 -0
  59. package/server/dist/features/image/graphql/image.mutation.resolver.js.map +1 -0
  60. package/server/dist/features/image/graphql/image.query.resolver.js +40 -0
  61. package/server/dist/features/image/graphql/image.query.resolver.js.map +1 -0
  62. package/server/dist/features/image/graphql/image.resolver.js +12 -0
  63. package/server/dist/features/image/graphql/image.resolver.js.map +1 -0
  64. package/server/dist/features/image/graphql/image.type-defs.js +31 -0
  65. package/server/dist/features/image/graphql/image.type-defs.js.map +1 -0
  66. package/server/dist/features/image/graphql/index.js +16 -0
  67. package/server/dist/features/image/graphql/index.js.map +1 -0
  68. package/server/dist/features/image/http/upload.js +48 -0
  69. package/server/dist/features/image/http/upload.js.map +1 -0
  70. package/server/dist/features/image/services/delete.js +52 -0
  71. package/server/dist/features/image/services/delete.js.map +1 -0
  72. package/server/dist/{modules/remote-image.js → features/image/services/remote-fetch.js} +1 -1
  73. package/server/dist/features/image/services/remote-fetch.js.map +1 -0
  74. package/server/dist/{modules/image-upload.js → features/image/services/upload.js} +4 -8
  75. package/server/dist/features/image/services/upload.js.map +1 -0
  76. package/server/dist/{views/mcp-admin.js → features/mcp-admin/http/handlers.js} +3 -3
  77. package/server/dist/features/mcp-admin/http/handlers.js.map +1 -0
  78. package/server/dist/{modules/mcp-admin.js → features/mcp-admin/service.js} +3 -3
  79. package/server/dist/features/mcp-admin/service.js.map +1 -0
  80. package/server/dist/features/note/graphql/index.js +8 -0
  81. package/server/dist/features/note/graphql/index.js.map +1 -0
  82. package/server/dist/features/note/graphql/note.field.resolver.js +12 -0
  83. package/server/dist/features/note/graphql/note.field.resolver.js.map +1 -0
  84. package/server/dist/features/note/graphql/note.graphql.shared.js +23 -0
  85. package/server/dist/features/note/graphql/note.graphql.shared.js.map +1 -0
  86. package/server/dist/features/note/graphql/note.mutation.resolver.js +140 -0
  87. package/server/dist/features/note/graphql/note.mutation.resolver.js.map +1 -0
  88. package/server/dist/features/note/graphql/note.query.resolver.js +382 -0
  89. package/server/dist/features/note/graphql/note.query.resolver.js.map +1 -0
  90. package/server/dist/features/note/graphql/note.resolver.js +14 -0
  91. package/server/dist/features/note/graphql/note.resolver.js.map +1 -0
  92. package/server/dist/features/note/graphql/note.type-defs.js +184 -0
  93. package/server/dist/features/note/graphql/note.type-defs.js.map +1 -0
  94. package/server/dist/{views/note.js → features/note/http/mcp.js} +27 -15
  95. package/server/dist/features/note/http/mcp.js.map +1 -0
  96. package/server/dist/{modules/note-authoring.js → features/note/services/authoring.js} +25 -7
  97. package/server/dist/features/note/services/authoring.js.map +1 -0
  98. package/server/dist/{modules/note-cleanup.js → features/note/services/cleanup.js} +14 -23
  99. package/server/dist/features/note/services/cleanup.js.map +1 -0
  100. package/server/dist/features/note/services/search-backfill.js +84 -0
  101. package/server/dist/features/note/services/search-backfill.js.map +1 -0
  102. package/server/dist/features/note/services/search.js +197 -0
  103. package/server/dist/features/note/services/search.js.map +1 -0
  104. package/server/dist/{modules/note-snapshot.js → features/note/services/snapshot.js} +51 -49
  105. package/server/dist/features/note/services/snapshot.js.map +1 -0
  106. package/server/dist/features/note/services/tag-filter.js +18 -0
  107. package/server/dist/features/note/services/tag-filter.js.map +1 -0
  108. package/server/dist/{modules/note-trash.js → features/note/services/trash.js} +28 -23
  109. package/server/dist/features/note/services/trash.js.map +1 -0
  110. package/server/dist/features/placeholder/graphql/index.js +27 -0
  111. package/server/dist/features/placeholder/graphql/index.js.map +1 -0
  112. package/server/dist/features/placeholder/graphql/placeholder.field.resolver.js +5 -0
  113. package/server/dist/features/placeholder/graphql/placeholder.field.resolver.js.map +1 -0
  114. package/server/dist/features/placeholder/graphql/placeholder.mutation.resolver.js +72 -0
  115. package/server/dist/features/placeholder/graphql/placeholder.mutation.resolver.js.map +1 -0
  116. package/server/dist/features/placeholder/graphql/placeholder.query.resolver.js +36 -0
  117. package/server/dist/features/placeholder/graphql/placeholder.query.resolver.js.map +1 -0
  118. package/server/dist/features/placeholder/graphql/placeholder.resolver.js +12 -0
  119. package/server/dist/features/placeholder/graphql/placeholder.resolver.js.map +1 -0
  120. package/server/dist/features/placeholder/graphql/placeholder.type-defs.js +50 -0
  121. package/server/dist/features/placeholder/graphql/placeholder.type-defs.js.map +1 -0
  122. package/server/dist/features/reminder/graphql/index.js +27 -0
  123. package/server/dist/features/reminder/graphql/index.js.map +1 -0
  124. package/server/dist/features/reminder/graphql/reminder.field.resolver.js +10 -0
  125. package/server/dist/features/reminder/graphql/reminder.field.resolver.js.map +1 -0
  126. package/server/dist/features/reminder/graphql/reminder.mutation.resolver.js +59 -0
  127. package/server/dist/features/reminder/graphql/reminder.mutation.resolver.js.map +1 -0
  128. package/server/dist/features/reminder/graphql/reminder.query.resolver.js +79 -0
  129. package/server/dist/features/reminder/graphql/reminder.query.resolver.js.map +1 -0
  130. package/server/dist/features/reminder/graphql/reminder.resolver.js +12 -0
  131. package/server/dist/features/reminder/graphql/reminder.resolver.js.map +1 -0
  132. package/server/dist/features/reminder/graphql/reminder.type-defs.js +51 -0
  133. package/server/dist/features/reminder/graphql/reminder.type-defs.js.map +1 -0
  134. package/server/dist/features/tag/graphql/index.js +14 -0
  135. package/server/dist/features/tag/graphql/index.js.map +1 -0
  136. package/server/dist/features/tag/graphql/tag.field.resolver.js +10 -0
  137. package/server/dist/features/tag/graphql/tag.field.resolver.js.map +1 -0
  138. package/server/dist/features/tag/graphql/tag.mutation.resolver.js +15 -0
  139. package/server/dist/features/tag/graphql/tag.mutation.resolver.js.map +1 -0
  140. package/server/dist/features/tag/graphql/tag.query.resolver.js +26 -0
  141. package/server/dist/features/tag/graphql/tag.query.resolver.js.map +1 -0
  142. package/server/dist/features/tag/graphql/tag.resolver.js +12 -0
  143. package/server/dist/features/tag/graphql/tag.resolver.js.map +1 -0
  144. package/server/dist/features/tag/graphql/tag.type-defs.js +46 -0
  145. package/server/dist/features/tag/graphql/tag.type-defs.js.map +1 -0
  146. package/server/dist/{views/tag.js → features/tag/http/mcp.js} +3 -3
  147. package/server/dist/features/tag/http/mcp.js.map +1 -0
  148. package/server/dist/{modules/tag-organization.js → features/tag/services/organization.js} +38 -8
  149. package/server/dist/features/tag/services/organization.js.map +1 -0
  150. package/server/dist/features/view/graphql/index.js +11 -0
  151. package/server/dist/features/view/graphql/index.js.map +1 -0
  152. package/server/dist/features/view/graphql/view.mutation.resolver.js +53 -0
  153. package/server/dist/features/view/graphql/view.mutation.resolver.js.map +1 -0
  154. package/server/dist/features/view/graphql/view.query.resolver.js +29 -0
  155. package/server/dist/features/view/graphql/view.query.resolver.js.map +1 -0
  156. package/server/dist/features/view/graphql/view.resolver.js +10 -0
  157. package/server/dist/features/view/graphql/view.resolver.js.map +1 -0
  158. package/server/dist/features/view/graphql/view.type-defs.js +63 -0
  159. package/server/dist/features/view/graphql/view.type-defs.js.map +1 -0
  160. package/server/dist/features/view/services/workspace.js +432 -0
  161. package/server/dist/features/view/services/workspace.js.map +1 -0
  162. package/server/dist/main.js +14 -0
  163. package/server/dist/main.js.map +1 -1
  164. package/server/dist/modules/auth-guard.js +10 -9
  165. package/server/dist/modules/auth-guard.js.map +1 -1
  166. package/server/dist/modules/auth-mode.js +1 -3
  167. package/server/dist/modules/auth-mode.js.map +1 -1
  168. package/server/dist/modules/blocknote.js +96 -33
  169. package/server/dist/modules/blocknote.js.map +1 -1
  170. package/server/dist/modules/data-maintenance.js +75 -0
  171. package/server/dist/modules/data-maintenance.js.map +1 -0
  172. package/server/dist/modules/error-handler.js.map +1 -1
  173. package/server/dist/modules/logger.js +5 -23
  174. package/server/dist/modules/logger.js.map +1 -1
  175. package/server/dist/modules/mcp-auth.js +4 -5
  176. package/server/dist/modules/mcp-auth.js.map +1 -1
  177. package/server/dist/modules/mcp-token.js.map +1 -1
  178. package/server/dist/modules/prisma-runtime.js +2 -7
  179. package/server/dist/modules/prisma-runtime.js.map +1 -1
  180. package/server/dist/modules/recovery-retention.js +1 -1
  181. package/server/dist/modules/recovery-retention.js.map +1 -1
  182. package/server/dist/modules/server-events-handler.js +34 -0
  183. package/server/dist/modules/server-events-handler.js.map +1 -0
  184. package/server/dist/modules/server-events.js +32 -0
  185. package/server/dist/modules/server-events.js.map +1 -0
  186. package/server/dist/modules/use-async.js.map +1 -1
  187. package/server/dist/paths.js.map +1 -1
  188. package/server/dist/routes/api.js +34 -0
  189. package/server/dist/routes/api.js.map +1 -0
  190. package/server/dist/routes/auth-pages.js +11 -0
  191. package/server/dist/routes/auth-pages.js.map +1 -0
  192. package/server/dist/routes/client.js +27 -0
  193. package/server/dist/routes/client.js.map +1 -0
  194. package/server/dist/routes/graphql.js +33 -0
  195. package/server/dist/routes/graphql.js.map +1 -0
  196. package/server/dist/routes/index.js +11 -0
  197. package/server/dist/routes/index.js.map +1 -0
  198. package/server/dist/routes/mcp.js +30 -0
  199. package/server/dist/routes/mcp.js.map +1 -0
  200. package/server/dist/schema/index.js +11 -8
  201. package/server/dist/schema/index.js.map +1 -1
  202. package/server/dist/types/index.js.map +1 -1
  203. package/server/prisma/migrations/20260413143000_0014_tag_name_unique/migration.sql +32 -0
  204. package/server/prisma/migrations/20260414143000_0015_note_searchable_text/migration.sql +5 -0
  205. package/server/prisma/migrations/20260416090000_0016_view_workspace/migration.sql +50 -0
  206. package/server/prisma/schema.prisma +66 -12
  207. package/server/client/dist/assets/Calendar-DyXzs5M3.js +0 -25
  208. package/server/client/dist/assets/Graph-C8K4PJOn.js +0 -1
  209. package/server/client/dist/assets/Note-BbgZvrC3.js +0 -1
  210. package/server/client/dist/assets/Note-PEevDKBh.css +0 -1
  211. package/server/client/dist/assets/Reminders-jFhljND4.js +0 -1
  212. package/server/client/dist/assets/Search-X6QIR_m2.js +0 -1
  213. package/server/client/dist/assets/Tag-Ba2Dw4gH.js +0 -1
  214. package/server/client/dist/assets/TagNotes-BRJv6sDI.js +0 -1
  215. package/server/client/dist/assets/index-BglnLSet.js +0 -205
  216. package/server/client/dist/assets/index-DpqKngJz.js +0 -1
  217. package/server/client/dist/assets/manage-image-C6Y_0M5H.js +0 -1
  218. package/server/client/dist/assets/manage-image-detail-Dv3xofpe.js +0 -1
  219. package/server/client/dist/assets/mcp-BijQkpfY.js +0 -1
  220. package/server/client/dist/assets/trash-CiFJm_PK.js +0 -1
  221. package/server/dist/modules/auth.js +0 -25
  222. package/server/dist/modules/auth.js.map +0 -1
  223. package/server/dist/modules/image-upload.js.map +0 -1
  224. package/server/dist/modules/mcp-admin.js.map +0 -1
  225. package/server/dist/modules/note-authoring.js.map +0 -1
  226. package/server/dist/modules/note-cleanup.js.map +0 -1
  227. package/server/dist/modules/note-snapshot.js.map +0 -1
  228. package/server/dist/modules/note-trash.js.map +0 -1
  229. package/server/dist/modules/remote-image.js.map +0 -1
  230. package/server/dist/modules/tag-organization.js.map +0 -1
  231. package/server/dist/schema/cache/index.js +0 -58
  232. package/server/dist/schema/cache/index.js.map +0 -1
  233. package/server/dist/schema/image/index.js +0 -88
  234. package/server/dist/schema/image/index.js.map +0 -1
  235. package/server/dist/schema/note/index.js +0 -551
  236. package/server/dist/schema/note/index.js.map +0 -1
  237. package/server/dist/schema/placeholder/index.js +0 -105
  238. package/server/dist/schema/placeholder/index.js.map +0 -1
  239. package/server/dist/schema/reminder/index.js +0 -161
  240. package/server/dist/schema/reminder/index.js.map +0 -1
  241. package/server/dist/schema/tag/index.js +0 -81
  242. package/server/dist/schema/tag/index.js.map +0 -1
  243. package/server/dist/urls.js +0 -9
  244. package/server/dist/urls.js.map +0 -1
  245. package/server/dist/views/auth.js +0 -305
  246. package/server/dist/views/auth.js.map +0 -1
  247. package/server/dist/views/image.js +0 -44
  248. package/server/dist/views/image.js.map +0 -1
  249. package/server/dist/views/index.js +0 -6
  250. package/server/dist/views/index.js.map +0 -1
  251. package/server/dist/views/mcp-admin.js.map +0 -1
  252. package/server/dist/views/note.js.map +0 -1
  253. package/server/dist/views/tag.js.map +0 -1
@@ -1,105 +0,0 @@
1
- import models from "../../models.js";
2
- import { gql } from "../../modules/graphql.js";
3
- const placeholderType = gql`
4
- input PaginationInput {
5
- limit: Int!
6
- offset: Int!
7
- }
8
-
9
- input SearchFilterInput {
10
- query: String!
11
- }
12
-
13
- type Placeholder {
14
- id: ID!
15
- name: String!
16
- template: String!
17
- replacement: String!
18
- createdAt: String!
19
- updatedAt: String!
20
- }
21
-
22
- type Placeholders {
23
- totalCount: Int!
24
- placeholders: [Placeholder!]!
25
- }
26
- `;
27
- const placeholderQuery = gql`
28
- type Query {
29
- allPlaceholders(searchFilter: SearchFilterInput, pagination: PaginationInput): Placeholders!
30
- placeholder(id: ID!): Placeholder
31
- }
32
- `;
33
- const placeholderMutation = gql`
34
- type Mutation {
35
- createPlaceholder(name: String!, template: String!, replacement: String): Placeholder!
36
- updatePlaceholder(id: ID!, name: String, template: String, replacement: String): Placeholder!
37
- deletePlaceholder(id: ID!): Boolean!
38
- }
39
- `;
40
- const placeholderTypeDefs = `
41
- ${placeholderType}
42
- ${placeholderQuery}
43
- ${placeholderMutation}
44
- `;
45
- const placeholderResolvers = {
46
- Query: {
47
- allPlaceholders: async (_, { searchFilter, pagination }) => {
48
- const placeholders = await models.placeholder.findMany({
49
- where: searchFilter?.query ? { name: { contains: searchFilter.query } } : void 0,
50
- take: pagination?.limit,
51
- skip: pagination?.offset
52
- });
53
- const totalCount = await models.placeholder.count();
54
- return {
55
- totalCount,
56
- placeholders
57
- };
58
- },
59
- placeholder: async (_, { id }) => {
60
- return await models.placeholder.findFirst({ where: { id } });
61
- }
62
- },
63
- Mutation: {
64
- createPlaceholder: async (_, { name, template, replacement }) => {
65
- return await models.placeholder.create({
66
- data: {
67
- name,
68
- template,
69
- replacement
70
- }
71
- });
72
- },
73
- updatePlaceholder: async (_, { id, name, template, replacement }) => {
74
- const placeholder = await models.placeholder.findFirst({ where: { id } });
75
- if (!placeholder) {
76
- throw new Error("Placeholder not found");
77
- }
78
- await models.placeholder.update({
79
- where: { id },
80
- data: {
81
- name,
82
- template,
83
- replacement
84
- }
85
- });
86
- return placeholder;
87
- },
88
- deletePlaceholder: async (_, { id }) => {
89
- const placeholder = await models.placeholder.findFirst({ where: { id: Number(id) } });
90
- if (!placeholder) {
91
- return false;
92
- }
93
- await models.placeholder.delete({ where: { id: Number(id) } });
94
- return true;
95
- }
96
- }
97
- };
98
- export {
99
- placeholderMutation,
100
- placeholderQuery,
101
- placeholderResolvers,
102
- placeholderType,
103
- placeholderTypeDefs
104
- };
105
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/schema/placeholder/index.ts"],"sourcesContent":["import type { IResolvers } from '@graphql-tools/utils';\n\nimport models, { type Placeholder } from '~/models.js';\nimport { gql } from '~/modules/graphql.js';\nimport type { Pagination, SearchFilter } from '~/types/index.js';\n\nexport const placeholderType = gql`\n input PaginationInput {\n limit: Int!\n offset: Int!\n }\n\n input SearchFilterInput {\n query: String!\n }\n\n type Placeholder {\n id: ID!\n name: String!\n template: String!\n replacement: String!\n createdAt: String!\n updatedAt: String!\n }\n\n type Placeholders {\n totalCount: Int!\n placeholders: [Placeholder!]!\n }\n`;\n\nexport const placeholderQuery = gql`\n type Query {\n allPlaceholders(searchFilter: SearchFilterInput, pagination: PaginationInput): Placeholders!\n placeholder(id: ID!): Placeholder\n }\n`;\n\nexport const placeholderMutation = gql`\n type Mutation {\n createPlaceholder(name: String!, template: String!, replacement: String): Placeholder!\n updatePlaceholder(id: ID!, name: String, template: String, replacement: String): Placeholder!\n deletePlaceholder(id: ID!): Boolean!\n }\n`;\n\nexport const placeholderTypeDefs = `\n ${placeholderType}\n ${placeholderQuery}\n ${placeholderMutation}\n`;\n\nexport const placeholderResolvers: IResolvers = {\n Query: {\n allPlaceholders: async (_, { searchFilter, pagination }: { searchFilter?: SearchFilter; pagination?: Pagination }) => {\n const placeholders = await models.placeholder.findMany({\n where: searchFilter?.query ? { name: { contains: searchFilter.query } } : undefined,\n take: pagination?.limit,\n skip: pagination?.offset\n });\n\n const totalCount = await models.placeholder.count();\n\n return {\n totalCount,\n placeholders\n };\n },\n placeholder: async (_, { id }: { id: number }) => {\n return await models.placeholder.findFirst({ where: { id } });\n }\n },\n Mutation: {\n createPlaceholder: async (_, { name, template, replacement }: Placeholder) => {\n return await models.placeholder.create({\n data: {\n name,\n template,\n replacement\n }\n });\n },\n updatePlaceholder: async (_, { id, name, template, replacement }: Placeholder) => {\n const placeholder = await models.placeholder.findFirst({ where: { id } });\n if (!placeholder) {\n throw new Error('Placeholder not found');\n }\n\n await models.placeholder.update({\n where: { id },\n data: {\n name,\n template,\n replacement\n }\n });\n\n return placeholder;\n },\n deletePlaceholder: async (_, { id }: { id: number }) => {\n const placeholder = await models.placeholder.findFirst({ where: { id: Number(id) } });\n if (!placeholder) {\n return false;\n }\n\n await models.placeholder.delete({ where: { id: Number(id) } });\n return true;\n }\n }\n};\n"],"mappings":"AAEA,OAAO,YAAkC;AACzC,SAAS,WAAW;AAGb,MAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyBxB,MAAM,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAOzB,MAAM,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQ5B,MAAM,sBAAsB;AAAA,MAC7B,eAAe;AAAA,MACf,gBAAgB;AAAA,MAChB,mBAAmB;AAAA;AAGlB,MAAM,uBAAmC;AAAA,EAC5C,OAAO;AAAA,IACH,iBAAiB,OAAO,GAAG,EAAE,cAAc,WAAW,MAAgE;AAClH,YAAM,eAAe,MAAM,OAAO,YAAY,SAAS;AAAA,QACnD,OAAO,cAAc,QAAQ,EAAE,MAAM,EAAE,UAAU,aAAa,MAAM,EAAE,IAAI;AAAA,QAC1E,MAAM,YAAY;AAAA,QAClB,MAAM,YAAY;AAAA,MACtB,CAAC;AAED,YAAM,aAAa,MAAM,OAAO,YAAY,MAAM;AAElD,aAAO;AAAA,QACH;AAAA,QACA;AAAA,MACJ;AAAA,IACJ;AAAA,IACA,aAAa,OAAO,GAAG,EAAE,GAAG,MAAsB;AAC9C,aAAO,MAAM,OAAO,YAAY,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AAAA,IAC/D;AAAA,EACJ;AAAA,EACA,UAAU;AAAA,IACN,mBAAmB,OAAO,GAAG,EAAE,MAAM,UAAU,YAAY,MAAmB;AAC1E,aAAO,MAAM,OAAO,YAAY,OAAO;AAAA,QACnC,MAAM;AAAA,UACF;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,IACA,mBAAmB,OAAO,GAAG,EAAE,IAAI,MAAM,UAAU,YAAY,MAAmB;AAC9E,YAAM,cAAc,MAAM,OAAO,YAAY,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AACxE,UAAI,CAAC,aAAa;AACd,cAAM,IAAI,MAAM,uBAAuB;AAAA,MAC3C;AAEA,YAAM,OAAO,YAAY,OAAO;AAAA,QAC5B,OAAO,EAAE,GAAG;AAAA,QACZ,MAAM;AAAA,UACF;AAAA,UACA;AAAA,UACA;AAAA,QACJ;AAAA,MACJ,CAAC;AAED,aAAO;AAAA,IACX;AAAA,IACA,mBAAmB,OAAO,GAAG,EAAE,GAAG,MAAsB;AACpD,YAAM,cAAc,MAAM,OAAO,YAAY,UAAU,EAAE,OAAO,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,CAAC;AACpF,UAAI,CAAC,aAAa;AACd,eAAO;AAAA,MACX;AAEA,YAAM,OAAO,YAAY,OAAO,EAAE,OAAO,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,CAAC;AAC7D,aAAO;AAAA,IACX;AAAA,EACJ;AACJ;","names":[]}
@@ -1,161 +0,0 @@
1
- import models from "../../models.js";
2
- import { gql } from "../../modules/graphql.js";
3
- const reminderType = gql`
4
- enum ReminderPriority {
5
- low
6
- medium
7
- high
8
- }
9
-
10
- type Reminder {
11
- id: ID!
12
- noteId: Int!
13
- reminderDate: String!
14
- completed: Boolean!
15
- priority: ReminderPriority
16
- content: String
17
- createdAt: String!
18
- updatedAt: String!
19
- note: Note
20
- }
21
-
22
- type Reminders {
23
- totalCount: Int!
24
- reminders: [Reminder!]!
25
- }
26
- `;
27
- const reminderQuery = gql`
28
- extend type Query {
29
- noteReminders(noteId: ID!, pagination: PaginationInput): Reminders!
30
- upcomingReminders(pagination: PaginationInput): Reminders!
31
- remindersInDateRange(dateRange: DateRangeInput): [Reminder!]!
32
- }
33
- `;
34
- const reminderMutation = gql`
35
- extend type Mutation {
36
- createReminder(noteId: ID!, reminderDate: String!, priority: ReminderPriority, content: String): Reminder!
37
- updateReminder(id: ID!, reminderDate: String, completed: Boolean, priority: ReminderPriority, content: String): Reminder!
38
- deleteReminder(id: ID!): Boolean!
39
- }
40
- `;
41
- const reminderTypeDefs = `
42
- ${reminderType}
43
- ${reminderQuery}
44
- ${reminderMutation}
45
- `;
46
- const reminderResolvers = {
47
- Query: {
48
- noteReminders: async (_, {
49
- noteId,
50
- pagination = {
51
- limit: 10,
52
- offset: 0
53
- }
54
- }) => {
55
- const where = { noteId: Number(noteId) };
56
- const $reminders = models.reminder.findMany({
57
- where,
58
- orderBy: { reminderDate: "asc" },
59
- take: Number(pagination.limit),
60
- skip: Number(pagination.offset)
61
- });
62
- return {
63
- totalCount: models.reminder.count({ where }),
64
- reminders: $reminders
65
- };
66
- },
67
- upcomingReminders: async (_, {
68
- pagination = {
69
- limit: 10,
70
- offset: 0
71
- }
72
- }) => {
73
- const where = { completed: false };
74
- const $reminders = models.reminder.findMany({
75
- where,
76
- orderBy: { reminderDate: "asc" },
77
- take: Number(pagination.limit),
78
- skip: Number(pagination.offset),
79
- include: { note: true }
80
- });
81
- return {
82
- totalCount: models.reminder.count({ where }),
83
- reminders: $reminders
84
- };
85
- },
86
- remindersInDateRange: async (_, { dateRange }) => {
87
- const where = {
88
- reminderDate: {
89
- gte: new Date(dateRange.start),
90
- lt: new Date(dateRange.end)
91
- }
92
- };
93
- const $reminders = await models.reminder.findMany({
94
- where,
95
- orderBy: { reminderDate: "asc" },
96
- include: { note: true }
97
- });
98
- return $reminders;
99
- }
100
- },
101
- Mutation: {
102
- createReminder: async (_, {
103
- noteId,
104
- reminderDate,
105
- priority,
106
- content
107
- }) => {
108
- return models.reminder.create({
109
- data: {
110
- noteId: Number(noteId),
111
- reminderDate: new Date(reminderDate),
112
- completed: false,
113
- priority: priority || "medium",
114
- content
115
- }
116
- });
117
- },
118
- updateReminder: async (_, {
119
- id,
120
- reminderDate,
121
- completed,
122
- priority,
123
- content
124
- }) => {
125
- const data = {};
126
- if (reminderDate) {
127
- data.reminderDate = new Date(reminderDate);
128
- }
129
- if (completed !== void 0) {
130
- data.completed = completed;
131
- }
132
- if (priority) {
133
- data.priority = priority;
134
- }
135
- if (content !== void 0) {
136
- data.content = content;
137
- }
138
- return models.reminder.update({
139
- where: { id: Number(id) },
140
- data
141
- });
142
- },
143
- deleteReminder: async (_, { id }) => {
144
- await models.reminder.delete({ where: { id: Number(id) } });
145
- return true;
146
- }
147
- },
148
- Reminder: {
149
- note: async (reminder) => {
150
- return models.note.findUnique({ where: { id: reminder.noteId } });
151
- }
152
- }
153
- };
154
- export {
155
- reminderMutation,
156
- reminderQuery,
157
- reminderResolvers,
158
- reminderType,
159
- reminderTypeDefs
160
- };
161
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/schema/reminder/index.ts"],"sourcesContent":["import type { IResolvers } from '@graphql-tools/utils';\n\nimport type { Reminder } from '~/models.js';\nimport models from '~/models.js';\nimport { gql } from '~/modules/graphql.js';\n\nimport type { Pagination } from '~/types/index.js';\n\nexport const reminderType = gql`\n enum ReminderPriority {\n low\n medium\n high\n }\n\n type Reminder {\n id: ID!\n noteId: Int!\n reminderDate: String!\n completed: Boolean!\n priority: ReminderPriority\n content: String\n createdAt: String!\n updatedAt: String!\n note: Note\n }\n\n type Reminders {\n totalCount: Int!\n reminders: [Reminder!]!\n }\n`;\n\nexport const reminderQuery = gql`\n extend type Query {\n noteReminders(noteId: ID!, pagination: PaginationInput): Reminders!\n upcomingReminders(pagination: PaginationInput): Reminders!\n remindersInDateRange(dateRange: DateRangeInput): [Reminder!]!\n }\n`;\n\nexport const reminderMutation = gql`\n extend type Mutation {\n createReminder(noteId: ID!, reminderDate: String!, priority: ReminderPriority, content: String): Reminder!\n updateReminder(id: ID!, reminderDate: String, completed: Boolean, priority: ReminderPriority, content: String): Reminder!\n deleteReminder(id: ID!): Boolean!\n }\n`;\n\nexport const reminderTypeDefs = `\n ${reminderType}\n ${reminderQuery}\n ${reminderMutation}\n`;\n\nexport const reminderResolvers: IResolvers = {\n Query: {\n noteReminders: async (_, {\n noteId,\n pagination = {\n limit: 10,\n offset: 0\n }\n }: {\n noteId: string;\n pagination: Pagination;\n }) => {\n const where = { noteId: Number(noteId) };\n\n const $reminders = models.reminder.findMany({\n where,\n orderBy: { reminderDate: 'asc' },\n take: Number(pagination.limit),\n skip: Number(pagination.offset)\n });\n\n return {\n totalCount: models.reminder.count({ where }),\n reminders: $reminders\n };\n },\n upcomingReminders: async (_, {\n pagination = {\n limit: 10,\n offset: 0\n }\n }: {\n pagination: Pagination;\n }) => {\n const where = { completed: false };\n\n const $reminders = models.reminder.findMany({\n where,\n orderBy: { reminderDate: 'asc' },\n take: Number(pagination.limit),\n skip: Number(pagination.offset),\n include: { note: true }\n });\n\n return {\n totalCount: models.reminder.count({ where }),\n reminders: $reminders\n };\n },\n remindersInDateRange: async (_, { dateRange }: {\n dateRange: {\n start: string;\n end: string;\n };\n }) => {\n const where = {\n reminderDate: {\n gte: new Date(dateRange.start),\n lt: new Date(dateRange.end)\n }\n };\n\n const $reminders = await models.reminder.findMany({\n where,\n orderBy: { reminderDate: 'asc' },\n include: { note: true }\n });\n\n return $reminders;\n }\n },\n Mutation: {\n createReminder: async (_, {\n noteId,\n reminderDate,\n priority,\n content\n }: {\n noteId: string;\n reminderDate: string;\n priority?: 'low' | 'medium' | 'high';\n content?: string;\n }) => {\n return models.reminder.create({\n data: {\n noteId: Number(noteId),\n reminderDate: new Date(reminderDate),\n completed: false,\n priority: priority || 'medium',\n content\n }\n });\n },\n updateReminder: async (_, {\n id,\n reminderDate,\n completed,\n priority,\n content\n }: {\n id: string;\n reminderDate?: string;\n completed?: boolean;\n priority?: 'low' | 'medium' | 'high';\n content?: string;\n }) => {\n const data: Partial<Reminder> = {};\n\n if (reminderDate) {\n data.reminderDate = new Date(reminderDate);\n }\n\n if (completed !== undefined) {\n data.completed = completed;\n }\n\n if (priority) {\n data.priority = priority;\n }\n\n if (content !== undefined) {\n data.content = content;\n }\n\n return models.reminder.update({\n where: { id: Number(id) },\n data\n });\n },\n deleteReminder: async (_, { id }: { id: string }) => {\n await models.reminder.delete({ where: { id: Number(id) } });\n return true;\n }\n },\n Reminder: {\n note: async (reminder) => {\n return models.note.findUnique({ where: { id: reminder.noteId } });\n }\n }\n};\n"],"mappings":"AAGA,OAAO,YAAY;AACnB,SAAS,WAAW;AAIb,MAAM,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyBrB,MAAM,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQtB,MAAM,mBAAmB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQzB,MAAM,mBAAmB;AAAA,MAC1B,YAAY;AAAA,MACZ,aAAa;AAAA,MACb,gBAAgB;AAAA;AAGf,MAAM,oBAAgC;AAAA,EACzC,OAAO;AAAA,IACH,eAAe,OAAO,GAAG;AAAA,MACrB;AAAA,MACA,aAAa;AAAA,QACT,OAAO;AAAA,QACP,QAAQ;AAAA,MACZ;AAAA,IACJ,MAGM;AACF,YAAM,QAAQ,EAAE,QAAQ,OAAO,MAAM,EAAE;AAEvC,YAAM,aAAa,OAAO,SAAS,SAAS;AAAA,QACxC;AAAA,QACA,SAAS,EAAE,cAAc,MAAM;AAAA,QAC/B,MAAM,OAAO,WAAW,KAAK;AAAA,QAC7B,MAAM,OAAO,WAAW,MAAM;AAAA,MAClC,CAAC;AAED,aAAO;AAAA,QACH,YAAY,OAAO,SAAS,MAAM,EAAE,MAAM,CAAC;AAAA,QAC3C,WAAW;AAAA,MACf;AAAA,IACJ;AAAA,IACA,mBAAmB,OAAO,GAAG;AAAA,MACzB,aAAa;AAAA,QACT,OAAO;AAAA,QACP,QAAQ;AAAA,MACZ;AAAA,IACJ,MAEM;AACF,YAAM,QAAQ,EAAE,WAAW,MAAM;AAEjC,YAAM,aAAa,OAAO,SAAS,SAAS;AAAA,QACxC;AAAA,QACA,SAAS,EAAE,cAAc,MAAM;AAAA,QAC/B,MAAM,OAAO,WAAW,KAAK;AAAA,QAC7B,MAAM,OAAO,WAAW,MAAM;AAAA,QAC9B,SAAS,EAAE,MAAM,KAAK;AAAA,MAC1B,CAAC;AAED,aAAO;AAAA,QACH,YAAY,OAAO,SAAS,MAAM,EAAE,MAAM,CAAC;AAAA,QAC3C,WAAW;AAAA,MACf;AAAA,IACJ;AAAA,IACA,sBAAsB,OAAO,GAAG,EAAE,UAAU,MAKtC;AACF,YAAM,QAAQ;AAAA,QACV,cAAc;AAAA,UACV,KAAK,IAAI,KAAK,UAAU,KAAK;AAAA,UAC7B,IAAI,IAAI,KAAK,UAAU,GAAG;AAAA,QAC9B;AAAA,MACJ;AAEA,YAAM,aAAa,MAAM,OAAO,SAAS,SAAS;AAAA,QAC9C;AAAA,QACA,SAAS,EAAE,cAAc,MAAM;AAAA,QAC/B,SAAS,EAAE,MAAM,KAAK;AAAA,MAC1B,CAAC;AAED,aAAO;AAAA,IACX;AAAA,EACJ;AAAA,EACA,UAAU;AAAA,IACN,gBAAgB,OAAO,GAAG;AAAA,MACtB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,MAKM;AACF,aAAO,OAAO,SAAS,OAAO;AAAA,QAC1B,MAAM;AAAA,UACF,QAAQ,OAAO,MAAM;AAAA,UACrB,cAAc,IAAI,KAAK,YAAY;AAAA,UACnC,WAAW;AAAA,UACX,UAAU,YAAY;AAAA,UACtB;AAAA,QACJ;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,IACA,gBAAgB,OAAO,GAAG;AAAA,MACtB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,MAMM;AACF,YAAM,OAA0B,CAAC;AAEjC,UAAI,cAAc;AACd,aAAK,eAAe,IAAI,KAAK,YAAY;AAAA,MAC7C;AAEA,UAAI,cAAc,QAAW;AACzB,aAAK,YAAY;AAAA,MACrB;AAEA,UAAI,UAAU;AACV,aAAK,WAAW;AAAA,MACpB;AAEA,UAAI,YAAY,QAAW;AACvB,aAAK,UAAU;AAAA,MACnB;AAEA,aAAO,OAAO,SAAS,OAAO;AAAA,QAC1B,OAAO,EAAE,IAAI,OAAO,EAAE,EAAE;AAAA,QACxB;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,IACA,gBAAgB,OAAO,GAAG,EAAE,GAAG,MAAsB;AACjD,YAAM,OAAO,SAAS,OAAO,EAAE,OAAO,EAAE,IAAI,OAAO,EAAE,EAAE,EAAE,CAAC;AAC1D,aAAO;AAAA,IACX;AAAA,EACJ;AAAA,EACA,UAAU;AAAA,IACN,MAAM,OAAO,aAAa;AACtB,aAAO,OAAO,KAAK,WAAW,EAAE,OAAO,EAAE,IAAI,SAAS,OAAO,EAAE,CAAC;AAAA,IACpE;AAAA,EACJ;AACJ;","names":[]}
@@ -1,81 +0,0 @@
1
- import models from "../../models.js";
2
- import { gql } from "../../modules/graphql.js";
3
- const tagType = gql`
4
- input PaginationInput {
5
- limit: Int!
6
- offset: Int!
7
- }
8
-
9
- input SearchFilterInput {
10
- query: String!
11
- }
12
-
13
- type Tag {
14
- id: ID!
15
- name: String!
16
- createdAt: String!
17
- updatedAt: String!
18
- referenceCount: Int!
19
- }
20
-
21
- type Tags {
22
- totalCount: Int!
23
- tags: [Tag!]!
24
- }
25
- `;
26
- const tagQuery = gql`
27
- type Query {
28
- allTags(searchFilter: SearchFilterInput, pagination: PaginationInput): Tags!
29
- }
30
- `;
31
- const tagMutation = gql`
32
- type Mutation {
33
- createTag(name: String!): Tag!
34
- }
35
- `;
36
- const tagTypeDefs = `
37
- ${tagType}
38
- ${tagQuery}
39
- ${tagMutation}
40
- `;
41
- const tagResolvers = {
42
- Query: {
43
- allTags: async (_, {
44
- searchFilter,
45
- pagination
46
- }) => {
47
- const where = {
48
- name: { contains: searchFilter.query },
49
- NOT: { notes: { none: {} } }
50
- };
51
- const $tags = models.tag.findMany({
52
- skip: pagination.offset,
53
- take: pagination.limit,
54
- where,
55
- orderBy: { notes: { _count: "desc" } }
56
- });
57
- return {
58
- totalCount: await models.tag.count({ where }),
59
- tags: await $tags
60
- };
61
- }
62
- },
63
- Mutation: {
64
- createTag: async (_, { name }) => {
65
- return models.tag.create({ data: { name } });
66
- }
67
- },
68
- Tag: {
69
- referenceCount: async (tag) => {
70
- return models.note.count({ where: { tags: { some: { id: tag.id } } } });
71
- }
72
- }
73
- };
74
- export {
75
- tagMutation,
76
- tagQuery,
77
- tagResolvers,
78
- tagType,
79
- tagTypeDefs
80
- };
81
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/schema/tag/index.ts"],"sourcesContent":["import type { IResolvers } from '@graphql-tools/utils';\n\nimport models, { type Tag, type Prisma } from '~/models.js';\nimport { gql } from '~/modules/graphql.js';\nimport type { Pagination, SearchFilter } from '~/types/index.js';\n\nexport const tagType = gql`\n input PaginationInput {\n limit: Int!\n offset: Int!\n }\n\n input SearchFilterInput {\n query: String!\n }\n\n type Tag {\n id: ID!\n name: String!\n createdAt: String!\n updatedAt: String!\n referenceCount: Int!\n }\n\n type Tags {\n totalCount: Int!\n tags: [Tag!]!\n }\n`;\n\nexport const tagQuery = gql`\n type Query {\n allTags(searchFilter: SearchFilterInput, pagination: PaginationInput): Tags!\n }\n`;\n\nexport const tagMutation = gql`\n type Mutation {\n createTag(name: String!): Tag!\n }\n`;\n\nexport const tagTypeDefs = `\n ${tagType}\n ${tagQuery}\n ${tagMutation}\n`;\n\nexport const tagResolvers: IResolvers = {\n Query: {\n allTags: async (_, {\n searchFilter,\n pagination\n }: {\n searchFilter: SearchFilter;\n pagination: Pagination;\n }) => {\n const where: Prisma.TagWhereInput = {\n name: { contains: searchFilter.query },\n NOT: { notes: { none: { } } }\n };\n const $tags = models.tag.findMany({\n skip: pagination.offset,\n take: pagination.limit,\n where,\n orderBy: { notes: { _count: 'desc' } }\n });\n\n return {\n totalCount: await models.tag.count({ where }),\n tags: await $tags\n };\n }\n },\n Mutation: {\n createTag: async (_, { name }: Tag) => {\n return models.tag.create({ data: { name } });\n }\n },\n Tag: {\n referenceCount: async (tag: Tag) => {\n return models.note.count({ where: { tags: { some: { id: tag.id } } } });\n }\n }\n};\n"],"mappings":"AAEA,OAAO,YAAuC;AAC9C,SAAS,WAAW;AAGb,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAwBhB,MAAM,WAAW;AAAA;AAAA;AAAA;AAAA;AAMjB,MAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAMpB,MAAM,cAAc;AAAA,MACrB,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,WAAW;AAAA;AAGV,MAAM,eAA2B;AAAA,EACpC,OAAO;AAAA,IACH,SAAS,OAAO,GAAG;AAAA,MACf;AAAA,MACA;AAAA,IACJ,MAGM;AACF,YAAM,QAA8B;AAAA,QAChC,MAAM,EAAE,UAAU,aAAa,MAAM;AAAA,QACrC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAE,EAAE,EAAE;AAAA,MAChC;AACA,YAAM,QAAQ,OAAO,IAAI,SAAS;AAAA,QAC9B,MAAM,WAAW;AAAA,QACjB,MAAM,WAAW;AAAA,QACjB;AAAA,QACA,SAAS,EAAE,OAAO,EAAE,QAAQ,OAAO,EAAE;AAAA,MACzC,CAAC;AAED,aAAO;AAAA,QACH,YAAY,MAAM,OAAO,IAAI,MAAM,EAAE,MAAM,CAAC;AAAA,QAC5C,MAAM,MAAM;AAAA,MAChB;AAAA,IACJ;AAAA,EACJ;AAAA,EACA,UAAU;AAAA,IACN,WAAW,OAAO,GAAG,EAAE,KAAK,MAAW;AACnC,aAAO,OAAO,IAAI,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAAA,IAC/C;AAAA,EACJ;AAAA,EACA,KAAK;AAAA,IACD,gBAAgB,OAAO,QAAa;AAChC,aAAO,OAAO,KAAK,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,IAAI,GAAG,EAAE,EAAE,EAAE,CAAC;AAAA,IAC1E;AAAA,EACJ;AACJ;","names":[]}
@@ -1,9 +0,0 @@
1
- import { Router } from "express";
2
- import * as views from "./views/index.js";
3
- import useAsync from "./modules/use-async.js";
4
- import { requireSessionForWrite } from "./modules/auth-guard.js";
5
- const createApiRouter = (authConfig, mcpAdminService) => Router().post("/auth/login", useAsync(views.createLoginHandler(authConfig))).post("/auth/logout", useAsync(views.createLogoutHandler(authConfig))).get("/auth/session", useAsync(views.createSessionStatusHandler(authConfig))).get("/mcp-admin/status", requireSessionForWrite(authConfig), useAsync(views.createMcpAdminStatusHandler(mcpAdminService))).post("/mcp-admin/enabled", requireSessionForWrite(authConfig), useAsync(views.createMcpAdminSetEnabledHandler(mcpAdminService))).post("/mcp-admin/token/rotate", requireSessionForWrite(authConfig), useAsync(views.createMcpAdminRotateTokenHandler(mcpAdminService))).post("/mcp-admin/token/revoke", requireSessionForWrite(authConfig), useAsync(views.createMcpAdminRevokeTokenHandler(mcpAdminService))).post("/image", requireSessionForWrite(authConfig), useAsync(views.uploadImage)).post("/image-from-src", requireSessionForWrite(authConfig), useAsync(views.uploadImageFromSrc));
6
- export {
7
- createApiRouter
8
- };
9
- //# sourceMappingURL=urls.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/urls.ts"],"sourcesContent":["import { Router } from 'express';\nimport * as views from './views/index.js';\nimport useAsync from './modules/use-async.js';\nimport { requireSessionForWrite } from './modules/auth-guard.js';\nimport type { AuthConfig } from './modules/auth-mode.js';\nimport type { McpAdminService } from './modules/mcp-admin.js';\n\ntype McpAdminApiService = Pick<McpAdminService, 'getStatus' | 'setEnabled' | 'rotateToken' | 'revokeActiveToken'>;\n\nexport const createApiRouter = (\n authConfig: AuthConfig,\n mcpAdminService: McpAdminApiService\n) => Router()\n .post('/auth/login', useAsync(views.createLoginHandler(authConfig)))\n .post('/auth/logout', useAsync(views.createLogoutHandler(authConfig)))\n .get('/auth/session', useAsync(views.createSessionStatusHandler(authConfig)))\n .get('/mcp-admin/status', requireSessionForWrite(authConfig), useAsync(views.createMcpAdminStatusHandler(mcpAdminService)))\n .post('/mcp-admin/enabled', requireSessionForWrite(authConfig), useAsync(views.createMcpAdminSetEnabledHandler(mcpAdminService)))\n .post('/mcp-admin/token/rotate', requireSessionForWrite(authConfig), useAsync(views.createMcpAdminRotateTokenHandler(mcpAdminService)))\n .post('/mcp-admin/token/revoke', requireSessionForWrite(authConfig), useAsync(views.createMcpAdminRevokeTokenHandler(mcpAdminService)))\n .post('/image', requireSessionForWrite(authConfig), useAsync(views.uploadImage))\n .post('/image-from-src', requireSessionForWrite(authConfig), useAsync(views.uploadImageFromSrc));\n"],"mappings":"AAAA,SAAS,cAAc;AACvB,YAAY,WAAW;AACvB,OAAO,cAAc;AACrB,SAAS,8BAA8B;AAMhC,MAAM,kBAAkB,CAC3B,YACA,oBACC,OAAO,EACP,KAAK,eAAe,SAAS,MAAM,mBAAmB,UAAU,CAAC,CAAC,EAClE,KAAK,gBAAgB,SAAS,MAAM,oBAAoB,UAAU,CAAC,CAAC,EACpE,IAAI,iBAAiB,SAAS,MAAM,2BAA2B,UAAU,CAAC,CAAC,EAC3E,IAAI,qBAAqB,uBAAuB,UAAU,GAAG,SAAS,MAAM,4BAA4B,eAAe,CAAC,CAAC,EACzH,KAAK,sBAAsB,uBAAuB,UAAU,GAAG,SAAS,MAAM,gCAAgC,eAAe,CAAC,CAAC,EAC/H,KAAK,2BAA2B,uBAAuB,UAAU,GAAG,SAAS,MAAM,iCAAiC,eAAe,CAAC,CAAC,EACrI,KAAK,2BAA2B,uBAAuB,UAAU,GAAG,SAAS,MAAM,iCAAiC,eAAe,CAAC,CAAC,EACrI,KAAK,UAAU,uBAAuB,UAAU,GAAG,SAAS,MAAM,WAAW,CAAC,EAC9E,KAAK,mBAAmB,uBAAuB,UAAU,GAAG,SAAS,MAAM,kBAAkB,CAAC;","names":[]}