@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,276 @@
1
+ import { Group, GroupEvent, GroupId } from "./group"
2
+ import { Disposable } from "../../disposable"
3
+ import {
4
+ AccessGroupDto,
5
+ AccessGroupResponse
6
+ } from "../../dto/accessGroupResponse"
7
+ import { UserDto } from "../../dto/userInfoResponse"
8
+ import { Workspace } from "../workspaces/workspace"
9
+ import { Context } from "../../context"
10
+ import { Organization } from "../organizations/organization"
11
+ import { RpcService } from "../../services/rpcService"
12
+ import { ResponseUtils } from "../../services/responseUtils"
13
+ import { WorkspacesResponse } from "../../dto/workspacesResponse"
14
+ import { WorkspaceId } from "../workspaces/workspaces"
15
+ import { UserId } from "../user/userProfile"
16
+
17
+ export class GroupImpl extends Group implements Disposable {
18
+ private _isDisposed: boolean = false
19
+ private _content?: AccessGroupDto
20
+ private _members?: UserDto[]
21
+ private _workspaces: Workspace[] = []
22
+ private _id?: GroupId
23
+
24
+ constructor(
25
+ private readonly context: Context,
26
+ public readonly organization: Organization
27
+ ) {
28
+ super()
29
+ }
30
+
31
+ async initFrom(id: GroupId): Promise<Group> {
32
+ // set id
33
+ this._id = id
34
+
35
+ // reload group and workspaces
36
+ const groupPromise = this.reloadGroup(id)
37
+ const workspacePromise = this.reloadWorkspaces(id)
38
+
39
+ // wait for all promises
40
+ await Promise.all([groupPromise, workspacePromise])
41
+
42
+ return this
43
+ }
44
+
45
+ async reloadGroup(id: GroupId): Promise<void> {
46
+ // fetch group
47
+ const response = await this.context.resolve(RpcService)
48
+ ?.requestBuilder("api/v1/AccessGroups")
49
+ .searchParam("groupId", id)
50
+ .sendGet()
51
+
52
+ // check response status
53
+ if (ResponseUtils.isFail(response)) {
54
+ await ResponseUtils.throwError(`Failed to get group: ${id}, organization: ${this.organization.id}`, response)
55
+ }
56
+
57
+ // parse group from the server's response
58
+ const group = (await response!.json()) as AccessGroupResponse
59
+ // init group
60
+ this._content = group.group
61
+ this._members = group.members
62
+ }
63
+
64
+ async reloadWorkspaces(id: GroupId): Promise<void> {
65
+ const groupWorkspaces = await this.loadWorkspaces(id)
66
+ this._workspaces.length = 0
67
+ this._workspaces.push(...groupWorkspaces)
68
+ }
69
+
70
+ async loadWorkspaces(groupId: GroupId): Promise<Workspace[]> {
71
+ // fetch workspaces
72
+ const response = await this.context.resolve(RpcService)
73
+ ?.requestBuilder("api/v1/AccessGroups/workspaces")
74
+ .searchParam("groupId", groupId)
75
+ .sendGet()
76
+
77
+ if (ResponseUtils.isFail(response)) {
78
+ await ResponseUtils.throwError(`Failed to get workspaces for group: ${this.id}, organization: ${this.organization.id}`, response)
79
+ }
80
+
81
+ // parse workspaces from the server's response
82
+ const workspaces = (await response!.json()) as WorkspacesResponse
83
+
84
+ // get workspaces
85
+ const result: Workspace[] = []
86
+ for (const workspaceDto of workspaces.workspaces) {
87
+ result.push(this.organization.workspaces.get(workspaceDto.id))
88
+ }
89
+
90
+ return result
91
+ }
92
+
93
+ get id(): GroupId {
94
+ if (this._id) {
95
+ return this._id
96
+ }
97
+ throw new Error("Access group is not loaded.")
98
+ }
99
+
100
+ get group(): AccessGroupDto {
101
+ if (this._content) {
102
+ return this._content
103
+ }
104
+ throw new Error("Access group is not loaded.")
105
+ }
106
+
107
+ get workspaces(): readonly Workspace[] {
108
+ return this._workspaces
109
+ }
110
+
111
+ get members(): UserDto[] {
112
+ if (this._members) {
113
+ return this._members
114
+ }
115
+ throw new Error("Access group is not loaded.")
116
+ }
117
+
118
+ async setName(name: string): Promise<void> {
119
+ if (name === undefined || name === null) {
120
+ throw new Error("Groups change, name is undefined or null")
121
+ }
122
+ if (name.length === 0 || name.trim().length === 0) {
123
+ throw new Error("Groups change, name is empty")
124
+ }
125
+ // send request to the server
126
+ const response = await this.context
127
+ .resolve(RpcService)
128
+ ?.requestBuilder("api/v1/AccessGroups/name")
129
+ .sendPutJson({
130
+ groupId: this.id,
131
+ name: name
132
+ })
133
+
134
+ // check response status
135
+ if (ResponseUtils.isFail(response)) {
136
+ await ResponseUtils.throwError(`Failed to change group name, group: ${this.id}, organization: ${this.organization.id}`, response)
137
+ }
138
+
139
+ // change name
140
+ if (this._content) {
141
+ this._content.name = name
142
+ }
143
+
144
+ // dispatch event
145
+ this.dispatch({
146
+ type: GroupEvent.UPDATED,
147
+ data: this
148
+ })
149
+ }
150
+
151
+ async setPermits(permits: { isAdmin: boolean }): Promise<void> {
152
+ // send request to the server
153
+ const response = await this.context
154
+ .resolve(RpcService)
155
+ ?.requestBuilder("api/v1/AccessGroups/permits")
156
+ .sendPutJson({
157
+ groupId: this.id,
158
+ permits: permits
159
+ })
160
+
161
+ if (ResponseUtils.isFail(response)) {
162
+ await ResponseUtils.throwError(`Failed to change group permits, group: ${this.id}, organization: ${this.organization.id}`, response)
163
+ }
164
+ }
165
+
166
+ async setWorkspaces(workspaces: string[]): Promise<void> {
167
+ if (workspaces === null || workspaces === undefined) {
168
+ throw new Error("Group add workspaces, workspaces is undefined or null")
169
+ }
170
+
171
+ // send request to the server
172
+ const response = await this.context
173
+ .resolve(RpcService)
174
+ ?.requestBuilder("api/v1/AccessGroups/workspaces")
175
+ .sendPutJson({
176
+ groupId: this.id,
177
+ actualWorkspaceIds: workspaces
178
+ })
179
+
180
+ if (ResponseUtils.isFail(response)) {
181
+ await ResponseUtils.throwError(`Failed to set workspaces for group: ${this.id}, organization: ${this.organization.id}`, response)
182
+ }
183
+
184
+ // reload workspaces
185
+ await this.reloadWorkspaces(this.id)
186
+
187
+ // dispatch event
188
+ this.dispatch({
189
+ type: GroupEvent.UPDATED,
190
+ data: this
191
+ })
192
+ }
193
+
194
+ async removeWorkspaces(workspaces: WorkspaceId[]): Promise<void> {
195
+ if (workspaces === null || workspaces === undefined) {
196
+ throw new Error("Group removeWorkspaces, workspaces is undefined or null")
197
+ }
198
+
199
+ // make set of workspaces
200
+ const groupWorkspaces = new Set(this.workspaces.map(w => w.id))
201
+
202
+ // check argument
203
+ if (!workspaces.every(w => groupWorkspaces.has(w))) {
204
+ const notExistingWorkspaces = workspaces.filter(workspaceId => !groupWorkspaces.has(workspaceId))
205
+ throw new Error(`Group removeWorkspaces, workspaces contains not existing workspaces: ${notExistingWorkspaces}`)
206
+ }
207
+
208
+ // remove workspaces
209
+ for (const id of workspaces) {
210
+ groupWorkspaces.delete(id)
211
+ }
212
+
213
+ // send request to the server
214
+ await this.setWorkspaces(Array.from(groupWorkspaces))
215
+ }
216
+
217
+ async setMembersIds(members: UserId[]) {
218
+ if (members === null || members === undefined) {
219
+ throw new Error("Group setMembersIds, members is undefined or null")
220
+ }
221
+
222
+ // send request to the server
223
+ const response = await this.context
224
+ .resolve(RpcService)
225
+ ?.requestBuilder("api/v1/AccessGroups/members")
226
+ .sendPutJson({
227
+ groupId: this.id,
228
+ memberIds: members
229
+ })
230
+
231
+ if (ResponseUtils.isFail(response)) {
232
+ await ResponseUtils.throwError(`Failed to set members for group: ${this.id}, organization: ${this.organization.id}`, response)
233
+ }
234
+
235
+ // reload group
236
+ await this.reloadGroup(this.id)
237
+
238
+ // dispatch event
239
+ this.dispatch({
240
+ type: GroupEvent.UPDATED,
241
+ data: this
242
+ })
243
+ }
244
+
245
+ async removeMembers(members: UserId[]): Promise<void> {
246
+ // check members
247
+ if (members === null || members === undefined) {
248
+ throw new Error("Group removeMembers, members is undefined or null")
249
+ }
250
+
251
+ // make set of members
252
+ const groupMembers = new Set(this.members.map(m => m.id))
253
+
254
+ // check argument
255
+ if (!members.every(m => groupMembers.has(m))) {
256
+ const notExistingMembers = members.filter(memberId => !groupMembers.has(memberId))
257
+ throw new Error(`Group removeMembers, members contains not existing members: ${notExistingMembers}`)
258
+ }
259
+
260
+ // remove members
261
+ for (const id of members) {
262
+ groupMembers.delete(id)
263
+ }
264
+
265
+ // send request to the server
266
+ await this.setMembersIds(Array.from(groupMembers))
267
+ }
268
+
269
+ get isDisposed(): boolean {
270
+ return this._isDisposed
271
+ }
272
+
273
+ dispose(): void {
274
+ this._isDisposed = true
275
+ }
276
+ }
@@ -0,0 +1,73 @@
1
+ import { EventDispatcher } from "../../events"
2
+ import { AccessGroupDto } from "../../dto/accessGroupResponse"
3
+ import { UserDto } from "../../dto/userInfoResponse"
4
+ import { Workspace } from "../workspaces/workspace"
5
+ import { WorkspaceId } from "../workspaces/workspaces"
6
+ import { UserId } from "../user/userProfile"
7
+
8
+ /**
9
+ * Group id.
10
+ */
11
+ export type GroupId = string
12
+
13
+ export enum GroupEvent {
14
+ UPDATED = "updated"
15
+ }
16
+
17
+ /**
18
+ * Group.
19
+ */
20
+ export abstract class Group extends EventDispatcher<GroupEvent, Group> {
21
+
22
+ /**
23
+ * Group id.
24
+ */
25
+ abstract get id(): GroupId
26
+
27
+ /**
28
+ * Group information.
29
+ */
30
+ abstract get group(): AccessGroupDto
31
+
32
+ /**
33
+ * Group members.
34
+ */
35
+ abstract get members(): UserDto[]
36
+
37
+ /**
38
+ * Group workspaces.
39
+ */
40
+ abstract get workspaces(): readonly Workspace[]
41
+
42
+ /**
43
+ * Set workspaces.
44
+ */
45
+ abstract setWorkspaces(workspaces: WorkspaceId[]): Promise<void>
46
+
47
+ /**
48
+ * Set name.
49
+ */
50
+ abstract setName(name: string): Promise<void>
51
+
52
+ /**
53
+ * Set permits.
54
+ */
55
+ abstract setPermits(permits: { isAdmin: boolean }): Promise<void>
56
+
57
+ /**
58
+ * Set members.
59
+ */
60
+ abstract setMembersIds(members: UserId[]): Promise<void>
61
+
62
+ /**
63
+ * Remove members.
64
+ * @param members
65
+ */
66
+ abstract removeMembers(members: UserId[]): Promise<void>
67
+
68
+ /**
69
+ * Remove workspaces.
70
+ * @param workspaces
71
+ */
72
+ abstract removeWorkspaces(workspaces: WorkspaceId[]): Promise<void>
73
+ }
@@ -1,174 +1,14 @@
1
1
  import { Context } from "../../context"
