@botonic/plugin-hubtype-analytics
Version:
Plugin for tracking in the Hubtype backend to see the results in the Hubtype Dashbord
60 lines • 3.59 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.createHtEvent = createHtEvent;
/* eslint-disable complexity */
const event_models_1 = require("./event-models");
const ht_event_capture_user_input_1 = require("./event-models/ht-event-capture-user-input");
const types_1 = require("./types");
function createHtEvent(requestData, htEventProps) {
switch (htEventProps.action) {
case types_1.EventAction.FeedbackCase:
case types_1.EventAction.FeedbackConversation:
case types_1.EventAction.FeedbackMessage:
case types_1.EventAction.FeedbackWebview:
return new event_models_1.HtEventFeedback(htEventProps, requestData);
case types_1.EventAction.FeedbackKnowledgebase:
return new event_models_1.HtEventFeedbackKnowledgebase(htEventProps, requestData);
case types_1.EventAction.FlowNode:
return new event_models_1.HtEventFlow(htEventProps, requestData);
case types_1.EventAction.HandoffOption:
return new event_models_1.HtEventHandoffOption(htEventProps, requestData);
case types_1.EventAction.HandoffSuccess:
case types_1.EventAction.HandoffFail:
return new event_models_1.HtEventHandoff(htEventProps, requestData);
case types_1.EventAction.Keyword:
return new event_models_1.HtEventKeyword(htEventProps, requestData);
case types_1.EventAction.IntentSmart:
return new event_models_1.HtEventIntentSmart(htEventProps, requestData);
case types_1.EventAction.Knowledgebase:
return new event_models_1.HtEventKnowledgeBase(htEventProps, requestData);
case types_1.EventAction.Fallback:
return new event_models_1.HtEventFallback(htEventProps, requestData);
case types_1.EventAction.WebviewStep:
return new event_models_1.HtEventWebviewStep(htEventProps, requestData);
case types_1.EventAction.WebviewEnd:
return new event_models_1.HtEventWebviewEnd(htEventProps, requestData);
case types_1.EventAction.Custom:
return new event_models_1.HtEventCustom(htEventProps, requestData);
case types_1.EventAction.AiAgent:
return new event_models_1.HtEventAiAgent(htEventProps, requestData);
case types_1.EventAction.ConditionalCountry:
return new event_models_1.HtEventConditionalCountry(htEventProps, requestData);
case types_1.EventAction.ConditionalQueueStatus:
return new event_models_1.HtEventConditionalQueueStatus(htEventProps, requestData);
case types_1.EventAction.ConditionalCustom:
return new event_models_1.HtEventConditionalCustom(htEventProps, requestData);
case types_1.EventAction.ConditionalChannel:
return new event_models_1.HtEventConditionalChannel(htEventProps, requestData);
case types_1.EventAction.BotAction:
return new event_models_1.HtEventBotAction(htEventProps, requestData);
case types_1.EventAction.WebviewActionTriggered:
return new event_models_1.HtEventWebviewActionTriggered(htEventProps, requestData);
case types_1.EventAction.RedirectFlow:
return new event_models_1.HtEventRedirectFlow(htEventProps, requestData);
case types_1.EventAction.CaptureUserInput:
return new ht_event_capture_user_input_1.HtEventCaptureUserInput(htEventProps, requestData);
default:
return new event_models_1.HtEvent(htEventProps, requestData);
}
}
//# sourceMappingURL=utils.js.map