@botonic/plugin-flow-builder 0.21.1 → 0.21.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 (74) hide show
  1. package/lib/cjs/action.js +4 -2
  2. package/lib/cjs/action.js.map +1 -1
  3. package/lib/cjs/content-fields/content-fields-base.d.ts +1 -1
  4. package/lib/cjs/content-fields/content-fields-base.js.map +1 -1
  5. package/lib/cjs/content-fields/flow-button.d.ts +1 -1
  6. package/lib/cjs/content-fields/flow-button.js +3 -3
  7. package/lib/cjs/content-fields/flow-button.js.map +1 -1
  8. package/lib/cjs/content-fields/flow-carousel.d.ts +1 -1
  9. package/lib/cjs/content-fields/flow-carousel.js +4 -5
  10. package/lib/cjs/content-fields/flow-carousel.js.map +1 -1
  11. package/lib/cjs/content-fields/flow-image.d.ts +1 -1
  12. package/lib/cjs/content-fields/flow-image.js +2 -2
  13. package/lib/cjs/content-fields/flow-image.js.map +1 -1
  14. package/lib/cjs/content-fields/flow-text.d.ts +1 -1
  15. package/lib/cjs/content-fields/flow-text.js +3 -3
  16. package/lib/cjs/content-fields/flow-text.js.map +1 -1
  17. package/lib/cjs/content-fields/flow-video.d.ts +1 -1
  18. package/lib/cjs/content-fields/flow-video.js +2 -2
  19. package/lib/cjs/content-fields/flow-video.js.map +1 -1
  20. package/lib/cjs/helpers.d.ts +1 -0
  21. package/lib/cjs/helpers.js +14 -1
  22. package/lib/cjs/helpers.js.map +1 -1
  23. package/lib/cjs/index.d.ts +3 -9
  24. package/lib/cjs/index.js +13 -28
  25. package/lib/cjs/index.js.map +1 -1
  26. package/lib/cjs/types.d.ts +13 -0
  27. package/lib/cjs/types.js +9 -0
  28. package/lib/cjs/types.js.map +1 -0
  29. package/lib/cjs/utils.d.ts +3 -0
  30. package/lib/cjs/utils.js +19 -1
  31. package/lib/cjs/utils.js.map +1 -1
  32. package/lib/esm/action.js +4 -2
  33. package/lib/esm/action.js.map +1 -1
  34. package/lib/esm/content-fields/content-fields-base.d.ts +1 -1
  35. package/lib/esm/content-fields/content-fields-base.js.map +1 -1
  36. package/lib/esm/content-fields/flow-button.d.ts +1 -1
  37. package/lib/esm/content-fields/flow-button.js +3 -3
  38. package/lib/esm/content-fields/flow-button.js.map +1 -1
  39. package/lib/esm/content-fields/flow-carousel.d.ts +1 -1
  40. package/lib/esm/content-fields/flow-carousel.js +4 -5
  41. package/lib/esm/content-fields/flow-carousel.js.map +1 -1
  42. package/lib/esm/content-fields/flow-image.d.ts +1 -1
  43. package/lib/esm/content-fields/flow-image.js +2 -2
  44. package/lib/esm/content-fields/flow-image.js.map +1 -1
  45. package/lib/esm/content-fields/flow-text.d.ts +1 -1
  46. package/lib/esm/content-fields/flow-text.js +3 -3
  47. package/lib/esm/content-fields/flow-text.js.map +1 -1
  48. package/lib/esm/content-fields/flow-video.d.ts +1 -1
  49. package/lib/esm/content-fields/flow-video.js +2 -2
  50. package/lib/esm/content-fields/flow-video.js.map +1 -1
  51. package/lib/esm/helpers.d.ts +1 -0
  52. package/lib/esm/helpers.js +12 -0
  53. package/lib/esm/helpers.js.map +1 -1
  54. package/lib/esm/index.d.ts +3 -9
  55. package/lib/esm/index.js +13 -28
  56. package/lib/esm/index.js.map +1 -1
  57. package/lib/esm/types.d.ts +13 -0
  58. package/lib/esm/types.js +6 -0
  59. package/lib/esm/types.js.map +1 -0
  60. package/lib/esm/utils.d.ts +3 -0
  61. package/lib/esm/utils.js +17 -0
  62. package/lib/esm/utils.js.map +1 -1
  63. package/package.json +8 -7
  64. package/src/action.tsx +6 -2
  65. package/src/content-fields/content-fields-base.ts +1 -1
  66. package/src/content-fields/flow-button.tsx +3 -3
  67. package/src/content-fields/flow-carousel.tsx +4 -5
  68. package/src/content-fields/flow-image.tsx +2 -2
  69. package/src/content-fields/flow-text.tsx +4 -4
  70. package/src/content-fields/flow-video.tsx +2 -2
  71. package/src/helpers.ts +21 -0
  72. package/src/index.ts +14 -45
  73. package/src/types.ts +16 -0
  74. package/src/utils.ts +24 -0