2
- import { Disposable } from "../../disposable"
3
2
  import {
4
- AccessGroupDto,
5
3
  AccessGroupResponse,
6
4
  AccessGroupsResponse
7
5
  } from "../../dto/accessGroupResponse"
8
- import { UserDto } from "../../dto/userInfoResponse"
9
- import { WorkspaceDto, WorkspacesResponse } from "../../dto/workspacesResponse"
10
6
  import { RpcService } from "../../services/rpcService"
11
- import { Group, GroupEvent, GroupId, Groups } from "./groups"
7
+ import { Groups, GroupsEvent } from "./groups"
12
8
  import { OrganizationImpl } from "../organizations/organization.impl"
13
- import { OrganizationId } from "../organizations/organizations"
14
9
  import { ResponseUtils } from "../../services/responseUtils"
15
- import { Organization } from "../organizations/organization"
16
-
17
- export class GroupImpl extends Group implements Disposable {
18
- private _isDisposed: boolean = false
19
- private _content?: AccessGroupDto
20
- private _members?: UserDto[]
21
-
22
- constructor(
23
- private readonly context: Context,
24
- public readonly organization: Organization
25
- ) {
26
- super()
27
- }
28
-
29
- async initFrom(id: GroupId): Promise<Group> {
30
- // fetch group
31
- const response = await this.context.resolve(RpcService)
32
- ?.requestBuilder("api/v1/AccessGroups")
33
- .searchParam("id", id)
34
- .sendGet()
35
-
36
- // check response status
37
- if (ResponseUtils.isFail(response)) {
38
- await ResponseUtils.throwError(`Failed to get group: ${id}, organization: ${this}`, response)
39
- }
40
-
41
- // parse group from the server's response
42
- const group = (await response!.json()) as AccessGroupResponse
43
-
44
- // init group
45
- this._content = group.group
46
- this._members = group.members
47
-
48
- return this
49
- }
50
-
51
- get id(): GroupId {
52
- if (this._content) {
53
- return this._content.id
54
- }
55
- throw new Error("Access group is not loaded.")
56
- }
57
-
58
- get group(): AccessGroupDto {
59
- if (this._content) {
60
- return this._content
61
- }
62
- throw new Error("Access group is not loaded.")
63
- }
64
-
65
- async getWorkspaces(): Promise<WorkspaceDto[]> {
66
- // fetch workspaces
67
- const response = await this.context.resolve(RpcService)
68
- ?.requestBuilder("api/v1/Organizations/workspaces")
69
- .searchParam("groupId", this.id)
70
- .sendGet()
71
-
72
- if (ResponseUtils.isFail(response)) {
73
- await ResponseUtils.throwError(`Failed to get workspaces for group: ${this.id}, organization: ${this.organization.id}`, response)
74
- }
75
-
76
- // parse workspaces from the server's response
77
- const workspaces = (await response!.json()) as WorkspacesResponse
78
-
79
- return workspaces.workspaces
80
- }
81
-
82
- get members(): UserDto[] {
83
- if (this._members) {
84
- return this._members
85
- }
86
- throw new Error("Access group is not loaded.")
87
- }
88
-
89
- async setName(name: string): Promise<void> {
90
- if (name === undefined || name === null) {
91
- throw new Error("Groups change, name is undefined or null")
92
- }
93
- if (name.length === 0 || name.trim().length === 0) {
94
- throw new Error("Groups change, name is empty")
95
- }
96
- // send request to the server
97
- const response = await this.context
98
- .resolve(RpcService)
99
- ?.requestBuilder("api/v1/AccessGroups/name")
100
- .sendPutJson({
101
- groupId: this.id,
102
- name: name
103
- })
104
-
105
- // check response status
106
- if (ResponseUtils.isFail(response)) {
107
- await ResponseUtils.throwError(`Failed to change group name, group: ${this.id}, organization: ${this.organization.id}`, response)
108
- }
109
- }
110
-
111
- async setPermits(permits: { isAdmin: boolean }): Promise<void> {
112
- // send request to the server
113
- const response = await this.context
114
- .resolve(RpcService)
115
- ?.requestBuilder("api/v1/AccessGroups/permits")
116
- .sendPutJson({
117
- groupId: this.id,
118
- permits: permits
119
- })
120
-
121
- if (ResponseUtils.isFail(response)) {
122
- await ResponseUtils.throwError(`Failed to change group permits, group: ${this.id}, organization: ${this.organization.id}`, response)
123
- }
124
- }
125
-
126
- async setWorkspaces(workspaces: string[]): Promise<void> {
127
- if (workspaces === null || workspaces === undefined) {
128
- throw new Error("Group add workspaces, workspaces is undefined or null")
129
- }
130
-
131
- // send request to the server
132
- const response = await this.context
133
- .resolve(RpcService)
134
- ?.requestBuilder("api/v1/AccessGroups/workspaces")
135
- .sendPutJson({
136
- groupId: this.id,
137
- actualWorkspaceIds: workspaces
138
- })
139
-
140
- if (ResponseUtils.isFail(response)) {
141
- await ResponseUtils.throwError(`Failed to set workspaces for group: ${this.id}, organization: ${this.organization.id}`, response)
142
- }
143
- }
144
-
145
- async setMembersIds(members: string[]) {
146
- if (members === null || members === undefined) {
147
- throw new Error("Group add members, members is undefined or null")
148
- }
149
-
150
- // send request to the server
151
- const response = await this.context
152
- .resolve(RpcService)
153
- ?.requestBuilder("api/v1/AccessGroups/members")
154
- .sendPutJson({
155
- groupId: this.id,
156
- memberIds: members
157
- })
158
-
159
- if (ResponseUtils.isFail(response)) {
160
- await ResponseUtils.throwError(`Failed to set members for group: ${this.id}, organization: ${this.organization.id}`, response)
161
- }
162
- }
163
-
164
- get isDisposed(): boolean {
165
- return this._isDisposed
166
- }
167
-
168
- dispose(): void {
169
- this._isDisposed = true
170
- }
171
- }
10
+ import { Group, GroupId } from "./group"
11
+ import { GroupImpl } from "./group.impl"
172
12
 
