@neuralinnovations/dataisland-sdk 0.0.1-dev9 → 0.1.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 (511) hide show
  1. package/README.md +178 -9
  2. package/dist/index.d.ts +3 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +3 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/package.json +103 -0
  7. package/dist/src/appBuilder.d.ts +44 -0
  8. package/dist/src/appBuilder.d.ts.map +1 -0
  9. package/dist/src/appBuilder.js +10 -0
  10. package/dist/src/appBuilder.js.map +1 -0
  11. package/dist/src/commands/deleteUserFullCommandHandler.d.ts +7 -0
  12. package/dist/src/commands/deleteUserFullCommandHandler.d.ts.map +1 -0
  13. package/dist/src/commands/deleteUserFullCommandHandler.js +21 -0
  14. package/dist/src/commands/deleteUserFullCommandHandler.js.map +1 -0
  15. package/dist/src/commands/startCommandHandler.d.ts +7 -0
  16. package/dist/src/commands/startCommandHandler.d.ts.map +1 -0
  17. package/dist/src/commands/startCommandHandler.js +33 -0
  18. package/dist/src/commands/startCommandHandler.js.map +1 -0
  19. package/dist/src/context.d.ts +24 -0
  20. package/dist/src/context.d.ts.map +1 -0
  21. package/dist/src/context.js +31 -0
  22. package/dist/src/context.js.map +1 -0
  23. package/dist/src/credentials.d.ts +39 -0
  24. package/dist/src/credentials.d.ts.map +1 -0
  25. package/dist/src/credentials.js +105 -0
  26. package/dist/src/credentials.js.map +1 -0
  27. package/dist/src/dataIslandApp.d.ts +60 -0
  28. package/dist/src/dataIslandApp.d.ts.map +1 -0
  29. package/dist/src/dataIslandApp.js +10 -0
  30. package/dist/src/dataIslandApp.js.map +1 -0
  31. package/dist/src/disposable.d.ts +84 -0
  32. package/dist/src/disposable.d.ts.map +1 -0
  33. package/dist/src/disposable.js +147 -0
  34. package/dist/src/disposable.js.map +1 -0
  35. package/dist/src/dto/accessGroupResponse.d.ts +27 -0
  36. package/dist/src/dto/accessGroupResponse.d.ts.map +1 -0
  37. package/dist/src/dto/accessGroupResponse.js +3 -0
  38. package/dist/src/dto/accessGroupResponse.js.map +1 -0
  39. package/dist/src/dto/acquiringResponse.d.ts +46 -0
  40. package/dist/src/dto/acquiringResponse.d.ts.map +1 -0
  41. package/dist/src/dto/acquiringResponse.js +11 -0
  42. package/dist/src/dto/acquiringResponse.js.map +1 -0
  43. package/dist/src/dto/apiKeyResponse.d.ts +24 -0
  44. package/dist/src/dto/apiKeyResponse.d.ts.map +1 -0
  45. package/dist/src/dto/apiKeyResponse.js +3 -0
  46. package/dist/src/dto/apiKeyResponse.js.map +1 -0
  47. package/dist/src/dto/badRequestResponse.d.ts +6 -0
  48. package/dist/src/dto/badRequestResponse.d.ts.map +1 -0
  49. package/dist/src/dto/badRequestResponse.js +3 -0
  50. package/dist/src/dto/badRequestResponse.js.map +1 -0
  51. package/dist/src/dto/chatResponse.d.ts +99 -0
  52. package/dist/src/dto/chatResponse.d.ts.map +1 -0
  53. package/dist/src/dto/chatResponse.js +56 -0
  54. package/dist/src/dto/chatResponse.js.map +1 -0
  55. package/dist/src/dto/invitesResponse.d.ts +21 -0
  56. package/dist/src/dto/invitesResponse.d.ts.map +1 -0
  57. package/dist/src/dto/invitesResponse.js +3 -0
  58. package/dist/src/dto/invitesResponse.js.map +1 -0
  59. package/dist/src/dto/libraryResponse.d.ts +42 -0
  60. package/dist/src/dto/libraryResponse.d.ts.map +1 -0
  61. package/dist/src/dto/libraryResponse.js +3 -0
  62. package/dist/src/dto/libraryResponse.js.map +1 -0
  63. package/dist/src/dto/limitsResponse.d.ts +29 -0
  64. package/dist/src/dto/limitsResponse.d.ts.map +1 -0
  65. package/dist/src/dto/limitsResponse.js +13 -0
  66. package/dist/src/dto/limitsResponse.js.map +1 -0
  67. package/dist/src/dto/queryFlowResponse.d.ts +34 -0
  68. package/dist/src/dto/queryFlowResponse.d.ts.map +1 -0
  69. package/dist/src/dto/queryFlowResponse.js +19 -0
  70. package/dist/src/dto/queryFlowResponse.js.map +1 -0
  71. package/dist/src/dto/quizResponse.d.ts +11 -0
  72. package/dist/src/dto/quizResponse.d.ts.map +1 -0
  73. package/dist/src/dto/quizResponse.js +3 -0
  74. package/dist/src/dto/quizResponse.js.map +1 -0
  75. package/dist/src/dto/statisticsResponse.d.ts +11 -0
  76. package/dist/src/dto/statisticsResponse.d.ts.map +1 -0
  77. package/dist/src/dto/statisticsResponse.js +3 -0
  78. package/dist/src/dto/statisticsResponse.js.map +1 -0
  79. package/dist/src/dto/userInfoResponse.d.ts +97 -0
  80. package/dist/src/dto/userInfoResponse.d.ts.map +1 -0
  81. package/dist/src/dto/userInfoResponse.js +3 -0
  82. package/dist/src/dto/userInfoResponse.js.map +1 -0
  83. package/dist/src/dto/workspacesResponse.d.ts +79 -0
  84. package/dist/src/dto/workspacesResponse.d.ts.map +1 -0
  85. package/dist/src/dto/workspacesResponse.js +31 -0
  86. package/dist/src/dto/workspacesResponse.js.map +1 -0
  87. package/dist/src/events.d.ts +17 -0
  88. package/dist/src/events.d.ts.map +1 -0
  89. package/dist/src/events.js +52 -0
  90. package/dist/src/events.js.map +1 -0
  91. package/dist/src/index.d.ts +88 -0
  92. package/dist/src/index.d.ts.map +1 -0
  93. package/dist/src/index.js +140 -0
  94. package/dist/src/index.js.map +1 -0
  95. package/dist/src/internal/app.impl.d.ts +32 -0
  96. package/dist/src/internal/app.impl.d.ts.map +1 -0
  97. package/dist/src/internal/app.impl.js +187 -0
  98. package/dist/src/internal/app.impl.js.map +1 -0
  99. package/dist/src/internal/appBuilder.impl.d.ts +27 -0
  100. package/dist/src/internal/appBuilder.impl.d.ts.map +1 -0
  101. package/dist/src/internal/appBuilder.impl.js +71 -0
  102. package/dist/src/internal/appBuilder.impl.js.map +1 -0
  103. package/dist/src/internal/createApp.impl.d.ts +4 -0
  104. package/dist/src/internal/createApp.impl.d.ts.map +1 -0
  105. package/dist/src/internal/createApp.impl.js +11 -0
  106. package/dist/src/internal/createApp.impl.js.map +1 -0
  107. package/dist/src/internal/registry.d.ts +66 -0
  108. package/dist/src/internal/registry.d.ts.map +1 -0
  109. package/dist/src/internal/registry.js +114 -0
  110. package/dist/src/internal/registry.js.map +1 -0
  111. package/dist/src/middleware.d.ts +6 -0
  112. package/dist/src/middleware.d.ts.map +1 -0
  113. package/dist/src/middleware.js +3 -0
  114. package/dist/src/middleware.js.map +1 -0
  115. package/dist/src/services/acquiringService.d.ts +9 -0
  116. package/dist/src/services/acquiringService.d.ts.map +1 -0
  117. package/dist/src/services/acquiringService.js +19 -0
  118. package/dist/src/services/acquiringService.js.map +1 -0
  119. package/dist/src/services/anonymousService.d.ts +8 -0
  120. package/dist/src/services/anonymousService.d.ts.map +1 -0
  121. package/dist/src/services/anonymousService.js +41 -0
  122. package/dist/src/services/anonymousService.js.map +1 -0
  123. package/dist/src/services/commandService.d.ts +18 -0
  124. package/dist/src/services/commandService.d.ts.map +1 -0
  125. package/dist/src/services/commandService.js +40 -0
  126. package/dist/src/services/commandService.js.map +1 -0
  127. package/dist/src/services/cookieService.d.ts +7 -0
  128. package/dist/src/services/cookieService.d.ts.map +1 -0
  129. package/dist/src/services/cookieService.js +18 -0
  130. package/dist/src/services/cookieService.js.map +1 -0
  131. package/dist/src/services/credentialService.d.ts +9 -0
  132. package/dist/src/services/credentialService.d.ts.map +1 -0
  133. package/dist/src/services/credentialService.js +26 -0
  134. package/dist/src/services/credentialService.js.map +1 -0
  135. package/dist/src/services/httpMethod.d.ts +2 -0
  136. package/dist/src/services/httpMethod.d.ts.map +1 -0
  137. package/dist/src/services/httpMethod.js +3 -0
  138. package/dist/src/services/httpMethod.js.map +1 -0
  139. package/dist/src/services/librariesService.d.ts +9 -0
  140. package/dist/src/services/librariesService.d.ts.map +1 -0
  141. package/dist/src/services/librariesService.js +19 -0
  142. package/dist/src/services/librariesService.js.map +1 -0
  143. package/dist/src/services/middlewareService.d.ts +10 -0
  144. package/dist/src/services/middlewareService.d.ts.map +1 -0
  145. package/dist/src/services/middlewareService.js +34 -0
  146. package/dist/src/services/middlewareService.js.map +1 -0
  147. package/dist/src/services/organizationService.d.ts +10 -0
  148. package/dist/src/services/organizationService.d.ts.map +1 -0
  149. package/dist/src/services/organizationService.js +19 -0
  150. package/dist/src/services/organizationService.js.map +1 -0
  151. package/dist/src/services/requestBuilder.d.ts +19 -0
  152. package/dist/src/services/requestBuilder.d.ts.map +1 -0
  153. package/dist/src/services/requestBuilder.js +133 -0
  154. package/dist/src/services/requestBuilder.js.map +1 -0
  155. package/dist/src/services/responseUtils.d.ts +8 -0
  156. package/dist/src/services/responseUtils.d.ts.map +1 -0
  157. package/dist/src/services/responseUtils.js +40 -0
  158. package/dist/src/services/responseUtils.js.map +1 -0
  159. package/dist/src/services/rpcService.d.ts +77 -0
  160. package/dist/src/services/rpcService.d.ts.map +1 -0
  161. package/dist/src/services/rpcService.js +125 -0
  162. package/dist/src/services/rpcService.js.map +1 -0
  163. package/dist/src/services/service.d.ts +21 -0
  164. package/dist/src/services/service.d.ts.map +1 -0
  165. package/dist/src/services/service.js +41 -0
  166. package/dist/src/services/service.js.map +1 -0
  167. package/dist/src/services/userProfileService.d.ts +10 -0
  168. package/dist/src/services/userProfileService.d.ts.map +1 -0
  169. package/dist/src/services/userProfileService.js +59 -0
  170. package/dist/src/services/userProfileService.js.map +1 -0
  171. package/dist/src/storages/acquirings/acquiring.d.ts +41 -0
  172. package/dist/src/storages/acquirings/acquiring.d.ts.map +1 -0
  173. package/dist/src/storages/acquirings/acquiring.impl.d.ts +20 -0
  174. package/dist/src/storages/acquirings/acquiring.impl.d.ts.map +1 -0
  175. package/dist/src/storages/acquirings/acquiring.impl.js +92 -0
  176. package/dist/src/storages/acquirings/acquiring.impl.js.map +1 -0
  177. package/dist/src/storages/acquirings/acquiring.js +10 -0
  178. package/dist/src/storages/acquirings/acquiring.js.map +1 -0
  179. package/dist/src/storages/chats/answer.d.ts +41 -0
  180. package/dist/src/storages/chats/answer.d.ts.map +1 -0
  181. package/dist/src/storages/chats/answer.impl.d.ts +29 -0
  182. package/dist/src/storages/chats/answer.impl.d.ts.map +1 -0
  183. package/dist/src/storages/chats/answer.impl.js +134 -0
  184. package/dist/src/storages/chats/answer.impl.js.map +1 -0
  185. package/dist/src/storages/chats/answer.js +15 -0
  186. package/dist/src/storages/chats/answer.js.map +1 -0
  187. package/dist/src/storages/chats/chat.d.ts +60 -0
  188. package/dist/src/storages/chats/chat.d.ts.map +1 -0
  189. package/dist/src/storages/chats/chat.impl.d.ts +29 -0
  190. package/dist/src/storages/chats/chat.impl.d.ts.map +1 -0
  191. package/dist/src/storages/chats/chat.impl.js +110 -0
  192. package/dist/src/storages/chats/chat.impl.js.map +1 -0
  193. package/dist/src/storages/chats/chat.js +12 -0
  194. package/dist/src/storages/chats/chat.js.map +1 -0
  195. package/dist/src/storages/chats/chats.d.ts +63 -0
  196. package/dist/src/storages/chats/chats.d.ts.map +1 -0
  197. package/dist/src/storages/chats/chats.impl.d.ts +25 -0
  198. package/dist/src/storages/chats/chats.impl.d.ts.map +1 -0
  199. package/dist/src/storages/chats/chats.impl.js +287 -0
  200. package/dist/src/storages/chats/chats.impl.js.map +1 -0
  201. package/dist/src/storages/chats/chats.js +16 -0
  202. package/dist/src/storages/chats/chats.js.map +1 -0
  203. package/dist/src/storages/files/file.d.ts +59 -0
  204. package/dist/src/storages/files/file.d.ts.map +1 -0
  205. package/dist/src/storages/files/file.impl.d.ts +27 -0
  206. package/dist/src/storages/files/file.impl.d.ts.map +1 -0
  207. package/dist/src/storages/files/file.impl.js +104 -0
  208. package/dist/src/storages/files/file.impl.js.map +1 -0
  209. package/dist/src/storages/files/file.js +11 -0
  210. package/dist/src/storages/files/file.js.map +1 -0
  211. package/dist/src/storages/files/files.d.ts +39 -0
  212. package/dist/src/storages/files/files.d.ts.map +1 -0
  213. package/dist/src/storages/files/files.impl.d.ts +26 -0
  214. package/dist/src/storages/files/files.impl.d.ts.map +1 -0
  215. package/dist/src/storages/files/files.impl.js +199 -0
  216. package/dist/src/storages/files/files.impl.js.map +1 -0
  217. package/dist/src/storages/files/files.js +20 -0
  218. package/dist/src/storages/files/files.js.map +1 -0
  219. package/dist/src/storages/files/filesPage.d.ts +28 -0
  220. package/dist/src/storages/files/filesPage.d.ts.map +1 -0
  221. package/dist/src/storages/files/filesPage.impl.d.ts +15 -0
  222. package/dist/src/storages/files/filesPage.impl.d.ts.map +1 -0
  223. package/dist/src/storages/files/filesPage.impl.js +38 -0
  224. package/dist/src/storages/files/filesPage.impl.js.map +1 -0
  225. package/dist/src/storages/files/filesPage.js +10 -0
  226. package/dist/src/storages/files/filesPage.js.map +1 -0
  227. package/dist/src/storages/groups/group.d.ts +63 -0
  228. package/dist/src/storages/groups/group.d.ts.map +1 -0
  229. package/dist/src/storages/groups/group.impl.d.ts +38 -0
  230. package/dist/src/storages/groups/group.impl.d.ts.map +1 -0
  231. package/dist/src/storages/groups/group.impl.js +210 -0
  232. package/dist/src/storages/groups/group.impl.js.map +1 -0
  233. package/dist/src/storages/groups/group.js +15 -0
  234. package/dist/src/storages/groups/group.js.map +1 -0
  235. package/dist/src/storages/groups/groups.d.ts +43 -0
  236. package/dist/src/storages/groups/groups.d.ts.map +1 -0
  237. package/dist/src/storages/groups/groups.impl.d.ts +31 -0
  238. package/dist/src/storages/groups/groups.impl.d.ts.map +1 -0
  239. package/dist/src/storages/groups/groups.impl.js +136 -0
  240. package/dist/src/storages/groups/groups.impl.js.map +1 -0
  241. package/dist/src/storages/groups/groups.js +20 -0
  242. package/dist/src/storages/groups/groups.js.map +1 -0
  243. package/dist/src/storages/library/folderId.d.ts +2 -0
  244. package/dist/src/storages/library/folderId.d.ts.map +1 -0
  245. package/dist/src/storages/library/folderId.js +3 -0
  246. package/dist/src/storages/library/folderId.js.map +1 -0
  247. package/dist/src/storages/library/libraries.d.ts +48 -0
  248. package/dist/src/storages/library/libraries.d.ts.map +1 -0
  249. package/dist/src/storages/library/libraries.impl.d.ts +26 -0
  250. package/dist/src/storages/library/libraries.impl.d.ts.map +1 -0
  251. package/dist/src/storages/library/libraries.impl.js +148 -0
  252. package/dist/src/storages/library/libraries.impl.js.map +1 -0
  253. package/dist/src/storages/library/libraries.js +16 -0
  254. package/dist/src/storages/library/libraries.js.map +1 -0
  255. package/dist/src/storages/library/library.d.ts +30 -0
  256. package/dist/src/storages/library/library.d.ts.map +1 -0
  257. package/dist/src/storages/library/library.impl.d.ts +19 -0
  258. package/dist/src/storages/library/library.impl.d.ts.map +1 -0
  259. package/dist/src/storages/library/library.impl.js +98 -0
  260. package/dist/src/storages/library/library.impl.js.map +1 -0
  261. package/dist/src/storages/library/library.js +10 -0
  262. package/dist/src/storages/library/library.js.map +1 -0
  263. package/dist/src/storages/library/libraryFolder.d.ts +16 -0
  264. package/dist/src/storages/library/libraryFolder.d.ts.map +1 -0
  265. package/dist/src/storages/library/libraryFolder.impl.d.ts +22 -0
  266. package/dist/src/storages/library/libraryFolder.impl.d.ts.map +1 -0
  267. package/dist/src/storages/library/libraryFolder.impl.js +104 -0
  268. package/dist/src/storages/library/libraryFolder.impl.js.map +1 -0
  269. package/dist/src/storages/library/libraryFolder.js +7 -0
  270. package/dist/src/storages/library/libraryFolder.js.map +1 -0
  271. package/dist/src/storages/library/libraryId.d.ts +2 -0
  272. package/dist/src/storages/library/libraryId.d.ts.map +1 -0
  273. package/dist/src/storages/library/libraryId.js +3 -0
  274. package/dist/src/storages/library/libraryId.js.map +1 -0
  275. package/dist/src/storages/library/libraryPage.d.ts +45 -0
  276. package/dist/src/storages/library/libraryPage.d.ts.map +1 -0
  277. package/dist/src/storages/library/libraryPage.impl.d.ts +26 -0
  278. package/dist/src/storages/library/libraryPage.impl.d.ts.map +1 -0
  279. package/dist/src/storages/library/libraryPage.impl.js +29 -0
  280. package/dist/src/storages/library/libraryPage.impl.js.map +1 -0
  281. package/dist/src/storages/library/libraryPage.js +10 -0
  282. package/dist/src/storages/library/libraryPage.js.map +1 -0
  283. package/dist/src/storages/organizations/organization.d.ts +164 -0
  284. package/dist/src/storages/organizations/organization.d.ts.map +1 -0
  285. package/dist/src/storages/organizations/organization.impl.d.ts +63 -0
  286. package/dist/src/storages/organizations/organization.impl.d.ts.map +1 -0
  287. package/dist/src/storages/organizations/organization.impl.js +388 -0
  288. package/dist/src/storages/organizations/organization.impl.js.map +1 -0
  289. package/dist/src/storages/organizations/organization.js +27 -0
  290. package/dist/src/storages/organizations/organization.js.map +1 -0
  291. package/dist/src/storages/organizations/organizationPrompts.d.ts +33 -0
  292. package/dist/src/storages/organizations/organizationPrompts.d.ts.map +1 -0
  293. package/dist/src/storages/organizations/organizationPrompts.impl.d.ts +17 -0
  294. package/dist/src/storages/organizations/organizationPrompts.impl.d.ts.map +1 -0
  295. package/dist/src/storages/organizations/organizationPrompts.impl.js +71 -0
  296. package/dist/src/storages/organizations/organizationPrompts.impl.js.map +1 -0
  297. package/dist/src/storages/organizations/organizationPrompts.js +7 -0
  298. package/dist/src/storages/organizations/organizationPrompts.js.map +1 -0
  299. package/dist/src/storages/organizations/organizations.d.ts +77 -0
  300. package/dist/src/storages/organizations/organizations.d.ts.map +1 -0
  301. package/dist/src/storages/organizations/organizations.impl.d.ts +45 -0
  302. package/dist/src/storages/organizations/organizations.impl.d.ts.map +1 -0
  303. package/dist/src/storages/organizations/organizations.impl.js +242 -0
  304. package/dist/src/storages/organizations/organizations.impl.js.map +1 -0
  305. package/dist/src/storages/organizations/organizations.js +20 -0
  306. package/dist/src/storages/organizations/organizations.js.map +1 -0
  307. package/dist/src/storages/queryFlows/queryFlow.d.ts +14 -0
  308. package/dist/src/storages/queryFlows/queryFlow.d.ts.map +1 -0
  309. package/dist/src/storages/queryFlows/queryFlow.impl.d.ts +18 -0
  310. package/dist/src/storages/queryFlows/queryFlow.impl.d.ts.map +1 -0
  311. package/dist/src/storages/queryFlows/queryFlow.impl.js +81 -0
  312. package/dist/src/storages/queryFlows/queryFlow.impl.js.map +1 -0
  313. package/dist/src/storages/queryFlows/queryFlow.js +12 -0
  314. package/dist/src/storages/queryFlows/queryFlow.js.map +1 -0
  315. package/dist/src/storages/queryFlows/queryFlows.d.ts +21 -0
  316. package/dist/src/storages/queryFlows/queryFlows.d.ts.map +1 -0
  317. package/dist/src/storages/queryFlows/queryFlows.impl.d.ts +16 -0
  318. package/dist/src/storages/queryFlows/queryFlows.impl.d.ts.map +1 -0
  319. package/dist/src/storages/queryFlows/queryFlows.impl.js +110 -0
  320. package/dist/src/storages/queryFlows/queryFlows.impl.js.map +1 -0
  321. package/dist/src/storages/queryFlows/queryFlows.js +16 -0
  322. package/dist/src/storages/queryFlows/queryFlows.js.map +1 -0
  323. package/dist/src/storages/user/userProfile.d.ts +68 -0
  324. package/dist/src/storages/user/userProfile.d.ts.map +1 -0
  325. package/dist/src/storages/user/userProfile.impl.d.ts +25 -0
  326. package/dist/src/storages/user/userProfile.impl.d.ts.map +1 -0
  327. package/dist/src/storages/user/userProfile.impl.js +145 -0
  328. package/dist/src/storages/user/userProfile.impl.js.map +1 -0
  329. package/dist/src/storages/user/userProfile.js +12 -0
  330. package/dist/src/storages/user/userProfile.js.map +1 -0
  331. package/dist/src/storages/workspaces/workspace.d.ts +50 -0
  332. package/dist/src/storages/workspaces/workspace.d.ts.map +1 -0
  333. package/dist/src/storages/workspaces/workspace.impl.d.ts +25 -0
  334. package/dist/src/storages/workspaces/workspace.impl.d.ts.map +1 -0
  335. package/dist/src/storages/workspaces/workspace.impl.js +133 -0
  336. package/dist/src/storages/workspaces/workspace.impl.js.map +1 -0
  337. package/dist/src/storages/workspaces/workspace.js +18 -0
  338. package/dist/src/storages/workspaces/workspace.js.map +1 -0
  339. package/dist/src/storages/workspaces/workspaces.d.ts +47 -0
  340. package/dist/src/storages/workspaces/workspaces.d.ts.map +1 -0
  341. package/dist/src/storages/workspaces/workspaces.impl.d.ts +33 -0
  342. package/dist/src/storages/workspaces/workspaces.impl.d.ts.map +1 -0
  343. package/dist/src/storages/workspaces/workspaces.impl.js +153 -0
  344. package/dist/src/storages/workspaces/workspaces.impl.js.map +1 -0
  345. package/dist/src/storages/workspaces/workspaces.js +19 -0
  346. package/dist/src/storages/workspaces/workspaces.js.map +1 -0
  347. package/dist/src/unitTest.d.ts +12 -0
  348. package/dist/src/unitTest.d.ts.map +1 -0
  349. package/dist/src/unitTest.js +44 -0
  350. package/dist/src/unitTest.js.map +1 -0
  351. package/dist/src/utils/browserUtils.d.ts +4 -0
  352. package/dist/src/utils/browserUtils.d.ts.map +1 -0
  353. package/dist/src/utils/browserUtils.js +64 -0
  354. package/dist/src/utils/browserUtils.js.map +1 -0
  355. package/dist/src/utils/request.d.ts +6 -0
  356. package/dist/src/utils/request.d.ts.map +1 -0
  357. package/dist/src/utils/request.js +3 -0
  358. package/dist/src/utils/request.js.map +1 -0
  359. package/dist/src/utils/utils.d.ts +3 -0
  360. package/dist/src/utils/utils.d.ts.map +1 -0
  361. package/dist/src/utils/utils.js +13 -0
  362. package/dist/src/utils/utils.js.map +1 -0
  363. package/index.d.ts +1 -0
  364. package/index.js +1 -0
  365. package/package.json +42 -7
  366. package/src/commands/deleteUserFullCommandHandler.ts +19 -0
  367. package/src/commands/startCommandHandler.ts +22 -5
  368. package/src/context.ts +4 -2
  369. package/src/credentials.ts +46 -0
  370. package/src/dataIslandApp.ts +12 -0
  371. package/src/disposable.ts +18 -5
  372. package/src/dto/accessGroupResponse.ts +17 -16
  373. package/src/dto/acquiringResponse.ts +54 -0
  374. package/src/dto/apiKeyResponse.ts +29 -0
  375. package/src/dto/badRequestResponse.ts +6 -0
  376. package/src/dto/chatResponse.ts +33 -8
  377. package/src/dto/invitesResponse.ts +25 -0
  378. package/src/dto/libraryResponse.ts +51 -0
  379. package/src/dto/limitsResponse.ts +32 -0
  380. package/src/dto/queryFlowResponse.ts +42 -0
  381. package/src/dto/quizResponse.ts +12 -0
  382. package/src/dto/statisticsResponse.ts +12 -0
  383. package/src/dto/userInfoResponse.ts +70 -2
  384. package/src/dto/workspacesResponse.ts +53 -5
  385. package/src/index.ts +71 -14
  386. package/src/internal/app.impl.ts +61 -10
  387. package/src/internal/registry.ts +54 -6
  388. package/src/middleware.ts +2 -0
  389. package/src/services/acquiringService.ts +21 -0
  390. package/src/services/anonymousService.ts +43 -0
  391. package/src/services/commandService.ts +4 -2
  392. package/src/services/cookieService.ts +16 -0
  393. package/src/services/httpMethod.ts +1 -0
  394. package/src/services/librariesService.ts +22 -0
  395. package/src/services/middlewareService.ts +1 -0
  396. package/src/services/requestBuilder.ts +49 -9
  397. package/src/services/responseUtils.ts +12 -0
  398. package/src/services/rpcService.ts +1 -0
  399. package/src/services/userProfileService.ts +34 -2
  400. package/src/storages/acquirings/acquiring.impl.ts +132 -0
  401. package/src/storages/acquirings/acquiring.ts +54 -0
  402. package/src/storages/chats/answer.impl.ts +82 -67
  403. package/src/storages/chats/answer.ts +23 -12
  404. package/src/storages/chats/chat.impl.ts +63 -8
  405. package/src/storages/chats/chat.ts +39 -1
  406. package/src/storages/chats/chats.impl.ts +260 -5
  407. package/src/storages/chats/chats.ts +28 -1
  408. package/src/storages/files/file.impl.ts +83 -26
  409. package/src/storages/files/file.ts +55 -5
  410. package/src/storages/files/files.impl.ts +130 -63
  411. package/src/storages/files/files.ts +12 -5
  412. package/src/storages/files/filesPage.impl.ts +37 -0
  413. package/src/storages/files/filesPage.ts +6 -0
  414. package/src/storages/groups/group.impl.ts +276 -0
  415. package/src/storages/groups/group.ts +73 -0
  416. package/src/storages/groups/groups.impl.ts +31 -177
  417. package/src/storages/groups/groups.ts +9 -60
  418. package/src/storages/library/folderId.ts +1 -0
  419. package/src/storages/library/libraries.impl.ts +209 -0
  420. package/src/storages/library/libraries.ts +56 -0
  421. package/src/storages/library/library.impl.ts +151 -0
  422. package/src/storages/library/library.ts +35 -0
  423. package/src/storages/library/libraryFolder.impl.ts +144 -0
  424. package/src/storages/library/libraryFolder.ts +23 -0
  425. package/src/storages/library/libraryId.ts +1 -0
  426. package/src/storages/library/libraryPage.impl.ts +39 -0
  427. package/src/storages/library/libraryPage.ts +56 -0
  428. package/src/storages/organizations/organization.impl.ts +506 -8
  429. package/src/storages/organizations/organization.ts +167 -5
  430. package/src/storages/organizations/organizationPrompts.impl.ts +109 -0
  431. package/src/storages/organizations/organizationPrompts.ts +41 -0
  432. package/src/storages/organizations/organizations.impl.ts +152 -9
  433. package/src/storages/organizations/organizations.ts +37 -0
  434. package/src/storages/queryFlows/queryFlow.impl.ts +96 -0
  435. package/src/storages/queryFlows/queryFlow.ts +28 -0
  436. package/src/storages/queryFlows/queryFlows.impl.ts +149 -0
  437. package/src/storages/queryFlows/queryFlows.ts +31 -0
  438. package/src/storages/user/userProfile.impl.ts +122 -0
  439. package/src/storages/user/userProfile.ts +44 -0
  440. package/src/storages/workspaces/workspace.impl.ts +65 -5
  441. package/src/storages/workspaces/workspace.ts +13 -0
  442. package/src/storages/workspaces/workspaces.impl.ts +19 -22
  443. package/src/storages/workspaces/workspaces.ts +5 -1
  444. package/src/unitTest.ts +3 -3
  445. package/src/utils/browserUtils.ts +68 -0
  446. package/src/utils/request.ts +6 -0
  447. package/src/utils/utils.ts +8 -0
  448. package/.browserslistrc +0 -5
  449. package/.editorconfig +0 -25
  450. package/.eslintrc.json +0 -44
  451. package/.github/workflows/docs.yml +0 -32
  452. package/.github/workflows/format.yml +0 -42
  453. package/.github/workflows/publish-npm.yml +0 -44
  454. package/.github/workflows/tests.yml +0 -38
  455. package/.github/workflows/version.yml +0 -44
  456. package/.prettierignore +0 -1
  457. package/.prettierrc +0 -11
  458. package/.yarnrc +0 -2
  459. package/babel.config.js +0 -6
  460. package/docs/.nojekyll +0 -1
  461. package/docs/classes/BasicCredential.md +0 -80
  462. package/docs/classes/BearerCredential.md +0 -72
  463. package/docs/classes/Chat.md +0 -97
  464. package/docs/classes/Chats.md +0 -176
  465. package/docs/classes/CredentialBase.md +0 -54
  466. package/docs/classes/DataIslandApp.md +0 -168
  467. package/docs/classes/DebugCredential.md +0 -72
  468. package/docs/classes/DefaultCredential.md +0 -56
  469. package/docs/classes/DisposableContainer.md +0 -177
  470. package/docs/classes/EventDispatcher.md +0 -109
  471. package/docs/classes/File.md +0 -79
  472. package/docs/classes/Files.md +0 -136
  473. package/docs/classes/FilesPage.md +0 -76
  474. package/docs/classes/Group.md +0 -209
  475. package/docs/classes/Groups.md +0 -154
  476. package/docs/classes/Lifetime.md +0 -108
  477. package/docs/classes/Organization.md +0 -125
  478. package/docs/classes/Organizations.md +0 -195
  479. package/docs/classes/UserProfile.md +0 -156
  480. package/docs/classes/Workspace.md +0 -165
  481. package/docs/classes/Workspaces.md +0 -193
  482. package/docs/enums/ChatAnswerType.md +0 -22
  483. package/docs/enums/ChatsEvent.md +0 -22
  484. package/docs/enums/FilesEvent.md +0 -24
  485. package/docs/enums/GroupEvent.md +0 -31
  486. package/docs/enums/OrganizationsEvent.md +0 -31
  487. package/docs/enums/UserEvent.md +0 -15
  488. package/docs/enums/WorkspaceEvent.md +0 -17
  489. package/docs/enums/WorkspacesEvent.md +0 -24
  490. package/docs/interfaces/Disposable.md +0 -25
  491. package/docs/interfaces/Event.md +0 -58
  492. package/docs/interfaces/EventSubscriber.md +0 -41
  493. package/docs/interfaces/Input.md +0 -35
  494. package/docs/modules.md +0 -207
  495. package/jest.config.ts +0 -199
  496. package/jest.setup.ts +0 -2
  497. package/scripts/docs/index.js +0 -15
  498. package/test/chats.test.ts +0 -48
  499. package/test/commands.test.ts +0 -24
  500. package/test/data/test_file.pdf +0 -0
  501. package/test/disposable.test.ts +0 -39
  502. package/test/events.test.ts +0 -151
  503. package/test/files.test.ts +0 -52
  504. package/test/index.test.ts +0 -122
  505. package/test/organization.test.ts +0 -69
  506. package/test/registry.test.ts +0 -44
  507. package/test/services.test.ts +0 -56
  508. package/test/setup.ts +0 -61
  509. package/test/unitTest.test.ts +0 -21
  510. package/test/workspace.test.ts +0 -71
  511. package/tsconfig.json +0 -31
