@bikdotai/bik-component-library 0.0.828 → 0.0.829-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),c=require("react"),l=require("../../../constants/Theme.js"),R=require("../../../hooks/useWindowSize.js"),g=require("../GiftedChat/types.js"),p=require("../GiftedChat/utils.js"),T=require("./types.js"),P=n=>n&&typeof n=="object"&&"default"in n?n:{default:n},q=P(c),B=n=>{const{currentMessage:d,position:s,renderMessageText:C,renderTicks:x,renderTime:v,renderCustomView:y,isCustomViewBottom:h,isUnsatisfactoryMessageFn:b,messagesGroupedByAiTraceId:M,onPress:j,containerStyle:t,bubbleStyles:i,appType:I=T.GiftedChatAppType.Bik}=n,u=R.useWindowSize(),e=d,r=I===T.GiftedChatAppType.Manifest,m=c.useMemo(()=>e.category===p.Constants.ChatActivity.Category.ACTIVITY&&e.activityType===p.Constants.ChatActivity.Type.PRIVATE_NOTE,[e.category,e.activityType]),A=c.useMemo(()=>{const[S,f]=p.isStringifiedArray(e?.message);return S&&f&&Array.isArray(f)},[e?.message]),k=e?.channelId===g.MESSAGE_CHANNELS.SMTP||e?.channelName===g.MESSAGE_CHANNELS.SMTP,E=c.useMemo(()=>{const S={borderRadius:8,minHeight:20,margin:0,flexGrow:u?1:0,width:"100%"},f=e?.channelId===g.MESSAGE_CHANNELS.GMAIL||e?.channelName===g.MESSAGE_CHANNELS.GMAIL;let a={};if(r)return s==="left"?a=i&&typeof i.left=="object"?i.left:{}:a=i&&typeof i.right=="object"?i.right:{},{...a};if(s==="left")a={...u||f||k?{maxWidth:"100%"}:{},...m?{background:l.COLORS.background.warning.light}:{backgroundColor:e?.isPrivateMail?l.COLORS.background.blue.light:l.COLORS.background.base}};else{const w=b&&b({aiTraceId:e.eventProperties?.aiTraceId,messagesGroupedByAiTraceId:M});a={backgroundColor:e.status==="failed"||w?l.COLORS.background.negative.light:l.COLORS.background.brandUltraLight,...m?{background:l.COLORS.background.warning.light}:{},...!u&&A?{maxWidth:500}:{}}}const G=i&&typeof i=="object"?"left"in i||"right"in i?s==="left"?i.left??{}:i.right??{}:i:{};return{...S,...a,...G}},[e?.channelId,e?.channelName,e?.meta?.aiUsed,e?.status,e?.eventProperties?.aiTraceId,s,u,m,A,b,M,e?.isPrivateMail,i,r]),O=c.useCallback(()=>o.jsxs("div",{children:[!h&&y?.(n),C?.(n),h&&y?.(n)]}),[h,y,C,n]),L=c.useMemo(()=>!r||typeof t!="object"?{}:s==="left"&&"left"in t&&t.left&&typeof t.left=="object"?t.left:s==="right"&&"right"in t&&t.right&&typeof t.right=="object"?t.right:{},[r,t,s]),N=!r&&t&&typeof t=="object"?"left"in t||"right"in t?s==="left"?t.left??{}:t.right??{}:t:{};return o.jsx("div",{style:{display:"flex",marginTop:r?0:6,marginBottom:r?0:d?.messageInformation?.reactions?.length>0?24:6,flexGrow:u?1:0,...r?{alignItems:"flex-end",...s==="right"?{cursor:"pointer"}:{}}:{},...L,...N},...r?{onClick:j}:{},children:o.jsx("div",{style:E,children:o.jsxs("div",{children:[o.jsx("div",{id:d.chatActivityId||`message-${d.psqlId}`,children:O()}),o.jsxs("div",{style:{display:"flex",flexDirection:"row",justifyContent:"flex-end"},children:[v?.(n),x?.(d)]})]})})})},_=q.default.memo(B);exports.Bubble=_;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("react/jsx-runtime"),c=require("react"),l=require("../../../constants/Theme.js"),P=require("../../../hooks/useWindowSize.js"),f=require("../GiftedChat/types.js"),M=require("../GiftedChat/utils.js"),v=require("./types.js"),q=n=>n&&typeof n=="object"&&"default"in n?n:{default:n},B=q(c),_=n=>{const{currentMessage:d,position:r,renderMessageText:A,renderTicks:j,renderTime:I,renderCustomView:g,isCustomViewBottom:y,isUnsatisfactoryMessageFn:h,messagesGroupedByAiTraceId:T,onPress:O,containerStyle:t,bubbleStyles:i,appType:k=v.GiftedChatAppType.Bik}=n,u=P.useWindowSize(),e=d,s=k===v.GiftedChatAppType.Manifest,b=c.useMemo(()=>e.category===M.Constants.ChatActivity.Category.ACTIVITY&&e.activityType===M.Constants.ChatActivity.Type.PRIVATE_NOTE,[e.category,e.activityType]),x=c.useMemo(()=>{const[C,a]=M.isStringifiedArray(e?.message);return C&&a&&Array.isArray(a)},[e?.message]),m=e?.channelId===f.MESSAGE_CHANNELS.SMTP||e?.channelName===f.MESSAGE_CHANNELS.SMTP,S=e?.channelId===f.MESSAGE_CHANNELS.GMAIL||e?.channelName===f.MESSAGE_CHANNELS.GMAIL,p=u&&!s&&!m&&!S,E=c.useMemo(()=>{const C={borderRadius:8,minHeight:20,margin:0,flexGrow:p?0:u?1:0,width:"100%"};let a={};if(s)return r==="left"?a=i&&typeof i.left=="object"?i.left:{}:a=i&&typeof i.right=="object"?i.right:{},{...a};if(r==="left")a={...S||m?{maxWidth:"100%"}:{},...b?{background:l.COLORS.background.warning.light}:{backgroundColor:e?.isPrivateMail?l.COLORS.background.blue.light:l.COLORS.background.base}};else{const R=h&&h({aiTraceId:e.eventProperties?.aiTraceId,messagesGroupedByAiTraceId:T});a={backgroundColor:e.status==="failed"||R?l.COLORS.background.negative.light:l.COLORS.background.brandUltraLight,...b?{background:l.COLORS.background.warning.light}:{},...!u&&x?{maxWidth:500}:{}}}const w=i&&typeof i=="object"?"left"in i||"right"in i?r==="left"?i.left??{}:i.right??{}:i:{};return{...C,...a,...w}},[e?.channelId,e?.channelName,e?.meta?.aiUsed,e?.status,e?.eventProperties?.aiTraceId,r,u,b,x,h,T,e?.isPrivateMail,i,s,p,m,S]),L=c.useCallback(()=>o.jsxs("div",{children:[!y&&g?.(n),A?.(n),y&&g?.(n)]}),[y,g,A,n]),N=c.useMemo(()=>!s||typeof t!="object"?{}:r==="left"&&"left"in t&&t.left&&typeof t.left=="object"?t.left:r==="right"&&"right"in t&&t.right&&typeof t.right=="object"?t.right:{},[s,t,r]),G=!s&&t&&typeof t=="object"?"left"in t||"right"in t?r==="left"?t.left??{}:t.right??{}:t:{};return o.jsx("div",{style:{display:"flex",marginTop:s?0:6,marginBottom:s?0:d?.messageInformation?.reactions?.length>0?24:6,flexGrow:p?0:u?1:0,...s?{alignItems:"flex-end",...r==="right"?{cursor:"pointer"}:{}}:{},...N,...G},...s?{onClick:O}:{},children:o.jsx("div",{style:E,children:o.jsxs("div",{children:[o.jsx("div",{id:d.chatActivityId||`message-${d.psqlId}`,children:L()}),o.jsxs("div",{style:{display:"flex",flexDirection:"row",justifyContent:"flex-end"},children:[I?.(n),j?.(d)]})]})})})},H=B.default.memo(_);exports.Bubble=H;
2
2
  //# sourceMappingURL=Bubble.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Bubble.js","sources":["../../../../../src/components/BikGiftedChat/Bubble/Bubble.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\nimport { COLORS } from '../../../constants/Theme';\nimport { useWindowSize } from '../../../hooks/useWindowSize';\nimport { MESSAGE_CHANNELS } from '../GiftedChat/types';\nimport { Constants, isStringifiedArray } from '../GiftedChat/utils';\nimport { IMessage } from '../types';\nimport { BubbleProps, GiftedChatAppType } from './types';\n\nconst BubbleComponent = <TMessage extends IMessage = IMessage>(\n\tprops: BubbleProps<TMessage>,\n): React.ReactElement => {\n\tconst {\n\t\tcurrentMessage,\n\t\tposition,\n\t\trenderMessageText,\n\t\trenderTicks,\n\t\trenderTime,\n\t\trenderCustomView,\n\t\tisCustomViewBottom,\n\t\tisUnsatisfactoryMessageFn,\n\t\tmessagesGroupedByAiTraceId,\n\t\tonPress,\n\t\tcontainerStyle,\n\t\tbubbleStyles,\n\t\tappType = GiftedChatAppType.Bik,\n\t} = props;\n\n\tconst isMobile = useWindowSize();\n\tconst message = currentMessage as any;\n\tconst isManifestApp = appType === GiftedChatAppType.Manifest;\n\n\t// Check if message is a private note\n\tconst isPrivateNote = useMemo(\n\t\t() =>\n\t\t\tmessage.category === Constants.ChatActivity.Category.ACTIVITY &&\n\t\t\tmessage.activityType === Constants.ChatActivity.Type.PRIVATE_NOTE,\n\t\t[message.category, message.activityType],\n\t);\n\n\t// Check if message is a carousel (array of items)\n\tconst isCarouselMessage = useMemo(() => {\n\t\tconst [parsedSuccessfully, parsedMessage] = isStringifiedArray(\n\t\t\tmessage?.message,\n\t\t);\n\t\treturn parsedSuccessfully && parsedMessage && Array.isArray(parsedMessage);\n\t}, [message?.message]);\n\tconst isSmtp =\n\t\tmessage?.channelId === MESSAGE_CHANNELS.SMTP ||\n\t\tmessage?.channelName === MESSAGE_CHANNELS.SMTP;\n\n\t// Generates wrapper styles for the message bubble\n\t// Handles position-based styling, channel-specific layouts, and message states\n\tconst wrapperStyles = useMemo((): React.CSSProperties => {\n\t\tconst baseStyles: React.CSSProperties = {\n\t\t\tborderRadius: 8,\n\t\t\tminHeight: 20,\n\t\t\tmargin: 0,\n\t\t\tflexGrow: isMobile ? 1 : 0,\n\t\t\twidth: '100%',\n\t\t};\n\n\t\t// Check if message is from email channels\n\t\tconst isGmail =\n\t\t\tmessage?.channelId === MESSAGE_CHANNELS.GMAIL ||\n\t\t\tmessage?.channelName === MESSAGE_CHANNELS.GMAIL;\n\n\t\tlet dynamicStyles: React.CSSProperties = {};\n\n\t\tif (isManifestApp) {\n\t\t\tif (position === 'left') {\n\t\t\t\tdynamicStyles =\n\t\t\t\t\tbubbleStyles && typeof bubbleStyles.left === 'object'\n\t\t\t\t\t\t? bubbleStyles.left\n\t\t\t\t\t\t: {};\n\t\t\t} else {\n\t\t\t\tdynamicStyles =\n\t\t\t\t\tbubbleStyles && typeof bubbleStyles.right === 'object'\n\t\t\t\t\t\t? bubbleStyles.right\n\t\t\t\t\t\t: {};\n\t\t\t}\n\t\t\treturn { ...dynamicStyles };\n\t\t} else {\n\t\t\tif (position === 'left') {\n\t\t\t\tdynamicStyles = {\n\t\t\t\t\t...(isMobile || isGmail || isSmtp ? { maxWidth: '100%' } : {}),\n\t\t\t\t\t...(isPrivateNote\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tbackground: COLORS.background.warning.light,\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: {\n\t\t\t\t\t\t\t\tbackgroundColor: message?.isPrivateMail\n\t\t\t\t\t\t\t\t\t? COLORS.background.blue.light\n\t\t\t\t\t\t\t\t\t: COLORS.background.base,\n\t\t\t\t\t\t }),\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tconst isUnsatisfactory =\n\t\t\t\t\tisUnsatisfactoryMessageFn &&\n\t\t\t\t\tisUnsatisfactoryMessageFn({\n\t\t\t\t\t\taiTraceId: message.eventProperties?.aiTraceId,\n\t\t\t\t\t\tmessagesGroupedByAiTraceId,\n\t\t\t\t\t});\n\n\t\t\t\tdynamicStyles = {\n\t\t\t\t\tbackgroundColor:\n\t\t\t\t\t\tmessage.status === 'failed' || isUnsatisfactory\n\t\t\t\t\t\t\t? COLORS.background.negative.light\n\t\t\t\t\t\t\t: COLORS.background.brandUltraLight,\n\t\t\t\t\t...(isPrivateNote\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tbackground: COLORS.background.warning.light,\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: {}),\n\t\t\t\t\t...(!isMobile && isCarouselMessage ? { maxWidth: 500 } : {}),\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\tconst extraBubbleStyles: React.CSSProperties =\n\t\t\tbubbleStyles && typeof bubbleStyles === 'object'\n\t\t\t\t? 'left' in bubbleStyles || 'right' in bubbleStyles\n\t\t\t\t\t? position === 'left'\n\t\t\t\t\t\t? (bubbleStyles as { left?: React.CSSProperties }).left ?? {}\n\t\t\t\t\t\t: (bubbleStyles as { right?: React.CSSProperties }).right ?? {}\n\t\t\t\t\t: (bubbleStyles as React.CSSProperties)\n\t\t\t\t: {};\n\n\t\treturn { ...baseStyles, ...dynamicStyles, ...extraBubbleStyles };\n\t}, [\n\t\tmessage?.channelId,\n\t\tmessage?.channelName,\n\t\tmessage?.meta?.aiUsed,\n\t\tmessage?.status,\n\t\tmessage?.eventProperties?.aiTraceId,\n\t\tposition,\n\t\tisMobile,\n\t\tisPrivateNote,\n\t\tisCarouselMessage,\n\t\tisUnsatisfactoryMessageFn,\n\t\tmessagesGroupedByAiTraceId,\n\t\tmessage?.isPrivateMail,\n\t\tbubbleStyles,\n\t\tisManifestApp,\n\t]);\n\n\t// Renders the content of the message bubble\n\t// Handles custom views and message text in the correct order\n\tconst renderContent = useCallback(() => {\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t{!isCustomViewBottom && renderCustomView?.(props)}\n\n\t\t\t\t{renderMessageText?.(props)}\n\n\t\t\t\t{isCustomViewBottom && renderCustomView?.(props)}\n\t\t\t</div>\n\t\t);\n\t}, [isCustomViewBottom, renderCustomView, renderMessageText, props]);\n\n\tconst manifestContainerStyle = useMemo(() => {\n\t\tif (!isManifestApp || typeof containerStyle !== 'object') return {};\n\t\tif (\n\t\t\tposition === 'left' &&\n\t\t\t'left' in containerStyle &&\n\t\t\tcontainerStyle.left &&\n\t\t\ttypeof containerStyle.left === 'object'\n\t\t) {\n\t\t\treturn containerStyle.left;\n\t\t}\n\t\tif (\n\t\t\tposition === 'right' &&\n\t\t\t'right' in containerStyle &&\n\t\t\tcontainerStyle.right &&\n\t\t\ttypeof containerStyle.right === 'object'\n\t\t) {\n\t\t\treturn containerStyle.right;\n\t\t}\n\t\treturn {};\n\t}, [isManifestApp, containerStyle, position]);\n\n\tconst extraContainerStyle: React.CSSProperties =\n\t\t!isManifestApp && containerStyle && typeof containerStyle === 'object'\n\t\t\t? 'left' in containerStyle || 'right' in containerStyle\n\t\t\t\t? position === 'left'\n\t\t\t\t\t? (containerStyle as { left?: React.CSSProperties }).left ?? {}\n\t\t\t\t\t: (containerStyle as { right?: React.CSSProperties }).right ?? {}\n\t\t\t\t: (containerStyle as React.CSSProperties)\n\t\t\t: {};\n\n\treturn (\n\t\t<div\n\t\t\tstyle={{\n\t\t\t\tdisplay: 'flex',\n\t\t\t\tmarginTop: isManifestApp ? 0 : 6,\n\t\t\t\tmarginBottom: isManifestApp\n\t\t\t\t\t? 0\n\t\t\t\t\t: currentMessage?.['messageInformation']?.reactions?.length > 0\n\t\t\t\t\t? 24\n\t\t\t\t\t: 6,\n\t\t\t\tflexGrow: isMobile ? 1 : 0,\n\t\t\t\t...(isManifestApp\n\t\t\t\t\t? {\n\t\t\t\t\t\t\talignItems: 'flex-end',\n\t\t\t\t\t\t\t...(position === 'right' ? { cursor: 'pointer' } : {}),\n\t\t\t\t\t }\n\t\t\t\t\t: {}),\n\t\t\t\t...manifestContainerStyle,\n\t\t\t\t...extraContainerStyle,\n\t\t\t}}\n\t\t\t{...(isManifestApp ? { onClick: onPress } : {})}\n\t\t>\n\t\t\t<div style={wrapperStyles}>\n\t\t\t\t<div>\n\t\t\t\t\t{/* Message content */}\n\t\t\t\t\t<div\n\t\t\t\t\t\tid={\n\t\t\t\t\t\t\tcurrentMessage['chatActivityId'] ||\n\t\t\t\t\t\t\t`message-${currentMessage['psqlId']}`\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{renderContent()}\n\t\t\t\t\t</div>\n\n\t\t\t\t\t{/* Message metadata (time and status) — bottom bar, time/ticks\n\t\t\t\t\t right-aligned. The 8px gap above comes from the time/ticks\n\t\t\t\t\t rows' own top padding. */}\n\t\t\t\t\t<div\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\tflexDirection: 'row',\n\t\t\t\t\t\t\tjustifyContent: 'flex-end',\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{renderTime?.(props)}\n\t\t\t\t\t\t{renderTicks?.(currentMessage)}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\n// Export memoized version for performance\nexport const Bubble = React.memo(BubbleComponent) as typeof BubbleComponent;\n\nexport default Bubble;\n"],"names":["BubbleComponent","props","currentMessage","position","renderMessageText","renderTicks","renderTime","renderCustomView","isCustomViewBottom","isUnsatisfactoryMessageFn","messagesGroupedByAiTraceId","onPress","containerStyle","bubbleStyles","appType","GiftedChatAppType","isMobile","useWindowSize","message","isManifestApp","isPrivateNote","useMemo","Constants","isCarouselMessage","parsedSuccessfully","parsedMessage","isStringifiedArray","isSmtp","MESSAGE_CHANNELS","wrapperStyles","baseStyles","isGmail","dynamicStyles","COLORS","isUnsatisfactory","extraBubbleStyles","renderContent","useCallback","manifestContainerStyle","extraContainerStyle","jsx","jsxs","Bubble","React"],"mappings":"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"}
