@botonic/plugin-flow-builder 0.42.5 → 0.43.0-alpha.1

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 (90) hide show
  1. package/lib/cjs/action/payload.js +29 -2
  2. package/lib/cjs/action/payload.js.map +1 -1
  3. package/lib/cjs/api.d.ts +2 -0
  4. package/lib/cjs/api.js +11 -1
  5. package/lib/cjs/api.js.map +1 -1
  6. package/lib/cjs/constants.d.ts +2 -1
  7. package/lib/cjs/constants.js +3 -2
  8. package/lib/cjs/constants.js.map +1 -1
  9. package/lib/cjs/content-fields/content-fields-base.d.ts +2 -0
  10. package/lib/cjs/content-fields/content-fields-base.js +21 -0
  11. package/lib/cjs/content-fields/content-fields-base.js.map +1 -1
  12. package/lib/cjs/content-fields/flow-carousel.d.ts +2 -0
  13. package/lib/cjs/content-fields/flow-carousel.js +70 -27
  14. package/lib/cjs/content-fields/flow-carousel.js.map +1 -1
  15. package/lib/cjs/content-fields/flow-text.d.ts +0 -2
  16. package/lib/cjs/content-fields/flow-text.js +1 -21
  17. package/lib/cjs/content-fields/flow-text.js.map +1 -1
  18. package/lib/cjs/content-fields/flow-whatsapp-template.d.ts +28 -0
  19. package/lib/cjs/content-fields/flow-whatsapp-template.js +163 -0
  20. package/lib/cjs/content-fields/flow-whatsapp-template.js.map +1 -0
  21. package/lib/cjs/content-fields/hubtype-fields/carousel.d.ts +1 -0
  22. package/lib/cjs/content-fields/hubtype-fields/common.d.ts +6 -0
  23. package/lib/cjs/content-fields/hubtype-fields/index.d.ts +1 -0
  24. package/lib/cjs/content-fields/hubtype-fields/index.js +1 -0
  25. package/lib/cjs/content-fields/hubtype-fields/index.js.map +1 -1
  26. package/lib/cjs/content-fields/hubtype-fields/node-types.d.ts +1 -0
  27. package/lib/cjs/content-fields/hubtype-fields/node-types.js +1 -0
  28. package/lib/cjs/content-fields/hubtype-fields/node-types.js.map +1 -1
  29. package/lib/cjs/content-fields/hubtype-fields/nodes.d.ts +2 -1
  30. package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.d.ts +66 -0
  31. package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js +3 -0
  32. package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js.map +1 -0
  33. package/lib/cjs/content-fields/index.d.ts +3 -2
  34. package/lib/cjs/content-fields/index.js +3 -1
  35. package/lib/cjs/content-fields/index.js.map +1 -1
  36. package/lib/cjs/flow-factory.js +2 -0
  37. package/lib/cjs/flow-factory.js.map +1 -1
  38. package/lib/esm/action/payload.js +30 -3
  39. package/lib/esm/action/payload.js.map +1 -1
  40. package/lib/esm/api.d.ts +2 -0
  41. package/lib/esm/api.js +11 -1
  42. package/lib/esm/api.js.map +1 -1
  43. package/lib/esm/constants.d.ts +2 -1
  44. package/lib/esm/constants.js +2 -1
  45. package/lib/esm/constants.js.map +1 -1
  46. package/lib/esm/content-fields/content-fields-base.d.ts +2 -0
  47. package/lib/esm/content-fields/content-fields-base.js +21 -0
  48. package/lib/esm/content-fields/content-fields-base.js.map +1 -1
  49. package/lib/esm/content-fields/flow-carousel.d.ts +2 -0
  50. package/lib/esm/content-fields/flow-carousel.js +72 -29
  51. package/lib/esm/content-fields/flow-carousel.js.map +1 -1
  52. package/lib/esm/content-fields/flow-text.d.ts +0 -2
  53. package/lib/esm/content-fields/flow-text.js +2 -22
  54. package/lib/esm/content-fields/flow-text.js.map +1 -1
  55. package/lib/esm/content-fields/flow-whatsapp-template.d.ts +28 -0
  56. package/lib/esm/content-fields/flow-whatsapp-template.js +159 -0
  57. package/lib/esm/content-fields/flow-whatsapp-template.js.map +1 -0
  58. package/lib/esm/content-fields/hubtype-fields/carousel.d.ts +1 -0
  59. package/lib/esm/content-fields/hubtype-fields/common.d.ts +6 -0
  60. package/lib/esm/content-fields/hubtype-fields/index.d.ts +1 -0
  61. package/lib/esm/content-fields/hubtype-fields/index.js +1 -0
  62. package/lib/esm/content-fields/hubtype-fields/index.js.map +1 -1
  63. package/lib/esm/content-fields/hubtype-fields/node-types.d.ts +1 -0
  64. package/lib/esm/content-fields/hubtype-fields/node-types.js +1 -0
  65. package/lib/esm/content-fields/hubtype-fields/node-types.js.map +1 -1
  66. package/lib/esm/content-fields/hubtype-fields/nodes.d.ts +2 -1
  67. package/lib/esm/content-fields/hubtype-fields/whatsapp-template.d.ts +66 -0
  68. package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js +2 -0
  69. package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js.map +1 -0
  70. package/lib/esm/content-fields/index.d.ts +3 -2
  71. package/lib/esm/content-fields/index.js +2 -1
  72. package/lib/esm/content-fields/index.js.map +1 -1
  73. package/lib/esm/flow-factory.js +3 -1
  74. package/lib/esm/flow-factory.js.map +1 -1
  75. package/package.json +3 -3
  76. package/src/action/payload.ts +39 -1
  77. package/src/api.ts +14 -1
  78. package/src/constants.ts +2 -1
  79. package/src/content-fields/content-fields-base.ts +31 -0
  80. package/src/content-fields/flow-carousel.tsx +103 -33
  81. package/src/content-fields/flow-text.tsx +2 -28
  82. package/src/content-fields/flow-whatsapp-template.tsx +274 -0
  83. package/src/content-fields/hubtype-fields/carousel.ts +1 -0
  84. package/src/content-fields/hubtype-fields/common.ts +7 -0
  85. package/src/content-fields/hubtype-fields/index.ts +1 -0
  86. package/src/content-fields/hubtype-fields/node-types.ts +1 -0
  87. package/src/content-fields/hubtype-fields/nodes.ts +2 -0
  88. package/src/content-fields/hubtype-fields/whatsapp-template.ts +84 -0
  89. package/src/content-fields/index.ts +3 -0
  90. package/src/flow-factory.ts +4 -0
