@botonic/react 0.42.0-alpha.1 → 0.42.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/lib/cjs/components/index-types.d.ts +1 -0
  2. package/lib/cjs/components/index.d.ts +1 -0
  3. package/lib/cjs/components/index.js +3 -1
  4. package/lib/cjs/components/index.js.map +1 -1
  5. package/lib/cjs/components/multichannel/whatsapp/constants.d.ts +1 -0
  6. package/lib/cjs/components/multichannel/whatsapp/constants.js +2 -1
  7. package/lib/cjs/components/multichannel/whatsapp/constants.js.map +1 -1
  8. package/lib/cjs/components/system-debug-trace/events/ai-agent.js +1 -1
  9. package/lib/cjs/components/system-debug-trace/events/ai-agent.js.map +1 -1
  10. package/lib/cjs/components/system-debug-trace/events/conditional-queue-status.js +2 -1
  11. package/lib/cjs/components/system-debug-trace/events/conditional-queue-status.js.map +1 -1
  12. package/lib/cjs/components/system-debug-trace/styles.d.ts +1 -4
  13. package/lib/cjs/components/system-debug-trace/styles.js +2 -2
  14. package/lib/cjs/components/system-debug-trace/styles.js.map +1 -1
  15. package/lib/cjs/components/whatsapp-interactive-media-carousel.d.ts +15 -0
  16. package/lib/cjs/components/whatsapp-interactive-media-carousel.js +19 -0
  17. package/lib/cjs/components/whatsapp-interactive-media-carousel.js.map +1 -0
  18. package/lib/cjs/components/whatsapp-media-carousel.js +3 -0
  19. package/lib/cjs/components/whatsapp-media-carousel.js.map +1 -1
  20. package/lib/esm/components/index-types.d.ts +1 -0
  21. package/lib/esm/components/index.d.ts +1 -0
  22. package/lib/esm/components/index.js +1 -0
  23. package/lib/esm/components/index.js.map +1 -1
  24. package/lib/esm/components/multichannel/whatsapp/constants.d.ts +1 -0
  25. package/lib/esm/components/multichannel/whatsapp/constants.js +1 -0
  26. package/lib/esm/components/multichannel/whatsapp/constants.js.map +1 -1
  27. package/lib/esm/components/system-debug-trace/events/ai-agent.js +1 -1
  28. package/lib/esm/components/system-debug-trace/events/ai-agent.js.map +1 -1
  29. package/lib/esm/components/system-debug-trace/events/conditional-queue-status.js +2 -1
  30. package/lib/esm/components/system-debug-trace/events/conditional-queue-status.js.map +1 -1
  31. package/lib/esm/components/system-debug-trace/styles.d.ts +1 -4
  32. package/lib/esm/components/system-debug-trace/styles.js +2 -2
  33. package/lib/esm/components/system-debug-trace/styles.js.map +1 -1
  34. package/lib/esm/components/whatsapp-interactive-media-carousel.d.ts +15 -0
  35. package/lib/esm/components/whatsapp-interactive-media-carousel.js +15 -0
  36. package/lib/esm/components/whatsapp-interactive-media-carousel.js.map +1 -0
  37. package/lib/esm/components/whatsapp-media-carousel.js +3 -0
  38. package/lib/esm/components/whatsapp-media-carousel.js.map +1 -1
  39. package/package.json +2 -2
  40. package/src/components/index-types.ts +1 -0
  41. package/src/components/index.ts +4 -0
  42. package/src/components/multichannel/whatsapp/constants.ts +1 -0
  43. package/src/components/system-debug-trace/events/ai-agent.tsx +2 -2
  44. package/src/components/system-debug-trace/events/conditional-queue-status.tsx +2 -1
  45. package/src/components/system-debug-trace/styles.ts +4 -6
  46. package/src/components/whatsapp-interactive-media-carousel.tsx +52 -0
  47. package/src/components/whatsapp-media-carousel.tsx +3 -0
@@ -20,6 +20,7 @@ export interface TextProps extends MessageProps {
20
20
  }
21
21
  export interface CarouselProps extends MessageProps {
22
22
  children: React.ReactNode[];
23
+ text?: string;
23
24
  }
24
25
  export interface Webview {
25
26
  name: string;
@@ -23,6 +23,7 @@ export { normalizeWebchatSettings, WebchatSettings, WebchatSettingsProps, } from
23
23
  export { WhatsappButtonList, WhatsappButtonListProps, WhatsappButtonListRowProps, WhatsappButtonListSectionProps, } from './whatsapp-button-list';
24
24
  export { WhatsappCatalog, WhatsappCatalogProps } from './whatsapp-catalog';
25
25
  export { WhatsappCTAUrlButton, WhatsappCTAUrlButtonProps, WhatsappCTAUrlHeaderType, } from './whatsapp-cta-url-button';
26
+ export { WhatsappInteractiveMediaCarousel, WhatsappInteractiveMediaCarouselProps, } from './whatsapp-interactive-media-carousel';
26
27
  export { WhatsappMediaCarousel, WhatsappMediaCarouselProps, } from './whatsapp-media-carousel';
27
28
  export { WhatsappProduct } from './whatsapp-product';
28
29
  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.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.WhatsappProductList = exports.WhatsappProductCarousel = exports.WhatsappProduct = exports.WhatsappMediaCarousel = exports.WhatsappInteractiveMediaCarousel = 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; } });
