@botonic/plugin-flow-builder 0.22.6-alpha.1 → 0.23.1-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/action/index.d.ts +1 -2
- package/lib/cjs/action/index.js +7 -32
- package/lib/cjs/action/index.js.map +1 -1
- package/lib/cjs/action/intent.js +7 -11
- package/lib/cjs/action/intent.js.map +1 -1
- package/lib/cjs/action/keyword.js +3 -7
- package/lib/cjs/action/keyword.js.map +1 -1
- package/lib/cjs/action/tracking.d.ts +16 -2
- package/lib/cjs/action/tracking.js +19 -3
- package/lib/cjs/action/tracking.js.map +1 -1
- package/lib/cjs/action/user-input.js +1 -5
- package/lib/cjs/action/user-input.js.map +1 -1
- package/lib/cjs/api.d.ts +2 -1
- package/lib/cjs/api.js +1 -0
- package/lib/cjs/api.js.map +1 -1
- package/lib/cjs/content-fields/flow-handoff.js +6 -9
- package/lib/cjs/content-fields/flow-handoff.js.map +1 -1
- package/lib/cjs/content-fields/flow-text.d.ts +1 -0
- package/lib/cjs/content-fields/flow-text.js +15 -1
- package/lib/cjs/content-fields/flow-text.js.map +1 -1
- package/lib/cjs/index.d.ts +2 -0
- package/lib/cjs/index.js +2 -0
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/types.d.ts +2 -1
- package/lib/cjs/types.js.map +1 -1
- package/lib/esm/action/index.d.ts +1 -2
- package/lib/esm/action/index.js +10 -35
- package/lib/esm/action/index.js.map +1 -1
- package/lib/esm/action/intent.js +8 -12
- package/lib/esm/action/intent.js.map +1 -1
- package/lib/esm/action/keyword.js +4 -8
- package/lib/esm/action/keyword.js.map +1 -1
- package/lib/esm/action/tracking.d.ts +16 -2
- package/lib/esm/action/tracking.js +18 -2
- package/lib/esm/action/tracking.js.map +1 -1
- package/lib/esm/action/user-input.js +2 -6
- package/lib/esm/action/user-input.js.map +1 -1
- package/lib/esm/api.d.ts +2 -1
- package/lib/esm/api.js +1 -0
- package/lib/esm/api.js.map +1 -1
- package/lib/esm/content-fields/flow-handoff.js +7 -10
- package/lib/esm/content-fields/flow-handoff.js.map +1 -1
- package/lib/esm/content-fields/flow-text.d.ts +1 -0
- package/lib/esm/content-fields/flow-text.js +15 -1
- package/lib/esm/content-fields/flow-text.js.map +1 -1
- package/lib/esm/index.d.ts +2 -0
- package/lib/esm/index.js +2 -0
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/types.d.ts +2 -1
- package/lib/esm/types.js.map +1 -1
- package/package.json +2 -3
- package/src/action/index.tsx +11 -47
- package/src/action/intent.ts +9 -16
- package/src/action/keyword.ts +4 -11
- package/src/action/tracking.ts +22 -3
- package/src/action/user-input.ts +2 -9
- package/src/api.ts +3 -1
- package/src/content-fields/flow-handoff.tsx +8 -14
- package/src/content-fields/flow-text.tsx +23 -1
- package/src/index.ts +3 -0
- package/src/types.ts +2 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ActionRequest } from '@botonic/react';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { FlowContent } from '../content-fields';
|
|
4
|
-
type FlowBuilderActionProps = {
|
|
4
|
+
export type FlowBuilderActionProps = {
|
|
5
5
|
contents: FlowContent[];
|
|
6
6
|
};
|
|
7
7
|
export declare class FlowBuilderAction extends React.Component<FlowBuilderActionProps> {
|
|
@@ -20,4 +20,3 @@ export declare class FlowBuilderAction extends React.Component<FlowBuilderAction
|
|
|
20
20
|
export declare class FlowBuilderMultichannelAction extends FlowBuilderAction {
|
|
21
21
|
render(): JSX.Element | JSX.Element[];
|
|
22
22
|
}
|
|
23
|
-
export {};
|
package/lib/cjs/action/index.js
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.FlowBuilderMultichannelAction = exports.FlowBuilderAction = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
-
const types_1 = require("@botonic/plugin-hubtype-analytics/lib/cjs/types");
|
|
6
5
|
const react_1 = require("@botonic/react");
|
|
7
6
|
const react_2 = tslib_1.__importDefault(require("react"));
|
|
8
7
|
const constants_1 = require("../constants");
|
|
@@ -19,15 +18,8 @@ class FlowBuilderAction extends react_2.default.Component {
|
|
|
19
18
|
const handoffContent = contents.find(content => content instanceof content_fields_1.FlowHandoff);
|
|
20
19
|
if (handoffContent)
|
|
21
20
|
await handoffContent.doHandoff(request);
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
if (content instanceof content_fields_1.FlowText) {
|
|
25
|
-
console.log(content.text);
|
|
26
|
-
content.text = replaceVariables(content.text, request.session.user.extra_data);
|
|
27
|
-
}
|
|
28
|
-
return content;
|
|
29
|
-
});
|
|
30
|
-
return { contents: contentsWithVariables };
|
|
21
|
+
const contentsToRender = contents.filter(content => content instanceof content_fields_1.FlowHandoff ? false : true);
|
|
22
|
+
return { contents: contentsToRender };
|
|
31
23
|
}
|
|
32
24
|
render() {
|
|
33
25
|
const { contents } = this.props;
|
|
@@ -50,13 +42,10 @@ async function getTargetNode(cmsApi, locale, request) {
|
|
|
50
42
|
? await (0, user_input_1.getNodeByUserInput)(cmsApi, locale, request)
|
|
51
43
|
: cmsApi.getNodeById(contentId);
|
|
52
44
|
if (targetNode) {
|
|
53
|
-
const
|
|
54
|
-
|
|
55
|
-
event_data: {
|
|
56
|
-
faq_name: targetNode.code,
|
|
57
|
-
},
|
|
45
|
+
const eventArgs = {
|
|
46
|
+
faq_name: targetNode.code,
|
|
58
47
|
};
|
|
59
|
-
await (0, tracking_1.trackEvent)(request,
|
|
48
|
+
await (0, tracking_1.trackEvent)(request, tracking_1.EventName.botFaq, eventArgs);
|
|
60
49
|
return targetNode;
|
|
61
50
|
}
|
|
62
51
|
return await getFallbackNode(cmsApi, request);
|
|
@@ -65,24 +54,10 @@ async function getFallbackNode(cmsApi, request) {
|
|
|
65
54
|
if (!request.session.user.extra_data) {
|
|
66
55
|
request.session.user.extra_data = { isFirstFallbackOption: true };
|
|
67
56
|
}
|
|
68
|
-
const isFirstFallbackOption = request.session.user.extra_data.isFirstFallbackOption;
|
|
57
|
+
const isFirstFallbackOption = !!request.session.user.extra_data.isFirstFallbackOption;
|
|
69
58
|
const fallbackNode = cmsApi.getFallbackNode(isFirstFallbackOption);
|
|
70
59
|
request.session.user.extra_data.isFirstFallbackOption = !isFirstFallbackOption;
|
|
71
|
-
|
|
72
|
-
event_type: types_1.EventName.fallback,
|
|
73
|
-
};
|
|
74
|
-
await (0, tracking_1.trackEvent)(request, event);
|
|
60
|
+
await (0, tracking_1.trackEvent)(request, tracking_1.EventName.fallback);
|
|
75
61
|
return fallbackNode;
|
|
76
62
|
}
|
|
77
|
-
function replaceVariables(text, extraData) {
|
|
78
|
-
const matches = text.match(constants_1.VARIABLE_REGEX);
|
|
79
|
-
if (matches && extraData) {
|
|
80
|
-
matches.forEach(match => {
|
|
81
|
-
const variable = match.slice(1, -1);
|
|
82
|
-
const value = extraData[variable] ? extraData[variable] : match;
|
|
83
|
-
text = text.replace(match, value);
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
return text;
|
|
87
|
-
}
|
|
88
63
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/action/index.tsx"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/action/index.tsx"],"names":[],"mappings":"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"}
|
package/lib/cjs/action/intent.js
CHANGED
|
@@ -1,26 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getNodeByIntent = void 0;
|
|
4
|
-
const types_1 = require("@botonic/plugin-hubtype-analytics/lib/cjs/types");
|
|
5
4
|
const tracking_1 = require("./tracking");
|
|
6
5
|
async function getNodeByIntent(cmsApi, locale, request) {
|
|
7
6
|
var _a;
|
|
8
7
|
const intentNode = cmsApi.getIntentNode(request.input, locale);
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
confidence: request.input.confidence,
|
|
14
|
-
confidence_successful: true,
|
|
15
|
-
},
|
|
8
|
+
const eventArgs = {
|
|
9
|
+
intent: request.input.intent,
|
|
10
|
+
confidence: request.input.confidence,
|
|
11
|
+
confidence_successful: true,
|
|
16
12
|
};
|
|
17
13
|
if (isIntentValid(intentNode, request, cmsApi) && ((_a = intentNode === null || intentNode === void 0 ? void 0 : intentNode.target) === null || _a === void 0 ? void 0 : _a.id)) {
|
|
18
|
-
await (0, tracking_1.trackEvent)(request,
|
|
14
|
+
await (0, tracking_1.trackEvent)(request, tracking_1.EventName.botAiModel, eventArgs);
|
|
19
15
|
return cmsApi.getNodeById(intentNode.target.id);
|
|
20
16
|
}
|
|
21
17
|
else {
|
|
22
|
-
|
|
23
|
-
await (0, tracking_1.trackEvent)(request,
|
|
18
|
+
eventArgs.confidence_successful = false;
|
|
19
|
+
await (0, tracking_1.trackEvent)(request, tracking_1.EventName.botAiModel, eventArgs);
|
|
24
20
|
return undefined;
|
|
25
21
|
}
|
|
26
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intent.js","sourceRoot":"","sources":["../../../src/action/intent.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"intent.js","sourceRoot":"","sources":["../../../src/action/intent.ts"],"names":[],"mappings":";;;AAOA,yCAAkD;AAE3C,KAAK,UAAU,eAAe,CACnC,MAAsB,EACtB,MAAc,EACd,OAAsB;;IAEtB,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAC9D,MAAM,SAAS,GAAG;QAChB,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAgB;QACtC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAoB;QAC9C,qBAAqB,EAAE,IAAI;KAC5B,CAAA;IACD,IAAI,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,KAAI,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,0CAAE,EAAE,CAAA,EAAE;QACxE,MAAM,IAAA,qBAAU,EAAC,OAAO,EAAE,oBAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QAC1D,OAAO,MAAM,CAAC,WAAW,CAAoB,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;KACnE;SAAM;QACL,SAAS,CAAC,qBAAqB,GAAG,KAAK,CAAA;QACvC,MAAM,IAAA,qBAAU,EAAC,OAAO,EAAE,oBAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QAC1D,OAAO,SAAS,CAAA;KACjB;AACH,CAAC;AAnBD,0CAmBC;AAED,SAAS,aAAa,CACpB,UAAoC,EACpC,OAAsB,EACtB,MAAsB;IAEtB,OAAO,CACL,UAAU;QACV,OAAO,CAAC,KAAK,CAAC,UAAU;QACxB,MAAM,CAAC,yBAAyB,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CACvE,CAAA;AACH,CAAC"}
|
|
@@ -1,20 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getNodeByKeyword = void 0;
|
|
4
|
-
const types_1 = require("@botonic/plugin-hubtype-analytics/lib/cjs/types");
|
|
5
4
|
const tracking_1 = require("./tracking");
|
|
6
5
|
async function getNodeByKeyword(cmsApi, locale, request, userInput) {
|
|
7
6
|
const keywordNode = cmsApi.getNodeByKeyword(userInput, locale);
|
|
8
7
|
if (!keywordNode) {
|
|
9
8
|
return undefined;
|
|
10
9
|
}
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
event_data: {
|
|
14
|
-
confidence_successful: true,
|
|
15
|
-
},
|
|
10
|
+
const eventArgs = {
|
|
11
|
+
confidence_successful: true,
|
|
16
12
|
};
|
|
17
|
-
await (0, tracking_1.trackEvent)(request,
|
|
13
|
+
await (0, tracking_1.trackEvent)(request, tracking_1.EventName.botKeywordsModel, eventArgs);
|
|
18
14
|
return keywordNode;
|
|
19
15
|
}
|
|
20
16
|
exports.getNodeByKeyword = getNodeByKeyword;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/action/keyword.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/action/keyword.ts"],"names":[],"mappings":";;;AAIA,yCAAkD;AAE3C,KAAK,UAAU,gBAAgB,CACpC,MAAsB,EACtB,MAAc,EACd,OAAsB,EACtB,SAAiB;IAEjB,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAC9D,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,SAAS,CAAA;KACjB;IACD,MAAM,SAAS,GAAG;QAChB,qBAAqB,EAAE,IAAI;KAC5B,CAAA;IACD,MAAM,IAAA,qBAAU,EAAC,OAAO,EAAE,oBAAS,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAA;IAChE,OAAO,WAAW,CAAA;AACpB,CAAC;AAfD,4CAeC"}
|
|
@@ -1,3 +1,17 @@
|
|
|
1
|
-
import { HtEventProps } from '@botonic/plugin-hubtype-analytics/lib/cjs/types';
|
|
2
1
|
import { ActionRequest } from '@botonic/react';
|
|
3
|
-
export declare function trackEvent(request: ActionRequest,
|
|
2
|
+
export declare function trackEvent(request: ActionRequest, eventName: EventName, args?: Record<string, any>): Promise<void>;
|
|
3
|
+
export declare enum EventName {
|
|
4
|
+
botAgentRating = "bot_agent_rating",
|
|
5
|
+
botChannelRating = "bot_channel_rating",
|
|
6
|
+
botFaqUseful = "bot_faq_useful",
|
|
7
|
+
botRating = "bot_rating",
|
|
8
|
+
botFaq = "bot_faq",
|
|
9
|
+
botStart = "bot_start",
|
|
10
|
+
botOpen = "bot_open",
|
|
11
|
+
botAiModel = "bot_ai_model",
|
|
12
|
+
botKeywordsModel = "bot_keywords_model",
|
|
13
|
+
fallback = "fallback",
|
|
14
|
+
handoffOption = "handoff_option",
|
|
15
|
+
handoffSuccess = "handoff_success",
|
|
16
|
+
handoffFail = "handoff_fail"
|
|
17
|
+
}
|
|
@@ -1,13 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.trackEvent = void 0;
|
|
3
|
+
exports.EventName = exports.trackEvent = void 0;
|
|
4
4
|
const helpers_1 = require("../helpers");
|
|
5
|
-
async function trackEvent(request,
|
|
5
|
+
async function trackEvent(request, eventName, args) {
|
|
6
6
|
const flowBuilderPlugin = (0, helpers_1.getFlowBuilderPlugin)(request.plugins);
|
|
7
7
|
if (flowBuilderPlugin.trackEvent) {
|
|
8
|
-
await flowBuilderPlugin.trackEvent(request,
|
|
8
|
+
await flowBuilderPlugin.trackEvent(request, eventName, args);
|
|
9
9
|
}
|
|
10
10
|
return;
|
|
11
11
|
}
|
|
12
12
|
exports.trackEvent = trackEvent;
|
|
13
|
+
var EventName;
|
|
14
|
+
(function (EventName) {
|
|
15
|
+
EventName["botAgentRating"] = "bot_agent_rating";
|
|
16
|
+
EventName["botChannelRating"] = "bot_channel_rating";
|
|
17
|
+
EventName["botFaqUseful"] = "bot_faq_useful";
|
|
18
|
+
EventName["botRating"] = "bot_rating";
|
|
19
|
+
EventName["botFaq"] = "bot_faq";
|
|
20
|
+
EventName["botStart"] = "bot_start";
|
|
21
|
+
EventName["botOpen"] = "bot_open";
|
|
22
|
+
EventName["botAiModel"] = "bot_ai_model";
|
|
23
|
+
EventName["botKeywordsModel"] = "bot_keywords_model";
|
|
24
|
+
EventName["fallback"] = "fallback";
|
|
25
|
+
EventName["handoffOption"] = "handoff_option";
|
|
26
|
+
EventName["handoffSuccess"] = "handoff_success";
|
|
27
|
+
EventName["handoffFail"] = "handoff_fail";
|
|
28
|
+
})(EventName = exports.EventName || (exports.EventName = {}));
|
|
13
29
|
//# sourceMappingURL=tracking.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracking.js","sourceRoot":"","sources":["../../../src/action/tracking.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"tracking.js","sourceRoot":"","sources":["../../../src/action/tracking.ts"],"names":[],"mappings":";;;AAEA,wCAAiD;AAE1C,KAAK,UAAU,UAAU,CAC9B,OAAsB,EACtB,SAAoB,EACpB,IAA0B;IAE1B,MAAM,iBAAiB,GAAG,IAAA,8BAAoB,EAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,IAAI,iBAAiB,CAAC,UAAU,EAAE;QAChC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;KAC7D;IACD,OAAM;AACR,CAAC;AAVD,gCAUC;AAED,IAAY,SAcX;AAdD,WAAY,SAAS;IACnB,gDAAmC,CAAA;IACnC,oDAAuC,CAAA;IACvC,4CAA+B,CAAA;IAC/B,qCAAwB,CAAA;IACxB,+BAAkB,CAAA;IAClB,mCAAsB,CAAA;IACtB,iCAAoB,CAAA;IACpB,wCAA2B,CAAA;IAC3B,oDAAuC,CAAA;IACvC,kCAAqB,CAAA;IACrB,6CAAgC,CAAA;IAChC,+CAAkC,CAAA;IAClC,yCAA4B,CAAA;AAC9B,CAAC,EAdW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAcpB"}
|
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getNodeByUserInput = void 0;
|
|
4
|
-
const types_1 = require("@botonic/plugin-hubtype-analytics/lib/cjs/types");
|
|
5
4
|
const intent_1 = require("./intent");
|
|
6
5
|
const keyword_1 = require("./keyword");
|
|
7
6
|
const tracking_1 = require("./tracking");
|
|
8
7
|
async function getNodeByUserInput(cmsApi, locale, request) {
|
|
9
8
|
if (request.session.is_first_interaction) {
|
|
10
9
|
const startNode = cmsApi.getStartNode();
|
|
11
|
-
|
|
12
|
-
event_type: types_1.EventName.botStart,
|
|
13
|
-
};
|
|
14
|
-
await (0, tracking_1.trackEvent)(request, event);
|
|
10
|
+
await (0, tracking_1.trackEvent)(request, tracking_1.EventName.botStart);
|
|
15
11
|
return startNode;
|
|
16
12
|
}
|
|
17
13
|
if (request.input.data) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-input.js","sourceRoot":"","sources":["../../../src/action/user-input.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"user-input.js","sourceRoot":"","sources":["../../../src/action/user-input.ts"],"names":[],"mappings":";;;AAIA,qCAA0C;AAC1C,uCAA4C;AAC5C,yCAAkD;AAE3C,KAAK,UAAU,kBAAkB,CACtC,MAAsB,EACtB,MAAc,EACd,OAAsB;IAEtB,IAAI,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE;QACxC,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,CAAA;QACvC,MAAM,IAAA,qBAAU,EAAC,OAAO,EAAE,oBAAS,CAAC,QAAQ,CAAC,CAAA;QAC7C,OAAO,SAAS,CAAA;KACjB;IAED,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;QACtB,MAAM,YAAY,GAAG,MAAM,IAAA,wBAAe,EAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QACnE,IAAI,YAAY;YAAE,OAAO,YAAY,CAAA;QAErC,MAAM,WAAW,GAAG,MAAM,IAAA,0BAAgB,EACxC,MAAM,EACN,MAAM,EACN,OAAO,EACP,OAAO,CAAC,KAAK,CAAC,IAAI,CACnB,CAAA;QACD,IAAI,WAAW;YAAE,OAAO,WAAW,CAAA;KACpC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAxBD,gDAwBC"}
|
package/lib/cjs/api.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { Input } from '@botonic/core';
|
|
1
|
+
import { Input, PluginPreRequest } from '@botonic/core';
|
|
2
2
|
import { HtFlowBuilderData, HtIntentNode, HtNodeComponent, HtNodeWithContent } from './content-fields/hubtype-fields';
|
|
3
3
|
import { FlowBuilderApiOptions } from './types';
|
|
4
4
|
export declare class FlowBuilderApi {
|
|
5
5
|
url: string;
|
|
6
6
|
flow: HtFlowBuilderData;
|
|
7
|
+
request: PluginPreRequest;
|
|
7
8
|
private constructor();
|
|
8
9
|
static create(options: FlowBuilderApiOptions): Promise<FlowBuilderApi>;
|
|
9
10
|
private getFlow;
|
package/lib/cjs/api.js
CHANGED
|
@@ -11,6 +11,7 @@ class FlowBuilderApi {
|
|
|
11
11
|
const newApi = new FlowBuilderApi();
|
|
12
12
|
newApi.url = options.url;
|
|
13
13
|
newApi.flow = (_a = options.flow) !== null && _a !== void 0 ? _a : (await newApi.getFlow(options.accessToken));
|
|
14
|
+
newApi.request = options.request;
|
|
14
15
|
return newApi;
|
|
15
16
|
}
|
|
16
17
|
async getFlow(token) {
|
package/lib/cjs/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":";;;;AACA,0DAAyB;AAEzB,oEAUwC;AAGxC,MAAa,cAAc;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.FlowHandoff = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const core_1 = require("@botonic/core");
|
|
6
|
-
const types_1 = require("@botonic/plugin-hubtype-analytics/lib/cjs/types");
|
|
7
6
|
const react_1 = tslib_1.__importDefault(require("react"));
|
|
8
7
|
const tracking_1 = require("../action/tracking");
|
|
9
8
|
const conditional_queue_status_1 = require("../functions/conditional-queue-status");
|
|
@@ -39,15 +38,13 @@ class FlowHandoff extends content_fields_base_1.ContentFieldsBase {
|
|
|
39
38
|
}
|
|
40
39
|
if (this.queue) {
|
|
41
40
|
const availabilityData = await (0, conditional_queue_status_1.getQueueAvailability)(this.queue.id);
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
threshold_reached: availabilityData.availability_threshold_waiting_cases > 0,
|
|
48
|
-
},
|
|
41
|
+
const eventArgs = {
|
|
42
|
+
queue_open: availabilityData.open,
|
|
43
|
+
queue_id: this.queue.id,
|
|
44
|
+
available_agents: availabilityData.available_agents > 0,
|
|
45
|
+
threshold_reached: availabilityData.availability_threshold_waiting_cases > 0,
|
|
49
46
|
};
|
|
50
|
-
await (0, tracking_1.trackEvent)(request,
|
|
47
|
+
await (0, tracking_1.trackEvent)(request, tracking_1.EventName.handoffSuccess, eventArgs);
|
|
51
48
|
handOffBuilder.withQueue(this.queue.id);
|
|
52
49
|
await handOffBuilder.handOff();
|
|
53
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow-handoff.js","sourceRoot":"","sources":["../../../src/content-fields/flow-handoff.tsx"],"names":[],"mappings":";;;;AAAA,wCAA8C;
|
|
1
|
+
{"version":3,"file":"flow-handoff.js","sourceRoot":"","sources":["../../../src/content-fields/flow-handoff.tsx"],"names":[],"mappings":";;;;AAAA,wCAA8C;AAE9C,0DAAyB;AAEzB,iDAA0D;AAE1D,oFAA4E;AAC5E,+DAAyD;AAmBzD,MAAa,WAAY,SAAQ,uCAAiB;IAMhD,MAAM,CAAC,cAAc,CACnB,UAAyB,EACzB,MAAc,EACd,MAAsB;QAEtB,MAAM,UAAU,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QACjD,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAA;QACjC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC1E,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAClD,UAAU,EACV,MAAM,EACN,MAAM,CACP,CAAA;QACD,UAAU,CAAC,iBAAiB,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,CAAA;QAEjE,OAAO,UAAU,CAAA;IACnB,CAAC;IAEO,MAAM,CAAC,kBAAkB,CAC/B,UAAyB,EACzB,MAAc,EACd,MAAsB;;QAEtB,IAAI,MAAA,UAAU,CAAC,MAAM,0CAAE,EAAE,EAAE;YACzB,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAC1C,MAAA,UAAU,CAAC,MAAM,0CAAE,EAAE,CACtB,CAAA;YACD,IAAI,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE;gBAAE,OAAO,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE,CAAA;SACxD;QAED,MAAM,SAAS,GAAG,MAAA,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAC/C,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CACrC,0CAAE,EAAE,CAAA;QAEL,IAAI,CAAC,SAAS;YAAE,OAAO,SAAS,CAAA;QAEhC,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAEnD,OAAQ,aAA+B,CAAC,OAAO,CAAC,OAAO,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAsB;QACpC,aAAa;QACb,MAAM,cAAc,GAAG,IAAI,qBAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC1D,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAC9D,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,cAAc,CAAC,mBAAmB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;SACzD;QACD,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,MAAM,gBAAgB,GAAG,MAAM,IAAA,+CAAoB,EAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAClE,MAAM,SAAS,GAAG;gBAChB,UAAU,EAAE,gBAAgB,CAAC,IAAI;gBACjC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;gBACvB,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB,GAAG,CAAC;gBACvD,iBAAiB,EACf,gBAAgB,CAAC,oCAAoC,GAAG,CAAC;aAC5D,CAAA;YACD,MAAM,IAAA,qBAAU,EAAC,OAAO,EAAE,oBAAS,CAAC,cAAc,EAAE,SAAS,CAAC,CAAA;YAE9D,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACvC,MAAM,cAAc,CAAC,OAAO,EAAE,CAAA;SAC/B;IACH,CAAC;IAED,SAAS;QACP,OAAO,6DAAK,CAAA;IACd,CAAC;CACF;AAzED,kCAyEC"}
|
|
@@ -9,5 +9,6 @@ export declare class FlowText extends ContentFieldsBase {
|
|
|
9
9
|
buttons: FlowButton[];
|
|
10
10
|
buttonStyle: HtButtonStyle;
|
|
11
11
|
static fromHubtypeCMS(cmsText: HtTextNode, locale: string, cmsApi: FlowBuilderApi): FlowText;
|
|
12
|
+
static replaceVariables(text: string, extraData?: Record<string, any>): string;
|
|
12
13
|
toBotonic(id: string): JSX.Element;
|
|
13
14
|
}
|
|
@@ -4,6 +4,7 @@ exports.FlowText = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const react_1 = require("@botonic/react");
|
|
6
6
|
const react_2 = tslib_1.__importDefault(require("react"));
|
|
7
|
+
const constants_1 = require("../constants");
|
|
7
8
|
const content_fields_base_1 = require("./content-fields-base");
|
|
8
9
|
const flow_button_1 = require("./flow-button");
|
|
9
10
|
const hubtype_fields_1 = require("./hubtype-fields");
|
|
@@ -19,10 +20,23 @@ class FlowText extends content_fields_base_1.ContentFieldsBase {
|
|
|
19
20
|
const newText = new FlowText(cmsText.id);
|
|
20
21
|
newText.code = cmsText.code;
|
|
21
22
|
newText.buttonStyle = cmsText.content.buttons_style || hubtype_fields_1.HtButtonStyle.BUTTON;
|
|
22
|
-
newText.text = this.getTextByLocale(locale, cmsText.content.text);
|
|
23
|
+
newText.text = this.replaceVariables(this.getTextByLocale(locale, cmsText.content.text), cmsApi.request.session.user.extra_data);
|
|
23
24
|
newText.buttons = cmsText.content.buttons.map(button => flow_button_1.FlowButton.fromHubtypeCMS(button, locale, cmsApi));
|
|
24
25
|
return newText;
|
|
25
26
|
}
|
|
27
|
+
static replaceVariables(text, extraData) {
|
|
28
|
+
const matches = text.match(constants_1.VARIABLE_REGEX);
|
|
29
|
+
let replacedText = text;
|
|
30
|
+
if (matches && extraData) {
|
|
31
|
+
matches.forEach(match => {
|
|
32
|
+
var _a;
|
|
33
|
+
const variable = match.slice(1, -1);
|
|
34
|
+
const value = (_a = extraData[variable]) !== null && _a !== void 0 ? _a : match;
|
|
35
|
+
replacedText = replacedText.replace(match, value);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
return replacedText;
|
|
39
|
+
}
|
|
26
40
|
toBotonic(id) {
|
|
27
41
|
return (react_2.default.createElement(react_1.Text, { key: id },
|
|
28
42
|
this.text,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow-text.js","sourceRoot":"","sources":["../../../src/content-fields/flow-text.tsx"],"names":[],"mappings":";;;;AAAA,0CAAqC;AACrC,0DAAyB;AAGzB,+DAAyD;AACzD,+CAA0C;AAC1C,qDAA4D;AAE5D,MAAa,QAAS,SAAQ,uCAAiB;IAA/C;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,SAAI,GAAG,EAAE,CAAA;QACT,YAAO,GAAiB,EAAE,CAAA;QAC1B,gBAAW,GAAG,8BAAa,CAAC,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"flow-text.js","sourceRoot":"","sources":["../../../src/content-fields/flow-text.tsx"],"names":[],"mappings":";;;;AAAA,0CAAqC;AACrC,0DAAyB;AAGzB,4CAA6C;AAC7C,+DAAyD;AACzD,+CAA0C;AAC1C,qDAA4D;AAE5D,MAAa,QAAS,SAAQ,uCAAiB;IAA/C;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,SAAI,GAAG,EAAE,CAAA;QACT,YAAO,GAAiB,EAAE,CAAA;QAC1B,gBAAW,GAAG,8BAAa,CAAC,MAAM,CAAA;IAgD3C,CAAC;IA9CC,MAAM,CAAC,cAAc,CACnB,OAAmB,EACnB,MAAc,EACd,MAAsB;QAEtB,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACxC,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QAC3B,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,IAAI,8BAAa,CAAC,MAAM,CAAA;QAC3E,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAClC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAClD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CACvC,CAAA;QACD,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CACrD,wBAAU,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAClD,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,IAAY,EACZ,SAA+B;QAE/B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,0BAAc,CAAC,CAAA;QAE1C,IAAI,YAAY,GAAG,IAAI,CAAA;QACvB,IAAI,OAAO,IAAI,SAAS,EAAE;YACxB,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;;gBACtB,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBACnC,MAAM,KAAK,GAAG,MAAA,SAAS,CAAC,QAAQ,CAAC,mCAAI,KAAK,CAAA;gBAC1C,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YACnD,CAAC,CAAC,CAAA;SACH;QAED,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,8BAAC,YAAI,IAAC,GAAG,EAAE,EAAE;YACV,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CACxC,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CACnD,CACI,CACR,CAAA;IACH,CAAC;CACF;AApDD,4BAoDC"}
|
package/lib/cjs/index.d.ts
CHANGED
|
@@ -23,3 +23,5 @@ export default class BotonicPluginFlowBuilder implements Plugin {
|
|
|
23
23
|
callFunction(functionNode: HtFunctionNode, locale: string): Promise<string>;
|
|
24
24
|
}
|
|
25
25
|
export * from './action';
|
|
26
|
+
export * from './content-fields';
|
|
27
|
+
export { BotonicPluginFlowBuilderOptions } from './types';
|
package/lib/cjs/index.js
CHANGED
|
@@ -23,6 +23,7 @@ class BotonicPluginFlowBuilder {
|
|
|
23
23
|
url: this.flowUrl,
|
|
24
24
|
flow: this.flow,
|
|
25
25
|
accessToken: this.getAccessToken(request.session),
|
|
26
|
+
request: this.currentRequest,
|
|
26
27
|
});
|
|
27
28
|
}
|
|
28
29
|
getContentsByCode(code, locale, prevContents) {
|
|
@@ -87,4 +88,5 @@ class BotonicPluginFlowBuilder {
|
|
|
87
88
|
}
|
|
88
89
|
exports.default = BotonicPluginFlowBuilder;
|
|
89
90
|
tslib_1.__exportStar(require("./action"), exports);
|
|
91
|
+
tslib_1.__exportStar(require("./content-fields"), exports);
|
|
90
92
|
//# sourceMappingURL=index.js.map
|
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAGA,+BAAsC;AACtC,qDAQyB;AACzB,oEAMwC;AACxC,2CAA+C;AAE/C,mCAA+C;AAE/C,MAAqB,wBAAwB;IAc3C,YAAqB,OAAwC;QAAxC,YAAO,GAAP,OAAO,CAAiC;QAC3D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAC9B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACxB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;QAClC,IAAI,CAAC,cAAc,GAAG,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAA;QACpD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;QACpC,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,EAAE,CAAA;QACrD,IAAI,CAAC,SAAS,mCAAQ,6BAAiB,GAAK,eAAe,CAAE,CAAA;IAC/D,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAyB;QACjC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAA;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,oBAAc,CAAC,MAAM,CAAC;YACxC,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Session } from '@botonic/core';
|
|
1
|
+
import { PluginPreRequest, Session } from '@botonic/core';
|
|
2
2
|
import { ActionRequest } from '@botonic/react';
|
|
3
3
|
import { HtFlowBuilderData } from './content-fields/hubtype-fields';
|
|
4
4
|
export interface BotonicPluginFlowBuilderOptions {
|
|
@@ -13,6 +13,7 @@ export interface FlowBuilderApiOptions {
|
|
|
13
13
|
url: string;
|
|
14
14
|
flow?: HtFlowBuilderData;
|
|
15
15
|
accessToken: string;
|
|
16
|
+
request: PluginPreRequest;
|
|
16
17
|
}
|
|
17
18
|
export declare enum ProcessEnvNodeEnvs {
|
|
18
19
|
PRODUCTION = "production",
|
package/lib/cjs/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAyBA,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,iDAA2B,CAAA;AAC7B,CAAC,EAHW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAG7B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ActionRequest } from '@botonic/react';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { FlowContent } from '../content-fields';
|
|
4
|
-
type FlowBuilderActionProps = {
|
|
4
|
+
export type FlowBuilderActionProps = {
|
|
5
5
|
contents: FlowContent[];
|
|
6
6
|
};
|
|
7
7
|
export declare class FlowBuilderAction extends React.Component<FlowBuilderActionProps> {
|
|
@@ -20,4 +20,3 @@ export declare class FlowBuilderAction extends React.Component<FlowBuilderAction
|
|
|
20
20
|
export declare class FlowBuilderMultichannelAction extends FlowBuilderAction {
|
|
21
21
|
render(): JSX.Element | JSX.Element[];
|
|
22
22
|
}
|
|
23
|
-
export {};
|
package/lib/esm/action/index.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { EventName, } from '@botonic/plugin-hubtype-analytics/lib/cjs/types';
|
|
2
1
|
import { Multichannel, RequestContext } from '@botonic/react';
|
|
3
2
|
import React from 'react';
|
|
4
|
-
import { SOURCE_INFO_SEPARATOR
|
|
5
|
-
import { FlowHandoff
|
|
3
|
+
import { SOURCE_INFO_SEPARATOR } from '../constants';
|
|
4
|
+
import { FlowHandoff } from '../content-fields';
|
|
6
5
|
import { getFlowBuilderPlugin } from '../helpers';
|
|
7
|
-
import { trackEvent } from './tracking';
|
|
6
|
+
import { EventName, trackEvent } from './tracking';
|
|
8
7
|
import { getNodeByUserInput } from './user-input';
|
|
9
8
|
export class FlowBuilderAction extends React.Component {
|
|
10
9
|
static async botonicInit(request) {
|
|
@@ -15,15 +14,8 @@ export class FlowBuilderAction extends React.Component {
|
|
|
15
14
|
const handoffContent = contents.find(content => content instanceof FlowHandoff);
|
|
16
15
|
if (handoffContent)
|
|
17
16
|
await handoffContent.doHandoff(request);
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
if (content instanceof FlowText) {
|
|
21
|
-
console.log(content.text);
|
|
22
|
-
content.text = replaceVariables(content.text, request.session.user.extra_data);
|
|
23
|
-
}
|
|
24
|
-
return content;
|
|
25
|
-
});
|
|
26
|
-
return { contents: contentsWithVariables };
|
|
17
|
+
const contentsToRender = contents.filter(content => content instanceof FlowHandoff ? false : true);
|
|
18
|
+
return { contents: contentsToRender };
|
|
27
19
|
}
|
|
28
20
|
render() {
|
|
29
21
|
const { contents } = this.props;
|
|
@@ -44,13 +36,10 @@ async function getTargetNode(cmsApi, locale, request) {
|
|
|
44
36
|
? await getNodeByUserInput(cmsApi, locale, request)
|
|
45
37
|
: cmsApi.getNodeById(contentId);
|
|
46
38
|
if (targetNode) {
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
event_data: {
|
|
50
|
-
faq_name: targetNode.code,
|
|
51
|
-
},
|
|
39
|
+
const eventArgs = {
|
|
40
|
+
faq_name: targetNode.code,
|
|
52
41
|
};
|
|
53
|
-
await trackEvent(request,
|
|
42
|
+
await trackEvent(request, EventName.botFaq, eventArgs);
|
|
54
43
|
return targetNode;
|
|
55
44
|
}
|
|
56
45
|
return await getFallbackNode(cmsApi, request);
|
|
@@ -59,24 +48,10 @@ async function getFallbackNode(cmsApi, request) {
|
|
|
59
48
|
if (!request.session.user.extra_data) {
|
|
60
49
|
request.session.user.extra_data = { isFirstFallbackOption: true };
|
|
61
50
|
}
|
|
62
|
-
const isFirstFallbackOption = request.session.user.extra_data.isFirstFallbackOption;
|
|
51
|
+
const isFirstFallbackOption = !!request.session.user.extra_data.isFirstFallbackOption;
|
|
63
52
|
const fallbackNode = cmsApi.getFallbackNode(isFirstFallbackOption);
|
|
64
53
|
request.session.user.extra_data.isFirstFallbackOption = !isFirstFallbackOption;
|
|
65
|
-
|
|
66
|
-
event_type: EventName.fallback,
|
|
67
|
-
};
|
|
68
|
-
await trackEvent(request, event);
|
|
54
|
+
await trackEvent(request, EventName.fallback);
|
|
69
55
|
return fallbackNode;
|
|
70
56
|
}
|
|
71
|
-
function replaceVariables(text, extraData) {
|
|
72
|
-
const matches = text.match(VARIABLE_REGEX);
|
|
73
|
-
if (matches && extraData) {
|
|
74
|
-
matches.forEach(match => {
|
|
75
|
-
const variable = match.slice(1, -1);
|
|
76
|
-
const value = extraData[variable] ? extraData[variable] : match;
|
|
77
|
-
text = text.replace(match, value);
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
return text;
|
|
81
|
-
}
|
|
82
57
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/action/index.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/action/index.tsx"],"names":[],"mappings":"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"}
|
package/lib/esm/action/intent.js
CHANGED
|
@@ -1,23 +1,19 @@
|
|
|
1
|
-
import { EventName, } from '
|
|
2
|
-
import { trackEvent } from './tracking';
|
|
1
|
+
import { EventName, trackEvent } from './tracking';
|
|
3
2
|
export async function getNodeByIntent(cmsApi, locale, request) {
|
|
4
3
|
var _a;
|
|
5
4
|
const intentNode = cmsApi.getIntentNode(request.input, locale);
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
confidence: request.input.confidence,
|
|
11
|
-
confidence_successful: true,
|
|
12
|
-
},
|
|
5
|
+
const eventArgs = {
|
|
6
|
+
intent: request.input.intent,
|
|
7
|
+
confidence: request.input.confidence,
|
|
8
|
+
confidence_successful: true,
|
|
13
9
|
};
|
|
14
10
|
if (isIntentValid(intentNode, request, cmsApi) && ((_a = intentNode === null || intentNode === void 0 ? void 0 : intentNode.target) === null || _a === void 0 ? void 0 : _a.id)) {
|
|
15
|
-
await trackEvent(request,
|
|
11
|
+
await trackEvent(request, EventName.botAiModel, eventArgs);
|
|
16
12
|
return cmsApi.getNodeById(intentNode.target.id);
|
|
17
13
|
}
|
|
18
14
|
else {
|
|
19
|
-
|
|
20
|
-
await trackEvent(request,
|
|
15
|
+
eventArgs.confidence_successful = false;
|
|
16
|
+
await trackEvent(request, EventName.botAiModel, eventArgs);
|
|
21
17
|
return undefined;
|
|
22
18
|
}
|
|
23
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intent.js","sourceRoot":"","sources":["../../../src/action/intent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"intent.js","sourceRoot":"","sources":["../../../src/action/intent.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAElD,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAsB,EACtB,MAAc,EACd,OAAsB;;IAEtB,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAC9D,MAAM,SAAS,GAAG;QAChB,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAgB;QACtC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAoB;QAC9C,qBAAqB,EAAE,IAAI;KAC5B,CAAA;IACD,IAAI,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,KAAI,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,0CAAE,EAAE,CAAA,EAAE;QACxE,MAAM,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QAC1D,OAAO,MAAM,CAAC,WAAW,CAAoB,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;KACnE;SAAM;QACL,SAAS,CAAC,qBAAqB,GAAG,KAAK,CAAA;QACvC,MAAM,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;QAC1D,OAAO,SAAS,CAAA;KACjB;AACH,CAAC;AAED,SAAS,aAAa,CACpB,UAAoC,EACpC,OAAsB,EACtB,MAAsB;IAEtB,OAAO,CACL,UAAU;QACV,OAAO,CAAC,KAAK,CAAC,UAAU;QACxB,MAAM,CAAC,yBAAyB,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CACvE,CAAA;AACH,CAAC"}
|