@@ -0,0 +1,28 @@
1
+ import { EventDispatcher } from "../../events"
2
+ import { FlowId } from "./queryFlows"
3
+ import {
4
+ QueryFileUrlDto,
5
+ QueryFlowState,
6
+ QueryFlowStatus
7
+ } from "../../dto/queryFlowResponse"
8
+
9
+ export enum QueryFlowEvent {
10
+ UPDATED = "updated"
11
+ }
12
+
13
+ export abstract class QueryFlow extends EventDispatcher<
14
+ QueryFlowEvent,
15
+ QueryFlow
16
+ > {
17
+
18
+ abstract get id(): FlowId
19
+
20
+ abstract get name(): string
21
+
22
+ abstract get state(): QueryFlowState
23
+
24
+ abstract get status(): QueryFlowStatus
25
+
26
+ abstract get urls(): QueryFileUrlDto[] | undefined
27
+
28
+ }
@@ -0,0 +1,149 @@
1
+ import { Context } from "../../context"
2
+ import { FlowId, QueryFlows, QueryFlowsEvent } from "./queryFlows"
3
+ import { QueryFlow } from "./queryFlow"
4
+ import { OrganizationImpl } from "../organizations/organization.impl"
5
+ import { RpcService } from "../../services/rpcService"
6
+ import { ResponseUtils } from "../../services/responseUtils"
7
+ import { WorkspaceId } from "../workspaces/workspaces"
8
+ import {
9
+ QueryFlowListResponse,
10
+ QueryFlowResponse
11
+ } from "../../dto/queryFlowResponse"
12
+ import { QueryFlowImpl } from "./queryFlow.impl"
13
+ import { UploadFile } from "../files/files"
14
+
15
+ export class QueryFlowsImpl extends QueryFlows {
16
+
17
+ private _collection: QueryFlow[] = []
18
+
19
+ constructor(
20
+ public readonly organization: OrganizationImpl,
21
+ public readonly context: Context) {
22
+ super()
23
+ }
24
+
25
+ async getQueryFlows(): Promise<QueryFlow[]> {
26
+ const response = await this.context
27
+ .resolve(RpcService)
28
+ ?.requestBuilder("api/v1/QueryFlows/list")
29
+ .searchParam("organizationId", this.organization.id)
30
+ .sendGet()
31
+
32
+ // check response status
33
+ if (ResponseUtils.isFail(response)) {
34
+ await ResponseUtils.throwError(`Failed to fetch query flows for org ${this.organization.id}`, response)
35
+ }
36
+
37
+ // parse flows from the server's response
38
+ const flows = ((await response!.json()) as QueryFlowListResponse)
39
+ .flowIds
40
+
41
+ // init flows from the server's response
42
+ for (const flow of flows) {
43
+ // create workspace implementation
44
+ const flowImpl = new QueryFlowImpl(this.context)
45
+
46
+ // init workspace from the server's response
47
+ await flowImpl.initFrom(flow)
48
+
49
+ // add workspace to the collection
50
+ this._collection.push(flowImpl)
51
+
52
+ // dispatch event
53
+ this.dispatch({
54
+ type: QueryFlowsEvent.ADDED,
55
+ data: flowImpl
56
+ })
57
+ }
58
+
59
+ return this._collection
60
+ }
61
+
62
+ async create(name: string, workspaceId: WorkspaceId, file: UploadFile, table: UploadFile): Promise<FlowId> {
63
+ if (name === undefined || name === null || name.trim() === "") {
64
+ throw new Error("Name is required, must be not empty")
65
+ }
66
+ if (workspaceId === undefined || workspaceId === null || workspaceId.trim() === "") {
67
+ throw new Error("WorkspaceId is required, must be not empty")
68
+ }
69
+ if (file === undefined || file === null) {
70
+ throw new Error("Create query flow, file is undefined or null")
71
+ }
72
+ if (table === undefined || table === null) {
73
+ throw new Error("Create query flow, table is undefined or null")
74
+ }
75
+
76
+ // form data to send
77
+ const form = new FormData()
78
+ form.append("organizationId", this.organization.id)
79
+ form.append("workspaceId", workspaceId)
80
+ form.append("name", name)
81
+ form.append("file", file, file.name)
82
+ form.append("tableFile", table, table.name)
83
+
84
+ // send request to the server
85
+ const response = await this.context
86
+ .resolve(RpcService)
87
+ ?.requestBuilder("api/v1/QueryFlows")
88
+ .sendPostFormData(form)
89
+
90
+ // check response status
91
+ if (ResponseUtils.isFail(response)) {
92
+
93
+ await ResponseUtils.throwError(`Query flow creation for ${file.name}`, response)
94
+ }
95
+
96
+ const content = (await response!.json()) as QueryFlowResponse
97
+ // create workspace implementation
98
+ const queryFlow = new QueryFlowImpl(this.context)
99
+ await queryFlow.initFrom(content.flowId)
100
+
101
+ // add workspace to the collection
102
+ this._collection.push(queryFlow)
103
+
104
+ // dispatch event
105
+ this.dispatch({
106
+ type: QueryFlowsEvent.ADDED,
107
+ data: queryFlow
108
+ })
109
+
110
+ return queryFlow.id
111
+ }
112
+
113
+ async delete(id: FlowId): Promise<void> {
114
+ const flow = this._collection.find(flow => flow.id == id)
115
+
116
+ if (!flow) {
117
+ throw new Error(`Query flow ${id} is not found`)
118
+ }
119
+
120
+ // send delete request to the server
121
+ const response = await this.context
122
+ .resolve(RpcService)
123
+ ?.requestBuilder("api/v1/QueryFlows")
124
+ .searchParam("flowId", id)
125
+ .sendDelete()
126
+
127
+ // check response status
128
+ if (ResponseUtils.isFail(response)) {
129
+ await ResponseUtils.throwError(
130
+ `Failed to delete query flow ${id} in organization: ${this.organization.id}`,
131
+ response
132
+ )
133
+ }
134
+
135
+ // remove query flow from the collection
136
+ const index = this._collection.indexOf(flow)
137
+ if (index < 0) {
138
+ throw new Error(`Query flow ${id} is not found`)
139
+ }
140
+ this._collection.splice(index, 1)
141
+
142
+ // dispatch event
143
+ this.dispatch({
144
+ type: QueryFlowsEvent.REMOVED,
145
+ data: flow
146
+ })
147
+ }
148
+
149
+ }
@@ -0,0 +1,31 @@
1
+ import {EventDispatcher} from "../../events"
2
+ import {QueryFlow} from "./queryFlow"
3
+ import {WorkspaceId} from "../workspaces/workspaces"
4
+ import {UploadFile} from "../files/files"
5
+
6
+
7
+ /**
8
+ * Query flow id.
9
+ */
10
+ export type FlowId = string
11
+
12
+ /**
13
+ * Query flow event.
14
+ */
15
+ export enum QueryFlowsEvent {
16
+ ADDED = "added",
17
+ REMOVED = "removed"
18
+ }
19
+
20
+ export abstract class QueryFlows extends EventDispatcher<
21
+ QueryFlowsEvent,
22
+ QueryFlow
23
+ > {
24
+
25
+ abstract getQueryFlows(): Promise<QueryFlow[]>
26
+
27
+ abstract create(name: string, workspaceId: WorkspaceId, file: UploadFile, table: UploadFile ): Promise<FlowId>
28
+
29
+ abstract delete(id: FlowId): Promise<void>
30
+
31
+ }
@@ -1,9 +1,19 @@
1
1
  import { UserEvent, UserProfile } from "./userProfile"