@@ -52,6 +52,8 @@ Object.defineProperty(exports, "WhatsappCatalog", { enumerable: true, get: funct
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
54
  Object.defineProperty(exports, "WhatsappCTAUrlHeaderType", { enumerable: true, get: function () { return whatsapp_cta_url_button_1.WhatsappCTAUrlHeaderType; } });
55
+ var whatsapp_interactive_media_carousel_1 = require("./whatsapp-interactive-media-carousel");
56
+ Object.defineProperty(exports, "WhatsappInteractiveMediaCarousel", { enumerable: true, get: function () { return whatsapp_interactive_media_carousel_1.WhatsappInteractiveMediaCarousel; } });
55
57
  var whatsapp_media_carousel_1 = require("./whatsapp-media-carousel");
56
58
  Object.defineProperty(exports, "WhatsappMediaCarousel", { enumerable: true, get: function () { return whatsapp_media_carousel_1.WhatsappMediaCarousel; } });
57
59
  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,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
+ {"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,6FAG8C;AAF5C,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,yDAAsD;AAA7C,qHAAA,gBAAgB,OAAA"}
@@ -6,6 +6,7 @@ export declare const WHATSAPP_LIST_MAX_BUTTONS = 10;
6
6
  export declare const WHATSAPP_MAX_BUTTON_CHARS = 20;
7
7
  export declare const WHATSAPP_MAX_HEADER_CHARS = 60;
8
8
  export declare const WHATSAPP_MAX_BODY_CHARS = 1024;
9
+ export declare const WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS = 160;
9
10
  export declare const WHATSAPP_MAX_FOOTER_CHARS = 60;
10
11
  export declare const DEFAULT_WHATSAPP_MAX_BUTTON_SEPARATOR = "More options:";
11
12
  export declare const MENU_BUTTON_WHATSAPP_BUTTON_LIST = "Show options";
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MENU_BUTTON_WHATSAPP_BUTTON_LIST = exports.DEFAULT_WHATSAPP_MAX_BUTTON_SEPARATOR = exports.WHATSAPP_MAX_FOOTER_CHARS = exports.WHATSAPP_MAX_BODY_CHARS = exports.WHATSAPP_MAX_HEADER_CHARS = exports.WHATSAPP_MAX_BUTTON_CHARS = exports.WHATSAPP_LIST_MAX_BUTTONS = exports.WHATSAPP_MAX_BUTTONS = exports.MULTICHANNEL_WHATSAPP_PROPS = void 0;
3
+ exports.MENU_BUTTON_WHATSAPP_BUTTON_LIST = exports.DEFAULT_WHATSAPP_MAX_BUTTON_SEPARATOR = exports.WHATSAPP_MAX_FOOTER_CHARS = exports.WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS = exports.WHATSAPP_MAX_BODY_CHARS = exports.WHATSAPP_MAX_HEADER_CHARS = exports.WHATSAPP_MAX_BUTTON_CHARS = exports.WHATSAPP_LIST_MAX_BUTTONS = exports.WHATSAPP_MAX_BUTTONS = exports.MULTICHANNEL_WHATSAPP_PROPS = void 0;
4
4
  exports.MULTICHANNEL_WHATSAPP_PROPS = { markdown: false };
5
5
  exports.WHATSAPP_MAX_BUTTONS = 3;
6
6
  exports.WHATSAPP_LIST_MAX_BUTTONS = 10;
7
7
  exports.WHATSAPP_MAX_BUTTON_CHARS = 20;
8
8
  exports.WHATSAPP_MAX_HEADER_CHARS = 60;
9
9
  exports.WHATSAPP_MAX_BODY_CHARS = 1024;
10
+ exports.WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS = 160;
10
11
  exports.WHATSAPP_MAX_FOOTER_CHARS = 60;
11
12
  exports.DEFAULT_WHATSAPP_MAX_BUTTON_SEPARATOR = 'More options:';
12
13
  exports.MENU_BUTTON_WHATSAPP_BUTTON_LIST = 'Show options';
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/components/multichannel/whatsapp/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,2BAA2B,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;AAEjD,QAAA,oBAAoB,GAAG,CAAC,CAAA;AACxB,QAAA,yBAAyB,GAAG,EAAE,CAAA;AAC9B,QAAA,yBAAyB,GAAG,EAAE,CAAA;AAC9B,QAAA,yBAAyB,GAAG,EAAE,CAAA;AAC9B,QAAA,uBAAuB,GAAG,IAAI,CAAA;AAC9B,QAAA,yBAAyB,GAAG,EAAE,CAAA;AAC9B,QAAA,qCAAqC,GAAG,eAAe,CAAA;AACvD,QAAA,gCAAgC,GAAG,cAAc,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/components/multichannel/whatsapp/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,2BAA2B,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;AAEjD,QAAA,oBAAoB,GAAG,CAAC,CAAA;AACxB,QAAA,yBAAyB,GAAG,EAAE,CAAA;AAC9B,QAAA,yBAAyB,GAAG,EAAE,CAAA;AAC9B,QAAA,yBAAyB,GAAG,EAAE,CAAA;AAC9B,QAAA,uBAAuB,GAAG,IAAI,CAAA;AAC9B,QAAA,qCAAqC,GAAG,GAAG,CAAA;AAC3C,QAAA,yBAAyB,GAAG,EAAE,CAAA;AAC9B,QAAA,qCAAqC,GAAG,eAAe,CAAA;AACvD,QAAA,gCAAgC,GAAG,cAAc,CAAA"}
@@ -43,7 +43,7 @@ const AiAgent = (props) => {
43
43
  previewUtils.onClickOpenChunks(chunksWithSources);
44
44
  }
45
45
  };
46
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [query && ((0, jsx_runtime_1.jsxs)(styles_1.StyledDebugDetail, { children: [(0, jsx_runtime_1.jsx)(styles_1.StyledDebugLabel, { children: constants_1.LABELS.QUERY }), (0, jsx_runtime_1.jsxs)(styles_1.StyledDebugValue, { children: ["\"", query, "\""] })] })), (0, jsx_runtime_1.jsx)(components_1.SourcesSection, { sources: allSources, chunks: allChunks, getIconForSourceType: getIconForSourceType, onSeeChunks: handleSeeChunks, label: constants_1.LABELS.KNOWLEDGE_GATHERED }), props.tools_executed.length > 0 && ((0, jsx_runtime_1.jsxs)(styles_1.StyledDebugDetail, { children: [(0, jsx_runtime_1.jsx)(styles_1.StyledDebugLabel, { children: constants_1.LABELS.EXECUTED_TOOLS }), props.tools_executed.map((tool, index) => ((0, jsx_runtime_1.jsxs)(styles_1.StyledDebugItemWithIcon, { children: [(0, jsx_runtime_1.jsx)(icons_1.ScrewdriverWrenchSvg, {}), tool.tool_name] }, `${tool.tool_name}-${index}`)))] })), props.tools_executed.length === 0 && ((0, jsx_runtime_1.jsx)(styles_1.StyledDebugDetail, { children: (0, jsx_runtime_1.jsx)(styles_1.StyledDebugLabel, { children: constants_1.LABELS.NO_TOOLS_EXECUTED }) })), (0, jsx_runtime_1.jsx)(components_1.GuardrailList, { keyPrefix: 'input', guardrails: props.input_guardrails_triggered }), (0, jsx_runtime_1.jsx)(components_1.GuardrailList, { keyPrefix: 'output', guardrails: props.output_guardrails_triggered, "$isLastItem": !props.exit && !props.error }), props.exit && ((0, jsx_runtime_1.jsx)(styles_1.StyledDebugDetail, Object.assign({ "$isLastItem": props.exit && !props.error }, { children: (0, jsx_runtime_1.jsx)(styles_1.StyledDebugLabel, { children: constants_1.LABELS.EXIT }) }))), props.error && ((0, jsx_runtime_1.jsx)(styles_1.StyledDebugDetail, Object.assign({ "$isLastItem": props.exit && props.error }, { children: (0, jsx_runtime_1.jsx)(styles_1.StyledDebugLabel, { children: constants_1.LABELS.ERROR }) })))] }));
46
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [query && ((0, jsx_runtime_1.jsxs)(styles_1.StyledDebugDetail, { children: [(0, jsx_runtime_1.jsx)(styles_1.StyledDebugLabel, { children: constants_1.LABELS.QUERY }), (0, jsx_runtime_1.jsxs)(styles_1.StyledDebugValue, { children: ["\"", query, "\""] })] })), (0, jsx_runtime_1.jsx)(components_1.SourcesSection, { sources: allSources, chunks: allChunks, getIconForSourceType: getIconForSourceType, onSeeChunks: handleSeeChunks, label: constants_1.LABELS.KNOWLEDGE_GATHERED }), props.tools_executed.length > 0 && ((0, jsx_runtime_1.jsxs)(styles_1.StyledDebugDetail, { children: [(0, jsx_runtime_1.jsx)(styles_1.StyledDebugLabel, { children: constants_1.LABELS.EXECUTED_TOOLS }), props.tools_executed.map((tool, index) => ((0, jsx_runtime_1.jsxs)(styles_1.StyledDebugItemWithIcon, { children: [(0, jsx_runtime_1.jsx)(icons_1.ScrewdriverWrenchSvg, {}), tool.tool_name] }, `${tool.tool_name}-${index}`)))] })), props.tools_executed.length === 0 && ((0, jsx_runtime_1.jsx)(styles_1.StyledDebugDetail, { children: (0, jsx_runtime_1.jsx)(styles_1.StyledDebugLabel, { children: constants_1.LABELS.NO_TOOLS_EXECUTED }) })), (0, jsx_runtime_1.jsx)(components_1.GuardrailList, { keyPrefix: 'input', guardrails: props.input_guardrails_triggered }), (0, jsx_runtime_1.jsx)(components_1.GuardrailList, { keyPrefix: 'output', guardrails: props.output_guardrails_triggered, "$isLastItem": !props.exit && !props.error }), props.exit && ((0, jsx_runtime_1.jsx)(styles_1.StyledDebugDetail, { children: (0, jsx_runtime_1.jsx)(styles_1.StyledDebugLabel, { children: constants_1.LABELS.EXIT }) })), props.error && ((0, jsx_runtime_1.jsx)(styles_1.StyledDebugDetail, { children: (0, jsx_runtime_1.jsx)(styles_1.StyledDebugLabel, { children: constants_1.LABELS.ERROR }) }))] }));
47
47
  };
48
48
  exports.AiAgent = AiAgent;