173
13
  export class GroupsImpl extends Groups {
174
14
 
@@ -181,14 +21,23 @@ export class GroupsImpl extends Groups {
181
21
  super()
182
22
  }
183
23
 
24
+ get collection(): readonly Group[] {
25
+ return this._groups
26
+ }
27
+
184
28
  async initialize() {
185
29
  await this.internalInit()
186
30
  }
187
31
 
188
- async create(name: string, organizationId: OrganizationId, permits: {
32
+ async reload(){
33
+ this._groups = []
34
+ await this.internalInit()
35
+ }
36
+
37
+ async create(name: string, permits: {
189
38
  isAdmin: boolean
190
39
  }, memberIds: string[]): Promise<Group> {
191
- return await this.internalCreate(name, organizationId, permits, memberIds)
40
+ return await this.internalCreate(name, permits, memberIds)
192
41
  }
193
42
 
194
43
  get(id: GroupId): Group | undefined {
@@ -221,23 +70,28 @@ export class GroupsImpl extends Groups {
221
70
  // parse groups from the server's response
222
71
  const groups = (await response!.json()) as AccessGroupsResponse
223
72
 
73
+ const wait: Promise<Group>[] = []
74
+
224
75
  // init groups
225
76
  for (const gr of groups.groups) {
226
77
  // create group implementation
227
- const group = await new GroupImpl(this.context, this.organization).initFrom(gr.id)
78
+ const group = new GroupImpl(this.context, this.organization).initFrom(gr.id)
228
79
 
80
+ // add to the wait list
81
+ wait.push(group)
82
+ }
83
+
84
+ // wait for all groups
85
+ const groupsResult = await Promise.all(wait)
86
+
87
+ // add groups to the collection
88
+ for (const group of groupsResult) {
229
89
  // add group to the collection
230
90
  this._groups.push(group)
231
-
232
- // dispatch event
233
- this.dispatch({
234
- type: GroupEvent.ADDED,
235
- data: group
236
- })
237
91
  }
238
92
  }
239
93
 
240
- async internalCreate(name: string, organizationId: OrganizationId, permits: {
94
+ async internalCreate(name: string, permits: {
241
95
  isAdmin: boolean
242
96
  }, memberIds: string[]): Promise<Group> {
243
97
  if (name === undefined || name === null) {
@@ -253,7 +107,7 @@ export class GroupsImpl extends Groups {
253
107
  ?.requestBuilder("api/v1/AccessGroups")
254
108
  .sendPostJson({
255
109
  name: name,
256
- organizationId: organizationId,
110
+ organizationId: this.organization.id,
257
111
  permits: permits,
258
112
  memberIds: memberIds
259
113
  })
@@ -273,7 +127,7 @@ export class GroupsImpl extends Groups {
273
127
 
274
128
  // dispatch event
275
129
  this.dispatch({
276
- type: GroupEvent.ADDED,
130
+ type: GroupsEvent.ADDED,
277
131
  data: group
278
132
  })
279
133
 
@@ -295,7 +149,7 @@ export class GroupsImpl extends Groups {
295
149
  // send request to the server
296
150
  const response = await this.context
297
151
  .resolve(RpcService)
298
- ?.requestBuilder("/api/v1/AccessGroups")
152
+ ?.requestBuilder("api/v1/AccessGroups")
299
153
  .searchParam("groupId", id)
300
154
  .sendDelete()
301
155
 
@@ -316,7 +170,7 @@ export class GroupsImpl extends Groups {
316
170
 
317
171
  // dispatch event, group removed
318
172
  this.dispatch({
319
- type: GroupEvent.REMOVED,
173
+ type: GroupsEvent.REMOVED,
320
174
  data: group
321
175
  })
322
176