@botonic/react 0.37.0 → 0.37.1-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 (30) hide show
  1. package/lib/cjs/components/index.d.ts +1 -1
  2. package/lib/cjs/components/index.js +2 -1
  3. package/lib/cjs/components/index.js.map +1 -1
  4. package/lib/cjs/components/whatsapp-cta-url-button.d.ts +32 -7
  5. package/lib/cjs/components/whatsapp-cta-url-button.js +15 -2
  6. package/lib/cjs/components/whatsapp-cta-url-button.js.map +1 -1
  7. package/lib/cjs/util/strings.d.ts +1 -1
  8. package/lib/cjs/util/strings.js.map +1 -1
  9. package/lib/cjs/webchat/input-panel/send-button.js +9 -4
  10. package/lib/cjs/webchat/input-panel/send-button.js.map +1 -1
  11. package/lib/cjs/webchat/theme/default-theme.js +2 -2
  12. package/lib/cjs/webchat/theme/default-theme.js.map +1 -1
  13. package/lib/esm/components/index.d.ts +1 -1
  14. package/lib/esm/components/index.js +1 -1
  15. package/lib/esm/components/index.js.map +1 -1
  16. package/lib/esm/components/whatsapp-cta-url-button.d.ts +32 -7
  17. package/lib/esm/components/whatsapp-cta-url-button.js +14 -1
  18. package/lib/esm/components/whatsapp-cta-url-button.js.map +1 -1
  19. package/lib/esm/util/strings.d.ts +1 -1
  20. package/lib/esm/util/strings.js.map +1 -1
  21. package/lib/esm/webchat/input-panel/send-button.js +9 -4
  22. package/lib/esm/webchat/input-panel/send-button.js.map +1 -1
  23. package/lib/esm/webchat/theme/default-theme.js +2 -2
  24. package/lib/esm/webchat/theme/default-theme.js.map +1 -1
  25. package/package.json +2 -1
  26. package/src/components/index.ts +1 -0
  27. package/src/components/whatsapp-cta-url-button.tsx +61 -12
  28. package/src/util/strings.ts +5 -1
  29. package/src/webchat/input-panel/send-button.tsx +9 -3
  30. package/src/webchat/theme/default-theme.ts +2 -2
@@ -22,7 +22,7 @@ export { Video } from './video';
22
22
  export { normalizeWebchatSettings, WebchatSettings, WebchatSettingsProps, } from './webchat-settings';
23
23
  export { WhatsappButtonList, WhatsappButtonListProps, WhatsappButtonListRowProps, WhatsappButtonListSectionProps, } from './whatsapp-button-list';
24
24
  export { WhatsappCatalog, WhatsappCatalogProps } from './whatsapp-catalog';
25
- export { WhatsappCTAUrlButton, WhatsappCTAUrlButtonProps, } from './whatsapp-cta-url-button';
25
+ export { WhatsappCTAUrlButton, WhatsappCTAUrlButtonProps, WhatsappCTAUrlHeaderType, } from './whatsapp-cta-url-button';
26
26
  export { WhatsappMediaCarousel, WhatsappMediaCarouselProps, } from './whatsapp-media-carousel';
27
27
  export { WhatsappProduct } from './whatsapp-product';
28
28
  export { WhatsappProductCarousel, WhatsappProductCarouselProps, } from './whatsapp-product-carousel';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WhatsappTemplate = exports.WhatsappProductList = exports.WhatsappProductCarousel = exports.WhatsappProduct = exports.WhatsappMediaCarousel = exports.WhatsappCTAUrlButton = exports.WhatsappCatalog = exports.WhatsappButtonList = exports.WebchatSettings = exports.normalizeWebchatSettings = exports.Video = exports.Title = exports.Text = exports.Subtitle = exports.ShareButton = exports.Reply = exports.Raw = exports.Pic = exports.MessageTemplate = exports.Message = exports.Location = exports.Image = exports.Handoff = exports.Element = exports.Document = exports.customMessage = exports.Carousel = exports.Button = exports.Audio = void 0;
3
+ exports.WhatsappTemplate = exports.WhatsappProductList = exports.WhatsappProductCarousel = exports.WhatsappProduct = exports.WhatsappMediaCarousel = exports.WhatsappCTAUrlHeaderType = exports.WhatsappCTAUrlButton = exports.WhatsappCatalog = exports.WhatsappButtonList = exports.WebchatSettings = exports.normalizeWebchatSettings = exports.Video = exports.Title = exports.Text = exports.Subtitle = exports.ShareButton = exports.Reply = exports.Raw = exports.Pic = exports.MessageTemplate = exports.Message = exports.Location = exports.Image = exports.Handoff = exports.Element = exports.Document = exports.customMessage = exports.Carousel = exports.Button = exports.Audio = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  var audio_1 = require("./audio");
6
6
  Object.defineProperty(exports, "Audio", { enumerable: true, get: function () { return audio_1.Audio; } });
@@ -51,6 +51,7 @@ var whatsapp_catalog_1 = require("./whatsapp-catalog");
51
51
  Object.defineProperty(exports, "WhatsappCatalog", { enumerable: true, get: function () { return whatsapp_catalog_1.WhatsappCatalog; } });
52
52
  var whatsapp_cta_url_button_1 = require("./whatsapp-cta-url-button");
53
53
  Object.defineProperty(exports, "WhatsappCTAUrlButton", { enumerable: true, get: function () { return whatsapp_cta_url_button_1.WhatsappCTAUrlButton; } });
54
+ Object.defineProperty(exports, "WhatsappCTAUrlHeaderType", { enumerable: true, get: function () { return whatsapp_cta_url_button_1.WhatsappCTAUrlHeaderType; } });
54
55
  var whatsapp_media_carousel_1 = require("./whatsapp-media-carousel");
55
56
  Object.defineProperty(exports, "WhatsappMediaCarousel", { enumerable: true, get: function () { return whatsapp_media_carousel_1.WhatsappMediaCarousel; } });
56
57
  var whatsapp_product_1 = require("./whatsapp-product");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":";;;;AAAA,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,wCAAuC;AAA9B,+FAAA,MAAM,OAAA;AACf,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,mDAAgD;AAAvC,+GAAA,aAAa,OAAA;AACtB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,wDAA6B;AAC7B,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,uDAAoD;AAA3C,mHAAA,eAAe,OAAA;AACxB,yDAA8B;AAC9B,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,+CAA4C;AAAnC,2GAAA,WAAW,OAAA;AACpB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,uDAI2B;AAHzB,4HAAA,wBAAwB,OAAA;AACxB,mHAAA,eAAe,OAAA;AAGjB,+DAK+B;AAJ7B,0HAAA,kBAAkB,OAAA;AAKpB,uDAA0E;AAAjE,mHAAA,eAAe,OAAA;AACxB,qEAGkC;AAFhC,+HAAA,oBAAoB,OAAA;AAGtB,qEAGkC;AAFhC,gIAAA,qBAAqB,OAAA;AAGvB,uDAAoD;AAA3C,mHAAA,eAAe,OAAA;AACxB,yEAGoC;AAFlC,oIAAA,uBAAuB,OAAA;AAGzB,iEAKgC;AAH9B,4HAAA,mBAAmB,OAAA;AAIrB,yDAAsD;AAA7C,qHAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":";;;;AAAA,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,wCAAuC;AAA9B,+FAAA,MAAM,OAAA;AACf,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,mDAAgD;AAAvC,+GAAA,aAAa,OAAA;AACtB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,wDAA6B;AAC7B,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,qCAAmC;AAA1B,kGAAA,OAAO,OAAA;AAChB,uDAAoD;AAA3C,mHAAA,eAAe,OAAA;AACxB,yDAA8B;AAC9B,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,+CAA4C;AAAnC,2GAAA,WAAW,OAAA;AACpB,uCAAqC;AAA5B,oGAAA,QAAQ,OAAA;AACjB,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,uDAI2B;AAHzB,4HAAA,wBAAwB,OAAA;AACxB,mHAAA,eAAe,OAAA;AAGjB,+DAK+B;AAJ7B,0HAAA,kBAAkB,OAAA;AAKpB,uDAA0E;AAAjE,mHAAA,eAAe,OAAA;AACxB,qEAIkC;AAHhC,+HAAA,oBAAoB,OAAA;AAEpB,mIAAA,wBAAwB,OAAA;AAE1B,qEAGkC;AAFhC,gIAAA,qBAAqB,OAAA;AAGvB,uDAAoD;AAA3C,mHAAA,eAAe,OAAA;AACxB,yEAGoC;AAFlC,oIAAA,uBAAuB,OAAA;AAGzB,iEAKgC;AAH9B,4HAAA,mBAAmB,OAAA;AAIrB,yDAAsD;AAA7C,qHAAA,gBAAgB,OAAA"}
