@zohoim/client-sdk 1.0.0-replyAreaPoc3 → 1.0.0-replyAreaPoc4
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/package.json +1 -1
- package/es/application/services/agents/AgentService.js +0 -21
- package/es/application/services/agents/index.js +0 -2
- package/es/application/services/bots/BotService.js +0 -26
- package/es/application/services/bots/index.js +0 -2
- package/es/application/services/cannedMessages/CannedMessageService.js +0 -51
- package/es/application/services/cannedMessages/index.js +0 -2
- package/es/application/services/channels/ChannelAgentService.js +0 -21
- package/es/application/services/channels/ChannelService.js +0 -21
- package/es/application/services/channels/index.js +0 -3
- package/es/application/services/contacts/ContactService.js +0 -21
- package/es/application/services/contacts/index.js +0 -2
- package/es/application/services/index.js +0 -8
- package/es/application/services/messages/MessageService.js +0 -61
- package/es/application/services/messages/index.js +0 -2
- package/es/application/services/sessions/SessionService.js +0 -56
- package/es/application/services/sessions/index.js +0 -2
- package/es/application/services/templateMessages/TemplateMessageService.js +0 -26
- package/es/application/services/templateMessages/index.js +0 -2
- package/es/core/constants/ModuleNames.js +0 -12
- package/es/core/constants/ResponseTypes.js +0 -6
- package/es/core/constants/index.js +0 -6
- package/es/core/errors/AdapterError.js +0 -7
- package/es/core/errors/ValidationError.js +0 -7
- package/es/core/errors/index.js +0 -3
- package/es/core/utils/ResponseUtils.js +0 -24
- package/es/core/utils/index.js +0 -3
- package/es/core/utils/validateSchema.js +0 -74
- package/es/domain/dto/RequestBuilder.js +0 -44
- package/es/domain/dto/agents/getAgentsRequest.js +0 -12
- package/es/domain/dto/agents/index.js +0 -1
- package/es/domain/dto/bots/getBotRequest.js +0 -9
- package/es/domain/dto/bots/getBotsRequest.js +0 -15
- package/es/domain/dto/bots/index.js +0 -2
- package/es/domain/dto/cannedMessages/createCannedMessageRequest.js +0 -18
- package/es/domain/dto/cannedMessages/deleteCannedMessageRequest.js +0 -13
- package/es/domain/dto/cannedMessages/disableCannedMessageRequest.js +0 -13
- package/es/domain/dto/cannedMessages/enableCannedMessageRequest.js +0 -13
- package/es/domain/dto/cannedMessages/getCannedMessageRequest.js +0 -13
- package/es/domain/dto/cannedMessages/getCannedMessagesRequest.js +0 -18
- package/es/domain/dto/cannedMessages/index.js +0 -7
- package/es/domain/dto/cannedMessages/updateCannedMessageRequest.js +0 -20
- package/es/domain/dto/channels/agents/getChannelAgentsRequest.js +0 -13
- package/es/domain/dto/channels/agents/index.js +0 -1
- package/es/domain/dto/channels/getChannelsRequest.js +0 -23
- package/es/domain/dto/channels/index.js +0 -3
- package/es/domain/dto/contacts/getContactsRequest.js +0 -11
- package/es/domain/dto/contacts/index.js +0 -1
- package/es/domain/dto/index.js +0 -8
- package/es/domain/dto/messages/deleteMessageRequest.js +0 -14
- package/es/domain/dto/messages/getFullContentRequest.js +0 -14
- package/es/domain/dto/messages/getMessageRequest.js +0 -14
- package/es/domain/dto/messages/getMessagesRequest.js +0 -20
- package/es/domain/dto/messages/index.js +0 -9
- package/es/domain/dto/messages/initiateSessionRequest.js +0 -22
- package/es/domain/dto/messages/resendMessageRequest.js +0 -14
- package/es/domain/dto/messages/searchMessagesRequest.js +0 -22
- package/es/domain/dto/messages/sendAttachmentRequest.js +0 -19
- package/es/domain/dto/messages/sendMessageRequest.js +0 -19
- package/es/domain/dto/sessions/getSessionAttachmentsRequest.js +0 -13
- package/es/domain/dto/sessions/getSessionLastMessagesRequest.js +0 -13
- package/es/domain/dto/sessions/getSessionRequest.js +0 -13
- package/es/domain/dto/sessions/getSessionsRequest.js +0 -26
- package/es/domain/dto/sessions/index.js +0 -8
- package/es/domain/dto/sessions/markSessionAsReadRequest.js +0 -17
- package/es/domain/dto/sessions/pickupSessionRequest.js +0 -9
- package/es/domain/dto/sessions/updateSessionAssigneeRequest.js +0 -12
- package/es/domain/dto/sessions/updateSessionStatusRequest.js +0 -18
- package/es/domain/dto/templateMessages/getTemplateCreditExhaustStatusRequest.js +0 -16
- package/es/domain/dto/templateMessages/getTemplateLanguagesRequest.js +0 -7
- package/es/domain/dto/templateMessages/index.js +0 -2
- package/es/domain/entities/Actor/Actor.js +0 -37
- package/es/domain/entities/Actor/index.js +0 -2
- package/es/domain/entities/Agent/Agent.js +0 -26
- package/es/domain/entities/Agent/index.js +0 -2
- package/es/domain/entities/Attachment/Attachment.js +0 -23
- package/es/domain/entities/Attachment/index.js +0 -2
- package/es/domain/entities/Bot/Bot.js +0 -23
- package/es/domain/entities/Bot/index.js +0 -2
- package/es/domain/entities/CannedMessage/CannedMessage.js +0 -46
- package/es/domain/entities/CannedMessage/index.js +0 -2
- package/es/domain/entities/Channel/Channel.js +0 -38
- package/es/domain/entities/Channel/index.js +0 -2
- package/es/domain/entities/Contact/Contact.js +0 -22
- package/es/domain/entities/Contact/index.js +0 -2
- package/es/domain/entities/CustomReplyExtension/CustomReplyExtension.js +0 -22
- package/es/domain/entities/CustomReplyExtension/index.js +0 -2
- package/es/domain/entities/IntegrationService/IntegrationService.js +0 -33
- package/es/domain/entities/IntegrationService/index.js +0 -2
- package/es/domain/entities/Message/Action.js +0 -25
- package/es/domain/entities/Message/ExternalInfo.js +0 -26
- package/es/domain/entities/Message/Info.js +0 -44
- package/es/domain/entities/Message/InfoTarget.js +0 -22
- package/es/domain/entities/Message/Location.js +0 -18
- package/es/domain/entities/Message/Message.js +0 -137
- package/es/domain/entities/Message/MessageWithSession.js +0 -21
- package/es/domain/entities/Message/index.js +0 -7
- package/es/domain/entities/Session/Session.js +0 -80
- package/es/domain/entities/Session/index.js +0 -2
- package/es/domain/entities/TemplateMessage/TemplateCreditExhaustStatus.js +0 -23
- package/es/domain/entities/TemplateMessage/TemplateLanguage.js +0 -18
- package/es/domain/entities/TemplateMessage/index.js +0 -3
- package/es/domain/entities/index.js +0 -12
- package/es/domain/enum/actor/ActorType.js +0 -7
- package/es/domain/enum/actor/index.js +0 -2
- package/es/domain/enum/attachment/AttachmentStatus.js +0 -7
- package/es/domain/enum/attachment/index.js +0 -2
- package/es/domain/enum/bot/BotServiceType.js +0 -7
- package/es/domain/enum/bot/index.js +0 -2
- package/es/domain/enum/cannedMessage/CannedMessageStatus.js +0 -7
- package/es/domain/enum/cannedMessage/CannedMessageType.js +0 -5
- package/es/domain/enum/cannedMessage/TemplateItemButtonType.js +0 -6
- package/es/domain/enum/cannedMessage/TemplateItemFooterType.js +0 -4
- package/es/domain/enum/cannedMessage/TemplateItemHeaderType.js +0 -4
- package/es/domain/enum/cannedMessage/index.js +0 -6
- package/es/domain/enum/index.js +0 -8
- package/es/domain/enum/integrationServices/IntegrationServices.js +0 -12
- package/es/domain/enum/integrationServices/index.js +0 -2
- package/es/domain/enum/message/ActionSubType.js +0 -6
- package/es/domain/enum/message/ActionType.js +0 -6
- package/es/domain/enum/message/ExternalInfoAction.js +0 -9
- package/es/domain/enum/message/InfoAction.js +0 -17
- package/es/domain/enum/message/InfoSessionStatus.js +0 -10
- package/es/domain/enum/message/InfoTargetType.js +0 -11
- package/es/domain/enum/message/MessageContentType.js +0 -6
- package/es/domain/enum/message/MessageDirection.js +0 -6
- package/es/domain/enum/message/MessageMeta.js +0 -4
- package/es/domain/enum/message/MessageStatus.js +0 -11
- package/es/domain/enum/message/MessageType.js +0 -11
- package/es/domain/enum/message/MetaSystemMessageType.js +0 -8
- package/es/domain/enum/message/index.js +0 -13
- package/es/domain/enum/session/SessionReplyStatus.js +0 -21
- package/es/domain/enum/session/SessionStatus.js +0 -10
- package/es/domain/enum/session/index.js +0 -3
- package/es/domain/enum/templateMessage/TemplateCreditExhaustStatusCode.js +0 -4
- package/es/domain/enum/templateMessage/index.js +0 -2
- package/es/domain/interfaces/IAdapter.js +0 -6
- package/es/domain/interfaces/index.js +0 -3
- package/es/domain/interfaces/repositories/agents/IAgentRepository.js +0 -17
- package/es/domain/interfaces/repositories/agents/index.js +0 -2
- package/es/domain/interfaces/repositories/bots/IBotRepository.js +0 -23
- package/es/domain/interfaces/repositories/bots/index.js +0 -2
- package/es/domain/interfaces/repositories/cannedMessages/ICannedMessageRepository.js +0 -47
- package/es/domain/interfaces/repositories/cannedMessages/index.js +0 -2
- package/es/domain/interfaces/repositories/channels/IChannelAgentRepository.js +0 -17
- package/es/domain/interfaces/repositories/channels/IChannelRepository.js +0 -17
- package/es/domain/interfaces/repositories/channels/index.js +0 -3
- package/es/domain/interfaces/repositories/contacts/IContactRepository.js +0 -17
- package/es/domain/interfaces/repositories/contacts/index.js +0 -2
- package/es/domain/interfaces/repositories/index.js +0 -8
- package/es/domain/interfaces/repositories/messages/IMessageRepository.js +0 -57
- package/es/domain/interfaces/repositories/messages/index.js +0 -2
- package/es/domain/interfaces/repositories/sessions/ISessionRepository.js +0 -52
- package/es/domain/interfaces/repositories/sessions/index.js +0 -2
- package/es/domain/interfaces/repositories/templateMessages/ITemplateMessageRepository.js +0 -21
- package/es/domain/interfaces/repositories/templateMessages/index.js +0 -2
- package/es/domain/schema/actor/ActorSchema.js +0 -37
- package/es/domain/schema/actor/AgentSchema.js +0 -45
- package/es/domain/schema/actor/index.js +0 -3
- package/es/domain/schema/attachment/AttachmentSchema.js +0 -33
- package/es/domain/schema/attachment/index.js +0 -2
- package/es/domain/schema/bot/BotSchema.js +0 -33
- package/es/domain/schema/bot/index.js +0 -2
- package/es/domain/schema/cannedMessage/CannedMessageSchema.js +0 -57
- package/es/domain/schema/cannedMessage/TemplateItem/TemplateItemButtonsSchema.js +0 -17
- package/es/domain/schema/cannedMessage/TemplateItem/TemplateItemFooterSchema.js +0 -13
- package/es/domain/schema/cannedMessage/TemplateItem/TemplateItemHeaderSchema.js +0 -19
- package/es/domain/schema/cannedMessage/TemplateItem/index.js +0 -4
- package/es/domain/schema/cannedMessage/TemplateItemsSchema.js +0 -21
- package/es/domain/schema/cannedMessage/TranslationsSchema.js +0 -43
- package/es/domain/schema/cannedMessage/index.js +0 -2
- package/es/domain/schema/channel/ChannelSchema.js +0 -49
- package/es/domain/schema/channel/index.js +0 -2
- package/es/domain/schema/contact/ContactSchema.js +0 -27
- package/es/domain/schema/contact/index.js +0 -2
- package/es/domain/schema/customReplyExtension/CustomReplyExtensionSchema.js +0 -28
- package/es/domain/schema/customReplyExtension/index.js +0 -2
- package/es/domain/schema/index.js +0 -11
- package/es/domain/schema/integrationService/IntegrationServiceSchema.js +0 -31
- package/es/domain/schema/integrationService/index.js +0 -2
- package/es/domain/schema/message/ActionSchema.js +0 -18
- package/es/domain/schema/message/ExternalInfoSchema.js +0 -9
- package/es/domain/schema/message/InfoSchema.js +0 -24
- package/es/domain/schema/message/InfoTargetSchema.js +0 -35
- package/es/domain/schema/message/LocationSchema.js +0 -11
- package/es/domain/schema/message/MessageSchema.js +0 -116
- package/es/domain/schema/message/MessageWithSessionSchema.js +0 -10
- package/es/domain/schema/message/index.js +0 -8
- package/es/domain/schema/session/SessionSchema.js +0 -82
- package/es/domain/schema/session/index.js +0 -2
- package/es/domain/schema/templateMessage/TemplateCreditExhaustStatusSchema.js +0 -11
- package/es/domain/schema/templateMessage/TemplateLanguageSchema.js +0 -11
- package/es/domain/schema/templateMessage/index.js +0 -3
- package/es/frameworks/managers/ModuleFactory.js +0 -76
- package/es/frameworks/managers/ModuleManager.js +0 -44
- package/es/frameworks/managers/index.js +0 -2
- package/es/frameworks/sdk/IMSDK.js +0 -72
- package/es/frameworks/sdk/agents/AgentSDK.js +0 -30
- package/es/frameworks/sdk/agents/index.js +0 -2
- package/es/frameworks/sdk/bots/BotSDK.js +0 -30
- package/es/frameworks/sdk/bots/index.js +0 -2
- package/es/frameworks/sdk/cannedMessages/CannedMessageSDK.js +0 -30
- package/es/frameworks/sdk/cannedMessages/index.js +0 -2
- package/es/frameworks/sdk/channels/ChannelSDK.js +0 -37
- package/es/frameworks/sdk/channels/index.js +0 -2
- package/es/frameworks/sdk/contacts/ContactSDK.js +0 -30
- package/es/frameworks/sdk/contacts/index.js +0 -2
- package/es/frameworks/sdk/index.js +0 -2
- package/es/frameworks/sdk/messages/MessageSDK.js +0 -32
- package/es/frameworks/sdk/messages/index.js +0 -2
- package/es/frameworks/sdk/sessions/SessionSDK.js +0 -34
- package/es/frameworks/sdk/sessions/index.js +0 -2
- package/es/frameworks/sdk/templateMessages/TemplateMessageSDK.js +0 -30
- package/es/frameworks/sdk/templateMessages/index.js +0 -2
- package/es/index.html +0 -25
- package/es/index.js +0 -12
- package/es/infrastructure/adapters/agents/AgentAdapter.js +0 -28
- package/es/infrastructure/adapters/agents/index.js +0 -2
- package/es/infrastructure/adapters/attachments/AttachmentAdapter.js +0 -25
- package/es/infrastructure/adapters/attachments/index.js +0 -2
- package/es/infrastructure/adapters/bots/BotAdapter.js +0 -25
- package/es/infrastructure/adapters/bots/index.js +0 -2
- package/es/infrastructure/adapters/cannedMessages/CannedMessageAdapter.js +0 -28
- package/es/infrastructure/adapters/cannedMessages/index.js +0 -2
- package/es/infrastructure/adapters/channels/ChannelAdapter.js +0 -29
- package/es/infrastructure/adapters/channels/ChannelAgentAdapter.js +0 -49
- package/es/infrastructure/adapters/channels/index.js +0 -3
- package/es/infrastructure/adapters/contacts/ContactAdapter.js +0 -24
- package/es/infrastructure/adapters/contacts/index.js +0 -2
- package/es/infrastructure/adapters/customReplyExtension/CustomReplyExtensionAdapter.js +0 -24
- package/es/infrastructure/adapters/customReplyExtension/index.js +0 -2
- package/es/infrastructure/adapters/index.js +0 -10
- package/es/infrastructure/adapters/messages/MessageAdapter.js +0 -41
- package/es/infrastructure/adapters/messages/MessageWithSessionAdapter.js +0 -23
- package/es/infrastructure/adapters/messages/index.js +0 -2
- package/es/infrastructure/adapters/sessions/SessionAdapter.js +0 -36
- package/es/infrastructure/adapters/sessions/index.js +0 -2
- package/es/infrastructure/adapters/templateMessages/TemplateCreditExhaustStatusAdapter.js +0 -20
- package/es/infrastructure/adapters/templateMessages/TemplateLanguageAdapter.js +0 -20
- package/es/infrastructure/adapters/templateMessages/index.js +0 -3
- package/es/infrastructure/api/BaseAPI.js +0 -104
- package/es/infrastructure/api/UrlBuilder.js +0 -53
- package/es/infrastructure/api/agents/AgentAPI.js +0 -14
- package/es/infrastructure/api/agents/index.js +0 -2
- package/es/infrastructure/api/bots/BotAPI.js +0 -24
- package/es/infrastructure/api/bots/index.js +0 -2
- package/es/infrastructure/api/cannedMessages/CannedMessageAPI.js +0 -74
- package/es/infrastructure/api/cannedMessages/index.js +0 -2
- package/es/infrastructure/api/channels/ChannelAPI.js +0 -14
- package/es/infrastructure/api/channels/ChannelAgentAPI.js +0 -22
- package/es/infrastructure/api/channels/index.js +0 -3
- package/es/infrastructure/api/contacts/ContactAPI.js +0 -14
- package/es/infrastructure/api/contacts/index.js +0 -2
- package/es/infrastructure/api/index.js +0 -8
- package/es/infrastructure/api/messages/MessageAPI.js +0 -94
- package/es/infrastructure/api/messages/index.js +0 -2
- package/es/infrastructure/api/registry/agents/agentAPIRegistry.js +0 -12
- package/es/infrastructure/api/registry/agents/constructAgentEndPoint.js +0 -10
- package/es/infrastructure/api/registry/agents/index.js +0 -2
- package/es/infrastructure/api/registry/bots/botAPIRegistry.js +0 -18
- package/es/infrastructure/api/registry/bots/constructBotEndPoint.js +0 -10
- package/es/infrastructure/api/registry/bots/index.js +0 -2
- package/es/infrastructure/api/registry/cannedMessages/cannedMessageAPIRegistry.js +0 -42
- package/es/infrastructure/api/registry/cannedMessages/constructCannedMessageEndPoint.js +0 -10
- package/es/infrastructure/api/registry/cannedMessages/index.js +0 -2
- package/es/infrastructure/api/registry/channels/channelAPIRegistry.js +0 -16
- package/es/infrastructure/api/registry/channels/channelAgentAPIRegistry.js +0 -12
- package/es/infrastructure/api/registry/channels/constructChannelEndPoint.js +0 -10
- package/es/infrastructure/api/registry/channels/index.js +0 -2
- package/es/infrastructure/api/registry/contacts/constructContactEndPoint.js +0 -10
- package/es/infrastructure/api/registry/contacts/contactAPIRegistry.js +0 -12
- package/es/infrastructure/api/registry/contacts/index.js +0 -2
- package/es/infrastructure/api/registry/createAPIRegistry.js +0 -7
- package/es/infrastructure/api/registry/createBaseUrl.js +0 -3
- package/es/infrastructure/api/registry/getRegistryConfig.js +0 -30
- package/es/infrastructure/api/registry/index.js +0 -2
- package/es/infrastructure/api/registry/messages/constructMessageEndPoint.js +0 -4
- package/es/infrastructure/api/registry/messages/index.js +0 -2
- package/es/infrastructure/api/registry/messages/messageAPIRegistry.js +0 -62
- package/es/infrastructure/api/registry/sessions/constructSessionEndPoint.js +0 -10
- package/es/infrastructure/api/registry/sessions/index.js +0 -2
- package/es/infrastructure/api/registry/sessions/sessionAPIRegistry.js +0 -52
- package/es/infrastructure/api/registry/templateMessages/constructTemplateMessageEndPoint.js +0 -11
- package/es/infrastructure/api/registry/templateMessages/index.js +0 -2
- package/es/infrastructure/api/registry/templateMessages/templateMessageAPIRegistry.js +0 -18
- package/es/infrastructure/api/sessions/SessionAPI.js +0 -84
- package/es/infrastructure/api/sessions/index.js +0 -2
- package/es/infrastructure/api/templateMessages/TemplateMessageAPI.js +0 -24
- package/es/infrastructure/api/templateMessages/index.js +0 -2
- package/es/infrastructure/config/configRegistry.js +0 -27
- package/es/infrastructure/config/index.js +0 -2
- package/es/infrastructure/repositories/agents/AgentRepository.js +0 -49
- package/es/infrastructure/repositories/agents/index.js +0 -2
- package/es/infrastructure/repositories/bots/BotRepository.js +0 -58
- package/es/infrastructure/repositories/bots/index.js +0 -2
- package/es/infrastructure/repositories/cannedMessages/CannedMessageRepository.js +0 -97
- package/es/infrastructure/repositories/cannedMessages/index.js +0 -2
- package/es/infrastructure/repositories/channels/ChannelAgentRepository.js +0 -49
- package/es/infrastructure/repositories/channels/ChannelRepository.js +0 -49
- package/es/infrastructure/repositories/channels/index.js +0 -3
- package/es/infrastructure/repositories/contacts/ContactRepository.js +0 -49
- package/es/infrastructure/repositories/contacts/index.js +0 -2
- package/es/infrastructure/repositories/index.js +0 -8
- package/es/infrastructure/repositories/messages/MessageRepository.js +0 -119
- package/es/infrastructure/repositories/messages/index.js +0 -2
- package/es/infrastructure/repositories/sessions/SessionRepository.js +0 -113
- package/es/infrastructure/repositories/sessions/index.js +0 -2
- package/es/infrastructure/repositories/templateMessages/TemplateMessageRepository.js +0 -77
- package/es/infrastructure/repositories/templateMessages/index.js +0 -2
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { SessionService } from '../../../application/services';
|
|
2
|
-
import { SessionRepository } from '../../../infrastructure/repositories';
|
|
3
|
-
|
|
4
|
-
class SessionSDK {
|
|
5
|
-
constructor(_ref) {
|
|
6
|
-
let {
|
|
7
|
-
config
|
|
8
|
-
} = _ref;
|
|
9
|
-
const {
|
|
10
|
-
sessionAPI,
|
|
11
|
-
sessionAdapter,
|
|
12
|
-
attachmentAdapter,
|
|
13
|
-
messageAdapter
|
|
14
|
-
} = config;
|
|
15
|
-
const sessionRepository = new SessionRepository({
|
|
16
|
-
sessionAPI,
|
|
17
|
-
sessionAdapter,
|
|
18
|
-
attachmentAdapter,
|
|
19
|
-
messageAdapter
|
|
20
|
-
}).toJSON();
|
|
21
|
-
const sessionService = new SessionService({
|
|
22
|
-
sessionRepository
|
|
23
|
-
}).toJSON();
|
|
24
|
-
this.services = { ...sessionService
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
toJSON() {
|
|
29
|
-
return this.services;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export default SessionSDK;
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { TemplateMessageService } from '../../../application/services';
|
|
2
|
-
import { TemplateMessageRepository } from '../../../infrastructure/repositories';
|
|
3
|
-
|
|
4
|
-
class TemplateMessageSDK {
|
|
5
|
-
constructor(_ref) {
|
|
6
|
-
let {
|
|
7
|
-
config
|
|
8
|
-
} = _ref;
|
|
9
|
-
const {
|
|
10
|
-
templateMessageAPI,
|
|
11
|
-
templateLanguageAdapter
|
|
12
|
-
} = config;
|
|
13
|
-
const templateMessageRepository = new TemplateMessageRepository({
|
|
14
|
-
templateMessageAPI,
|
|
15
|
-
templateLanguageAdapter
|
|
16
|
-
}).toJSON();
|
|
17
|
-
const templateMessageService = new TemplateMessageService({
|
|
18
|
-
templateMessageRepository
|
|
19
|
-
}).toJSON();
|
|
20
|
-
this.services = { ...templateMessageService
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
toJSON() {
|
|
25
|
-
return this.services;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export default TemplateMessageSDK;
|
package/es/index.html
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en" dir="{{--dir}}">
|
|
3
|
-
|
|
4
|
-
<head>
|
|
5
|
-
<meta charset="UTF-8" />
|
|
6
|
-
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
7
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
8
|
-
<link rel="stylesheet" href="https://webfonts.zoho.com/css?family=Poppins:400,600,700" />
|
|
9
|
-
<link rel="stylesheet"
|
|
10
|
-
href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.3.1/styles/github-dark.min.css" />
|
|
11
|
-
<title>Demo Docs</title>
|
|
12
|
-
<script src="https://kit.fontawesome.com/6812a5e4e0.js" crossorigin="anonymous"></script>
|
|
13
|
-
<style>
|
|
14
|
-
#root {
|
|
15
|
-
height: 100%;
|
|
16
|
-
width: 100%;
|
|
17
|
-
}
|
|
18
|
-
</style>
|
|
19
|
-
</head>
|
|
20
|
-
|
|
21
|
-
<body>
|
|
22
|
-
<div id="root" data-mode="light" data-theme="blue" class="zd-contrast"></div>
|
|
23
|
-
</body>
|
|
24
|
-
|
|
25
|
-
</html>
|
package/es/index.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
// domain
|
|
2
|
-
export * from './domain/dto';
|
|
3
|
-
export * from './domain/entities';
|
|
4
|
-
export * from './domain/enum';
|
|
5
|
-
export * from './domain/interfaces'; // infrastructure
|
|
6
|
-
|
|
7
|
-
export * from './infrastructure/api'; // frameworks
|
|
8
|
-
|
|
9
|
-
export * from './frameworks/sdk'; // core
|
|
10
|
-
|
|
11
|
-
export * from './core/constants';
|
|
12
|
-
export { ResponseUtils } from './core/utils';
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { Agent } from '../../../domain/entities';
|
|
3
|
-
import { ActorType } from '../../../domain/enum';
|
|
4
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
5
|
-
export default class AgentAdapter extends IAdapter {
|
|
6
|
-
adapt(agentData) {
|
|
7
|
-
if (!agentData) {
|
|
8
|
-
throw new AdapterError('Agent data is required');
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
try {
|
|
12
|
-
return new Agent({
|
|
13
|
-
id: agentData.id,
|
|
14
|
-
firstName: agentData.firstName,
|
|
15
|
-
lastName: agentData.lastName,
|
|
16
|
-
email: agentData.email,
|
|
17
|
-
zuid: agentData.zuid,
|
|
18
|
-
status: agentData.status,
|
|
19
|
-
role: agentData.role,
|
|
20
|
-
photoURL: agentData.photoURL,
|
|
21
|
-
type: [ActorType.AGENT]
|
|
22
|
-
}).toJSON();
|
|
23
|
-
} catch (error) {
|
|
24
|
-
throw new AdapterError(`Failed to adapt Agent: ${error.message}`);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { Attachment } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class AttachmentAdapter extends IAdapter {
|
|
5
|
-
adapt(attachmentData) {
|
|
6
|
-
if (!attachmentData) {
|
|
7
|
-
throw new AdapterError('Attachment data is required');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
return new Attachment({
|
|
12
|
-
id: attachmentData.id,
|
|
13
|
-
name: attachmentData.name,
|
|
14
|
-
type: attachmentData.type,
|
|
15
|
-
createdTime: attachmentData.createdTime,
|
|
16
|
-
size: attachmentData.size,
|
|
17
|
-
url: attachmentData.url,
|
|
18
|
-
status: attachmentData.status
|
|
19
|
-
}).toJSON();
|
|
20
|
-
} catch (error) {
|
|
21
|
-
throw new AdapterError(`Failed to adapt attachment: ${error.message}`);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { Bot } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class BotAdapter extends IAdapter {
|
|
5
|
-
adapt(botData) {
|
|
6
|
-
if (!botData) {
|
|
7
|
-
throw new AdapterError('Bot data is required');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
return new Bot({
|
|
12
|
-
id: botData.id,
|
|
13
|
-
botServiceType: botData.botService.id,
|
|
14
|
-
name: botData.name,
|
|
15
|
-
isActive: botData.isActive,
|
|
16
|
-
createdTime: botData.createdTime,
|
|
17
|
-
photoURL: botData.logoURL,
|
|
18
|
-
createdBy: botData.createdBy
|
|
19
|
-
}).toJSON();
|
|
20
|
-
} catch (error) {
|
|
21
|
-
throw new AdapterError(`Failed to adapt bot: ${error.message}`);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { CannedMessage } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class CannedMessageAdapter extends IAdapter {
|
|
5
|
-
adapt(cannedMessageData) {
|
|
6
|
-
if (!cannedMessageData) {
|
|
7
|
-
throw new AdapterError('Canned Message data is required');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
return new CannedMessage({
|
|
12
|
-
id: cannedMessageData.id,
|
|
13
|
-
title: cannedMessageData.title,
|
|
14
|
-
tags: cannedMessageData.tags,
|
|
15
|
-
status: cannedMessageData.status,
|
|
16
|
-
createdBy: cannedMessageData.createdBy,
|
|
17
|
-
isActive: cannedMessageData.isActive,
|
|
18
|
-
isPrivate: cannedMessageData.isPrivate,
|
|
19
|
-
translations: cannedMessageData.translations,
|
|
20
|
-
uuid: cannedMessageData.uuid,
|
|
21
|
-
meta: cannedMessageData.meta
|
|
22
|
-
}).toJSON();
|
|
23
|
-
} catch (error) {
|
|
24
|
-
throw new AdapterError(`Failed to adapt canned message: ${error.message}`);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { Channel } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class ChannelAdapter extends IAdapter {
|
|
5
|
-
adapt(rawChannel) {
|
|
6
|
-
if (!rawChannel) {
|
|
7
|
-
throw new AdapterError('Channel data is required');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
return new Channel({
|
|
12
|
-
id: rawChannel.id,
|
|
13
|
-
integrationService: rawChannel.integrationService,
|
|
14
|
-
name: rawChannel.name,
|
|
15
|
-
defaultBotId: rawChannel.defaultBotId,
|
|
16
|
-
isActive: rawChannel.isActive,
|
|
17
|
-
createdTime: rawChannel.createdTime,
|
|
18
|
-
accountName: rawChannel.accountName,
|
|
19
|
-
isSubscribed: rawChannel.isSubscribed,
|
|
20
|
-
createdBy: rawChannel.createdBy,
|
|
21
|
-
isOwner: rawChannel.isOwner,
|
|
22
|
-
photoURL: rawChannel.logoURL
|
|
23
|
-
}).toJSON();
|
|
24
|
-
} catch (error) {
|
|
25
|
-
throw new AdapterError(`Failed to adapt channel: ${error.message}`);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { Agent } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class ChannelAgentAdapter extends IAdapter {
|
|
5
|
-
/**
|
|
6
|
-
* Adapts channel agent data to Agent entity
|
|
7
|
-
* @param {Object} channelAgent - Channel agent data to adapt
|
|
8
|
-
* @returns {Object} Adapted agent data
|
|
9
|
-
* @throws {AdapterError} When adaptation fails
|
|
10
|
-
*/
|
|
11
|
-
adapt(channelAgent) {
|
|
12
|
-
if (!channelAgent) {
|
|
13
|
-
throw new AdapterError('Channel agent data is required');
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
try {
|
|
17
|
-
const {
|
|
18
|
-
id,
|
|
19
|
-
name,
|
|
20
|
-
email,
|
|
21
|
-
photoURL,
|
|
22
|
-
zuid,
|
|
23
|
-
type
|
|
24
|
-
} = new Agent({
|
|
25
|
-
id: channelAgent.id,
|
|
26
|
-
name: channelAgent.name,
|
|
27
|
-
email: channelAgent.email,
|
|
28
|
-
photoURL: channelAgent.photoURL,
|
|
29
|
-
zuid: channelAgent.zuid,
|
|
30
|
-
type: channelAgent.type,
|
|
31
|
-
firstName: null,
|
|
32
|
-
lastName: null,
|
|
33
|
-
status: null,
|
|
34
|
-
role: null
|
|
35
|
-
}).toJSON();
|
|
36
|
-
return {
|
|
37
|
-
id,
|
|
38
|
-
name,
|
|
39
|
-
email,
|
|
40
|
-
photoURL,
|
|
41
|
-
zuid,
|
|
42
|
-
type
|
|
43
|
-
};
|
|
44
|
-
} catch (error) {
|
|
45
|
-
throw new AdapterError(`Failed to adapt channel agent: ${error.message}`);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { Contact } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class ContactAdapter extends IAdapter {
|
|
5
|
-
adapt(contactData) {
|
|
6
|
-
if (!contactData) {
|
|
7
|
-
throw new AdapterError('Contact data is required');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
return new Contact({
|
|
12
|
-
id: contactData.id,
|
|
13
|
-
name: contactData.name,
|
|
14
|
-
photoURL: contactData.photoURL,
|
|
15
|
-
email: contactData.email,
|
|
16
|
-
mobile: contactData.mobile,
|
|
17
|
-
phone: contactData.phone
|
|
18
|
-
}).toJSON();
|
|
19
|
-
} catch (error) {
|
|
20
|
-
throw new AdapterError(`Failed to adapt Contact: ${error.message}`);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { CustomReplyExtension } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class CustomReplyExtensionAdapter extends IAdapter {
|
|
5
|
-
adapt(customReplyExtData) {
|
|
6
|
-
if (!customReplyExtData) {
|
|
7
|
-
throw new AdapterError('custom Reply Extension Data is required');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
return new CustomReplyExtension({
|
|
12
|
-
id: customReplyExtData.id,
|
|
13
|
-
title: customReplyExtData.title,
|
|
14
|
-
message: customReplyExtData.message,
|
|
15
|
-
displayMessage: customReplyExtData.displayMessage,
|
|
16
|
-
webUrl: customReplyExtData.webUrl,
|
|
17
|
-
categoryName: customReplyExtData.categoryName
|
|
18
|
-
}).toJSON();
|
|
19
|
-
} catch (error) {
|
|
20
|
-
throw new AdapterError(`Failed to adapt custom Reply Extension Data: ${error.message}`);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export * from './channels';
|
|
2
|
-
export * from './sessions';
|
|
3
|
-
export * from './bots';
|
|
4
|
-
export * from './attachments';
|
|
5
|
-
export * from './messages';
|
|
6
|
-
export * from './agents';
|
|
7
|
-
export * from './contacts';
|
|
8
|
-
export * from './cannedMessages';
|
|
9
|
-
export * from './templateMessages';
|
|
10
|
-
export * from './customReplyExtension';
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { Message } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class MessageAdapter extends IAdapter {
|
|
5
|
-
adapt(messageData) {
|
|
6
|
-
if (!messageData) {
|
|
7
|
-
throw new AdapterError('Message data is required');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
return new Message({
|
|
12
|
-
id: messageData.id,
|
|
13
|
-
sessionId: messageData.sessionId,
|
|
14
|
-
displayMessage: messageData.displayMessage,
|
|
15
|
-
statusUpdatedTime: messageData.statusUpdatedTime,
|
|
16
|
-
actor: messageData.actor,
|
|
17
|
-
direction: messageData.direction,
|
|
18
|
-
createdTime: messageData.createdTime,
|
|
19
|
-
index: messageData.index,
|
|
20
|
-
replyToMessage: messageData.replyToMessage,
|
|
21
|
-
status: messageData.status,
|
|
22
|
-
info: messageData.info,
|
|
23
|
-
location: messageData.location,
|
|
24
|
-
externalInfo: messageData.externalInfo,
|
|
25
|
-
layout: messageData.layout,
|
|
26
|
-
action: messageData.action,
|
|
27
|
-
meta: messageData.meta,
|
|
28
|
-
contentType: messageData.contentType,
|
|
29
|
-
fullContentURL: messageData.fullContentURL,
|
|
30
|
-
attachment: messageData.attachment,
|
|
31
|
-
template: messageData.template,
|
|
32
|
-
type: messageData.type,
|
|
33
|
-
isRead: messageData.isRead,
|
|
34
|
-
article: messageData.article
|
|
35
|
-
}).toJSON();
|
|
36
|
-
} catch (error) {
|
|
37
|
-
throw new AdapterError(`Failed to adapt message: ${error.message}`);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { MessageWithSession } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
import { MessageAdapter, SessionAdapter } from '../index';
|
|
5
|
-
export default class MessageWithSessionAdapter extends IAdapter {
|
|
6
|
-
adapt(messageData) {
|
|
7
|
-
if (!messageData) {
|
|
8
|
-
throw new AdapterError('Message With Session data is required');
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
const message = new MessageAdapter().adapt(messageData);
|
|
12
|
-
const session = new SessionAdapter().adapt(messageData.session);
|
|
13
|
-
|
|
14
|
-
try {
|
|
15
|
-
return new MessageWithSession({ ...message,
|
|
16
|
-
session
|
|
17
|
-
}).toJSON();
|
|
18
|
-
} catch (error) {
|
|
19
|
-
throw new Error(`Failed to adapt message with session: ${error.message}`);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { Session } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class SessionAdapter extends IAdapter {
|
|
5
|
-
adapt(sessionData) {
|
|
6
|
-
if (!sessionData) {
|
|
7
|
-
throw new AdapterError('Session data is required');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
return new Session({
|
|
12
|
-
id: sessionData.id,
|
|
13
|
-
channelId: sessionData.channelId,
|
|
14
|
-
status: sessionData.status,
|
|
15
|
-
createdTime: sessionData.createdTime,
|
|
16
|
-
agentId: sessionData.agentId,
|
|
17
|
-
botId: sessionData.botId,
|
|
18
|
-
actor: sessionData.actor,
|
|
19
|
-
subject: sessionData.subject,
|
|
20
|
-
messagesCount: sessionData.messagesCount,
|
|
21
|
-
agentLastActiveTime: sessionData.agentLastActiveTime,
|
|
22
|
-
contactLastActiveTime: sessionData.contactLastActiveTime,
|
|
23
|
-
lastActiveTime: sessionData.lastActiveTime,
|
|
24
|
-
unreadMessagesCount: sessionData.unreadMessagesCount,
|
|
25
|
-
integrationServiceId: sessionData.integrationServiceId,
|
|
26
|
-
replyStatus: sessionData.replyStatus,
|
|
27
|
-
contactId: sessionData.contactId,
|
|
28
|
-
meta: sessionData.meta,
|
|
29
|
-
assignee: sessionData.assignee
|
|
30
|
-
}).toJSON();
|
|
31
|
-
} catch (error) {
|
|
32
|
-
throw new AdapterError(`Failed to adapt session: ${error.message}`);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { TemplateCreditExhaustStatus } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class TemplateCreditExhaustStatusAdapter extends IAdapter {
|
|
5
|
-
adapt(templateCreditExhaustStatusData) {
|
|
6
|
-
if (!templateCreditExhaustStatusData) {
|
|
7
|
-
throw new AdapterError('Template Credit Exhaust Status data is required');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
return new TemplateCreditExhaustStatus({
|
|
12
|
-
code: templateCreditExhaustStatusData.code,
|
|
13
|
-
message: templateCreditExhaustStatusData.message
|
|
14
|
-
}).toJSON();
|
|
15
|
-
} catch (error) {
|
|
16
|
-
throw new AdapterError(`Failed to adapt Template Credit Exhaust Status: ${error.message}`);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { AdapterError } from '../../../core/errors';
|
|
2
|
-
import { TemplateLanguage } from '../../../domain/entities';
|
|
3
|
-
import { IAdapter } from '../../../domain/interfaces';
|
|
4
|
-
export default class TemplateLanguageAdapter extends IAdapter {
|
|
5
|
-
adapt(templateLanguageData) {
|
|
6
|
-
if (!templateLanguageData) {
|
|
7
|
-
throw new AdapterError('templateLanguage data is required');
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
try {
|
|
11
|
-
return new TemplateLanguage({
|
|
12
|
-
code: templateLanguageData.code,
|
|
13
|
-
language: templateLanguageData.language
|
|
14
|
-
}).toJSON();
|
|
15
|
-
} catch (error) {
|
|
16
|
-
throw new AdapterError(`Failed to adapt TemplateLanguage: ${error.message}`);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
}
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { ResponseTypes } from '../../core/constants';
|
|
2
|
-
import { ResponseUtils } from '../../core/utils';
|
|
3
|
-
import configRegistry from '../config/configRegistry';
|
|
4
|
-
import { getRegistryConfig } from './registry';
|
|
5
|
-
import UrlBuilder from './UrlBuilder';
|
|
6
|
-
export default class BaseAPI {
|
|
7
|
-
constructor() {
|
|
8
|
-
let {
|
|
9
|
-
module,
|
|
10
|
-
configProvider = configRegistry,
|
|
11
|
-
registryProvider = {
|
|
12
|
-
getRegistryConfig
|
|
13
|
-
},
|
|
14
|
-
urlBuilder = new UrlBuilder()
|
|
15
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
16
|
-
this.configProvider = configProvider;
|
|
17
|
-
this.registryProvider = registryProvider;
|
|
18
|
-
this.httpClient = this.configProvider.getHttpClient();
|
|
19
|
-
this.baseURL = this.configProvider.getBaseURL();
|
|
20
|
-
this.module = module;
|
|
21
|
-
this.urlBuilder = urlBuilder;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
async request(_ref) {
|
|
25
|
-
let {
|
|
26
|
-
request,
|
|
27
|
-
operation,
|
|
28
|
-
header
|
|
29
|
-
} = _ref;
|
|
30
|
-
const config = this.registryProvider.getRegistryConfig(this.module, operation);
|
|
31
|
-
|
|
32
|
-
if (!config) {
|
|
33
|
-
throw new Error(`Operation "${operation}" not found in registry for module "${this.module}"`);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
const url = this.urlBuilder.buildUrl({
|
|
37
|
-
url: config.endpoint,
|
|
38
|
-
params: request.params || {},
|
|
39
|
-
query: request.query || {}
|
|
40
|
-
});
|
|
41
|
-
const httpRequest = await this.httpClient.request({
|
|
42
|
-
url,
|
|
43
|
-
method: config.method,
|
|
44
|
-
header,
|
|
45
|
-
payload: request.body || {}
|
|
46
|
-
});
|
|
47
|
-
return httpRequest;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
createAPIProxy(customAPI, defaultAPI) {
|
|
51
|
-
// If no custom API provided, just use default
|
|
52
|
-
if (!customAPI) {
|
|
53
|
-
return defaultAPI;
|
|
54
|
-
} // Create a proxy for method delegation
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
return new Proxy({}, {
|
|
58
|
-
get: (target, prop) => {
|
|
59
|
-
// For methods, check if custom implementation exists
|
|
60
|
-
if (typeof prop === 'string' && typeof customAPI[prop] === 'function' && this.isMethodOverridden(customAPI, prop)) {
|
|
61
|
-
// Use custom implementation if available
|
|
62
|
-
return customAPI[prop].bind(customAPI);
|
|
63
|
-
} // Fall back to default implementation
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return defaultAPI[prop].bind(defaultAPI);
|
|
67
|
-
}
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
isMethodOverridden(customAPI, methodName) {
|
|
72
|
-
if (!customAPI) {
|
|
73
|
-
return false;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
const customPrototype = Object.getPrototypeOf(customAPI);
|
|
77
|
-
return typeof customAPI[methodName] === 'function' && // Method is defined directly on custom prototype
|
|
78
|
-
Object.prototype.hasOwnProperty.call(customPrototype, methodName);
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
async executeAPICall(_ref2) {
|
|
82
|
-
let {
|
|
83
|
-
operation,
|
|
84
|
-
request,
|
|
85
|
-
apiProxy,
|
|
86
|
-
customAPI,
|
|
87
|
-
adapter,
|
|
88
|
-
responseType = ResponseTypes.SINGLE
|
|
89
|
-
} = _ref2;
|
|
90
|
-
const response = await apiProxy[operation](request);
|
|
91
|
-
const isOverridden = this.isMethodOverridden(customAPI, operation);
|
|
92
|
-
|
|
93
|
-
if (isOverridden) {
|
|
94
|
-
return response;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
if (responseType === ResponseTypes.NONE || !adapter) {
|
|
98
|
-
return response;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
return responseType === ResponseTypes.LIST ? ResponseUtils.adaptListResponse(response, adapter.adapt) : ResponseUtils.adaptSingleResponse(response, adapter.adapt);
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
}
|