@botonic/react 0.37.0-alpha.0 → 0.37.1-alpha.0
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.
- package/lib/cjs/components/index.d.ts +1 -1
- package/lib/cjs/components/index.js +2 -1
- package/lib/cjs/components/index.js.map +1 -1
- package/lib/cjs/components/whatsapp-cta-url-button.d.ts +32 -7
- package/lib/cjs/components/whatsapp-cta-url-button.js +15 -2
- package/lib/cjs/components/whatsapp-cta-url-button.js.map +1 -1
- package/lib/cjs/util/strings.d.ts +1 -1
- package/lib/cjs/util/strings.js.map +1 -1
- package/lib/cjs/webchat/custom-messages/rating/index.js +11 -2
- package/lib/cjs/webchat/custom-messages/rating/index.js.map +1 -1
- package/lib/cjs/webchat/custom-messages/rating/smileys.js +2 -2
- package/lib/esm/components/index.d.ts +1 -1
- package/lib/esm/components/index.js +1 -1
- package/lib/esm/components/index.js.map +1 -1
- package/lib/esm/components/whatsapp-cta-url-button.d.ts +32 -7
- package/lib/esm/components/whatsapp-cta-url-button.js +14 -1
- package/lib/esm/components/whatsapp-cta-url-button.js.map +1 -1
- package/lib/esm/util/strings.d.ts +1 -1
- package/lib/esm/util/strings.js.map +1 -1
- package/lib/esm/webchat/custom-messages/rating/index.js +10 -2
- package/lib/esm/webchat/custom-messages/rating/index.js.map +1 -1
- package/lib/esm/webchat/custom-messages/rating/smileys.js +2 -2
- package/package.json +3 -2
- package/src/components/index.ts +1 -0
- package/src/components/whatsapp-cta-url-button.tsx +61 -12
- package/src/util/strings.ts +5 -1
- package/src/webchat/custom-messages/rating/index.tsx +10 -2
- package/src/webchat/custom-messages/rating/smileys.tsx +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,
|
|
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
|
|
2
|
-
|
|
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
|
|
31
|
+
};
|
|
32
|
+
export type WhatsappCTAUrlButtonUrlProps = WhatsappCTAUrlButtonCommonProps & {
|
|
8
33
|
url: string;
|
|
9
|
-
}
|
|
10
|
-
export
|
|
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;
|
|
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:
|
|
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,
|
|
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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
3
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
5
|
const core_1 = require("@botonic/core");
|
|
6
|
+
const lodash_merge_1 = tslib_1.__importDefault(require("lodash.merge"));
|
|
5
7
|
const react_1 = require("react");
|
|
6
8
|
const styled_components_1 = require("styled-components");
|
|
7
9
|
const components_1 = require("../../../components");
|
|
@@ -24,8 +26,15 @@ const CustomRatingMessage = props => {
|
|
|
24
26
|
const messageToUpdate = webchatState.messagesJSON.filter(m => {
|
|
25
27
|
return m.id === messageId;
|
|
26
28
|
})[0];
|
|
27
|
-
|
|
28
|
-
|
|
29
|
+
const messageInfo = {
|
|
30
|
+
data: {
|
|
31
|
+
json: {
|
|
32
|
+
valueSent: ratingValue,
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
const updatedMsg = (0, lodash_merge_1.default)(messageToUpdate, messageInfo);
|
|
37
|
+
updateMessage(updatedMsg);
|
|
29
38
|
}
|
|
30
39
|
};
|
|
31
40
|
const handleButtonSend = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/webchat/custom-messages/rating/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/webchat/custom-messages/rating/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,8 @@ exports.Smileys = void 0;
|
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const icons_1 = require("./icons");
|
|
6
6
|
const SMILEY_MAP = {
|
|
7
|
-
1: icons_1.
|
|
8
|
-
2: icons_1.
|
|
7
|
+
1: icons_1.FaceAngrySvg,
|
|
8
|
+
2: icons_1.FaceFrownSvg,
|
|
9
9
|
3: icons_1.FaceMehSvg,
|
|
10
10
|
4: icons_1.FaceSmileSvg,
|
|
11
11
|
5: icons_1.FaceGrinBeamSvg,
|
|
@@ -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,
|
|
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
|
|
2
|
-
|
|
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
|
|
31
|
+
};
|
|
32
|
+
export type WhatsappCTAUrlButtonUrlProps = WhatsappCTAUrlButtonCommonProps & {
|
|
8
33
|
url: string;
|
|
9
|
-
}
|
|
10
|
-
export
|
|
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;
|
|
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:
|
|
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,
|
|
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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { INPUT } from '@botonic/core';
|
|
3
|
+
import merge from 'lodash.merge';
|
|
3
4
|
import { useContext, useState } from 'react';
|
|
4
5
|
import { ThemeContext } from 'styled-components';
|
|
5
6
|
import { Button, customMessage } from '../../../components';
|
|
@@ -22,8 +23,15 @@ const CustomRatingMessage = props => {
|
|
|
22
23
|
const messageToUpdate = webchatState.messagesJSON.filter(m => {
|
|
23
24
|
return m.id === messageId;
|
|
24
25
|
})[0];
|
|
25
|
-
|
|
26
|
-
|
|
26
|
+
const messageInfo = {
|
|
27
|
+
data: {
|
|
28
|
+
json: {
|
|
29
|
+
valueSent: ratingValue,
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
const updatedMsg = merge(messageToUpdate, messageInfo);
|
|
34
|
+
updateMessage(updatedMsg);
|
|
27
35
|
}
|
|
28
36
|
};
|
|
29
37
|
const handleButtonSend = () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/webchat/custom-messages/rating/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAa,MAAM,eAAe,CAAA;AAChD,OAAc,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAWxC,MAAM,mBAAmB,GAAuC,KAAK,CAAC,EAAE;;IACtE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,KAAK,CAAA;IAC/D,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IAE7E,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAE,KAAK,mCAAI,EAAE,CAAA;IAEvC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAC5C,CAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,SAAS,EAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAClD,CAAA;IACD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAElD,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAE,EAAE;QAC1C,cAAc,CAAC,SAAS,CAAC,CAAA;IAC3B,CAAC,CAAA;IAED,MAAM,iBAAiB,GAAG,CAAC,SAAkB,EAAE,EAAE;QAC/C,IAAI,SAAS,EAAE;YACb,MAAM,eAAe,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBAC3D,OAAO,CAAC,CAAC,EAAE,KAAK,SAAS,CAAA;YAC3B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACL,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/webchat/custom-messages/rating/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { FaceAngrySvg, FaceFrownSvg, FaceGrinBeamSvg, FaceMehSvg, FaceSmileSvg, } from './icons';
|
|
3
3
|
const SMILEY_MAP = {
|
|
4
|
-
1:
|
|
5
|
-
2:
|
|
4
|
+
1: FaceAngrySvg,
|
|
5
|
+
2: FaceFrownSvg,
|
|
6
6
|
3: FaceMehSvg,
|
|
7
7
|
4: FaceSmileSvg,
|
|
8
8
|
5: FaceGrinBeamSvg,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@botonic/react",
|
|
3
|
-
"version": "0.37.
|
|
3
|
+
"version": "0.37.1-alpha.0",
|
|
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/",
|
|
@@ -20,7 +21,7 @@
|
|
|
20
21
|
"lint_core": "../../node_modules/.bin/eslint_d --cache --quiet '.*.js' '*.js' 'src/**/*.js*' --fix"
|
|
21
22
|
},
|
|
22
23
|
"dependencies": {
|
|
23
|
-
"@botonic/core": "^0.
|
|
24
|
+
"@botonic/core": "^0.37.0",
|
|
24
25
|
"axios": "^1.10.0",
|
|
25
26
|
"emoji-picker-react": "^4.12.0",
|
|
26
27
|
"lodash.merge": "^4.6.2",
|
package/src/components/index.ts
CHANGED
|
@@ -13,23 +13,58 @@ import {
|
|
|
13
13
|
} from './multichannel/whatsapp/constants'
|
|
14
14
|
import { convertToMarkdownMeta } from './multichannel/whatsapp/markdown-meta'
|
|
15
15
|
|
|
16
|
-
export
|
|
17
|
-
|
|
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
|
|
24
|
-
extends WhatsappCTAUrlButtonCommonProps {
|
|
59
|
+
export type WhatsappCTAUrlButtonUrlProps = WhatsappCTAUrlButtonCommonProps & {
|
|
25
60
|
url: string
|
|
26
61
|
}
|
|
27
62
|
|
|
28
|
-
export
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
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
|
-
|
|
62
|
-
|
|
63
|
-
|
|
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
|
package/src/util/strings.ts
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
export const truncateText = (
|
|
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
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { INPUT, InputType } from '@botonic/core'
|
|
2
|
+
import merge from 'lodash.merge'
|
|
2
3
|
import React, { useContext, useState } from 'react'
|
|
3
4
|
import { ThemeContext } from 'styled-components'
|
|
4
5
|
|
|
@@ -37,8 +38,15 @@ const CustomRatingMessage: React.FC<CustomRatingMessageProps> = props => {
|
|
|
37
38
|
const messageToUpdate = webchatState.messagesJSON.filter(m => {
|
|
38
39
|
return m.id === messageId
|
|
39
40
|
})[0]
|
|
40
|
-
|
|
41
|
-
|
|
41
|
+
const messageInfo = {
|
|
42
|
+
data: {
|
|
43
|
+
json: {
|
|
44
|
+
valueSent: ratingValue,
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
}
|
|
48
|
+
const updatedMsg = merge(messageToUpdate, messageInfo)
|
|
49
|
+
updateMessage(updatedMsg)
|
|
42
50
|
}
|
|
43
51
|
}
|
|
44
52
|
|