@@ -1,15 +1,40 @@
1
- export interface WhatsappCTAUrlButtonCommonProps {
2
- header?: string;
1
+ export declare enum WhatsappCTAUrlHeaderType {
2
+ Document = "document",
3
+ Image = "image",
4
+ Text = "text",
5
+ Video = "video"
6
+ }
7
+ export interface WhatsappCTAUrlHeaderTextProps {
8
+ headerType: WhatsappCTAUrlHeaderType.Text;
9
+ header: string;
10
+ }
11
+ export interface WhatsappCTAUrlHeaderImageProps {
12
+ headerType: WhatsappCTAUrlHeaderType.Image;
13
+ headerImage: string;
14
+ }
15
+ export interface WhatsappCTAUrlHeaderVideoProps {
16
+ headerType: WhatsappCTAUrlHeaderType.Video;
17
+ headerVideo: string;
18
+ }
19
+ export interface WhatsappCTAUrlHeaderDocumentProps {
20
+ headerType: WhatsappCTAUrlHeaderType.Document;
21
+ headerDocument: string;
22
+ }
23
+ export interface WhatsappCTAUrlNoHeaderProps {
24
+ headerType?: undefined;
25
+ }
26
+ export type WhatsappCTAUrlHeader = WhatsappCTAUrlHeaderTextProps | WhatsappCTAUrlHeaderImageProps | WhatsappCTAUrlHeaderVideoProps | WhatsappCTAUrlHeaderDocumentProps | WhatsappCTAUrlNoHeaderProps;
27
+ export type WhatsappCTAUrlButtonCommonProps = WhatsappCTAUrlHeader & {
3
28
  body: string;
4
29
  footer?: string;
5
30
  displayText: string;
6
- }
7
- export interface WhatsappCTAUrlButtonUrlProps extends WhatsappCTAUrlButtonCommonProps {
31
+ };
32
+ export type WhatsappCTAUrlButtonUrlProps = WhatsappCTAUrlButtonCommonProps & {
8
33
  url: string;
9
- }
10
- export interface WhatsappCTAUrlButtonWebviewProps extends WhatsappCTAUrlButtonCommonProps {
34
+ };
35
+ export type WhatsappCTAUrlButtonWebviewProps = WhatsappCTAUrlButtonCommonProps & {
11
36
  webview: any;
12
37
  params?: any;
13
- }
38
+ };
14
39
  export type WhatsappCTAUrlButtonProps = WhatsappCTAUrlButtonUrlProps | WhatsappCTAUrlButtonWebviewProps;
15
40
  export declare const WhatsappCTAUrlButton: (props: WhatsappCTAUrlButtonProps) => any;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WhatsappCTAUrlButton = void 0;
3
+ exports.WhatsappCTAUrlButton = exports.WhatsappCTAUrlHeaderType = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const core_1 = require("@botonic/core");
6
6
  const util_1 = require("../util");
@@ -9,6 +9,13 @@ const webviews_1 = require("../util/webviews");
9
9
  const message_1 = require("./message");
10
10
  const constants_1 = require("./multichannel/whatsapp/constants");
11
11
  const markdown_meta_1 = require("./multichannel/whatsapp/markdown-meta");