49
49
  const getAiAgentEventConfig = (data) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent.js","sourceRoot":"","sources":["../../../../../src/components/system-debug-trace/events/ai-agent.tsx"],"names":[],"mappings":";;;;AAAA,wCAA2C;AAC3C,iCAAkD;AAElD,sDAAyD;AACzD,8EAAuE;AACvE,oCAAwD;AACxD,sCAKkB;AAElB,6CAA4D;AAC5D,2CAAoC;AAuB7B,MAAM,OAAO,GAAG,CAAC,KAAwB,EAAE,EAAE;IAClD,MAAM,EAAE,YAAY,EAAE,GAAG,IAAA,kBAAU,EAAC,wBAAc,CAAC,CAAA;IAEnD,8DAA8D;IAC9D,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QAC1D,MAAM,aAAa,GAAa,EAAE,CAAA;QAClC,MAAM,YAAY,GAAa,EAAE,CAAA;QACjC,IAAI,KAAyB,CAAA;QAE7B,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;;YAClC,IACE,CAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,KAAK;gBAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,KAAK,QAAQ,EAC7C;gBACA,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAA;aAClC;YACD,IAAI,IAAI,CAAC,yBAAyB,EAAE;gBAClC,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,yBAAyB,CAAC,CAAA;aACtD;YACD,IAAI,IAAI,CAAC,wBAAwB,EAAE;gBACjC,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC,CAAA;aACpD;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,CAAA;IAC/C,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;IAE1B,MAAM,EACJ,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,SAAS,EACjB,iBAAiB,EACjB,oBAAoB,GACrB,GAAG,IAAA,8CAAoB,EAAC;QACvB,SAAS,EAAE,aAAa;QACxB,QAAQ,EAAE,YAAY;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,yBAAyB,EAAE,KAAK,CAAC,kCAAkC;KACpE,CAAC,CAAA;IAEF,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,iBAAiB,EAAE;YACnC,YAAY,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAA;SAClD;IACH,CAAC,CAAA;IACD,OAAO,CACL,6DACG,KAAK,IAAI,CACR,wBAAC,0BAAiB,eAChB,uBAAC,yBAAgB,cAAE,kBAAM,CAAC,KAAK,GAAoB,EACnD,wBAAC,yBAAgB,qBAAQ,KAAK,UAA0B,IACtC,CACrB,EAED,uBAAC,2BAAc,IACb,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,SAAS,EACjB,oBAAoB,EAAE,oBAAoB,EAC1C,WAAW,EAAE,eAAe,EAC5B,KAAK,EAAE,kBAAM,CAAC,kBAAkB,GAChC,EAED,KAAK,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,CAClC,wBAAC,0BAAiB,eAChB,uBAAC,yBAAgB,cAAE,kBAAM,CAAC,cAAc,GAAoB,EAC3D,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACzC,wBAAC,gCAAuB,eACtB,uBAAC,4BAAoB,KAAG,EACvB,IAAI,CAAC,SAAS,KAFa,GAAG,IAAI,CAAC,SAAS,IAAI,KAAK,EAAE,CAGhC,CAC3B,CAAC,IACgB,CACrB,EAEA,KAAK,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,CACpC,uBAAC,0BAAiB,cAChB,uBAAC,yBAAgB,cAAE,kBAAM,CAAC,iBAAiB,GAAoB,GAC7C,CACrB,EAED,uBAAC,0BAAa,IACZ,SAAS,EAAC,OAAO,EACjB,UAAU,EAAE,KAAK,CAAC,0BAA0B,GAC5C,EACF,uBAAC,0BAAa,IACZ,SAAS,EAAC,QAAQ,EAClB,UAAU,EAAE,KAAK,CAAC,2BAA2B,iBAChC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,GACxC,EAED,KAAK,CAAC,IAAI,IAAI,CACb,uBAAC,0BAAiB,iCAAc,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,gBACxD,uBAAC,yBAAgB,cAAE,kBAAM,CAAC,IAAI,GAAoB,IAChC,CACrB,EAEA,KAAK,CAAC,KAAK,IAAI,CACd,uBAAC,0BAAiB,iCAAc,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,gBACvD,uBAAC,yBAAgB,cAAE,kBAAM,CAAC,KAAK,GAAoB,IACjC,CACrB,IACA,CACJ,CAAA;AACH,CAAC,CAAA;AAtGY,QAAA,OAAO,WAsGnB;AAEM,MAAM,qBAAqB,GAAG,CACnC,IAAuB,EACL,EAAE;IACpB,MAAM,KAAK,GAAG,CACZ,oFACqB,mDAAS,IAAI,CAAC,oBAAoB,IAAQ,IAC5D,CACJ,CAAA;IAED,OAAO;QACL,MAAM,EAAE,kBAAW,CAAC,OAAO;QAC3B,KAAK;QACL,SAAS,EAAE,eAAO;QAClB,IAAI,EAAE,uBAAC,eAAO,KAAG;QACjB,WAAW,EAAE,IAAI;KAClB,CAAA;AACH,CAAC,CAAA;AAhBY,QAAA,qBAAqB,yBAgBjC"}