1
+ {"version":3,"file":"Bubble.js","sources":["../../../../../src/components/BikGiftedChat/Bubble/Bubble.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\nimport { COLORS } from '../../../constants/Theme';\nimport { useWindowSize } from '../../../hooks/useWindowSize';\nimport { MESSAGE_CHANNELS } from '../GiftedChat/types';\nimport { Constants, isStringifiedArray } from '../GiftedChat/utils';\nimport { IMessage } from '../types';\nimport { BubbleProps, GiftedChatAppType } from './types';\n\nconst BubbleComponent = <TMessage extends IMessage = IMessage>(\n\tprops: BubbleProps<TMessage>,\n): React.ReactElement => {\n\tconst {\n\t\tcurrentMessage,\n\t\tposition,\n\t\trenderMessageText,\n\t\trenderTicks,\n\t\trenderTime,\n\t\trenderCustomView,\n\t\tisCustomViewBottom,\n\t\tisUnsatisfactoryMessageFn,\n\t\tmessagesGroupedByAiTraceId,\n\t\tonPress,\n\t\tcontainerStyle,\n\t\tbubbleStyles,\n\t\tappType = GiftedChatAppType.Bik,\n\t} = props;\n\n\tconst isMobile = useWindowSize();\n\tconst message = currentMessage as any;\n\tconst isManifestApp = appType === GiftedChatAppType.Manifest;\n\n\t// Check if message is a private note\n\tconst isPrivateNote = useMemo(\n\t\t() =>\n\t\t\tmessage.category === Constants.ChatActivity.Category.ACTIVITY &&\n\t\t\tmessage.activityType === Constants.ChatActivity.Type.PRIVATE_NOTE,\n\t\t[message.category, message.activityType],\n\t);\n\n\t// Check if message is a carousel (array of items)\n\tconst isCarouselMessage = useMemo(() => {\n\t\tconst [parsedSuccessfully, parsedMessage] = isStringifiedArray(\n\t\t\tmessage?.message,\n\t\t);\n\t\treturn parsedSuccessfully && parsedMessage && Array.isArray(parsedMessage);\n\t}, [message?.message]);\n\tconst isSmtp =\n\t\tmessage?.channelId === MESSAGE_CHANNELS.SMTP ||\n\t\tmessage?.channelName === MESSAGE_CHANNELS.SMTP;\n\tconst isGmail =\n\t\tmessage?.channelId === MESSAGE_CHANNELS.GMAIL ||\n\t\tmessage?.channelName === MESSAGE_CHANNELS.GMAIL;\n\n\t// CRM-4796/4797: on mobile, regular chat bubbles hug their content so the\n\t// agent(right)/customer(left) alignment and the bottom-right time are\n\t// visible. Email (SMTP/Gmail) bubbles are excluded — they stay full-width\n\t// and left-aligned with the time shown in the mail header.\n\tconst hugContentOnMobile = isMobile && !isManifestApp && !isSmtp && !isGmail;\n\n\t// Generates wrapper styles for the message bubble\n\t// Handles position-based styling, channel-specific layouts, and message states\n\tconst wrapperStyles = useMemo((): React.CSSProperties => {\n\t\tconst baseStyles: React.CSSProperties = {\n\t\t\tborderRadius: 8,\n\t\t\tminHeight: 20,\n\t\t\tmargin: 0,\n\t\t\tflexGrow: hugContentOnMobile ? 0 : isMobile ? 1 : 0,\n\t\t\twidth: '100%',\n\t\t};\n\n\t\tlet dynamicStyles: React.CSSProperties = {};\n\n\t\tif (isManifestApp) {\n\t\t\tif (position === 'left') {\n\t\t\t\tdynamicStyles =\n\t\t\t\t\tbubbleStyles && typeof bubbleStyles.left === 'object'\n\t\t\t\t\t\t? bubbleStyles.left\n\t\t\t\t\t\t: {};\n\t\t\t} else {\n\t\t\t\tdynamicStyles =\n\t\t\t\t\tbubbleStyles && typeof bubbleStyles.right === 'object'\n\t\t\t\t\t\t? bubbleStyles.right\n\t\t\t\t\t\t: {};\n\t\t\t}\n\t\t\treturn { ...dynamicStyles };\n\t\t} else {\n\t\t\tif (position === 'left') {\n\t\t\t\tdynamicStyles = {\n\t\t\t\t\t// CRM-4796: non-email mobile bubbles hug content (no full-width),\n\t\t\t\t\t// so only email/desktop-email keep maxWidth 100%.\n\t\t\t\t\t...(isGmail || isSmtp ? { maxWidth: '100%' } : {}),\n\t\t\t\t\t...(isPrivateNote\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tbackground: COLORS.background.warning.light,\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: {\n\t\t\t\t\t\t\t\tbackgroundColor: message?.isPrivateMail\n\t\t\t\t\t\t\t\t\t? COLORS.background.blue.light\n\t\t\t\t\t\t\t\t\t: COLORS.background.base,\n\t\t\t\t\t\t }),\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tconst isUnsatisfactory =\n\t\t\t\t\tisUnsatisfactoryMessageFn &&\n\t\t\t\t\tisUnsatisfactoryMessageFn({\n\t\t\t\t\t\taiTraceId: message.eventProperties?.aiTraceId,\n\t\t\t\t\t\tmessagesGroupedByAiTraceId,\n\t\t\t\t\t});\n\n\t\t\t\tdynamicStyles = {\n\t\t\t\t\tbackgroundColor:\n\t\t\t\t\t\tmessage.status === 'failed' || isUnsatisfactory\n\t\t\t\t\t\t\t? COLORS.background.negative.light\n\t\t\t\t\t\t\t: COLORS.background.brandUltraLight,\n\t\t\t\t\t...(isPrivateNote\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tbackground: COLORS.background.warning.light,\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: {}),\n\t\t\t\t\t...(!isMobile && isCarouselMessage ? { maxWidth: 500 } : {}),\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\tconst extraBubbleStyles: React.CSSProperties =\n\t\t\tbubbleStyles && typeof bubbleStyles === 'object'\n\t\t\t\t? 'left' in bubbleStyles || 'right' in bubbleStyles\n\t\t\t\t\t? position === 'left'\n\t\t\t\t\t\t? (bubbleStyles as { left?: React.CSSProperties }).left ?? {}\n\t\t\t\t\t\t: (bubbleStyles as { right?: React.CSSProperties }).right ?? {}\n\t\t\t\t\t: (bubbleStyles as React.CSSProperties)\n\t\t\t\t: {};\n\n\t\treturn { ...baseStyles, ...dynamicStyles, ...extraBubbleStyles };\n\t}, [\n\t\tmessage?.channelId,\n\t\tmessage?.channelName,\n\t\tmessage?.meta?.aiUsed,\n\t\tmessage?.status,\n\t\tmessage?.eventProperties?.aiTraceId,\n\t\tposition,\n\t\tisMobile,\n\t\tisPrivateNote,\n\t\tisCarouselMessage,\n\t\tisUnsatisfactoryMessageFn,\n\t\tmessagesGroupedByAiTraceId,\n\t\tmessage?.isPrivateMail,\n\t\tbubbleStyles,\n\t\tisManifestApp,\n\t\thugContentOnMobile,\n\t\tisSmtp,\n\t\tisGmail,\n\t]);\n\n\t// Renders the content of the message bubble\n\t// Handles custom views and message text in the correct order\n\tconst renderContent = useCallback(() => {\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t{!isCustomViewBottom && renderCustomView?.(props)}\n\n\t\t\t\t{renderMessageText?.(props)}\n\n\t\t\t\t{isCustomViewBottom && renderCustomView?.(props)}\n\t\t\t</div>\n\t\t);\n\t}, [isCustomViewBottom, renderCustomView, renderMessageText, props]);\n\n\tconst manifestContainerStyle = useMemo(() => {\n\t\tif (!isManifestApp || typeof containerStyle !== 'object') return {};\n\t\tif (\n\t\t\tposition === 'left' &&\n\t\t\t'left' in containerStyle &&\n\t\t\tcontainerStyle.left &&\n\t\t\ttypeof containerStyle.left === 'object'\n\t\t) {\n\t\t\treturn containerStyle.left;\n\t\t}\n\t\tif (\n\t\t\tposition === 'right' &&\n\t\t\t'right' in containerStyle &&\n\t\t\tcontainerStyle.right &&\n\t\t\ttypeof containerStyle.right === 'object'\n\t\t) {\n\t\t\treturn containerStyle.right;\n\t\t}\n\t\treturn {};\n\t}, [isManifestApp, containerStyle, position]);\n\n\tconst extraContainerStyle: React.CSSProperties =\n\t\t!isManifestApp && containerStyle && typeof containerStyle === 'object'\n\t\t\t? 'left' in containerStyle || 'right' in containerStyle\n\t\t\t\t? position === 'left'\n\t\t\t\t\t? (containerStyle as { left?: React.CSSProperties }).left ?? {}\n\t\t\t\t\t: (containerStyle as { right?: React.CSSProperties }).right ?? {}\n\t\t\t\t: (containerStyle as React.CSSProperties)\n\t\t\t: {};\n\n\treturn (\n\t\t<div\n\t\t\tstyle={{\n\t\t\t\tdisplay: 'flex',\n\t\t\t\tmarginTop: isManifestApp ? 0 : 6,\n\t\t\t\tmarginBottom: isManifestApp\n\t\t\t\t\t? 0\n\t\t\t\t\t: currentMessage?.['messageInformation']?.reactions?.length > 0\n\t\t\t\t\t? 24\n\t\t\t\t\t: 6,\n\t\t\t\tflexGrow: hugContentOnMobile ? 0 : isMobile ? 1 : 0,\n\t\t\t\t...(isManifestApp\n\t\t\t\t\t? {\n\t\t\t\t\t\t\talignItems: 'flex-end',\n\t\t\t\t\t\t\t...(position === 'right' ? { cursor: 'pointer' } : {}),\n\t\t\t\t\t }\n\t\t\t\t\t: {}),\n\t\t\t\t...manifestContainerStyle,\n\t\t\t\t...extraContainerStyle,\n\t\t\t}}\n\t\t\t{...(isManifestApp ? { onClick: onPress } : {})}\n\t\t>\n\t\t\t<div style={wrapperStyles}>\n\t\t\t\t<div>\n\t\t\t\t\t{/* Message content */}\n\t\t\t\t\t<div\n\t\t\t\t\t\tid={\n\t\t\t\t\t\t\tcurrentMessage['chatActivityId'] ||\n\t\t\t\t\t\t\t`message-${currentMessage['psqlId']}`\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{renderContent()}\n\t\t\t\t\t</div>\n\n\t\t\t\t\t{/* Message metadata (time and status) — bottom bar, time/ticks\n\t\t\t\t\t right-aligned. The 8px gap above comes from the time/ticks\n\t\t\t\t\t rows' own top padding. */}\n\t\t\t\t\t<div\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\tflexDirection: 'row',\n\t\t\t\t\t\t\tjustifyContent: 'flex-end',\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{renderTime?.(props)}\n\t\t\t\t\t\t{renderTicks?.(currentMessage)}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\n// Export memoized version for performance\nexport const Bubble = React.memo(BubbleComponent) as typeof BubbleComponent;\n\nexport default Bubble;\n"],"names":["BubbleComponent","props","currentMessage","position","renderMessageText","renderTicks","renderTime","renderCustomView","isCustomViewBottom","isUnsatisfactoryMessageFn","messagesGroupedByAiTraceId","onPress","containerStyle","bubbleStyles","appType","GiftedChatAppType","isMobile","useWindowSize","message","isManifestApp","isPrivateNote","useMemo","Constants","isCarouselMessage","parsedSuccessfully","parsedMessage","isStringifiedArray","isSmtp","MESSAGE_CHANNELS","isGmail","hugContentOnMobile","wrapperStyles","baseStyles","dynamicStyles","COLORS","isUnsatisfactory","extraBubbleStyles","renderContent","useCallback","manifestContainerStyle","extraContainerStyle","jsx","jsxs","Bubble","React"],"mappings":"6XAQMA,EACLC,GACwB,CACxB,KAAM,CACL,eAAAC,EACA,SAAAC,EACA,kBAAAC,EACA,YAAAC,EACA,WAAAC,EACA,iBAAAC,EACA,mBAAAC,EACA,0BAAAC,EACA,2BAAAC,EACA,QAAAC,EACA,eAAAC,EACA,aAAAC,EACA,QAAAC,EAAUC,EAAAA,kBAAkB,GAAA,EACzBd,EAEEe,EAAWC,EAAAA,cAAA,EACXC,EAAUhB,EACViB,EAAgBL,IAAYC,EAAAA,kBAAkB,SAG9CK,EAAgBC,EAAAA,QACrB,IACCH,EAAQ,WAAaI,EAAAA,UAAU,aAAa,SAAS,UACrDJ,EAAQ,eAAiBI,EAAAA,UAAU,aAAa,KAAK,aACtD,CAACJ,EAAQ,SAAUA,EAAQ,YAAY,CAAA,EAIlCK,EAAoBF,EAAAA,QAAQ,IAAM,CACvC,KAAM,CAACG,EAAoBC,CAAa,EAAIC,EAAAA,mBAC3CR,GAAS,OAAA,EAEV,OAAOM,GAAsBC,GAAiB,MAAM,QAAQA,CAAa,CAC1E,EAAG,CAACP,GAAS,OAAO,CAAC,EACfS,EACLT,GAAS,YAAcU,EAAAA,iBAAiB,MACxCV,GAAS,cAAgBU,EAAAA,iBAAiB,KACrCC,EACLX,GAAS,YAAcU,EAAAA,iBAAiB,OACxCV,GAAS,cAAgBU,EAAAA,iBAAiB,MAMrCE,EAAqBd,GAAY,CAACG,GAAiB,CAACQ,GAAU,CAACE,EAI/DE,EAAgBV,EAAAA,QAAQ,IAA2B,CACxD,MAAMW,EAAkC,CACvC,aAAc,EACd,UAAW,GACX,OAAQ,EACR,SAAUF,EAAqB,EAAId,EAAW,EAAI,EAClD,MAAO,MAAA,EAGR,IAAIiB,EAAqC,CAAA,EAEzC,GAAId,EACH,OAAIhB,IAAa,OAChB8B,EACCpB,GAAgB,OAAOA,EAAa,MAAS,SAC1CA,EAAa,KACb,CAAA,EAEJoB,EACCpB,GAAgB,OAAOA,EAAa,OAAU,SAC3CA,EAAa,MACb,CAAA,EAEE,CAAE,GAAGoB,CAAA,EAEZ,GAAI9B,IAAa,OAChB8B,EAAgB,CAGf,GAAIJ,GAAWF,EAAS,CAAE,SAAU,MAAA,EAAW,CAAA,EAC/C,GAAIP,EACD,CACA,WAAYc,EAAAA,OAAO,WAAW,QAAQ,KAAA,EAEtC,CACA,gBAAiBhB,GAAS,cACvBgB,EAAAA,OAAO,WAAW,KAAK,MACvBA,EAAAA,OAAO,WAAW,IAAA,CACrB,MAEE,CACN,MAAMC,EACL1B,GACAA,EAA0B,CACzB,UAAWS,EAAQ,iBAAiB,UACpC,2BAAAR,CAAA,CACA,EAEFuB,EAAgB,CACf,gBACCf,EAAQ,SAAW,UAAYiB,EAC5BD,EAAAA,OAAO,WAAW,SAAS,MAC3BA,EAAAA,OAAO,WAAW,gBACtB,GAAId,EACD,CACA,WAAYc,EAAAA,OAAO,WAAW,QAAQ,KAAA,EAEtC,CAAA,EACH,GAAI,CAAClB,GAAYO,EAAoB,CAAE,SAAU,GAAA,EAAQ,CAAA,CAAC,CAE5D,CAED,MAAMa,EACLvB,GAAgB,OAAOA,GAAiB,SACrC,SAAUA,GAAgB,UAAWA,EACpCV,IAAa,OACXU,EAAgD,MAAQ,CAAA,EACxDA,EAAiD,OAAS,CAAA,EAC3DA,EACF,CAAA,EAEJ,MAAO,CAAE,GAAGmB,EAAY,GAAGC,EAAe,GAAGG,CAAA,CAC9C,EAAG,CACFlB,GAAS,UACTA,GAAS,YACTA,GAAS,MAAM,OACfA,GAAS,OACTA,GAAS,iBAAiB,UAC1Bf,EACAa,EACAI,EACAG,EACAd,EACAC,EACAQ,GAAS,cACTL,EACAM,EACAW,EACAH,EACAE,CAAA,CACA,EAIKQ,EAAgBC,EAAAA,YAAY,WAE/B,MAAA,CACC,SAAA,CAAA,CAAC9B,GAAsBD,IAAmBN,CAAK,EAE/CG,IAAoBH,CAAK,EAEzBO,GAAsBD,IAAmBN,CAAK,CAAA,EAChD,EAEC,CAACO,EAAoBD,EAAkBH,EAAmBH,CAAK,CAAC,EAE7DsC,EAAyBlB,EAAAA,QAAQ,IAClC,CAACF,GAAiB,OAAOP,GAAmB,SAAiB,CAAA,EAEhET,IAAa,QACb,SAAUS,GACVA,EAAe,MACf,OAAOA,EAAe,MAAS,SAExBA,EAAe,KAGtBT,IAAa,SACb,UAAWS,GACXA,EAAe,OACf,OAAOA,EAAe,OAAU,SAEzBA,EAAe,MAEhB,CAAA,EACL,CAACO,EAAeP,EAAgBT,CAAQ,CAAC,EAEtCqC,EACL,CAACrB,GAAiBP,GAAkB,OAAOA,GAAmB,SAC3D,SAAUA,GAAkB,UAAWA,EACtCT,IAAa,OACXS,EAAkD,MAAQ,CAAA,EAC1DA,EAAmD,OAAS,GAC7DA,EACF,CAAA,EAEJ,OACC6B,EAAAA,IAAC,MAAA,CACA,MAAO,CACN,QAAS,OACT,UAAWtB,EAAgB,EAAI,EAC/B,aAAcA,EACX,EACAjB,GAAiB,oBAAuB,WAAW,OAAS,EAC5D,GACA,EACH,SAAU4B,EAAqB,EAAId,EAAW,EAAI,EAClD,GAAIG,EACD,CACA,WAAY,WACZ,GAAIhB,IAAa,QAAU,CAAE,OAAQ,SAAA,EAAc,CAAA,CAAC,EAEpD,CAAA,EACH,GAAGoC,EACH,GAAGC,CAAA,EAEH,GAAIrB,EAAgB,CAAE,QAASR,CAAA,EAAY,CAAA,EAE5C,SAAA8B,EAAAA,IAAC,MAAA,CAAI,MAAOV,EACX,gBAAC,MAAA,CAEA,SAAA,CAAAU,EAAAA,IAAC,MAAA,CACA,GACCvC,EAAe,gBACf,WAAWA,EAAe,MAAS,GAGnC,SAAAmC,EAAA,CAAc,CAAA,EAMhBK,EAAAA,KAAC,MAAA,CACA,MAAO,CACN,QAAS,OACT,cAAe,MACf,eAAgB,UAAA,EAGhB,SAAA,CAAApC,IAAaL,CAAK,EAClBI,IAAcH,CAAc,CAAA,CAAA,CAAA,CAC9B,CAAA,CACD,CAAA,CACD,CAAA,CAAA,CAGH,EAGayC,EAASC,EAAAA,QAAM,KAAK5C,CAAe"}
@@ -1,113 +1,118 @@
1
- import { jsxs as p, jsx as C } from "react/jsx-runtime";
2
- import R, { useMemo as f, useCallback as U } from "react";
3
- import { COLORS as o } from "../../../constants/Theme.js";
1
+ import { jsxs as T, jsx as S } from "react/jsx-runtime";
2
+ import R, { useMemo as d, useCallback as U } from "react";
3
+ import { COLORS as a } from "../../../constants/Theme.js";
4
4
  import { useWindowSize as V } from "../../../hooks/useWindowSize.js";
