@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,57 @@
1
+ import type { MessageParams } from './sessionBuilder.js';
2
+ import type { DriveScopedSessionDeleteParams, DriveScopedSessionOpenParams, DriveScopedSessionSaveParams, DriveScopedSessionStartParams, DriveSessionClient, DriveSessionDeleteResult, DriveSessionDocument, DriveSessionGetMessageRangeResult, DriveSessionListResult, DriveSessionMessage, DriveSessionSaveParams, DriveSessionSaveResult } from './sessionTypes.js';
3
+ export type DriveSession = {
4
+ readonly projectId: string;
5
+ readonly sessionId: string;
6
+ readonly document: DriveSessionDocument;
7
+ readonly messages: readonly DriveSessionMessage[];
8
+ readonly messageCount: number;
9
+ readonly append: (messages: readonly DriveSessionMessage[]) => Promise<void>;
10
+ readonly rollback: (afterMessageId: string) => Promise<void>;
11
+ readonly remove: (messageIds: readonly string[]) => Promise<void>;
12
+ readonly fork: (params: {
13
+ readonly atMessageId: string;
14
+ }) => Promise<DriveSession>;
15
+ readonly refresh: () => Promise<void>;
16
+ readonly loadMore: (params: {
17
+ readonly limit: number;
18
+ }) => Promise<DriveSessionGetMessageRangeResult>;
19
+ readonly dispose: () => void;
20
+ };
21
+ export type DriveSessionManager = {
22
+ readonly start: (params: {
23
+ readonly projectId: string;
24
+ readonly title?: string;
25
+ readonly workspaceId?: string;
26
+ }) => Promise<DriveSession>;
27
+ readonly open: (params: {
28
+ readonly projectId: string;
29
+ readonly sessionId: string;
30
+ readonly limit?: number;
31
+ }) => Promise<DriveSession>;
32
+ readonly save: (params: DriveSessionSaveParams) => Promise<DriveSessionSaveResult>;
33
+ readonly list: (params: {
34
+ readonly projectId: string;
35
+ }) => Promise<DriveSessionListResult>;
36
+ readonly delete: (params: {
37
+ readonly projectId: string;
38
+ readonly sessionId: string;
39
+ }) => Promise<DriveSessionDeleteResult>;
40
+ readonly message: (params: MessageParams) => DriveSessionMessage;
41
+ };
42
+ export type DriveScopedSessionManager = {
43
+ readonly start: (params: DriveScopedSessionStartParams) => Promise<DriveSession>;
44
+ readonly open: (params: DriveScopedSessionOpenParams) => Promise<DriveSession>;
45
+ readonly save: (params: DriveScopedSessionSaveParams) => Promise<DriveSessionSaveResult>;
46
+ readonly list: () => Promise<DriveSessionListResult>;
47
+ readonly delete: (params: DriveScopedSessionDeleteParams) => Promise<DriveSessionDeleteResult>;
48
+ readonly message: (params: MessageParams) => DriveSessionMessage;
49
+ };
50
+ export declare const createDriveSessionManager: (params: {
51
+ readonly rpc: DriveSessionClient;
52
+ }) => DriveSessionManager;
53
+ export declare const createScopedDriveSessionManager: (params: {
54
+ readonly manager: DriveSessionManager;
55
+ readonly projectId: string;
56
+ }) => DriveScopedSessionManager;
57
+ //# sourceMappingURL=sessionObject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessionObject.d.ts","sourceRoot":"","sources":["../../src/drive/sessionObject.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,191 @@
1
+ import { buildMessage, buildMinimalDocument, generateUlid } from './sessionBuilder.js';
2
+ const assertNotDisposed = (state) => {
3
+ if (state.disposed) {
4
+ throw new Error('DriveSession is disposed');
5
+ }
6
+ };
7
+ const createDriveSession = (params) => {
8
+ const state = {
9
+ document: params.document,
10
+ messages: params.messages,
11
+ messageCount: params.messageCount,
12
+ disposed: false,
13
+ };
14
+ const { rpc, projectId, sessionId } = params;
15
+ const session = {
16
+ get projectId() {
17
+ return projectId;
18
+ },
19
+ get sessionId() {
20
+ return sessionId;
21
+ },
22
+ get document() {
23
+ return state.document;
24
+ },
25
+ get messages() {
26
+ return state.messages;
27
+ },
28
+ get messageCount() {
29
+ return state.messageCount;
30
+ },
31
+ append: async (messages) => {
32
+ assertNotDisposed(state);
33
+ const result = await rpc.appendMessages({ projectId, sessionId, messages });
34
+ state.messageCount = result.messageCount;
35
+ state.messages = [...state.messages, ...messages];
36
+ },
37
+ rollback: async (afterMessageId) => {
38
+ assertNotDisposed(state);
39
+ const result = await rpc.deleteMessages({
40
+ projectId,
41
+ sessionId,
42
+ rollbackAfterMessageId: afterMessageId,
43
+ });
44
+ state.messageCount = result.messageCount;
45
+ const idx = state.messages.findIndex((m) => m.id === afterMessageId);
46
+ if (idx >= 0) {
47
+ state.messages = state.messages.slice(0, idx);
48
+ }
49
+ },
50
+ remove: async (messageIds) => {
51
+ assertNotDisposed(state);
52
+ const result = await rpc.deleteMessages({ projectId, sessionId, messageIds });
53
+ state.messageCount = result.messageCount;
54
+ const idSet = new Set(messageIds);
55
+ state.messages = state.messages.filter((m) => !idSet.has(m.id));
56
+ },
57
+ fork: async (forkParams) => {
58
+ assertNotDisposed(state);
59
+ const full = await rpc.get({ projectId, sessionId });
60
+ const allMessages = full.session.messages;
61
+ const forkIdx = allMessages.findIndex((m) => m.id === forkParams.atMessageId);
62
+ if (forkIdx < 0) {
63
+ throw new Error(`Fork point message '${forkParams.atMessageId}' not found in session`);
64
+ }
65
+ const forkedMessages = allMessages.slice(0, forkIdx + 1);
66
+ const newSessionId = generateUlid();
67
+ const forkedDoc = {
68
+ ...full.session,
69
+ id: newSessionId,
70
+ messages: forkedMessages,
71
+ forkSourceSessionId: sessionId,
72
+ forkSourceMessageId: forkParams.atMessageId,
73
+ updatedAt: new Date().toISOString(),
74
+ };
75
+ const saveResult = await rpc.save({ projectId, session: forkedDoc });
76
+ return createDriveSession({
77
+ rpc,
78
+ projectId,
79
+ sessionId: newSessionId,
80
+ document: { ...forkedDoc, messages: [] },
81
+ messages: forkedMessages,
82
+ messageCount: saveResult.messageCount,
83
+ });
84
+ },
85
+ refresh: async () => {
86
+ assertNotDisposed(state);
87
+ const result = await rpc.get({ projectId, sessionId });
88
+ state.document = { ...result.session, messages: [] };
89
+ state.messages = result.session.messages;
90
+ state.messageCount = result.session.messages.length;
91
+ },
92
+ loadMore: async (loadParams) => {
93
+ assertNotDisposed(state);
94
+ const oldestId = state.messages.length > 0 ? state.messages[0]?.id : undefined;
95
+ const result = await rpc.getMessageRange({
96
+ projectId,
97
+ sessionId,
98
+ limit: loadParams.limit,
99
+ ...(oldestId !== undefined ? { before: oldestId } : {}),
100
+ });
101
+ state.messages = [...result.messages, ...state.messages];
102
+ return result;
103
+ },
104
+ dispose: () => {
105
+ state.disposed = true;
106
+ },
107
+ };
108
+ return session;
109
+ };
110
+ export const createDriveSessionManager = (params) => {
111
+ const { rpc } = params;
112
+ return {
113
+ start: async (startParams) => {
114
+ const sessionId = generateUlid();
115
+ const doc = buildMinimalDocument({
116
+ sessionId,
117
+ projectId: startParams.projectId,
118
+ title: startParams.title,
119
+ workspaceId: startParams.workspaceId,
120
+ });
121
+ const saveResult = await rpc.save({ projectId: startParams.projectId, session: doc });
122
+ return createDriveSession({
123
+ rpc,
124
+ projectId: startParams.projectId,
125
+ sessionId,
126
+ document: doc,
127
+ messages: [],
128
+ messageCount: saveResult.messageCount,
129
+ });
130
+ },
131
+ open: async (openParams) => {
132
+ const { projectId, sessionId, limit } = openParams;
133
+ if (limit !== undefined) {
134
+ const result = await rpc.getPreview({ projectId, sessionId, limit });
135
+ return createDriveSession({
136
+ rpc,
137
+ projectId,
138
+ sessionId,
139
+ document: result.session,
140
+ messages: result.messages,
141
+ messageCount: result.messageCount,
142
+ });
143
+ }
144
+ const result = await rpc.get({ projectId, sessionId });
145
+ return createDriveSession({
146
+ rpc,
147
+ projectId,
148
+ sessionId,
149
+ document: { ...result.session, messages: [] },
150
+ messages: result.session.messages,
151
+ messageCount: result.session.messages.length,
152
+ });
153
+ },
154
+ save: async (saveParams) => {
155
+ return rpc.save(saveParams);
156
+ },
157
+ list: async (listParams) => {
158
+ return rpc.list(listParams);
159
+ },
160
+ delete: async (deleteParams) => {
161
+ return rpc.delete(deleteParams);
162
+ },
163
+ message: (msgParams) => {
164
+ return buildMessage(msgParams);
165
+ },
166
+ };
167
+ };
168
+ export const createScopedDriveSessionManager = (params) => {
169
+ const { manager, projectId } = params;
170
+ return {
171
+ start: async (startParams) => {
172
+ return manager.start({ ...startParams, projectId });
173
+ },
174
+ open: async (openParams) => {
175
+ return manager.open({ ...openParams, projectId });
176
+ },
177
+ save: async (saveParams) => {
178
+ return manager.save({ ...saveParams, projectId });
179
+ },
180
+ list: async () => {
181
+ return manager.list({ projectId });
182
+ },
183
+ delete: async (deleteParams) => {
184
+ return manager.delete({ ...deleteParams, projectId });
185
+ },
186
+ message: (msgParams) => {
187
+ return manager.message(msgParams);
188
+ },
189
+ };
190
+ };
191
+ //# sourceMappingURL=sessionObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessionObject.js","sourceRoot":"","sources":["../../src/drive/sessionObject.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,182 @@
1
+ export type JsonScalar = boolean | number | string | null;
2
+ export type JsonValue = JsonScalar | JsonObject | readonly JsonValue[];
3
+ export type JsonObject = {
4
+ readonly [key: string]: JsonValue;
5
+ };
6
+ export type DriveSessionConfig = {
7
+ readonly operativeId: string | null;
8
+ readonly provider: string | null;
9
+ readonly model: string | null;
10
+ readonly promptText: string | null;
11
+ readonly driveSourcesMuted: boolean;
12
+ };
13
+ export type DriveSessionExchange = {
14
+ readonly id: string;
15
+ readonly kind: string;
16
+ readonly metadata: JsonObject;
17
+ readonly createdAt: string;
18
+ };
19
+ export type DriveSessionParticipant = {
20
+ readonly exchangeId: string;
21
+ readonly participantKind: string;
22
+ readonly participantId: string;
23
+ readonly joinedAt: string;
24
+ readonly leftAt: string | null;
25
+ };
26
+ export type DriveSessionMessage = {
27
+ readonly id: string;
28
+ readonly role: string;
29
+ readonly participantKind: string;
30
+ readonly participantId: string | null;
31
+ readonly participantName: string | null;
32
+ readonly participantSlug: string | null;
33
+ readonly content: string | null;
34
+ readonly contentBlocksJson: string | null;
35
+ readonly sourceOrigin: string | null;
36
+ readonly turnCorrelationId: string | null;
37
+ readonly turnContextJson: string | null;
38
+ readonly functionCall: JsonObject | null;
39
+ readonly toolCalls: readonly JsonObject[] | null;
40
+ readonly toolCallId: string | null;
41
+ readonly context: JsonObject | null;
42
+ readonly metadata: JsonObject | null;
43
+ readonly attachments: readonly string[] | null;
44
+ readonly subtype: string | null;
45
+ readonly parentMessageId: string | null;
46
+ readonly isSidechain: boolean;
47
+ readonly tokenCount: number | null;
48
+ readonly createdAt: string;
49
+ readonly updatedAt: string | null;
50
+ readonly deletedAt: string | null;
51
+ };
52
+ export type DriveSessionDocument = {
53
+ readonly id: string;
54
+ readonly workspaceId: string;
55
+ readonly projectId: string;
56
+ readonly title: string | null;
57
+ readonly config: DriveSessionConfig;
58
+ readonly exchanges: readonly DriveSessionExchange[];
59
+ readonly participants: readonly DriveSessionParticipant[];
60
+ readonly messages: readonly DriveSessionMessage[];
61
+ readonly createdAt: string;
62
+ readonly updatedAt: string;
63
+ readonly sourceOrigin: string | null;
64
+ readonly forkSourceSessionId: string | null;
65
+ readonly forkSourceMessageId: string | null;
66
+ };
67
+ export type DriveSessionProjectScopeRef = {
68
+ readonly scopeType: 'project';
69
+ readonly projectId: string;
70
+ };
71
+ export type DriveSessionScopeRef = DriveSessionProjectScopeRef;
72
+ export type DriveSessionSaveParams = {
73
+ readonly projectId: string;
74
+ readonly session: DriveSessionDocument;
75
+ readonly attributes?: readonly string[];
76
+ };
77
+ export type DriveSessionSaveResult = {
78
+ readonly sessionId: string;
79
+ readonly messageCount: number;
80
+ readonly updatedAt: string;
81
+ };
82
+ export type DriveSessionGetParams = {
83
+ readonly projectId: string;
84
+ readonly sessionId: string;
85
+ };
86
+ export type DriveSessionGetResult = {
87
+ readonly session: DriveSessionDocument;
88
+ };
89
+ export type DriveSessionGetPreviewParams = {
90
+ readonly projectId: string;
91
+ readonly sessionId: string;
92
+ readonly limit?: number;
93
+ };
94
+ export type DriveSessionGetPreviewResult = {
95
+ readonly session: DriveSessionDocument;
96
+ readonly messages: readonly DriveSessionMessage[];
97
+ readonly messageCount: number;
98
+ };
99
+ export type DriveSessionGetMessageRangeParams = {
100
+ readonly projectId: string;
101
+ readonly sessionId: string;
102
+ readonly limit: number;
103
+ readonly before?: string;
104
+ };
105
+ export type DriveSessionGetMessageRangeResult = {
106
+ readonly messages: readonly DriveSessionMessage[];
107
+ readonly hasMore: boolean;
108
+ };
109
+ export type DriveSessionListParams = {
110
+ readonly projectId: string;
111
+ };
112
+ export type DriveSessionListItem = {
113
+ readonly sessionId: string;
114
+ readonly title: string | null;
115
+ readonly messageCount: number;
116
+ readonly updatedAt: string;
117
+ readonly provider: string | null;
118
+ readonly model: string | null;
119
+ };
120
+ export type DriveSessionListResult = {
121
+ readonly items: readonly DriveSessionListItem[];
122
+ };
123
+ export type DriveSessionAppendMessagesParams = {
124
+ readonly projectId: string;
125
+ readonly sessionId: string;
126
+ readonly messages: readonly DriveSessionMessage[];
127
+ };
128
+ export type DriveSessionAppendMessagesResult = {
129
+ readonly sessionId: string;
130
+ readonly messageCount: number;
131
+ readonly updatedAt: string;
132
+ };
133
+ export type DriveSessionDeleteMessagesByIdsParams = {
134
+ readonly projectId: string;
135
+ readonly sessionId: string;
136
+ readonly messageIds: readonly string[];
137
+ };
138
+ export type DriveSessionDeleteMessagesRollbackParams = {
139
+ readonly projectId: string;
140
+ readonly sessionId: string;
141
+ readonly rollbackAfterMessageId: string;
142
+ };
143
+ export type DriveSessionDeleteMessagesParams = DriveSessionDeleteMessagesByIdsParams | DriveSessionDeleteMessagesRollbackParams;
144
+ export type DriveSessionDeleteMessagesResult = {
145
+ readonly sessionId: string;
146
+ readonly messageCount: number;
147
+ readonly updatedAt: string;
148
+ };
149
+ export type DriveSessionDeleteParams = {
150
+ readonly projectId: string;
151
+ readonly sessionId: string;
152
+ };
153
+ export type DriveSessionDeleteResult = {
154
+ readonly sessionId: string;
155
+ readonly status: string;
156
+ };
157
+ export type DriveScopedSessionStartParams = {
158
+ readonly title?: string;
159
+ readonly workspaceId?: string;
160
+ };
161
+ export type DriveScopedSessionOpenParams = {
162
+ readonly sessionId: string;
163
+ readonly limit?: number;
164
+ };
165
+ export type DriveScopedSessionSaveParams = {
166
+ readonly session: DriveSessionDocument;
167
+ readonly attributes?: readonly string[];
168
+ };
169
+ export type DriveScopedSessionDeleteParams = {
170
+ readonly sessionId: string;
171
+ };
172
+ export type DriveSessionClient = {
173
+ readonly save: (params: DriveSessionSaveParams) => Promise<DriveSessionSaveResult>;
174
+ readonly get: (params: DriveSessionGetParams) => Promise<DriveSessionGetResult>;
175
+ readonly getPreview: (params: DriveSessionGetPreviewParams) => Promise<DriveSessionGetPreviewResult>;
176
+ readonly getMessageRange: (params: DriveSessionGetMessageRangeParams) => Promise<DriveSessionGetMessageRangeResult>;
177
+ readonly list: (params: DriveSessionListParams) => Promise<DriveSessionListResult>;
178
+ readonly appendMessages: (params: DriveSessionAppendMessagesParams) => Promise<DriveSessionAppendMessagesResult>;
179
+ readonly deleteMessages: (params: DriveSessionDeleteMessagesParams) => Promise<DriveSessionDeleteMessagesResult>;
180
+ readonly delete: (params: DriveSessionDeleteParams) => Promise<DriveSessionDeleteResult>;
181
+ };
182
+ //# sourceMappingURL=sessionTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessionTypes.d.ts","sourceRoot":"","sources":["../../src/drive/sessionTypes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sessionTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessionTypes.js","sourceRoot":"","sources":["../../src/drive/sessionTypes.ts"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ import type { DataSource, QueryRunner, ReplicationMode } from 'typeorm';
2
+ import { AbstractSqliteDriver } from 'typeorm/driver/sqlite-abstract/AbstractSqliteDriver.js';
3
+ import type { AuthModule } from '../../auth/types.js';
4
+ import type { DriveDbClient, DriveDbSchema, DriveDbType } from '../driveDbTypes.js';
5
+ export type DriveConnectionOptions = {
6
+ readonly auth: AuthModule;
7
+ readonly dbName: string;
8
+ readonly dbType?: DriveDbType;
9
+ readonly schema?: DriveDbSchema;
10
+ readonly url: string;
11
+ };
12
+ export declare class DriveDriver extends AbstractSqliteDriver {
13
+ readonly driveOptions: DriveConnectionOptions;
14
+ constructor(connection: DataSource);
15
+ protected loadDependencies(): void;
16
+ protected createDatabaseConnection(): Promise<DriveDbClient>;
17
+ afterConnect(): Promise<void>;
18
+ disconnect(): Promise<void>;
19
+ createQueryRunner(_mode: ReplicationMode): QueryRunner;
20
+ /** Flush WAL to S3. */
21
+ commit(): Promise<{
22
+ readonly commitId: string;
23
+ }>;
24
+ /** Discard uncommitted WAL changes. */
25
+ driveRollback(): Promise<void>;
26
+ }
27
+ //# sourceMappingURL=DriveDriver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DriveDriver.d.ts","sourceRoot":"","sources":["../../../src/drive/typeorm/DriveDriver.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAC;AAC9F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAQpF,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB,CAAC;AA8BF,qBAAa,WAAY,SAAQ,oBAAoB;IACnD,QAAQ,CAAC,YAAY,EAAE,sBAAsB,CAAC;gBAElC,UAAU,EAAE,UAAU;IAkBlC,SAAS,CAAC,gBAAgB,IAAI,IAAI;cAIlB,wBAAwB,IAAI,OAAO,CAAC,aAAa,CAAC;IAiB5D,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAE7B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC,iBAAiB,CAAC,KAAK,EAAE,eAAe,GAAG,WAAW;IAOtD,uBAAuB;IACjB,MAAM,IAAI,OAAO,CAAC;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAStD,uCAAuC;IACjC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;CAOrC"}
@@ -0,0 +1,86 @@
1
+ // ---------------------------------------------------------------------------
2
+ // DriveDriver -- TypeORM driver that routes SQL through Drive DB JSON-RPC
3
+ // ---------------------------------------------------------------------------
4
+ import { AbstractSqliteDriver } from 'typeorm/driver/sqlite-abstract/AbstractSqliteDriver.js';
5
+ import { createDriveDbClient } from '../driveDb.js';
6
+ import { jsonRpcCall } from '../rpc.js';
7
+ import { DriveQueryRunner } from './DriveQueryRunner.js';
8
+ // ---------------------------------------------------------------------------
9
+ // RPC call factory (same pattern as drive.ts)
10
+ // ---------------------------------------------------------------------------
11
+ const createCallFn = (auth, rpcUrl) => {
12
+ let nextId = 1;
13
+ return async (method, rpcParams) => {
14
+ const id = nextId;
15
+ nextId += 1;
16
+ if (auth.getRequestHeaders) {
17
+ const headers = await auth.getRequestHeaders();
18
+ return jsonRpcCall({ url: rpcUrl, headers, method, rpcParams, id });
19
+ }
20
+ const bearerToken = await auth.getAccessToken();
21
+ return jsonRpcCall({ url: rpcUrl, bearerToken, method, rpcParams, id });
22
+ };
23
+ };
24
+ // ---------------------------------------------------------------------------
25
+ // Driver
26
+ // ---------------------------------------------------------------------------
27
+ export class DriveDriver extends AbstractSqliteDriver {
28
+ driveOptions;
29
+ constructor(connection) {
30
+ super(connection);
31
+ const opts = connection.options._driveOptions;
32
+ if (!opts) {
33
+ throw new Error('@diskd-ai/sdk: missing Drive options. Use diskd.os.datasource() to create the DataSource.');
34
+ }
35
+ this.driveOptions = opts;
36
+ this.database = opts.dbName;
37
+ this.treeSupport = true;
38
+ this.transactionSupport = 'simple';
39
+ }
40
+ loadDependencies() {
41
+ this.sqlite = {};
42
+ }
43
+ async createDatabaseConnection() {
44
+ const rpcUrl = this.driveOptions.url.replace(/\/+$/, '');
45
+ const call = createCallFn(this.driveOptions.auth, rpcUrl);
46
+ const db = createDriveDbClient({ call });
47
+ if (this.driveOptions.schema) {
48
+ await db.create({
49
+ name: this.driveOptions.dbName,
50
+ schema: this.driveOptions.schema,
51
+ checkExists: true,
52
+ dbType: this.driveOptions.dbType,
53
+ });
54
+ }
55
+ return db;
56
+ }
57
+ async afterConnect() { }
58
+ async disconnect() {
59
+ this.queryRunner = undefined;
60
+ this.databaseConnection = undefined;
61
+ }
62
+ createQueryRunner(_mode) {
63
+ if (!this.queryRunner) {
64
+ this.queryRunner = new DriveQueryRunner(this);
65
+ }
66
+ return this.queryRunner;
67
+ }
68
+ /** Flush WAL to S3. */
69
+ async commit() {
70
+ const db = this.databaseConnection;
71
+ const result = await db.commit({
72
+ name: this.driveOptions.dbName,
73
+ dbType: this.driveOptions.dbType,
74
+ });
75
+ return { commitId: result.commitId };
76
+ }
77
+ /** Discard uncommitted WAL changes. */
78
+ async driveRollback() {
79
+ const db = this.databaseConnection;
80
+ await db.rollback({
81
+ name: this.driveOptions.dbName,
82
+ dbType: this.driveOptions.dbType,
83
+ });
84
+ }
85
+ }
86
+ //# sourceMappingURL=DriveDriver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DriveDriver.js","sourceRoot":"","sources":["../../../src/drive/typeorm/DriveDriver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { AbstractSqliteQueryRunner } from 'typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.js';
2
+ import type { DriveDriver } from './DriveDriver.js';
3
+ export declare class DriveQueryRunner extends AbstractSqliteQueryRunner {
4
+ driver: DriveDriver;
5
+ constructor(driver: DriveDriver);
6
+ private get db();
7
+ private get dbName();
8
+ private get dbType();
9
+ connect(): Promise<void>;
10
+ release(): Promise<void>;
11
+ query(sql: string, parameters?: unknown[], useStructuredResult?: boolean): Promise<unknown>;
12
+ beforeMigration(): Promise<void>;
13
+ afterMigration(): Promise<void>;
14
+ }
15
+ //# sourceMappingURL=DriveQueryRunner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DriveQueryRunner.d.ts","sourceRoot":"","sources":["../../../src/drive/typeorm/DriveQueryRunner.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6DAA6D,CAAC;AAExG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAsBpD,qBAAa,gBAAiB,SAAQ,yBAAyB;IACrD,MAAM,EAAE,WAAW,CAAC;gBAEhB,MAAM,EAAE,WAAW;IAK/B,OAAO,KAAK,EAAE,GAEb;IAED,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,KAAK,MAAM,GAEjB;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IACxB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAExB,KAAK,CACT,GAAG,EAAE,MAAM,EACX,UAAU,CAAC,EAAE,OAAO,EAAE,EACtB,mBAAmB,CAAC,EAAE,OAAO,GAC5B,OAAO,CAAC,OAAO,CAAC;IA4Cb,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAChC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;CACtC"}