2
2
  import { UserInfoResponse } from "../../dto/userInfoResponse"
3
+ import { Context } from "../../context"
4
+ import { RpcService } from "../../services/rpcService"
5
+ import { ResponseUtils } from "../../services/responseUtils"
6
+ import { UserProfileService } from "../../services/userProfileService"
7
+ import {InviteResponse} from "../../dto/invitesResponse"
3
8
 
4
9
  export class UserProfileImpl extends UserProfile {
5
10
  private content?: UserInfoResponse
6
11
 
12
+
13
+ constructor(private readonly context: Context) {
14
+ super()
15
+ }
16
+
7
17
  get id(): string {
8
18
  if (this.content) {
9
19
  return this.content.user.id
@@ -25,6 +35,20 @@ export class UserProfileImpl extends UserProfile {
25
35
  throw new Error("The profile is not loaded.")
26
36
  }
27
37
 
38
+ get binanceId(): string {
39
+ if (this.content) {
40
+ return this.content.user.profile.binanceId
41
+ }
42
+ throw new Error("The profile is not loaded.")
43
+ }
44
+
45
+ get educationalInstitution(): string {
46
+ if (this.content){
47
+ return this.content.user.profile.educationalInstitution
48
+ }
49
+ throw new Error("The profile is not loaded.")
50
+ }
51
+
28
52
  get isDeleted(): boolean {
29
53
  if (this.content) {
30
54
  return this.content.user.isDeleted
@@ -32,6 +56,13 @@ export class UserProfileImpl extends UserProfile {
32
56
  throw new Error("The profile is not loaded.")
33
57
  }
34
58
 
59
+ get isAnonymous(): boolean {
60
+ if (this.content) {
61
+ return this.content.user.isAnonymousMode
62
+ }
63
+ throw new Error("The profile is not loaded.")
64
+ }
65
+
35
66
  get createdAt(): Date {
36
67
  if (this.content) {
37
68
  return new Date(this.content.user.created_at)
@@ -53,4 +84,95 @@ export class UserProfileImpl extends UserProfile {
53
84
  data: this
54
85
  })
55
86
  }
87
+
88
+ async fetch() : Promise<void>{
89
+ await this.context.resolve(UserProfileService)?.fetch()
90
+ }
91
+
92
+ async updateUser(name: string, binanceId: string, educationalInstitution: string): Promise<void>{
93
+ if (!this.content) {
94
+ throw new Error("User is not loaded.")
95
+ }
96
+
97
+ if (name === this.name && binanceId === this.binanceId && educationalInstitution === this.educationalInstitution) {
98
+ return Promise.resolve()
99
+ }
100
+
101
+ const response = await this.context
102
+ .resolve(RpcService)
103
+ ?.requestBuilder("api/v1/Users")
104
+ .sendPutJson({
105
+ profile: {
106
+ name,
107
+ binanceId,
108
+ educationalInstitution
109
+ }
110
+ })
111
+
112
+ if (ResponseUtils.isFail(response)) {
113
+ await ResponseUtils.throwError("Failed to change user", response)
114
+ }
115
+
116
+ if (this.content) {
117
+ this.content!.user.profile.name = name
118
+ this.content!.user.profile.binanceId = binanceId
119
+ this.content!.user.profile.educationalInstitution = educationalInstitution
120
+ }
121
+
122
+ this.dispatch({
123
+ type: UserEvent.CHANGED,
124
+ data: this
125
+ })
126
+ }
127
+
128
+ async addTelegramAccount(data: object): Promise<void>{
129
+ if (!this.content) {
130
+ throw new Error("User is not loaded.")
131
+ }
132
+
133
+ if (data === null || data === undefined) {
134
+ throw new Error("Data is null or undefined")
135
+ }
136
+
137
+ const response = await this.context
138
+ .resolve(RpcService)
139
+ ?.requestBuilder("api/v1/Users/telegram")
140
+ .sendPutJson({
141
+ telegram: data
142
+ })
143
+
144
+ if (ResponseUtils.isFail(response)) {
145
+ await ResponseUtils.throwError("Failed to connect telegram to user", response)
146
+ }
147
+ }
148
+
149
+ async getUserInvites(): Promise<InviteResponse>{
150
+ // get invites
151
+ const response = await this.context.resolve(RpcService)
152
+ ?.requestBuilder("api/v1/Invites/link/user")
153
+ .sendGet()
154
+
155
+ // check response status
156
+ if (ResponseUtils.isFail(response)) {
157
+ await ResponseUtils.throwError("Failed to get invites for current user", response)
158
+ }
159
+
160
+ const json = await response!.json()
161
+
162
+ return json as InviteResponse
163
+ }
164
+
165
+ async deleteUser(): Promise<boolean>{
166
+ const response = await this.context
167
+ .resolve(RpcService)?.
168
+ requestBuilder("/api/v1/Users/self")
169
+ .sendDelete()
170
+
171
+ if (ResponseUtils.isFail(response)) {
172
+ await ResponseUtils.throwError("Failed to delete user", response)
173
+ }
174
+
175
+ return true
176
+ }
177
+
56
178
  }
@@ -1,4 +1,5 @@
1
1
  import { EventDispatcher } from "../../events"
2
+ import {InviteResponse} from "../../dto/invitesResponse"
2
3
 
3
4
  export type UserId = string
4
5
 
@@ -25,11 +26,26 @@ export abstract class UserProfile extends EventDispatcher<
25
26
  */
26
27
  abstract get email(): string
27
28
 
29
+ /**
30
+ * Additional binance ID
31
+ */
32
+ abstract get binanceId(): string
33
+
34
+ /**
35
+ * Additional educational institution
36
+ */
37
+ abstract get educationalInstitution() : string
38
+
28
39
  /**
29
40
  * Is user deleted.
30
41
  */
31
42
  abstract get isDeleted(): boolean
32
43
 
44
+ /**
45
+ * Is user anonymous
46
+ */
47
+ abstract get isAnonymous(): boolean
48
+
33
49
  /**
34
50
  * Created at.
35
51
  */
@@ -39,4 +55,32 @@ export abstract class UserProfile extends EventDispatcher<
39
55
  * Modified at.
40
56
  */
41
57
  abstract get modifiedAt(): Date
58
+
59
+ /**
60
+ * Fetch user profile
61
+ */
62
+ abstract fetch(): Promise<void>
63
+
64
+ /**
65
+ * Update user profile
66
+ * @param newName
67
+ * @param newId
68
+ * @param newEducationalInstitution
69
+ */
70
+ abstract updateUser(newName: string, newId: string, newEducationalInstitution: string): Promise<void>
71
+
72
+ /**
73
+ * Connect telegram account to DataIsland User
74
+ */
75
+ abstract addTelegramAccount(data: object): Promise<void>
76
+
77
+ /**
78
+ * Get all invite links for user
79
+ */
80
+ abstract getUserInvites(): Promise<InviteResponse>
81
+
82
+ /**
83
+ * Delete User
84
+ */
85
+ abstract deleteUser(): Promise<boolean>
42
86
  }
@@ -42,10 +42,37 @@ export class WorkspaceImpl extends Workspace {
42
42
  throw new Error("Workspace is not loaded.")
43
43
  }
44
44
 
45
+ get isShared(): boolean {
46
+ if (this._workspace) {
47
+ return this._workspace.profile.isShared
48
+ }
49
+ throw new Error("Workspace is not loaded.")
50
+ }
51
+
45
52
  get files(): Files {
46
53
  return this._files
47
54
  }
48
55
 
56
+ async filesCount(): Promise<number> {
57
+ // send request to the server
58
+ const response = await this.context
59
+ .resolve(RpcService)
60
+ ?.requestBuilder("api/v1/Workspaces/files/count")
61
+ .searchParam("workspaceId", this.id)
62
+ .searchParam("organizationId", this.organization.id)
63
+ .sendGet()
64
+
65
+ // check response status
66
+ if (ResponseUtils.isFail(response)) {
67
+ await ResponseUtils.throwError(
68
+ `Failed during get workspace total files count for ${this.id} of ${this.organization.id}`,
69
+ response
70
+ )
71
+ }
72
+
73
+ return ((await response!.json()) as { count: number }).count
74
+ }
75
+
49
76
  async change(name: string, description: string): Promise<void> {
50
77
  if (!this._workspace) {
51
78
  throw new Error("Workspace is not loaded.")
@@ -61,12 +88,9 @@ export class WorkspaceImpl extends Workspace {
61
88
  }
62
89
  if (
63
90
  description === undefined ||
64
- description === null ||
65
- description.trim() === ""
91
+ description === null
66
92
  ) {
67
- throw new Error(
68
- "Description is required. Please provide a valid description."
69
- )
93
+ description = ""
70
94
  }
71
95
 
72
96
  const response = await this.context
@@ -95,6 +119,42 @@ export class WorkspaceImpl extends Workspace {
95
119
  })
96
120
  }
97
121
 
122
+ async share(isShared: boolean): Promise<void> {
123
+ if (!this._workspace) {
124
+ throw new Error("Workspace is not loaded.")
125
+ }
126
+ if (this._isMarkAsDeleted) {
127
+ throw new Error("Workspace is marked as deleted.")
128
+ }
129
+ if (isShared === this.isShared) {
130
+ return Promise.resolve()
131
+ }
132
+ if (isShared === undefined || isShared === null) {
133
+ throw new Error("Is shared parameter is required.")
134
+ }
135
+
136
+ const response = await this.context
137
+ .resolve(RpcService)
138
+ ?.requestBuilder("api/v1/workspaces/library")
139
+ .sendPutJson({
140
+ workspaceId: this.id,
141
+ isShared: isShared
142
+ })
143
+
144
+ if (ResponseUtils.isFail(response)) {
145
+ await ResponseUtils.throwError("Failed to change workspace shared state", response)
146
+ }
147
+
148
+ if (this._workspace) {
149
+ this._workspace.profile.isShared = isShared
150
+ }
151
+
152
+ this.dispatch({
153
+ type: WorkspaceEvent.CHANGED,
154
+ data: this
155
+ })
156
+ }
157
+
98
158
  async initFrom(workspace: WorkspaceDto) {
99
159
  this._workspace = workspace
100
160
  }
@@ -37,13 +37,26 @@ export abstract class Workspace extends EventDispatcher<
37
37
  */
38
38
  abstract get description(): string
39
39
 
40
+ abstract get isShared(): boolean
41
+
40
42
  /**
41
43
  * Workspace files.
42
44
  */
43
45
  abstract get files(): Files
44
46
 
47
+ /**
48
+ * Workspace files count.
49
+ */
50
+ abstract filesCount(): Promise<number>
51
+
45
52
  /**
46
53
  * Change workspace name and description.
47
54
  */
48
55
  abstract change(name: string, description: string): Promise<void>
56
+
57
+ /**
58
+ * Make workspace available for the library implementation
59
+ * @param isShared
60
+ */
61
+ abstract share(isShared: boolean): Promise<void>
49
62
  }
@@ -8,6 +8,8 @@ import { RpcService } from "../../services/rpcService"
8
8
  import { OrganizationWorkspaces } from "../../dto/userInfoResponse"
9
9
  import { WorkspaceDto } from "../../dto/workspacesResponse"
10
10
  import { ResponseUtils } from "../../services/responseUtils"
11
+ import { UserProfileService } from "../../services/userProfileService"
12
+ import { UserProfile } from "../user/userProfile"
11
13
 
12
14
  export class WorkspacesImpl extends Workspaces {
13
15
  private readonly _workspaces: WorkspaceImpl[] = []
@@ -46,10 +48,10 @@ export class WorkspacesImpl extends Workspaces {
46
48
  description: string,
47
49
  regulation?: {
48
50
  isCreateNewGroup: boolean
49
- newGroupName: string
50
- groupIds: string[]
51
+ newGroupName?: string
52
+ groupIds?: string[]
51
53
  }
52
- ): Promise<Workspace> {
54
+ ): Promise<Workspace | undefined> {
53
55
  if (name === undefined || name === null || name.trim() === "") {
54
56
  throw new Error("Name is required, must be not empty")
55
57
  }
@@ -67,20 +69,6 @@ export class WorkspacesImpl extends Workspaces {
67
69
  ) {
68
70
  throw new Error("isCreateNewGroup is required, must be not empty")
69
71
  }
70
- if (
71
- regulation.newGroupName === undefined ||
72
- regulation.newGroupName === null ||
73
- regulation.newGroupName.trim() === ""
74
- ) {
75
- throw new Error("newGroupName is required, must be not empty")
76
- }
77
- if (
78
- regulation.groupIds === undefined ||
79
- regulation.groupIds === null ||
80
- regulation.groupIds.length === 0
81
- ) {
82
- throw new Error("groupIds is required, must be not empty")
83
- }
84
72
  }
85
73
 
86
74
  // send create request to the server
@@ -94,19 +82,25 @@ export class WorkspacesImpl extends Workspaces {
94
82
  description: description
95
83
  },
96
84
  regulation: {
97
- isCreateNewGroup: regulation?.isCreateNewGroup ?? false,
98
- newGroupName: regulation?.newGroupName ?? "",
99
- groupIds: regulation?.groupIds ?? []
85
+ isCreateNewGroup: regulation?.isCreateNewGroup,
86
+ newGroupName: regulation?.newGroupName,
87
+ groupIds: regulation?.groupIds
100
88
  }
101
89
  })
102
90
 
103
91
  // check response status
104
92
  if (ResponseUtils.isFail(response)) {
93
+ if (await ResponseUtils.isLimitReached()){
94
+ return undefined
95
+ }
96
+
105
97
  await ResponseUtils.throwError(`Failed to create workspace, in organization: ${this.organization.id}`, response)
106
98
  }
107
99
 
108
100
  // parse workspace from the server's response
109
- const content = (await response!.json()).workspace as WorkspaceDto
101
+ const content = ((await response!.json()) as {
102
+ workspace: WorkspaceDto
103
+ }).workspace as WorkspaceDto
110
104
 
111
105
  // create workspace implementation
112
106
  const workspace = new WorkspaceImpl(this.organization, this.context)
@@ -115,6 +109,8 @@ export class WorkspacesImpl extends Workspaces {
115
109
  // add workspace to the collection
116
110
  this._workspaces.push(workspace)
117
111
 
112
+ await this.organization.accessGroups.reload()
113
+
118
114
  // dispatch event
119
115
  this.dispatch({
120
116
  type: WorkspacesEvent.ADDED,
@@ -184,7 +180,8 @@ export class WorkspacesImpl extends Workspaces {
184
180
 
185
181
  // check response status
186
182
  if (ResponseUtils.isFail(response)) {
187
- await ResponseUtils.throwError(`Failed to fetch workspaces in organization: ${organizationId}`, response)
183
+ const userProfile = this.context.resolve(UserProfileService)?.userProfile as UserProfile
184
+ await ResponseUtils.throwError(`Failed to fetch workspaces in organization: ${organizationId}, userId: ${userProfile.id}, email: ${userProfile.email}`, response)
188
185
  }
189
186
 
190
187
  // parse workspaces from the server's response
@@ -44,7 +44,11 @@ export abstract class Workspaces extends EventDispatcher<
44
44
  /**
45
45
  * Create workspace.
46
46
  */
47
- abstract create(name: string, description: string, regulation?: { isCreateNewGroup: boolean, newGroupName: string, groupIds: string[]}): Promise<Workspace>
47
+ abstract create(name: string, description: string, regulation?: {
48
+ isCreateNewGroup: boolean,
49
+ newGroupName?: string,
50
+ groupIds?: string[]
51
+ }): Promise<Workspace | undefined>
48
52
 
49
53
  /**
50
54
  * Delete workspace.
package/src/unitTest.ts CHANGED
@@ -3,7 +3,7 @@ export enum UnitTest {
3
3
  DO_NOT_START = 1 << 0,
4
4
  DO_NOT_PRINT_INITIALIZED_LOG = 1 << 1,
5
5
 
6
- DEFAULT = DO_NOT_START | DO_NOT_PRINT_INITIALIZED_LOG
6
+ DO_NOT_START_SDK = DO_NOT_START | DO_NOT_PRINT_INITIALIZED_LOG
7
7
  }
8
8
 
9
9
  export type UnitTestProfileSyncAction = () => void
@@ -17,7 +17,7 @@ class AppSdkUnitTest {
17
17
  }
18
18
 
19
19
  public static async test(
20
- unitTest: UnitTest = UnitTest.DEFAULT,
20
+ unitTest: UnitTest = UnitTest.DO_NOT_START_SDK,
21
21
  func: UnitTestProfileSyncAction | UnitTestProfileAsyncAction
22
22
  ): Promise<void> {
23
23
  this._stack.push(unitTest)
@@ -38,7 +38,7 @@ class AppSdkUnitTest {
38
38
  }
39
39
 
40
40
  export const appTest = async (
41
- unitTest: UnitTest = UnitTest.DEFAULT,
41
+ unitTest: UnitTest = UnitTest.DO_NOT_START_SDK,
42
42
  func: UnitTestProfileSyncAction | UnitTestProfileAsyncAction
43
43
  ): Promise<void> => {
44
44
  await AppSdkUnitTest.test(unitTest, func)