12
+ var WhatsappCTAUrlHeaderType;
13
+ (function (WhatsappCTAUrlHeaderType) {
14
+ WhatsappCTAUrlHeaderType["Document"] = "document";
15
+ WhatsappCTAUrlHeaderType["Image"] = "image";
16
+ WhatsappCTAUrlHeaderType["Text"] = "text";
17
+ WhatsappCTAUrlHeaderType["Video"] = "video";
18
+ })(WhatsappCTAUrlHeaderType = exports.WhatsappCTAUrlHeaderType || (exports.WhatsappCTAUrlHeaderType = {}));
12
19
  const serialize = _whatsappCTAUrlButtonProps => {
13
20
  // TODO: Implement to have data persistence in localStorage, not needed for this WhatsApp development
14
21
  return {};
@@ -20,8 +27,14 @@ const WhatsappCTAUrlButton = (props) => {
20
27
  return ((0, jsx_runtime_1.jsx)(message_1.Message, Object.assign({ json: serialize(message) }, props, { type: core_1.INPUT.WHATSAPP_CTA_URL_BUTTON }, { children: message })));
21
28
  };
22
29
  const renderNode = () => {
23
- const validatedProps = Object.assign(Object.assign({}, props), { header: props.header
30
+ const validatedProps = Object.assign(Object.assign({}, props), { headerType: props.headerType, header: props.headerType === WhatsappCTAUrlHeaderType.Text && props.header
24
31
  ? (0, util_1.truncateText)(props.header, constants_1.WHATSAPP_MAX_HEADER_CHARS)
32
+ : undefined, headerImage: props.headerType === WhatsappCTAUrlHeaderType.Image
33
+ ? props.headerImage
34
+ : undefined, headerVideo: props.headerType === WhatsappCTAUrlHeaderType.Video
35
+ ? props.headerVideo
36
+ : undefined, headerDocument: props.headerType === WhatsappCTAUrlHeaderType.Document
37
+ ? props.headerDocument
25
38
  : undefined, body: (0, util_1.truncateText)((0, markdown_meta_1.convertToMarkdownMeta)(props.body), constants_1.WHATSAPP_MAX_BODY_CHARS), footer: props.footer
26
39
  ? (0, util_1.truncateText)((0, markdown_meta_1.convertToMarkdownMeta)(props.footer), constants_1.WHATSAPP_MAX_FOOTER_CHARS)
27
40
  : undefined, displayText: (0, util_1.truncateText)(props.displayText, constants_1.WHATSAPP_MAX_BUTTON_CHARS), url: 'webview' in props
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp-cta-url-button.js","sourceRoot":"","sources":["../../../src/components/whatsapp-cta-url-button.tsx"],"names":[],"mappings":";;;;AAAA,wCAAqC;AAGrC,kCAAsC;AACtC,yCAA+C;AAC/C,+CAA+D;AAC/D,uCAAmC;AACnC,iEAK0C;AAC1C,yEAA6E;AAwB7E,MAAM,SAAS,GAAG,0BAA0B,CAAC,EAAE;IAC7C,qGAAqG;IACrG,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAEM,MAAM,oBAAoB,GAAG,CAAC,KAAgC,EAAE,EAAE;IACvE,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,qCAAqC;QACrC,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAA;QAC1C,OAAO,CACL,uBAAC,iBAAO,kBACN,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,IACpB,KAAK,IACT,IAAI,EAAE,YAAK,CAAC,uBAAuB,gBAElC,OAAO,IACA,CACX,CAAA;IACH,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,cAAc,mCACf,KAAK,KACR,MAAM,EAAE,KAAK,CAAC,MAAM;gBAClB,CAAC,CAAC,IAAA,mBAAY,EAAC,KAAK,CAAC,MAAM,EAAE,qCAAyB,CAAC;gBACvD,CAAC,CAAC,SAAS,EACb,IAAI,EAAE,IAAA,mBAAY,EAChB,IAAA,qCAAqB,EAAC,KAAK,CAAC,IAAI,CAAC,EACjC,mCAAuB,CACxB,EACD,MAAM,EAAE,KAAK,CAAC,MAAM;gBAClB,CAAC,CAAC,IAAA,mBAAY,EACV,IAAA,qCAAqB,EAAC,KAAK,CAAC,MAAM,CAAC,EACnC,qCAAyB,CAC1B;gBACH,CAAC,CAAC,SAAS,EACb,WAAW,EAAE,IAAA,mBAAY,EAAC,KAAK,CAAC,WAAW,EAAE,qCAAyB,CAAC,EACvE,GAAG,EACD,SAAS,IAAI,KAAK;gBAChB,CAAC,CAAC,IAAA,uCAA4B,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;gBAC3D,CAAC,CAAC,KAAK,CAAC,GAAG,GAChB,CAAA;QACD,OAAO;QACL,gFAAgF;QAChF,oDAAa,cAAc,IAAE,IAAI,EAAE,YAAK,CAAC,uBAAuB,IAAI,CACrE,CAAA;IACH,CAAC,CAAA;IAED,OAAO,IAAA,uBAAe,EAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAA;AACvD,CAAC,CAAA;AA5CY,QAAA,oBAAoB,wBA4ChC"}
1
+ {"version":3,"file":"whatsapp-cta-url-button.js","sourceRoot":"","sources":["../../../src/components/whatsapp-cta-url-button.tsx"],"names":[],"mappings":";;;;AAAA,wCAAqC;AAGrC,kCAAsC;AACtC,yCAA+C;AAC/C,+CAA+D;AAC/D,uCAAmC;AACnC,iEAK0C;AAC1C,yEAA6E;AAE7E,IAAY,wBAKX;AALD,WAAY,wBAAwB;IAClC,iDAAqB,CAAA;IACrB,2CAAe,CAAA;IACf,yCAAa,CAAA;IACb,2CAAe,CAAA;AACjB,CAAC,EALW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAKnC;AAoDD,MAAM,SAAS,GAAG,0BAA0B,CAAC,EAAE;IAC7C,qGAAqG;IACrG,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAEM,MAAM,oBAAoB,GAAG,CAAC,KAAgC,EAAE,EAAE;IACvE,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,qCAAqC;QACrC,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAA;QAC1C,OAAO,CACL,uBAAC,iBAAO,kBACN,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,IACpB,KAAK,IACT,IAAI,EAAE,YAAK,CAAC,uBAAuB,gBAElC,OAAO,IACA,CACX,CAAA;IACH,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,cAAc,mCACf,KAAK,KACR,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,MAAM,EACJ,KAAK,CAAC,UAAU,KAAK,wBAAwB,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM;gBAChE,CAAC,CAAC,IAAA,mBAAY,EAAC,KAAK,CAAC,MAAM,EAAE,qCAAyB,CAAC;gBACvD,CAAC,CAAC,SAAS,EACf,WAAW,EACT,KAAK,CAAC,UAAU,KAAK,wBAAwB,CAAC,KAAK;gBACjD,CAAC,CAAC,KAAK,CAAC,WAAW;gBACnB,CAAC,CAAC,SAAS,EACf,WAAW,EACT,KAAK,CAAC,UAAU,KAAK,wBAAwB,CAAC,KAAK;gBACjD,CAAC,CAAC,KAAK,CAAC,WAAW;gBACnB,CAAC,CAAC,SAAS,EACf,cAAc,EACZ,KAAK,CAAC,UAAU,KAAK,wBAAwB,CAAC,QAAQ;gBACpD,CAAC,CAAC,KAAK,CAAC,cAAc;gBACtB,CAAC,CAAC,SAAS,EACf,IAAI,EAAE,IAAA,mBAAY,EAChB,IAAA,qCAAqB,EAAC,KAAK,CAAC,IAAI,CAAC,EACjC,mCAAuB,CACxB,EACD,MAAM,EAAE,KAAK,CAAC,MAAM;gBAClB,CAAC,CAAC,IAAA,mBAAY,EACV,IAAA,qCAAqB,EAAC,KAAK,CAAC,MAAM,CAAC,EACnC,qCAAyB,CAC1B;gBACH,CAAC,CAAC,SAAS,EACb,WAAW,EAAE,IAAA,mBAAY,EAAC,KAAK,CAAC,WAAW,EAAE,qCAAyB,CAAC,EACvE,GAAG,EACD,SAAS,IAAI,KAAK;gBAChB,CAAC,CAAC,IAAA,uCAA4B,EAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;gBAC3D,CAAC,CAAC,KAAK,CAAC,GAAG,GAChB,CAAA;QACD,OAAO;QACL,gFAAgF;QAChF,oDAAa,cAAc,IAAE,IAAI,EAAE,YAAK,CAAC,uBAAuB,IAAI,CACrE,CAAA;IACH,CAAC,CAAA;IAED,OAAO,IAAA,uBAAe,EAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAA;AACvD,CAAC,CAAA;AA1DY,QAAA,oBAAoB,wBA0DhC"}
@@ -1 +1 @@
1
- export declare const truncateText: (text: any, maxLength: any, ellipsis?: string) => any;
1
+ export declare const truncateText: (text: string, maxLength: number, ellipsis?: string) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../../src/util/strings.ts"],"names":[],"mappings":";;;AAAO,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,GAAG,KAAK,EAAE,EAAE;IAChE,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAA;KACjE;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AALY,QAAA,YAAY,gBAKxB"}
1
+ {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../../src/util/strings.ts"],"names":[],"mappings":";;;AAAO,MAAM,YAAY,GAAG,CAC1B,IAAY,EACZ,SAAiB,EACjB,QAAQ,GAAG,KAAK,EAChB,EAAE;IACF,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAA;KACjE;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AATY,QAAA,YAAY,gBASxB"}
@@ -10,11 +10,16 @@ const context_1 = require("../../webchat/context");
10
10
  const common_1 = require("../components/common");
11
11
  const conditional_animation_1 = require("../components/conditional-animation");
12
12
  const SendButton = ({ onClick }) => {
13
- var _a, _b, _c, _d;
13
+ var _a, _b;
14
14
  const { webchatState } = (0, react_1.useContext)(context_1.WebchatContext);
15
- const sendButtonEnabled = (_b = (_a = webchatState.theme.userInput) === null || _a === void 0 ? void 0 : _a.sendButton) === null || _b === void 0 ? void 0 : _b.enable;
16
- const CustomSendButton = (_d = (_c = webchatState.theme.userInput) === null || _c === void 0 ? void 0 : _c.sendButton) === null || _d === void 0 ? void 0 : _d.custom;
17
- return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: sendButtonEnabled || CustomSendButton ? ((0, jsx_runtime_1.jsx)(conditional_animation_1.ConditionalAnimation, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ onClick: onClick, role: constants_1.ROLES.SEND_BUTTON_ICON }, { children: CustomSendButton ? ((0, jsx_runtime_1.jsx)(CustomSendButton, {})) : ((0, jsx_runtime_1.jsx)(common_1.Icon, { src: send_button_svg_1.default })) })) })) : null }));
15
+ const CustomSendButton = (_b = (_a = webchatState.theme.userInput) === null || _a === void 0 ? void 0 : _a.sendButton) === null || _b === void 0 ? void 0 : _b.custom;
16
+ const isSendButtonEnabled = () => {
17
+ var _a, _b, _c;
18
+ const hasCustomSendButton = !!CustomSendButton;
19
+ return ((_c = (_b = (_a = webchatState.theme.userInput) === null || _a === void 0 ? void 0 : _a.sendButton) === null || _b === void 0 ? void 0 : _b.enable) !== null && _c !== void 0 ? _c : hasCustomSendButton);
20
+ };
21
+ const sendButtonEnabled = isSendButtonEnabled();
22
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: sendButtonEnabled ? ((0, jsx_runtime_1.jsx)(conditional_animation_1.ConditionalAnimation, { children: (0, jsx_runtime_1.jsx)("div", Object.assign({ onClick: onClick, role: constants_1.ROLES.SEND_BUTTON_ICON }, { children: CustomSendButton ? ((0, jsx_runtime_1.jsx)(CustomSendButton, {})) : ((0, jsx_runtime_1.jsx)(common_1.Icon, { src: send_button_svg_1.default })) })) })) : null }));
18
23
  };
