@botonic/react 0.55.1-alpha.0 → 0.56.0-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 -0
- package/lib/cjs/components/index.js +3 -1
- package/lib/cjs/components/index.js.map +1 -1
- package/lib/cjs/components/whatsapp-request-contact-info.d.ts +4 -0
- package/lib/cjs/components/whatsapp-request-contact-info.js +30 -0
- package/lib/cjs/components/whatsapp-request-contact-info.js.map +1 -0
- package/lib/cjs/components/whatsapp-template/types.d.ts +9 -2
- package/lib/cjs/components/whatsapp-template/types.js +1 -0
- package/lib/cjs/components/whatsapp-template/types.js.map +1 -1
- package/lib/esm/components/index.d.ts +1 -0
- package/lib/esm/components/index.js +3 -1
- package/lib/esm/components/index.js.map +1 -1
- package/lib/esm/components/whatsapp-request-contact-info.d.ts +4 -0
- package/lib/esm/components/whatsapp-request-contact-info.js +30 -0
- package/lib/esm/components/whatsapp-request-contact-info.js.map +1 -0
- package/lib/esm/components/whatsapp-template/types.d.ts +9 -2
- package/lib/esm/components/whatsapp-template/types.js +1 -0
- package/lib/esm/components/whatsapp-template/types.js.map +1 -1
- package/package.json +2 -2
- package/src/components/index.ts +4 -0
- package/src/components/whatsapp-request-contact-info.tsx +38 -0
- package/src/components/whatsapp-template/types.ts +9 -0
|
@@ -28,5 +28,6 @@ export { WhatsappMediaCarousel, WhatsappMediaCarouselProps, } from './whatsapp-m
|
|
|
28
28
|
export { WhatsappProduct } from './whatsapp-product';
|
|
29
29
|
export { WhatsappProductCarousel, WhatsappProductCarouselProps, } from './whatsapp-product-carousel';
|
|
30
30
|
export { ProductItem, WhatsappProductList, WhatsappProductListProps, WhatsappProductListSection, } from './whatsapp-product-list';
|
|
31
|
+
export { WhatsappRequestContactInfo, WhatsappRequestContactInfoProps, } from './whatsapp-request-contact-info';
|
|
31
32
|
export { WhatsappTemplate } from './whatsapp-template/index';
|
|
32
33
|
export * from './whatsapp-template/types';
|
|
@@ -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.WhatsappInteractiveMediaCarousel = exports.CardType = 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;
|
|
3
|
+
exports.WhatsappTemplate = exports.WhatsappRequestContactInfo = exports.WhatsappProductList = exports.WhatsappProductCarousel = exports.WhatsappProduct = exports.WhatsappMediaCarousel = exports.WhatsappInteractiveMediaCarousel = exports.CardType = 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; } });
|
|
@@ -63,6 +63,8 @@ var whatsapp_product_carousel_1 = require("./whatsapp-product-carousel");
|
|
|
63
63
|
Object.defineProperty(exports, "WhatsappProductCarousel", { enumerable: true, get: function () { return whatsapp_product_carousel_1.WhatsappProductCarousel; } });
|
|
64
64
|
var whatsapp_product_list_1 = require("./whatsapp-product-list");
|
|
65
65
|
Object.defineProperty(exports, "WhatsappProductList", { enumerable: true, get: function () { return whatsapp_product_list_1.WhatsappProductList; } });
|
|
66
|
+
var whatsapp_request_contact_info_1 = require("./whatsapp-request-contact-info");
|
|
67
|
+
Object.defineProperty(exports, "WhatsappRequestContactInfo", { enumerable: true, get: function () { return whatsapp_request_contact_info_1.WhatsappRequestContactInfo; } });
|
|
66
68
|
var index_2 = require("./whatsapp-template/index");
|
|
67
69
|
Object.defineProperty(exports, "WhatsappTemplate", { enumerable: true, get: function () { return index_2.WhatsappTemplate; } });
|
|
68
70
|
tslib_1.__exportStar(require("./whatsapp-template/types"), exports);
|
|
@@ -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,qEAIkC;AAHhC,+HAAA,oBAAoB,OAAA;AAEpB,mIAAA,wBAAwB,OAAA;AAE1B,6FAK8C;AAJ5C,+HAAA,QAAQ,OAAA;AAER,uJAAA,gCAAgC,OAAA;AAGlC,qEAGkC;AAFhC,gIAAA,qBAAqB,OAAA;AAGvB,uDAAoD;AAA3C,mHAAA,eAAe,OAAA;AACxB,yEAGoC;AAFlC,oIAAA,uBAAuB,OAAA;AAGzB,iEAKgC;AAH9B,4HAAA,mBAAmB,OAAA;AAIrB,mDAA4D;AAAnD,yGAAA,gBAAgB,OAAA;AACzB,oEAAyC"}
|
|
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,6FAK8C;AAJ5C,+HAAA,QAAQ,OAAA;AAER,uJAAA,gCAAgC,OAAA;AAGlC,qEAGkC;AAFhC,gIAAA,qBAAqB,OAAA;AAGvB,uDAAoD;AAA3C,mHAAA,eAAe,OAAA;AACxB,yEAGoC;AAFlC,oIAAA,uBAAuB,OAAA;AAGzB,iEAKgC;AAH9B,4HAAA,mBAAmB,OAAA;AAIrB,iFAGwC;AAFtC,2IAAA,0BAA0B,OAAA;AAG5B,mDAA4D;AAAnD,yGAAA,gBAAgB,OAAA;AACzB,oEAAyC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WhatsappRequestContactInfo = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const core_1 = require("@botonic/core");
|
|
6
|
+
const react_1 = require("../util/react");
|
|
7
|
+
const constants_1 = require("./multichannel/whatsapp/constants");
|
|
8
|
+
const markdown_meta_1 = require("./multichannel/whatsapp/markdown-meta");
|
|
9
|
+
const text_1 = require("./text");
|
|
10
|
+
const validateBody = (body) => {
|
|
11
|
+
if (!body) {
|
|
12
|
+
throw new Error('WhatsappRequestContactInfo: body is required');
|
|
13
|
+
}
|
|
14
|
+
if (body.length > constants_1.WHATSAPP_MAX_BODY_CHARS) {
|
|
15
|
+
throw new Error(`WhatsappRequestContactInfo: body exceeds maximum length of ${constants_1.WHATSAPP_MAX_BODY_CHARS} characters`);
|
|
16
|
+
}
|
|
17
|
+
return (0, markdown_meta_1.convertToMarkdownMeta)(body);
|
|
18
|
+
};
|
|
19
|
+
const WhatsappRequestContactInfo = (props) => {
|
|
20
|
+
const renderBrowser = () => (0, jsx_runtime_1.jsx)(text_1.Text, { children: props.body });
|
|
21
|
+
const renderNode = () => {
|
|
22
|
+
const body = validateBody(props.body);
|
|
23
|
+
return (
|
|
24
|
+
// @ts-expect-error Property 'message' does not exist on type 'JSX.IntrinsicElements'.
|
|
25
|
+
(0, jsx_runtime_1.jsx)("message", { body: body, type: core_1.INPUT.WHATSAPP_REQUEST_CONTACT_INFO }));
|
|
26
|
+
};
|
|
27
|
+
return (0, react_1.renderComponent)({ renderBrowser, renderNode });
|
|
28
|
+
};
|
|
29
|
+
exports.WhatsappRequestContactInfo = WhatsappRequestContactInfo;
|
|
30
|
+
//# sourceMappingURL=whatsapp-request-contact-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"whatsapp-request-contact-info.js","sourceRoot":"","sources":["../../../src/components/whatsapp-request-contact-info.tsx"],"names":[],"mappings":";;;;AAAA,wCAAqC;AAErC,yCAA+C;AAC/C,iEAA2E;AAC3E,yEAA6E;AAC7E,iCAA6B;AAM7B,MAAM,YAAY,GAAG,CAAC,IAAY,EAAU,EAAE;IAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IACjE,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,mCAAuB,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CACb,8DAA8D,mCAAuB,aAAa,CACnG,CAAA;IACH,CAAC;IACD,OAAO,IAAA,qCAAqB,EAAC,IAAI,CAAC,CAAA;AACpC,CAAC,CAAA;AAEM,MAAM,0BAA0B,GAAG,CACxC,KAAsC,EACtC,EAAE;IACF,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,uBAAC,WAAI,cAAE,KAAK,CAAC,IAAI,GAAQ,CAAA;IAErD,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACrC,OAAO;QACL,sFAAsF;QACtF,oCAAS,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAK,CAAC,6BAA6B,GAAI,CACnE,CAAA;IACH,CAAC,CAAA;IAED,OAAO,IAAA,uBAAe,EAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAA;AACvD,CAAC,CAAA;AAdY,QAAA,0BAA0B,8BActC"}
|
|
@@ -3,7 +3,8 @@ export declare enum WhatsAppTemplateButtonSubType {
|
|
|
3
3
|
QUICK_REPLY = "QUICK_REPLY",
|
|
4
4
|
PHONE_NUMBER = "PHONE_NUMBER",
|
|
5
5
|
VOICE_CALL = "VOICE_CALL",
|
|
6
|
-
FLOW = "FLOW"
|
|
6
|
+
FLOW = "FLOW",
|
|
7
|
+
REQUEST_CONTACT_INFO = "REQUEST_CONTACT_INFO"
|
|
7
8
|
}
|
|
8
9
|
export declare enum WhatsAppTemplateParameterType {
|
|
9
10
|
PAYLOAD = "PAYLOAD",
|
|
@@ -90,6 +91,12 @@ export interface WhatsappTemplatePhoneNumberButton {
|
|
|
90
91
|
index: number;
|
|
91
92
|
parameters: [];
|
|
92
93
|
}
|
|
94
|
+
export interface WhatsappTemplateRequestContactInfoButton {
|
|
95
|
+
type: WhatsAppTemplateComponentType.BUTTON;
|
|
96
|
+
sub_type: WhatsAppTemplateButtonSubType.REQUEST_CONTACT_INFO;
|
|
97
|
+
index: number;
|
|
98
|
+
parameters: [];
|
|
99
|
+
}
|
|
93
100
|
export interface WhatsappTemplateFlowAction {
|
|
94
101
|
flow_token: string;
|
|
95
102
|
flow_action_data?: Record<string, string>;
|
|
@@ -104,4 +111,4 @@ export interface WhatsappTemplateFlowButton {
|
|
|
104
111
|
index: string;
|
|
105
112
|
parameters: WhatsappTemplateFlowActionParameter[];
|
|
106
113
|
}
|
|
107
|
-
export type WhatsappTemplateButton = WhatsappTemplateQuickReplyButton | WhatsappTemplateUrlButton | WhatsappTemplateVoiceCallButton | WhatsappTemplatePhoneNumberButton | WhatsappTemplateFlowButton;
|
|
114
|
+
export type WhatsappTemplateButton = WhatsappTemplateQuickReplyButton | WhatsappTemplateUrlButton | WhatsappTemplateVoiceCallButton | WhatsappTemplatePhoneNumberButton | WhatsappTemplateRequestContactInfoButton | WhatsappTemplateFlowButton;
|
|
@@ -8,6 +8,7 @@ var WhatsAppTemplateButtonSubType;
|
|
|
8
8
|
WhatsAppTemplateButtonSubType["PHONE_NUMBER"] = "PHONE_NUMBER";
|
|
9
9
|
WhatsAppTemplateButtonSubType["VOICE_CALL"] = "VOICE_CALL";
|
|
10
10
|
WhatsAppTemplateButtonSubType["FLOW"] = "FLOW";
|
|
11
|
+
WhatsAppTemplateButtonSubType["REQUEST_CONTACT_INFO"] = "REQUEST_CONTACT_INFO";
|
|
11
12
|
})(WhatsAppTemplateButtonSubType || (exports.WhatsAppTemplateButtonSubType = WhatsAppTemplateButtonSubType = {}));
|
|
12
13
|
var WhatsAppTemplateParameterType;
|
|
13
14
|
(function (WhatsAppTemplateParameterType) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/whatsapp-template/types.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/whatsapp-template/types.ts"],"names":[],"mappings":";;;AAAA,IAAY,6BAOX;AAPD,WAAY,6BAA6B;IACvC,4CAAW,CAAA;IACX,4DAA2B,CAAA;IAC3B,8DAA6B,CAAA;IAC7B,0DAAyB,CAAA;IACzB,8CAAa,CAAA;IACb,8EAA6C,CAAA;AAC/C,CAAC,EAPW,6BAA6B,6CAA7B,6BAA6B,QAOxC;AAED,IAAY,6BAOX;AAPD,WAAY,6BAA6B;IACvC,oDAAmB,CAAA;IACnB,8CAAa,CAAA;IACb,gDAAe,CAAA;IACf,gDAAe,CAAA;IACf,sDAAqB,CAAA;IACrB,kDAAiB,CAAA;AACnB,CAAC,EAPW,6BAA6B,6CAA7B,6BAA6B,QAOxC;AAED,IAAY,6BAMX;AAND,WAAY,6BAA6B;IACvC,kDAAiB,CAAA;IACjB,8CAAa,CAAA;IACb,kDAAiB,CAAA;IACjB,oDAAmB,CAAA;IACnB,kDAAiB,CAAA;AACnB,CAAC,EANW,6BAA6B,6CAA7B,6BAA6B,QAMxC"}
|
|
@@ -28,5 +28,6 @@ export { WhatsappMediaCarousel, WhatsappMediaCarouselProps, } from './whatsapp-m
|
|
|
28
28
|
export { WhatsappProduct } from './whatsapp-product';
|
|
29
29
|
export { WhatsappProductCarousel, WhatsappProductCarouselProps, } from './whatsapp-product-carousel';
|
|
30
30
|
export { ProductItem, WhatsappProductList, WhatsappProductListProps, WhatsappProductListSection, } from './whatsapp-product-list';
|
|
31
|
+
export { WhatsappRequestContactInfo, WhatsappRequestContactInfoProps, } from './whatsapp-request-contact-info';
|
|
31
32
|
export { WhatsappTemplate } from './whatsapp-template/index';
|
|
32
33
|
export * from './whatsapp-template/types';
|
|
@@ -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.WhatsappInteractiveMediaCarousel = exports.CardType = 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;
|
|
3
|
+
exports.WhatsappTemplate = exports.WhatsappRequestContactInfo = exports.WhatsappProductList = exports.WhatsappProductCarousel = exports.WhatsappProduct = exports.WhatsappMediaCarousel = exports.WhatsappInteractiveMediaCarousel = exports.CardType = 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; } });
|
|
@@ -63,6 +63,8 @@ var whatsapp_product_carousel_1 = require("./whatsapp-product-carousel");
|
|
|
63
63
|
Object.defineProperty(exports, "WhatsappProductCarousel", { enumerable: true, get: function () { return whatsapp_product_carousel_1.WhatsappProductCarousel; } });
|
|
64
64
|
var whatsapp_product_list_1 = require("./whatsapp-product-list");
|
|
65
65
|
Object.defineProperty(exports, "WhatsappProductList", { enumerable: true, get: function () { return whatsapp_product_list_1.WhatsappProductList; } });
|
|
66
|
+
var whatsapp_request_contact_info_1 = require("./whatsapp-request-contact-info");
|
|
67
|
+
Object.defineProperty(exports, "WhatsappRequestContactInfo", { enumerable: true, get: function () { return whatsapp_request_contact_info_1.WhatsappRequestContactInfo; } });
|
|
66
68
|
var index_2 = require("./whatsapp-template/index");
|
|
67
69
|
Object.defineProperty(exports, "WhatsappTemplate", { enumerable: true, get: function () { return index_2.WhatsappTemplate; } });
|
|
68
70
|
tslib_1.__exportStar(require("./whatsapp-template/types"), exports);
|
|
@@ -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,qEAIkC;AAHhC,+HAAA,oBAAoB,OAAA;AAEpB,mIAAA,wBAAwB,OAAA;AAE1B,6FAK8C;AAJ5C,+HAAA,QAAQ,OAAA;AAER,uJAAA,gCAAgC,OAAA;AAGlC,qEAGkC;AAFhC,gIAAA,qBAAqB,OAAA;AAGvB,uDAAoD;AAA3C,mHAAA,eAAe,OAAA;AACxB,yEAGoC;AAFlC,oIAAA,uBAAuB,OAAA;AAGzB,iEAKgC;AAH9B,4HAAA,mBAAmB,OAAA;AAIrB,mDAA4D;AAAnD,yGAAA,gBAAgB,OAAA;AACzB,oEAAyC"}
|
|
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,6FAK8C;AAJ5C,+HAAA,QAAQ,OAAA;AAER,uJAAA,gCAAgC,OAAA;AAGlC,qEAGkC;AAFhC,gIAAA,qBAAqB,OAAA;AAGvB,uDAAoD;AAA3C,mHAAA,eAAe,OAAA;AACxB,yEAGoC;AAFlC,oIAAA,uBAAuB,OAAA;AAGzB,iEAKgC;AAH9B,4HAAA,mBAAmB,OAAA;AAIrB,iFAGwC;AAFtC,2IAAA,0BAA0B,OAAA;AAG5B,mDAA4D;AAAnD,yGAAA,gBAAgB,OAAA;AACzB,oEAAyC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WhatsappRequestContactInfo = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const core_1 = require("@botonic/core");
|
|
6
|
+
const react_1 = require("../util/react");
|
|
7
|
+
const constants_1 = require("./multichannel/whatsapp/constants");
|
|
8
|
+
const markdown_meta_1 = require("./multichannel/whatsapp/markdown-meta");
|
|
9
|
+
const text_1 = require("./text");
|
|
10
|
+
const validateBody = (body) => {
|
|
11
|
+
if (!body) {
|
|
12
|
+
throw new Error('WhatsappRequestContactInfo: body is required');
|
|
13
|
+
}
|
|
14
|
+
if (body.length > constants_1.WHATSAPP_MAX_BODY_CHARS) {
|
|
15
|
+
throw new Error(`WhatsappRequestContactInfo: body exceeds maximum length of ${constants_1.WHATSAPP_MAX_BODY_CHARS} characters`);
|
|
16
|
+
}
|
|
17
|
+
return (0, markdown_meta_1.convertToMarkdownMeta)(body);
|
|
18
|
+
};
|
|
19
|
+
const WhatsappRequestContactInfo = (props) => {
|
|
20
|
+
const renderBrowser = () => (0, jsx_runtime_1.jsx)(text_1.Text, { children: props.body });
|
|
21
|
+
const renderNode = () => {
|
|
22
|
+
const body = validateBody(props.body);
|
|
23
|
+
return (
|
|
24
|
+
// @ts-expect-error Property 'message' does not exist on type 'JSX.IntrinsicElements'.
|
|
25
|
+
(0, jsx_runtime_1.jsx)("message", { body: body, type: core_1.INPUT.WHATSAPP_REQUEST_CONTACT_INFO }));
|
|
26
|
+
};
|
|
27
|
+
return (0, react_1.renderComponent)({ renderBrowser, renderNode });
|
|
28
|
+
};
|
|
29
|
+
exports.WhatsappRequestContactInfo = WhatsappRequestContactInfo;
|
|
30
|
+
//# sourceMappingURL=whatsapp-request-contact-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"whatsapp-request-contact-info.js","sourceRoot":"","sources":["../../../src/components/whatsapp-request-contact-info.tsx"],"names":[],"mappings":";;;;AAAA,wCAAqC;AAErC,yCAA+C;AAC/C,iEAA2E;AAC3E,yEAA6E;AAC7E,iCAA6B;AAM7B,MAAM,YAAY,GAAG,CAAC,IAAY,EAAU,EAAE;IAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;IACjE,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,mCAAuB,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CACb,8DAA8D,mCAAuB,aAAa,CACnG,CAAA;IACH,CAAC;IACD,OAAO,IAAA,qCAAqB,EAAC,IAAI,CAAC,CAAA;AACpC,CAAC,CAAA;AAEM,MAAM,0BAA0B,GAAG,CACxC,KAAsC,EACtC,EAAE;IACF,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,uBAAC,WAAI,cAAE,KAAK,CAAC,IAAI,GAAQ,CAAA;IAErD,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACrC,OAAO;QACL,sFAAsF;QACtF,oCAAS,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,YAAK,CAAC,6BAA6B,GAAI,CACnE,CAAA;IACH,CAAC,CAAA;IAED,OAAO,IAAA,uBAAe,EAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAA;AACvD,CAAC,CAAA;AAdY,QAAA,0BAA0B,8BActC"}
|
|
@@ -3,7 +3,8 @@ export declare enum WhatsAppTemplateButtonSubType {
|
|
|
3
3
|
QUICK_REPLY = "QUICK_REPLY",
|
|
4
4
|
PHONE_NUMBER = "PHONE_NUMBER",
|
|
5
5
|
VOICE_CALL = "VOICE_CALL",
|
|
6
|
-
FLOW = "FLOW"
|
|
6
|
+
FLOW = "FLOW",
|
|
7
|
+
REQUEST_CONTACT_INFO = "REQUEST_CONTACT_INFO"
|
|
7
8
|
}
|
|
8
9
|
export declare enum WhatsAppTemplateParameterType {
|
|
9
10
|
PAYLOAD = "PAYLOAD",
|
|
@@ -90,6 +91,12 @@ export interface WhatsappTemplatePhoneNumberButton {
|
|
|
90
91
|
index: number;
|
|
91
92
|
parameters: [];
|
|
92
93
|
}
|
|
94
|
+
export interface WhatsappTemplateRequestContactInfoButton {
|
|
95
|
+
type: WhatsAppTemplateComponentType.BUTTON;
|
|
96
|
+
sub_type: WhatsAppTemplateButtonSubType.REQUEST_CONTACT_INFO;
|
|
97
|
+
index: number;
|
|
98
|
+
parameters: [];
|
|
99
|
+
}
|
|
93
100
|
export interface WhatsappTemplateFlowAction {
|
|
94
101
|
flow_token: string;
|
|
95
102
|
flow_action_data?: Record<string, string>;
|
|
@@ -104,4 +111,4 @@ export interface WhatsappTemplateFlowButton {
|
|
|
104
111
|
index: string;
|
|
105
112
|
parameters: WhatsappTemplateFlowActionParameter[];
|
|
106
113
|
}
|
|
107
|
-
export type WhatsappTemplateButton = WhatsappTemplateQuickReplyButton | WhatsappTemplateUrlButton | WhatsappTemplateVoiceCallButton | WhatsappTemplatePhoneNumberButton | WhatsappTemplateFlowButton;
|
|
114
|
+
export type WhatsappTemplateButton = WhatsappTemplateQuickReplyButton | WhatsappTemplateUrlButton | WhatsappTemplateVoiceCallButton | WhatsappTemplatePhoneNumberButton | WhatsappTemplateRequestContactInfoButton | WhatsappTemplateFlowButton;
|
|
@@ -8,6 +8,7 @@ var WhatsAppTemplateButtonSubType;
|
|
|
8
8
|
WhatsAppTemplateButtonSubType["PHONE_NUMBER"] = "PHONE_NUMBER";
|
|
9
9
|
WhatsAppTemplateButtonSubType["VOICE_CALL"] = "VOICE_CALL";
|
|
10
10
|
WhatsAppTemplateButtonSubType["FLOW"] = "FLOW";
|
|
11
|
+
WhatsAppTemplateButtonSubType["REQUEST_CONTACT_INFO"] = "REQUEST_CONTACT_INFO";
|
|
11
12
|
})(WhatsAppTemplateButtonSubType || (exports.WhatsAppTemplateButtonSubType = WhatsAppTemplateButtonSubType = {}));
|
|
12
13
|
var WhatsAppTemplateParameterType;
|
|
13
14
|
(function (WhatsAppTemplateParameterType) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/whatsapp-template/types.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/whatsapp-template/types.ts"],"names":[],"mappings":";;;AAAA,IAAY,6BAOX;AAPD,WAAY,6BAA6B;IACvC,4CAAW,CAAA;IACX,4DAA2B,CAAA;IAC3B,8DAA6B,CAAA;IAC7B,0DAAyB,CAAA;IACzB,8CAAa,CAAA;IACb,8EAA6C,CAAA;AAC/C,CAAC,EAPW,6BAA6B,6CAA7B,6BAA6B,QAOxC;AAED,IAAY,6BAOX;AAPD,WAAY,6BAA6B;IACvC,oDAAmB,CAAA;IACnB,8CAAa,CAAA;IACb,gDAAe,CAAA;IACf,gDAAe,CAAA;IACf,sDAAqB,CAAA;IACrB,kDAAiB,CAAA;AACnB,CAAC,EAPW,6BAA6B,6CAA7B,6BAA6B,QAOxC;AAED,IAAY,6BAMX;AAND,WAAY,6BAA6B;IACvC,kDAAiB,CAAA;IACjB,8CAAa,CAAA;IACb,kDAAiB,CAAA;IACjB,oDAAmB,CAAA;IACnB,kDAAiB,CAAA;AACnB,CAAC,EANW,6BAA6B,6CAA7B,6BAA6B,QAMxC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@botonic/react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.56.0-alpha.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Build Chatbots using React",
|
|
6
6
|
"main": "./lib/cjs",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"format": "biome format --write src/ tests/"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@botonic/core": "^0.
|
|
23
|
+
"@botonic/core": "^0.56.0-alpha.0",
|
|
24
24
|
"axios": "^1.18.1",
|
|
25
25
|
"emoji-picker-react": "^4.12.0",
|
|
26
26
|
"lodash.merge": "^4.6.2",
|
package/src/components/index.ts
CHANGED
|
@@ -57,5 +57,9 @@ export {
|
|
|
57
57
|
WhatsappProductListProps,
|
|
58
58
|
WhatsappProductListSection,
|
|
59
59
|
} from './whatsapp-product-list'
|
|
60
|
+
export {
|
|
61
|
+
WhatsappRequestContactInfo,
|
|
62
|
+
WhatsappRequestContactInfoProps,
|
|
63
|
+
} from './whatsapp-request-contact-info'
|
|
60
64
|
export { WhatsappTemplate } from './whatsapp-template/index'
|
|
61
65
|
export * from './whatsapp-template/types'
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { INPUT } from '@botonic/core'
|
|
2
|
+
|
|
3
|
+
import { renderComponent } from '../util/react'
|
|
4
|
+
import { WHATSAPP_MAX_BODY_CHARS } from './multichannel/whatsapp/constants'
|
|
5
|
+
import { convertToMarkdownMeta } from './multichannel/whatsapp/markdown-meta'
|
|
6
|
+
import { Text } from './text'
|
|
7
|
+
|
|
8
|
+
export interface WhatsappRequestContactInfoProps {
|
|
9
|
+
body: string
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
const validateBody = (body: string): string => {
|
|
13
|
+
if (!body) {
|
|
14
|
+
throw new Error('WhatsappRequestContactInfo: body is required')
|
|
15
|
+
}
|
|
16
|
+
if (body.length > WHATSAPP_MAX_BODY_CHARS) {
|
|
17
|
+
throw new Error(
|
|
18
|
+
`WhatsappRequestContactInfo: body exceeds maximum length of ${WHATSAPP_MAX_BODY_CHARS} characters`
|
|
19
|
+
)
|
|
20
|
+
}
|
|
21
|
+
return convertToMarkdownMeta(body)
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export const WhatsappRequestContactInfo = (
|
|
25
|
+
props: WhatsappRequestContactInfoProps
|
|
26
|
+
) => {
|
|
27
|
+
const renderBrowser = () => <Text>{props.body}</Text>
|
|
28
|
+
|
|
29
|
+
const renderNode = () => {
|
|
30
|
+
const body = validateBody(props.body)
|
|
31
|
+
return (
|
|
32
|
+
// @ts-expect-error Property 'message' does not exist on type 'JSX.IntrinsicElements'.
|
|
33
|
+
<message body={body} type={INPUT.WHATSAPP_REQUEST_CONTACT_INFO} />
|
|
34
|
+
)
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return renderComponent({ renderBrowser, renderNode })
|
|
38
|
+
}
|
|
@@ -4,6 +4,7 @@ export enum WhatsAppTemplateButtonSubType {
|
|
|
4
4
|
PHONE_NUMBER = 'PHONE_NUMBER',
|
|
5
5
|
VOICE_CALL = 'VOICE_CALL',
|
|
6
6
|
FLOW = 'FLOW',
|
|
7
|
+
REQUEST_CONTACT_INFO = 'REQUEST_CONTACT_INFO',
|
|
7
8
|
}
|
|
8
9
|
|
|
9
10
|
export enum WhatsAppTemplateParameterType {
|
|
@@ -111,6 +112,13 @@ export interface WhatsappTemplatePhoneNumberButton {
|
|
|
111
112
|
parameters: []
|
|
112
113
|
}
|
|
113
114
|
|
|
115
|
+
export interface WhatsappTemplateRequestContactInfoButton {
|
|
116
|
+
type: WhatsAppTemplateComponentType.BUTTON
|
|
117
|
+
sub_type: WhatsAppTemplateButtonSubType.REQUEST_CONTACT_INFO
|
|
118
|
+
index: number
|
|
119
|
+
parameters: []
|
|
120
|
+
}
|
|
121
|
+
|
|
114
122
|
export interface WhatsappTemplateFlowAction {
|
|
115
123
|
flow_token: string
|
|
116
124
|
flow_action_data?: Record<string, string>
|
|
@@ -133,4 +141,5 @@ export type WhatsappTemplateButton =
|
|
|
133
141
|
| WhatsappTemplateUrlButton
|
|
134
142
|
| WhatsappTemplateVoiceCallButton
|
|
135
143
|
| WhatsappTemplatePhoneNumberButton
|
|
144
|
+
| WhatsappTemplateRequestContactInfoButton
|
|
136
145
|
| WhatsappTemplateFlowButton
|