@neuralinnovations/dataisland-sdk 0.0.1-dev7 → 0.0.1-dev71
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/LICENSE +201 -0
- package/README.md +204 -6
- 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 +30 -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 +55 -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 +19 -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 +84 -0
- package/dist/src/dto/chatResponse.d.ts.map +1 -0
- package/dist/src/dto/chatResponse.js +45 -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/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/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 +92 -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 +68 -0
- package/dist/src/dto/workspacesResponse.d.ts.map +1 -0
- package/dist/src/dto/workspacesResponse.js +21 -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 +75 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +124 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/internal/app.impl.d.ts +30 -0
- package/dist/src/internal/app.impl.d.ts.map +1 -0
- package/dist/src/internal/app.impl.js +180 -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/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 +55 -0
- package/dist/src/storages/chats/chat.d.ts.map +1 -0
- package/dist/src/storages/chats/chat.impl.d.ts +28 -0
- package/dist/src/storages/chats/chat.impl.d.ts.map +1 -0
- package/dist/src/storages/chats/chat.impl.js +106 -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 +51 -0
- package/dist/src/storages/chats/chats.d.ts.map +1 -0
- package/dist/src/storages/chats/chats.impl.d.ts +20 -0
- package/dist/src/storages/chats/chats.impl.d.ts.map +1 -0
- package/dist/src/storages/chats/chats.impl.js +184 -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 +28 -0
- package/dist/src/storages/files/file.impl.d.ts.map +1 -0
- package/dist/src/storages/files/file.impl.js +130 -0
- package/dist/src/storages/files/file.impl.js.map +1 -0
- package/dist/src/storages/files/file.js +17 -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 +24 -0
- package/dist/src/storages/files/files.impl.d.ts.map +1 -0
- package/dist/src/storages/files/files.impl.js +168 -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/organizations/organization.d.ts +137 -0
- package/dist/src/storages/organizations/organization.d.ts.map +1 -0
- package/dist/src/storages/organizations/organization.impl.d.ts +55 -0
- package/dist/src/storages/organizations/organization.impl.d.ts.map +1 -0
- package/dist/src/storages/organizations/organization.impl.js +362 -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/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 +44 -0
- package/dist/src/storages/workspaces/workspace.d.ts.map +1 -0
- package/dist/src/storages/workspaces/workspace.impl.d.ts +23 -0
- package/dist/src/storages/workspaces/workspace.impl.d.ts.map +1 -0
- package/dist/src/storages/workspaces/workspace.impl.js +98 -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 +19 -5
- package/src/context.ts +4 -2
- package/src/credentials.ts +46 -0
- package/src/dataIslandApp.ts +8 -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 +23 -0
- package/src/dto/badRequestResponse.ts +6 -0
- package/src/dto/chatResponse.ts +60 -54
- package/src/dto/invitesResponse.ts +25 -0
- package/src/dto/limitsResponse.ts +32 -0
- package/src/dto/quizResponse.ts +12 -0
- package/src/dto/statisticsResponse.ts +12 -0
- package/src/dto/userInfoResponse.ts +64 -2
- package/src/dto/workspacesResponse.ts +38 -3
- package/src/index.ts +59 -16
- package/src/internal/app.impl.ts +54 -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/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 +139 -0
- package/src/storages/chats/chat.ts +70 -0
- package/src/storages/chats/chats.impl.ts +255 -0
- package/src/storages/chats/chats.ts +60 -0
- package/src/storages/files/file.impl.ts +162 -0
- package/src/storages/files/file.ts +74 -0
- package/src/storages/{files.impl.ts → files/files.impl.ts} +89 -67
- 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/organizations/organization.impl.ts +555 -0
- package/src/storages/organizations/organization.ts +168 -0
- package/src/storages/{organizations.impl.ts → organizations/organizations.impl.ts} +161 -12
- package/src/storages/organizations/organizations.ts +93 -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} +27 -7
- package/src/storages/{workspace.ts → workspaces/workspace.ts} +8 -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/publish-npm.yml +0 -41
- 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/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
@@ -1,4 +1,8 @@
|
|
1
1
|
import { WorkspaceDto } from "./workspacesResponse"
|
2
|
+
import { UserId } from "../storages/user/userProfile"
|
3
|
+
import { OrganizationId } from "../storages/organizations/organizations"
|
4
|
+
import { StatisticsData } from "./statisticsResponse"
|
5
|
+
import { LimitActionType, SegmentData } from "./limitsResponse"
|
2
6
|
|
3
7
|
export interface UserInfoResponse {
|
4
8
|
adminInOrganization: string[]
|
@@ -7,8 +11,9 @@ export interface UserInfoResponse {
|
|
7
11
|
}
|
8
12
|
|
9
13
|
export interface UserDto {
|
10
|
-
id:
|
14
|
+
id: UserId
|
11
15
|
isDeleted: boolean
|
16
|
+
isAnonymousMode: boolean
|
12
17
|
created_at: number
|
13
18
|
modified_at: number
|
14
19
|
profile: ProfileDto
|
@@ -18,20 +23,24 @@ export interface UserDto {
|
|
18
23
|
export interface ProfileDto {
|
19
24
|
name: string
|
20
25
|
email: string
|
26
|
+
binanceId: string
|
27
|
+
educationalInstitution: string
|
21
28
|
}
|
22
29
|
|
23
30
|
export interface UserSettings {
|
24
31
|
activeOrganizationId: string
|
25
32
|
activeWorkspaceId: string
|
33
|
+
limitSegmentKey: string
|
26
34
|
}
|
27
35
|
|
28
36
|
export interface OrganizationProfileDto {
|
29
37
|
name: string
|
30
38
|
description: string
|
39
|
+
iconId: string
|
31
40
|
}
|
32
41
|
|
33
42
|
export interface OrganizationDto {
|
34
|
-
id:
|
43
|
+
id: OrganizationId
|
35
44
|
createdAt: number
|
36
45
|
modifiedAt: number
|
37
46
|
membersCount: number
|
@@ -45,3 +54,56 @@ export interface OrganizationWorkspaces extends OrganizationDto {
|
|
45
54
|
export interface MembersResponse {
|
46
55
|
members: UserDto
|
47
56
|
}
|
57
|
+
|
58
|
+
export interface ApplyInviteCodeResponse {
|
59
|
+
organizationId: string
|
60
|
+
}
|
61
|
+
|
62
|
+
export interface UsersStatisticsResponse {
|
63
|
+
dateFrom: number
|
64
|
+
dateTo: number
|
65
|
+
membersData: UserStatisticsData[]
|
66
|
+
}
|
67
|
+
|
68
|
+
export interface UserStatisticsData {
|
69
|
+
userId: UserId
|
70
|
+
data: StatisticsData[]
|
71
|
+
}
|
72
|
+
|
73
|
+
export interface OrganizationSegmentData {
|
74
|
+
segment: SegmentData
|
75
|
+
}
|
76
|
+
|
77
|
+
export interface UserLimitsData {
|
78
|
+
userSegment: SegmentData
|
79
|
+
userLimits: UserLimitData[]
|
80
|
+
}
|
81
|
+
|
82
|
+
export interface UserLimitData {
|
83
|
+
action: LimitActionType
|
84
|
+
records: UserLimitRecordData[]
|
85
|
+
}
|
86
|
+
|
87
|
+
export interface UserLimitRecordData {
|
88
|
+
daysCount: number
|
89
|
+
countLimit: number
|
90
|
+
tokenLimit?: number
|
91
|
+
activeTill: number
|
92
|
+
}
|
93
|
+
|
94
|
+
export interface CurrentLimitsData {
|
95
|
+
segment: string
|
96
|
+
limits: CurrentLimitItem[]
|
97
|
+
}
|
98
|
+
|
99
|
+
export interface CurrentLimitItem {
|
100
|
+
action: LimitActionType
|
101
|
+
records: CurrentLimitRecordData[]
|
102
|
+
}
|
103
|
+
|
104
|
+
export interface CurrentLimitRecordData {
|
105
|
+
daysCount: number
|
106
|
+
used: number
|
107
|
+
all: number
|
108
|
+
activeTill: number
|
109
|
+
}
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { WorkspaceId } from "../storages/workspaces"
|
2
|
-
import { FileId } from "../storages/file"
|
1
|
+
import { WorkspaceId } from "../storages/workspaces/workspaces"
|
2
|
+
import { FileId } from "../storages/files/file"
|
3
3
|
|
4
4
|
export interface WorkspaceProfileDto {
|
5
5
|
name: string
|
@@ -18,7 +18,8 @@ export interface WorkspacesResponse {
|
|
18
18
|
}
|
19
19
|
|
20
20
|
export interface FileUrlDto {
|
21
|
-
url: string
|
21
|
+
url: string,
|
22
|
+
previewUrl: string
|
22
23
|
}
|
23
24
|
|
24
25
|
export interface FileProgressDto {
|
@@ -35,15 +36,49 @@ export interface FileDto {
|
|
35
36
|
modifiedAt: number
|
36
37
|
name: string
|
37
38
|
description: string
|
39
|
+
fileMetadata: string
|
38
40
|
url: string
|
41
|
+
previewUrl: string
|
39
42
|
hash: string
|
40
43
|
organizationId: string
|
41
44
|
workspaceId: string
|
42
45
|
isProcessedSuccessfully: boolean
|
43
46
|
}
|
44
47
|
|
48
|
+
export class MetadataDto {
|
49
|
+
public key: string
|
50
|
+
public value: string
|
51
|
+
|
52
|
+
constructor(key: string, value: string){
|
53
|
+
this.key = key
|
54
|
+
this.value = value
|
55
|
+
}
|
56
|
+
}
|
57
|
+
|
58
|
+
|
45
59
|
export interface FileListResponse {
|
46
60
|
files: FileDto[]
|
47
61
|
totalFilesCount: number
|
48
62
|
filesPerPage: number
|
49
63
|
}
|
64
|
+
|
65
|
+
export interface IconResponse {
|
66
|
+
iconId: string
|
67
|
+
}
|
68
|
+
|
69
|
+
export interface IconDto {
|
70
|
+
iconId: string,
|
71
|
+
iconUrl: string,
|
72
|
+
iconName: string
|
73
|
+
}
|
74
|
+
|
75
|
+
export enum ResourceType {
|
76
|
+
None = 0,
|
77
|
+
Organization = 1,
|
78
|
+
Workspace = 2,
|
79
|
+
Chat = 3,
|
80
|
+
Group = 4,
|
81
|
+
User = 5,
|
82
|
+
File = 6
|
83
|
+
}
|
84
|
+
|
package/src/index.ts
CHANGED
@@ -3,23 +3,69 @@ import { _createApp } from "./internal/createApp.impl"
|
|
3
3
|
import { type AppBuilder } from "./appBuilder"
|
4
4
|
import { type DataIslandApp } from "./dataIslandApp"
|
5
5
|
|
6
|
-
export * from "./
|
7
|
-
export * from "./
|
6
|
+
export * from "./appBuilder"
|
7
|
+
export * from "./context"
|
8
8
|
export * from "./credentials"
|
9
9
|
export * from "./dataIslandApp"
|
10
|
-
export * from "./
|
11
|
-
export * from "./
|
12
|
-
export * from "./
|
13
|
-
export * from "./
|
14
|
-
export * from "./
|
15
|
-
export * from "./
|
16
|
-
export * from "./
|
17
|
-
export * from "./
|
18
|
-
export * from "./
|
19
|
-
export * from "./
|
20
|
-
export * from "./
|
10
|
+
export * from "./disposable"
|
11
|
+
export * from "./dto/accessGroupResponse"
|
12
|
+
export * from "./dto/quizResponse"
|
13
|
+
export * from "./dto/acquiringResponse"
|
14
|
+
export * from "./dto/badRequestResponse"
|
15
|
+
export * from "./dto/chatResponse"
|
16
|
+
export * from "./dto/limitsResponse"
|
17
|
+
export * from "./dto/statisticsResponse"
|
18
|
+
export * from "./dto/userInfoResponse"
|
19
|
+
export * from "./dto/workspacesResponse"
|
20
|
+
export * from "./dto/invitesResponse"
|
21
|
+
export * from "./dto/apiKeyResponse"
|
22
|
+
export * from "./events"
|
23
|
+
export * from "./middleware"
|
24
|
+
export * from "./storages/chats/answer"
|
25
|
+
export * from "./storages/chats/chat"
|
26
|
+
export * from "./storages/chats/chats"
|
27
|
+
export * from "./storages/files/file"
|
28
|
+
export * from "./storages/files/files"
|
29
|
+
export * from "./storages/files/filesPage"
|
30
|
+
export * from "./storages/groups/groups"
|
31
|
+
export * from "./storages/organizations/organization"
|
32
|
+
export * from "./storages/organizations/organizations"
|
33
|
+
export * from "./storages/user/userProfile"
|
34
|
+
export * from "./storages/workspaces/workspace"
|
35
|
+
export * from "./storages/workspaces/workspaces"
|
36
|
+
|
37
|
+
export {
|
38
|
+
OrganizationId, Organizations, OrganizationsEvent
|
39
|
+
} from "./storages/organizations/organizations"
|
40
|
+
export {
|
41
|
+
WorkspaceId, Workspaces, WorkspacesEvent
|
42
|
+
} from "./storages/workspaces/workspaces"
|
43
|
+
export { FileId, File, FileStatus } from "./storages/files/file"
|
44
|
+
export { UploadFile, Files, FilesEvent } from "./storages/files/files"
|
45
|
+
export { Group, GroupEvent, GroupId } from "./storages/groups/group"
|
46
|
+
export { AnswerId, Answer, StepId, AnswerEvent } from "./storages/chats/answer"
|
47
|
+
export { isNullOrUndefined, isEmptyNullOrUndefined } from "./utils/utils"
|
48
|
+
export {
|
49
|
+
AcquiringPlan,
|
50
|
+
AcquiringSegmentData,
|
51
|
+
OrderData,
|
52
|
+
OrderResponse,
|
53
|
+
GetOrderStateResponse,
|
54
|
+
OrderState,
|
55
|
+
UserAcquiringPlan,
|
56
|
+
UnsubscribeResponse
|
57
|
+
} from "./dto/acquiringResponse"
|
58
|
+
export {
|
59
|
+
LimitActionType,
|
60
|
+
SegmentActionData,
|
61
|
+
SegmentData,
|
62
|
+
SegmentItemData,
|
63
|
+
SegmentsData
|
64
|
+
} from "./dto/limitsResponse"
|
21
65
|
|
66
|
+
// map of apps that are not ready to be used
|
22
67
|
const _appsNotReady = new Map<string, Promise<DataIslandApp>>()
|
68
|
+
// map of apps that are ready to be used
|
23
69
|
const _appsReady = new Map<string, DataIslandApp>()
|
24
70
|
|
25
71
|
/**
|
@@ -87,6 +133,3 @@ export async function dataIslandApp(
|
|
87
133
|
}
|
88
134
|
return await appPromise
|
89
135
|
}
|
90
|
-
|
91
|
-
export { File } from "./storages/file"
|
92
|
-
export { FilesPage } from "./storages/filesPage"
|
package/src/internal/app.impl.ts
CHANGED
@@ -7,7 +7,11 @@ import { DisposableContainer, type Lifetime } from "../disposable"
|
|
7
7
|
import { type Service, ServiceContext } from "../services/service"
|
8
8
|
import { CredentialService } from "../services/credentialService"
|
9
9
|
import { MiddlewareService } from "../services/middlewareService"
|
10
|
-
import {
|
10
|
+
import {
|
11
|
+
DefaultCredential,
|
12
|
+
type CredentialBase,
|
13
|
+
AnonymousCredential
|
14
|
+
} from "../credentials"
|
11
15
|
import { DataIslandApp } from "../dataIslandApp"
|
12
16
|
import { RpcService } from "../services/rpcService"
|
13
17
|
import { CommandService } from "../services/commandService"
|
@@ -17,9 +21,17 @@ import {
|
|
17
21
|
} from "../commands/startCommandHandler"
|
18
22
|
import { UserProfileService } from "../services/userProfileService"
|
19
23
|
import { OrganizationService } from "../services/organizationService"
|
20
|
-
import { Organizations } from "../storages/organizations"
|
21
|
-
import { UserProfile } from "../storages/userProfile"
|
24
|
+
import { Organizations } from "../storages/organizations/organizations"
|
25
|
+
import { UserProfile } from "../storages/user/userProfile"
|
22
26
|
import { isUnitTest, UnitTest } from "../unitTest"
|
27
|
+
import {
|
28
|
+
DeleteUserFullCommand,
|
29
|
+
DeleteUserFullCommandHandler
|
30
|
+
} from "../commands/deleteUserFullCommandHandler"
|
31
|
+
import { CookieService } from "../services/cookieService"
|
32
|
+
import { AnonymousService } from "../services/anonymousService"
|
33
|
+
import { Acquiring } from "../storages/acquirings/acquiring"
|
34
|
+
import { AcquiringService } from "../services/acquiringService"
|
23
35
|
|
24
36
|
export class DataIslandAppImpl extends DataIslandApp {
|
25
37
|
readonly name: string
|
@@ -34,7 +46,7 @@ export class DataIslandAppImpl extends DataIslandApp {
|
|
34
46
|
this.name = name
|
35
47
|
this._registry = new Registry()
|
36
48
|
this._disposable = new DisposableContainer()
|
37
|
-
this._context = new Context(this._registry, this._disposable.lifetime,
|
49
|
+
this._context = new Context(this._registry, this._disposable.lifetime, this)
|
38
50
|
|
39
51
|
this._registry.map(Context).asValue(this._context)
|
40
52
|
}
|
@@ -73,6 +85,10 @@ export class DataIslandAppImpl extends DataIslandApp {
|
|
73
85
|
return this.resolve(UserProfileService)?.userProfile as UserProfile
|
74
86
|
}
|
75
87
|
|
88
|
+
get acquiring(): Acquiring {
|
89
|
+
return (this.resolve(AcquiringService) as AcquiringService).acquiring
|
90
|
+
}
|
91
|
+
|
76
92
|
async initialize(
|
77
93
|
setup: ((builder: AppBuilder) => Promise<void>) | undefined
|
78
94
|
): Promise<void> {
|
@@ -83,8 +99,14 @@ export class DataIslandAppImpl extends DataIslandApp {
|
|
83
99
|
builder.registerCommand(StartCommand, (context: Context) => {
|
84
100
|
return new StartCommandHandler(context)
|
85
101
|
})
|
102
|
+
builder.registerCommand(DeleteUserFullCommand, (context: Context) => {
|
103
|
+
return new DeleteUserFullCommandHandler(context)
|
104
|
+
})
|
86
105
|
|
87
106
|
// register services
|
107
|
+
builder.registerService(CookieService, (context: ServiceContext) => {
|
108
|
+
return new CookieService(context)
|
109
|
+
})
|
88
110
|
builder.registerService(CredentialService, (context: ServiceContext) => {
|
89
111
|
return new CredentialService(context)
|
90
112
|
})
|
@@ -103,6 +125,12 @@ export class DataIslandAppImpl extends DataIslandApp {
|
|
103
125
|
builder.registerService(OrganizationService, (context: ServiceContext) => {
|
104
126
|
return new OrganizationService(context)
|
105
127
|
})
|
128
|
+
builder.registerService(AnonymousService, (context: ServiceContext) => {
|
129
|
+
return new AnonymousService(context)
|
130
|
+
})
|
131
|
+
builder.registerService(AcquiringService, (context: ServiceContext) => {
|
132
|
+
return new AcquiringService(context)
|
133
|
+
})
|
106
134
|
|
107
135
|
// call customer setup
|
108
136
|
if (setup !== undefined) {
|
@@ -123,10 +151,10 @@ export class DataIslandAppImpl extends DataIslandApp {
|
|
123
151
|
this._context,
|
124
152
|
this._disposable.defineNested()
|
125
153
|
)
|
154
|
+
const serviceInstance = serviceFactory[1](serviceContext)
|
126
155
|
serviceContext.lifetime.addCallback(() => {
|
127
|
-
serviceContext.onUnregister()
|
156
|
+
serviceContext.onUnregister.call(serviceInstance)
|
128
157
|
}, serviceContext)
|
129
|
-
const serviceInstance = serviceFactory[1](serviceContext)
|
130
158
|
services.push([serviceContext, serviceInstance])
|
131
159
|
this._registry.map(serviceFactory[0]).asValue(serviceInstance)
|
132
160
|
})
|
@@ -139,16 +167,14 @@ export class DataIslandAppImpl extends DataIslandApp {
|
|
139
167
|
this.resolve(CommandService)?.register(command[0], command[1])
|
140
168
|
})
|
141
169
|
|
142
|
-
this.credential = builder.credential
|
143
|
-
|
144
170
|
//-------------------------------------------------------------------------
|
145
171
|
// register services
|
146
172
|
//-------------------------------------------------------------------------
|
147
173
|
const waitList: Array<Promise<void>> = []
|
148
174
|
// call onRegister service's callback
|
149
|
-
services.forEach(([serviceContext]) => {
|
175
|
+
services.forEach(([serviceContext, service]) => {
|
150
176
|
if (typeof serviceContext.onRegister === "function") {
|
151
|
-
waitList.push(serviceContext.onRegister())
|
177
|
+
waitList.push(serviceContext.onRegister.call(service))
|
152
178
|
}
|
153
179
|
})
|
154
180
|
|
@@ -161,9 +187,9 @@ export class DataIslandAppImpl extends DataIslandApp {
|
|
161
187
|
//-------------------------------------------------------------------------
|
162
188
|
waitList.length = 0
|
163
189
|
// call onStart service's callback
|
164
|
-
services.forEach(([serviceContext]) => {
|
190
|
+
services.forEach(([serviceContext, service]) => {
|
165
191
|
if (typeof serviceContext.onStart === "function") {
|
166
|
-
waitList.push(serviceContext.onStart())
|
192
|
+
waitList.push(serviceContext.onStart.call(service))
|
167
193
|
}
|
168
194
|
})
|
169
195
|
|
@@ -171,6 +197,22 @@ export class DataIslandAppImpl extends DataIslandApp {
|
|
171
197
|
await Promise.all(waitList)
|
172
198
|
//-------------------------------------------------------------------------
|
173
199
|
|
200
|
+
// set credential
|
201
|
+
this.credential = builder.credential
|
202
|
+
|
203
|
+
// Check anonymous authorization
|
204
|
+
if (!isUnitTest(UnitTest.DO_NOT_START) && builder.credential instanceof DefaultCredential) {
|
205
|
+
const anonymous = this.resolve(AnonymousService)!
|
206
|
+
const {
|
207
|
+
token,
|
208
|
+
isValid
|
209
|
+
} = await anonymous.getToken()
|
210
|
+
|
211
|
+
if (isValid) {
|
212
|
+
this.credential = new AnonymousCredential(token)
|
213
|
+
}
|
214
|
+
}
|
215
|
+
|
174
216
|
// start app, execute start command
|
175
217
|
if (!isUnitTest(UnitTest.DO_NOT_START)) {
|
176
218
|
await this.context.execute(new StartCommand())
|
package/src/internal/registry.ts
CHANGED
@@ -1,9 +1,21 @@
|
|
1
|
+
/**
|
2
|
+
* Constructor type.
|
3
|
+
*/
|
1
4
|
export type Constructor<T> = new (...args: any[]) => T
|
2
5
|
|
6
|
+
/**
|
7
|
+
* Provider interface.
|
8
|
+
*/
|
3
9
|
abstract class Provider {
|
10
|
+
/**
|
11
|
+
* Provide method.
|
12
|
+
*/
|
4
13
|
abstract provide(): any | undefined
|
5
14
|
}
|
6
15
|
|
16
|
+
/**
|
17
|
+
* MethodProvider class.
|
18
|
+
*/
|
7
19
|
class MethodProvider<T> extends Provider {
|
8
20
|
private instance?: T
|
9
21
|
private provided: boolean = false
|
@@ -25,6 +37,9 @@ class MethodProvider<T> extends Provider {
|
|
25
37
|
}
|
26
38
|
}
|
27
39
|
|
40
|
+
/**
|
41
|
+
* ValueProvider class.
|
42
|
+
*/
|
28
43
|
class ValueProvider<T> extends Provider {
|
29
44
|
constructor(private readonly value: T | undefined) {
|
30
45
|
super()
|
@@ -35,44 +50,77 @@ class ValueProvider<T> extends Provider {
|
|
35
50
|
}
|
36
51
|
}
|
37
52
|
|
53
|
+
/**
|
54
|
+
* RegistryItem class.
|
55
|
+
*/
|
38
56
|
export class RegistryItem<T> {
|
39
57
|
constructor(
|
40
58
|
private readonly registry: Map<Constructor<any>, Provider>,
|
41
59
|
private readonly type: Constructor<T>
|
42
|
-
) {
|
60
|
+
) {
|
61
|
+
}
|
43
62
|
|
63
|
+
/**
|
64
|
+
* As value method.
|
65
|
+
* @param value
|
66
|
+
*/
|
44
67
|
asValue(value: T): void {
|
45
68
|
this.registry.set(this.type, new ValueProvider<T>(value))
|
46
69
|
}
|
47
70
|
|
71
|
+
/**
|
72
|
+
* As provider method.
|
73
|
+
* @param provider
|
74
|
+
* @param oneTime
|
75
|
+
*/
|
48
76
|
asProvider<T>(provider: () => T, oneTime: boolean = false): void {
|
49
77
|
this.registry.set(this.type, new MethodProvider<T>(provider, oneTime))
|
50
78
|
}
|
51
79
|
|
80
|
+
/**
|
81
|
+
* As factory method.
|
82
|
+
* @param provider
|
83
|
+
*/
|
52
84
|
asFactory<T>(provider: () => T): void {
|
53
85
|
this.registry.set(this.type, new MethodProvider<T>(provider, false))
|
54
86
|
}
|
55
87
|
|
88
|
+
/**
|
89
|
+
* As singleton method.
|
90
|
+
* @param provider
|
91
|
+
*/
|
56
92
|
asSingleton<T>(provider: () => T): void {
|
57
93
|
this.registry.set(this.type, new MethodProvider<T>(provider, true))
|
58
94
|
}
|
59
95
|
}
|
60
96
|
|
97
|
+
/**
|
98
|
+
* Registry class.
|
99
|
+
*/
|
61
100
|
export class Registry {
|
62
|
-
private readonly services: Map<Constructor<any>, Provider>
|
63
|
-
|
64
|
-
constructor() {
|
65
|
-
this.services = new Map()
|
66
|
-
}
|
101
|
+
private readonly services: Map<Constructor<any>, Provider> = new Map()
|
67
102
|
|
103
|
+
/**
|
104
|
+
* Map method.
|
105
|
+
* @param type
|
106
|
+
*/
|
68
107
|
map<T>(type: Constructor<T>): RegistryItem<T> {
|
69
108
|
return new RegistryItem<T>(this.services, type)
|
70
109
|
}
|
71
110
|
|
111
|
+
/**
|
112
|
+
* Set method.
|
113
|
+
* @param type
|
114
|
+
* @param provider
|
115
|
+
*/
|
72
116
|
set<T>(type: Constructor<T>, provider: Provider): void {
|
73
117
|
this.services.set(type, provider)
|
74
118
|
}
|
75
119
|
|
120
|
+
/**
|
121
|
+
* Get method.
|
122
|
+
* @param type
|
123
|
+
*/
|
76
124
|
get<T>(type: Constructor<T>): T | undefined {
|
77
125
|
const provider = this.services.get(type)
|
78
126
|
if (provider === undefined) {
|
package/src/middleware.ts
CHANGED
@@ -0,0 +1,21 @@
|
|
1
|
+
import { Service, ServiceContext } from "./service"
|
2
|
+
import { AcquiringImpl } from "../storages/acquirings/acquiring.impl"
|
3
|
+
import { Acquiring } from "../storages/acquirings/acquiring"
|
4
|
+
|
5
|
+
export class AcquiringService extends Service {
|
6
|
+
private readonly _acquiring: AcquiringImpl
|
7
|
+
|
8
|
+
constructor(serviceContext: ServiceContext) {
|
9
|
+
super(serviceContext)
|
10
|
+
|
11
|
+
this._acquiring = new AcquiringImpl(serviceContext.context)
|
12
|
+
}
|
13
|
+
|
14
|
+
initialize(): Promise<void> {
|
15
|
+
return this._acquiring.initialize()
|
16
|
+
}
|
17
|
+
|
18
|
+
get acquiring(): Acquiring {
|
19
|
+
return this._acquiring
|
20
|
+
}
|
21
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
import { Service } from "./service"
|
2
|
+
import { CookieService } from "./cookieService"
|
3
|
+
import { createFingerprint } from "../utils/browserUtils"
|
4
|
+
import { RpcService } from "./rpcService"
|
5
|
+
import { ResponseUtils } from "./responseUtils"
|
6
|
+
|
7
|
+
export class AnonymousService extends Service {
|
8
|
+
|
9
|
+
async getToken(): Promise<{ token: string, isValid: boolean }> {
|
10
|
+
const cookie = this.resolve(CookieService)!
|
11
|
+
let token = cookie.anonymousToken
|
12
|
+
if (token === undefined || token === null || token.length === 0) {
|
13
|
+
const fingerprint = createFingerprint()
|
14
|
+
const response = await this.context
|
15
|
+
.resolve(RpcService)
|
16
|
+
?.requestBuilder("api/v1/Users/anonymous")
|
17
|
+
.sendPutJson({
|
18
|
+
info: {
|
19
|
+
fingerprint: JSON.stringify({
|
20
|
+
userAgent: fingerprint.get("userAgent"),
|
21
|
+
language: fingerprint.get("language"),
|
22
|
+
hardwareConcurrency: fingerprint.get("hardware_concurrency"),
|
23
|
+
cookieEnabled: fingerprint.get("cookie_enabled"),
|
24
|
+
pixelRatio: fingerprint.get("pixel_ratio")
|
25
|
+
})
|
26
|
+
}
|
27
|
+
})
|
28
|
+
|
29
|
+
if (ResponseUtils.isFail(response)) {
|
30
|
+
await ResponseUtils.throwError("Failed to create anonymous token", response)
|
31
|
+
}
|
32
|
+
|
33
|
+
token = (await response!.json() as { token: string }).token
|
34
|
+
|
35
|
+
cookie.anonymousToken = token!
|
36
|
+
}
|
37
|
+
|
38
|
+
return {
|
39
|
+
token: token!,
|
40
|
+
isValid: token !== undefined && token !== null && token.length > 0
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
@@ -3,7 +3,8 @@ import { Context } from "../context"
|
|
3
3
|
import { Constructor } from "../internal/registry"
|
4
4
|
|
5
5
|
export abstract class CommandHandler<T> {
|
6
|
-
constructor(protected readonly context: Context) {
|
6
|
+
constructor(protected readonly context: Context) {
|
7
|
+
}
|
7
8
|
|
8
9
|
resolve<T>(type: Constructor<T>): T | undefined {
|
9
10
|
return this.context.resolve<T>(type)
|
@@ -12,7 +13,8 @@ export abstract class CommandHandler<T> {
|
|
12
13
|
abstract execute(message: T): Promise<void>
|
13
14
|
}
|
14
15
|
|
15
|
-
export abstract class Command {
|
16
|
+
export abstract class Command {
|
17
|
+
}
|
16
18
|
|
17
19
|
export class CommandService extends Service {
|
18
20
|
private readonly _registry: Map<
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { Service } from "./service"
|
2
|
+
import { getCookie, setCookie } from "../utils/browserUtils"
|
3
|
+
|
4
|
+
export class CookieService extends Service {
|
5
|
+
get anonymousToken(): string | undefined {
|
6
|
+
return getCookie("anonymous-token")
|
7
|
+
}
|
8
|
+
|
9
|
+
get anonymousTokenIsValid(): boolean {
|
10
|
+
return this.anonymousToken !== undefined && this.anonymousToken !== null && this.anonymousToken.length > 0
|
11
|
+
}
|
12
|
+
|
13
|
+
set anonymousToken(value: string | undefined) {
|
14
|
+
setCookie("anonymous-token", value)
|
15
|
+
}
|
16
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
export type HttpMethod = "POST" | "GET" | "PUT" | "DELETE" | "PATCH"
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { Service } from "./service"
|
2
2
|
import { type Middleware } from "../middleware"
|
3
3
|
import { type Disposable } from "../disposable"
|
4
|
+
import { Request, Response } from "../utils/request"
|
4
5
|
|
5
6
|
export class MiddlewareService extends Service {
|
6
7
|
private _middlewares: Middleware[] = []
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { Service } from "./service"
|
2
|
-
import { Organizations } from "../storages/organizations"
|
2
|
+
import { Organizations } from "../storages/organizations/organizations"
|
3
3
|
import { OrganizationDto, UserSettings } from "../dto/userInfoResponse"
|
4
|
-
import { OrganizationsImpl } from "../storages/organizations.impl"
|
4
|
+
import { OrganizationsImpl } from "../storages/organizations/organizations.impl"
|
5
5
|
|
6
6
|
export class OrganizationService extends Service {
|
7
7
|
private _impl?: OrganizationsImpl
|