19
24
  exports.SendButton = SendButton;
20
25
  //# sourceMappingURL=send-button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"send-button.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/send-button.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAyC;AAEzC,2FAAyD;AACzD,+CAAuC;AACvC,mDAAsD;AACtD,iDAA2C;AAC3C,+EAA0E;AAMnE,MAAM,UAAU,GAAG,CAAC,EAAE,OAAO,EAAmB,EAAE,EAAE;;IACzD,MAAM,EAAE,YAAY,EAAE,GAAG,IAAA,kBAAU,EAAC,wBAAc,CAAC,CAAA;IAEnD,MAAM,iBAAiB,GAAG,MAAA,MAAA,YAAY,CAAC,KAAK,CAAC,SAAS,0CAAE,UAAU,0CAAE,MAAM,CAAA;IAE1E,MAAM,gBAAgB,GAAG,MAAA,MAAA,YAAY,CAAC,KAAK,CAAC,SAAS,0CAAE,UAAU,0CAAE,MAAM,CAAA;IAEzE,OAAO,CACL,2DACG,iBAAiB,IAAI,gBAAgB,CAAC,CAAC,CAAC,CACvC,uBAAC,4CAAoB,cACnB,8CAAK,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,iBAAK,CAAC,gBAAgB,gBAChD,gBAAgB,CAAC,CAAC,CAAC,CAClB,uBAAC,gBAAgB,KAAG,CACrB,CAAC,CAAC,CAAC,CACF,uBAAC,aAAI,IAAC,GAAG,EAAE,yBAAc,GAAI,CAC9B,IACG,GACe,CACxB,CAAC,CAAC,CAAC,IAAI,GACP,CACJ,CAAA;AACH,CAAC,CAAA;AAtBY,QAAA,UAAU,cAsBtB"}
1
+ {"version":3,"file":"send-button.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/send-button.tsx"],"names":[],"mappings":";;;;;AAAA,iCAAyC;AAEzC,2FAAyD;AACzD,+CAAuC;AACvC,mDAAsD;AACtD,iDAA2C;AAC3C,+EAA0E;AAMnE,MAAM,UAAU,GAAG,CAAC,EAAE,OAAO,EAAmB,EAAE,EAAE;;IACzD,MAAM,EAAE,YAAY,EAAE,GAAG,IAAA,kBAAU,EAAC,wBAAc,CAAC,CAAA;IAEnD,MAAM,gBAAgB,GAAG,MAAA,MAAA,YAAY,CAAC,KAAK,CAAC,SAAS,0CAAE,UAAU,0CAAE,MAAM,CAAA;IAEzE,MAAM,mBAAmB,GAAG,GAAG,EAAE;;QAC/B,MAAM,mBAAmB,GAAG,CAAC,CAAC,gBAAgB,CAAA;QAC9C,OAAO,CACL,MAAA,MAAA,MAAA,YAAY,CAAC,KAAK,CAAC,SAAS,0CAAE,UAAU,0CAAE,MAAM,mCAAI,mBAAmB,CACxE,CAAA;IACH,CAAC,CAAA;IACD,MAAM,iBAAiB,GAAG,mBAAmB,EAAE,CAAA;IAE/C,OAAO,CACL,2DACG,iBAAiB,CAAC,CAAC,CAAC,CACnB,uBAAC,4CAAoB,cACnB,8CAAK,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,iBAAK,CAAC,gBAAgB,gBAChD,gBAAgB,CAAC,CAAC,CAAC,CAClB,uBAAC,gBAAgB,KAAG,CACrB,CAAC,CAAC,CAAC,CACF,uBAAC,aAAI,IAAC,GAAG,EAAE,yBAAc,GAAI,CAC9B,IACG,GACe,CACxB,CAAC,CAAC,CAAC,IAAI,GACP,CACJ,CAAA;AACH,CAAC,CAAA;AA5BY,QAAA,UAAU,cA4BtB"}
@@ -80,11 +80,11 @@ exports.defaultTheme = {
80
80
  },
81
81
  triggerButton: { image: constants_1.WEBCHAT.DEFAULTS.LOGO },
82
82
  userInput: {
83
- attachments: { enable: false },
83
+ attachments: { enable: undefined },
84
84
  box: {
85
85
  placeholder: 'Ask me something...',
86
86
  },
87
- emojiPicker: { enable: false },
87
+ emojiPicker: { enable: undefined },
88
88
  sendButton: { enable: true },
89
89
  enable: true,
90
90
  },