5
- import { MESSAGE_CHANNELS as g } from "../GiftedChat/types.js";
6
- import { Constants as I, isStringifiedArray as _ } from "../GiftedChat/utils.js";
7
- import { GiftedChatAppType as M } from "./types.js";
8
- const O = (s) => {
5
+ import { MESSAGE_CHANNELS as f } from "../GiftedChat/types.js";
6
+ import { Constants as x, isStringifiedArray as _ } from "../GiftedChat/utils.js";
7
+ import { GiftedChatAppType as A } from "./types.js";
8
+ const W = (o) => {
9
9
  const {
10
10
  currentMessage: l,
11
- position: r,
12
- renderMessageText: T,
13
- renderTicks: x,
14
- renderTime: A,
15
- renderCustomView: m,
16
- isCustomViewBottom: y,
17
- isUnsatisfactoryMessageFn: u,
18
- messagesGroupedByAiTraceId: S,
19
- onPress: k,
11
+ position: n,
12
+ renderMessageText: v,
13
+ renderTicks: k,
14
+ renderTime: j,
15
+ renderCustomView: g,
16
+ isCustomViewBottom: m,
17
+ isUnsatisfactoryMessageFn: y,
18
+ messagesGroupedByAiTraceId: M,
19
+ onPress: w,
20
20
  containerStyle: t,
21
21
  bubbleStyles: i,
22
- appType: j = M.Bik
23
- } = s, c = V(), e = l, n = j === M.Manifest, h = f(
24
- () => e.category === I.ChatActivity.Category.ACTIVITY && e.activityType === I.ChatActivity.Type.PRIVATE_NOTE,
22
+ appType: P = A.Bik
23
+ } = o, c = V(), e = l, r = P === A.Manifest, u = d(
24
+ () => e.category === x.ChatActivity.Category.ACTIVITY && e.activityType === x.ChatActivity.Type.PRIVATE_NOTE,
25
25
  [e.category, e.activityType]
26
- ), v = f(() => {
27
- const [b, d] = _(
26
+ ), I = d(() => {
27
+ const [C, s] = _(
28
28
  e?.message
29
29
  );
30
- return b && d && Array.isArray(d);
31
- }, [e?.message]), w = e?.channelId === g.SMTP || e?.channelName === g.SMTP, P = f(() => {
32
- const b = {
30
+ return C && s && Array.isArray(s);
31
+ }, [e?.message]), h = e?.channelId === f.SMTP || e?.channelName === f.SMTP, b = e?.channelId === f.GMAIL || e?.channelName === f.GMAIL, p = c && !r && !h && !b, G = d(() => {
32
+ const C = {
33
33
  borderRadius: 8,
34
34
  minHeight: 20,
35
35
  margin: 0,
36
- flexGrow: c ? 1 : 0,
36
+ flexGrow: p ? 0 : c ? 1 : 0,
37
37
  width: "100%"
38
- }, d = e?.channelId === g.GMAIL || e?.channelName === g.GMAIL;
39
- let a = {};
40
- if (n)
41
- return r === "left" ? a = i && typeof i.left == "object" ? i.left : {} : a = i && typeof i.right == "object" ? i.right : {}, { ...a };
42
- if (r === "left")
43
- a = {
44
- ...c || d || w ? { maxWidth: "100%" } : {},
45
- ...h ? {
46
- background: o.background.warning.light
38
+ };
39
+ let s = {};
40
+ if (r)
41
+ return n === "left" ? s = i && typeof i.left == "object" ? i.left : {} : s = i && typeof i.right == "object" ? i.right : {}, { ...s };
42
+ if (n === "left")
43
+ s = {
44
+ // CRM-4796: non-email mobile bubbles hug content (no full-width),
45
+ // so only email/desktop-email keep maxWidth 100%.
46
+ ...b || h ? { maxWidth: "100%" } : {},
47
+ ...u ? {
48
+ background: a.background.warning.light
47
49
  } : {
48
- backgroundColor: e?.isPrivateMail ? o.background.blue.light : o.background.base
50
+ backgroundColor: e?.isPrivateMail ? a.background.blue.light : a.background.base
49
51
  }
50
52
  };
51
53
  else {
52
- const L = u && u({
54
+ const O = y && y({
53
55
  aiTraceId: e.eventProperties?.aiTraceId,
54
- messagesGroupedByAiTraceId: S
56
+ messagesGroupedByAiTraceId: M
55
57
  });
56
- a = {
57
- backgroundColor: e.status === "failed" || L ? o.background.negative.light : o.background.brandUltraLight,
58
- ...h ? {
59
- background: o.background.warning.light
58
+ s = {
59
+ backgroundColor: e.status === "failed" || O ? a.background.negative.light : a.background.brandUltraLight,
60
+ ...u ? {
61
+ background: a.background.warning.light
60
62
  } : {},
61
- ...!c && v ? { maxWidth: 500 } : {}
63
+ ...!c && I ? { maxWidth: 500 } : {}
62
64
  };
63
65
  }
64
- const E = i && typeof i == "object" ? "left" in i || "right" in i ? r === "left" ? i.left ?? {} : i.right ?? {} : i : {};
65
- return { ...b, ...a, ...E };
66
+ const L = i && typeof i == "object" ? "left" in i || "right" in i ? n === "left" ? i.left ?? {} : i.right ?? {} : i : {};
67
+ return { ...C, ...s, ...L };
66
68
  }, [
67
69
  e?.channelId,
68
70
  e?.channelName,
69
71
  e?.meta?.aiUsed,
70
72
  e?.status,
71
73
  e?.eventProperties?.aiTraceId,
72
- r,
74
+ n,
73
75
  c,
74
- h,
75
- v,
76
76
  u,
77
- S,
77
+ I,
78
+ y,
79
+ M,
78
80
  e?.isPrivateMail,
79
81
  i,
80
- n
81
- ]), G = U(() => /* @__PURE__ */ p("div", { children: [
82
- !y && m?.(s),
83
- T?.(s),
84
- y && m?.(s)
85
- ] }), [y, m, T, s]), B = f(() => !n || typeof t != "object" ? {} : r === "left" && "left" in t && t.left && typeof t.left == "object" ? t.left : r === "right" && "right" in t && t.right && typeof t.right == "object" ? t.right : {}, [n, t, r]), N = !n && t && typeof t == "object" ? "left" in t || "right" in t ? r === "left" ? t.left ?? {} : t.right ?? {} : t : {};
86
- return /* @__PURE__ */ C(
82
+ r,
83
+ p,
84
+ h,
85
+ b
86
+ ]), B = U(() => /* @__PURE__ */ T("div", { children: [
87
+ !m && g?.(o),
88
+ v?.(o),
89
+ m && g?.(o)
90
+ ] }), [m, g, v, o]), N = d(() => !r || typeof t != "object" ? {} : n === "left" && "left" in t && t.left && typeof t.left == "object" ? t.left : n === "right" && "right" in t && t.right && typeof t.right == "object" ? t.right : {}, [r, t, n]), E = !r && t && typeof t == "object" ? "left" in t || "right" in t ? n === "left" ? t.left ?? {} : t.right ?? {} : t : {};
91
+ return /* @__PURE__ */ S(
87
92
  "div",
88
93
  {
89
94
  style: {
90
95
  display: "flex",
91
- marginTop: n ? 0 : 6,
92
- marginBottom: n ? 0 : l?.messageInformation?.reactions?.length > 0 ? 24 : 6,
93
- flexGrow: c ? 1 : 0,
94
- ...n ? {
96
+ marginTop: r ? 0 : 6,
97
+ marginBottom: r ? 0 : l?.messageInformation?.reactions?.length > 0 ? 24 : 6,
98
+ flexGrow: p ? 0 : c ? 1 : 0,
99
+ ...r ? {
95
100
  alignItems: "flex-end",
96
- ...r === "right" ? { cursor: "pointer" } : {}
101
+ ...n === "right" ? { cursor: "pointer" } : {}
97
102
  } : {},
98
- ...B,
99
- ...N
103
+ ...N,
104
+ ...E
100
105
  },
101
- ...n ? { onClick: k } : {},
102
- children: /* @__PURE__ */ C("div", { style: P, children: /* @__PURE__ */ p("div", { children: [
103
- /* @__PURE__ */ C(
106
+ ...r ? { onClick: w } : {},
107
+ children: /* @__PURE__ */ S("div", { style: G, children: /* @__PURE__ */ T("div", { children: [
108
+ /* @__PURE__ */ S(
104
109
  "div",
105
110
  {
106
111
  id: l.chatActivityId || `message-${l.psqlId}`,
107
- children: G()
112
+ children: B()
108
113
  }
109
114
  ),
110
- /* @__PURE__ */ p(
115
+ /* @__PURE__ */ T(
111
116
  "div",
112
117
  {
113
118
  style: {
@@ -116,16 +121,16 @@ const O = (s) => {
116
121
  justifyContent: "flex-end"
117
122
  },
118
123
  children: [
119
- A?.(s),
120
- x?.(l)
124
+ j?.(o),
125
+ k?.(l)
121
126
  ]
122
127
  }
123
128
  )
124
129
  ] }) })
125
130
  }
126
131
  );
127
- }, $ = R.memo(O);
132
+ }, J = R.memo(W);
128
133
  export {
129
- $ as Bubble
134
+ J as Bubble
130
135
  };
131
136
  //# sourceMappingURL=Bubble.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Bubble.js","sources":["../../../../../src/components/BikGiftedChat/Bubble/Bubble.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\nimport { COLORS } from '../../../constants/Theme';\nimport { useWindowSize } from '../../../hooks/useWindowSize';\nimport { MESSAGE_CHANNELS } from '../GiftedChat/types';\nimport { Constants, isStringifiedArray } from '../GiftedChat/utils';\nimport { IMessage } from '../types';\nimport { BubbleProps, GiftedChatAppType } from './types';\n\nconst BubbleComponent = <TMessage extends IMessage = IMessage>(\n\tprops: BubbleProps<TMessage>,\n): React.ReactElement => {\n\tconst {\n\t\tcurrentMessage,\n\t\tposition,\n\t\trenderMessageText,\n\t\trenderTicks,\n\t\trenderTime,\n\t\trenderCustomView,\n\t\tisCustomViewBottom,\n\t\tisUnsatisfactoryMessageFn,\n\t\tmessagesGroupedByAiTraceId,\n\t\tonPress,\n\t\tcontainerStyle,\n\t\tbubbleStyles,\n\t\tappType = GiftedChatAppType.Bik,\n\t} = props;\n\n\tconst isMobile = useWindowSize();\n\tconst message = currentMessage as any;\n\tconst isManifestApp = appType === GiftedChatAppType.Manifest;\n\n\t// Check if message is a private note\n\tconst isPrivateNote = useMemo(\n\t\t() =>\n\t\t\tmessage.category === Constants.ChatActivity.Category.ACTIVITY &&\n\t\t\tmessage.activityType === Constants.ChatActivity.Type.PRIVATE_NOTE,\n\t\t[message.category, message.activityType],\n\t);\n\n\t// Check if message is a carousel (array of items)\n\tconst isCarouselMessage = useMemo(() => {\n\t\tconst [parsedSuccessfully, parsedMessage] = isStringifiedArray(\n\t\t\tmessage?.message,\n\t\t);\n\t\treturn parsedSuccessfully && parsedMessage && Array.isArray(parsedMessage);\n\t}, [message?.message]);\n\tconst isSmtp =\n\t\tmessage?.channelId === MESSAGE_CHANNELS.SMTP ||\n\t\tmessage?.channelName === MESSAGE_CHANNELS.SMTP;\n\n\t// Generates wrapper styles for the message bubble\n\t// Handles position-based styling, channel-specific layouts, and message states\n\tconst wrapperStyles = useMemo((): React.CSSProperties => {\n\t\tconst baseStyles: React.CSSProperties = {\n\t\t\tborderRadius: 8,\n\t\t\tminHeight: 20,\n\t\t\tmargin: 0,\n\t\t\tflexGrow: isMobile ? 1 : 0,\n\t\t\twidth: '100%',\n\t\t};\n\n\t\t// Check if message is from email channels\n\t\tconst isGmail =\n\t\t\tmessage?.channelId === MESSAGE_CHANNELS.GMAIL ||\n\t\t\tmessage?.channelName === MESSAGE_CHANNELS.GMAIL;\n\n\t\tlet dynamicStyles: React.CSSProperties = {};\n\n\t\tif (isManifestApp) {\n\t\t\tif (position === 'left') {\n\t\t\t\tdynamicStyles =\n\t\t\t\t\tbubbleStyles && typeof bubbleStyles.left === 'object'\n\t\t\t\t\t\t? bubbleStyles.left\n\t\t\t\t\t\t: {};\n\t\t\t} else {\n\t\t\t\tdynamicStyles =\n\t\t\t\t\tbubbleStyles && typeof bubbleStyles.right === 'object'\n\t\t\t\t\t\t? bubbleStyles.right\n\t\t\t\t\t\t: {};\n\t\t\t}\n\t\t\treturn { ...dynamicStyles };\n\t\t} else {\n\t\t\tif (position === 'left') {\n\t\t\t\tdynamicStyles = {\n\t\t\t\t\t...(isMobile || isGmail || isSmtp ? { maxWidth: '100%' } : {}),\n\t\t\t\t\t...(isPrivateNote\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tbackground: COLORS.background.warning.light,\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: {\n\t\t\t\t\t\t\t\tbackgroundColor: message?.isPrivateMail\n\t\t\t\t\t\t\t\t\t? COLORS.background.blue.light\n\t\t\t\t\t\t\t\t\t: COLORS.background.base,\n\t\t\t\t\t\t }),\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tconst isUnsatisfactory =\n\t\t\t\t\tisUnsatisfactoryMessageFn &&\n\t\t\t\t\tisUnsatisfactoryMessageFn({\n\t\t\t\t\t\taiTraceId: message.eventProperties?.aiTraceId,\n\t\t\t\t\t\tmessagesGroupedByAiTraceId,\n\t\t\t\t\t});\n\n\t\t\t\tdynamicStyles = {\n\t\t\t\t\tbackgroundColor:\n\t\t\t\t\t\tmessage.status === 'failed' || isUnsatisfactory\n\t\t\t\t\t\t\t? COLORS.background.negative.light\n\t\t\t\t\t\t\t: COLORS.background.brandUltraLight,\n\t\t\t\t\t...(isPrivateNote\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tbackground: COLORS.background.warning.light,\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: {}),\n\t\t\t\t\t...(!isMobile && isCarouselMessage ? { maxWidth: 500 } : {}),\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\tconst extraBubbleStyles: React.CSSProperties =\n\t\t\tbubbleStyles && typeof bubbleStyles === 'object'\n\t\t\t\t? 'left' in bubbleStyles || 'right' in bubbleStyles\n\t\t\t\t\t? position === 'left'\n\t\t\t\t\t\t? (bubbleStyles as { left?: React.CSSProperties }).left ?? {}\n\t\t\t\t\t\t: (bubbleStyles as { right?: React.CSSProperties }).right ?? {}\n\t\t\t\t\t: (bubbleStyles as React.CSSProperties)\n\t\t\t\t: {};\n\n\t\treturn { ...baseStyles, ...dynamicStyles, ...extraBubbleStyles };\n\t}, [\n\t\tmessage?.channelId,\n\t\tmessage?.channelName,\n\t\tmessage?.meta?.aiUsed,\n\t\tmessage?.status,\n\t\tmessage?.eventProperties?.aiTraceId,\n\t\tposition,\n\t\tisMobile,\n\t\tisPrivateNote,\n\t\tisCarouselMessage,\n\t\tisUnsatisfactoryMessageFn,\n\t\tmessagesGroupedByAiTraceId,\n\t\tmessage?.isPrivateMail,\n\t\tbubbleStyles,\n\t\tisManifestApp,\n\t]);\n\n\t// Renders the content of the message bubble\n\t// Handles custom views and message text in the correct order\n\tconst renderContent = useCallback(() => {\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t{!isCustomViewBottom && renderCustomView?.(props)}\n\n\t\t\t\t{renderMessageText?.(props)}\n\n\t\t\t\t{isCustomViewBottom && renderCustomView?.(props)}\n\t\t\t</div>\n\t\t);\n\t}, [isCustomViewBottom, renderCustomView, renderMessageText, props]);\n\n\tconst manifestContainerStyle = useMemo(() => {\n\t\tif (!isManifestApp || typeof containerStyle !== 'object') return {};\n\t\tif (\n\t\t\tposition === 'left' &&\n\t\t\t'left' in containerStyle &&\n\t\t\tcontainerStyle.left &&\n\t\t\ttypeof containerStyle.left === 'object'\n\t\t) {\n\t\t\treturn containerStyle.left;\n\t\t}\n\t\tif (\n\t\t\tposition === 'right' &&\n\t\t\t'right' in containerStyle &&\n\t\t\tcontainerStyle.right &&\n\t\t\ttypeof containerStyle.right === 'object'\n\t\t) {\n\t\t\treturn containerStyle.right;\n\t\t}\n\t\treturn {};\n\t}, [isManifestApp, containerStyle, position]);\n\n\tconst extraContainerStyle: React.CSSProperties =\n\t\t!isManifestApp && containerStyle && typeof containerStyle === 'object'\n\t\t\t? 'left' in containerStyle || 'right' in containerStyle\n\t\t\t\t? position === 'left'\n\t\t\t\t\t? (containerStyle as { left?: React.CSSProperties }).left ?? {}\n\t\t\t\t\t: (containerStyle as { right?: React.CSSProperties }).right ?? {}\n\t\t\t\t: (containerStyle as React.CSSProperties)\n\t\t\t: {};\n\n\treturn (\n\t\t<div\n\t\t\tstyle={{\n\t\t\t\tdisplay: 'flex',\n\t\t\t\tmarginTop: isManifestApp ? 0 : 6,\n\t\t\t\tmarginBottom: isManifestApp\n\t\t\t\t\t? 0\n\t\t\t\t\t: currentMessage?.['messageInformation']?.reactions?.length > 0\n\t\t\t\t\t? 24\n\t\t\t\t\t: 6,\n\t\t\t\tflexGrow: isMobile ? 1 : 0,\n\t\t\t\t...(isManifestApp\n\t\t\t\t\t? {\n\t\t\t\t\t\t\talignItems: 'flex-end',\n\t\t\t\t\t\t\t...(position === 'right' ? { cursor: 'pointer' } : {}),\n\t\t\t\t\t }\n\t\t\t\t\t: {}),\n\t\t\t\t...manifestContainerStyle,\n\t\t\t\t...extraContainerStyle,\n\t\t\t}}\n\t\t\t{...(isManifestApp ? { onClick: onPress } : {})}\n\t\t>\n\t\t\t<div style={wrapperStyles}>\n\t\t\t\t<div>\n\t\t\t\t\t{/* Message content */}\n\t\t\t\t\t<div\n\t\t\t\t\t\tid={\n\t\t\t\t\t\t\tcurrentMessage['chatActivityId'] ||\n\t\t\t\t\t\t\t`message-${currentMessage['psqlId']}`\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{renderContent()}\n\t\t\t\t\t</div>\n\n\t\t\t\t\t{/* Message metadata (time and status) — bottom bar, time/ticks\n\t\t\t\t\t right-aligned. The 8px gap above comes from the time/ticks\n\t\t\t\t\t rows' own top padding. */}\n\t\t\t\t\t<div\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\tflexDirection: 'row',\n\t\t\t\t\t\t\tjustifyContent: 'flex-end',\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{renderTime?.(props)}\n\t\t\t\t\t\t{renderTicks?.(currentMessage)}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\n// Export memoized version for performance\nexport const Bubble = React.memo(BubbleComponent) as typeof BubbleComponent;\n\nexport default Bubble;\n"],"names":["BubbleComponent","props","currentMessage","position","renderMessageText","renderTicks","renderTime","renderCustomView","isCustomViewBottom","isUnsatisfactoryMessageFn","messagesGroupedByAiTraceId","onPress","containerStyle","bubbleStyles","appType","GiftedChatAppType","isMobile","useWindowSize","message","isManifestApp","isPrivateNote","useMemo","Constants","isCarouselMessage","parsedSuccessfully","parsedMessage","isStringifiedArray","isSmtp","MESSAGE_CHANNELS","wrapperStyles","baseStyles","isGmail","dynamicStyles","COLORS","isUnsatisfactory","extraBubbleStyles","renderContent","useCallback","manifestContainerStyle","extraContainerStyle","jsx","jsxs","Bubble","React"],"mappings":"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"}
1
+ {"version":3,"file":"Bubble.js","sources":["../../../../../src/components/BikGiftedChat/Bubble/Bubble.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\nimport { COLORS } from '../../../constants/Theme';\nimport { useWindowSize } from '../../../hooks/useWindowSize';\nimport { MESSAGE_CHANNELS } from '../GiftedChat/types';\nimport { Constants, isStringifiedArray } from '../GiftedChat/utils';\nimport { IMessage } from '../types';\nimport { BubbleProps, GiftedChatAppType } from './types';\n\nconst BubbleComponent = <TMessage extends IMessage = IMessage>(\n\tprops: BubbleProps<TMessage>,\n): React.ReactElement => {\n\tconst {\n\t\tcurrentMessage,\n\t\tposition,\n\t\trenderMessageText,\n\t\trenderTicks,\n\t\trenderTime,\n\t\trenderCustomView,\n\t\tisCustomViewBottom,\n\t\tisUnsatisfactoryMessageFn,\n\t\tmessagesGroupedByAiTraceId,\n\t\tonPress,\n\t\tcontainerStyle,\n\t\tbubbleStyles,\n\t\tappType = GiftedChatAppType.Bik,\n\t} = props;\n\n\tconst isMobile = useWindowSize();\n\tconst message = currentMessage as any;\n\tconst isManifestApp = appType === GiftedChatAppType.Manifest;\n\n\t// Check if message is a private note\n\tconst isPrivateNote = useMemo(\n\t\t() =>\n\t\t\tmessage.category === Constants.ChatActivity.Category.ACTIVITY &&\n\t\t\tmessage.activityType === Constants.ChatActivity.Type.PRIVATE_NOTE,\n\t\t[message.category, message.activityType],\n\t);\n\n\t// Check if message is a carousel (array of items)\n\tconst isCarouselMessage = useMemo(() => {\n\t\tconst [parsedSuccessfully, parsedMessage] = isStringifiedArray(\n\t\t\tmessage?.message,\n\t\t);\n\t\treturn parsedSuccessfully && parsedMessage && Array.isArray(parsedMessage);\n\t}, [message?.message]);\n\tconst isSmtp =\n\t\tmessage?.channelId === MESSAGE_CHANNELS.SMTP ||\n\t\tmessage?.channelName === MESSAGE_CHANNELS.SMTP;\n\tconst isGmail =\n\t\tmessage?.channelId === MESSAGE_CHANNELS.GMAIL ||\n\t\tmessage?.channelName === MESSAGE_CHANNELS.GMAIL;\n\n\t// CRM-4796/4797: on mobile, regular chat bubbles hug their content so the\n\t// agent(right)/customer(left) alignment and the bottom-right time are\n\t// visible. Email (SMTP/Gmail) bubbles are excluded — they stay full-width\n\t// and left-aligned with the time shown in the mail header.\n\tconst hugContentOnMobile = isMobile && !isManifestApp && !isSmtp && !isGmail;\n\n\t// Generates wrapper styles for the message bubble\n\t// Handles position-based styling, channel-specific layouts, and message states\n\tconst wrapperStyles = useMemo((): React.CSSProperties => {\n\t\tconst baseStyles: React.CSSProperties = {\n\t\t\tborderRadius: 8,\n\t\t\tminHeight: 20,\n\t\t\tmargin: 0,\n\t\t\tflexGrow: hugContentOnMobile ? 0 : isMobile ? 1 : 0,\n\t\t\twidth: '100%',\n\t\t};\n\n\t\tlet dynamicStyles: React.CSSProperties = {};\n\n\t\tif (isManifestApp) {\n\t\t\tif (position === 'left') {\n\t\t\t\tdynamicStyles =\n\t\t\t\t\tbubbleStyles && typeof bubbleStyles.left === 'object'\n\t\t\t\t\t\t? bubbleStyles.left\n\t\t\t\t\t\t: {};\n\t\t\t} else {\n\t\t\t\tdynamicStyles =\n\t\t\t\t\tbubbleStyles && typeof bubbleStyles.right === 'object'\n\t\t\t\t\t\t? bubbleStyles.right\n\t\t\t\t\t\t: {};\n\t\t\t}\n\t\t\treturn { ...dynamicStyles };\n\t\t} else {\n\t\t\tif (position === 'left') {\n\t\t\t\tdynamicStyles = {\n\t\t\t\t\t// CRM-4796: non-email mobile bubbles hug content (no full-width),\n\t\t\t\t\t// so only email/desktop-email keep maxWidth 100%.\n\t\t\t\t\t...(isGmail || isSmtp ? { maxWidth: '100%' } : {}),\n\t\t\t\t\t...(isPrivateNote\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tbackground: COLORS.background.warning.light,\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: {\n\t\t\t\t\t\t\t\tbackgroundColor: message?.isPrivateMail\n\t\t\t\t\t\t\t\t\t? COLORS.background.blue.light\n\t\t\t\t\t\t\t\t\t: COLORS.background.base,\n\t\t\t\t\t\t }),\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tconst isUnsatisfactory =\n\t\t\t\t\tisUnsatisfactoryMessageFn &&\n\t\t\t\t\tisUnsatisfactoryMessageFn({\n\t\t\t\t\t\taiTraceId: message.eventProperties?.aiTraceId,\n\t\t\t\t\t\tmessagesGroupedByAiTraceId,\n\t\t\t\t\t});\n\n\t\t\t\tdynamicStyles = {\n\t\t\t\t\tbackgroundColor:\n\t\t\t\t\t\tmessage.status === 'failed' || isUnsatisfactory\n\t\t\t\t\t\t\t? COLORS.background.negative.light\n\t\t\t\t\t\t\t: COLORS.background.brandUltraLight,\n\t\t\t\t\t...(isPrivateNote\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\tbackground: COLORS.background.warning.light,\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: {}),\n\t\t\t\t\t...(!isMobile && isCarouselMessage ? { maxWidth: 500 } : {}),\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\tconst extraBubbleStyles: React.CSSProperties =\n\t\t\tbubbleStyles && typeof bubbleStyles === 'object'\n\t\t\t\t? 'left' in bubbleStyles || 'right' in bubbleStyles\n\t\t\t\t\t? position === 'left'\n\t\t\t\t\t\t? (bubbleStyles as { left?: React.CSSProperties }).left ?? {}\n\t\t\t\t\t\t: (bubbleStyles as { right?: React.CSSProperties }).right ?? {}\n\t\t\t\t\t: (bubbleStyles as React.CSSProperties)\n\t\t\t\t: {};\n\n\t\treturn { ...baseStyles, ...dynamicStyles, ...extraBubbleStyles };\n\t}, [\n\t\tmessage?.channelId,\n\t\tmessage?.channelName,\n\t\tmessage?.meta?.aiUsed,\n\t\tmessage?.status,\n\t\tmessage?.eventProperties?.aiTraceId,\n\t\tposition,\n\t\tisMobile,\n\t\tisPrivateNote,\n\t\tisCarouselMessage,\n\t\tisUnsatisfactoryMessageFn,\n\t\tmessagesGroupedByAiTraceId,\n\t\tmessage?.isPrivateMail,\n\t\tbubbleStyles,\n\t\tisManifestApp,\n\t\thugContentOnMobile,\n\t\tisSmtp,\n\t\tisGmail,\n\t]);\n\n\t// Renders the content of the message bubble\n\t// Handles custom views and message text in the correct order\n\tconst renderContent = useCallback(() => {\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t{!isCustomViewBottom && renderCustomView?.(props)}\n\n\t\t\t\t{renderMessageText?.(props)}\n\n\t\t\t\t{isCustomViewBottom && renderCustomView?.(props)}\n\t\t\t</div>\n\t\t);\n\t}, [isCustomViewBottom, renderCustomView, renderMessageText, props]);\n\n\tconst manifestContainerStyle = useMemo(() => {\n\t\tif (!isManifestApp || typeof containerStyle !== 'object') return {};\n\t\tif (\n\t\t\tposition === 'left' &&\n\t\t\t'left' in containerStyle &&\n\t\t\tcontainerStyle.left &&\n\t\t\ttypeof containerStyle.left === 'object'\n\t\t) {\n\t\t\treturn containerStyle.left;\n\t\t}\n\t\tif (\n\t\t\tposition === 'right' &&\n\t\t\t'right' in containerStyle &&\n\t\t\tcontainerStyle.right &&\n\t\t\ttypeof containerStyle.right === 'object'\n\t\t) {\n\t\t\treturn containerStyle.right;\n\t\t}\n\t\treturn {};\n\t}, [isManifestApp, containerStyle, position]);\n\n\tconst extraContainerStyle: React.CSSProperties =\n\t\t!isManifestApp && containerStyle && typeof containerStyle === 'object'\n\t\t\t? 'left' in containerStyle || 'right' in containerStyle\n\t\t\t\t? position === 'left'\n\t\t\t\t\t? (containerStyle as { left?: React.CSSProperties }).left ?? {}\n\t\t\t\t\t: (containerStyle as { right?: React.CSSProperties }).right ?? {}\n\t\t\t\t: (containerStyle as React.CSSProperties)\n\t\t\t: {};\n\n\treturn (\n\t\t<div\n\t\t\tstyle={{\n\t\t\t\tdisplay: 'flex',\n\t\t\t\tmarginTop: isManifestApp ? 0 : 6,\n\t\t\t\tmarginBottom: isManifestApp\n\t\t\t\t\t? 0\n\t\t\t\t\t: currentMessage?.['messageInformation']?.reactions?.length > 0\n\t\t\t\t\t? 24\n\t\t\t\t\t: 6,\n\t\t\t\tflexGrow: hugContentOnMobile ? 0 : isMobile ? 1 : 0,\n\t\t\t\t...(isManifestApp\n\t\t\t\t\t? {\n\t\t\t\t\t\t\talignItems: 'flex-end',\n\t\t\t\t\t\t\t...(position === 'right' ? { cursor: 'pointer' } : {}),\n\t\t\t\t\t }\n\t\t\t\t\t: {}),\n\t\t\t\t...manifestContainerStyle,\n\t\t\t\t...extraContainerStyle,\n\t\t\t}}\n\t\t\t{...(isManifestApp ? { onClick: onPress } : {})}\n\t\t>\n\t\t\t<div style={wrapperStyles}>\n\t\t\t\t<div>\n\t\t\t\t\t{/* Message content */}\n\t\t\t\t\t<div\n\t\t\t\t\t\tid={\n\t\t\t\t\t\t\tcurrentMessage['chatActivityId'] ||\n\t\t\t\t\t\t\t`message-${currentMessage['psqlId']}`\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{renderContent()}\n\t\t\t\t\t</div>\n\n\t\t\t\t\t{/* Message metadata (time and status) — bottom bar, time/ticks\n\t\t\t\t\t right-aligned. The 8px gap above comes from the time/ticks\n\t\t\t\t\t rows' own top padding. */}\n\t\t\t\t\t<div\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tdisplay: 'flex',\n\t\t\t\t\t\t\tflexDirection: 'row',\n\t\t\t\t\t\t\tjustifyContent: 'flex-end',\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{renderTime?.(props)}\n\t\t\t\t\t\t{renderTicks?.(currentMessage)}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\n// Export memoized version for performance\nexport const Bubble = React.memo(BubbleComponent) as typeof BubbleComponent;\n\nexport default Bubble;\n"],"names":["BubbleComponent","props","currentMessage","position","renderMessageText","renderTicks","renderTime","renderCustomView","isCustomViewBottom","isUnsatisfactoryMessageFn","messagesGroupedByAiTraceId","onPress","containerStyle","bubbleStyles","appType","GiftedChatAppType","isMobile","useWindowSize","message","isManifestApp","isPrivateNote","useMemo","Constants","isCarouselMessage","parsedSuccessfully","parsedMessage","isStringifiedArray","isSmtp","MESSAGE_CHANNELS","isGmail","hugContentOnMobile","wrapperStyles","baseStyles","dynamicStyles","COLORS","isUnsatisfactory","extraBubbleStyles","renderContent","useCallback","manifestContainerStyle","extraContainerStyle","jsx","jsxs","Bubble","React"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bikdotai/bik-component-library",
3
- "version": "0.0.828",
3
+ "version": "0.0.829-beta.1",
4
4
  "description": "Bik Component Library",
5
5
  "repository": {
6
6
  "type": "git",