@@ -7,14 +7,17 @@ const uuid_1 = require("uuid");
7
7
  const constants_1 = require("../constants");
8
8
  const tracking_1 = require("../tracking");
9
9
  function getContentsByPayload(context) {
10
- var _a, _b;
10
+ var _a, _b, _c;
11
11
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
12
12
  const { cmsApi, flowBuilderPlugin, request, contentID } = context;
13
13
  if ((_a = request.input.payload) === null || _a === void 0 ? void 0 : _a.startsWith(constants_1.AGENT_RATING_PAYLOAD)) {
14
14
  return yield resolveRatingPayload(context);
15
15
  }
16
+ if ((_b = request.input.payload) === null || _b === void 0 ? void 0 : _b.startsWith(constants_1.PUSH_FLOW_PAYLOAD)) {
17
+ return yield resolvePushFlowPayload(context);
18
+ }
16
19
  const id = contentID
17
- ? (_b = cmsApi.getNodeByContentID(contentID)) === null || _b === void 0 ? void 0 : _b.id
20
+ ? (_c = cmsApi.getNodeByContentID(contentID)) === null || _c === void 0 ? void 0 : _c.id
18
21
  : request.input.payload;
19
22
  const targetNode = id ? cmsApi.getNodeById(id) : undefined;
20
23
  if (targetNode) {
@@ -53,4 +56,28 @@ function resolveRatingPayload(context) {
53
56
  return [];
54
57
  });
55
58
  }
59
+ function resolvePushFlowPayload(context) {
60
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
61
+ const { cmsApi, flowBuilderPlugin, request } = context;
62
+ if (!request.input.payload) {
63
+ return [];
64
+ }
65
+ const parts = request.input.payload.split(constants_1.SEPARATOR);
66
+ const pushFlowId = parts.length > 1 ? parts[1] : '';
67
+ if (!pushFlowId) {
68
+ return [];
69
+ }
70
+ try {
71
+ const pushFlowNode = cmsApi.getNodeByCampaignId(pushFlowId);
72
+ if (!pushFlowNode) {
73
+ return [];
74
+ }
75
+ return yield flowBuilderPlugin.getContentsByNode(pushFlowNode);
76
+ }
77
+ catch (_a) {
78
+ // Campaign not found - return empty to trigger fallback
79
+ return [];
80
+ }
81
+ });
82
+ }
56
83
  //# sourceMappingURL=payload.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../src/action/payload.ts"],"names":[],"mappings":";;;;AAAA,wCAA2E;AAC3E,+BAAiC;AAEjC,4CAAmD;AAGnD,0CAAwC;AAGxC,SAAsB,oBAAoB,CACxC,OAA2B;;;QAE3B,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;QACjE,IAAI,MAAA,OAAO,CAAC,KAAK,CAAC,OAAO,0CAAE,UAAU,CAAC,gCAAoB,CAAC,EAAE;YAC3D,OAAO,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAA;SAC3C;QAED,MAAM,EAAE,GAAG,SAAS;YAClB,CAAC,CAAC,MAAA,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,0CAAE,EAAE;YAC1C,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAA;QACzB,MAAM,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAoB,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAE7E,IAAI,UAAU,EAAE;YACd,OAAO,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;SAC7D;QAED,OAAO,EAAE,CAAA;;CACV;AAlBD,oDAkBC;AAED,SAAe,oBAAoB,CACjC,OAA2B;;QAE3B,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;QAEtD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE;YAC1B,OAAO,EAAE,CAAA;SACV;QAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,GAC5D,iBAAiB,CAAC,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAEjE,IAAI,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE;YACpC,MAAM,KAAK,GAAkB;gBAC3B,MAAM,EAAE,kBAAW,CAAC,YAAY;gBAChC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,gBAAgB;gBAClD,eAAe,EAAE,IAAA,SAAI,GAAE,CAAC,QAAQ,EAAE;gBAClC,eAAe;gBACf,cAAc;gBACd,MAAM,EAAE,IAAI;gBACZ,KAAK;aACN,CAAA;YAED,MAAM,IAAA,sBAAe,EAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;YAC7C,MAAM,IAAA,qBAAU,EAAC,OAAO,EAAE,kBAAW,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;SAC3D;QAED,MAAM,UAAU,GAAG,MAAM;YACvB,CAAC,CAAC,MAAM,CAAC,WAAW,CAAoB,MAAM,CAAC,EAAE,CAAC;YAClD,CAAC,CAAC,SAAS,CAAA;QAEb,IAAI,UAAU,EAAE;YACd,OAAO,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;SAC7D;QAED,OAAO,EAAE,CAAA;IACX,CAAC;CAAA"}