@@ -1 +1 @@
1
- {"version":3,"file":"default-theme.js","sourceRoot":"","sources":["../../../../src/webchat/theme/default-theme.ts"],"names":[],"mappings":";;;AAAA,+CAAiD;AAGpC,QAAA,YAAY,GAAiB;IACxC,KAAK,EAAE;QACL,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,OAAO;QACf,YAAY,EAAE,MAAM;QACpB,UAAU,EAAE,4BAA4B;QACxC,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;QACjB,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,MAAM;QACd,eAAe,EAAE,kBAAM,CAAC,WAAW;QACnC,SAAS,EAAE,GAAG,kBAAM,CAAC,qBAAqB,eAAe;KAC1D;IACD,gBAAgB,EAAE,GAAG;IACrB,WAAW,EAAE;QACX,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK;KACd;IACD,MAAM,EAAE;QACN,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,mBAAO,CAAC,QAAQ,CAAC,IAAI;QAC5B,KAAK,EAAE;YACL,YAAY,EAAE,mBAAmB;SAClC;QACD,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;SACpB;KACF;IACD,KAAK,EAAE;QACL,KAAK,EAAE,kBAAM,CAAC,YAAY;QAC1B,KAAK,EAAE,mBAAO,CAAC,QAAQ,CAAC,IAAI;KAC7B;IACD,MAAM,EAAE;QACN,WAAW,EAAE,KAAK;QAClB,aAAa,EAAE;YACb,OAAO,EAAE,GAAG;YACZ,MAAM,EAAE,MAAM;YACd,aAAa,EAAE,MAAM;SACtB;QACD,WAAW,EAAE,MAAM;QACnB,eAAe,EAAE,kBAAM,CAAC,cAAc;QACtC,cAAc,EAAE,kBAAM,CAAC,WAAW;QAClC,KAAK,EAAE;YACL,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,MAAM;YACjB,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,kBAAM,CAAC,WAAW;YAC9B,KAAK,EAAE,kBAAM,CAAC,WAAW;YACzB,OAAO,EAAE,GAAG;YACZ,MAAM,EAAE,cAAc,kBAAM,CAAC,cAAc,EAAE;YAC7C,YAAY,EAAE,KAAK;YACnB,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE,QAAQ;SACnB;QACD,OAAO,EAAE;YACP,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,mBAAO,CAAC,QAAQ,CAAC,QAAQ;SACjC;KACF;IACD,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,QAAQ,EAAE,IAAI;SACf;QACD,GAAG,EAAE;YACH,QAAQ,EAAE,IAAI;SACf;KACF;IACD,aAAa,EAAE,EAAE,KAAK,EAAE,mBAAO,CAAC,QAAQ,CAAC,IAAI,EAAE;IAC/C,SAAS,EAAE;QACT,WAAW,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;QAC9B,GAAG,EAAE;YACH,WAAW,EAAE,qBAAqB;SACnC;QACD,WAAW,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;QAC9B,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;QAC5B,MAAM,EAAE,IAAI;KACb;IACD,QAAQ,EAAE;QACR,YAAY,EAAE,IAAI;KACnB;IACD,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;IAC5B,aAAa,EAAE;QACb,MAAM,EAAE,KAAK;QACb,MAAM,EAAE;YACN,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,iBAAiB;SACxB;QACD,aAAa,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;KACjC;CACF,CAAA"}
1
+ {"version":3,"file":"default-theme.js","sourceRoot":"","sources":["../../../../src/webchat/theme/default-theme.ts"],"names":[],"mappings":";;;AAAA,+CAAiD;AAGpC,QAAA,YAAY,GAAiB;IACxC,KAAK,EAAE;QACL,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,OAAO;QACf,YAAY,EAAE,MAAM;QACpB,UAAU,EAAE,4BAA4B;QACxC,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,OAAO;QACjB,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,MAAM;QACd,eAAe,EAAE,kBAAM,CAAC,WAAW;QACnC,SAAS,EAAE,GAAG,kBAAM,CAAC,qBAAqB,eAAe;KAC1D;IACD,gBAAgB,EAAE,GAAG;IACrB,WAAW,EAAE;QACX,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK;KACd;IACD,MAAM,EAAE;QACN,KAAK,EAAE,SAAS;QAChB,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,mBAAO,CAAC,QAAQ,CAAC,IAAI;QAC5B,KAAK,EAAE;YACL,YAAY,EAAE,mBAAmB;SAClC;QACD,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;SACpB;KACF;IACD,KAAK,EAAE;QACL,KAAK,EAAE,kBAAM,CAAC,YAAY;QAC1B,KAAK,EAAE,mBAAO,CAAC,QAAQ,CAAC,IAAI;KAC7B;IACD,MAAM,EAAE;QACN,WAAW,EAAE,KAAK;QAClB,aAAa,EAAE;YACb,OAAO,EAAE,GAAG;YACZ,MAAM,EAAE,MAAM;YACd,aAAa,EAAE,MAAM;SACtB;QACD,WAAW,EAAE,MAAM;QACnB,eAAe,EAAE,kBAAM,CAAC,cAAc;QACtC,cAAc,EAAE,kBAAM,CAAC,WAAW;QAClC,KAAK,EAAE;YACL,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,MAAM;YACjB,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,QAAQ;YACpB,UAAU,EAAE,kBAAM,CAAC,WAAW;YAC9B,KAAK,EAAE,kBAAM,CAAC,WAAW;YACzB,OAAO,EAAE,GAAG;YACZ,MAAM,EAAE,cAAc,kBAAM,CAAC,cAAc,EAAE;YAC7C,YAAY,EAAE,KAAK;YACnB,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE,QAAQ;SACnB;QACD,OAAO,EAAE;YACP,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,mBAAO,CAAC,QAAQ,CAAC,QAAQ;SACjC;KACF;IACD,OAAO,EAAE;QACP,IAAI,EAAE;YACJ,QAAQ,EAAE,IAAI;SACf;QACD,GAAG,EAAE;YACH,QAAQ,EAAE,IAAI;SACf;KACF;IACD,aAAa,EAAE,EAAE,KAAK,EAAE,mBAAO,CAAC,QAAQ,CAAC,IAAI,EAAE;IAC/C,SAAS,EAAE;QACT,WAAW,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE;QAClC,GAAG,EAAE;YACH,WAAW,EAAE,qBAAqB;SACnC;QACD,WAAW,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE;QAClC,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;QAC5B,MAAM,EAAE,IAAI;KACb;IACD,QAAQ,EAAE;QACR,YAAY,EAAE,IAAI;KACnB;IACD,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;IAC5B,aAAa,EAAE;QACb,MAAM,EAAE,KAAK;QACb,MAAM,EAAE;YACN,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,iBAAiB;SACxB;QACD,aAAa,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;KACjC;CACF,CAAA"}
@@ -22,7 +22,7 @@ export { Video } from './video';
22
22
  export { normalizeWebchatSettings, WebchatSettings, WebchatSettingsProps, } from './webchat-settings';
23
23
  export { WhatsappButtonList, WhatsappButtonListProps, WhatsappButtonListRowProps, WhatsappButtonListSectionProps, } from './whatsapp-button-list';
24
24
  export { WhatsappCatalog, WhatsappCatalogProps } from './whatsapp-catalog';
25
- export { WhatsappCTAUrlButton, WhatsappCTAUrlButtonProps, } from './whatsapp-cta-url-button';
25
+ export { WhatsappCTAUrlButton, WhatsappCTAUrlButtonProps, WhatsappCTAUrlHeaderType, } from './whatsapp-cta-url-button';
26
26
  export { WhatsappMediaCarousel, WhatsappMediaCarouselProps, } from './whatsapp-media-carousel';
27
27
  export { WhatsappProduct } from './whatsapp-product';
28
28
  export { WhatsappProductCarousel, WhatsappProductCarouselProps, } from './whatsapp-product-carousel';
@@ -22,7 +22,7 @@ export { Video } from './video';
22
22
  export { normalizeWebchatSettings, WebchatSettings, } from './webchat-settings';
23
23
  export { WhatsappButtonList, } from './whatsapp-button-list';
24
24
  export { WhatsappCatalog } from './whatsapp-catalog';
25
- export { WhatsappCTAUrlButton, } from './whatsapp-cta-url-button';
25
+ export { WhatsappCTAUrlButton, WhatsappCTAUrlHeaderType, } from './whatsapp-cta-url-button';
26
26
  export { WhatsappMediaCarousel, } from './whatsapp-media-carousel';
