@botonic/plugin-flow-builder 0.22.1 → 0.22.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.
Files changed (48) hide show
  1. package/lib/cjs/action.js +3 -7
  2. package/lib/cjs/action.js.map +1 -1
  3. package/lib/cjs/api.d.ts +5 -4
  4. package/lib/cjs/api.js +17 -20
  5. package/lib/cjs/api.js.map +1 -1
  6. package/lib/cjs/content-fields/flow-button.js +2 -2
  7. package/lib/cjs/content-fields/flow-button.js.map +1 -1
  8. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +1 -1
  9. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +1 -1
  10. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +1 -4
  11. package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +1 -1
  12. package/lib/cjs/handoff.js +2 -2
  13. package/lib/cjs/handoff.js.map +1 -1
  14. package/lib/cjs/index.d.ts +3 -1
  15. package/lib/cjs/index.js +11 -9
  16. package/lib/cjs/index.js.map +1 -1
  17. package/lib/cjs/types.d.ts +1 -0
  18. package/lib/cjs/types.js.map +1 -1
  19. package/lib/esm/action.js +3 -7
  20. package/lib/esm/action.js.map +1 -1
  21. package/lib/esm/api.d.ts +5 -4
  22. package/lib/esm/api.js +17 -20
  23. package/lib/esm/api.js.map +1 -1
  24. package/lib/esm/content-fields/flow-button.js +2 -2
  25. package/lib/esm/content-fields/flow-button.js.map +1 -1
  26. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +1 -1
  27. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +1 -1
  28. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +1 -4
  29. package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +1 -1
  30. package/lib/esm/handoff.js +2 -2
  31. package/lib/esm/handoff.js.map +1 -1
  32. package/lib/esm/index.d.ts +3 -1
  33. package/lib/esm/index.js +11 -9
  34. package/lib/esm/index.js.map +1 -1
  35. package/lib/esm/types.d.ts +1 -0
  36. package/lib/esm/types.js.map +1 -1
  37. package/package.json +2 -2
  38. package/src/.DS_Store +0 -0
  39. package/src/action.tsx +2 -6
  40. package/src/api.ts +23 -22
  41. package/src/content-fields/.DS_Store +0 -0
  42. package/src/content-fields/flow-button.tsx +2 -2
  43. package/src/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.tsx +1 -1
  44. package/src/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.tsx +1 -1
  45. package/src/content-fields/whatsapp-button-list/flow-whatsapp-button-list.tsx +2 -4
  46. package/src/handoff.ts +5 -4
  47. package/src/index.ts +14 -9
  48. package/src/types.ts +1 -0
package/lib/cjs/action.js CHANGED
@@ -9,6 +9,7 @@ const helpers_1 = require("./helpers");
9
9
  let alternateFallbackMessage = false;
