@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
@@ -1,17 +1,48 @@
1
- import { Workspaces } from "../workspaces/workspaces"
1
+ import { WorkspaceId, Workspaces } from "../workspaces/workspaces"
2
2
  import { OrganizationId } from "./organizations"
3
- import { GroupId, Groups } from "../groups/groups"
3
+ import { Groups } from "../groups/groups"
4
4
  import { Chats } from "../chats/chats"
5
+ import { EventDispatcher } from "../../events"
6
+ import {
7
+ CurrentLimitsData,
8
+ UserDto,
9
+ UsersStatisticsResponse
10
+ } from "../../dto/userInfoResponse"
11
+ import { GroupId } from "../groups/group"
12
+ import { StatisticsResponse } from "../../dto/statisticsResponse"
13
+ import { SegmentData } from "../../dto/limitsResponse"
14
+ import { FileId } from "../files/file"
15
+ import { QuizData } from "../../dto/quizResponse"
16
+ import { InviteResponse } from "../../dto/invitesResponse"
17
+ import { OrganizationApiKey } from "../../dto/apiKeyResponse"
18
+ import { UploadFile } from "../files/files"
19
+ import { QueryFlows } from "../queryFlows/queryFlows"
20
+ import { OrganizationPrompts } from "./organizationPrompts"
21
+
22
+ /**
23
+ * Organization event.
24
+ */
25
+ export enum OrganizationEvent {
26
+ CHANGED = "changed"
27
+ }
5
28
 
6
29
  /**
7
30
  * Organization.
8
31
  */