27
27
  export { WhatsappProduct } from './whatsapp-product';
28
28
  export { WhatsappProductCarousel, } from './whatsapp-product-carousel';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EACL,wBAAwB,EACxB,eAAe,GAEhB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,kBAAkB,GAInB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,eAAe,EAAwB,MAAM,oBAAoB,CAAA;AAC1E,OAAO,EACL,oBAAoB,GAErB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,qBAAqB,GAEtB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EACL,uBAAuB,GAExB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAEL,mBAAmB,GAGpB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EACL,wBAAwB,EACxB,eAAe,GAEhB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,kBAAkB,GAInB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,eAAe,EAAwB,MAAM,oBAAoB,CAAA;AAC1E,OAAO,EACL,oBAAoB,EAEpB,wBAAwB,GACzB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,qBAAqB,GAEtB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EACL,uBAAuB,GAExB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAEL,mBAAmB,GAGpB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA"}
@@ -1,15 +1,40 @@
1
- export interface WhatsappCTAUrlButtonCommonProps {
2
- header?: string;
1
+ export declare enum WhatsappCTAUrlHeaderType {
2
+ Document = "document",
3
+ Image = "image",
4
+ Text = "text",
5
+ Video = "video"
6
+ }
7
+ export interface WhatsappCTAUrlHeaderTextProps {
8
+ headerType: WhatsappCTAUrlHeaderType.Text;
9
+ header: string;
10
+ }
11
+ export interface WhatsappCTAUrlHeaderImageProps {
12
+ headerType: WhatsappCTAUrlHeaderType.Image;
13
+ headerImage: string;
14
+ }
15
+ export interface WhatsappCTAUrlHeaderVideoProps {
16
+ headerType: WhatsappCTAUrlHeaderType.Video;
17
+ headerVideo: string;
18
+ }
19
+ export interface WhatsappCTAUrlHeaderDocumentProps {
20
+ headerType: WhatsappCTAUrlHeaderType.Document;
21
+ headerDocument: string;
22
+ }
23
+ export interface WhatsappCTAUrlNoHeaderProps {
24
+ headerType?: undefined;
25
+ }
26
+ export type WhatsappCTAUrlHeader = WhatsappCTAUrlHeaderTextProps | WhatsappCTAUrlHeaderImageProps | WhatsappCTAUrlHeaderVideoProps | WhatsappCTAUrlHeaderDocumentProps | WhatsappCTAUrlNoHeaderProps;
27
+ export type WhatsappCTAUrlButtonCommonProps = WhatsappCTAUrlHeader & {
3
28
  body: string;
4
29
  footer?: string;
5
30
  displayText: string;
6
- }
7
- export interface WhatsappCTAUrlButtonUrlProps extends WhatsappCTAUrlButtonCommonProps {
31
+ };
32
+ export type WhatsappCTAUrlButtonUrlProps = WhatsappCTAUrlButtonCommonProps & {
8
33
  url: string;
9
- }
10
- export interface WhatsappCTAUrlButtonWebviewProps extends WhatsappCTAUrlButtonCommonProps {
34
+ };
35
+ export type WhatsappCTAUrlButtonWebviewProps = WhatsappCTAUrlButtonCommonProps & {
11
36
  webview: any;
12
37
  params?: any;
13
- }
38
+ };
14
39
  export type WhatsappCTAUrlButtonProps = WhatsappCTAUrlButtonUrlProps | WhatsappCTAUrlButtonWebviewProps;
15
40
  export declare const WhatsappCTAUrlButton: (props: WhatsappCTAUrlButtonProps) => any;
@@ -6,6 +6,13 @@ import { generateWebviewUrlWithParams } from '../util/webviews';
6
6
  import { Message } from './message';
7
7
  import { WHATSAPP_MAX_BODY_CHARS, WHATSAPP_MAX_BUTTON_CHARS, WHATSAPP_MAX_FOOTER_CHARS, WHATSAPP_MAX_HEADER_CHARS, } from './multichannel/whatsapp/constants';
8
8
  import { convertToMarkdownMeta } from './multichannel/whatsapp/markdown-meta';