@@ -14,15 +14,14 @@ export class FlowCarousel extends ContentFieldsBase {
14
14
  newCarousel.elements = component.content.elements.map(element => FlowElement.fromHubtypeCMS(element, locale));
15
15
  return newCarousel;
16
16
  }
17
- toBotonic(index) {
18
- return (React.createElement(Carousel, { key: index }, this.elements.map((element, eIndex) => {
17
+ toBotonic(id) {
18
+ return (React.createElement(Carousel, { key: id }, this.elements.map(element => {
19
19
  var _a, _b, _c;
20
- return (React.createElement(Element, { key: eIndex },
20
+ return (React.createElement(Element, { key: `${id}-${element.id}` },
21
21
  React.createElement(Pic, { src: element.image }),
22
22
  React.createElement(Title, { style: '' }, element.title),
23
23
  React.createElement(Subtitle, { style: '' }, element.subtitle),
24
- React.createElement(Button, { payload: (_a = element.buttons) === null || _a === void 0 ? void 0 : _a.payload, url: (_b = element.buttons) === null || _b === void 0 ? void 0 : _b.url }, (_c = element.buttons) === null || _c === void 0 ? void 0 : _c.text),
25
- ","));
24
+ React.createElement(Button, { payload: (_a = element.buttons) === null || _a === void 0 ? void 0 : _a.payload, url: (_b = element.buttons) === null || _b === void 0 ? void 0 : _b.url }, (_c = element.buttons) === null || _c === void 0 ? void 0 : _c.text)));
26
25
  })));
27
26
  }
28
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"flow-carousel.js","sourceRoot":"","sources":["../../../src/content-fields/flow-carousel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAChF,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAE5C,MAAM,OAAO,YAAa,SAAQ,iBAAiB;IAAnD;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,aAAQ,GAAkB,EAAE,CAAA;IAgCrC,CAAC;IA9BC,MAAM,CAAC,cAAc,CAAC,SAAuB,EAAE,MAAc;QAC3D,MAAM,WAAW,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAClD,WAAW,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QACjC,WAAW,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAC9D,WAAW,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAC5C,CAAA;QACD,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,OAAO,CACL,oBAAC,QAAQ,IAAC,GAAG,EAAE,KAAK,IACjB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;;YAAC,OAAA,CACtC,oBAAC,OAAO,IAAC,GAAG,EAAE,MAAM;gBAClB,oBAAC,GAAG,IAAC,GAAG,EAAE,OAAO,CAAC,KAAK,GAAI;gBAC3B,oBAAC,KAAK,IAAC,KAAK,EAAC,EAAE,IAAE,OAAO,CAAC,KAAK,CAAS;gBACvC,oBAAC,QAAQ,IAAC,KAAK,EAAC,EAAE,IAAE,OAAO,CAAC,QAAQ,CAAY;gBAEhD,oBAAC,MAAM,IACL,OAAO,EAAE,MAAA,OAAO,CAAC,OAAO,0CAAE,OAAO,EACjC,GAAG,EAAE,MAAA,OAAO,CAAC,OAAO,0CAAE,GAAG,IAExB,MAAA,OAAO,CAAC,OAAO,0CAAE,IAAI,CACf;oBAED,CACX,CAAA;SAAA,CAAC,CACO,CACZ,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"flow-carousel.js","sourceRoot":"","sources":["../../../src/content-fields/flow-carousel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAChF,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAE5C,MAAM,OAAO,YAAa,SAAQ,iBAAiB;IAAnD;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,aAAQ,GAAkB,EAAE,CAAA;IA+BrC,CAAC;IA7BC,MAAM,CAAC,cAAc,CAAC,SAAuB,EAAE,MAAc;QAC3D,MAAM,WAAW,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAClD,WAAW,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QACjC,WAAW,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAC9D,WAAW,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAC5C,CAAA;QACD,OAAO,WAAW,CAAA;IACpB,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,oBAAC,QAAQ,IAAC,GAAG,EAAE,EAAE,IACd,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;;YAAC,OAAA,CAC5B,oBAAC,OAAO,IAAC,GAAG,EAAE,GAAG,EAAE,IAAI,OAAO,CAAC,EAAE,EAAE;gBACjC,oBAAC,GAAG,IAAC,GAAG,EAAE,OAAO,CAAC,KAAK,GAAI;gBAC3B,oBAAC,KAAK,IAAC,KAAK,EAAC,EAAE,IAAE,OAAO,CAAC,KAAK,CAAS;gBACvC,oBAAC,QAAQ,IAAC,KAAK,EAAC,EAAE,IAAE,OAAO,CAAC,QAAQ,CAAY;gBAEhD,oBAAC,MAAM,IACL,OAAO,EAAE,MAAA,OAAO,CAAC,OAAO,0CAAE,OAAO,EACjC,GAAG,EAAE,MAAA,OAAO,CAAC,OAAO,0CAAE,GAAG,IAExB,MAAA,OAAO,CAAC,OAAO,0CAAE,IAAI,CACf,CACD,CACX,CAAA;SAAA,CAAC,CACO,CACZ,CAAA;IACH,CAAC;CACF"}
@@ -4,5 +4,5 @@ export declare class FlowImage extends ContentFieldsBase {
4
4
  src: string;
5
5
  code: string;
6
6
  static fromHubtypeCMS(component: ImageNode, locale: string): FlowImage;
7
- toBotonic(index: number): JSX.Element;
7
+ toBotonic(id: string): JSX.Element;
8
8
  }
@@ -13,8 +13,8 @@ export class FlowImage extends ContentFieldsBase {
13
13
  newImage.src = this.getImageByLocale(locale, component.content.image);
14
14
  return newImage;
15
15
  }
16
- toBotonic(index) {
17
- return React.createElement(Image, { src: this.src, key: index });
16
+ toBotonic(id) {
17
+ return React.createElement(Image, { key: id, src: this.src });
18
18
  }
19
19
  }
20
20
  //# sourceMappingURL=flow-image.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flow-image.js","sourceRoot":"","sources":["../../../src/content-fields/flow-image.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,MAAM,OAAO,SAAU,SAAQ,iBAAiB;IAAhD;;QACS,QAAG,GAAG,EAAE,CAAA;QACR,SAAI,GAAG,EAAE,CAAA;IAYlB,CAAC;IAVC,MAAM,CAAC,cAAc,CAAC,SAAoB,EAAE,MAAc;QACxD,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC5C,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC9B,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrE,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,OAAO,oBAAC,KAAK,IAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,GAAI,CAAA;IAC7C,CAAC;CACF"}
1
+ {"version":3,"file":"flow-image.js","sourceRoot":"","sources":["../../../src/content-fields/flow-image.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,MAAM,OAAO,SAAU,SAAQ,iBAAiB;IAAhD;;QACS,QAAG,GAAG,EAAE,CAAA;QACR,SAAI,GAAG,EAAE,CAAA;IAYlB,CAAC;IAVC,MAAM,CAAC,cAAc,CAAC,SAAoB,EAAE,MAAc;QACxD,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC5C,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC9B,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrE,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,oBAAC,KAAK,IAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,GAAI,CAAA;IAC1C,CAAC;CACF"}
@@ -7,5 +7,5 @@ export declare class FlowText extends ContentFieldsBase {
7
7
  buttons: FlowButton[];
8
8
  buttonStyle: ButtonStyle;
9
9
  static fromHubtypeCMS(component: TextNode, locale: string): FlowText;
10
- toBotonic(index: number): JSX.Element;
10
+ toBotonic(id: string): JSX.Element;
11
11
  }
@@ -19,10 +19,10 @@ export class FlowText extends ContentFieldsBase {
19
19
  newText.buttons = component.content.buttons.map(button => FlowButton.fromHubtypeCMS(button, locale));
20
20
  return newText;
21
21
  }
22
- toBotonic(index) {
23
- return (React.createElement(Text, { key: index },
22
+ toBotonic(id) {
23
+ return (React.createElement(Text, { key: id },
24
24
  this.text,
25
- this.buttons.map((button, index) => button.renderButton(index, this.buttonStyle))));
25
+ this.buttons.map(button => button.renderButton(button.id, this.buttonStyle))));
26
26
  }
27
27
  }
28
28
  //# sourceMappingURL=flow-text.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flow-text.js","sourceRoot":"","sources":["../../../src/content-fields/flow-text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,WAAW,EAAY,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,MAAM,OAAO,QAAS,SAAQ,iBAAiB;IAA/C;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,SAAI,GAAG,EAAE,CAAA;QACT,YAAO,GAAiB,EAAE,CAAA;QAC1B,gBAAW,GAAG,WAAW,CAAC,MAAM,CAAA;IAuBzC,CAAC;IArBC,MAAM,CAAC,cAAc,CAAC,SAAmB,EAAE,MAAc;QACvD,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC1C,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC7B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,aAAa,IAAI,WAAW,CAAC,MAAM,CAAA;QAC3E,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACvE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CACvD,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAC1C,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,OAAO,CACL,oBAAC,IAAI,IAAC,GAAG,EAAE,KAAK;YACb,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAClC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAC7C,CACI,CACR,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"flow-text.js","sourceRoot":"","sources":["../../../src/content-fields/flow-text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,WAAW,EAAY,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,MAAM,OAAO,QAAS,SAAQ,iBAAiB;IAA/C;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,SAAI,GAAG,EAAE,CAAA;QACT,YAAO,GAAiB,EAAE,CAAA;QAC1B,gBAAW,GAAG,WAAW,CAAC,MAAM,CAAA;IAuBzC,CAAC;IArBC,MAAM,CAAC,cAAc,CAAC,SAAmB,EAAE,MAAc;QACvD,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC1C,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC7B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,aAAa,IAAI,WAAW,CAAC,MAAM,CAAA;QAC3E,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACvE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CACvD,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAC1C,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,oBAAC,IAAI,IAAC,GAAG,EAAE,EAAE;YACV,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CACzB,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,CACjD,CACI,CACR,CAAA;IACH,CAAC;CACF"}
@@ -4,5 +4,5 @@ export declare class FlowVideo extends ContentFieldsBase {
4
4
  src: string;
5
5
  code: string;
6
6
  static fromHubtypeCMS(component: VideoNode, locale: string): FlowVideo;
7
- toBotonic(index: number): JSX.Element;
7
+ toBotonic(id: string): JSX.Element;
8
8
  }
@@ -13,9 +13,9 @@ export class FlowVideo extends ContentFieldsBase {
13
13
  newVideo.src = this.getVideoByLocale(locale, component.content.video);
14
14
  return newVideo;
15
15
  }
16
- toBotonic(index) {
16
+ toBotonic(id) {
17
17
  // @ts-ignore
18
- return React.createElement(Video, { key: index, src: this.src });
18
+ return React.createElement(Video, { key: id, src: this.src });
19
19
  }
20
20
  }
21
21
  //# sourceMappingURL=flow-video.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flow-video.js","sourceRoot":"","sources":["../../../src/content-fields/flow-video.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,MAAM,OAAO,SAAU,SAAQ,iBAAiB;IAAhD;;QACS,QAAG,GAAG,EAAE,CAAA;QACR,SAAI,GAAG,EAAE,CAAA;IAalB,CAAC;IAXC,MAAM,CAAC,cAAc,CAAC,SAAoB,EAAE,MAAc;QACxD,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC5C,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC9B,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrE,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,aAAa;QACb,OAAO,oBAAC,KAAK,IAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,GAAI,CAAA;IAC7C,CAAC;CACF"}
1
+ {"version":3,"file":"flow-video.js","sourceRoot":"","sources":["../../../src/content-fields/flow-video.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,MAAM,OAAO,SAAU,SAAQ,iBAAiB;IAAhD;;QACS,QAAG,GAAG,EAAE,CAAA;QACR,SAAI,GAAG,EAAE,CAAA;IAalB,CAAC;IAXC,MAAM,CAAC,cAAc,CAAC,SAAoB,EAAE,MAAc;QACxD,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC5C,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC9B,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrE,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,aAAa;QACb,OAAO,oBAAC,KAAK,IAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,GAAI,CAAA;IAC1C,CAAC;CACF"}
@@ -3,3 +3,4 @@ import BotonicPluginFlowBuilder from './index';
3
3
  export declare function getFlowBuilderPlugin(plugins: {
4
4
  [id: string]: Plugin;
5
5
  }): BotonicPluginFlowBuilder;
6
+ export declare function updateButtonUrls(hubtypeContent: any, contentKey: string, getContentFn: any): Promise<void>;
@@ -7,4 +7,16 @@ export function getFlowBuilderPlugin(plugins) {
7
7
  throw new Error(`You must include '@botonic/plugin-flow-builder' in your plugins file.`);
8
8
  return flowBuilderPlugin;
9
9
  }
10
+ export async function updateButtonUrls(hubtypeContent, contentKey, getContentFn) {
11
+ if (hubtypeContent.content[contentKey]) {
12
+ for (const i in hubtypeContent.content[contentKey]) {
13
+ const button = hubtypeContent.content[contentKey][i].button;
14
+ if (button.url) {
15
+ for (const j in button.url) {
16
+ button.url[j] = Object.assign(Object.assign({}, button.url[j]), (await getContentFn(button.url[j].id)));
17
+ }
18
+ }
19
+ }
20
+ }
21
+ }
10
22
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AAGA,MAAM,wBAAwB,GAAG,0BAA0B,CAAA;AAE3D,MAAM,UAAU,oBAAoB,CAAC,OAEpC;IACC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI;IACnD,aAAa;IACb,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,wBAAwB,CACvB,CAAA;IAC7B,IAAI,CAAC,iBAAiB;QACpB,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAA;IACH,OAAO,iBAAiB,CAAA;AAC1B,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AAIA,MAAM,wBAAwB,GAAG,0BAA0B,CAAA;AAE3D,MAAM,UAAU,oBAAoB,CAAC,OAEpC;IACC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI;IACnD,aAAa;IACb,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,wBAAwB,CACvB,CAAA;IAC7B,IAAI,CAAC,iBAAiB;QACpB,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAA;IACH,OAAO,iBAAiB,CAAA;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,cAAmB,EACnB,UAAkB,EAClB,YAAiB;IAEjB,IAAI,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QACtC,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAClD,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;YAC3D,IAAI,MAAM,CAAC,GAAG,EAAE;gBACd,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,GAAG,EAAE;oBAC1B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,mCACR,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GACb,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAC1C,CAAA;iBACF;aACF;SACF;KACF;AACH,CAAC"}
@@ -1,13 +1,7 @@
1
1
  import { Input, Plugin, PluginPostRequest, PluginPreRequest, Session } from '@botonic/core';
2
2
  import { FlowContent } from './content-fields';
3
3
  import { FlowBuilderData, FunctionNode, HandoffNode, IntentNode, KeywordNode, NodeComponent } from './flow-builder-models';
4
- export type BotonicPluginFlowBuilderOptions = {
5
- flowUrl: string;
6
- flow?: FlowBuilderData;
7
- customFunctions?: Record<any, any>;
8
- getLocale: (session: Session) => string;
9
- getAccessToken: () => string;
10
- };
4
+ import { BotonicPluginFlowBuilderOptions } from './types';
11
5
  export default class BotonicPluginFlowBuilder implements Plugin {
12
6
  readonly options: BotonicPluginFlowBuilderOptions;
13
7
  private flowUrl;
@@ -17,14 +11,14 @@ export default class BotonicPluginFlowBuilder implements Plugin {
17
11
  private getAccessToken;
18
12
  getLocale: (session: Session) => string;
19
13
  constructor(options: BotonicPluginFlowBuilderOptions);
20
- readFlowContent(): Promise<FlowBuilderData>;
14
+ readFlowContent(session: Session): Promise<FlowBuilderData>;
21
15
  pre(request: PluginPreRequest): Promise<void>;
22
16
  post(_request: PluginPostRequest): Promise<void>;
23
17
  getContent(id: string): Promise<NodeComponent>;
24
18
  getHandoffContent(handoffTargetId: string | undefined): Promise<HandoffNode>;
25
19
  getFlowContent(hubtypeContent: NodeComponent, locale: string): FlowContent | undefined;
26
20
  getStartId(): Promise<string>;
27
- getFallbackId(): Promise<string>;
21
+ getFallbackId(alternate: boolean): Promise<string>;
28
22
  getContents(id: string, locale: string, prevContents?: FlowContent[]): Promise<{
29
23
  contents: FlowContent[];
30
24
  handoffNode: HandoffNode;
package/lib/esm/index.js CHANGED
@@ -2,25 +2,28 @@ import axios from 'axios';
2
2
  import { FlowCarousel, FlowImage, FlowText, FlowVideo, } from './content-fields';
3
3
  import { NodeType, } from './flow-builder-models';
4
4
  import { DEFAULT_FUNCTIONS } from './functions';
5
+ import { resolveGetAccessToken } from './utils';
6
+ import { updateButtonUrls } from './helpers';
5
7
  export default class BotonicPluginFlowBuilder {
6
8
  constructor(options) {
7
9
  this.options = options;
8
10
  this.getLocale = options.getLocale;
9
- this.getAccessToken = options.getAccessToken;
11
+ this.getAccessToken = resolveGetAccessToken(options);
10
12
  this.flowUrl = options.flowUrl;
11
- this.flow = options.flow || this.readFlowContent();
13
+ if (options.flow)
14
+ this.flow = options.flow;
12
15
  const customFunctions = options.customFunctions || {};
13
16
  this.functions = Object.assign(Object.assign({}, DEFAULT_FUNCTIONS), customFunctions);
14
17
  }
15
- async readFlowContent() {
18
+ async readFlowContent(session) {
16
19
  const { data } = await axios.get(this.flowUrl, {
17
- headers: { Authorization: `Bearer ${this.getAccessToken()}` },
20
+ headers: { Authorization: `Bearer ${this.getAccessToken(session)}` },
18
21
  });
19
22
  return data;
20
23
  }
21
24
  async pre(request) {
22
25
  this.currentRequest = request;
23
- this.flow = this.readFlowContent();
26
+ this.flow = await this.readFlowContent(this.currentRequest.session);
24
27
  }
25
28
  async post(_request) { }
26
29
  async getContent(id) {
@@ -58,7 +61,7 @@ export default class BotonicPluginFlowBuilder {
58
61
  throw new Error('start-up id must be defined');
59
62
  return startNode.target.id;
60
63
  }
61
- async getFallbackId() {
64
+ async getFallbackId(alternate) {
62
65
  const flow = await this.flow;
63
66
  const fallbackNode = flow.nodes.find(node => node.type === NodeType.FALLBACK);
64
67
  if (!fallbackNode)
@@ -67,33 +70,15 @@ export default class BotonicPluginFlowBuilder {
67
70
  const fallbackSecondMessage = fallbackNode.content.second_message;
68
71
  if (!fallbackSecondMessage)
69
72
  return fallbackFirstMessage.id;
70
- const fallbackIds = [fallbackFirstMessage.id, fallbackSecondMessage.id];
71
- return fallbackIds[Math.floor(Math.random() * fallbackIds.length)];
73
+ return alternate ? fallbackFirstMessage.id : fallbackSecondMessage.id;
72
74
  }
73
75
  async getContents(id, locale, prevContents) {
74
76
  const contents = prevContents || [];
75
77
  const hubtypeContent = await this.getContent(id);
76
78
  const isHandoff = hubtypeContent.type === NodeType.HANDOFF;
77
- if (hubtypeContent.content.elements) {
78
- for (const i in hubtypeContent.content.elements) {
79
- const button = hubtypeContent.content.elements[i].button;
80
- if (button.url) {
81
- for (const j in button.url) {
82
- button.url[j] = Object.assign(Object.assign({}, button.url[j]), (await this.getContent(button.url[j].id)));
83
- }
84
- }
85
- }
86
- }
87
- if (hubtypeContent.content.buttons) {
88
- for (const i in hubtypeContent.content.buttons) {
89
- const button = hubtypeContent.content.buttons[i];
90
- if (button.url) {
91
- for (const j in button.url) {
92
- button.url[j] = Object.assign(Object.assign({}, button.url[j]), (await this.getContent(button.url[j].id)));
93
- }
94
- }
95
- }
96
- }
79
+ // TODO: Create function to populate these buttons
80
+ await updateButtonUrls(hubtypeContent, 'elements', this.getContent);
81
+ await updateButtonUrls(hubtypeContent, 'buttons', this.getContent);
97
82
  const content = await this.getFlowContent(hubtypeContent, locale);
98
83
  if (hubtypeContent.type === NodeType.FUNCTION) {
99
84
  const targetId = await this.callFunction(hubtypeContent, locale);
@@ -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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"}
@@ -0,0 +1,13 @@
1
+ import { Session } from '@botonic/core';
2
+ import { FlowBuilderData } from './flow-builder-models';
3
+ export interface BotonicPluginFlowBuilderOptions {
4
+ flowUrl: string;
5
+ flow?: FlowBuilderData;
6
+ customFunctions?: Record<any, any>;
7
+ getLocale: (session: Session) => string;
8
+ getAccessToken: () => string;
9
+ }
10
+ export declare enum ProcessEnvNodeEnvs {
11
+ PRODUCTION = "production",
12
+ DEVELOPMENT = "development"
13
+ }
@@ -0,0 +1,6 @@
1
+ export var ProcessEnvNodeEnvs;
2
+ (function (ProcessEnvNodeEnvs) {
3
+ ProcessEnvNodeEnvs["PRODUCTION"] = "production";
4
+ ProcessEnvNodeEnvs["DEVELOPMENT"] = "development";
5
+ })(ProcessEnvNodeEnvs || (ProcessEnvNodeEnvs = {}));
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAYA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,iDAA2B,CAAA;AAC7B,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B"}
@@ -1 +1,4 @@
1
+ import { Session } from '@botonic/core';
2
+ import { BotonicPluginFlowBuilderOptions } from './types';
1
3
  export declare function getWebpackEnvVar(webpackEnvVar: string | false, name: string, defaultValue: string): string;
4
+ export declare function resolveGetAccessToken(options: BotonicPluginFlowBuilderOptions): (session: Session) => string;
package/lib/esm/utils.js CHANGED
@@ -1,6 +1,23 @@
1
+ import { ProcessEnvNodeEnvs } from './types';
1
2
  export function getWebpackEnvVar(webpackEnvVar, name, defaultValue) {
2
3
  return (webpackEnvVar ||
3
4
  (typeof process !== 'undefined' && process.env[name]) ||
4
5
  defaultValue);
5
6
  }
7
+ function getAccessTokenFromSession(session) {
8
+ if (!session._access_token) {
9
+ throw new Error('No access token found in session');
10
+ }
11
+ return session._access_token;
12
+ }
13
+ export function resolveGetAccessToken(options) {
14
+ switch (process.env.NODE_ENV) {
15
+ case ProcessEnvNodeEnvs.PRODUCTION:
16
+ return getAccessTokenFromSession;
17
+ case ProcessEnvNodeEnvs.DEVELOPMENT:
18
+ return options.getAccessToken;
19
+ default:
20
+ throw new Error('No method defined for getting access token');
21
+ }
22
+ }
6
23
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB,CAC9B,aAA6B,EAC7B,IAAY,EACZ,YAAoB;IAEpB,OAAO,CACL,aAAa;QACb,CAAC,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrD,YAAY,CACb,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmC,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAE7E,MAAM,UAAU,gBAAgB,CAC9B,aAA6B,EAC7B,IAAY,EACZ,YAAoB;IAEpB,OAAO,CACL,aAAa;QACb,CAAC,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrD,YAAY,CACb,CAAA;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAgB;IACjD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;KACpD;IACD,OAAO,OAAO,CAAC,aAAa,CAAA;AAC9B,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,OAAwC;IAExC,QAAQ,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE;QAC5B,KAAK,kBAAkB,CAAC,UAAU;YAChC,OAAO,yBAAyB,CAAA;QAClC,KAAK,kBAAkB,CAAC,WAAW;YACjC,OAAO,OAAO,CAAC,cAAc,CAAA;QAC/B;YACE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;KAChE;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/plugin-flow-builder",
3
- "version": "0.21.1",
3
+ "version": "0.21.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",
@@ -29,9 +29,10 @@
29
29
  "README.md"
30
30
  ],
31
31
  "devDependencies": {
32
- "@types/node": "^18.13.0",
33
- "@types/react": "^18.0.28",
34
- "typescript": "^4.9.5"
32
+ "@types/minipass": "^3.3.5",
33
+ "@types/node": "^18.16.0",
34
+ "@types/react": "^18.0.38",
35
+ "typescript": "^5.0.4"
35
36
  },
36
37
  "keywords": [
37
38
  "bot-framework",
@@ -46,8 +47,8 @@
46
47
  "root": true
47
48
  },
48
49
  "dependencies": {
49
- "@babel/runtime": "^7.20.13",
50
- "axios": "^1.3.4",
51
- "@botonic/react": "^0.21.2"
50
+ "@babel/runtime": "^7.21.0",
51
+ "axios": "^1.3.6",
52
+ "@botonic/react": "^0.21.3"
52
53
  }
53
54
  }
package/src/action.tsx CHANGED
@@ -10,6 +10,7 @@ type FlowBuilderActionProps = {
10
10
  isHandoff?: boolean
11
11
  }
12
12
 
13
+ let alternateFallbackMessage = false
13
14
  export class FlowBuilderAction extends React.Component<FlowBuilderActionProps> {
14
15
  static contextType = RequestContext
15
16
 
@@ -34,7 +35,10 @@ export class FlowBuilderAction extends React.Component<FlowBuilderActionProps> {
34
35
  if (keywordPayload) targetContentId = keywordPayload
35
36
  }
36
37
  if (!targetContentId) {
37
- targetContentId = await flowBuilderPlugin.getFallbackId()
38
+ targetContentId = await flowBuilderPlugin.getFallbackId(
39
+ alternateFallbackMessage
40
+ )
41
+ alternateFallbackMessage = !alternateFallbackMessage
38
42
  }
39
43
 
40
44
  const { contents, handoffNode } = await flowBuilderPlugin.getContents(
@@ -50,6 +54,6 @@ export class FlowBuilderAction extends React.Component<FlowBuilderActionProps> {
50
54
  render(): JSX.Element | JSX.Element[] {
51
55
  // @ts-ignore
52
56
  const { contents, handoffNode } = this.props
53
- return contents!.map((content, index) => content.toBotonic(index))
57
+ return contents!.map(content => content.toBotonic(content.id))
54
58
  }
55
59
  }
@@ -5,7 +5,7 @@ import {
5
5
  } from '../flow-builder-models'
6
6
 
7
7
  export abstract class ContentFieldsBase {
8
- constructor(private readonly id: string) {}
8
+ constructor(public readonly id: string) {}
9
9
 
10
10
  static getTextByLocale(locale: string, text: TextLocale[]): string {
11
11
  const result = text.find(t => t.locale === locale)
@@ -24,10 +24,10 @@ export class FlowButton extends ContentFieldsBase {
24
24
  return newButton
25
25
  }
26
26
 
27
- renderButton(index: number, buttonStyle: ButtonStyle): JSX.Element {
27
+ renderButton(id: string, buttonStyle: ButtonStyle): JSX.Element {
28
28
  if (buttonStyle === ButtonStyle.QUICK_REPLY) {
29
29
  return (
30
- <Reply payload={this.payload} key={index}>
30
+ <Reply key={id} payload={this.payload}>
31
31
  {this.text}
32
32
  </Reply>
33
33
  )
@@ -36,7 +36,7 @@ export class FlowButton extends ContentFieldsBase {
36
36
  if (this.url) props = { url: this.url }
37
37
  return (
38
38
  // @ts-ignore
39
- <Button payload={this.payload} key={index} {...props}>
39
+ <Button key={id} payload={this.payload} {...props}>
40
40
  {this.text}
41
41
  </Button>
42
42
  )
@@ -18,11 +18,11 @@ export class FlowCarousel extends ContentFieldsBase {
18
18
  return newCarousel
19
19
  }
20
20
 
21
- toBotonic(index: number): JSX.Element {
21
+ toBotonic(id: string): JSX.Element {
22
22
  return (
23
- <Carousel key={index}>
24
- {this.elements.map((element, eIndex) => (
25
- <Element key={eIndex}>
23
+ <Carousel key={id}>
24
+ {this.elements.map(element => (
25
+ <Element key={`${id}-${element.id}`}>
26
26
  <Pic src={element.image} />
27
27
  <Title style=''>{element.title}</Title>
28
28
  <Subtitle style=''>{element.subtitle}</Subtitle>
@@ -33,7 +33,6 @@ export class FlowCarousel extends ContentFieldsBase {
33
33
  >
34
34
  {element.buttons?.text}
35
35
  </Button>
36
- ,
37
36
  </Element>
38
37
  ))}
39
38
  </Carousel>
@@ -15,7 +15,7 @@ export class FlowImage extends ContentFieldsBase {
15
15
  return newImage
16
16
  }
17
17
 
18
- toBotonic(index: number): JSX.Element {
19
- return <Image src={this.src} key={index} />
18
+ toBotonic(id: string): JSX.Element {
19
+ return <Image key={id} src={this.src} />
20
20
  }
21
21
  }
@@ -22,12 +22,12 @@ export class FlowText extends ContentFieldsBase {
22
22
  return newText
23
23
  }
24
24
 
25
- toBotonic(index: number): JSX.Element {
25
+ toBotonic(id: string): JSX.Element {
26
26
  return (
27
- <Text key={index}>
27
+ <Text key={id}>
28
28
  {this.text}
29
- {this.buttons.map((button, index) =>
30
- button.renderButton(index, this.buttonStyle)
29
+ {this.buttons.map(button =>
30
+ button.renderButton(button.id, this.buttonStyle)
31
31
  )}
32
32
  </Text>
33
33
  )
@@ -15,8 +15,8 @@ export class FlowVideo extends ContentFieldsBase {
15
15
  return newVideo
16
16
  }
17
17
 
18
- toBotonic(index: number): JSX.Element {
18
+ toBotonic(id: string): JSX.Element {
19
19
  // @ts-ignore
20
- return <Video key={index} src={this.src} />
20
+ return <Video key={id} src={this.src} />
21
21
  }
22
22
  }
package/src/helpers.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Plugin } from '@botonic/core'
2
2
  import BotonicPluginFlowBuilder from './index'
3
+ import { NodeComponent } from './flow-builder-models'
3
4
 
4
5
  const FLOW_BUILDER_PLUGIN_NAME = 'BotonicPluginFlowBuilder'
5
6
 
@@ -16,3 +17,23 @@ export function getFlowBuilderPlugin(plugins: {
16
17
  )
17
18
  return flowBuilderPlugin
18
19
  }
20
+
21
+ export async function updateButtonUrls(
22
+ hubtypeContent: any,
23
+ contentKey: string,
24
+ getContentFn: any
25
+ ): Promise<void> {
26
+ if (hubtypeContent.content[contentKey]) {
27
+ for (const i in hubtypeContent.content[contentKey]) {
28
+ const button = hubtypeContent.content[contentKey][i].button
29
+ if (button.url) {
30
+ for (const j in button.url) {
31
+ button.url[j] = {
32
+ ...button.url[j],
33
+ ...(await getContentFn(button.url[j].id)),
34
+ }
35
+ }
36
+ }
37
+ }
38
+ }
39
+ }