@botonic/plugin-flow-builder 0.22.4-alpha.2 → 0.22.4-alpha.3

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.
@@ -15,13 +15,10 @@ class FlowBuilderAction extends react_2.default.Component {
15
15
  const locale = flowBuilderPlugin.getLocale(request.session);
16
16
  const targetNode = await getTargetNode(flowBuilderPlugin.cmsApi, locale, request);
17
17
  const contents = await flowBuilderPlugin.getContentsByNode(targetNode, locale);
18
- const renderContents = contents.filter(async (content) => {
19
- if (content instanceof content_fields_1.FlowHandoff) {
20
- await content.doHandoff(request);
21
- return false;
22
- }
23
- return true;
24
- });
18
+ const handoffContent = contents.find(content => content instanceof content_fields_1.FlowHandoff);
19
+ if (handoffContent)
20
+ await handoffContent.doHandoff(request);
21
+ const renderContents = contents.filter(content => content instanceof content_fields_1.FlowHandoff ? false : true);
25
22
  return { contents: renderContents };
26
23
  }
27
24
  render() {
@@ -40,13 +37,9 @@ class FlowBuilderMultichannelAction extends FlowBuilderAction {
40
37
  exports.FlowBuilderMultichannelAction = FlowBuilderMultichannelAction;
41
38
  async function getTargetNode(cmsApi, locale, request) {
42
39
  const contentId = request.input.payload;
43
- let targetNode;
44
- if (!contentId) {
45
- targetNode = await (0, user_input_1.getNodeByUserInput)(cmsApi, locale, request);
46
- }
47
- else {
48
- targetNode = cmsApi.getNodeById(contentId);
49
- }
40
+ const targetNode = !contentId
41
+ ? await (0, user_input_1.getNodeByUserInput)(cmsApi, locale, request)
42
+ : cmsApi.getNodeById(contentId);
50
43
  if (targetNode) {
51
44
  const event = {
52
45
  event_type: types_1.EventName.botFaq,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/action/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/action/index.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  import { ActionRequest } from '@botonic/react';
2
2
  import { FlowBuilderApi } from '../api';
3
- export declare function getNodeByKeyword(cmsApi: FlowBuilderApi, locale: string, request: ActionRequest, userInput: string): Promise<import("../content-fields/hubtype-fields").HtNodeWithContent | undefined>;
3
+ import { HtNodeWithContent } from '../content-fields/hubtype-fields';
4
+ export declare function getNodeByKeyword(cmsApi: FlowBuilderApi, locale: string, request: ActionRequest, userInput: string): Promise<HtNodeWithContent | undefined>;
@@ -5,17 +5,17 @@ const types_1 = require("@botonic/plugin-hubtype-analytics/lib/cjs/types");
5
5
  const tracking_1 = require("./tracking");
6
6
  async function getNodeByKeyword(cmsApi, locale, request, userInput) {
7
7
  const keywordNode = cmsApi.getNodeByKeyword(userInput, locale);
8
+ if (!keywordNode) {
9
+ return undefined;
10
+ }
8
11
  const eventBotKeywordModel = {
9
12
  event_type: types_1.EventName.botKeywordsModel,
10
13
  event_data: {
11
14
  confidence_successful: true,
12
15
  },
13
16
  };
14
- if (keywordNode) {
15
- await (0, tracking_1.trackEvent)(request, eventBotKeywordModel);
16
- return keywordNode;
17
- }
18
- return undefined;
17
+ await (0, tracking_1.trackEvent)(request, eventBotKeywordModel);
18
+ return keywordNode;
19
19
  }
20
20
  exports.getNodeByKeyword = getNodeByKeyword;
21
21
  //# sourceMappingURL=keyword.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/action/keyword.ts"],"names":[],"mappings":";;;AAAA,2EAGwD;AAIxD,yCAAuC;AAEhC,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,MAAM,oBAAoB,GAAyB;QACjD,UAAU,EAAE,iBAAS,CAAC,gBAAgB;QACtC,UAAU,EAAE;YACV,qBAAqB,EAAE,IAAI;SAC5B;KACF,CAAA;IACD,IAAI,WAAW,EAAE;QACf,MAAM,IAAA,qBAAU,EAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;QAC/C,OAAO,WAAW,CAAA;KACnB;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAlBD,4CAkBC"}
1
+ {"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/action/keyword.ts"],"names":[],"mappings":";;;AAAA,2EAGwD;AAKxD,yCAAuC;AAEhC,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,oBAAoB,GAAyB;QACjD,UAAU,EAAE,iBAAS,CAAC,gBAAgB;QACtC,UAAU,EAAE;YACV,qBAAqB,EAAE,IAAI;SAC5B;KACF,CAAA;IACD,MAAM,IAAA,qBAAU,EAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;IAC/C,OAAO,WAAW,CAAA;AACpB,CAAC;AAlBD,4CAkBC"}
@@ -11,13 +11,10 @@ export class FlowBuilderAction extends React.Component {
11
11
  const locale = flowBuilderPlugin.getLocale(request.session);
12
12
  const targetNode = await getTargetNode(flowBuilderPlugin.cmsApi, locale, request);
13
13
  const contents = await flowBuilderPlugin.getContentsByNode(targetNode, locale);
14
- const renderContents = contents.filter(async (content) => {
15
- if (content instanceof FlowHandoff) {
16
- await content.doHandoff(request);
17
- return false;
18
- }
19
- return true;
20
- });
14
+ const handoffContent = contents.find(content => content instanceof FlowHandoff);
15
+ if (handoffContent)
16
+ await handoffContent.doHandoff(request);
17
+ const renderContents = contents.filter(content => content instanceof FlowHandoff ? false : true);
21
18
  return { contents: renderContents };
22
19
  }
23
20
  render() {
@@ -34,13 +31,9 @@ export class FlowBuilderMultichannelAction extends FlowBuilderAction {
34
31
  }
35
32
  async function getTargetNode(cmsApi, locale, request) {
36
33
  const contentId = request.input.payload;
37
- let targetNode;
38
- if (!contentId) {
39
- targetNode = await getNodeByUserInput(cmsApi, locale, request);
40
- }
41
- else {
42
- targetNode = cmsApi.getNodeById(contentId);
43
- }
34
+ const targetNode = !contentId
35
+ ? await getNodeByUserInput(cmsApi, locale, request)
36
+ : cmsApi.getNodeById(contentId);
44
37
  if (targetNode) {
45
38
  const event = {
46
39
  event_type: EventName.botFaq,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/action/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/action/index.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  import { ActionRequest } from '@botonic/react';
2
2
  import { FlowBuilderApi } from '../api';
3
- export declare function getNodeByKeyword(cmsApi: FlowBuilderApi, locale: string, request: ActionRequest, userInput: string): Promise<import("../content-fields/hubtype-fields").HtNodeWithContent | undefined>;
3
+ import { HtNodeWithContent } from '../content-fields/hubtype-fields';
4
+ export declare function getNodeByKeyword(cmsApi: FlowBuilderApi, locale: string, request: ActionRequest, userInput: string): Promise<HtNodeWithContent | undefined>;
@@ -2,16 +2,16 @@ import { EventName, } from '@botonic/plugin-hubtype-analytics/lib/cjs/types';
2
2
  import { trackEvent } from './tracking';
3
3
  export async function getNodeByKeyword(cmsApi, locale, request, userInput) {
4
4
  const keywordNode = cmsApi.getNodeByKeyword(userInput, locale);
5
+ if (!keywordNode) {
6
+ return undefined;
7
+ }
5
8
  const eventBotKeywordModel = {
6
9
  event_type: EventName.botKeywordsModel,
7
10
  event_data: {
8
11
  confidence_successful: true,
9
12
  },
10
13
  };
11
- if (keywordNode) {
12
- await trackEvent(request, eventBotKeywordModel);
13
- return keywordNode;
14
- }
15
- return undefined;
14
+ await trackEvent(request, eventBotKeywordModel);
15
+ return keywordNode;
16
16
  }
17
17
  //# sourceMappingURL=keyword.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/action/keyword.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,GACV,MAAM,iDAAiD,CAAA;AAIxD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEvC,MAAM,CAAC,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,MAAM,oBAAoB,GAAyB;QACjD,UAAU,EAAE,SAAS,CAAC,gBAAgB;QACtC,UAAU,EAAE;YACV,qBAAqB,EAAE,IAAI;SAC5B;KACF,CAAA;IACD,IAAI,WAAW,EAAE;QACf,MAAM,UAAU,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;QAC/C,OAAO,WAAW,CAAA;KACnB;IACD,OAAO,SAAS,CAAA;AAClB,CAAC"}
1
+ {"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/action/keyword.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,GACV,MAAM,iDAAiD,CAAA;AAKxD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEvC,MAAM,CAAC,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,oBAAoB,GAAyB;QACjD,UAAU,EAAE,SAAS,CAAC,gBAAgB;QACtC,UAAU,EAAE;YACV,qBAAqB,EAAE,IAAI;SAC5B;KACF,CAAA;IACD,MAAM,UAAU,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;IAC/C,OAAO,WAAW,CAAA;AACpB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/plugin-flow-builder",
3
- "version": "0.22.4-alpha.2",
3
+ "version": "0.22.4-alpha.3",
4
4
  "main": "./lib/cjs/index.js",
5
5
  "module": "./lib/esm/index.js",
6
6
  "description": "Use Flow Builder to show your contents",
@@ -37,13 +37,14 @@ export class FlowBuilderAction extends React.Component<FlowBuilderActionProps> {
37
37
  locale
38
38
  )
39
39
 
40
- const renderContents = contents.filter(async content => {
41
- if (content instanceof FlowHandoff) {
42
- await content.doHandoff(request)
43
- return false
44
- }
45
- return true
46
- })
40
+ const handoffContent = contents.find(
41
+ content => content instanceof FlowHandoff
42
+ ) as FlowHandoff
43
+ if (handoffContent) await handoffContent.doHandoff(request)
44
+
45
+ const renderContents = contents.filter(content =>
46
+ content instanceof FlowHandoff ? false : true
47
+ )
47
48
 
48
49
  return { contents: renderContents }
49
50
  }
@@ -71,12 +72,10 @@ async function getTargetNode(
71
72
  request: ActionRequest
72
73
  ) {
73
74
  const contentId = request.input.payload
74
- let targetNode: HtNodeWithContent | undefined
75
- if (!contentId) {
76
- targetNode = await getNodeByUserInput(cmsApi, locale, request)
77
- } else {
78
- targetNode = cmsApi.getNodeById(contentId) as HtNodeWithContent
79
- }
75
+ const targetNode = !contentId
76
+ ? await getNodeByUserInput(cmsApi, locale, request)
77
+ : (cmsApi.getNodeById(contentId) as HtNodeWithContent)
78
+
80
79
  if (targetNode) {
81
80
  const event: EventBotFaq = {
82
81
  event_type: EventName.botFaq,
@@ -5,6 +5,7 @@ import {
5
5
  import { ActionRequest } from '@botonic/react'
6
6
 
7
7
  import { FlowBuilderApi } from '../api'
8
+ import { HtNodeWithContent } from '../content-fields/hubtype-fields'
8
9
  import { trackEvent } from './tracking'
9
10
 
10
11
  export async function getNodeByKeyword(
@@ -12,17 +13,17 @@ export async function getNodeByKeyword(
12
13
  locale: string,
13
14
  request: ActionRequest,
14
15
  userInput: string
15
- ) {
16
+ ): Promise<HtNodeWithContent | undefined> {
16
17
  const keywordNode = cmsApi.getNodeByKeyword(userInput, locale)
18
+ if (!keywordNode) {
19
+ return undefined
20
+ }
17
21
  const eventBotKeywordModel: EventBotKeywordModel = {
18
22
  event_type: EventName.botKeywordsModel,
19
23
  event_data: {
20
24
  confidence_successful: true,
21
25
  },
22
26
  }
23
- if (keywordNode) {
24
- await trackEvent(request, eventBotKeywordModel)
25
- return keywordNode
26
- }
27
- return undefined
27
+ await trackEvent(request, eventBotKeywordModel)
28
+ return keywordNode
28
29
  }
@@ -75,7 +75,7 @@ export class FlowHandoff extends ContentFieldsBase {
75
75
  return (actionPayload as HtPayloadNode).content.payload
76
76
  }
77
77
 
78
- async doHandoff(request: ActionRequest) {
78
+ async doHandoff(request: ActionRequest): Promise<void> {
79
79
  // @ts-ignore
80
80
  const handOffBuilder = new HandOffBuilder(request.session)
81
81
  handOffBuilder.withAutoAssignOnWaiting(this.handoffAutoAssign)