9
+ export var WhatsappCTAUrlHeaderType;
10
+ (function (WhatsappCTAUrlHeaderType) {
11
+ WhatsappCTAUrlHeaderType["Document"] = "document";
12
+ WhatsappCTAUrlHeaderType["Image"] = "image";
13
+ WhatsappCTAUrlHeaderType["Text"] = "text";
14
+ WhatsappCTAUrlHeaderType["Video"] = "video";
15
+ })(WhatsappCTAUrlHeaderType || (WhatsappCTAUrlHeaderType = {}));
9
16
  const serialize = _whatsappCTAUrlButtonProps => {
10
17
  // TODO: Implement to have data persistence in localStorage, not needed for this WhatsApp development
11
18
  return {};
@@ -17,8 +24,14 @@ export const WhatsappCTAUrlButton = (props) => {
17
24
  return (_jsx(Message, Object.assign({ json: serialize(message) }, props, { type: INPUT.WHATSAPP_CTA_URL_BUTTON }, { children: message })));
18
25
  };
19
26
  const renderNode = () => {
20
- const validatedProps = Object.assign(Object.assign({}, props), { header: props.header
27
+ const validatedProps = Object.assign(Object.assign({}, props), { headerType: props.headerType, header: props.headerType === WhatsappCTAUrlHeaderType.Text && props.header
21
28
  ? truncateText(props.header, WHATSAPP_MAX_HEADER_CHARS)
29
+ : undefined, headerImage: props.headerType === WhatsappCTAUrlHeaderType.Image
30
+ ? props.headerImage
31
+ : undefined, headerVideo: props.headerType === WhatsappCTAUrlHeaderType.Video
32
+ ? props.headerVideo
33
+ : undefined, headerDocument: props.headerType === WhatsappCTAUrlHeaderType.Document
34
+ ? props.headerDocument
22
35
  : undefined, body: truncateText(convertToMarkdownMeta(props.body), WHATSAPP_MAX_BODY_CHARS), footer: props.footer
23
36
  ? truncateText(convertToMarkdownMeta(props.footer), WHATSAPP_MAX_FOOTER_CHARS)
24
37
  : undefined, displayText: truncateText(props.displayText, WHATSAPP_MAX_BUTTON_CHARS), url: 'webview' in props
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp-cta-url-button.js","sourceRoot":"","sources":["../../../src/components/whatsapp-cta-url-button.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAGrC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAA;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAA;AAwB7E,MAAM,SAAS,GAAG,0BAA0B,CAAC,EAAE;IAC7C,qGAAqG;IACrG,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAgC,EAAE,EAAE;IACvE,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,qCAAqC;QACrC,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAA;QAC1C,OAAO,CACL,KAAC,OAAO,kBACN,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,IACpB,KAAK,IACT,IAAI,EAAE,KAAK,CAAC,uBAAuB,gBAElC,OAAO,IACA,CACX,CAAA;IACH,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,cAAc,mCACf,KAAK,KACR,MAAM,EAAE,KAAK,CAAC,MAAM;gBAClB,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,yBAAyB,CAAC;gBACvD,CAAC,CAAC,SAAS,EACb,IAAI,EAAE,YAAY,CAChB,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,EACjC,uBAAuB,CACxB,EACD,MAAM,EAAE,KAAK,CAAC,MAAM;gBAClB,CAAC,CAAC,YAAY,CACV,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,EACnC,yBAAyB,CAC1B;gBACH,CAAC,CAAC,SAAS,EACb,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,yBAAyB,CAAC,EACvE,GAAG,EACD,SAAS,IAAI,KAAK;gBAChB,CAAC,CAAC,4BAA4B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;gBAC3D,CAAC,CAAC,KAAK,CAAC,GAAG,GAChB,CAAA;QACD,OAAO;QACL,gFAAgF;QAChF,kCAAa,cAAc,IAAE,IAAI,EAAE,KAAK,CAAC,uBAAuB,IAAI,CACrE,CAAA;IACH,CAAC,CAAA;IAED,OAAO,eAAe,CAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAA;AACvD,CAAC,CAAA"}
1
+ {"version":3,"file":"whatsapp-cta-url-button.js","sourceRoot":"","sources":["../../../src/components/whatsapp-cta-url-button.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const truncateText: (text: any, maxLength: any, ellipsis?: string) => any;
1
+ export declare const truncateText: (text: string, maxLength: number, ellipsis?: string) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../../src/util/strings.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,GAAG,KAAK,EAAE,EAAE;IAChE,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAA;KACjE;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA"}
1
+ {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../../src/util/strings.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,IAAY,EACZ,SAAiB,EACjB,QAAQ,GAAG,KAAK,EAChB,EAAE;IACF,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAA;KACjE;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA"}
@@ -6,10 +6,15 @@ import { WebchatContext } from '../../webchat/context';
6
6
  import { Icon } from '../components/common';
7
7
  import { ConditionalAnimation } from '../components/conditional-animation';
8
8
  export const SendButton = ({ onClick }) => {
9
- var _a, _b, _c, _d;
9
+ var _a, _b;
10
10
  const { webchatState } = useContext(WebchatContext);
11
- const sendButtonEnabled = (_b = (_a = webchatState.theme.userInput) === null || _a === void 0 ? void 0 : _a.sendButton) === null || _b === void 0 ? void 0 : _b.enable;
12
- const CustomSendButton = (_d = (_c = webchatState.theme.userInput) === null || _c === void 0 ? void 0 : _c.sendButton) === null || _d === void 0 ? void 0 : _d.custom;
13
- return (_jsx(_Fragment, { children: sendButtonEnabled || CustomSendButton ? (_jsx(ConditionalAnimation, { children: _jsx("div", Object.assign({ onClick: onClick, role: ROLES.SEND_BUTTON_ICON }, { children: CustomSendButton ? (_jsx(CustomSendButton, {})) : (_jsx(Icon, { src: SendButtonIcon })) })) })) : null }));
11
+ const CustomSendButton = (_b = (_a = webchatState.theme.userInput) === null || _a === void 0 ? void 0 : _a.sendButton) === null || _b === void 0 ? void 0 : _b.custom;
12
+ const isSendButtonEnabled = () => {
13
+ var _a, _b, _c;
14
+ const hasCustomSendButton = !!CustomSendButton;
15
+ return ((_c = (_b = (_a = webchatState.theme.userInput) === null || _a === void 0 ? void 0 : _a.sendButton) === null || _b === void 0 ? void 0 : _b.enable) !== null && _c !== void 0 ? _c : hasCustomSendButton);
16
+ };
17
+ const sendButtonEnabled = isSendButtonEnabled();
18
+ return (_jsx(_Fragment, { children: sendButtonEnabled ? (_jsx(ConditionalAnimation, { children: _jsx("div", Object.assign({ onClick: onClick, role: ROLES.SEND_BUTTON_ICON }, { children: CustomSendButton ? (_jsx(CustomSendButton, {})) : (_jsx(Icon, { src: SendButtonIcon })) })) })) : null }));
14
19
  };
15
20
  //# sourceMappingURL=send-button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"send-button.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/send-button.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,cAAc,MAAM,8BAA8B,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAM1E,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAE,OAAO,EAAmB,EAAE,EAAE;;IACzD,MAAM,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IAEnD,MAAM,iBAAiB,GAAG,MAAA,MAAA,YAAY,CAAC,KAAK,CAAC,SAAS,0CAAE,UAAU,0CAAE,MAAM,CAAA;IAE1E,MAAM,gBAAgB,GAAG,MAAA,MAAA,YAAY,CAAC,KAAK,CAAC,SAAS,0CAAE,UAAU,0CAAE,MAAM,CAAA;IAEzE,OAAO,CACL,4BACG,iBAAiB,IAAI,gBAAgB,CAAC,CAAC,CAAC,CACvC,KAAC,oBAAoB,cACnB,4BAAK,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,gBAAgB,gBAChD,gBAAgB,CAAC,CAAC,CAAC,CAClB,KAAC,gBAAgB,KAAG,CACrB,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,GAAG,EAAE,cAAc,GAAI,CAC9B,IACG,GACe,CACxB,CAAC,CAAC,CAAC,IAAI,GACP,CACJ,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"send-button.js","sourceRoot":"","sources":["../../../../src/webchat/input-panel/send-button.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,cAAc,MAAM,8BAA8B,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAM1E,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAE,OAAO,EAAmB,EAAE,EAAE;;IACzD,MAAM,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IAEnD,MAAM,gBAAgB,GAAG,MAAA,MAAA,YAAY,CAAC,KAAK,CAAC,SAAS,0CAAE,UAAU,0CAAE,MAAM,CAAA;IAEzE,MAAM,mBAAmB,GAAG,GAAG,EAAE;;QAC/B,MAAM,mBAAmB,GAAG,CAAC,CAAC,gBAAgB,CAAA;QAC9C,OAAO,CACL,MAAA,MAAA,MAAA,YAAY,CAAC,KAAK,CAAC,SAAS,0CAAE,UAAU,0CAAE,MAAM,mCAAI,mBAAmB,CACxE,CAAA;IACH,CAAC,CAAA;IACD,MAAM,iBAAiB,GAAG,mBAAmB,EAAE,CAAA;IAE/C,OAAO,CACL,4BACG,iBAAiB,CAAC,CAAC,CAAC,CACnB,KAAC,oBAAoB,cACnB,4BAAK,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,gBAAgB,gBAChD,gBAAgB,CAAC,CAAC,CAAC,CAClB,KAAC,gBAAgB,KAAG,CACrB,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,GAAG,EAAE,cAAc,GAAI,CAC9B,IACG,GACe,CACxB,CAAC,CAAC,CAAC,IAAI,GACP,CACJ,CAAA;AACH,CAAC,CAAA"}
@@ -77,11 +77,11 @@ export const defaultTheme = {
77
77
  },
78
78
  triggerButton: { image: WEBCHAT.DEFAULTS.LOGO },
79
79
  userInput: {
80
- attachments: { enable: false },
80
+ attachments: { enable: undefined },
81
81
  box: {
82
82
  placeholder: 'Ask me something...',
83
83
  },
84
- emojiPicker: { enable: false },
84
+ emojiPicker: { enable: undefined },
85
85
  sendButton: { enable: true },
86
86
  enable: true,
87
87
  },
@@ -1 +1 @@
1
- {"version":3,"file":"default-theme.js","sourceRoot":"","sources":["../../../../src/webchat/theme/default-theme.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"default-theme.js","sourceRoot":"","sources":["../../../../src/webchat/theme/default-theme.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/react",
3
- "version": "0.37.0",
3
+ "version": "0.37.1-alpha.1",
4
4
  "license": "MIT",
5
5
  "description": "Build Chatbots using React",
6
6
  "main": "./lib/cjs",
@@ -9,6 +9,7 @@
9
9
  "scripts": {
10
10
  "test:no-coverage": "../../node_modules/.bin/jest -c ./jest.config.js",
11
11
  "test": "../../node_modules/.bin/jest -c ./jest.config.js --coverage",
12
+ "updateSnapshot": "../../node_modules/.bin/jest -c ./jest.config.js --updateSnapshot",
12
13
  "cloc": "../../scripts/qa/cloc-package.sh .",
13
14
  "prepublishOnly": "npm run clean; npm i; npm run build; npm run copy-files;",
14
15
  "clean": "rm -rf ./lib/",
@@ -34,6 +34,7 @@ export { WhatsappCatalog, WhatsappCatalogProps } from './whatsapp-catalog'
34
34
  export {
35
35
  WhatsappCTAUrlButton,
36
36
  WhatsappCTAUrlButtonProps,
37
+ WhatsappCTAUrlHeaderType,
37
38
  } from './whatsapp-cta-url-button'
38
39
  export {
39
40
  WhatsappMediaCarousel,
@@ -13,23 +13,58 @@ import {
13
13
  } from './multichannel/whatsapp/constants'
14
14
  import { convertToMarkdownMeta } from './multichannel/whatsapp/markdown-meta'
15
15
 
16
- export interface WhatsappCTAUrlButtonCommonProps {
17
- header?: string
16
+ export enum WhatsappCTAUrlHeaderType {
17
+ Document = 'document',
18
+ Image = 'image',
19
+ Text = 'text',
20
+ Video = 'video',
21
+ }
22
+ export interface WhatsappCTAUrlHeaderTextProps {
23
+ headerType: WhatsappCTAUrlHeaderType.Text
24
+ header: string
25
+ }
26
+
27
+ export interface WhatsappCTAUrlHeaderImageProps {
28
+ headerType: WhatsappCTAUrlHeaderType.Image
29
+ headerImage: string
30
+ }
31
+
32
+ export interface WhatsappCTAUrlHeaderVideoProps {
33
+ headerType: WhatsappCTAUrlHeaderType.Video
34
+ headerVideo: string
35
+ }
36
+
37
+ export interface WhatsappCTAUrlHeaderDocumentProps {
38
+ headerType: WhatsappCTAUrlHeaderType.Document
39
+ headerDocument: string
40
+ }
41
+
42
+ export interface WhatsappCTAUrlNoHeaderProps {
43
+ headerType?: undefined
44
+ }
45
+
46
+ export type WhatsappCTAUrlHeader =
47
+ | WhatsappCTAUrlHeaderTextProps
48
+ | WhatsappCTAUrlHeaderImageProps
49
+ | WhatsappCTAUrlHeaderVideoProps
50
+ | WhatsappCTAUrlHeaderDocumentProps
51
+ | WhatsappCTAUrlNoHeaderProps
52
+
53
+ export type WhatsappCTAUrlButtonCommonProps = WhatsappCTAUrlHeader & {
18
54
  body: string
19
55
  footer?: string
20
56
  displayText: string
21
57
  }
22
58
 
23
- export interface WhatsappCTAUrlButtonUrlProps
24
- extends WhatsappCTAUrlButtonCommonProps {
59
+ export type WhatsappCTAUrlButtonUrlProps = WhatsappCTAUrlButtonCommonProps & {
25
60
  url: string
26
61
  }
27
62
 
28
- export interface WhatsappCTAUrlButtonWebviewProps
29
- extends WhatsappCTAUrlButtonCommonProps {
30
- webview: any
31
- params?: any
32
- }
63
+ export type WhatsappCTAUrlButtonWebviewProps =
64
+ WhatsappCTAUrlButtonCommonProps & {
65
+ webview: any
66
+ params?: any
67
+ }
33
68
 
34
69
  export type WhatsappCTAUrlButtonProps =
35
70
  | WhatsappCTAUrlButtonUrlProps
@@ -58,9 +93,23 @@ export const WhatsappCTAUrlButton = (props: WhatsappCTAUrlButtonProps) => {
58
93
  const renderNode = () => {
59
94
  const validatedProps = {
60
95
  ...props,
61
- header: props.header
62
- ? truncateText(props.header, WHATSAPP_MAX_HEADER_CHARS)
63
- : undefined,
96
+ headerType: props.headerType,
97
+ header:
98
+ props.headerType === WhatsappCTAUrlHeaderType.Text && props.header
99
+ ? truncateText(props.header, WHATSAPP_MAX_HEADER_CHARS)
100
+ : undefined,
101
+ headerImage:
102
+ props.headerType === WhatsappCTAUrlHeaderType.Image
103
+ ? props.headerImage
104
+ : undefined,
105
+ headerVideo:
106
+ props.headerType === WhatsappCTAUrlHeaderType.Video
107
+ ? props.headerVideo
108
+ : undefined,
109
+ headerDocument:
110
+ props.headerType === WhatsappCTAUrlHeaderType.Document
111
+ ? props.headerDocument
112
+ : undefined,
64
113
  body: truncateText(
65
114
  convertToMarkdownMeta(props.body),
66
115
  WHATSAPP_MAX_BODY_CHARS
@@ -1,4 +1,8 @@
1
- export const truncateText = (text, maxLength, ellipsis = '...') => {
1
+ export const truncateText = (
2
+ text: string,
3
+ maxLength: number,
4
+ ellipsis = '...'
5
+ ) => {
2
6
  if (text.length > maxLength) {
3
7
  return text.substring(0, maxLength - ellipsis.length) + ellipsis
4
8
  }
@@ -13,13 +13,19 @@ interface SendButtonProps {
13
13
  export const SendButton = ({ onClick }: SendButtonProps) => {
14
14
  const { webchatState } = useContext(WebchatContext)
15
15
 
16
- const sendButtonEnabled = webchatState.theme.userInput?.sendButton?.enable
17
-
18
16
  const CustomSendButton = webchatState.theme.userInput?.sendButton?.custom
19
17
 
18
+ const isSendButtonEnabled = () => {
19
+ const hasCustomSendButton = !!CustomSendButton
20
+ return (
21
+ webchatState.theme.userInput?.sendButton?.enable ?? hasCustomSendButton
22
+ )
23
+ }
24
+ const sendButtonEnabled = isSendButtonEnabled()
25
+
20
26
  return (
21
27
  <>
22
- {sendButtonEnabled || CustomSendButton ? (
28
+ {sendButtonEnabled ? (
23
29
  <ConditionalAnimation>
24
30
  <div onClick={onClick} role={ROLES.SEND_BUTTON_ICON}>
25
31
  {CustomSendButton ? (
@@ -79,11 +79,11 @@ export const defaultTheme: WebchatTheme = {
79
79
  },
80
80
  triggerButton: { image: WEBCHAT.DEFAULTS.LOGO },
81
81
  userInput: {
82
- attachments: { enable: false },
82
+ attachments: { enable: undefined },
83
83
  box: {
84
84
  placeholder: 'Ask me something...',
85
85
  },
86
- emojiPicker: { enable: false },
86
+ emojiPicker: { enable: undefined },
87
87
  sendButton: { enable: true },
88
88
  enable: true,
89
89
  },