@diskd-ai/sdk 5.1.2

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 (299) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +1036 -0
  3. package/dist/agentHub/StreamProtocolFetcher.d.ts +55 -0
  4. package/dist/agentHub/StreamProtocolFetcher.d.ts.map +1 -0
  5. package/dist/agentHub/StreamProtocolFetcher.js +176 -0
  6. package/dist/agentHub/StreamProtocolFetcher.js.map +1 -0
  7. package/dist/agentHub/StreamProtocolHandler.d.ts +18 -0
  8. package/dist/agentHub/StreamProtocolHandler.d.ts.map +1 -0
  9. package/dist/agentHub/StreamProtocolHandler.js +63 -0
  10. package/dist/agentHub/StreamProtocolHandler.js.map +1 -0
  11. package/dist/agentHub/agentHub.d.ts +30 -0
  12. package/dist/agentHub/agentHub.d.ts.map +1 -0
  13. package/dist/agentHub/agentHub.js +200 -0
  14. package/dist/agentHub/agentHub.js.map +1 -0
  15. package/dist/agentHub/agentHubTypes.d.ts +110 -0
  16. package/dist/agentHub/agentHubTypes.d.ts.map +1 -0
  17. package/dist/agentHub/agentHubTypes.js +8 -0
  18. package/dist/agentHub/agentHubTypes.js.map +1 -0
  19. package/dist/agentHub/streamProtocolMap.d.ts +328 -0
  20. package/dist/agentHub/streamProtocolMap.d.ts.map +1 -0
  21. package/dist/agentHub/streamProtocolMap.js +8 -0
  22. package/dist/agentHub/streamProtocolMap.js.map +1 -0
  23. package/dist/auth/createApiKeyAuth.d.ts +11 -0
  24. package/dist/auth/createApiKeyAuth.d.ts.map +1 -0
  25. package/dist/auth/createApiKeyAuth.js +31 -0
  26. package/dist/auth/createApiKeyAuth.js.map +1 -0
  27. package/dist/auth/createAuth.d.ts +3 -0
  28. package/dist/auth/createAuth.d.ts.map +1 -0
  29. package/dist/auth/createAuth.js +128 -0
  30. package/dist/auth/createAuth.js.map +1 -0
  31. package/dist/auth/createAuthBrowser.d.ts +3 -0
  32. package/dist/auth/createAuthBrowser.d.ts.map +1 -0
  33. package/dist/auth/createAuthBrowser.js +104 -0
  34. package/dist/auth/createAuthBrowser.js.map +1 -0
  35. package/dist/auth/jwtClaims.d.ts +3 -0
  36. package/dist/auth/jwtClaims.d.ts.map +1 -0
  37. package/dist/auth/jwtClaims.js +23 -0
  38. package/dist/auth/jwtClaims.js.map +1 -0
  39. package/dist/auth/keyfile.d.ts +10 -0
  40. package/dist/auth/keyfile.d.ts.map +1 -0
  41. package/dist/auth/keyfile.js +28 -0
  42. package/dist/auth/keyfile.js.map +1 -0
  43. package/dist/auth/oidcDiscovery.d.ts +9 -0
  44. package/dist/auth/oidcDiscovery.d.ts.map +1 -0
  45. package/dist/auth/oidcDiscovery.js +27 -0
  46. package/dist/auth/oidcDiscovery.js.map +1 -0
  47. package/dist/auth/pkce.d.ts +4 -0
  48. package/dist/auth/pkce.d.ts.map +1 -0
  49. package/dist/auth/pkce.js +43 -0
  50. package/dist/auth/pkce.js.map +1 -0
  51. package/dist/auth/sessionStorage.d.ts +8 -0
  52. package/dist/auth/sessionStorage.d.ts.map +1 -0
  53. package/dist/auth/sessionStorage.js +8 -0
  54. package/dist/auth/sessionStorage.js.map +1 -0
  55. package/dist/auth/tokenRequests.d.ts +15 -0
  56. package/dist/auth/tokenRequests.d.ts.map +1 -0
  57. package/dist/auth/tokenRequests.js +89 -0
  58. package/dist/auth/tokenRequests.js.map +1 -0
  59. package/dist/auth/types.d.ts +35 -0
  60. package/dist/auth/types.d.ts.map +1 -0
  61. package/dist/auth/types.js +2 -0
  62. package/dist/auth/types.js.map +1 -0
  63. package/dist/auth/urlRuntime.d.ts +7 -0
  64. package/dist/auth/urlRuntime.d.ts.map +1 -0
  65. package/dist/auth/urlRuntime.js +17 -0
  66. package/dist/auth/urlRuntime.js.map +1 -0
  67. package/dist/browser/index.d.ts +8 -0
  68. package/dist/browser/index.d.ts.map +1 -0
  69. package/dist/browser/index.js +3 -0
  70. package/dist/browser/index.js.map +1 -0
  71. package/dist/calendar/calendar.d.ts +21 -0
  72. package/dist/calendar/calendar.d.ts.map +1 -0
  73. package/dist/calendar/calendar.js +105 -0
  74. package/dist/calendar/calendar.js.map +1 -0
  75. package/dist/calendar/calendarTypes.d.ts +191 -0
  76. package/dist/calendar/calendarTypes.d.ts.map +1 -0
  77. package/dist/calendar/calendarTypes.js +4 -0
  78. package/dist/calendar/calendarTypes.js.map +1 -0
  79. package/dist/contacts/contacts.d.ts +10 -0
  80. package/dist/contacts/contacts.d.ts.map +1 -0
  81. package/dist/contacts/contacts.js +86 -0
  82. package/dist/contacts/contacts.js.map +1 -0
  83. package/dist/contacts/contactsTypes.d.ts +81 -0
  84. package/dist/contacts/contactsTypes.d.ts.map +1 -0
  85. package/dist/contacts/contactsTypes.js +4 -0
  86. package/dist/contacts/contactsTypes.js.map +1 -0
  87. package/dist/drive/DriveRepository.d.ts +88 -0
  88. package/dist/drive/DriveRepository.d.ts.map +1 -0
  89. package/dist/drive/DriveRepository.js +156 -0
  90. package/dist/drive/DriveRepository.js.map +1 -0
  91. package/dist/drive/crontab.d.ts +7 -0
  92. package/dist/drive/crontab.d.ts.map +1 -0
  93. package/dist/drive/crontab.js +374 -0
  94. package/dist/drive/crontab.js.map +1 -0
  95. package/dist/drive/crontabTypes.d.ts +136 -0
  96. package/dist/drive/crontabTypes.d.ts.map +1 -0
  97. package/dist/drive/crontabTypes.js +2 -0
  98. package/dist/drive/crontabTypes.js.map +1 -0
  99. package/dist/drive/drive.d.ts +8 -0
  100. package/dist/drive/drive.d.ts.map +1 -0
  101. package/dist/drive/drive.js +711 -0
  102. package/dist/drive/drive.js.map +1 -0
  103. package/dist/drive/driveDb.d.ts +6 -0
  104. package/dist/drive/driveDb.d.ts.map +1 -0
  105. package/dist/drive/driveDb.js +220 -0
  106. package/dist/drive/driveDb.js.map +1 -0
  107. package/dist/drive/driveDbTypes.d.ts +138 -0
  108. package/dist/drive/driveDbTypes.d.ts.map +1 -0
  109. package/dist/drive/driveDbTypes.js +5 -0
  110. package/dist/drive/driveDbTypes.js.map +1 -0
  111. package/dist/drive/driveTypes.d.ts +322 -0
  112. package/dist/drive/driveTypes.d.ts.map +1 -0
  113. package/dist/drive/driveTypes.js +5 -0
  114. package/dist/drive/driveTypes.js.map +1 -0
  115. package/dist/drive/rpc.d.ts +14 -0
  116. package/dist/drive/rpc.d.ts.map +1 -0
  117. package/dist/drive/rpc.js +48 -0
  118. package/dist/drive/rpc.js.map +1 -0
  119. package/dist/drive/session.d.ts +7 -0
  120. package/dist/drive/session.d.ts.map +1 -0
  121. package/dist/drive/session.js +450 -0
  122. package/dist/drive/session.js.map +1 -0
  123. package/dist/drive/sessionBuilder.d.ts +33 -0
  124. package/dist/drive/sessionBuilder.d.ts.map +1 -0
  125. package/dist/drive/sessionBuilder.js +77 -0
  126. package/dist/drive/sessionBuilder.js.map +1 -0
  127. package/dist/drive/sessionObject.d.ts +57 -0
  128. package/dist/drive/sessionObject.d.ts.map +1 -0
  129. package/dist/drive/sessionObject.js +191 -0
  130. package/dist/drive/sessionObject.js.map +1 -0
  131. package/dist/drive/sessionTypes.d.ts +182 -0
  132. package/dist/drive/sessionTypes.d.ts.map +1 -0
  133. package/dist/drive/sessionTypes.js +2 -0
  134. package/dist/drive/sessionTypes.js.map +1 -0
  135. package/dist/drive/typeorm/DriveDriver.d.ts +27 -0
  136. package/dist/drive/typeorm/DriveDriver.d.ts.map +1 -0
  137. package/dist/drive/typeorm/DriveDriver.js +86 -0
  138. package/dist/drive/typeorm/DriveDriver.js.map +1 -0
  139. package/dist/drive/typeorm/DriveQueryRunner.d.ts +15 -0
  140. package/dist/drive/typeorm/DriveQueryRunner.d.ts.map +1 -0
  141. package/dist/drive/typeorm/DriveQueryRunner.js +76 -0
  142. package/dist/drive/typeorm/DriveQueryRunner.js.map +1 -0
  143. package/dist/drive/typeorm/createDriveDataSource.d.ts +3 -0
  144. package/dist/drive/typeorm/createDriveDataSource.d.ts.map +1 -0
  145. package/dist/drive/typeorm/createDriveDataSource.js +36 -0
  146. package/dist/drive/typeorm/createDriveDataSource.js.map +1 -0
  147. package/dist/drive/typeorm/datasourceTypes.d.ts +56 -0
  148. package/dist/drive/typeorm/datasourceTypes.d.ts.map +1 -0
  149. package/dist/drive/typeorm/datasourceTypes.js +5 -0
  150. package/dist/drive/typeorm/datasourceTypes.js.map +1 -0
  151. package/dist/drive/types.d.ts +48 -0
  152. package/dist/drive/types.d.ts.map +1 -0
  153. package/dist/drive/types.js +2 -0
  154. package/dist/drive/types.js.map +1 -0
  155. package/dist/env/apiKey.d.ts +2 -0
  156. package/dist/env/apiKey.d.ts.map +1 -0
  157. package/dist/env/apiKey.js +11 -0
  158. package/dist/env/apiKey.js.map +1 -0
  159. package/dist/env/baseUrl.d.ts +3 -0
  160. package/dist/env/baseUrl.d.ts.map +1 -0
  161. package/dist/env/baseUrl.js +31 -0
  162. package/dist/env/baseUrl.js.map +1 -0
  163. package/dist/inbox/inboxTypes.d.ts +34 -0
  164. package/dist/inbox/inboxTypes.d.ts.map +1 -0
  165. package/dist/inbox/inboxTypes.js +5 -0
  166. package/dist/inbox/inboxTypes.js.map +1 -0
  167. package/dist/index.d.ts +56 -0
  168. package/dist/index.d.ts.map +1 -0
  169. package/dist/index.js +43 -0
  170. package/dist/index.js.map +1 -0
  171. package/dist/llmRouter/llmRouter.d.ts +23 -0
  172. package/dist/llmRouter/llmRouter.d.ts.map +1 -0
  173. package/dist/llmRouter/llmRouter.js +566 -0
  174. package/dist/llmRouter/llmRouter.js.map +1 -0
  175. package/dist/llmRouter/llmRouterTypes.d.ts +350 -0
  176. package/dist/llmRouter/llmRouterTypes.d.ts.map +1 -0
  177. package/dist/llmRouter/llmRouterTypes.js +5 -0
  178. package/dist/llmRouter/llmRouterTypes.js.map +1 -0
  179. package/dist/mcpHub/mcpHub.d.ts +23 -0
  180. package/dist/mcpHub/mcpHub.d.ts.map +1 -0
  181. package/dist/mcpHub/mcpHub.js +223 -0
  182. package/dist/mcpHub/mcpHub.js.map +1 -0
  183. package/dist/mcpHub/mcpHubTypes.d.ts +228 -0
  184. package/dist/mcpHub/mcpHubTypes.d.ts.map +1 -0
  185. package/dist/mcpHub/mcpHubTypes.js +5 -0
  186. package/dist/mcpHub/mcpHubTypes.js.map +1 -0
  187. package/dist/mcpTools/mcpTools.d.ts +31 -0
  188. package/dist/mcpTools/mcpTools.d.ts.map +1 -0
  189. package/dist/mcpTools/mcpTools.js +144 -0
  190. package/dist/mcpTools/mcpTools.js.map +1 -0
  191. package/dist/mcpTools/mcpToolsTypes.d.ts +45 -0
  192. package/dist/mcpTools/mcpToolsTypes.d.ts.map +1 -0
  193. package/dist/mcpTools/mcpToolsTypes.js +5 -0
  194. package/dist/mcpTools/mcpToolsTypes.js.map +1 -0
  195. package/dist/messagesStore/messagesStore.d.ts +22 -0
  196. package/dist/messagesStore/messagesStore.d.ts.map +1 -0
  197. package/dist/messagesStore/messagesStore.js +402 -0
  198. package/dist/messagesStore/messagesStore.js.map +1 -0
  199. package/dist/messagesStore/messagesStoreTypes.d.ts +327 -0
  200. package/dist/messagesStore/messagesStoreTypes.d.ts.map +1 -0
  201. package/dist/messagesStore/messagesStoreTypes.js +11 -0
  202. package/dist/messagesStore/messagesStoreTypes.js.map +1 -0
  203. package/dist/node/fastDns.d.ts +2 -0
  204. package/dist/node/fastDns.d.ts.map +1 -0
  205. package/dist/node/fastDns.js +119 -0
  206. package/dist/node/fastDns.js.map +1 -0
  207. package/dist/operatives/operatives.d.ts +22 -0
  208. package/dist/operatives/operatives.d.ts.map +1 -0
  209. package/dist/operatives/operatives.js +199 -0
  210. package/dist/operatives/operatives.js.map +1 -0
  211. package/dist/operatives/operativesTypes.d.ts +141 -0
  212. package/dist/operatives/operativesTypes.d.ts.map +1 -0
  213. package/dist/operatives/operativesTypes.js +6 -0
  214. package/dist/operatives/operativesTypes.js.map +1 -0
  215. package/dist/platformEvents/platformEvents.d.ts +14 -0
  216. package/dist/platformEvents/platformEvents.d.ts.map +1 -0
  217. package/dist/platformEvents/platformEvents.js +70 -0
  218. package/dist/platformEvents/platformEvents.js.map +1 -0
  219. package/dist/platformEvents/platformEventsTypes.d.ts +31 -0
  220. package/dist/platformEvents/platformEventsTypes.d.ts.map +1 -0
  221. package/dist/platformEvents/platformEventsTypes.js +8 -0
  222. package/dist/platformEvents/platformEventsTypes.js.map +1 -0
  223. package/dist/projects/projects.d.ts +19 -0
  224. package/dist/projects/projects.d.ts.map +1 -0
  225. package/dist/projects/projects.js +52 -0
  226. package/dist/projects/projects.js.map +1 -0
  227. package/dist/projects/projectsTypes.d.ts +47 -0
  228. package/dist/projects/projectsTypes.d.ts.map +1 -0
  229. package/dist/projects/projectsTypes.js +4 -0
  230. package/dist/projects/projectsTypes.js.map +1 -0
  231. package/dist/routineRuns/routineRuns.d.ts +19 -0
  232. package/dist/routineRuns/routineRuns.d.ts.map +1 -0
  233. package/dist/routineRuns/routineRuns.js +47 -0
  234. package/dist/routineRuns/routineRuns.js.map +1 -0
  235. package/dist/routineRuns/routineRunsTypes.d.ts +39 -0
  236. package/dist/routineRuns/routineRunsTypes.d.ts.map +1 -0
  237. package/dist/routineRuns/routineRunsTypes.js +4 -0
  238. package/dist/routineRuns/routineRunsTypes.js.map +1 -0
  239. package/dist/routines/routines.d.ts +19 -0
  240. package/dist/routines/routines.d.ts.map +1 -0
  241. package/dist/routines/routines.js +77 -0
  242. package/dist/routines/routines.js.map +1 -0
  243. package/dist/routines/routinesTypes.d.ts +106 -0
  244. package/dist/routines/routinesTypes.d.ts.map +1 -0
  245. package/dist/routines/routinesTypes.js +4 -0
  246. package/dist/routines/routinesTypes.js.map +1 -0
  247. package/dist/sdk/diskd.d.ts +3 -0
  248. package/dist/sdk/diskd.d.ts.map +1 -0
  249. package/dist/sdk/diskd.js +126 -0
  250. package/dist/sdk/diskd.js.map +1 -0
  251. package/dist/sdk/http.d.ts +13 -0
  252. package/dist/sdk/http.d.ts.map +1 -0
  253. package/dist/sdk/http.js +80 -0
  254. package/dist/sdk/http.js.map +1 -0
  255. package/dist/sdk/types.d.ts +115 -0
  256. package/dist/sdk/types.d.ts.map +1 -0
  257. package/dist/sdk/types.js +2 -0
  258. package/dist/sdk/types.js.map +1 -0
  259. package/dist/testing/auth.d.ts +8 -0
  260. package/dist/testing/auth.d.ts.map +1 -0
  261. package/dist/testing/auth.js +14 -0
  262. package/dist/testing/auth.js.map +1 -0
  263. package/dist/testing/fetchMock.d.ts +17 -0
  264. package/dist/testing/fetchMock.d.ts.map +1 -0
  265. package/dist/testing/fetchMock.js +46 -0
  266. package/dist/testing/fetchMock.js.map +1 -0
  267. package/dist/testing/index.d.ts +11 -0
  268. package/dist/testing/index.d.ts.map +1 -0
  269. package/dist/testing/index.js +11 -0
  270. package/dist/testing/index.js.map +1 -0
  271. package/dist/testing/integration.d.ts +33 -0
  272. package/dist/testing/integration.d.ts.map +1 -0
  273. package/dist/testing/integration.js +32 -0
  274. package/dist/testing/integration.js.map +1 -0
  275. package/dist/testing/jsonRpc.d.ts +9 -0
  276. package/dist/testing/jsonRpc.d.ts.map +1 -0
  277. package/dist/testing/jsonRpc.js +24 -0
  278. package/dist/testing/jsonRpc.js.map +1 -0
  279. package/dist/testing/rpcMock.d.ts +16 -0
  280. package/dist/testing/rpcMock.d.ts.map +1 -0
  281. package/dist/testing/rpcMock.js +28 -0
  282. package/dist/testing/rpcMock.js.map +1 -0
  283. package/dist/tgUserbot/tgUserbot.d.ts +23 -0
  284. package/dist/tgUserbot/tgUserbot.d.ts.map +1 -0
  285. package/dist/tgUserbot/tgUserbot.js +314 -0
  286. package/dist/tgUserbot/tgUserbot.js.map +1 -0
  287. package/dist/tgUserbot/tgUserbotTypes.d.ts +124 -0
  288. package/dist/tgUserbot/tgUserbotTypes.d.ts.map +1 -0
  289. package/dist/tgUserbot/tgUserbotTypes.js +5 -0
  290. package/dist/tgUserbot/tgUserbotTypes.js.map +1 -0
  291. package/dist/webNavigator/webNavigator.d.ts +22 -0
  292. package/dist/webNavigator/webNavigator.d.ts.map +1 -0
  293. package/dist/webNavigator/webNavigator.js +46 -0
  294. package/dist/webNavigator/webNavigator.js.map +1 -0
  295. package/dist/webNavigator/webNavigatorTypes.d.ts +133 -0
  296. package/dist/webNavigator/webNavigatorTypes.d.ts.map +1 -0
  297. package/dist/webNavigator/webNavigatorTypes.js +5 -0
  298. package/dist/webNavigator/webNavigatorTypes.js.map +1 -0
  299. package/package.json +90 -0