1
+ {"version":3,"file":"ai-agent.js","sourceRoot":"","sources":["../../../../../src/components/system-debug-trace/events/ai-agent.tsx"],"names":[],"mappings":"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"}
@@ -7,7 +7,8 @@ const split_1 = require("../icons/split");
7
7
  const getConditionalQueueStatusEventConfig = (data) => {
8
8
  const queueStatus = data.is_queue_open ? 'Open' : 'Closed';
9
9
  const agentStatus = data.is_available_agent ? 'Available' : 'Unavailable';
10
- const title = ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["Queue status checked", ' ', (0, jsx_runtime_1.jsxs)("span", { children: ["- ", queueStatus, " (Agent ", agentStatus, ")"] })] }));
10
+ const statusText = `${queueStatus}${queueStatus === 'Open' ? ` (Agent ${agentStatus})` : ''}`;
11
+ const title = ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["Queue status checked", ' ', (0, jsx_runtime_1.jsxs)("span", { children: ["- ", statusText, " ( Queue: ", data.queue_name, ")"] })] }));
11
12
  return {
12
13
  action: core_1.EventAction.ConditionalQueueStatus,
13
14
  title,
@@ -1 +1 @@
1
- {"version":3,"file":"conditional-queue-status.js","sourceRoot":"","sources":["../../../../../src/components/system-debug-trace/events/conditional-queue-status.tsx"],"names":[],"mappings":";;;;AAAA,wCAA2C;AAG3C,0CAAyC;AAWlC,MAAM,oCAAoC,GAAG,CAClD,IAAsC,EACpB,EAAE;IACpB,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAA;IAEzE,MAAM,KAAK,GAAG,CACZ,qFACuB,GAAG,EACxB,mDACK,WAAW,cAAU,WAAW,SAC9B,IACN,CACJ,CAAA;IAED,OAAO;QACL,MAAM,EAAE,kBAAW,CAAC,sBAAsB;QAC1C,KAAK;QACL,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,uBAAC,gBAAQ,KAAG;QAClB,WAAW,EAAE,KAAK;KACnB,CAAA;AACH,CAAC,CAAA;AAtBY,QAAA,oCAAoC,wCAsBhD"}
1
+ {"version":3,"file":"conditional-queue-status.js","sourceRoot":"","sources":["../../../../../src/components/system-debug-trace/events/conditional-queue-status.tsx"],"names":[],"mappings":";;;;AAAA,wCAA2C;AAG3C,0CAAyC;AAWlC,MAAM,oCAAoC,GAAG,CAClD,IAAsC,EACpB,EAAE;IACpB,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAA;IACzE,MAAM,UAAU,GAAG,GAAG,WAAW,GAAG,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;IAE7F,MAAM,KAAK,GAAG,CACZ,qFACuB,GAAG,EACxB,mDACK,UAAU,gBAAY,IAAI,CAAC,UAAU,SACnC,IACN,CACJ,CAAA;IAED,OAAO;QACL,MAAM,EAAE,kBAAW,CAAC,sBAAsB;QAC1C,KAAK;QACL,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,uBAAC,gBAAQ,KAAG;QAClB,WAAW,EAAE,KAAK;KACnB,CAAA;AACH,CAAC,CAAA;AAvBY,QAAA,oCAAoC,wCAuBhD"}
@@ -4,10 +4,7 @@ export declare const StyledDebugArrow: import("styled-components").StyledCompone
4
4
  export declare const StyledDebugIcon: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, {}, never>;
5
5
  export declare const StyledDebugTitle: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, {}, never>;
6
6
  export declare const StyledDebugContent: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
7
- interface StyledDebugDetailProps {
8
- $isLastItem?: boolean;
9
- }
10
- export declare const StyledDebugDetail: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, StyledDebugDetailProps, never>;
7
+ export declare const StyledDebugDetail: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
11
8
  export declare const StyledDebugLabel: import("styled-components").StyledComponent<"strong", import("styled-components").DefaultTheme, {}, never>;
12
9
  export declare const StyledDebugValue: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
13
10
  export declare const StyledDebugItemWithIcon: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
@@ -98,7 +98,6 @@ exports.StyledDebugDetail = styled_components_1.default.div `
98
98
  flex-direction: column;
99
99
  gap: 4px;
100
100
  padding: 0 28px;
101
- margin-bottom: ${({ $isLastItem }) => ($isLastItem ? '0' : '8px')};
102
101
  line-height: 1.5;
103
102
  width: 100%;
104
103
  min-width: 0;
@@ -190,7 +189,7 @@ exports.StyledSeeChunksButton = styled_components_1.default.button `
190
189
  width: fit-content;
191
190
 
192
191
  &:hover {
193
- background-color: ${constants_1.COLORS.N200};
192
+ background-color: ${constants_1.COLORS.N100};
194
193
  }
195
194
  `;
196
195
  exports.StyledGuardrailItem = styled_components_1.default.div `
@@ -217,6 +216,7 @@ exports.StyledDebugContentWrapper = styled_components_1.default.div `
217
216
  width: 100%;
218
217
  min-width: 0;
219
218
  overflow: hidden;
219
+ margin-bottom: 8px;
220
220
 
221
221
  /* Create line from first label to last label */
222
222
  &::before {
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/system-debug-trace/styles.ts"],"names":[],"mappings":";;;;AAAA,kFAAsC;AAEtC,+CAAwC;AAE3B,QAAA,oBAAoB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;sBAOxB,kBAAM,CAAC,WAAW;;;;;;;;;;;;;0BAad,kBAAM,CAAC,GAAG;;;CAGnC,CAAA;AAEY,QAAA,iBAAiB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;;;CAS1C,CAAA;AAEY,QAAA,gBAAgB,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;;;;;;;;;CAY1C,CAAA;AAEY,QAAA,eAAe,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;;;;;;;;;;CAazC,CAAA;AAEY,QAAA,gBAAgB,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;;;;WAOhC,kBAAM,CAAC,IAAI;;;;;;;;CAQrB,CAAA;AAEY,QAAA,kBAAkB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;;;;WAUjC,kBAAM,CAAC,IAAI;CACrB,CAAA;AAIY,QAAA,iBAAiB,GAAG,2BAAM,CAAC,GAAG,CAAwB;;;;;mBAKhD,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;;;;;;CAMlE,CAAA;AAEY,QAAA,gBAAgB,GAAG,2BAAM,CAAC,MAAM,CAAA;WAClC,kBAAM,CAAC,IAAI;;;;CAIrB,CAAA;AAEY,QAAA,gBAAgB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;WAG/B,kBAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;CAiBrB,CAAA;AAEY,QAAA,uBAAuB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;WAOtC,kBAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;CAiBrB,CAAA;AAEY,QAAA,mBAAmB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;0BAGnB,kBAAM,CAAC,IAAI;WAC1B,kBAAM,CAAC,IAAI;;;;;;;;CAQrB,CAAA;AAEY,QAAA,qBAAqB,GAAG,2BAAM,CAAC,MAAM,CAAA;;;;;;;;;;;;;;;;;;;;wBAoB1B,kBAAM,CAAC,IAAI;;CAElC,CAAA;AAIY,QAAA,mBAAmB,GAAG,2BAAM,CAAC,GAAG,CAA0B;;;;;mBAKpD,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;;;WAGxD,kBAAM,CAAC,IAAI;;;;;;;CAOrB,CAAA;AAEY,QAAA,yBAAyB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;wBAe3B,kBAAM,CAAC,IAAI;;;;;;;;;0BAST,kBAAM,CAAC,IAAI;;;CAGpC,CAAA;AAEY,QAAA,oBAAoB,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;WAIpC,kBAAM,CAAC,IAAI;CACrB,CAAA;AAEY,QAAA,oBAAoB,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;WAIpC,kBAAM,CAAC,IAAI;CACrB,CAAA;AAEY,QAAA,iBAAiB,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;WAIjC,kBAAM,CAAC,IAAI;CACrB,CAAA;AAEY,QAAA,qBAAqB,GAAG,IAAA,2BAAM,EAAC,yBAAiB,CAAC,CAAA;;;;;;;CAO7D,CAAA;AAEY,QAAA,oBAAoB,GAAG,2BAAM,CAAC,CAAC,CAAA;;;;WAIjC,kBAAM,CAAC,IAAI;;;;;;;;;;;aAWT,kBAAM,CAAC,YAAY;;;;aAInB,kBAAM,CAAC,IAAI;;CAEvB,CAAA"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/system-debug-trace/styles.ts"],"names":[],"mappings":";;;;AAAA,kFAAsC;AAEtC,+CAAwC;AAE3B,QAAA,oBAAoB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;sBAOxB,kBAAM,CAAC,WAAW;;;;;;;;;;;;;0BAad,kBAAM,CAAC,GAAG;;;CAGnC,CAAA;AAEY,QAAA,iBAAiB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;;;CAS1C,CAAA;AAEY,QAAA,gBAAgB,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;;;;;;;;;CAY1C,CAAA;AAEY,QAAA,eAAe,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;;;;;;;;;;CAazC,CAAA;AAEY,QAAA,gBAAgB,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;;;;WAOhC,kBAAM,CAAC,IAAI;;;;;;;;CAQrB,CAAA;AAEY,QAAA,kBAAkB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;;;;WAUjC,kBAAM,CAAC,IAAI;CACrB,CAAA;AAEY,QAAA,iBAAiB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;;;;CAU1C,CAAA;AAEY,QAAA,gBAAgB,GAAG,2BAAM,CAAC,MAAM,CAAA;WAClC,kBAAM,CAAC,IAAI;;;;CAIrB,CAAA;AAEY,QAAA,gBAAgB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;WAG/B,kBAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;CAiBrB,CAAA;AAEY,QAAA,uBAAuB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;WAOtC,kBAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;CAiBrB,CAAA;AAEY,QAAA,mBAAmB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;0BAGnB,kBAAM,CAAC,IAAI;WAC1B,kBAAM,CAAC,IAAI;;;;;;;;CAQrB,CAAA;AAEY,QAAA,qBAAqB,GAAG,2BAAM,CAAC,MAAM,CAAA;;;;;;;;;;;;;;;;;;;;wBAoB1B,kBAAM,CAAC,IAAI;;CAElC,CAAA;AAIY,QAAA,mBAAmB,GAAG,2BAAM,CAAC,GAAG,CAA0B;;;;;mBAKpD,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;;;WAGxD,kBAAM,CAAC,IAAI;;;;;;;CAOrB,CAAA;AAEY,QAAA,yBAAyB,GAAG,2BAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;wBAgB3B,kBAAM,CAAC,IAAI;;;;;;;;;0BAST,kBAAM,CAAC,IAAI;;;CAGpC,CAAA;AAEY,QAAA,oBAAoB,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;WAIpC,kBAAM,CAAC,IAAI;CACrB,CAAA;AAEY,QAAA,oBAAoB,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;WAIpC,kBAAM,CAAC,IAAI;CACrB,CAAA;AAEY,QAAA,iBAAiB,GAAG,2BAAM,CAAC,IAAI,CAAA;;;;WAIjC,kBAAM,CAAC,IAAI;CACrB,CAAA;AAEY,QAAA,qBAAqB,GAAG,IAAA,2BAAM,EAAC,yBAAiB,CAAC,CAAA;;;;;;;CAO7D,CAAA;AAEY,QAAA,oBAAoB,GAAG,2BAAM,CAAC,CAAC,CAAA;;;;WAIjC,kBAAM,CAAC,IAAI;;;;;;;;;;;aAWT,kBAAM,CAAC,YAAY;;;;aAInB,kBAAM,CAAC,IAAI;;CAEvB,CAAA"}
@@ -0,0 +1,15 @@
1
+ interface ActionCard {
2
+ buttonText: string;
3
+ buttonUrl: string;
4
+ imageLink: string;
5
+ }
6
+ interface Card {
7
+ text: string;
8
+ action: ActionCard;
9
+ }
10
+ export interface WhatsappInteractiveMediaCarouselProps {
11
+ cards: Card[];
12
+ textMessage: string;
13
+ }
14
+ export declare const WhatsappInteractiveMediaCarousel: (props: WhatsappInteractiveMediaCarouselProps) => import("react/jsx-runtime").JSX.Element;
15
+ export {};
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WhatsappInteractiveMediaCarousel = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const util_1 = require("../util");
6
+ const button_1 = require("./button");
7
+ const carousel_1 = require("./carousel");
8
+ const element_1 = require("./element");
9
+ const constants_1 = require("./multichannel/whatsapp/constants");
10
+ const pic_1 = require("./pic");
11
+ const title_1 = require("./title");
12
+ /*
13
+ Reference: https://developers.facebook.com/docs/whatsapp/cloud-api/messages/interactive-media-carousel-messages/
14
+ */
15
+ const WhatsappInteractiveMediaCarousel = (props) => {
16
+ return ((0, jsx_runtime_1.jsx)(carousel_1.Carousel, Object.assign({ text: (0, util_1.truncateText)(props.textMessage, constants_1.WHATSAPP_MAX_BODY_CHARS) }, { children: props.cards.map((card, index) => ((0, jsx_runtime_1.jsxs)(element_1.Element, { children: [(0, jsx_runtime_1.jsx)(pic_1.Pic, { src: card.action.imageLink }), (0, jsx_runtime_1.jsx)(title_1.Title, { children: (0, util_1.truncateText)(card.text, constants_1.WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS) }), (0, jsx_runtime_1.jsx)(button_1.Button, Object.assign({ url: card.action.buttonUrl }, { children: (0, util_1.truncateText)(card.action.buttonText, constants_1.WHATSAPP_MAX_BUTTON_CHARS) }))] }, index))) })));
17
+ };
18
+ exports.WhatsappInteractiveMediaCarousel = WhatsappInteractiveMediaCarousel;
19
+ //# sourceMappingURL=whatsapp-interactive-media-carousel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whatsapp-interactive-media-carousel.js","sourceRoot":"","sources":["../../../src/components/whatsapp-interactive-media-carousel.tsx"],"names":[],"mappings":";;;;AAEA,kCAAsC;AACtC,qCAAiC;AACjC,yCAAqC;AACrC,uCAAmC;AACnC,iEAI0C;AAC1C,+BAA2B;AAC3B,mCAA+B;AAkB/B;;EAEE;AACK,MAAM,gCAAgC,GAAG,CAC9C,KAA4C,EAC5C,EAAE;IACF,OAAO,CACL,uBAAC,mBAAQ,kBAAC,IAAI,EAAE,IAAA,mBAAY,EAAC,KAAK,CAAC,WAAW,EAAE,mCAAuB,CAAC,gBACrE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAChC,wBAAC,iBAAO,eACN,uBAAC,SAAG,IAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,GAAI,EACnC,uBAAC,aAAK,cACH,IAAA,mBAAY,EAAC,IAAI,CAAC,IAAI,EAAE,iDAAqC,CAAC,GACzD,EACR,uBAAC,eAAM,kBAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,gBAC/B,IAAA,mBAAY,EAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,qCAAyB,CAAC,IACzD,KAPG,KAAK,CAQT,CACX,CAAC,IACO,CACZ,CAAA;AACH,CAAC,CAAA;AAlBY,QAAA,gCAAgC,oCAkB5C"}
@@ -9,6 +9,9 @@ const message_1 = require("./message");
9
9
  const serialize = (message) => {
10
10
  return { text: message };
11
11
  };
12
+ /*
13
+ Reference: https://developers.facebook.com/docs/whatsapp/business-management-api/message-templates/media-card-carousel-templates
14
+ */
12
15
  const WhatsappMediaCarousel = (props) => {
13
16
  const renderBrowser = () => {
14
17
  // Return a dummy message for browser
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp-media-carousel.js","sourceRoot":"","sources":["../../../src/components/whatsapp-media-carousel.tsx"],"names":[],"mappings":";;;;AAAA,wCAAqC;AAGrC,mDAAoD;AACpD,yCAA+C;AAC/C,uCAAmC;AAsDnC,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,EAAE;IACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;AAC1B,CAAC,CAAA;AAEM,MAAM,qBAAqB,GAAG,CAAC,KAAiC,EAAE,EAAE;IACzE,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,qCAAqC;QACrC,MAAM,OAAO,GAAG,oDAAoD,CAAA;QACpE,OAAO,CACL,uBAAC,iBAAO,kBAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,IAAM,KAAK,IAAE,IAAI,EAAE,YAAK,CAAC,IAAI,gBAC3D,OAAO,IACA,CACX,CAAA;IACH,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;QACjC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;;YAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;aACvB;YACD,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACtC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;oBACvB,MAAM,CAAC,WAAW,GAAG,KAAK,CAAA;iBAC3B;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,OAAO,IAAA,4BAAe,EAAC,KAAK,CAAC,CAAA;IAC/B,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,OAAO;QACL,gFAAgF;QAChF,oDACM,KAAK,IACT,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAA,4BAAe,EAAC,KAAK,CAAC,cAAc,CAAC,CAAC,EACrE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAC5C,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EACxC,IAAI,EAAE,YAAK,CAAC,uBAAuB,IACnC,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,IAAA,uBAAe,EAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAA;AACvD,CAAC,CAAA;AAxCY,QAAA,qBAAqB,yBAwCjC"}
1
+ {"version":3,"file":"whatsapp-media-carousel.js","sourceRoot":"","sources":["../../../src/components/whatsapp-media-carousel.tsx"],"names":[],"mappings":";;;;AAAA,wCAAqC;AAGrC,mDAAoD;AACpD,yCAA+C;AAC/C,uCAAmC;AAsDnC,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,EAAE;IACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;AAC1B,CAAC,CAAA;AAED;;EAEE;AACK,MAAM,qBAAqB,GAAG,CAAC,KAAiC,EAAE,EAAE;IACzE,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,qCAAqC;QACrC,MAAM,OAAO,GAAG,oDAAoD,CAAA;QACpE,OAAO,CACL,uBAAC,iBAAO,kBAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,IAAM,KAAK,IAAE,IAAI,EAAE,YAAK,CAAC,IAAI,gBAC3D,OAAO,IACA,CACX,CAAA;IACH,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;QACjC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;;YAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;aACvB;YACD,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACtC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;oBACvB,MAAM,CAAC,WAAW,GAAG,KAAK,CAAA;iBAC3B;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,OAAO,IAAA,4BAAe,EAAC,KAAK,CAAC,CAAA;IAC/B,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,OAAO;QACL,gFAAgF;QAChF,oDACM,KAAK,IACT,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAA,4BAAe,EAAC,KAAK,CAAC,cAAc,CAAC,CAAC,EACrE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAC5C,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EACxC,IAAI,EAAE,YAAK,CAAC,uBAAuB,IACnC,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,IAAA,uBAAe,EAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAA;AACvD,CAAC,CAAA;AAxCY,QAAA,qBAAqB,yBAwCjC"}
@@ -20,6 +20,7 @@ export interface TextProps extends MessageProps {
20
20
  }
21
21
  export interface CarouselProps extends MessageProps {
22
22
  children: React.ReactNode[];
23
+ text?: string;
23
24
  }
24
25
  export interface Webview {
25
26
  name: string;
@@ -23,6 +23,7 @@ export { normalizeWebchatSettings, WebchatSettings, WebchatSettingsProps, } from
23
23
  export { WhatsappButtonList, WhatsappButtonListProps, WhatsappButtonListRowProps, WhatsappButtonListSectionProps, } from './whatsapp-button-list';
24
24
  export { WhatsappCatalog, WhatsappCatalogProps } from './whatsapp-catalog';
25
25
  export { WhatsappCTAUrlButton, WhatsappCTAUrlButtonProps, WhatsappCTAUrlHeaderType, } from './whatsapp-cta-url-button';
26
+ export { WhatsappInteractiveMediaCarousel, WhatsappInteractiveMediaCarouselProps, } from './whatsapp-interactive-media-carousel';
26
27
  export { WhatsappMediaCarousel, WhatsappMediaCarouselProps, } from './whatsapp-media-carousel';
27
28
  export { WhatsappProduct } from './whatsapp-product';
28
29
  export { WhatsappProductCarousel, WhatsappProductCarouselProps, } from './whatsapp-product-carousel';
@@ -23,6 +23,7 @@ export { normalizeWebchatSettings, WebchatSettings, } from './webchat-settings';
23
23
  export { WhatsappButtonList, } from './whatsapp-button-list';
24
24
  export { WhatsappCatalog } from './whatsapp-catalog';
25
25
  export { WhatsappCTAUrlButton, WhatsappCTAUrlHeaderType, } from './whatsapp-cta-url-button';
26
+ export { WhatsappInteractiveMediaCarousel, } from './whatsapp-interactive-media-carousel';
26
27
  export { WhatsappMediaCarousel, } from './whatsapp-media-carousel';
27
28
  export { WhatsappProduct } from './whatsapp-product';
28
29
  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,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
+ {"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,gCAAgC,GAEjC,MAAM,uCAAuC,CAAA;AAC9C,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"}
@@ -6,6 +6,7 @@ export declare const WHATSAPP_LIST_MAX_BUTTONS = 10;
6
6
  export declare const WHATSAPP_MAX_BUTTON_CHARS = 20;
7
7
  export declare const WHATSAPP_MAX_HEADER_CHARS = 60;
8
8
  export declare const WHATSAPP_MAX_BODY_CHARS = 1024;
9
+ export declare const WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS = 160;
9
10
  export declare const WHATSAPP_MAX_FOOTER_CHARS = 60;
10
11
  export declare const DEFAULT_WHATSAPP_MAX_BUTTON_SEPARATOR = "More options:";
11
12
  export declare const MENU_BUTTON_WHATSAPP_BUTTON_LIST = "Show options";
@@ -4,6 +4,7 @@ export const WHATSAPP_LIST_MAX_BUTTONS = 10;
4
4
  export const WHATSAPP_MAX_BUTTON_CHARS = 20;
5
5
  export const WHATSAPP_MAX_HEADER_CHARS = 60;
6
6
  export const WHATSAPP_MAX_BODY_CHARS = 1024;
7
+ export const WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS = 160;
7
8
  export const WHATSAPP_MAX_FOOTER_CHARS = 60;
8
9
  export const DEFAULT_WHATSAPP_MAX_BUTTON_SEPARATOR = 'More options:';
9
10
  export const MENU_BUTTON_WHATSAPP_BUTTON_LIST = 'Show options';
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/components/multichannel/whatsapp/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;AAE9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAA;AACrC,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAA;AAC3C,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,qCAAqC,GAAG,eAAe,CAAA;AACpE,MAAM,CAAC,MAAM,gCAAgC,GAAG,cAAc,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/components/multichannel/whatsapp/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;AAE9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAA;AACrC,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAA;AAC3C,MAAM,CAAC,MAAM,qCAAqC,GAAG,GAAG,CAAA;AACxD,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAA;AAC3C,MAAM,CAAC,MAAM,qCAAqC,GAAG,eAAe,CAAA;AACpE,MAAM,CAAC,MAAM,gCAAgC,GAAG,cAAc,CAAA"}
@@ -40,7 +40,7 @@ export const AiAgent = (props) => {
40
40
  previewUtils.onClickOpenChunks(chunksWithSources);
41
41
  }
42
42
  };
43
- return (_jsxs(_Fragment, { children: [query && (_jsxs(StyledDebugDetail, { children: [_jsx(StyledDebugLabel, { children: LABELS.QUERY }), _jsxs(StyledDebugValue, { children: ["\"", query, "\""] })] })), _jsx(SourcesSection, { sources: allSources, chunks: allChunks, getIconForSourceType: getIconForSourceType, onSeeChunks: handleSeeChunks, label: LABELS.KNOWLEDGE_GATHERED }), props.tools_executed.length > 0 && (_jsxs(StyledDebugDetail, { children: [_jsx(StyledDebugLabel, { children: LABELS.EXECUTED_TOOLS }), props.tools_executed.map((tool, index) => (_jsxs(StyledDebugItemWithIcon, { children: [_jsx(ScrewdriverWrenchSvg, {}), tool.tool_name] }, `${tool.tool_name}-${index}`)))] })), props.tools_executed.length === 0 && (_jsx(StyledDebugDetail, { children: _jsx(StyledDebugLabel, { children: LABELS.NO_TOOLS_EXECUTED }) })), _jsx(GuardrailList, { keyPrefix: 'input', guardrails: props.input_guardrails_triggered }), _jsx(GuardrailList, { keyPrefix: 'output', guardrails: props.output_guardrails_triggered, "$isLastItem": !props.exit && !props.error }), props.exit && (_jsx(StyledDebugDetail, Object.assign({ "$isLastItem": props.exit && !props.error }, { children: _jsx(StyledDebugLabel, { children: LABELS.EXIT }) }))), props.error && (_jsx(StyledDebugDetail, Object.assign({ "$isLastItem": props.exit && props.error }, { children: _jsx(StyledDebugLabel, { children: LABELS.ERROR }) })))] }));
43
+ return (_jsxs(_Fragment, { children: [query && (_jsxs(StyledDebugDetail, { children: [_jsx(StyledDebugLabel, { children: LABELS.QUERY }), _jsxs(StyledDebugValue, { children: ["\"", query, "\""] })] })), _jsx(SourcesSection, { sources: allSources, chunks: allChunks, getIconForSourceType: getIconForSourceType, onSeeChunks: handleSeeChunks, label: LABELS.KNOWLEDGE_GATHERED }), props.tools_executed.length > 0 && (_jsxs(StyledDebugDetail, { children: [_jsx(StyledDebugLabel, { children: LABELS.EXECUTED_TOOLS }), props.tools_executed.map((tool, index) => (_jsxs(StyledDebugItemWithIcon, { children: [_jsx(ScrewdriverWrenchSvg, {}), tool.tool_name] }, `${tool.tool_name}-${index}`)))] })), props.tools_executed.length === 0 && (_jsx(StyledDebugDetail, { children: _jsx(StyledDebugLabel, { children: LABELS.NO_TOOLS_EXECUTED }) })), _jsx(GuardrailList, { keyPrefix: 'input', guardrails: props.input_guardrails_triggered }), _jsx(GuardrailList, { keyPrefix: 'output', guardrails: props.output_guardrails_triggered, "$isLastItem": !props.exit && !props.error }), props.exit && (_jsx(StyledDebugDetail, { children: _jsx(StyledDebugLabel, { children: LABELS.EXIT }) })), props.error && (_jsx(StyledDebugDetail, { children: _jsx(StyledDebugLabel, { children: LABELS.ERROR }) }))] }));
44
44
  };
45
45
  export const getAiAgentEventConfig = (data) => {
46
46
  const title = (_jsxs(_Fragment, { children: ["AI Agent triggered ", _jsxs("span", { children: ["- ", data.flow_node_content_id] })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"ai-agent.js","sourceRoot":"","sources":["../../../../../src/components/system-debug-trace/events/ai-agent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAc,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAA;AACvE,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AACxD,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAuBpC,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAwB,EAAE,EAAE;IAClD,MAAM,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IAEnD,8DAA8D;IAC9D,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;QAC1D,MAAM,aAAa,GAAa,EAAE,CAAA;QAClC,MAAM,YAAY,GAAa,EAAE,CAAA;QACjC,IAAI,KAAyB,CAAA;QAE7B,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;;YAClC,IACE,CAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,KAAK;gBAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,KAAK,QAAQ,EAC7C;gBACA,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAA;aAClC;YACD,IAAI,IAAI,CAAC,yBAAyB,EAAE;gBAClC,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,yBAAyB,CAAC,CAAA;aACtD;YACD,IAAI,IAAI,CAAC,wBAAwB,EAAE;gBACjC,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC,CAAA;aACpD;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,CAAA;IAC/C,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;IAE1B,MAAM,EACJ,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,SAAS,EACjB,iBAAiB,EACjB,oBAAoB,GACrB,GAAG,oBAAoB,CAAC;QACvB,SAAS,EAAE,aAAa;QACxB,QAAQ,EAAE,YAAY;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,yBAAyB,EAAE,KAAK,CAAC,kCAAkC;KACpE,CAAC,CAAA;IAEF,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,iBAAiB,EAAE;YACnC,YAAY,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAA;SAClD;IACH,CAAC,CAAA;IACD,OAAO,CACL,8BACG,KAAK,IAAI,CACR,MAAC,iBAAiB,eAChB,KAAC,gBAAgB,cAAE,MAAM,CAAC,KAAK,GAAoB,EACnD,MAAC,gBAAgB,qBAAQ,KAAK,UAA0B,IACtC,CACrB,EAED,KAAC,cAAc,IACb,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,SAAS,EACjB,oBAAoB,EAAE,oBAAoB,EAC1C,WAAW,EAAE,eAAe,EAC5B,KAAK,EAAE,MAAM,CAAC,kBAAkB,GAChC,EAED,KAAK,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,CAClC,MAAC,iBAAiB,eAChB,KAAC,gBAAgB,cAAE,MAAM,CAAC,cAAc,GAAoB,EAC3D,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACzC,MAAC,uBAAuB,eACtB,KAAC,oBAAoB,KAAG,EACvB,IAAI,CAAC,SAAS,KAFa,GAAG,IAAI,CAAC,SAAS,IAAI,KAAK,EAAE,CAGhC,CAC3B,CAAC,IACgB,CACrB,EAEA,KAAK,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,CACpC,KAAC,iBAAiB,cAChB,KAAC,gBAAgB,cAAE,MAAM,CAAC,iBAAiB,GAAoB,GAC7C,CACrB,EAED,KAAC,aAAa,IACZ,SAAS,EAAC,OAAO,EACjB,UAAU,EAAE,KAAK,CAAC,0BAA0B,GAC5C,EACF,KAAC,aAAa,IACZ,SAAS,EAAC,QAAQ,EAClB,UAAU,EAAE,KAAK,CAAC,2BAA2B,iBAChC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,GACxC,EAED,KAAK,CAAC,IAAI,IAAI,CACb,KAAC,iBAAiB,iCAAc,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,gBACxD,KAAC,gBAAgB,cAAE,MAAM,CAAC,IAAI,GAAoB,IAChC,CACrB,EAEA,KAAK,CAAC,KAAK,IAAI,CACd,KAAC,iBAAiB,iCAAc,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,gBACvD,KAAC,gBAAgB,cAAE,MAAM,CAAC,KAAK,GAAoB,IACjC,CACrB,IACA,CACJ,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,IAAuB,EACL,EAAE;IACpB,MAAM,KAAK,GAAG,CACZ,qDACqB,iCAAS,IAAI,CAAC,oBAAoB,IAAQ,IAC5D,CACJ,CAAA;IAED,OAAO;QACL,MAAM,EAAE,WAAW,CAAC,OAAO;QAC3B,KAAK;QACL,SAAS,EAAE,OAAO;QAClB,IAAI,EAAE,KAAC,OAAO,KAAG;QACjB,WAAW,EAAE,IAAI;KAClB,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"ai-agent.js","sourceRoot":"","sources":["../../../../../src/components/system-debug-trace/events/ai-agent.tsx"],"names":[],"mappings":"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"}
@@ -4,7 +4,8 @@ import { SplitSvg } from '../icons/split';
4
4
  export const getConditionalQueueStatusEventConfig = (data) => {
5
5
  const queueStatus = data.is_queue_open ? 'Open' : 'Closed';
6
6
  const agentStatus = data.is_available_agent ? 'Available' : 'Unavailable';
7
- const title = (_jsxs(_Fragment, { children: ["Queue status checked", ' ', _jsxs("span", { children: ["- ", queueStatus, " (Agent ", agentStatus, ")"] })] }));
7
+ const statusText = `${queueStatus}${queueStatus === 'Open' ? ` (Agent ${agentStatus})` : ''}`;
8
+ const title = (_jsxs(_Fragment, { children: ["Queue status checked", ' ', _jsxs("span", { children: ["- ", statusText, " ( Queue: ", data.queue_name, ")"] })] }));
8
9
  return {
9
10
  action: EventAction.ConditionalQueueStatus,
10
11
  title,
@@ -1 +1 @@
1
- {"version":3,"file":"conditional-queue-status.js","sourceRoot":"","sources":["../../../../../src/components/system-debug-trace/events/conditional-queue-status.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAG3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAWzC,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAClD,IAAsC,EACpB,EAAE;IACpB,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAA;IAEzE,MAAM,KAAK,GAAG,CACZ,sDACuB,GAAG,EACxB,iCACK,WAAW,cAAU,WAAW,SAC9B,IACN,CACJ,CAAA;IAED,OAAO;QACL,MAAM,EAAE,WAAW,CAAC,sBAAsB;QAC1C,KAAK;QACL,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,KAAC,QAAQ,KAAG;QAClB,WAAW,EAAE,KAAK;KACnB,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"conditional-queue-status.js","sourceRoot":"","sources":["../../../../../src/components/system-debug-trace/events/conditional-queue-status.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAG3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAWzC,MAAM,CAAC,MAAM,oCAAoC,GAAG,CAClD,IAAsC,EACpB,EAAE;IACpB,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAA;IACzE,MAAM,UAAU,GAAG,GAAG,WAAW,GAAG,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;IAE7F,MAAM,KAAK,GAAG,CACZ,sDACuB,GAAG,EACxB,iCACK,UAAU,gBAAY,IAAI,CAAC,UAAU,SACnC,IACN,CACJ,CAAA;IAED,OAAO;QACL,MAAM,EAAE,WAAW,CAAC,sBAAsB;QAC1C,KAAK;QACL,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,KAAC,QAAQ,KAAG;QAClB,WAAW,EAAE,KAAK;KACnB,CAAA;AACH,CAAC,CAAA"}
@@ -4,10 +4,7 @@ export declare const StyledDebugArrow: import("styled-components").StyledCompone
4
4
  export declare const StyledDebugIcon: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, {}, never>;
5
5
  export declare const StyledDebugTitle: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, {}, never>;
6
6
  export declare const StyledDebugContent: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
7
- interface StyledDebugDetailProps {
8
- $isLastItem?: boolean;
9
- }
10
- export declare const StyledDebugDetail: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, StyledDebugDetailProps, never>;
7
+ export declare const StyledDebugDetail: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
11
8
  export declare const StyledDebugLabel: import("styled-components").StyledComponent<"strong", import("styled-components").DefaultTheme, {}, never>;
12
9
  export declare const StyledDebugValue: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
13
10
  export declare const StyledDebugItemWithIcon: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
@@ -94,7 +94,6 @@ export const StyledDebugDetail = styled.div `
94
94
  flex-direction: column;
95
95
  gap: 4px;
96
96
  padding: 0 28px;
97
- margin-bottom: ${({ $isLastItem }) => ($isLastItem ? '0' : '8px')};
98
97
  line-height: 1.5;
99
98
  width: 100%;
100
99
  min-width: 0;
@@ -186,7 +185,7 @@ export const StyledSeeChunksButton = styled.button `
186
185
  width: fit-content;
187
186
 
188
187
  &:hover {
189
- background-color: ${COLORS.N200};
188
+ background-color: ${COLORS.N100};
190
189
  }
191
190
  `;
192
191
  export const StyledGuardrailItem = styled.div `
@@ -213,6 +212,7 @@ export const StyledDebugContentWrapper = styled.div `
213
212
  width: 100%;
214
213
  min-width: 0;
215
214
  overflow: hidden;
215
+ margin-bottom: 8px;
216
216
 
217
217
  /* Create line from first label to last label */
218
218
  &::before {
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/system-debug-trace/styles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/system-debug-trace/styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAA;AAEtC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAExC,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;sBAOxB,MAAM,CAAC,WAAW;;;;;;;;;;;;;0BAad,MAAM,CAAC,GAAG;;;CAGnC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;CAS1C,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAA;;;;;;;;;;;;CAY1C,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAA;;;;;;;;;;;;;CAazC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAA;;;;;;;WAOhC,MAAM,CAAC,IAAI;;;;;;;;CAQrB,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;WAUjC,MAAM,CAAC,IAAI;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;CAU1C,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAA;WAClC,MAAM,CAAC,IAAI;;;;CAIrB,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAA;;;WAG/B,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;CAiBrB,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;WAOtC,MAAM,CAAC,IAAI;;;;;;;;;;;;;;;;;CAiBrB,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAA;;;0BAGnB,MAAM,CAAC,IAAI;WAC1B,MAAM,CAAC,IAAI;;;;;;;;CAQrB,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAA;;;;;;;;;;;;;;;;;;;;wBAoB1B,MAAM,CAAC,IAAI;;CAElC,CAAA;AAID,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAA0B;;;;;mBAKpD,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;;;WAGxD,MAAM,CAAC,IAAI;;;;;;;CAOrB,CAAA;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;wBAgB3B,MAAM,CAAC,IAAI;;;;;;;;;0BAST,MAAM,CAAC,IAAI;;;CAGpC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAA;;;;WAIpC,MAAM,CAAC,IAAI;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,IAAI,CAAA;;;;WAIpC,MAAM,CAAC,IAAI;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAA;;;;WAIjC,MAAM,CAAC,IAAI;CACrB,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAA;;;;;;;CAO7D,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,CAAC,CAAA;;;;WAIjC,MAAM,CAAC,IAAI;;;;;;;;;;;aAWT,MAAM,CAAC,YAAY;;;;aAInB,MAAM,CAAC,IAAI;;CAEvB,CAAA"}
@@ -0,0 +1,15 @@
1
+ interface ActionCard {
2
+ buttonText: string;
3
+ buttonUrl: string;
4
+ imageLink: string;
5
+ }
6
+ interface Card {
7
+ text: string;
8
+ action: ActionCard;
9
+ }
10
+ export interface WhatsappInteractiveMediaCarouselProps {
11
+ cards: Card[];
12
+ textMessage: string;
13
+ }
14
+ export declare const WhatsappInteractiveMediaCarousel: (props: WhatsappInteractiveMediaCarouselProps) => import("react/jsx-runtime").JSX.Element;
15
+ export {};
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { truncateText } from '../util';
3
+ import { Button } from './button';
4
+ import { Carousel } from './carousel';
5
+ import { Element } from './element';
6
+ import { WHATSAPP_MAX_BODY_CHARS, WHATSAPP_MAX_BUTTON_CHARS, WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS, } from './multichannel/whatsapp/constants';
7
+ import { Pic } from './pic';
8
+ import { Title } from './title';
9
+ /*
10
+ Reference: https://developers.facebook.com/docs/whatsapp/cloud-api/messages/interactive-media-carousel-messages/
11
+ */
12
+ export const WhatsappInteractiveMediaCarousel = (props) => {
13
+ return (_jsx(Carousel, Object.assign({ text: truncateText(props.textMessage, WHATSAPP_MAX_BODY_CHARS) }, { children: props.cards.map((card, index) => (_jsxs(Element, { children: [_jsx(Pic, { src: card.action.imageLink }), _jsx(Title, { children: truncateText(card.text, WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS) }), _jsx(Button, Object.assign({ url: card.action.buttonUrl }, { children: truncateText(card.action.buttonText, WHATSAPP_MAX_BUTTON_CHARS) }))] }, index))) })));
14
+ };
15
+ //# sourceMappingURL=whatsapp-interactive-media-carousel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whatsapp-interactive-media-carousel.js","sourceRoot":"","sources":["../../../src/components/whatsapp-interactive-media-carousel.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,qCAAqC,GACtC,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAkB/B;;EAEE;AACF,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAC9C,KAA4C,EAC5C,EAAE;IACF,OAAO,CACL,KAAC,QAAQ,kBAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,uBAAuB,CAAC,gBACrE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAChC,MAAC,OAAO,eACN,KAAC,GAAG,IAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,GAAI,EACnC,KAAC,KAAK,cACH,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,qCAAqC,CAAC,GACzD,EACR,KAAC,MAAM,kBAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,gBAC/B,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,yBAAyB,CAAC,IACzD,KAPG,KAAK,CAQT,CACX,CAAC,IACO,CACZ,CAAA;AACH,CAAC,CAAA"}
@@ -6,6 +6,9 @@ import { Message } from './message';
6
6
  const serialize = (message) => {
7
7
  return { text: message };
8
8
  };
9
+ /*
10
+ Reference: https://developers.facebook.com/docs/whatsapp/business-management-api/message-templates/media-card-carousel-templates
11
+ */
9
12
  export const WhatsappMediaCarousel = (props) => {
10
13
  const renderBrowser = () => {
11
14
  // Return a dummy message for browser
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp-media-carousel.js","sourceRoot":"","sources":["../../../src/components/whatsapp-media-carousel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAGrC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAsDnC,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,EAAE;IACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;AAC1B,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAiC,EAAE,EAAE;IACzE,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,qCAAqC;QACrC,MAAM,OAAO,GAAG,oDAAoD,CAAA;QACpE,OAAO,CACL,KAAC,OAAO,kBAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,IAAM,KAAK,IAAE,IAAI,EAAE,KAAK,CAAC,IAAI,gBAC3D,OAAO,IACA,CACX,CAAA;IACH,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;QACjC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;;YAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;aACvB;YACD,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACtC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;oBACvB,MAAM,CAAC,WAAW,GAAG,KAAK,CAAA;iBAC3B;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,OAAO,eAAe,CAAC,KAAK,CAAC,CAAA;IAC/B,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,OAAO;QACL,gFAAgF;QAChF,kCACM,KAAK,IACT,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,EACrE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAC5C,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EACxC,IAAI,EAAE,KAAK,CAAC,uBAAuB,IACnC,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,eAAe,CAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAA;AACvD,CAAC,CAAA"}
1
+ {"version":3,"file":"whatsapp-media-carousel.js","sourceRoot":"","sources":["../../../src/components/whatsapp-media-carousel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAGrC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAsDnC,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,EAAE;IACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;AAC1B,CAAC,CAAA;AAED;;EAEE;AACF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAiC,EAAE,EAAE;IACzE,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,qCAAqC;QACrC,MAAM,OAAO,GAAG,oDAAoD,CAAA;QACpE,OAAO,CACL,KAAC,OAAO,kBAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,IAAM,KAAK,IAAE,IAAI,EAAE,KAAK,CAAC,IAAI,gBAC3D,OAAO,IACA,CACX,CAAA;IACH,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;QACjC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;;YAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;aACvB;YACD,MAAA,IAAI,CAAC,OAAO,0CAAE,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACtC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;oBACvB,MAAM,CAAC,WAAW,GAAG,KAAK,CAAA;iBAC3B;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QACF,OAAO,eAAe,CAAC,KAAK,CAAC,CAAA;IAC/B,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,OAAO;QACL,gFAAgF;QAChF,kCACM,KAAK,IACT,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,EACrE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAC5C,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EACxC,IAAI,EAAE,KAAK,CAAC,uBAAuB,IACnC,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,eAAe,CAAC,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAA;AACvD,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/react",
3
- "version": "0.42.0-alpha.1",
3
+ "version": "0.42.0-alpha.4",
4
4
  "license": "MIT",
5
5
  "description": "Build Chatbots using React",
6
6
  "main": "./lib/cjs",
@@ -21,7 +21,7 @@
21
21
  "lint_core": "../../node_modules/.bin/eslint_d --cache --quiet '.*.js' '*.js' 'src/**/*.js*' --fix"
22
22
  },
23
23
  "dependencies": {
24
- "@botonic/core": "0.42.0-alpha.1",
24
+ "@botonic/core": "0.42.0-alpha.4",
25
25
  "axios": "^1.12.2",
26
26
  "emoji-picker-react": "^4.12.0",
27
27
  "lodash.merge": "^4.6.2",
@@ -35,6 +35,7 @@ export interface TextProps extends MessageProps {
35
35
 
36
36
  export interface CarouselProps extends MessageProps {
37
37
  children: React.ReactNode[]
38
+ text?: string // Only for Whatsapp Interactive Media Carousel
38
39
  }
39
40
 
40
41
  export interface Webview {
@@ -36,6 +36,10 @@ export {
36
36
  WhatsappCTAUrlButtonProps,
37
37
  WhatsappCTAUrlHeaderType,
38
38
  } from './whatsapp-cta-url-button'
39
+ export {
40
+ WhatsappInteractiveMediaCarousel,
41
+ WhatsappInteractiveMediaCarouselProps,
42
+ } from './whatsapp-interactive-media-carousel'
39
43
  export {
40
44
  WhatsappMediaCarousel,
41
45
  WhatsappMediaCarouselProps,
@@ -5,6 +5,7 @@ export const WHATSAPP_LIST_MAX_BUTTONS = 10
5
5
  export const WHATSAPP_MAX_BUTTON_CHARS = 20
6
6
  export const WHATSAPP_MAX_HEADER_CHARS = 60
7
7
  export const WHATSAPP_MAX_BODY_CHARS = 1024
8
+ export const WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS = 160
8
9
  export const WHATSAPP_MAX_FOOTER_CHARS = 60
9
10
  export const DEFAULT_WHATSAPP_MAX_BUTTON_SEPARATOR = 'More options:'
10
11
  export const MENU_BUTTON_WHATSAPP_BUTTON_LIST = 'Show options'
@@ -125,13 +125,13 @@ export const AiAgent = (props: AiAgentDebugEvent) => {
125
125
  />
126
126
 
127
127
  {props.exit && (
128
- <StyledDebugDetail $isLastItem={props.exit && !props.error}>
128
+ <StyledDebugDetail>
129
129
  <StyledDebugLabel>{LABELS.EXIT}</StyledDebugLabel>
130
130
  </StyledDebugDetail>
131
131
  )}
132
132
 
133
133
  {props.error && (
134
- <StyledDebugDetail $isLastItem={props.exit && props.error}>
134
+ <StyledDebugDetail>
135
135
  <StyledDebugLabel>{LABELS.ERROR}</StyledDebugLabel>
136
136
  </StyledDebugDetail>
137
137
  )}
@@ -17,12 +17,13 @@ export const getConditionalQueueStatusEventConfig = (
17
17
  ): DebugEventConfig => {
18
18
  const queueStatus = data.is_queue_open ? 'Open' : 'Closed'
19
19
  const agentStatus = data.is_available_agent ? 'Available' : 'Unavailable'
20
+ const statusText = `${queueStatus}${queueStatus === 'Open' ? ` (Agent ${agentStatus})` : ''}`
20
21
 
21
22
  const title = (
22
23
  <>
23
24
  Queue status checked{' '}
24
25
  <span>
25
- - {queueStatus} (Agent {agentStatus})
26
+ - {statusText} ( Queue: {data.queue_name})
26
27
  </span>
27
28
  </>
28
29
  )
@@ -96,15 +96,12 @@ export const StyledDebugContent = styled.div`
96
96
  line-height: 1.5;
97
97
  color: ${COLORS.N700};
98
98
  `
99
- interface StyledDebugDetailProps {
100
- $isLastItem?: boolean
101
- }
102
- export const StyledDebugDetail = styled.div<StyledDebugDetailProps>`
99
+
100
+ export const StyledDebugDetail = styled.div`
103
101
  display: flex;
104
102
  flex-direction: column;
105
103
  gap: 4px;
106
104
  padding: 0 28px;
107
- margin-bottom: ${({ $isLastItem }) => ($isLastItem ? '0' : '8px')};
108
105
  line-height: 1.5;
109
106
  width: 100%;
110
107
  min-width: 0;
@@ -201,7 +198,7 @@ export const StyledSeeChunksButton = styled.button`
201
198
  width: fit-content;
202
199
 
203
200
  &:hover {
204
- background-color: ${COLORS.N200};
201
+ background-color: ${COLORS.N100};
205
202
  }
206
203
  `
207
204
  interface StyledGuardrailItemProps {
@@ -232,6 +229,7 @@ export const StyledDebugContentWrapper = styled.div`
232
229
  width: 100%;
233
230
  min-width: 0;
234
231
  overflow: hidden;
232
+ margin-bottom: 8px;
235
233
 
236
234
  /* Create line from first label to last label */
237
235
  &::before {
@@ -0,0 +1,52 @@
1
+ import React from 'react'
2
+
3
+ import { truncateText } from '../util'
4
+ import { Button } from './button'
5
+ import { Carousel } from './carousel'
6
+ import { Element } from './element'
7
+ import {
8
+ WHATSAPP_MAX_BODY_CHARS,
9
+ WHATSAPP_MAX_BUTTON_CHARS,
10
+ WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS,
11
+ } from './multichannel/whatsapp/constants'
12
+ import { Pic } from './pic'
13
+ import { Title } from './title'
14
+
15
+ interface ActionCard {
16
+ buttonText: string
17
+ buttonUrl: string
18
+ imageLink: string
19
+ }
20
+
21
+ interface Card {
22
+ text: string
23
+ action: ActionCard
24
+ }
25
+
26
+ export interface WhatsappInteractiveMediaCarouselProps {
27
+ cards: Card[]
28
+ textMessage: string
29
+ }
30
+
31
+ /*
32
+ Reference: https://developers.facebook.com/docs/whatsapp/cloud-api/messages/interactive-media-carousel-messages/
33
+ */
34
+ export const WhatsappInteractiveMediaCarousel = (
35
+ props: WhatsappInteractiveMediaCarouselProps
36
+ ) => {
37
+ return (
38
+ <Carousel text={truncateText(props.textMessage, WHATSAPP_MAX_BODY_CHARS)}>
39
+ {props.cards.map((card, index) => (
40
+ <Element key={index}>
41
+ <Pic src={card.action.imageLink} />
42
+ <Title>
43
+ {truncateText(card.text, WHATSAPP_MAX_CAROUSEL_CARD_TEXT_CHARS)}
44
+ </Title>
45
+ <Button url={card.action.buttonUrl}>
46
+ {truncateText(card.action.buttonText, WHATSAPP_MAX_BUTTON_CHARS)}
47
+ </Button>
48
+ </Element>
49
+ ))}
50
+ </Carousel>
51
+ )
52
+ }
@@ -61,6 +61,9 @@ const serialize = (message: string) => {
61
61
  return { text: message }
62
62
  }
63
63
 
64
+ /*
65
+ Reference: https://developers.facebook.com/docs/whatsapp/business-management-api/message-templates/media-card-carousel-templates
66
+ */
64
67
  export const WhatsappMediaCarousel = (props: WhatsappMediaCarouselProps) => {
65
68
  const renderBrowser = () => {
66
69
  // Return a dummy message for browser