@botonic/react 0.55.1 → 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.
@@ -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,4 @@
1
+ export interface WhatsappRequestContactInfoProps {
2
+ body: string;
3
+ }
4
+ export declare const WhatsappRequestContactInfo: (props: WhatsappRequestContactInfoProps) => any;
@@ -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,6BAMX;AAND,WAAY,6BAA6B;IACvC,4CAAW,CAAA;IACX,4DAA2B,CAAA;IAC3B,8DAA6B,CAAA;IAC7B,0DAAyB,CAAA;IACzB,8CAAa,CAAA;AACf,CAAC,EANW,6BAA6B,6CAA7B,6BAA6B,QAMxC;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"}
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,4 @@
1
+ export interface WhatsappRequestContactInfoProps {
2
+ body: string;
3
+ }
4
+ export declare const WhatsappRequestContactInfo: (props: WhatsappRequestContactInfoProps) => any;
@@ -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,6BAMX;AAND,WAAY,6BAA6B;IACvC,4CAAW,CAAA;IACX,4DAA2B,CAAA;IAC3B,8DAA6B,CAAA;IAC7B,0DAAyB,CAAA;IACzB,8CAAa,CAAA;AACf,CAAC,EANW,6BAA6B,6CAA7B,6BAA6B,QAMxC;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"}
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.55.1",
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.55.1",
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",
@@ -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