@@ -0,0 +1,402 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Drive Messages Store client -- JSON-RPC 2.0 (snake_case wire format)
3
+ //
4
+ // Concept: thin functional wrapper over `messages_store/*` methods
5
+ // served by drive's RPC endpoint. Each scope (mailbox -> folder ->
6
+ // message) is a closure that captures its identifiers, eliminating
7
+ // repetitive ID-passing on every call.
8
+ // ---------------------------------------------------------------------------
9
+ import { jsonRpcCall } from '../drive/rpc.js';
10
+ import { resolveDiskdGatewayUrl } from '../env/baseUrl.js';
11
+ const isObject = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
12
+ const raw = (result) => {
13
+ if (!isObject(result)) {
14
+ throw new Error('Invalid messages_store response: expected object');
15
+ }
16
+ return result;
17
+ };
18
+ const str = (obj, key) => {
19
+ const v = obj[key];
20
+ return typeof v === 'string' ? v : null;
21
+ };
22
+ const strRequired = (obj, key) => {
23
+ const v = str(obj, key);
24
+ if (v === null) {
25
+ throw new Error(`Invalid messages_store response: '${key}' must be a string`);
26
+ }
27
+ return v;
28
+ };
29
+ const num = (obj, key) => {
30
+ const v = obj[key];
31
+ if (typeof v !== 'number') {
32
+ throw new Error(`Invalid messages_store response: '${key}' must be a number`);
33
+ }
34
+ return v;
35
+ };
36
+ const bool = (obj, key) => {
37
+ const v = obj[key];
38
+ return typeof v === 'boolean' ? v : false;
39
+ };
40
+ const metadataObj = (obj, key) => {
41
+ const v = obj[key];
42
+ return isObject(v) ? v : {};
43
+ };
44
+ const payloadObj = (obj, key) => {
45
+ const v = obj[key];
46
+ return isObject(v) ? v : {};
47
+ };
48
+ const arr = (obj, key) => {
49
+ const v = obj[key];
50
+ return Array.isArray(v) ? v : [];
51
+ };
52
+ // -- decoders --
53
+ const decodeCreateMailbox = (o) => {
54
+ const r = raw(o);
55
+ return {
56
+ mailboxId: strRequired(r, 'mailbox_id'),
57
+ dbInode: strRequired(r, 'db_inode'),
58
+ drivePath: strRequired(r, 'drive_path'),
59
+ };
60
+ };
61
+ const decodeMailboxSummary = (o) => {
62
+ const r = raw(o);
63
+ return {
64
+ mailboxId: strRequired(r, 'mailbox_id'),
65
+ displayName: strRequired(r, 'display_name'),
66
+ dbInode: strRequired(r, 'db_inode'),
67
+ recordCount: num(r, 'record_count'),
68
+ sizeBytes: num(r, 'size_bytes'),
69
+ updatedAt: strRequired(r, 'updated_at'),
70
+ };
71
+ };
72
+ const decodeInitMailbox = (o) => {
73
+ const r = raw(o);
74
+ return {
75
+ mailboxId: strRequired(r, 'mailbox_id'),
76
+ schemaVersion: num(r, 'schema_version'),
77
+ };
78
+ };
79
+ const decodeDeleteMailbox = (o) => {
80
+ const r = raw(o);
81
+ return {
82
+ mailboxId: strRequired(r, 'mailbox_id'),
83
+ deleted: bool(r, 'deleted'),
84
+ };
85
+ };
86
+ const decodeUpsertFolder = (o) => {
87
+ const r = raw(o);
88
+ return {
89
+ folderId: strRequired(r, 'folder_id'),
90
+ created: bool(r, 'created'),
91
+ };
92
+ };
93
+ const decodeFolderSummary = (o) => {
94
+ const r = raw(o);
95
+ return {
96
+ folderId: strRequired(r, 'folder_id'),
97
+ displayName: strRequired(r, 'display_name'),
98
+ metadata: metadataObj(r, 'metadata'),
99
+ messageCount: num(r, 'message_count'),
100
+ updatedAt: strRequired(r, 'updated_at'),
101
+ };
102
+ };
103
+ const decodeFolderGet = (o) => {
104
+ const r = raw(o);
105
+ const folder = r.folder;
106
+ if (!isObject(folder)) {
107
+ throw new Error("Invalid messages_store response: 'folder' must be an object");
108
+ }
109
+ return decodeFolderSummary(folder);
110
+ };
111
+ const decodeDeleteFolder = (o) => {
112
+ const r = raw(o);
113
+ return {
114
+ folderId: strRequired(r, 'folder_id'),
115
+ deleted: bool(r, 'deleted'),
116
+ deletedMessageCount: num(r, 'deleted_message_count'),
117
+ };
118
+ };
119
+ const decodeUpsertBatch = (o) => {
120
+ const r = raw(o);
121
+ return {
122
+ inserted: num(r, 'inserted'),
123
+ updated: num(r, 'updated'),
124
+ };
125
+ };
126
+ const decodeDeleteBatch = (o) => {
127
+ const r = raw(o);
128
+ return { deleted: num(r, 'deleted') };
129
+ };
130
+ const decodeStoredMessage = (o) => {
131
+ const r = raw(o);
132
+ return {
133
+ externalId: strRequired(r, 'external_id'),
134
+ payload: payloadObj(r, 'payload'),
135
+ createdAt: strRequired(r, 'created_at'),
136
+ updatedAt: strRequired(r, 'updated_at'),
137
+ };
138
+ };
139
+ const decodeListMessages = (o) => {
140
+ const r = raw(o);
141
+ return {
142
+ items: arr(r, 'items').map(decodeStoredMessage),
143
+ nextCursor: str(r, 'next_cursor'),
144
+ };
145
+ };
146
+ const decodeGetMessage = (o) => {
147
+ const r = raw(o);
148
+ const message = r.message;
149
+ if (!isObject(message)) {
150
+ throw new Error("Invalid messages_store response: 'message' must be an object");
151
+ }
152
+ return decodeStoredMessage(message);
153
+ };
154
+ const decodeAttachmentUploadStart = (o) => {
155
+ const r = raw(o);
156
+ return {
157
+ intentId: strRequired(r, 'intent_id'),
158
+ uploadUrl: strRequired(r, 'upload_url'),
159
+ };
160
+ };
161
+ const decodeAttachmentUploadCommit = (o) => {
162
+ const r = raw(o);
163
+ return {
164
+ attachmentId: strRequired(r, 'attachment_id'),
165
+ driveInode: strRequired(r, 'drive_inode'),
166
+ sizeBytes: num(r, 'size_bytes'),
167
+ };
168
+ };
169
+ const decodeAttachmentSummary = (o) => {
170
+ const r = raw(o);
171
+ return {
172
+ attachmentId: strRequired(r, 'attachment_id'),
173
+ filename: strRequired(r, 'filename'),
174
+ contentType: strRequired(r, 'content_type'),
175
+ sizeBytes: num(r, 'size_bytes'),
176
+ driveInode: strRequired(r, 'drive_inode'),
177
+ createdAt: strRequired(r, 'created_at'),
178
+ };
179
+ };
180
+ const decodeAttachmentDownloadUrl = (o) => {
181
+ const r = raw(o);
182
+ return {
183
+ url: strRequired(r, 'url'),
184
+ expiresAt: strRequired(r, 'expires_at'),
185
+ };
186
+ };
187
+ const decodeAttachmentDelete = (o) => {
188
+ const r = raw(o);
189
+ return { deleted: bool(r, 'deleted') };
190
+ };
191
+ // ---------------------------------------------------------------------------
192
+ // Encode helpers (domain camelCase -> wire snake_case)
193
+ // ---------------------------------------------------------------------------
194
+ const optional = (key, value) => value !== undefined ? { [key]: value } : {};
195
+ const encodeIncomingMessage = (m) => ({
196
+ external_id: m.externalId,
197
+ payload: m.payload,
198
+ });
199
+ /** Build the message-scoped client (attachments only). */
200
+ const makeMessageScoped = (call, mailboxId, folderId, externalId) => ({
201
+ attachments: {
202
+ uploadStart: async (p) => {
203
+ const result = await call('messages_store/attachment/upload-start', {
204
+ mailbox_id: mailboxId,
205
+ folder_id: folderId,
206
+ external_id: externalId,
207
+ attachment_id: p.attachmentId,
208
+ filename: p.filename,
209
+ content_type: p.contentType,
210
+ size_bytes: p.sizeBytes,
211
+ ...optional('auto_commit', p.autoCommit),
212
+ });
213
+ return decodeAttachmentUploadStart(result);
214
+ },
215
+ uploadCommit: async (p) => {
216
+ const result = await call('messages_store/attachment/upload-commit', {
217
+ mailbox_id: mailboxId,
218
+ folder_id: folderId,
219
+ external_id: externalId,
220
+ attachment_id: p.attachmentId,
221
+ intent_id: p.intentId,
222
+ etag: p.etag,
223
+ ...optional('auto_commit', p.autoCommit),
224
+ });
225
+ return decodeAttachmentUploadCommit(result);
226
+ },
227
+ list: async () => {
228
+ const result = await call('messages_store/attachment/list', {
229
+ mailbox_id: mailboxId,
230
+ folder_id: folderId,
231
+ external_id: externalId,
232
+ });
233
+ const items = arr(raw(result), 'items');
234
+ return items.map(decodeAttachmentSummary);
235
+ },
236
+ downloadUrl: async (p) => {
237
+ const result = await call('messages_store/attachment/download-url', {
238
+ mailbox_id: mailboxId,
239
+ folder_id: folderId,
240
+ external_id: externalId,
241
+ attachment_id: p.attachmentId,
242
+ });
243
+ return decodeAttachmentDownloadUrl(result);
244
+ },
245
+ delete: async (p) => {
246
+ const result = await call('messages_store/attachment/delete', {
247
+ mailbox_id: mailboxId,
248
+ folder_id: folderId,
249
+ external_id: externalId,
250
+ attachment_id: p.attachmentId,
251
+ ...optional('auto_commit', p.autoCommit),
252
+ });
253
+ return decodeAttachmentDelete(result);
254
+ },
255
+ },
256
+ });
257
+ /** Build the folder-scoped client (folder CRUD + messages + .message()). */
258
+ const makeFolderScoped = (call, mailboxId, folderId) => ({
259
+ upsert: async (p) => {
260
+ const result = await call('messages_store/folder/upsert', {
261
+ mailbox_id: mailboxId,
262
+ folder_id: folderId,
263
+ display_name: p.displayName,
264
+ ...optional('metadata', p.metadata),
265
+ ...optional('auto_commit', p.autoCommit),
266
+ });
267
+ return decodeUpsertFolder(result);
268
+ },
269
+ get: async () => {
270
+ const result = await call('messages_store/folder/get', {
271
+ mailbox_id: mailboxId,
272
+ folder_id: folderId,
273
+ });
274
+ return decodeFolderGet(result);
275
+ },
276
+ delete: async (p) => {
277
+ const result = await call('messages_store/folder/delete', {
278
+ mailbox_id: mailboxId,
279
+ folder_id: folderId,
280
+ ...optional('auto_commit', p?.autoCommit),
281
+ });
282
+ return decodeDeleteFolder(result);
283
+ },
284
+ upsertBatch: async (p) => {
285
+ const result = await call('messages_store/upsert-batch', {
286
+ mailbox_id: mailboxId,
287
+ folder_id: folderId,
288
+ items: p.items.map(encodeIncomingMessage),
289
+ ...optional('auto_commit', p.autoCommit),
290
+ });
291
+ return decodeUpsertBatch(result);
292
+ },
293
+ deleteBatch: async (p) => {
294
+ const result = await call('messages_store/delete-batch', {
295
+ mailbox_id: mailboxId,
296
+ folder_id: folderId,
297
+ external_ids: [...p.externalIds],
298
+ ...optional('auto_commit', p.autoCommit),
299
+ });
300
+ return decodeDeleteBatch(result);
301
+ },
302
+ listMessages: async (p) => {
303
+ const result = await call('messages_store/list', {
304
+ mailbox_id: mailboxId,
305
+ folder_id: folderId,
306
+ ...optional('limit', p?.limit),
307
+ ...optional('cursor', p?.cursor),
308
+ });
309
+ return decodeListMessages(result);
310
+ },
311
+ getMessage: async (p) => {
312
+ const result = await call('messages_store/get', {
313
+ mailbox_id: mailboxId,
314
+ folder_id: folderId,
315
+ external_id: p.externalId,
316
+ });
317
+ return decodeGetMessage(result);
318
+ },
319
+ message: ({ externalId }) => makeMessageScoped(call, mailboxId, folderId, externalId),
320
+ });
321
+ /** Build the mailbox-scoped client (mailbox CRUD + folder helpers + .folder()). */
322
+ const makeMailboxScoped = (call, mailboxId) => ({
323
+ init: async (p) => {
324
+ const result = await call('messages_store/init', {
325
+ mailbox_id: mailboxId,
326
+ ...optional('auto_commit', p?.autoCommit),
327
+ });
328
+ return decodeInitMailbox(result);
329
+ },
330
+ delete: async () => {
331
+ const result = await call('messages_store/delete_mailbox', { mailbox_id: mailboxId });
332
+ return decodeDeleteMailbox(result);
333
+ },
334
+ upsertFolder: async (p) => {
335
+ const result = await call('messages_store/folder/upsert', {
336
+ mailbox_id: mailboxId,
337
+ folder_id: p.folderId,
338
+ display_name: p.displayName,
339
+ ...optional('metadata', p.metadata),
340
+ ...optional('auto_commit', p.autoCommit),
341
+ });
342
+ return decodeUpsertFolder(result);
343
+ },
344
+ listFolders: async () => {
345
+ const result = await call('messages_store/folder/list', { mailbox_id: mailboxId });
346
+ const items = arr(raw(result), 'folders');
347
+ return items.map(decodeFolderSummary);
348
+ },
349
+ folder: ({ folderId }) => makeFolderScoped(call, mailboxId, folderId),
350
+ });
351
+ // ---------------------------------------------------------------------------
352
+ // Top-level client factory
353
+ // ---------------------------------------------------------------------------
354
+ /**
355
+ * Creates a Messages Store client bound to a given auth module.
356
+ *
357
+ * The store's JSON-RPC methods are served by drive's RPC endpoint
358
+ * (`os/drive/api/v1`); we resolve the same gateway URL here.
359
+ *
360
+ * Example:
361
+ * ```ts
362
+ * const messagesStore = diskd.os.messagesStore({ auth });
363
+ * const mailbox = messagesStore.mailbox({ mailboxId: 'gmail-acme' });
364
+ * await mailbox.init();
365
+ * const folder = mailbox.folder({ folderId: 'INBOX' });
366
+ * await folder.upsertBatch({ items: [...] });
367
+ * ```
368
+ */
369
+ export const createMessagesStoreClient = (params) => {
370
+ const rpcUrl = params.url
371
+ ? params.url.replace(/\/+$/, '')
372
+ : `${resolveDiskdGatewayUrl('os/drive')}/api/v1`;
373
+ let nextId = 1;
374
+ const call = async (method, rpcParams) => {
375
+ const id = nextId;
376
+ nextId += 1;
377
+ if (params.auth.getRequestHeaders) {
378
+ const headers = await params.auth.getRequestHeaders();
379
+ return jsonRpcCall({ url: rpcUrl, headers, method, rpcParams, id });
380
+ }
381
+ const bearerToken = await params.auth.getAccessToken();
382
+ return jsonRpcCall({ url: rpcUrl, bearerToken, method, rpcParams, id });
383
+ };
384
+ return {
385
+ createMailbox: async (p) => {
386
+ const result = await call('messages_store/create_mailbox', {
387
+ mailbox_id: p.mailboxId,
388
+ display_name: p.displayName,
389
+ ...optional('metadata', p.metadata),
390
+ ...optional('recreate', p.recreate),
391
+ });
392
+ return decodeCreateMailbox(result);
393
+ },
394
+ listMailboxes: async () => {
395
+ const result = await call('messages_store/list_mailboxes', {});
396
+ const items = arr(raw(result), 'mailboxes');
397
+ return items.map(decodeMailboxSummary);
398
+ },
399
+ mailbox: ({ mailboxId }) => makeMailboxScoped(call, mailboxId),
400
+ };
401
+ };
402
+ //# sourceMappingURL=messagesStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messagesStore.js","sourceRoot":"","sources":["../../src/messagesStore/messagesStore.ts"],"names":[],"mappings":"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"}