10
10
  class FlowBuilderAction extends react_2.default.Component {
11
11
  static async botonicInit(request) {
12
+ var _a;
12
13
  const flowBuilderPlugin = (0, helpers_1.getFlowBuilderPlugin)(request.plugins);
13
14
  const locale = flowBuilderPlugin.getLocale(request.session);
14
15
  const payload = request.input.payload;
@@ -19,18 +20,13 @@ class FlowBuilderAction extends react_2.default.Component {
19
20
  if (!payload && request.input.data) {
20
21
  const intentNode = flowBuilderPlugin.cmsApi.getNodeByIntent(request.input, locale);
21
22
  const keywordNode = flowBuilderPlugin.cmsApi.getNodeByKeyword(request.input.data, locale);
22
- if (intentNode) {
23
- targetNode = intentNode;
24
- }
25
- else if (keywordNode) {
26
- targetNode = keywordNode;
27
- }
23
+ targetNode = (_a = intentNode !== null && intentNode !== void 0 ? intentNode : keywordNode) !== null && _a !== void 0 ? _a : targetNode;
28
24
  }
29
25
  if (!targetNode) {
30
26
  targetNode = flowBuilderPlugin.cmsApi.getFallbackNode(alternateFallbackMessage);
31
27
  alternateFallbackMessage = !alternateFallbackMessage;
32
28
  }
33
- const { contents, handoffNode } = await flowBuilderPlugin.getContent(targetNode, locale);
29
+ const { contents, handoffNode } = await flowBuilderPlugin.getContents(targetNode, locale);
34
30
  if (flowBuilderPlugin.trackEvent) {
35
31
  // TODO: track all targets nodes?
36
32
  await flowBuilderPlugin.trackEvent(request, contents[0].code);
@@ -1 +1 @@
1
- {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/action.tsx"],"names":[],"mappings":";;;;AAAA,0CAA4E;AAC5E,0DAAyB;AAIzB,uCAAqC;AACrC,uCAAgD;AAOhD,IAAI,wBAAwB,GAAG,KAAK,CAAA;AACpC,MAAa,iBAAkB,SAAQ,eAAK,CAAC,SAAiC;IAG5E,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAsB;QAC7C,MAAM,iBAAiB,GAAG,IAAA,8BAAoB,EAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC3D,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;QACrC,IAAI,UAAU,GAA2C,OAAO,CAAA;QAEhE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE;YACpD,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAA;SACrD;QAED,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;YAClC,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,eAAe,CACzD,OAAO,CAAC,KAAK,EACb,MAAM,CACP,CAAA;YACD,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,CAC3D,OAAO,CAAC,KAAK,CAAC,IAAI,EAClB,MAAM,CACP,CAAA;YACD,IAAI,UAAU,EAAE;gBACd,UAAU,GAAG,UAAU,CAAA;aACxB;iBAAM,IAAI,WAAW,EAAE;gBACtB,UAAU,GAAG,WAAW,CAAA;aACzB;SACF;QAED,IAAI,CAAC,UAAU,EAAE;YACf,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,eAAe,CACnD,wBAAwB,CACzB,CAAA;YACD,wBAAwB,GAAG,CAAC,wBAAwB,CAAA;SACrD;QAED,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAClE,UAAU,EACV,MAAM,CACP,CAAA;QAED,IAAI,iBAAiB,CAAC,UAAU,EAAE;YAChC,iCAAiC;YACjC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;SAC9D;QAED,IAAI,WAAW;YAAE,MAAM,IAAA,mBAAS,EAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;QAE9D,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;IAClC,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC/B,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;IAC/D,CAAC;;AAtDH,8CAuDC;AAtDQ,6BAAW,GAAG,sBAAc,CAAA;AAwDrC,MAAa,6BAA8B,SAAQ,iBAAiB;IAClE,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC/B,OAAO,CACL,8BAAC,oBAAY,IAAC,IAAI,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,IACzC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAC1C,CAChB,CAAA;IACH,CAAC;CACF;AATD,sEASC"}
1
+ {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/action.tsx"],"names":[],"mappings":";;;;AAAA,0CAA4E;AAC5E,0DAAyB;AAIzB,uCAAqC;AACrC,uCAAgD;AAOhD,IAAI,wBAAwB,GAAG,KAAK,CAAA;AACpC,MAAa,iBAAkB,SAAQ,eAAK,CAAC,SAAiC;IAG5E,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAsB;;QAC7C,MAAM,iBAAiB,GAAG,IAAA,8BAAoB,EAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC3D,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;QACrC,IAAI,UAAU,GAA2C,OAAO,CAAA;QAEhE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE;YACpD,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAA;SACrD;QAED,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;YAClC,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,eAAe,CACzD,OAAO,CAAC,KAAK,EACb,MAAM,CACP,CAAA;YACD,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,CAC3D,OAAO,CAAC,KAAK,CAAC,IAAI,EAClB,MAAM,CACP,CAAA;YACD,UAAU,GAAG,MAAA,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,WAAW,mCAAI,UAAU,CAAA;SACrD;QAED,IAAI,CAAC,UAAU,EAAE;YACf,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,eAAe,CACnD,wBAAwB,CACzB,CAAA;YACD,wBAAwB,GAAG,CAAC,wBAAwB,CAAA;SACrD;QAED,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,iBAAiB,CAAC,WAAW,CACnE,UAAU,EACV,MAAM,CACP,CAAA;QAED,IAAI,iBAAiB,CAAC,UAAU,EAAE;YAChC,iCAAiC;YACjC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;SAC9D;QAED,IAAI,WAAW;YAAE,MAAM,IAAA,mBAAS,EAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;QAE9D,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;IAClC,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC/B,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;IAC/D,CAAC;;AAlDH,8CAmDC;AAlDQ,6BAAW,GAAG,sBAAc,CAAA;AAoDrC,MAAa,6BAA8B,SAAQ,iBAAiB;IAClE,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC/B,OAAO,CACL,8BAAC,oBAAY,IAAC,IAAI,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,IACzC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAC1C,CAChB,CAAA;IACH,CAAC;CACF;AATD,sEASC"}
package/lib/cjs/api.d.ts CHANGED
@@ -2,11 +2,12 @@ import { Input } from '@botonic/core';
2
2
  import { HtFlowBuilderData, HtNodeComponent, HtNodeWithContent } from './content-fields/hubtype-fields';
3
3
  import { FlowBuilderApiOptions } from './types';
4
4
  export declare class FlowBuilderApi {
5
- private readonly url;
5
+ url: string;
6
6
  flow: HtFlowBuilderData;
7
- constructor(options: FlowBuilderApiOptions);
8
- init(token: string): Promise<void>;
9
- getNode<T extends HtNodeComponent>(id: string): T;
7
+ private constructor();
8
+ static create(options: FlowBuilderApiOptions): Promise<FlowBuilderApi>;
9
+ private getFlow;
10
+ getNodeById<T extends HtNodeComponent>(id: string): T;
10
11
  getNodeByCode(code: string): HtNodeComponent;
11
12
  getStartNode(): HtNodeWithContent;
12
13
  getFallbackNode(alternate: boolean): HtNodeWithContent;
package/lib/cjs/api.js CHANGED
@@ -5,19 +5,21 @@ const tslib_1 = require("tslib");
5
5
  const axios_1 = tslib_1.__importDefault(require("axios"));
6
6
  const hubtype_fields_1 = require("./content-fields/hubtype-fields");
7
7
  class FlowBuilderApi {
8
- constructor(options) {
9
- this.url = options.url;
10
- if (options.flow) {
11
- this.flow = options.flow;
12
- }
8
+ constructor() { }
9
+ static async create(options) {
10
+ var _a;
11
+ const newApi = new FlowBuilderApi();
12
+ newApi.url = options.url;
13
+ newApi.flow = (_a = options.flow) !== null && _a !== void 0 ? _a : (await newApi.getFlow(options.accessToken));
14
+ return newApi;
13
15
  }
14
- async init(token) {
16
+ async getFlow(token) {
15
17
  const { data } = await axios_1.default.get(this.url, {
16
18
  headers: { Authorization: `Bearer ${token}` },
17
19
  });
18
- this.flow = data;
20
+ return data;
19
21
  }
20
- getNode(id) {
22
+ getNodeById(id) {
21
23
  const node = this.flow.nodes.find(node => node.id === id);
22
24
  if (!node)
23
25
  throw Error(`Node with id: '${id}' not found`);
@@ -33,7 +35,7 @@ class FlowBuilderApi {
33
35
  const startUpNode = this.flow.nodes.find(node => node.type === hubtype_fields_1.HtNodeStartType.STARTUP);
34
36
  if (!startUpNode)
35
37
  throw new Error('Start-up id must be defined');
36
- return this.getNode(startUpNode.target.id);
38
+ return this.getNodeById(startUpNode.target.id);
37
39
  }
38
40
  getFallbackNode(alternate) {
39
41
  const fallbackNode = this.flow.nodes.find(node => node.type === hubtype_fields_1.HtNodeWithContentType.FALLBACK);
@@ -46,11 +48,11 @@ class FlowBuilderApi {
46
48
  }
47
49
  const fallbackSecondMessage = fallbackNode.content.second_message;
48
50
  if (!fallbackSecondMessage) {
49
- return this.getNode(fallbackFirstMessage.id);
51
+ return this.getNodeById(fallbackFirstMessage.id);
50
52
  }
51
53
  return alternate
52
- ? this.getNode(fallbackFirstMessage.id)
53
- : this.getNode(fallbackSecondMessage.id);
54
+ ? this.getNodeById(fallbackFirstMessage.id)
55
+ : this.getNodeById(fallbackSecondMessage.id);
54
56
  }
55
57
  getNodeByIntent(input, locale) {
56
58
  try {
@@ -63,7 +65,7 @@ class FlowBuilderApi {
63
65
  inputConfidence &&
64
66
  this.hasMetConfidenceThreshold(node, inputConfidence));
65
67
  return ((matchedIntentNode === null || matchedIntentNode === void 0 ? void 0 : matchedIntentNode.target) &&
66
- this.getNode(matchedIntentNode === null || matchedIntentNode === void 0 ? void 0 : matchedIntentNode.target.id));
68
+ this.getNodeById(matchedIntentNode === null || matchedIntentNode === void 0 ? void 0 : matchedIntentNode.target.id));
67
69
  }
68
70
  }
69
71
  catch (error) {
@@ -83,7 +85,7 @@ class FlowBuilderApi {
83
85
  const keywordNodes = this.flow.nodes.filter(node => node.type == hubtype_fields_1.HtNodeWithContentType.KEYWORD);
84
86
  const matchedKeywordNodes = keywordNodes.filter(node => this.matchKeywords(node, userInput, locale));
85
87
  if (matchedKeywordNodes.length > 0 && matchedKeywordNodes[0].target) {
86
- return this.getNode(matchedKeywordNodes[0].target.id);
88
+ return this.getNodeById(matchedKeywordNodes[0].target.id);
87
89
  }
88
90
  }
89
91
  catch (error) {
@@ -96,12 +98,7 @@ class FlowBuilderApi {
96
98
  return Boolean(result);
97
99
  }
98
100
  containsAnyKeywords(input, keywords) {
99
- for (let i = 0; i < keywords.length; i++) {
100
- if (input.includes(keywords[i])) {
101
- return true;
102
- }
103
- }
104
- return false;
101
+ return keywords.some(keyword => input.includes(keyword));
105
102
  }
106
103
  }
107
104
  exports.FlowBuilderApi = FlowBuilderApi;
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
@@ -20,11 +20,11 @@ class FlowButton extends content_fields_base_1.ContentFieldsBase {
20
20
  newButton.payload = cmsButton.target.id;
21
21
  }
22
22
  if (cmsButton.payload && payloadId) {
23
- const payloadNode = cmsApi.getNode(payloadId);
23
+ const payloadNode = cmsApi.getNodeById(payloadId);
24
24
  newButton.payload = payloadNode.content.payload;
25
25
  }
26
26
  if (cmsButton.url && urlId) {
27
- const payloadNode = cmsApi.getNode(urlId);
27
+ const payloadNode = cmsApi.getNodeById(urlId);
28
28
  newButton.url = payloadNode.content.url;
29
29
  }
30
30
  return newButton;
@@ -1 +1 @@
1
- {"version":3,"file":"flow-button.js","sourceRoot":"","sources":["../../../src/content-fields/flow-button.tsx"],"names":[],"mappings":";;;;AAAA,0CAA8C;AAC9C,0DAAyB;AAGzB,+DAAyD;AACzD,qDAKyB;AAEzB,MAAa,UAAW,SAAQ,uCAAiB;IAAjD;;QACS,SAAI,GAAG,EAAE,CAAA;IAmDlB,CAAC;IA/CC,MAAM,CAAC,cAAc,CACnB,SAAmB,EACnB,MAAc,EACd,MAAsB;QAEtB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAE9C,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC9C,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QAC7D,IAAI,SAAS,CAAC,MAAM,EAAE;YACpB,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;SACxC;QACD,IAAI,SAAS,CAAC,OAAO,IAAI,SAAS,EAAE;YAClC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAkB,CAAA;YAC9D,SAAS,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAA;SAChD;QACD,IAAI,SAAS,CAAC,GAAG,IAAI,KAAK,EAAE;YAC1B,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAc,CAAA;YACtD,SAAS,CAAC,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAA;SACxC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM;;QACnC,OAAO,MAAA,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,0CAAE,EAAE,CAAA;IACzE,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM;;QAC/B,OAAO,MAAA,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,0CAAE,EAAE,CAAA;IAC7D,CAAC;IAED,YAAY,CAAC,WAA2B;QACtC,IAAI,WAAW,KAAK,8BAAa,CAAC,WAAW,EAAE;YAC7C,OAAO,CACL,8BAAC,aAAK,IAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IACvC,IAAI,CAAC,IAAI,CACJ,CACT,CAAA;SACF;QACD,OAAO,CACL,8BAAC,cAAM,IAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IACvD,IAAI,CAAC,IAAI,CACH,CACV,CAAA;IACH,CAAC;CACF;AApDD,gCAoDC"}
1
+ {"version":3,"file":"flow-button.js","sourceRoot":"","sources":["../../../src/content-fields/flow-button.tsx"],"names":[],"mappings":";;;;AAAA,0CAA8C;AAC9C,0DAAyB;AAGzB,+DAAyD;AACzD,qDAKyB;AAEzB,MAAa,UAAW,SAAQ,uCAAiB;IAAjD;;QACS,SAAI,GAAG,EAAE,CAAA;IAmDlB,CAAC;IA/CC,MAAM,CAAC,cAAc,CACnB,SAAmB,EACnB,MAAc,EACd,MAAsB;QAEtB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAE9C,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC9C,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QAC7D,IAAI,SAAS,CAAC,MAAM,EAAE;YACpB,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;SACxC;QACD,IAAI,SAAS,CAAC,OAAO,IAAI,SAAS,EAAE;YAClC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,CAAkB,CAAA;YAClE,SAAS,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAA;SAChD;QACD,IAAI,SAAS,CAAC,GAAG,IAAI,KAAK,EAAE;YAC1B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAc,CAAA;YAC1D,SAAS,CAAC,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAA;SACxC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM;;QACnC,OAAO,MAAA,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,0CAAE,EAAE,CAAA;IACzE,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM;;QAC/B,OAAO,MAAA,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,0CAAE,EAAE,CAAA;IAC7D,CAAC;IAED,YAAY,CAAC,WAA2B;QACtC,IAAI,WAAW,KAAK,8BAAa,CAAC,WAAW,EAAE;YAC7C,OAAO,CACL,8BAAC,aAAK,IAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IACvC,IAAI,CAAC,IAAI,CACJ,CACT,CAAA;SACF;QACD,OAAO,CACL,8BAAC,cAAM,IAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IACvD,IAAI,CAAC,IAAI,CACH,CACV,CAAA;IACH,CAAC;CACF;AApDD,gCAoDC"}
@@ -1,4 +1,4 @@
1
- import { WhatsappButtonListRowProps } from '@botonic/react/lib/cjs/components/whatsapp-button-list';
1
+ import { WhatsappButtonListRowProps } from '@botonic/react';
2
2
  import { ContentFieldsBase } from '../content-fields-base';
3
3
  import { HtWhatsappButtonListRow } from '../hubtype-fields';
4
4
  export declare class FlowWhatsappButtonListRow extends ContentFieldsBase {
@@ -1,4 +1,4 @@
1
- import { WhatsappButtonListSectionProps } from '@botonic/react/lib/cjs/components/whatsapp-button-list';
1
+ import { WhatsappButtonListSectionProps } from '@botonic/react';
2
2
  import { HtWhatsappButtonListSection } from '../hubtype-fields';
3
3
  import { ContentFieldsBase } from './../content-fields-base';
4
4
  import { FlowWhatsappButtonListRow } from './flow-whatsapp-button-list-row';
@@ -23,10 +23,7 @@ class FlowWhatsappButtonList extends content_fields_base_1.ContentFieldsBase {
23
23
  return newWhatsappButtonList;
24
24
  }
25
25
  toBotonic(id) {
26
- return (react_2.default.createElement(react_1.WhatsappButtonList, { key: id, body: this.text, action: {
27
- button: this.listButtonText,
28
- sections: this.sections.map(section => section.toBotonic()),
29
- } }));
26
+ return (react_2.default.createElement(react_1.WhatsappButtonList, { key: id, body: this.text, button: this.listButtonText, sections: this.sections.map(section => section.toBotonic()) }));
30
27
  }
31
28
  }
32
29
  exports.FlowWhatsappButtonList = FlowWhatsappButtonList;
@@ -1 +1 @@
1
- {"version":3,"file":"flow-whatsapp-button-list.js","sourceRoot":"","sources":["../../../../src/content-fields/whatsapp-button-list/flow-whatsapp-button-list.tsx"],"names":[],"mappings":";;;;AAAA,0CAAmD;AACnD,0DAAyB;AAGzB,kEAA4D;AAC5D,2FAAmF;AAEnF,MAAa,sBAAuB,SAAQ,uCAAiB;IAA7D;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,SAAI,GAAG,EAAE,CAAA;QACT,mBAAc,GAAG,EAAE,CAAA;QACnB,aAAQ,GAAoC,EAAE,CAAA;IAkCvD,CAAC;IAhCC,MAAM,CAAC,cAAc,CACnB,SAAmC,EACnC,MAAc;QAEd,MAAM,qBAAqB,GAAG,IAAI,sBAAsB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QACtE,qBAAqB,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC3C,qBAAqB,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAC/C,MAAM,EACN,SAAS,CAAC,OAAO,CAAC,IAAI,CACvB,CAAA;QACD,qBAAqB,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CACzD,MAAM,EACN,SAAS,CAAC,OAAO,CAAC,WAAW,CAC9B,CAAA;QACD,qBAAqB,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACxE,iEAA6B,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAC9D,CAAA;QACD,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,8BAAC,0BAAkB,IACjB,GAAG,EAAE,EAAE,EACP,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAE;gBACN,MAAM,EAAE,IAAI,CAAC,cAAc;gBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;aAC5D,GACmB,CACvB,CAAA;IACH,CAAC;CACF;AAtCD,wDAsCC"}
1
+ {"version":3,"file":"flow-whatsapp-button-list.js","sourceRoot":"","sources":["../../../../src/content-fields/whatsapp-button-list/flow-whatsapp-button-list.tsx"],"names":[],"mappings":";;;;AAAA,0CAAmD;AACnD,0DAAyB;AAGzB,kEAA4D;AAC5D,2FAAmF;AAEnF,MAAa,sBAAuB,SAAQ,uCAAiB;IAA7D;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,SAAI,GAAG,EAAE,CAAA;QACT,mBAAc,GAAG,EAAE,CAAA;QACnB,aAAQ,GAAoC,EAAE,CAAA;IAgCvD,CAAC;IA9BC,MAAM,CAAC,cAAc,CACnB,SAAmC,EACnC,MAAc;QAEd,MAAM,qBAAqB,GAAG,IAAI,sBAAsB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QACtE,qBAAqB,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC3C,qBAAqB,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAC/C,MAAM,EACN,SAAS,CAAC,OAAO,CAAC,IAAI,CACvB,CAAA;QACD,qBAAqB,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CACzD,MAAM,EACN,SAAS,CAAC,OAAO,CAAC,WAAW,CAC9B,CAAA;QACD,qBAAqB,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACxE,iEAA6B,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAC9D,CAAA;QACD,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,8BAAC,0BAAkB,IACjB,GAAG,EAAE,EAAE,EACP,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAE,IAAI,CAAC,cAAc,EAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,GACvC,CACvB,CAAA;IACH,CAAC;CACF;AApCD,wDAoCC"}
@@ -40,14 +40,14 @@ exports.doHandoff = doHandoff;
40
40
  async function getOnFinishPayload(flowBuilderPlugin, handoffNode, locale) {
41
41
  var _a, _b, _c;
42
42
  if ((_a = handoffNode.target) === null || _a === void 0 ? void 0 : _a.id) {
43
- const handoffTargetNode = flowBuilderPlugin.cmsApi.getNode((_b = handoffNode.target) === null || _b === void 0 ? void 0 : _b.id);
43
+ const handoffTargetNode = flowBuilderPlugin.cmsApi.getNodeById((_b = handoffNode.target) === null || _b === void 0 ? void 0 : _b.id);
44
44
  if (handoffTargetNode === null || handoffTargetNode === void 0 ? void 0 : handoffTargetNode.id)
45
45
  return handoffTargetNode === null || handoffTargetNode === void 0 ? void 0 : handoffTargetNode.id;
46
46
  }
47
47
  const payloadId = (_c = handoffNode.content.payload.find(payload => payload.locale === locale)) === null || _c === void 0 ? void 0 : _c.id;
48
48
  if (!payloadId)
49
49
  return undefined;
50
- const actionPayload = flowBuilderPlugin.cmsApi.getNode(payloadId);
50
+ const actionPayload = flowBuilderPlugin.cmsApi.getNodeById(payloadId);
51
51
  return actionPayload.content.payload;
52
52
  }
53
53
  //# sourceMappingURL=handoff.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/handoff.ts"],"names":[],"mappings":";;;AAAA,wCAA8C;AAI9C,uCAAgD;AAGzC,KAAK,UAAU,SAAS,CAC7B,OAAsB,EACtB,MAAc,EACd,WAA0B;IAE1B,MAAM,iBAAiB,GAAG,IAAA,8BAAoB,EAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,aAAa;IACb,MAAM,cAAc,GAAG,IAAI,qBAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1D,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAA;IAC/C,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;IAC/D,IAAI,UAAU;QAAE,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAEvD,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAC9C,iBAAiB,EACjB,WAAW,EACX,MAAM,CACP,CAAA;IACD,IAAI,eAAe;QAAE,cAAc,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;IACxE,IAAI,WAAW,CAAC,OAAO,CAAC,eAAe,EAAE;QACvC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;KAC7C;IAED,yCAAyC;IACzC,0BAA0B;IAC1B,kCAAkC;IAClC,4EAA4E;IAC5E,IAAI;IAEJ,4BAA4B;IAC5B,gDAAgD;IAChD,IAAI;IAEJ,kCAAkC;IAClC,4DAA4D;IAC5D,IAAI;IAEJ,MAAM,cAAc,CAAC,OAAO,EAAE,CAAA;IAE9B,IAAI,iBAAiB,CAAC,UAAU,EAAE;QAChC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,qBAAqB,EAAE;YACjE,QAAQ,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE;YACxB,UAAU,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI;SAC7B,CAAC,CAAA;KACH;AACH,CAAC;AA5CD,8BA4CC;AAED,KAAK,UAAU,kBAAkB,CAC/B,iBAA2C,EAC3C,WAA0B,EAC1B,MAAc;;IAEd,IAAI,MAAA,WAAW,CAAC,MAAM,0CAAE,EAAE,EAAE;QAC1B,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,CACxD,MAAA,WAAW,CAAC,MAAM,0CAAE,EAAE,CACvB,CAAA;QACD,IAAI,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE;YAAE,OAAO,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE,CAAA;KACxD;IAED,MAAM,SAAS,GAAG,MAAA,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAChD,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CACrC,0CAAE,EAAE,CAAA;IAEL,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAA;IAEhC,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAEjE,OAAQ,aAA+B,CAAC,OAAO,CAAC,OAAO,CAAA;AACzD,CAAC"}
1
+ {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/handoff.ts"],"names":[],"mappings":";;;AAAA,wCAA8C;AAI9C,uCAAgD;AAGzC,KAAK,UAAU,SAAS,CAC7B,OAAsB,EACtB,MAAc,EACd,WAA0B;IAE1B,MAAM,iBAAiB,GAAG,IAAA,8BAAoB,EAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,aAAa;IACb,MAAM,cAAc,GAAG,IAAI,qBAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1D,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAA;IAC/C,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;IAC/D,IAAI,UAAU;QAAE,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAEvD,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAC9C,iBAAiB,EACjB,WAAW,EACX,MAAM,CACP,CAAA;IACD,IAAI,eAAe;QAAE,cAAc,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;IACxE,IAAI,WAAW,CAAC,OAAO,CAAC,eAAe,EAAE;QACvC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;KAC7C;IAED,yCAAyC;IACzC,0BAA0B;IAC1B,kCAAkC;IAClC,4EAA4E;IAC5E,IAAI;IAEJ,4BAA4B;IAC5B,gDAAgD;IAChD,IAAI;IAEJ,kCAAkC;IAClC,4DAA4D;IAC5D,IAAI;IAEJ,MAAM,cAAc,CAAC,OAAO,EAAE,CAAA;IAE9B,IAAI,iBAAiB,CAAC,UAAU,EAAE;QAChC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,qBAAqB,EAAE;YACjE,QAAQ,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE;YACxB,UAAU,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI;SAC7B,CAAC,CAAA;KACH;AACH,CAAC;AA5CD,8BA4CC;AAED,KAAK,UAAU,kBAAkB,CAC/B,iBAA2C,EAC3C,WAA0B,EAC1B,MAAc;;IAEd,IAAI,MAAA,WAAW,CAAC,MAAM,0CAAE,EAAE,EAAE;QAC1B,MAAM,iBAAiB,GACrB,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAClC,MAAA,WAAW,CAAC,MAAM,0CAAE,EAAE,CACvB,CAAA;QACH,IAAI,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE;YAAE,OAAO,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE,CAAA;KACxD;IAED,MAAM,SAAS,GAAG,MAAA,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAChD,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CACrC,0CAAE,EAAE,CAAA;IAEL,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAA;IAEhC,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;IAErE,OAAQ,aAA+B,CAAC,OAAO,CAAC,OAAO,CAAA;AACzD,CAAC"}
@@ -7,6 +7,8 @@ import { BotonicPluginFlowBuilderOptions } from './types';
7
7
  export default class BotonicPluginFlowBuilder implements Plugin {
8
8
  readonly options: BotonicPluginFlowBuilderOptions;
9
9
  cmsApi: FlowBuilderApi;
10
+ private flowUrl;
11
+ private flow?;
10
12
  private functions;
11
13
  private currentRequest;
12
14
  private getAccessToken;
@@ -15,7 +17,7 @@ export default class BotonicPluginFlowBuilder implements Plugin {
15
17
  constructor(options: BotonicPluginFlowBuilderOptions);
16
18
  pre(request: PluginPreRequest): Promise<void>;
17
19
  post(_request: PluginPostRequest): Promise<void>;
18
- getContent(nodeOrId: HtNodeWithContent | string, locale: string, prevContents?: FlowContent[]): Promise<{
20
+ getContents(nodeOrId: HtNodeWithContent | string, locale: string, prevContents?: FlowContent[]): Promise<{
19
21
  contents: FlowContent[];
20
22
  handoffNode?: HtHandoffNode;
21
23
  }>;
package/lib/cjs/index.js CHANGED
@@ -10,10 +10,8 @@ const utils_1 = require("./utils");
10
10
  class BotonicPluginFlowBuilder {
11
11
  constructor(options) {
12
12
  this.options = options;
13
- this.cmsApi = new api_1.FlowBuilderApi({
14
- url: options.flowUrl,
15
- flow: options.flow,
16
- });
13
+ this.flowUrl = options.flowUrl;
14
+ this.flow = options.flow;
17
15
  this.getLocale = options.getLocale;
18
16
  this.getAccessToken = (0, utils_1.resolveGetAccessToken)(options);
19
17
  this.trackEvent = options.trackEvent;
@@ -22,26 +20,30 @@ class BotonicPluginFlowBuilder {
22
20
  }
23
21
  async pre(request) {
24
22
  this.currentRequest = request;
25
- await this.cmsApi.init(this.getAccessToken(request.session));
23
+ this.cmsApi = await api_1.FlowBuilderApi.create({
24
+ url: this.flowUrl,
25
+ flow: this.flow,
26
+ accessToken: this.getAccessToken(request.session),
27
+ });
26
28
  }
27
29
  async post(_request) { }
28
- async getContent(nodeOrId, locale, prevContents) {
30
+ async getContents(nodeOrId, locale, prevContents) {
29
31
  const contents = prevContents || [];
30
32
  let node = nodeOrId;
31
33
  if (typeof nodeOrId === 'string') {
32
- node = this.cmsApi.getNode(nodeOrId);
34
+ node = this.cmsApi.getNodeById(nodeOrId);
33
35
  }
34
36
  const content = await this.getFlowContent(node, locale);
35
37
  if (node.type === hubtype_fields_1.HtNodeWithContentType.FUNCTION) {
36
38
  const targetId = await this.callFunction(node, locale);
37
- return this.getContent(targetId, locale, contents);
39
+ return this.getContents(targetId, locale, contents);
38
40
  }
39
41
  else {
40
42
  if (content)
41
43
  contents.push(content);
42
44
  // TODO: prevent infinite recursive calls
43
45
  if (node.follow_up)
44
- return this.getContent(node.follow_up.id, locale, contents);
46
+ return this.getContents(node.follow_up.id, locale, contents);
45
47
  }
46
48
  return { contents, handoffNode: (0, helpers_1.isHandoffNode)(node) ? node : undefined };
47
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export interface BotonicPluginFlowBuilderOptions {
12
12
  export interface FlowBuilderApiOptions {
13
13
  url: string;
14
14
  flow?: HtFlowBuilderData;
15
+ accessToken: string;
15
16
  }
16
17
  export declare enum ProcessEnvNodeEnvs {
17
18
  PRODUCTION = "production",
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAwBA,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,iDAA2B,CAAA;AAC7B,CAAC,EAHW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAG7B"}
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"}
package/lib/esm/action.js CHANGED
@@ -5,6 +5,7 @@ import { getFlowBuilderPlugin } from './helpers';
5
5
  let alternateFallbackMessage = false;
6
6
  export class FlowBuilderAction extends React.Component {
7
7
  static async botonicInit(request) {
8
+ var _a;
8
9
  const flowBuilderPlugin = getFlowBuilderPlugin(request.plugins);
9
10
  const locale = flowBuilderPlugin.getLocale(request.session);
10
11
  const payload = request.input.payload;
@@ -15,18 +16,13 @@ export class FlowBuilderAction extends React.Component {
15
16
  if (!payload && request.input.data) {
16
17
  const intentNode = flowBuilderPlugin.cmsApi.getNodeByIntent(request.input, locale);
17
18
  const keywordNode = flowBuilderPlugin.cmsApi.getNodeByKeyword(request.input.data, locale);
18
- if (intentNode) {
19
- targetNode = intentNode;
20
- }
21
- else if (keywordNode) {
22
- targetNode = keywordNode;
23
- }
19
+ targetNode = (_a = intentNode !== null && intentNode !== void 0 ? intentNode : keywordNode) !== null && _a !== void 0 ? _a : targetNode;
24
20
  }
25
21
  if (!targetNode) {
26
22
  targetNode = flowBuilderPlugin.cmsApi.getFallbackNode(alternateFallbackMessage);
27
23
  alternateFallbackMessage = !alternateFallbackMessage;
28
24
  }
29
- const { contents, handoffNode } = await flowBuilderPlugin.getContent(targetNode, locale);
25
+ const { contents, handoffNode } = await flowBuilderPlugin.getContents(targetNode, locale);
30
26
  if (flowBuilderPlugin.trackEvent) {
31
27
  // TODO: track all targets nodes?
32
28
  await flowBuilderPlugin.trackEvent(request, contents[0].code);
@@ -1 +1 @@
1
- {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/action.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC5E,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAOhD,IAAI,wBAAwB,GAAG,KAAK,CAAA;AACpC,MAAM,OAAO,iBAAkB,SAAQ,KAAK,CAAC,SAAiC;IAG5E,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAsB;QAC7C,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC3D,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;QACrC,IAAI,UAAU,GAA2C,OAAO,CAAA;QAEhE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE;YACpD,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAA;SACrD;QAED,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;YAClC,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,eAAe,CACzD,OAAO,CAAC,KAAK,EACb,MAAM,CACP,CAAA;YACD,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,CAC3D,OAAO,CAAC,KAAK,CAAC,IAAI,EAClB,MAAM,CACP,CAAA;YACD,IAAI,UAAU,EAAE;gBACd,UAAU,GAAG,UAAU,CAAA;aACxB;iBAAM,IAAI,WAAW,EAAE;gBACtB,UAAU,GAAG,WAAW,CAAA;aACzB;SACF;QAED,IAAI,CAAC,UAAU,EAAE;YACf,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,eAAe,CACnD,wBAAwB,CACzB,CAAA;YACD,wBAAwB,GAAG,CAAC,wBAAwB,CAAA;SACrD;QAED,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAClE,UAAU,EACV,MAAM,CACP,CAAA;QAED,IAAI,iBAAiB,CAAC,UAAU,EAAE;YAChC,iCAAiC;YACjC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;SAC9D;QAED,IAAI,WAAW;YAAE,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;QAE9D,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;IAClC,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC/B,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;IAC/D,CAAC;;AArDM,6BAAW,GAAG,cAAc,CAAA;AAwDrC,MAAM,OAAO,6BAA8B,SAAQ,iBAAiB;IAClE,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC/B,OAAO,CACL,oBAAC,YAAY,IAAC,IAAI,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,IACzC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAC1C,CAChB,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/action.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC5E,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAOhD,IAAI,wBAAwB,GAAG,KAAK,CAAA;AACpC,MAAM,OAAO,iBAAkB,SAAQ,KAAK,CAAC,SAAiC;IAG5E,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAsB;;QAC7C,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC3D,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;QACrC,IAAI,UAAU,GAA2C,OAAO,CAAA;QAEhE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE;YACpD,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAA;SACrD;QAED,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;YAClC,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,eAAe,CACzD,OAAO,CAAC,KAAK,EACb,MAAM,CACP,CAAA;YACD,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,CAC3D,OAAO,CAAC,KAAK,CAAC,IAAI,EAClB,MAAM,CACP,CAAA;YACD,UAAU,GAAG,MAAA,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,WAAW,mCAAI,UAAU,CAAA;SACrD;QAED,IAAI,CAAC,UAAU,EAAE;YACf,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,eAAe,CACnD,wBAAwB,CACzB,CAAA;YACD,wBAAwB,GAAG,CAAC,wBAAwB,CAAA;SACrD;QAED,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,iBAAiB,CAAC,WAAW,CACnE,UAAU,EACV,MAAM,CACP,CAAA;QAED,IAAI,iBAAiB,CAAC,UAAU,EAAE;YAChC,iCAAiC;YACjC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;SAC9D;QAED,IAAI,WAAW;YAAE,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;QAE9D,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;IAClC,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC/B,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;IAC/D,CAAC;;AAjDM,6BAAW,GAAG,cAAc,CAAA;AAoDrC,MAAM,OAAO,6BAA8B,SAAQ,iBAAiB;IAClE,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC/B,OAAO,CACL,oBAAC,YAAY,IAAC,IAAI,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,IACzC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAC1C,CAChB,CAAA;IACH,CAAC;CACF"}
package/lib/esm/api.d.ts CHANGED
@@ -2,11 +2,12 @@ import { Input } from '@botonic/core';
2
2
  import { HtFlowBuilderData, HtNodeComponent, HtNodeWithContent } from './content-fields/hubtype-fields';
3
3
  import { FlowBuilderApiOptions } from './types';
4
4
  export declare class FlowBuilderApi {
5
- private readonly url;
5
+ url: string;
6
6
  flow: HtFlowBuilderData;
7
- constructor(options: FlowBuilderApiOptions);
8
- init(token: string): Promise<void>;
9
- getNode<T extends HtNodeComponent>(id: string): T;
7
+ private constructor();
8
+ static create(options: FlowBuilderApiOptions): Promise<FlowBuilderApi>;
9
+ private getFlow;
10
+ getNodeById<T extends HtNodeComponent>(id: string): T;
10
11
  getNodeByCode(code: string): HtNodeComponent;
11
12
  getStartNode(): HtNodeWithContent;
12
13
  getFallbackNode(alternate: boolean): HtNodeWithContent;
package/lib/esm/api.js CHANGED
@@ -1,19 +1,21 @@
1
1
  import axios from 'axios';
2
2
  import { HtNodeStartType, HtNodeWithContentType, } from './content-fields/hubtype-fields';
3
3
  export class FlowBuilderApi {
4
- constructor(options) {
5
- this.url = options.url;
6
- if (options.flow) {
7
- this.flow = options.flow;
8
- }
4
+ constructor() { }
5
+ static async create(options) {
6
+ var _a;
7
+ const newApi = new FlowBuilderApi();
8
+ newApi.url = options.url;
9
+ newApi.flow = (_a = options.flow) !== null && _a !== void 0 ? _a : (await newApi.getFlow(options.accessToken));
10
+ return newApi;
9
11
  }
10
- async init(token) {
12
+ async getFlow(token) {
11
13
  const { data } = await axios.get(this.url, {
12
14
  headers: { Authorization: `Bearer ${token}` },
13
15
  });
14
- this.flow = data;
16
+ return data;
15
17
  }
16
- getNode(id) {
18
+ getNodeById(id) {
17
19
  const node = this.flow.nodes.find(node => node.id === id);
18
20
  if (!node)
19
21
  throw Error(`Node with id: '${id}' not found`);
@@ -29,7 +31,7 @@ export class FlowBuilderApi {
29
31
  const startUpNode = this.flow.nodes.find(node => node.type === HtNodeStartType.STARTUP);
30
32
  if (!startUpNode)
31
33
  throw new Error('Start-up id must be defined');
32
- return this.getNode(startUpNode.target.id);
34
+ return this.getNodeById(startUpNode.target.id);
33
35
  }
34
36
  getFallbackNode(alternate) {
35
37
  const fallbackNode = this.flow.nodes.find(node => node.type === HtNodeWithContentType.FALLBACK);
@@ -42,11 +44,11 @@ export class FlowBuilderApi {
42
44
  }
43
45
  const fallbackSecondMessage = fallbackNode.content.second_message;
44
46
  if (!fallbackSecondMessage) {
45
- return this.getNode(fallbackFirstMessage.id);
47
+ return this.getNodeById(fallbackFirstMessage.id);
46
48
  }
47
49
  return alternate
48
- ? this.getNode(fallbackFirstMessage.id)
49
- : this.getNode(fallbackSecondMessage.id);
50
+ ? this.getNodeById(fallbackFirstMessage.id)
51
+ : this.getNodeById(fallbackSecondMessage.id);
50
52
  }
51
53
  getNodeByIntent(input, locale) {
52
54
  try {
@@ -59,7 +61,7 @@ export class FlowBuilderApi {
59
61
  inputConfidence &&
60
62
  this.hasMetConfidenceThreshold(node, inputConfidence));
61
63
  return ((matchedIntentNode === null || matchedIntentNode === void 0 ? void 0 : matchedIntentNode.target) &&
62
- this.getNode(matchedIntentNode === null || matchedIntentNode === void 0 ? void 0 : matchedIntentNode.target.id));
64
+ this.getNodeById(matchedIntentNode === null || matchedIntentNode === void 0 ? void 0 : matchedIntentNode.target.id));
63
65
  }
64
66
  }
65
67
  catch (error) {
@@ -79,7 +81,7 @@ export class FlowBuilderApi {
79
81
  const keywordNodes = this.flow.nodes.filter(node => node.type == HtNodeWithContentType.KEYWORD);
80
82
  const matchedKeywordNodes = keywordNodes.filter(node => this.matchKeywords(node, userInput, locale));
81
83
  if (matchedKeywordNodes.length > 0 && matchedKeywordNodes[0].target) {
82
- return this.getNode(matchedKeywordNodes[0].target.id);
84
+ return this.getNodeById(matchedKeywordNodes[0].target.id);
83
85
  }
84
86
  }
85
87
  catch (error) {
@@ -92,12 +94,7 @@ export class FlowBuilderApi {
92
94
  return Boolean(result);
93
95
  }
94
96
  containsAnyKeywords(input, keywords) {
95
- for (let i = 0; i < keywords.length; i++) {
96
- if (input.includes(keywords[i])) {
97
- return true;
98
- }
99
- }
100
- return false;
97
+ return keywords.some(keyword => input.includes(keyword));
101
98
  }
102
99
  }
103
100
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
@@ -16,11 +16,11 @@ export class FlowButton extends ContentFieldsBase {
16
16
  newButton.payload = cmsButton.target.id;
17
17
  }
18
18
  if (cmsButton.payload && payloadId) {
19
- const payloadNode = cmsApi.getNode(payloadId);
19
+ const payloadNode = cmsApi.getNodeById(payloadId);
20
20
  newButton.payload = payloadNode.content.payload;
21
21
  }
22
22
  if (cmsButton.url && urlId) {
23
- const payloadNode = cmsApi.getNode(urlId);
23
+ const payloadNode = cmsApi.getNodeById(urlId);
24
24
  newButton.url = payloadNode.content.url;
25
25
  }
26
26
  return newButton;
@@ -1 +1 @@
1
- {"version":3,"file":"flow-button.js","sourceRoot":"","sources":["../../../src/content-fields/flow-button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAEL,aAAa,GAGd,MAAM,kBAAkB,CAAA;AAEzB,MAAM,OAAO,UAAW,SAAQ,iBAAiB;IAAjD;;QACS,SAAI,GAAG,EAAE,CAAA;IAmDlB,CAAC;IA/CC,MAAM,CAAC,cAAc,CACnB,SAAmB,EACnB,MAAc,EACd,MAAsB;QAEtB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAE9C,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC9C,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QAC7D,IAAI,SAAS,CAAC,MAAM,EAAE;YACpB,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;SACxC;QACD,IAAI,SAAS,CAAC,OAAO,IAAI,SAAS,EAAE;YAClC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAkB,CAAA;YAC9D,SAAS,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAA;SAChD;QACD,IAAI,SAAS,CAAC,GAAG,IAAI,KAAK,EAAE;YAC1B,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAc,CAAA;YACtD,SAAS,CAAC,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAA;SACxC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM;;QACnC,OAAO,MAAA,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,0CAAE,EAAE,CAAA;IACzE,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM;;QAC/B,OAAO,MAAA,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,0CAAE,EAAE,CAAA;IAC7D,CAAC;IAED,YAAY,CAAC,WAA2B;QACtC,IAAI,WAAW,KAAK,aAAa,CAAC,WAAW,EAAE;YAC7C,OAAO,CACL,oBAAC,KAAK,IAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IACvC,IAAI,CAAC,IAAI,CACJ,CACT,CAAA;SACF;QACD,OAAO,CACL,oBAAC,MAAM,IAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IACvD,IAAI,CAAC,IAAI,CACH,CACV,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"flow-button.js","sourceRoot":"","sources":["../../../src/content-fields/flow-button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAEL,aAAa,GAGd,MAAM,kBAAkB,CAAA;AAEzB,MAAM,OAAO,UAAW,SAAQ,iBAAiB;IAAjD;;QACS,SAAI,GAAG,EAAE,CAAA;IAmDlB,CAAC;IA/CC,MAAM,CAAC,cAAc,CACnB,SAAmB,EACnB,MAAc,EACd,MAAsB;QAEtB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAE9C,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC9C,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QAC7D,IAAI,SAAS,CAAC,MAAM,EAAE;YACpB,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,CAAA;SACxC;QACD,IAAI,SAAS,CAAC,OAAO,IAAI,SAAS,EAAE;YAClC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,CAAkB,CAAA;YAClE,SAAS,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAA;SAChD;QACD,IAAI,SAAS,CAAC,GAAG,IAAI,KAAK,EAAE;YAC1B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAc,CAAA;YAC1D,SAAS,CAAC,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAA;SACxC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM;;QACnC,OAAO,MAAA,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,0CAAE,EAAE,CAAA;IACzE,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM;;QAC/B,OAAO,MAAA,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,0CAAE,EAAE,CAAA;IAC7D,CAAC;IAED,YAAY,CAAC,WAA2B;QACtC,IAAI,WAAW,KAAK,aAAa,CAAC,WAAW,EAAE;YAC7C,OAAO,CACL,oBAAC,KAAK,IAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IACvC,IAAI,CAAC,IAAI,CACJ,CACT,CAAA;SACF;QACD,OAAO,CACL,oBAAC,MAAM,IAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IACvD,IAAI,CAAC,IAAI,CACH,CACV,CAAA;IACH,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import { WhatsappButtonListRowProps } from '@botonic/react/lib/cjs/components/whatsapp-button-list';
1
+ import { WhatsappButtonListRowProps } from '@botonic/react';
2
2
  import { ContentFieldsBase } from '../content-fields-base';
3
3
  import { HtWhatsappButtonListRow } from '../hubtype-fields';
4
4
  export declare class FlowWhatsappButtonListRow extends ContentFieldsBase {
@@ -1,4 +1,4 @@
1
- import { WhatsappButtonListSectionProps } from '@botonic/react/lib/cjs/components/whatsapp-button-list';
1
+ import { WhatsappButtonListSectionProps } from '@botonic/react';
2
2
  import { HtWhatsappButtonListSection } from '../hubtype-fields';
3
3
  import { ContentFieldsBase } from './../content-fields-base';
4
4
  import { FlowWhatsappButtonListRow } from './flow-whatsapp-button-list-row';
@@ -19,10 +19,7 @@ export class FlowWhatsappButtonList extends ContentFieldsBase {
19
19
  return newWhatsappButtonList;
20
20
  }
21
21
  toBotonic(id) {
22
- return (React.createElement(WhatsappButtonList, { key: id, body: this.text, action: {
23
- button: this.listButtonText,
24
- sections: this.sections.map(section => section.toBotonic()),
25
- } }));
22
+ return (React.createElement(WhatsappButtonList, { key: id, body: this.text, button: this.listButtonText, sections: this.sections.map(section => section.toBotonic()) }));
26
23
  }
27
24
  }
28
25
  //# sourceMappingURL=flow-whatsapp-button-list.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flow-whatsapp-button-list.js","sourceRoot":"","sources":["../../../../src/content-fields/whatsapp-button-list/flow-whatsapp-button-list.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAA;AAEnF,MAAM,OAAO,sBAAuB,SAAQ,iBAAiB;IAA7D;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,SAAI,GAAG,EAAE,CAAA;QACT,mBAAc,GAAG,EAAE,CAAA;QACnB,aAAQ,GAAoC,EAAE,CAAA;IAkCvD,CAAC;IAhCC,MAAM,CAAC,cAAc,CACnB,SAAmC,EACnC,MAAc;QAEd,MAAM,qBAAqB,GAAG,IAAI,sBAAsB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QACtE,qBAAqB,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC3C,qBAAqB,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAC/C,MAAM,EACN,SAAS,CAAC,OAAO,CAAC,IAAI,CACvB,CAAA;QACD,qBAAqB,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CACzD,MAAM,EACN,SAAS,CAAC,OAAO,CAAC,WAAW,CAC9B,CAAA;QACD,qBAAqB,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACxE,6BAA6B,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAC9D,CAAA;QACD,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,oBAAC,kBAAkB,IACjB,GAAG,EAAE,EAAE,EACP,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAE;gBACN,MAAM,EAAE,IAAI,CAAC,cAAc;gBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;aAC5D,GACmB,CACvB,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"flow-whatsapp-button-list.js","sourceRoot":"","sources":["../../../../src/content-fields/whatsapp-button-list/flow-whatsapp-button-list.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAA;AAEnF,MAAM,OAAO,sBAAuB,SAAQ,iBAAiB;IAA7D;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,SAAI,GAAG,EAAE,CAAA;QACT,mBAAc,GAAG,EAAE,CAAA;QACnB,aAAQ,GAAoC,EAAE,CAAA;IAgCvD,CAAC;IA9BC,MAAM,CAAC,cAAc,CACnB,SAAmC,EACnC,MAAc;QAEd,MAAM,qBAAqB,GAAG,IAAI,sBAAsB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QACtE,qBAAqB,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC3C,qBAAqB,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAC/C,MAAM,EACN,SAAS,CAAC,OAAO,CAAC,IAAI,CACvB,CAAA;QACD,qBAAqB,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CACzD,MAAM,EACN,SAAS,CAAC,OAAO,CAAC,WAAW,CAC9B,CAAA;QACD,qBAAqB,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACxE,6BAA6B,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAC9D,CAAA;QACD,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,oBAAC,kBAAkB,IACjB,GAAG,EAAE,EAAE,EACP,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAE,IAAI,CAAC,cAAc,EAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,GACvC,CACvB,CAAA;IACH,CAAC;CACF"}
@@ -36,14 +36,14 @@ export async function doHandoff(request, locale, handoffNode) {
36
36
  async function getOnFinishPayload(flowBuilderPlugin, handoffNode, locale) {
37
37
  var _a, _b, _c;
38
38
  if ((_a = handoffNode.target) === null || _a === void 0 ? void 0 : _a.id) {
39
- const handoffTargetNode = flowBuilderPlugin.cmsApi.getNode((_b = handoffNode.target) === null || _b === void 0 ? void 0 : _b.id);
39
+ const handoffTargetNode = flowBuilderPlugin.cmsApi.getNodeById((_b = handoffNode.target) === null || _b === void 0 ? void 0 : _b.id);
40
40
  if (handoffTargetNode === null || handoffTargetNode === void 0 ? void 0 : handoffTargetNode.id)
41
41
  return handoffTargetNode === null || handoffTargetNode === void 0 ? void 0 : handoffTargetNode.id;
42
42
  }
43
43
  const payloadId = (_c = handoffNode.content.payload.find(payload => payload.locale === locale)) === null || _c === void 0 ? void 0 : _c.id;
44
44
  if (!payloadId)
45
45
  return undefined;
46
- const actionPayload = flowBuilderPlugin.cmsApi.getNode(payloadId);
46
+ const actionPayload = flowBuilderPlugin.cmsApi.getNodeById(payloadId);
47
47
  return actionPayload.content.payload;
48
48
  }
49
49
  //# sourceMappingURL=handoff.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/handoff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAI9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAGhD,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,OAAsB,EACtB,MAAc,EACd,WAA0B;IAE1B,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,aAAa;IACb,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1D,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAA;IAC/C,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;IAC/D,IAAI,UAAU;QAAE,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAEvD,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAC9C,iBAAiB,EACjB,WAAW,EACX,MAAM,CACP,CAAA;IACD,IAAI,eAAe;QAAE,cAAc,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;IACxE,IAAI,WAAW,CAAC,OAAO,CAAC,eAAe,EAAE;QACvC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;KAC7C;IAED,yCAAyC;IACzC,0BAA0B;IAC1B,kCAAkC;IAClC,4EAA4E;IAC5E,IAAI;IAEJ,4BAA4B;IAC5B,gDAAgD;IAChD,IAAI;IAEJ,kCAAkC;IAClC,4DAA4D;IAC5D,IAAI;IAEJ,MAAM,cAAc,CAAC,OAAO,EAAE,CAAA;IAE9B,IAAI,iBAAiB,CAAC,UAAU,EAAE;QAChC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,qBAAqB,EAAE;YACjE,QAAQ,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE;YACxB,UAAU,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI;SAC7B,CAAC,CAAA;KACH;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,iBAA2C,EAC3C,WAA0B,EAC1B,MAAc;;IAEd,IAAI,MAAA,WAAW,CAAC,MAAM,0CAAE,EAAE,EAAE;QAC1B,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,CACxD,MAAA,WAAW,CAAC,MAAM,0CAAE,EAAE,CACvB,CAAA;QACD,IAAI,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE;YAAE,OAAO,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE,CAAA;KACxD;IAED,MAAM,SAAS,GAAG,MAAA,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAChD,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CACrC,0CAAE,EAAE,CAAA;IAEL,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAA;IAEhC,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAEjE,OAAQ,aAA+B,CAAC,OAAO,CAAC,OAAO,CAAA;AACzD,CAAC"}
1
+ {"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/handoff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAI9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAGhD,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,OAAsB,EACtB,MAAc,EACd,WAA0B;IAE1B,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,aAAa;IACb,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1D,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAA;IAC/C,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;IAC/D,IAAI,UAAU;QAAE,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IAEvD,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAC9C,iBAAiB,EACjB,WAAW,EACX,MAAM,CACP,CAAA;IACD,IAAI,eAAe;QAAE,cAAc,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;IACxE,IAAI,WAAW,CAAC,OAAO,CAAC,eAAe,EAAE;QACvC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAA;KAC7C;IAED,yCAAyC;IACzC,0BAA0B;IAC1B,kCAAkC;IAClC,4EAA4E;IAC5E,IAAI;IAEJ,4BAA4B;IAC5B,gDAAgD;IAChD,IAAI;IAEJ,kCAAkC;IAClC,4DAA4D;IAC5D,IAAI;IAEJ,MAAM,cAAc,CAAC,OAAO,EAAE,CAAA;IAE9B,IAAI,iBAAiB,CAAC,UAAU,EAAE;QAChC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,qBAAqB,EAAE;YACjE,QAAQ,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAE;YACxB,UAAU,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI;SAC7B,CAAC,CAAA;KACH;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,iBAA2C,EAC3C,WAA0B,EAC1B,MAAc;;IAEd,IAAI,MAAA,WAAW,CAAC,MAAM,0CAAE,EAAE,EAAE;QAC1B,MAAM,iBAAiB,GACrB,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAClC,MAAA,WAAW,CAAC,MAAM,0CAAE,EAAE,CACvB,CAAA;QACH,IAAI,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE;YAAE,OAAO,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE,CAAA;KACxD;IAED,MAAM,SAAS,GAAG,MAAA,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAChD,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CACrC,0CAAE,EAAE,CAAA;IAEL,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAA;IAEhC,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;IAErE,OAAQ,aAA+B,CAAC,OAAO,CAAC,OAAO,CAAA;AACzD,CAAC"}
@@ -7,6 +7,8 @@ import { BotonicPluginFlowBuilderOptions } from './types';
7
7
  export default class BotonicPluginFlowBuilder implements Plugin {
8
8
  readonly options: BotonicPluginFlowBuilderOptions;
9
9
  cmsApi: FlowBuilderApi;
10
+ private flowUrl;
11
+ private flow?;
10
12
  private functions;
11
13
  private currentRequest;
12
14
  private getAccessToken;
@@ -15,7 +17,7 @@ export default class BotonicPluginFlowBuilder implements Plugin {
15
17
  constructor(options: BotonicPluginFlowBuilderOptions);
16
18
  pre(request: PluginPreRequest): Promise<void>;
17
19
  post(_request: PluginPostRequest): Promise<void>;
18
- getContent(nodeOrId: HtNodeWithContent | string, locale: string, prevContents?: FlowContent[]): Promise<{
20
+ getContents(nodeOrId: HtNodeWithContent | string, locale: string, prevContents?: FlowContent[]): Promise<{
19
21
  contents: FlowContent[];
20
22
  handoffNode?: HtHandoffNode;
21
23
  }>;
package/lib/esm/index.js CHANGED
@@ -7,10 +7,8 @@ import { resolveGetAccessToken } from './utils';
7
7
  export default class BotonicPluginFlowBuilder {
8
8
  constructor(options) {
9
9
  this.options = options;
10
- this.cmsApi = new FlowBuilderApi({
11
- url: options.flowUrl,
12
- flow: options.flow,
13
- });
10
+ this.flowUrl = options.flowUrl;
11
+ this.flow = options.flow;
14
12
  this.getLocale = options.getLocale;
15
13
  this.getAccessToken = resolveGetAccessToken(options);
16
14
  this.trackEvent = options.trackEvent;
@@ -19,26 +17,30 @@ export default class BotonicPluginFlowBuilder {
19
17
  }
20
18
  async pre(request) {
21
19
  this.currentRequest = request;
22
- await this.cmsApi.init(this.getAccessToken(request.session));
20
+ this.cmsApi = await FlowBuilderApi.create({
21
+ url: this.flowUrl,
22
+ flow: this.flow,
23
+ accessToken: this.getAccessToken(request.session),
24
+ });
23
25
  }
24
26
  async post(_request) { }
25
- async getContent(nodeOrId, locale, prevContents) {
27
+ async getContents(nodeOrId, locale, prevContents) {
26
28
  const contents = prevContents || [];
27
29
  let node = nodeOrId;
28
30
  if (typeof nodeOrId === 'string') {
29
- node = this.cmsApi.getNode(nodeOrId);
31
+ node = this.cmsApi.getNodeById(nodeOrId);
30
32
  }
31
33
  const content = await this.getFlowContent(node, locale);
32
34
  if (node.type === HtNodeWithContentType.FUNCTION) {
33
35
  const targetId = await this.callFunction(node, locale);
34
- return this.getContent(targetId, locale, contents);
36
+ return this.getContents(targetId, locale, contents);
35
37
  }
36
38
  else {
37
39
  if (content)
38
40
  contents.push(content);
39
41
  // TODO: prevent infinite recursive calls
40
42
  if (node.follow_up)
41
- return this.getContent(node.follow_up.id, locale, contents);
43
+ return this.getContents(node.follow_up.id, locale, contents);
42
44
  }
43
45
  return { contents, handoffNode: isHandoffNode(node) ? node : undefined };
44
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export interface BotonicPluginFlowBuilderOptions {
12
12
  export interface FlowBuilderApiOptions {
13
13
  url: string;
14
14
  flow?: HtFlowBuilderData;
15
+ accessToken: string;
15
16
  }
16
17
  export declare enum ProcessEnvNodeEnvs {
17
18
  PRODUCTION = "production",
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,iDAA2B,CAAA;AAC7B,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAyBA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,iDAA2B,CAAA;AAC7B,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/plugin-flow-builder",
3
- "version": "0.22.1",
3
+ "version": "0.22.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",
@@ -47,7 +47,7 @@
47
47
  },
48
48
  "dependencies": {
49
49
  "@babel/runtime": "^7.21.0",
50
- "@botonic/react": "^0.22.0",
50
+ "@botonic/react": "^0.22.2",
51
51
  "axios": "^1.3.6"
52
52
  }
53
53
  }
package/src/.DS_Store ADDED
Binary file
package/src/action.tsx CHANGED
@@ -34,11 +34,7 @@ export class FlowBuilderAction extends React.Component<FlowBuilderActionProps> {
34
34
  request.input.data,
35
35
  locale
36
36
  )
37
- if (intentNode) {
38
- targetNode = intentNode
39
- } else if (keywordNode) {
40
- targetNode = keywordNode
41
- }
37
+ targetNode = intentNode ?? keywordNode ?? targetNode
42
38
  }
43
39
 
44
40
  if (!targetNode) {
@@ -48,7 +44,7 @@ export class FlowBuilderAction extends React.Component<FlowBuilderActionProps> {
48
44
  alternateFallbackMessage = !alternateFallbackMessage
49
45
  }
50
46
 
51
- const { contents, handoffNode } = await flowBuilderPlugin.getContent(
47
+ const { contents, handoffNode } = await flowBuilderPlugin.getContents(
52
48
  targetNode,
53
49
  locale
54
50
  )
package/src/api.ts CHANGED
@@ -15,24 +15,28 @@ import {
15
15
  import { FlowBuilderApiOptions } from './types'
16
16
 
17
17
  export class FlowBuilderApi {
18
- private readonly url: string
19
- public flow: HtFlowBuilderData
18
+ url: string
19
+ flow: HtFlowBuilderData
20
20
 
21
- constructor(options: FlowBuilderApiOptions) {
22
- this.url = options.url
23
- if (options.flow) {
24
- this.flow = options.flow
25
- }
21
+ private constructor() {}
22
+
23
+ static async create(options: FlowBuilderApiOptions): Promise<FlowBuilderApi> {
24
+ const newApi = new FlowBuilderApi()
25
+
26
+ newApi.url = options.url
27
+ newApi.flow = options.flow ?? (await newApi.getFlow(options.accessToken))
28
+
29
+ return newApi
26
30
  }
27
31
 
28
- async init(token: string) {
32
+ private async getFlow(token: string): Promise<HtFlowBuilderData> {
29
33
  const { data } = await axios.get(this.url, {
30
34
  headers: { Authorization: `Bearer ${token}` },
31
35
  })
32
- this.flow = data
36
+ return data as HtFlowBuilderData
33
37
  }
34
38
 
35
- getNode<T extends HtNodeComponent>(id: string): T {
39
+ getNodeById<T extends HtNodeComponent>(id: string): T {
36
40
  const node = this.flow.nodes.find(node => node.id === id)
37
41
  if (!node) throw Error(`Node with id: '${id}' not found`)
38
42
  return node as T
@@ -51,7 +55,7 @@ export class FlowBuilderApi {
51
55
  node => node.type === HtNodeStartType.STARTUP
52
56
  ) as HtStartNode | undefined
53
57
  if (!startUpNode) throw new Error('Start-up id must be defined')
54
- return this.getNode(startUpNode.target.id)
58
+ return this.getNodeById(startUpNode.target.id)
55
59
  }
56
60
 
57
61
  getFallbackNode(alternate: boolean): HtNodeWithContent {
@@ -67,11 +71,11 @@ export class FlowBuilderApi {
67
71
  }
68
72
  const fallbackSecondMessage = fallbackNode.content.second_message
69
73
  if (!fallbackSecondMessage) {
70
- return this.getNode(fallbackFirstMessage.id)
74
+ return this.getNodeById(fallbackFirstMessage.id)
71
75
  }
72
76
  return alternate
73
- ? this.getNode(fallbackFirstMessage.id)
74
- : this.getNode(fallbackSecondMessage.id)
77
+ ? this.getNodeById(fallbackFirstMessage.id)
78
+ : this.getNodeById(fallbackSecondMessage.id)
75
79
  }
76
80
 
77
81
  getNodeByIntent(input: Input, locale: string): HtNodeWithContent | undefined {
@@ -91,7 +95,7 @@ export class FlowBuilderApi {
91
95
  )
92
96
  return (
93
97
  matchedIntentNode?.target &&
94
- this.getNode<HtNodeWithContent>(matchedIntentNode?.target.id)
98
+ this.getNodeById<HtNodeWithContent>(matchedIntentNode?.target.id)
95
99
  )
96
100
  }
97
101
  } catch (error) {
@@ -131,7 +135,9 @@ export class FlowBuilderApi {
131
135
  this.matchKeywords(node, userInput, locale)
132
136
  )
133
137
  if (matchedKeywordNodes.length > 0 && matchedKeywordNodes[0].target) {
134
- return this.getNode<HtNodeWithContent>(matchedKeywordNodes[0].target.id)
138
+ return this.getNodeById<HtNodeWithContent>(
139
+ matchedKeywordNodes[0].target.id
140
+ )
135
141
  }
136
142
  } catch (error) {
137
143
  console.error(`Error getting node by keyword '${userInput}': `, error)
@@ -152,11 +158,6 @@ export class FlowBuilderApi {
152
158
  }
153
159
 
154
160
  private containsAnyKeywords(input: string, keywords: string[]): boolean {
155
- for (let i = 0; i < keywords.length; i++) {
156
- if (input.includes(keywords[i])) {
157
- return true
158
- }
159
- }
160
- return false
161
+ return keywords.some(keyword => input.includes(keyword))
161
162
  }
162
163
  }
Binary file
@@ -29,11 +29,11 @@ export class FlowButton extends ContentFieldsBase {
29
29
  newButton.payload = cmsButton.target.id
30
30
  }
31
31
  if (cmsButton.payload && payloadId) {
32
- const payloadNode = cmsApi.getNode(payloadId) as HtPayloadNode
32
+ const payloadNode = cmsApi.getNodeById(payloadId) as HtPayloadNode
33
33
  newButton.payload = payloadNode.content.payload
34
34
  }
35
35
  if (cmsButton.url && urlId) {
36
- const payloadNode = cmsApi.getNode(urlId) as HtUrlNode
36
+ const payloadNode = cmsApi.getNodeById(urlId) as HtUrlNode
37
37
  newButton.url = payloadNode.content.url
38
38
  }
39
39
 
@@ -1,4 +1,4 @@
1
- import { WhatsappButtonListRowProps } from '@botonic/react/lib/cjs/components/whatsapp-button-list'
1
+ import { WhatsappButtonListRowProps } from '@botonic/react'
2
2
 
3
3
  import { ContentFieldsBase } from '../content-fields-base'
4
4
  import { HtWhatsappButtonListRow } from '../hubtype-fields'
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  WhatsappButtonListRowProps,
3
3
  WhatsappButtonListSectionProps,
4
- } from '@botonic/react/lib/cjs/components/whatsapp-button-list'
4
+ } from '@botonic/react'
5
5
 
6
6
  import { HtWhatsappButtonListSection } from '../hubtype-fields'
7
7
  import { ContentFieldsBase } from './../content-fields-base'
@@ -36,10 +36,8 @@ export class FlowWhatsappButtonList extends ContentFieldsBase {
36
36
  <WhatsappButtonList
37
37
  key={id}
38
38
  body={this.text}
39
- action={{
40
- button: this.listButtonText,
41
- sections: this.sections.map(section => section.toBotonic()),
42
- }}
39
+ button={this.listButtonText}
40
+ sections={this.sections.map(section => section.toBotonic())}
43
41
  ></WhatsappButtonList>
44
42
  )
45
43
  }
package/src/handoff.ts CHANGED
@@ -57,9 +57,10 @@ async function getOnFinishPayload(
57
57
  locale: string
58
58
  ): Promise<string | undefined> {
59
59
  if (handoffNode.target?.id) {
60
- const handoffTargetNode = flowBuilderPlugin.cmsApi.getNode<HtHandoffNode>(
61
- handoffNode.target?.id
62
- )
60
+ const handoffTargetNode =
61
+ flowBuilderPlugin.cmsApi.getNodeById<HtHandoffNode>(
62
+ handoffNode.target?.id
63
+ )
63
64
  if (handoffTargetNode?.id) return handoffTargetNode?.id
64
65
  }
65
66
 
@@ -69,7 +70,7 @@ async function getOnFinishPayload(
69
70
 
70
71
  if (!payloadId) return undefined
71
72
 
72
- const actionPayload = flowBuilderPlugin.cmsApi.getNode(payloadId)
73
+ const actionPayload = flowBuilderPlugin.cmsApi.getNodeById(payloadId)
73
74
 
74
75
  return (actionPayload as HtPayloadNode).content.payload
75
76
  }
package/src/index.ts CHANGED
@@ -16,6 +16,7 @@ import {
16
16
  FlowWhatsappButtonList,
17
17
  } from './content-fields'
18
18
  import {
19
+ HtFlowBuilderData,
19
20
  HtFunctionNode,
20
21
  HtHandoffNode,
21
22
  HtNodeComponent,
@@ -29,6 +30,8 @@ import { resolveGetAccessToken } from './utils'
29
30
 
30
31
  export default class BotonicPluginFlowBuilder implements Plugin {
31
32
  public cmsApi: FlowBuilderApi
33
+ private flowUrl: string
34
+ private flow?: HtFlowBuilderData
32
35
  private functions: Record<any, any>
33
36
  private currentRequest: PluginPreRequest
34
37
  private getAccessToken: (session: Session) => string
@@ -40,10 +43,8 @@ export default class BotonicPluginFlowBuilder implements Plugin {
40
43
  ) => Promise<void>
41
44
 
42
45
  constructor(readonly options: BotonicPluginFlowBuilderOptions) {
43
- this.cmsApi = new FlowBuilderApi({
44
- url: options.flowUrl,
45
- flow: options.flow,
46
- })
46
+ this.flowUrl = options.flowUrl
47
+ this.flow = options.flow
47
48
  this.getLocale = options.getLocale
48
49
  this.getAccessToken = resolveGetAccessToken(options)
49
50
  this.trackEvent = options.trackEvent
@@ -53,12 +54,16 @@ export default class BotonicPluginFlowBuilder implements Plugin {
53
54
 
54
55
  async pre(request: PluginPreRequest): Promise<void> {
55
56
  this.currentRequest = request
56
- await this.cmsApi.init(this.getAccessToken(request.session))
57
+ this.cmsApi = await FlowBuilderApi.create({
58
+ url: this.flowUrl,
59
+ flow: this.flow,
60
+ accessToken: this.getAccessToken(request.session),
61
+ })
57
62
  }
58
63
 
59
64
  async post(_request: PluginPostRequest): Promise<void> {}
60
65
 
61
- async getContent(
66
+ async getContents(
62
67
  nodeOrId: HtNodeWithContent | string,
63
68
  locale: string,
64
69
  prevContents?: FlowContent[]
@@ -66,20 +71,20 @@ export default class BotonicPluginFlowBuilder implements Plugin {
66
71
  const contents = prevContents || []
67
72
  let node = nodeOrId as HtNodeWithContent
68
73
  if (typeof nodeOrId === 'string') {
69
- node = this.cmsApi.getNode(nodeOrId) as HtNodeWithContent
74
+ node = this.cmsApi.getNodeById(nodeOrId) as HtNodeWithContent
70
75
  }
71
76
 
72
77
  const content = await this.getFlowContent(node, locale)
73
78
 
74
79
  if (node.type === HtNodeWithContentType.FUNCTION) {
75
80
  const targetId = await this.callFunction(node, locale)
76
- return this.getContent(targetId, locale, contents)
81
+ return this.getContents(targetId, locale, contents)
77
82
  } else {
78
83
  if (content) contents.push(content)
79
84
  // TODO: prevent infinite recursive calls
80
85
 
81
86
  if (node.follow_up)
82
- return this.getContent(node.follow_up.id, locale, contents)
87
+ return this.getContents(node.follow_up.id, locale, contents)
83
88
  }
84
89
 
85
90
  return { contents, handoffNode: isHandoffNode(node) ? node : undefined }
package/src/types.ts CHANGED
@@ -20,6 +20,7 @@ export interface BotonicPluginFlowBuilderOptions {
20
20
  export interface FlowBuilderApiOptions {
21
21
  url: string
22
22
  flow?: HtFlowBuilderData
23
+ accessToken: string
23
24
  }
24
25
 
25
26
  export enum ProcessEnvNodeEnvs {