@neuralinnovations/dataisland-sdk 0.0.1-dev8 → 0.0.1-dev81
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.
- package/README.md +209 -7
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/package.json +103 -0
- package/dist/src/appBuilder.d.ts +44 -0
- package/dist/src/appBuilder.d.ts.map +1 -0
- package/dist/src/appBuilder.js +10 -0
- package/dist/src/appBuilder.js.map +1 -0
- package/dist/src/commands/deleteUserFullCommandHandler.d.ts +7 -0
- package/dist/src/commands/deleteUserFullCommandHandler.d.ts.map +1 -0
- package/dist/src/commands/deleteUserFullCommandHandler.js +21 -0
- package/dist/src/commands/deleteUserFullCommandHandler.js.map +1 -0
- package/dist/src/commands/startCommandHandler.d.ts +7 -0
- package/dist/src/commands/startCommandHandler.d.ts.map +1 -0
- package/dist/src/commands/startCommandHandler.js +33 -0
- package/dist/src/commands/startCommandHandler.js.map +1 -0
- package/dist/src/context.d.ts +24 -0
- package/dist/src/context.d.ts.map +1 -0
- package/dist/src/context.js +31 -0
- package/dist/src/context.js.map +1 -0
- package/dist/src/credentials.d.ts +39 -0
- package/dist/src/credentials.d.ts.map +1 -0
- package/dist/src/credentials.js +105 -0
- package/dist/src/credentials.js.map +1 -0
- package/dist/src/dataIslandApp.d.ts +60 -0
- package/dist/src/dataIslandApp.d.ts.map +1 -0
- package/dist/src/dataIslandApp.js +10 -0
- package/dist/src/dataIslandApp.js.map +1 -0
- package/dist/src/disposable.d.ts +84 -0
- package/dist/src/disposable.d.ts.map +1 -0
- package/dist/src/disposable.js +147 -0
- package/dist/src/disposable.js.map +1 -0
- package/dist/src/dto/accessGroupResponse.d.ts +27 -0
- package/dist/src/dto/accessGroupResponse.d.ts.map +1 -0
- package/dist/src/dto/accessGroupResponse.js +3 -0
- package/dist/src/dto/accessGroupResponse.js.map +1 -0
- package/dist/src/dto/acquiringResponse.d.ts +46 -0
- package/dist/src/dto/acquiringResponse.d.ts.map +1 -0
- package/dist/src/dto/acquiringResponse.js +11 -0
- package/dist/src/dto/acquiringResponse.js.map +1 -0
- package/dist/src/dto/apiKeyResponse.d.ts +24 -0
- package/dist/src/dto/apiKeyResponse.d.ts.map +1 -0
- package/dist/src/dto/apiKeyResponse.js +3 -0
- package/dist/src/dto/apiKeyResponse.js.map +1 -0
- package/dist/src/dto/badRequestResponse.d.ts +6 -0
- package/dist/src/dto/badRequestResponse.d.ts.map +1 -0
- package/dist/src/dto/badRequestResponse.js +3 -0
- package/dist/src/dto/badRequestResponse.js.map +1 -0
- package/dist/src/dto/chatResponse.d.ts +99 -0
- package/dist/src/dto/chatResponse.d.ts.map +1 -0
- package/dist/src/dto/chatResponse.js +56 -0
- package/dist/src/dto/chatResponse.js.map +1 -0
- package/dist/src/dto/invitesResponse.d.ts +21 -0
- package/dist/src/dto/invitesResponse.d.ts.map +1 -0
- package/dist/src/dto/invitesResponse.js +3 -0
- package/dist/src/dto/invitesResponse.js.map +1 -0
- package/dist/src/dto/libraryResponse.d.ts +42 -0
- package/dist/src/dto/libraryResponse.d.ts.map +1 -0
- package/dist/src/dto/libraryResponse.js +3 -0
- package/dist/src/dto/libraryResponse.js.map +1 -0
- package/dist/src/dto/limitsResponse.d.ts +29 -0
- package/dist/src/dto/limitsResponse.d.ts.map +1 -0
- package/dist/src/dto/limitsResponse.js +13 -0
- package/dist/src/dto/limitsResponse.js.map +1 -0
- package/dist/src/dto/queryFlowResponse.d.ts +20 -0
- package/dist/src/dto/queryFlowResponse.d.ts.map +1 -0
- package/dist/src/dto/queryFlowResponse.js +10 -0
- package/dist/src/dto/queryFlowResponse.js.map +1 -0
- package/dist/src/dto/quizResponse.d.ts +11 -0
- package/dist/src/dto/quizResponse.d.ts.map +1 -0
- package/dist/src/dto/quizResponse.js +3 -0
- package/dist/src/dto/quizResponse.js.map +1 -0
- package/dist/src/dto/statisticsResponse.d.ts +11 -0
- package/dist/src/dto/statisticsResponse.d.ts.map +1 -0
- package/dist/src/dto/statisticsResponse.js +3 -0
- package/dist/src/dto/statisticsResponse.js.map +1 -0
- package/dist/src/dto/userInfoResponse.d.ts +93 -0
- package/dist/src/dto/userInfoResponse.d.ts.map +1 -0
- package/dist/src/dto/userInfoResponse.js +3 -0
- package/dist/src/dto/userInfoResponse.js.map +1 -0
- package/dist/src/dto/workspacesResponse.d.ts +79 -0
- package/dist/src/dto/workspacesResponse.d.ts.map +1 -0
- package/dist/src/dto/workspacesResponse.js +31 -0
- package/dist/src/dto/workspacesResponse.js.map +1 -0
- package/dist/src/events.d.ts +17 -0
- package/dist/src/events.d.ts.map +1 -0
- package/dist/src/events.js +52 -0
- package/dist/src/events.js.map +1 -0
- package/dist/src/index.d.ts +88 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +140 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/internal/app.impl.d.ts +32 -0
- package/dist/src/internal/app.impl.d.ts.map +1 -0
- package/dist/src/internal/app.impl.js +187 -0
- package/dist/src/internal/app.impl.js.map +1 -0
- package/dist/src/internal/appBuilder.impl.d.ts +27 -0
- package/dist/src/internal/appBuilder.impl.d.ts.map +1 -0
- package/dist/src/internal/appBuilder.impl.js +71 -0
- package/dist/src/internal/appBuilder.impl.js.map +1 -0
- package/dist/src/internal/createApp.impl.d.ts +4 -0
- package/dist/src/internal/createApp.impl.d.ts.map +1 -0
- package/dist/src/internal/createApp.impl.js +11 -0
- package/dist/src/internal/createApp.impl.js.map +1 -0
- package/dist/src/internal/registry.d.ts +66 -0
- package/dist/src/internal/registry.d.ts.map +1 -0
- package/dist/src/internal/registry.js +114 -0
- package/dist/src/internal/registry.js.map +1 -0
- package/dist/src/middleware.d.ts +6 -0
- package/dist/src/middleware.d.ts.map +1 -0
- package/dist/src/middleware.js +3 -0
- package/dist/src/middleware.js.map +1 -0
- package/dist/src/services/acquiringService.d.ts +9 -0
- package/dist/src/services/acquiringService.d.ts.map +1 -0
- package/dist/src/services/acquiringService.js +19 -0
- package/dist/src/services/acquiringService.js.map +1 -0
- package/dist/src/services/anonymousService.d.ts +8 -0
- package/dist/src/services/anonymousService.d.ts.map +1 -0
- package/dist/src/services/anonymousService.js +41 -0
- package/dist/src/services/anonymousService.js.map +1 -0
- package/dist/src/services/commandService.d.ts +18 -0
- package/dist/src/services/commandService.d.ts.map +1 -0
- package/dist/src/services/commandService.js +40 -0
- package/dist/src/services/commandService.js.map +1 -0
- package/dist/src/services/cookieService.d.ts +7 -0
- package/dist/src/services/cookieService.d.ts.map +1 -0
- package/dist/src/services/cookieService.js +18 -0
- package/dist/src/services/cookieService.js.map +1 -0
- package/dist/src/services/credentialService.d.ts +9 -0
- package/dist/src/services/credentialService.d.ts.map +1 -0
- package/dist/src/services/credentialService.js +26 -0
- package/dist/src/services/credentialService.js.map +1 -0
- package/dist/src/services/httpMethod.d.ts +2 -0
- package/dist/src/services/httpMethod.d.ts.map +1 -0
- package/dist/src/services/httpMethod.js +3 -0
- package/dist/src/services/httpMethod.js.map +1 -0
- package/dist/src/services/librariesService.d.ts +9 -0
- package/dist/src/services/librariesService.d.ts.map +1 -0
- package/dist/src/services/librariesService.js +19 -0
- package/dist/src/services/librariesService.js.map +1 -0
- package/dist/src/services/middlewareService.d.ts +10 -0
- package/dist/src/services/middlewareService.d.ts.map +1 -0
- package/dist/src/services/middlewareService.js +34 -0
- package/dist/src/services/middlewareService.js.map +1 -0
- package/dist/src/services/organizationService.d.ts +10 -0
- package/dist/src/services/organizationService.d.ts.map +1 -0
- package/dist/src/services/organizationService.js +19 -0
- package/dist/src/services/organizationService.js.map +1 -0
- package/dist/src/services/requestBuilder.d.ts +19 -0
- package/dist/src/services/requestBuilder.d.ts.map +1 -0
- package/dist/src/services/requestBuilder.js +133 -0
- package/dist/src/services/requestBuilder.js.map +1 -0
- package/dist/src/services/responseUtils.d.ts +8 -0
- package/dist/src/services/responseUtils.d.ts.map +1 -0
- package/dist/src/services/responseUtils.js +40 -0
- package/dist/src/services/responseUtils.js.map +1 -0
- package/dist/src/services/rpcService.d.ts +77 -0
- package/dist/src/services/rpcService.d.ts.map +1 -0
- package/dist/src/services/rpcService.js +125 -0
- package/dist/src/services/rpcService.js.map +1 -0
- package/dist/src/services/service.d.ts +21 -0
- package/dist/src/services/service.d.ts.map +1 -0
- package/dist/src/services/service.js +41 -0
- package/dist/src/services/service.js.map +1 -0
- package/dist/src/services/userProfileService.d.ts +10 -0
- package/dist/src/services/userProfileService.d.ts.map +1 -0
- package/dist/src/services/userProfileService.js +59 -0
- package/dist/src/services/userProfileService.js.map +1 -0
- package/dist/src/storages/acquirings/acquiring.d.ts +41 -0
- package/dist/src/storages/acquirings/acquiring.d.ts.map +1 -0
- package/dist/src/storages/acquirings/acquiring.impl.d.ts +20 -0
- package/dist/src/storages/acquirings/acquiring.impl.d.ts.map +1 -0
- package/dist/src/storages/acquirings/acquiring.impl.js +92 -0
- package/dist/src/storages/acquirings/acquiring.impl.js.map +1 -0
- package/dist/src/storages/acquirings/acquiring.js +10 -0
- package/dist/src/storages/acquirings/acquiring.js.map +1 -0
- package/dist/src/storages/chats/answer.d.ts +41 -0
- package/dist/src/storages/chats/answer.d.ts.map +1 -0
- package/dist/src/storages/chats/answer.impl.d.ts +29 -0
- package/dist/src/storages/chats/answer.impl.d.ts.map +1 -0
- package/dist/src/storages/chats/answer.impl.js +134 -0
- package/dist/src/storages/chats/answer.impl.js.map +1 -0
- package/dist/src/storages/chats/answer.js +15 -0
- package/dist/src/storages/chats/answer.js.map +1 -0
- package/dist/src/storages/chats/chat.d.ts +52 -0
- package/dist/src/storages/chats/chat.d.ts.map +1 -0
- package/dist/src/storages/chats/chat.impl.d.ts +27 -0
- package/dist/src/storages/chats/chat.impl.d.ts.map +1 -0
- package/dist/src/storages/chats/chat.impl.js +102 -0
- package/dist/src/storages/chats/chat.impl.js.map +1 -0
- package/dist/src/storages/chats/chat.js +12 -0
- package/dist/src/storages/chats/chat.js.map +1 -0
- package/dist/src/storages/chats/chats.d.ts +63 -0
- package/dist/src/storages/chats/chats.d.ts.map +1 -0
- package/dist/src/storages/chats/chats.impl.d.ts +22 -0
- package/dist/src/storages/chats/chats.impl.d.ts.map +1 -0
- package/dist/src/storages/chats/chats.impl.js +252 -0
- package/dist/src/storages/chats/chats.impl.js.map +1 -0
- package/dist/src/storages/chats/chats.js +16 -0
- package/dist/src/storages/chats/chats.js.map +1 -0
- package/dist/src/storages/files/file.d.ts +59 -0
- package/dist/src/storages/files/file.d.ts.map +1 -0
- package/dist/src/storages/files/file.impl.d.ts +27 -0
- package/dist/src/storages/files/file.impl.d.ts.map +1 -0
- package/dist/src/storages/files/file.impl.js +104 -0
- package/dist/src/storages/files/file.impl.js.map +1 -0
- package/dist/src/storages/files/file.js +11 -0
- package/dist/src/storages/files/file.js.map +1 -0
- package/dist/src/storages/files/files.d.ts +39 -0
- package/dist/src/storages/files/files.d.ts.map +1 -0
- package/dist/src/storages/files/files.impl.d.ts +26 -0
- package/dist/src/storages/files/files.impl.d.ts.map +1 -0
- package/dist/src/storages/files/files.impl.js +199 -0
- package/dist/src/storages/files/files.impl.js.map +1 -0
- package/dist/src/storages/files/files.js +20 -0
- package/dist/src/storages/files/files.js.map +1 -0
- package/dist/src/storages/files/filesPage.d.ts +28 -0
- package/dist/src/storages/files/filesPage.d.ts.map +1 -0
- package/dist/src/storages/files/filesPage.impl.d.ts +15 -0
- package/dist/src/storages/files/filesPage.impl.d.ts.map +1 -0
- package/dist/src/storages/files/filesPage.impl.js +38 -0
- package/dist/src/storages/files/filesPage.impl.js.map +1 -0
- package/dist/src/storages/files/filesPage.js +10 -0
- package/dist/src/storages/files/filesPage.js.map +1 -0
- package/dist/src/storages/groups/group.d.ts +63 -0
- package/dist/src/storages/groups/group.d.ts.map +1 -0
- package/dist/src/storages/groups/group.impl.d.ts +38 -0
- package/dist/src/storages/groups/group.impl.d.ts.map +1 -0
- package/dist/src/storages/groups/group.impl.js +210 -0
- package/dist/src/storages/groups/group.impl.js.map +1 -0
- package/dist/src/storages/groups/group.js +15 -0
- package/dist/src/storages/groups/group.js.map +1 -0
- package/dist/src/storages/groups/groups.d.ts +43 -0
- package/dist/src/storages/groups/groups.d.ts.map +1 -0
- package/dist/src/storages/groups/groups.impl.d.ts +31 -0
- package/dist/src/storages/groups/groups.impl.d.ts.map +1 -0
- package/dist/src/storages/groups/groups.impl.js +136 -0
- package/dist/src/storages/groups/groups.impl.js.map +1 -0
- package/dist/src/storages/groups/groups.js +20 -0
- package/dist/src/storages/groups/groups.js.map +1 -0
- package/dist/src/storages/library/folderId.d.ts +2 -0
- package/dist/src/storages/library/folderId.d.ts.map +1 -0
- package/dist/src/storages/library/folderId.js +3 -0
- package/dist/src/storages/library/folderId.js.map +1 -0
- package/dist/src/storages/library/libraries.d.ts +48 -0
- package/dist/src/storages/library/libraries.d.ts.map +1 -0
- package/dist/src/storages/library/libraries.impl.d.ts +26 -0
- package/dist/src/storages/library/libraries.impl.d.ts.map +1 -0
- package/dist/src/storages/library/libraries.impl.js +148 -0
- package/dist/src/storages/library/libraries.impl.js.map +1 -0
- package/dist/src/storages/library/libraries.js +16 -0
- package/dist/src/storages/library/libraries.js.map +1 -0
- package/dist/src/storages/library/library.d.ts +26 -0
- package/dist/src/storages/library/library.d.ts.map +1 -0
- package/dist/src/storages/library/library.impl.d.ts +19 -0
- package/dist/src/storages/library/library.impl.d.ts.map +1 -0
- package/dist/src/storages/library/library.impl.js +98 -0
- package/dist/src/storages/library/library.impl.js.map +1 -0
- package/dist/src/storages/library/library.js +10 -0
- package/dist/src/storages/library/library.js.map +1 -0
- package/dist/src/storages/library/libraryFolder.d.ts +16 -0
- package/dist/src/storages/library/libraryFolder.d.ts.map +1 -0
- package/dist/src/storages/library/libraryFolder.impl.d.ts +22 -0
- package/dist/src/storages/library/libraryFolder.impl.d.ts.map +1 -0
- package/dist/src/storages/library/libraryFolder.impl.js +104 -0
- package/dist/src/storages/library/libraryFolder.impl.js.map +1 -0
- package/dist/src/storages/library/libraryFolder.js +7 -0
- package/dist/src/storages/library/libraryFolder.js.map +1 -0
- package/dist/src/storages/library/libraryId.d.ts +2 -0
- package/dist/src/storages/library/libraryId.d.ts.map +1 -0
- package/dist/src/storages/library/libraryId.js +3 -0
- package/dist/src/storages/library/libraryId.js.map +1 -0
- package/dist/src/storages/library/libraryPage.d.ts +45 -0
- package/dist/src/storages/library/libraryPage.d.ts.map +1 -0
- package/dist/src/storages/library/libraryPage.impl.d.ts +26 -0
- package/dist/src/storages/library/libraryPage.impl.d.ts.map +1 -0
- package/dist/src/storages/library/libraryPage.impl.js +29 -0
- package/dist/src/storages/library/libraryPage.impl.js.map +1 -0
- package/dist/src/storages/library/libraryPage.js +10 -0
- package/dist/src/storages/library/libraryPage.js.map +1 -0
- package/dist/src/storages/organizations/organization.d.ts +146 -0
- package/dist/src/storages/organizations/organization.d.ts.map +1 -0
- package/dist/src/storages/organizations/organization.impl.d.ts +59 -0
- package/dist/src/storages/organizations/organization.impl.d.ts.map +1 -0
- package/dist/src/storages/organizations/organization.impl.js +372 -0
- package/dist/src/storages/organizations/organization.impl.js.map +1 -0
- package/dist/src/storages/organizations/organization.js +18 -0
- package/dist/src/storages/organizations/organization.js.map +1 -0
- package/dist/src/storages/organizations/organizations.d.ts +77 -0
- package/dist/src/storages/organizations/organizations.d.ts.map +1 -0
- package/dist/src/storages/organizations/organizations.impl.d.ts +45 -0
- package/dist/src/storages/organizations/organizations.impl.d.ts.map +1 -0
- package/dist/src/storages/organizations/organizations.impl.js +242 -0
- package/dist/src/storages/organizations/organizations.impl.js.map +1 -0
- package/dist/src/storages/organizations/organizations.js +20 -0
- package/dist/src/storages/organizations/organizations.js.map +1 -0
- package/dist/src/storages/queryFlows/queryFlow.d.ts +13 -0
- package/dist/src/storages/queryFlows/queryFlow.d.ts.map +1 -0
- package/dist/src/storages/queryFlows/queryFlow.impl.d.ts +17 -0
- package/dist/src/storages/queryFlows/queryFlow.impl.d.ts.map +1 -0
- package/dist/src/storages/queryFlows/queryFlow.impl.js +65 -0
- package/dist/src/storages/queryFlows/queryFlow.impl.js.map +1 -0
- package/dist/src/storages/queryFlows/queryFlow.js +12 -0
- package/dist/src/storages/queryFlows/queryFlow.js.map +1 -0
- package/dist/src/storages/queryFlows/queryFlows.d.ts +21 -0
- package/dist/src/storages/queryFlows/queryFlows.d.ts.map +1 -0
- package/dist/src/storages/queryFlows/queryFlows.impl.d.ts +17 -0
- package/dist/src/storages/queryFlows/queryFlows.impl.d.ts.map +1 -0
- package/dist/src/storages/queryFlows/queryFlows.impl.js +112 -0
- package/dist/src/storages/queryFlows/queryFlows.impl.js.map +1 -0
- package/dist/src/storages/queryFlows/queryFlows.js +16 -0
- package/dist/src/storages/queryFlows/queryFlows.js.map +1 -0
- package/dist/src/storages/user/userProfile.d.ts +64 -0
- package/dist/src/storages/user/userProfile.d.ts.map +1 -0
- package/dist/src/storages/user/userProfile.impl.d.ts +24 -0
- package/dist/src/storages/user/userProfile.impl.d.ts.map +1 -0
- package/dist/src/storages/user/userProfile.impl.js +129 -0
- package/dist/src/storages/user/userProfile.impl.js.map +1 -0
- package/dist/src/storages/user/userProfile.js +12 -0
- package/dist/src/storages/user/userProfile.js.map +1 -0
- package/dist/src/storages/workspaces/workspace.d.ts +50 -0
- package/dist/src/storages/workspaces/workspace.d.ts.map +1 -0
- package/dist/src/storages/workspaces/workspace.impl.d.ts +25 -0
- package/dist/src/storages/workspaces/workspace.impl.d.ts.map +1 -0
- package/dist/src/storages/workspaces/workspace.impl.js +133 -0
- package/dist/src/storages/workspaces/workspace.impl.js.map +1 -0
- package/dist/src/storages/workspaces/workspace.js +18 -0
- package/dist/src/storages/workspaces/workspace.js.map +1 -0
- package/dist/src/storages/workspaces/workspaces.d.ts +47 -0
- package/dist/src/storages/workspaces/workspaces.d.ts.map +1 -0
- package/dist/src/storages/workspaces/workspaces.impl.d.ts +33 -0
- package/dist/src/storages/workspaces/workspaces.impl.d.ts.map +1 -0
- package/dist/src/storages/workspaces/workspaces.impl.js +153 -0
- package/dist/src/storages/workspaces/workspaces.impl.js.map +1 -0
- package/dist/src/storages/workspaces/workspaces.js +19 -0
- package/dist/src/storages/workspaces/workspaces.js.map +1 -0
- package/dist/src/unitTest.d.ts +12 -0
- package/dist/src/unitTest.d.ts.map +1 -0
- package/dist/src/unitTest.js +44 -0
- package/dist/src/unitTest.js.map +1 -0
- package/dist/src/utils/browserUtils.d.ts +4 -0
- package/dist/src/utils/browserUtils.d.ts.map +1 -0
- package/dist/src/utils/browserUtils.js +64 -0
- package/dist/src/utils/browserUtils.js.map +1 -0
- package/dist/src/utils/request.d.ts +6 -0
- package/dist/src/utils/request.d.ts.map +1 -0
- package/dist/src/utils/request.js +3 -0
- package/dist/src/utils/request.js.map +1 -0
- package/dist/src/utils/utils.d.ts +3 -0
- package/dist/src/utils/utils.d.ts.map +1 -0
- package/dist/src/utils/utils.js +13 -0
- package/dist/src/utils/utils.js.map +1 -0
- package/index.d.ts +1 -0
- package/index.js +1 -0
- package/package.json +44 -5
- package/src/commands/deleteUserFullCommandHandler.ts +19 -0
- package/src/commands/startCommandHandler.ts +22 -5
- package/src/context.ts +4 -2
- package/src/credentials.ts +46 -0
- package/src/dataIslandApp.ts +14 -2
- package/src/disposable.ts +18 -5
- package/src/dto/accessGroupResponse.ts +17 -16
- package/src/dto/acquiringResponse.ts +54 -0
- package/src/dto/apiKeyResponse.ts +29 -0
- package/src/dto/badRequestResponse.ts +6 -0
- package/src/dto/chatResponse.ts +78 -54
- package/src/dto/invitesResponse.ts +25 -0
- package/src/dto/libraryResponse.ts +51 -0
- package/src/dto/limitsResponse.ts +32 -0
- package/src/dto/queryFlowResponse.ts +28 -0
- package/src/dto/quizResponse.ts +12 -0
- package/src/dto/statisticsResponse.ts +12 -0
- package/src/dto/userInfoResponse.ts +65 -2
- package/src/dto/workspacesResponse.ts +55 -7
- package/src/index.ts +73 -16
- package/src/internal/app.impl.ts +63 -12
- package/src/internal/registry.ts +54 -6
- package/src/middleware.ts +2 -0
- package/src/services/acquiringService.ts +21 -0
- package/src/services/anonymousService.ts +43 -0
- package/src/services/commandService.ts +4 -2
- package/src/services/cookieService.ts +16 -0
- package/src/services/httpMethod.ts +1 -0
- package/src/services/librariesService.ts +22 -0
- package/src/services/middlewareService.ts +1 -0
- package/src/services/organizationService.ts +2 -2
- package/src/services/requestBuilder.ts +48 -8
- package/src/services/responseUtils.ts +12 -0
- package/src/services/rpcService.ts +1 -0
- package/src/services/userProfileService.ts +36 -4
- package/src/storages/acquirings/acquiring.impl.ts +132 -0
- package/src/storages/acquirings/acquiring.ts +54 -0
- package/src/storages/chats/answer.impl.ts +178 -0
- package/src/storages/chats/answer.ts +53 -0
- package/src/storages/chats/chat.impl.ts +135 -0
- package/src/storages/chats/chat.ts +66 -0
- package/src/storages/chats/chats.impl.ts +347 -0
- package/src/storages/chats/chats.ts +74 -0
- package/src/storages/files/file.impl.ts +126 -0
- package/src/storages/files/file.ts +78 -0
- package/src/storages/files/files.impl.ts +280 -0
- package/src/storages/{files.ts → files/files.ts} +14 -7
- package/src/storages/files/filesPage.impl.ts +37 -0
- package/src/storages/{filesPage.ts → files/filesPage.ts} +6 -0
- package/src/storages/groups/group.impl.ts +276 -0
- package/src/storages/groups/group.ts +73 -0
- package/src/storages/groups/groups.impl.ts +180 -0
- package/src/storages/groups/groups.ts +50 -0
- package/src/storages/library/folderId.ts +1 -0
- package/src/storages/library/libraries.impl.ts +209 -0
- package/src/storages/library/libraries.ts +56 -0
- package/src/storages/library/library.impl.ts +151 -0
- package/src/storages/library/library.ts +30 -0
- package/src/storages/library/libraryFolder.impl.ts +144 -0
- package/src/storages/library/libraryFolder.ts +23 -0
- package/src/storages/library/libraryId.ts +1 -0
- package/src/storages/library/libraryPage.impl.ts +39 -0
- package/src/storages/library/libraryPage.ts +56 -0
- package/src/storages/organizations/organization.impl.ts +568 -0
- package/src/storages/organizations/organization.ts +179 -0
- package/src/storages/{organizations.impl.ts → organizations/organizations.impl.ts} +161 -12
- package/src/storages/organizations/organizations.ts +93 -0
- package/src/storages/queryFlows/queryFlow.impl.ts +81 -0
- package/src/storages/queryFlows/queryFlow.ts +22 -0
- package/src/storages/queryFlows/queryFlows.impl.ts +154 -0
- package/src/storages/queryFlows/queryFlows.ts +31 -0
- package/src/storages/user/userProfile.impl.ts +157 -0
- package/src/storages/user/userProfile.ts +81 -0
- package/src/storages/{workspace.impl.ts → workspaces/workspace.impl.ts} +72 -12
- package/src/storages/{workspace.ts → workspaces/workspace.ts} +16 -3
- package/src/storages/{workspaces.impl.ts → workspaces/workspaces.impl.ts} +29 -32
- package/src/storages/{workspaces.ts → workspaces/workspaces.ts} +6 -2
- package/src/unitTest.ts +3 -3
- package/src/utils/browserUtils.ts +68 -0
- package/src/utils/request.ts +6 -0
- package/src/utils/utils.ts +8 -0
- package/.browserslistrc +0 -5
- package/.editorconfig +0 -25
- package/.eslintrc.json +0 -44
- package/.github/workflows/docs.yml +0 -32
- package/.github/workflows/format.yml +0 -42
- package/.github/workflows/publish-npm.yml +0 -33
- package/.github/workflows/tests.yml +0 -34
- package/.github/workflows/version.yml +0 -40
- package/.prettierignore +0 -1
- package/.prettierrc +0 -11
- package/.yarnrc +0 -2
- package/babel.config.js +0 -6
- package/docs/.nojekyll +0 -1
- package/docs/classes/BasicCredential.md +0 -80
- package/docs/classes/BearerCredential.md +0 -72
- package/docs/classes/Chat.md +0 -69
- package/docs/classes/Chats.md +0 -90
- package/docs/classes/CredentialBase.md +0 -54
- package/docs/classes/DataIslandApp.md +0 -168
- package/docs/classes/DebugCredential.md +0 -72
- package/docs/classes/DefaultCredential.md +0 -56
- package/docs/classes/DisposableContainer.md +0 -177
- package/docs/classes/EventDispatcher.md +0 -109
- package/docs/classes/File.md +0 -79
- package/docs/classes/Files.md +0 -136
- package/docs/classes/FilesPage.md +0 -76
- package/docs/classes/Group.md +0 -191
- package/docs/classes/Groups.md +0 -130
- package/docs/classes/Lifetime.md +0 -108
- package/docs/classes/Organization.md +0 -89
- package/docs/classes/Organizations.md +0 -195
- package/docs/classes/UserProfile.md +0 -156
- package/docs/classes/Workspace.md +0 -165
- package/docs/classes/Workspaces.md +0 -189
- package/docs/enums/ChatAnswer.md +0 -22
- package/docs/enums/ChatsEvent.md +0 -22
- package/docs/enums/FilesEvent.md +0 -24
- package/docs/enums/GroupEvent.md +0 -29
- package/docs/enums/OrganizationsEvent.md +0 -31
- package/docs/enums/UserEvent.md +0 -15
- package/docs/enums/WorkspaceEvent.md +0 -17
- package/docs/enums/WorkspacesEvent.md +0 -24
- package/docs/interfaces/Disposable.md +0 -25
- package/docs/interfaces/Event.md +0 -58
- package/docs/interfaces/EventSubscriber.md +0 -41
- package/docs/interfaces/Input.md +0 -35
- package/docs/modules.md +0 -205
- package/jest.config.ts +0 -199
- package/jest.setup.ts +0 -2
- package/scripts/docs/index.js +0 -15
- package/src/storages/chat.ts +0 -21
- package/src/storages/chats.ts +0 -17
- package/src/storages/file.impl.ts +0 -69
- package/src/storages/file.ts +0 -28
- package/src/storages/files.impl.ts +0 -213
- package/src/storages/groups.impl.ts +0 -337
- package/src/storages/groups.ts +0 -43
- package/src/storages/organization.impl.ts +0 -68
- package/src/storages/organization.ts +0 -33
- package/src/storages/organizations.ts +0 -56
- package/src/storages/userProfile.impl.ts +0 -56
- package/src/storages/userProfile.ts +0 -42
- package/test/commands.test.ts +0 -24
- package/test/data/test_file.pdf +0 -0
- package/test/disposable.test.ts +0 -39
- package/test/events.test.ts +0 -151
- package/test/files.test.ts +0 -52
- package/test/index.test.ts +0 -122
- package/test/organization.test.ts +0 -57
- package/test/registry.test.ts +0 -44
- package/test/services.test.ts +0 -56
- package/test/setup.ts +0 -54
- package/test/unitTest.test.ts +0 -21
- package/test/workspace.test.ts +0 -71
- package/tsconfig.json +0 -31
@@ -0,0 +1,209 @@
|
|
1
|
+
import { Libraries, LibraryManagement } from "./libraries"
|
2
|
+
import { Library } from "./library"
|
3
|
+
import { LibraryImpl } from "./library.impl"
|
4
|
+
import { Context } from "../../context"
|
5
|
+
import {
|
6
|
+
CreateLibraryResponse,
|
7
|
+
LibrariesResponse, LibraryDto, LibraryResponse
|
8
|
+
} from "../../dto/libraryResponse"
|
9
|
+
import { RpcService } from "../../services/rpcService"
|
10
|
+
import { ResponseUtils } from "../../services/responseUtils"
|
11
|
+
import { OrganizationId } from "../organizations/organizations"
|
12
|
+
import { LibraryId } from "./libraryId"
|
13
|
+
|
14
|
+
export class LibraryManagementImpl extends LibraryManagement {
|
15
|
+
private context: Context
|
16
|
+
|
17
|
+
constructor(context: Context) {
|
18
|
+
super()
|
19
|
+
this.context = context
|
20
|
+
}
|
21
|
+
|
22
|
+
async createLibrary(name: string, region: number, isPublic: boolean): Promise<LibraryId> {
|
23
|
+
if (
|
24
|
+
name === undefined ||
|
25
|
+
name === null ||
|
26
|
+
name.trim() === ""
|
27
|
+
) {
|
28
|
+
throw new Error("Name for library is required, must be not empty")
|
29
|
+
}
|
30
|
+
|
31
|
+
if (
|
32
|
+
isPublic === undefined ||
|
33
|
+
isPublic === null
|
34
|
+
) {
|
35
|
+
throw new Error("IsPublic is required, must be not empty")
|
36
|
+
}
|
37
|
+
|
38
|
+
// send create request to the server
|
39
|
+
const response = await this.context
|
40
|
+
.resolve(RpcService)
|
41
|
+
?.requestBuilder("api/v1/libraries/management")
|
42
|
+
.sendPostJson({
|
43
|
+
name: name,
|
44
|
+
region: region,
|
45
|
+
isPublic: isPublic
|
46
|
+
})
|
47
|
+
|
48
|
+
// check response status
|
49
|
+
if (ResponseUtils.isFail(response)) {
|
50
|
+
await ResponseUtils.throwError(`Failed to create library ${name}`, response)
|
51
|
+
}
|
52
|
+
|
53
|
+
const library = (await response!.json()) as CreateLibraryResponse
|
54
|
+
|
55
|
+
return library.libraryId
|
56
|
+
}
|
57
|
+
|
58
|
+
async addOrgToLibrary(libraryId: LibraryId, organizationId: OrganizationId): Promise<void> {
|
59
|
+
if (libraryId === undefined || libraryId === null) {
|
60
|
+
throw new Error("Organization add to library, libraryId is undefined or null")
|
61
|
+
}
|
62
|
+
if (libraryId.length === 0 || libraryId.trim().length === 0) {
|
63
|
+
throw new Error("Organization add to from library, libraryId is empty")
|
64
|
+
}
|
65
|
+
if (organizationId === undefined || organizationId === null) {
|
66
|
+
throw new Error("Organization add to from library, organizationId is undefined or null")
|
67
|
+
}
|
68
|
+
if (organizationId.length === 0 || organizationId.trim().length === 0) {
|
69
|
+
throw new Error("Organization add to from library, organizationId is empty")
|
70
|
+
}
|
71
|
+
|
72
|
+
const response = await this.context
|
73
|
+
.resolve(RpcService)
|
74
|
+
?.requestBuilder("api/v1/libraries/management/allowed/organization")
|
75
|
+
.sendPutJson({
|
76
|
+
libraryId: libraryId,
|
77
|
+
organizationId: organizationId
|
78
|
+
})
|
79
|
+
if (ResponseUtils.isFail(response)) {
|
80
|
+
await ResponseUtils.throwError(
|
81
|
+
`Organization ${organizationId} add to library ${libraryId} failed`,
|
82
|
+
response
|
83
|
+
)
|
84
|
+
}
|
85
|
+
}
|
86
|
+
|
87
|
+
async getLibraries(): Promise<LibraryDto[]> {
|
88
|
+
const response = await this.context
|
89
|
+
.resolve(RpcService)
|
90
|
+
?.requestBuilder("api/v1/libraries/management/allowed/organizations")
|
91
|
+
.sendGet()
|
92
|
+
|
93
|
+
// check response status
|
94
|
+
if (ResponseUtils.isFail(response)) {
|
95
|
+
await ResponseUtils.throwError(
|
96
|
+
"Can not get libraries",
|
97
|
+
response
|
98
|
+
)
|
99
|
+
}
|
100
|
+
|
101
|
+
// parse libraries from the server's response
|
102
|
+
const libraries = (await response!.json()) as LibraryResponse
|
103
|
+
|
104
|
+
return libraries.libraries
|
105
|
+
}
|
106
|
+
|
107
|
+
async deleteOrgFromLibrary(libraryId: LibraryId, organizationId: OrganizationId): Promise<void> {
|
108
|
+
if (libraryId === undefined || libraryId === null) {
|
109
|
+
throw new Error("Organization delete from library, libraryId is undefined or null")
|
110
|
+
}
|
111
|
+
if (libraryId.length === 0 || libraryId.trim().length === 0) {
|
112
|
+
throw new Error("Organization delete from library, libraryId is empty")
|
113
|
+
}
|
114
|
+
if (organizationId === undefined || organizationId === null) {
|
115
|
+
throw new Error("Organization delete from library, organizationId is undefined or null")
|
116
|
+
}
|
117
|
+
if (organizationId.length === 0 || organizationId.trim().length === 0) {
|
118
|
+
throw new Error("Organization delete from library, organizationId is empty")
|
119
|
+
}
|
120
|
+
|
121
|
+
// send request to the server
|
122
|
+
const response = await this.context
|
123
|
+
.resolve(RpcService)
|
124
|
+
?.requestBuilder("api/v1/libraries/management/allowed/organization")
|
125
|
+
.searchParam("libraryId", libraryId)
|
126
|
+
.searchParam("organizationId", organizationId)
|
127
|
+
.sendDelete()
|
128
|
+
|
129
|
+
// check response status
|
130
|
+
if (ResponseUtils.isFail(response)) {
|
131
|
+
await ResponseUtils.throwError(
|
132
|
+
`Organization ${organizationId} delete from library ${libraryId}, failed`,
|
133
|
+
response
|
134
|
+
)
|
135
|
+
}
|
136
|
+
}
|
137
|
+
|
138
|
+
async deleteLibrary(libraryId: LibraryId): Promise<void> {
|
139
|
+
if (libraryId === undefined || libraryId === null) {
|
140
|
+
throw new Error("Library delete, libraryId is undefined or null")
|
141
|
+
}
|
142
|
+
if (libraryId.length === 0 || libraryId.trim().length === 0) {
|
143
|
+
throw new Error("Library delete, libraryId is empty")
|
144
|
+
}
|
145
|
+
|
146
|
+
// send request to the server
|
147
|
+
const response = await this.context
|
148
|
+
.resolve(RpcService)
|
149
|
+
?.requestBuilder("api/v1/libraries/management")
|
150
|
+
.searchParam("libraryId", libraryId)
|
151
|
+
.sendDelete()
|
152
|
+
|
153
|
+
// check response status
|
154
|
+
if (ResponseUtils.isFail(response)) {
|
155
|
+
await ResponseUtils.throwError(
|
156
|
+
`Library ${libraryId} delete, failed`,
|
157
|
+
response
|
158
|
+
)
|
159
|
+
}
|
160
|
+
}
|
161
|
+
}
|
162
|
+
|
163
|
+
export class LibrariesImpl extends Libraries {
|
164
|
+
private readonly _libraries: LibraryImpl[] = []
|
165
|
+
private readonly _management
|
166
|
+
|
167
|
+
constructor(
|
168
|
+
private readonly context: Context
|
169
|
+
) {
|
170
|
+
super()
|
171
|
+
this._management = new LibraryManagementImpl(context)
|
172
|
+
}
|
173
|
+
|
174
|
+
async initialize() {
|
175
|
+
// fetch limits
|
176
|
+
const response = await this.context.resolve(RpcService)
|
177
|
+
?.requestBuilder("api/v1/libraries")
|
178
|
+
.sendGet()
|
179
|
+
|
180
|
+
// check response status
|
181
|
+
if (ResponseUtils.isFail(response)) {
|
182
|
+
await ResponseUtils.throwError("Failed to get libraries", response)
|
183
|
+
}
|
184
|
+
|
185
|
+
const json = await response!.json()
|
186
|
+
|
187
|
+
// parse limits from the server's response
|
188
|
+
const libraries = (json as LibrariesResponse).libraries
|
189
|
+
|
190
|
+
for (const library of libraries) {
|
191
|
+
const impl = new LibraryImpl(this.context)
|
192
|
+
await impl.initFrom(library)
|
193
|
+
this._libraries.push(impl)
|
194
|
+
}
|
195
|
+
}
|
196
|
+
|
197
|
+
get collection(): readonly Library[] {
|
198
|
+
return this._libraries
|
199
|
+
}
|
200
|
+
|
201
|
+
getLibraryById(libraryId: LibraryId): Library | undefined {
|
202
|
+
return this._libraries.find((library) => library.id === libraryId)
|
203
|
+
}
|
204
|
+
|
205
|
+
get management(): LibraryManagement {
|
206
|
+
return this._management
|
207
|
+
}
|
208
|
+
|
209
|
+
}
|
@@ -0,0 +1,56 @@
|
|
1
|
+
import { Library } from "./library"
|
2
|
+
import { OrganizationId } from "../organizations/organizations"
|
3
|
+
import { LibraryDto } from "../../dto/libraryResponse"
|
4
|
+
import { LibraryId } from "./libraryId"
|
5
|
+
|
6
|
+
/**
|
7
|
+
* Library management, you must have permissions to manage libraries
|
8
|
+
*/
|
9
|
+
export abstract class LibraryManagement {
|
10
|
+
/**
|
11
|
+
* Create a new library
|
12
|
+
*/
|
13
|
+
abstract createLibrary(name: string, region: number, isPublic: boolean): Promise<LibraryId>
|
14
|
+
|
15
|
+
/**
|
16
|
+
* Add permission for an organization to share its data through the library
|
17
|
+
*/
|
18
|
+
abstract addOrgToLibrary(libraryId: LibraryId, organizationId: OrganizationId): Promise<void>
|
19
|
+
|
20
|
+
/**
|
21
|
+
* Get all libraries
|
22
|
+
*/
|
23
|
+
abstract getLibraries(): Promise<LibraryDto[]>
|
24
|
+
|
25
|
+
/**
|
26
|
+
* Delete permission for an organization to share its data through the library
|
27
|
+
*/
|
28
|
+
abstract deleteOrgFromLibrary(libraryId: LibraryId, organizationId: OrganizationId): Promise<void>
|
29
|
+
|
30
|
+
/**
|
31
|
+
* Delete a library by id
|
32
|
+
*/
|
33
|
+
abstract deleteLibrary(libraryId: LibraryId): Promise<void>
|
34
|
+
}
|
35
|
+
|
36
|
+
/**
|
37
|
+
* Libraries
|
38
|
+
*/
|
39
|
+
export abstract class Libraries {
|
40
|
+
|
41
|
+
/**
|
42
|
+
* Collection of libraries
|
43
|
+
*/
|
44
|
+
abstract get collection(): ReadonlyArray<Library>
|
45
|
+
|
46
|
+
/**
|
47
|
+
* Get library by id
|
48
|
+
* @param libraryId
|
49
|
+
*/
|
50
|
+
abstract getLibraryById(libraryId: LibraryId): Library | undefined
|
51
|
+
|
52
|
+
/**
|
53
|
+
* You must have permissions to manage libraries
|
54
|
+
*/
|
55
|
+
abstract get management(): LibraryManagement
|
56
|
+
}
|
@@ -0,0 +1,151 @@
|
|
1
|
+
import { Library } from "./library"
|
2
|
+
import {
|
3
|
+
LibraryFolderDto,
|
4
|
+
LibraryFolderResponse,
|
5
|
+
LibraryPageResponse
|
6
|
+
} from "../../dto/libraryResponse"
|
7
|
+
import { LibraryPage } from "./libraryPage"
|
8
|
+
import { RpcService } from "../../services/rpcService"
|
9
|
+
import { ResponseUtils } from "../../services/responseUtils"
|
10
|
+
import { FileImpl } from "../files/file.impl"
|
11
|
+
import { Context } from "../../context"
|
12
|
+
import { LibraryPageImpl } from "./libraryPage.impl"
|
13
|
+
import { LibraryFolderImpl } from "./libraryFolder.impl"
|
14
|
+
import { LibraryFolder } from "./libraryFolder"
|
15
|
+
import { FolderId } from "./folderId"
|
16
|
+
import { LibraryId } from "./libraryId"
|
17
|
+
|
18
|
+
export class LibraryImpl extends Library {
|
19
|
+
|
20
|
+
private _library?: LibraryFolderDto
|
21
|
+
|
22
|
+
public root?: LibraryPage
|
23
|
+
|
24
|
+
constructor(
|
25
|
+
private readonly context: Context
|
26
|
+
) {
|
27
|
+
super()
|
28
|
+
}
|
29
|
+
|
30
|
+
async initFrom(library: LibraryFolderDto) {
|
31
|
+
this._library = library
|
32
|
+
}
|
33
|
+
|
34
|
+
get id(): LibraryId {
|
35
|
+
if (this._library) {
|
36
|
+
return this._library.id
|
37
|
+
}
|
38
|
+
throw new Error("Library is not loaded.")
|
39
|
+
}
|
40
|
+
|
41
|
+
get name(): string {
|
42
|
+
if (this._library) {
|
43
|
+
return this._library.name
|
44
|
+
}
|
45
|
+
throw new Error("Library is not loaded.")
|
46
|
+
}
|
47
|
+
|
48
|
+
async getFolder(folderId: FolderId): Promise<LibraryFolder> {
|
49
|
+
if (folderId === undefined || folderId === null || folderId.trim() === "") {
|
50
|
+
throw new Error("Query library folder, folderId is undefined or null")
|
51
|
+
}
|
52
|
+
|
53
|
+
// send request to the server
|
54
|
+
const response = await this.context
|
55
|
+
.resolve(RpcService)
|
56
|
+
?.requestBuilder("api/v1/libraries/folder")
|
57
|
+
.searchParam("libraryId", this.id)
|
58
|
+
.searchParam("folderId", folderId)
|
59
|
+
.sendGet()
|
60
|
+
|
61
|
+
// check response status
|
62
|
+
if (ResponseUtils.isFail(response)) {
|
63
|
+
await ResponseUtils.throwError(
|
64
|
+
`Query library folder for ${folderId} failed`,
|
65
|
+
response
|
66
|
+
)
|
67
|
+
}
|
68
|
+
|
69
|
+
// parse files from the server's response
|
70
|
+
const folder = (await response!.json()) as LibraryFolderResponse
|
71
|
+
|
72
|
+
const libFolder = new LibraryFolderImpl(this, this.context)
|
73
|
+
|
74
|
+
await libFolder.initFrom(folder.folder)
|
75
|
+
|
76
|
+
return libFolder
|
77
|
+
}
|
78
|
+
|
79
|
+
async query(query: string, page: number, limit: number, folderId: FolderId | undefined): Promise<LibraryPage> {
|
80
|
+
// check page
|
81
|
+
if (page === undefined || page === null) {
|
82
|
+
throw new Error("Query library root, page is undefined or null")
|
83
|
+
}
|
84
|
+
if (page < 0) {
|
85
|
+
throw new Error("Query library root, page is negative")
|
86
|
+
}
|
87
|
+
|
88
|
+
// check limit
|
89
|
+
if (limit === undefined || limit === null) {
|
90
|
+
throw new Error("Query library root, limit is undefined or null")
|
91
|
+
}
|
92
|
+
if (limit === 0) {
|
93
|
+
throw new Error("Query library root, limit is 0")
|
94
|
+
}
|
95
|
+
|
96
|
+
// send request to the server
|
97
|
+
const response = await this.context
|
98
|
+
.resolve(RpcService)
|
99
|
+
?.requestBuilder("api/v1/libraries/content/list")
|
100
|
+
.searchParam("libraryId", this.id)
|
101
|
+
.searchParam("folderId", folderId ?? "")
|
102
|
+
.searchParam("query", query)
|
103
|
+
.searchParam("page", page.toString())
|
104
|
+
.searchParam("limit", limit.toString())
|
105
|
+
.sendGet()
|
106
|
+
|
107
|
+
// check response status
|
108
|
+
if (ResponseUtils.isFail(response)) {
|
109
|
+
await ResponseUtils.throwError(
|
110
|
+
`Query library root :${query}, page:${page}, limit:${limit}, failed`,
|
111
|
+
response
|
112
|
+
)
|
113
|
+
}
|
114
|
+
|
115
|
+
// parse files from the server's response
|
116
|
+
const pageResponse = (await response!.json()) as LibraryPageResponse
|
117
|
+
|
118
|
+
// create files list
|
119
|
+
const root = new LibraryPageImpl()
|
120
|
+
root.total = pageResponse.totalItemsCount
|
121
|
+
root.filesPerPage = pageResponse.itemsPerPage
|
122
|
+
root.page = page
|
123
|
+
|
124
|
+
// init files from the server's response
|
125
|
+
for (const fl of pageResponse.files) {
|
126
|
+
|
127
|
+
// create file implementation
|
128
|
+
const file = await new FileImpl(this.context).initFrom(fl)
|
129
|
+
|
130
|
+
// add file to the collection
|
131
|
+
root.files.push(file)
|
132
|
+
}
|
133
|
+
|
134
|
+
for (const flr of pageResponse.folders) {
|
135
|
+
|
136
|
+
// create folder implementation
|
137
|
+
const folder = new LibraryFolderImpl(this, this.context)
|
138
|
+
|
139
|
+
await folder.initFrom(flr)
|
140
|
+
|
141
|
+
// add folder to the collection
|
142
|
+
root.folders.push(folder)
|
143
|
+
}
|
144
|
+
|
145
|
+
// set files list
|
146
|
+
this.root = root
|
147
|
+
|
148
|
+
return root
|
149
|
+
}
|
150
|
+
|
151
|
+
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import { LibraryPage } from "./libraryPage"
|
2
|
+
import { LibraryFolder } from "./libraryFolder"
|
3
|
+
import { FolderId } from "./folderId"
|
4
|
+
import { LibraryId } from "./libraryId"
|
5
|
+
|
6
|
+
/**
|
7
|
+
* Library.
|
8
|
+
*/
|
9
|
+
export abstract class Library {
|
10
|
+
|
11
|
+
/**
|
12
|
+
* Library id.
|
13
|
+
*/
|
14
|
+
abstract get id(): LibraryId
|
15
|
+
|
16
|
+
/**
|
17
|
+
* Library name.
|
18
|
+
*/
|
19
|
+
abstract get name(): string
|
20
|
+
|
21
|
+
/**
|
22
|
+
* Get library folder by id.
|
23
|
+
*/
|
24
|
+
abstract getFolder(folderId: FolderId): Promise<LibraryFolder>
|
25
|
+
|
26
|
+
/**
|
27
|
+
* Get library folders by query.
|
28
|
+
*/
|
29
|
+
abstract query(query: string, page: number, limit: number, folderId: FolderId | undefined): Promise<LibraryPage>
|
30
|
+
}
|
@@ -0,0 +1,144 @@
|
|
1
|
+
import { LibraryFolder } from "./libraryFolder"
|
2
|
+
import { LibraryPage } from "./libraryPage"
|
3
|
+
import { Context } from "../../context"
|
4
|
+
import {
|
5
|
+
LibraryFolderDto,
|
6
|
+
LibraryPageResponse
|
7
|
+
} from "../../dto/libraryResponse"
|
8
|
+
import { LibraryImpl } from "./library.impl"
|
9
|
+
import { RpcService } from "../../services/rpcService"
|
10
|
+
import { ResponseUtils } from "../../services/responseUtils"
|
11
|
+
import { LibraryPageImpl, LibraryParentImpl } from "./libraryPage.impl"
|
12
|
+
import { FileImpl } from "../files/file.impl"
|
13
|
+
import { FolderId } from "./folderId"
|
14
|
+
import { LibraryId } from "./libraryId"
|
15
|
+
|
16
|
+
export class LibraryFolderImpl extends LibraryFolder {
|
17
|
+
private _libFolder?: LibraryFolderDto
|
18
|
+
|
19
|
+
constructor(
|
20
|
+
private readonly libraryImpl: LibraryImpl,
|
21
|
+
private readonly context: Context
|
22
|
+
) {
|
23
|
+
super()
|
24
|
+
}
|
25
|
+
|
26
|
+
async initFrom(libFolder: LibraryFolderDto) {
|
27
|
+
this._libFolder = libFolder
|
28
|
+
}
|
29
|
+
|
30
|
+
get iconId(): string {
|
31
|
+
if (this._libFolder) {
|
32
|
+
return this._libFolder.iconId
|
33
|
+
}
|
34
|
+
throw new Error("LibraryFolder is not loaded.")
|
35
|
+
}
|
36
|
+
|
37
|
+
itemsCount(): Promise<number> {
|
38
|
+
return Promise.resolve(0)
|
39
|
+
}
|
40
|
+
|
41
|
+
get libraryId(): LibraryId {
|
42
|
+
return this.libraryImpl.id
|
43
|
+
}
|
44
|
+
|
45
|
+
get name(): string {
|
46
|
+
if (this._libFolder) {
|
47
|
+
return this._libFolder.name
|
48
|
+
}
|
49
|
+
throw new Error("LibraryFolder is not loaded.")
|
50
|
+
}
|
51
|
+
|
52
|
+
get description(): string {
|
53
|
+
if (this._libFolder) {
|
54
|
+
return this._libFolder.description
|
55
|
+
}
|
56
|
+
throw new Error("LibraryFolder is not loaded.")
|
57
|
+
}
|
58
|
+
|
59
|
+
get folderId(): FolderId {
|
60
|
+
if (this._libFolder) {
|
61
|
+
return this._libFolder.id
|
62
|
+
}
|
63
|
+
throw new Error("LibraryFolder is not loaded.")
|
64
|
+
}
|
65
|
+
|
66
|
+
async query(query: string, page: number, limit: number): Promise<LibraryPage> {
|
67
|
+
if (page === undefined || page === null) {
|
68
|
+
throw new Error("Query library folder, page is undefined or null")
|
69
|
+
}
|
70
|
+
if (page < 0) {
|
71
|
+
throw new Error("Query library folder, page is negative")
|
72
|
+
}
|
73
|
+
|
74
|
+
// check limit
|
75
|
+
if (limit === undefined || limit === null) {
|
76
|
+
throw new Error("Query library folder, limit is undefined or null")
|
77
|
+
}
|
78
|
+
if (limit === 0) {
|
79
|
+
throw new Error("Query library folder, limit is 0")
|
80
|
+
}
|
81
|
+
|
82
|
+
// send request to the server
|
83
|
+
const response = await this.context
|
84
|
+
.resolve(RpcService)
|
85
|
+
?.requestBuilder("api/v1/libraries/content/list")
|
86
|
+
.searchParam("libraryId", this.libraryId)
|
87
|
+
.searchParam("folderId", this.folderId)
|
88
|
+
.searchParam("query", query)
|
89
|
+
.searchParam("page", page.toString())
|
90
|
+
.searchParam("limit", limit.toString())
|
91
|
+
.sendGet()
|
92
|
+
|
93
|
+
// check response status
|
94
|
+
if (ResponseUtils.isFail(response)) {
|
95
|
+
await ResponseUtils.throwError(
|
96
|
+
`Query library folder :${query}, page:${page}, limit:${limit}, failed`,
|
97
|
+
response
|
98
|
+
)
|
99
|
+
}
|
100
|
+
|
101
|
+
// parse files from the server's response
|
102
|
+
const libPageResponse = (await response!.json()) as LibraryPageResponse
|
103
|
+
|
104
|
+
// create files list
|
105
|
+
const libraryPage = new LibraryPageImpl()
|
106
|
+
libraryPage.total = libPageResponse.totalItemsCount
|
107
|
+
libraryPage.filesPerPage = libPageResponse.itemsPerPage
|
108
|
+
libraryPage.page = page
|
109
|
+
libraryPage.libraryId = this.libraryId
|
110
|
+
|
111
|
+
const parentsWait = []
|
112
|
+
for (const parentId of libPageResponse.parentIds) {
|
113
|
+
parentsWait.push(this.libraryImpl.getFolder(parentId))
|
114
|
+
}
|
115
|
+
const parents = await Promise.all(parentsWait)
|
116
|
+
for (const parent of parents) {
|
117
|
+
libraryPage.parents.push(new LibraryParentImpl(parent.folderId, parent.name))
|
118
|
+
}
|
119
|
+
|
120
|
+
// init files from the server's response
|
121
|
+
for (const fl of libPageResponse.files) {
|
122
|
+
|
123
|
+
// create file implementation
|
124
|
+
const file = await new FileImpl(this.context).initFrom(fl)
|
125
|
+
|
126
|
+
// add file to the collection
|
127
|
+
libraryPage.files.push(file)
|
128
|
+
}
|
129
|
+
|
130
|
+
for (const flr of libPageResponse.folders) {
|
131
|
+
|
132
|
+
// create folder implementation
|
133
|
+
const folder = new LibraryFolderImpl(this.libraryImpl, this.context)
|
134
|
+
|
135
|
+
await folder.initFrom(flr)
|
136
|
+
|
137
|
+
// add folder to the collection
|
138
|
+
libraryPage.folders.push(folder)
|
139
|
+
}
|
140
|
+
|
141
|
+
return libraryPage
|
142
|
+
}
|
143
|
+
|
144
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import { LibraryPage } from "./libraryPage"
|
2
|
+
import { FolderId } from "./folderId"
|
3
|
+
import { LibraryId } from "./libraryId"
|
4
|
+
|
5
|
+
export abstract class LibraryFolder {
|
6
|
+
|
7
|
+
abstract get libraryId(): LibraryId
|
8
|
+
|
9
|
+
abstract get folderId(): FolderId
|
10
|
+
|
11
|
+
abstract get name(): string
|
12
|
+
|
13
|
+
abstract get description(): string
|
14
|
+
|
15
|
+
abstract get iconId(): string
|
16
|
+
|
17
|
+
abstract itemsCount(): Promise<number>
|
18
|
+
|
19
|
+
/**
|
20
|
+
* Query files.
|
21
|
+
*/
|
22
|
+
abstract query(query: string, page: number, limit: number): Promise<LibraryPage>
|
23
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
export type LibraryId = string
|
@@ -0,0 +1,39 @@
|
|
1
|
+
import { LibraryPage, LibraryParent } from "./libraryPage"
|
2
|
+
import { LibraryFolder } from "./libraryFolder"
|
3
|
+
import { File } from "../files/file"
|
4
|
+
import { FolderId } from "./folderId"
|
5
|
+
|
6
|
+
export class LibraryParentImpl extends LibraryParent {
|
7
|
+
/**
|
8
|
+
* Get parent id.
|
9
|
+
*/
|
10
|
+
public id: FolderId
|
11
|
+
|
12
|
+
/**
|
13
|
+
* Get parent name.
|
14
|
+
*/
|
15
|
+
public name: string
|
16
|
+
|
17
|
+
constructor(id: FolderId, name: string) {
|
18
|
+
super()
|
19
|
+
this.id = id
|
20
|
+
this.name = name
|
21
|
+
}
|
22
|
+
}
|
23
|
+
|
24
|
+
export class LibraryPageImpl extends LibraryPage {
|
25
|
+
|
26
|
+
public libraryId: string = ""
|
27
|
+
public parents: LibraryParent[] = []
|
28
|
+
public files: File[] = []
|
29
|
+
public folders: LibraryFolder[] = []
|
30
|
+
|
31
|
+
public total: number = 0
|
32
|
+
public filesPerPage: number = 0
|
33
|
+
public page: number = 0
|
34
|
+
|
35
|
+
get pages(): number {
|
36
|
+
return Math.ceil(Math.max(this.total / this.filesPerPage, 1.0))
|
37
|
+
}
|
38
|
+
|
39
|
+
}
|