9
- export abstract class Organization {
32
+ export abstract class Organization extends EventDispatcher<
33
+ OrganizationEvent,
34
+ Organization
35
+ > {
10
36
  /**
11
37
  * Organization id.
12
38
  */
13
39
  abstract get id(): OrganizationId
14
40
 
41
+ /**
42
+ * Is admin organization
43
+ */
44
+ abstract get isAdmin(): boolean
45
+
15
46
  /**
16
47
  * Organization name.
17
48
  */
@@ -22,6 +53,16 @@ export abstract class Organization {
22
53
  */
23
54
  abstract get description(): string
24
55
 
56
+ /**
57
+ * ID of organization icon
58
+ */
59
+ abstract get icon(): string
60
+
61
+ /**
62
+ * If organizations allowed in libraries
63
+ */
64
+ abstract get isAllowedInLibraries(): boolean
65
+
25
66
  /**
26
67
  * Workspaces.
27
68
  */
@@ -38,7 +79,128 @@ export abstract class Organization {
38
79
  abstract get accessGroups(): Groups
39
80
 
40
81
  /**
41
- * Create invite link
82
+ * Query flows
83
+ */
84
+ abstract get queryFlows(): QueryFlows
85
+
86
+ /**
87
+ * Get organization prompts
88
+ */
89
+ abstract get prompts(): OrganizationPrompts
90
+
91
+ /**
92
+ * Get organization members
93
+ */
94
+ abstract members(): Promise<UserDto[]>
95
+
96
+ /**
97
+ * Get organization statistics
98
+ * @param dateFrom
99
+ * @param dateTo
100
+ */
101
+ abstract statistics(dateFrom: number, dateTo: number): Promise<StatisticsResponse>
102
+
103
+ /**
104
+ * Get organization statistics
105
+ * @param dateFrom
106
+ * @param dateTo
107
+ */
108
+ abstract membersStatistics(dateFrom: number, dateTo: number): Promise<UsersStatisticsResponse>
109
+
110
+ /**
111
+ * Get statistics for user
112
+ * @param userid
113
+ * @param dateFrom
114
+ * @param dateTo
115
+ */
116
+ abstract userStatistic(userid: string, dateFrom: number, dateTo: number): Promise<StatisticsResponse>
117
+
118
+ /**
119
+ * Get user limits data
120
+ */
121
+ abstract userLimits(): Promise<CurrentLimitsData>
122
+
123
+ /**
124
+ * Get default organization limits
125
+ */
126
+ abstract organizationLimits(): Promise<SegmentData>
127
+
128
+ /**
129
+ * Get all available segments data
130
+ */
131
+ abstract limitSegments(): Promise<SegmentData[]>
132
+
133
+ /**
134
+ * Change organization name and description.
135
+ */
136
+ abstract change(name: string, description: string): Promise<void>
137
+
138
+ /**
139
+ * Upload an icon for organization
140
+ * @param icon
141
+ */
142
+ abstract uploadIcon(icon: UploadFile): Promise<string>
143
+
144
+ /**
145
+ * Invite users with given emails to organization
146
+ */
147
+ abstract inviteUsers(emails: string[], accessGroups: GroupId[]): Promise<void>
148
+
149
+ /**
150
+ * Create invite code for users outside organization
151
+ */
152
+ abstract createInviteCode(accessGroups: GroupId[], validateDomain?: string): Promise<string>
153
+
154
+ /**
155
+ * Delete invite code
156
+ */
157
+ abstract deleteInviteCode(code: string): Promise<void>
158
+
159
+ /**
160
+ * Get all invite links for organization
161
+ */
162
+ abstract getOrganizationInvites(): Promise<InviteResponse>
163
+
164
+ /**
165
+ * Create new Api key for organization
166
+ * @param name
167
+ * @param accessGroups
168
+ */
169
+ abstract createApiKey(name: string, accessGroups: string[]): Promise<OrganizationApiKey>
170
+
171
+ /**
172
+ * Get all organization api keys
173
+ */
174
+ abstract getApiKeys(): Promise<OrganizationApiKey[]>
175
+
176
+ /**
177
+ * Delete api key
178
+ */
179
+ abstract deleteApiKey(key: string): Promise<void>
180
+
181
+ /**
182
+ * Create quiz for given topic
183
+ * @param workspaces - workspaces to search for topic
184
+ * @param query - search query and quiz topic
185
+ * @param questionsCount - count of quiz tests
186
+ * @param optionsCount - count of one question options
187
+ * @param fileId - file id in case of test-on-file
188
+ */
189
+ abstract createQuiz(workspaces: WorkspaceId[], query: string, questionsCount: number, optionsCount: number, fileId: FileId): Promise<QuizData>
190
+
191
+ /**
192
+ * Delete users from organization by id
193
+ * @param userIds
194
+ */
195
+ abstract deleteOrganizationMember(userIds: string[]): Promise<void>
196
+
197
+ /**
198
+ * Fire changed event.
42
199
  */
43
- abstract createInviteLink(emails: string[], accessGroups: GroupId[]): Promise<void>
200
+ fireChanged(): void {
201
+ this.dispatch({
202
+ type: OrganizationEvent.CHANGED,
203
+ data: this
204
+ })
205
+ }
44
206
  }
@@ -0,0 +1,109 @@
1
+ import { OrganizationPrompts } from "./organizationPrompts"
2
+ import { OrganizationImpl } from "./organization.impl"
3
+ import { Context } from "../../context"
4
+ import { OrganizationPromptDto } from "../../dto/userInfoResponse"
5
+ import { RpcService } from "../../services/rpcService"
6
+ import { ResponseUtils } from "../../services/responseUtils"
7
+
8
+ export class OrganizationPromptsImpl implements OrganizationPrompts {
9
+
10
+ private _cacheDefaultPrompts: OrganizationPromptDto[] | null = null
11
+
12
+ constructor(
13
+ private readonly organization: OrganizationImpl,
14
+ private readonly context: Context
15
+ ) {
16
+
17
+ }
18
+
19
+ async getDefaultPrompts(): Promise<OrganizationPromptDto[]> {
20
+ if (this._cacheDefaultPrompts !== null) {
21
+ return this._cacheDefaultPrompts
22
+ }
23
+
24
+ const response = await this.context
25
+ .resolve(RpcService)
26
+ ?.requestBuilder("api/v1/Organizations/prompts/default")
27
+ .searchParam("organizationId", this.organization.id)
28
+ .sendGet()
29
+
30
+ // check response status
31
+ if (ResponseUtils.isFail(response)) {
32
+ await ResponseUtils.throwError(
33
+ `Failed during fetch of organization prompts ${this.organization.id}`,
34
+ response
35
+ )
36
+ }
37
+
38
+ this._cacheDefaultPrompts = (await response!.json() as {
39
+ prompts: OrganizationPromptDto[]
40
+ }).prompts as OrganizationPromptDto[]
41
+
42
+ return this._cacheDefaultPrompts
43
+ }
44
+
45
+ async getPrompts(): Promise<OrganizationPromptDto[]> {
46
+ const response = await this.context
47
+ .resolve(RpcService)
48
+ ?.requestBuilder("api/v1/Organizations/prompts")
49
+ .searchParam("organizationId", this.organization.id)
50
+ .sendGet()
51
+
52
+ // check response status
53
+ if (ResponseUtils.isFail(response)) {
54
+ await ResponseUtils.throwError(
55
+ `Failed during fetch of organization prompts ${this.organization.id}`,
56
+ response
57
+ )
58
+ }
59
+
60
+ return (await response!.json() as {
61
+ prompts: OrganizationPromptDto[]
62
+ }).prompts as OrganizationPromptDto[]
63
+ }
64
+
65
+ async updatePrompts(prompts: OrganizationPromptDto[]): Promise<void> {
66
+ if (prompts === undefined || prompts === null || prompts.length === 0) {
67
+ return
68
+ }
69
+ for (let i = 0; i < prompts.length; i++) {
70
+ const prompt = prompts[i]
71
+ if (prompt === undefined || prompt === null) {
72
+ throw new Error("list of prompts has null item at index: " + i)
73
+ }
74
+ }
75
+
76
+ const response = await this.context
77
+ .resolve(RpcService)
78
+ ?.requestBuilder("api/v1/Organizations/prompts")
79
+ .searchParam("organizationId", this.organization.id)
80
+ .sendPutJson(prompts)
81
+
82
+ // check response status
83
+ if (ResponseUtils.isFail(response)) {
84
+ await ResponseUtils.throwError(
85
+ `Failed during update organization's list of prompts ${this.organization.id}`,
86
+ response
87
+ )
88
+ }
89
+ }
90
+
91
+ async updatePrompt(key: string, value: string | null): Promise<void> {
92
+ return this.updatePrompts([{
93
+ key,
94
+ value
95
+ }])
96
+ }
97
+
98
+ deletePrompt(key: string): Promise<void> {
99
+ return this.updatePrompt(key, null)
100
+ }
101
+
102
+ async deletePrompts(keys: string[]): Promise<void> {
103
+ return this.updatePrompts(keys.map(key => ({
104
+ key,
105
+ value: null
106
+ })))
107
+ }
108
+
109
+ }
@@ -0,0 +1,41 @@
1
+ import {
2
+ OrganizationPromptDto
3
+ } from "../../dto/userInfoResponse"
4
+
5
+ export abstract class OrganizationPrompts {
6
+
7
+ /**
8
+ * Get default organization prompts
9
+ */
10
+ abstract getDefaultPrompts(): Promise<OrganizationPromptDto[]>
11
+
12
+ /**
13
+ * Get all organization prompts
14
+ */
15
+ abstract getPrompts(): Promise<OrganizationPromptDto[]>
16
+
17
+ /**
18
+ * Create/Update/Delete new prompt
19
+ * @param key - key of prompt
20
+ * @param value - value of prompt, null|undefined to delete
21
+ */
22
+ abstract updatePrompt(key: string, value: string | undefined | null): Promise<void>
23
+
24
+ /**
25
+ * Update prompts in bulk
26
+ * @param prompts - array of prompts (value can be null|undefined to delete)
27
+ */
28
+ abstract updatePrompts(prompts: OrganizationPromptDto[]): Promise<void>
29
+
30
+ /**
31
+ * Delete prompt
32
+ * @param key
33
+ */
34
+ abstract deletePrompt(key: string): Promise<void>
35
+
36
+ /**
37
+ * Delete prompt
38
+ * @param keys
39
+ */
40
+ abstract deletePrompts(keys: string[]): Promise<void>
41
+ }
@@ -5,10 +5,13 @@ import {
5
5
  } from "./organizations"
6
6
  import { OrganizationImpl } from "./organization.impl"
7
7
  import { RpcService } from "../../services/rpcService"
8
- import { OrganizationDto, UserSettings } from "../../dto/userInfoResponse"
8
+ import { ApplyInviteCodeResponse, OrganizationDto, UserSettings } from "../../dto/userInfoResponse"
9
9
  import { Context } from "../../context"
10
10
  import { Organization } from "./organization"
11
11
  import { ResponseUtils } from "../../services/responseUtils"
12
+ import { UserProfileService } from "../../services/userProfileService"
13
+ import {UploadFile} from "../files/files"
14
+ import {IconDto, IconResponse, ResourceType} from "../../dto/workspacesResponse"
12
15
 
13
16
  export class OrganizationsImpl extends Organizations {
14
17
  constructor(public readonly context: Context) {
@@ -61,6 +64,27 @@ export class OrganizationsImpl extends Organizations {
61
64
  return this.internalDeleteOrganization(id)
62
65
  }
63
66
 
67
+ async applyInviteCode(code: string): Promise<ApplyInviteCodeResponse> {
68
+ const response = await this.context
69
+ .resolve(RpcService)
70
+ ?.requestBuilder("api/v1/Invites/apply")
71
+ .sendPutJson({
72
+ code: code
73
+ })
74
+ if (ResponseUtils.isFail(response)) {
75
+ await ResponseUtils.throwError(
76
+ "Invite code validation failed",
77
+ response
78
+ )
79
+ }
80
+
81
+ await this.context.resolve(UserProfileService)?.fetch()
82
+
83
+ const result = (await response?.json()) as ApplyInviteCodeResponse
84
+
85
+ return result
86
+ }
87
+
64
88
  //----------------------------------------------------------------------------
65
89
  // INTERNALS
66
90
  //----------------------------------------------------------------------------
@@ -139,7 +163,8 @@ export class OrganizationsImpl extends Organizations {
139
163
  profile: {
140
164
  name: name,
141
165
  description: description
142
- }
166
+ },
167
+ currentOrganizationId: this.currentOrganizationId
143
168
  })
144
169
  if (ResponseUtils.isFail(response)) {
145
170
  await ResponseUtils.throwError(
@@ -147,7 +172,9 @@ export class OrganizationsImpl extends Organizations {
147
172
  response
148
173
  )
149
174
  }
150
- const content = (await response!.json()).organization as OrganizationDto
175
+ const content = (await response!.json() as {
176
+ organization: OrganizationDto
177
+ }).organization as OrganizationDto
151
178
 
152
179
  // create organization and init from content
153
180
  const org = await new OrganizationImpl(this.context).initFrom(content, true)
@@ -175,23 +202,139 @@ export class OrganizationsImpl extends Organizations {
175
202
  organizations: OrganizationDto[],
176
203
  settings: UserSettings | null | undefined
177
204
  ): Promise<void> {
205
+
206
+ this.organizations = []
207
+
208
+ // set current organization
178
209
  this.currentOrganizationId = settings?.activeOrganizationId
210
+
211
+ // wait list
212
+ const waitList: Promise<OrganizationImpl>[] = []
213
+
214
+ // init organizations
179
215
  for (const organization of organizations) {
180
216
  // create organization and init from content
181
- const org = await new OrganizationImpl(this.context).initFrom(
217
+ const orgPromise = new OrganizationImpl(this.context).initFrom(
182
218
  organization,
183
219
  adminInOrganization.includes(organization.id)
184
220
  )
185
221
 
222
+ // add organization to wait list
223
+ waitList.push(orgPromise)
224
+ }
225
+
226
+ // wait for all organizations
227
+ const orgImpls = await Promise.all(waitList)
228
+
229
+ // add organizations to collection
230
+ for (const org of orgImpls) {
186
231
  // add organization to collection
187
232
  this.organizations.push(org)
233
+ }
234
+ }
188
235
 
189
- // dispatch event, organization added
190
- this.dispatch({
191
- type: OrganizationsEvent.ADDED,
192
- data: org
193
- })
236
+
237
+ async uploadIconGlobal(organizationId: string, resourceId: string, resourceType: ResourceType, icon: UploadFile): Promise<string> {
238
+
239
+ // check icon file
240
+ if (icon === undefined || icon === null) {
241
+ throw new Error("Organization icon upload, file is undefined or null")
194
242
  }
243
+
244
+ const resourceTypeInt: number = resourceType
245
+
246
+ // form data to send
247
+ const form = new FormData()
248
+ form.append("OrganizationId", organizationId)
249
+ form.append("ResourceId", resourceId)
250
+ form.append("ResourceType", resourceTypeInt.toString())
251
+ form.append("FileName", icon.name)
252
+ form.append("File", icon, icon.name)
253
+
254
+ // send request to the server
255
+ const response = await this.context
256
+ .resolve(RpcService)
257
+ ?.requestBuilder("api/v1/Files/icon")
258
+ .sendPutFormData(form)
259
+
260
+ // check response status
261
+ if (ResponseUtils.isFail(response)) {
262
+ await ResponseUtils.throwError(`Organization icon upload ${icon.name}`, response)
263
+ }
264
+
265
+ const iconResponse = await response!.json() as IconResponse
266
+
267
+ return iconResponse.iconId
195
268
  }
196
269
 
270
+ async getIconData(id: string): Promise<IconDto> {
271
+ if (id === null || id === undefined || id.trim() === ""){
272
+ throw new Error("Icon id is null or empty")
273
+ }
274
+
275
+ // send request to the server
276
+ const response = await this.context
277
+ .resolve(RpcService)
278
+ ?.requestBuilder("api/v1/Files/icon")
279
+ .searchParam("iconId", id)
280
+ .sendGet()
281
+
282
+ // check response status
283
+ if (ResponseUtils.isFail(response)) {
284
+ await ResponseUtils.throwError(
285
+ `Failed during get of icon ${id}`,
286
+ response
287
+ )
288
+ }
289
+
290
+ return await response!.json() as IconDto
291
+ }
292
+
293
+ async getNewestIcon(resourceId: string, resourceType: ResourceType): Promise<IconDto>{
294
+ if (resourceId === null || resourceId === undefined || resourceId.trim() === ""){
295
+ throw new Error("Resource id is null or empty")
296
+ }
297
+
298
+ const resourceTypeInt: number = resourceType
299
+
300
+ // send request to the server
301
+ const response = await this.context
302
+ .resolve(RpcService)
303
+ ?.requestBuilder("api/v1/Files/icon/newest")
304
+ .searchParam("resourceId", resourceId)
305
+ .searchParam("resourceType", resourceTypeInt.toString())
306
+ .sendGet()
307
+
308
+ // check response status
309
+ if (ResponseUtils.isFail(response)) {
310
+ await ResponseUtils.throwError(
311
+ `Failed during get of icon for ${resourceId} ${resourceType.toString()}`,
312
+ response
313
+ )
314
+ }
315
+
316
+ return await response!.json() as IconDto
317
+ }
318
+
319
+ async deleteIcon(id: string): Promise<void> {
320
+ if (id === undefined || id === null) {
321
+ throw new Error("Icon delete, id is undefined or null")
322
+ }
323
+ if (id.length === 0 || id.trim().length === 0) {
324
+ throw new Error("Icon delete, id is empty")
325
+ }
326
+
327
+ // send request to the server
328
+ const response = await this.context
329
+ .resolve(RpcService)
330
+ ?.requestBuilder("api/v1/Files/icon")
331
+ .searchParam("iconId", id)
332
+ .sendDelete()
333
+
334
+ // check response status
335
+ if (ResponseUtils.isFail(response)) {
336
+ await ResponseUtils.throwError(`Failed to delete icon: ${id}`, response)
337
+ }
338
+
339
+ }
197
340
  }
@@ -1,5 +1,8 @@
1
+ import { ApplyInviteCodeResponse } from "../../dto/userInfoResponse"
1
2
  import { EventDispatcher } from "../../events"
2
3
  import { Organization } from "./organization"
4
+ import {IconDto, ResourceType} from "../../dto/workspacesResponse"
5
+ import {UploadFile} from "../files/files"
3
6
 
4
7
  /**
5
8
  * Organization id.
@@ -53,4 +56,38 @@ export abstract class Organizations extends EventDispatcher<
53
56
  * Delete organization.
54
57
  */
55
58
  abstract delete(id: OrganizationId): Promise<void>
59
+
60
+ /**
61
+ * Apply invite code for user
62
+ */
63
+ abstract applyInviteCode(code: string): Promise<ApplyInviteCodeResponse>
64
+
65
+ /**
66
+ * Upload icon for any available resource ( organization, user, workspace, chat )
67
+ * @param organizationId
68
+ * @param resourceId
69
+ * @param resourceType
70
+ * @param icon
71
+ */
72
+ abstract uploadIconGlobal(organizationId: string, resourceId: string, resourceType: ResourceType, icon: UploadFile): Promise<string>
73
+
74
+ /**
75
+ * Get icon url and name for given id
76
+ * @param id
77
+ */
78
+ abstract getIconData(id: string): Promise<IconDto>
79
+
80
+ /**
81
+ * Get latest icon for provided resource
82
+ * @param resourceId
83
+ * @param resourceType
84
+ */
85
+ abstract getNewestIcon(resourceId: string, resourceType: ResourceType): Promise<IconDto>
86
+
87
+ /**
88
+ * Delete icon by ID
89
+ * @param id
90
+ */
91
+ abstract deleteIcon(id: string): Promise<void>
92
+
56
93
  }
@@ -0,0 +1,96 @@
1
+ import { QueryFlow, QueryFlowEvent } from "./queryFlow"
2
+ import {
3
+ QueryFileUrlDto,
4
+ QueryFlowDto,
5
+ QueryFlowState,
6
+ QueryFlowStatus
7
+ } from "../../dto/queryFlowResponse"
8
+ import { FlowId } from "./queryFlows"
9
+ import { Context } from "../../context"
10
+ import { RpcService } from "../../services/rpcService"
11
+ import { ResponseUtils } from "../../services/responseUtils"
12
+
13
+ export class QueryFlowImpl extends QueryFlow {
14
+ private _content?: QueryFlowDto
15
+ private _id?: FlowId
16
+
17
+ constructor(private readonly context: Context) {
18
+ super()
19
+ }
20
+
21
+ async initFrom(id: FlowId) {
22
+ this._id = id
23
+ await this.fetch()
24
+ }
25
+
26
+ async fetch() {
27
+ const response = await this.context
28
+ .resolve(RpcService)
29
+ ?.requestBuilder("api/v1/QueryFlows")
30
+ .searchParam("flowId", this.id)
31
+ .sendGet()
32
+
33
+ // check response status
34
+ if (ResponseUtils.isFail(response)) {
35
+ await ResponseUtils.throwError(`Failed to fetch query flow with id ${this.id}`, response)
36
+ }
37
+
38
+ // parse flow from the server's response
39
+ const flow = (await response!.json()) as QueryFlowDto
40
+
41
+ const lastState = this._content?.state
42
+
43
+ this._content = flow
44
+ if (lastState !== undefined && lastState !== this._content.state) {
45
+ this.dispatch({
46
+ type: QueryFlowEvent.UPDATED,
47
+ data: this
48
+ })
49
+ }
50
+
51
+ if (this._content.state === QueryFlowState.IN_PROGRESS) {
52
+ setTimeout(async () => await this.fetch(), 2000)
53
+ }
54
+ }
55
+
56
+ get id(): FlowId {
57
+ if (this._id) {
58
+ return this._id
59
+ } else {
60
+ throw new Error("Query flow is not loaded")
61
+ }
62
+ }
63
+
64
+ get name(): string {
65
+ if (this._content) {
66
+ return this._content.name
67
+ } else {
68
+ throw new Error("Query flow is not loaded")
69
+ }
70
+ }
71
+
72
+ get urls(): QueryFileUrlDto[] | undefined {
73
+ if (this._content && this._content.result.files) {
74
+ return this._content.result.files
75
+ } else {
76
+ throw new Error("Query fLow is not loaded")
77
+ }
78
+ }
79
+
80
+ get state(): QueryFlowState {
81
+ if (this._content) {
82
+ return this._content.state
83
+ } else {
84
+ throw new Error("Query fLow is not loaded")
85
+ }
86
+ }
87
+
88
+ get status(): QueryFlowStatus {
89
+ if (this._content) {
90
+ return this._content.status
91
+ } else {
92
+ throw new Error("Query fLow is not loaded")
93
+ }
94
+ }
95
+
96
+ }