1
+ {"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../src/action/payload.ts"],"names":[],"mappings":"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"}
package/lib/cjs/api.d.ts CHANGED
@@ -12,6 +12,7 @@ export declare class FlowBuilderApi {
12
12
  private getFlow;
13
13
  private updateSessionWithUserInfo;
14
14
  getNodeByFlowId(id: string): HtNodeWithContent;
15
+ getNodeByCampaignId<T extends HtNodeComponent>(id: string): T;
15
16
  getNodeById<T extends HtNodeComponent>(id: string): T;
16
17
  getRatingNodeByButtonId(id: string): HtRatingNode;
17
18
  getRatingButtonById(ratingNode: HtRatingNode, id: string): HtRatingButton;
@@ -30,6 +31,7 @@ export declare class FlowBuilderApi {
30
31
  createPayloadWithParams(botActionNode: HtBotActionNode): string;
31
32
  private getFollowUpContentID;
32
33
  getFlowName(flowId: string): string;
34
+ getCampaignFlowName(campaignId: string): string;
33
35
  getStartNodeKnowledgeBaseFlow(): HtNodeWithContent | undefined;
34
36
  getStartNodeAiAgentFlow(): HtNodeWithContent | undefined;
35
37
  isKnowledgeBaseEnabled(): boolean;
package/lib/cjs/api.js CHANGED
@@ -48,6 +48,12 @@ class FlowBuilderApi {
48
48
  throw Error(`SubFlow with id: '${id}' not found`);
49
49
  return this.getNodeById(subFlow.start_node_id);
50
50
  }
51
+ getNodeByCampaignId(id) {
52
+ const campaign = this.flow.campaigns.find(campaign => campaign.id === id);
53
+ if (!campaign)
54
+ throw Error(`Campaign with id: '${id}' not found`);
55
+ return this.getNodeById(campaign.start_node_id);
56
+ }
51
57
  getNodeById(id) {
52
58
  const node = this.flow.nodes.find(node => node.id === id);
53
59
  if (!node)
@@ -146,7 +152,11 @@ class FlowBuilderApi {
146
152
  }
147
153
  getFlowName(flowId) {
148
154
  const flow = this.flow.flows.find(flow => flow.id === flowId);
149
- return flow ? flow.name : '';
155
+ return flow ? flow.name : this.getCampaignFlowName(flowId);
156
+ }
157
+ getCampaignFlowName(campaignId) {
158
+ const campaign = this.flow.campaigns.find(campaign => campaign.id === campaignId);
159
+ return campaign ? campaign.name : '';
150
160
  }
151
161
  getStartNodeKnowledgeBaseFlow() {
152
162
  const knowledgeBaseFlow = this.flow.flows.find(flow => flow.name === constants_1.KNOWLEDGE_BASE_FLOW_NAME);
@@ -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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"}
@@ -2,11 +2,12 @@ export declare const FLOW_BUILDER_API_URL_PROD: string;
2
2
  export declare const SEPARATOR = "|";
3
3
  export declare const SOURCE_INFO_SEPARATOR: string;
4
4
  export declare const EMPTY_PAYLOAD = "fb-empty-payload";
5
- export declare const VARIABLE_PATTERN: RegExp;
5
+ export declare const VARIABLE_PATTERN_GLOBAL: RegExp;
6
6
  export declare const ACCESS_TOKEN_VARIABLE_KEY = "_access_token";
7
7
  export declare const REG_EXP_PATTERN: RegExp;
8
8
  export declare const UUID_REGEXP: RegExp;
9
9
  export declare const AGENT_RATING_PAYLOAD = "agent-rating";
10
+ export declare const PUSH_FLOW_PAYLOAD = "push-flow";
10
11
  export declare const MAIN_FLOW_NAME = "Main";
11
12
  export declare const KNOWLEDGE_BASE_FLOW_NAME = "Knowledge base";
12
13
  export declare const AI_AGENTS_FLOW_NAME = "AI Agents";
@@ -1,16 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FALLBACK_FLOW_NAME = exports.AI_AGENTS_FLOW_NAME = exports.KNOWLEDGE_BASE_FLOW_NAME = exports.MAIN_FLOW_NAME = exports.AGENT_RATING_PAYLOAD = exports.UUID_REGEXP = exports.REG_EXP_PATTERN = exports.ACCESS_TOKEN_VARIABLE_KEY = exports.VARIABLE_PATTERN = exports.EMPTY_PAYLOAD = exports.SOURCE_INFO_SEPARATOR = exports.SEPARATOR = exports.FLOW_BUILDER_API_URL_PROD = void 0;
3
+ exports.FALLBACK_FLOW_NAME = exports.AI_AGENTS_FLOW_NAME = exports.KNOWLEDGE_BASE_FLOW_NAME = exports.MAIN_FLOW_NAME = exports.PUSH_FLOW_PAYLOAD = exports.AGENT_RATING_PAYLOAD = exports.UUID_REGEXP = exports.REG_EXP_PATTERN = exports.ACCESS_TOKEN_VARIABLE_KEY = exports.VARIABLE_PATTERN_GLOBAL = exports.EMPTY_PAYLOAD = exports.SOURCE_INFO_SEPARATOR = exports.SEPARATOR = exports.FLOW_BUILDER_API_URL_PROD = void 0;
4
4
  exports.FLOW_BUILDER_API_URL_PROD = process.env.HUBTYPE_API_URL || 'https://api.hubtype.com';
5
5
  exports.SEPARATOR = '|';
6
6
  exports.SOURCE_INFO_SEPARATOR = `${exports.SEPARATOR}source_`;
7
7
  exports.EMPTY_PAYLOAD = 'fb-empty-payload';
8
- exports.VARIABLE_PATTERN = /{([^}]+)}/g;
8
+ exports.VARIABLE_PATTERN_GLOBAL = /{([^}]+)}/g;
9
9
  exports.ACCESS_TOKEN_VARIABLE_KEY = '_access_token';
10
10
  exports.REG_EXP_PATTERN = /^\/(.*)\/([gimyus]*)$/;
11
11
  exports.UUID_REGEXP = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
12
12
  /* ********** PAYLOADS ********** */
13
13
  exports.AGENT_RATING_PAYLOAD = 'agent-rating';
14
+ exports.PUSH_FLOW_PAYLOAD = 'push-flow';
14
15
  /* ********** FLOW NAMES ********** */
15
16
  exports.MAIN_FLOW_NAME = 'Main';
16
17
  exports.KNOWLEDGE_BASE_FLOW_NAME = 'Knowledge base';
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,yBAAyB,GACpC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,yBAAyB,CAAA;AAC7C,QAAA,SAAS,GAAG,GAAG,CAAA;AACf,QAAA,qBAAqB,GAAG,GAAG,iBAAS,SAAS,CAAA;AAC7C,QAAA,aAAa,GAAG,kBAAkB,CAAA;AAClC,QAAA,gBAAgB,GAAG,YAAY,CAAA;AAC/B,QAAA,yBAAyB,GAAG,eAAe,CAAA;AAC3C,QAAA,eAAe,GAAG,uBAAuB,CAAA;AACzC,QAAA,WAAW,GACtB,iEAAiE,CAAA;AAEnE,oCAAoC;AACvB,QAAA,oBAAoB,GAAG,cAAc,CAAA;AAElD,sCAAsC;AACzB,QAAA,cAAc,GAAG,MAAM,CAAA;AACvB,QAAA,wBAAwB,GAAG,gBAAgB,CAAA;AAC3C,QAAA,mBAAmB,GAAG,WAAW,CAAA;AACjC,QAAA,kBAAkB,GAAG,UAAU,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,yBAAyB,GACpC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,yBAAyB,CAAA;AAC7C,QAAA,SAAS,GAAG,GAAG,CAAA;AACf,QAAA,qBAAqB,GAAG,GAAG,iBAAS,SAAS,CAAA;AAC7C,QAAA,aAAa,GAAG,kBAAkB,CAAA;AAClC,QAAA,uBAAuB,GAAG,YAAY,CAAA;AACtC,QAAA,yBAAyB,GAAG,eAAe,CAAA;AAC3C,QAAA,eAAe,GAAG,uBAAuB,CAAA;AACzC,QAAA,WAAW,GACtB,iEAAiE,CAAA;AAEnE,oCAAoC;AACvB,QAAA,oBAAoB,GAAG,cAAc,CAAA;AACrC,QAAA,iBAAiB,GAAG,WAAW,CAAA;AAE5C,sCAAsC;AACzB,QAAA,cAAc,GAAG,MAAM,CAAA;AACvB,QAAA,wBAAwB,GAAG,gBAAgB,CAAA;AAC3C,QAAA,mBAAmB,GAAG,WAAW,CAAA;AACjC,QAAA,kBAAkB,GAAG,UAAU,CAAA"}
@@ -10,4 +10,6 @@ export declare abstract class ContentFieldsBase {
10
10
  static getAssetByLocale(locale: string, asset: HtMediaFileLocale[]): string;
11
11
  static getVideoByLocale(locale: string, video: HtVideoLocale[]): string;
12
12
  static getQueueByLocale(locale: string, queues: HtQueueLocale[]): HtQueueLocale | undefined;
13
+ replaceVariables(text: string, request: ActionRequest): string;
14
+ private isValidType;
13
15
  }
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ContentFieldsBase = void 0;
4
+ const constants_1 = require("../constants");
5
+ const utils_1 = require("../utils");
4
6
  class ContentFieldsBase {
5
7
  constructor(id) {
6
8
  this.id = id;
@@ -23,6 +25,25 @@ class ContentFieldsBase {
23
25
  static getQueueByLocale(locale, queues) {
24
26
  return queues.find(queue => queue.locale === locale);
25
27
  }
28
+ replaceVariables(text, request) {
29
+ const matches = text.match(constants_1.VARIABLE_PATTERN_GLOBAL);
30
+ let replacedText = text;
31
+ if (matches && request) {
32
+ matches.forEach(match => {
33
+ const keyPath = match.slice(1, -1);
34
+ const botVariable = keyPath.endsWith(constants_1.ACCESS_TOKEN_VARIABLE_KEY)
35
+ ? match
36
+ : (0, utils_1.getValueFromKeyPath)(request, keyPath);
37
+ // TODO In local if change variable and render multiple times the value is always the last update
38
+ replacedText = replacedText.replace(match, this.isValidType(botVariable) ? botVariable : match);
39
+ });
40
+ }
41
+ return replacedText;
42
+ }
43
+ isValidType(botVariable) {
44
+ const validTypes = ['boolean', 'string', 'number'];
45
+ return validTypes.includes(typeof botVariable);
46
+ }
26
47
  }
27
48
  exports.ContentFieldsBase = ContentFieldsBase;
28
49
  //# sourceMappingURL=content-fields-base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"content-fields-base.js","sourceRoot":"","sources":["../../../src/content-fields/content-fields-base.ts"],"names":[],"mappings":";;;AAUA,MAAsB,iBAAiB;IAIrC,YAA4B,EAAU;QAAV,OAAE,GAAF,EAAE,CAAQ;IAAG,CAAC;IAI1C,MAAM,CAAC,eAAe,CAAC,MAAc,EAAE,IAAoB;;QACzD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QAClD,OAAO,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,mCAAI,EAAE,CAAA;IAC9B,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,MAAc,EAAE,KAA0B;;QAChE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QACnD,OAAO,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,mCAAI,EAAE,CAAA;IAC3B,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,MAAc,EAAE,KAAsB;;QAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QACnD,OAAO,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,mCAAI,EAAE,CAAA;IAC1B,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,MAAc,EACd,MAAuB;QAEvB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;IACtD,CAAC;CACF;AA7BD,8CA6BC"}
1
+ {"version":3,"file":"content-fields-base.js","sourceRoot":"","sources":["../../../src/content-fields/content-fields-base.ts"],"names":[],"mappings":";;;AAEA,4CAGqB;AACrB,oCAA8C;AAS9C,MAAsB,iBAAiB;IAIrC,YAA4B,EAAU;QAAV,OAAE,GAAF,EAAE,CAAQ;IAAG,CAAC;IAI1C,MAAM,CAAC,eAAe,CAAC,MAAc,EAAE,IAAoB;;QACzD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QAClD,OAAO,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,mCAAI,EAAE,CAAA;IAC9B,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,MAAc,EAAE,KAA0B;;QAChE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QACnD,OAAO,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,mCAAI,EAAE,CAAA;IAC3B,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,MAAc,EAAE,KAAsB;;QAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QACnD,OAAO,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,mCAAI,EAAE,CAAA;IAC1B,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,MAAc,EACd,MAAuB;QAEvB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;IACtD,CAAC;IAED,gBAAgB,CAAC,IAAY,EAAE,OAAsB;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,mCAAuB,CAAC,CAAA;QAEnD,IAAI,YAAY,GAAG,IAAI,CAAA;QACvB,IAAI,OAAO,IAAI,OAAO,EAAE;YACtB,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACtB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBAClC,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,qCAAyB,CAAC;oBAC7D,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,IAAA,2BAAmB,EAAC,OAAO,EAAE,OAAO,CAAC,CAAA;gBACzC,iGAAiG;gBACjG,YAAY,GAAG,YAAY,CAAC,OAAO,CACjC,KAAK,EACL,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CACpD,CAAA;YACH,CAAC,CAAC,CAAA;SACH;QAED,OAAO,YAAY,CAAA;IACrB,CAAC;IAEO,WAAW,CAAC,WAAgB;QAClC,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAClD,OAAO,UAAU,CAAC,QAAQ,CAAC,OAAO,WAAW,CAAC,CAAA;IAChD,CAAC;CACF;AAvDD,8CAuDC"}
@@ -6,6 +6,7 @@ import { ContentFieldsBase } from './content-fields-base';
6
6
  import { FlowElement } from './flow-element';
7
7
  import { HtCarouselNode } from './hubtype-fields';
8
8
  export declare class FlowCarousel extends ContentFieldsBase {
9
+ whatsappText: string;
9
10
  elements: FlowElement[];
10
11
  static fromHubtypeCMS(component: HtCarouselNode, locale: string, cmsApi: FlowBuilderApi): FlowCarousel;
11
12
  trackFlow(request: ActionRequest): Promise<void>;
@@ -14,6 +15,7 @@ export declare class FlowCarousel extends ContentFieldsBase {
14
15
  title: string;
15
16
  subtitle?: string;
16
17
  }): string;
18
+ private static createCardsFromElements;
17
19
  static fromAIAgent(id: string, carouselMessage: CarouselMessage, request: ActionRequest): JSX.Element;
18
20
  private toCarouselMessage;
19
21
  toBotonic(id: string, request: ActionRequest): JSX.Element;
@@ -12,12 +12,14 @@ const DEFAULT_TEXT_MESSAGE = 'These are the options';
12
12
  class FlowCarousel extends content_fields_base_1.ContentFieldsBase {
13
13
  constructor() {
14
14
  super(...arguments);
15
+ this.whatsappText = '';
15
16
  this.elements = [];
16
17
  }
17
18
  static fromHubtypeCMS(component, locale, cmsApi) {
18
19
  const newCarousel = new FlowCarousel(component.id);
19
20
  newCarousel.code = component.code;
20
21
  newCarousel.elements = component.content.elements.map(element => flow_element_1.FlowElement.fromHubtypeCMS(element, locale, cmsApi));
22
+ newCarousel.whatsappText = this.getTextByLocale(locale, component.content.whatsapp_text);
21
23
  newCarousel.followUp = component.follow_up;
22
24
  return newCarousel;
23
25
  }
@@ -35,24 +37,61 @@ class FlowCarousel extends content_fields_base_1.ContentFieldsBase {
35
37
  }
36
38
  return element.title;
37
39
  }
40
+ static createCardsFromElements(elements) {
41
+ return elements.map(element => {
42
+ var _a, _b;
43
+ const text = FlowCarousel.generateWhatsappElementText(element);
44
+ if ((_a = element.button) === null || _a === void 0 ? void 0 : _a.url) {
45
+ return {
46
+ imageLink: element.image,
47
+ text,
48
+ type: react_1.CardType.CTA_URL,
49
+ action: {
50
+ buttonText: element.button.text,
51
+ buttonUrl: element.button.url,
52
+ },
53
+ };
54
+ }
55
+ if ((_b = element.button) === null || _b === void 0 ? void 0 : _b.payload) {
56
+ return {
57
+ imageLink: element.image,
58
+ text,
59
+ type: react_1.CardType.QUICK_REPLY,
60
+ action: {
61
+ buttons: [
62
+ {
63
+ text: element.button.text,
64
+ payload: element.button.payload,
65
+ },
66
+ ],
67
+ },
68
+ };
69
+ }
70
+ throw new Error('Element must have a url or a payload');
71
+ });
72
+ }
38
73
  static fromAIAgent(id, carouselMessage, request) {
74
+ var _a, _b;
39
75
  if ((0, core_1.isWhatsapp)(request.session) &&
40
76
  FlowCarousel.areElementsValidForWhatsapp(carouselMessage)) {
41
- if (carouselMessage.content.elements.length === 1) {
77
+ if (carouselMessage.content.elements.length === 1 &&
78
+ ((_a = carouselMessage.content.elements[0].button) === null || _a === void 0 ? void 0 : _a.url)) {
42
79
  const element = carouselMessage.content.elements[0];
80
+ const buttonText = element.button.text;
81
+ const url = carouselMessage.content.elements[0].button.url;
43
82
  // TODO: Add a new fromAIAgent method in FlowWhatsappCtaUrlButtonNode to create a WhatsappCTAUrlButton from an AIAgent message
44
- return ((0, jsx_runtime_1.jsx)(react_1.WhatsappCTAUrlButton, { body: element.title, headerType: react_1.WhatsappCTAUrlHeaderType.Image, headerImage: element.image, footer: element.subtitle, displayText: element.button.text, url: element.button.url }, id));
83
+ return ((0, jsx_runtime_1.jsx)(react_1.WhatsappCTAUrlButton, { body: element.title, headerType: react_1.WhatsappCTAUrlHeaderType.Image, headerImage: element.image, footer: element.subtitle, displayText: buttonText, url: url }, id));
45
84
  }
46
- return ((0, jsx_runtime_1.jsx)(react_1.WhatsappInteractiveMediaCarousel, { cards: carouselMessage.content.elements.map(element => {
47
- const buttonText = element.button.text;
48
- const buttonUrl = element.button.url;
49
- const imageLink = element.image;
50
- const text = FlowCarousel.generateWhatsappElementText(element);
51
- return {
52
- text,
53
- action: { buttonText, buttonUrl, imageLink },
54
- };
55
- }), textMessage: carouselMessage.content.text || DEFAULT_TEXT_MESSAGE }));
85
+ if (carouselMessage.content.elements.length === 1 &&
86
+ ((_b = carouselMessage.content.elements[0].button) === null || _b === void 0 ? void 0 : _b.payload)) {
87
+ const element = carouselMessage.content.elements[0];
88
+ const text = FlowCarousel.generateWhatsappElementText(element);
89
+ const buttonPayload = carouselMessage.content.elements[0].button.payload;
90
+ const buttonText = carouselMessage.content.elements[0].button.text;
91
+ return ((0, jsx_runtime_1.jsxs)(react_1.Text, { children: [text, (0, jsx_runtime_1.jsx)(react_1.Button, Object.assign({ payload: buttonPayload }, { children: buttonText }))] }));
92
+ }
93
+ const elements = carouselMessage.content.elements.map((element, index) => flow_element_1.FlowElement.fromAIAgent(`${id}-element-${index}`, element));
94
+ return ((0, jsx_runtime_1.jsx)(react_1.WhatsappInteractiveMediaCarousel, { cards: FlowCarousel.createCardsFromElements(elements), textMessage: carouselMessage.content.text || DEFAULT_TEXT_MESSAGE }));
56
95
  }
57
96
  return ((0, jsx_runtime_1.jsx)(react_1.Carousel, { children: carouselMessage.content.elements.map((element, index) => flow_element_1.FlowElement.fromAIAgent(`${id}-element-${index}`, element).toBotonic(id)) }, id));
58
97
  }
@@ -77,34 +116,38 @@ class FlowCarousel extends content_fields_base_1.ContentFieldsBase {
77
116
  };
78
117
  }
79
118
  toBotonic(id, request) {
119
+ var _a, _b;
80
120
  const carouselMessage = this.toCarouselMessage(this.elements);
81
121
  if ((0, core_1.isWhatsapp)(request.session) &&
82
122
  FlowCarousel.areElementsValidForWhatsapp(carouselMessage)) {
83
- if (this.elements.length === 1) {
123
+ if (this.elements.length === 1 && ((_a = this.elements[0].button) === null || _a === void 0 ? void 0 : _a.url)) {
84
124
  const element = this.elements[0];
85
- return ((0, jsx_runtime_1.jsx)(react_1.WhatsappCTAUrlButton, { body: element.title, headerType: react_1.WhatsappCTAUrlHeaderType.Image, headerImage: element.image, displayText: element.button.text, url: element.button.url }, id));
125
+ const buttonText = this.elements[0].button.text;
126
+ const url = this.elements[0].button.url;
127
+ return ((0, jsx_runtime_1.jsx)(react_1.WhatsappCTAUrlButton, { body: element.title, headerType: react_1.WhatsappCTAUrlHeaderType.Image, headerImage: element.image, displayText: buttonText, url: url }, id));
86
128
  }
87
- return ((0, jsx_runtime_1.jsx)(react_1.WhatsappInteractiveMediaCarousel, { cards: this.elements.map(element => {
88
- const text = FlowCarousel.generateWhatsappElementText(element);
89
- const buttonText = element.button.text;
90
- const buttonUrl = element.button.url;
91
- const imageLink = element.image;
92
- return {
93
- text,
94
- action: { buttonText, buttonUrl, imageLink },
95
- };
96
- }),
129
+ if (this.elements.length === 1 &&
130
+ this.elements[0].button &&
131
+ ((_b = this.elements[0].button) === null || _b === void 0 ? void 0 : _b.payload)) {
132
+ const element = this.elements[0];
133
+ const text = FlowCarousel.generateWhatsappElementText(element);
134
+ const buttonPayload = this.elements[0].button.payload;
135
+ const buttonText = this.elements[0].button.text;
136
+ return ((0, jsx_runtime_1.jsxs)(react_1.Text, { children: [text, (0, jsx_runtime_1.jsx)(react_1.Button, Object.assign({ payload: buttonPayload }, { children: buttonText }))] }));
137
+ }
138
+ return ((0, jsx_runtime_1.jsx)(react_1.WhatsappInteractiveMediaCarousel, { cards: FlowCarousel.createCardsFromElements(this.elements),
97
139
  // TODO: Add the text message in flow builder frontend and take it from the carousel node with different languages
98
- textMessage: DEFAULT_TEXT_MESSAGE }));
140
+ textMessage: this.whatsappText || DEFAULT_TEXT_MESSAGE }));
99
141
  }
100
142
  return ((0, jsx_runtime_1.jsx)(react_1.Carousel, { children: this.elements.map(element => element.toBotonic(id)) }, id));
101
143
  }
102
144
  }
103
145
  exports.FlowCarousel = FlowCarousel;
104
146
  FlowCarousel.areElementsValidForWhatsapp = (carouselMessage) => {
105
- const isValid = carouselMessage.content.elements.every(element => element.button.url);
147
+ const isValid = carouselMessage.content.elements.every(element => element.button.url) ||
148
+ carouselMessage.content.elements.every(element => element.button.payload);
106
149
  if (!isValid) {
107
- console.warn('Cannot use WhatsappInteractiveMediaCarousel for Whatsapp created by AIAgent', carouselMessage.content);
150
+ console.warn('Cannot use WhatsappInteractiveMediaCarousel for Whatsapp created by AIAgent, all elements must have either url or payload.', carouselMessage.content);
108
151
  }
109
152
  return isValid;
110
153
  };
@@ -1 +1 @@
1
- {"version":3,"file":"flow-carousel.js","sourceRoot":"","sources":["../../../src/content-fields/flow-carousel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow-carousel.js","sourceRoot":"","sources":["../../../src/content-fields/flow-carousel.tsx"],"names":[],"mappings":"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"}
@@ -10,8 +10,6 @@ export declare class FlowText extends ContentFieldsBase {
10
10
  buttons: FlowButton[];
11
11
  buttonStyle: HtButtonStyle;
12
12
  static fromHubtypeCMS(cmsText: HtTextNode, locale: string, cmsApi: FlowBuilderApi): FlowText;
13
- static replaceVariables(text: string, request: ActionRequest): string;
14
- private static isValidType;
15
13
  trackFlow(request: ActionRequest): Promise<void>;
16
14
  static fromAIAgent(id: string, textMessage: TextMessage | TextWithButtonsMessage): JSX.Element;
17
15
  toBotonic(id: string, request: ActionRequest): JSX.Element;
@@ -6,7 +6,6 @@ const jsx_runtime_1 = require("react/jsx-runtime");
6
6
  const react_1 = require("@botonic/react");
7
7
  const constants_1 = require("../constants");
8
8
  const tracking_1 = require("../tracking");
9
- const utils_1 = require("../utils");
10
9
  const content_fields_base_1 = require("./content-fields-base");
11
10
  const flow_button_1 = require("./flow-button");
12
11
  const hubtype_fields_1 = require("./hubtype-fields");
@@ -26,25 +25,6 @@ class FlowText extends content_fields_base_1.ContentFieldsBase {
26
25
  newText.followUp = cmsText.follow_up;
27
26
  return newText;
28
27
  }
29
- static replaceVariables(text, request) {
30
- const matches = text.match(constants_1.VARIABLE_PATTERN);
31
- let replacedText = text;
32
- if (matches && request) {
33
- matches.forEach(match => {
34
- const keyPath = match.slice(1, -1);
35
- const botVariable = keyPath.endsWith(constants_1.ACCESS_TOKEN_VARIABLE_KEY)
36
- ? match
37
- : (0, utils_1.getValueFromKeyPath)(request, keyPath);
38
- // TODO In local if change variable and render multiple times the value is always the last update
39
- replacedText = replacedText.replace(match, this.isValidType(botVariable) ? botVariable : match);
40
- });
41
- }
42
- return replacedText;
43
- }
44
- static isValidType(botVariable) {
45
- const validTypes = ['boolean', 'string', 'number'];
46
- return validTypes.includes(typeof botVariable);
47
- }
48
28
  trackFlow(request) {
49
29
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
50
30
  yield (0, tracking_1.trackOneContent)(request, this);
@@ -69,7 +49,7 @@ class FlowText extends content_fields_base_1.ContentFieldsBase {
69
49
  })] }, id));
70
50
  }
71
51
  toBotonic(id, request) {
72
- const replacedText = FlowText.replaceVariables(this.text, request);
52
+ const replacedText = this.replaceVariables(this.text, request);
73
53
  return ((0, jsx_runtime_1.jsxs)(react_1.Text, { children: [replacedText, this.buttons.map((button, buttonIndex) => button.renderButton(buttonIndex, this.buttonStyle))] }, id));
74
54
  }
75
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"flow-text.js","sourceRoot":"","sources":["../../../src/content-fields/flow-text.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow-text.js","sourceRoot":"","sources":["../../../src/content-fields/flow-text.tsx"],"names":[],"mappings":";;;;;AACA,0CAAoD;AAIpD,4CAKqB;AACrB,0CAA6C;AAE7C,+DAAyD;AACzD,+CAA0C;AAC1C,qDAA4D;AAE5D,MAAa,QAAS,SAAQ,uCAAiB;IAA/C;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,YAAO,GAAiB,EAAE,CAAA;QAC1B,gBAAW,GAAG,8BAAa,CAAC,MAAM,CAAA;IA+D3C,CAAC;IA7DC,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,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACjE,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,CAAC,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAA;QAEpC,OAAO,OAAO,CAAA;IAChB,CAAC;IAEK,SAAS,CAAC,OAAsB;;YACpC,MAAM,IAAA,0BAAe,EAAC,OAAO,EAAE,IAAI,CAAC,CAAA;YACpC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;gBACjC,MAAM,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;aAChC;QACH,CAAC;KAAA;IAED,MAAM,CAAC,WAAW,CAChB,EAAU,EACV,WAAiD;QAEjD,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE;YAC/B,OAAO,uBAAC,YAAI,cAAW,WAAW,CAAC,OAAO,CAAC,IAAI,IAA7B,EAAE,CAAmC,CAAA;SACxD;QAED,OAAO,CACL,wBAAC,YAAI,eACF,WAAW,CAAC,OAAO,CAAC,IAAI,EACxB,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE;oBACvD,MAAM,UAAU,GAAG;wBACjB,EAAE,EAAE,GAAG,EAAE,WAAW,WAAW,EAAE;wBACjC,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,GAAG,EAAE,MAAM,CAAC,GAAG;wBACf,OAAO,EACL,MAAM,CAAC,OAAO;4BACd,GAAG,yBAAa,GAAG,iCAAqB,GAAG,WAAW,EAAE;qBAC3D,CAAA;oBACD,OAAO,wBAAU,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;gBACrE,CAAC,CAAC,KAZO,EAAE,CAaN,CACR,CAAA;IACH,CAAC;IAED,SAAS,CAAC,EAAU,EAAE,OAAsB;QAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC9D,OAAO,CACL,wBAAC,YAAI,eACF,YAAY,EACZ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CACxC,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CACnD,KAJQ,EAAE,CAKN,CACR,CAAA;IACH,CAAC;CACF;AAlED,4BAkEC"}
@@ -0,0 +1,28 @@
1
+ /// <reference types="react" />
2
+ import { ActionRequest, WhatsAppTemplateParameterType } from '@botonic/react';
3
+ import { ContentFieldsBase } from './content-fields-base';
4
+ import { HtButton, HtMediaFileLocale, HtWhatsAppTemplate, HtWhatsappTemplateNode } from './hubtype-fields';
5
+ interface HeaderVariables {
6
+ type: WhatsAppTemplateParameterType;
7
+ text?: Record<string, string>;
8
+ media?: HtMediaFileLocale[];
9
+ }
10
+ export declare class FlowWhatsappTemplate extends ContentFieldsBase {
11
+ htWhatsappTemplate: HtWhatsAppTemplate;
12
+ variableValues: Record<string, string>;
13
+ headerVariables?: HeaderVariables;
14
+ buttons?: HtButton[];
15
+ urlVariableValues?: Record<string, string>;
16
+ static fromHubtypeCMS(component: HtWhatsappTemplateNode): FlowWhatsappTemplate;
17
+ private getHeaderComponent;
18
+ private createHeaderTextComponent;
19
+ private createHeaderImageComponent;
20
+ private getBodyComponent;
21
+ private getButtons;
22
+ private createUrlButtonComponent;
23
+ private createQuickReplyButtonComponent;
24
+ private createVoiceCallButtonComponent;
25
+ trackFlow(request: ActionRequest): Promise<void>;
26
+ toBotonic(id: string, request: ActionRequest): JSX.Element;
27
+ }
28
+ export {};