@sendbird/ai-agent-messenger-react 1.25.0 → 1.26.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.
package/dist/index.cjs CHANGED
@@ -1,10 +1,10 @@
1
- "use strict";var Hi=Object.defineProperty;var Gi=(e,t,n)=>t in e?Hi(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var S=(e,t,n)=>Gi(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("@sendbird/chat"),c=require("react"),P=require("styled-components"),et=require("date-fns"),Vi=require("date-fns/locale/en-US"),ze=require("@sendbird/chat/message"),zi=require("react-dom"),Re=require("@sendbird/chat/aiAgent"),je=require("@sendbird/chat/groupChannel"),qi=require("date-fns/isSameDay"),Wi=require("dompurify"),tr=e=>e&&e.__esModule?e:{default:e};function Yi(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const Ki=tr(le),i=Yi(c),_=tr(P),Js=tr(Wi),ht="sb-agent",Qs="KEY_IMG_ASPECT_RATIO",Hn="*/*",ee={BODY_MAX_WIDTH:244,WIDE_BODY_MAX_WIDTH:640,AVATAR_SIZE:26,BODY_TIME_GAP:4,HORIZONTAL_PADDING:12,GAP_GROUPED:2,GAP_UNGROUPED:16};var rn=(e=>(e.IN_PROGRESS="IN_PROGRESS",e.COMPLETED="COMPLETED",e.CANCELED="CANCELED",e))(rn||{}),kt=(e=>(e.IN_PROGRESS="IN_PROGRESS",e.COMPLETED="COMPLETED",e.CANCELED="CANCELED",e))(kt||{});const eo=e=>{var t;return!!((t=e==null?void 0:e.extendedMessagePayload)!=null&&t.steward)},ji=e=>e===kt.COMPLETED||e===kt.CANCELED?e:kt.IN_PROGRESS,Tn=e=>Xe(e)&&!eo(e),Xe=e=>!!e&&"sender"in e,Xi=e=>Xe(e)?e.sendingStatus==="succeeded"?String(e.messageId):e.reqId:String(e.messageId),Nr=(e,t)=>!e||!t?!1:Xe(e)&&Xe(t)?e.messageId>0&&t.messageId>0?e.messageId===t.messageId:e.reqId.length>0&&e.reqId===t.reqId:e.messageId>0&&e.messageId===t.messageId,Zi=(e,t,n,r=!0)=>{if(!r||!Tn(e))return"single";const s=()=>{if(!Tn(t))return!1;const u=t.sender.userId===e.sender.userId,d=et.isSameMinute(t.createdAt,e.createdAt);return u&&d},o=()=>{if(!Tn(n))return!1;const u=n.sender.userId===e.sender.userId,d=et.isSameMinute(n.createdAt,e.createdAt);return u&&d},a=s(),l=o();return a&&l?"middle":a?"bottom":l?"top":"single"},Et=(e,t)=>(()=>{var r;return Xe(e)?e.sender.userId:((r=e==null?void 0:e.sender)==null?void 0:r.userId)??void 0})()===t,Te={isAdmin:e=>e.isAdminMessage(),isCSAT:e=>{var t;return e.isAdminMessage()&&!!((t=e.extendedMessagePayload)!=null&&t.csat)},isSteward:e=>eo(e),isIncoming:(e,t)=>Xe(e)&&e.sender.userId!==t,isOutgoing:(e,t)=>Xe(e)&&(e.sender.userId===t||e.sendingStatus===ze.SendingStatus.PENDING)},at=e=>e.startsWith("image/"),to=e=>e.startsWith("video/"),nr=(e,t)=>{if(e&&!e.startsWith(".")){const n=e.split(".").pop();if(n&&n!==e)return n.toUpperCase()}if(t){const[,n]=t.split("/");if(n)return n.toUpperCase()}return"FILE"},no=e=>{var t;return e.messageType==="file"?e.message.length>0&&e.file.name!==e.message:e.messageType==="multipleFiles"?e.message.length>0&&((t=e.files[0])==null?void 0:t.name)!==e.message:e.message.length>0},gn=e=>{switch(e){case"top":case"middle":return ee.GAP_GROUPED;default:return ee.GAP_UNGROUPED}},Ji=(e,t)=>{const n=/```(\w+)?\n([\s\S]*?)```/g,r=[];let s=0;return e.replace(n,(o,...a)=>{const[l,u,d]=a;return s<d&&r.push({type:"text",value:e.slice(s,d).trim()}),r.push({type:"code",value:u.trim(),language:l?l.trim():"plaintext"}),s=d+o.length,o}),s<e.length&&r.push({type:"text",value:e.slice(s).trim()}),t?r.map(o=>o.type!=="text"?o:{...o,value:t(o.value)}):r},Qi=e=>e.replace(/\[([^\]]+)\](?!\()/g,"\\[$1\\]"),ea=e=>e.replace(/([a-zA-Z0-9])_(?=[a-zA-Z0-9])/g,"$1\\_"),ta=e=>e.replace(/~~/g,"\\~\\~"),na=e=>{let t=e;return t=Qi(t),t=ea(t),t=ta(t),t},ra=typeof navigator<"u"&&navigator.product==="ReactNative",Dr=(e,t)=>{const n=r=>!t||t.length===0?!0:Xe(r)&&t.includes(r.sendingStatus);return ra?e.find(n):e.findLast(n)};function he(){}function sa(){const e=typeof navigator<"u"?navigator.userAgent:"",t=/iPad|iPhone|iPod/.test(e),n=/Android/.test(e);return t||n}function oa(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t|=0;return t.toString(16)}const Gn=e=>{try{return JSON.parse(e===""?"{}":e)}catch{return{}}},Ke={isStreaming(e){const t=Gn(e.data);return typeof t=="object"&&!!t.stream},isWelcomeMessage(e,t){var n;if(((n=e.extendedMessagePayload)==null?void 0:n.bot_message_type)==="welcome")return!0;if(Et(e,t)){const r=Gn(e.data);return!(r!=null&&r.respond_mesg_id)&&!(r!=null&&r.stream)}return!1},isGeneratedMessage(e){var t;return((t=e.extendedMessagePayload)==null?void 0:t.bot_message_type)==="generated"},hasFeedback(e){var t;return!!((t=e.extendedMessagePayload)!=null&&t.feedback)}},In=`@${ht}`,ia=({appId:e,aiAgentId:t,storage:n})=>{const r={templateBase:`${In}-template`,template:s=>`${r.templateBase}/templates/${s}`,templateToken:()=>`${r.templateBase}/tokens`,messengerSession:s=>{const o=oa(`${e}/${t}/${s}`);return`${In}-udata/${o}`},anonUserSession:()=>`${In}-session/${e}/${t}`};return{template:{set:(s,o)=>n.set(r.template(s),o),get:s=>n.get(r.template(s)),setCachedToken:s=>n.set(r.templateToken(),s),getCachedToken:()=>n.get(r.templateToken()),clear:()=>{n.getKeys(r.templateBase).forEach(n.delete)}},messenger:{getSettings:s=>{try{const o=n.get(r.messengerSession(s));return o?JSON.parse(o):null}catch{return null}},setSettings:(s,o)=>{try{delete o.auto_created_user;const a=JSON.stringify(o);n.set(r.messengerSession(s),a)}catch{return}},getAnonUser:()=>{try{const s=n.get(r.anonUserSession());return s?JSON.parse(s):null}catch{return null}},setAnonUser:s=>{try{const o=JSON.stringify(s);n.set(r.anonUserSession(),o)}catch{return}},clear:s=>{try{s&&n.delete(r.messengerSession(s)),n.delete(r.anonUserSession())}catch{return}}}}},ro=(e,t,n={})=>{let r=null,s=null,o=null;const{leading:a=!0,trailing:l=!0}=n,u=(...d)=>{const m=Date.now();if(o===null||m-o>=t)a?(e(...d),o=m):(s=d,o=m);else if(s=d,l&&!r){const h=t-(m-o);r=setTimeout(()=>{s&&l&&(e(...s),o=Date.now()),r=null,s=null},h)}};return u.cancel=()=>{r&&(clearTimeout(r),r=null),s=null,o=null},u};class so{constructor(t,{filter:n,limit:r=20}){S(this,"filter");S(this,"_sdk");S(this,"_pinnedChannels");S(this,"_channels");S(this,"_isDisposed",!1);S(this,"_handlerId",`handler-id-${Date.now()}`);S(this,"_order",je.GroupChannelListOrder.LATEST_LAST_MESSAGE);S(this,"_limit");S(this,"_query");S(this,"_token");S(this,"_timestamp");S(this,"_isSyncing");S(this,"_channelHandler");S(this,"_connectionHandler");S(this,"_collectionEventHandler");S(this,"_throttledOnChannelChanged");var s,o,a,l,u,d,m;this.filter=n,this._sdk=t,this._pinnedChannels=[],this._channels=[],this._limit=r,this._query=this._sdk.aiAgent.createMyGroupChannelListQuery({aiAgentChannelFilter:(s=this.filter)==null?void 0:s.aiAgentChannelFilter,aiAgentConversationStatusFilter:(o=this.filter)==null?void 0:o.aiAgentConversationStatusFilter,aiAgentIds:(a=this.filter)==null?void 0:a.aiAgentIds,deskChannelFilter:(l=this.filter)==null?void 0:l.deskChannelFilter,pinnedChannelUrls:(u=this.filter)==null?void 0:u.pinnedChannelUrls,copilotConversationOnly:(d=this.filter)==null?void 0:d.copilotConversationOnly,copilotSupportChannelUrl:(m=this.filter)==null?void 0:m.copilotSupportChannelUrl,limit:this._limit}),this._token="",this._timestamp=Number.MAX_SAFE_INTEGER,this._isSyncing=!1,this._throttledOnChannelChanged=ro(h=>{this._query.belongsTo(h)?this._addChannelsToView([h],!1):this._removeChannelsFromView([h.url])},250,{trailing:!1,leading:!0}),this._channelHandler=new je.GroupChannelHandler({onChannelChanged:h=>{h.isGroupChannel()&&this._throttledOnChannelChanged(h)},onChannelDeleted:h=>{this._removeChannelsFromView([h])}}),this._connectionHandler=new le.ConnectionHandler({onReconnectSucceeded:()=>{this._isDefaultChangelogSyncTimestampUpdated&&this._syncChannelChangelogs()}}),this._sdk.addConnectionHandler(this._handlerId,this._connectionHandler),this._sdk.groupChannel.addGroupChannelHandler(this._handlerId,this._channelHandler)}get _isDefaultChangelogSyncTimestampUpdated(){return this._timestamp!==Number.MAX_SAFE_INTEGER}_setDefaultChangelogsSyncTimestamp(t){var o,a;const n=new Set(((o=this.filter)==null?void 0:o.pinnedChannelUrls)??[]),r=t.find(l=>!n.has(l.url));let s;r?s=((a=r.lastMessage)==null?void 0:a.createdAt)??r.createdAt:s=this._query.lastResponseAt,this._timestamp>s&&(this._timestamp=s)}async _syncChannelChangelogs(){if(this._isDisposed)return[];if(this._isSyncing)return[];try{this._isSyncing=!0;let t;for(this._token?t=await this._sdk.aiAgent.getMyGroupChannelChangeLogsByToken(this._token,this.filter):t=await this._sdk.aiAgent.getMyGroupChannelChangeLogsByTimestamp(this._timestamp,this.filter),this._token=t.token,this._addChannelsToView(t.updatedChannels),this._removeChannelsFromView(t.deletedChannelUrls);t.hasMore&&t.token;)t=await this._sdk.aiAgent.getMyGroupChannelChangeLogsByToken(this._token,this.filter),this._token=t.token,this._addChannelsToView(t.updatedChannels),this._removeChannelsFromView(t.deletedChannelUrls)}catch{}finally{this._isSyncing=!1}return[]}_upsertPinnedChannelsToArray(t){var l;const n=((l=this.filter)==null?void 0:l.pinnedChannelUrls)??[],r=new Map(n.map((u,d)=>[u,d])),s=[],o=[],a=[];for(const u of t){if(!this._query.belongsTo(u)){a.push(u.url);continue}const d=r.get(u.url);if(d===void 0)continue;const m=Vn(this._pinnedChannels,u);m>=0?(this._pinnedChannels.splice(m,1),o.push(u)):s.push(u);const f=this._pinnedChannels.findIndex(b=>(r.get(b.url)??1/0)>d),v=f===-1?this._pinnedChannels.length:f;this._pinnedChannels.splice(v,0,u)}return{addedChannels:s,updatedChannels:o,unmatchedChannelUrls:a}}_upsertRegularChannelsToArray(t,n=!1){const r=[],s=[],o=[];for(const a of t){if(!this._query.belongsTo(a)){r.push(a.url);continue}const l=Vn(this._channels,a),u=l<0;!u&&this._channels.splice(l,1);const m=aa(this._channels,a,this._order).place,h=m===this._channels.length;u?h?(n||!this.hasMore)&&(this._channels.push(a),s.push(a)):(this._channels.splice(m,0,a),s.push(a)):(this._channels.splice(m,0,a),o.push(a))}return{addedChannels:s,updatedChannels:o,unmatchedChannelUrls:r}}_addChannelsToView(t,n=!1){var h,f,v,b,C;const r=new Set(((h=this.filter)==null?void 0:h.pinnedChannelUrls)??[]),s=[],o=[];for(const g of t)r.has(g.url)?s.push(g):o.push(g);const a=this._upsertPinnedChannelsToArray(s),l=this._upsertRegularChannelsToArray(o,n),u=a.addedChannels.concat(l.addedChannels),d=a.updatedChannels.concat(l.updatedChannels),m=a.unmatchedChannelUrls.concat(l.unmatchedChannelUrls);u.length>0&&((v=(f=this._collectionEventHandler)==null?void 0:f.onChannelsAdded)==null||v.call(f,{},u)),d.length>0&&((C=(b=this._collectionEventHandler)==null?void 0:b.onChannelsUpdated)==null||C.call(b,{},d)),m.length>0&&this._removeChannelsFromView(m)}_removeChannelsFromView(t){var s,o,a;const n=new Set(((s=this.filter)==null?void 0:s.pinnedChannelUrls)??[]),r=[];for(const l of t)if(n.has(l)){const u=this._pinnedChannels.findIndex(d=>d.url===l);u>=0&&(r.push(l),this._pinnedChannels.splice(u,1))}else{const u=this._channels.findIndex(d=>d.url===l);u>=0&&(r.push(l),this._channels.splice(u,1))}r.length>0&&((a=(o=this._collectionEventHandler)==null?void 0:o.onChannelsDeleted)==null||a.call(o,{},r))}get channels(){return this._isDisposed?[]:[...this._pinnedChannels,...this._channels]}get hasMore(){return this._isDisposed?!1:this._query.hasNext}async loadMore(){if(this._isDisposed)return[];if(this.hasMore){const t=await this._query.next();return this._setDefaultChangelogsSyncTimestamp(t),this._addChannelsToView(t,!0),t}return[]}setConversationListCollectionHandler(t){this._collectionEventHandler=t}dispose(){this._isDisposed||(this._isDisposed=!0,this._throttledOnChannelChanged.cancel(),this._collectionEventHandler=void 0,this._sdk.removeConnectionHandler(this._handlerId),this._sdk.groupChannel.removeGroupChannelHandler(this._handlerId),this._pinnedChannels.length=0,this._channels.length=0)}}const Vn=(e,t)=>e.findIndex(n=>n.isIdentical(t)),aa=(e,t,n)=>{if(e.length>0){const r=Vn(e,t);let s=0,o=e.length-1,a=Math.floor((s+o)/2);for(;s<o;){const u=$r(e[a],t,n);if(u>0)o=a,a=Math.floor((s+o)/2);else if(u<0)s=a+1,a=Math.floor((s+o)/2);else return{place:a,oldPosition:r}}return{place:$r(e[a],t,n)>=0?a:a+1,oldPosition:r}}return{place:e.length,oldPosition:-1}},$r=(e,t,n)=>{switch(n){case je.GroupChannelListOrder.LATEST_LAST_MESSAGE:if(e.lastMessage&&t.lastMessage){const r=t.lastMessage.createdAt-e.lastMessage.createdAt;return r===0?t.createdAt-e.createdAt:r}else return e.lastMessage?-1:t.lastMessage?1:t.createdAt-e.createdAt;default:return 0}};class oo{constructor(t){S(this,"subscribers",{});this.logger=t}async send(t){const n=la(),r=this.subscribers[t.type];if(r){this.logger.debug(`messenger.dispatcher: dispatching command: ${t.type}`,t.payload);const s=r.map(o=>o(t.payload));await Promise.all(s).catch(o=>{this.logger.error(`messenger.dispatcher: error in callback for command: ${t.type}`,o)})}return n.resolve(),n.promise}subscribe(t,n){this.subscribers[t]||(this.subscribers[t]=[]),this.subscribers[t].push(n)}unsubscribe(t,n){const r=this.subscribers[t];r&&(this.subscribers[t]=r.filter(s=>s!==n))}}const la=()=>{let e=he,t=he;return{promise:new Promise((r,s)=>{e=r,t=s}),resolve:e,reject:t}};var Ve=(e=>(e.ConversationClose="conv.close",e.MessengerSettingsUpdated="messenger.settings.updated",e.ActiveChannelUpdated="active.channel.updated",e.AnonymousSessionTokenExpired="anon.token.expired",e.AuthTokenRefreshed="auth.token.refreshed",e))(Ve||{});class Ot{constructor(t={}){S(this,"payload");this.payload=t}toJSON(){return JSON.stringify({type:this.type,payload:this.payload})}}const lt={CloseConversation:e=>new ca(e),MessengerSettingsUpdated:e=>new ua(e),ActiveChannelUpdated:e=>new da(e),AnonymousSessionTokenExpired:()=>new ma,AuthTokenRefreshed:()=>new ha};class ca extends Ot{constructor(){super(...arguments);S(this,"type","conv.close")}}class ua extends Ot{constructor(){super(...arguments);S(this,"type","messenger.settings.updated")}}class da extends Ot{constructor(){super(...arguments);S(this,"type","active.channel.updated")}}class ma extends Ot{constructor(){super(...arguments);S(this,"type","anon.token.expired")}}class ha extends Ot{constructor(){super(...arguments);S(this,"type","auth.token.refreshed")}}var rr=(e=>(e[e.VERBOSE=0]="VERBOSE",e[e.DEBUG=1]="DEBUG",e[e.INFO=2]="INFO",e[e.WARN=3]="WARN",e[e.ERROR=4]="ERROR",e[e.NONE=5]="NONE",e))(rr||{});class io{constructor(t){S(this,"level");this.level=t}verbose(...t){this.level<=0&&console.log(`[${ht}/verbose]`,...t)}debug(...t){this.level<=1&&console.log(`[${ht}/debug]`,...t)}info(...t){this.level<=2&&console.log(`[${ht}/info]`,...t)}warn(...t){this.level<=3&&console.warn(`[${ht}/warn]`,...t)}error(...t){this.level<=4&&console.error(`[${ht}/error]`,...t)}}class ao{constructor({userId:t,authToken:n,sessionHandler:r}){S(this,"userId");S(this,"authToken");S(this,"sessionHandler");this.userId=t,this.authToken=n,this.sessionHandler=r}}class zn{constructor(){S(this,"userId");S(this,"authToken");S(this,"sessionHandler")}}const fa=e=>({onSessionTokenRequired:t=>{t(null),e.send(lt.AnonymousSessionTokenExpired())}}),ga="ai_agent:stats",pa="conversation_initial_render",_a=800220;var _e=(e=>(e.AUTH="auth_duration",e.GET_CHANNEL="get_channel_duration",e.GET_MESSAGES="get_messages_duration",e.TOTAL_DURATION="total_duration",e.TOTAL_DURATION_FROM_CACHE="total_duration_from_cache",e))(_e||{});class Ea{constructor(){S(this,"timers",new Map);S(this,"committed",!1);S(this,"commitCallback",null);S(this,"conversationId",null);S(this,"channelUrl",null);S(this,"errorCode",null);S(this,"errorDescription",null);S(this,"extraData",{})}setCommitCallback(t){return this.commitCallback=t,this}setConversationId(t){return this.conversationId=t,this}setChannelUrl(t){return this.setExtra("channel_url",t),this}setError(t,n){return this.errorCode=t??_a,this.errorDescription=n,this}setExtra(t,n){return n!=null&&(this.extraData[t]=n),this}startTimer(t){if(this.committed)return this;const n=this.timers.get(t);return(n==null?void 0:n.startTime)!==null&&(n==null?void 0:n.startTime)!==void 0?this:(this.timers.set(t,{startTime:Date.now(),endTime:null}),this)}stopTimer(t){if(this.committed)return this;const n=this.timers.get(t);return!n||n.startTime===null||n.endTime!==null?this:(this.timers.set(t,{...n,endTime:Date.now()}),this)}getDuration(t){const n=this.timers.get(t);return!n||n.startTime===null||n.endTime===null?null:n.endTime-n.startTime}isCommitted(){return this.committed}commit(){if(this.committed||!this.commitCallback)return!1;const t=this.buildPayload();return t?(this.committed=!0,this.commitCallback(ga,t)):!1}}class ba extends Ea{constructor(){super(...arguments);S(this,"presentMethod","direct_present")}setPresentMethod(n){return this.presentMethod=n,this}getMetricKey(){return pa}buildPayload(){const n=this.getDuration(_e.AUTH),r=this.getDuration(_e.GET_CHANNEL),s=this.getDuration(_e.GET_MESSAGES),o=this.getDuration(_e.TOTAL_DURATION_FROM_CACHE),a=this.getDuration(_e.TOTAL_DURATION),l={...this.extraData,present_method:this.presentMethod,...n!==null&&{auth_duration:n},...r!==null&&{get_channel_duration:r},...s!==null&&{get_messages_duration:s},...o!==null&&{total_duration_from_cache:o}},u={key:this.getMetricKey(),value:a!==null?String(a):"0"};return this.conversationId!==null&&(u.conversation_id=this.conversationId),this.errorCode!==null&&(u.error_code=this.errorCode),this.errorDescription!==null&&(u.error_description=this.errorDescription),Object.keys(l).length>0&&(u.extra=l),u}}class Ca{constructor(t){S(this,"commitCallback");S(this,"presentMethod","direct_present");S(this,"stats",null);this.commitCallback=t}getOrCreateStats(){return(!this.stats||this.stats.isCommitted())&&(this.stats=new ba().setCommitCallback(this.commitCallback).setPresentMethod(this.presentMethod)),this.stats}onAuthStart(){this.getOrCreateStats().startTimer(_e.TOTAL_DURATION).startTimer(_e.TOTAL_DURATION_FROM_CACHE).startTimer(_e.AUTH)}onAuthComplete(){var t;(t=this.stats)==null||t.stopTimer(_e.AUTH)}onAuthError(t){this.stats&&!this.stats.isCommitted()&&this.stats.stopTimer(_e.AUTH).setError(t instanceof le.SendbirdError?t.code:void 0,t.message).stopTimer(_e.TOTAL_DURATION).commit()}onGetChannelStart(){var t;(t=this.stats)==null||t.startTimer(_e.GET_CHANNEL)}onGetChannelComplete(t){this.stats&&(this.stats.stopTimer(_e.GET_CHANNEL),t!==void 0&&this.stats.setConversationId(t),this.stats.startTimer(_e.GET_MESSAGES))}onGetChannelError(t){this.stats&&!this.stats.isCommitted()&&this.stats.stopTimer(_e.GET_CHANNEL).setError(t instanceof le.SendbirdError?t.code:void 0,t.message).stopTimer(_e.TOTAL_DURATION).commit()}onCacheResult(t){this.stats&&!this.stats.isCommitted()&&(t&&this.stats.setError(t instanceof le.SendbirdError?t.code:void 0,t.message),this.stats.stopTimer(_e.TOTAL_DURATION_FROM_CACHE))}onApiResult(t){this.stats&&!this.stats.isCommitted()&&(t&&this.stats.setError(t instanceof le.SendbirdError?t.code:void 0,t.message),this.stats.stopTimer(_e.TOTAL_DURATION).stopTimer(_e.GET_MESSAGES).commit())}setChannelUrl(t){var n;(n=this.stats)==null||n.setChannelUrl(t)}cleanup(){var t;(t=this.stats)==null||t.commit()}setPresentMethod(t){var n;this.presentMethod=t,(n=this.stats)==null||n.setPresentMethod(t)}clear(){this.stats=null}}function va(){let e=null,t=0;const n=(r,s)=>{if((e==null?void 0:e.key)===r)return e.promise;const o=++t,l=(e?e.promise.catch(()=>{}).then(()=>s()):s()).finally(()=>{(e==null?void 0:e.id)===o&&(e=null)});return e={key:r,id:o,promise:l},l};return n.isPending=()=>e!==null,n}const Qe={conversation:{isTalkToAgentViewEnabled:!0,scrollMode:"auto",newMessageIndicatorEnabled:!0,senderAvatarEnabled:!0,messageAlertSoundEnabled:!1,header:{avatarEnabled:!0},input:{camera:{photoEnabled:!0},gallery:{photoEnabled:!0},fileEnabled:!0},fileViewer:{downloadEnabled:!0}}},Pr=e=>{var t,n,r,s,o,a,l,u,d,m,h,f,v,b;return e?{...Qe,...e,conversation:{...Qe.conversation,...e==null?void 0:e.conversation,header:{...(t=Qe.conversation)==null?void 0:t.header,...(n=e==null?void 0:e.conversation)==null?void 0:n.header},input:{...(r=Qe.conversation)==null?void 0:r.input,...(s=e==null?void 0:e.conversation)==null?void 0:s.input,camera:{...(a=(o=Qe.conversation)==null?void 0:o.input)==null?void 0:a.camera,...(u=(l=e==null?void 0:e.conversation)==null?void 0:l.input)==null?void 0:u.camera},gallery:{...(m=(d=Qe.conversation)==null?void 0:d.input)==null?void 0:m.gallery,...(f=(h=e==null?void 0:e.conversation)==null?void 0:h.input)==null?void 0:f.gallery}},fileViewer:{...(v=Qe.conversation)==null?void 0:v.fileViewer,...(b=e==null?void 0:e.conversation)==null?void 0:b.fileViewer}}}:Qe},lo=(e,t)=>{if(e)return e.members.filter(n=>n.userId!==t).sort((n,r)=>r.joinedAt-n.joinedAt)[0]},De=e=>{var t,n;return!!(e!=null&&e.isAIAgent&&((t=e==null?void 0:e.conversation)==null?void 0:t.status)===Re.ConversationStatus.CLOSED||e!=null&&e.isDesk&&((n=e==null?void 0:e.helpdeskInfo)==null?void 0:n.ticketStatus)==="closed")},sr=e=>{var t,n;return!!(e!=null&&e.isAIAgent&&((t=e==null?void 0:e.conversation)==null?void 0:t.status)===Re.ConversationStatus.OPEN||e!=null&&e.isDesk&&((n=e==null?void 0:e.helpdeskInfo)==null?void 0:n.ticketStatus)==="open")};function nt(e){var n,r,s;return typeof(((n=e==null?void 0:e.conversation)==null?void 0:n.handedOverAt)??((s=(r=e==null?void 0:e.conversation)==null?void 0:r.handoff)==null?void 0:s.timestamp))=="number"}function ya(e){var r;const t=(r=e==null?void 0:e.conversation)==null?void 0:r.handoff;return t?typeof t.requestedAt=="number"&&!nt(e):!1}function Sa(e){var t;if(((t=e==null?void 0:e.resolution)==null?void 0:t.determinedBy)==="user")return e.resolution.isResolved}function Fr(e){return!!e&&e<Date.now()}function Aa(e){return!e.title}function xa(e,t){var n;if(e)return Aa(e)?{...e,title:t.title,csat_question:t.question,csat_scores:[{label:"",image_url:"https://static.dashboard.sendbird.com/assets/ai-agent/angry-active.png"},{label:"",image_url:"https://static.dashboard.sendbird.com/assets/ai-agent/suspicious-active.png"},{label:"",image_url:"https://static.dashboard.sendbird.com/assets/ai-agent/neutral-active.png"},{label:"",image_url:"https://static.dashboard.sendbird.com/assets/ai-agent/smile-active.png"},{label:"",image_url:"https://static.dashboard.sendbird.com/assets/ai-agent/happy-active.png"}],cre:{required:((n=e.cre)==null?void 0:n.required)??!0,question:t.cre.question,positive_label:t.cre.positive_label,negative_label:t.cre.negative_label},follow_up:[{response_type:"free_text",scores:[1,2,3,4,5],question:t.followUp.question,always_visible:!1}],csat_submit_label:t.submit_label,csat_submitted_label:t.submitted_label}:e}class Ta{constructor(){S(this,"_channelHandlerId",null);S(this,"_connectionHandlerId",null);S(this,"_handleActiveChannelChangedThrottled",null);S(this,"_setupChannelHandler",()=>{const t=Date.now();this._channelHandlerId=`aiagent_channel_${t}`,this._connectionHandlerId=`aiagent_connection_${t}`,this._handleActiveChannelChangedThrottled=ro(s=>{var o,a;(a=this._session)==null||a._updateActiveChannel({url:s.url,status:De(s)?"closed":"open",conversationStatus:(o=s.conversation)==null?void 0:o.status}),this._logger.debug("AIAgentEventManager: activeChannel updated",s.url)},250,{leading:!0,trailing:!1});const n=new je.GroupChannelHandler({onChannelChanged:s=>{var o,a;s.isGroupChannel()&&s.url===((o=this._session)==null?void 0:o.activeChannel.url)&&((a=this._handleActiveChannelChangedThrottled)==null||a.call(this,s))}}),r=new le.ConnectionHandler({onReconnectSucceeded:async()=>{await this._syncActiveChannelOnReconnect()}});this._chatClient.chatSDK.groupChannel.addGroupChannelHandler(this._channelHandlerId,n),this._chatClient.chatSDK.addConnectionHandler(this._connectionHandlerId,r),this._logger.debug("AIAgentEventManager: handlers registered",{channelHandlerId:this._channelHandlerId,connectionHandlerId:this._connectionHandlerId})});S(this,"_removeChannelHandler",()=>{this._channelHandlerId&&(this._chatClient.chatSDK.groupChannel.removeGroupChannelHandler(this._channelHandlerId),this._channelHandlerId=null),this._connectionHandlerId&&(this._chatClient.chatSDK.removeConnectionHandler(this._connectionHandlerId),this._connectionHandlerId=null),this._handleActiveChannelChangedThrottled&&(this._handleActiveChannelChangedThrottled.cancel(),this._handleActiveChannelChangedThrottled=null),this._logger.debug("AIAgentEventManager: handlers removed")});S(this,"_syncActiveChannelOnReconnect",async()=>{var n,r,s;const t=(n=this._session)==null?void 0:n.activeChannel.url;if(t)try{const a=await(await this._chatClient.chatSDK.groupChannel.getChannel(t)).refresh();a.url===t&&((s=this._session)==null||s._updateActiveChannel({url:a.url,status:De(a)?"closed":"open",conversationStatus:(r=a.conversation)==null?void 0:r.status}),this._logger.debug("AIAgentEventManager: activeChannel synced on reconnect",a.url))}catch(o){this._logger.error("AIAgentEventManager: failed to sync activeChannel on reconnect",o)}});S(this,"_initConversationIfNeeded",async t=>{if(t.isAIAgent&&!t.conversation)try{await t.initConversation({aiAgentId:this.aiAgentId})}catch(n){this._logger.warn("AIAgentEventManager: initConversation failed",n)}});S(this,"onMessengerSettingsUpdated",t=>(this._dispatcher.subscribe(Ve.MessengerSettingsUpdated,t),()=>{this._dispatcher.unsubscribe(Ve.MessengerSettingsUpdated,t)}));S(this,"onActiveChannelUpdated",t=>(this._dispatcher.subscribe(Ve.ActiveChannelUpdated,t),()=>{this._dispatcher.unsubscribe(Ve.ActiveChannelUpdated,t)}));S(this,"onAuthTokenRefreshed",t=>(this._dispatcher.subscribe(Ve.AuthTokenRefreshed,t),()=>{this._dispatcher.unsubscribe(Ve.AuthTokenRefreshed,t)}))}}class Ia{constructor(t){S(this,"_sdkUser");S(this,"_userSession");S(this,"_dispatcher");S(this,"_activeChannel");S(this,"_updateActiveChannel",t=>{this._activeChannel=t,this._dispatcher.send(lt.ActiveChannelUpdated({channelUrl:t.url,status:t.status,conversationStatus:t.conversationStatus}))});S(this,"_updateAuthToken",t=>{this._userSession.authToken=t,this._dispatcher.send(lt.AuthTokenRefreshed())});this._sdkUser=t.sdkUser,this._userSession=t.userSession,this._dispatcher=t.dispatcher,this._activeChannel=t.activeChannel}get sdkUser(){return this._sdkUser}get userSession(){return this._userSession}get activeChannel(){return this._activeChannel}}const co=e=>{try{const t=JSON.parse(e);return typeof t=="string"?JSON.stringify(t).slice(1,-1):e.trim()}catch{return JSON.stringify(e).slice(1,-1)}},uo=e=>JSON.parse(e),wa=e=>JSON.parse(e);function Ma(e,t){const[n,r]=t.split(",").map(s=>s.trim());return e==="dark"&&r||n}function ka(e){const t={};function n(r,s=""){for(const[o,a]of Object.entries(r)){const l=s?`${s}.${o}`:o;a&&typeof a=="object"&&!Array.isArray(a)?n(a,l):t[l]=a}}return n(e),t}function La({template:e,variables:t,variableKeyPattern:n,variableValueTransformer:r}){return Object.entries(t).reduce((s,[o,a])=>{if(!r&&!["number","boolean","string"].includes(typeof a))throw new Error(`If transformer is not provided, value(${o}:${a}) must be a {string, number, or boolean}`);const l=r?r(a):String(a),u=n(o);return s.replace(u,co(l))},e)}async function Ra({template:e,variables:t,variableKeyPattern:n,variableValueTransformer:r}){return(await Promise.all(Object.entries(t).map(async([o,a])=>{const l=await r(a);return{regex:n(o),transformedValue:l}}))).reduce((o,{regex:a,transformedValue:l})=>o.replace(a,co(l)),e)}var qn=(e=>(e[e.EXTERNAL_AUTH_TOKEN_EXPIRED=1]="EXTERNAL_AUTH_TOKEN_EXPIRED",e))(qn||{});const mo=e=>typeof e=="object"&&e!==null,Br=(e,t)=>t in e&&typeof e[t]=="string"&&e[t]!=="",Oa=e=>!mo(e)||!Br(e,"channel_url")||!Br(e,"ai_agent_id")?null:{channelUrl:e.channel_url,aiAgentId:e.ai_agent_id},Na={1:Oa};function Da(e){if(!mo(e)||!("cat"in e)||typeof e.cat!="number"||!("data"in e))return null;const t=e.cat,n=Na[t];if(!n)return null;const r=n(e.data);return r?{category:t,data:r}:null}function $a(e,t,n,r){const s=Ki.default.init({appId:e,modules:[new je.GroupChannelModule,new Re.AIAgentModule],localCacheEnabled:!0,options:new le.SendbirdChatOptions({typingIndicatorInvalidateTime:2e4}),...r});return s.addSendbirdExtensions([{version:n,product:le.SendbirdProduct.AI_AGENT,platform:t.platform}],{platform:t.deviceOSPlatform,version:t.deviceOSVersion},t.customData)||console.warn("Invalid Sendbird Extensions",t),s}function Pa(e){const t=n=>{throw new Error(`Please initialize chat sdk with ${n}`)};typeof e.groupChannel!="object"&&t("GroupChannelModule"),typeof e.aiAgent!="object"&&t("AIAgentModule")}const Fa=[400300,400301,400302,400310];class or{constructor(t,n,r){S(this,"chatSDK");S(this,"_logger");S(this,"_cache");S(this,"connect",async(t,n,r,s)=>{if(this._logger.debug("ChatClient.connect: start",t.userId),n){const o=new le.SessionHandler({...n,onSessionTokenRequired:this._interceptTokenRefresh(n.onSessionTokenRequired,r,s)});this.chatSDK.setSessionHandler(o),this.chatSDK.aiAgent.addEventHandler(qn.EXTERNAL_AUTH_TOKEN_EXPIRED.toString(),a=>{var u;this._logger.debug("ChatClient.connect: EXTERNAL_AUTH_TOKEN_EXPIRED event received",a);const l=Da(a);(l==null?void 0:l.category)===qn.EXTERNAL_AUTH_TOKEN_EXPIRED&&(this._logger.debug("ChatClient.connect: calling onExternalAuthTokenExpired handler",l.data),(u=n==null?void 0:n.onExternalAuthTokenExpired)==null||u.call(n,l.data))})}try{return await this.chatSDK.connect(t.userId,t.authToken),await this._syncTemplatesIfNeeded(),this._logger.debug("ChatClient.connect: end",this.chatSDK.currentUser),this.chatSDK.currentUser}catch(o){const a=o;if(this.chatSDK.isCacheEnabled){if(this._isCacheRestrictedError(a))this._logger.warn("ChatClient.connect","offline connect restricted",a.message,a.code),this._logger.warn("ChatClient.connect","clear cached-data"),await this.chatSDK.clearCachedData().catch(l=>this._logger.warn("ChatClient.connect","clear cached-data failure",l));else if(this.chatSDK.currentUser)return this._logger.debug("ChatClient.connect: end (offline)",this.chatSDK.currentUser),this.chatSDK.currentUser}throw this._logger.warn("ChatClient.connect","connect failure",a.message,a.code),a}});S(this,"disconnect",async()=>{this._logger.debug("ChatClient.disconnect: start"),this.chatSDK.aiAgent.removeAllEventHandlers(),await this.chatSDK.disconnect(),this._cache.template.clear(),this._logger.debug("ChatClient.disconnect: end")});S(this,"getChannel",async t=>this.chatSDK.groupChannel.getChannel(t));S(this,"patchContext",async(t,n,r)=>this.chatSDK.aiAgent.patchContext(t,n,r));S(this,"updateContext",async(t,n,r)=>this.chatSDK.aiAgent.updateContext(t,n,r));S(this,"requestMessengerSettings",async t=>{var s;if(t.userId===""){const o=new Error("userId cannot be empty string for messenger settings request");throw this._logger.error("ChatClient.requestMessengerSettings: invalid userId",o),o}const n={...t,shouldSendFirstMessage:!1};this._logger.debug("ChatClient.requestMessengerSettings: requesting",n);const r=await this.chatSDK.aiAgent.requestMessengerSettings(n);return this._logger.debug("ChatClient.requestMessengerSettings: received",(s=r.active_channel)==null?void 0:s.channel_url),r});S(this,"_interceptTokenRefresh",(t,n,r)=>{if(t)return async(s,o)=>{new Promise((a,l)=>t==null?void 0:t(a,l)).then(a=>{a?n==null||n(a):r==null||r(),s(a)}).catch(a=>{r==null||r(),o(a)})}});S(this,"_isCacheRestrictedError",t=>Fa.some(n=>t.code===n));S(this,"_syncTemplatesIfNeeded",async()=>{var r,s;const t=(s=(r=this.chatSDK.appInfo)==null?void 0:r.aiAgentInfo)==null?void 0:s.templateListToken;if(!t)return;const n=this._cache.template.getCachedToken();if(!(n&&n===t)){this._logger.debug("ChatClient._syncTemplatesIfNeeded: syncing templates");try{const{templates:o,token:a}=await this.chatSDK.aiAgent.getMessageTemplates({limit:20});for(const{template:l}of o){const{key:u}=uo(l);this._cache.template.set(u,l)}this._cache.template.setCachedToken(a),this._logger.debug("ChatClient._syncTemplatesIfNeeded: sync completed")}catch(o){this._logger.error("ChatClient._syncTemplatesIfNeeded: error",o)}}});this.chatSDK=t,this._logger=n,this._cache=r}static init(t){let n;return t.chatSDK?(Pa(t.chatSDK),n=t.chatSDK):n=$a(t.appId,t.extensions,t.messengerVersion,t.chatParams),new or(n,t.logger,t.cache)}}const Ut=new Map,ho={set:(e,t)=>{Ut.set(e,t)},get:e=>{if(Ut.size===0)throw new Error("AIAgent platform not configured. Ensure you are using the correct package (@sendbird/ai-agent-messenger-react or @sendbird/ai-agent-messenger-react-native).");if(e){const n=Ut.get(e);if(!n)throw new Error(`AIAgent platform "${e}" is not configured.`);return{platform:e,...n}}const t=Ut.entries().next().value;return{platform:t[0],...t[1]}}},Ba=e=>Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0));class Ur extends Error{constructor(n,r){const s=(r==null?void 0:r.detail)??"";super(s||`Desk API error (${n})`);S(this,"status");S(this,"code");S(this,"detail");this.name="DeskApiError",this.status=n,this.code=(r==null?void 0:r.code)??"",this.detail=s}}var ir=(e=>(e.INITIALIZED="INITIALIZED",e.PROACTIVE="PROACTIVE",e.PENDING="PENDING",e.ACTIVE="ACTIVE",e.CLOSED="CLOSED",e.WORK_IN_PROGRESS="WORK_IN_PROGRESS",e.IDLE="IDLE",e))(ir||{}),ar=(e=>(e.URGENT="URGENT",e.HIGH="HIGH",e.MEDIUM="MEDIUM",e.LOW="LOW",e))(ar||{}),fo=(e=>(e.ERR_CREDENTIALS_NOT_PROVIDED="desk401100",e.ERR_NON_AUTHORIZED="desk401103",e.ERR_SESSION_KEY_EXPIRED="desk401106",e.ERR_SESSION_TOKEN_REVOKED="desk401107",e.ERR_USER_DEACTIVATED="desk401108",e.ERR_USER_NOT_EXIST="desk401109",e))(fo||{});const Ua=e=>e==="desk401103"||e==="desk401106"||e==="desk401107"||e==="desk401108"||e==="desk401109";class Ha{constructor(t){S(this,"_appId");S(this,"_apiHost");S(this,"_logger");S(this,"_credential",null);S(this,"_authRefreshPromise",null);S(this,"_onDeskTokenRefreshRequired",async()=>!1);S(this,"request",async(t,n)=>{const r=n.authRequired??!0,s=`${this._apiHost}${t}`;r&&this._authRefreshPromise&&(this._logger.debug("DeskApiClient: waiting for in-flight recovery..."),await this._authRefreshPromise);const o=await this._fetch(s,n);return r&&o.status===401?this._handleUnauthorized(o,s,n):this._toResult(o)});S(this,"setCredential",(t,n=async()=>!1)=>{this._authRefreshPromise=null,this._onDeskTokenRefreshRequired=n,this._credential=t});S(this,"clearCredential",()=>{this._authRefreshPromise=null,this._credential=null,this._onDeskTokenRefreshRequired=async()=>!1});S(this,"_handleUnauthorized",async(t,n,r)=>{const s=await this._parseErrorCode(t);if(!Ua(s))return this._toResult(t);if(!await this._refresh(s)||this._credential===null)return this._toResult(t);const a=await this._fetch(n,r);return this._toResult(a)});S(this,"_refresh",async t=>{if(this._authRefreshPromise)return this._logger.debug("DeskApiClient: refresh already in progress, joining..."),this._authRefreshPromise;try{return this._authRefreshPromise=this._onDeskTokenRefreshRequired({reason:t}).catch(n=>(this._logger.error("DeskApiClient: delegated recovery failed",n),!1)),await this._authRefreshPromise}finally{this._authRefreshPromise=null}});S(this,"_fetch",(t,n)=>fetch(`${t}?${this._buildParams(n.params)}`,{method:n.method,headers:this._buildHeaders(n.authRequired??!0,n.headers),...n.body?{body:JSON.stringify(this._buildBody(n.body))}:{}}));S(this,"_buildParams",t=>new URLSearchParams({sendbirdAppId:this._appId,...t}));S(this,"_buildBody",t=>({sendbirdAppId:this._appId,...t}));S(this,"_buildHeaders",(t,n)=>({"content-type":"application/json",...t&&this._credential?{sendbirdDeskToken:this._credential.deskToken}:{},...n}));S(this,"_toResult",async t=>{if(!t.ok){const r=await t.json().catch(()=>({}));throw new Ur(t.status,r)}const n=await t.text();if(n)try{return JSON.parse(n)}catch{throw new Ur(t.status,{})}});S(this,"_parseErrorCode",async t=>{const n=await t.clone().json().catch(()=>({}));return n==null?void 0:n.code});this._appId=t.appId,this._apiHost=t.customApiHost??`https://desk-api-${t.appId}.sendbird.com/sapi`,this._logger=t.logger}get credential(){return this._credential}}class sn{constructor(t,n){S(this,"id");S(this,"title");S(this,"status");S(this,"agent");S(this,"priority");S(this,"group");S(this,"firstResponseTime");S(this,"issuedAt");S(this,"customFields");S(this,"_client");S(this,"refresh",async()=>this._client.getTicket(this.id));this.id=t.id,this.title=t.title,this.status=t.status,this.agent=t.agent,this.priority=t.priority,this.group=t.group,this.firstResponseTime=t.firstResponseTime,this.issuedAt=t.issuedAt,this.customFields=t.customFields,this._client=n}static _fromResponse(t,n){var r;return new sn({id:t.id,title:t.channelName??null,status:t.status2??ir.INITIALIZED,agent:(()=>{var o;const s=(o=t.recentAssignment)==null?void 0:o.agent;return s?{userId:s.sendbirdId??"",name:s.displayName??"",profileUrl:s.photoThumbnailUrl??""}:null})(),priority:t.priority??ar.MEDIUM,group:t.group??0,firstResponseTime:t.firstResponseTime??-1,issuedAt:t.issuedAt??null,customFields:Object.fromEntries(((r=t.customFields)==null?void 0:r.map(s=>[s.key,s.value]))??[])},n)}}class lr{constructor(t){S(this,"_logger");S(this,"_apiClient");S(this,"_onDeskTokenRefreshRequired");S(this,"refreshDeskAuthToken",async t=>this._apiClient.credential?this.authenticate({userId:this._apiClient.credential.userId,accessToken:t,onDeskTokenRefreshRequired:this._onDeskTokenRefreshRequired}):!1);S(this,"authenticate",async t=>{this._logger.debug("DeskClient.authenticate: start",t.userId);try{const{token:n}=await this._apiClient.request("/customers/auth/",{method:"POST",headers:{sendbirdAccessToken:t.accessToken},body:{sendbirdId:t.userId},authRequired:!1});return t.onDeskTokenRefreshRequired!==void 0&&(this._onDeskTokenRefreshRequired=t.onDeskTokenRefreshRequired),this._apiClient.setCredential({userId:t.userId,deskToken:n,chatToken:t.accessToken},this._onDeskTokenRefreshRequired),this._logger.debug("DeskClient.authenticate: end"),!0}catch(n){return this._apiClient.clearCredential(),this._logger.debug("DeskClient.authenticate: failed",n),!1}});S(this,"deauthenticate",()=>{this._apiClient.clearCredential(),this._onDeskTokenRefreshRequired=void 0,this._logger.debug("DeskClient.deauthenticate: token cleared")});S(this,"setCustomerLanguage",async t=>{this._assertAuthenticated(this._apiClient),this._logger.debug("DeskClient.setCustomerLanguage: start",t),await this._apiClient.request("/customers/language/",{method:"PATCH",body:{language:t}}),this._logger.debug("DeskClient.setCustomerLanguage: end")});S(this,"getTicket",async t=>{this._assertAuthenticated(this._apiClient);const n=await this._apiClient.request(`/tickets/${encodeURIComponent(t)}/`,{method:"GET"});return sn._fromResponse(n,this)});S(this,"createTicket",async t=>{this._assertAuthenticated(this._apiClient);const n=await this._apiClient.request("/tickets/",{method:"POST",body:Ba({channelName:t.title,channelType:"SENDBIRD_JAVASCRIPT",customFields:t.customFields?JSON.stringify(t.customFields):void 0,info:JSON.stringify({ticket:{subject:t.title,requester:{name:t.name,email:this._apiClient.credential.userId}}}),priority:t.priority,groupKey:t.groupKey})});return sn._fromResponse(n,this)});this._logger=t.logger,this._apiClient=new Ha(t)}static init(t){return new lr(t)}_assertAuthenticated(t){if(t.credential==null)throw new Error("DeskClient is not authenticated")}}class cr{constructor(){S(this,"authenticate",async t=>!1);S(this,"deauthenticate",()=>{});S(this,"refreshDeskAuthToken",async()=>!1);S(this,"setCustomerLanguage",async()=>{});S(this,"getTicket",async()=>{throw new Error("DeskClient is disabled via __SBA_USE_DESK_CLIENT__")})}static init(){return new cr}}function Ga(e){return{get:t=>e.getString(t)??null,set:(t,n)=>{e.set(t,n)},delete:t=>{e.delete?e.delete(t):e.remove&&e.remove(t)},getKeys:t=>e.getAllKeys().filter(n=>n.startsWith(t))}}const Va=1440*60*1e3,za=typeof __SBA_USE_DESK_CLIENT__>"u"||__SBA_USE_DESK_CLIENT__;function ot(e){if(!e)throw new Error("Not authenticated. Call authenticate() first.")}function qa(e,t){return Object.entries(t).every(([n,r])=>e[n]===r)}class on extends Ta{constructor(n){super();S(this,"appId");S(this,"aiAgentId");S(this,"_chatClient");S(this,"_deskClient");S(this,"_cache");S(this,"_logger");S(this,"_dispatcher");S(this,"_session",null);S(this,"language");S(this,"countryCode");S(this,"context");S(this,"queryParams");S(this,"_config");S(this,"_networkStateAdapter");S(this,"_forceCreateChannel");S(this,"_agentVersion");S(this,"_statsTrackers");S(this,"_operationQueue",va());S(this,"dispose",()=>{this._operationQueue.isPending()||(this._logger.debug("AIAgent.dispose: start"),this._chatClient.chatSDK.connectionState==="OPEN"&&this._chatClient.chatSDK.disconnectWebSocket(),this._removeChannelHandler(),this._session=null,this._deskClient.deauthenticate(),this._statsTrackers.initialRender.clear(),this._logger.debug("AIAgent.dispose: end"))});S(this,"initConversationIfNeeded",n=>this._initConversationIfNeeded(n));S(this,"authenticate",n=>{if(!this.appId)return Promise.reject(new Error("appId is required"));if(!this.aiAgentId)return Promise.reject(new Error("aiAgentId is required"));const r=n&&"userId"in n?`auth:${n.userId}`:"auth:anon";return this._operationQueue(r,async()=>{var a,l,u,d,m;this._logger.debug("AIAgent.authenticate: start"),this._statsTrackers.initialRender.onAuthStart();const s=this._getSessionCandidate(n),o=(a=s.userSessionCandidate)!=null&&a.userId?this._cache.messenger.getSettings(s.userSessionCandidate.userId):null;o!=null&&o.bot&&this._dispatcher.send(lt.MessengerSettingsUpdated({settings:o,source:"cache"}));try{const h=await this._chatClient.requestMessengerSettings({aiAgentId:this.aiAgentId,userId:(l=s.userSessionCandidate)==null?void 0:l.userId,language:this.language,country:this.countryCode,context:this.context,knownActiveChannelUrl:(u=o==null?void 0:o.active_channel)==null?void 0:u.channel_url,forceCreateChannel:this._forceCreateChannel,agentVersion:this._agentVersion});let f;if(h.auto_created_user)if(s.type==="manual")this._logger.warn("Received auto created user info but current session is manual. Ignoring auto created user info."),f={userId:s.userSessionCandidate.userId,authToken:s.userSessionCandidate.authToken};else{const{user_id:C,session_token:g,expire_at:y}=h.auto_created_user;this._cache.messenger.setAnonUser({userId:C,authToken:g,expireAt:y}),f={userId:C,authToken:g},this._logger.debug("AIAgent.authenticate: anonymous user created",C)}else f={userId:((d=s.userSessionCandidate)==null?void 0:d.userId)??"",authToken:((m=s.userSessionCandidate)==null?void 0:m.authToken)??""};this._cache.messenger.setSettings(f.userId,h),this._dispatcher.send(lt.MessengerSettingsUpdated({settings:h,source:"server"}));const v=(()=>{var C;return s.type==="anonymous"?fa(this._dispatcher):(C=s.userSessionCandidate)==null?void 0:C.sessionHandler})(),b=await this._chatClient.connect(f,v,C=>{var g;this._logger.debug("AIAgent: session token refreshed"),(g=this._session)==null||g._updateAuthToken(C),this._deskClient.refreshDeskAuthToken(C)},()=>{this._logger.debug("AIAgent: session token unavailable, deauthenticating desk"),this._deskClient.deauthenticate()});return await this._deskClient.authenticate({userId:f.userId,accessToken:f.authToken,onDeskTokenRefreshRequired:async({reason:C})=>{var g;if(C===fo.ERR_SESSION_KEY_EXPIRED){await new Promise(E=>setTimeout(E,2e3));const y=(g=this._session)==null?void 0:g.userSession.authToken;return y?await this._deskClient.refreshDeskAuthToken(y):!1}return!1}}),(o==null?void 0:o.language)!==h.language&&this._deskClient.setCustomerLanguage(this.language).catch(()=>{}),this._statsTrackers.initialRender.onAuthComplete(),this._session=new Ia({sdkUser:b,userSession:f,activeChannel:{url:h.active_channel.channel_url,status:"open"},dispatcher:this._dispatcher}),this._setupChannelHandler(),this._logger.debug("AIAgent.authenticate: end",{userId:f.userId}),h}catch(h){throw this._statsTrackers.initialRender.onAuthError(h),h}})});S(this,"deauthenticate",()=>this._operationQueue("deauth",async()=>{var n;this._logger.debug("AIAgent.deauthenticate: start"),await this._chatClient.disconnect(),this._deskClient.deauthenticate(),this._cache.messenger.clear((n=this._session)==null?void 0:n.userSession.userId),this._session=null,this._removeChannelHandler(),this._statsTrackers.initialRender.clear(),this._logger.debug("AIAgent.deauthenticate: end")}));S(this,"createConversation",async n=>{ot(this._session),this._logger.debug("AIAgent.createConversation: start",n);const r=await this._chatClient.requestMessengerSettings({...n,userId:this._session.userSession.userId,knownActiveChannelUrl:void 0,agentVersion:this._agentVersion}),s=r.active_channel.channel_url;return this._cache.messenger.setSettings(this._session.userSession.userId,r),this._logger.debug("AIAgent.createConversation: end",s),s});S(this,"searchConversation",async n=>{if(ot(this._session),this._logger.debug("AIAgent.searchConversation: start",n),Object.entries(n.context).length===0)return this._logger.debug("AIAgent.searchConversation: empty context, returning empty array"),[];const r=this.chatSDK.aiAgent.createConversationListQuery({aiAgentId:n.aiAgentId,status:Re.ConversationStatus.OPEN,limit:100}),s=[];for(;r.hasNext;){const o=await r.next();for(const a of o)qa(a.context??{},n.context)&&s.push(a.channelInfo.url)}return this._logger.debug("AIAgent.searchConversation: end",{count:s.length}),s});S(this,"closeConversation",async n=>{var s;ot(this._session),this._logger.debug("AIAgent.closeConversation: start",n);const r=await this._chatClient.getChannel(n);((s=r.conversation)==null?void 0:s.status)===Re.ConversationStatus.OPEN?(await r.closeConversation(),this._session.activeChannel.url===n&&this._session._updateActiveChannel({url:n,status:"closed",conversationStatus:Re.ConversationStatus.CLOSED}),this._logger.debug("AIAgent.closeConversation: end")):this._logger.debug("AIAgent.closeConversation: already closed or not an AI agent conversation")});S(this,"createConversationListCollection",n=>new so(this.chatSDK,n??{}));S(this,"patchContext",async(n,r)=>{ot(this._session),this._logger.debug("AIAgent.patchContext: start",{channelUrl:n,context:r});const s=await this._chatClient.patchContext(this.aiAgentId,n,r);return this._logger.debug("AIAgent.patchContext: end",s),{...s,context:s.context??{}}});S(this,"updateContext",async(n,r)=>{ot(this._session),this._logger.debug("AIAgent.updateContext: start",{channelUrl:n,context:r});const s=await this._chatClient.updateContext(this.aiAgentId,n,r);return this._logger.debug("AIAgent.updateContext: end",s),{...s,context:s.context??{}}});S(this,"getContextObject",async n=>{ot(this._session),this._logger.debug("AIAgent.getContextObject: start",n);const s=await(await this._chatClient.getChannel(n)).getContextObject(this.aiAgentId);return this._logger.debug("AIAgent.getContextObject: end",s),{...s,context:s.context??{}}});S(this,"refreshActiveChannel",async n=>{var l,u,d;ot(this._session);const r=this._session,s=(n==null?void 0:n.useKnownActiveChannelUrl)??!0;this._logger.debug("AIAgent.refreshActiveChannel: start",{useKnownActiveChannelUrl:s});const o=await this._chatClient.requestMessengerSettings({aiAgentId:this.aiAgentId,userId:r.userSession.userId,language:this.language,country:this.countryCode,context:this.context,knownActiveChannelUrl:s?(u=(l=this._cache.messenger.getSettings(r.userSession.userId))==null?void 0:l.active_channel)==null?void 0:u.channel_url:void 0,forceCreateChannel:this._forceCreateChannel,agentVersion:this._agentVersion});if(this._session!==r)return this._logger.debug("AIAgent.refreshActiveChannel: session changed during refresh, discarding stale result"),((d=this._session)==null?void 0:d.activeChannel.url)??o.active_channel.channel_url;const a=o.active_channel.channel_url;return this._cache.messenger.setSettings(this._session.userSession.userId,o),this._session._updateActiveChannel({url:a,status:"open"}),this._logger.debug("AIAgent.refreshActiveChannel: end",a),a});S(this,"_getSessionCandidate",n=>n instanceof ao?{type:"manual",userSessionCandidate:this._getManualSessionInfo(n)}:n instanceof zn?{type:"anonymous",userSessionCandidate:this._getAnonymousSessionInfo()}:n&&typeof n=="object"?(this._logger.warn("Please use ManualSessionInfo instead of the old userSessionInfo format."),{type:"manual",userSessionCandidate:this._getManualSessionInfo(n)}):n===void 0?(this._logger.warn("Please use AnonymousSessionInfo instead of undefined userSessionInfo."),{type:"anonymous",userSessionCandidate:this._getAnonymousSessionInfo()}):{type:"anonymous",userSessionCandidate:null});S(this,"_getAnonymousSessionInfo",()=>{const n=this._cache.messenger.getAnonUser();return n?n.expireAt-Va<=Date.now()?(this._logger.debug("_getAnonymousSessionInfo: auto session expired, clear cache"),this._cache.messenger.clear(n.userId),null):(this._logger.debug("_getAnonymousSessionInfo: auto session info detected"),{userId:n.userId,authToken:n.authToken}):null});S(this,"_getManualSessionInfo",n=>{if(!n||n instanceof zn)throw new Error("userSessionInfo must be an instance of ManualSessionInfo");if(typeof n.userId!="string")throw new Error("userSessionInfo.userId must be a string");const r=["userId","authToken","sessionHandler"].filter(s=>!(s in n));return r.length>0&&this._logger.error(`_getManualSessionInfo: missing required keys in userSessionInfo: ${r.join(", ")}`),this._logger.debug("_getManualSessionInfo: manual session info detected"),{userId:n.userId,authToken:n.authToken,sessionHandler:n.sessionHandler}});this.appId=n.appId,this.aiAgentId=n.aiAgentId,this.language=n.language??"en",this.countryCode=n.countryCode,this.context=n.context,this._config=Pr(n.config),this.queryParams=n.queryParams,this._networkStateAdapter=n.networkStateAdapter,this._forceCreateChannel=n.forceCreateChannel,this._agentVersion=n.agentVersion,this._chatClient=n.chatClient,this._deskClient=n.deskClient,this._cache=n.cache,this._logger=n.logger,this._dispatcher=n.dispatcher,this._statsTrackers={initialRender:new Ca((r,s)=>this._chatClient.chatSDK.aiAgent.appendStat(r,s))}}static init(n){var h;const r=ho.get(n.platform),s=n.logger??new io(n.logLevel??rr.WARN),o=n.dispatcher??new oo(s),a=n.useMMKVStorage?Ga(n.useMMKVStorage):r.keyValueStorage,l=n.useMMKVStorage?{...n.chatParams,useMMKVStorageStore:n.useMMKVStorage}:n.chatParams,u=ia({appId:n.appId,aiAgentId:n.aiAgentId,storage:a}),d=or.init({appId:n.appId,messengerVersion:r.messengerVersion,extensions:{platform:r.platform,deviceOSPlatform:r.deviceOSPlatform,deviceOSVersion:r.deviceOSVersion},chatParams:l,chatSDK:n.chatSDK,logger:s,cache:u}),m=za?lr.init({appId:n.appId,logger:s,customApiHost:(h=n.deskParams)==null?void 0:h.customApiHost}):cr.init();return s.debug("AIAgent.init: created",{appId:n.appId,aiAgentId:n.aiAgentId}),new on({appId:n.appId,aiAgentId:n.aiAgentId,language:n.language,countryCode:n.countryCode,context:n.context,config:n.config,queryParams:n.queryParams,networkStateAdapter:r.networkStateAdapter,forceCreateChannel:n._forceCreateChannel,agentVersion:n._agentVersion,chatClient:d,deskClient:m,cache:u,logger:s,dispatcher:o})}get chatSDK(){return this._chatClient.chatSDK}get deskClient(){return this._deskClient}get session(){return this._session}get config(){return this._config}set config(n){this._config=Pr(n)}get agentVersion(){return this._agentVersion}set agentVersion(n){this._agentVersion=n}get networkStateAdapter(){return this._networkStateAdapter}get logger(){return this._logger}get dispatcher(){return this._dispatcher}get cache(){return this._cache}get statsTrackers(){return this._statsTrackers}}const Ee=(e,t)=>{const n=c.createContext(t??null),r=({children:a,value:l})=>i.createElement(n.Provider,{value:l},typeof a=="function"?a(l):a),s=({children:a})=>i.createElement(n.Consumer,null,l=>l?typeof a=="function"?a(l):a:null),o=()=>{const a=c.useContext(n);if(!a)throw new Error(`use${e}Context must be used within a ${e}Provider`);return a};return n.displayName=`${e}Context`,r.displayName=`${e}Provider`,s.displayName=`${e}Consumer`,o.displayName=`use${e}Context`,{Context:n,Provider:r,Consumer:s,useContext:o}};function qe(e){const t=c.createContext({Template:e.template,updateTemplate:()=>{},components:e.components,updateComponent:()=>{}});function n({children:o}){const[a,l]=c.useState(()=>e.template),[u,d]=c.useState(e.components),m={Template:a,updateTemplate:h=>l(()=>h),components:u,updateComponent:(h,f)=>d(v=>({...v,[h]:f}))};return i.createElement(t.Provider,{value:m},o)}function r({template:o,children:a}){const{updateTemplate:l}=c.useContext(t);return c.useLayoutEffect(()=>{o&&l(o)},[o]),i.createElement(i.Fragment,null,a)}function s({children:o}){return i.createElement(n,null,o)}return s.defaults=e,s.useContext=()=>c.useContext(t),s.Context=t,s.Template=r,Object.keys(e.components).forEach(o=>{s[o]=function({component:l}){const{updateComponent:u}=c.useContext(t);return c.useLayoutEffect(()=>{l&&u(o,l)},[l]),null}}),s}function Wa(...e){return function({children:n}){return e.reduce((r,s)=>i.createElement(s,null,r),n)}}function Ya(e,t){const n=e.lastMessage;return n!=null&&n.isAdminMessage()?n.message??"":go(e,t)}function go(e,t){var r;const n=e.lastMessage;if(n!=null&&n.isUserMessage())return n.message||"";if(n!=null&&n.isAdminMessage())return n.message??"";if(n!=null&&n.isFileMessage())return n.message||n.name||"FILE";if(n!=null&&n.isMultipleFilesMessage()){if(n.message)return n.message;const s=n.fileInfoList.length;return((r=t==null?void 0:t.formatMultipleFilesCount)==null?void 0:r.call(t,s))??`${s} photos`}return e.name}function Ka(e,t,n){var a;const r=new Date,s=new Date(((a=e.lastMessage)==null?void 0:a.createdAt)||e.createdAt),o=et.differenceInMinutes(r,s);return o<1?n.justNow:o<60?n.minutesAgo(o):et.isToday(s)?n.hoursAgo(et.differenceInHours(r,s)):t(s,n.dateShortFormat)}const ja=e=>{const t=e.match(/rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)/);return t?[Number(t[1]),Number(t[2]),Number(t[3])]:null},Ht=e=>Math.max(0,Math.min(255,e)).toString(16).padStart(2,"0"),Hr=(e,t)=>{const n=Ht(Math.round(t*255));if(e.startsWith("#")){const s=e.slice(1);return s.length===3||s.length===4?`#${s[0]}${s[0]}${s[1]}${s[1]}${s[2]}${s[2]}${n}`:`#${s.slice(0,6)}${n}`}const r=ja(e);return r?`#${Ht(r[0])}${Ht(r[1])}${Ht(r[2])}${n}`:e},Xa=(e,t)=>{if(!t)return e;const n={...e};for(const[r,s]of Object.entries(t))s&&(n[r]=s);return n},Za=e=>e.length>0,Ja=e=>{const t=e[0];if(!t)return e;const n=e.some(s=>at(s.type)),r=e.some(s=>!at(s.type));return n&&r?at(t.type)?e.filter(s=>at(s.type)):[t]:r?[t]:e},Gr=e=>e.length===0?"empty":e.every(t=>at(t.type))?"images":"non_images",Qa=({currentFiles:e,incomingFiles:t,maxAttachmentCount:n})=>{const r=Ja(t),s=Gr(e),o=Gr(r),l=s==="images"&&o==="images"?{type:"append",files:r,nextFiles:[...e,...r]}:{type:"replace",files:r,nextFiles:r};return l.nextFiles.length>n?{type:"reject",reason:"count_limit",maxAttachmentCount:n,nextFileCount:l.nextFiles.length}:l.type==="replace"&&s!=="empty"&&s!==o?{type:"confirm_replace",action:l}:{type:"apply",action:l}},gt=3,po=6,el=e=>e%gt===0?gt:po,tl=({index:e,itemCount:t})=>{const n=t%gt,r=n>0,s=r?t-n:t,o=r&&e>=s,a=o?n:gt,l=o?e-s:e%gt,u=!r&&e>=t-gt;return{columnSpan:r?po/a:1,rowItemCount:a,isLastInRow:l===a-1,isLastRow:o||u}},_o=Ee("AIAgent"),nl=_o.Provider,$e=_o.useContext;function rl(e){const t=sl(e);return i.createElement(nl,{value:{_aiAgentSDK:t,chatSDK:t.chatSDK,deskClient:t.deskClient,appId:t.appId,aiAgentId:t.aiAgentId,language:t.language,countryCode:t.countryCode,context:t.context,logger:t.logger,dispatcher:t.dispatcher,cache:t.cache,networkStateAdapter:t.networkStateAdapter,queryParams:t.queryParams,config:t.config,handlers:e.handlers}},e.children)}function sl(e){const t=c.useRef(null),n=c.useRef(null);if(!t.current||!n.current)t.current=on.init(e);else{const s=ol(n.current,e);(s.appId||s.aiAgentId||s.chatSDK)&&(t.current.dispose(),t.current=on.init({...e,chatParams:s.appId?{...e.chatParams,newInstance:!0}:e.chatParams}))}n.current=e,c.useEffect(()=>()=>{var s;(s=t.current)==null||s.dispose()},[]);const r=t.current;return r.language=e.language??"en",r.countryCode=e.countryCode,r.context=e.context,r.queryParams=e.queryParams,r.config=e.config,r.agentVersion=e._agentVersion,r}function ol(e,t){const n=t.chatSDK!==void 0&&t.chatSDK!==null;return{appId:!n&&e.appId!==t.appId,aiAgentId:e.aiAgentId!==t.aiAgentId,chatSDK:!!e.chatSDK!==n||n&&t.chatSDK!==e.chatSDK}}const Vr=Symbol("conversationMessageEventBridge"),xt=Symbol("conversationMessageEventPublisher"),il=(e,t)=>{const n=e;if(n[xt]=t,n[Vr])return e;n[Vr]=!0;const r=e.setMessageCollectionHandler.bind(e);e.setMessageCollectionHandler=o=>{r({...o,onMessagesAdded:(a,l,u)=>{var d,m;(d=o.onMessagesAdded)==null||d.call(o,a,l,u),(m=n[xt])==null||m.call(n,{kind:"messagesAdded",source:a.source,messages:u})},onMessagesUpdated:(a,l,u)=>{var d,m;(d=o.onMessagesUpdated)==null||d.call(o,a,l,u),(m=n[xt])==null||m.call(n,{kind:"messagesUpdated",source:a.source,messages:u})}})};const s=e.initialize.bind(e);return e.initialize=o=>{const a=s(o),l=a.onCacheResult.bind(a),u=a.onApiResult.bind(a);return a.onCacheResult=d=>l((m,h)=>{var f;d(m,h),(f=n[xt])==null||f.call(n,{kind:"initialized",source:"cache",messages:h??[]})}),a.onApiResult=d=>u((m,h)=>{var f;d(m,h),(f=n[xt])==null||f.call(n,{kind:"initialized",source:"api",messages:h??[]})}),a},e},ur=()=>{const[,e]=c.useState(0);return c.useCallback(()=>e(t=>t+1),[])};let al=0;function ll(){return c.useState(()=>`${al++}`)[0]}const bt=(e,t,n)=>{const r=c.useRef(t),o=ll();r.current=t,c.useEffect(()=>{var l;const a=u=>{const d=u;return Object.keys(d).forEach(h=>{d[h]=(...f)=>{var b;const v=r.current;(b=v[h])==null||b.call(v,...f)}}),d};return(l=e==null?void 0:e.groupChannel)==null||l.addGroupChannelHandler(o,a(new je.GroupChannelHandler)),()=>{var u;(u=e==null?void 0:e.groupChannel)==null||u.removeGroupChannelHandler(o)}},[e==null?void 0:e.groupChannel,o])};function cl(e,t){return!e||!t?!0:e.url!==t.url}function Ue(e){return e!=null&&"sendingStatus"in e}function ul(e,t="##__USER_ID_IS_NOT_PROVIDED__##"){var n;return Ue(e)?((n=e.sender)==null?void 0:n.userId)===t:!1}function dl(e,t){return ul(e,t)||e.isAdminMessage()?!1:e.updatedAt===0}function zr(e){return"sendingStatus"in e?e.sendingStatus==="succeeded"?String(e.messageId):e.reqId:String(e.messageId)}const an={collection:{groupChannel:{defaultOrder:je.GroupChannelListOrder.LATEST_LAST_MESSAGE},message:{defaultLimit:{next:25,prev:25},searchLimit:{next:10,prev:10}}}};function qr(e){return!e||!Array.isArray(e)?!1:e.length!==0}function Wr(e,t){return e.reduce((n,r)=>{const s=t(r);return n[s]=r,n},{})}const ml=({...e},t)=>{switch(t.type){case"update_initialized":return e.initialized=t.value.status,e;case"update_refreshing":return e.refreshing=t.value.status,e;case"update_loading":return e.loading=t.value.status,e;case"update_messages":{if(t.value.clearBeforeAction)e.messageMap=hl(t.value.messages);else{const n={...e.messageMap},r=[],s=[];t.value.messages.forEach(o=>{const a=Ue(o)?o.reqId:void 0,l=o.messageId||void 0;[a,l].forEach(u=>{if(!u)return;const d=n[u];fl(d,o,t.value.strictStreamingOrder)&&(d&&r.push(d),o.parentMessageId>0&&(d!=null&&d.parentMessage)&&o.applyParentMessage(d.parentMessage),s.push(o))})}),r.forEach(o=>{Ue(o)&&delete n[o.reqId],delete n[o.messageId]}),s.forEach(o=>{Ue(o)&&(n[o.reqId]=o),o.messageId!==0&&(n[o.messageId]=o)}),e.messageMap=n}return e}case"update_new_messages":{const n=t.value.currentUserId,r=t.value.messages.filter(s=>dl(s,n));return t.value.clearBeforeAction?e.newMessageMap=Wr(r,zr):(r.map(o=>o.messageId).forEach(o=>delete e.newMessageMap[o]),e.newMessageMap={...e.newMessageMap,...Wr(r,zr)}),e}case"delete_messages":case"delete_new_messages":{const n=t.type==="delete_messages"?"messageMap":"newMessageMap";return e[n]={...e[n]},t.value.messageIds.forEach(r=>{if(r===0)return;const s=e[n][r];s&&(Ue(s)&&delete e[n][s.reqId],delete e[n][s.messageId])}),t.value.reqIds.forEach(r=>{const s=e[n][r];s&&(Ue(s)&&delete e[n][s.reqId],delete e[n][s.messageId])}),e}}},hl=e=>e.reduce((t,n)=>(Ue(n)?(t[n.reqId]=n,n.sendingStatus===ze.SendingStatus.SUCCEEDED&&(t[n.messageId]=n)):t[n.messageId]=n,t),{}),fl=(e,t,n=!1)=>{var r,s;if(!Ue(e)||!Ue(t))return!0;if(n&&e&&Kr(e)&&Kr(t)){const o=((r=e.message)==null?void 0:r.length)||0,a=((s=t.message)==null?void 0:s.length)||0;if(o>a)return!1}return e.sendingStatus===ze.SendingStatus.SUCCEEDED?t.sendingStatus===ze.SendingStatus.SUCCEEDED:e.sendingStatus!==t.sendingStatus},gl=(e=pl)=>{const[{initialized:t,loading:n,refreshing:r,messageMap:s,newMessageMap:o},a]=c.useReducer(ml,{initialized:!1,loading:!0,refreshing:!1,messageMap:{},newMessageMap:{}}),l=(g,y,E,I)=>{a({type:"update_messages",value:{messages:g,clearBeforeAction:y,currentUserId:E,strictStreamingOrder:I}})},u=(g,y)=>{a({type:"delete_messages",value:{messageIds:g,reqIds:y}})},d=(g,y,E)=>{a({type:"update_new_messages",value:{messages:g,clearBeforeAction:y,currentUserId:E}})},m=(g,y)=>{a({type:"delete_new_messages",value:{messageIds:g,reqIds:y}})},h=g=>{a({type:"update_initialized",value:{status:g}})},f=g=>{a({type:"update_loading",value:{status:g}})},v=g=>{a({type:"update_refreshing",value:{status:g}})},b=Object.values(o),C=c.useMemo(()=>Array.from(new Set(Object.values(s))).sort(e),[s]);return{updateInitialized:h,updateLoading:f,updateRefreshing:v,updateMessages:l,deleteMessages:u,initialized:t,loading:n,refreshing:r,messages:C,newMessages:b,updateNewMessages:d,deleteNewMessages:m}},Yr=Math.floor(Number.MAX_SAFE_INTEGER/10);function pl(e,t){let n=0,r=0;return Ue(e)&&e.sendingStatus!=="succeeded"&&(n=Yr),Ue(t)&&t.sendingStatus!=="succeeded"&&(r=Yr),e.createdAt+n-(t.createdAt+r)}function Kr(e){try{const t=JSON.parse(e.data||"{}");return typeof t=="object"&&!!t.stream}catch{return!1}}function Ce(e){const t=c.useRef(e);return t.current=e,c.useCallback((...n)=>t.current(...n),[t])}const _l=(e,t,n)=>{var o;const r={prevResultLimit:t.prev,nextResultLimit:t.next,startingPoint:n==null?void 0:n.startingPoint,replyType:n==null?void 0:n.replyType},s=(o=n==null?void 0:n.collectionCreator)==null?void 0:o.call(n,r);return s||e.createMessageCollection({...r,filter:new je.MessageFilter(r)})};function jr(e){return e<Date.now()?an.collection.message.searchLimit:an.collection.message.defaultLimit}const El=(e,t,n={})=>{var Pe,Me;const r=c.useRef(n);r.current=n;const s=c.useRef(t);s.current=t;const o=r.current.logger,a=r.current.startingPoint??Number.MAX_SAFE_INTEGER,l=jr(a),u=r.current.strictStreamingOrder??!1,d=c.useRef({prev:!1,next:!1}),m=ur(),h=c.useRef({initialized:!1,apiInitialized:!1,instance:null}),{initialized:f,loading:v,refreshing:b,messages:C,newMessages:g,updateMessages:y,updateNewMessages:E,deleteNewMessages:I,deleteMessages:A,updateInitialized:w,updateLoading:k,updateRefreshing:N}=gl(n==null?void 0:n.sortComparator),W=Ce(M=>{var R,O,j,q;if(!s.current||!s.current.url)return(R=o==null?void 0:o.error)==null?void 0:R.call(o,"[useGroupChannelMessages] channel is required");try{switch(M){case le.CollectionEventSource.EVENT_MESSAGE_RECEIVED:case le.CollectionEventSource.EVENT_MESSAGE_SENT_SUCCESS:case le.CollectionEventSource.SYNC_MESSAGE_FILL:case void 0:(j=(O=r.current).markAsRead)==null||j.call(O,[s.current]);break}}catch(U){(q=o==null?void 0:o.warn)==null||q.call(o,"[useGroupChannelMessages/markAsReadBySource]",U)}}),G=Ce((M,R)=>{var O,j,q,U,H;if(R.length>0)switch(M){case le.CollectionEventSource.EVENT_MESSAGE_RECEIVED:case le.CollectionEventSource.SYNC_MESSAGE_FILL:{(j=(O=r.current).shouldCountNewMessages)!=null&&j.call(O)&&E(R,!1,(q=e.currentUser)==null?void 0:q.userId),(H=(U=r.current).onMessagesReceived)==null||H.call(U,R);break}}}),K=Ce(M=>{var R,O;(O=(R=r.current).onCollectionEvent)==null||O.call(R,M)}),L=Ce(async(M,R,O)=>new Promise((j,q)=>{var Ge;h.current.instance&&h.current.instance.dispose(),W(),E([],!0,(Ge=e.currentUser)==null?void 0:Ge.userId);const U=()=>{var ce,ue;const{pendingMessages:ne,failedMessages:ie}=h.current.instance??{};qr(ne)&&y(ne,!1,(ce=e.currentUser)==null?void 0:ce.userId),qr(ie)&&y(ie,!1,(ue=e.currentUser)==null?void 0:ue.userId)},H=_l(M,O,{...r.current,startingPoint:R});h.current={apiInitialized:!1,initialized:!1,instance:H},H.setMessageCollectionHandler({onMessagesAdded:(ne,ie,ce)=>{var ue;W(ne.source),G(ne.source,ce),y(ce,!1,(ue=e.currentUser)==null?void 0:ue.userId,u),K({kind:"messagesAdded",source:ne.source,messages:ce})},onMessagesUpdated:(ne,ie,ce)=>{var ue,ge,be;W(ne.source),G(ne.source,ce),y(ce,!1,(ue=e.currentUser)==null?void 0:ue.userId,u),ne.source===le.CollectionEventSource.EVENT_MESSAGE_UPDATED&&((be=(ge=r.current).onMessagesUpdated)==null||be.call(ge,ce)),K({kind:"messagesUpdated",source:ne.source,messages:ce})},onMessagesDeleted:(ne,ie,ce,ue)=>{const ge=ue.map(ke=>ke.messageId),be=ue.filter(Ue).map(ke=>ke.reqId);A(ge,be),I(ge,be),K({kind:"messagesDeleted",source:ne.source,messages:ue})},onChannelDeleted:(ne,ie)=>{var ce,ue;(ue=(ce=r.current).onChannelDeleted)==null||ue.call(ce,ie)},onChannelUpdated:(ne,ie)=>{var ce,ue;m(),(ue=(ce=r.current).onChannelUpdated)==null||ue.call(ce,ie,ne)},onHugeGapDetected:()=>{L(M,Number.MAX_SAFE_INTEGER,an.collection.message.defaultLimit)}});let oe=!1;H.initialize(je.MessageCollectionInitPolicy.CACHE_AND_REPLACE_BY_API).onCacheResult((ne,ie)=>{var ce,ue,ge,be,ke;(ue=(ce=r.current).onCacheResult)==null||ue.call(ce,ne,ie??[]),ne?(e.isCacheEnabled&&((ge=o==null?void 0:o.error)==null||ge.call(o,"[useGroupChannelMessages/onCacheResult]",ne)),oe=!0):ie&&((be=o==null?void 0:o.debug)==null||be.call(o,"[useGroupChannelMessages/onCacheResult]","message length:",ie.length),y(H.succeededMessages,!0,(ke=e.currentUser)==null?void 0:ke.userId),U(),ie.length>0&&(h.current.initialized=!0,j())),K({kind:"initialized",source:"cache",messages:ie??[]})}).onApiResult((ne,ie)=>{var ce,ue,ge,be,ke,Le,te;(ue=(ce=r.current).onApiResult)==null||ue.call(ce,ne,ie??[]),h.current.initialized=!0,h.current.apiInitialized=!0,ne?((ge=o==null?void 0:o.warn)==null||ge.call(o,"[useGroupChannelMessages/onApiResult]",ne),oe?q(ne):j()):ie&&((be=o==null?void 0:o.debug)==null||be.call(o,"[useGroupChannelMessages/onApiResult]","message length:",ie.length),y(H.succeededMessages,!0,(ke=e.currentUser)==null?void 0:ke.userId),r.current.startingPoint||(te=(Le=r.current).onMessagesReceived)==null||te.call(Le,ie),e.isCacheEnabled&&U(),j()),K({kind:"initialized",source:"api",messages:ie??[]})})}));bt(e,{onUserBanned(M,R){var O,j,q;M.isGroupChannel()&&!cl(M,s.current)&&(R.userId===((O=e.currentUser)==null?void 0:O.userId)?(q=(j=r.current).onCurrentUserBanned)==null||q.call(j):m())}}),c.useLayoutEffect(()=>{const M=setTimeout(async()=>{e.currentUser&&s.current&&(w(!1),k(!0),await L(s.current,a,l),k(!1),w(!0))});return()=>clearTimeout(M)},[e,(Pe=e.currentUser)==null?void 0:Pe.userId,(Me=s.current)==null?void 0:Me.url,r.current.replyType]),c.useEffect(()=>()=>{h.current.instance&&h.current.instance.dispose()},[]);const V=Ce(async()=>{e.currentUser&&s.current&&(N(!0),await L(s.current,Number.MAX_SAFE_INTEGER,an.collection.message.defaultLimit),N(!1))}),Y=Ce(async()=>{var R;const M=h.current.instance;if(M!=null&&M.hasPrevious&&!d.current.prev)try{d.current.prev=!0;const O=await M.loadPrevious();y(O,!1,(R=e.currentUser)==null?void 0:R.userId)}catch{}finally{d.current.prev=!1}}),x=Ce(()=>{const{initialized:M,instance:R}=h.current;return M&&R?R.hasPrevious:!1}),D=Ce(async()=>{var R;const M=h.current.instance;if(M!=null&&M.hasNext&&!d.current.next)try{d.current.next=!0;const O=await M.loadNext();y(O,!1,(R=e.currentUser)==null?void 0:R.userId)}catch{}finally{d.current.next=!1}}),$=Ce(()=>{const{initialized:M,apiInitialized:R,instance:O}=h.current;return R&&M&&O?O.hasNext:!1}),Q=Ce((M,R)=>{var O;if(!s.current||!s.current.url)throw(O=o==null?void 0:o.error)==null||O.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");return new Promise((j,q)=>{s.current.sendUserMessage(M).onPending(U=>{var H;U.channelUrl===s.current.url&&y([U],!1,(H=e.currentUser)==null?void 0:H.userId),R==null||R(U)}).onSucceeded(U=>{var H;U.channelUrl===s.current.url&&y([U],!1,(H=e.currentUser)==null?void 0:H.userId),j(U)}).onFailed((U,H)=>{var oe;H&&H.channelUrl===s.current.url&&y([H],!1,(oe=e.currentUser)==null?void 0:oe.userId),q(U)})})}),ae=Ce((M,R)=>{var O;if(!s.current||!s.current.url)throw(O=o==null?void 0:o.error)==null||O.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");return new Promise((j,q)=>{s.current.sendFileMessage(M).onPending(U=>{var H;U.channelUrl===s.current.url&&y([U],!1,(H=e.currentUser)==null?void 0:H.userId),R==null||R(U)}).onSucceeded(U=>{var H;U.channelUrl===s.current.url&&y([U],!1,(H=e.currentUser)==null?void 0:H.userId),j(U)}).onFailed((U,H)=>{var oe;H&&H.channelUrl===s.current.url&&y([H],!1,(oe=e.currentUser)==null?void 0:oe.userId),q(U)})})}),de=Ce(async(M,R)=>{var O;if(!s.current||!s.current.url)throw(O=o==null?void 0:o.error)==null||O.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");return new Promise(j=>{const q=[];s.current.sendFileMessages(M).onPending(U=>{var H;U.channelUrl===s.current.url&&y([U],!1,(H=e.currentUser)==null?void 0:H.userId),R==null||R(U)}).onSucceeded(U=>{var H;U.isFileMessage()&&U.channelUrl===s.current.url&&(y([U],!1,(H=e.currentUser)==null?void 0:H.userId),q.push(U)),q.length===M.length&&j(q)}).onFailed((U,H)=>{var oe;H&&H.channelUrl===s.current.url?(y([H],!1,(oe=e.currentUser)==null?void 0:oe.userId),q.push(H)):q.push(null),q.length===M.length&&j(q)})})}),we=Ce((M,R)=>{var O;if(!s.current||!s.current.url)throw(O=o==null?void 0:o.error)==null||O.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");return new Promise((j,q)=>{s.current.sendMultipleFilesMessage(M).onPending(U=>{var H;U.channelUrl===s.current.url&&y([U],!1,(H=e.currentUser)==null?void 0:H.userId),R==null||R(U)}).onFileUploaded(()=>{m()}).onSucceeded(U=>{var H;U.channelUrl===s.current.url&&y([U],!1,(H=e.currentUser)==null?void 0:H.userId),j(U)}).onFailed((U,H)=>{var oe;H&&H.channelUrl===s.current.url&&y([H],!1,(oe=e.currentUser)==null?void 0:oe.userId),q(U)})})}),T=Ce(async(M,R)=>{var j,q;if(!s.current||!s.current.url)throw(j=o==null?void 0:o.error)==null||j.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");const O=await s.current.updateUserMessage(M,R);return O.channelUrl===s.current.url&&y([O],!1,(q=e.currentUser)==null?void 0:q.userId),O}),F=Ce(async(M,R)=>{var j,q;if(!s.current||!s.current.url)throw(j=o==null?void 0:o.error)==null||j.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");const O=await s.current.updateFileMessage(M,R);return O.channelUrl===s.current.url&&y([O],!1,(q=e.currentUser)==null?void 0:q.userId),O}),z=Ce(async M=>{var R;if(!s.current||!s.current.url)throw(R=o==null?void 0:o.error)==null||R.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");return new Promise((O,j)=>{let q;M.isUserMessage()&&(q=s.current.resendMessage(M)),M.isFileMessage()&&(q=s.current.resendMessage(M)),M.isMultipleFilesMessage()&&(q=s.current.resendMessage(M)),q&&("onPending"in q&&q.onPending(U=>{var H;U.channelUrl===s.current.url&&y([U],!1,(H=e.currentUser)==null?void 0:H.userId)}),"onFileUploaded"in q&&q.onFileUploaded(()=>{m()}),"onSucceeded"in q&&q.onSucceeded(U=>{var H;U.channelUrl===s.current.url&&y([U],!1,(H=e.currentUser)==null?void 0:H.userId),O(U)}),"onFailed"in q&&q.onFailed((U,H)=>{var oe;H&&H.channelUrl===s.current.url&&y([H],!1,(oe=e.currentUser)==null?void 0:oe.userId),j(U)}))})}),J=Ce(async M=>{var R,O;if(!s.current||!s.current.url)throw(R=o==null?void 0:o.error)==null||R.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");if(M.sendingStatus==="succeeded")M.isUserMessage()&&await s.current.deleteMessage(M),M.isFileMessage()&&await s.current.deleteMessage(M),M.isMultipleFilesMessage()&&await s.current.deleteMessage(M);else try{await((O=h.current.instance)==null?void 0:O.removeFailedMessage(M.reqId))}finally{A([],[M.reqId])}}),me=Ce(()=>{var M;E([],!0,(M=e.currentUser)==null?void 0:M.userId)}),pe=Ce(async M=>{var R;if(e.currentUser&&s.current){const O=jr(M);k(!0),y([],!0,(R=e.currentUser)==null?void 0:R.userId),await L(s.current,M,O),k(!1)}});return{initialized:f,loading:v,refreshing:b,messages:C,newMessages:g,resetNewMessages:me,refresh:V,loadPrevious:Y,hasPrevious:x,loadNext:D,hasNext:$,sendUserMessage:Q,sendFileMessage:ae,sendFileMessages:de,sendMultipleFilesMessage:we,updateUserMessage:T,updateFileMessage:F,resendMessage:z,deleteMessage:J,resetWithStartingPoint:pe,_dangerous_reducer_updateMessages:y,_dangerous_reducer_deleteMessages:A}},bl=(e,t,n)=>{const r=c.useRef(0),s=c.useRef(new Set),o=c.useCallback(d=>{const m={id:r.current+=1,...d};s.current.forEach(h=>{h(m)})},[]),a=c.useCallback(d=>{var h;const m=((h=n==null?void 0:n.collectionCreator)==null?void 0:h.call(n,d))??(t==null?void 0:t.createMessageCollection({...d??{},filter:new je.MessageFilter(d)}));if(!m)throw new Error("Group channel is required to create a message collection");return il(m,o)},[t,n==null?void 0:n.collectionCreator,o]),l=El(e,t,{...n,collectionCreator:a,strictStreamingOrder:!0}),u=c.useCallback(d=>(s.current.add(d),()=>{s.current.delete(d)}),[]);return{...l,subscribeMessageEvents:u}},Rt={DEFAULT_PRIMARY:"#000000",DEFAULT_BOT_MSG_BG:"#ECECEC",WHITE:"#ffffff",BLACK:"#000000"};function Eo(e){return e.length===4?`#${[...e.slice(1)].map(t=>t+t).join("")}`:e}function Cl(e){const t=Eo(e);return[parseInt(t.slice(1,3),16),parseInt(t.slice(3,5),16),parseInt(t.slice(5,7),16)]}function vl(e){return`#${e.map(t=>t.toString(16).padStart(2,"0")).join("")}`}function yl(e,t,n){e/=255,t/=255,n/=255;const r=Math.max(e,t,n),s=Math.min(e,t,n),o=r-s;let a=0,l=0;const u=(r+s)/2;return r!==s&&(l=u>.5?o/(2-r-s):o/(r+s)),r===e?a=(t-n)/o+(t<n?6:0):r===t?a=(n-e)/o+2:r===n&&(a=(e-t)/o+4),a/=6,[a,l,u]}function Sl(e,t,n){let r,s,o;if(t===0)r=s=o=n;else{const a=function(m,h,f){return f<0&&(f+=1),f>1&&(f-=1),f<.16666666666666666?m+(h-m)*6*f:f<.5?h:f<.6666666666666666?m+(h-m)*(.6666666666666666-f)*6:m},l=n<.5?n*(1+t):n+t-n*t,u=2*n-l;r=a(u,l,e+1/3),s=a(u,l,e),o=a(u,l,e-1/3)}return[Math.round(r*255),Math.round(s*255),Math.round(o*255)]}function Gt(e,t,n){const[r,s,o]=Cl(e),[a,l,u]=yl(r,s,o),d=Math.max(0,Math.min(1,u*t)),m=Math.max(0,Math.min(1,l*n)),[h,f,v]=Sl(a,m,d);return vl([Math.round(h),Math.round(f),Math.round(v)])}function Al(e,t="light"){return{extraDark:Gt(e,.6,1.2),dark:Gt(e,.85,1.1),main:e,light:Gt(e,t==="dark"?1.1:1.5,t==="dark"?.95:.9),extraLight:Gt(e,t==="dark"?1.2:1.75,t==="dark"?.9:.8)}}function Wn(e){const t=Eo(e),n=149,r=+`0x${t[1]}${t[2]}`,s=+`0x${t[3]}${t[4]}`,o=+`0x${t[5]}${t[6]}`;return r*.299+s*.587+o*.114>n?Rt.BLACK:Rt.WHITE}function xl(e,t,n,r,s){return{base:{primary:t,primaryContrastContent:n,background:e.background50,headerBackground:e.background50,modalContentBackground:e.background50},messageInput:{text:e.onlight.textHighEmphasis,placeholderText:e.onlight.textLowEmphasis,background:e.background100},messageIncoming:{text:s,background:r},messageOutgoing:{text:n,background:t},csat:{background:e.background100}}}const Tl=(e,t,n,r,s)=>({base:{primary:t,primaryContrastContent:n,background:e.background600,headerBackground:e.background500,modalContentBackground:e.background500},messageInput:{text:e.ondark.textHighEmphasis,placeholderText:e.ondark.textLowEmphasis,background:e.background400},messageIncoming:{text:s,background:r},messageOutgoing:{text:n,background:t},csat:{background:e.background400}}),Vt={primary:{extraDark:"#491389",dark:"#6211c8",main:"#742ddd",light:"#c2a9fa",extraLight:"#dbd1ff"},secondary:{extraDark:"#066858",dark:"#027d69",main:"#259c72",light:"#69c085",extraLight:"#a8e2ab"},error:{extraDark:"#9d091e",dark:"#bf0711",main:"#de360b",light:"#f66161",extraLight:"#fdaaaa"},information:{extraDark:"#241389",dark:"#362ca9",main:"#4a48cd",light:"#a9bbfa",extraLight:"#d1dbff"},background700:"#000000",background600:"#161616",background500:"#2c2c2c",background400:"#393939",background300:"#bdbdbd",background200:"#e0e0e0",background100:"#eeeeee",background50:"#ffffff",onlight:{textHighEmphasis:"rgba(0, 0, 0, 1)",textMidEmphasis:"rgba(0, 0, 0, 0.75)",textLowEmphasis:"rgba(0, 0, 0, 0.55)",textDisabled:"rgba(0, 0, 0, 0.12)"},ondark:{textHighEmphasis:"rgba(255, 255, 255, 1)",textMidEmphasis:"rgba(255, 255, 255, 0.75)",textLowEmphasis:"rgba(255, 255, 255, 0.58)",textDisabled:"rgba(255, 255, 255, 0.12)"},overlay:{dark:"rgba(0, 0, 0, 0.55)",light:"rgba(22, 22, 22, 0.32)"}},wn={h1:{fontSize:18,fontWeight:700},h2:{fontSize:16,fontWeight:700},subtitle1:{fontSize:16,fontWeight:500},subtitle2:{fontSize:16,fontWeight:400},body1:{fontSize:16,fontWeight:400},body2:{fontSize:14,fontWeight:500},body3:{fontSize:14,fontWeight:400},button:{fontSize:14,fontWeight:700},caption1:{fontSize:12,fontWeight:700},caption2:{fontSize:12,fontWeight:400},caption3:{fontSize:11,fontWeight:700},caption4:{fontSize:11,fontWeight:400}};function Xr(e){const t=Il(e),n=wl(e,t),r=kl(n,e.colors,e.selectedTheme),s=Rl(e);return{selectedTheme:e.selectedTheme,palette:t,colors:r,aiAgentColorVariables:{primary_color:r.base.primary,primary_contrast_color:r.base.primaryContrastContent,bot_message_bg_color:r.messageIncoming.background,bot_message_bg_contrast_color:r.messageIncoming.text},typography:s}}function Il({selectedTheme:e,palette:t,primary:n}){const r=t!=null&&t.primary?t.primary:n?n===Vt.primary.main?Vt.primary:Al(n,e):Vt.primary;return{...Vt,primary:r,...t}}function wl({selectedTheme:e,primaryContrast:t,botMessageBackground:n,botMessageBackgroundContrast:r},s){const o=s.primary.main,a=t??Wn(o),l=n??Rt.DEFAULT_BOT_MSG_BG,u=r??Wn(l);return(e==="light"?xl:Tl)(s,o,a,l,u)}function Ml(e,t,n){return typeof e=="string"?e:e[t]??n}function kl(e,t,n){var a;if(!t||Object.keys(t).length===0)return e;const r={...e},s=r,o=e;for(const l of Object.keys(t)){const u=t[l];if(u){s[l]={...s[l]};for(const[d,m]of Object.entries(u))if(m!==void 0){const h=((a=o[l])==null?void 0:a[d])??"";s[l][d]=Ml(m,n,h)}}}return r}function Ll(e,t,n){const r={...e};return n.forEach(s=>{const o=t[s];o!=null&&(r[s]=o)}),r}function Rl({typography:e}){if(!e)return wn;const t={...wn};return Object.keys(e).forEach(n=>{const r=e[n];if(r&&typeof r=="object"){const s=wn[n],o=["fontSize","fontWeight","fontFamily","lineHeight"];t[n]=Ll(s,r,o)}}),t}const{Provider:Ol,useContext:dr}=Ee("AIAgentTheme");function Nl({logger:e,palette:t,typography:n,colors:r,appearance:s,children:o}){const a=c.useRef(null),[l,u]=c.useState(()=>Xr({selectedTheme:(s==null?void 0:s.theme)??"light",palette:t,typography:n,colors:r,primary:s==null?void 0:s.primaryColor,botMessageBackground:s==null?void 0:s.botMessageBackgroundColor})),d=c.useCallback((m,h)=>{h&&(a.current=h);const f=(s==null?void 0:s.theme)??m,v=a.current?a.current.themes[f]:null,b={primary:s==null?void 0:s.primaryColor,primaryContrast:void 0,botMessageBackground:s==null?void 0:s.botMessageBackgroundColor,botMessageBackgroundContrast:void 0};!b.primary&&(v!=null&&v.primary_color)&&(b.primary=v.primary_color,b.primaryContrast=v.primary_contrast_color),!b.botMessageBackground&&(v!=null&&v.bot_message_bg_color)&&(b.botMessageBackground=v.bot_message_bg_color,b.botMessageBackgroundContrast=v.bot_message_bg_contrast_color);const C=Xr({selectedTheme:f,palette:t,typography:n,colors:r,...b});u(C),e==null||e.info("theme.update:",f)},[s==null?void 0:s.theme,s==null?void 0:s.primaryColor,s==null?void 0:s.botMessageBackgroundColor,t,n,r,e]);return c.useEffect(()=>{(s!=null&&s.theme||s!=null&&s.primaryColor||s!=null&&s.botMessageBackgroundColor)&&d(l.selectedTheme)},[s==null?void 0:s.theme,s==null?void 0:s.primaryColor,s==null?void 0:s.botMessageBackgroundColor]),i.createElement(Ol,{value:{theme:l,updateTheme:d}},o)}const Mn=25*1024*1024,Zr=1,Jr=new Set(["image/png","image/jpeg","image/jpg"]),Qr=new Set(["application/pdf"]),Dl={off:"off",always:"always",handed_off_only:"handed_off_only"},$l=()=>{const[e,t]=c.useState(()=>({maxAttachmentCount:Zr,attachmentMode:"handed_off_only",defaultUploadSizeLimit:Mn,uploadSizeLimitPerType:new Map,supportedImageMimeTypes:Jr,supportedFileMimeTypes:Qr})),n=c.useCallback(({active_channel:s,upload_restriction:o})=>{t({maxAttachmentCount:(o==null?void 0:o.max_attachment_count)??Zr,attachmentMode:Dl[s.attachment_mode]??"handed_off_only",defaultUploadSizeLimit:(o==null?void 0:o.default_upload_size_limit)??Mn,uploadSizeLimitPerType:new Map(Object.entries((o==null?void 0:o.upload_size_limit_per_type)??[])),supportedImageMimeTypes:new Set((o==null?void 0:o.supported_image_mime_types)??Jr),supportedFileMimeTypes:new Set((o==null?void 0:o.supported_file_mime_types)??Qr)})},[]),r=c.useCallback(s=>{const{channel:o,uploadSizeLimit:a=Mn}=s,l=(d=!0)=>o!=null&&o.isAIAgent?d?nt(o):!1:!0,u=d=>{if(l())return e.defaultUploadSizeLimit??a;const m=e.defaultUploadSizeLimit??a,h=e.uploadSizeLimitPerType.get(d)??m;return Math.min(m,h)};return{maxAttachmentCount:e.maxAttachmentCount,isEnabled:()=>{if(l(!1))return!0;switch(e.attachmentMode){case"off":return!1;case"always":return!0;case"handed_off_only":return nt(o);default:return!0}},get supportedMimeTypes(){return l()?[Hn]:[...e.supportedImageMimeTypes,...e.supportedFileMimeTypes]},isSupportedMimeType:d=>l()?!0:e.supportedImageMimeTypes.has(d)||e.supportedFileMimeTypes.has(d),getUploadSizeLimit:u,getUploadSizeLimitInMB:d=>u(d)/(1024*1024)}},[e]);return{updateBaseAttachmentRules:n,createAttachmentRules:r}},es=(...e)=>{const[t,n,r]=e;if(e.length===1&&typeof t=="object"&&t!==null)return{type:"active",context:t};if(e.length===3&&typeof t=="string"&&typeof n=="string"&&typeof r=="object"&&r!==null)return{type:"specific",aiAgentId:t,channelUrl:n,context:r};throw new Error("Invalid arguments: expected (context) or (aiAgentId, channelUrl, context)")},Tt=e=>({...e,context:e.context??{}}),{Provider:Pl,useContext:Ct}=Ee("AIAgentMessengerSession"),Fl=c.forwardRef(function({userSessionInfo:e,children:t},n){const{_aiAgentSDK:r,chatSDK:s,aiAgentId:o,logger:a}=$e(),{updateTheme:l}=dr(),[u,d]=c.useState(void 0),[m,h]=c.useState(void 0),[f,v]=c.useState(null),[b,C]=c.useState(null),[g,y]=c.useState(null),[E,I]=c.useState(null),{updateBaseAttachmentRules:A,createAttachmentRules:w}=$l();c.useEffect(()=>{const L=r.onMessengerSettingsUpdated(({settings:x})=>{const{appearance:D,bot:$,launcher:Q}=x;l(D.selected_theme,D),y({userId:$.bot_userid,profileUrl:$.bot_profile_url,nickname:$.bot_nickname,replyToFile:$.reply_to_file,specialNotice:$.special_notice,specialNoticeEnabled:$.is_special_notice_enabled,showHandoffButton:$.show_handoff_button??!0,isMultipleActiveConversationsEnabled:$.is_multiple_active_conversations_enabled??!0,isUserFeedbackEnabled:$.is_user_feedback_enabled??!1,isUserFeedbackCommentOptionEnabled:$.is_user_feedback_comment_option_enabled??!1}),I({type:Q.image_type||"default_icon",imageUrl:Q.image_url}),A(x)}),V=r.onActiveChannelUpdated(({channelUrl:x,status:D,conversationStatus:$})=>{h({url:x,status:D,conversationStatus:$})}),Y=r.onAuthTokenRefreshed(()=>{var D;const x=(D=r.session)==null?void 0:D.userSession.authToken;x&&C($=>$?{...$,authToken:x}:null)});return()=>{L(),V(),Y()}},[r,l,A]);const k=c.useCallback(async()=>{try{const L=await r.authenticate(e),V=r.session;return v(V.sdkUser),C(V.userSession),h(V.activeChannel),d(void 0),L}catch(L){throw v(null),C(null),h(void 0),d(L),L}},[r,e]),N=c.useCallback(async()=>{await r.deauthenticate(),v(null),h(void 0),C(null),y(null),I(null)},[r]),W=c.useCallback(async()=>{if(!r.session){if(b)return a.debug("agentMessengerSession.refreshActiveChannel: stale call after deauthenticate, skipping"),"";throw a.error("agentMessengerSession.refreshActiveChannel: userSession is not ready"),new Error("userSession is not ready")}return r.session.userSession.userId!==(b==null?void 0:b.userId)?(a.debug("agentMessengerSession.refreshActiveChannel: stale call from previous session, skipping"),r.session.activeChannel.url):(h(void 0),await r.refreshActiveChannel())},[r,a,b]),G=c.useCallback(async L=>{if(!r.session)throw new Error("Current user is not authenticated. Please authenticate first.");return r.createConversation(L)},[r]),K=c.useCallback(async L=>{if(!r.session)throw new Error("Current user is not authenticated. Please authenticate first.");return r.searchConversation(L)},[r]);return c.useImperativeHandle(n,()=>{const L=async()=>{if(!m)throw new Error("No active conversation. Please start a conversation first.");return await s.groupChannel.getChannel(m.url)};return{activeChannel:m,chatSDK:s,authenticate:k,deauthenticate:N,updateContext:async(...V)=>{const Y=es(...V);if(Y.type==="active"){const $=await(await L()).updateContext(o,Y.context);return Tt($)}const x=await s.aiAgent.updateContext(Y.aiAgentId,Y.channelUrl,Y.context);return Tt(x)},patchContext:async(...V)=>{const Y=es(...V);if(Y.type==="active"){const $=await(await L()).patchContext(o,Y.context);return Tt($)}const x=await s.aiAgent.patchContext(Y.aiAgentId,Y.channelUrl,Y.context);return Tt(x)},getContextObject:async()=>{const Y=await(await L()).getContextObject(o);return Tt(Y)}}},[k,N,m,s,o,a]),i.createElement(Pl,{value:{sdkUser:f,userSessionInfo:e,userSession:b,activeChannel:m,setActiveChannel:h,refreshActiveChannel:W,createConversation:G,searchConversation:K,connectionError:u,aiAgentInfo:g,launcherInfo:E,authenticate:k,deauthenticate:N,createAttachmentRules:w,statsTrackers:r.statsTrackers}},t)}),pn=(e,t)=>{const n=c.useId(),r=c.useRef(t);c.useLayoutEffect(()=>{r.current=t}),c.useLayoutEffect(()=>{const s=new le.ConnectionHandler({onDisconnected:o=>{var a,l;return(l=(a=r.current).onDisconnected)==null?void 0:l.call(a,o)},onConnected:o=>{var a,l;return(l=(a=r.current).onConnected)==null?void 0:l.call(a,o)},onReconnectStarted:()=>{var o,a;return(a=(o=r.current).onReconnectStarted)==null?void 0:a.call(o)},onReconnectSucceeded:()=>{var o,a;return(a=(o=r.current).onReconnectSucceeded)==null?void 0:a.call(o)},onReconnectFailed:()=>{var o,a;return(a=(o=r.current).onReconnectFailed)==null?void 0:a.call(o)},onConnectionLost:()=>{var o,a;return(a=(o=r.current).onConnectionLost)==null?void 0:a.call(o)},onConnectionDelayed:o=>{var a,l;return(l=(a=r.current).onConnectionDelayed)==null?void 0:l.call(a,o)}});return e.addConnectionHandler(n,s),()=>{e.removeConnectionHandler(n)}},[e,n])};function Bl(e){const{chatSDK:t,logger:n,aiAgentId:r,_aiAgentSDK:s}=$e(),{sdkUser:o,statsTrackers:a}=Ct(),l=ur(),[u,d]=c.useState(void 0),[m,h]=c.useState(void 0),[f,v]=c.useState(!1);function b(g){g.isAIAgent&&!g.conversation&&(v(!0),s.initConversationIfNeeded(g).finally(()=>v(!1)))}async function C(){var g,y,E;if(!o){n.debug("useChannel.getChannel: no sdk user, skip fetching channel");return}if(n.debug("useChannel.getChannel: start"),d(void 0),h(void 0),v(!1),e){a.initialRender.onGetChannelStart();try{n.debug("useChannel.getChannel: get channel",e);const I=await t.groupChannel.getChannel(e);b(I),d(I),a.initialRender.onGetChannelComplete((g=I.conversation)==null?void 0:g.id),I.url===((y=s.session)==null?void 0:y.activeChannel.url)&&s.session._updateActiveChannel({url:I.url,status:De(I)?"closed":"open",conversationStatus:(E=I.conversation)==null?void 0:E.status}),n.debug("useChannel.getChannel: fetched channel",I)}catch(I){a.initialRender.onGetChannelError(I),I instanceof le.SendbirdError&&h(I),n.error("useChannel.getChannel: error",I)}}}return c.useEffect(()=>{C()},[t,o,e,r]),pn(t,{async onReconnectSucceeded(){if(!u)return;const g=await u.refresh();b(g),d(g)}}),bt(t,{onChannelChanged:g=>{g.isGroupChannel()&&g.url===e&&(n.debug("useChannel.onChannelChanged: channel changed",g.url),d(g),l())}}),{channel:u,channelFetchError:m,getChannel:C,isInitializingConversation:f}}const Ul=new Set(["suggested_replies","steward","system"]),Hl=e=>{const t=e==null?void 0:e.lastMessage,n=t==null?void 0:t.extendedMessagePayload,r=n==null?void 0:n.user_input_disabled_by;if(!(!r||!Ul.has(r)))return r},Gl=e=>{var a;const t=e==null?void 0:e.lastMessage;if(!t||!e)return!1;const n=t.extendedMessagePayload,r=n==null?void 0:n.form,s=!!r&&!r.submitted_at&&!r.canceled_at,o=e.isAIAgent&&!!((a=e.conversation)!=null&&a.handedOverAt);return s&&!o},Vl=()=>{const{chatSDK:e,networkStateAdapter:t}=$e(),[n,r]=c.useState(()=>t?t.isOnline()?"connected":"reconnecting":"connected");return pn(e,{onConnected:()=>r("connected"),onDisconnected:()=>r("disconnected"),onReconnectStarted:()=>r("reconnecting"),onReconnectSucceeded:()=>r("connected"),onReconnectFailed:()=>r("disconnected"),onConnectionLost:()=>r("reconnecting")}),c.useEffect(()=>{if(t)return t.subscribe(s=>{if(!s){r("reconnecting");return}r(o=>o==="reconnecting"&&e.connectionState===le.ConnectionState.OPEN?"connected":o)})},[t,e]),n},zl=3e4,ql=({shouldApply:e,lastMessage:t,isBlockedWhileAIResponding:n,currentUserId:r})=>{const[s,o]=c.useState(!1),a=c.useRef(null),l=t&&Et(t,r)?t.createdAt:0;return c.useEffect(()=>{const u=()=>{a.current&&(clearTimeout(a.current),a.current=null),o(!1)},d=f=>{a.current&&clearTimeout(a.current),o(!0),a.current=setTimeout(()=>{o(!1),a.current=null},f)},m=Date.now()-l,h=zl-m;return n||h<=0?u():d(h),()=>{a.current&&clearTimeout(a.current)}},[n,l]),s&&e},bo=e=>{const{chatSDK:t}=$e(),[n,r]=c.useState([]);return bt(t,{onTypingStatusUpdated(s){if(s.url===(e==null?void 0:e.url)){const o=s.getTypingUsers();r(o)}}}),n},Wl=({channel:e,lastMessage:t,aiAgentUserId:n,isStreamAnimating:r})=>{const[s,o]=c.useState(!1),a=bo(e);return c.useEffect(()=>{if(!t)return;const l=a.some(d=>d.userId===n),u=Et(t,n)&&(Ke.isStreaming(t)||r);o(u||l)},[a,t,n,r]),s},Yl=({channel:e,messages:t,isStreamAnimating:n,isInitializingConversation:r})=>{const{aiAgentInfo:s,userSession:o}=Ct(),a=Vl(),l=Wl({channel:e,lastMessage:Dr(t,[ze.SendingStatus.SUCCEEDED]),aiAgentUserId:(s==null?void 0:s.userId)??"",isStreamAnimating:n}),u=ql({shouldApply:!!(e!=null&&e.isAIAgent)&&!nt(e),isBlockedWhileAIResponding:l,lastMessage:Dr(t,[ze.SendingStatus.PENDING,ze.SendingStatus.SUCCEEDED]),currentUserId:(o==null?void 0:o.userId)??""}),d=h=>h===""?{disabled:!1,disabledBy:"",focusPolicy:"auto"}:h==="ai_responding"?{disabled:!0,disabledBy:h,focusPolicy:"preserve"}:{disabled:!0,disabledBy:h,focusPolicy:"release"};if(!e||a==="disconnected")return d("unavailable");if(a==="reconnecting")return d("reconnecting");if(De(e))return d("conversation_closed");if(ya(e))return d("handoff_pending");if(Gl(e))return d("form_active");const m=Hl(e);return d(m||(l||u||r?"ai_responding":""))},Kl=()=>{const[e,t]=c.useState(new Set),n=c.useCallback(s=>{t(o=>{if(o.has(s))return o;const a=new Set(o);return a.add(s),a})},[]),r=c.useCallback(s=>{t(o=>{if(!o.has(s))return o;const a=new Set(o);return a.delete(s),a})},[]);return{isAnimating:e.size>0,start:n,stop:r}},{Provider:jl}=Ee("AIAgentConversation");function Xl({children:e,channelUrl:t,onChannelDeleted:n,onMessagesReceived:r,onMessagesUpdated:s,onConversationClosedStatusChanged:o,onConversationClosedViaDispatcher:a,onBeforeSendMessage:l,onAfterSendMessage:u=he,shouldMarkAsRead:d=!0,shouldCountNewMessages:m=()=>!1,sortComparator:h}){var K;const f=()=>d&&(g==null?void 0:g.markAsRead()),{chatSDK:v,logger:b,dispatcher:C}=$e(),{channel:g,channelFetchError:y,getChannel:E,isInitializingConversation:I}=Bl(t),{statsTrackers:A}=Ct();c.useEffect(()=>{if(t)return A.initialRender.setChannelUrl(t),()=>{A.initialRender.cleanup()}},[t,A]);const w=bl(v,g,{replyType:ze.ReplyType.ONLY_REPLY_TO_CHANNEL,shouldCountNewMessages:m,onChannelDeleted:n,onMessagesReceived:L=>r==null?void 0:r(L),onMessagesUpdated:L=>s==null?void 0:s(L),onCacheResult:L=>A.initialRender.onCacheResult(L),onApiResult:L=>A.initialRender.onApiResult(L),logger:b,markAsRead:f,sortComparator:h}),k=Kl(),N=Yl({channel:g,messages:w.messages,isStreamAnimating:k.isAnimating,isInitializingConversation:I});c.useEffect(()=>{f()},[d,g]);const W=De(g);c.useEffect(()=>{o==null||o(W)},[W,o]),c.useEffect(()=>{const L=async V=>{const Y=typeof(V==null?void 0:V.channelUrl)=="string";g&&Y&&V.channelUrl!==g.url||(b.debug("conversation.dispatcher: try to close conversation",g),g!=null&&g.conversation&&g.conversation.status===Re.ConversationStatus.OPEN&&(await g.closeConversation(),a==null||a()))};return C.subscribe(Ve.ConversationClose,L),()=>{C.unsubscribe(Ve.ConversationClose,L)}},[C,g,b,(K=g==null?void 0:g.conversation)==null?void 0:K.status,a]);const G={conversation:(g==null?void 0:g.conversation)??void 0,channelSource:{channel:g,error:y,refetch:()=>E(),closeConversation:async()=>{De(g)||await(g==null?void 0:g.closeConversation())}},messageSource:{messages:w.messages,newMessages:w.newMessages,initialized:w.initialized,subscribeMessageEvents:w.subscribeMessageEvents,loadPrevious:()=>w.loadPrevious(),loadNext:()=>w.loadNext(),deleteMessage:L=>w.deleteMessage(L),resendMessage:L=>w.resendMessage(L),resetNewMessages:()=>w.resetNewMessages(),sendUserMessage:async L=>{var Y;if(((Y=g==null?void 0:g.conversation)==null?void 0:Y.status)===Re.ConversationStatus.CLOSED)throw new Error("Conversation is closed");l&&(L=await l(L));const V=await w.sendUserMessage(L,u);return u==null||u(V),V},sendFileMessage:async L=>{var Y;if(((Y=g==null?void 0:g.conversation)==null?void 0:Y.status)===Re.ConversationStatus.CLOSED)throw new Error("Conversation is closed");l&&(L=await l(L));const V=await w.sendFileMessage(L,u);return u==null||u(V),V},sendMultipleFilesMessage:async L=>{var Y;if(((Y=g==null?void 0:g.conversation)==null?void 0:Y.status)===Re.ConversationStatus.CLOSED)throw new Error("Conversation is closed");l&&(L=await l(L));const V=await w.sendMultipleFilesMessage(L,u);return u==null||u(V),V}},state:{streamAnimation:k,input:N}};return i.createElement(jl,{value:G},e)}function Zl(e,t){var v,b,C,g,y,E,I,A,w,k;const[n,r]=c.useState(!1),[s,o]=c.useState(null),[a,l]=c.useState([]),[u,d]=c.useState(null),m=c.useRef(!1),h=c.useCallback(async()=>{if(!m.current&&e.currentUser){m.current=!0,r(!1),o(null),l([]);try{u==null||u.dispose();const N=new so(e,t);N.setConversationListCollectionHandler({onChannelsAdded:()=>{l(N.channels)},onChannelsUpdated:()=>{l(N.channels)},onChannelsDeleted:()=>{l(N.channels)}}),await N.loadMore(),d(N),o(null)}catch(N){d(null),o(N)}finally{r(!0),m.current=!1}}},[e,e.currentUser,(v=t.filter)==null?void 0:v.aiAgentChannelFilter,(C=(b=t.filter)==null?void 0:b.aiAgentConversationStatusFilter)==null?void 0:C.join(),(y=(g=t.filter)==null?void 0:g.aiAgentIds)==null?void 0:y.join(),(E=t.filter)==null?void 0:E.deskChannelFilter,(A=(I=t.filter)==null?void 0:I.pinnedChannelUrls)==null?void 0:A.join(),(w=t.filter)==null?void 0:w.copilotConversationOnly,(k=t.filter)==null?void 0:k.copilotSupportChannelUrl,t.limit]),f=c.useCallback(async()=>{if(u)try{await u.loadMore()}catch(N){o(N)}},[u]);return pn(e,{onConnected:()=>h()}),c.useEffect(()=>{h()},[h]),c.useEffect(()=>()=>{m.current=!1,u==null||u.dispose()},[u]),{initialized:n,error:s,channels:a,loadMore:f}}const{Provider:Jl}=Ee("AIAgentConversationList");function Ql({conversationListLimit:e,conversationListFilter:t,children:n}){var h,f;const{chatSDK:r,aiAgentId:s,queryParams:o}=$e(),a={aiAgentIds:[s],aiAgentConversationStatusFilter:[Re.ConversationStatus.CLOSED,Re.ConversationStatus.OPEN]},l=e??((h=o==null?void 0:o.conversationListParams)==null?void 0:h.limit),u={...a,...(f=o==null?void 0:o.conversationListParams)==null?void 0:f.filter,...t},d=Zl(r,{limit:l,filter:u}),m={listSource:{initialized:d.initialized,error:d.error??void 0,channels:d.channels,loadMore:()=>d.loadMore()}};return i.createElement(Jl,{value:m},n)}function ec(e){let t="pending",n=e.then(r=>{t="resolved",n=r}).catch(r=>{t="rejected",n=r});return{get value(){if(t==="resolved")return n;throw n}}}const{Provider:tc,useContext:nc}=Ee("MessageTemplateFetching");function rc({children:e,internalVariables:t}){const n=c.useRef({}),r=c.useRef({}),[s,o]=c.useState({}),a=c.useCallback((d,m)=>{o(h=>({...h,[d]:{fetching:!1,error:!1,...h[d],...m}}))},[]),l=c.useCallback(async({onRequestTemplate:d,onGetCachedTemplate:m,templateKey:h,suspense:f=!1})=>{const v=m(h);if(v)return v;const b=r.current[h];if(b)return b;f||a(h,{fetching:!0});const C=d(h).catch(g=>{throw f||a(h,{error:!0}),g}).finally(()=>{f||a(h,{fetching:!1}),delete r.current[h]});return r.current[h]=C,C},[a]),u={internalVariables:t,fetchTemplate:l,suspend:(d,m)=>{if(n.current[d])return n.current[d];const h=ec(m());return n.current[d]=h,h},getIsFetching:d=>{var m;return((m=s[d])==null?void 0:m.fetching)??!1},getHasError:d=>{var m;return((m=s[d])==null?void 0:m.error)??!1}};return i.createElement(tc,{value:u},e)}const sc="remove_powered_by",mr=(e,t)=>{var s,o;const{chatSDK:n}=$e(),{aiAgentInfo:r}=Ct();if(e==="handoff-button"){const a=!!((s=t==null?void 0:t.conversation)!=null&&s.handoff);return!!(t!=null&&t.isAIAgent)&&!!(r!=null&&r.showHandoffButton)&&a&&sr(t)}if(e==="special-notice")return!!(t!=null&&t.isAIAgent)&&!!(r!=null&&r.specialNoticeEnabled)&&!!(r!=null&&r.specialNotice);if(e==="powered-by"){const a=(o=n==null?void 0:n.appInfo)==null?void 0:o.applicationAttributes;return c.useMemo(()=>!(Array.isArray(a)&&a.includes(sc)),[a])}throw new Error("Unsupported feature")},oc={required:"This question is required",minLength:e=>`Minimum ${e} characters required`,maxLength:e=>`Maximum ${e} characters allowed`,min:e=>`Minimum value is ${e}`,max:e=>`Maximum value is ${e}`,minSelect:e=>`Select at least ${e} options`,maxSelect:e=>`Select at most ${e} options`,regex:"Invalid format",invalidSelection:"Invalid selection"},ic={getValueOrDefault:e=>e.value??e.default_value??null,validate:(e,t,n)=>{const r=t;if(e.required&&(!r||r.trim()===""))return{isValid:!1,error:n.required};if(!r)return{isValid:!0};const{rules:s}=e;if(s){if(s.min_length!==void 0&&r.length<s.min_length)return{isValid:!1,error:typeof n.minLength=="function"?n.minLength(s.min_length):n.minLength};if(s.max_length!==void 0&&r.length>s.max_length)return{isValid:!1,error:typeof n.maxLength=="function"?n.maxLength(s.max_length):n.maxLength};if(s.regex&&!new RegExp(s.regex).test(r))return{isValid:!1,error:n.regex}}return{isValid:!0}}},ac={getValueOrDefault:e=>e.value??e.default_value??null,validate:(e,t,n)=>{const r=t;if(e.required&&r===null)return{isValid:!1,error:n.required};if(r===null)return{isValid:!0};const{rules:s}=e;if(s){if(s.min!==void 0&&r<s.min)return{isValid:!1,error:typeof n.min=="function"?n.min(s.min):n.min};if(s.max!==void 0&&r>s.max)return{isValid:!1,error:typeof n.max=="function"?n.max(s.max):n.max}}return{isValid:!0}}},lc={getValueOrDefault:e=>e.value??e.default_value??null,validate:(e,t,n)=>{const r=t;return e.required&&!r?{isValid:!1,error:n.required}:r&&!e.options.includes(r)?{isValid:!1,error:n.invalidSelection}:{isValid:!0}}},cc={getValueOrDefault:e=>e.values??e.default_values??null,validate:(e,t,n)=>{const r=t;if(e.required&&(!r||r.length===0))return{isValid:!1,error:n.required};if(!r||r.length===0)return{isValid:!0};if(r.filter(a=>!e.options.includes(a)).length>0)return{isValid:!1,error:n.invalidSelection};const{rules:o}=e;if(o){if(o.min_select!==void 0&&r.length<o.min_select)return{isValid:!1,error:typeof n.minSelect=="function"?n.minSelect(o.min_select):n.minSelect};if(o.max_select!==void 0&&r.length>o.max_select)return{isValid:!1,error:typeof n.maxSelect=="function"?n.maxSelect(o.max_select):n.maxSelect}}return{isValid:!0}}},uc={text:ic,number:ac,"single-select":lc,"multi-select":cc},dc={getValueOrDefault:()=>null,validate:()=>({isValid:!1})};function Co(e){return uc[e.type]||dc}function ts(e){return Co(e).getValueOrDefault(e)}function mc(e,t,n={}){const r={...oc,...n};return Co(e).validate(e,t,r)}const hc=(e,t={})=>{const{labels:n={},onSubmit:r,onCancel:s}=t,[o,a]=c.useState({}),[l,u]=c.useState(()=>{const C={};return e.fields.forEach(g=>{C[g.key]=ts(g)}),C}),d=c.useMemo(()=>e.submitted_at?"submitted":e.canceled_at?"canceled":"draft",[e.submitted_at,e.canceled_at]);c.useEffect(()=>{if(d==="submitted"||d==="canceled"){const C={};let g=!1;e.fields.forEach(y=>{const E=ts(y);JSON.stringify(l[y.key])!==JSON.stringify(E)&&(g=!0),C[y.key]=E}),g&&u(C)}},[d]);const m=(C,g)=>{u(y=>({...y,[C]:g})),a(y=>({...y,[C]:void 0}))},h=e.fields.map(C=>{var E,I,A;const g=l[C.key]??null,y={key:C.key,label:C.label,error:o[C.key],required:C.required};return C.type==="text"?{...y,type:"text",layout:C.layout,value:g,...C.placeholder&&{placeholder:C.placeholder},...((E=C.rules)==null?void 0:E.max_length)&&{maxLength:C.rules.max_length}}:C.type==="number"?{...y,type:"number",layout:C.layout,value:g,...C.placeholder&&{placeholder:C.placeholder},...((I=C.rules)==null?void 0:I.max)&&{max:C.rules.max}}:C.type==="single-select"?{...y,type:"single-select",layout:C.layout,value:g,options:C.options}:C.type==="multi-select"?{...y,type:"multi-select",layout:C.layout,value:g,options:C.options,...((A=C.rules)==null?void 0:A.max_select)&&{maxSelect:C.rules.max_select}}:{...y,type:"unknown",layout:"default",value:null}});return{state:d,fields:h,getField:C=>h.find(g=>g.key===C),updateFieldValue:m,submit:async()=>{const C={};let g=!1;for(const y of e.fields){const E=l[y.key]??null,I=mc(y,E,n);I.isValid||(C[y.key]=I.error,g=!0)}if(a(C),!g&&r){const y={};e.fields.forEach(E=>{y[E.key]=l[E.key]??null}),await r(y)}},cancel:async()=>{await(s==null?void 0:s())}}},fc=e=>{const{chatSDK:t,handlers:n,logger:r}=$e(),{aiAgentInfo:s}=Ct(),o=c.useRef(new Set),a=c.useRef(new Set),l=(m,h)=>{if(!(n!=null&&n.onCustomEvent)||!(s!=null&&s.userId)||!Et(m,s.userId))return;const f=m.messageId;if(Ke.isStreaming(m)){a.current.add(f);return}h==="updated"&&!a.current.has(f)||(r.debug("useCustomEventForMessageReceive: bot-message-received",m),n.onCustomEvent({type:"bot-message-received",data:{message:m}}),a.current.delete(f))},u=c.useCallback(m=>{if(n!=null&&n.onCustomEvent&&m.isAdminMessage()&&m.customType==="user_action_required"&&!o.current.has(m.messageId)){const h=Gn(m.data);Array.isArray(h.history)&&h.history.length===0&&(r.debug("useCustomEventForMessageReceive: user_action_required",h),n.onCustomEvent({type:"user-action-requested",data:h}),o.current.add(m.messageId))}},[n,r]),d=(m,h,f)=>{m.url===e&&(l(h,f),u(h))};return bt(t,{onMessageReceived:(m,h)=>d(m,h,"received"),onMessageUpdated:(m,h)=>d(m,h,"updated")}),{checkForUserActionRequired:u}},gc=e=>{if(e==null||typeof e!="object")return;const t="thinking_message"in e?e.thinking_message:void 0;return typeof t=="string"&&t?t:void 0},vo=e=>{const{aiAgentInfo:t}=Ct(),n=bo(e);if(De(e))return null;const r=n[0];if(!r)return null;const s=r.userId===(t==null?void 0:t.userId),o=s?gc(r.metaData):void 0;return{user:s?t:r,isBot:s,thinkingMessage:o}},pc=(e,t,{enabled:n=!0,idleMs:r=1e3}={})=>{const s=c.useRef(null),o=c.useRef(t),a=c.useRef(t),l=c.useRef(!1);o.current=t,c.useEffect(()=>{if(s.current&&(clearTimeout(s.current),s.current=null),!n||!e){(l.current?a.current:o.current)(!1),l.current=!1,a.current=o.current;return}l.current=!0,a.current=o.current,a.current(!0),s.current=setTimeout(()=>{s.current=null,a.current(!1),l.current=!1,a.current=o.current},r)},[n,r,e]),c.useEffect(()=>()=>{s.current&&(clearTimeout(s.current),s.current=null),(l.current?a.current:o.current)(!1),l.current=!1,a.current=o.current},[])},_c=(e=1e4)=>{const t=new Map;let n=e;return{shouldAnnounce:l=>{const u=Date.now(),d=t.get(l);return d!==void 0&&u-d<n?!1:(t.set(l,u),!0)},setInterval:l=>{n=l},reset:()=>{t.clear()}}},Ec=(e,t,n=1e4,r=!0)=>{const s=c.useRef(null),o=c.useRef(null),a=c.useRef(!1);s.current||(s.current=_c(n));const l=(e==null?void 0:e.nickname.trim())||null,u=(e==null?void 0:e.userId)??l;c.useEffect(()=>{var d;(d=s.current)==null||d.setInterval(n)},[n]),c.useEffect(()=>{var h;if(!r){a.current=!1,o.current=u;return}if(!u||!l){a.current=!1,o.current=null;return}const d=!a.current,m=o.current!==u;a.current=!0,o.current=u,!(!d&&!m)&&(h=s.current)!=null&&h.shouldAnnounce(u)&&t(l)},[u,l,r,t])},hr=({channel:e,userSession:t,aiAgentInfo:n})=>{if(!t||!n||!e)return{fallbackIcon:"delight",url:void 0,title:""};const r=lo(e,t.userId),s={ai(o){return{fallbackIcon:o,url:n.profileUrl,title:n.nickname}},human(o){return{fallbackIcon:o,url:r==null?void 0:r.profileUrl,title:(r==null?void 0:r.nickname)||n.nickname}},channel(o){return{fallbackIcon:o,url:e==null?void 0:e.coverUrl,title:(e==null?void 0:e.name)??""}}};return e.isAIAgent?nt(e)?s.human("agent"):s.ai("delight"):e.isDesk?s.human("agent"):s.channel("user")},ns=e=>c.useReducer((t,n)=>({...t,...n}),e);var We=(e=>(e.AI_AGENT_CSAT_5="AI_AGENT_CSAT_5",e.AI_AGENT_CSAT_5_WITH_CRE="AI_AGENT_CSAT_5_WITH_CRE",e.HELPDESK_CSAT_5="HELPDESK_CSAT_5",e))(We||{});const bc=new Set(["free_text","single_choice"]),Cc=({csatPayload:e,type:t,initialCsat:n,initialCsatReason:r,initialIsResolved:s})=>{const[o,a]=ns({csatType:t,csat:n,csatReason:r,isResolved:s}),[l,u]=ns({followUpItem:!1}),d=c.useMemo(()=>{var g;const v=o.csat,b=typeof v=="number",C=(g=e.follow_up)==null?void 0:g.find(y=>b?y.scores.includes(v):y.always_visible??!1);if(bc.has(C==null?void 0:C.response_type))return C},[o.csat,e.follow_up]),m=(()=>{var v;if(typeof n=="number")return"submitted";if((t===We.AI_AGENT_CSAT_5||t===We.HELPDESK_CSAT_5)&&typeof o.csat=="number")return"submittable";if(t===We.AI_AGENT_CSAT_5_WITH_CRE){const b=typeof o.csat=="number",C=!((v=e.cre)!=null&&v.required)||typeof o.isResolved=="boolean";if(b&&C)return"submittable"}return"unsubmittable"})(),h=c.useCallback(()=>typeof o.csat>"u"?!1:d!=null&&d.required&&!o.csatReason?(u({followUpItem:!0}),!1):!0,[o,d,u]);return c.useEffect(()=>{r||(a({csatReason:""}),u({followUpItem:!1}))},[r,d,a,u]),{params:o,setParams:a,error:l,setError:u,followUpItem:d,state:m,validateParams:h,itemProps:{csatPayload:e,state:m,submitted:m==="submitted"}}},kn=5,vc=250,yc=50,rs=e=>Math.max(0,e-yc),Sc=e=>e<1e3?{speed:kn*.5,chunkSize:2}:e<2e3?{speed:kn*.8,chunkSize:2}:{speed:kn*.6,chunkSize:3},Ac=e=>{const{text:t,enabled:n=!1,onAnimationStart:r,onAnimationProgress:s,onAnimationComplete:o}=e,[a,l]=c.useState(()=>rs(t.length)),u=c.useRef(null),d=c.useRef({startTime:0,lastUpdate:0,lastProgressCall:0}).current,m=c.useRef({onStart:r,onProgress:s,onComplete:o}).current,h=c.useRef({startCalled:!1,completeCalled:!1}).current,f=c.useRef({initialEnabled:n,textLength:t.length,enabled:n}).current,v=n,b=a<t.length,C=f.initialEnabled&&(v||b);return c.useLayoutEffect(()=>{m.onStart=r,m.onProgress=s,m.onComplete=o,f.textLength=t.length,f.enabled=n}),c.useLayoutEffect(()=>{var g;f.initialEnabled&&(h.startCalled||(h.startCalled=!0,(g=m.onStart)==null||g.call(m)),l(y=>t.length<y?t.length:y))},[t]),c.useEffect(()=>{if(!f.initialEnabled)return;let g=rs(t.length);d.lastUpdate=0,d.startTime=0,d.lastProgressCall=0;const y=E=>{var K;d.lastUpdate===0&&(d.lastUpdate=E,d.startTime=E,d.lastProgressCall=E);const I=f.textLength,A=E-d.lastUpdate,w=E-d.startTime,{speed:k,chunkSize:N}=Sc(w),W=k*N;A>=W&&g<I&&(g=Math.min(g+N,I),l(g),d.lastUpdate=E),E-d.lastProgressCall>=vc&&(d.lastProgressCall=E,(K=m.onProgress)==null||K.call(m)),(g<I||f.enabled)&&(u.current=requestAnimationFrame(y))};return u.current=requestAnimationFrame(y),()=>{var E;u.current&&cancelAnimationFrame(u.current),h.startCalled&&!h.completeCalled&&(h.completeCalled=!0,(E=m.onComplete)==null||E.call(m))}},[]),c.useEffect(()=>{var I;const g=f.initialEnabled&&h.startCalled,y=!n,E=a>=t.length&&t.length>0;g&&y&&E&&!h.completeCalled&&(h.completeCalled=!0,(I=m.onComplete)==null||I.call(m))},[n,a,t.length]),{streamText:f.initialEnabled?t.slice(0,a):t,isAnimating:C}},ss={visible:!1,remainingTime:0,showDescription:!1,targetTimeMs:null},xc=e=>({visible:!0,remainingTime:e,showDescription:!0,targetTimeMs:Date.now()+e*1e3}),Tc=(e,t=Date.now())=>{if(!e.visible||e.targetTimeMs==null)return e;const n=Math.max(Math.ceil((e.targetTimeMs-t)/1e3),0);return n<=0?{...e,remainingTime:0,showDescription:!1,targetTimeMs:null}:e.remainingTime===n&&e.showDescription?e:{...e,remainingTime:n,showDescription:!0}},Ic=()=>{const{chatSDK:e}=$e(),[t,n]=c.useState(ss),r=()=>n(ss);return pn(e,{onConnectionDelayed:s=>{s>0?n(xc(s)):r()},onReconnectSucceeded:r,onConnected:r}),c.useEffect(()=>{if(!t.visible||!t.showDescription||t.targetTimeMs==null)return;const s=setTimeout(()=>{n(o=>Tc(o))},1e3);return()=>clearTimeout(s)},[t.visible,t.showDescription,t.targetTimeMs,t.remainingTime]),{visible:t.visible,remainingTime:t.remainingTime,showDescription:t.showDescription}},wc=e=>{const t=Math.floor(e/60),n=e%60;return`${String(t).padStart(2,"0")}:${String(n).padStart(2,"0")}`},Mc=(e,t)=>{if(!t)return{beforeText:e,highlightedText:"",afterText:""};const n=e.indexOf(t);return n<0?{beforeText:e,highlightedText:"",afterText:""}:{beforeText:e.slice(0,n),highlightedText:t,afterText:e.slice(n+t.length)}},yo=e=>e.replace(/\s+/g," ").trim(),kc="Code block",So=e=>`A11Y_INLINE_CODE_${e}`,Ao=e=>{let t="",n=e;for(;;){const r=n.match(/^([ \t]{0,3}>\s?)(.*)$/);if(r){t+=r[1],n=r[2];continue}break}return{blockquotePrefix:t,content:n}},xo=e=>{const t=e.match(/^([ \t]{0,3}[-+*]\s+)(.*)$/);if(t)return{content:t[2],hasListPrefix:!0};const n=e.match(/^([ \t]{0,3}\d+[.)]\s+)(.*)$/);return n?{content:n[2],hasListPrefix:!0}:{content:e,hasListPrefix:!1}},Lc=e=>{const{blockquotePrefix:t,content:n}=Ao(e),{content:r}=xo(n),s=r.match(/^[ \t]{0,3}([`~]{3,})(.*)$/);if(!s)return;const o=s[1],a=s[2],l=o[0];if(!(l!=="`"&&l!=="~"||!o.split("").every(u=>u===l))&&!(l==="`"&&a.includes("`")))return{char:l,blockquotePrefix:t,length:o.length}},Rc=(e,t)=>{const{blockquotePrefix:n,content:r}=Ao(e);if(n!==t.blockquotePrefix)return!1;const{content:s,hasListPrefix:o}=xo(r);if(o)return!1;const a=s.match(/^[ \t]{0,3}([`~]{3,})[ \t]*$/);if(!a)return!1;const l=a[1];return l[0]===t.char&&l.length>=t.length&&l.split("").every(u=>u===t.char)},Oc=(e,t,n)=>{let r=n;for(;r<e.length;){const s=e[r];if(s==="\\"&&r+1<e.length){r+=2;continue}if(s===t)return r;r+=1}return-1},Nc=(e,t)=>{let n=1,r=t;for(;r<e.length;){const s=e[r];if(s==="\\"&&r+1<e.length){r+=2;continue}if(s==="["){n+=1,r+=1;continue}if(s==="]"&&(n-=1,n===0))return r;r+=1}return-1},Dc=(e,t)=>{let n=t,r=1,s,o=!1,a=!1;for(;n<e.length&&r>0;){const l=e[n];if(l==="\\"&&n+1<e.length){n+=2;continue}if(s){l===s&&(s=void 0),n+=1;continue}if(r===1&&o&&/\s/.test(l)){a=!0,n+=1;continue}if(r===1&&a&&(l==='"'||l==="'")){s=l,n+=1;continue}if(l==="("){r+=1,o=!0,n+=1;continue}if(l===")"){r-=1,n+=1;continue}/\s/.test(l)||(o=!0),n+=1}return r===0?n:-1},$c=e=>{let t=0,n="";for(;t<e.length;){const r=Oc(e,"[",t);if(r===-1){n+=e.slice(t);break}const s=Nc(e,r+1);if(s===-1){n+=e.slice(t);break}if(r>0&&e[r-1]==="!"&&ln(e,r-1)){n+=e.slice(t,s+1),t=s+1;continue}if(e[s+1]!=="("){n+=e.slice(t,s+1),t=s+1;continue}const o=r>0&&e[r-1]==="!"&&!ln(e,r-1)?r-1:r;n+=e.slice(t,o);const a=e.slice(r+1,s),l=Dc(e,s+2);if(l===-1){n+=e.slice(o);break}n+=a,t=l}return n},To=(e,t,n)=>{if(!/^\d+$/.test(t))return!1;const r=e.slice(-1);return/\d/.test(r)&&/\d/.test(n)},Pc=e=>e.replace(/(^|[^*\\])\*\*([^\s*](?:[\s\S]*?[^\s*])?)\*\*(?!\*)/g,(t,n,r,s,o)=>{const a=o[s+t.length]??"";return To(n,r,a)?t:`${n}${r}`}),Fc=e=>e.replace(/(^|[^_\\])__([^\s_](?:[\s\S]*?[^\s_])?)__(?!_)/g,"$1$2"),Bc=e=>e.replace(/(^|[^~\\])~~([^\s~](?:[\s\S]*?[^\s~])?)~~(?!~)/g,"$1$2"),Uc=e=>{let t=e;return t=t.replace(/(^|[^*\\])\*([^\s*](?:[\s\S]*?[^\s*])?)\*(?!\*)/g,(n,r,s,o,a)=>{const l=a[o+n.length]??"";return To(r,s,l)?n:`${r}${s}`}),t=t.replace(/(^|[\s([{"'])_([^_\s](?:[\s\S]*?[^_\s])?)_(?=$|[\s)\]}"'.,!?:;])/g,"$1$2"),t},Hc=e=>e.replace(/\\([\\`*_[\]()#+.!~|-])/g,"$1"),Gc=e=>{let t=e;return t=t.replace(/^\s{0,3}#{1,6}\s+/gm,""),t=t.replace(/^\s{0,3}>\s?/gm,""),t=t.replace(/^\s{0,3}(?!([-*_])(?:\s*\1){2,}\s*$)[-*+]\s+/gm,""),t=t.replace(/^\s{0,3}\d+[.)]\s+/gm,""),t},os=e=>{const t=e.trim();if(!t.includes("|"))return!1;const n=t.split("|").map(r=>r.trim()).filter(Boolean);return n.length===0?!1:n.every(r=>/^:?-{3,}:?$/.test(r))},is=e=>{const t=[];let n="",r=!1;for(const o of e.trim()){if(r){n+=o==="|"?"|":`\\${o}`,r=!1;continue}if(o==="\\"){r=!0;continue}if(o==="|"){const a=n.trim();a&&t.push(a),n="";continue}n+=o}r&&(n+="\\");const s=n.trim();return s&&t.push(s),t},Vc=e=>{const t=e.split(`
2
- `),n=[];let r=0;for(;r<t.length;){const s=t[r],o=t[r+1],a=is(s);if(a.length>0&&o&&os(o)){for(n.push(a.join(" ")),r+=2;r<t.length;){const l=t[r],u=is(l);if(u.length===0||os(l))break;n.push(u.join(" ")),r+=1}continue}n.push(s),r+=1}return n.join(`
3
- `)},zc=e=>e.replace(/^\s{0,3}(?:(?:-\s*){3,}|(?:\*\s*){3,}|(?:_\s*){3,})$/gm,""),qc=(e,t)=>{const n=e.split(`
4
- `),r=[];let s=0;for(;s<n.length;){const o=n[s],a=Lc(o);if(!a){r.push(o),s+=1;continue}let l=-1;for(let u=s+1;u<n.length;u++)if(Rc(n[u],a)){l=u;break}if(l===-1){r.push(o),s+=1;continue}r.push(` ${t} `),s=l+1}return r.join(`
5
- `)},ln=(e,t)=>{let n=0,r=t-1;for(;r>=0&&e[r]==="\\";)n+=1,r-=1;return n%2===1},Wc=e=>{const t=[];let n=0,r="";for(;n<e.length;){const s=e[n];if(s!=="`"||ln(e,n)){r+=s,n+=1;continue}let o=n;for(;o<e.length&&e[o]==="`";)o+=1;const a=e.slice(n,o);let l=o,u=!1;for(;l<e.length&&e[l]!==`
6
- `;){if(e[l]==="`"&&!ln(e,l)&&e.startsWith(a,l)){const d=e.slice(o,l),m=t.push(d)-1;r+=So(m),n=l+a.length,u=!0;break}l+=1}u||(r+=a,n=o)}return{text:r,inlineCodes:t}},Yc=(e,{codeBlockPlaceholder:t=kc}={})=>{const n=e==null?void 0:e.replace(/\r\n?/g,`
7
- `);if(!n)return;const r=[];let s=n;s=qc(s,t),s=Gc(s);const o=Wc(s);s=o.text,r.push(...o.inlineCodes),s=$c(s),s=Pc(s),s=Fc(s),s=Bc(s),s=Uc(s),s=Vc(s),s=zc(s),s=Hc(s);for(let l=0;l<r.length;l++)s=s.replaceAll(So(l),r[l]);return yo(s)||void 0},cn=e=>(e==null?void 0:e.trim())||"",Kc=e=>(e?yo(e):void 0)||void 0,fr=e=>({text:cn(e),format:"plain"}),jc=e=>({text:cn(e),format:"markdown"}),_t=({markdownText:e,plainText:t,comparisonText:n})=>{const r=cn(e);return r&&r!==cn(n)?jc(r):fr(t)},pt=({sender:e,message:t,messageFormat:n="plain",time:r,codeBlockPlaceholder:s})=>{const o=[],a=n==="markdown"?Yc(t,{codeBlockPlaceholder:s}):Kc(t);if(e&&o.push(e),a&&o.push(a),r&&o.push(r),o.length!==0)return o.join(", ")},Xc=(e,t={})=>{const{throttleMs:n=1e3,isSuppressed:r}=t;let s=null;const o=[];let a=null,l=null,u=!1,d=0;const m=(A,w)=>({text:A,ignoreSuppression:w,queueOrder:d++}),h=()=>{const A=o[0]??null,w=s;return A&&w?w.queueOrder<A.queueOrder?(s=null,w):o.shift()??null:A?o.shift()??null:w!==null?(s=null,w):null},f=()=>{for(;;){const A=h();if(!A)return null;if(!(!A.ignoreSuppression&&(r!=null&&r())))return A}},v=A=>{a=A,u=!0,e(A),l=setTimeout(()=>{l=null,u=!1;const w=f();w&&v(w.text)},n)},b=A=>{a=A,e(A)},C=(A,w,k)=>{if(A&&!(!w&&(r!=null&&r()))&&!(A===a&&u))if(u){if(((k==null?void 0:k.mode)??"latestOnly")==="ordered"){const W=o[o.length-1];if((W==null?void 0:W.text)===A)return;o.push(m(A,w));return}s=m(A,w)}else s=null,v(A)};return{announce:(A,w)=>{C(A,!1,w)},announceIgnoringSuppression:(A,w)=>{C(A,!0,w)},flush:()=>{const A=[];let w=h();for(;w!==null;)A.push(w),w=h();if(l!==null&&(clearTimeout(l),l=null),u=!1,A.length!==0)for(const k of A)b(k.text)},destroy:()=>{l!==null&&(clearTimeout(l),l=null),s=null,o.length=0,a=null,u=!1}}},Zc=e=>{switch(e){case"conversationClosed":case"csatDisplayed":return"ordered";default:return"latestOnly"}},Jc=(e,t)=>e.screen==="conversationList"?typeof e.conversationCount=="number"?t.screenConversationListWithCount(e.conversationCount):t.screenConversationListNoCount:[e.agentName?t.screenConversationWithAgent(e.agentName):t.screenConversation,e.isClosed?t.conversationClosed:null,e.isClosed&&e.hasCSAT?t.csatDisplayed:null,e.isEmpty?t.emptyState:null].filter(r=>!!r).join(". "),Qc=(e,t)=>{switch(e.event){case"newMessage":return e.senderName?t.newMessageFromSender(e.senderName,1):t.newMessage(1);case"typing":return t.typing(e.agentName??"");case"sendFailed":return t.sendFailed;case"agentConnected":return t.agentConnected(e.agentName??"");case"conversationClosed":return t.conversationClosed;case"csatDisplayed":return t.csatDisplayed;case"emptyState":return t.emptyState;case"inputDisabled":return t.inputDisabled}},eu=(e,t)=>{switch(e.type){case"fileSizeExceeded":return t.fileSizeExceeded(e.maxSizeMB??25);case"sendFailed":return t.sendFailed;case"csatFormError":return t.csatFormError;case"generic":return e.message}},tu=(e,t)=>!t||!Xe(e)||e.sender.userId!==t?null:e.reqId||(e.messageId>0?String(e.messageId):null),as=(e,t)=>Te.isAdmin(e)?Te.isCSAT(e):"sender"in e?e.sender.userId!==t:!1,nu=e=>"messageId"in e&&e.messageId>0?String(e.messageId):"reqId"in e&&typeof e.reqId=="string"&&e.reqId.length>0?e.reqId:null,ru=e=>e===le.CollectionEventSource.EVENT_MESSAGE_RECEIVED||e===le.CollectionEventSource.EVENT_MESSAGE_UPDATED,ls=(e,t,n,r)=>{const{newestFirst:s=!1}={};if(s){for(const o of e)if(o&&as(o,n)&&t.some(a=>Nr(o,a)))return o;return}for(let o=e.length-1;o>=0;o-=1){const a=e[o];if(a&&as(a,n)&&t.some(l=>Nr(a,l)))return a}},su=({isOpened:e,opensConversationList:t})=>e?t?"closeConversationList":"closeConversation":t?"openConversationList":"openConversation",ou=(e,t)=>{switch(e){case"closeConversationList":return t.closeConversationList;case"closeConversation":return t.closeConversation;case"openConversationList":return t.openConversationList;case"openConversation":return t.openConversation}},iu=(e,t)=>{switch(e){case"closeConversation":return t.hintCloseConversation;case"openConversationList":return t.hintOpenConversationList;case"openConversation":return t.hintOpenConversation;default:return}},au=({intent:e,strings:t})=>({label:ou(e,t),hint:iu(e,t)}),lu="1.25.0",He="sb-agent",ve={ENTRY:`${He}-entry`,MODAL_ROOT:`${He}-modal-root`,WINDOW:`${He}-window`,LAUNCHER:`${He}-launcher`},Io="data-sb-initial-focus",wo="true",gr=`[${Io}="${wo}"]`,cu={[Io]:wo},Mo="data-sb-conversation-header",ko="true",uu=`[${Mo}="${ko}"]`,du={[Mo]:ko},zt=2147483647,vt={MODAL:zt-1,TOOLTIP:zt-2,WINDOW:zt-3,LAUNCHER:zt-4},Lo=36,mu=100,hu=lu,pr="noopener noreferrer nofollow";function fu(){return{isOnline:()=>navigator.onLine,subscribe:e=>{const t=()=>e(!0),n=()=>e(!1);return window.addEventListener("online",t),window.addEventListener("offline",n),()=>{window.removeEventListener("online",t),window.removeEventListener("offline",n)}}}}const qt={};function gu(){return{get:e=>{try{return localStorage.getItem(e)}catch{return qt[e]??null}},set:(e,t)=>{try{localStorage.setItem(e,t)}catch{qt[e]=t}},delete:e=>{try{localStorage.removeItem(e)}catch{delete qt[e]}},getKeys:e=>{try{const t=[];for(let n=0;n<localStorage.length;n++){const r=localStorage.key(n);r&&r.startsWith(e)&&t.push(r)}return t}catch{return Object.keys(qt).filter(t=>t.startsWith(e))}}}}const pu={conversation:{input_placeholder:"Ask a question",input_placeholder_disabled:"Chat is unavailable in this channel",input_placeholder_steward:"Processing your request...",input_placeholder_wait_ai_agent_response:"Waiting for the agent's reply...",input_placeholder_active_form:"Please fill out the form to move forward.",input_placeholder_reconnecting:"Trying to reconnect. Refresh if persists.",unknown_message_type:"(Unknown message type)",powered_by:"Powered by",citation_title:"Source",start_new_conversation_label:"Start a conversation",scroll_to_new_messages_label:()=>"New message",failed_message_resend:"Retry",failed_message_remove:"Remove",file_upload_no_supported_files:"No supported file types available.",file_upload_replace_alert_title:"Replace attachment?",file_upload_replace_alert_description:"Uploading a different file type will replace the current one.",a11y_message_list:"Chat messages",a11y_scroll_to_bottom:"Scroll to bottom",a11y_scroll_to_new_messages:"Scroll to new messages",a11y_open_conversation_list:"Open conversation list",a11y_open_conversation:"Open conversation",a11y_open_conversations:"Open conversations",a11y_close_conversation:"Close conversation",a11y_close_conversations:"Close conversations",a11y_menu:"Menu",a11y_message_input:"Message",a11y_send_message:"Send message",a11y_attach_file:"Attach file",a11y_close_messenger:"Close messenger",a11y_expand_messenger:"Expand messenger",a11y_collapse_messenger:"Collapse messenger",a11y_connect_agent:"Connect with an agent",a11y_message_sender_you:"You",a11y_suggested_reply:"Suggested reply",a11y_typing_indicator:"Typing",a11y_code_block_placeholder:"Code block",a11y_typing_format:e=>`${e} is typing`,a11y_message_failed:"Message send failed",a11y_new_messages_received:e=>`${e} new ${e===1?"message":"messages"} received`,a11y_new_messages_received_from_sender:(e,t)=>`${e}: ${t} new ${t===1?"message":"messages"} received`,a11y_agent_connected:e=>"Connected to human agent",a11y_conversation_closed:"Conversation has ended",a11y_file_image:e=>`Image file: ${e}`,a11y_file_video:e=>`Video file: ${e}`,a11y_file_document:e=>`Document file: ${e}`,a11y_screen_conversation:"Conversation",a11y_screen_conversation_with_agent:e=>`Conversation with ${e}`,a11y_screen_conversation_list_no_count:"Conversation list",a11y_screen_conversation_list_with_count:e=>`Conversations, ${e} total`,a11y_csat_displayed:"Satisfaction survey displayed",a11y_empty_conversation:"No messages in this conversation",a11y_input_disabled:"Message input is disabled",a11y_file_size_exceeded:e=>`File exceeds size limit of ${e}MB`,a11y_csat_form_error:"Please complete the required fields",a11y_hint_send_message:"Sends the message",a11y_hint_open_conversation:"Opens the conversation",a11y_hint_open_conversations:"Opens conversations",a11y_hint_close_conversation:"Closes the conversation",a11y_hint_open_menu:"Opens the menu",a11y_hint_connect_to_agent:"Escalates to a human agent",a11y_hint_attach_file:"Opens file attachment options",a11y_hint_view_new_messages:"Scrolls to new messages",a11y_hint_open_file:"Opens the file",a11y_hint_open_image:"Opens the image",a11y_hint_send_reply:"Sends this reply",image_viewer_default_title:"Image",a11y_image_viewer_close:"Close image viewer",a11y_image_viewer_previous:"Previous image",a11y_image_viewer_next:"Next image",a11y_image_viewer_download:"Download image",attachment_document:"Files"},conversation_list:{header_title:"Conversations",ended:"Ended",system_message:"System message",footer_title:"Start a conversation",multiple_files_count:e=>`${e} ${e===1?"file":"files"}`,a11y_conversation_item:(e,t,n,r)=>`${e}, ${t}, ${n}, ${r} unread ${r===1?"message":"messages"}`},date_format:{just_now:"Just now",minutes_ago:e=>`${e} minutes ago`,hours_ago:e=>`${e} hours ago`,date_short:"MM/dd/yyyy",date_separator:"MMMM dd, yyyy",message_timestamp:"p"},csat:{title:"Your feedback matters to us",submitted_label:"Successfully submitted!",cre_question:"Was your issue resolved?",cre_positive_label:"Yes, thank you! 👍",cre_negative_label:"No, that didn't help.",reason_placeholder:"Share your feedback",question:"How would you rate your experience?",submit_label:"Submit",submission_expired:"We're sorry, the survey period has ended.",a11y_rating_label:(e,t)=>`${e} out of 5 — ${t}`,a11y_hint_select_rating:"Selects this rating"},form:{optional_label:"optional",validation_required:"This question is required"},common:{placeholder_something_went_wrong:"Something went wrong",placeholder_no_messages:"No messages",placeholder_no_conversations:"No conversations yet",placeholder_something_went_wrong_retry_label:"Retry",button_ok:"OK",button_cancel:"Cancel"},feedback:{title:"Submit feedback",good:"Good",bad:"Bad",comment_label:"Comment (optional)",comment_placeholder:"Leave a comment",cancel:"Cancel",submit:"Submit",save:"Save",edit:"Edit feedback",remove:"Remove feedback"},handoff:{confirm_title:"Request handoff?",confirm_description:"You'll be transferred to a human agent. Your conversation history will be shared.",confirm_cancel:"Cancel",confirm_handoff:"Handoff"},connection_delay:{title:"Something went wrong. You'll be reconnected shortly.",description:e=>`Estimated waiting time: ${e}`}},Yn={language:"en",strings:pu,dateLocale:Vi.enUS},Ro=e=>({MESSAGE_INPUT__PLACE_HOLDER:e.conversation.input_placeholder,MESSAGE_INPUT__PLACE_HOLDER__DISABLED:e.conversation.input_placeholder_disabled,MESSAGE_INPUT__PLACE_HOLDER__STEWARD:e.conversation.input_placeholder_steward,MESSAGE_INPUT__PLACE_HOLDER__WAIT_AI_AGENT_RESPONSE:e.conversation.input_placeholder_wait_ai_agent_response,MESSAGE_INPUT__PLACE_HOLDER__RECONNECTING:e.conversation.input_placeholder_reconnecting,UNKNOWN__UNKNOWN_MESSAGE_TYPE:e.conversation.unknown_message_type,POWERED_BY:e.conversation.powered_by,CSAT_TITLE_UNSUBMITTED:e.csat.title,CSAT_TITLE_SUBMITTED:e.csat.submitted_label,CSAT_CRE_TITLE:e.csat.cre_question,CSAT_CRE_SOLVED:e.csat.cre_positive_label,CSAT_CRE_NOT_SOLVED:e.csat.cre_negative_label,CSAT_REASON_PLACEHOLDER:e.csat.reason_placeholder,CSAT_RATING_TITLE:e.csat.question,CSAT_SUBMIT_LABEL:e.csat.submit_label,CSAT_SUBMISSION_EXPIRED:e.csat.submission_expired,DATE_FORMAT__JUST_NOW:e.date_format.just_now,DATE_FORMAT__MINUTES_AGO:e.date_format.minutes_ago,DATE_FORMAT__HOURS_AGO:e.date_format.hours_ago,DATE_FORMAT__DATE_SHORT:e.date_format.date_short,DATE_FORMAT__MESSAGE_LIST__DATE_SEPARATOR:e.date_format.date_separator,DATE_FORMAT__MESSAGE_TIMESTAMP:e.date_format.message_timestamp,CONVERSATION_LIST__HEADER_TITLE:e.conversation_list.header_title,CONVERSATION_LIST__ENDED:e.conversation_list.ended,CONVERSATION_LIST__SYSTEM_MESSAGE:e.conversation_list.system_message,CONVERSATION_LIST__NO_CONVERSATIONS:e.common.placeholder_no_conversations,CONVERSATION_LIST__MULTIPLE_FILES_COUNT:e.conversation_list.multiple_files_count,TALK_TO_AGENT:e.conversation.start_new_conversation_label,CITATION_SOURCE_TITLE:e.conversation.citation_title,FORM_PLACEHOLDER:e.conversation.input_placeholder_active_form,FORM_VALIDATION_REQUIRED:e.form.validation_required,OPTIONAL:e.form.optional_label,PLACE_HOLDER__WRONG:e.common.placeholder_something_went_wrong,PLACE_HOLDER__NO_MESSAGES:e.common.placeholder_no_messages,RETRY:e.common.placeholder_something_went_wrong_retry_label,BUTTON__OK:e.common.button_ok,BUTTON__CANCEL:e.common.button_cancel,FAILED_MESSAGE_RESEND:e.conversation.failed_message_resend,FAILED_MESSAGE_REMOVE:e.conversation.failed_message_remove,FILE_UPLOAD_NO_SUPPORTED_FILES:e.conversation.file_upload_no_supported_files,FILE_UPLOAD_REPLACE_ALERT__TITLE:e.conversation.file_upload_replace_alert_title,FILE_UPLOAD_REPLACE_ALERT__DESCRIPTION:e.conversation.file_upload_replace_alert_description,FILE_UPLOAD_FILES:e.conversation.attachment_document,FEEDBACK_TITLE:e.feedback.title,FEEDBACK_GOOD:e.feedback.good,FEEDBACK_BAD:e.feedback.bad,FEEDBACK_COMMENT_LABEL:e.feedback.comment_label,FEEDBACK_COMMENT_PLACEHOLDER:e.feedback.comment_placeholder,FEEDBACK_CANCEL:e.feedback.cancel,FEEDBACK_SUBMIT:e.feedback.submit,FEEDBACK_SAVE:e.feedback.save,FEEDBACK_EDIT:e.feedback.edit,FEEDBACK_REMOVE:e.feedback.remove,A11Y_MESSAGE_LIST:e.conversation.a11y_message_list,A11Y_SCROLL_TO_BOTTOM:e.conversation.a11y_scroll_to_bottom,A11Y_SCROLL_TO_NEW_MESSAGES:e.conversation.a11y_scroll_to_new_messages,A11Y_OPEN_CONVERSATION_LIST:e.conversation.a11y_open_conversation_list,A11Y_OPEN_CONVERSATION:e.conversation.a11y_open_conversation,A11Y_OPEN_CONVERSATIONS:e.conversation.a11y_open_conversations,A11Y_CLOSE_CONVERSATION:e.conversation.a11y_close_conversation,A11Y_CLOSE_CONVERSATIONS:e.conversation.a11y_close_conversations,A11Y_MENU:e.conversation.a11y_menu,A11Y_MESSAGE_INPUT:e.conversation.a11y_message_input,A11Y_SEND_MESSAGE:e.conversation.a11y_send_message,A11Y_ATTACH_FILE:e.conversation.a11y_attach_file,A11Y_CONNECT_AGENT:e.conversation.a11y_connect_agent,A11Y_CLOSE_MESSENGER:e.conversation.a11y_close_messenger,A11Y_EXPAND_MESSENGER:e.conversation.a11y_expand_messenger,A11Y_COLLAPSE_MESSENGER:e.conversation.a11y_collapse_messenger,A11Y_MESSAGE_SENDER_YOU:e.conversation.a11y_message_sender_you,A11Y_SUGGESTED_REPLY:e.conversation.a11y_suggested_reply,A11Y_TYPING_INDICATOR:e.conversation.a11y_typing_indicator,A11Y_CODE_BLOCK_PLACEHOLDER:e.conversation.a11y_code_block_placeholder,A11Y_TYPING_FORMAT:e.conversation.a11y_typing_format,A11Y_MESSAGE_FAILED:e.conversation.a11y_message_failed,A11Y_NEW_MESSAGES_RECEIVED:e.conversation.a11y_new_messages_received,A11Y_NEW_MESSAGES_RECEIVED_FROM_SENDER:e.conversation.a11y_new_messages_received_from_sender,A11Y_AGENT_CONNECTED:e.conversation.a11y_agent_connected,A11Y_CONVERSATION_CLOSED:e.conversation.a11y_conversation_closed,A11Y_FILE_IMAGE:e.conversation.a11y_file_image,A11Y_FILE_VIDEO:e.conversation.a11y_file_video,A11Y_FILE_DOCUMENT:e.conversation.a11y_file_document,A11Y_SCREEN_CONVERSATION:e.conversation.a11y_screen_conversation,A11Y_SCREEN_CONVERSATION_WITH_AGENT:e.conversation.a11y_screen_conversation_with_agent,A11Y_SCREEN_CONVERSATION_LIST_NO_COUNT:e.conversation.a11y_screen_conversation_list_no_count,A11Y_SCREEN_CONVERSATION_LIST_WITH_COUNT:e.conversation.a11y_screen_conversation_list_with_count,A11Y_CSAT_DISPLAYED:e.conversation.a11y_csat_displayed,A11Y_EMPTY_CONVERSATION:e.conversation.a11y_empty_conversation,A11Y_INPUT_DISABLED:e.conversation.a11y_input_disabled,A11Y_FILE_SIZE_EXCEEDED:e.conversation.a11y_file_size_exceeded,A11Y_CSAT_FORM_ERROR:e.conversation.a11y_csat_form_error,A11Y_HINT_SEND_MESSAGE:e.conversation.a11y_hint_send_message,A11Y_HINT_OPEN_CONVERSATION:e.conversation.a11y_hint_open_conversation,A11Y_HINT_OPEN_CONVERSATIONS:e.conversation.a11y_hint_open_conversations,A11Y_HINT_CLOSE_CONVERSATION:e.conversation.a11y_hint_close_conversation,A11Y_HINT_OPEN_MENU:e.conversation.a11y_hint_open_menu,A11Y_HINT_CONNECT_TO_AGENT:e.conversation.a11y_hint_connect_to_agent,A11Y_HINT_ATTACH_FILE:e.conversation.a11y_hint_attach_file,A11Y_HINT_VIEW_NEW_MESSAGES:e.conversation.a11y_hint_view_new_messages,A11Y_HINT_OPEN_FILE:e.conversation.a11y_hint_open_file,A11Y_HINT_OPEN_IMAGE:e.conversation.a11y_hint_open_image,A11Y_HINT_SEND_REPLY:e.conversation.a11y_hint_send_reply,A11Y_CONVERSATION_ITEM:e.conversation_list.a11y_conversation_item,A11Y_RATING_LABEL:e.csat.a11y_rating_label,A11Y_HINT_SELECT_RATING:e.csat.a11y_hint_select_rating,IMAGE_VIEWER__DEFAULT_TITLE:e.conversation.image_viewer_default_title,A11Y_IMAGE_VIEWER_CLOSE:e.conversation.a11y_image_viewer_close,A11Y_IMAGE_VIEWER_PREVIOUS:e.conversation.a11y_image_viewer_previous,A11Y_IMAGE_VIEWER_NEXT:e.conversation.a11y_image_viewer_next,A11Y_IMAGE_VIEWER_DOWNLOAD:e.conversation.a11y_image_viewer_download,SCROLL_TO_NEW_MESSAGES_LABEL:e.conversation.scroll_to_new_messages_label,HANDOFF_CONFIRM__TITLE:e.handoff.confirm_title,HANDOFF_CONFIRM__DESCRIPTION:e.handoff.confirm_description,HANDOFF_CONFIRM__CANCEL:e.handoff.confirm_cancel,HANDOFF_CONFIRM__HANDOFF:e.handoff.confirm_handoff,CONNECTION_DELAY__TITLE:e.connection_delay.title,CONNECTION_DELAY__DESCRIPTION:e.connection_delay.description}),Oo=e=>{var t;return((t=e.split("-"))==null?void 0:t[0])??Nt},Nt="en",No=new Set([Nt,"ko","es","pt","fr","hi","it","de","tr","ja"]),_u='@import"https://fonts.googleapis.com/css?family=Roboto:400,500,600,700&display=swap";.sb-message-template__border{position:relative}.sb-message-template__border:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;box-shadow:inset 0 0 0 var(--border-width) var(--border-color);border-radius:var(--border-radius);pointer-events:none}.sb-message-template__action{cursor:pointer}.sb-message-template__parent{font-family:Roboto,serif}.sb-message-template__text{font-family:inherit;font-size:14px;font-weight:400;font-stretch:normal;font-style:normal;letter-spacing:normal;text-align:left}.sb-message-template__text-button{font-family:inherit;background-color:#e0e0e0;text-align:center;padding:10px;border-radius:6px;font-size:14px;font-weight:600;font-stretch:normal;font-style:normal;letter-spacing:normal}.sendbird-theme--light .sb-message-template__text-button{color:#742ddd}.sendbird-theme--dark .sb-message-template__text-button{color:#c2a9fa}.sb-message-template__text-button:hover{opacity:1;box-shadow:#0000001a 0 1px 3px,#0000000f 0 1px 2px}.sb-message-template__text-button,.sb-message-template__image-button{cursor:pointer;border-style:none}.sb-message-template__parent{border-radius:unset;background-color:transparent;overflow:hidden}.sb-message-template__parent *{box-sizing:border-box;line-height:1.3}.sb-message-template__carousel{display:flex;width:100%;box-sizing:border-box;touch-action:pan-y}',{Provider:Eu,useContext:_r}=Ee("AgentUIElementResolver"),bu=({entryElement:e,modalRootElement:t,rootElement:n,children:r})=>{const s=c.useMemo(()=>{const o=n??document.body,a=e??o,l=t??o,u=d=>d===ve.MODAL_ROOT?l:a.querySelector(`#${d}`);return{resolveElement:u,resolvePortalContainer:d=>u(d)??l}},[e,t,n]);return i.createElement(Eu,{value:s},r)};function ct(e,t){const n=e.getRootNode({composed:t});return n instanceof ShadowRoot||n instanceof Document?n:document}const cs=()=>{const e=[];let t=0;return{register:n=>{const r=++t;return e.push({id:r,handler:n}),()=>{const s=e.findIndex(o=>o.id===r);s>=0&&e.splice(s,1)}},dismissTopmost:()=>{const n=e[e.length-1];return n?(n.handler(),!0):!1}}},{Provider:Cu,useContext:Do}=Ee("EscapeDismissStack"),us=e=>{e.stopPropagation(),e.stopImmediatePropagation()},vu=({rootElement:e=document.body,boundaryElement:t,children:n})=>{const r=c.useRef(null),s=c.useRef(null);r.current||(r.current=cs()),s.current||(s.current=cs());const o=r.current,a=s.current;c.useLayoutEffect(()=>{const u=t??ct(e),d=m=>{if(m.key==="Escape"){if(o.dismissTopmost()){us(m);return}a.dismissTopmost()&&us(m)}};return u.addEventListener("keydown",d),()=>u.removeEventListener("keydown",d)},[t,e,a,o]);const l=c.useMemo(()=>({register:o.register,dismissTopmost:o.dismissTopmost,registerShellDismissHandler:a.register}),[a,o]);return i.createElement(Cu,{value:l},n)},$o=(e,t,n)=>{const r=c.useRef(t);c.useLayoutEffect(()=>{r.current=t},[t]),c.useLayoutEffect(()=>{if(e)return n(()=>r.current())},[e,n])},yu=(e,t)=>{const{register:n}=Do();$o(e,t,n)},Su=(e,t)=>{const{registerShellDismissHandler:n}=Do();$o(e,t,n)},Au=(e,t,n)=>{const r=e[t];return r?typeof r=="function"?r():Promise.resolve(r):new Promise((s,o)=>{(typeof queueMicrotask=="function"?queueMicrotask:setTimeout)(o.bind(null,new Error("Unknown variable dynamic import: "+t+(t.split("/").length!==n?". Note that variables only represent file names one level deep.":""))))})},ds=Ro(Yn.strings),xu={...ds,HEADER_BUTTON__AGENT_HANDOFF:"Talk to human agent",MESSAGE_INPUT__PLACE_HOLDER__SUGGESTED_REPLIES:"Select an option to continue",BUTTON__SUBMIT:"Submit",SUBMITTED:"Submitted",TRY_AGAIN:"Please try again.",FILE_UPLOAD_NOTIFICATION__COUNT_LIMIT:"Up to %d files can be attached.",FILE_UPLOAD_NOTIFICATION__SIZE_LIMIT:"The maximum size per file is %d MB.",FILE_UPLOAD_NOTIFICATION__FILES_EXCLUDED_BY_VALIDATION:"%d files were excluded due to limits. Please select files individually.",FILE_UPLOAD_PHOTOS:"Photos",FILE_VIEWER__UNSUPPORT:"Unsupported message",A11Y_ATTACH_FILE:"Attach file",A11Y_FILE_SELECTED:e=>`${e}, selected`,A11Y_FILE_REMOVE_BUTTON:e=>`Remove file: ${e}`,A11Y_CSAT_RATING_LABEL:(e,t)=>`${e} — ${t}`,A11Y_FILE_UPLOAD_OPTIONS:"File upload options",A11Y_FAILED_MESSAGE_OPTIONS:"Failed message options",A11Y_FEEDBACK_OPTIONS:"Feedback options",A11Y_CSAT_TEXT_INPUT_LABEL:"Enter answer",A11Y_CONNECT_AGENT:"Talk to human agent",FORM_UNAVAILABLE:"Form is no longer available.",FORM_NOT_SUPPORTED:"This form is not supported in the current version.",FORM_VALIDATION_MIN_LENGTH:e=>`Minimum ${e} characters required`,FORM_VALIDATION_MAX_LENGTH:e=>`Maximum ${e} characters allowed`,FORM_VALIDATION_MIN:e=>`Minimum value is ${e}`,FORM_VALIDATION_MAX:e=>`Maximum value is ${e}`,FORM_VALIDATION_MIN_SELECT:e=>`Select at least ${e} options`,FORM_VALIDATION_MAX_SELECT:e=>`Select at most ${e} options`,FORM_VALIDATION_REGEX_FAILED:"Invalid format",DATE_FORMAT__CONVERSATION_LIST__LIST_ITEM_TITLE:ds.DATE_FORMAT__DATE_SHORT,DATE_FORMAT__CONVERSATION_LIST__LIST_ITEM_TITLE_CAPTION:"h:mma",CONVERSATION_LIST__TOPICS_FALLBACK:"No category",CONVERSATION_CLOSED_FOOTER_LABEL:"Your conversation has ended",START_NEW_CONVERSATION:"💬 Start a new conversation",RETURN_TO_CONVERSATION:"💬 Return to conversation",BUTTON__SAVE:"Save",NO_NAME:"(No name)",CHANNEL_FROZEN:"Channel frozen"},un={language:Yn.language,dateLocale:Yn.dateLocale,stringSet:xu},Tu=Object.freeze(Object.defineProperty({__proto__:null,default:un},Symbol.toStringTag,{value:"Module"})),Kn=new Map([[Nt,un]]);async function Iu(e){const t=Kn.get(e);if(t)return t;try{if(No.has(e)){const{default:n}=await Au(Object.assign({"./languages/de.ts":()=>Promise.resolve().then(()=>require("./cjs/KpILxsy5.cjs")),"./languages/en.ts":()=>Promise.resolve().then(()=>Tu),"./languages/es.ts":()=>Promise.resolve().then(()=>require("./cjs/C9Y_myeI.cjs")),"./languages/fr.ts":()=>Promise.resolve().then(()=>require("./cjs/Bb7tPFDH.cjs")),"./languages/hi.ts":()=>Promise.resolve().then(()=>require("./cjs/1RttGdBR.cjs")),"./languages/it.ts":()=>Promise.resolve().then(()=>require("./cjs/DYr6MsyB.cjs")),"./languages/ja.ts":()=>Promise.resolve().then(()=>require("./cjs/Xd5FCJlT.cjs")),"./languages/ko.ts":()=>Promise.resolve().then(()=>require("./cjs/COfoIob1.cjs")),"./languages/pt.ts":()=>Promise.resolve().then(()=>require("./cjs/CY5jZKJU.cjs")),"./languages/tr.ts":()=>Promise.resolve().then(()=>require("./cjs/B8O63u6F.cjs"))}),`./languages/${e}.ts`,3);return Kn.set(e,n),n}return un}catch{return un}}const{Provider:wu,useContext:re}=Ee("Localization"),Mu=({language:e=navigator.language,languageCode:t,logger:n,stringSet:r,children:s})=>{const[o,a]=c.useState(Kn.get(Nt));return c.useEffect(()=>{const l=t??Oo(e);o.language!==l&&(n==null||n.debug("localization.useEffect: update language",{from:o.language,to:l}),Iu(l).then(a))},[e,t,n]),i.createElement(wu,{value:{language:o.language,defaultStringSet:o.stringSet,stringSet:{...o.stringSet,...r},dateLocale:o.dateLocale,format:(l,u,d)=>et.format(l,u,{locale:o.dateLocale,...d})}},s)},dn="data-sb-agent-theme",ms=e=>(t,...n)=>{let r="";return t.forEach((s,o)=>{r+=s+(n[o]??"")}),`[${dn}='${e}'] & { ${r} }`},X={light:ms("light"),dark:ms("dark")},ku=P.css(({theme:e})=>{const{palette:t}=e;return`
1
+ "use strict";var ra=Object.defineProperty;var sa=(e,t,n)=>t in e?ra(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var S=(e,t,n)=>sa(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ue=require("@sendbird/chat"),c=require("react"),P=require("styled-components"),nt=require("date-fns"),oa=require("date-fns/locale/en-US"),ze=require("@sendbird/chat/message"),ia=require("react-dom"),Ne=require("@sendbird/chat/aiAgent"),je=require("@sendbird/chat/groupChannel"),aa=require("date-fns/isSameDay"),la=require("dompurify"),ir=e=>e&&e.__esModule?e:{default:e};function ca(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const ua=ir(ue),i=ca(c),p=ir(P),io=ir(la),ft="sb-agent",ao="KEY_IMG_ASPECT_RATIO",Vn="*/*",ne={BODY_MAX_WIDTH:244,WIDE_BODY_MAX_WIDTH:640,AVATAR_SIZE:26,BODY_TIME_GAP:4,HORIZONTAL_PADDING:12,GAP_GROUPED:2,GAP_UNGROUPED:16};var nn=(e=>(e.IN_PROGRESS="IN_PROGRESS",e.COMPLETED="COMPLETED",e.CANCELED="CANCELED",e))(nn||{}),kt=(e=>(e.IN_PROGRESS="IN_PROGRESS",e.COMPLETED="COMPLETED",e.CANCELED="CANCELED",e))(kt||{});const lo=e=>{var t;return!!((t=e==null?void 0:e.extendedMessagePayload)!=null&&t.steward)},da=e=>e===kt.COMPLETED||e===kt.CANCELED?e:kt.IN_PROGRESS,In=e=>ot(e)&&!lo(e),ot=e=>!!e&&"sender"in e,ma=e=>ot(e)?e.sendingStatus==="succeeded"?String(e.messageId):e.reqId:String(e.messageId),ha=(e,t,n,r=!0)=>{if(!r||!In(e))return"single";const s=()=>{if(!In(t))return!1;const u=t.sender.userId===e.sender.userId,d=nt.isSameMinute(t.createdAt,e.createdAt);return u&&d},o=()=>{if(!In(n))return!1;const u=n.sender.userId===e.sender.userId,d=nt.isSameMinute(n.createdAt,e.createdAt);return u&&d},a=s(),l=o();return a&&l?"middle":a?"bottom":l?"top":"single"},_t=(e,t)=>(()=>{var r;return ot(e)?e.sender.userId:((r=e==null?void 0:e.sender)==null?void 0:r.userId)??void 0})()===t,ke={isAdmin:e=>e.isAdminMessage(),isCSAT:e=>{var t;return e.isAdminMessage()&&!!((t=e.extendedMessagePayload)!=null&&t.csat)},isSteward:e=>lo(e),isIncoming:(e,t)=>ot(e)&&e.sender.userId!==t,isOutgoing:(e,t)=>ot(e)&&(e.sender.userId===t||e.sendingStatus===ze.SendingStatus.PENDING)},tt=e=>e.startsWith("image/"),ar=e=>e.startsWith("video/"),lr=(e,t)=>{if(e&&!e.startsWith(".")){const n=e.split(".").pop();if(n&&n!==e)return n.toUpperCase()}if(t){const[,n]=t.split("/");if(n)return n.toUpperCase()}return"FILE"},co=e=>{var t;return e.messageType==="file"?e.message.length>0&&e.file.name!==e.message:e.messageType==="multipleFiles"?e.message.length>0&&((t=e.files[0])==null?void 0:t.name)!==e.message:e.message.length>0},fn=e=>{switch(e){case"top":case"middle":return ne.GAP_GROUPED;default:return ne.GAP_UNGROUPED}},fa=(e,t)=>{const n=/```(\w+)?\n([\s\S]*?)```/g,r=[];let s=0;return e.replace(n,(o,...a)=>{const[l,u,d]=a;return s<d&&r.push({type:"text",value:e.slice(s,d).trim()}),r.push({type:"code",value:u.trim(),language:l?l.trim():"plaintext"}),s=d+o.length,o}),s<e.length&&r.push({type:"text",value:e.slice(s).trim()}),t?r.map(o=>o.type!=="text"?o:{...o,value:t(o.value)}):r},ga=e=>e.replace(/\[([^\]]+)\](?!\()/g,"\\[$1\\]"),pa=e=>e.replace(/([a-zA-Z0-9])_(?=[a-zA-Z0-9])/g,"$1\\_"),_a=e=>e.replace(/~~/g,"\\~\\~"),Ea=e=>{let t=e;return t=ga(t),t=pa(t),t=_a(t),t},ba=typeof navigator<"u"&&navigator.product==="ReactNative",zr=(e,t)=>{const n=r=>!t||t.length===0?!0:ot(r)&&t.includes(r.sendingStatus);return ba?e.find(n):e.findLast(n)};function he(){}function Ca(){const e=typeof navigator<"u"?navigator.userAgent:"",t=/iPad|iPhone|iPod/.test(e),n=/Android/.test(e);return t||n}function va(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t|=0;return t.toString(16)}const zn=e=>{try{return JSON.parse(e===""?"{}":e)}catch{return{}}},qe={isStreaming(e){const t=zn(e.data);return typeof t=="object"&&!!t.stream},isWelcomeMessage(e,t){var n;if(((n=e.extendedMessagePayload)==null?void 0:n.bot_message_type)==="welcome")return!0;if(_t(e,t)){const r=zn(e.data);return!(r!=null&&r.respond_mesg_id)&&!(r!=null&&r.stream)}return!1},isGeneratedMessage(e){var t;return((t=e.extendedMessagePayload)==null?void 0:t.bot_message_type)==="generated"},hasFeedback(e){var t;return!!((t=e.extendedMessagePayload)!=null&&t.feedback)}},wn=`@${ft}`,ya=({appId:e,aiAgentId:t,storage:n})=>{const r={templateBase:`${wn}-template`,template:s=>`${r.templateBase}/templates/${s}`,templateToken:()=>`${r.templateBase}/tokens`,messengerSession:s=>{const o=va(`${e}/${t}/${s}`);return`${wn}-udata/${o}`},anonUserSession:()=>`${wn}-session/${e}/${t}`};return{template:{set:(s,o)=>n.set(r.template(s),o),get:s=>n.get(r.template(s)),setCachedToken:s=>n.set(r.templateToken(),s),getCachedToken:()=>n.get(r.templateToken()),clear:()=>{n.getKeys(r.templateBase).forEach(n.delete)}},messenger:{getSettings:s=>{try{const o=n.get(r.messengerSession(s));return o?JSON.parse(o):null}catch{return null}},setSettings:(s,o)=>{try{delete o.auto_created_user;const a=JSON.stringify(o);n.set(r.messengerSession(s),a)}catch{return}},getAnonUser:()=>{try{const s=n.get(r.anonUserSession());return s?JSON.parse(s):null}catch{return null}},setAnonUser:s=>{try{const o=JSON.stringify(s);n.set(r.anonUserSession(),o)}catch{return}},clear:s=>{try{s&&n.delete(r.messengerSession(s)),n.delete(r.anonUserSession())}catch{return}}}}},uo=(e,t,n={})=>{let r=null,s=null,o=null;const{leading:a=!0,trailing:l=!0}=n,u=(...d)=>{const m=Date.now();if(o===null||m-o>=t)a?(e(...d),o=m):(s=d,o=m);else if(s=d,l&&!r){const h=t-(m-o);r=setTimeout(()=>{s&&l&&(e(...s),o=Date.now()),r=null,s=null},h)}};return u.cancel=()=>{r&&(clearTimeout(r),r=null),s=null,o=null},u};class mo{constructor(t,{filter:n,limit:r=20}){S(this,"filter");S(this,"_sdk");S(this,"_pinnedChannels");S(this,"_channels");S(this,"_isDisposed",!1);S(this,"_handlerId",`handler-id-${Date.now()}`);S(this,"_order",je.GroupChannelListOrder.LATEST_LAST_MESSAGE);S(this,"_limit");S(this,"_query");S(this,"_token");S(this,"_timestamp");S(this,"_isSyncing");S(this,"_channelHandler");S(this,"_connectionHandler");S(this,"_collectionEventHandler");S(this,"_throttledOnChannelChanged");var s,o,a,l,u,d,m;this.filter=n,this._sdk=t,this._pinnedChannels=[],this._channels=[],this._limit=r,this._query=this._sdk.aiAgent.createMyGroupChannelListQuery({aiAgentChannelFilter:(s=this.filter)==null?void 0:s.aiAgentChannelFilter,aiAgentConversationStatusFilter:(o=this.filter)==null?void 0:o.aiAgentConversationStatusFilter,aiAgentIds:(a=this.filter)==null?void 0:a.aiAgentIds,deskChannelFilter:(l=this.filter)==null?void 0:l.deskChannelFilter,pinnedChannelUrls:(u=this.filter)==null?void 0:u.pinnedChannelUrls,copilotConversationOnly:(d=this.filter)==null?void 0:d.copilotConversationOnly,copilotSupportChannelUrl:(m=this.filter)==null?void 0:m.copilotSupportChannelUrl,limit:this._limit}),this._token="",this._timestamp=Number.MAX_SAFE_INTEGER,this._isSyncing=!1,this._throttledOnChannelChanged=uo(h=>{this._query.belongsTo(h)?this._addChannelsToView([h],!1):this._removeChannelsFromView([h.url])},250,{trailing:!1,leading:!0}),this._channelHandler=new je.GroupChannelHandler({onChannelChanged:h=>{h.isGroupChannel()&&this._throttledOnChannelChanged(h)},onChannelDeleted:h=>{this._removeChannelsFromView([h])}}),this._connectionHandler=new ue.ConnectionHandler({onReconnectSucceeded:()=>{this._isDefaultChangelogSyncTimestampUpdated&&this._syncChannelChangelogs()}}),this._sdk.addConnectionHandler(this._handlerId,this._connectionHandler),this._sdk.groupChannel.addGroupChannelHandler(this._handlerId,this._channelHandler)}get _isDefaultChangelogSyncTimestampUpdated(){return this._timestamp!==Number.MAX_SAFE_INTEGER}_setDefaultChangelogsSyncTimestamp(t){var o,a;const n=new Set(((o=this.filter)==null?void 0:o.pinnedChannelUrls)??[]),r=t.find(l=>!n.has(l.url));let s;r?s=((a=r.lastMessage)==null?void 0:a.createdAt)??r.createdAt:s=this._query.lastResponseAt,this._timestamp>s&&(this._timestamp=s)}async _syncChannelChangelogs(){if(this._isDisposed)return[];if(this._isSyncing)return[];try{this._isSyncing=!0;let t;for(this._token?t=await this._sdk.aiAgent.getMyGroupChannelChangeLogsByToken(this._token,this.filter):t=await this._sdk.aiAgent.getMyGroupChannelChangeLogsByTimestamp(this._timestamp,this.filter),this._token=t.token,this._addChannelsToView(t.updatedChannels),this._removeChannelsFromView(t.deletedChannelUrls);t.hasMore&&t.token;)t=await this._sdk.aiAgent.getMyGroupChannelChangeLogsByToken(this._token,this.filter),this._token=t.token,this._addChannelsToView(t.updatedChannels),this._removeChannelsFromView(t.deletedChannelUrls)}catch{}finally{this._isSyncing=!1}return[]}_upsertPinnedChannelsToArray(t){var l;const n=((l=this.filter)==null?void 0:l.pinnedChannelUrls)??[],r=new Map(n.map((u,d)=>[u,d])),s=[],o=[],a=[];for(const u of t){if(!this._query.belongsTo(u)){a.push(u.url);continue}const d=r.get(u.url);if(d===void 0)continue;const m=Yn(this._pinnedChannels,u);m>=0?(this._pinnedChannels.splice(m,1),o.push(u)):s.push(u);const f=this._pinnedChannels.findIndex(C=>(r.get(C.url)??1/0)>d),v=f===-1?this._pinnedChannels.length:f;this._pinnedChannels.splice(v,0,u)}return{addedChannels:s,updatedChannels:o,unmatchedChannelUrls:a}}_upsertRegularChannelsToArray(t,n=!1){const r=[],s=[],o=[];for(const a of t){if(!this._query.belongsTo(a)){r.push(a.url);continue}const l=Yn(this._channels,a),u=l<0;!u&&this._channels.splice(l,1);const m=Sa(this._channels,a,this._order).place,h=m===this._channels.length;u?h?(n||!this.hasMore)&&(this._channels.push(a),s.push(a)):(this._channels.splice(m,0,a),s.push(a)):(this._channels.splice(m,0,a),o.push(a))}return{addedChannels:s,updatedChannels:o,unmatchedChannelUrls:r}}_addChannelsToView(t,n=!1){var h,f,v,C,y;const r=new Set(((h=this.filter)==null?void 0:h.pinnedChannelUrls)??[]),s=[],o=[];for(const E of t)r.has(E.url)?s.push(E):o.push(E);const a=this._upsertPinnedChannelsToArray(s),l=this._upsertRegularChannelsToArray(o,n),u=a.addedChannels.concat(l.addedChannels),d=a.updatedChannels.concat(l.updatedChannels),m=a.unmatchedChannelUrls.concat(l.unmatchedChannelUrls);u.length>0&&((v=(f=this._collectionEventHandler)==null?void 0:f.onChannelsAdded)==null||v.call(f,{},u)),d.length>0&&((y=(C=this._collectionEventHandler)==null?void 0:C.onChannelsUpdated)==null||y.call(C,{},d)),m.length>0&&this._removeChannelsFromView(m)}_removeChannelsFromView(t){var s,o,a;const n=new Set(((s=this.filter)==null?void 0:s.pinnedChannelUrls)??[]),r=[];for(const l of t)if(n.has(l)){const u=this._pinnedChannels.findIndex(d=>d.url===l);u>=0&&(r.push(l),this._pinnedChannels.splice(u,1))}else{const u=this._channels.findIndex(d=>d.url===l);u>=0&&(r.push(l),this._channels.splice(u,1))}r.length>0&&((a=(o=this._collectionEventHandler)==null?void 0:o.onChannelsDeleted)==null||a.call(o,{},r))}get channels(){return this._isDisposed?[]:[...this._pinnedChannels,...this._channels]}get hasMore(){return this._isDisposed?!1:this._query.hasNext}async loadMore(){if(this._isDisposed)return[];if(this.hasMore){const t=await this._query.next();return this._setDefaultChangelogsSyncTimestamp(t),this._addChannelsToView(t,!0),t}return[]}setConversationListCollectionHandler(t){this._collectionEventHandler=t}dispose(){this._isDisposed||(this._isDisposed=!0,this._throttledOnChannelChanged.cancel(),this._collectionEventHandler=void 0,this._sdk.removeConnectionHandler(this._handlerId),this._sdk.groupChannel.removeGroupChannelHandler(this._handlerId),this._pinnedChannels.length=0,this._channels.length=0)}}const Yn=(e,t)=>e.findIndex(n=>n.isIdentical(t)),Sa=(e,t,n)=>{if(e.length>0){const r=Yn(e,t);let s=0,o=e.length-1,a=Math.floor((s+o)/2);for(;s<o;){const u=Yr(e[a],t,n);if(u>0)o=a,a=Math.floor((s+o)/2);else if(u<0)s=a+1,a=Math.floor((s+o)/2);else return{place:a,oldPosition:r}}return{place:Yr(e[a],t,n)>=0?a:a+1,oldPosition:r}}return{place:e.length,oldPosition:-1}},Yr=(e,t,n)=>{switch(n){case je.GroupChannelListOrder.LATEST_LAST_MESSAGE:if(e.lastMessage&&t.lastMessage){const r=t.lastMessage.createdAt-e.lastMessage.createdAt;return r===0?t.createdAt-e.createdAt:r}else return e.lastMessage?-1:t.lastMessage?1:t.createdAt-e.createdAt;default:return 0}};class ho{constructor(t){S(this,"subscribers",{});this.logger=t}async send(t){const n=Aa(),r=this.subscribers[t.type];if(r){this.logger.debug(`messenger.dispatcher: dispatching command: ${t.type}`,t.payload);const s=r.map(o=>o(t.payload));await Promise.all(s).catch(o=>{this.logger.error(`messenger.dispatcher: error in callback for command: ${t.type}`,o)})}return n.resolve(),n.promise}subscribe(t,n){this.subscribers[t]||(this.subscribers[t]=[]),this.subscribers[t].push(n)}unsubscribe(t,n){const r=this.subscribers[t];r&&(this.subscribers[t]=r.filter(s=>s!==n))}}const Aa=()=>{let e=he,t=he;return{promise:new Promise((r,s)=>{e=r,t=s}),resolve:e,reject:t}};var Ve=(e=>(e.ConversationClose="conv.close",e.MessengerSettingsUpdated="messenger.settings.updated",e.ActiveChannelUpdated="active.channel.updated",e.AnonymousSessionTokenExpired="anon.token.expired",e.AuthTokenRefreshed="auth.token.refreshed",e))(Ve||{});class Dt{constructor(t={}){S(this,"payload");this.payload=t}toJSON(){return JSON.stringify({type:this.type,payload:this.payload})}}const rt={CloseConversation:e=>new xa(e),MessengerSettingsUpdated:e=>new Ta(e),ActiveChannelUpdated:e=>new Ia(e),AnonymousSessionTokenExpired:()=>new wa,AuthTokenRefreshed:()=>new Ma};class xa extends Dt{constructor(){super(...arguments);S(this,"type","conv.close")}}class Ta extends Dt{constructor(){super(...arguments);S(this,"type","messenger.settings.updated")}}class Ia extends Dt{constructor(){super(...arguments);S(this,"type","active.channel.updated")}}class wa extends Dt{constructor(){super(...arguments);S(this,"type","anon.token.expired")}}class Ma extends Dt{constructor(){super(...arguments);S(this,"type","auth.token.refreshed")}}var cr=(e=>(e[e.VERBOSE=0]="VERBOSE",e[e.DEBUG=1]="DEBUG",e[e.INFO=2]="INFO",e[e.WARN=3]="WARN",e[e.ERROR=4]="ERROR",e[e.NONE=5]="NONE",e))(cr||{});class fo{constructor(t){S(this,"level");this.level=t}verbose(...t){this.level<=0&&console.log(`[${ft}/verbose]`,...t)}debug(...t){this.level<=1&&console.log(`[${ft}/debug]`,...t)}info(...t){this.level<=2&&console.log(`[${ft}/info]`,...t)}warn(...t){this.level<=3&&console.warn(`[${ft}/warn]`,...t)}error(...t){this.level<=4&&console.error(`[${ft}/error]`,...t)}}class go{constructor({userId:t,authToken:n,sessionHandler:r}){S(this,"userId");S(this,"authToken");S(this,"sessionHandler");this.userId=t,this.authToken=n,this.sessionHandler=r}}class Wn{constructor(){S(this,"userId");S(this,"authToken");S(this,"sessionHandler")}}const ka=e=>({onSessionTokenRequired:t=>{t(null),e.send(rt.AnonymousSessionTokenExpired())}}),Ra="ai_agent:stats",Oa="conversation_initial_render",La=800220;var Ce=(e=>(e.AUTH="auth_duration",e.GET_CHANNEL="get_channel_duration",e.GET_MESSAGES="get_messages_duration",e.TOTAL_DURATION="total_duration",e.TOTAL_DURATION_FROM_CACHE="total_duration_from_cache",e))(Ce||{});class Na{constructor(){S(this,"timers",new Map);S(this,"committed",!1);S(this,"commitCallback",null);S(this,"conversationId",null);S(this,"channelUrl",null);S(this,"errorCode",null);S(this,"errorDescription",null);S(this,"extraData",{})}setCommitCallback(t){return this.commitCallback=t,this}setConversationId(t){return this.conversationId=t,this}setChannelUrl(t){return this.setExtra("channel_url",t),this}setError(t,n){return this.errorCode=t??La,this.errorDescription=n,this}setExtra(t,n){return n!=null&&(this.extraData[t]=n),this}startTimer(t){if(this.committed)return this;const n=this.timers.get(t);return(n==null?void 0:n.startTime)!==null&&(n==null?void 0:n.startTime)!==void 0?this:(this.timers.set(t,{startTime:Date.now(),endTime:null}),this)}stopTimer(t){if(this.committed)return this;const n=this.timers.get(t);return!n||n.startTime===null||n.endTime!==null?this:(this.timers.set(t,{...n,endTime:Date.now()}),this)}getDuration(t){const n=this.timers.get(t);return!n||n.startTime===null||n.endTime===null?null:n.endTime-n.startTime}isCommitted(){return this.committed}commit(){if(this.committed||!this.commitCallback)return!1;const t=this.buildPayload();return t?(this.committed=!0,this.commitCallback(Ra,t)):!1}}class Da extends Na{constructor(){super(...arguments);S(this,"presentMethod","direct_present")}setPresentMethod(n){return this.presentMethod=n,this}getMetricKey(){return Oa}buildPayload(){const n=this.getDuration(Ce.AUTH),r=this.getDuration(Ce.GET_CHANNEL),s=this.getDuration(Ce.GET_MESSAGES),o=this.getDuration(Ce.TOTAL_DURATION_FROM_CACHE),a=this.getDuration(Ce.TOTAL_DURATION),l={...this.extraData,present_method:this.presentMethod,...n!==null&&{auth_duration:n},...r!==null&&{get_channel_duration:r},...s!==null&&{get_messages_duration:s},...o!==null&&{total_duration_from_cache:o}},u={key:this.getMetricKey(),value:a!==null?String(a):"0"};return this.conversationId!==null&&(u.conversation_id=this.conversationId),this.errorCode!==null&&(u.error_code=this.errorCode),this.errorDescription!==null&&(u.error_description=this.errorDescription),Object.keys(l).length>0&&(u.extra=l),u}}class $a{constructor(t){S(this,"commitCallback");S(this,"presentMethod","direct_present");S(this,"stats",null);this.commitCallback=t}getOrCreateStats(){return(!this.stats||this.stats.isCommitted())&&(this.stats=new Da().setCommitCallback(this.commitCallback).setPresentMethod(this.presentMethod)),this.stats}onAuthStart(){this.getOrCreateStats().startTimer(Ce.TOTAL_DURATION).startTimer(Ce.TOTAL_DURATION_FROM_CACHE).startTimer(Ce.AUTH)}onAuthComplete(){var t;(t=this.stats)==null||t.stopTimer(Ce.AUTH)}onAuthError(t){this.stats&&!this.stats.isCommitted()&&this.stats.stopTimer(Ce.AUTH).setError(t instanceof ue.SendbirdError?t.code:void 0,t.message).stopTimer(Ce.TOTAL_DURATION).commit()}onGetChannelStart(){var t;(t=this.stats)==null||t.startTimer(Ce.GET_CHANNEL)}onGetChannelComplete(t){this.stats&&(this.stats.stopTimer(Ce.GET_CHANNEL),t!==void 0&&this.stats.setConversationId(t),this.stats.startTimer(Ce.GET_MESSAGES))}onGetChannelError(t){this.stats&&!this.stats.isCommitted()&&this.stats.stopTimer(Ce.GET_CHANNEL).setError(t instanceof ue.SendbirdError?t.code:void 0,t.message).stopTimer(Ce.TOTAL_DURATION).commit()}onCacheResult(t){this.stats&&!this.stats.isCommitted()&&(t&&this.stats.setError(t instanceof ue.SendbirdError?t.code:void 0,t.message),this.stats.stopTimer(Ce.TOTAL_DURATION_FROM_CACHE))}onApiResult(t){this.stats&&!this.stats.isCommitted()&&(t&&this.stats.setError(t instanceof ue.SendbirdError?t.code:void 0,t.message),this.stats.stopTimer(Ce.TOTAL_DURATION).stopTimer(Ce.GET_MESSAGES).commit())}setChannelUrl(t){var n;(n=this.stats)==null||n.setChannelUrl(t)}cleanup(){var t;(t=this.stats)==null||t.commit()}setPresentMethod(t){var n;this.presentMethod=t,(n=this.stats)==null||n.setPresentMethod(t)}clear(){this.stats=null}}function Pa(){let e=null,t=0;const n=(r,s)=>{if((e==null?void 0:e.key)===r)return e.promise;const o=++t,l=(e?e.promise.catch(()=>{}).then(()=>s()):s()).finally(()=>{(e==null?void 0:e.id)===o&&(e=null)});return e={key:r,id:o,promise:l},l};return n.isPending=()=>e!==null,n}const et={conversation:{isTalkToAgentViewEnabled:!0,scrollMode:"auto",newMessageIndicatorEnabled:!0,senderAvatarEnabled:!0,messageAlertSoundEnabled:!1,header:{avatarEnabled:!0},input:{camera:{photoEnabled:!0},gallery:{photoEnabled:!0},fileEnabled:!0},fileViewer:{downloadEnabled:!0}}},Wr=e=>{var t,n,r,s,o,a,l,u,d,m,h,f,v,C;return e?{...et,...e,conversation:{...et.conversation,...e==null?void 0:e.conversation,header:{...(t=et.conversation)==null?void 0:t.header,...(n=e==null?void 0:e.conversation)==null?void 0:n.header},input:{...(r=et.conversation)==null?void 0:r.input,...(s=e==null?void 0:e.conversation)==null?void 0:s.input,camera:{...(a=(o=et.conversation)==null?void 0:o.input)==null?void 0:a.camera,...(u=(l=e==null?void 0:e.conversation)==null?void 0:l.input)==null?void 0:u.camera},gallery:{...(m=(d=et.conversation)==null?void 0:d.input)==null?void 0:m.gallery,...(f=(h=e==null?void 0:e.conversation)==null?void 0:h.input)==null?void 0:f.gallery}},fileViewer:{...(v=et.conversation)==null?void 0:v.fileViewer,...(C=e==null?void 0:e.conversation)==null?void 0:C.fileViewer}}}:et},Fa=e=>({userId:e.bot_userid,profileUrl:e.bot_profile_url,nickname:e.bot_nickname,replyToFile:e.reply_to_file,specialNotice:e.special_notice,specialNoticeEnabled:e.is_special_notice_enabled,showHandoffButton:e.show_handoff_button??!0,isMultipleActiveConversationsEnabled:e.is_multiple_active_conversations_enabled??!0,isUserFeedbackEnabled:e.is_user_feedback_enabled??!1,isUserFeedbackCommentOptionEnabled:e.is_user_feedback_comment_option_enabled??!1}),Ba=e=>({type:e.image_type||"default_icon",imageUrl:e.image_url}),qn=e=>({enabled:e.enabled,showIndicator:e.show_indicator,toggleAllowed:e.toggle_allowed,deleteOnOff:e.delete_on_off,consentDialog:e.consent_dialog}),po=(e,t)=>{if(e)return e.members.filter(n=>n.userId!==t).sort((n,r)=>r.joinedAt-n.joinedAt)[0]},De=e=>{var t,n;return!!(e!=null&&e.isAIAgent&&((t=e==null?void 0:e.conversation)==null?void 0:t.status)===Ne.ConversationStatus.CLOSED||e!=null&&e.isDesk&&((n=e==null?void 0:e.helpdeskInfo)==null?void 0:n.ticketStatus)==="closed")},ur=e=>{var t,n;return!!(e!=null&&e.isAIAgent&&((t=e==null?void 0:e.conversation)==null?void 0:t.status)===Ne.ConversationStatus.OPEN||e!=null&&e.isDesk&&((n=e==null?void 0:e.helpdeskInfo)==null?void 0:n.ticketStatus)==="open")};function it(e){var n,r,s;return typeof(((n=e==null?void 0:e.conversation)==null?void 0:n.handedOverAt)??((s=(r=e==null?void 0:e.conversation)==null?void 0:r.handoff)==null?void 0:s.timestamp))=="number"}function Ua(e){var r;const t=(r=e==null?void 0:e.conversation)==null?void 0:r.handoff;return t?typeof t.requestedAt=="number"&&!it(e):!1}function Ha(e){var t;if(((t=e==null?void 0:e.resolution)==null?void 0:t.determinedBy)==="user")return e.resolution.isResolved}function _o(e){return!!e&&e<=Date.now()}function Ga(e){return!e.title}function Va(e,t){var n;if(e)return Ga(e)?{...e,title:t.title,csat_question:t.question,csat_scores:[{label:"",image_url:"https://static.dashboard.sendbird.com/assets/ai-agent/angry-active.png"},{label:"",image_url:"https://static.dashboard.sendbird.com/assets/ai-agent/suspicious-active.png"},{label:"",image_url:"https://static.dashboard.sendbird.com/assets/ai-agent/neutral-active.png"},{label:"",image_url:"https://static.dashboard.sendbird.com/assets/ai-agent/smile-active.png"},{label:"",image_url:"https://static.dashboard.sendbird.com/assets/ai-agent/happy-active.png"}],cre:{required:((n=e.cre)==null?void 0:n.required)??!0,question:t.cre.question,positive_label:t.cre.positive_label,negative_label:t.cre.negative_label},follow_up:[{response_type:"free_text",scores:[1,2,3,4,5],question:t.followUp.question,always_visible:!1}],csat_submit_label:t.submit_label,csat_submitted_label:t.submitted_label}:e}class za{constructor(){S(this,"_channelHandlerId",null);S(this,"_connectionHandlerId",null);S(this,"_handleActiveChannelChangedThrottled",null);S(this,"_setupChannelHandler",()=>{const t=Date.now();this._channelHandlerId=`aiagent_channel_${t}`,this._connectionHandlerId=`aiagent_connection_${t}`,this._handleActiveChannelChangedThrottled=uo(s=>{var o,a;(a=this._session)==null||a._updateActiveChannel({url:s.url,status:De(s)?"closed":"open",conversationStatus:(o=s.conversation)==null?void 0:o.status}),this._logger.debug("AIAgentEventManager: activeChannel updated",s.url)},250,{leading:!0,trailing:!1});const n=new je.GroupChannelHandler({onChannelChanged:s=>{var o,a;s.isGroupChannel()&&s.url===((o=this._session)==null?void 0:o.activeChannel.url)&&((a=this._handleActiveChannelChangedThrottled)==null||a.call(this,s))}}),r=new ue.ConnectionHandler({onReconnectSucceeded:async()=>{await this._syncActiveChannelOnReconnect()}});this._chatClient.chatSDK.groupChannel.addGroupChannelHandler(this._channelHandlerId,n),this._chatClient.chatSDK.addConnectionHandler(this._connectionHandlerId,r),this._logger.debug("AIAgentEventManager: handlers registered",{channelHandlerId:this._channelHandlerId,connectionHandlerId:this._connectionHandlerId})});S(this,"_removeChannelHandler",()=>{this._channelHandlerId&&(this._chatClient.chatSDK.groupChannel.removeGroupChannelHandler(this._channelHandlerId),this._channelHandlerId=null),this._connectionHandlerId&&(this._chatClient.chatSDK.removeConnectionHandler(this._connectionHandlerId),this._connectionHandlerId=null),this._handleActiveChannelChangedThrottled&&(this._handleActiveChannelChangedThrottled.cancel(),this._handleActiveChannelChangedThrottled=null),this._logger.debug("AIAgentEventManager: handlers removed")});S(this,"_syncActiveChannelOnReconnect",async()=>{var n,r,s;const t=(n=this._session)==null?void 0:n.activeChannel.url;if(t)try{const a=await(await this._chatClient.chatSDK.groupChannel.getChannel(t)).refresh();a.url===t&&((s=this._session)==null||s._updateActiveChannel({url:a.url,status:De(a)?"closed":"open",conversationStatus:(r=a.conversation)==null?void 0:r.status}),this._logger.debug("AIAgentEventManager: activeChannel synced on reconnect",a.url))}catch(o){this._logger.error("AIAgentEventManager: failed to sync activeChannel on reconnect",o)}});S(this,"_initConversationIfNeeded",async t=>{if(t.isAIAgent&&!t.conversation)try{await t.initConversation({aiAgentId:this.aiAgentId})}catch(n){this._logger.warn("AIAgentEventManager: initConversation failed",n)}});S(this,"onMessengerSettingsUpdated",t=>(this._dispatcher.subscribe(Ve.MessengerSettingsUpdated,t),()=>{this._dispatcher.unsubscribe(Ve.MessengerSettingsUpdated,t)}));S(this,"onActiveChannelUpdated",t=>(this._dispatcher.subscribe(Ve.ActiveChannelUpdated,t),()=>{this._dispatcher.unsubscribe(Ve.ActiveChannelUpdated,t)}));S(this,"onAuthTokenRefreshed",t=>(this._dispatcher.subscribe(Ve.AuthTokenRefreshed,t),()=>{this._dispatcher.unsubscribe(Ve.AuthTokenRefreshed,t)}))}}class Ya{constructor(t){S(this,"_sdkUser");S(this,"_userSession");S(this,"_dispatcher");S(this,"_activeChannel");S(this,"_updateActiveChannel",t=>{this._activeChannel=t,this._dispatcher.send(rt.ActiveChannelUpdated({channelUrl:t.url,status:t.status,conversationStatus:t.conversationStatus}))});S(this,"_updateAuthToken",t=>{this._userSession.authToken=t,this._dispatcher.send(rt.AuthTokenRefreshed())});this._sdkUser=t.sdkUser,this._userSession=t.userSession,this._dispatcher=t.dispatcher,this._activeChannel=t.activeChannel}get sdkUser(){return this._sdkUser}get userSession(){return this._userSession}get activeChannel(){return this._activeChannel}}const Eo=e=>{try{const t=JSON.parse(e);return typeof t=="string"?JSON.stringify(t).slice(1,-1):e.trim()}catch{return JSON.stringify(e).slice(1,-1)}},bo=e=>JSON.parse(e),Wa=e=>JSON.parse(e);function qa(e,t){const[n,r]=t.split(",").map(s=>s.trim());return e==="dark"&&r||n}function Ka(e){const t={};function n(r,s=""){for(const[o,a]of Object.entries(r)){const l=s?`${s}.${o}`:o;a&&typeof a=="object"&&!Array.isArray(a)?n(a,l):t[l]=a}}return n(e),t}function ja({template:e,variables:t,variableKeyPattern:n,variableValueTransformer:r}){return Object.entries(t).reduce((s,[o,a])=>{if(!r&&!["number","boolean","string"].includes(typeof a))throw new Error(`If transformer is not provided, value(${o}:${a}) must be a {string, number, or boolean}`);const l=r?r(a):String(a),u=n(o);return s.replace(u,Eo(l))},e)}async function Xa({template:e,variables:t,variableKeyPattern:n,variableValueTransformer:r}){return(await Promise.all(Object.entries(t).map(async([o,a])=>{const l=await r(a);return{regex:n(o),transformedValue:l}}))).reduce((o,{regex:a,transformedValue:l})=>o.replace(a,Eo(l)),e)}var Kn=(e=>(e[e.EXTERNAL_AUTH_TOKEN_EXPIRED=1]="EXTERNAL_AUTH_TOKEN_EXPIRED",e))(Kn||{});const Co=e=>typeof e=="object"&&e!==null,qr=(e,t)=>t in e&&typeof e[t]=="string"&&e[t]!=="",Za=e=>!Co(e)||!qr(e,"channel_url")||!qr(e,"ai_agent_id")?null:{channelUrl:e.channel_url,aiAgentId:e.ai_agent_id},Ja={1:Za};function Qa(e){if(!Co(e)||!("cat"in e)||typeof e.cat!="number"||!("data"in e))return null;const t=e.cat,n=Ja[t];if(!n)return null;const r=n(e.data);return r?{category:t,data:r}:null}function el(e,t,n,r){const s=ua.default.init({appId:e,modules:[new je.GroupChannelModule,new Ne.AIAgentModule],localCacheEnabled:!0,options:new ue.SendbirdChatOptions({typingIndicatorInvalidateTime:2e4}),...r});return s.addSendbirdExtensions([{version:n,product:ue.SendbirdProduct.AI_AGENT,platform:t.platform}],{platform:t.deviceOSPlatform,version:t.deviceOSVersion},t.customData)||console.warn("Invalid Sendbird Extensions",t),s}function tl(e){const t=n=>{throw new Error(`Please initialize chat sdk with ${n}`)};typeof e.groupChannel!="object"&&t("GroupChannelModule"),typeof e.aiAgent!="object"&&t("AIAgentModule")}const nl=[400300,400301,400302,400310];class dr{constructor(t,n,r){S(this,"chatSDK");S(this,"_logger");S(this,"_cache");S(this,"connect",async(t,n,r,s)=>{if(this._logger.debug("ChatClient.connect: start",t.userId),n){const o=new ue.SessionHandler({...n,onSessionTokenRequired:this._interceptTokenRefresh(n.onSessionTokenRequired,r,s)});this.chatSDK.setSessionHandler(o),this.chatSDK.aiAgent.addEventHandler(Kn.EXTERNAL_AUTH_TOKEN_EXPIRED.toString(),a=>{var u;this._logger.debug("ChatClient.connect: EXTERNAL_AUTH_TOKEN_EXPIRED event received",a);const l=Qa(a);(l==null?void 0:l.category)===Kn.EXTERNAL_AUTH_TOKEN_EXPIRED&&(this._logger.debug("ChatClient.connect: calling onExternalAuthTokenExpired handler",l.data),(u=n==null?void 0:n.onExternalAuthTokenExpired)==null||u.call(n,l.data))})}try{return await this.chatSDK.connect(t.userId,t.authToken),await this._syncTemplatesIfNeeded(),this._logger.debug("ChatClient.connect: end",this.chatSDK.currentUser),this.chatSDK.currentUser}catch(o){const a=o;if(this.chatSDK.isCacheEnabled){if(this._isCacheRestrictedError(a))this._logger.warn("ChatClient.connect","offline connect restricted",a.message,a.code),this._logger.warn("ChatClient.connect","clear cached-data"),await this.chatSDK.clearCachedData().catch(l=>this._logger.warn("ChatClient.connect","clear cached-data failure",l));else if(this.chatSDK.currentUser)return this._logger.debug("ChatClient.connect: end (offline)",this.chatSDK.currentUser),this.chatSDK.currentUser}throw this._logger.warn("ChatClient.connect","connect failure",a.message,a.code),a}});S(this,"disconnect",async()=>{this._logger.debug("ChatClient.disconnect: start"),this.chatSDK.aiAgent.removeAllEventHandlers(),await this.chatSDK.disconnect(),this._cache.template.clear(),this._logger.debug("ChatClient.disconnect: end")});S(this,"getChannel",async t=>this.chatSDK.groupChannel.getChannel(t));S(this,"patchContext",async(t,n,r)=>this.chatSDK.aiAgent.patchContext(t,n,r));S(this,"updateContext",async(t,n,r)=>this.chatSDK.aiAgent.updateContext(t,n,r));S(this,"requestMessengerSettings",async t=>{var s;if(t.userId===""){const o=new Error("userId cannot be empty string for messenger settings request");throw this._logger.error("ChatClient.requestMessengerSettings: invalid userId",o),o}const n={...t,shouldSendFirstMessage:!1};this._logger.debug("ChatClient.requestMessengerSettings: requesting",n);const r=await this.chatSDK.aiAgent.requestMessengerSettings(n);return this._logger.debug("ChatClient.requestMessengerSettings: received",(s=r.active_channel)==null?void 0:s.channel_url),r});S(this,"setUserMemoryState",async t=>{this._logger.debug("ChatClient.setUserMemoryState: requesting",t);const n=await this.chatSDK.aiAgent.setUserMemoryState(t);return this._logger.debug("ChatClient.setUserMemoryState: received",n.enabled),n});S(this,"clearUserMemories",async(t={})=>{this._logger.debug("ChatClient.clearUserMemories: requesting",t),await this.chatSDK.aiAgent.clearUserMemories(t),this._logger.debug("ChatClient.clearUserMemories: completed")});S(this,"_interceptTokenRefresh",(t,n,r)=>{if(t)return async(s,o)=>{new Promise((a,l)=>t==null?void 0:t(a,l)).then(a=>{a?n==null||n(a):r==null||r(),s(a)}).catch(a=>{r==null||r(),o(a)})}});S(this,"_isCacheRestrictedError",t=>nl.some(n=>t.code===n));S(this,"_syncTemplatesIfNeeded",async()=>{var r,s;const t=(s=(r=this.chatSDK.appInfo)==null?void 0:r.aiAgentInfo)==null?void 0:s.templateListToken;if(!t)return;const n=this._cache.template.getCachedToken();if(!(n&&n===t)){this._logger.debug("ChatClient._syncTemplatesIfNeeded: syncing templates");try{const{templates:o,token:a}=await this.chatSDK.aiAgent.getMessageTemplates({limit:20});for(const{template:l}of o){const{key:u}=bo(l);this._cache.template.set(u,l)}this._cache.template.setCachedToken(a),this._logger.debug("ChatClient._syncTemplatesIfNeeded: sync completed")}catch(o){this._logger.error("ChatClient._syncTemplatesIfNeeded: error",o)}}});this.chatSDK=t,this._logger=n,this._cache=r}static init(t){let n;return t.chatSDK?(tl(t.chatSDK),n=t.chatSDK):n=el(t.appId,t.extensions,t.messengerVersion,t.chatParams),new dr(n,t.logger,t.cache)}}const Ht=new Map,vo={set:(e,t)=>{Ht.set(e,t)},get:e=>{if(Ht.size===0)throw new Error("AIAgent platform not configured. Ensure you are using the correct package (@sendbird/ai-agent-messenger-react or @sendbird/ai-agent-messenger-react-native).");if(e){const n=Ht.get(e);if(!n)throw new Error(`AIAgent platform "${e}" is not configured.`);return{platform:e,...n}}const t=Ht.entries().next().value;return{platform:t[0],...t[1]}}},rl=e=>Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0));class Kr extends Error{constructor(n,r){const s=(r==null?void 0:r.detail)??"";super(s||`Desk API error (${n})`);S(this,"status");S(this,"code");S(this,"detail");this.name="DeskApiError",this.status=n,this.code=(r==null?void 0:r.code)??"",this.detail=s}}var mr=(e=>(e.INITIALIZED="INITIALIZED",e.PROACTIVE="PROACTIVE",e.PENDING="PENDING",e.ACTIVE="ACTIVE",e.CLOSED="CLOSED",e.WORK_IN_PROGRESS="WORK_IN_PROGRESS",e.IDLE="IDLE",e))(mr||{}),hr=(e=>(e.URGENT="URGENT",e.HIGH="HIGH",e.MEDIUM="MEDIUM",e.LOW="LOW",e))(hr||{}),yo=(e=>(e.ERR_CREDENTIALS_NOT_PROVIDED="desk401100",e.ERR_NON_AUTHORIZED="desk401103",e.ERR_SESSION_KEY_EXPIRED="desk401106",e.ERR_SESSION_TOKEN_REVOKED="desk401107",e.ERR_USER_DEACTIVATED="desk401108",e.ERR_USER_NOT_EXIST="desk401109",e))(yo||{});const sl=e=>e==="desk401103"||e==="desk401106"||e==="desk401107"||e==="desk401108"||e==="desk401109";class ol{constructor(t){S(this,"_appId");S(this,"_apiHost");S(this,"_logger");S(this,"_credential",null);S(this,"_authRefreshPromise",null);S(this,"_onDeskTokenRefreshRequired",async()=>!1);S(this,"request",async(t,n)=>{const r=n.authRequired??!0,s=`${this._apiHost}${t}`;r&&this._authRefreshPromise&&(this._logger.debug("DeskApiClient: waiting for in-flight recovery..."),await this._authRefreshPromise);const o=await this._fetch(s,n);return r&&o.status===401?this._handleUnauthorized(o,s,n):this._toResult(o)});S(this,"setCredential",(t,n=async()=>!1)=>{this._authRefreshPromise=null,this._onDeskTokenRefreshRequired=n,this._credential=t});S(this,"clearCredential",()=>{this._authRefreshPromise=null,this._credential=null,this._onDeskTokenRefreshRequired=async()=>!1});S(this,"_handleUnauthorized",async(t,n,r)=>{const s=await this._parseErrorCode(t);if(!sl(s))return this._toResult(t);if(!await this._refresh(s)||this._credential===null)return this._toResult(t);const a=await this._fetch(n,r);return this._toResult(a)});S(this,"_refresh",async t=>{if(this._authRefreshPromise)return this._logger.debug("DeskApiClient: refresh already in progress, joining..."),this._authRefreshPromise;try{return this._authRefreshPromise=this._onDeskTokenRefreshRequired({reason:t}).catch(n=>(this._logger.error("DeskApiClient: delegated recovery failed",n),!1)),await this._authRefreshPromise}finally{this._authRefreshPromise=null}});S(this,"_fetch",(t,n)=>fetch(`${t}?${this._buildParams(n.params)}`,{method:n.method,headers:this._buildHeaders(n.authRequired??!0,n.headers),...n.body?{body:JSON.stringify(this._buildBody(n.body))}:{}}));S(this,"_buildParams",t=>new URLSearchParams({sendbirdAppId:this._appId,...t}));S(this,"_buildBody",t=>({sendbirdAppId:this._appId,...t}));S(this,"_buildHeaders",(t,n)=>({"content-type":"application/json",...t&&this._credential?{sendbirdDeskToken:this._credential.deskToken}:{},...n}));S(this,"_toResult",async t=>{if(!t.ok){const r=await t.json().catch(()=>({}));throw new Kr(t.status,r)}const n=await t.text();if(n)try{return JSON.parse(n)}catch{throw new Kr(t.status,{})}});S(this,"_parseErrorCode",async t=>{const n=await t.clone().json().catch(()=>({}));return n==null?void 0:n.code});this._appId=t.appId,this._apiHost=t.customApiHost??`https://desk-api-${t.appId}.sendbird.com/sapi`,this._logger=t.logger}get credential(){return this._credential}}class rn{constructor(t,n){S(this,"id");S(this,"title");S(this,"status");S(this,"agent");S(this,"priority");S(this,"group");S(this,"firstResponseTime");S(this,"issuedAt");S(this,"customFields");S(this,"_client");S(this,"refresh",async()=>this._client.getTicket(this.id));this.id=t.id,this.title=t.title,this.status=t.status,this.agent=t.agent,this.priority=t.priority,this.group=t.group,this.firstResponseTime=t.firstResponseTime,this.issuedAt=t.issuedAt,this.customFields=t.customFields,this._client=n}static _fromResponse(t,n){var r;return new rn({id:t.id,title:t.channelName??null,status:t.status2??mr.INITIALIZED,agent:(()=>{var o;const s=(o=t.recentAssignment)==null?void 0:o.agent;return s?{userId:s.sendbirdId??"",name:s.displayName??"",profileUrl:s.photoThumbnailUrl??""}:null})(),priority:t.priority??hr.MEDIUM,group:t.group??0,firstResponseTime:t.firstResponseTime??-1,issuedAt:t.issuedAt??null,customFields:Object.fromEntries(((r=t.customFields)==null?void 0:r.map(s=>[s.key,s.value]))??[])},n)}}class fr{constructor(t){S(this,"_logger");S(this,"_apiClient");S(this,"_onDeskTokenRefreshRequired");S(this,"refreshDeskAuthToken",async t=>this._apiClient.credential?this.authenticate({userId:this._apiClient.credential.userId,accessToken:t,onDeskTokenRefreshRequired:this._onDeskTokenRefreshRequired}):!1);S(this,"authenticate",async t=>{this._logger.debug("DeskClient.authenticate: start",t.userId);try{const{token:n}=await this._apiClient.request("/customers/auth/",{method:"POST",headers:{sendbirdAccessToken:t.accessToken},body:{sendbirdId:t.userId},authRequired:!1});return t.onDeskTokenRefreshRequired!==void 0&&(this._onDeskTokenRefreshRequired=t.onDeskTokenRefreshRequired),this._apiClient.setCredential({userId:t.userId,deskToken:n,chatToken:t.accessToken},this._onDeskTokenRefreshRequired),this._logger.debug("DeskClient.authenticate: end"),!0}catch(n){return this._apiClient.clearCredential(),this._logger.debug("DeskClient.authenticate: failed",n),!1}});S(this,"deauthenticate",()=>{this._apiClient.clearCredential(),this._onDeskTokenRefreshRequired=void 0,this._logger.debug("DeskClient.deauthenticate: token cleared")});S(this,"setCustomerLanguage",async t=>{this._assertAuthenticated(this._apiClient),this._logger.debug("DeskClient.setCustomerLanguage: start",t),await this._apiClient.request("/customers/language/",{method:"PATCH",body:{language:t}}),this._logger.debug("DeskClient.setCustomerLanguage: end")});S(this,"getTicket",async t=>{this._assertAuthenticated(this._apiClient);const n=await this._apiClient.request(`/tickets/${encodeURIComponent(t)}/`,{method:"GET"});return rn._fromResponse(n,this)});S(this,"createTicket",async t=>{this._assertAuthenticated(this._apiClient);const n=await this._apiClient.request("/tickets/",{method:"POST",body:rl({channelName:t.title,channelType:"SENDBIRD_JAVASCRIPT",customFields:t.customFields?JSON.stringify(t.customFields):void 0,info:JSON.stringify({ticket:{subject:t.title,requester:{name:t.name,email:this._apiClient.credential.userId}}}),priority:t.priority,groupKey:t.groupKey})});return rn._fromResponse(n,this)});this._logger=t.logger,this._apiClient=new ol(t)}static init(t){return new fr(t)}_assertAuthenticated(t){if(t.credential==null)throw new Error("DeskClient is not authenticated")}}class gr{constructor(){S(this,"authenticate",async t=>!1);S(this,"deauthenticate",()=>{});S(this,"refreshDeskAuthToken",async()=>!1);S(this,"setCustomerLanguage",async()=>{});S(this,"getTicket",async()=>{throw new Error("DeskClient is disabled via __SBA_USE_DESK_CLIENT__")})}static init(){return new gr}}function il(e){return{get:t=>e.getString(t)??null,set:(t,n)=>{e.set(t,n)},delete:t=>{e.delete?e.delete(t):e.remove&&e.remove(t)},getKeys:t=>e.getAllKeys().filter(n=>n.startsWith(t))}}const al=1440*60*1e3,ll=typeof __SBA_USE_DESK_CLIENT__>"u"||__SBA_USE_DESK_CLIENT__;function Ze(e){if(!e)throw new Error("Not authenticated. Call authenticate() first.")}function cl(e,t){return Object.entries(t).every(([n,r])=>e[n]===r)}class sn extends za{constructor(n){super();S(this,"appId");S(this,"aiAgentId");S(this,"_chatClient");S(this,"_deskClient");S(this,"_cache");S(this,"_logger");S(this,"_dispatcher");S(this,"_session",null);S(this,"language");S(this,"countryCode");S(this,"context");S(this,"queryParams");S(this,"_config");S(this,"_networkStateAdapter");S(this,"_forceCreateChannel");S(this,"_agentVersion");S(this,"_statsTrackers");S(this,"_operationQueue",Pa());S(this,"dispose",()=>{this._operationQueue.isPending()||(this._logger.debug("AIAgent.dispose: start"),this._chatClient.chatSDK.connectionState==="OPEN"&&this._chatClient.chatSDK.disconnectWebSocket(),this._removeChannelHandler(),this._session=null,this._deskClient.deauthenticate(),this._statsTrackers.initialRender.clear(),this._logger.debug("AIAgent.dispose: end"))});S(this,"initConversationIfNeeded",n=>this._initConversationIfNeeded(n));S(this,"authenticate",n=>{if(!this.appId)return Promise.reject(new Error("appId is required"));if(!this.aiAgentId)return Promise.reject(new Error("aiAgentId is required"));const r=n&&"userId"in n?`auth:${n.userId}`:"auth:anon";return this._operationQueue(r,async()=>{var a,l,u,d,m;this._logger.debug("AIAgent.authenticate: start"),this._statsTrackers.initialRender.onAuthStart();const s=this._getSessionCandidate(n),o=(a=s.userSessionCandidate)!=null&&a.userId?this._cache.messenger.getSettings(s.userSessionCandidate.userId):null;o!=null&&o.bot&&this._dispatcher.send(rt.MessengerSettingsUpdated({settings:o,source:"cache"}));try{const h=await this._chatClient.requestMessengerSettings({aiAgentId:this.aiAgentId,userId:(l=s.userSessionCandidate)==null?void 0:l.userId,language:this.language,country:this.countryCode,context:this.context,knownActiveChannelUrl:(u=o==null?void 0:o.active_channel)==null?void 0:u.channel_url,forceCreateChannel:this._forceCreateChannel,agentVersion:this._agentVersion});let f;if(h.auto_created_user)if(s.type==="manual")this._logger.warn("Received auto created user info but current session is manual. Ignoring auto created user info."),f={userId:s.userSessionCandidate.userId,authToken:s.userSessionCandidate.authToken};else{const{user_id:y,session_token:E,expire_at:_}=h.auto_created_user;this._cache.messenger.setAnonUser({userId:y,authToken:E,expireAt:_}),f={userId:y,authToken:E},this._logger.debug("AIAgent.authenticate: anonymous user created",y)}else f={userId:((d=s.userSessionCandidate)==null?void 0:d.userId)??"",authToken:((m=s.userSessionCandidate)==null?void 0:m.authToken)??""};this._cache.messenger.setSettings(f.userId,h),this._dispatcher.send(rt.MessengerSettingsUpdated({settings:h,source:"server"}));const v=(()=>{var y;return s.type==="anonymous"?ka(this._dispatcher):(y=s.userSessionCandidate)==null?void 0:y.sessionHandler})(),C=await this._chatClient.connect(f,v,y=>{var E;this._logger.debug("AIAgent: session token refreshed"),(E=this._session)==null||E._updateAuthToken(y),this._deskClient.refreshDeskAuthToken(y)},()=>{this._logger.debug("AIAgent: session token unavailable, deauthenticating desk"),this._deskClient.deauthenticate()});return await this._deskClient.authenticate({userId:f.userId,accessToken:f.authToken,onDeskTokenRefreshRequired:async({reason:y})=>{var E;if(y===yo.ERR_SESSION_KEY_EXPIRED){await new Promise(b=>setTimeout(b,2e3));const _=(E=this._session)==null?void 0:E.userSession.authToken;return _?await this._deskClient.refreshDeskAuthToken(_):!1}return!1}}),(o==null?void 0:o.language)!==h.language&&this._deskClient.setCustomerLanguage(this.language).catch(()=>{}),this._statsTrackers.initialRender.onAuthComplete(),this._session=new Ya({sdkUser:C,userSession:f,activeChannel:{url:h.active_channel.channel_url,status:"open"},dispatcher:this._dispatcher}),this._setupChannelHandler(),this._logger.debug("AIAgent.authenticate: end",{userId:f.userId}),h}catch(h){throw this._statsTrackers.initialRender.onAuthError(h),h}})});S(this,"deauthenticate",()=>this._operationQueue("deauth",async()=>{var n;this._logger.debug("AIAgent.deauthenticate: start"),await this._chatClient.disconnect(),this._deskClient.deauthenticate(),this._cache.messenger.clear((n=this._session)==null?void 0:n.userSession.userId),this._session=null,this._removeChannelHandler(),this._statsTrackers.initialRender.clear(),this._logger.debug("AIAgent.deauthenticate: end")}));S(this,"createConversation",async n=>{Ze(this._session),this._logger.debug("AIAgent.createConversation: start",n);const r=await this._chatClient.requestMessengerSettings({...n,userId:this._session.userSession.userId,knownActiveChannelUrl:void 0,agentVersion:this._agentVersion}),s=r.active_channel.channel_url;return this._cache.messenger.setSettings(this._session.userSession.userId,r),this._logger.debug("AIAgent.createConversation: end",s),s});S(this,"searchConversation",async n=>{if(Ze(this._session),this._logger.debug("AIAgent.searchConversation: start",n),Object.entries(n.context).length===0)return this._logger.debug("AIAgent.searchConversation: empty context, returning empty array"),[];const r=this.chatSDK.aiAgent.createConversationListQuery({aiAgentId:n.aiAgentId,status:Ne.ConversationStatus.OPEN,limit:100}),s=[];for(;r.hasNext;){const o=await r.next();for(const a of o)cl(a.context??{},n.context)&&s.push(a.channelInfo.url)}return this._logger.debug("AIAgent.searchConversation: end",{count:s.length}),s});S(this,"closeConversation",async n=>{var s;Ze(this._session),this._logger.debug("AIAgent.closeConversation: start",n);const r=await this._chatClient.getChannel(n);((s=r.conversation)==null?void 0:s.status)===Ne.ConversationStatus.OPEN?(await r.closeConversation(),this._session.activeChannel.url===n&&this._session._updateActiveChannel({url:n,status:"closed",conversationStatus:Ne.ConversationStatus.CLOSED}),this._logger.debug("AIAgent.closeConversation: end")):this._logger.debug("AIAgent.closeConversation: already closed or not an AI agent conversation")});S(this,"createConversationListCollection",n=>new mo(this.chatSDK,n??{}));S(this,"patchContext",async(n,r)=>{Ze(this._session),this._logger.debug("AIAgent.patchContext: start",{channelUrl:n,context:r});const s=await this._chatClient.patchContext(this.aiAgentId,n,r);return this._logger.debug("AIAgent.patchContext: end",s),{...s,context:s.context??{}}});S(this,"updateContext",async(n,r)=>{Ze(this._session),this._logger.debug("AIAgent.updateContext: start",{channelUrl:n,context:r});const s=await this._chatClient.updateContext(this.aiAgentId,n,r);return this._logger.debug("AIAgent.updateContext: end",s),{...s,context:s.context??{}}});S(this,"getContextObject",async n=>{Ze(this._session),this._logger.debug("AIAgent.getContextObject: start",n);const s=await(await this._chatClient.getChannel(n)).getContextObject(this.aiAgentId);return this._logger.debug("AIAgent.getContextObject: end",s),{...s,context:s.context??{}}});S(this,"clearUserMemories",async(n={})=>{Ze(this._session);const r={...n,contextAiAgentId:n.contextAiAgentId??this.aiAgentId};this._logger.debug("AIAgent.clearUserMemories: start",r),await this._chatClient.clearUserMemories(r),this._logger.debug("AIAgent.clearUserMemories: end")});S(this,"setUserMemoryState",async n=>{Ze(this._session);const r=this._session;this._logger.debug("AIAgent.setUserMemoryState: start",n.enabled);const s={...n,contextAiAgentId:n.contextAiAgentId??this.aiAgentId},o=r.userSession.userId,a=await this._chatClient.setUserMemoryState(s);if(this._session!==r)return this._logger.debug("AIAgent.setUserMemoryState: session changed during request, discarding stale result"),qn(a);const l=this._cache.messenger.getSettings(o);if(l){const u={...l,memory:a};this._cache.messenger.setSettings(o,u),this._dispatcher.send(rt.MessengerSettingsUpdated({settings:u,source:"cache"}))}return this._logger.debug("AIAgent.setUserMemoryState: end",a.enabled),qn(a)});S(this,"refreshActiveChannel",async n=>{var l,u,d;Ze(this._session);const r=this._session,s=(n==null?void 0:n.useKnownActiveChannelUrl)??!0;this._logger.debug("AIAgent.refreshActiveChannel: start",{useKnownActiveChannelUrl:s});const o=await this._chatClient.requestMessengerSettings({aiAgentId:this.aiAgentId,userId:r.userSession.userId,language:this.language,country:this.countryCode,context:this.context,knownActiveChannelUrl:s?(u=(l=this._cache.messenger.getSettings(r.userSession.userId))==null?void 0:l.active_channel)==null?void 0:u.channel_url:void 0,forceCreateChannel:this._forceCreateChannel,agentVersion:this._agentVersion});if(this._session!==r)return this._logger.debug("AIAgent.refreshActiveChannel: session changed during refresh, discarding stale result"),((d=this._session)==null?void 0:d.activeChannel.url)??o.active_channel.channel_url;const a=o.active_channel.channel_url;return this._cache.messenger.setSettings(this._session.userSession.userId,o),this._session._updateActiveChannel({url:a,status:"open"}),this._logger.debug("AIAgent.refreshActiveChannel: end",a),a});S(this,"_getSessionCandidate",n=>n instanceof go?{type:"manual",userSessionCandidate:this._getManualSessionInfo(n)}:n instanceof Wn?{type:"anonymous",userSessionCandidate:this._getAnonymousSessionInfo()}:n&&typeof n=="object"?(this._logger.warn("Please use ManualSessionInfo instead of the old userSessionInfo format."),{type:"manual",userSessionCandidate:this._getManualSessionInfo(n)}):n===void 0?(this._logger.warn("Please use AnonymousSessionInfo instead of undefined userSessionInfo."),{type:"anonymous",userSessionCandidate:this._getAnonymousSessionInfo()}):{type:"anonymous",userSessionCandidate:null});S(this,"_getAnonymousSessionInfo",()=>{const n=this._cache.messenger.getAnonUser();return n?n.expireAt-al<=Date.now()?(this._logger.debug("_getAnonymousSessionInfo: auto session expired, clear cache"),this._cache.messenger.clear(n.userId),null):(this._logger.debug("_getAnonymousSessionInfo: auto session info detected"),{userId:n.userId,authToken:n.authToken}):null});S(this,"_getManualSessionInfo",n=>{if(!n||n instanceof Wn)throw new Error("userSessionInfo must be an instance of ManualSessionInfo");if(typeof n.userId!="string")throw new Error("userSessionInfo.userId must be a string");const r=["userId","authToken","sessionHandler"].filter(s=>!(s in n));return r.length>0&&this._logger.error(`_getManualSessionInfo: missing required keys in userSessionInfo: ${r.join(", ")}`),this._logger.debug("_getManualSessionInfo: manual session info detected"),{userId:n.userId,authToken:n.authToken,sessionHandler:n.sessionHandler}});this.appId=n.appId,this.aiAgentId=n.aiAgentId,this.language=n.language??"en",this.countryCode=n.countryCode,this.context=n.context,this._config=Wr(n.config),this.queryParams=n.queryParams,this._networkStateAdapter=n.networkStateAdapter,this._forceCreateChannel=n.forceCreateChannel,this._agentVersion=n.agentVersion,this._chatClient=n.chatClient,this._deskClient=n.deskClient,this._cache=n.cache,this._logger=n.logger,this._dispatcher=n.dispatcher,this._statsTrackers={initialRender:new $a((r,s)=>this._chatClient.chatSDK.aiAgent.appendStat(r,s))}}static init(n){var h;const r=vo.get(n.platform),s=n.logger??new fo(n.logLevel??cr.WARN),o=n.dispatcher??new ho(s),a=n.useMMKVStorage?il(n.useMMKVStorage):r.keyValueStorage,l=n.useMMKVStorage?{...n.chatParams,useMMKVStorageStore:n.useMMKVStorage}:n.chatParams,u=ya({appId:n.appId,aiAgentId:n.aiAgentId,storage:a}),d=dr.init({appId:n.appId,messengerVersion:r.messengerVersion,extensions:{platform:r.platform,deviceOSPlatform:r.deviceOSPlatform,deviceOSVersion:r.deviceOSVersion},chatParams:l,chatSDK:n.chatSDK,logger:s,cache:u}),m=ll?fr.init({appId:n.appId,logger:s,customApiHost:(h=n.deskParams)==null?void 0:h.customApiHost}):gr.init();return s.debug("AIAgent.init: created",{appId:n.appId,aiAgentId:n.aiAgentId}),new sn({appId:n.appId,aiAgentId:n.aiAgentId,language:n.language,countryCode:n.countryCode,context:n.context,config:n.config,queryParams:n.queryParams,networkStateAdapter:r.networkStateAdapter,forceCreateChannel:n._forceCreateChannel,agentVersion:n._agentVersion,chatClient:d,deskClient:m,cache:u,logger:s,dispatcher:o})}get chatSDK(){return this._chatClient.chatSDK}get deskClient(){return this._deskClient}get session(){return this._session}get config(){return this._config}set config(n){this._config=Wr(n)}get agentVersion(){return this._agentVersion}set agentVersion(n){this._agentVersion=n}get networkStateAdapter(){return this._networkStateAdapter}get logger(){return this._logger}get dispatcher(){return this._dispatcher}get cache(){return this._cache}get statsTrackers(){return this._statsTrackers}}const Ee=(e,t)=>{const n=c.createContext(t??null),r=({children:a,value:l})=>i.createElement(n.Provider,{value:l},typeof a=="function"?a(l):a),s=({children:a})=>i.createElement(n.Consumer,null,l=>l?typeof a=="function"?a(l):a:null),o=()=>{const a=c.useContext(n);if(!a)throw new Error(`use${e}Context must be used within a ${e}Provider`);return a};return n.displayName=`${e}Context`,r.displayName=`${e}Provider`,s.displayName=`${e}Consumer`,o.displayName=`use${e}Context`,{Context:n,Provider:r,Consumer:s,useContext:o}};function Ye(e){const t=c.createContext({Template:e.template,updateTemplate:()=>{},components:e.components,updateComponent:()=>{}});function n({children:o}){const[a,l]=c.useState(()=>e.template),[u,d]=c.useState(e.components),m={Template:a,updateTemplate:h=>l(()=>h),components:u,updateComponent:(h,f)=>d(v=>({...v,[h]:f}))};return i.createElement(t.Provider,{value:m},o)}function r({template:o,children:a}){const{updateTemplate:l}=c.useContext(t);return c.useLayoutEffect(()=>{o&&l(o)},[o]),i.createElement(i.Fragment,null,a)}function s({children:o}){return i.createElement(n,null,o)}return s.defaults=e,s.useContext=()=>c.useContext(t),s.Context=t,s.Template=r,Object.keys(e.components).forEach(o=>{s[o]=function({component:l}){const{updateComponent:u}=c.useContext(t);return c.useLayoutEffect(()=>{l&&u(o,l)},[l]),null}}),s}function ul(...e){return function({children:n}){return e.reduce((r,s)=>i.createElement(s,null,r),n)}}function dl(e,t){const n=e.lastMessage;return n!=null&&n.isAdminMessage()?n.message??"":So(e,t)}function So(e,t){var r;const n=e.lastMessage;if(n!=null&&n.isUserMessage())return n.message||"";if(n!=null&&n.isAdminMessage())return n.message??"";if(n!=null&&n.isFileMessage())return n.message||n.name||"FILE";if(n!=null&&n.isMultipleFilesMessage()){if(n.message)return n.message;const s=n.fileInfoList.length;return((r=t==null?void 0:t.formatMultipleFilesCount)==null?void 0:r.call(t,s))??`${s} photos`}return e.name}function ml(e,t,n){var a;const r=new Date,s=new Date(((a=e.lastMessage)==null?void 0:a.createdAt)||e.createdAt),o=nt.differenceInMinutes(r,s);return o<1?n.justNow:o<60?n.minutesAgo(o):nt.isToday(s)?n.hoursAgo(nt.differenceInHours(r,s)):t(s,n.dateShortFormat)}const hl=e=>{const t=e.match(/rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)/);return t?[Number(t[1]),Number(t[2]),Number(t[3])]:null},Gt=e=>Math.max(0,Math.min(255,e)).toString(16).padStart(2,"0"),jr=(e,t)=>{const n=Gt(Math.round(t*255));if(e.startsWith("#")){const s=e.slice(1);return s.length===3||s.length===4?`#${s[0]}${s[0]}${s[1]}${s[1]}${s[2]}${s[2]}${n}`:`#${s.slice(0,6)}${n}`}const r=hl(e);return r?`#${Gt(r[0])}${Gt(r[1])}${Gt(r[2])}${n}`:e},fl=(e,t)=>{if(!t)return e;const n={...e};for(const[r,s]of Object.entries(t))s&&(n[r]=s);return n},gl=e=>e.consentDialog?"consent":e.toggleAllowed?e.enabled?"on":"off":"readonly",pl=e=>e.length>0,_l=e=>{const t=e[0];if(!t)return e;const n=e.some(s=>tt(s.type)),r=e.some(s=>!tt(s.type));return n&&r?tt(t.type)?e.filter(s=>tt(s.type)):[t]:r?[t]:e},Xr=e=>e.length===0?"empty":e.every(t=>tt(t.type))?"images":"non_images",El=({currentFiles:e,incomingFiles:t,maxAttachmentCount:n})=>{const r=_l(t),s=Xr(e),o=Xr(r),l=s==="images"&&o==="images"?{type:"append",files:r,nextFiles:[...e,...r]}:{type:"replace",files:r,nextFiles:r};return l.nextFiles.length>n?{type:"reject",reason:"count_limit",maxAttachmentCount:n,nextFileCount:l.nextFiles.length}:l.type==="replace"&&s!=="empty"&&s!==o?{type:"confirm_replace",action:l}:{type:"apply",action:l}},pt=3,Ao=6,bl=e=>e%pt===0?pt:Ao,Cl=({index:e,itemCount:t})=>{const n=t%pt,r=n>0,s=r?t-n:t,o=r&&e>=s,a=o?n:pt,l=o?e-s:e%pt,u=!r&&e>=t-pt;return{columnSpan:r?Ao/a:1,rowItemCount:a,isLastInRow:l===a-1,isLastRow:o||u}},xo=Ee("AIAgent"),vl=xo.Provider,Pe=xo.useContext;function yl(e){const t=Sl(e);return i.createElement(vl,{value:{_aiAgentSDK:t,chatSDK:t.chatSDK,deskClient:t.deskClient,appId:t.appId,aiAgentId:t.aiAgentId,language:t.language,countryCode:t.countryCode,context:t.context,logger:t.logger,dispatcher:t.dispatcher,cache:t.cache,networkStateAdapter:t.networkStateAdapter,queryParams:t.queryParams,config:t.config,handlers:e.handlers}},e.children)}function Sl(e){const t=c.useRef(null),n=c.useRef(null);if(!t.current||!n.current)t.current=sn.init(e);else{const s=Al(n.current,e);(s.appId||s.aiAgentId||s.chatSDK)&&(t.current.dispose(),t.current=sn.init({...e,chatParams:s.appId?{...e.chatParams,newInstance:!0}:e.chatParams}))}n.current=e,c.useEffect(()=>()=>{var s;(s=t.current)==null||s.dispose()},[]);const r=t.current;return r.language=e.language??"en",r.countryCode=e.countryCode,r.context=e.context,r.queryParams=e.queryParams,r.config=e.config,r.agentVersion=e._agentVersion,r}function Al(e,t){const n=t.chatSDK!==void 0&&t.chatSDK!==null;return{appId:!n&&e.appId!==t.appId,aiAgentId:e.aiAgentId!==t.aiAgentId,chatSDK:!!e.chatSDK!==n||n&&t.chatSDK!==e.chatSDK}}const Zr=Symbol("conversationMessageEventBridge"),At=Symbol("conversationMessageEventPublisher"),xl=(e,t)=>{const n=e;if(n[At]=t,n[Zr])return e;n[Zr]=!0;const r=e.setMessageCollectionHandler.bind(e);e.setMessageCollectionHandler=o=>{r({...o,onMessagesAdded:(a,l,u)=>{var d,m;(d=o.onMessagesAdded)==null||d.call(o,a,l,u),(m=n[At])==null||m.call(n,{kind:"messagesAdded",source:a.source,messages:u})},onMessagesUpdated:(a,l,u)=>{var d,m;(d=o.onMessagesUpdated)==null||d.call(o,a,l,u),(m=n[At])==null||m.call(n,{kind:"messagesUpdated",source:a.source,messages:u})}})};const s=e.initialize.bind(e);return e.initialize=o=>{const a=s(o),l=a.onCacheResult.bind(a),u=a.onApiResult.bind(a);return a.onCacheResult=d=>l((m,h)=>{var f;d(m,h),(f=n[At])==null||f.call(n,{kind:"initialized",source:"cache",messages:h??[]})}),a.onApiResult=d=>u((m,h)=>{var f;d(m,h),(f=n[At])==null||f.call(n,{kind:"initialized",source:"api",messages:h??[]})}),a},e},gn=()=>{const[,e]=c.useState(0);return c.useCallback(()=>e(t=>t+1),[])};let Tl=0;function Il(){return c.useState(()=>`${Tl++}`)[0]}const Et=(e,t,n)=>{const r=c.useRef(t),o=Il();r.current=t,c.useEffect(()=>{var l;const a=u=>{const d=u;return Object.keys(d).forEach(h=>{d[h]=(...f)=>{var C;const v=r.current;(C=v[h])==null||C.call(v,...f)}}),d};return(l=e==null?void 0:e.groupChannel)==null||l.addGroupChannelHandler(o,a(new je.GroupChannelHandler)),()=>{var u;(u=e==null?void 0:e.groupChannel)==null||u.removeGroupChannelHandler(o)}},[e==null?void 0:e.groupChannel,o])};function wl(e,t){return!e||!t?!0:e.url!==t.url}function He(e){return e!=null&&"sendingStatus"in e}function Ml(e,t="##__USER_ID_IS_NOT_PROVIDED__##"){var n;return He(e)?((n=e.sender)==null?void 0:n.userId)===t:!1}function kl(e,t){return Ml(e,t)||e.isAdminMessage()?!1:e.updatedAt===0}function Jr(e){return"sendingStatus"in e?e.sendingStatus==="succeeded"?String(e.messageId):e.reqId:String(e.messageId)}const on={collection:{groupChannel:{defaultOrder:je.GroupChannelListOrder.LATEST_LAST_MESSAGE},message:{defaultLimit:{next:25,prev:25},searchLimit:{next:10,prev:10}}}};function Qr(e){return!e||!Array.isArray(e)?!1:e.length!==0}function es(e,t){return e.reduce((n,r)=>{const s=t(r);return n[s]=r,n},{})}const Rl=({...e},t)=>{switch(t.type){case"update_initialized":return e.initialized=t.value.status,e;case"update_refreshing":return e.refreshing=t.value.status,e;case"update_loading":return e.loading=t.value.status,e;case"update_messages":{if(t.value.clearBeforeAction)e.messageMap=Ol(t.value.messages);else{const n={...e.messageMap},r=[],s=[];t.value.messages.forEach(o=>{const a=He(o)?o.reqId:void 0,l=o.messageId||void 0;[a,l].forEach(u=>{if(!u)return;const d=n[u];Ll(d,o,t.value.strictStreamingOrder)&&(d&&r.push(d),o.parentMessageId>0&&(d!=null&&d.parentMessage)&&o.applyParentMessage(d.parentMessage),s.push(o))})}),r.forEach(o=>{He(o)&&delete n[o.reqId],delete n[o.messageId]}),s.forEach(o=>{He(o)&&(n[o.reqId]=o),o.messageId!==0&&(n[o.messageId]=o)}),e.messageMap=n}return e}case"update_new_messages":{const n=t.value.currentUserId,r=t.value.messages.filter(s=>kl(s,n));return t.value.clearBeforeAction?e.newMessageMap=es(r,Jr):(r.map(o=>o.messageId).forEach(o=>delete e.newMessageMap[o]),e.newMessageMap={...e.newMessageMap,...es(r,Jr)}),e}case"delete_messages":case"delete_new_messages":{const n=t.type==="delete_messages"?"messageMap":"newMessageMap";return e[n]={...e[n]},t.value.messageIds.forEach(r=>{if(r===0)return;const s=e[n][r];s&&(He(s)&&delete e[n][s.reqId],delete e[n][s.messageId])}),t.value.reqIds.forEach(r=>{const s=e[n][r];s&&(He(s)&&delete e[n][s.reqId],delete e[n][s.messageId])}),e}}},Ol=e=>e.reduce((t,n)=>(He(n)?(t[n.reqId]=n,n.sendingStatus===ze.SendingStatus.SUCCEEDED&&(t[n.messageId]=n)):t[n.messageId]=n,t),{}),Ll=(e,t,n=!1)=>{var r,s;if(!He(e)||!He(t))return!0;if(n&&e&&ns(e)&&ns(t)){const o=((r=e.message)==null?void 0:r.length)||0,a=((s=t.message)==null?void 0:s.length)||0;if(o>a)return!1}return e.sendingStatus===ze.SendingStatus.SUCCEEDED?t.sendingStatus===ze.SendingStatus.SUCCEEDED:e.sendingStatus!==t.sendingStatus},Nl=(e=Dl)=>{const[{initialized:t,loading:n,refreshing:r,messageMap:s,newMessageMap:o},a]=c.useReducer(Rl,{initialized:!1,loading:!0,refreshing:!1,messageMap:{},newMessageMap:{}}),l=(E,_,b,A)=>{a({type:"update_messages",value:{messages:E,clearBeforeAction:_,currentUserId:b,strictStreamingOrder:A}})},u=(E,_)=>{a({type:"delete_messages",value:{messageIds:E,reqIds:_}})},d=(E,_,b)=>{a({type:"update_new_messages",value:{messages:E,clearBeforeAction:_,currentUserId:b}})},m=(E,_)=>{a({type:"delete_new_messages",value:{messageIds:E,reqIds:_}})},h=E=>{a({type:"update_initialized",value:{status:E}})},f=E=>{a({type:"update_loading",value:{status:E}})},v=E=>{a({type:"update_refreshing",value:{status:E}})},C=Object.values(o),y=c.useMemo(()=>Array.from(new Set(Object.values(s))).sort(e),[s]);return{updateInitialized:h,updateLoading:f,updateRefreshing:v,updateMessages:l,deleteMessages:u,initialized:t,loading:n,refreshing:r,messages:y,newMessages:C,updateNewMessages:d,deleteNewMessages:m}},ts=Math.floor(Number.MAX_SAFE_INTEGER/10);function Dl(e,t){let n=0,r=0;return He(e)&&e.sendingStatus!=="succeeded"&&(n=ts),He(t)&&t.sendingStatus!=="succeeded"&&(r=ts),e.createdAt+n-(t.createdAt+r)}function ns(e){try{const t=JSON.parse(e.data||"{}");return typeof t=="object"&&!!t.stream}catch{return!1}}function ye(e){const t=c.useRef(e);return t.current=e,c.useCallback((...n)=>t.current(...n),[t])}const $l=(e,t,n)=>{var o;const r={prevResultLimit:t.prev,nextResultLimit:t.next,startingPoint:n==null?void 0:n.startingPoint,replyType:n==null?void 0:n.replyType},s=(o=n==null?void 0:n.collectionCreator)==null?void 0:o.call(n,r);return s||e.createMessageCollection({...r,filter:new je.MessageFilter(r)})};function rs(e){return e<Date.now()?on.collection.message.searchLimit:on.collection.message.defaultLimit}const Pl=(e,t,n={})=>{var Te,be;const r=c.useRef(n);r.current=n;const s=c.useRef(t);s.current=t;const o=r.current.logger,a=r.current.startingPoint??Number.MAX_SAFE_INTEGER,l=rs(a),u=r.current.strictStreamingOrder??!1,d=c.useRef({prev:!1,next:!1}),m=gn(),h=c.useRef({initialized:!1,apiInitialized:!1,instance:null}),{initialized:f,loading:v,refreshing:C,messages:y,newMessages:E,updateMessages:_,updateNewMessages:b,deleteNewMessages:A,deleteMessages:M,updateInitialized:B,updateLoading:w,updateRefreshing:O}=Nl(n==null?void 0:n.sortComparator),k=ye(I=>{var L,N,X,Y;if(!s.current||!s.current.url)return(L=o==null?void 0:o.error)==null?void 0:L.call(o,"[useGroupChannelMessages] channel is required");try{switch(I){case ue.CollectionEventSource.EVENT_MESSAGE_RECEIVED:case ue.CollectionEventSource.EVENT_MESSAGE_SENT_SUCCESS:case ue.CollectionEventSource.SYNC_MESSAGE_FILL:case void 0:(X=(N=r.current).markAsRead)==null||X.call(N,[s.current]);break}}catch(G){(Y=o==null?void 0:o.warn)==null||Y.call(o,"[useGroupChannelMessages/markAsReadBySource]",G)}}),R=ye((I,L)=>{var N,X,Y,G,V;if(L.length>0)switch(I){case ue.CollectionEventSource.EVENT_MESSAGE_RECEIVED:case ue.CollectionEventSource.SYNC_MESSAGE_FILL:{(X=(N=r.current).shouldCountNewMessages)!=null&&X.call(N)&&b(L,!1,(Y=e.currentUser)==null?void 0:Y.userId),(V=(G=r.current).onMessagesReceived)==null||V.call(G,L);break}}}),W=ye(I=>{var L,N;(N=(L=r.current).onCollectionEvent)==null||N.call(L,I)}),D=ye(async(I,L,N)=>new Promise((X,Y)=>{var Ge;h.current.instance&&h.current.instance.dispose(),k(),b([],!0,(Ge=e.currentUser)==null?void 0:Ge.userId);const G=()=>{var de,me;const{pendingMessages:ae,failedMessages:ce}=h.current.instance??{};Qr(ae)&&_(ae,!1,(de=e.currentUser)==null?void 0:de.userId),Qr(ce)&&_(ce,!1,(me=e.currentUser)==null?void 0:me.userId)},V=$l(I,N,{...r.current,startingPoint:L});h.current={apiInitialized:!1,initialized:!1,instance:V},V.setMessageCollectionHandler({onMessagesAdded:(ae,ce,de)=>{var me;k(ae.source),R(ae.source,de),_(de,!1,(me=e.currentUser)==null?void 0:me.userId,u),W({kind:"messagesAdded",source:ae.source,messages:de})},onMessagesUpdated:(ae,ce,de)=>{var me,pe,ve;k(ae.source),R(ae.source,de),_(de,!1,(me=e.currentUser)==null?void 0:me.userId,u),ae.source===ue.CollectionEventSource.EVENT_MESSAGE_UPDATED&&((ve=(pe=r.current).onMessagesUpdated)==null||ve.call(pe,de)),W({kind:"messagesUpdated",source:ae.source,messages:de})},onMessagesDeleted:(ae,ce,de,me)=>{const pe=me.map(Oe=>Oe.messageId),ve=me.filter(He).map(Oe=>Oe.reqId);M(pe,ve),A(pe,ve),W({kind:"messagesDeleted",source:ae.source,messages:me})},onChannelDeleted:(ae,ce)=>{var de,me;(me=(de=r.current).onChannelDeleted)==null||me.call(de,ce)},onChannelUpdated:(ae,ce)=>{var de,me;m(),(me=(de=r.current).onChannelUpdated)==null||me.call(de,ce,ae)},onHugeGapDetected:()=>{D(I,Number.MAX_SAFE_INTEGER,on.collection.message.defaultLimit)}});let le=!1;V.initialize(je.MessageCollectionInitPolicy.CACHE_AND_REPLACE_BY_API).onCacheResult((ae,ce)=>{var de,me,pe,ve,Oe;(me=(de=r.current).onCacheResult)==null||me.call(de,ae,ce??[]),ae?(e.isCacheEnabled&&((pe=o==null?void 0:o.error)==null||pe.call(o,"[useGroupChannelMessages/onCacheResult]",ae)),le=!0):ce&&((ve=o==null?void 0:o.debug)==null||ve.call(o,"[useGroupChannelMessages/onCacheResult]","message length:",ce.length),_(V.succeededMessages,!0,(Oe=e.currentUser)==null?void 0:Oe.userId),G(),ce.length>0&&(h.current.initialized=!0,X())),W({kind:"initialized",source:"cache",messages:ce??[]})}).onApiResult((ae,ce)=>{var de,me,pe,ve,Oe,Le,re;(me=(de=r.current).onApiResult)==null||me.call(de,ae,ce??[]),h.current.initialized=!0,h.current.apiInitialized=!0,ae?((pe=o==null?void 0:o.warn)==null||pe.call(o,"[useGroupChannelMessages/onApiResult]",ae),le?Y(ae):X()):ce&&((ve=o==null?void 0:o.debug)==null||ve.call(o,"[useGroupChannelMessages/onApiResult]","message length:",ce.length),_(V.succeededMessages,!0,(Oe=e.currentUser)==null?void 0:Oe.userId),r.current.startingPoint||(re=(Le=r.current).onMessagesReceived)==null||re.call(Le,ce),e.isCacheEnabled&&G(),X()),W({kind:"initialized",source:"api",messages:ce??[]})})}));Et(e,{onUserBanned(I,L){var N,X,Y;I.isGroupChannel()&&!wl(I,s.current)&&(L.userId===((N=e.currentUser)==null?void 0:N.userId)?(Y=(X=r.current).onCurrentUserBanned)==null||Y.call(X):m())}}),c.useLayoutEffect(()=>{const I=setTimeout(async()=>{e.currentUser&&s.current&&(B(!1),w(!0),await D(s.current,a,l),w(!1),B(!0))});return()=>clearTimeout(I)},[e,(Te=e.currentUser)==null?void 0:Te.userId,(be=s.current)==null?void 0:be.url,r.current.replyType]),c.useEffect(()=>()=>{h.current.instance&&h.current.instance.dispose()},[]);const F=ye(async()=>{e.currentUser&&s.current&&(O(!0),await D(s.current,Number.MAX_SAFE_INTEGER,on.collection.message.defaultLimit),O(!1))}),q=ye(async()=>{var L;const I=h.current.instance;if(I!=null&&I.hasPrevious&&!d.current.prev)try{d.current.prev=!0;const N=await I.loadPrevious();_(N,!1,(L=e.currentUser)==null?void 0:L.userId)}catch{}finally{d.current.prev=!1}}),H=ye(()=>{const{initialized:I,instance:L}=h.current;return I&&L?L.hasPrevious:!1}),K=ye(async()=>{var L;const I=h.current.instance;if(I!=null&&I.hasNext&&!d.current.next)try{d.current.next=!0;const N=await I.loadNext();_(N,!1,(L=e.currentUser)==null?void 0:L.userId)}catch{}finally{d.current.next=!1}}),T=ye(()=>{const{initialized:I,apiInitialized:L,instance:N}=h.current;return L&&I&&N?N.hasNext:!1}),z=ye((I,L)=>{var N;if(!s.current||!s.current.url)throw(N=o==null?void 0:o.error)==null||N.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");return new Promise((X,Y)=>{s.current.sendUserMessage(I).onPending(G=>{var V;G.channelUrl===s.current.url&&_([G],!1,(V=e.currentUser)==null?void 0:V.userId),L==null||L(G)}).onSucceeded(G=>{var V;G.channelUrl===s.current.url&&_([G],!1,(V=e.currentUser)==null?void 0:V.userId),X(G)}).onFailed((G,V)=>{var le;V&&V.channelUrl===s.current.url&&_([V],!1,(le=e.currentUser)==null?void 0:le.userId),Y(G)})})}),Z=ye((I,L)=>{var N;if(!s.current||!s.current.url)throw(N=o==null?void 0:o.error)==null||N.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");return new Promise((X,Y)=>{s.current.sendFileMessage(I).onPending(G=>{var V;G.channelUrl===s.current.url&&_([G],!1,(V=e.currentUser)==null?void 0:V.userId),L==null||L(G)}).onSucceeded(G=>{var V;G.channelUrl===s.current.url&&_([G],!1,(V=e.currentUser)==null?void 0:V.userId),X(G)}).onFailed((G,V)=>{var le;V&&V.channelUrl===s.current.url&&_([V],!1,(le=e.currentUser)==null?void 0:le.userId),Y(G)})})}),ge=ye(async(I,L)=>{var N;if(!s.current||!s.current.url)throw(N=o==null?void 0:o.error)==null||N.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");return new Promise(X=>{const Y=[];s.current.sendFileMessages(I).onPending(G=>{var V;G.channelUrl===s.current.url&&_([G],!1,(V=e.currentUser)==null?void 0:V.userId),L==null||L(G)}).onSucceeded(G=>{var V;G.isFileMessage()&&G.channelUrl===s.current.url&&(_([G],!1,(V=e.currentUser)==null?void 0:V.userId),Y.push(G)),Y.length===I.length&&X(Y)}).onFailed((G,V)=>{var le;V&&V.channelUrl===s.current.url?(_([V],!1,(le=e.currentUser)==null?void 0:le.userId),Y.push(V)):Y.push(null),Y.length===I.length&&X(Y)})})}),j=ye((I,L)=>{var N;if(!s.current||!s.current.url)throw(N=o==null?void 0:o.error)==null||N.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");return new Promise((X,Y)=>{s.current.sendMultipleFilesMessage(I).onPending(G=>{var V;G.channelUrl===s.current.url&&_([G],!1,(V=e.currentUser)==null?void 0:V.userId),L==null||L(G)}).onFileUploaded(()=>{m()}).onSucceeded(G=>{var V;G.channelUrl===s.current.url&&_([G],!1,(V=e.currentUser)==null?void 0:V.userId),X(G)}).onFailed((G,V)=>{var le;V&&V.channelUrl===s.current.url&&_([V],!1,(le=e.currentUser)==null?void 0:le.userId),Y(G)})})}),x=ye(async(I,L)=>{var X,Y;if(!s.current||!s.current.url)throw(X=o==null?void 0:o.error)==null||X.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");const N=await s.current.updateUserMessage(I,L);return N.channelUrl===s.current.url&&_([N],!1,(Y=e.currentUser)==null?void 0:Y.userId),N}),$=ye(async(I,L)=>{var X,Y;if(!s.current||!s.current.url)throw(X=o==null?void 0:o.error)==null||X.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");const N=await s.current.updateFileMessage(I,L);return N.channelUrl===s.current.url&&_([N],!1,(Y=e.currentUser)==null?void 0:Y.userId),N}),J=ye(async I=>{var L;if(!s.current||!s.current.url)throw(L=o==null?void 0:o.error)==null||L.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");return new Promise((N,X)=>{let Y;I.isUserMessage()&&(Y=s.current.resendMessage(I)),I.isFileMessage()&&(Y=s.current.resendMessage(I)),I.isMultipleFilesMessage()&&(Y=s.current.resendMessage(I)),Y&&("onPending"in Y&&Y.onPending(G=>{var V;G.channelUrl===s.current.url&&_([G],!1,(V=e.currentUser)==null?void 0:V.userId)}),"onFileUploaded"in Y&&Y.onFileUploaded(()=>{m()}),"onSucceeded"in Y&&Y.onSucceeded(G=>{var V;G.channelUrl===s.current.url&&_([G],!1,(V=e.currentUser)==null?void 0:V.userId),N(G)}),"onFailed"in Y&&Y.onFailed((G,V)=>{var le;V&&V.channelUrl===s.current.url&&_([V],!1,(le=e.currentUser)==null?void 0:le.userId),X(G)}))})}),te=ye(async I=>{var L,N;if(!s.current||!s.current.url)throw(L=o==null?void 0:o.error)==null||L.call(o,"[useGroupChannelMessages] channel is required"),new Error("Channel is required");if(I.sendingStatus==="succeeded")I.isUserMessage()&&await s.current.deleteMessage(I),I.isFileMessage()&&await s.current.deleteMessage(I),I.isMultipleFilesMessage()&&await s.current.deleteMessage(I);else try{await((N=h.current.instance)==null?void 0:N.removeFailedMessage(I.reqId))}finally{M([],[I.reqId])}}),oe=ye(()=>{var I;b([],!0,(I=e.currentUser)==null?void 0:I.userId)}),Ae=ye(async I=>{var L;if(e.currentUser&&s.current){const N=rs(I);w(!0),_([],!0,(L=e.currentUser)==null?void 0:L.userId),await D(s.current,I,N),w(!1)}});return{initialized:f,loading:v,refreshing:C,messages:y,newMessages:E,resetNewMessages:oe,refresh:F,loadPrevious:q,hasPrevious:H,loadNext:K,hasNext:T,sendUserMessage:z,sendFileMessage:Z,sendFileMessages:ge,sendMultipleFilesMessage:j,updateUserMessage:x,updateFileMessage:$,resendMessage:J,deleteMessage:te,resetWithStartingPoint:Ae,_dangerous_reducer_updateMessages:_,_dangerous_reducer_deleteMessages:M}},Fl=(e,t,n)=>{const r=c.useRef(0),s=c.useRef(new Set),o=c.useCallback(d=>{const m={id:r.current+=1,...d};s.current.forEach(h=>{h(m)})},[]),a=c.useCallback(d=>{var h;const m=((h=n==null?void 0:n.collectionCreator)==null?void 0:h.call(n,d))??(t==null?void 0:t.createMessageCollection({...d??{},filter:new je.MessageFilter(d)}));if(!m)throw new Error("Group channel is required to create a message collection");return xl(m,o)},[t,n==null?void 0:n.collectionCreator,o]),l=Pl(e,t,{...n,collectionCreator:a,strictStreamingOrder:!0}),u=c.useCallback(d=>(s.current.add(d),()=>{s.current.delete(d)}),[]);return{...l,subscribeMessageEvents:u}},Ot={DEFAULT_PRIMARY:"#000000",DEFAULT_BOT_MSG_BG:"#ECECEC",WHITE:"#ffffff",BLACK:"#000000"};function To(e){return e.length===4?`#${[...e.slice(1)].map(t=>t+t).join("")}`:e}function Bl(e){const t=To(e);return[parseInt(t.slice(1,3),16),parseInt(t.slice(3,5),16),parseInt(t.slice(5,7),16)]}function Ul(e){return`#${e.map(t=>t.toString(16).padStart(2,"0")).join("")}`}function Hl(e,t,n){e/=255,t/=255,n/=255;const r=Math.max(e,t,n),s=Math.min(e,t,n),o=r-s;let a=0,l=0;const u=(r+s)/2;return r!==s&&(l=u>.5?o/(2-r-s):o/(r+s)),r===e?a=(t-n)/o+(t<n?6:0):r===t?a=(n-e)/o+2:r===n&&(a=(e-t)/o+4),a/=6,[a,l,u]}function Gl(e,t,n){let r,s,o;if(t===0)r=s=o=n;else{const a=function(m,h,f){return f<0&&(f+=1),f>1&&(f-=1),f<.16666666666666666?m+(h-m)*6*f:f<.5?h:f<.6666666666666666?m+(h-m)*(.6666666666666666-f)*6:m},l=n<.5?n*(1+t):n+t-n*t,u=2*n-l;r=a(u,l,e+1/3),s=a(u,l,e),o=a(u,l,e-1/3)}return[Math.round(r*255),Math.round(s*255),Math.round(o*255)]}function Vt(e,t,n){const[r,s,o]=Bl(e),[a,l,u]=Hl(r,s,o),d=Math.max(0,Math.min(1,u*t)),m=Math.max(0,Math.min(1,l*n)),[h,f,v]=Gl(a,m,d);return Ul([Math.round(h),Math.round(f),Math.round(v)])}function Vl(e,t="light"){return{extraDark:Vt(e,.6,1.2),dark:Vt(e,.85,1.1),main:e,light:Vt(e,t==="dark"?1.1:1.5,t==="dark"?.95:.9),extraLight:Vt(e,t==="dark"?1.2:1.75,t==="dark"?.9:.8)}}function jn(e){const t=To(e),n=149,r=+`0x${t[1]}${t[2]}`,s=+`0x${t[3]}${t[4]}`,o=+`0x${t[5]}${t[6]}`;return r*.299+s*.587+o*.114>n?Ot.BLACK:Ot.WHITE}function zl(e,t,n,r,s){return{base:{primary:t,primaryContrastContent:n,background:e.background50,headerBackground:e.background50,modalContentBackground:e.background50},messageInput:{text:e.onlight.textHighEmphasis,placeholderText:e.onlight.textLowEmphasis,background:e.background100},messageIncoming:{text:s,background:r},messageOutgoing:{text:n,background:t},csat:{background:e.background100},memoryDialog:{titleText:e.onlight.textHighEmphasis,markdownBodyText:e.onlight.textLowEmphasis,markdownLinkText:e.onlight.textHighEmphasis,positiveBackground:e.onlight.textHighEmphasis,positiveText:e.ondark.textHighEmphasis,positiveBorderColor:"transparent",negativeBackground:"transparent",negativeText:e.onlight.textHighEmphasis,negativeBorderColor:"transparent"}}}const Yl=(e,t,n,r,s)=>({base:{primary:t,primaryContrastContent:n,background:e.background600,headerBackground:e.background500,modalContentBackground:e.background500},messageInput:{text:e.ondark.textHighEmphasis,placeholderText:e.ondark.textLowEmphasis,background:e.background400},messageIncoming:{text:s,background:r},messageOutgoing:{text:n,background:t},csat:{background:e.background400},memoryDialog:{titleText:e.ondark.textHighEmphasis,markdownBodyText:e.ondark.textLowEmphasis,markdownLinkText:e.ondark.textHighEmphasis,positiveBackground:e.ondark.textHighEmphasis,positiveText:e.onlight.textHighEmphasis,positiveBorderColor:"transparent",negativeBackground:"transparent",negativeText:e.ondark.textHighEmphasis,negativeBorderColor:"transparent"}}),zt={primary:{extraDark:"#491389",dark:"#6211c8",main:"#742ddd",light:"#c2a9fa",extraLight:"#dbd1ff"},secondary:{extraDark:"#066858",dark:"#027d69",main:"#259c72",light:"#69c085",extraLight:"#a8e2ab"},error:{extraDark:"#9d091e",dark:"#bf0711",main:"#de360b",light:"#f66161",extraLight:"#fdaaaa"},information:{extraDark:"#241389",dark:"#362ca9",main:"#4a48cd",light:"#a9bbfa",extraLight:"#d1dbff"},background700:"#000000",background600:"#161616",background500:"#2c2c2c",background400:"#393939",background300:"#bdbdbd",background200:"#e0e0e0",background100:"#eeeeee",background50:"#ffffff",onlight:{textHighEmphasis:"rgba(0, 0, 0, 1)",textMidEmphasis:"rgba(0, 0, 0, 0.75)",textLowEmphasis:"rgba(0, 0, 0, 0.55)",textDisabled:"rgba(0, 0, 0, 0.12)"},ondark:{textHighEmphasis:"rgba(255, 255, 255, 1)",textMidEmphasis:"rgba(255, 255, 255, 0.75)",textLowEmphasis:"rgba(255, 255, 255, 0.58)",textDisabled:"rgba(255, 255, 255, 0.12)"},overlay:{dark:"rgba(0, 0, 0, 0.55)",light:"rgba(22, 22, 22, 0.32)"}},Mn={h1:{fontSize:18,fontWeight:700},h2:{fontSize:16,fontWeight:700},subtitle1:{fontSize:16,fontWeight:500},subtitle2:{fontSize:16,fontWeight:400},body1:{fontSize:16,fontWeight:400},body2:{fontSize:14,fontWeight:500},body3:{fontSize:14,fontWeight:400},button:{fontSize:14,fontWeight:700},caption1:{fontSize:12,fontWeight:700},caption2:{fontSize:12,fontWeight:400},caption3:{fontSize:11,fontWeight:700},caption4:{fontSize:11,fontWeight:400}};function ss(e){const t=Wl(e),n=ql(e,t),r=jl(n,e.colors,e.selectedTheme),s=Zl(e);return{selectedTheme:e.selectedTheme,palette:t,colors:r,aiAgentColorVariables:{primary_color:r.base.primary,primary_contrast_color:r.base.primaryContrastContent,bot_message_bg_color:r.messageIncoming.background,bot_message_bg_contrast_color:r.messageIncoming.text},typography:s}}function Wl({selectedTheme:e,palette:t,primary:n}){const r=t!=null&&t.primary?t.primary:n?n===zt.primary.main?zt.primary:Vl(n,e):zt.primary;return{...zt,primary:r,...t}}function ql({selectedTheme:e,primaryContrast:t,botMessageBackground:n,botMessageBackgroundContrast:r},s){const o=s.primary.main,a=t??jn(o),l=n??Ot.DEFAULT_BOT_MSG_BG,u=r??jn(l);return(e==="light"?zl:Yl)(s,o,a,l,u)}function Kl(e,t,n){return typeof e=="string"?e:e[t]??n}function jl(e,t,n){var a;if(!t||Object.keys(t).length===0)return e;const r={...e},s=r,o=e;for(const l of Object.keys(t)){const u=t[l];if(u){s[l]={...s[l]};for(const[d,m]of Object.entries(u))if(m!==void 0){const h=((a=o[l])==null?void 0:a[d])??"";s[l][d]=Kl(m,n,h)}}}return r}function Xl(e,t,n){const r={...e};return n.forEach(s=>{const o=t[s];o!=null&&(r[s]=o)}),r}function Zl({typography:e}){if(!e)return Mn;const t={...Mn};return Object.keys(e).forEach(n=>{const r=e[n];if(r&&typeof r=="object"){const s=Mn[n],o=["fontSize","fontWeight","fontFamily","lineHeight"];t[n]=Xl(s,r,o)}}),t}const{Provider:Jl,useContext:pr}=Ee("AIAgentTheme");function Ql({logger:e,palette:t,typography:n,colors:r,appearance:s,children:o}){const a=c.useRef(null),[l,u]=c.useState(()=>ss({selectedTheme:(s==null?void 0:s.theme)??"light",palette:t,typography:n,colors:r,primary:s==null?void 0:s.primaryColor,botMessageBackground:s==null?void 0:s.botMessageBackgroundColor})),d=c.useCallback((m,h)=>{h&&(a.current=h);const f=(s==null?void 0:s.theme)??m,v=a.current?a.current.themes[f]:null,C={primary:s==null?void 0:s.primaryColor,primaryContrast:void 0,botMessageBackground:s==null?void 0:s.botMessageBackgroundColor,botMessageBackgroundContrast:void 0};!C.primary&&(v!=null&&v.primary_color)&&(C.primary=v.primary_color,C.primaryContrast=v.primary_contrast_color),!C.botMessageBackground&&(v!=null&&v.bot_message_bg_color)&&(C.botMessageBackground=v.bot_message_bg_color,C.botMessageBackgroundContrast=v.bot_message_bg_contrast_color);const y=ss({selectedTheme:f,palette:t,typography:n,colors:r,...C});u(y),e==null||e.info("theme.update:",f)},[s==null?void 0:s.theme,s==null?void 0:s.primaryColor,s==null?void 0:s.botMessageBackgroundColor,t,n,r,e]);return c.useEffect(()=>{(s!=null&&s.theme||s!=null&&s.primaryColor||s!=null&&s.botMessageBackgroundColor)&&d(l.selectedTheme)},[s==null?void 0:s.theme,s==null?void 0:s.primaryColor,s==null?void 0:s.botMessageBackgroundColor]),i.createElement(Jl,{value:{theme:l,updateTheme:d}},o)}const kn=25*1024*1024,os=1,is=new Set(["image/png","image/jpeg","image/jpg"]),as=new Set(["application/pdf"]),ec={off:"off",always:"always",handed_off_only:"handed_off_only"},tc=()=>{const[e,t]=c.useState(()=>({maxAttachmentCount:os,attachmentMode:"handed_off_only",defaultUploadSizeLimit:kn,uploadSizeLimitPerType:new Map,supportedImageMimeTypes:is,supportedFileMimeTypes:as})),n=c.useCallback(({active_channel:s,upload_restriction:o})=>{t({maxAttachmentCount:(o==null?void 0:o.max_attachment_count)??os,attachmentMode:ec[s.attachment_mode]??"handed_off_only",defaultUploadSizeLimit:(o==null?void 0:o.default_upload_size_limit)??kn,uploadSizeLimitPerType:new Map(Object.entries((o==null?void 0:o.upload_size_limit_per_type)??[])),supportedImageMimeTypes:new Set((o==null?void 0:o.supported_image_mime_types)??is),supportedFileMimeTypes:new Set((o==null?void 0:o.supported_file_mime_types)??as)})},[]),r=c.useCallback(s=>{const{channel:o,uploadSizeLimit:a=kn}=s,l=(d=!0)=>o!=null&&o.isAIAgent?d?it(o):!1:!0,u=d=>{if(l())return e.defaultUploadSizeLimit??a;const m=e.defaultUploadSizeLimit??a,h=e.uploadSizeLimitPerType.get(d)??m;return Math.min(m,h)};return{maxAttachmentCount:e.maxAttachmentCount,isEnabled:()=>{if(l(!1))return!0;switch(e.attachmentMode){case"off":return!1;case"always":return!0;case"handed_off_only":return it(o);default:return!0}},get supportedMimeTypes(){return l()?[Vn]:[...e.supportedImageMimeTypes,...e.supportedFileMimeTypes]},isSupportedMimeType:d=>l()?!0:e.supportedImageMimeTypes.has(d)||e.supportedFileMimeTypes.has(d),getUploadSizeLimit:u,getUploadSizeLimitInMB:d=>u(d)/(1024*1024)}},[e]);return{updateBaseAttachmentRules:n,createAttachmentRules:r}},ls=(...e)=>{const[t,n,r]=e;if(e.length===1&&typeof t=="object"&&t!==null)return{type:"active",context:t};if(e.length===3&&typeof t=="string"&&typeof n=="string"&&typeof r=="object"&&r!==null)return{type:"specific",aiAgentId:t,channelUrl:n,context:r};throw new Error("Invalid arguments: expected (context) or (aiAgentId, channelUrl, context)")},xt=e=>({...e,context:e.context??{}}),{Provider:nc,useContext:bt}=Ee("AIAgentMessengerSession"),rc=c.forwardRef(function({userSessionInfo:e,children:t},n){const{_aiAgentSDK:r,chatSDK:s,aiAgentId:o,logger:a}=Pe(),{updateTheme:l}=pr(),[u,d]=c.useState(void 0),[m,h]=c.useState(void 0),[f,v]=c.useState(null),[C,y]=c.useState(null),[E,_]=c.useState(null),[b,A]=c.useState(null),[M,B]=c.useState(null),{updateBaseAttachmentRules:w,createAttachmentRules:O}=tc();c.useEffect(()=>{const D=r.onMessengerSettingsUpdated(({settings:H})=>{const{appearance:K,bot:T,launcher:z,memory:Z}=H;l(K.selected_theme,K),_(Fa(T)),A(Ba(z)),B(Z?qn(Z):null),w(H)}),F=r.onActiveChannelUpdated(({channelUrl:H,status:K,conversationStatus:T})=>{h({url:H,status:K,conversationStatus:T})}),q=r.onAuthTokenRefreshed(()=>{var K;const H=(K=r.session)==null?void 0:K.userSession.authToken;H&&y(T=>T?{...T,authToken:H}:null)});return()=>{D(),F(),q()}},[r,l,w]);const k=c.useCallback(async()=>{try{const D=await r.authenticate(e),F=r.session;return v(F.sdkUser),y(F.userSession),h(F.activeChannel),d(void 0),D}catch(D){throw v(null),y(null),h(void 0),d(D),D}},[r,e]),R=c.useCallback(async()=>{await r.deauthenticate(),v(null),h(void 0),y(null),_(null),A(null),B(null)},[r]),W=c.useCallback(async()=>{if(!r.session){if(C)return a.debug("agentMessengerSession.refreshActiveChannel: stale call after deauthenticate, skipping"),"";throw a.error("agentMessengerSession.refreshActiveChannel: userSession is not ready"),new Error("userSession is not ready")}return r.session.userSession.userId!==(C==null?void 0:C.userId)?(a.debug("agentMessengerSession.refreshActiveChannel: stale call from previous session, skipping"),r.session.activeChannel.url):(h(void 0),await r.refreshActiveChannel())},[r,a,C]);return c.useImperativeHandle(n,()=>{const D=async()=>{if(!m)throw new Error("No active conversation. Please start a conversation first.");return await s.groupChannel.getChannel(m.url)};return{activeChannel:m,chatSDK:s,authenticate:k,deauthenticate:R,updateContext:async(...F)=>{const q=ls(...F);if(q.type==="active"){const T=await(await D()).updateContext(o,q.context);return xt(T)}const H=await s.aiAgent.updateContext(q.aiAgentId,q.channelUrl,q.context);return xt(H)},patchContext:async(...F)=>{const q=ls(...F);if(q.type==="active"){const T=await(await D()).patchContext(o,q.context);return xt(T)}const H=await s.aiAgent.patchContext(q.aiAgentId,q.channelUrl,q.context);return xt(H)},getContextObject:async()=>{const q=await(await D()).getContextObject(o);return xt(q)}}},[k,R,m,s,o,a]),i.createElement(nc,{value:{sdkUser:f,userSessionInfo:e,userSession:C,activeChannel:m,setActiveChannel:h,refreshActiveChannel:W,createConversation:r.createConversation,searchConversation:r.searchConversation,connectionError:u,aiAgentInfo:E,launcherInfo:b,memoryInfo:M,authenticate:k,deauthenticate:R,createAttachmentRules:O,statsTrackers:r.statsTrackers}},t)}),pn=(e,t)=>{const n=c.useId(),r=c.useRef(t);c.useLayoutEffect(()=>{r.current=t}),c.useLayoutEffect(()=>{const s=new ue.ConnectionHandler({onDisconnected:o=>{var a,l;return(l=(a=r.current).onDisconnected)==null?void 0:l.call(a,o)},onConnected:o=>{var a,l;return(l=(a=r.current).onConnected)==null?void 0:l.call(a,o)},onReconnectStarted:()=>{var o,a;return(a=(o=r.current).onReconnectStarted)==null?void 0:a.call(o)},onReconnectSucceeded:()=>{var o,a;return(a=(o=r.current).onReconnectSucceeded)==null?void 0:a.call(o)},onReconnectFailed:()=>{var o,a;return(a=(o=r.current).onReconnectFailed)==null?void 0:a.call(o)},onConnectionLost:()=>{var o,a;return(a=(o=r.current).onConnectionLost)==null?void 0:a.call(o)},onConnectionDelayed:o=>{var a,l;return(l=(a=r.current).onConnectionDelayed)==null?void 0:l.call(a,o)}});return e.addConnectionHandler(n,s),()=>{e.removeConnectionHandler(n)}},[e,n])};function sc(e){const{chatSDK:t,logger:n,aiAgentId:r,_aiAgentSDK:s}=Pe(),{sdkUser:o,statsTrackers:a}=bt(),l=gn(),[u,d]=c.useState(void 0),[m,h]=c.useState(void 0),[f,v]=c.useState(!1);function C(E){E.isAIAgent&&!E.conversation&&(v(!0),s.initConversationIfNeeded(E).finally(()=>v(!1)))}async function y(){var E,_,b;if(!o){n.debug("useChannel.getChannel: no sdk user, skip fetching channel");return}if(n.debug("useChannel.getChannel: start"),d(void 0),h(void 0),v(!1),e){a.initialRender.onGetChannelStart();try{n.debug("useChannel.getChannel: get channel",e);const A=await t.groupChannel.getChannel(e);C(A),d(A),a.initialRender.onGetChannelComplete((E=A.conversation)==null?void 0:E.id),A.url===((_=s.session)==null?void 0:_.activeChannel.url)&&s.session._updateActiveChannel({url:A.url,status:De(A)?"closed":"open",conversationStatus:(b=A.conversation)==null?void 0:b.status}),n.debug("useChannel.getChannel: fetched channel",A)}catch(A){a.initialRender.onGetChannelError(A),A instanceof ue.SendbirdError&&h(A),n.error("useChannel.getChannel: error",A)}}}return c.useEffect(()=>{y()},[t,o,e,r]),pn(t,{async onReconnectSucceeded(){if(!u)return;const E=await u.refresh();C(E),d(E)}}),Et(t,{onChannelChanged:E=>{E.isGroupChannel()&&E.url===e&&(n.debug("useChannel.onChannelChanged: channel changed",E.url),d(E),l())}}),{channel:u,channelFetchError:m,getChannel:y,isInitializingConversation:f}}const oc=new Set(["suggested_replies","steward","system"]),ic=e=>{const t=e==null?void 0:e.lastMessage,n=t==null?void 0:t.extendedMessagePayload,r=n==null?void 0:n.user_input_disabled_by;if(!(!r||!oc.has(r)))return r},ac=e=>{var a;const t=e==null?void 0:e.lastMessage;if(!t||!e)return!1;const n=t.extendedMessagePayload,r=n==null?void 0:n.form,s=!!r&&!r.submitted_at&&!r.canceled_at,o=e.isAIAgent&&!!((a=e.conversation)!=null&&a.handedOverAt);return s&&!o},lc=()=>{const{chatSDK:e,networkStateAdapter:t}=Pe(),[n,r]=c.useState(()=>t?t.isOnline()?"connected":"reconnecting":"connected");return pn(e,{onConnected:()=>r("connected"),onDisconnected:()=>r("disconnected"),onReconnectStarted:()=>r("reconnecting"),onReconnectSucceeded:()=>r("connected"),onReconnectFailed:()=>r("disconnected"),onConnectionLost:()=>r("reconnecting")}),c.useEffect(()=>{if(t)return t.subscribe(s=>{if(!s){r("reconnecting");return}r(o=>o==="reconnecting"&&e.connectionState===ue.ConnectionState.OPEN?"connected":o)})},[t,e]),n},cc=3e4,uc=({shouldApply:e,lastMessage:t,isBlockedWhileAIResponding:n,currentUserId:r})=>{const[s,o]=c.useState(!1),a=c.useRef(null),l=t&&_t(t,r)?t.createdAt:0;return c.useEffect(()=>{const u=()=>{a.current&&(clearTimeout(a.current),a.current=null),o(!1)},d=f=>{a.current&&clearTimeout(a.current),o(!0),a.current=setTimeout(()=>{o(!1),a.current=null},f)},m=Date.now()-l,h=cc-m;return n||h<=0?u():d(h),()=>{a.current&&clearTimeout(a.current)}},[n,l]),s&&e},Io=e=>{const{chatSDK:t}=Pe(),[n,r]=c.useState([]);return Et(t,{onTypingStatusUpdated(s){if(s.url===(e==null?void 0:e.url)){const o=s.getTypingUsers();r(o)}}}),n},dc=({channel:e,lastMessage:t,aiAgentUserId:n,isStreamAnimating:r})=>{const[s,o]=c.useState(!1),a=Io(e);return c.useEffect(()=>{if(!t)return;const l=a.some(d=>d.userId===n),u=_t(t,n)&&(qe.isStreaming(t)||r);o(u||l)},[a,t,n,r]),s},mc=({channel:e,messages:t,isStreamAnimating:n,isInitializingConversation:r})=>{const{aiAgentInfo:s,userSession:o}=bt(),a=lc(),l=dc({channel:e,lastMessage:zr(t,[ze.SendingStatus.SUCCEEDED]),aiAgentUserId:(s==null?void 0:s.userId)??"",isStreamAnimating:n}),u=uc({shouldApply:!!(e!=null&&e.isAIAgent)&&!it(e),isBlockedWhileAIResponding:l,lastMessage:zr(t,[ze.SendingStatus.PENDING,ze.SendingStatus.SUCCEEDED]),currentUserId:(o==null?void 0:o.userId)??""}),d=h=>h===""?{disabled:!1,disabledBy:"",focusPolicy:"auto"}:h==="ai_responding"?{disabled:!0,disabledBy:h,focusPolicy:"preserve"}:{disabled:!0,disabledBy:h,focusPolicy:"release"};if(!e||a==="disconnected")return d("unavailable");if(a==="reconnecting")return d("reconnecting");if(De(e))return d("conversation_closed");if(Ua(e))return d("handoff_pending");if(ac(e))return d("form_active");const m=ic(e);return d(m||(l||u||r?"ai_responding":""))},hc=()=>{const[e,t]=c.useState(new Set),n=c.useCallback(s=>{t(o=>{if(o.has(s))return o;const a=new Set(o);return a.add(s),a})},[]),r=c.useCallback(s=>{t(o=>{if(!o.has(s))return o;const a=new Set(o);return a.delete(s),a})},[]);return{isAnimating:e.size>0,start:n,stop:r}},{Provider:fc}=Ee("AIAgentConversation");function gc({children:e,channelUrl:t,onChannelDeleted:n,onMessagesReceived:r,onMessagesUpdated:s,onConversationClosedStatusChanged:o,onConversationClosedViaDispatcher:a,onBeforeSendMessage:l,onAfterSendMessage:u=he,shouldMarkAsRead:d=!0,shouldCountNewMessages:m=()=>!1,sortComparator:h}){var D;const f=()=>d&&(_==null?void 0:_.markAsRead()),{_aiAgentSDK:v,chatSDK:C,logger:y,dispatcher:E}=Pe(),{channel:_,channelFetchError:b,getChannel:A,isInitializingConversation:M}=sc(t),{statsTrackers:B}=bt();c.useEffect(()=>{if(t)return B.initialRender.setChannelUrl(t),()=>{B.initialRender.cleanup()}},[t,B]);const w=Fl(C,_,{replyType:ze.ReplyType.ONLY_REPLY_TO_CHANNEL,shouldCountNewMessages:m,onChannelDeleted:n,onMessagesReceived:F=>r==null?void 0:r(F),onMessagesUpdated:F=>s==null?void 0:s(F),onCacheResult:F=>B.initialRender.onCacheResult(F),onApiResult:F=>B.initialRender.onApiResult(F),logger:y,markAsRead:f,sortComparator:h}),O=hc(),k=mc({channel:_,messages:w.messages,isStreamAnimating:O.isAnimating,isInitializingConversation:M});c.useEffect(()=>{f()},[d,_]);const R=De(_);c.useEffect(()=>{o==null||o(R)},[R,o]),c.useEffect(()=>{const F=async q=>{const H=typeof(q==null?void 0:q.channelUrl)=="string";_&&H&&q.channelUrl!==_.url||(y.debug("conversation.dispatcher: try to close conversation",_),_!=null&&_.conversation&&_.conversation.status===Ne.ConversationStatus.OPEN&&(await _.closeConversation(),a==null||a()))};return E.subscribe(Ve.ConversationClose,F),()=>{E.unsubscribe(Ve.ConversationClose,F)}},[E,_,y,(D=_==null?void 0:_.conversation)==null?void 0:D.status,a]);const W={conversation:(_==null?void 0:_.conversation)??void 0,actions:{setUserMemoryState:v.setUserMemoryState},channelSource:{channel:_,error:b,refetch:()=>A(),closeConversation:async()=>{De(_)||await(_==null?void 0:_.closeConversation())}},messageSource:{messages:w.messages,newMessages:w.newMessages,initialized:w.initialized,subscribeMessageEvents:w.subscribeMessageEvents,loadPrevious:()=>w.loadPrevious(),loadNext:()=>w.loadNext(),deleteMessage:F=>w.deleteMessage(F),resendMessage:F=>w.resendMessage(F),resetNewMessages:()=>w.resetNewMessages(),sendUserMessage:async F=>{var H;if(((H=_==null?void 0:_.conversation)==null?void 0:H.status)===Ne.ConversationStatus.CLOSED)throw new Error("Conversation is closed");l&&(F=await l(F));const q=await w.sendUserMessage(F,u);return u==null||u(q),q},sendFileMessage:async F=>{var H;if(((H=_==null?void 0:_.conversation)==null?void 0:H.status)===Ne.ConversationStatus.CLOSED)throw new Error("Conversation is closed");l&&(F=await l(F));const q=await w.sendFileMessage(F,u);return u==null||u(q),q},sendMultipleFilesMessage:async F=>{var H;if(((H=_==null?void 0:_.conversation)==null?void 0:H.status)===Ne.ConversationStatus.CLOSED)throw new Error("Conversation is closed");l&&(F=await l(F));const q=await w.sendMultipleFilesMessage(F,u);return u==null||u(q),q}},state:{streamAnimation:O,input:k}};return i.createElement(fc,{value:W},e)}function pc(e,t){var v,C,y,E,_,b,A,M,B,w;const[n,r]=c.useState(!1),[s,o]=c.useState(null),[a,l]=c.useState([]),[u,d]=c.useState(null),m=c.useRef(!1),h=c.useCallback(async()=>{if(!m.current&&e.currentUser){m.current=!0,r(!1),o(null),l([]);try{u==null||u.dispose();const O=new mo(e,t);O.setConversationListCollectionHandler({onChannelsAdded:()=>{l(O.channels)},onChannelsUpdated:()=>{l(O.channels)},onChannelsDeleted:()=>{l(O.channels)}}),await O.loadMore(),d(O),o(null)}catch(O){d(null),o(O)}finally{r(!0),m.current=!1}}},[e,e.currentUser,(v=t.filter)==null?void 0:v.aiAgentChannelFilter,(y=(C=t.filter)==null?void 0:C.aiAgentConversationStatusFilter)==null?void 0:y.join(),(_=(E=t.filter)==null?void 0:E.aiAgentIds)==null?void 0:_.join(),(b=t.filter)==null?void 0:b.deskChannelFilter,(M=(A=t.filter)==null?void 0:A.pinnedChannelUrls)==null?void 0:M.join(),(B=t.filter)==null?void 0:B.copilotConversationOnly,(w=t.filter)==null?void 0:w.copilotSupportChannelUrl,t.limit]),f=c.useCallback(async()=>{if(u)try{await u.loadMore()}catch(O){o(O)}},[u]);return pn(e,{onConnected:()=>h()}),c.useEffect(()=>{h()},[h]),c.useEffect(()=>()=>{m.current=!1,u==null||u.dispose()},[u]),{initialized:n,error:s,channels:a,loadMore:f}}const{Provider:_c}=Ee("AIAgentConversationList");function Ec({conversationListLimit:e,conversationListFilter:t,children:n}){var h,f;const{chatSDK:r,aiAgentId:s,queryParams:o}=Pe(),a={aiAgentIds:[s],aiAgentConversationStatusFilter:[Ne.ConversationStatus.CLOSED,Ne.ConversationStatus.OPEN]},l=e??((h=o==null?void 0:o.conversationListParams)==null?void 0:h.limit),u={...a,...(f=o==null?void 0:o.conversationListParams)==null?void 0:f.filter,...t},d=pc(r,{limit:l,filter:u}),m={listSource:{initialized:d.initialized,error:d.error??void 0,channels:d.channels,loadMore:()=>d.loadMore()}};return i.createElement(_c,{value:m},n)}function bc(e){let t="pending",n=e.then(r=>{t="resolved",n=r}).catch(r=>{t="rejected",n=r});return{get value(){if(t==="resolved")return n;throw n}}}const{Provider:Cc,useContext:vc}=Ee("MessageTemplateFetching");function yc({children:e,internalVariables:t}){const n=c.useRef({}),r=c.useRef({}),[s,o]=c.useState({}),a=c.useCallback((d,m)=>{o(h=>({...h,[d]:{fetching:!1,error:!1,...h[d],...m}}))},[]),l=c.useCallback(async({onRequestTemplate:d,onGetCachedTemplate:m,templateKey:h,suspense:f=!1})=>{const v=m(h);if(v)return v;const C=r.current[h];if(C)return C;f||a(h,{fetching:!0});const y=d(h).catch(E=>{throw f||a(h,{error:!0}),E}).finally(()=>{f||a(h,{fetching:!1}),delete r.current[h]});return r.current[h]=y,y},[a]),u={internalVariables:t,fetchTemplate:l,suspend:(d,m)=>{if(n.current[d])return n.current[d];const h=bc(m());return n.current[d]=h,h},getIsFetching:d=>{var m;return((m=s[d])==null?void 0:m.fetching)??!1},getHasError:d=>{var m;return((m=s[d])==null?void 0:m.error)??!1}};return i.createElement(Cc,{value:u},e)}const Sc="remove_powered_by",_r=(e,t)=>{var s,o;const{chatSDK:n}=Pe(),{aiAgentInfo:r}=bt();if(e==="handoff-button"){const a=!!((s=t==null?void 0:t.conversation)!=null&&s.handoff);return!!(t!=null&&t.isAIAgent)&&!!(r!=null&&r.showHandoffButton)&&a&&ur(t)}if(e==="special-notice")return!!(t!=null&&t.isAIAgent)&&!!(r!=null&&r.specialNoticeEnabled)&&!!(r!=null&&r.specialNotice);if(e==="powered-by"){const a=(o=n==null?void 0:n.appInfo)==null?void 0:o.applicationAttributes;return c.useMemo(()=>!(Array.isArray(a)&&a.includes(Sc)),[a])}throw new Error("Unsupported feature")},Ac={required:"This question is required",minLength:e=>`Minimum ${e} characters required`,maxLength:e=>`Maximum ${e} characters allowed`,min:e=>`Minimum value is ${e}`,max:e=>`Maximum value is ${e}`,minSelect:e=>`Select at least ${e} options`,maxSelect:e=>`Select at most ${e} options`,regex:"Invalid format",invalidSelection:"Invalid selection"},xc={getValueOrDefault:e=>e.value??e.default_value??null,validate:(e,t,n)=>{const r=t;if(e.required&&(!r||r.trim()===""))return{isValid:!1,error:n.required};if(!r)return{isValid:!0};const{rules:s}=e;if(s){if(s.min_length!==void 0&&r.length<s.min_length)return{isValid:!1,error:typeof n.minLength=="function"?n.minLength(s.min_length):n.minLength};if(s.max_length!==void 0&&r.length>s.max_length)return{isValid:!1,error:typeof n.maxLength=="function"?n.maxLength(s.max_length):n.maxLength};if(s.regex&&!new RegExp(s.regex).test(r))return{isValid:!1,error:n.regex}}return{isValid:!0}}},Tc={getValueOrDefault:e=>e.value??e.default_value??null,validate:(e,t,n)=>{const r=t;if(e.required&&r===null)return{isValid:!1,error:n.required};if(r===null)return{isValid:!0};const{rules:s}=e;if(s){if(s.min!==void 0&&r<s.min)return{isValid:!1,error:typeof n.min=="function"?n.min(s.min):n.min};if(s.max!==void 0&&r>s.max)return{isValid:!1,error:typeof n.max=="function"?n.max(s.max):n.max}}return{isValid:!0}}},Ic={getValueOrDefault:e=>e.value??e.default_value??null,validate:(e,t,n)=>{const r=t;return e.required&&!r?{isValid:!1,error:n.required}:r&&!e.options.includes(r)?{isValid:!1,error:n.invalidSelection}:{isValid:!0}}},wc={getValueOrDefault:e=>e.values??e.default_values??null,validate:(e,t,n)=>{const r=t;if(e.required&&(!r||r.length===0))return{isValid:!1,error:n.required};if(!r||r.length===0)return{isValid:!0};if(r.filter(a=>!e.options.includes(a)).length>0)return{isValid:!1,error:n.invalidSelection};const{rules:o}=e;if(o){if(o.min_select!==void 0&&r.length<o.min_select)return{isValid:!1,error:typeof n.minSelect=="function"?n.minSelect(o.min_select):n.minSelect};if(o.max_select!==void 0&&r.length>o.max_select)return{isValid:!1,error:typeof n.maxSelect=="function"?n.maxSelect(o.max_select):n.maxSelect}}return{isValid:!0}}},Mc={text:xc,number:Tc,"single-select":Ic,"multi-select":wc},kc={getValueOrDefault:()=>null,validate:()=>({isValid:!1})};function wo(e){return Mc[e.type]||kc}function cs(e){return wo(e).getValueOrDefault(e)}function Rc(e,t,n={}){const r={...Ac,...n};return wo(e).validate(e,t,r)}const Oc=(e,t={})=>{const{labels:n={},onSubmit:r,onCancel:s}=t,[o,a]=c.useState({}),[l,u]=c.useState(()=>{const y={};return e.fields.forEach(E=>{y[E.key]=cs(E)}),y}),d=c.useMemo(()=>e.submitted_at?"submitted":e.canceled_at?"canceled":"draft",[e.submitted_at,e.canceled_at]);c.useEffect(()=>{if(d==="submitted"||d==="canceled"){const y={};let E=!1;e.fields.forEach(_=>{const b=cs(_);JSON.stringify(l[_.key])!==JSON.stringify(b)&&(E=!0),y[_.key]=b}),E&&u(y)}},[d]);const m=(y,E)=>{u(_=>({..._,[y]:E})),a(_=>({..._,[y]:void 0}))},h=e.fields.map(y=>{var b,A,M;const E=l[y.key]??null,_={key:y.key,label:y.label,error:o[y.key],required:y.required};return y.type==="text"?{..._,type:"text",layout:y.layout,value:E,...y.placeholder&&{placeholder:y.placeholder},...((b=y.rules)==null?void 0:b.max_length)&&{maxLength:y.rules.max_length}}:y.type==="number"?{..._,type:"number",layout:y.layout,value:E,...y.placeholder&&{placeholder:y.placeholder},...((A=y.rules)==null?void 0:A.max)&&{max:y.rules.max}}:y.type==="single-select"?{..._,type:"single-select",layout:y.layout,value:E,options:y.options}:y.type==="multi-select"?{..._,type:"multi-select",layout:y.layout,value:E,options:y.options,...((M=y.rules)==null?void 0:M.max_select)&&{maxSelect:y.rules.max_select}}:{..._,type:"unknown",layout:"default",value:null}});return{state:d,fields:h,getField:y=>h.find(E=>E.key===y),updateFieldValue:m,submit:async()=>{const y={};let E=!1;for(const _ of e.fields){const b=l[_.key]??null,A=Rc(_,b,n);A.isValid||(y[_.key]=A.error,E=!0)}if(a(y),!E&&r){const _={};e.fields.forEach(b=>{_[b.key]=l[b.key]??null}),await r(_)}},cancel:async()=>{await(s==null?void 0:s())}}},Lc=e=>{const{chatSDK:t,handlers:n,logger:r}=Pe(),{aiAgentInfo:s}=bt(),o=c.useRef(new Set),a=c.useRef(new Set),l=(m,h)=>{if(!(n!=null&&n.onCustomEvent)||!(s!=null&&s.userId)||!_t(m,s.userId))return;const f=m.messageId;if(qe.isStreaming(m)){a.current.add(f);return}h==="updated"&&!a.current.has(f)||(r.debug("useCustomEventForMessageReceive: bot-message-received",m),n.onCustomEvent({type:"bot-message-received",data:{message:m}}),a.current.delete(f))},u=c.useCallback(m=>{if(n!=null&&n.onCustomEvent&&m.isAdminMessage()&&m.customType==="user_action_required"&&!o.current.has(m.messageId)){const h=zn(m.data);Array.isArray(h.history)&&h.history.length===0&&(r.debug("useCustomEventForMessageReceive: user_action_required",h),n.onCustomEvent({type:"user-action-requested",data:h}),o.current.add(m.messageId))}},[n,r]),d=(m,h,f)=>{m.url===e&&(l(h,f),u(h))};return Et(t,{onMessageReceived:(m,h)=>d(m,h,"received"),onMessageUpdated:(m,h)=>d(m,h,"updated")}),{checkForUserActionRequired:u}},Nc=e=>{if(e==null||typeof e!="object")return;const t="thinking_message"in e?e.thinking_message:void 0;return typeof t=="string"&&t?t:void 0},Mo=e=>{const{aiAgentInfo:t}=bt(),n=Io(e);if(De(e))return null;const r=n[0];if(!r)return null;const s=r.userId===(t==null?void 0:t.userId),o=s?Nc(r.metaData):void 0;return{user:s?t:r,isBot:s,thinkingMessage:o}},Dc=(e,t,{enabled:n=!0,idleMs:r=1e3}={})=>{const s=c.useRef(null),o=c.useRef(t),a=c.useRef(t),l=c.useRef(!1);o.current=t,c.useEffect(()=>{if(s.current&&(clearTimeout(s.current),s.current=null),!n||!e){(l.current?a.current:o.current)(!1),l.current=!1,a.current=o.current;return}l.current=!0,a.current=o.current,a.current(!0),s.current=setTimeout(()=>{s.current=null,a.current(!1),l.current=!1,a.current=o.current},r)},[n,r,e]),c.useEffect(()=>()=>{s.current&&(clearTimeout(s.current),s.current=null),(l.current?a.current:o.current)(!1),l.current=!1,a.current=o.current},[])},$c=(e=1e4)=>{const t=new Map;let n=e;return{shouldAnnounce:l=>{const u=Date.now(),d=t.get(l);return d!==void 0&&u-d<n?!1:(t.set(l,u),!0)},setInterval:l=>{n=l},reset:()=>{t.clear()}}},Pc=(e,t,n=1e4,r=!0)=>{const s=c.useRef(null),o=c.useRef(null),a=c.useRef(!1);s.current||(s.current=$c(n));const l=(e==null?void 0:e.nickname.trim())||null,u=(e==null?void 0:e.userId)??l;c.useEffect(()=>{var d;(d=s.current)==null||d.setInterval(n)},[n]),c.useEffect(()=>{var h;if(!r){a.current=!1,o.current=u;return}if(!u||!l){a.current=!1,o.current=null;return}const d=!a.current,m=o.current!==u;a.current=!0,o.current=u,!(!d&&!m)&&(h=s.current)!=null&&h.shouldAnnounce(u)&&t(l)},[u,l,r,t])};var Ke=(e=>(e.AI_AGENT_CSAT_5="AI_AGENT_CSAT_5",e.AI_AGENT_CSAT_5_WITH_CRE="AI_AGENT_CSAT_5_WITH_CRE",e.HELPDESK_CSAT_5="HELPDESK_CSAT_5",e))(Ke||{});const Fc=({csat:e,csatExpireAt:t,csatPayload:n,isSubmitInFlight:r})=>{const s=!!n&&n.visibility&&!!Ke[n.type],o=!r&&typeof e!="number"&&_o(t),a=gn();return c.useEffect(()=>{if(!s||typeof e=="number"||t==null||o)return;const l=t-Date.now();if(l<=0&&r)return;const u=setTimeout(a,Math.max(0,l));return()=>clearTimeout(u)},[a,e,t,o,s,r]),{isRenderableCSAT:s,isExpiredNow:o}},Bc=({csat:e,csatExpireAt:t,csatPayload:n,announceStatus:r,onSubmittedAnnounced:s,isSubmitInFlight:o=!1})=>{const{isRenderableCSAT:a,isExpiredNow:l}=Fc({csat:e,csatExpireAt:t,csatPayload:n,isSubmitInFlight:o}),u=(n==null?void 0:n.csat_submitted_label)??"",d=c.useRef(a&&typeof e=="number"),m=c.useRef(a&&l);return c.useEffect(()=>{a&&u&&(typeof e!="number"||d.current||(d.current=!0,r({event:"csatSubmitted",submittedLabel:u}),s==null||s()))},[r,e,a,s,u]),c.useEffect(()=>{a&&l&&(m.current||(m.current=!0,r({event:"csatExpired"})))},[r,l,a]),{isExpiredNow:l,isRenderableCSAT:a}},Er=({channel:e,userSession:t,aiAgentInfo:n})=>{if(!t||!n||!e)return{fallbackIcon:"delight",url:void 0,title:""};const r=po(e,t.userId),s={ai(o){return{fallbackIcon:o,url:n.profileUrl,title:n.nickname}},human(o){return{fallbackIcon:o,url:r==null?void 0:r.profileUrl,title:(r==null?void 0:r.nickname)||n.nickname}},channel(o){return{fallbackIcon:o,url:e==null?void 0:e.coverUrl,title:(e==null?void 0:e.name)??""}}};return e.isAIAgent?it(e)?s.human("agent"):s.ai("delight"):e.isDesk?s.human("agent"):s.channel("user")},us=e=>c.useReducer((t,n)=>({...t,...n}),e),Uc=new Set(["free_text","single_choice"]),Hc=({csatPayload:e,type:t,initialCsat:n,initialCsatReason:r,initialIsResolved:s})=>{const[o,a]=us({csatType:t,csat:n,csatReason:r,isResolved:s}),[l,u]=us({followUpItem:!1}),d=c.useMemo(()=>{var E;const v=o.csat,C=typeof v=="number",y=(E=e.follow_up)==null?void 0:E.find(_=>C?_.scores.includes(v):_.always_visible??!1);if(Uc.has(y==null?void 0:y.response_type))return y},[o.csat,e.follow_up]),m=(()=>{var v;if(typeof n=="number")return"submitted";if((t===Ke.AI_AGENT_CSAT_5||t===Ke.HELPDESK_CSAT_5)&&typeof o.csat=="number")return"submittable";if(t===Ke.AI_AGENT_CSAT_5_WITH_CRE){const C=typeof o.csat=="number",y=!((v=e.cre)!=null&&v.required)||typeof o.isResolved=="boolean";if(C&&y)return"submittable"}return"unsubmittable"})(),h=c.useCallback(()=>typeof o.csat>"u"?!1:d!=null&&d.required&&!o.csatReason?(u({followUpItem:!0}),!1):!0,[o,d,u]);return c.useEffect(()=>{r||(a({csatReason:""}),u({followUpItem:!1}))},[r,d,a,u]),{params:o,setParams:a,error:l,setError:u,followUpItem:d,state:m,validateParams:h,itemProps:{csatPayload:e,state:m,submitted:m==="submitted"}}},Rn=5,Gc=250,Vc=50,ds=e=>Math.max(0,e-Vc),zc=e=>e<1e3?{speed:Rn*.5,chunkSize:2}:e<2e3?{speed:Rn*.8,chunkSize:2}:{speed:Rn*.6,chunkSize:3},Yc=e=>{const{text:t,enabled:n=!1,onAnimationStart:r,onAnimationProgress:s,onAnimationComplete:o}=e,[a,l]=c.useState(()=>ds(t.length)),u=c.useRef(null),d=c.useRef({startTime:0,lastUpdate:0,lastProgressCall:0}).current,m=c.useRef({onStart:r,onProgress:s,onComplete:o}).current,h=c.useRef({startCalled:!1,completeCalled:!1}).current,f=c.useRef({initialEnabled:n,textLength:t.length,enabled:n}).current,v=n,C=a<t.length,y=f.initialEnabled&&(v||C);return c.useLayoutEffect(()=>{m.onStart=r,m.onProgress=s,m.onComplete=o,f.textLength=t.length,f.enabled=n}),c.useLayoutEffect(()=>{var E;f.initialEnabled&&(h.startCalled||(h.startCalled=!0,(E=m.onStart)==null||E.call(m)),l(_=>t.length<_?t.length:_))},[t]),c.useEffect(()=>{if(!f.initialEnabled)return;let E=ds(t.length);d.lastUpdate=0,d.startTime=0,d.lastProgressCall=0;const _=b=>{var W;d.lastUpdate===0&&(d.lastUpdate=b,d.startTime=b,d.lastProgressCall=b);const A=f.textLength,M=b-d.lastUpdate,B=b-d.startTime,{speed:w,chunkSize:O}=zc(B),k=w*O;M>=k&&E<A&&(E=Math.min(E+O,A),l(E),d.lastUpdate=b),b-d.lastProgressCall>=Gc&&(d.lastProgressCall=b,(W=m.onProgress)==null||W.call(m)),(E<A||f.enabled)&&(u.current=requestAnimationFrame(_))};return u.current=requestAnimationFrame(_),()=>{var b;u.current&&cancelAnimationFrame(u.current),h.startCalled&&!h.completeCalled&&(h.completeCalled=!0,(b=m.onComplete)==null||b.call(m))}},[]),c.useEffect(()=>{var A;const E=f.initialEnabled&&h.startCalled,_=!n,b=a>=t.length&&t.length>0;E&&_&&b&&!h.completeCalled&&(h.completeCalled=!0,(A=m.onComplete)==null||A.call(m))},[n,a,t.length]),{streamText:f.initialEnabled?t.slice(0,a):t,isAnimating:y}},ms={visible:!1,remainingTime:0,showDescription:!1,targetTimeMs:null},Wc=e=>({visible:!0,remainingTime:e,showDescription:!0,targetTimeMs:Date.now()+e*1e3}),qc=(e,t=Date.now())=>{if(!e.visible||e.targetTimeMs==null)return e;const n=Math.max(Math.ceil((e.targetTimeMs-t)/1e3),0);return n<=0?{...e,remainingTime:0,showDescription:!1,targetTimeMs:null}:e.remainingTime===n&&e.showDescription?e:{...e,remainingTime:n,showDescription:!0}},Kc=()=>{const{chatSDK:e}=Pe(),[t,n]=c.useState(ms),r=()=>n(ms);return pn(e,{onConnectionDelayed:s=>{s>0?n(Wc(s)):r()},onReconnectSucceeded:r,onConnected:r}),c.useEffect(()=>{if(!t.visible||!t.showDescription||t.targetTimeMs==null)return;const s=setTimeout(()=>{n(o=>qc(o))},1e3);return()=>clearTimeout(s)},[t.visible,t.showDescription,t.targetTimeMs,t.remainingTime]),{visible:t.visible,remainingTime:t.remainingTime,showDescription:t.showDescription}},jc=e=>{const t=Math.floor(e/60),n=e%60;return`${String(t).padStart(2,"0")}:${String(n).padStart(2,"0")}`},Xc=(e,t)=>{if(!t)return{beforeText:e,highlightedText:"",afterText:""};const n=e.indexOf(t);return n<0?{beforeText:e,highlightedText:"",afterText:""}:{beforeText:e.slice(0,n),highlightedText:t,afterText:e.slice(n+t.length)}},br=e=>e.replace(/\s+/g," ").trim(),Zc="Code block",ko=e=>`A11Y_INLINE_CODE_${e}`,Ro=e=>{let t="",n=e;for(;;){const r=n.match(/^([ \t]{0,3}>\s?)(.*)$/);if(r){t+=r[1],n=r[2];continue}break}return{blockquotePrefix:t,content:n}},Oo=e=>{const t=e.match(/^([ \t]{0,3}[-+*]\s+)(.*)$/);if(t)return{content:t[2],hasListPrefix:!0};const n=e.match(/^([ \t]{0,3}\d+[.)]\s+)(.*)$/);return n?{content:n[2],hasListPrefix:!0}:{content:e,hasListPrefix:!1}},Jc=e=>{const{blockquotePrefix:t,content:n}=Ro(e),{content:r}=Oo(n),s=r.match(/^[ \t]{0,3}([`~]{3,})(.*)$/);if(!s)return;const o=s[1],a=s[2],l=o[0];if(!(l!=="`"&&l!=="~"||!o.split("").every(u=>u===l))&&!(l==="`"&&a.includes("`")))return{char:l,blockquotePrefix:t,length:o.length}},Qc=(e,t)=>{const{blockquotePrefix:n,content:r}=Ro(e);if(n!==t.blockquotePrefix)return!1;const{content:s,hasListPrefix:o}=Oo(r);if(o)return!1;const a=s.match(/^[ \t]{0,3}([`~]{3,})[ \t]*$/);if(!a)return!1;const l=a[1];return l[0]===t.char&&l.length>=t.length&&l.split("").every(u=>u===t.char)},eu=(e,t,n)=>{let r=n;for(;r<e.length;){const s=e[r];if(s==="\\"&&r+1<e.length){r+=2;continue}if(s===t)return r;r+=1}return-1},tu=(e,t)=>{let n=1,r=t;for(;r<e.length;){const s=e[r];if(s==="\\"&&r+1<e.length){r+=2;continue}if(s==="["){n+=1,r+=1;continue}if(s==="]"&&(n-=1,n===0))return r;r+=1}return-1},nu=(e,t)=>{let n=t,r=1,s,o=!1,a=!1;for(;n<e.length&&r>0;){const l=e[n];if(l==="\\"&&n+1<e.length){n+=2;continue}if(s){l===s&&(s=void 0),n+=1;continue}if(r===1&&o&&/\s/.test(l)){a=!0,n+=1;continue}if(r===1&&a&&(l==='"'||l==="'")){s=l,n+=1;continue}if(l==="("){r+=1,o=!0,n+=1;continue}if(l===")"){r-=1,n+=1;continue}/\s/.test(l)||(o=!0),n+=1}return r===0?n:-1},ru=e=>{let t=0,n="";for(;t<e.length;){const r=eu(e,"[",t);if(r===-1){n+=e.slice(t);break}const s=tu(e,r+1);if(s===-1){n+=e.slice(t);break}if(r>0&&e[r-1]==="!"&&an(e,r-1)){n+=e.slice(t,s+1),t=s+1;continue}if(e[s+1]!=="("){n+=e.slice(t,s+1),t=s+1;continue}const o=r>0&&e[r-1]==="!"&&!an(e,r-1)?r-1:r;n+=e.slice(t,o);const a=e.slice(r+1,s),l=nu(e,s+2);if(l===-1){n+=e.slice(o);break}n+=a,t=l}return n},Lo=(e,t,n)=>{if(!/^\d+$/.test(t))return!1;const r=e.slice(-1);return/\d/.test(r)&&/\d/.test(n)},su=e=>e.replace(/(^|[^*\\])\*\*([^\s*](?:[\s\S]*?[^\s*])?)\*\*(?!\*)/g,(t,n,r,s,o)=>{const a=o[s+t.length]??"";return Lo(n,r,a)?t:`${n}${r}`}),ou=e=>e.replace(/(^|[^_\\])__([^\s_](?:[\s\S]*?[^\s_])?)__(?!_)/g,"$1$2"),iu=e=>e.replace(/(^|[^~\\])~~([^\s~](?:[\s\S]*?[^\s~])?)~~(?!~)/g,"$1$2"),au=e=>{let t=e;return t=t.replace(/(^|[^*\\])\*([^\s*](?:[\s\S]*?[^\s*])?)\*(?!\*)/g,(n,r,s,o,a)=>{const l=a[o+n.length]??"";return Lo(r,s,l)?n:`${r}${s}`}),t=t.replace(/(^|[\s([{"'])_([^_\s](?:[\s\S]*?[^_\s])?)_(?=$|[\s)\]}"'.,!?:;])/g,"$1$2"),t},lu=e=>e.replace(/\\([\\`*_[\]()#+.!~|-])/g,"$1"),cu=e=>{let t=e;return t=t.replace(/^\s{0,3}#{1,6}\s+/gm,""),t=t.replace(/^\s{0,3}>\s?/gm,""),t=t.replace(/^\s{0,3}(?!([-*_])(?:\s*\1){2,}\s*$)[-*+]\s+/gm,""),t=t.replace(/^\s{0,3}\d+[.)]\s+/gm,""),t},hs=e=>{const t=e.trim();if(!t.includes("|"))return!1;const n=t.split("|").map(r=>r.trim()).filter(Boolean);return n.length===0?!1:n.every(r=>/^:?-{3,}:?$/.test(r))},fs=e=>{const t=[];let n="",r=!1;for(const o of e.trim()){if(r){n+=o==="|"?"|":`\\${o}`,r=!1;continue}if(o==="\\"){r=!0;continue}if(o==="|"){const a=n.trim();a&&t.push(a),n="";continue}n+=o}r&&(n+="\\");const s=n.trim();return s&&t.push(s),t},uu=e=>{const t=e.split(`
2
+ `),n=[];let r=0;for(;r<t.length;){const s=t[r],o=t[r+1],a=fs(s);if(a.length>0&&o&&hs(o)){for(n.push(a.join(" ")),r+=2;r<t.length;){const l=t[r],u=fs(l);if(u.length===0||hs(l))break;n.push(u.join(" ")),r+=1}continue}n.push(s),r+=1}return n.join(`
3
+ `)},du=e=>e.replace(/^\s{0,3}(?:(?:-\s*){3,}|(?:\*\s*){3,}|(?:_\s*){3,})$/gm,""),mu=(e,t)=>{const n=e.split(`
4
+ `),r=[];let s=0;for(;s<n.length;){const o=n[s],a=Jc(o);if(!a){r.push(o),s+=1;continue}let l=-1;for(let u=s+1;u<n.length;u++)if(Qc(n[u],a)){l=u;break}if(l===-1){r.push(o),s+=1;continue}r.push(` ${t} `),s=l+1}return r.join(`
5
+ `)},an=(e,t)=>{let n=0,r=t-1;for(;r>=0&&e[r]==="\\";)n+=1,r-=1;return n%2===1},hu=e=>{const t=[];let n=0,r="";for(;n<e.length;){const s=e[n];if(s!=="`"||an(e,n)){r+=s,n+=1;continue}let o=n;for(;o<e.length&&e[o]==="`";)o+=1;const a=e.slice(n,o);let l=o,u=!1;for(;l<e.length&&e[l]!==`
6
+ `;){if(e[l]==="`"&&!an(e,l)&&e.startsWith(a,l)){const d=e.slice(o,l),m=t.push(d)-1;r+=ko(m),n=l+a.length,u=!0;break}l+=1}u||(r+=a,n=o)}return{text:r,inlineCodes:t}},No=(e,{codeBlockPlaceholder:t=Zc}={})=>{const n=e==null?void 0:e.replace(/\r\n?/g,`
7
+ `);if(!n)return;const r=[];let s=n;s=mu(s,t),s=cu(s);const o=hu(s);s=o.text,r.push(...o.inlineCodes),s=ru(s),s=su(s),s=ou(s),s=iu(s),s=au(s),s=uu(s),s=du(s),s=lu(s);for(let l=0;l<r.length;l++)s=s.replaceAll(ko(l),r[l]);return br(s)||void 0},fu=(e,t)=>{var s;const n=((s=e.name)==null?void 0:s.trim())||"",r=e.mimeType??"";return tt(r)?t.image:ar(r)?t.video:r==="application/pdf"||/\.pdf$/i.test(n)?t.pdf(n):t.document(n)},ln=e=>(e==null?void 0:e.trim())||"",gu=e=>(e?br(e):void 0)||void 0,Do=e=>({text:ln(e),format:"plain"}),pu=e=>({text:ln(e),format:"markdown"}),On=({markdownText:e,plainText:t,comparisonText:n})=>{const r=ln(e);return r&&r!==ln(n)?pu(r):Do(t)},It=({sender:e,message:t,messageFormat:n="plain",time:r,codeBlockPlaceholder:s})=>{const o=[],a=n==="markdown"?No(t,{codeBlockPlaceholder:s}):gu(t);if(e&&o.push(e),a&&o.push(a),r&&o.push(r),o.length!==0)return o.join(", ")},$o=(e,t)=>No(e==null?void 0:e.trim(),t!==void 0?{codeBlockPlaceholder:t}:void 0),_u=(...e)=>br(e.filter(Boolean).join(", "))||void 0,gs=(e,t,n,r)=>{if(!t||t===n)return e;const s=$o(t,r);return s?_u(e,s):e},Eu=(e,t)=>{var r,s,o,a;const n=(r=e.message)==null?void 0:r.trim();if(e.isFileMessage()){const l=((s=e.name)==null?void 0:s.trim())||"",u=fu({name:l,mimeType:e.type},t);return gs(u,n,l,t.codeBlockPlaceholder)}if(e.isMultipleFilesMessage()){const l=e.fileInfoList??[],u=l.length;if(u===0)return;const d=((a=(o=l[0])==null?void 0:o.fileName)==null?void 0:a.trim())||"",h=l.every(f=>{var v;return(v=f.mimeType)==null?void 0:v.startsWith("image")})?t.receivedFilesImageCount(u):t.multipleFilesCount(u);return gs(h,n,d,t.codeBlockPlaceholder)}return $o(n,t.codeBlockPlaceholder)},bu=(e,t={})=>{const{throttleMs:n=1e3,isSuppressed:r,maxOrderedQueueSize:s=10}=t,o=Math.max(1,s);let a=null;const l=[];let u=null,d=null,m=null,h=!1,f=0;const v=(k,R,W)=>({text:k,ignoreSuppression:R,queueOrder:f++,dedupeKey:W}),C=()=>{const k=l[0]??null,R=a;return k&&R?R.queueOrder<k.queueOrder?(a=null,R):l.shift()??null:k?l.shift()??null:R!==null?(a=null,R):null},y=()=>{for(;;){const k=C();if(!k)return null;if(!(!k.ignoreSuppression&&(r!=null&&r())))return k}},E=k=>{u=k.text,d=k.dedupeKey??null,h=!0,e(k.text),m=setTimeout(()=>{m=null,h=!1;const R=y();R&&E(R)},n)},_=k=>{u=k.text,d=k.dedupeKey??null,e(k.text)},b=(k,R,W,D)=>R!=null&&D!=null?R===D:R==null&&D==null?k!=null&&k===W:!1,A=(k,R,W)=>{if(!k||!R&&(r!=null&&r()))return;const D=W==null?void 0:W.dedupeKey;if(!(h&&b(k,D,u,d)))if(h){if(((W==null?void 0:W.mode)??"latestOnly")==="ordered"){const q=l[l.length-1];if(q&&b(k,D,q.text,q.dedupeKey))return;l.push(v(k,R,D)),l.length>o&&l.shift();return}a=v(k,R,D)}else a=null,E(v(k,R,D))};return{announce:(k,R)=>{A(k,!1,R)},announceIgnoringSuppression:(k,R)=>{A(k,!0,R)},flush:()=>{const k=[];let R=C();for(;R!==null;)k.push(R),R=C();if(m!==null&&(clearTimeout(m),m=null),h=!1,k.length!==0)for(const W of k)_(W)},destroy:()=>{m!==null&&(clearTimeout(m),m=null),a=null,l.length=0,u=null,d=null,h=!1}}},Cu=e=>{switch(e){case"newMessage":case"conversationClosed":case"csatDisplayed":case"csatSubmitted":case"csatExpired":return"ordered";default:return"latestOnly"}},vu=(e,t)=>e.screen==="conversationList"?typeof e.conversationCount=="number"?t.screenConversationListWithCount(e.conversationCount):t.screenConversationListNoCount:[e.agentName?t.screenConversationWithAgent(e.agentName):t.screenConversation,e.isClosed?t.conversationClosed:null,e.isClosed&&e.hasCSAT?t.csatDisplayed:null,e.isEmpty?t.emptyState:null].filter(r=>!!r).join(". "),yu=(e,t)=>{switch(e.event){case"newMessage":return e.body!==void 0||e.time!==void 0?[t.newMessage(1),e.time,e.senderName,e.body].filter(r=>!!r).join(", "):e.senderName?t.newMessageFromSender(e.senderName,1):t.newMessage(1);case"typing":return t.typing(e.agentName??"");case"sendFailed":return t.sendFailed;case"agentConnected":return t.agentConnected(e.agentName??"");case"conversationClosed":return t.conversationClosed;case"csatDisplayed":return t.csatDisplayed;case"csatSubmitted":return e.submittedLabel;case"csatExpired":return t.csatExpired;case"emptyState":return t.emptyState;case"inputDisabled":return t.inputDisabled}},Su=(e,t)=>{switch(e.type){case"fileSizeExceeded":return t.fileSizeExceeded(e.maxSizeMB??25);case"sendFailed":return t.sendFailed;case"csatFormError":return t.csatFormError;case"generic":return e.message}},Au=(e,t)=>!t||!ot(e)||e.sender.userId!==t?null:e.reqId||(e.messageId>0?String(e.messageId):null),xu=(e,t)=>ke.isAdmin(e)?ke.isCSAT(e):"sender"in e?e.sender.userId!==t:!1,Tu=e=>"messageId"in e&&e.messageId>0?String(e.messageId):"reqId"in e&&typeof e.reqId=="string"&&e.reqId.length>0?e.reqId:null,Iu=e=>e===ue.CollectionEventSource.EVENT_MESSAGE_RECEIVED||e===ue.CollectionEventSource.EVENT_MESSAGE_UPDATED,wu=({isOpened:e,opensConversationList:t})=>e?t?"closeConversationList":"closeConversation":t?"openConversationList":"openConversation",Mu=(e,t)=>{switch(e){case"closeConversationList":return t.closeConversationList;case"closeConversation":return t.closeConversation;case"openConversationList":return t.openConversationList;case"openConversation":return t.openConversation}},ku=(e,t)=>{switch(e){case"closeConversation":return t.hintCloseConversation;case"openConversationList":return t.hintOpenConversationList;case"openConversation":return t.hintOpenConversation;default:return}},Ru=({intent:e,strings:t})=>({label:Mu(e,t),hint:ku(e,t)}),Ou="1.26.1",Be="sb-agent",_e={ENTRY:`${Be}-entry`,MODAL_ROOT:`${Be}-modal-root`,WINDOW:`${Be}-window`,LAUNCHER:`${Be}-launcher`,WINDOW_TITLE:`${Be}-window-title`},Po="data-sb-initial-focus",Fo="true",Lu=`[${Po}="${Fo}"]`,Bo={[Po]:Fo},Cr="data-sb-focus-trap-sentinel",Nu="true",Uo="data-sb-initial-focus-header",Ho="true",Du=`[${Uo}="${Ho}"]`,Go={[Uo]:Ho},Yt=2147483647,dt={MODAL:Yt-1,TOOLTIP:Yt-2,WINDOW:Yt-3,LAUNCHER:Yt-4},Vo=36,$u=100,Pu=Ou,vr="noopener noreferrer nofollow";function Fu(){return{isOnline:()=>navigator.onLine,subscribe:e=>{const t=()=>e(!0),n=()=>e(!1);return window.addEventListener("online",t),window.addEventListener("offline",n),()=>{window.removeEventListener("online",t),window.removeEventListener("offline",n)}}}}const Wt={};function Bu(){return{get:e=>{try{return localStorage.getItem(e)}catch{return Wt[e]??null}},set:(e,t)=>{try{localStorage.setItem(e,t)}catch{Wt[e]=t}},delete:e=>{try{localStorage.removeItem(e)}catch{delete Wt[e]}},getKeys:e=>{try{const t=[];for(let n=0;n<localStorage.length;n++){const r=localStorage.key(n);r&&r.startsWith(e)&&t.push(r)}return t}catch{return Object.keys(Wt).filter(t=>t.startsWith(e))}}}}const Uu={conversation:{input_placeholder:"Ask a question",input_placeholder_disabled:"Chat is unavailable in this channel",input_placeholder_steward:"Processing your request...",input_placeholder_wait_ai_agent_response:"Waiting for the agent's reply...",input_placeholder_active_form:"Please fill out the form to move forward.",input_placeholder_reconnecting:"Trying to reconnect. Refresh if persists.",unknown_message_type:"(Unknown message type)",powered_by:"Powered by",citation_title:"Source",start_new_conversation_label:"Start a conversation",scroll_to_new_messages_label:()=>"New message",failed_message_resend:"Retry",failed_message_remove:"Remove",file_upload_no_supported_files:"No supported file types available.",file_upload_replace_alert_title:"Replace attachment?",file_upload_replace_alert_description:"Uploading a different file type will replace the current one.",a11y_message_list:"Chat messages",a11y_scroll_to_bottom:"Scroll to bottom",a11y_scroll_to_new_messages:"Scroll to new messages",a11y_open_conversation_list:"Open conversation list",a11y_open_conversation:"Open conversation with Support",a11y_open_conversations:"Open conversations",a11y_close_conversation:"Close conversation",a11y_close_conversations:"Close conversations",a11y_menu:"Menu",a11y_message_input:"Message",a11y_send_message:"Send message",a11y_attach_file:"Attach file",a11y_close_messenger:"Close messenger",a11y_expand_messenger:"Expand messenger",a11y_collapse_messenger:"Collapse messenger",a11y_connect_agent:"Talk to human agent",a11y_message_sender_you:"You",a11y_suggested_reply:"Suggested reply",a11y_typing_indicator:"Typing",a11y_code_block_placeholder:"Code block",a11y_typing_format:e=>`${e} is typing`,a11y_message_failed:"Message send failed",a11y_new_messages_received:e=>`${e} new ${e===1?"message":"messages"} received`,a11y_new_messages_received_from_sender:(e,t)=>`${e}: ${t} new ${t===1?"message":"messages"} received`,a11y_agent_connected:e=>"Connected to human agent",a11y_conversation_closed:"Conversation has ended",a11y_file_image:e=>`Image file: ${e}`,a11y_file_video:e=>`Video file: ${e}`,a11y_file_document:e=>`Document file: ${e}`,a11y_received_file_image:"Image file",a11y_received_file_video:"Video file",a11y_received_file_pdf:e=>`PDF file: ${e}`,a11y_received_files_image_count:e=>`${e} ${e===1?"image":"images"}`,a11y_screen_conversation:"Conversation",a11y_screen_conversation_with_agent:e=>`Conversation with ${e}`,a11y_screen_conversation_list_no_count:"Conversation list",a11y_screen_conversation_list_with_count:e=>`Conversations, ${e} total`,a11y_csat_displayed:"Satisfaction survey displayed",a11y_empty_conversation:"No messages in this conversation",a11y_input_disabled:"Message input is disabled",a11y_file_size_exceeded:e=>`File exceeds size limit of ${e}MB`,a11y_csat_form_error:"Please complete the required fields",a11y_hint_send_message:"Sends the message",a11y_hint_open_conversation:"Opens the conversation",a11y_hint_open_conversations:"Opens conversations",a11y_hint_close_conversation:"Closes the conversation",a11y_hint_open_menu:"Opens the menu",a11y_hint_connect_to_agent:"Escalates to a human agent",a11y_hint_attach_file:"Opens file attachment options",a11y_hint_view_new_messages:"Scrolls to new messages",a11y_hint_open_file:"Opens the file",a11y_hint_open_image:"Opens the image",a11y_hint_send_reply:"Sends this reply",image_viewer_default_title:"Image",a11y_image_viewer_close:"Close image viewer",a11y_image_viewer_previous:"Previous image",a11y_image_viewer_next:"Next image",a11y_image_viewer_download:"Download image",attachment_document:"Files"},conversation_list:{header_title:"Conversations",ended:"Ended",system_message:"System message",footer_title:"Start a conversation",multiple_files_count:e=>`${e} ${e===1?"file":"files"}`,a11y_conversation_item:(e,t,n,r)=>`${e}, ${t}, ${n}, ${r} unread ${r===1?"message":"messages"}`},date_format:{just_now:"Just now",minutes_ago:e=>`${e} minutes ago`,hours_ago:e=>`${e} hours ago`,date_short:"MM/dd/yyyy",date_separator:"MMMM dd, yyyy",message_timestamp:"p"},csat:{title:"Your feedback matters to us",submitted_label:"Successfully submitted!",cre_question:"Was your issue resolved?",cre_positive_label:"Yes, thank you! 👍",cre_negative_label:"No, that didn't help.",reason_placeholder:"Share your feedback",question:"How would you rate your experience?",submit_label:"Submit",submission_expired:"We're sorry, the survey period has ended.",a11y_csat_rating_label:(e,t)=>`${e} out of 5 — ${t}`,a11y_hint_select_rating:"Selects this rating"},form:{optional_label:"optional",validation_required:"This question is required"},common:{placeholder_something_went_wrong:"Something went wrong",placeholder_no_messages:"No messages",placeholder_no_conversations:"No conversations yet",placeholder_something_went_wrong_retry_label:"Retry",button_ok:"OK",button_cancel:"Cancel"},feedback:{title:"Submit feedback",good:"Good",bad:"Bad",comment_label:"Comment (optional)",comment_placeholder:"Leave a comment",cancel:"Cancel",submit:"Submit",save:"Save",edit:"Edit feedback",remove:"Remove feedback"},handoff:{confirm_title:"Request handoff?",confirm_description:"You'll be transferred to a human agent. Your conversation history will be shared.",confirm_cancel:"Cancel",confirm_handoff:"Handoff"},memory:{dialog_title:"User memory",desc_on:"Memory is **turned on**. It remembers your conversation history to provide personalized responses tailored to your previous questions and preferences.",desc_off:"Memory is **turned off**. If turned on, it will remember your conversation history to provide personalized responses tailored to your previous questions and preferences.",button_use:"Use",button_dont_use:"Don't use",button_keep_using:"Keep using",button_disable:"Disable",button_disable_and_delete:"Disable & Delete memory",button_keep_off:"Keep off",button_enable:"Enable memory",button_cancel:"Cancel",error_message:"Failed to update memory state. Please try again.",a11y_indicator_manage:"Manage memory",a11y_indicator_on:"Memory is on",a11y_indicator_off:"Memory is off"},connection_delay:{title:"Something went wrong. You'll be reconnected shortly.",description:e=>`Estimated waiting time: ${e}`}},Xn={language:"en",strings:Uu,dateLocale:oa.enUS},zo=e=>({MESSAGE_INPUT__PLACE_HOLDER:e.conversation.input_placeholder,MESSAGE_INPUT__PLACE_HOLDER__DISABLED:e.conversation.input_placeholder_disabled,MESSAGE_INPUT__PLACE_HOLDER__STEWARD:e.conversation.input_placeholder_steward,MESSAGE_INPUT__PLACE_HOLDER__WAIT_AI_AGENT_RESPONSE:e.conversation.input_placeholder_wait_ai_agent_response,MESSAGE_INPUT__PLACE_HOLDER__RECONNECTING:e.conversation.input_placeholder_reconnecting,UNKNOWN__UNKNOWN_MESSAGE_TYPE:e.conversation.unknown_message_type,POWERED_BY:e.conversation.powered_by,CSAT_TITLE_UNSUBMITTED:e.csat.title,CSAT_TITLE_SUBMITTED:e.csat.submitted_label,CSAT_CRE_TITLE:e.csat.cre_question,CSAT_CRE_SOLVED:e.csat.cre_positive_label,CSAT_CRE_NOT_SOLVED:e.csat.cre_negative_label,CSAT_REASON_PLACEHOLDER:e.csat.reason_placeholder,CSAT_RATING_TITLE:e.csat.question,CSAT_SUBMIT_LABEL:e.csat.submit_label,CSAT_SUBMISSION_EXPIRED:e.csat.submission_expired,DATE_FORMAT__JUST_NOW:e.date_format.just_now,DATE_FORMAT__MINUTES_AGO:e.date_format.minutes_ago,DATE_FORMAT__HOURS_AGO:e.date_format.hours_ago,DATE_FORMAT__DATE_SHORT:e.date_format.date_short,DATE_FORMAT__MESSAGE_LIST__DATE_SEPARATOR:e.date_format.date_separator,DATE_FORMAT__MESSAGE_TIMESTAMP:e.date_format.message_timestamp,CONVERSATION_LIST__HEADER_TITLE:e.conversation_list.header_title,CONVERSATION_LIST__ENDED:e.conversation_list.ended,CONVERSATION_LIST__SYSTEM_MESSAGE:e.conversation_list.system_message,CONVERSATION_LIST__NO_CONVERSATIONS:e.common.placeholder_no_conversations,CONVERSATION_LIST__MULTIPLE_FILES_COUNT:e.conversation_list.multiple_files_count,TALK_TO_AGENT:e.conversation.start_new_conversation_label,CITATION_SOURCE_TITLE:e.conversation.citation_title,FORM_PLACEHOLDER:e.conversation.input_placeholder_active_form,FORM_VALIDATION_REQUIRED:e.form.validation_required,OPTIONAL:e.form.optional_label,PLACE_HOLDER__WRONG:e.common.placeholder_something_went_wrong,PLACE_HOLDER__NO_MESSAGES:e.common.placeholder_no_messages,RETRY:e.common.placeholder_something_went_wrong_retry_label,BUTTON__OK:e.common.button_ok,BUTTON__CANCEL:e.common.button_cancel,FAILED_MESSAGE_RESEND:e.conversation.failed_message_resend,FAILED_MESSAGE_REMOVE:e.conversation.failed_message_remove,FILE_UPLOAD_NO_SUPPORTED_FILES:e.conversation.file_upload_no_supported_files,FILE_UPLOAD_REPLACE_ALERT__TITLE:e.conversation.file_upload_replace_alert_title,FILE_UPLOAD_REPLACE_ALERT__DESCRIPTION:e.conversation.file_upload_replace_alert_description,FILE_UPLOAD_FILES:e.conversation.attachment_document,FEEDBACK_TITLE:e.feedback.title,FEEDBACK_GOOD:e.feedback.good,FEEDBACK_BAD:e.feedback.bad,FEEDBACK_COMMENT_LABEL:e.feedback.comment_label,FEEDBACK_COMMENT_PLACEHOLDER:e.feedback.comment_placeholder,FEEDBACK_CANCEL:e.feedback.cancel,FEEDBACK_SUBMIT:e.feedback.submit,FEEDBACK_SAVE:e.feedback.save,FEEDBACK_EDIT:e.feedback.edit,FEEDBACK_REMOVE:e.feedback.remove,A11Y_MESSAGE_LIST:e.conversation.a11y_message_list,A11Y_SCROLL_TO_BOTTOM:e.conversation.a11y_scroll_to_bottom,A11Y_SCROLL_TO_NEW_MESSAGES:e.conversation.a11y_scroll_to_new_messages,A11Y_OPEN_CONVERSATION_LIST:e.conversation.a11y_open_conversation_list,A11Y_OPEN_CONVERSATION:e.conversation.a11y_open_conversation,A11Y_OPEN_CONVERSATIONS:e.conversation.a11y_open_conversations,A11Y_CLOSE_CONVERSATION:e.conversation.a11y_close_conversation,A11Y_CLOSE_CONVERSATIONS:e.conversation.a11y_close_conversations,A11Y_MENU:e.conversation.a11y_menu,A11Y_MESSAGE_INPUT:e.conversation.a11y_message_input,A11Y_SEND_MESSAGE:e.conversation.a11y_send_message,A11Y_ATTACH_FILE:e.conversation.a11y_attach_file,A11Y_CONNECT_AGENT:e.conversation.a11y_connect_agent,A11Y_CLOSE_MESSENGER:e.conversation.a11y_close_messenger,A11Y_EXPAND_MESSENGER:e.conversation.a11y_expand_messenger,A11Y_COLLAPSE_MESSENGER:e.conversation.a11y_collapse_messenger,A11Y_MESSAGE_SENDER_YOU:e.conversation.a11y_message_sender_you,A11Y_SUGGESTED_REPLY:e.conversation.a11y_suggested_reply,A11Y_TYPING_INDICATOR:e.conversation.a11y_typing_indicator,A11Y_CODE_BLOCK_PLACEHOLDER:e.conversation.a11y_code_block_placeholder,A11Y_TYPING_FORMAT:e.conversation.a11y_typing_format,A11Y_MESSAGE_FAILED:e.conversation.a11y_message_failed,A11Y_NEW_MESSAGES_RECEIVED:e.conversation.a11y_new_messages_received,A11Y_NEW_MESSAGES_RECEIVED_FROM_SENDER:e.conversation.a11y_new_messages_received_from_sender,A11Y_AGENT_CONNECTED:e.conversation.a11y_agent_connected,A11Y_CONVERSATION_CLOSED:e.conversation.a11y_conversation_closed,A11Y_FILE_IMAGE:e.conversation.a11y_file_image,A11Y_FILE_VIDEO:e.conversation.a11y_file_video,A11Y_FILE_DOCUMENT:e.conversation.a11y_file_document,A11Y_RECEIVED_FILE_IMAGE:e.conversation.a11y_received_file_image,A11Y_RECEIVED_FILE_VIDEO:e.conversation.a11y_received_file_video,A11Y_RECEIVED_FILE_PDF:e.conversation.a11y_received_file_pdf,A11Y_RECEIVED_FILES_IMAGE_COUNT:e.conversation.a11y_received_files_image_count,A11Y_SCREEN_CONVERSATION:e.conversation.a11y_screen_conversation,A11Y_SCREEN_CONVERSATION_WITH_AGENT:e.conversation.a11y_screen_conversation_with_agent,A11Y_SCREEN_CONVERSATION_LIST_NO_COUNT:e.conversation.a11y_screen_conversation_list_no_count,A11Y_SCREEN_CONVERSATION_LIST_WITH_COUNT:e.conversation.a11y_screen_conversation_list_with_count,A11Y_CSAT_DISPLAYED:e.conversation.a11y_csat_displayed,A11Y_EMPTY_CONVERSATION:e.conversation.a11y_empty_conversation,A11Y_INPUT_DISABLED:e.conversation.a11y_input_disabled,A11Y_FILE_SIZE_EXCEEDED:e.conversation.a11y_file_size_exceeded,A11Y_CSAT_FORM_ERROR:e.conversation.a11y_csat_form_error,A11Y_HINT_SEND_MESSAGE:e.conversation.a11y_hint_send_message,A11Y_HINT_OPEN_CONVERSATION:e.conversation.a11y_hint_open_conversation,A11Y_HINT_OPEN_CONVERSATIONS:e.conversation.a11y_hint_open_conversations,A11Y_HINT_CLOSE_CONVERSATION:e.conversation.a11y_hint_close_conversation,A11Y_HINT_OPEN_MENU:e.conversation.a11y_hint_open_menu,A11Y_HINT_CONNECT_TO_AGENT:e.conversation.a11y_hint_connect_to_agent,A11Y_HINT_ATTACH_FILE:e.conversation.a11y_hint_attach_file,A11Y_HINT_VIEW_NEW_MESSAGES:e.conversation.a11y_hint_view_new_messages,A11Y_HINT_OPEN_FILE:e.conversation.a11y_hint_open_file,A11Y_HINT_OPEN_IMAGE:e.conversation.a11y_hint_open_image,A11Y_HINT_SEND_REPLY:e.conversation.a11y_hint_send_reply,A11Y_CONVERSATION_ITEM:e.conversation_list.a11y_conversation_item,A11Y_CSAT_RATING_LABEL:e.csat.a11y_csat_rating_label,A11Y_HINT_SELECT_RATING:e.csat.a11y_hint_select_rating,IMAGE_VIEWER__DEFAULT_TITLE:e.conversation.image_viewer_default_title,A11Y_IMAGE_VIEWER_CLOSE:e.conversation.a11y_image_viewer_close,A11Y_IMAGE_VIEWER_PREVIOUS:e.conversation.a11y_image_viewer_previous,A11Y_IMAGE_VIEWER_NEXT:e.conversation.a11y_image_viewer_next,A11Y_IMAGE_VIEWER_DOWNLOAD:e.conversation.a11y_image_viewer_download,SCROLL_TO_NEW_MESSAGES_LABEL:e.conversation.scroll_to_new_messages_label,HANDOFF_CONFIRM__TITLE:e.handoff.confirm_title,HANDOFF_CONFIRM__DESCRIPTION:e.handoff.confirm_description,HANDOFF_CONFIRM__CANCEL:e.handoff.confirm_cancel,HANDOFF_CONFIRM__HANDOFF:e.handoff.confirm_handoff,MEMORY__DIALOG_TITLE:e.memory.dialog_title,MEMORY__DESC_ON:e.memory.desc_on,MEMORY__DESC_OFF:e.memory.desc_off,MEMORY__BUTTON_USE:e.memory.button_use,MEMORY__BUTTON_DONT_USE:e.memory.button_dont_use,MEMORY__BUTTON_KEEP_USING:e.memory.button_keep_using,MEMORY__BUTTON_DISABLE:e.memory.button_disable,MEMORY__BUTTON_DISABLE_AND_DELETE:e.memory.button_disable_and_delete,MEMORY__BUTTON_KEEP_OFF:e.memory.button_keep_off,MEMORY__BUTTON_ENABLE:e.memory.button_enable,MEMORY__BUTTON_CANCEL:e.memory.button_cancel,MEMORY__ERROR_MESSAGE:e.memory.error_message,A11Y_MEMORY_INDICATOR_MANAGE:e.memory.a11y_indicator_manage,A11Y_MEMORY_INDICATOR_ON:e.memory.a11y_indicator_on,A11Y_MEMORY_INDICATOR_OFF:e.memory.a11y_indicator_off,CONNECTION_DELAY__TITLE:e.connection_delay.title,CONNECTION_DELAY__DESCRIPTION:e.connection_delay.description}),Yo=e=>{var t;return((t=e.split("-"))==null?void 0:t[0])??$t},$t="en",Wo=new Set([$t,"ko","es","pt","fr","hi","it","de","tr","ja"]),Hu='@import"https://fonts.googleapis.com/css?family=Roboto:400,500,600,700&display=swap";.sb-message-template__border{position:relative}.sb-message-template__border:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;box-shadow:inset 0 0 0 var(--border-width) var(--border-color);border-radius:var(--border-radius);pointer-events:none}.sb-message-template__action{cursor:pointer}.sb-message-template__parent{font-family:Roboto,serif}.sb-message-template__text{font-family:inherit;font-size:14px;font-weight:400;font-stretch:normal;font-style:normal;letter-spacing:normal;text-align:left}.sb-message-template__text-button{font-family:inherit;background-color:#e0e0e0;text-align:center;padding:10px;border-radius:6px;font-size:14px;font-weight:600;font-stretch:normal;font-style:normal;letter-spacing:normal}.sendbird-theme--light .sb-message-template__text-button{color:#742ddd}.sendbird-theme--dark .sb-message-template__text-button{color:#c2a9fa}.sb-message-template__text-button:hover{opacity:1;box-shadow:#0000001a 0 1px 3px,#0000000f 0 1px 2px}.sb-message-template__text-button,.sb-message-template__image-button{cursor:pointer;border-style:none}.sb-message-template__parent{border-radius:unset;background-color:transparent;overflow:hidden}.sb-message-template__parent *{box-sizing:border-box;line-height:1.3}.sb-message-template__carousel{display:flex;width:100%;box-sizing:border-box;touch-action:pan-y}',{Provider:Gu,useContext:yr}=Ee("AgentUIElementResolver"),Vu=({entryElement:e,modalRootElement:t,rootElement:n,children:r})=>{const s=c.useMemo(()=>{const o=n??document.body,a=e??o,l=t??o,u=d=>d===_e.MODAL_ROOT?l:a.querySelector(`#${d}`);return{resolveElement:u,resolvePortalContainer:d=>u(d)??l}},[e,t,n]);return i.createElement(Gu,{value:s},r)};function ut(e,t){const n=e.getRootNode({composed:t});return n instanceof ShadowRoot||n instanceof Document?n:document}const ps=()=>{const e=[];let t=0;return{register:n=>{const r=++t;return e.push({id:r,handler:n}),()=>{const s=e.findIndex(o=>o.id===r);s>=0&&e.splice(s,1)}},dismissTopmost:()=>{const n=e[e.length-1];return n?(n.handler(),!0):!1}}},{Provider:zu,useContext:qo}=Ee("EscapeDismissStack"),_s=e=>{e.stopPropagation(),e.stopImmediatePropagation()},Yu=({rootElement:e=document.body,boundaryElement:t,children:n})=>{const r=c.useRef(null),s=c.useRef(null);r.current||(r.current=ps()),s.current||(s.current=ps());const o=r.current,a=s.current;c.useLayoutEffect(()=>{const u=t??ut(e),d=m=>{if(m.key==="Escape"){if(o.dismissTopmost()){_s(m);return}a.dismissTopmost()&&_s(m)}};return u.addEventListener("keydown",d),()=>u.removeEventListener("keydown",d)},[t,e,a,o]);const l=c.useMemo(()=>({register:o.register,dismissTopmost:o.dismissTopmost,registerShellDismissHandler:a.register}),[a,o]);return i.createElement(zu,{value:l},n)},Ko=(e,t,n)=>{const r=c.useRef(t);c.useLayoutEffect(()=>{r.current=t},[t]),c.useLayoutEffect(()=>{if(e)return n(()=>r.current())},[e,n])},Wu=(e,t)=>{const{register:n}=qo();Ko(e,t,n)},qu=(e,t)=>{const{registerShellDismissHandler:n}=qo();Ko(e,t,n)},Ku=(e,t,n)=>{const r=e[t];return r?typeof r=="function"?r():Promise.resolve(r):new Promise((s,o)=>{(typeof queueMicrotask=="function"?queueMicrotask:setTimeout)(o.bind(null,new Error("Unknown variable dynamic import: "+t+(t.split("/").length!==n?". Note that variables only represent file names one level deep.":""))))})},Es=zo(Xn.strings),ju={...Es,HEADER_BUTTON__AGENT_HANDOFF:"Talk to human agent",MESSAGE_INPUT__PLACE_HOLDER__SUGGESTED_REPLIES:"Select an option to continue",BUTTON__SUBMIT:"Submit",SUBMITTED:"Submitted",TRY_AGAIN:"Please try again.",FILE_UPLOAD_NOTIFICATION__COUNT_LIMIT:"Up to %d files can be attached.",FILE_UPLOAD_NOTIFICATION__SIZE_LIMIT:"The maximum size per file is %d MB.",FILE_UPLOAD_NOTIFICATION__FILES_EXCLUDED_BY_VALIDATION:"%d files were excluded due to limits. Please select files individually.",FILE_UPLOAD_PHOTOS:"Photos",FILE_VIEWER__UNSUPPORT:"Unsupported message",A11Y_FILE_SELECTED:e=>`${e}, selected`,A11Y_FILE_REMOVE_BUTTON:e=>`Remove file: ${e}`,A11Y_FILE_UPLOAD_OPTIONS:"File upload options",A11Y_FAILED_MESSAGE_OPTIONS:"Failed message options",A11Y_FEEDBACK_OPTIONS:"Feedback options",A11Y_CSAT_TEXT_INPUT_LABEL:"Enter answer",FORM_UNAVAILABLE:"Form is no longer available.",FORM_NOT_SUPPORTED:"This form is not supported in the current version.",FORM_VALIDATION_MIN_LENGTH:e=>`Minimum ${e} characters required`,FORM_VALIDATION_MAX_LENGTH:e=>`Maximum ${e} characters allowed`,FORM_VALIDATION_MIN:e=>`Minimum value is ${e}`,FORM_VALIDATION_MAX:e=>`Maximum value is ${e}`,FORM_VALIDATION_MIN_SELECT:e=>`Select at least ${e} options`,FORM_VALIDATION_MAX_SELECT:e=>`Select at most ${e} options`,FORM_VALIDATION_REGEX_FAILED:"Invalid format",DATE_FORMAT__CONVERSATION_LIST__LIST_ITEM_TITLE:Es.DATE_FORMAT__DATE_SHORT,DATE_FORMAT__CONVERSATION_LIST__LIST_ITEM_TITLE_CAPTION:"h:mma",CONVERSATION_LIST__TOPICS_FALLBACK:"No category",CONVERSATION_CLOSED_FOOTER_LABEL:"Your conversation has ended",START_NEW_CONVERSATION:"💬 Start a new conversation",RETURN_TO_CONVERSATION:"💬 Return to conversation",BUTTON__SAVE:"Save",NO_NAME:"(No name)",CHANNEL_FROZEN:"Channel frozen"},cn={language:Xn.language,dateLocale:Xn.dateLocale,stringSet:ju},Xu=Object.freeze(Object.defineProperty({__proto__:null,default:cn},Symbol.toStringTag,{value:"Module"})),Zn=new Map([[$t,cn]]);async function Zu(e){const t=Zn.get(e);if(t)return t;try{if(Wo.has(e)){const{default:n}=await Ku(Object.assign({"./languages/de.ts":()=>Promise.resolve().then(()=>require("./cjs/BH74ZV07.cjs")),"./languages/en.ts":()=>Promise.resolve().then(()=>Xu),"./languages/es.ts":()=>Promise.resolve().then(()=>require("./cjs/CZbB5OP0.cjs")),"./languages/fr.ts":()=>Promise.resolve().then(()=>require("./cjs/BynZU4Xm.cjs")),"./languages/hi.ts":()=>Promise.resolve().then(()=>require("./cjs/Bz2dJ9Lj.cjs")),"./languages/it.ts":()=>Promise.resolve().then(()=>require("./cjs/DUN_CuhW.cjs")),"./languages/ja.ts":()=>Promise.resolve().then(()=>require("./cjs/ctBDkWKX.cjs")),"./languages/ko.ts":()=>Promise.resolve().then(()=>require("./cjs/yRmdu9dK.cjs")),"./languages/pt.ts":()=>Promise.resolve().then(()=>require("./cjs/DSgROeP2.cjs")),"./languages/tr.ts":()=>Promise.resolve().then(()=>require("./cjs/DbM6WEmP.cjs"))}),`./languages/${e}.ts`,3);return Zn.set(e,n),n}return cn}catch{return cn}}const{Provider:Ju,useContext:ie}=Ee("Localization"),Qu=({language:e=navigator.language,languageCode:t,logger:n,stringSet:r,children:s})=>{const[o,a]=c.useState(Zn.get($t));return c.useEffect(()=>{const l=t??Yo(e);o.language!==l&&(n==null||n.debug("localization.useEffect: update language",{from:o.language,to:l}),Zu(l).then(a))},[e,t,n]),i.createElement(Ju,{value:{language:o.language,defaultStringSet:o.stringSet,stringSet:{...o.stringSet,...r},dateLocale:o.dateLocale,format:(l,u,d)=>nt.format(l,u,{locale:o.dateLocale,...d})}},s)},un="data-sb-agent-theme",bs=e=>(t,...n)=>{let r="";return t.forEach((s,o)=>{r+=s+(n[o]??"")}),`[${un}='${e}'] & { ${r} }`},Q={light:bs("light"),dark:bs("dark")},ed=P.css(({theme:e})=>{const{palette:t}=e;return`
8
8
  :root,
9
9
  :host {
10
10
  --sendbird-primary-extra-dark: ${t.primary.extraDark};
@@ -53,9 +53,9 @@
53
53
  --sendbird-overlay-dark: ${t.overlay.dark};
54
54
  --sendbird-overlay-light: ${t.overlay.light};
55
55
  }
56
- `}),Lu=P.css`[${dn}='light'] &{--sb-text-high-emphasis:var(--sendbird-onlight-text-high-emphasis);--sb-text-mid-emphasis:var(--sendbird-onlight-text-mid-emphasis);--sb-text-low-emphasis:var(--sendbird-onlight-text-low-emphasis);--sb-text-disabled:var(--sendbird-onlight-text-disabled);--sb-text-high-emphasis-inverse:var(--sendbird-ondark-text-high-emphasis);--sb-text-mid-emphasis-inverse:var(--sendbird-ondark-text-mid-emphasis);--sb-text-low-emphasis-inverse:var(--sendbird-ondark-text-low-emphasis);--sb-text-disabled-inverse:var(--sendbird-ondark-text-disabled);--sb-bg-50-600:var(--sendbird-background-50);--sb-bg-100-500:var(--sendbird-background-100);--sb-bg-300-500:var(--sendbird-background-300);--sb-bg-200-400:var(--sendbird-background-200);--sb-primary:var(--sendbird-primary-main);--sb-secondary:var(--sendbird-secondary-main);--sb-error:var(--sendbird-error-main);--sb-information:var(--sendbird-information-light);}[${dn}='dark'] &{--sb-text-high-emphasis:var(--sendbird-ondark-text-high-emphasis);--sb-text-mid-emphasis:var(--sendbird-ondark-text-mid-emphasis);--sb-text-low-emphasis:var(--sendbird-ondark-text-low-emphasis);--sb-text-disabled:var(--sendbird-ondark-text-disabled);--sb-text-high-emphasis-inverse:var(--sendbird-onlight-text-high-emphasis);--sb-text-mid-emphasis-inverse:var(--sendbird-onlight-text-mid-emphasis);--sb-text-low-emphasis-inverse:var(--sendbird-onlight-text-low-emphasis);--sb-text-disabled-inverse:var(--sendbird-onlight-text-disabled);--sb-bg-50-600:var(--sendbird-background-600);--sb-bg-100-500:var(--sendbird-background-500);--sb-bg-300-500:var(--sendbird-background-500);--sb-bg-200-400:var(--sendbird-background-400);--sb-primary:var(--sendbird-primary-light);--sb-secondary:var(--sendbird-secondary-light);--sb-error:var(--sendbird-error-light);--sb-information:var(--sendbird-information-light);}`,p={color:{primary:{dark:"var(--sendbird-primary-dark)",main:"var(--sendbird-primary-main)"},secondary:{dark:"var(--sendbird-secondary-dark)",light:"var(--sendbird-secondary-light)"},error:{dark:"var(--sendbird-error-dark)",light:"var(--sendbird-error-light)"},information:{main:"var(--sendbird-information-main)",light:"var(--sendbird-information-light)"},background700:"var(--sendbird-background-700)",background500:"var(--sendbird-background-500)",background400:"var(--sendbird-background-400)",background200:"var(--sendbird-background-200)",background100:"var(--sendbird-background-100)",background50:"var(--sendbird-background-50)",onlight:{textLowEmphasis:"var(--sendbird-onlight-text-low-emphasis)",textDisabled:"var(--sendbird-onlight-text-disabled)"},ondark:{textHighEmphasis:"var(--sendbird-ondark-text-high-emphasis)",textMidEmphasis:"var(--sendbird-ondark-text-mid-emphasis)",textLowEmphasis:"var(--sendbird-ondark-text-low-emphasis)",textDisabled:"var(--sendbird-ondark-text-disabled)"},overlay:{dark:"var(--sendbird-overlay-dark)"}},themedColor:{textHighEmphasis:"var(--sb-text-high-emphasis)",textMidEmphasis:"var(--sb-text-mid-emphasis)",textLowEmphasis:"var(--sb-text-low-emphasis)",textDisabled:"var(--sb-text-disabled)",textHighEmphasisInverse:"var(--sb-text-high-emphasis-inverse)",textLowEmphasisInverse:"var(--sb-text-low-emphasis-inverse)",bg_50_600:"var(--sb-bg-50-600)",bg_100_500:"var(--sb-bg-100-500)",bg_300_500:"var(--sb-bg-300-500)",bg_200_400:"var(--sb-bg-200-400)",primary:"var(--sb-primary)",error:"var(--sb-error)",secondary:"var(--sb-secondary)"}};class mn extends c.PureComponent{constructor(t){super(t),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}render(){const{fallback:t=null,errorFallback:n=t,loadingFallback:r=t,children:s}=this.props;return this.state.hasError?n:i.createElement(c.Suspense,{fallback:r},s)}}const Ye=e=>{const t=e;return typeof t=="number"?`${t}px`:t},Ru=e=>i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 64 64",...e},i.createElement("path",{className:"fill",d:"M52.552 11.448a2.666 2.666 0 0 1 .222 3.52l-.222.251-16.781 16.78 16.781 16.782a2.665 2.665 0 0 1 0 3.771 2.666 2.666 0 0 1-3.52.222l-.251-.222L32 35.771 15.219 52.552a2.665 2.665 0 0 1-3.771 0 2.666 2.666 0 0 1-.222-3.52l.222-.251L28.228 32l-16.78-16.781a2.665 2.665 0 0 1 0-3.771 2.666 2.666 0 0 1 3.52-.222l.251.222 16.78 16.78 16.782-16.78a2.665 2.665 0 0 1 3.771 0z",fill:"#000",fillRule:"evenodd"})),Ou=e=>i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",...e},i.createElement("path",{className:"fill",d:"M7.33348 7.3335L2.00015 7.3335L2.00015 6.00016H5.05735L1.3335 2.27631L2.27631 1.3335L6.00015 5.05734V2.00016L7.33348 2.00016L7.33348 7.3335ZM8.66683 8.66683H14.0002V10.0002L10.943 10.0002L14.6668 13.724L13.724 14.6668L10.0002 10.943V14.0002H8.66683L8.66683 8.66683Z",fill:"#000",fillRule:"evenodd"})),Nu=e=>i.createElement("svg",{viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg",...e},i.createElement("path",{className:"fill",fillRule:"evenodd",clipRule:"evenodd",d:"M2 2H7.33333V3.33333L4.27613 3.33333L7.99999 7.05719L7.05718 8L3.33333 4.27616L3.33333 7.33333H2V2ZM14 14H8.66667V12.6667H11.7239L8.00001 8.94281L8.94282 8L12.6667 11.7238V8.66667H14V14Z",fill:"#000"})),Du=e=>i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 64 64",fill:"evenodd",...e},i.createElement("path",{className:"fill",fill:"#0D0D0D",d:"M50.667 18.667H13.333v-5.334h37.334zM50.667 34.667H13.333v-5.334h37.334zM13.333 50.667h37.334v-5.334H13.333z"})),$u=e=>i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 64 64",...e},i.createElement("path",{fill:"#000",fillRule:"evenodd",d:"M59.795 29.43 7.329 2.979C4.691 1.802 1.76 4.153 2.932 6.798l6.925 18.609a2 2 0 0 0 1.544 1.275l32.273 5.394L11.4 37.47a1.998 1.998 0 0 0-1.544 1.275L2.932 57.353c-.879 2.645 1.76 4.997 4.397 3.527l52.466-26.453c2.051-.882 2.051-3.82 0-4.996z",className:"fill"})),Pu=new Set(["send","chat","message","chevron-right","good","good-filled","bad","bad-filled"]),Fu={close:Ru,send:$u,menu:Du,expand:Nu,collapse:Ou,spinner:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/Cf3-irI8.cjs"))),chat:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/BmdfYY9c.cjs"))),message:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/CmWLVNPR.cjs"))),error:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DNmdC4-j.cjs"))),refresh:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/D00MOxhE.cjs"))),"chevron-down":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/wf-LdaaN.cjs"))),"chevron-right":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/B0k-GApQ.cjs"))),done:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/kp5wcW4s.cjs"))),"done-circle":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/Bwaslfwl.cjs"))),stop:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/w1C9O3WB.cjs"))),"stop-circle":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DGubkk9p.cjs"))),user:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/CtHfgPDp.cjs"))),"file-document":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/_YfLwFkX.cjs"))),download:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/BN09c8-A.cjs"))),attach:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DcDTXo8_.cjs"))),"close-filled":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/D1kINslt.cjs"))),agent:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/Ce1MzjFq.cjs"))),actionbook:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/CXa-CGHE.cjs"))),function:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/zbLY6xl_.cjs"))),"radio-on":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/B9NJk4MI.cjs"))),"radio-off":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/Bb0r6Nhu.cjs"))),confluence:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/c6TZaE94.cjs"))),zendesk:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DqpDy_26.cjs"))),salesforce:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/BsgzT_SF.cjs"))),sprinklr:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/D97ZpKUC.cjs"))),website:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/ygZY2D-5.cjs"))),snippet:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/BCFOnu0u.cjs"))),template:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/eJXfXI1_.cjs"))),source:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/yVmX6iux.cjs"))),copy:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/COgkkyBM.cjs"))),show:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DM-WWpci.cjs"))),mute:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/P_ra76fq.cjs"))),good:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DEgUVAck.cjs"))),bad:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/C0s7eAf7.cjs"))),"good-filled":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/Chg8xHXT.cjs"))),"bad-filled":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/CGkmTaBn.cjs"))),delight:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DCB0iTxd.cjs"))),photo:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/GQlGFYP2.cjs"))),add:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DEGDJBmd.cjs"))),document:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DBHlAmeA.cjs")))},Bu=e=>({size:t=24,color:n=p.color.primary.main,flipInRtl:r=!1})=>i.createElement(Hu,{$size:t,$color:n,$rtlFlip:r},i.createElement(mn,{errorFallback:i.createElement(Gu,null)},i.createElement(e,null))),Po=Object.fromEntries(Object.entries(Fu).map(([e,t])=>[e,Bu(t)])),Uu=P.css`[dir='rtl'] &:not([dir='ltr']),&[dir='rtl']{transform:scaleX(-1);}`,Hu=_.default.span.attrs({"aria-hidden":"true"})`
57
- width: ${({$size:e})=>Ye(e)};
58
- height: ${({$size:e})=>Ye(e)};
56
+ `}),td=P.css`[${un}='light'] &{--sb-text-high-emphasis:var(--sendbird-onlight-text-high-emphasis);--sb-text-mid-emphasis:var(--sendbird-onlight-text-mid-emphasis);--sb-text-low-emphasis:var(--sendbird-onlight-text-low-emphasis);--sb-text-disabled:var(--sendbird-onlight-text-disabled);--sb-text-high-emphasis-inverse:var(--sendbird-ondark-text-high-emphasis);--sb-text-mid-emphasis-inverse:var(--sendbird-ondark-text-mid-emphasis);--sb-text-low-emphasis-inverse:var(--sendbird-ondark-text-low-emphasis);--sb-text-disabled-inverse:var(--sendbird-ondark-text-disabled);--sb-bg-50-600:var(--sendbird-background-50);--sb-bg-100-500:var(--sendbird-background-100);--sb-bg-300-500:var(--sendbird-background-300);--sb-bg-200-400:var(--sendbird-background-200);--sb-primary:var(--sendbird-primary-main);--sb-secondary:var(--sendbird-secondary-main);--sb-error:var(--sendbird-error-main);--sb-information:var(--sendbird-information-light);}[${un}='dark'] &{--sb-text-high-emphasis:var(--sendbird-ondark-text-high-emphasis);--sb-text-mid-emphasis:var(--sendbird-ondark-text-mid-emphasis);--sb-text-low-emphasis:var(--sendbird-ondark-text-low-emphasis);--sb-text-disabled:var(--sendbird-ondark-text-disabled);--sb-text-high-emphasis-inverse:var(--sendbird-onlight-text-high-emphasis);--sb-text-mid-emphasis-inverse:var(--sendbird-onlight-text-mid-emphasis);--sb-text-low-emphasis-inverse:var(--sendbird-onlight-text-low-emphasis);--sb-text-disabled-inverse:var(--sendbird-onlight-text-disabled);--sb-bg-50-600:var(--sendbird-background-600);--sb-bg-100-500:var(--sendbird-background-500);--sb-bg-300-500:var(--sendbird-background-500);--sb-bg-200-400:var(--sendbird-background-400);--sb-primary:var(--sendbird-primary-light);--sb-secondary:var(--sendbird-secondary-light);--sb-error:var(--sendbird-error-light);--sb-information:var(--sendbird-information-light);}`,g={color:{primary:{dark:"var(--sendbird-primary-dark)",main:"var(--sendbird-primary-main)"},secondary:{dark:"var(--sendbird-secondary-dark)",light:"var(--sendbird-secondary-light)"},error:{dark:"var(--sendbird-error-dark)",light:"var(--sendbird-error-light)"},information:{main:"var(--sendbird-information-main)",light:"var(--sendbird-information-light)"},background700:"var(--sendbird-background-700)",background500:"var(--sendbird-background-500)",background400:"var(--sendbird-background-400)",background300:"var(--sendbird-background-300)",background200:"var(--sendbird-background-200)",background100:"var(--sendbird-background-100)",background50:"var(--sendbird-background-50)",onlight:{textLowEmphasis:"var(--sendbird-onlight-text-low-emphasis)",textDisabled:"var(--sendbird-onlight-text-disabled)"},ondark:{textHighEmphasis:"var(--sendbird-ondark-text-high-emphasis)",textMidEmphasis:"var(--sendbird-ondark-text-mid-emphasis)",textLowEmphasis:"var(--sendbird-ondark-text-low-emphasis)",textDisabled:"var(--sendbird-ondark-text-disabled)"},overlay:{dark:"var(--sendbird-overlay-dark)"}},themedColor:{textHighEmphasis:"var(--sb-text-high-emphasis)",textMidEmphasis:"var(--sb-text-mid-emphasis)",textLowEmphasis:"var(--sb-text-low-emphasis)",textDisabled:"var(--sb-text-disabled)",textHighEmphasisInverse:"var(--sb-text-high-emphasis-inverse)",textLowEmphasisInverse:"var(--sb-text-low-emphasis-inverse)",bg_50_600:"var(--sb-bg-50-600)",bg_100_500:"var(--sb-bg-100-500)",bg_300_500:"var(--sb-bg-300-500)",bg_200_400:"var(--sb-bg-200-400)",primary:"var(--sb-primary)",error:"var(--sb-error)",secondary:"var(--sb-secondary)"}};class Lt extends c.PureComponent{constructor(t){super(t),this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}render(){const{fallback:t=null,errorFallback:n=t,loadingFallback:r=t,children:s}=this.props;return this.state.hasError?n:i.createElement(c.Suspense,{fallback:r},s)}}const We=e=>{const t=e;return typeof t=="number"?`${t}px`:t},nd=e=>i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 64 64",...e},i.createElement("path",{className:"fill",d:"M52.552 11.448a2.666 2.666 0 0 1 .222 3.52l-.222.251-16.781 16.78 16.781 16.782a2.665 2.665 0 0 1 0 3.771 2.666 2.666 0 0 1-3.52.222l-.251-.222L32 35.771 15.219 52.552a2.665 2.665 0 0 1-3.771 0 2.666 2.666 0 0 1-.222-3.52l.222-.251L28.228 32l-16.78-16.781a2.665 2.665 0 0 1 0-3.771 2.666 2.666 0 0 1 3.52-.222l.251.222 16.78 16.78 16.782-16.78a2.665 2.665 0 0 1 3.771 0z",fill:"#000",fillRule:"evenodd"})),rd=e=>i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",...e},i.createElement("path",{className:"fill",d:"M7.33348 7.3335L2.00015 7.3335L2.00015 6.00016H5.05735L1.3335 2.27631L2.27631 1.3335L6.00015 5.05734V2.00016L7.33348 2.00016L7.33348 7.3335ZM8.66683 8.66683H14.0002V10.0002L10.943 10.0002L14.6668 13.724L13.724 14.6668L10.0002 10.943V14.0002H8.66683L8.66683 8.66683Z",fill:"#000",fillRule:"evenodd"})),sd=e=>i.createElement("svg",{viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg",...e},i.createElement("path",{className:"fill",fillRule:"evenodd",clipRule:"evenodd",d:"M2 2H7.33333V3.33333L4.27613 3.33333L7.99999 7.05719L7.05718 8L3.33333 4.27616L3.33333 7.33333H2V2ZM14 14H8.66667V12.6667H11.7239L8.00001 8.94281L8.94282 8L12.6667 11.7238V8.66667H14V14Z",fill:"#000"})),od=e=>i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 64 64",fill:"evenodd",...e},i.createElement("path",{className:"fill",fill:"#0D0D0D",d:"M50.667 18.667H13.333v-5.334h37.334zM50.667 34.667H13.333v-5.334h37.334zM13.333 50.667h37.334v-5.334H13.333z"})),id=e=>i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 64 64",...e},i.createElement("path",{fill:"#000",fillRule:"evenodd",d:"M59.795 29.43 7.329 2.979C4.691 1.802 1.76 4.153 2.932 6.798l6.925 18.609a2 2 0 0 0 1.544 1.275l32.273 5.394L11.4 37.47a1.998 1.998 0 0 0-1.544 1.275L2.932 57.353c-.879 2.645 1.76 4.997 4.397 3.527l52.466-26.453c2.051-.882 2.051-3.82 0-4.996z",className:"fill"})),ad=new Set(["send","chat","message","chevron-right","good","good-filled","bad","bad-filled"]),ld={close:nd,send:id,menu:od,expand:sd,collapse:rd,spinner:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/Cf3-irI8.cjs"))),chat:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/BmdfYY9c.cjs"))),message:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/CmWLVNPR.cjs"))),error:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DNmdC4-j.cjs"))),refresh:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/D00MOxhE.cjs"))),"chevron-down":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/wf-LdaaN.cjs"))),"chevron-right":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/B0k-GApQ.cjs"))),done:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/kp5wcW4s.cjs"))),"done-circle":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/Bwaslfwl.cjs"))),stop:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/w1C9O3WB.cjs"))),"stop-circle":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DGubkk9p.cjs"))),user:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/CtHfgPDp.cjs"))),"file-document":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/_YfLwFkX.cjs"))),download:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/BN09c8-A.cjs"))),attach:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DcDTXo8_.cjs"))),"close-filled":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/D1kINslt.cjs"))),agent:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/Ce1MzjFq.cjs"))),actionbook:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/CXa-CGHE.cjs"))),function:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/zbLY6xl_.cjs"))),"radio-on":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/B9NJk4MI.cjs"))),"radio-off":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/Bb0r6Nhu.cjs"))),confluence:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/c6TZaE94.cjs"))),zendesk:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DqpDy_26.cjs"))),salesforce:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/BsgzT_SF.cjs"))),sprinklr:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/D97ZpKUC.cjs"))),website:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/ygZY2D-5.cjs"))),snippet:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/BCFOnu0u.cjs"))),template:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/eJXfXI1_.cjs"))),source:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/yVmX6iux.cjs"))),copy:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/COgkkyBM.cjs"))),show:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DM-WWpci.cjs"))),mute:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/P_ra76fq.cjs"))),good:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DEgUVAck.cjs"))),bad:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/C0s7eAf7.cjs"))),"good-filled":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/Chg8xHXT.cjs"))),"bad-filled":c.lazy(()=>Promise.resolve().then(()=>require("./cjs/CGkmTaBn.cjs"))),delight:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DCB0iTxd.cjs"))),photo:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/GQlGFYP2.cjs"))),add:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DEGDJBmd.cjs"))),document:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DBHlAmeA.cjs"))),memory:c.lazy(()=>Promise.resolve().then(()=>require("./cjs/DB0sLqre.cjs")))},cd=e=>({size:t=24,color:n=g.color.primary.main,flipInRtl:r=!1})=>i.createElement(dd,{$size:t,$color:n,$rtlFlip:r},i.createElement(Lt,{errorFallback:i.createElement(md,null)},i.createElement(e,null))),jo=Object.fromEntries(Object.entries(ld).map(([e,t])=>[e,cd(t)])),ud=P.css`[dir='rtl'] &:not([dir='ltr']),&[dir='rtl']{transform:scaleX(-1);}`,dd=p.default.span.attrs({"aria-hidden":"true"})`
57
+ width: ${({$size:e})=>We(e)};
58
+ height: ${({$size:e})=>We(e)};
59
59
  display: inline-block;
60
60
 
61
61
  svg {
@@ -74,25 +74,25 @@
74
74
  stroke-linejoin: round;
75
75
  }
76
76
 
77
- ${({$rtlFlip:e})=>e&&Uu};
78
- `,Gu=()=>i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 64 64"},i.createElement("rect",{x:"8",y:"8",width:"48",height:"48",fill:"none",className:"stroke",rx:"4"}),i.createElement("line",{x1:"20",y1:"20",x2:"44",y2:"44",className:"stroke"}),i.createElement("line",{x1:"44",y1:"20",x2:"20",y2:"44",className:"stroke"})),{Provider:Vu,useContext:zu}=Ee("MessengerIcon",{icons:Po}),qu=({icons:e,children:t})=>{const n=c.useMemo(()=>({icons:Xa(Po,e)}),[e]);return i.createElement(Vu,{value:n},t)},{Provider:Wu,useContext:Fo}=Ee("MessengerTheme");function Yu(e){const{theme:t,appearance:n,logger:r}=e;return i.createElement(Nl,{appearance:n,palette:t==null?void 0:t.palette,typography:t==null?void 0:t.typography,colors:t==null?void 0:t.colors,logger:r},i.createElement(Ku,{...e}))}function Ku({rootElement:e=document.body,children:t}){const{theme:n,updateTheme:r}=dr();return c.useLayoutEffect(()=>{e.setAttribute(dn,n.selectedTheme)},[e,n.selectedTheme]),i.createElement(P.ThemeProvider,{theme:n},i.createElement(Wu,{value:{theme:n,updateTheme:r,rootElement:e}},t))}const ju=(e,t)=>{c.useEffect(()=>{const n=ct(t)instanceof ShadowRoot,r=ct(t,!0);if(!(n?t:r).querySelector(`link[href*='${e}']`)){const o=r.createElement("link");o.rel="stylesheet",o.href=e,(n?t:r.head).appendChild(o)}},[e,t])},Xu=(e,t=document.body)=>{c.useEffect(()=>{if(!e)return;const n=ct(t),s=n instanceof ShadowRoot?t:n.head;if(!s)return;const o=`sba-${btoa(e).slice(0,10)}`;let a=s.querySelector(`style#${o}`);a?a.textContent!==e&&(a.textContent=e):(a=s.ownerDocument.createElement("style"),a.id=o,a.textContent=e,s.appendChild(a))},[e,t])},Zu=80,Ju=()=>{const{stringSet:e}=re(),t={screenConversation:e.A11Y_SCREEN_CONVERSATION,screenConversationWithAgent:e.A11Y_SCREEN_CONVERSATION_WITH_AGENT,screenConversationListNoCount:e.A11Y_SCREEN_CONVERSATION_LIST_NO_COUNT,screenConversationListWithCount:e.A11Y_SCREEN_CONVERSATION_LIST_WITH_COUNT,newMessage:e.A11Y_NEW_MESSAGES_RECEIVED,newMessageFromSender:e.A11Y_NEW_MESSAGES_RECEIVED_FROM_SENDER,typing:e.A11Y_TYPING_FORMAT,sendFailed:e.A11Y_MESSAGE_FAILED,agentConnected:e.A11Y_AGENT_CONNECTED,conversationClosed:e.A11Y_CONVERSATION_CLOSED,csatDisplayed:e.A11Y_CSAT_DISPLAYED,emptyState:e.A11Y_EMPTY_CONVERSATION,inputDisabled:e.A11Y_INPUT_DISABLED,fileSizeExceeded:e.A11Y_FILE_SIZE_EXCEEDED,csatFormError:e.A11Y_CSAT_FORM_ERROR},n=c.useRef(t);return n.current=t,n},Bo=Ee("AriaLiveRegion",{announce:he,announceScreenEntry:he,announceStatus:he,announceError:he,flush:he,setSuppressionState:he}),Qu=Bo.Provider,Er=Bo.useContext,ed={position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:0},td=({children:e})=>{const t=c.useRef(null),n=c.useRef(new Set),r=c.useRef(he),s=Ju(),[o]=c.useState(()=>Xc(v=>{r.current(v)},{throttleMs:1e3,isSuppressed:()=>n.current.size>0}));r.current=v=>{const b=t.current;b&&(b.textContent="",requestAnimationFrame(()=>{b.textContent=v}))},c.useEffect(()=>()=>{o.destroy()},[o]);const a=o.announce,l=o.flush,u=c.useCallback(v=>{const b=Jc(v,s.current);a(b)},[a]),d=c.useCallback(v=>{const b=Qc(v,s.current);a(b,{mode:Zc(v.event)})},[a]),m=c.useCallback((v,b)=>{const C=eu(v,s.current);o.announceIgnoringSuppression(C),b&&setTimeout(()=>{b.focus()},Zu)},[o]),h=c.useCallback((v,b)=>{if(b){n.current.add(v);return}n.current.delete(v)},[]),f=c.useMemo(()=>({announce:a,announceScreenEntry:u,announceStatus:d,announceError:m,flush:l,setSuppressionState:h}),[a,m,u,d,l,h]);return i.createElement(Qu,{value:f},e,i.createElement("div",{ref:t,role:"status","aria-live":"polite","aria-atomic":"true",style:ed}))},Uo=Ee("ConversationAnnouncements",{announcementsActive:!0,announce:he,announceStatusText:he,announceScreenEntry:he,announceStatus:he,announceError:he,setIsSuppressed:he,setStatusPauseState:he,flush:he}),nd=Uo.Provider,st=Uo.useContext,rd=({children:e,announcementsActive:t=!0})=>{const{announce:n,announceScreenEntry:r,announceStatus:s,announceError:o,flush:a,setSuppressionState:l}=Er(),u=c.useRef([]),d=c.useRef(new Set),m=c.useRef(Symbol("conversation-announcements")),h=c.useCallback(w=>{if(!t||!w){l(m.current,!1);return}l(m.current,!0)},[t,l]),f=c.useCallback(()=>{u.current=[]},[]),v=c.useCallback(()=>{if(u.current.length===0)return;if(!t){f();return}const w=[...u.current];f(),w.forEach(k=>{if(a(),k.type==="status"){s(k.params);return}n(k.text)})},[n,s,t,f,a]),b=c.useCallback((w,k)=>{if(k){d.current.add(w);return}d.current.delete(w),d.current.size===0&&v()},[v]),C=c.useCallback(w=>{t&&n(w)},[n,t]),g=c.useCallback(w=>{if(t){if(d.current.size>0){u.current.push({type:"text",text:w});return}a(),n(w)}},[n,t,a]),y=c.useCallback(w=>{t&&r(w)},[r,t]),E=c.useCallback(w=>{if(t){if(d.current.size>0){u.current.push({type:"status",params:w});return}s(w)}},[s,t]),I=c.useCallback((w,k)=>{t&&o(w,k)},[o,t]);c.useLayoutEffect(()=>(t||(f(),l(m.current,!1)),()=>{f(),l(m.current,!1)}),[t,f,l]);const A=c.useMemo(()=>({announcementsActive:t,announce:C,announceStatusText:g,announceScreenEntry:y,announceStatus:E,announceError:I,setIsSuppressed:h,setStatusPauseState:b,flush:a}),[t,a,C,g,I,y,E,h,b]);return i.createElement(nd,{value:A},e)},B=({as:e,variant:t="body1",color:n,maxTextLines:r,className:s,...o})=>i.createElement(id,{as:e,$variant:t,className:s,$color:n,$maxTextLines:r,...o}),hs=new WeakMap,sd=(e,t)=>{let n=hs.get(t);n||(n=new Map,hs.set(t,n));const r=n.get(e);if(r)return r;const s=t[e]??t.body1,o=P.css`font-size:${Ye(s.fontSize)};font-weight:${s.fontWeight};${s.fontFamily?`font-family: ${s.fontFamily};`:""}
77
+ ${({$rtlFlip:e})=>e&&ud};
78
+ `,md=()=>i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 64 64"},i.createElement("rect",{x:"8",y:"8",width:"48",height:"48",fill:"none",className:"stroke",rx:"4"}),i.createElement("line",{x1:"20",y1:"20",x2:"44",y2:"44",className:"stroke"}),i.createElement("line",{x1:"44",y1:"20",x2:"20",y2:"44",className:"stroke"})),{Provider:hd,useContext:fd}=Ee("MessengerIcon",{icons:jo}),gd=({icons:e,children:t})=>{const n=c.useMemo(()=>({icons:fl(jo,e)}),[e]);return i.createElement(hd,{value:n},t)},{Provider:pd,useContext:Xo}=Ee("MessengerTheme");function _d(e){const{theme:t,appearance:n,logger:r}=e;return i.createElement(Ql,{appearance:n,palette:t==null?void 0:t.palette,typography:t==null?void 0:t.typography,colors:t==null?void 0:t.colors,logger:r},i.createElement(Ed,{...e}))}function Ed({rootElement:e=document.body,children:t}){const{theme:n,updateTheme:r}=pr();return c.useLayoutEffect(()=>{e.setAttribute(un,n.selectedTheme)},[e,n.selectedTheme]),i.createElement(P.ThemeProvider,{theme:n},i.createElement(pd,{value:{theme:n,updateTheme:r,rootElement:e}},t))}const bd=(e,t)=>{c.useEffect(()=>{const n=ut(t)instanceof ShadowRoot,r=ut(t,!0);if(!(n?t:r).querySelector(`link[href*='${e}']`)){const o=r.createElement("link");o.rel="stylesheet",o.href=e,(n?t:r.head).appendChild(o)}},[e,t])},Cd=(e,t=document.body)=>{c.useEffect(()=>{if(!e)return;const n=ut(t),s=n instanceof ShadowRoot?t:n.head;if(!s)return;const o=`sba-${btoa(e).slice(0,10)}`;let a=s.querySelector(`style#${o}`);a?a.textContent!==e&&(a.textContent=e):(a=s.ownerDocument.createElement("style"),a.id=o,a.textContent=e,s.appendChild(a))},[e,t])},vd=80,yd=()=>{const{stringSet:e}=ie(),t={screenConversation:e.A11Y_SCREEN_CONVERSATION,screenConversationWithAgent:e.A11Y_SCREEN_CONVERSATION_WITH_AGENT,screenConversationListNoCount:e.A11Y_SCREEN_CONVERSATION_LIST_NO_COUNT,screenConversationListWithCount:e.A11Y_SCREEN_CONVERSATION_LIST_WITH_COUNT,newMessage:e.A11Y_NEW_MESSAGES_RECEIVED,newMessageFromSender:e.A11Y_NEW_MESSAGES_RECEIVED_FROM_SENDER,typing:e.A11Y_TYPING_FORMAT,sendFailed:e.A11Y_MESSAGE_FAILED,agentConnected:e.A11Y_AGENT_CONNECTED,conversationClosed:e.A11Y_CONVERSATION_CLOSED,csatDisplayed:e.A11Y_CSAT_DISPLAYED,csatExpired:e.CSAT_SUBMISSION_EXPIRED,emptyState:e.A11Y_EMPTY_CONVERSATION,inputDisabled:e.A11Y_INPUT_DISABLED,fileSizeExceeded:e.A11Y_FILE_SIZE_EXCEEDED,csatFormError:e.A11Y_CSAT_FORM_ERROR},n=c.useRef(t);return n.current=t,n},Zo=Ee("AriaLiveRegion",{announce:he,announceScreenEntry:he,announceStatus:he,announceError:he,flush:he,setSuppressionState:he}),Sd=Zo.Provider,Sr=Zo.useContext,Ad={position:"absolute",width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:0},xd=({children:e})=>{const t=c.useRef(null),n=c.useRef(new Set),r=c.useRef(he),s=yd(),[o]=c.useState(()=>bu(v=>{r.current(v)},{throttleMs:1e3,isSuppressed:()=>n.current.size>0}));r.current=v=>{const C=t.current;C&&(C.textContent="",requestAnimationFrame(()=>{C.textContent=v}))},c.useEffect(()=>()=>{o.destroy()},[o]);const a=o.announce,l=o.flush,u=c.useCallback(v=>{const C=vu(v,s.current);a(C)},[a]),d=c.useCallback((v,C)=>{const y=yu(v,s.current),E=(C==null?void 0:C.mode)??Cu(v.event);a(y,{mode:E,dedupeKey:C==null?void 0:C.dedupeKey})},[a]),m=c.useCallback((v,C)=>{const y=Su(v,s.current);o.announceIgnoringSuppression(y),C&&setTimeout(()=>{C.focus()},vd)},[o]),h=c.useCallback((v,C)=>{if(C){n.current.add(v);return}n.current.delete(v)},[]),f=c.useMemo(()=>({announce:a,announceScreenEntry:u,announceStatus:d,announceError:m,flush:l,setSuppressionState:h}),[a,m,u,d,l,h]);return i.createElement(Sd,{value:f},e,i.createElement("div",{ref:t,role:"status","aria-live":"polite","aria-atomic":"true",style:Ad}))},Jo=Ee("ConversationAnnouncements",{announcementsActive:!0,announce:he,announceScreenEntry:he,announceStatus:he,announceError:he,setIsSuppressed:he,setStatusPauseState:he,flush:he}),Td=Jo.Provider,Je=Jo.useContext,Id=({children:e,announcementsActive:t=!0})=>{const{announce:n,announceScreenEntry:r,announceStatus:s,announceError:o,flush:a,setSuppressionState:l}=Sr(),u=c.useRef([]),d=c.useRef(new Set),m=c.useRef(Symbol("conversation-announcements")),h=c.useCallback(M=>{if(!t||!M){l(m.current,!1);return}l(m.current,!0)},[t,l]),f=c.useCallback(()=>{u.current=[]},[]),v=c.useCallback(()=>{if(u.current.length===0)return;if(!t){f();return}const M=[...u.current];f(),M.forEach(B=>{a(),s(B.params,B.options)})},[s,t,f,a]),C=c.useCallback((M,B)=>{if(B){d.current.add(M);return}d.current.delete(M),d.current.size===0&&v()},[v]),y=c.useCallback(M=>{t&&n(M)},[n,t]),E=c.useCallback(M=>{t&&r(M)},[r,t]),_=c.useCallback((M,B)=>{if(t){if(d.current.size>0){u.current.push({params:M,options:B});return}s(M,B)}},[s,t]),b=c.useCallback((M,B)=>{t&&o(M,B)},[o,t]);c.useLayoutEffect(()=>(t||(f(),l(m.current,!1)),()=>{f(),l(m.current,!1)}),[t,f,l]);const A=c.useMemo(()=>({announcementsActive:t,announce:y,announceScreenEntry:E,announceStatus:_,announceError:b,setIsSuppressed:h,setStatusPauseState:C,flush:a}),[t,a,y,b,E,_,h,C]);return i.createElement(Td,{value:A},e)},U=({as:e,variant:t="body1",color:n,maxTextLines:r,className:s,...o})=>i.createElement(kd,{as:e,$variant:t,className:s,$color:n,$maxTextLines:r,...o}),Cs=new WeakMap,wd=(e,t)=>{let n=Cs.get(t);n||(n=new Map,Cs.set(t,n));const r=n.get(e);if(r)return r;const s=t[e]??t.body1,o=P.css`font-size:${We(s.fontSize)};font-weight:${s.fontWeight};${s.fontFamily?`font-family: ${s.fontFamily};`:""}
79
79
  ${s.lineHeight?`line-height: ${s.lineHeight};`:"line-height: 100%;"}
80
- `;return n.set(e,o),o},od=e=>e?P.css`display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:${e};overflow:hidden;`:"",id=_.default.span`font-stretch:normal;letter-spacing:normal;${({$variant:e,theme:t})=>sd(e,t.typography)}color:${({$color:e})=>e};${({$maxTextLines:e})=>od(e)}`,_n=["a[href]","button:not(:disabled)","input:not(:disabled)","select:not(:disabled)","textarea:not(:disabled)",'[tabindex]:not([tabindex="-1"])'].join(", "),ad=`${_n}, [tabindex="-1"]`,yt=e=>{if(!e.isConnected||e.hidden)return!1;let t=e;const n=e.ownerDocument.defaultView;for(;t;){if(t.hidden||t.getAttribute("aria-hidden")==="true")return!1;if(n){const r=n.getComputedStyle(t);if(r.display==="none"||r.visibility==="hidden")return!1}t=t.parentElement}return!0};async function br(e){let t=e;t&&(!t.startsWith("http://")&&!t.startsWith("https://")&&(t="https://"+t),window.open(t,"_blank","noopener,noreferrer"))}function Oe(e){requestAnimationFrame(()=>{requestAnimationFrame(()=>{e()})})}const ld='[data-sb-initial-focus="true"]',Ho=e=>Array.from(e.querySelectorAll(_n)).filter(yt),cd=e=>Array.from(e.querySelectorAll(ld)).find(yt)??Ho(e)[0]??null,ud=e=>Array.from(e.ownerDocument.querySelectorAll('[role="dialog"][aria-modal="true"]')).some(t=>t!==e&&yt(t)),dd=e=>{const t=cd(e)??e;t===e&&!e.hasAttribute("tabindex")&&e.setAttribute("tabindex","-1"),t.focus()},md=(e,t,n)=>{const r=Ho(t);if(r.length===0){e.preventDefault(),t.focus();return}const s=r[0],o=r[r.length-1],a=n.activeElement;(e.shiftKey?a===s:a===o)&&(e.preventDefault(),(e.shiftKey?o:s).focus())},hd=(e,t)=>{const n=c.useRef(null);c.useEffect(()=>{if(!e||!t.current)return;const r=t.current,s=r.getRootNode();n.current=s.activeElement instanceof HTMLElement?s.activeElement:null;let o=!1;return Oe(()=>{o||!r.isConnected||dd(r)}),()=>{o=!0;const a=n.current;n.current=null,a&&Oe(()=>{ud(r)||!a.isConnected||!yt(a)||a.focus()})}},[e,t]),c.useEffect(()=>{if(!e||!t.current)return;const r=t.current,s=r.getRootNode(),o=a=>{a.key==="Tab"&&md(a,r,s)};return r.addEventListener("keydown",o),()=>r.removeEventListener("keydown",o)},[e,t])},ut=({style:e,portalContainerId:t,visible:n,onClose:r,children:s,"aria-label":o,"aria-labelledby":a,"aria-describedby":l})=>{const u=c.useRef(null),{resolvePortalContainer:d}=_r();return hd(n,u),yu(n,r),n?zi.createPortal(i.createElement(fd,{onClick:r,style:e},i.createElement(gd,{ref:u,role:"dialog","aria-modal":"true","aria-label":o,"aria-labelledby":a,"aria-describedby":l,onClick:m=>m.stopPropagation()},s)),d(t)):null},fd=_.default.div`position:fixed;top:0;left:0;width:100%;height:100%;background:${p.color.overlay.dark};display:flex;justify-content:center;align-items:center;z-index:${vt.MODAL};`,gd=_.default.div`border-radius:4px;overflow:hidden;box-shadow:0 16px 24px 2px rgba(13,13,13,0.12),0 6px 30px 5px rgba(13,13,13,0.08),0 6px 10px -5px rgba(13,13,13,0.04);z-index:${vt.MODAL};`,pd=({id:e,children:t})=>i.createElement(_d,{id:e},t),_d=_.default.span`position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;`,Wt=(e,t)=>e!=null&&e.startsWith("image")?t.A11Y_HINT_OPEN_IMAGE:t.A11Y_HINT_OPEN_FILE,Yt=({name:e,mimeType:t,selected:n},r)=>{var o;const s=t!=null&&t.startsWith("image")?r.A11Y_FILE_IMAGE(e):t!=null&&t.startsWith("video")?r.A11Y_FILE_VIDEO(e):r.A11Y_FILE_DOCUMENT(e);return n?((o=r.A11Y_FILE_SELECTED)==null?void 0:o.call(r,s))??`${s}, selected`:s},Ae=(e,t)=>t?{describedByProps:{"aria-describedby":e},descriptionNode:c.createElement(pd,{id:e,children:t})}:{describedByProps:{},descriptionNode:null},Ed=(e,t,n,r)=>{var o;const s=n.trim()||n;return((o=r.A11Y_CSAT_RATING_LABEL)==null?void 0:o.call(r,e,s))??`${e} / ${t} — ${s}`},bd=e=>t=>{t.repeat||(t.key==="Enter"||t.key===" ")&&(t.preventDefault(),e())},wt=({onActivate:e})=>({role:"button",tabIndex:0,onClick:e,onKeyDown:bd(e)}),se=()=>{const{stringSet:e}=re(),t=c.useId(),n=c.useId(),r=c.useId(),s=c.useId(),o=c.useId(),a=c.useId(),l=c.useId(),u=c.useId(),d=c.useId(),m=c.useId(),h=c.useId(),f=c.useId(),v=c.useId(),b=c.useId(),C=c.useId(),g=c.useId(),y=x=>x===e.A11Y_HINT_OPEN_CONVERSATION?Ae(t,x):x===e.A11Y_HINT_OPEN_CONVERSATIONS?Ae(n,x):(x===e.A11Y_HINT_CLOSE_CONVERSATION,Ae(r,x)),E=Ae(s,e.A11Y_HINT_OPEN_MENU),I=Ae(o,e.A11Y_HINT_CLOSE_CONVERSATION),A=Ae(a,e.A11Y_HINT_CONNECT_TO_AGENT),w=Ae(l,e.A11Y_HINT_ATTACH_FILE),k=Ae(u,e.A11Y_HINT_SEND_MESSAGE),N=Ae(d,e.A11Y_HINT_VIEW_NEW_MESSAGES),W=Ae(m,e.A11Y_HINT_VIEW_NEW_MESSAGES),G=Ae(h,e.A11Y_HINT_SEND_REPLY),K=Ae(f,e.A11Y_HINT_SELECT_RATING),L=Ae(v,e.A11Y_HINT_SELECT_RATING),V=Ae(b,e.A11Y_HINT_OPEN_CONVERSATION),Y=x=>{const D=Wt(x,e);return x!=null&&x.startsWith("image")?Ae(g,D):Ae(C,D)};return{launcher:{button:({isOpened:x,opensConversationList:D})=>{const $=au({intent:su({isOpened:x,opensConversationList:D}),strings:{openConversation:e.A11Y_OPEN_CONVERSATION,openConversationList:e.A11Y_OPEN_CONVERSATIONS,closeConversation:e.A11Y_CLOSE_CONVERSATION,closeConversationList:e.A11Y_CLOSE_CONVERSATIONS,hintOpenConversation:e.A11Y_HINT_OPEN_CONVERSATION,hintOpenConversationList:e.A11Y_HINT_OPEN_CONVERSATIONS,hintCloseConversation:e.A11Y_HINT_CLOSE_CONVERSATION}}),Q=y($.hint);return{props:{"aria-label":$.label,...Q.describedByProps},hint:$.hint,descriptionNode:Q.descriptionNode}}},messenger:{closeButton:{"aria-label":e.A11Y_CLOSE_MESSENGER},expandButton:x=>({"aria-label":x?e.A11Y_COLLAPSE_MESSENGER:e.A11Y_EXPAND_MESSENGER}),connectionDelayDialog:{"aria-label":e.CONNECTION_DELAY__TITLE}},conversation:{header:{menuButton:{props:{"aria-label":e.A11Y_MENU,...E.describedByProps},hint:e.A11Y_HINT_OPEN_MENU,descriptionNode:E.descriptionNode},closeConversationButton:{props:{"aria-label":e.A11Y_CLOSE_CONVERSATION,...I.describedByProps},hint:e.A11Y_HINT_CLOSE_CONVERSATION,descriptionNode:I.descriptionNode},handoffButton:{props:{"aria-label":e.A11Y_CONNECT_AGENT,...A.describedByProps},hint:e.A11Y_HINT_CONNECT_TO_AGENT,descriptionNode:A.descriptionNode},title:x=>({role:"heading","aria-level":2,"aria-label":x,tabIndex:-1})},messageInput:{attachFileButton:{props:{"aria-label":e.A11Y_ATTACH_FILE,...w.describedByProps},hint:e.A11Y_HINT_ATTACH_FILE,descriptionNode:w.descriptionNode},sendButton:{props:{"aria-label":e.A11Y_SEND_MESSAGE,...k.describedByProps},hint:e.A11Y_HINT_SEND_MESSAGE,descriptionNode:k.descriptionNode},textInput:x=>({role:"textbox","aria-label":x})},suggestedReplies:{hint:e.A11Y_HINT_SEND_REPLY,descriptionNode:G.descriptionNode,item:x=>({props:{"aria-label":`${e.A11Y_SUGGESTED_REPLY}, ${x}`,...G.describedByProps}})},feedback:{hint:e.A11Y_HINT_SELECT_RATING,descriptionNode:K.descriptionNode,button:(x,D)=>({props:{"aria-label":x==="good"?e.FEEDBACK_GOOD:e.FEEDBACK_BAD,...K.describedByProps,"aria-pressed":D}}),optionsBottomSheet:{"aria-label":e.A11Y_FEEDBACK_OPTIONS}},newMessagesButton:{props:{"aria-label":e.A11Y_SCROLL_TO_NEW_MESSAGES,...N.describedByProps},hint:e.A11Y_HINT_VIEW_NEW_MESSAGES,descriptionNode:N.descriptionNode},scrollToBottomButton:{props:{"aria-label":e.A11Y_SCROLL_TO_BOTTOM,...W.describedByProps},hint:e.A11Y_HINT_VIEW_NEW_MESSAGES,descriptionNode:W.descriptionNode},startNewConversationButton:({onActivate:x})=>({...wt({onActivate:x}),"aria-label":e.TALK_TO_AGENT}),poweredByLink:{"aria-label":`${e.POWERED_BY} Sendbird`},retryButton:(x=e.RETRY)=>({"aria-label":x}),file:{label:(x,D)=>x?Yt({name:x,mimeType:D},e):"",preview:x=>({props:{"aria-label":Yt(x,e)}}),interactivePreview:x=>{const D=Y(x.mimeType);return{props:{"aria-label":Yt(x,e),...D.describedByProps},hint:Wt(x.mimeType,e),descriptionNode:D.descriptionNode}},openDescription:x=>{const D=Y(x);return{props:D.describedByProps,hint:Wt(x,e),descriptionNode:D.descriptionNode}},buttonLikeInteractivePreview:({onActivate:x,...D})=>{const $=Y(D.mimeType);return{props:{...wt({onActivate:x}),"aria-label":Yt(D,e),...$.describedByProps},hint:Wt(D.mimeType,e),descriptionNode:$.descriptionNode}},removeButton:x=>({"aria-label":e.A11Y_FILE_REMOVE_BUTTON(x)})},csat:{scoresContainer:x=>({props:{role:"radiogroup","aria-label":x},descriptionNode:L.descriptionNode}),scoreItem:({score:x,label:D,selected:$,disabled:Q,currentIndex:ae,totalCount:de,hasSelection:we,onChange:T})=>({props:{disabled:Q,onClick:()=>T(x),onKeyDown:F=>{var pe;if(Q)return;let z=null;switch(F.key){case"ArrowRight":case"ArrowDown":z=(ae+1)%de;break;case"ArrowLeft":case"ArrowUp":z=(ae-1+de)%de;break;default:return}F.preventDefault(),T(z+1);const J=F.currentTarget.parentElement,me=J==null?void 0:J.querySelectorAll('[role="radio"]');(pe=me==null?void 0:me[z])==null||pe.focus()},tabIndex:$||!we&&ae===0?0:-1,role:"radio","aria-checked":$,"aria-disabled":Q,...L.describedByProps,"aria-label":Ed(x,de,D,e)}}),submitButton:x=>({"aria-label":x})},form:{button:x=>({"aria-label":x}),textInput:(x,D,$)=>({"aria-label":x,"aria-required":D,"aria-disabled":$}),numberInput:(x,D,$)=>({"aria-label":x,"aria-required":D,"aria-disabled":$}),singleSelectGroup:x=>({role:"radiogroup",...x?{"aria-label":x}:{}}),singleSelectOption:(x,D,$)=>({role:"radio","aria-label":x,"aria-checked":D,"aria-disabled":$}),multiSelectOption:(x,D,$)=>({"aria-label":x,"aria-pressed":D,"aria-disabled":$})}},conversationList:{footer:{button:({onActivate:x})=>({...wt({onActivate:x}),"aria-label":e.TALK_TO_AGENT})},item:({agent:x,status:D,time:$,unreadCount:Q,onActivate:ae})=>{const de=typeof ae<"u",we=de?V:{describedByProps:{},descriptionNode:null};return{props:{...de?wt({onActivate:ae}):{},...we.describedByProps,"aria-label":e.A11Y_CONVERSATION_ITEM(x,D,$,Q)},hint:de?e.A11Y_HINT_OPEN_CONVERSATION:void 0,descriptionNode:de?we.descriptionNode:void 0}}}}},Cd=({title:e,description:t,highlightedText:n})=>{const r=Mc(t,n);return i.createElement(yd,null,i.createElement(Sd,null,i.createElement(B,{as:"div",variant:"h1",color:p.themedColor.textHighEmphasis},e),t&&i.createElement(Ad,null,i.createElement(B,{as:"div",variant:"body3",color:p.themedColor.textMidEmphasis},r.beforeText,r.highlightedText?i.createElement(xd,null,r.highlightedText):null,r.afterText))))},vd=()=>{const{components:e}=En.useContext(),{stringSet:t}=re(),n=se(),r=Ic(),s=r.showDescription?wc(r.remainingTime):"",o=r.showDescription?t.CONNECTION_DELAY__DESCRIPTION(s):"";return i.createElement(ut,{portalContainerId:ve.WINDOW,visible:r.visible,onClose:he,...n.messenger.connectionDelayDialog},i.createElement(e.Dialog,{title:t.CONNECTION_DELAY__TITLE,description:o,highlightedText:s||void 0}))},En=qe({template:vd,components:{Dialog:Cd}}),yd=_.default.div`width:280px;padding:24px;margin:0 auto;border-radius:4px;box-sizing:border-box;background-color:${({theme:e})=>e.colors.base.modalContentBackground};`,Sd=_.default.div`display:flex;flex-direction:column;`,Ad=_.default.div`margin-top:16px;`,xd=_.default.strong`font-weight:700;`,{Provider:Td,Consumer:Go,useContext:fe}=Ee("Messenger");function Id({children:e,state:t,enableCloseConversationButton:n=!1,enableExpandButton:r=!0,enableAutoDisconnectInLauncher:s=!0,...o}){const[a,l]=c.useState(!1),[u,d]=c.useState(!1),m={opened:(t==null?void 0:t.opened)??a,setOpened:(t==null?void 0:t.setOpened)??l,expanded:(t==null?void 0:t.expanded)??u,setExpanded:(t==null?void 0:t.setExpanded)??d},{resolveElement:h}=_r(),f=c.useCallback(()=>{var b;m.setOpened(!1),(b=h(ve.LAUNCHER))==null||b.focus()},[m.setOpened,h]);Su(m.opened,f);const{Template:v}=En.useContext();return i.createElement(rl,{...o},b=>i.createElement(Td,{value:{...o,...b,state:m,enableCloseConversationButton:n,enableExpandButton:r,enableAutoDisconnectInLauncher:s}},i.createElement(v,null),e))}const Vo=/iPad|iPhone|iPod/.test(navigator.userAgent),wd=/Android/.test(navigator.userAgent),Dt=e=>Vo||wd;let It=null,Ln=null;const Md=(e,t=5e3)=>{It&&(clearInterval(It),clearTimeout(Ln));const n=document.title;It=setInterval(()=>{document.title=document.title===e?n:e},750),Ln=setTimeout(()=>{clearInterval(It),It=null,Ln=null,document.title=n},t)},zo=()=>{Promise.resolve().then(()=>require("./cjs/B93o4u0P.cjs")).then(e=>{new Audio(e.default).play().catch(()=>{})})},Ie=P.css`&:focus-visible{outline:2px solid ${p.themedColor.primary};outline-offset:2px;}`,fs=e=>{if(typeof e=="string"||typeof e=="number")return String(e)},Cr=({visible:e,title:t,description:n,confirmText:r="OK",cancelText:s,onConfirm:o,onCancel:a,onClose:l,"aria-label":u})=>{const d=c.useId(),m=c.useId(),h=u??fs(t)??fs(n),f=u?void 0:t?d:n?m:void 0,v=t&&n?m:void 0,b=()=>{l(),Oe(()=>o==null?void 0:o())},C=()=>{l(),Oe(()=>a==null?void 0:a())};return i.createElement(ut,{portalContainerId:ve.WINDOW,visible:e,onClose:l,"aria-label":h,"aria-labelledby":f,"aria-describedby":v},i.createElement(kd,null,i.createElement(Ld,null,t&&i.createElement("div",{id:d},i.createElement(B,{variant:"h1",color:p.themedColor.textHighEmphasis},t)),n&&i.createElement(Rd,{id:m},i.createElement(B,{variant:"body3",color:p.themedColor.textMidEmphasis},n))),i.createElement(Od,null,s&&i.createElement(gs,{onClick:C},i.createElement(B,{variant:"button",color:p.themedColor.textHighEmphasis},s)),i.createElement(gs,{onClick:b},i.createElement(B,{variant:"button",color:p.themedColor.primary},r)))))},kd=_.default.div`width:360px;height:auto;padding-block:24px 12px;padding-inline:24px;margin:0 auto;border-radius:4px;box-sizing:border-box;background-color:${({theme:e})=>e.colors.base.modalContentBackground};`,Ld=_.default.div`margin-bottom:16px;`,Rd=_.default.div`margin-top:16px;`,Od=_.default.div`display:flex;flex-direction:row;justify-content:flex-end;`,gs=_.default.button`all:unset;display:flex;justify-content:center;align-items:center;border-radius:4px;cursor:pointer;background-color:transparent;padding:10px 16px;${Ie}`,{Provider:Nd,useContext:Ne}=Ee("MessengerSession"),Dd=c.forwardRef(function({children:e,...t},n){return i.createElement(Fl,{ref:n,...t},r=>i.createElement($d,{...r},e))}),$d=({children:e,...t})=>{const{chatSDK:n,logger:r,appId:s,aiAgentId:o,agentPreviewConfigs:a,state:l,handlers:u,dispatcher:d,_aiAgentSDK:m}=fe(),{userSessionInfo:h,authenticate:f,userSession:v,aiAgentInfo:b,launcherInfo:C}=t,[g,y]=c.useState(!1),E=c.useRef(null);bt(n,{async onUserJoined(A,w){var N,W,G,K;A.conversation&&A.conversation.type===Re.ConversationType.PROACTIVE&&w.userId===((N=n.currentUser)==null?void 0:N.userId)&&(r.info("messengerSession.onUserJoined: proactive channel joined",A.url),(G=m.session)==null||G._updateActiveChannel({url:A.url,status:"open",conversationStatus:(W=A.conversation)==null?void 0:W.status}),l.setOpened(!0),Pd({sound:document.hidden||!l.opened}),(K=E.current)==null||K.call(E,{channel:A}))}}),c.useEffect(()=>{f().then(({launcher:A})=>{A.auto_open&&!Dt()&&setTimeout(()=>l.setOpened(!0),500)}).catch(A=>{var w;r.error("messengerSession: failed to initialize",A),(w=u==null?void 0:u.onInitializeFailed)==null||w.call(u,A)})},[n,s,o,h==null?void 0:h.userId]),c.useEffect(()=>{const A=()=>y(!0);return d.subscribe(Ve.AnonymousSessionTokenExpired,A),()=>d.unsubscribe(Ve.AnonymousSessionTokenExpired,A)},[d]);const I=c.useCallback(()=>{t.deauthenticate().finally(()=>window.location.reload())},[t.deauthenticate]);return!v||!b||!C?null:i.createElement(Nd,{value:{...t,userSession:v,aiAgentInfo:{...b,...a==null?void 0:a.bot},launcherInfo:{...C,...a==null?void 0:a.launcher},registerOnJoinedProactiveConversation:A=>E.current=A}},e,i.createElement(Cr,{visible:g,title:"Session timed out",description:"Start a new conversation.",onConfirm:I,onClose:he}))};function Pd({sound:e}){Md("🔔You have received a new message"),e&&zo()}const hn=`@${He}-focused-channel`,qo=`${Date.now()}-${Math.random().toString(36).slice(2)}`,Fd=()=>{try{const e=localStorage.getItem(hn);return e?JSON.parse(e).channelUrl??null:null}catch{return null}},ps=e=>{try{localStorage.setItem(hn,JSON.stringify({channelUrl:e,tabId:qo}))}catch{}},_s=()=>{try{const e=localStorage.getItem(hn);if(!e)return;JSON.parse(e).tabId===qo&&localStorage.removeItem(hn)}catch{}},Bd=(e,t)=>(c.useEffect(()=>{if(!t||!e)return;const n=()=>ps(e),r=()=>_s();return document.hasFocus()&&ps(e),window.addEventListener("focus",n),window.addEventListener("blur",r),()=>{window.removeEventListener("focus",n),window.removeEventListener("blur",r),_s()}},[t,e]),{isChannelViewedInAnyTab:()=>document.hasFocus()||Fd()===e}),Ud=e=>{var a;const{config:t,chatSDK:n}=fe(),{sdkUser:r}=Ne(),s=!!((a=t==null?void 0:t.conversation)!=null&&a.messageAlertSoundEnabled),{isChannelViewedInAnyTab:o}=Bd(e,s);bt(n,{onMessageReceived(l,u){if(!s||l.url!==e||o())return;(Xe(u)&&u.sender.userId!==(r==null?void 0:r.userId)||u.isAdminMessage()&&!u.silent)&&zo()}})};function Hd(e){return new Promise(t=>{const n=new Image;n.onload=function(){const r=String(n.width),s=String(n.height);URL.revokeObjectURL(n.src),t({width:r,height:s})},n.src=URL.createObjectURL(e)})}async function Gd(e){if("file"in e&&e.file instanceof File&&e.file.type.startsWith("image/")){const{width:t,height:n}=await Hd(e.file);return new ze.MessageMetaArray({key:Qs,value:[t,n]})}}const Vd=({onScrollAfterSendMessage:e})=>{const{agentPreviewConfigs:t,handlers:n}=fe(),r=c.useRef(t==null?void 0:t.agentAttributes);return r.current=t==null?void 0:t.agentAttributes,{onBeforeSendMessage:async s=>{const o=await Gd(s),a={...s,metaArrays:o?[o]:void 0},l=zd(r.current);return l?{...a,data:JSON.stringify(l)}:a},onAfterSendMessage:s=>{var o,a,l;e(),(o=n==null?void 0:n.onMessageSend)==null||o.call(n,s.message),s.sendingStatus===ze.SendingStatus.SUCCEEDED?(a=n==null?void 0:n.onCustomEvent)==null||a.call(n,{type:"message-sent-succeeded",data:{message:s}}):s.sendingStatus===ze.SendingStatus.PENDING&&((l=n==null?void 0:n.onCustomEvent)==null||l.call(n,{type:"message-sent-pending",data:{message:s}}))}}},zd=e=>{if(!e)return null;const t={};return e.ai&&Object.keys(e.ai).length>0&&(t.ai_attrs=e.ai),e.safeguard&&Object.keys(e.safeguard).length>0&&(t.safeguard_attrs=e.safeguard),typeof e.use_prompt_cache=="boolean"&&(t.use_prompt_cache=e.use_prompt_cache),Object.keys(t).length>0?t:null},ft=50,Rn=ft-40,{Provider:qd,useContext:Wo}=Ee("ConversationScroll"),Es={viewport:0,contentHeight:0,contentSnapshotHeight:0,shouldRecalc:!1,shouldUpdate:!1},On=e=>Math.max(0,e.scrollHeight-e.scrollTop-e.clientHeight);function Wd({scrollMode:e,messageStackDirection:t,children:n}){const r=c.useRef(null),s=c.useRef(null),o=c.useRef(0),a=c.useRef(0),l=c.useRef(!1),u=c.useRef(!1),d=c.useRef(null),m=c.useRef(Es),h=c.useRef(!1),f=c.useRef(null),[v,b]=c.useState(0),[C,g]=c.useState(0),[y,E]=c.useState(!1),[I,A]=c.useState(!1),[w,k]=c.useState(!0),N=M=>{const R=On(M);return o.current=R,g(R),R},W=()=>{d.current&&(clearTimeout(d.current),d.current=null)},G=c.useMemo(()=>y||t==="bottom"?"auto":e,[y,t,e]),K=()=>{m.current.contentSnapshotHeight=m.current.contentHeight,m.current.shouldUpdate=!0,m.current.shouldRecalc=!0},L=()=>{const M=r.current;!M||!m.current.shouldUpdate||b(R=>{m.current.shouldUpdate=!1;const{contentHeight:O,contentSnapshotHeight:j,shouldRecalc:q}=m.current,U=M.clientHeight;if(j>O)return R;const H=V(M,{messageType:"outgoing"});let oe=0;if(H){const Ge=H.message.offsetTop-Rn+U;oe=Math.max(0,Ge-O)}else{const Ge=O-j,ne=U-Rn;oe=Math.max(0,Ge-ne)}return R===0||oe!==R||q?(m.current.shouldRecalc=!1,oe):R})},V=c.useCallback((M,R)=>{const{messageType:O="all"}=R??{},j=Array.from(M.querySelectorAll(`#${He}-message-item`));let q=j;O==="outgoing"&&(q=j.filter(ie=>ie.getAttribute("data-layout-id")==="outgoingmessage"));const U=q[q.length-1];if(!U)return null;const H=M.getBoundingClientRect(),oe=U.getBoundingClientRect(),Ge=M.scrollTop+(oe.top-H.top),ne=Ge+U.offsetHeight;return{message:U,scrollTop:Ge,lastMessageBottom:ne}},[]),Y=c.useCallback(()=>{const M=r.current;if(!M||G!=="fixed")return;const R=V(M);m.current.contentHeight=(R==null?void 0:R.lastMessageBottom)??M.scrollHeight,!h.current&&m.current.contentSnapshotHeight>0&&K(),u.current?o.current=On(M):N(M),L()},[G,V]),x=c.useCallback(()=>{s.current&&(s.current.disconnect(),s.current=null),W(),m.current=Es,b(0),g(0),k(!0),o.current=0,l.current=!1,a.current=0,u.current=!1},[]),D=c.useCallback((M=!0)=>{const R=o.current>ft;if(l.current=!1,g(0),!R){Oe(()=>{const O=r.current;O&&!l.current&&O.scrollTo({top:O.scrollHeight,behavior:"auto"})});return}u.current||(u.current=!0,k(!1),W()),Oe(()=>{const O=r.current;if(!O){u.current=!1,k(!0);return}if(l.current){u.current=!1,N(O),k(!0);return}const j=()=>{if(r.current!==O){u.current=!1,r.current&&N(r.current),k(!0);return}u.current=!1,N(O),k(!0)};if(M&&!d.current){const q=setTimeout(j,500);d.current=q,O.addEventListener("scrollend",()=>{clearTimeout(q),d.current=null,j()},{once:!0})}O.scrollTo({top:O.scrollHeight,behavior:M?"smooth":"auto"}),M||j()})},[]),$=c.useCallback(M=>{M&&(r.current=M,G==="fixed"&&(x(),m.current.viewport=M.clientHeight,s.current=new MutationObserver(()=>{Y()}),s.current.observe(M,{childList:!0,subtree:!0})))},[G,Y,x]),Q=c.useCallback(()=>{const M=r.current;if(!M)return;const R=V(M,{messageType:"outgoing"});R&&(M.scrollTo({top:R.message.offsetTop-Rn,behavior:"smooth"}),f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{A(!1)},500))},[V]),ae=(M,R,O)=>{const j=On(M);if(O&&j>ft){u.current=!1,l.current=!0,W(),N(M),k(!0),a.current=R;return}o.current=j},de=(M,R,O)=>{const q=N(M)<=ft;R&&!q&&(l.current=!0,W()),O&&q&&(l.current=!1)},we=M=>{const{scrollTop:R}=M.currentTarget,O=a.current;u.current?ae(M.currentTarget,R,R<O):de(M.currentTarget,R<O,R>O),a.current=R},T=c.useCallback(()=>{G==="fixed"&&(A(!0),K())},[G]),F=c.useCallback(()=>{G==="fixed"?setTimeout(()=>Q(),300):D()},[G,Q]),z=c.useCallback(M=>{h.current=M,G==="fixed"?K():l.current||D()},[G,D]),J=c.useCallback(M=>{E(M),M&&(b(0),s.current&&(s.current.disconnect(),s.current=null))},[]),me=c.useCallback(M=>{G==="auto"&&M&&!l.current&&D()},[G,D]),Pe=!(C<=ft)&&!I,Me=c.useCallback(()=>o.current>ft,[]);return i.createElement(qd,{value:{ref:$,state:{bottomSpace:v,isAwayFromBottom:Pe,isScrollPositionReconciled:w,shouldCountNewMessages:Me},props:{onScroll:we},actions:{scrollToBottom:D,onBeforeMessageSend:T,onAfterMessageSend:F,onStreamingUpdate:z,onConversationClosed:J,onTypingIndicatorUpdate:me}}},n)}const{Provider:Yd,Context:Kd,useContext:ye}=Ee("Conversation"),jd=({children:e})=>{var s;const{channelSource:t}=ye(),n=(s=t.channel)==null?void 0:s.url,{checkForUserActionRequired:r}=fc(n);return c.useEffect(()=>{var a;const o=(a=t.channel)==null?void 0:a.lastMessage;o&&r(o)},[t.channel,r]),i.createElement(i.Fragment,null,e)},Xd=({channelUrl:e,onClearChannelUrl:t,onNavigateToConversationList:n,shouldMarkAsRead:r,children:s})=>{const{activeChannel:o,refreshActiveChannel:a}=Ne(),l=Wo(),u=e||(o==null?void 0:o.url);Ud(u);const{onBeforeSendMessage:d,onAfterSendMessage:m}=Vd({onScrollAfterSendMessage:()=>{l.actions.onAfterMessageSend()}}),h=c.useCallback(b=>(l.actions.onBeforeMessageSend(),d(b)),[l.actions,d]),f=c.useCallback(b=>{const C=b.some(g=>Ke.isStreaming(g));l.actions.onStreamingUpdate(C)},[l.actions.onStreamingUpdate]),v=c.useCallback(async()=>{await a(),e&&(t==null||t())},[a,e,t]);return i.createElement(Xl,{key:u,channelUrl:u,onBeforeSendMessage:h,onAfterSendMessage:m,onMessagesUpdated:f,onMessagesReceived:f,onChannelDeleted:v,onConversationClosedStatusChanged:l.actions.onConversationClosed,shouldMarkAsRead:r,shouldCountNewMessages:l.state.shouldCountNewMessages},b=>i.createElement(Yd,{value:{...b,scrollSource:l,goToActiveConversation:v,onNavigateToConversationList:n}},i.createElement(jd,null,s)))},Yo=({children:e,...t})=>{var a;const{config:n}=$e(),{agentPreviewConfigs:r}=fe(),s=((a=n==null?void 0:n.conversation)==null?void 0:a.scrollMode)??"auto",o=r==null?void 0:r.messageStackDirection;return i.createElement(Wd,{scrollMode:s,messageStackDirection:o},i.createElement(Xd,{...t},e))},vr=c.createContext({onDrop:he,subscribe:()=>he}),jn=({children:e})=>{const t=c.useRef(new Set);return i.createElement(vr.Provider,{value:{onDrop:n=>{var r;if(n.preventDefault(),(r=n.dataTransfer)!=null&&r.files){const s=Array.from(n.dataTransfer.files);s.length>0&&t.current.forEach(o=>o(s))}},subscribe:n=>(t.current.add(n),()=>t.current.delete(n))}},e)},Zd=({onDropFiles:e})=>{const{subscribe:t}=c.useContext(vr);c.useEffect(()=>t(e),[e])};jn.Consumer=({children:e})=>{const{onDrop:t}=c.useContext(vr);return e({onDrop:t,onDragOver:s=>s.preventDefault()})};const Qt=(e,t)=>Array.from(e.querySelectorAll(t)).find(yt)??null,Jd=e=>{const t=Qt(e,gr);if(t){t.focus();return}const n=e.querySelector(uu);if(n){const s=Qt(n,ad);if(s){s.focus();return}}const r=Qt(e,_n);if(r){r.focus();return}e.hasAttribute("tabindex")||e.setAttribute("tabindex","-1"),e.focus()},Qd=e=>{const{announcementsActive:t}=st(),{channelSource:n}=ye(),r=c.useRef(!1),s=n.channel,o=n.error,a=s!=null||o!=null;c.useEffect(()=>{if(!t||r.current||!e.current||!(Qt(e.current,gr)!=null)&&!a)return;let u=!1;return Oe(()=>{u||r.current||!e.current||(r.current=!0,Jd(e.current))}),()=>{u=!0}},[t,a,e])},em=e=>at(e)||to(e);function tm(e){return e.isAdminMessage()?e.message==="The channel's custom_type was updated.":!1}function nm(e,t){return e.filter(n=>Ke.isWelcomeMessage(n,t))}const Ko=(e,{previewWelcomeMessages:t,aiAgentUserId:n})=>e.filter(r=>tm(r)?!1:t.length>0?!Ke.isWelcomeMessage(r,n):!0),rm=[],jo=()=>{var b,C,g,y,E,I;const{agentPreviewConfigs:e={},aiAgentId:t}=fe(),{aiAgentInfo:n,userSession:r}=Ne(),{channelSource:s,messageSource:o,state:{input:a,streamAnimation:l}}=ye(),u=e.welcomeMessages??rm,d=c.useMemo(()=>Ko(o.messages,{previewWelcomeMessages:u,aiAgentUserId:t}),[t,o.messages,u]),m=nt(s.channel),h=(C=(b=lo(s.channel,r.userId))==null?void 0:b.nickname)==null?void 0:C.trim(),f=m?(y=(g=s.channel)==null?void 0:g.name)==null?void 0:y.trim():(E=n==null?void 0:n.nickname)==null?void 0:E.trim(),v=h||f||void 0;return{initialized:o.initialized,channelUrl:(I=s.channel)==null?void 0:I.url,agentName:v,isClosed:De(s.channel),isHandedOff:m,messages:d,filteredMessagesCount:d.length,hasWelcomeMessages:u.length>0,inputDisabled:a.disabled,inputDisabledBy:a.disabledBy,isStreamAnimating:l.isAnimating,subscribeMessageEvents:o.subscribeMessageEvents,currentUserId:r.userId}},sm=(e={})=>{const{announceScreenEntry:t,announcementsActive:n}=st(),{initialized:r=!1,channelUrl:s,agentName:o,isClosed:a=!1,messages:l=[],hasWelcomeMessages:u=!1}=e,d=c.useRef(null),m=c.useMemo(()=>l.some(f=>Te.isAdmin(f)&&Te.isCSAT(f)),[l]),h=l.length===0&&!u;c.useEffect(()=>{if(!n){d.current=null;return}!r||!s||d.current!==s&&(t({screen:"conversation",agentName:o,isClosed:a,hasCSAT:m,...h?{isEmpty:!0}:{}}),d.current=s)},[o,t,n,s,m,r,a,h])},om=()=>{const e=jo();sm(e)},im=(e,t,n)=>t!=null&&t.startsWith("image")?n.A11Y_FILE_IMAGE(e):t!=null&&t.startsWith("video")?n.A11Y_FILE_VIDEO(e):n.A11Y_FILE_DOCUMENT(e),am=(e,t)=>{var r,s,o,a,l,u;const n=(r=e.message)==null?void 0:r.trim();if(e.isFileMessage()){const d=((s=e.name)==null?void 0:s.trim())||"";return _t({markdownText:n,comparisonText:d,plainText:im(d,e.type,t)})}if(e.isMultipleFilesMessage()){const d=((l=(a=(o=e.fileInfoList)==null?void 0:o[0])==null?void 0:a.fileName)==null?void 0:l.trim())||"",m=((u=e.fileInfoList)==null?void 0:u.length)??0;return _t({markdownText:n,comparisonText:d,plainText:m>0?t.CONVERSATION_LIST__MULTIPLE_FILES_COUNT(m):""})}return n?_t({markdownText:n}):fr("")},bs=(e,t,n=et.format)=>{const r=am(e,t),s="sender"in e?e.sender:void 0,o=pt({message:r.text,messageFormat:r.format,codeBlockPlaceholder:t.A11Y_CODE_BLOCK_PLACEHOLDER}),a=e.createdAt!=null&&e.createdAt!==0?n(e.createdAt,t.DATE_FORMAT__MESSAGE_TIMESTAMP):void 0,l=typeof(s==null?void 0:s.nickname)=="string"&&s.nickname.trim()||void 0;return[t.SCROLL_TO_NEW_MESSAGES_LABEL([e]),a,l,o].filter(u=>!!u).join(", ")},Cs=2e3,vs=400,en=e=>{const t=new Set;return"reqId"in e&&typeof e.reqId=="string"&&e.reqId.length>0&&t.add(`req:${e.reqId}`),"messageId"in e&&e.messageId>0&&t.add(`message:${String(e.messageId)}`),[...t]},Xo=e=>{if(!Te.isAdmin(e)||!Te.isCSAT(e))return null;const t=nu(e);return t?`csat:${t}`:null},lm=e=>{const t=new Set;for(const n of e){const r=Xo(n);r&&t.add(r)}return t},cm=(e,t)=>{for(let n=e.length-1;n>=0;n-=1){const r=e[n];if(r&&en(r).some(s=>t.includes(s)))return r}},Nn=(e,t)=>e.some(n=>t.includes(n)),ys=()=>typeof document>"u"?null:document.activeElement instanceof HTMLElement?document.activeElement:null,Dn=e=>new Map(e.map(({key:t,sendingStatus:n})=>[t,n])),um=()=>{const{announceStatusText:e,announceStatus:t,announcementsActive:n}=st(),{stringSet:r,format:s}=re(),{channelUrl:o,messages:a,isClosed:l,isHandedOff:u,agentName:d,initialized:m,inputDisabled:h,inputDisabledBy:f,isStreamAnimating:v,subscribeMessageEvents:b,currentUserId:C}=jo(),{outgoingMessageStates:g,outgoingMessageStatusSignature:y}=c.useMemo(()=>{if(!C)return{outgoingMessageStates:[],outgoingMessageStatusSignature:""};const T=a.flatMap(F=>{const z=tu(F,C);return!z||!("sendingStatus"in F)?[]:[{key:z,sendingStatus:F.sendingStatus}]});return{outgoingMessageStates:T,outgoingMessageStatusSignature:T.map(({key:F,sendingStatus:z})=>`${F}:${z}`).join(",")}},[C,a]),E=c.useRef({isClosed:!1,isHandedOff:!1,inputDisabled:h,inputDisabledBy:f,outgoingMessageStatuses:Dn(g)}),I=c.useRef({messages:a,currentUserId:C,inputDisabledBy:f,isStreamAnimating:v,stringSet:r,format:s}),A=c.useRef([]),w=c.useRef(null),k=c.useRef({eventKeys:[],text:null,replaceableUntil:null}),N=c.useRef(new Set),W=c.useRef(new Set),G=c.useRef(!1),K=c.useRef(o);I.current={messages:a,currentUserId:C,inputDisabledBy:f,isStreamAnimating:v,stringSet:r,format:s};const L=()=>I.current.isStreamAnimating||I.current.inputDisabledBy==="ai_responding",V=()=>{w.current!=null&&(clearTimeout(w.current),w.current=null)},Y=(T,F,z)=>{k.current={eventKeys:T,text:F,replaceableUntil:z!=null&&z.replaceableForMs?Date.now()+z.replaceableForMs:null}},x=()=>A.current.length>0,D=()=>{A.current=[]},$=()=>{const[T,...F]=A.current;if(!T)return!1;A.current=F;const{eventKeys:z,text:J}=T,me=Me=>{Y(z,Me,{replaceableForMs:z.length>0?Cs:void 0}),e(Me)};if(z.length===0)return J&&me(J),!0;const pe=I.current,Pe=cm(pe.messages,z);return Pe?(me(bs(Pe,pe.stringSet,pe.format)),!0):(J&&me(J),!0)},Q=()=>{for(V();$(););},ae=(T=Cs)=>{V(),w.current=setTimeout(()=>{if(w.current=null,L())return;const F=ys(),[z]=A.current;if(!z)return;if(z.focusTarget!==F){A.current=[{...z,focusTarget:F},...A.current.slice(1)],ae(vs);return}$()&&x()&&ae(vs)},T)},de=(T,F)=>{const z={eventKeys:F,text:T,focusTarget:ys()},J=F.length===0?-1:A.current.findIndex(({eventKeys:me})=>Nn(me,F));J>=0?A.current=A.current.map((me,pe)=>pe===J?z:me):A.current=[...A.current,z],ae()},we=(T,F,z)=>{if(T!=="messagesUpdated"||F.length===0)return!1;const J=k.current;return!Nn(J.eventKeys,F)||J.text==null||J.replaceableUntil==null||Date.now()>J.replaceableUntil?!1:z!==J.text};c.useEffect(()=>{const T=K.current!==o;(!n||!m||T)&&(G.current=!1,W.current.clear(),D(),k.current={eventKeys:[],text:null,replaceableUntil:null},N.current.clear(),V(),T&&(K.current=o),!n||!m)||G.current||(G.current=!0,K.current=o,E.current={isClosed:l,isHandedOff:u,inputDisabled:h,inputDisabledBy:f,outgoingMessageStatuses:Dn(g)},N.current=new Set(a.flatMap(F=>{if(!Ke.isStreaming(F))return[];const z="sender"in F?F.sender:void 0;return(z==null?void 0:z.userId)===I.current.currentUserId?[]:en(F)})),W.current=lm(a))},[t,n,o,m,h,l,u,y]),c.useEffect(()=>b(T=>{if(!G.current||T.kind==="initialized"||!ru(T.source))return;const F=I.current,z=ls(T.messages,T.messages,F.currentUserId)??ls(F.messages,T.messages,F.currentUserId);if(!z)return;const J=en(z),me=Xo(z);if(me!=null){if(W.current.has(me))return;W.current.add(me),t({event:"csatDisplayed"});return}if(Ke.isStreaming(z)){en(z).forEach(O=>{N.current.add(O)});return}const pe=J.filter(O=>N.current.has(O)),Pe=T.kind==="messagesUpdated"&&pe.length>0;Pe&&pe.forEach(O=>{N.current.delete(O)});const Me=T.kind==="messagesUpdated"&&A.current.some(({eventKeys:O})=>Nn(O,J)),M=bs(z,F.stringSet,F.format),R=we(T.kind,J,M);if(!(!Pe&&T.kind!=="messagesAdded"&&!Me&&!R)){if(Pe||L()||Me){de(M,[...new Set([...pe,...J])]);return}x()&&Q(),Y(J,M),e(M)}}),[t,e,b]),c.useEffect(()=>{G.current&&(L()||x()&&ae())},[f,v]),c.useEffect(()=>()=>{V()},[]),c.useEffect(()=>{if(!G.current)return;const T=E.current,F=T.outgoingMessageStatuses;T.outgoingMessageStatuses=Dn(g),g.some(({key:J,sendingStatus:me})=>{const pe=F.get(J);return pe!==void 0&&pe!=="failed"&&me==="failed"})&&t({event:"sendFailed"})},[t,y]),c.useEffect(()=>{if(!G.current)return;const T=E.current;l&&!T.isClosed&&t({event:"conversationClosed"}),T.isClosed=l},[t,l]),c.useEffect(()=>{if(!G.current)return;const T=E.current;u&&!T.isHandedOff&&t({event:"agentConnected",agentName:d}),T.isHandedOff=u},[d,t,u]),c.useEffect(()=>{if(!G.current)return;const T=E.current;h&&f!=="ai_responding"&&(!T.inputDisabled||T.inputDisabledBy==="ai_responding")&&t({event:"inputDisabled"}),T.inputDisabled=h,T.inputDisabledBy=f},[t,h,f])},dm=()=>{const{channelSource:e}=ye(),t=vo(e.channel);return!(t!=null&&t.user.userId)||!t.user.nickname?null:{userId:t.user.userId,nickname:t.user.nickname}},mm=e=>{const{announceStatus:t,announcementsActive:n}=st();Ec(e??null,r=>{t({event:"typing",agentName:r})},1e4,n)},hm=()=>{const e=dm();mm(e)},Z=({type:e,size:t=24,className:n,color:r})=>{const{icons:s}=zu(),o=s[e];return i.createElement(fm,{className:n},i.createElement(o,{size:t,color:r??p.color.primary.main,flipInRtl:Pu.has(e)}))},fm=_.default.span.attrs({"aria-hidden":"true"})`
80
+ `;return n.set(e,o),o},Md=e=>e?P.css`display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:${e};overflow:hidden;`:"",kd=p.default.span`font-stretch:normal;letter-spacing:normal;${({$variant:e,theme:t})=>wd(e,t.typography)}color:${({$color:e})=>e};${({$maxTextLines:e})=>Md(e)}`,_n=["a[href]","button:not(:disabled)","input:not(:disabled)","select:not(:disabled)","textarea:not(:disabled)",'[tabindex]:not([tabindex="-1"])'].join(", "),Qo=`${_n}, [tabindex="-1"]`,Nt=e=>{if(!e.isConnected||e.hidden)return!1;let t=e;const n=e.ownerDocument.defaultView;for(;t;){if(t.hidden||t.getAttribute("aria-hidden")==="true")return!1;if(n){const r=n.getComputedStyle(t);if(r.display==="none"||r.visibility==="hidden")return!1}t=t.parentElement}return!0};async function Ar(e){let t=e;t&&(!t.startsWith("http://")&&!t.startsWith("https://")&&(t="https://"+t),window.open(t,"_blank","noopener,noreferrer"))}function $e(e){requestAnimationFrame(()=>{requestAnimationFrame(()=>{e()})})}const dn=(e,t)=>{for(const n of e.querySelectorAll(t))if(!n.hasAttribute(Cr)&&Nt(n))return n;return null},ei=e=>{let t=null,n=null;for(const r of e.querySelectorAll(_n))r.hasAttribute(Cr)||Nt(r)&&(t??(t=r),n=r);return t?{first:t,last:n}:null},xr=e=>dn(e,Lu),ti=e=>xr(e)??dn(e,_n),Rd=e=>{const t=xr(e);if(t)return t;const n=e.querySelector(Du);return(n?dn(n,Qo):null)??dn(e,_n)},Jn='[role="dialog"][aria-modal="true"]',Od=(e,t)=>{const n=new Set(Array.from(e.ownerDocument.querySelectorAll(Jn)).filter(s=>s!==e&&(s.contains(e)||e.contains(s)))),r=t==null?void 0:t.closest(Jn);return r&&r!==e&&n.add(r),n},Ld=(e,t)=>Array.from(e.ownerDocument.querySelectorAll(Jn)).some(n=>n!==e&&!t.has(n)&&!n.contains(e)&&Nt(n)),Nd=e=>{const t=ti(e)??e;t===e&&ni(e),t.focus()},ni=e=>{e.hasAttribute("tabindex")||e.setAttribute("tabindex","-1")},Dd=(e,t)=>{const n=ei(e);if(!n){ni(e),e.focus();return}n[t].focus()},vs=(e,t)=>{const n=e.ownerDocument.createElement("span");return n.tabIndex=0,n.setAttribute(Cr,Nu),n.style.cssText=["position: fixed","width: 1px","height: 1px","opacity: 0","overflow: hidden","pointer-events: none"].join(";"),n.addEventListener("focus",()=>Dd(e,t)),n},$d=(e,t)=>{e.key==="Tab"&&(e.defaultPrevented||e.target===t&&(ei(t)||(e.preventDefault(),t.focus())))},Pd=(e,t)=>t instanceof HTMLElement?e instanceof Document?t===e.body||t===e.documentElement:!1:!0,En=(e,t)=>{const n=c.useRef(0);c.useEffect(()=>{if(!e||!t.current)return;n.current+=1;const r=n.current,s=t.current,o=s.getRootNode(),a=o.activeElement instanceof HTMLElement?o.activeElement:null,l=Od(s,a);let u=!1;return $e(()=>{u||!s.isConnected||Nd(s)}),()=>{u=!0,a&&$e(()=>{if(n.current!==r)return;const d=o.activeElement;s.isConnected&&d instanceof HTMLElement&&d!==s&&!s.contains(d)&&!Pd(o,d)&&d.matches(Qo)&&Nt(d)||Ld(s,l)||!a.isConnected||!Nt(a)||a.focus()})}},[e,t]),c.useEffect(()=>{if(!e||!t.current)return;const r=t.current,s=vs(r,"last"),o=vs(r,"first"),a=l=>$d(l,r);return r.insertBefore(s,r.firstChild),r.appendChild(o),r.addEventListener("keydown",a),()=>{r.removeEventListener("keydown",a),s.remove(),o.remove()}},[e,t])},lt=({style:e,portalContainerId:t,visible:n,onClose:r,children:s,cancelable:o=!0,"aria-label":a,"aria-labelledby":l,"aria-describedby":u})=>{const d=c.useRef(null),{resolvePortalContainer:m}=yr();return En(n,d),Wu(n,o?r:he),n?ia.createPortal(i.createElement(Fd,{onClick:o?r:void 0,style:e},i.createElement(Bd,{ref:d,role:"dialog","aria-modal":"true","aria-label":a,"aria-labelledby":l,"aria-describedby":u,onClick:h=>h.stopPropagation()},s)),m(t)):null},Fd=p.default.div`position:fixed;top:0;left:0;width:100%;height:100%;background:${g.color.overlay.dark};display:flex;justify-content:center;align-items:center;z-index:${dt.MODAL};`,Bd=p.default.div`border-radius:4px;overflow:hidden;box-shadow:0 16px 24px 2px rgba(13,13,13,0.12),0 6px 30px 5px rgba(13,13,13,0.08),0 6px 10px -5px rgba(13,13,13,0.04);z-index:${dt.MODAL};`,Ud=({id:e,children:t})=>i.createElement(Hd,{id:e},t),Hd=p.default.span`position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;`,ys=(e,t)=>({role:"heading","aria-level":2,"aria-label":e,...t!=null&&t.active&&t.titleId?{id:t.titleId,tabIndex:-1,...Bo}:{}}),qt=(e,t)=>e!=null&&e.startsWith("image")?t.A11Y_HINT_OPEN_IMAGE:t.A11Y_HINT_OPEN_FILE,Kt=({name:e,mimeType:t,selected:n},r)=>{var o;const s=t!=null&&t.startsWith("image")?r.A11Y_FILE_IMAGE(e):t!=null&&t.startsWith("video")?r.A11Y_FILE_VIDEO(e):r.A11Y_FILE_DOCUMENT(e);return n?((o=r.A11Y_FILE_SELECTED)==null?void 0:o.call(r,s))??`${s}, selected`:s},xe=(e,t)=>t?{describedByProps:{"aria-describedby":e},descriptionNode:c.createElement(Ud,{id:e,children:t})}:{describedByProps:{},descriptionNode:null},Gd=e=>t=>{t.repeat||(t.key==="Enter"||t.key===" ")&&(t.preventDefault(),e())},wt=({onActivate:e})=>({role:"button",tabIndex:0,onClick:e,onKeyDown:Gd(e)}),se=()=>{const{stringSet:e}=ie(),t=c.useId(),n=c.useId(),r=c.useId(),s=c.useId(),o=c.useId(),a=c.useId(),l=c.useId(),u=c.useId(),d=c.useId(),m=c.useId(),h=c.useId(),f=c.useId(),v=c.useId(),C=c.useId(),y=c.useId(),E=c.useId(),_=c.useId(),b=c.useId(),A=T=>T===e.A11Y_HINT_OPEN_CONVERSATION?xe(t,T):T===e.A11Y_HINT_OPEN_CONVERSATIONS?xe(n,T):(T===e.A11Y_HINT_CLOSE_CONVERSATION,xe(r,T)),M=xe(s,e.A11Y_HINT_OPEN_MENU),B=xe(o,e.A11Y_HINT_CLOSE_CONVERSATION),w=xe(a,e.A11Y_HINT_CONNECT_TO_AGENT),O=xe(l,e.A11Y_HINT_ATTACH_FILE),k=xe(u,e.A11Y_HINT_SEND_MESSAGE),R=xe(d,e.A11Y_HINT_VIEW_NEW_MESSAGES),W=xe(m,e.A11Y_HINT_VIEW_NEW_MESSAGES),D=xe(h,e.A11Y_HINT_SEND_REPLY),F=xe(f,e.A11Y_HINT_SELECT_RATING),q=xe(v,e.A11Y_HINT_SELECT_RATING),H=xe(C,e.A11Y_HINT_OPEN_CONVERSATION),K=T=>{const z=qt(T,e);return T!=null&&T.startsWith("image")?xe(E,z):xe(y,z)};return{launcher:{button:({isOpened:T,opensConversationList:z})=>{const Z=Ru({intent:wu({isOpened:T,opensConversationList:z}),strings:{openConversation:e.A11Y_OPEN_CONVERSATION,openConversationList:e.A11Y_OPEN_CONVERSATIONS,closeConversation:e.A11Y_CLOSE_CONVERSATION,closeConversationList:e.A11Y_CLOSE_CONVERSATIONS,hintOpenConversation:e.A11Y_HINT_OPEN_CONVERSATION,hintOpenConversationList:e.A11Y_HINT_OPEN_CONVERSATIONS,hintCloseConversation:e.A11Y_HINT_CLOSE_CONVERSATION}}),ge=A(Z.hint);return{props:{"aria-label":Z.label,...ge.describedByProps},hint:Z.hint,descriptionNode:ge.descriptionNode}}},messenger:{closeButton:{"aria-label":e.A11Y_CLOSE_MESSENGER},expandButton:T=>({"aria-label":T?e.A11Y_COLLAPSE_MESSENGER:e.A11Y_EXPAND_MESSENGER}),connectionDelayDialog:{"aria-label":e.CONNECTION_DELAY__TITLE}},conversation:{header:{menuButton:{props:{"aria-label":e.A11Y_MENU,...M.describedByProps},hint:e.A11Y_HINT_OPEN_MENU,descriptionNode:M.descriptionNode},closeConversationButton:{props:{"aria-label":e.A11Y_CLOSE_CONVERSATION,...B.describedByProps},hint:e.A11Y_HINT_CLOSE_CONVERSATION,descriptionNode:B.descriptionNode},handoffButton:{props:{"aria-label":e.A11Y_CONNECT_AGENT,...w.describedByProps},hint:e.A11Y_HINT_CONNECT_TO_AGENT,descriptionNode:w.descriptionNode},title:ys,memoryIndicator:T=>{const z=T?e.A11Y_MEMORY_INDICATOR_ON:e.A11Y_MEMORY_INDICATOR_OFF,Z=xe(T?_:b,z);return{props:{"aria-label":e.A11Y_MEMORY_INDICATOR_MANAGE,...Z.describedByProps},hint:z,descriptionNode:Z.descriptionNode}}},messageInput:{attachFileButton:{props:{"aria-label":e.A11Y_ATTACH_FILE,...O.describedByProps},hint:e.A11Y_HINT_ATTACH_FILE,descriptionNode:O.descriptionNode},sendButton:{props:{"aria-label":e.A11Y_SEND_MESSAGE,...k.describedByProps},hint:e.A11Y_HINT_SEND_MESSAGE,descriptionNode:k.descriptionNode},textInput:T=>({role:"textbox","aria-label":T})},suggestedReplies:{hint:e.A11Y_HINT_SEND_REPLY,descriptionNode:D.descriptionNode,item:T=>({props:{"aria-label":`${e.A11Y_SUGGESTED_REPLY}, ${T}`,...D.describedByProps}})},feedback:{hint:e.A11Y_HINT_SELECT_RATING,descriptionNode:F.descriptionNode,button:(T,z)=>({props:{"aria-label":T==="good"?e.FEEDBACK_GOOD:e.FEEDBACK_BAD,...F.describedByProps,"aria-pressed":z}}),optionsBottomSheet:{"aria-label":e.A11Y_FEEDBACK_OPTIONS}},newMessagesButton:{props:{"aria-label":e.A11Y_SCROLL_TO_NEW_MESSAGES,...R.describedByProps},hint:e.A11Y_HINT_VIEW_NEW_MESSAGES,descriptionNode:R.descriptionNode},scrollToBottomButton:{props:{"aria-label":e.A11Y_SCROLL_TO_BOTTOM,...W.describedByProps},hint:e.A11Y_HINT_VIEW_NEW_MESSAGES,descriptionNode:W.descriptionNode},startNewConversationButton:({onActivate:T})=>({...wt({onActivate:T}),"aria-label":e.TALK_TO_AGENT}),poweredByLink:{"aria-label":`${e.POWERED_BY} Sendbird`},retryButton:(T=e.RETRY)=>({"aria-label":T}),file:{label:(T,z)=>T?Kt({name:T,mimeType:z},e):"",preview:T=>({props:{"aria-label":Kt(T,e)}}),interactivePreview:T=>{const z=K(T.mimeType);return{props:{"aria-label":Kt(T,e),...z.describedByProps},hint:qt(T.mimeType,e),descriptionNode:z.descriptionNode}},openDescription:T=>{const z=K(T);return{props:z.describedByProps,hint:qt(T,e),descriptionNode:z.descriptionNode}},buttonLikeInteractivePreview:({onActivate:T,...z})=>{const Z=K(z.mimeType);return{props:{...wt({onActivate:T}),"aria-label":Kt(z,e),...Z.describedByProps},hint:qt(z.mimeType,e),descriptionNode:Z.descriptionNode}},removeButton:T=>({"aria-label":e.A11Y_FILE_REMOVE_BUTTON(T)})},csat:{scoresContainer:T=>({props:{role:"radiogroup","aria-label":T},descriptionNode:q.descriptionNode}),scoreItem:({score:T,label:z,selected:Z,disabled:ge,currentIndex:j,totalCount:x,hasSelection:$,onChange:J})=>({props:{disabled:ge,onClick:()=>J(T),onKeyDown:te=>{var be;if(ge)return;let oe=null;switch(te.key){case"ArrowRight":case"ArrowDown":oe=(j+1)%x;break;case"ArrowLeft":case"ArrowUp":oe=(j-1+x)%x;break;default:return}te.preventDefault(),J(oe+1);const Ae=te.currentTarget.parentElement,Te=Ae==null?void 0:Ae.querySelectorAll('[role="radio"]');(be=Te==null?void 0:Te[oe])==null||be.focus()},tabIndex:Z||!$&&j===0?0:-1,role:"radio","aria-checked":Z,"aria-disabled":ge,...q.describedByProps,"aria-label":e.A11Y_CSAT_RATING_LABEL(T,z)}}),submitButton:T=>({"aria-label":T})},form:{button:T=>({"aria-label":T}),textInput:(T,z,Z)=>({"aria-label":T,"aria-required":z,"aria-disabled":Z}),numberInput:(T,z,Z)=>({"aria-label":T,"aria-required":z,"aria-disabled":Z}),singleSelectGroup:T=>({role:"radiogroup",...T?{"aria-label":T}:{}}),singleSelectOption:(T,z,Z)=>({role:"radio","aria-label":T,"aria-checked":z,"aria-disabled":Z}),multiSelectOption:(T,z,Z)=>({"aria-label":T,"aria-pressed":z,"aria-disabled":Z})}},conversationList:{headerTitle:ys,footer:{button:({onActivate:T})=>({...wt({onActivate:T}),"aria-label":e.TALK_TO_AGENT})},item:({agent:T,status:z,time:Z,unreadCount:ge,onActivate:j})=>{const x=typeof j<"u",$=x?H:{describedByProps:{},descriptionNode:null};return{props:{...x?wt({onActivate:j}):{},...$.describedByProps,"aria-label":e.A11Y_CONVERSATION_ITEM(T,z,Z,ge)},hint:x?e.A11Y_HINT_OPEN_CONVERSATION:void 0,descriptionNode:x?$.descriptionNode:void 0}}}}},Vd=({title:e,description:t,highlightedText:n})=>{const r=Xc(t,n);return i.createElement(Yd,null,i.createElement(Wd,null,i.createElement(U,{as:"div",variant:"h1",color:g.themedColor.textHighEmphasis},e),t&&i.createElement(qd,null,i.createElement(U,{as:"div",variant:"body3",color:g.themedColor.textMidEmphasis},r.beforeText,r.highlightedText?i.createElement(Kd,null,r.highlightedText):null,r.afterText))))},zd=()=>{const{components:e}=bn.useContext(),{stringSet:t}=ie(),n=se(),r=Kc(),s=r.showDescription?jc(r.remainingTime):"",o=r.showDescription?t.CONNECTION_DELAY__DESCRIPTION(s):"";return i.createElement(lt,{portalContainerId:_e.WINDOW,visible:r.visible,onClose:he,...n.messenger.connectionDelayDialog},i.createElement(e.Dialog,{title:t.CONNECTION_DELAY__TITLE,description:o,highlightedText:s||void 0}))},bn=Ye({template:zd,components:{Dialog:Vd}}),Yd=p.default.div`width:280px;padding:24px;margin:0 auto;border-radius:4px;box-sizing:border-box;background-color:${({theme:e})=>e.colors.base.modalContentBackground};`,Wd=p.default.div`display:flex;flex-direction:column;`,qd=p.default.div`margin-top:16px;`,Kd=p.default.strong`font-weight:700;`,{Provider:jd,Consumer:ri,useContext:fe}=Ee("Messenger");function Xd({children:e,state:t,enableCloseConversationButton:n=!1,enableExpandButton:r=!0,enableAutoDisconnectInLauncher:s=!0,...o}){const[a,l]=c.useState(!1),[u,d]=c.useState(!1),m={opened:(t==null?void 0:t.opened)??a,setOpened:(t==null?void 0:t.setOpened)??l,expanded:(t==null?void 0:t.expanded)??u,setExpanded:(t==null?void 0:t.setExpanded)??d},{resolveElement:h}=yr(),f=c.useCallback(()=>{var C;m.setOpened(!1),(C=h(_e.LAUNCHER))==null||C.focus()},[m.setOpened,h]);qu(m.opened,f);const{Template:v}=bn.useContext();return i.createElement(yl,{...o},C=>i.createElement(jd,{value:{...o,...C,state:m,enableCloseConversationButton:n,enableExpandButton:r,enableAutoDisconnectInLauncher:s}},i.createElement(v,null),e))}const si=/iPad|iPhone|iPod/.test(navigator.userAgent),Zd=/Android/.test(navigator.userAgent),Pt=e=>si||Zd;let Tt=null,Ln=null;const Jd=(e,t=5e3)=>{Tt&&(clearInterval(Tt),clearTimeout(Ln));const n=document.title;Tt=setInterval(()=>{document.title=document.title===e?n:e},750),Ln=setTimeout(()=>{clearInterval(Tt),Tt=null,Ln=null,document.title=n},t)},oi=()=>{Promise.resolve().then(()=>require("./cjs/B93o4u0P.cjs")).then(e=>{new Audio(e.default).play().catch(()=>{})})},we=P.css`&:focus-visible{outline:2px solid ${g.themedColor.primary};outline-offset:2px;}`,Ss=e=>{if(typeof e=="string"||typeof e=="number")return String(e)},Cn=({visible:e,title:t,description:n,confirmText:r="OK",cancelText:s,onConfirm:o,onCancel:a,onClose:l,"aria-label":u})=>{const d=c.useId(),m=c.useId(),h=u??Ss(t)??Ss(n),f=u?void 0:t?d:n?m:void 0,v=t&&n?m:void 0,C=()=>{l(),$e(()=>o==null?void 0:o())},y=()=>{l(),$e(()=>a==null?void 0:a())};return i.createElement(lt,{portalContainerId:_e.WINDOW,visible:e,onClose:l,"aria-label":h,"aria-labelledby":f,"aria-describedby":v},i.createElement(Qd,null,i.createElement(em,null,t&&i.createElement("div",{id:d},i.createElement(U,{variant:"h1",color:g.themedColor.textHighEmphasis},t)),n&&i.createElement(tm,{id:m},i.createElement(U,{variant:"body3",color:g.themedColor.textMidEmphasis},n))),i.createElement(nm,null,s&&i.createElement(As,{onClick:y},i.createElement(U,{variant:"button",color:g.themedColor.textHighEmphasis},s)),i.createElement(As,{onClick:C},i.createElement(U,{variant:"button",color:g.themedColor.primary},r)))))},Qd=p.default.div`width:360px;height:auto;padding-block:24px 12px;padding-inline:24px;margin:0 auto;border-radius:4px;box-sizing:border-box;background-color:${({theme:e})=>e.colors.base.modalContentBackground};`,em=p.default.div`margin-bottom:16px;`,tm=p.default.div`margin-top:16px;`,nm=p.default.div`display:flex;flex-direction:row;justify-content:flex-end;`,As=p.default.button`all:unset;display:flex;justify-content:center;align-items:center;border-radius:4px;cursor:pointer;background-color:transparent;padding:10px 16px;${we}`,{Provider:rm,useContext:Re}=Ee("MessengerSession"),sm=c.forwardRef(function({children:e,...t},n){return i.createElement(rc,{ref:n,...t},r=>i.createElement(om,{...r},e))}),om=({children:e,...t})=>{const{chatSDK:n,logger:r,appId:s,aiAgentId:o,agentPreviewConfigs:a,state:l,handlers:u,dispatcher:d,_aiAgentSDK:m}=fe(),{userSessionInfo:h,authenticate:f,userSession:v,aiAgentInfo:C,launcherInfo:y}=t,[E,_]=c.useState(!1),b=c.useRef(null);Et(n,{async onUserJoined(M,B){var O,k,R,W;M.conversation&&M.conversation.type===Ne.ConversationType.PROACTIVE&&B.userId===((O=n.currentUser)==null?void 0:O.userId)&&(r.info("messengerSession.onUserJoined: proactive channel joined",M.url),(R=m.session)==null||R._updateActiveChannel({url:M.url,status:"open",conversationStatus:(k=M.conversation)==null?void 0:k.status}),l.setOpened(!0),im({sound:document.hidden||!l.opened}),(W=b.current)==null||W.call(b,{channel:M}))}}),c.useEffect(()=>{f().then(({launcher:M})=>{M.auto_open&&!Pt()&&setTimeout(()=>l.setOpened(!0),500)}).catch(M=>{var B;r.error("messengerSession: failed to initialize",M),(B=u==null?void 0:u.onInitializeFailed)==null||B.call(u,M)})},[n,s,o,h==null?void 0:h.userId]),c.useEffect(()=>{const M=()=>_(!0);return d.subscribe(Ve.AnonymousSessionTokenExpired,M),()=>d.unsubscribe(Ve.AnonymousSessionTokenExpired,M)},[d]);const A=c.useCallback(()=>{t.deauthenticate().finally(()=>window.location.reload())},[t.deauthenticate]);return!v||!C||!y?null:i.createElement(rm,{value:{...t,userSession:v,aiAgentInfo:{...C,...a==null?void 0:a.bot},launcherInfo:{...y,...a==null?void 0:a.launcher},registerOnJoinedProactiveConversation:M=>b.current=M}},e,i.createElement(Cn,{visible:E,title:"Session timed out",description:"Start a new conversation.",onConfirm:A,onClose:he}))};function im({sound:e}){Jd("🔔You have received a new message"),e&&oi()}const mn=`@${Be}-focused-channel`,ii=`${Date.now()}-${Math.random().toString(36).slice(2)}`,am=()=>{try{const e=localStorage.getItem(mn);return e?JSON.parse(e).channelUrl??null:null}catch{return null}},xs=e=>{try{localStorage.setItem(mn,JSON.stringify({channelUrl:e,tabId:ii}))}catch{}},Ts=()=>{try{const e=localStorage.getItem(mn);if(!e)return;JSON.parse(e).tabId===ii&&localStorage.removeItem(mn)}catch{}},lm=(e,t)=>(c.useEffect(()=>{if(!t||!e)return;const n=()=>xs(e),r=()=>Ts();return document.hasFocus()&&xs(e),window.addEventListener("focus",n),window.addEventListener("blur",r),()=>{window.removeEventListener("focus",n),window.removeEventListener("blur",r),Ts()}},[t,e]),{isChannelViewedInAnyTab:()=>document.hasFocus()||am()===e}),cm=e=>{var a;const{config:t,chatSDK:n}=fe(),{sdkUser:r}=Re(),s=!!((a=t==null?void 0:t.conversation)!=null&&a.messageAlertSoundEnabled),{isChannelViewedInAnyTab:o}=lm(e,s);Et(n,{onMessageReceived(l,u){if(!s||l.url!==e||o())return;(ot(u)&&u.sender.userId!==(r==null?void 0:r.userId)||u.isAdminMessage()&&!u.silent)&&oi()}})};function um(e){return new Promise(t=>{const n=new Image;n.onload=function(){const r=String(n.width),s=String(n.height);URL.revokeObjectURL(n.src),t({width:r,height:s})},n.src=URL.createObjectURL(e)})}async function dm(e){if("file"in e&&e.file instanceof File&&e.file.type.startsWith("image/")){const{width:t,height:n}=await um(e.file);return new ze.MessageMetaArray({key:ao,value:[t,n]})}}const mm=({onScrollAfterSendMessage:e})=>{const{agentPreviewConfigs:t,handlers:n}=fe(),r=c.useRef(t==null?void 0:t.agentAttributes);return r.current=t==null?void 0:t.agentAttributes,{onBeforeSendMessage:async s=>{const o=await dm(s),a={...s,metaArrays:o?[o]:void 0},l=hm(r.current);return l?{...a,data:JSON.stringify(l)}:a},onAfterSendMessage:s=>{var o,a,l;e(),(o=n==null?void 0:n.onMessageSend)==null||o.call(n,s.message),s.sendingStatus===ze.SendingStatus.SUCCEEDED?(a=n==null?void 0:n.onCustomEvent)==null||a.call(n,{type:"message-sent-succeeded",data:{message:s}}):s.sendingStatus===ze.SendingStatus.PENDING&&((l=n==null?void 0:n.onCustomEvent)==null||l.call(n,{type:"message-sent-pending",data:{message:s}}))}}},hm=e=>{if(!e)return null;const t={};return e.ai&&Object.keys(e.ai).length>0&&(t.ai_attrs=e.ai),e.safeguard&&Object.keys(e.safeguard).length>0&&(t.safeguard_attrs=e.safeguard),typeof e.use_prompt_cache=="boolean"&&(t.use_prompt_cache=e.use_prompt_cache),Object.keys(t).length>0?t:null},gt=50,Nn=gt-40,{Provider:fm,useContext:ai}=Ee("ConversationScroll"),Is={viewport:0,contentHeight:0,contentSnapshotHeight:0,shouldRecalc:!1,shouldUpdate:!1},Dn=e=>Math.max(0,e.scrollHeight-e.scrollTop-e.clientHeight);function gm({scrollMode:e,messageStackDirection:t,children:n}){const r=c.useRef(null),s=c.useRef(null),o=c.useRef(0),a=c.useRef(0),l=c.useRef(!1),u=c.useRef(!1),d=c.useRef(null),m=c.useRef(Is),h=c.useRef(!1),f=c.useRef(null),[v,C]=c.useState(0),[y,E]=c.useState(0),[_,b]=c.useState(!1),[A,M]=c.useState(!1),[B,w]=c.useState(!0),O=I=>{const L=Dn(I);return o.current=L,E(L),L},k=()=>{d.current&&(clearTimeout(d.current),d.current=null)},R=c.useMemo(()=>_||t==="bottom"?"auto":e,[_,t,e]),W=()=>{m.current.contentSnapshotHeight=m.current.contentHeight,m.current.shouldUpdate=!0,m.current.shouldRecalc=!0},D=()=>{const I=r.current;!I||!m.current.shouldUpdate||C(L=>{m.current.shouldUpdate=!1;const{contentHeight:N,contentSnapshotHeight:X,shouldRecalc:Y}=m.current,G=I.clientHeight;if(X>N)return L;const V=F(I,{messageType:"outgoing"});let le=0;if(V){const Ge=V.message.offsetTop-Nn+G;le=Math.max(0,Ge-N)}else{const Ge=N-X,ae=G-Nn;le=Math.max(0,Ge-ae)}return L===0||le!==L||Y?(m.current.shouldRecalc=!1,le):L})},F=c.useCallback((I,L)=>{const{messageType:N="all"}=L??{},X=Array.from(I.querySelectorAll(`#${Be}-message-item`));let Y=X;N==="outgoing"&&(Y=X.filter(ce=>ce.getAttribute("data-layout-id")==="outgoingmessage"));const G=Y[Y.length-1];if(!G)return null;const V=I.getBoundingClientRect(),le=G.getBoundingClientRect(),Ge=I.scrollTop+(le.top-V.top),ae=Ge+G.offsetHeight;return{message:G,scrollTop:Ge,lastMessageBottom:ae}},[]),q=c.useCallback(()=>{const I=r.current;if(!I||R!=="fixed")return;const L=F(I);m.current.contentHeight=(L==null?void 0:L.lastMessageBottom)??I.scrollHeight,!h.current&&m.current.contentSnapshotHeight>0&&W(),u.current?o.current=Dn(I):O(I),D()},[R,F]),H=c.useCallback(()=>{s.current&&(s.current.disconnect(),s.current=null),k(),m.current=Is,C(0),E(0),w(!0),o.current=0,l.current=!1,a.current=0,u.current=!1},[]),K=c.useCallback((I=!0)=>{const L=o.current>gt;if(l.current=!1,E(0),!L){$e(()=>{const N=r.current;N&&!l.current&&N.scrollTo({top:N.scrollHeight,behavior:"auto"})});return}u.current||(u.current=!0,w(!1),k()),$e(()=>{const N=r.current;if(!N){u.current=!1,w(!0);return}if(l.current){u.current=!1,O(N),w(!0);return}const X=()=>{if(r.current!==N){u.current=!1,r.current&&O(r.current),w(!0);return}u.current=!1,O(N),w(!0)};if(I&&!d.current){const Y=setTimeout(X,500);d.current=Y,N.addEventListener("scrollend",()=>{clearTimeout(Y),d.current=null,X()},{once:!0})}N.scrollTo({top:N.scrollHeight,behavior:I?"smooth":"auto"}),I||X()})},[]),T=c.useCallback(I=>{I&&(r.current=I,R==="fixed"&&(H(),m.current.viewport=I.clientHeight,s.current=new MutationObserver(()=>{q()}),s.current.observe(I,{childList:!0,subtree:!0})))},[R,q,H]),z=c.useCallback(()=>{const I=r.current;if(!I)return;const L=F(I,{messageType:"outgoing"});L&&(I.scrollTo({top:L.message.offsetTop-Nn,behavior:"smooth"}),f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{M(!1)},500))},[F]),Z=(I,L,N)=>{const X=Dn(I);if(N&&X>gt){u.current=!1,l.current=!0,k(),O(I),w(!0),a.current=L;return}o.current=X},ge=(I,L,N)=>{const Y=O(I)<=gt;L&&!Y&&(l.current=!0,k()),N&&Y&&(l.current=!1)},j=I=>{const{scrollTop:L}=I.currentTarget,N=a.current;u.current?Z(I.currentTarget,L,L<N):ge(I.currentTarget,L<N,L>N),a.current=L},x=c.useCallback(()=>{R==="fixed"&&(M(!0),W())},[R]),$=c.useCallback(()=>{R==="fixed"?setTimeout(()=>z(),300):K()},[R,z]),J=c.useCallback(I=>{h.current=I,R==="fixed"?W():l.current||K()},[R,K]),te=c.useCallback(I=>{b(I),I&&(C(0),s.current&&(s.current.disconnect(),s.current=null))},[]),oe=c.useCallback(I=>{R==="auto"&&I&&!l.current&&K()},[R,K]),Te=!(y<=gt)&&!A,be=c.useCallback(()=>o.current>gt,[]);return i.createElement(fm,{value:{ref:T,state:{bottomSpace:v,isAwayFromBottom:Te,isScrollPositionReconciled:B,shouldCountNewMessages:be},props:{onScroll:j},actions:{scrollToBottom:K,onBeforeMessageSend:x,onAfterMessageSend:$,onStreamingUpdate:J,onConversationClosed:te,onTypingIndicatorUpdate:oe}}},n)}const{Provider:pm,Context:_m,useContext:Se}=Ee("Conversation"),Em=({children:e})=>{var s;const{channelSource:t}=Se(),n=(s=t.channel)==null?void 0:s.url,{checkForUserActionRequired:r}=Lc(n);return c.useEffect(()=>{var a;const o=(a=t.channel)==null?void 0:a.lastMessage;o&&r(o)},[t.channel,r]),i.createElement(i.Fragment,null,e)},bm=({channelUrl:e,onClearChannelUrl:t,onNavigateToConversationList:n,shouldMarkAsRead:r,children:s})=>{const{activeChannel:o,refreshActiveChannel:a}=Re(),l=ai(),u=e||(o==null?void 0:o.url);cm(u);const{onBeforeSendMessage:d,onAfterSendMessage:m}=mm({onScrollAfterSendMessage:()=>{l.actions.onAfterMessageSend()}}),h=c.useCallback(C=>(l.actions.onBeforeMessageSend(),d(C)),[l.actions,d]),f=c.useCallback(C=>{const y=C.some(E=>qe.isStreaming(E));l.actions.onStreamingUpdate(y)},[l.actions.onStreamingUpdate]),v=c.useCallback(async()=>{await a(),e&&(t==null||t())},[a,e,t]);return i.createElement(gc,{key:u,channelUrl:u,onBeforeSendMessage:h,onAfterSendMessage:m,onMessagesUpdated:f,onMessagesReceived:f,onChannelDeleted:v,onConversationClosedStatusChanged:l.actions.onConversationClosed,shouldMarkAsRead:r,shouldCountNewMessages:l.state.shouldCountNewMessages},C=>i.createElement(pm,{value:{...C,scrollSource:l,goToActiveConversation:v,onNavigateToConversationList:n}},i.createElement(Em,null,s)))},li=({children:e,...t})=>{var a;const{config:n}=Pe(),{agentPreviewConfigs:r}=fe(),s=((a=n==null?void 0:n.conversation)==null?void 0:a.scrollMode)??"auto",o=r==null?void 0:r.messageStackDirection;return i.createElement(gm,{scrollMode:s,messageStackDirection:o},i.createElement(bm,{...t},e))},Tr=c.createContext({onDrop:he,subscribe:()=>he}),Qn=({children:e})=>{const t=c.useRef(new Set);return i.createElement(Tr.Provider,{value:{onDrop:n=>{var r;if(n.preventDefault(),(r=n.dataTransfer)!=null&&r.files){const s=Array.from(n.dataTransfer.files);s.length>0&&t.current.forEach(o=>o(s))}},subscribe:n=>(t.current.add(n),()=>t.current.delete(n))}},e)},Cm=({onDropFiles:e})=>{const{subscribe:t}=c.useContext(Tr);c.useEffect(()=>t(e),[e])};Qn.Consumer=({children:e})=>{const{onDrop:t}=c.useContext(Tr);return e({onDrop:t,onDragOver:s=>s.preventDefault()})};const vm=e=>{const t=Rd(e)??e;t===e&&!e.hasAttribute("tabindex")&&e.setAttribute("tabindex","-1"),t.focus()},ci=(e,{enabled:t,ready:n})=>{const r=c.useRef(!1);c.useEffect(()=>{if(!t){r.current=!1;return}if(r.current||!e.current||!(xr(e.current)!=null)&&!n)return;let o=!1;return $e(()=>{o||r.current||!e.current||(r.current=!0,vm(e.current))}),()=>{o=!0}},[t,n,e])},ym=e=>{const{announcementsActive:t}=Je(),{channelSource:n}=Se(),r=n.channel!=null||n.error!=null;ci(e,{enabled:t,ready:r})},Sm=e=>tt(e)||ar(e);function Am(e){return e.isAdminMessage()?e.message==="The channel's custom_type was updated.":!1}function xm(e,t){return e.filter(n=>qe.isWelcomeMessage(n,t))}const ui=(e,{previewWelcomeMessages:t,aiAgentUserId:n})=>e.filter(r=>Am(r)?!1:t.length>0?!qe.isWelcomeMessage(r,n):!0),Tm=[],di=()=>{var C,y,E,_,b,A;const{agentPreviewConfigs:e={},aiAgentId:t}=fe(),{aiAgentInfo:n,userSession:r}=Re(),{channelSource:s,messageSource:o,state:{input:a,streamAnimation:l}}=Se(),u=e.welcomeMessages??Tm,d=c.useMemo(()=>ui(o.messages,{previewWelcomeMessages:u,aiAgentUserId:t}),[t,o.messages,u]),m=it(s.channel),h=(y=(C=po(s.channel,r.userId))==null?void 0:C.nickname)==null?void 0:y.trim(),f=m?(_=(E=s.channel)==null?void 0:E.name)==null?void 0:_.trim():(b=n==null?void 0:n.nickname)==null?void 0:b.trim(),v=h||f||void 0;return{initialized:o.initialized,channelUrl:(A=s.channel)==null?void 0:A.url,agentName:v,isClosed:De(s.channel),isHandedOff:m,messages:d,filteredMessagesCount:d.length,hasWelcomeMessages:u.length>0,inputDisabled:a.disabled,inputDisabledBy:a.disabledBy,isStreamAnimating:l.isAnimating,subscribeMessageEvents:o.subscribeMessageEvents,currentUserId:r.userId}},Im=(e={})=>{const{announceScreenEntry:t,announcementsActive:n}=Je(),{initialized:r=!1,channelUrl:s,agentName:o,isClosed:a=!1,messages:l=[],hasWelcomeMessages:u=!1}=e,d=c.useRef(null),m=c.useMemo(()=>l.some(f=>ke.isAdmin(f)&&ke.isCSAT(f)),[l]),h=l.length===0&&!u;c.useEffect(()=>{if(!n){d.current=null;return}!r||!s||d.current!==s&&(t({screen:"conversation",agentName:o,isClosed:a,hasCSAT:m,...h?{isEmpty:!0}:{}}),d.current=s)},[o,t,n,s,m,r,a,h])},wm=()=>{const e=di();Im(e)},Mm=e=>({image:e.A11Y_RECEIVED_FILE_IMAGE,video:e.A11Y_RECEIVED_FILE_VIDEO,pdf:e.A11Y_RECEIVED_FILE_PDF,document:e.A11Y_FILE_DOCUMENT,receivedFilesImageCount:e.A11Y_RECEIVED_FILES_IMAGE_COUNT,multipleFilesCount:e.CONVERSATION_LIST__MULTIPLE_FILES_COUNT,codeBlockPlaceholder:e.A11Y_CODE_BLOCK_PLACEHOLDER}),ws=(e,t,n=nt.format)=>{const r=Eu(e,Mm(t)),s="sender"in e?e.sender:void 0,o=e.createdAt!=null&&e.createdAt!==0?n(e.createdAt,t.DATE_FORMAT__MESSAGE_TIMESTAMP):void 0;return{senderName:typeof(s==null?void 0:s.nickname)=="string"&&s.nickname.trim()||void 0,body:r||void 0,time:o}},km={senderName:!0,body:!0,time:!0},Rm=Object.keys(km),Om=(e,t)=>Rm.every(n=>e[n]===t[n]),Ms=2e3,ks=400,er=e=>{const t=new Set;return"reqId"in e&&typeof e.reqId=="string"&&e.reqId.length>0&&t.add(`req:${e.reqId}`),"messageId"in e&&e.messageId>0&&t.add(`message:${String(e.messageId)}`),[...t]},mi=e=>{if(!ke.isAdmin(e)||!ke.isCSAT(e))return null;const t=Tu(e);return t?`csat:${t}`:null},Lm=e=>{const t=new Set;for(const n of e){const r=mi(n);r&&t.add(r)}return t},Nm=(e,t)=>{for(let n=e.length-1;n>=0;n-=1){const r=e[n];if(r&&er(r).some(s=>t.includes(s)))return r}},$n=(e,t)=>e.some(n=>t.includes(n)),Rs=()=>typeof document>"u"?null:document.activeElement instanceof HTMLElement?document.activeElement:null,Pn=e=>new Map(e.map(({key:t,sendingStatus:n})=>[t,n])),Dm=()=>{const{announceStatus:e,announcementsActive:t}=Je(),{stringSet:n,format:r}=ie(),{channelUrl:s,messages:o,isClosed:a,isHandedOff:l,agentName:u,initialized:d,inputDisabled:m,inputDisabledBy:h,isStreamAnimating:f,subscribeMessageEvents:v,currentUserId:C}=di(),{outgoingMessageStates:y,outgoingMessageStatusSignature:E}=c.useMemo(()=>{if(!C)return{outgoingMessageStates:[],outgoingMessageStatusSignature:""};const j=o.flatMap(x=>{const $=Au(x,C);return!$||!("sendingStatus"in x)?[]:[{key:$,sendingStatus:x.sendingStatus}]});return{outgoingMessageStates:j,outgoingMessageStatusSignature:j.map(({key:x,sendingStatus:$})=>`${x}:${$}`).join(",")}},[C,o]),_=c.useRef({isClosed:!1,isHandedOff:!1,inputDisabled:m,inputDisabledBy:h,outgoingMessageStatuses:Pn(y)}),b=c.useRef({messages:o,currentUserId:C,inputDisabledBy:h,isStreamAnimating:f,stringSet:n,format:r}),A=c.useRef([]),M=c.useRef(null),B=c.useRef([]),w=c.useRef(new Set),O=c.useRef(new Set),k=c.useRef(!1),R=c.useRef(s);b.current={messages:o,currentUserId:C,inputDisabledBy:h,isStreamAnimating:f,stringSet:n,format:r};const W=()=>b.current.isStreamAnimating||b.current.inputDisabledBy==="ai_responding",D=()=>{M.current!=null&&(clearTimeout(M.current),M.current=null)},F=(j,x,$)=>{const J=$==null?void 0:$.replaceableForMs;if(j.length===0||!J)return;const te=Date.now();B.current=[...B.current.filter(({replaceableUntil:oe})=>oe>te),{eventKeys:j,parts:x,replaceableUntil:te+J}]},q=()=>A.current.length>0,H=()=>{A.current=[]},K=()=>{const[j,...x]=A.current;if(!j)return!1;A.current=x;const{eventKeys:$,parts:J,dedupeKey:te}=j,oe=be=>{F($,be,{replaceableForMs:$.length>0?Ms:void 0}),e({event:"newMessage",...be},te?{dedupeKey:te}:void 0)};if($.length===0)return oe(J),!0;const Ae=b.current,Te=Nm(Ae.messages,$);if(Te){const be=ws(Te,Ae.stringSet,Ae.format);return oe(be),!0}return oe(J),!0},T=()=>{for(D();K(););},z=(j=Ms)=>{D(),M.current=setTimeout(()=>{if(M.current=null,W())return;const x=Rs(),[$]=A.current;if(!$)return;if($.focusTarget!==x){A.current=[{...$,focusTarget:x},...A.current.slice(1)],z(ks);return}K()&&q()&&z(ks)},j)},Z=(j,x,$)=>{const J={eventKeys:x,parts:j,focusTarget:Rs(),dedupeKey:$?$.dedupeKey??void 0:x[0]},te=x.length===0?-1:A.current.findIndex(({eventKeys:oe})=>$n(oe,x));te>=0?A.current=A.current.map((oe,Ae)=>Ae===te?{...J,dedupeKey:$?J.dedupeKey:oe.dedupeKey}:oe):A.current=[...A.current,J],z()},ge=(j,x,$)=>{if(j!=="messagesUpdated"||x.length===0)return!1;const J=Date.now(),te=B.current.find(oe=>oe.replaceableUntil>J&&$n(oe.eventKeys,x));return te?!Om($,te.parts):!1};c.useEffect(()=>{const j=R.current!==s;(!t||!d||j)&&(k.current=!1,O.current.clear(),H(),B.current=[],w.current.clear(),D(),j&&(R.current=s),!t||!d)||k.current||(k.current=!0,R.current=s,_.current={isClosed:a,isHandedOff:l,inputDisabled:m,inputDisabledBy:h,outgoingMessageStatuses:Pn(y)},w.current=new Set(o.flatMap(x=>{if(!qe.isStreaming(x))return[];const $="sender"in x?x.sender:void 0;return($==null?void 0:$.userId)===b.current.currentUserId?[]:er(x)})),O.current=Lm(o))},[e,t,s,d,m,a,l,E]),c.useEffect(()=>{const j=(x,$)=>{const J=b.current,te=er(x),oe=mi(x);if(oe!=null){if(O.current.has(oe))return;O.current.add(oe),e({event:"csatDisplayed"});return}if(qe.isStreaming(x)){te.forEach(Y=>{w.current.add(Y)});return}const Ae=te.filter(Y=>w.current.has(Y)),Te=$==="messagesUpdated"&&Ae.length>0;Te&&Ae.forEach(Y=>{w.current.delete(Y)});const be=$==="messagesUpdated"&&A.current.some(({eventKeys:Y})=>$n(Y,te)),I=ws(x,J.stringSet,J.format),L=ge($,te,I);if(!Te&&$!=="messagesAdded"&&!be&&!L)return;const N=L?{dedupeKey:null}:void 0;if(Te||W()||be){Z(I,[...new Set([...Ae,...te])],N);return}if(L){Z(I,te,N);return}q()&&T();const X=te[0];e({event:"newMessage",...I},X?{dedupeKey:X}:void 0)};return v(x=>{if(!k.current||x.kind==="initialized"||!Iu(x.source))return;const $=b.current.currentUserId;for(const J of x.messages)J&&xu(J,$)&&j(J,x.kind)})},[e,v]),c.useEffect(()=>{k.current&&(W()||q()&&z())},[h,f]),c.useEffect(()=>()=>{D()},[]),c.useEffect(()=>{if(!k.current)return;const j=_.current,x=j.outgoingMessageStatuses;j.outgoingMessageStatuses=Pn(y),y.some(({key:J,sendingStatus:te})=>{const oe=x.get(J);return oe!==void 0&&oe!=="failed"&&te==="failed"})&&e({event:"sendFailed"})},[e,E]),c.useEffect(()=>{if(!k.current)return;const j=_.current;a&&!j.isClosed&&e({event:"conversationClosed"}),j.isClosed=a},[e,a]),c.useEffect(()=>{if(!k.current)return;const j=_.current;l&&!j.isHandedOff&&e({event:"agentConnected",agentName:u}),j.isHandedOff=l},[u,e,l]),c.useEffect(()=>{if(!k.current)return;const j=_.current;m&&h!=="ai_responding"&&(!j.inputDisabled||j.inputDisabledBy==="ai_responding")&&e({event:"inputDisabled"}),j.inputDisabled=m,j.inputDisabledBy=h},[e,m,h])},$m=()=>{const{channelSource:e}=Se(),t=Mo(e.channel);return!(t!=null&&t.user.userId)||!t.user.nickname?null:{userId:t.user.userId,nickname:t.user.nickname}},Pm=e=>{const{announceStatus:t,announcementsActive:n}=Je();Pc(e??null,r=>{t({event:"typing",agentName:r})},1e4,n)},Fm=()=>{const e=$m();Pm(e)},ee=({type:e,size:t=24,className:n,color:r})=>{const{icons:s}=fd(),o=s[e];return i.createElement(Bm,{className:n},i.createElement(o,{size:t,color:r??g.color.primary.main,flipInRtl:ad.has(e)}))},Bm=p.default.span.attrs({"aria-hidden":"true"})`
81
81
  display: inline-flex;
82
82
  &:focus {
83
83
  outline: none;
84
84
  }
85
- `,gm=.75,Zo=6,pm=Zo*2;let Xn=null;typeof Intl<"u"&&"Segmenter"in Intl&&(Xn=new Intl.Segmenter(void 0,{granularity:"grapheme"}));const _m=e=>Xn?Array.from(Xn.segment(e),t=>t.segment):[...e],Em=e=>{const t=Math.floor(e.length*gm),n=Math.max(0,e.length-Zo);return Math.max(t,n)},Ss=(e,t="")=>{if(e.length<pm)return{start:e+t,end:""};const n=_m(e),r=Em(n);return{start:n.slice(0,r).join(""),end:n.slice(r).join("")+t}},bm=e=>{const t=e.normalize("NFC").trim(),n=t.lastIndexOf(".");if(!(n>0&&n<t.length-1))return Ss(t);const s=t.slice(0,n),o=t.slice(n);return Ss(s,o)},Jo=({children:e,...t})=>{const{start:n,end:r}=c.useMemo(()=>bm(e),[e]);return r?i.createElement(Cm,null,i.createElement(vm,{...t},n),i.createElement(ym,{...t},r)):i.createElement(B,{...t},n)},Cm=_.default.span`display:flex;width:100%;min-width:0;overflow:hidden;direction:inherit;`,vm=_.default(B)`overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;`,ym=_.default(B)`flex-shrink:0;white-space:nowrap;`,yr=({name:e,mimeType:t,type:n="FILE",iconColor:r,iconBackgroundColor:s,onClick:o,selected:a})=>{const{colors:l}=P.useTheme(),{conversation:u}=se(),d=o?u.file.interactivePreview({name:e,mimeType:t,selected:a}):u.file.preview({name:e,mimeType:t,selected:a});return i.createElement(Sm,{as:o?"button":"div",type:o?"button":void 0,onClick:o,...d.props,$clickable:!!o},i.createElement(xm,{$bgColor:s??l.base.primary},i.createElement(Z,{type:"file-document",size:24,color:r??l.base.primaryContrastContent})),i.createElement(Tm,null,i.createElement(Jo,{variant:"button",color:p.themedColor.textHighEmphasis},e),i.createElement(B,{color:p.themedColor.textMidEmphasis,variant:"caption3"},n)),d.descriptionNode)},Sm=_.default.div`border:none;border-radius:12px;gap:8px;width:${ee.BODY_MAX_WIDTH}px;height:64px;display:flex;align-items:center;padding:12px;box-sizing:border-box;border:1px solid ${p.themedColor.textDisabled};background-color:${p.themedColor.bg_50_600};${({$clickable:e})=>e&&Am}`,Am=P.css`cursor:pointer;&:hover{background-color:${p.themedColor.bg_100_500};}`,xm=_.default.div`border-radius:8px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:${({$bgColor:e})=>e};`,Tm=_.default.div`display:flex;flex:1;flex-direction:column;gap:4px;min-width:0;`;function Im({file:e,children:t,onClickFile:n}){const r=n?()=>n(e):void 0;return i.createElement(wm,null,i.createElement(yr,{name:e.name,mimeType:e.type,type:nr(e.name,e.type),onClick:r}),t)}const wm=_.default.div`display:flex;flex-direction:column;align-items:flex-start;gap:${ee.GAP_GROUPED}px;`,Ze=`${He}-incoming-msg`,Mm=`${He}-marked-text`;function km({file:e,onClickMedia:t,onClickMediaFiles:n,children:r}){const{conversation:s}=se(),o=e.type.startsWith("image"),a=(()=>{if(n)return()=>n({files:[{url:e.url,type:e.type,name:e.name}],index:0});if(t)return()=>t(e)})(),l=a?s.file.buttonLikeInteractivePreview({name:e.name,mimeType:e.type,onActivate:a}):s.file.preview({name:e.name,mimeType:e.type}),u=()=>o?i.createElement(Om,{src:e.url,alt:"image-message"}):e.type.startsWith("video")?i.createElement(Nm,{controls:!0},i.createElement("source",{src:e.url}),i.createElement("track",{kind:"captions"})):null;if(u){const d={id:`${Ze}-media-body`,...l.props};return i.createElement(Lm,null,i.createElement(Rm,{...d},u(),l.descriptionNode),r)}return null}const Lm=_.default.div`display:flex;flex-direction:column;align-items:flex-start;gap:${ee.GAP_GROUPED}px;`,Rm=_.default.div`width:${ee.BODY_MAX_WIDTH}px;height:160px;border-radius:12px;overflow:hidden;cursor:pointer;${X.light`
86
- background-color: ${p.color.background100};
85
+ `,Um=.75,hi=6,Hm=hi*2;let tr=null;typeof Intl<"u"&&"Segmenter"in Intl&&(tr=new Intl.Segmenter(void 0,{granularity:"grapheme"}));const Gm=e=>tr?Array.from(tr.segment(e),t=>t.segment):[...e],Vm=e=>{const t=Math.floor(e.length*Um),n=Math.max(0,e.length-hi);return Math.max(t,n)},Os=(e,t="")=>{if(e.length<Hm)return{start:e+t,end:""};const n=Gm(e),r=Vm(n);return{start:n.slice(0,r).join(""),end:n.slice(r).join("")+t}},zm=e=>{const t=e.normalize("NFC").trim(),n=t.lastIndexOf(".");if(!(n>0&&n<t.length-1))return Os(t);const s=t.slice(0,n),o=t.slice(n);return Os(s,o)},fi=({children:e,...t})=>{const{start:n,end:r}=c.useMemo(()=>zm(e),[e]);return r?i.createElement(Ym,null,i.createElement(Wm,{...t},n),i.createElement(qm,{...t},r)):i.createElement(U,{...t},n)},Ym=p.default.span`display:flex;width:100%;min-width:0;overflow:hidden;direction:inherit;`,Wm=p.default(U)`overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;`,qm=p.default(U)`flex-shrink:0;white-space:nowrap;`,Ir=({name:e,mimeType:t,type:n="FILE",iconColor:r,iconBackgroundColor:s,onClick:o,selected:a})=>{const{colors:l}=P.useTheme(),{conversation:u}=se(),d=o?u.file.interactivePreview({name:e,mimeType:t,selected:a}):u.file.preview({name:e,mimeType:t,selected:a});return i.createElement(Km,{as:o?"button":"div",type:o?"button":void 0,onClick:o,...d.props,$clickable:!!o},i.createElement(Xm,{$bgColor:s??l.base.primary},i.createElement(ee,{type:"file-document",size:24,color:r??l.base.primaryContrastContent})),i.createElement(Zm,null,i.createElement(fi,{variant:"button",color:g.themedColor.textHighEmphasis},e),i.createElement(U,{color:g.themedColor.textMidEmphasis,variant:"caption3"},n)),d.descriptionNode)},Km=p.default.div`border:none;border-radius:12px;gap:8px;width:${ne.BODY_MAX_WIDTH}px;height:64px;display:flex;align-items:center;padding:12px;box-sizing:border-box;border:1px solid ${g.themedColor.textDisabled};background-color:${g.themedColor.bg_50_600};${({$clickable:e})=>e&&jm}`,jm=P.css`cursor:pointer;&:hover{background-color:${g.themedColor.bg_100_500};}`,Xm=p.default.div`border-radius:8px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:${({$bgColor:e})=>e};`,Zm=p.default.div`display:flex;flex:1;flex-direction:column;gap:4px;min-width:0;`;function Jm({file:e,children:t,onClickFile:n}){const r=n?()=>n(e):void 0;return i.createElement(Qm,null,i.createElement(Ir,{name:e.name,mimeType:e.type,type:lr(e.name,e.type),onClick:r}),t)}const Qm=p.default.div`display:flex;flex-direction:column;align-items:flex-start;gap:${ne.GAP_GROUPED}px;`,Xe=`${Be}-incoming-msg`,eh=`${Be}-marked-text`;function th({file:e,onClickMedia:t,onClickMediaFiles:n,children:r}){const{conversation:s}=se(),o=e.type.startsWith("image"),a=(()=>{if(n)return()=>n({files:[{url:e.url,type:e.type,name:e.name}],index:0});if(t)return()=>t(e)})(),l=a?s.file.buttonLikeInteractivePreview({name:e.name,mimeType:e.type,onActivate:a}):s.file.preview({name:e.name,mimeType:e.type}),u=()=>o?i.createElement(sh,{src:e.url,alt:"image-message"}):e.type.startsWith("video")?i.createElement(oh,{controls:!0},i.createElement("source",{src:e.url}),i.createElement("track",{kind:"captions"})):null;if(u){const d={id:`${Xe}-media-body`,...l.props};return i.createElement(nh,null,i.createElement(rh,{...d},u(),l.descriptionNode),r)}return null}const nh=p.default.div`display:flex;flex-direction:column;align-items:flex-start;gap:${ne.GAP_GROUPED}px;`,rh=p.default.div`width:${ne.BODY_MAX_WIDTH}px;height:160px;border-radius:12px;overflow:hidden;cursor:pointer;${Q.light`
86
+ background-color: ${g.color.background100};
87
87
  `}
88
- ${X.dark`
89
- background-color: ${p.color.background400};
88
+ ${Q.dark`
89
+ background-color: ${g.color.background400};
90
90
  `}
91
- `,Om=_.default.img`width:100%;height:100%;object-fit:cover;`,Nm=_.default.video`width:100%;height:100%;object-fit:cover;`,dt=({className:e,children:t,size:n=26})=>i.createElement(Dm,{className:e,$size:n},t??i.createElement(Z,{type:"spinner",size:n})),Dm=_.default.div`display:flex;align-items:center;justify-content:center;width:${({$size:e})=>Ye(e)};height:${({$size:e})=>Ye(e)};animation:1s infinite linear;animation-name:rotate;@keyframes rotate{from{transform:rotate(0);}to{transform:rotate(360deg);}}`,Qo=({images:e,isPending:t=!1,onClickImage:n})=>{const{conversation:r}=se(),s=e.length;if(s===0)return null;const o=el(s),a=!!n&&!t,l=e.map(f=>f.type??"image/*"),u=l.find(f=>f.startsWith("image")),d=l.find(f=>!f.startsWith("image")),m=a&&u?r.file.openDescription(u):void 0,h=a&&d?r.file.openDescription(d):void 0;return i.createElement(Pm,{$width:ee.BODY_MAX_WIDTH,$columns:o},e.map((f,v)=>{const{columnSpan:b}=tl({index:v,itemCount:s}),C=()=>!t&&(n==null?void 0:n(v)),g=f.type??"image/*",y=a?r.file.buttonLikeInteractivePreview({name:f.name||"",mimeType:g,onActivate:C}):r.file.preview({name:f.name||"",mimeType:g});return i.createElement(Fm,{key:f.url,$clickable:a,$itemSpan:b,$isPending:t,...y.props},i.createElement($m,{src:f.url,alt:f.name||""}),t&&i.createElement(Bm,null))}),m==null?void 0:m.descriptionNode,h==null?void 0:h.descriptionNode)},$m=({src:e,alt:t})=>{const[n,r]=c.useState(!1),[s,o]=c.useState(!1);return i.createElement(i.Fragment,null,!n&&!s&&i.createElement(Um,null,i.createElement(dt,{size:20},i.createElement(Z,{type:"spinner",color:"textLowEmphasis",size:20}))),s?i.createElement(Hm,null,i.createElement(Z,{type:"photo",color:"textLowEmphasis",size:24})):i.createElement(Gm,{src:e,alt:t,$loaded:n,onLoad:()=>r(!0),onError:()=>o(!0)}))},Pm=_.default.div`display:grid;grid-template-columns:repeat(${({$columns:e})=>e},1fr);width:${({$width:e})=>e}px;gap:2px;border-radius:16px;overflow:hidden;`,Fm=_.default.div`position:relative;width:100%;aspect-ratio:1;overflow:hidden;cursor:${e=>e.$clickable?"pointer":"default"};${X.light`
92
- background-color: ${p.color.background100};
91
+ `,sh=p.default.img`width:100%;height:100%;object-fit:cover;`,oh=p.default.video`width:100%;height:100%;object-fit:cover;`,mt=({className:e,children:t,size:n=26})=>i.createElement(ih,{className:e,$size:n},t??i.createElement(ee,{type:"spinner",size:n})),ih=p.default.div`display:flex;align-items:center;justify-content:center;width:${({$size:e})=>We(e)};height:${({$size:e})=>We(e)};animation:1s infinite linear;animation-name:rotate;@keyframes rotate{from{transform:rotate(0);}to{transform:rotate(360deg);}}`,gi=({images:e,isPending:t=!1,onClickImage:n})=>{const{conversation:r}=se(),s=e.length;if(s===0)return null;const o=bl(s),a=!!n&&!t,l=e.map(f=>f.type??"image/*"),u=l.find(f=>f.startsWith("image")),d=l.find(f=>!f.startsWith("image")),m=a&&u?r.file.openDescription(u):void 0,h=a&&d?r.file.openDescription(d):void 0;return i.createElement(lh,{$width:ne.BODY_MAX_WIDTH,$columns:o},e.map((f,v)=>{const{columnSpan:C}=Cl({index:v,itemCount:s}),y=()=>!t&&(n==null?void 0:n(v)),E=f.type??"image/*",_=a?r.file.buttonLikeInteractivePreview({name:f.name||"",mimeType:E,onActivate:y}):r.file.preview({name:f.name||"",mimeType:E});return i.createElement(ch,{key:f.url,$clickable:a,$itemSpan:C,$isPending:t,..._.props},i.createElement(ah,{src:f.url,alt:f.name||""}),t&&i.createElement(uh,null))}),m==null?void 0:m.descriptionNode,h==null?void 0:h.descriptionNode)},ah=({src:e,alt:t})=>{const[n,r]=c.useState(!1),[s,o]=c.useState(!1);return i.createElement(i.Fragment,null,!n&&!s&&i.createElement(dh,null,i.createElement(mt,{size:20},i.createElement(ee,{type:"spinner",color:"textLowEmphasis",size:20}))),s?i.createElement(mh,null,i.createElement(ee,{type:"photo",color:"textLowEmphasis",size:24})):i.createElement(hh,{src:e,alt:t,$loaded:n,onLoad:()=>r(!0),onError:()=>o(!0)}))},lh=p.default.div`display:grid;grid-template-columns:repeat(${({$columns:e})=>e},1fr);width:${({$width:e})=>e}px;gap:2px;border-radius:16px;overflow:hidden;`,ch=p.default.div`position:relative;width:100%;aspect-ratio:1;overflow:hidden;cursor:${e=>e.$clickable?"pointer":"default"};${Q.light`
92
+ background-color: ${g.color.background100};
93
93
  `}
94
- ${X.dark`
95
- background-color: ${p.color.background400};
94
+ ${Q.dark`
95
+ background-color: ${g.color.background400};
96
96
  `}
97
97
  ${e=>e.$itemSpan&&e.$itemSpan>1&&`
98
98
  grid-column: span ${e.$itemSpan};
@@ -100,7 +100,7 @@
100
100
  `}
101
101
 
102
102
  &:focus-visible {
103
- outline: 2px solid ${p.color.primary.main};
103
+ outline: 2px solid ${g.color.primary.main};
104
104
  outline-offset: -2px;
105
105
  }
106
106
 
@@ -111,19 +111,19 @@
111
111
  }
112
112
  `}
113
113
  }
114
- `,Bm=_.default.div`position:absolute;top:0;left:0;width:100%;height:100%;background-color:${p.color.overlay.dark};pointer-events:none;`,ei=_.default.div`display:flex;align-items:center;justify-content:center;`,Um=_.default(ei)`position:absolute;inset:0;`,Hm=_.default(ei)`position:absolute;inset:0;${X.light`
115
- background-color: ${p.color.background200};
114
+ `,uh=p.default.div`position:absolute;top:0;left:0;width:100%;height:100%;background-color:${g.color.overlay.dark};pointer-events:none;`,pi=p.default.div`display:flex;align-items:center;justify-content:center;`,dh=p.default(pi)`position:absolute;inset:0;`,mh=p.default(pi)`position:absolute;inset:0;${Q.light`
115
+ background-color: ${g.color.background200};
116
116
  `}
117
- ${X.dark`
118
- background-color: ${p.color.background500};
117
+ ${Q.dark`
118
+ background-color: ${g.color.background500};
119
119
  `}
120
- `,Gm=_.default.img`position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:${({$loaded:e})=>e?1:0};transition:opacity 0.3s ease;`,Vm=({files:e,children:t,onClickMedia:n,onClickMediaFiles:r})=>{const s=o=>{const a=e[o];a&&(r?r({files:e,index:o}):n&&n({url:a.url,type:a.type||"image/*"}))};return i.createElement(zm,null,i.createElement(Qo,{images:e,onClickImage:s}),t)},zm=_.default.div`display:flex;flex-direction:column;align-items:flex-start;gap:${ee.GAP_GROUPED}px;`,qm="✱",ti=e=>{const t=new RegExp(`(\`+)([^\`]+?)\\1|(${qm}+)`,"g");return e.replace(t,(n,r,s,o)=>r?n:o?`<span id=${Mm} aria-label="masked-text">${o}</span>`:n)},Wm=e=>e.replace(/\*\*(.*?)\*\*/g,"<b>$1</b>"),As=e=>{var t;return{files:e.fileInfoList.map(n=>({url:n.url,type:n.mimeType??"",name:n.fileName??""})),metadata:{localFiles:(t=e.messageParams)==null?void 0:t.fileInfoList.map(n=>n.file)}}},Ym=c.lazy(async()=>({default:(await Promise.resolve().then(()=>require("./cjs/D2Opuq0j.cjs"))).MarkdownText})),xs=typeof __SBA_USE_SYNTAX_HIGHLIGHT__>"u"||__SBA_USE_SYNTAX_HIGHLIGHT__?c.lazy(async()=>({default:(await Promise.resolve().then(()=>require("./cjs/DlvEEpWX.cjs"))).CodeBlock})):null;function Km(e){var s,o;const t=e.maxBodyWidth??ee.BODY_MAX_WIDTH,n=c.useMemo(()=>Ji(e.message,ti),[e.message]),r={id:`${Ze}-text-body`,$maxWidth:t,$color:(s=e.customStyle)==null?void 0:s.bubbleContentColor,$bgColor:(o=e.customStyle)==null?void 0:o.bubbleBackgroundColor,$surface:e.surface??"bubble"};return n.length===0?e.children?i.createElement(Ts,{...r},e.children):null:i.createElement(Ts,{...r},n.map((a,l)=>a.type==="text"?i.createElement(Is,{key:l,variant:"body3"},i.createElement(mn,{fallback:a.value},i.createElement(Ym,{onClickImage:u=>{var d;return(d=e.onClickMedia)==null?void 0:d.call(e,{url:u,type:"image/*"})}},a.value))):a.type==="code"?xs?i.createElement(mn,{key:l,fallback:i.createElement(Is,{variant:"body3"},a.value)},i.createElement(xs,{code:a.value,language:a.language})):i.createElement(jm,{key:l},i.createElement("code",null,a.value)):null),e.children)}const Ts=_.default.div`display:flex;flex-direction:column;min-width:0;max-width:min(${({$maxWidth:e})=>e}px,100%);${({theme:e,$color:t,$bgColor:n,$surface:r})=>P.css`
120
+ `,hh=p.default.img`position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:${({$loaded:e})=>e?1:0};transition:opacity 0.3s ease;`,fh=({files:e,children:t,onClickMedia:n,onClickMediaFiles:r})=>{const s=o=>{const a=e[o];a&&(r?r({files:e,index:o}):n&&n({url:a.url,type:a.type||"image/*"}))};return i.createElement(gh,null,i.createElement(gi,{images:e,onClickImage:s}),t)},gh=p.default.div`display:flex;flex-direction:column;align-items:flex-start;gap:${ne.GAP_GROUPED}px;`,ph="✱",_i=e=>{const t=new RegExp(`(\`+)([^\`]+?)\\1|(${ph}+)`,"g");return e.replace(t,(n,r,s,o)=>r?n:o?`<span id=${eh} aria-label="masked-text">${o}</span>`:n)},_h=e=>e.replace(/\*\*(.*?)\*\*/g,"<b>$1</b>"),Ls=e=>{var t;return{files:e.fileInfoList.map(n=>({url:n.url,type:n.mimeType??"",name:n.fileName??""})),metadata:{localFiles:(t=e.messageParams)==null?void 0:t.fileInfoList.map(n=>n.file)}}},Eh=c.lazy(async()=>({default:(await Promise.resolve().then(()=>require("./cjs/D2Opuq0j.cjs"))).MarkdownText})),Ns=typeof __SBA_USE_SYNTAX_HIGHLIGHT__>"u"||__SBA_USE_SYNTAX_HIGHLIGHT__?c.lazy(async()=>({default:(await Promise.resolve().then(()=>require("./cjs/DlvEEpWX.cjs"))).CodeBlock})):null;function bh(e){var s,o;const t=e.maxBodyWidth??ne.BODY_MAX_WIDTH,n=c.useMemo(()=>fa(e.message,_i),[e.message]),r={id:`${Xe}-text-body`,$maxWidth:t,$color:(s=e.customStyle)==null?void 0:s.bubbleContentColor,$bgColor:(o=e.customStyle)==null?void 0:o.bubbleBackgroundColor,$surface:e.surface??"bubble"};return n.length===0?e.children?i.createElement(Ds,{...r},e.children):null:i.createElement(Ds,{...r},n.map((a,l)=>a.type==="text"?i.createElement($s,{key:l,variant:"body3"},i.createElement(Lt,{fallback:a.value},i.createElement(Eh,{onClickImage:u=>{var d;return(d=e.onClickMedia)==null?void 0:d.call(e,{url:u,type:"image/*"})}},a.value))):a.type==="code"?Ns?i.createElement(Lt,{key:l,fallback:i.createElement($s,{variant:"body3"},a.value)},i.createElement(Ns,{code:a.value,language:a.language})):i.createElement(Ch,{key:l},i.createElement("code",null,a.value)):null),e.children)}const Ds=p.default.div`display:flex;flex-direction:column;min-width:0;max-width:min(${({$maxWidth:e})=>e}px,100%);${({theme:e,$color:t,$bgColor:n,$surface:r})=>P.css`
121
121
  color: ${t||e.colors.messageIncoming.text};
122
122
  ${r==="bubble"?P.css`background-color:${n||e.colors.messageIncoming.background};border-radius:12px;overflow:hidden;padding:12px 0;`:P.css`background-color:transparent;border-radius:0;overflow:visible;padding:0;`}
123
123
  `}
124
124
  transition: max-width 0.3s;
125
125
  overflow-wrap: break-word;
126
- `,Is=_.default(B)`align-items:flex-start;line-height:140%;white-space:pre-wrap;padding:0 12px;`,jm=_.default.pre`margin:0;padding:1em;overflow-x:auto;white-space:pre;font-family:monospace;font-size:13px;line-height:1.5;color:#d4d4d4;background:#1e1e1e;border-radius:4px;`;function ni({id:e,src:t,size:n=56,onClick:r,style:s,...o}){return i.createElement(Xm,{id:e,tabIndex:r?0:void 0,onClick:r,$size:Ye(n),style:s,...o},t?i.createElement(Zm,{src:t,alt:""}):i.createElement(Z,{type:"user",size:n}))}const Xm=_.default.div`border-radius:50%;display:inline-block;overflow:hidden;position:relative;flex-shrink:0;height:${e=>e.$size};width:${e=>e.$size};background-color:${p.themedColor.bg_100_500};&:focus{outline:none;}${Ie}`,Zm=_.default.img`object-fit:cover;width:100%;height:100%;position:absolute;`,Jm=({sender:e,isBotMessage:t})=>{const n=`${Ze}-sender-avatar`;return t&&!e.profileUrl?i.createElement(Qm,{id:n},i.createElement(Z,{type:"delight",size:"100%"})):i.createElement(ni,{id:n,size:ee.AVATAR_SIZE,src:e.profileUrl})},Qm=_.default.div`flex-shrink:0;width:${ee.AVATAR_SIZE}px;height:${ee.AVATAR_SIZE}px;box-sizing:border-box;padding:4px;border-radius:50%;display:flex;justify-content:center;align-items:center;background-color:${({theme:e})=>e.colors.base.primary}!important;ellipse,path{fill:${({theme:e})=>e.colors.base.primaryContrastContent}!important;}}`,eh=({sender:e})=>i.createElement(th,{id:`${Ze}-sender-name`,variant:"caption1",color:p.themedColor.textMidEmphasis},e.nickname),th=_.default(B)`text-align:start;width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-block:5px;padding-inline:0 7px;`,nh=({createdAt:e})=>{const{stringSet:t,format:n}=re();return e?i.createElement(B,{id:`${Ze}-sent-time`,variant:"caption4",color:p.themedColor.textLowEmphasis},n(e,t.DATE_FORMAT__MESSAGE_TIMESTAMP)):null},ri="(prefers-reduced-motion: reduce)",rh=()=>typeof window>"u"||typeof window.matchMedia!="function"?!1:window.matchMedia(ri).matches,si=()=>{const[e,t]=c.useState(rh);return c.useEffect(()=>{if(typeof window>"u"||typeof window.matchMedia!="function")return;const n=window.matchMedia(ri);t(n.matches);const r=s=>{t(s.matches)};return typeof n.addEventListener=="function"?(n.addEventListener("change",r),()=>{n.removeEventListener("change",r)}):(n.addListener(r),()=>{n.removeListener(r)})},[]),e},sh=({thinkingMessage:e,customStyle:t})=>{const n=si();return e?i.createElement(ah,{$prefersReducedMotion:n},i.createElement(lh,null,e),!n&&i.createElement(ch,null)):i.createElement(oh,{$bgColor:t==null?void 0:t.bubbleBackgroundColor},[0,1,2].map(r=>i.createElement(ih,{key:r,$color:t==null?void 0:t.bubbleContentColor,$prefersReducedMotion:n})))},oh=_.default.div`align-items:center;border-radius:16px;display:flex;gap:6px;height:26px;justify-content:center;padding:0 12px;background-color:${({theme:e,$bgColor:t})=>t||e.colors.messageIncoming.background};`,ih=_.default.span`animation:${({$prefersReducedMotion:e})=>e?"none":"blink 1.4s infinite"};animation-fill-mode:both;border-radius:50%;height:8px;width:8px;background:${({theme:e,$color:t})=>t||e.colors.messageIncoming.text};opacity:${({$prefersReducedMotion:e})=>e?.38:void 0};@keyframes blink{0%{opacity:0.12;transform:scale(1);}21.43%{opacity:0.38;transform:scale(1.2);}42.86%{opacity:0.12;transform:scale(1);}100%{opacity:0.12;transform:scale(1);}}&:nth-child(1){animation-delay:0.4s;}&:nth-child(2){animation-delay:0.6s;}&:nth-child(3){animation-delay:0.8s;}`,ah=_.default.div.attrs({id:`${Ze}-typing-indicator`})`
126
+ `,$s=p.default(U)`align-items:flex-start;line-height:140%;white-space:pre-wrap;padding:0 12px;`,Ch=p.default.pre`margin:0;padding:1em;overflow-x:auto;white-space:pre;font-family:monospace;font-size:13px;line-height:1.5;color:#d4d4d4;background:#1e1e1e;border-radius:4px;`;function Ei({id:e,src:t,size:n=56,onClick:r,style:s,...o}){return i.createElement(vh,{id:e,tabIndex:r?0:void 0,onClick:r,$size:We(n),style:s,...o},t?i.createElement(yh,{src:t,alt:""}):i.createElement(ee,{type:"user",size:n}))}const vh=p.default.div`border-radius:50%;display:inline-block;overflow:hidden;position:relative;flex-shrink:0;height:${e=>e.$size};width:${e=>e.$size};background-color:${g.themedColor.bg_100_500};&:focus{outline:none;}${we}`,yh=p.default.img`object-fit:cover;width:100%;height:100%;position:absolute;`,Sh=({sender:e,isBotMessage:t})=>{const n=`${Xe}-sender-avatar`;return t&&!e.profileUrl?i.createElement(Ah,{id:n},i.createElement(ee,{type:"delight",size:"100%"})):i.createElement(Ei,{id:n,size:ne.AVATAR_SIZE,src:e.profileUrl})},Ah=p.default.div`flex-shrink:0;width:${ne.AVATAR_SIZE}px;height:${ne.AVATAR_SIZE}px;box-sizing:border-box;padding:4px;border-radius:50%;display:flex;justify-content:center;align-items:center;background-color:${({theme:e})=>e.colors.base.primary}!important;ellipse,path{fill:${({theme:e})=>e.colors.base.primaryContrastContent}!important;}}`,xh=({sender:e})=>i.createElement(Th,{id:`${Xe}-sender-name`,variant:"caption1",color:g.themedColor.textMidEmphasis},e.nickname),Th=p.default(U)`text-align:start;width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-block:5px;padding-inline:0 7px;`,Ih=({createdAt:e})=>{const{stringSet:t,format:n}=ie();return e?i.createElement(U,{id:`${Xe}-sent-time`,variant:"caption4",color:g.themedColor.textLowEmphasis},n(e,t.DATE_FORMAT__MESSAGE_TIMESTAMP)):null},bi="(prefers-reduced-motion: reduce)",wh=()=>typeof window>"u"||typeof window.matchMedia!="function"?!1:window.matchMedia(bi).matches,Ci=()=>{const[e,t]=c.useState(wh);return c.useEffect(()=>{if(typeof window>"u"||typeof window.matchMedia!="function")return;const n=window.matchMedia(bi);t(n.matches);const r=s=>{t(s.matches)};return typeof n.addEventListener=="function"?(n.addEventListener("change",r),()=>{n.removeEventListener("change",r)}):(n.addListener(r),()=>{n.removeListener(r)})},[]),e},Mh=({thinkingMessage:e,customStyle:t})=>{const n=Ci();return e?i.createElement(Oh,{$prefersReducedMotion:n},i.createElement(Lh,null,e),!n&&i.createElement(Nh,null)):i.createElement(kh,{$bgColor:t==null?void 0:t.bubbleBackgroundColor},[0,1,2].map(r=>i.createElement(Rh,{key:r,$color:t==null?void 0:t.bubbleContentColor,$prefersReducedMotion:n})))},kh=p.default.div`align-items:center;border-radius:16px;display:flex;gap:6px;height:26px;justify-content:center;padding:0 12px;background-color:${({theme:e,$bgColor:t})=>t||e.colors.messageIncoming.background};`,Rh=p.default.span`animation:${({$prefersReducedMotion:e})=>e?"none":"blink 1.4s infinite"};animation-fill-mode:both;border-radius:50%;height:8px;width:8px;background:${({theme:e,$color:t})=>t||e.colors.messageIncoming.text};opacity:${({$prefersReducedMotion:e})=>e?.38:void 0};@keyframes blink{0%{opacity:0.12;transform:scale(1);}21.43%{opacity:0.38;transform:scale(1.2);}42.86%{opacity:0.12;transform:scale(1);}100%{opacity:0.12;transform:scale(1);}}&:nth-child(1){animation-delay:0.4s;}&:nth-child(2){animation-delay:0.6s;}&:nth-child(3){animation-delay:0.8s;}`,Oh=p.default.div.attrs({id:`${Xe}-typing-indicator`})`
127
127
  position: relative;
128
128
  overflow: hidden;
129
129
  animation: ${({$prefersReducedMotion:e})=>e?"none":"fadeIn 0.4s ease-in-out"};
@@ -135,12 +135,12 @@
135
135
  opacity: 1;
136
136
  }
137
137
  }
138
- `,lh=_.default(B).attrs({variant:"body3"})`
138
+ `,Lh=p.default(U).attrs({variant:"body3"})`
139
139
  white-space: pre-wrap;
140
140
  word-break: break-word;
141
- color: ${p.themedColor.textHighEmphasis};
142
- `,ch=_.default.div`position:absolute;inset:0;pointer-events:none;background-size:33% 100%;background-repeat:no-repeat;animation:shimmerSweepLtr 1.6s linear infinite;@keyframes shimmerSweepLtr{from{background-position:-33% 0;}to{background-position:133% 0;}}[dir='rtl'] &{animation-name:shimmerSweepRtl;@keyframes shimmerSweepRtl{from{background-position:133% 0;}to{background-position:-33% 0;}}}background-image:${({theme:e})=>{const t=Hr(e.colors.base.background,.5),n=Hr(e.colors.base.background,0);return`linear-gradient(90deg, ${n} 0%, ${t} 30%, ${t} 60%, ${n} 100%)`}};
143
- `,uh=({extendedMessagePayload:e,onClickCTA:t=({url:n})=>br(n)})=>{const n=e==null?void 0:e.cta_button;if(!n)return null;const r=()=>t(n);return i.createElement(dh,{id:`${Ze}-ext-cta-button`,onClick:r},i.createElement(mh,{variant:"button"},n.label))},dh=_.default.button.attrs({type:"button"})`
141
+ color: ${g.themedColor.textHighEmphasis};
142
+ `,Nh=p.default.div`position:absolute;inset:0;pointer-events:none;background-size:33% 100%;background-repeat:no-repeat;animation:shimmerSweepLtr 1.6s linear infinite;@keyframes shimmerSweepLtr{from{background-position:-33% 0;}to{background-position:133% 0;}}[dir='rtl'] &{animation-name:shimmerSweepRtl;@keyframes shimmerSweepRtl{from{background-position:133% 0;}to{background-position:-33% 0;}}}background-image:${({theme:e})=>{const t=jr(e.colors.base.background,.5),n=jr(e.colors.base.background,0);return`linear-gradient(90deg, ${n} 0%, ${t} 30%, ${t} 60%, ${n} 100%)`}};
143
+ `,Dh=({extendedMessagePayload:e,onClickCTA:t=({url:n})=>Ar(n)})=>{const n=e==null?void 0:e.cta_button;if(!n)return null;const r=()=>t(n);return i.createElement($h,{id:`${Xe}-ext-cta-button`,onClick:r},i.createElement(Ph,{variant:"button"},n.label))},$h=p.default.button.attrs({type:"button"})`
144
144
  all: unset;
145
145
  display: flex;
146
146
  width: 100%;
@@ -150,14 +150,14 @@
150
150
  cursor: pointer;
151
151
  border-radius: 6px;
152
152
  padding: 8px;
153
- color: ${p.themedColor.textHighEmphasis};
154
- background-color: ${p.color.background50};
155
- ${X.dark`
156
- background-color: ${p.color.ondark.textDisabled};
153
+ color: ${g.themedColor.textHighEmphasis};
154
+ background-color: ${g.color.background50};
155
+ ${Q.dark`
156
+ background-color: ${g.color.ondark.textDisabled};
157
157
  `}
158
158
 
159
- ${Ie}
160
- `,mh=_.default(B)`overflow:hidden;text-overflow:ellipsis;white-space:nowrap;`,hh=({extendedMessagePayload:e,onClickCitation:t=n=>br(n.link)})=>{const{stringSet:n}=re(),{theme:r}=dr(),s=e==null?void 0:e.citations;return!s||s.length===0?null:i.createElement(fh,{id:`${Ze}-ext-citation`},i.createElement(gh,{variant:"caption1",color:r.colors.messageIncoming.text},n.CITATION_SOURCE_TITLE),i.createElement(ph,null,s.map((o,a)=>i.createElement(Eh,{key:`${o.embedding_id}-${a}`,onClick:()=>t(o)},i.createElement(Z,{type:"source",size:16,color:r.colors.messageIncoming.text}),i.createElement(_h,{variant:"body3",color:r.colors.messageIncoming.text},o.title)))))},fh=_.default.div`display:flex;flex-direction:column;gap:8px;border-radius:8px;padding:8px 12px 6px;`,gh=_.default(B)`opacity:0.5;`,ph=_.default.div`display:flex;flex-direction:column;gap:8px;`,_h=_.default(B)`text-decoration:underline;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;`,Eh=_.default.button.attrs({type:"button"})`
159
+ ${we}
160
+ `,Ph=p.default(U)`overflow:hidden;text-overflow:ellipsis;white-space:nowrap;`,Fh=({extendedMessagePayload:e,onClickCitation:t=n=>Ar(n.link)})=>{const{stringSet:n}=ie(),{theme:r}=pr(),s=e==null?void 0:e.citations;return!s||s.length===0?null:i.createElement(Bh,{id:`${Xe}-ext-citation`},i.createElement(Uh,{variant:"caption1",color:r.colors.messageIncoming.text},n.CITATION_SOURCE_TITLE),i.createElement(Hh,null,s.map((o,a)=>i.createElement(Vh,{key:`${o.embedding_id}-${a}`,onClick:()=>t(o)},i.createElement(ee,{type:"source",size:16,color:r.colors.messageIncoming.text}),i.createElement(Gh,{variant:"body3",color:r.colors.messageIncoming.text},o.title)))))},Bh=p.default.div`display:flex;flex-direction:column;gap:8px;border-radius:8px;padding:8px 12px 6px;`,Uh=p.default(U)`opacity:0.5;`,Hh=p.default.div`display:flex;flex-direction:column;gap:8px;`,Gh=p.default(U)`text-decoration:underline;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;`,Vh=p.default.button.attrs({type:"button"})`
161
161
  background: none;
162
162
  border: none;
163
163
  padding: 0;
@@ -172,127 +172,127 @@
172
172
  &:hover {
173
173
  opacity: 0.5;
174
174
  }
175
- `,bh=e=>i.createElement(i.Fragment,null),Ch=({visible:e,onClose:t,children:n,"aria-label":r})=>i.createElement(ut,{portalContainerId:ve.WINDOW,visible:e,onClose:t,"aria-label":r},i.createElement(Ah,null,n)),vh=({onClick:e,destructive:t,icon:n,initialFocus:r,children:s})=>i.createElement(yh,{onClick:e,$destructive:t,"data-sb-initial-focus":r?"true":void 0},n&&i.createElement(Sh,null,i.createElement(Z,{type:n,size:24,color:p.themedColor.primary})),s),tt=Object.assign(Ch,{ActionItem:vh}),yh=_.default.button`all:unset;display:flex;align-items:center;gap:24px;width:100%;padding:12px 24px;cursor:pointer;color:${({$destructive:e})=>e?p.themedColor.error:p.themedColor.textHighEmphasis};${Ie}`,Sh=_.default.div`display:flex;align-items:center;justify-content:center;flex-shrink:0;`,Ah=_.default.div`position:absolute;left:0;right:0;bottom:0;border-radius:12px 12px 0 0;flex-direction:column;align-items:flex-end;margin:0 auto;box-sizing:border-box;background-color:${({theme:e})=>e.colors.base.modalContentBackground};`,Zn=e=>`${e}-filled`,xh=e=>e==="good"?Re.AIAgentMessageFeedbackRating.GOOD:Re.AIAgentMessageFeedbackRating.BAD,Sr=P.css`&:hover{opacity:0.8;}&:active{opacity:0.6;}`,Kt={good:{onlight:p.color.secondary.dark,ondark:p.color.secondary.light},bad:{onlight:p.color.error.dark,ondark:p.color.error.light}},Th={good:p.themedColor.secondary,bad:p.themedColor.error},oi=e=>P.css`color:${Kt[e].onlight};border-color:${Kt[e].onlight};${X.dark`
176
- color: ${Kt[e].ondark};
177
- border-color: ${Kt[e].ondark};
175
+ `,zh=e=>i.createElement(i.Fragment,null),Yh=({visible:e,onClose:t,children:n,"aria-label":r})=>i.createElement(lt,{portalContainerId:_e.WINDOW,visible:e,onClose:t,"aria-label":r},i.createElement(jh,null,n)),Wh=({onClick:e,destructive:t,icon:n,initialFocus:r,children:s})=>i.createElement(qh,{onClick:e,$destructive:t,"data-sb-initial-focus":r?"true":void 0},n&&i.createElement(Kh,null,i.createElement(ee,{type:n,size:24,color:g.themedColor.primary})),s),st=Object.assign(Yh,{ActionItem:Wh}),qh=p.default.button`all:unset;display:flex;align-items:center;gap:24px;width:100%;padding:12px 24px;cursor:pointer;color:${({$destructive:e})=>e?g.themedColor.error:g.themedColor.textHighEmphasis};${we}`,Kh=p.default.div`display:flex;align-items:center;justify-content:center;flex-shrink:0;`,jh=p.default.div`position:absolute;left:0;right:0;bottom:0;border-radius:12px 12px 0 0;flex-direction:column;align-items:flex-end;margin:0 auto;box-sizing:border-box;background-color:${({theme:e})=>e.colors.base.modalContentBackground};`,nr=e=>`${e}-filled`,Xh=e=>e==="good"?Ne.AIAgentMessageFeedbackRating.GOOD:Ne.AIAgentMessageFeedbackRating.BAD,wr=P.css`&:hover{opacity:0.8;}&:active{opacity:0.6;}`,jt={good:{onlight:g.color.secondary.dark,ondark:g.color.secondary.light},bad:{onlight:g.color.error.dark,ondark:g.color.error.light}},Zh={good:g.themedColor.secondary,bad:g.themedColor.error},vi=e=>P.css`color:${jt[e].onlight};border-color:${jt[e].onlight};${Q.dark`
176
+ color: ${jt[e].ondark};
177
+ border-color: ${jt[e].ondark};
178
178
  `}
179
- `,Ih=({visible:e,onClose:t,isEdit:n,initialRating:r,initialComment:s="",onSubmit:o,isCommentEnabled:a=!1})=>{const{stringSet:l}=re(),{rootElement:u}=Fo(),d=ct(u),[m,h]=c.useState(r),[f,v]=c.useState(s),[b,C]=c.useState(!1),g=c.useRef(!1),y=m??r??"good";c.useLayoutEffect(()=>{e?(h(r),v(s)):(h(void 0),v(""))},[e,r,s]),c.useEffect(()=>{if(!e)return;const A=k=>{const N=k;N.metaKey||N.altKey||N.ctrlKey||(g.current=!0)},w=()=>{g.current=!1,C(!1)};return d.addEventListener("keydown",A),d.addEventListener("pointerdown",w),()=>{d.removeEventListener("keydown",A),d.removeEventListener("pointerdown",w)}},[d,e]);const E=()=>{m&&(o({rating:m,comment:f.trim()||void 0}),t())},I=()=>{t()};return e?i.createElement(ut,{portalContainerId:ve.WINDOW,visible:e,onClose:I,"aria-label":l.FEEDBACK_TITLE},i.createElement(wh,null,i.createElement(Mh,null,i.createElement(B,{variant:"h2",color:p.themedColor.textHighEmphasis},l.FEEDBACK_TITLE)),i.createElement(kh,null,i.createElement(Lh,null,["good","bad"].map(A=>{const w=m===A,k=A==="good"?l.FEEDBACK_GOOD:l.FEEDBACK_BAD;return i.createElement(Rh,{key:A,$selected:w,$rating:A,onClick:()=>h(A),"data-sb-initial-focus":A===y?"true":void 0},i.createElement(Z,{type:w?Zn(A):A,size:24,color:"currentColor"}),i.createElement(B,{variant:"caption1",color:"currentColor"},k))})),a&&i.createElement(Oh,null,i.createElement(B,{variant:"caption3",color:p.themedColor.textHighEmphasis},l.FEEDBACK_COMMENT_LABEL),i.createElement(Nh,{placeholder:l.FEEDBACK_COMMENT_PLACEHOLDER,value:f,onChange:A=>v(A.target.value),onFocus:()=>C(g.current),onBlur:()=>C(!1),maxLength:100,$focusVisible:b,"data-focus-visible":b?"true":"false"}))),i.createElement(Dh,null,i.createElement($h,{onClick:I},i.createElement(B,{variant:"button",color:p.themedColor.textHighEmphasis},l.FEEDBACK_CANCEL)),i.createElement(Ph,{onClick:E,disabled:!m},i.createElement(B,{variant:"button"},n?l.FEEDBACK_SAVE:l.FEEDBACK_SUBMIT))))):null},wh=_.default.div`width:280px;background-color:${({theme:e})=>e.colors.base.modalContentBackground};border-radius:12px;overflow:hidden;`,Mh=_.default.div`padding:24px;`,kh=_.default.div`padding-inline:24px;display:flex;flex-direction:column;gap:24px;`,Lh=_.default.div`display:flex;gap:4px;`,Rh=_.default.button`width:114px;height:64px;border-radius:12px;border:1px solid ${p.themedColor.textDisabled};box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0;gap:0;transition:background-color 0.2s;color:${p.themedColor.textLowEmphasis};background-color:transparent;${({$selected:e,$rating:t})=>e&&oi(t)}${Sr}`,Oh=_.default.div`display:flex;flex-direction:column;gap:6px;`,Nh=_.default.textarea`font-family:inherit;font-size:12px;line-height:16px;border:1px solid ${p.themedColor.textDisabled};border-radius:4px;padding:6px 12px;color:${p.themedColor.textHighEmphasis};background-color:${p.themedColor.textLowEmphasisInverse};resize:none;field-sizing:content;min-height:28px;max-height:118px;overflow-y:auto;&::placeholder{color:${p.themedColor.textLowEmphasis};}&:focus{outline:none;}${({$focusVisible:e})=>e&&P.css`
180
- outline: 2px solid ${p.themedColor.primary};
179
+ `,Jh=({visible:e,onClose:t,isEdit:n,initialRating:r,initialComment:s="",onSubmit:o,isCommentEnabled:a=!1})=>{const{stringSet:l}=ie(),{conversation:u}=se(),{rootElement:d}=Xo(),m=ut(d),[h,f]=c.useState(r),[v,C]=c.useState(s),[y,E]=c.useState(!1),_=c.useRef(!1),b=h??r??"good",A=u.feedback;c.useLayoutEffect(()=>{e?(f(r),C(s)):(f(void 0),C(""))},[e,r,s]),c.useEffect(()=>{if(!e)return;const w=k=>{const R=k;R.metaKey||R.altKey||R.ctrlKey||(_.current=!0)},O=()=>{_.current=!1,E(!1)};return m.addEventListener("keydown",w),m.addEventListener("pointerdown",O),()=>{m.removeEventListener("keydown",w),m.removeEventListener("pointerdown",O)}},[m,e]);const M=()=>{h&&(o({rating:h,comment:v.trim()||void 0}),t())},B=()=>{t()};return e?i.createElement(lt,{portalContainerId:_e.WINDOW,visible:e,onClose:B,"aria-label":l.FEEDBACK_TITLE},i.createElement(Qh,null,i.createElement(ef,null,i.createElement(U,{variant:"h2",color:g.themedColor.textHighEmphasis},l.FEEDBACK_TITLE)),i.createElement(tf,null,i.createElement(nf,null,["good","bad"].map(w=>{const O=h===w,k=w==="good"?l.FEEDBACK_GOOD:l.FEEDBACK_BAD,R=A.button(w,O);return i.createElement(rf,{key:w,type:"button",$selected:O,$rating:w,...R.props,onClick:()=>f(w),"data-sb-initial-focus":w===b?"true":void 0},i.createElement(ee,{type:O?nr(w):w,size:24,color:"currentColor"}),i.createElement(U,{variant:"caption1",color:"currentColor"},k))}),A.descriptionNode),a&&i.createElement(sf,null,i.createElement(U,{variant:"caption3",color:g.themedColor.textHighEmphasis},l.FEEDBACK_COMMENT_LABEL),i.createElement(of,{placeholder:l.FEEDBACK_COMMENT_PLACEHOLDER,value:v,onChange:w=>C(w.target.value),onFocus:()=>E(_.current),onBlur:()=>E(!1),maxLength:100,$focusVisible:y,"data-focus-visible":y?"true":"false"}))),i.createElement(af,null,i.createElement(lf,{onClick:B},i.createElement(U,{variant:"button",color:g.themedColor.textHighEmphasis},l.FEEDBACK_CANCEL)),i.createElement(cf,{onClick:M,disabled:!h},i.createElement(U,{variant:"button"},n?l.FEEDBACK_SAVE:l.FEEDBACK_SUBMIT))))):null},Qh=p.default.div`width:280px;background-color:${({theme:e})=>e.colors.base.modalContentBackground};border-radius:12px;overflow:hidden;`,ef=p.default.div`padding:24px;`,tf=p.default.div`padding-inline:24px;display:flex;flex-direction:column;gap:24px;`,nf=p.default.div`display:flex;gap:4px;`,rf=p.default.button`width:114px;height:64px;border-radius:12px;border:1px solid ${g.themedColor.textDisabled};box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0;gap:0;transition:background-color 0.2s;color:${g.themedColor.textLowEmphasis};background-color:transparent;${({$selected:e,$rating:t})=>e&&vi(t)}${wr}`,sf=p.default.div`display:flex;flex-direction:column;gap:6px;`,of=p.default.textarea`font-family:inherit;font-size:12px;line-height:16px;border:1px solid ${g.themedColor.textDisabled};border-radius:4px;padding:6px 12px;color:${g.themedColor.textHighEmphasis};background-color:${g.themedColor.textLowEmphasisInverse};resize:none;field-sizing:content;min-height:28px;max-height:118px;overflow-y:auto;&::placeholder{color:${g.themedColor.textLowEmphasis};}&:focus{outline:none;}${({$focusVisible:e})=>e&&P.css`
180
+ outline: 2px solid ${g.themedColor.primary};
181
181
  outline-offset: 2px;
182
182
  `}
183
- `,Dh=_.default.div`padding-inline:24px;padding-block:16px;display:flex;justify-content:flex-end;gap:4px;`,ii=_.default.button`width:86px;height:40px;border-radius:20px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity 0.2s;`,$h=_.default(ii)`background-color:transparent;${Sr}`,Ph=_.default(ii)`cursor:${({disabled:e})=>e?"not-allowed":"pointer"};opacity:${({disabled:e})=>e?.4:1};&:hover:not(:disabled){opacity:0.8;}&:active:not(:disabled){opacity:0.6;}background-color:${({theme:e})=>e.colors.base.primary};span{color:${({theme:e})=>e.colors.base.primaryContrastContent};}`,Fh=({isBotMessage:e,isConversationClosed:t,isStreaming:n,isFeedbackEnabled:r,isFeedbackCommentEnabled:s,extendedMessagePayload:o,onFeedbackUpdate:a})=>{const{stringSet:l}=re(),{conversation:u}=se(),[d,m]=c.useState(!1),[h,f]=c.useState(!1),[v,b]=c.useState(void 0),[C,g]=c.useState(""),y=c.useRef(null),E=c.useRef(null),I=c.useRef(null),A=c.useRef(!1),w=u.feedback,k=o==null?void 0:o.feedback,N=(k==null?void 0:k.rating)??"none";if(N!=="none"?!1:!!(n||!e||!r||(o==null?void 0:o.bot_message_type)!=="generated"||t))return null;const G=$=>{$&&Oe(()=>{const Q=$==="good"?y.current:E.current;Q==null||Q.focus()})},K=({restoreTrigger:$=!0}={})=>{f(!1),$&&G(I.current)},L=$=>{N==="none"?(b($),g(""),m(!0)):(I.current=$,f(!0))},V=()=>{a==null||a(null),K()},Y=()=>{A.current=!0,K({restoreTrigger:!1}),b(k==null?void 0:k.rating),g((k==null?void 0:k.comment)??""),m(!0)},x=$=>{A.current=!1,a==null||a($),m(!1),G(I.current)},D=()=>{m(!1),A.current&&(A.current=!1,f(!0))};return t&&N!=="none"?i.createElement(ws,{role:"presentation",$horizontal:!0},i.createElement(Bh,null,i.createElement(Z,{type:Zn(N),size:12,color:Th[N]})),(k==null?void 0:k.comment)&&i.createElement(Ms,{variant:"caption2",style:{lineHeight:"16px"}},k.comment)):i.createElement(i.Fragment,null,i.createElement(ws,{role:"presentation"},i.createElement(Uh,{role:"presentation"},["good","bad"].map($=>{const Q=N===$,ae=w.button($,Q);return i.createElement(Hh,{key:$,$selected:Q,$rating:$,ref:$==="good"?y:E,...ae.props,onClick:()=>L($)},i.createElement(Z,{type:Q?Zn($):$,size:14,color:"currentColor"}))})),w.descriptionNode,N!=="none"&&(k==null?void 0:k.comment)&&i.createElement(Ms,{variant:"caption2"},k.comment)),i.createElement(tt,{visible:h,onClose:K,...w.optionsBottomSheet},i.createElement(tt.ActionItem,{onClick:Y,initialFocus:!0},l.FEEDBACK_EDIT),i.createElement(tt.ActionItem,{onClick:V,destructive:!0},l.FEEDBACK_REMOVE)),i.createElement(Ih,{visible:d,onClose:D,isEdit:N!=="none",initialRating:v,initialComment:C,onSubmit:x,isCommentEnabled:s}))},ws=_.default.div`display:flex;flex-direction:${({$horizontal:e})=>e?"row":"column"};align-items:${({$horizontal:e})=>e?"flex-start":"stretch"};gap:4px;margin-top:8px;word-break:break-word;max-width:${ee.BODY_MAX_WIDTH}px;`,Bh=_.default.div`padding:2px;flex-shrink:0;display:flex;align-items:center;`,Uh=_.default.div`display:flex;gap:2px;`,Hh=_.default.button`width:38px;height:20px;border-radius:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:opacity 0.2s;box-sizing:border-box;color:${p.themedColor.textMidEmphasis};border:1px solid ${p.color.background200};background-color:transparent;${X.dark`
184
- border: 1px solid ${p.color.background400};
183
+ `,af=p.default.div`padding-inline:24px;padding-block:16px;display:flex;justify-content:flex-end;gap:4px;`,yi=p.default.button`width:86px;height:40px;border-radius:20px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity 0.2s;`,lf=p.default(yi)`background-color:transparent;${wr}`,cf=p.default(yi)`cursor:${({disabled:e})=>e?"not-allowed":"pointer"};opacity:${({disabled:e})=>e?.4:1};&:hover:not(:disabled){opacity:0.8;}&:active:not(:disabled){opacity:0.6;}background-color:${({theme:e})=>e.colors.base.primary};span{color:${({theme:e})=>e.colors.base.primaryContrastContent};}`,uf=({isBotMessage:e,isConversationClosed:t,isStreaming:n,isFeedbackEnabled:r,isFeedbackCommentEnabled:s,extendedMessagePayload:o,onFeedbackUpdate:a})=>{const{stringSet:l}=ie(),{conversation:u}=se(),[d,m]=c.useState(!1),[h,f]=c.useState(!1),[v,C]=c.useState(void 0),[y,E]=c.useState(""),_=c.useRef(null),b=c.useRef(null),A=c.useRef(null),M=c.useRef(!1),B=u.feedback,w=o==null?void 0:o.feedback,O=(w==null?void 0:w.rating)??"none";if(O!=="none"?!1:!!(n||!e||!r||(o==null?void 0:o.bot_message_type)!=="generated"||t))return null;const R=T=>{T&&$e(()=>{const z=T==="good"?_.current:b.current;z==null||z.focus()})},W=({restoreTrigger:T=!0}={})=>{f(!1),T&&R(A.current)},D=T=>{O==="none"?(C(T),E(""),m(!0)):(A.current=T,f(!0))},F=()=>{a==null||a(null),W()},q=()=>{M.current=!0,W({restoreTrigger:!1}),C(w==null?void 0:w.rating),E((w==null?void 0:w.comment)??""),m(!0)},H=T=>{M.current=!1,a==null||a(T),m(!1),R(A.current)},K=()=>{m(!1),M.current&&(M.current=!1,f(!0))};return t&&O!=="none"?i.createElement(Ps,{role:"presentation",$horizontal:!0},i.createElement(df,null,i.createElement(ee,{type:nr(O),size:12,color:Zh[O]})),(w==null?void 0:w.comment)&&i.createElement(Fs,{variant:"caption2",style:{lineHeight:"16px"}},w.comment)):i.createElement(i.Fragment,null,i.createElement(Ps,{role:"presentation"},i.createElement(mf,{role:"presentation"},["good","bad"].map(T=>{const z=O===T,Z=B.button(T,z);return i.createElement(hf,{key:T,$selected:z,$rating:T,ref:T==="good"?_:b,...Z.props,onClick:()=>D(T)},i.createElement(ee,{type:z?nr(T):T,size:14,color:"currentColor"}))})),B.descriptionNode,O!=="none"&&(w==null?void 0:w.comment)&&i.createElement(Fs,{variant:"caption2"},w.comment)),i.createElement(st,{visible:h,onClose:W,...B.optionsBottomSheet},i.createElement(st.ActionItem,{onClick:q,initialFocus:!0},l.FEEDBACK_EDIT),i.createElement(st.ActionItem,{onClick:F,destructive:!0},l.FEEDBACK_REMOVE)),i.createElement(Jh,{visible:d,onClose:K,isEdit:O!=="none",initialRating:v,initialComment:y,onSubmit:H,isCommentEnabled:s}))},Ps=p.default.div`display:flex;flex-direction:${({$horizontal:e})=>e?"row":"column"};align-items:${({$horizontal:e})=>e?"flex-start":"stretch"};gap:4px;margin-top:8px;word-break:break-word;max-width:${ne.BODY_MAX_WIDTH}px;`,df=p.default.div`padding:2px;flex-shrink:0;display:flex;align-items:center;`,mf=p.default.div`display:flex;gap:2px;`,hf=p.default.button`width:38px;height:20px;border-radius:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:opacity 0.2s;box-sizing:border-box;color:${g.themedColor.textMidEmphasis};border:1px solid ${g.color.background200};background-color:transparent;${Q.dark`
184
+ border: 1px solid ${g.color.background400};
185
185
  `}
186
186
 
187
- ${({$selected:e,$rating:t})=>e&&oi(t)}
187
+ ${({$selected:e,$rating:t})=>e&&vi(t)}
188
188
 
189
- ${Sr}
190
- `,Ms=_.default(B)`color:${p.themedColor.textMidEmphasis};${X.dark`
191
- color: ${p.themedColor.textHighEmphasis};
189
+ ${wr}
190
+ `,Fs=p.default(U)`color:${g.themedColor.textMidEmphasis};${Q.dark`
191
+ color: ${g.themedColor.textHighEmphasis};
192
192
  `}
193
- `,Ar=P.css`width:100%;height:36px;border-radius:6px;cursor:pointer;transition:all 0.2s ease;padding:0 12px;border:none;outline:none;display:flex;align-items:center;justify-content:center;${Ie}&:disabled{cursor:not-allowed;}`,ks=_.default.button`${Ar};background-color:${p.themedColor.primary};color:${p.themedColor.textHighEmphasis};&:hover:not(:disabled){opacity:0.9;}`,Gh=_.default.button`${Ar};color:${p.themedColor.primary};${X.light`
194
- background-color: ${p.color.background50};
193
+ `,Mr=P.css`width:100%;height:36px;border-radius:6px;cursor:pointer;transition:all 0.2s ease;padding:0 12px;border:none;outline:none;display:flex;align-items:center;justify-content:center;${we}&:disabled{cursor:not-allowed;}`,Bs=p.default.button`${Mr};background-color:${g.themedColor.primary};color:${g.themedColor.textHighEmphasis};&:hover:not(:disabled){opacity:0.9;}`,ff=p.default.button`${Mr};color:${g.themedColor.primary};${Q.light`
194
+ background-color: ${g.color.background50};
195
195
  `};
196
- ${X.dark`
197
- background-color: ${p.color.background700};
196
+ ${Q.dark`
197
+ background-color: ${g.color.background700};
198
198
  `};
199
199
 
200
200
  &:hover:not(:disabled) {
201
201
  opacity: 0.9;
202
202
  }
203
- `,Vh=_.default.button`${Ar};background-color:transparent;color:${p.themedColor.textHighEmphasis};&:hover:not(:disabled){opacity:0.7;}`,zh=e=>{switch(e){case"primary":return ks;case"secondary":return Gh;case"clear":return Vh;default:return ks}},qh=_.default.div`animation:1s infinite linear;animation-name:rotate;display:flex;align-items:center;justify-content:center;@keyframes rotate{from{transform:rotate(0);}to{transform:rotate(360deg);}}`,Wh=({children:e,onClick:t,variant:n="primary",disabled:r=!1,loading:s=!1,className:o,...a})=>{const l=()=>{switch(n){case"primary":return p.themedColor.textHighEmphasisInverse;case"secondary":return p.themedColor.primary;case"clear":return p.themedColor.textHighEmphasis;default:return p.themedColor.textHighEmphasisInverse}},u=zh(n);return i.createElement(u,{onClick:t,disabled:r||s,className:o,...a},s?i.createElement(qh,null,i.createElement(Z,{type:"spinner",size:22,color:l()})):i.createElement(B,{variant:"button",color:l()},e))},Yh=({children:e,className:t,style:n,id:r,role:s})=>i.createElement(B,{variant:"caption4",color:p.themedColor.error,className:t,style:n,id:r,role:s},e),Kh=({id:e,children:t,className:n,style:r,required:s,"aria-hidden":o})=>{const{stringSet:a}=re();return i.createElement(B,{id:e,variant:"caption3",color:p.themedColor.textMidEmphasis,className:n,style:r,"aria-hidden":o},t,!s&&i.createElement("span",{style:{color:p.themedColor.textLowEmphasis}},` (${a.OPTIONAL})`))},jh=({value:e,onChange:t,placeholder:n,error:r=!1,submitted:s=!1,className:o,disabled:a=!1,max:l,...u})=>{const d=h=>{const v=h.target.value.replace(/[^0-9.-]/g,""),b=v.split("."),g=b.length>1?b[0]+"."+b.slice(1).join("").replace(/\./g,""):v;if(h.target.value=g,g===""||g==="-")t==null||t(null);else{const y=Number(g);if(!isNaN(y)){if(l!==void 0&&y>l)return;t==null||t(y)}}},m=e==null?"":String(e);return i.createElement(ef,{type:"text",value:m,onChange:d,placeholder:n,className:o,disabled:a||s,inputMode:"decimal",$error:r,$submitted:s,...u})},Xh=P.css`width:100%;height:36px;padding:8px 12px;border-radius:6px;font-size:14px;font-weight:400;line-height:1.43;outline:none;transition:all 0.2s ease;${Ie}&::placeholder{color:${p.themedColor.textLowEmphasis};}&::-webkit-inner-spin-button,&::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}`,Zh=P.css`color:${p.themedColor.textHighEmphasis};border:1px solid transparent;cursor:not-allowed;${X.light`
204
- background-color: ${p.color.ondark.textMidEmphasis};
203
+ `,gf=p.default.button`${Mr};background-color:transparent;color:${g.themedColor.textHighEmphasis};&:hover:not(:disabled){opacity:0.7;}`,pf=e=>{switch(e){case"primary":return Bs;case"secondary":return ff;case"clear":return gf;default:return Bs}},_f=p.default.div`animation:1s infinite linear;animation-name:rotate;display:flex;align-items:center;justify-content:center;@keyframes rotate{from{transform:rotate(0);}to{transform:rotate(360deg);}}`,Ef=({children:e,onClick:t,variant:n="primary",disabled:r=!1,loading:s=!1,className:o,...a})=>{const l=()=>{switch(n){case"primary":return g.themedColor.textHighEmphasisInverse;case"secondary":return g.themedColor.primary;case"clear":return g.themedColor.textHighEmphasis;default:return g.themedColor.textHighEmphasisInverse}},u=pf(n);return i.createElement(u,{onClick:t,disabled:r||s,className:o,...a},s?i.createElement(_f,null,i.createElement(ee,{type:"spinner",size:22,color:l()})):i.createElement(U,{variant:"button",color:l()},e))},bf=({children:e,className:t,style:n,id:r,role:s})=>i.createElement(U,{variant:"caption4",color:g.themedColor.error,className:t,style:n,id:r,role:s},e),Cf=({id:e,children:t,className:n,style:r,required:s,"aria-hidden":o})=>{const{stringSet:a}=ie();return i.createElement(U,{id:e,variant:"caption3",color:g.themedColor.textMidEmphasis,className:n,style:r,"aria-hidden":o},t,!s&&i.createElement("span",{style:{color:g.themedColor.textLowEmphasis}},` (${a.OPTIONAL})`))},vf=({value:e,onChange:t,placeholder:n,error:r=!1,submitted:s=!1,className:o,disabled:a=!1,max:l,...u})=>{const d=h=>{const v=h.target.value.replace(/[^0-9.-]/g,""),C=v.split("."),E=C.length>1?C[0]+"."+C.slice(1).join("").replace(/\./g,""):v;if(h.target.value=E,E===""||E==="-")t==null||t(null);else{const _=Number(E);if(!isNaN(_)){if(l!==void 0&&_>l)return;t==null||t(_)}}},m=e==null?"":String(e);return i.createElement(Tf,{type:"text",value:m,onChange:d,placeholder:n,className:o,disabled:a||s,inputMode:"decimal",$error:r,$submitted:s,...u})},yf=P.css`width:100%;height:36px;padding:8px 12px;border-radius:6px;font-size:14px;font-weight:400;line-height:1.43;outline:none;transition:all 0.2s ease;${we}&::placeholder{color:${g.themedColor.textLowEmphasis};}&::-webkit-inner-spin-button,&::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}`,Sf=P.css`color:${g.themedColor.textHighEmphasis};border:1px solid transparent;cursor:not-allowed;${Q.light`
204
+ background-color: ${g.color.ondark.textMidEmphasis};
205
205
  `}
206
- ${X.dark`
207
- background-color: ${p.color.onlight.textLowEmphasis};
206
+ ${Q.dark`
207
+ background-color: ${g.color.onlight.textLowEmphasis};
208
208
  `}
209
209
 
210
210
  &::placeholder {
211
- color: ${p.themedColor.textLowEmphasis};
211
+ color: ${g.themedColor.textLowEmphasis};
212
212
  }
213
- `,Jh=P.css`border:1px solid ${p.themedColor.error};color:${p.themedColor.textHighEmphasis};${X.light`
214
- background-color: ${p.color.background50};
213
+ `,Af=P.css`border:1px solid ${g.themedColor.error};color:${g.themedColor.textHighEmphasis};${Q.light`
214
+ background-color: ${g.color.background50};
215
215
  `}
216
- ${X.dark`
217
- background-color: ${p.color.onlight.textLowEmphasis};
216
+ ${Q.dark`
217
+ background-color: ${g.color.onlight.textLowEmphasis};
218
218
  `}
219
- `,Qh=P.css`border:1px solid ${p.themedColor.textDisabled};color:${p.themedColor.textHighEmphasis};${X.light`
220
- background-color: ${p.color.background50};
219
+ `,xf=P.css`border:1px solid ${g.themedColor.textDisabled};color:${g.themedColor.textHighEmphasis};${Q.light`
220
+ background-color: ${g.color.background50};
221
221
  `}
222
- ${X.dark`
223
- background-color: ${p.color.onlight.textLowEmphasis};
222
+ ${Q.dark`
223
+ background-color: ${g.color.onlight.textLowEmphasis};
224
224
  `}
225
225
 
226
226
  &:focus {
227
- border-color: ${p.themedColor.primary};
227
+ border-color: ${g.themedColor.primary};
228
228
  }
229
- `,ef=_.default.input`${Xh}${({$error:e,$submitted:t})=>t?Zh:e?Jh:Qh}`,tf=e=>{if(e.multiple){const{value:t=[],onChange:n,maxSelect:r,submitted:s=!1}=e;return{selectedValues:t,handleOptionClick:a=>{if(s)return;if(t.includes(a)){const u=t.filter(d=>d!==a);n==null||n(u)}else{if(r&&t.length>=r)return;const u=[...t,a];n==null||n(u)}}}}else{const{value:t,onChange:n,submitted:r=!1}=e;return{selectedValues:t?[t]:[],handleOptionClick:o=>{r||t!==o&&(n==null||n(o))}}}},ai=e=>{const{options:t,submitted:n=!1,error:r=!1,className:s,groupLabel:o}=e,{conversation:a}=se(),l=e.multiple===!0,{selectedValues:u,handleOptionClick:d}=tf(e),m=l?void 0:a.form.singleSelectGroup(o),h=c.useRef([]),f=l?-1:Math.max(t.findIndex(b=>u.includes(b.value)),0),v=(b,C)=>{var E;if(l||n)return;let g=null;switch(b.key){case"ArrowRight":case"ArrowDown":g=(C+1)%t.length;break;case"ArrowLeft":case"ArrowUp":g=(C-1+t.length)%t.length;break;default:return}b.preventDefault();const y=t[g];y&&(d(y.value),(E=h.current[g])==null||E.focus())};return i.createElement(rf,{className:s,...m},t.map((b,C)=>{const g=u.includes(b.value),y=o?`${o}, ${b.label}`:b.label,E=l?a.form.multiSelectOption(y,g,n):a.form.singleSelectOption(y,g,n);return i.createElement(df,{key:b.value,ref:I=>{h.current[C]=I},type:"button",$active:g,$submitted:n,$error:r,...E,disabled:n,onClick:()=>d(b.value),onKeyDown:I=>v(I,C),tabIndex:l?void 0:C===f?0:-1},i.createElement(B,{variant:"caption1",color:nf(g,n)},b.label))}))},nf=(e,t)=>t?e?p.themedColor.textHighEmphasis:p.themedColor.textDisabled:e?p.themedColor.primary:p.themedColor.textMidEmphasis,rf=_.default.div`display:flex;flex-wrap:wrap;gap:4px 2px;`,sf=P.css`display:inline-flex;align-items:center;padding:8px 12px;border-radius:15px;transition:all 0.2s ease;`,of=P.css`cursor:default;background-color:${p.color.ondark.textMidEmphasis};color:${p.themedColor.textHighEmphasis};${X.dark`
229
+ `,Tf=p.default.input`${yf}${({$error:e,$submitted:t})=>t?Sf:e?Af:xf}`,If=e=>{if(e.multiple){const{value:t=[],onChange:n,maxSelect:r,submitted:s=!1}=e;return{selectedValues:t,handleOptionClick:a=>{if(s)return;if(t.includes(a)){const u=t.filter(d=>d!==a);n==null||n(u)}else{if(r&&t.length>=r)return;const u=[...t,a];n==null||n(u)}}}}else{const{value:t,onChange:n,submitted:r=!1}=e;return{selectedValues:t?[t]:[],handleOptionClick:o=>{r||t!==o&&(n==null||n(o))}}}},Si=e=>{const{options:t,submitted:n=!1,error:r=!1,className:s,groupLabel:o}=e,{conversation:a}=se(),l=e.multiple===!0,{selectedValues:u,handleOptionClick:d}=If(e),m=l?void 0:a.form.singleSelectGroup(o),h=c.useRef([]),f=l?-1:Math.max(t.findIndex(C=>u.includes(C.value)),0),v=(C,y)=>{var b;if(l||n)return;let E=null;switch(C.key){case"ArrowRight":case"ArrowDown":E=(y+1)%t.length;break;case"ArrowLeft":case"ArrowUp":E=(y-1+t.length)%t.length;break;default:return}C.preventDefault();const _=t[E];_&&(d(_.value),(b=h.current[E])==null||b.focus())};return i.createElement(Mf,{className:s,...m},t.map((C,y)=>{const E=u.includes(C.value),_=o?`${o}, ${C.label}`:C.label,b=l?a.form.multiSelectOption(_,E,n):a.form.singleSelectOption(_,E,n);return i.createElement($f,{key:C.value,ref:A=>{h.current[y]=A},type:"button",$active:E,$submitted:n,$error:r,...b,disabled:n,onClick:()=>d(C.value),onKeyDown:A=>v(A,y),tabIndex:l?void 0:y===f?0:-1},i.createElement(U,{variant:"caption1",color:wf(E,n)},C.label))}))},wf=(e,t)=>t?e?g.themedColor.textHighEmphasis:g.themedColor.textDisabled:e?g.themedColor.primary:g.themedColor.textMidEmphasis,Mf=p.default.div`display:flex;flex-wrap:wrap;gap:4px 2px;`,kf=P.css`display:inline-flex;align-items:center;padding:8px 12px;border-radius:15px;transition:all 0.2s ease;`,Rf=P.css`cursor:default;background-color:${g.color.ondark.textMidEmphasis};color:${g.themedColor.textHighEmphasis};${Q.dark`
230
230
  background-color: transparent;
231
231
  border: 1px solid white;
232
232
  color: white;
233
233
  `}
234
- `,af=P.css`cursor:default;${X.light`
235
- background-color: ${p.color.ondark.textMidEmphasis};
236
- color: ${p.themedColor.textDisabled};
234
+ `,Of=P.css`cursor:default;${Q.light`
235
+ background-color: ${g.color.ondark.textMidEmphasis};
236
+ color: ${g.themedColor.textDisabled};
237
237
  `}
238
- ${X.dark`
239
- background-color: ${p.color.onlight.textLowEmphasis};
240
- border: 1px solid ${p.color.onlight.textLowEmphasis};
241
- color: ${p.themedColor.textDisabled};
238
+ ${Q.dark`
239
+ background-color: ${g.color.onlight.textLowEmphasis};
240
+ border: 1px solid ${g.color.onlight.textLowEmphasis};
241
+ color: ${g.themedColor.textDisabled};
242
242
  `}
243
- `,lf=P.css`cursor:pointer;border:1px solid ${p.themedColor.primary};${X.light`
244
- background-color: ${p.color.background50};
245
- color: ${p.themedColor.primary};
243
+ `,Lf=P.css`cursor:pointer;border:1px solid ${g.themedColor.primary};${Q.light`
244
+ background-color: ${g.color.background50};
245
+ color: ${g.themedColor.primary};
246
246
  `}
247
- ${X.dark`
248
- background-color: ${p.color.onlight.textLowEmphasis};
249
- color: ${p.themedColor.primary};
247
+ ${Q.dark`
248
+ background-color: ${g.color.onlight.textLowEmphasis};
249
+ color: ${g.themedColor.primary};
250
250
  `}
251
- `,cf=P.css`cursor:pointer;border:1px solid ${p.themedColor.textDisabled};${X.light`
252
- background-color: ${p.color.background50};
253
- color: ${p.themedColor.textMidEmphasis};
251
+ `,Nf=P.css`cursor:pointer;border:1px solid ${g.themedColor.textDisabled};${Q.light`
252
+ background-color: ${g.color.background50};
253
+ color: ${g.themedColor.textMidEmphasis};
254
254
  `}
255
- ${X.dark`
256
- background-color: ${p.color.onlight.textLowEmphasis};
257
- color: ${p.themedColor.textMidEmphasis};
255
+ ${Q.dark`
256
+ background-color: ${g.color.onlight.textLowEmphasis};
257
+ color: ${g.themedColor.textMidEmphasis};
258
258
  `}
259
- `,uf=P.css`border-color:${p.themedColor.error}!important;`,df=_.default.button`${sf}${({$active:e,$submitted:t,$error:n})=>{if(t)return e?of:af;const r=e?lf:cf;return n?P.css`
260
- ${r} ${uf}
259
+ `,Df=P.css`border-color:${g.themedColor.error}!important;`,$f=p.default.button`${kf}${({$active:e,$submitted:t,$error:n})=>{if(t)return e?Rf:Of;const r=e?Lf:Nf;return n?P.css`
260
+ ${r} ${Df}
261
261
  `:r}}
262
- `,mf=e=>i.createElement(ai,{...e,multiple:!1}),hf=e=>i.createElement(ai,{...e,multiple:!0}),ff=_.default.div`width:100%;height:1px;background-color:${p.themedColor.textDisabled};`,gf=({className:e})=>i.createElement(ff,{className:e}),pf=({id:e,value:t="",onChange:n,placeholder:r,variant:s="single-line",error:o=!1,submitted:a=!1,className:l,disabled:u=!1,maxLength:d,...m})=>{const f={id:e,value:t,onChange:v=>{const b=v.target.value;d&&b.length>d||n==null||n(b)},placeholder:r,className:l,disabled:u||a,maxLength:d,$error:o,$submitted:a,...m};return s==="multi-line"?i.createElement(Ef,{...f}):i.createElement(_f,{...f})},li=P.css`width:100%;padding:8px 12px;border-radius:6px;font-size:14px;font-weight:400;line-height:1.43;outline:none;transition:all 0.2s ease;${Ie}&::placeholder{color:${p.themedColor.textLowEmphasis};}`,ci=P.css`color:${p.themedColor.textHighEmphasis};border:1px solid transparent;cursor:not-allowed;${X.light`
263
- background-color: ${p.color.ondark.textMidEmphasis};
262
+ `,Pf=e=>i.createElement(Si,{...e,multiple:!1}),Ff=e=>i.createElement(Si,{...e,multiple:!0}),Bf=p.default.div`width:100%;height:1px;background-color:${g.themedColor.textDisabled};`,Uf=({className:e})=>i.createElement(Bf,{className:e}),Hf=({id:e,value:t="",onChange:n,placeholder:r,variant:s="single-line",error:o=!1,submitted:a=!1,className:l,disabled:u=!1,maxLength:d,...m})=>{const f={id:e,value:t,onChange:v=>{const C=v.target.value;d&&C.length>d||n==null||n(C)},placeholder:r,className:l,disabled:u||a,maxLength:d,$error:o,$submitted:a,...m};return s==="multi-line"?i.createElement(Vf,{...f}):i.createElement(Gf,{...f})},Ai=P.css`width:100%;padding:8px 12px;border-radius:6px;font-size:14px;font-weight:400;line-height:1.43;outline:none;transition:all 0.2s ease;${we}&::placeholder{color:${g.themedColor.textLowEmphasis};}`,xi=P.css`color:${g.themedColor.textHighEmphasis};border:1px solid transparent;cursor:not-allowed;${Q.light`
263
+ background-color: ${g.color.ondark.textMidEmphasis};
264
264
  `}
265
- ${X.dark`
266
- background-color: ${p.color.onlight.textLowEmphasis};
265
+ ${Q.dark`
266
+ background-color: ${g.color.onlight.textLowEmphasis};
267
267
  `}
268
268
 
269
269
  &::placeholder {
270
- color: ${p.themedColor.textLowEmphasis};
270
+ color: ${g.themedColor.textLowEmphasis};
271
271
  }
272
- `,ui=P.css`border:1px solid ${p.themedColor.error};color:${p.themedColor.textHighEmphasis};${X.light`
273
- background-color: ${p.color.background50};
272
+ `,Ti=P.css`border:1px solid ${g.themedColor.error};color:${g.themedColor.textHighEmphasis};${Q.light`
273
+ background-color: ${g.color.background50};
274
274
  `}
275
- ${X.dark`
276
- background-color: ${p.color.onlight.textLowEmphasis};
275
+ ${Q.dark`
276
+ background-color: ${g.color.onlight.textLowEmphasis};
277
277
  `}
278
- `,di=P.css`border:1px solid ${p.themedColor.textDisabled};color:${p.themedColor.textHighEmphasis};${X.light`
279
- background-color: ${p.color.background50};
278
+ `,Ii=P.css`border:1px solid ${g.themedColor.textDisabled};color:${g.themedColor.textHighEmphasis};${Q.light`
279
+ background-color: ${g.color.background50};
280
280
  `}
281
- ${X.dark`
282
- background-color: ${p.color.onlight.textLowEmphasis};
281
+ ${Q.dark`
282
+ background-color: ${g.color.onlight.textLowEmphasis};
283
283
  `}
284
284
 
285
285
  &:focus {
286
- border-color: ${p.themedColor.primary};
286
+ border-color: ${g.themedColor.primary};
287
287
  }
288
- `,_f=_.default.input`${li};height:36px;${({$error:e,$submitted:t})=>t?ci:e?ui:di}`,Ef=_.default.textarea`${li};height:96px;resize:none;font-family:inherit;${({$error:e,$submitted:t})=>t?ci:e?ui:di}`,bf=({children:e,className:t,style:n})=>i.createElement(B,{variant:"button",color:p.themedColor.textHighEmphasis,className:t,style:n},e),xe={Title:bf,Label:Kh,ErrorLabel:Yh,Separator:gf,Button:Wh,TextInput:pf,NumberInput:jh,SingleSelect:mf,MultiSelect:hf},Cf=1,vf=new Set(["text","number","single-select","multi-select"]),yf=typeof __SBA_USE_FORM__>"u"||__SBA_USE_FORM__,Sf=e=>{var y;if(!yf)return null;const t=(y=e.extendedMessagePayload)==null?void 0:y.form;if(!t)throw new Error("Form is not provided");const{stringSet:n}=re(),{conversation:r}=se(),[s,o]=c.useState({submitting:!1,canceling:!1}),[a,l]=c.useState({visible:!1}),{state:u,fields:d,submit:m,cancel:h,updateFieldValue:f}=hc(t,{labels:{required:n.FORM_VALIDATION_REQUIRED,regex:n.FORM_VALIDATION_REGEX_FAILED,minLength:n.FORM_VALIDATION_MIN_LENGTH,maxLength:n.FORM_VALIDATION_MAX_LENGTH,min:n.FORM_VALIDATION_MIN,max:n.FORM_VALIDATION_MAX,minSelect:n.FORM_VALIDATION_MIN_SELECT,maxSelect:n.FORM_VALIDATION_MAX_SELECT},onSubmit:E=>{var I;return(I=e.onSubmitForm)==null?void 0:I.call(e,{key:t.key,data:E})},onCancel:()=>{var E;return(E=e.onCancelForm)==null?void 0:E.call(e,{key:t.key})}}),v=u==="submitted",b=async()=>{o(E=>({...E,submitting:!0}));try{await m()}catch(E){l({visible:!0,description:E instanceof Error?E.message:n.TRY_AGAIN})}finally{o(E=>({...E,submitting:!1}))}},C=async()=>{o(E=>({...E,canceling:!0}));try{await h()}catch(E){l({visible:!0,description:E instanceof Error?E.message:n.TRY_AGAIN})}finally{o(E=>({...E,canceling:!1}))}},g=c.useMemo(()=>{const E=()=>t.version>Cf,I=()=>t.fields.some(A=>!vf.has(A.type));return E()||I()?{visible:!1,cancelable:!0,reason:n.FORM_NOT_SUPPORTED}:u==="draft"&&(e.isHandedOff||e.isConversationClosed)?{visible:!1,cancelable:!1,reason:n.FORM_UNAVAILABLE}:{visible:!0,cancelable:!0,reason:""}},[t.version,t.fields,u,e.isHandedOff,e.isConversationClosed]);return u==="canceled"?null:g.visible?i.createElement(c.Fragment,null,i.createElement(Ls,{$maxWidth:e.maxBodyWidth??ee.BODY_MAX_WIDTH},i.createElement(xe.Title,null,t.title),i.createElement(Af,null,d.map(E=>i.createElement(xf,{key:E.key},i.createElement(xe.Label,{style:{marginBottom:"6px"},required:E.required},E.label),E.type==="text"&&i.createElement(xe.TextInput,{value:E.value||"",placeholder:E.placeholder,onChange:I=>f(E.key,I),disabled:v,error:!!E.error,submitted:v,variant:E.layout==="multiline"?"multi-line":"single-line",maxLength:E.maxLength,...r.form.textInput(E.label,E.required??!1,v)}),E.type==="number"&&i.createElement(xe.NumberInput,{value:E.value||null,placeholder:E.placeholder,onChange:I=>f(E.key,I),disabled:v,error:!!E.error,submitted:v,max:E.max,...r.form.numberInput(E.label,E.required??!1,v)}),E.type==="single-select"&&i.createElement(xe.SingleSelect,{options:E.options.map(I=>({label:I,value:I})),value:E.value||"",onChange:I=>f(E.key,I),submitted:v,groupLabel:E.label}),E.type==="multi-select"&&i.createElement(xe.MultiSelect,{options:E.options.map(I=>({label:I,value:I})),value:E.value||[],onChange:I=>f(E.key,I),submitted:v,maxSelect:E.maxSelect,groupLabel:E.label}),E.error&&i.createElement(xe.ErrorLabel,{style:{marginTop:"4px"}},E.error)))),i.createElement(xe.Separator,null),i.createElement(Tf,null,i.createElement(xe.Button,{variant:v?"clear":"primary",...r.form.button(v?n.SUBMITTED:n.BUTTON__SUBMIT),onClick:b,disabled:v||s.canceling,loading:s.submitting},v?n.SUBMITTED:n.BUTTON__SUBMIT),u!=="submitted"&&i.createElement(xe.Button,{variant:"secondary",...r.form.button(n.BUTTON__CANCEL),onClick:C,disabled:s.submitting,loading:s.canceling},n.BUTTON__CANCEL))),i.createElement(Cr,{...a,onClose:()=>l({visible:!1,title:""})})):i.createElement(Ls,{$maxWidth:e.maxBodyWidth??ee.BODY_MAX_WIDTH},i.createElement(B,{variant:"body3"},g.reason),g.cancelable&&i.createElement(xe.Button,{variant:"primary",...r.form.button(n.BUTTON__CANCEL),onClick:C,loading:s.canceling},n.BUTTON__CANCEL))},Ls=_.default.div`display:flex;flex-direction:column;gap:12px;border-radius:12px;overflow:hidden;max-width:${({$maxWidth:e})=>e}px;${({theme:e})=>P.css`
288
+ `,Gf=p.default.input`${Ai};height:36px;${({$error:e,$submitted:t})=>t?xi:e?Ti:Ii}`,Vf=p.default.textarea`${Ai};height:96px;resize:none;font-family:inherit;${({$error:e,$submitted:t})=>t?xi:e?Ti:Ii}`,zf=({children:e,className:t,style:n})=>i.createElement(U,{variant:"button",color:g.themedColor.textHighEmphasis,className:t,style:n},e),Me={Title:zf,Label:Cf,ErrorLabel:bf,Separator:Uf,Button:Ef,TextInput:Hf,NumberInput:vf,SingleSelect:Pf,MultiSelect:Ff},Yf=1,Wf=new Set(["text","number","single-select","multi-select"]),qf=typeof __SBA_USE_FORM__>"u"||__SBA_USE_FORM__,Kf=e=>{var _;if(!qf)return null;const t=(_=e.extendedMessagePayload)==null?void 0:_.form;if(!t)throw new Error("Form is not provided");const{stringSet:n}=ie(),{conversation:r}=se(),[s,o]=c.useState({submitting:!1,canceling:!1}),[a,l]=c.useState({visible:!1}),{state:u,fields:d,submit:m,cancel:h,updateFieldValue:f}=Oc(t,{labels:{required:n.FORM_VALIDATION_REQUIRED,regex:n.FORM_VALIDATION_REGEX_FAILED,minLength:n.FORM_VALIDATION_MIN_LENGTH,maxLength:n.FORM_VALIDATION_MAX_LENGTH,min:n.FORM_VALIDATION_MIN,max:n.FORM_VALIDATION_MAX,minSelect:n.FORM_VALIDATION_MIN_SELECT,maxSelect:n.FORM_VALIDATION_MAX_SELECT},onSubmit:b=>{var A;return(A=e.onSubmitForm)==null?void 0:A.call(e,{key:t.key,data:b})},onCancel:()=>{var b;return(b=e.onCancelForm)==null?void 0:b.call(e,{key:t.key})}}),v=u==="submitted",C=async()=>{o(b=>({...b,submitting:!0}));try{await m()}catch(b){l({visible:!0,description:b instanceof Error?b.message:n.TRY_AGAIN})}finally{o(b=>({...b,submitting:!1}))}},y=async()=>{o(b=>({...b,canceling:!0}));try{await h()}catch(b){l({visible:!0,description:b instanceof Error?b.message:n.TRY_AGAIN})}finally{o(b=>({...b,canceling:!1}))}},E=c.useMemo(()=>{const b=()=>t.version>Yf,A=()=>t.fields.some(M=>!Wf.has(M.type));return b()||A()?{visible:!1,cancelable:!0,reason:n.FORM_NOT_SUPPORTED}:u==="draft"&&(e.isHandedOff||e.isConversationClosed)?{visible:!1,cancelable:!1,reason:n.FORM_UNAVAILABLE}:{visible:!0,cancelable:!0,reason:""}},[t.version,t.fields,u,e.isHandedOff,e.isConversationClosed]);return u==="canceled"?null:E.visible?i.createElement(c.Fragment,null,i.createElement(Us,{$maxWidth:e.maxBodyWidth??ne.BODY_MAX_WIDTH},i.createElement(Me.Title,null,t.title),i.createElement(jf,null,d.map(b=>i.createElement(Xf,{key:b.key},i.createElement(Me.Label,{style:{marginBottom:"6px"},required:b.required},b.label),b.type==="text"&&i.createElement(Me.TextInput,{value:b.value||"",placeholder:b.placeholder,onChange:A=>f(b.key,A),disabled:v,error:!!b.error,submitted:v,variant:b.layout==="multiline"?"multi-line":"single-line",maxLength:b.maxLength,...r.form.textInput(b.label,b.required??!1,v)}),b.type==="number"&&i.createElement(Me.NumberInput,{value:b.value||null,placeholder:b.placeholder,onChange:A=>f(b.key,A),disabled:v,error:!!b.error,submitted:v,max:b.max,...r.form.numberInput(b.label,b.required??!1,v)}),b.type==="single-select"&&i.createElement(Me.SingleSelect,{options:b.options.map(A=>({label:A,value:A})),value:b.value||"",onChange:A=>f(b.key,A),submitted:v,groupLabel:b.label}),b.type==="multi-select"&&i.createElement(Me.MultiSelect,{options:b.options.map(A=>({label:A,value:A})),value:b.value||[],onChange:A=>f(b.key,A),submitted:v,maxSelect:b.maxSelect,groupLabel:b.label}),b.error&&i.createElement(Me.ErrorLabel,{style:{marginTop:"4px"}},b.error)))),i.createElement(Me.Separator,null),i.createElement(Zf,null,i.createElement(Me.Button,{variant:v?"clear":"primary",...r.form.button(v?n.SUBMITTED:n.BUTTON__SUBMIT),onClick:C,disabled:v||s.canceling,loading:s.submitting},v?n.SUBMITTED:n.BUTTON__SUBMIT),u!=="submitted"&&i.createElement(Me.Button,{variant:"secondary",...r.form.button(n.BUTTON__CANCEL),onClick:y,disabled:s.submitting,loading:s.canceling},n.BUTTON__CANCEL))),i.createElement(Cn,{...a,onClose:()=>l({visible:!1,title:""})})):i.createElement(Us,{$maxWidth:e.maxBodyWidth??ne.BODY_MAX_WIDTH},i.createElement(U,{variant:"body3"},E.reason),E.cancelable&&i.createElement(Me.Button,{variant:"primary",...r.form.button(n.BUTTON__CANCEL),onClick:y,loading:s.canceling},n.BUTTON__CANCEL))},Us=p.default.div`display:flex;flex-direction:column;gap:12px;border-radius:12px;overflow:hidden;max-width:${({$maxWidth:e})=>e}px;${({theme:e})=>P.css`
289
289
  color: ${e.colors.messageIncoming.text};
290
290
  background-color: ${e.colors.messageIncoming.background};
291
291
  `}
292
292
  padding: 16px 12px;
293
293
  transition: max-width 0.3s;
294
294
  overflow-wrap: break-word;
295
- `,Af=_.default.div`display:flex;flex-direction:column;gap:12px;`,xf=_.default.div`display:flex;flex-direction:column;`,Tf=_.default.div`display:flex;flex-direction:column;gap:8px;`,If=e=>i.createElement(i.Fragment,null),Rs=typeof __SBA_USE_MESSAGE_TEMPLATE__>"u"||__SBA_USE_MESSAGE_TEMPLATE__?c.lazy(()=>Promise.resolve().then(()=>require("./cjs/BjKg30ip.cjs")).then(e=>({default:e.MessageTemplateWrapper}))):null,wf=e=>Rs?i.createElement(mn,{errorFallback:e.messageTemplateErrorFallback,loadingFallback:e.messageTemplateLoadingFallback},i.createElement(Rs,{...e})):null,Mf=({extendedMessagePayload:e,onClickSuggestedReply:t,suggestedRepliesDirection:n="vertical"})=>{const{conversation:r}=se(),[s,o]=c.useState(!1),{suggestedReplies:a}=r,l=(e==null?void 0:e.suggested_replies)??[];if(l.length===0||s)return null;const u=d=>{t&&(t({reply:d}),o(!0))};return i.createElement(kf,{id:`${Ze}-ext-suggested-replies`,role:"presentation",$type:n},l.map((d,m)=>{const h=a.item(d);return i.createElement(Lf,{key:m,$type:n,...h.props,onClick:()=>u(d)},i.createElement(Rf,{variant:"body3"},d))}),a.descriptionNode)},kf=_.default.div`margin:16px 0;padding:0 ${ee.HORIZONTAL_PADDING}px;position:relative;display:flex;align-self:stretch;gap:8px;${({$type:e})=>e==="vertical"?Of:Nf};`,Lf=_.default.button.attrs({type:"button"})`
295
+ `,jf=p.default.div`display:flex;flex-direction:column;gap:12px;`,Xf=p.default.div`display:flex;flex-direction:column;`,Zf=p.default.div`display:flex;flex-direction:column;gap:8px;`,Jf=e=>i.createElement(i.Fragment,null),Hs=typeof __SBA_USE_MESSAGE_TEMPLATE__>"u"||__SBA_USE_MESSAGE_TEMPLATE__?c.lazy(()=>Promise.resolve().then(()=>require("./cjs/BjKg30ip.cjs")).then(e=>({default:e.MessageTemplateWrapper}))):null,Qf=e=>Hs?i.createElement(Lt,{errorFallback:e.messageTemplateErrorFallback,loadingFallback:e.messageTemplateLoadingFallback},i.createElement(Hs,{...e})):null,eg=({extendedMessagePayload:e,onClickSuggestedReply:t,suggestedRepliesDirection:n="vertical"})=>{const{conversation:r}=se(),[s,o]=c.useState(!1),{suggestedReplies:a}=r,l=(e==null?void 0:e.suggested_replies)??[];if(l.length===0||s)return null;const u=d=>{t&&(t({reply:d}),o(!0))};return i.createElement(tg,{id:`${Xe}-ext-suggested-replies`,role:"presentation",$type:n},l.map((d,m)=>{const h=a.item(d);return i.createElement(ng,{key:m,$type:n,...h.props,onClick:()=>u(d)},i.createElement(rg,{variant:"body3"},d))}),a.descriptionNode)},tg=p.default.div`margin:16px 0;padding:0 ${ne.HORIZONTAL_PADDING}px;position:relative;display:flex;align-self:stretch;gap:8px;${({$type:e})=>e==="vertical"?sg:og};`,ng=p.default.button.attrs({type:"button"})`
296
296
  all: unset;
297
297
  box-sizing: border-box;
298
298
  padding: 8px 12px;
@@ -302,30 +302,30 @@
302
302
  border-radius: 20px / clamp(20px, 5%, 100px);
303
303
  cursor: pointer;
304
304
  word-break: break-word;
305
- color: ${p.color.primary.main};
306
- border: 1px solid ${p.color.primary.main};
307
- background-color: ${p.themedColor.bg_50_600};
305
+ color: ${g.color.primary.main};
306
+ border: 1px solid ${g.color.primary.main};
307
+ background-color: ${g.themedColor.bg_50_600};
308
308
 
309
309
  &:hover {
310
- background-color: ${p.themedColor.bg_100_500};
310
+ background-color: ${g.themedColor.bg_100_500};
311
311
  }
312
312
 
313
- ${Ie}
313
+ ${we}
314
314
 
315
- ${({$type:e,theme:t})=>P.css`${e==="vertical"?Df:$f};&:active{background-color:${t.colors.base.primary};color:${t.colors.base.primaryContrastContent};}`}
316
- `,Rf=_.default(B)`color:inherit;`,Of=P.css`flex-direction:column;align-items:flex-end;`,Nf=P.css`flex-direction:row;overflow-x:scroll;-ms-overflow-style:none;scrollbar-width:none;&::-webkit-scrollbar{display:none;}`,Df=P.css`max-width:calc(100% - 70px);white-space:pre-wrap;`,$f=P.css`white-space:nowrap;`,Pf=e=>{const{components:t}=rt.useContext(),{stringSet:n}=re(),r=no(e)?i.createElement(t.TextMessageBody,{...e}):null;if(e.messageType==="user")return r;if(e.messageType==="file"){const s=e.file;return s.type.startsWith("image")||s.type.startsWith("video")?i.createElement(t.MediaMessageBody,{...e},r):i.createElement(t.FileMessageBody,{...e},r)}return e.messageType==="multipleFiles"?i.createElement(t.MultipleFilesMessageBody,{...e},r):i.createElement(t.TextMessageBody,{...e,message:n.UNKNOWN__UNKNOWN_MESSAGE_TYPE})},Ff=e=>i.createElement(mi,{...e,testerMode:!1}),rt=qe({template:Ff,components:{SenderName:eh,SenderAvatar:Jm,SentTime:nh,MessageBody:Pf,TextMessageBody:Km,MediaMessageBody:km,FileMessageBody:Im,MultipleFilesMessageBody:Vm,TypingIndicator:sh,SuggestedReplies:Mf,MessageTemplate:wf,CustomMessageTemplate:bh,CTAButton:uh,Citation:hh,Form:Sf,Feedback:Fh,MessageLogs:If}}),Bf=/(?:!\[[^\]]*]\([^)]+\)|\[[^\]]+]\([^)]+\)|https?:\/\/\S+|www\.\S+)/i,Uf=e=>e?Bf.test(e):!1,mi=e=>{var I,A,w,k,N,W,G;const{components:t}=rt.useContext(),{streamText:n,isAnimating:r}=Ac({text:e.message,enabled:e.isStreaming,onAnimationStart:e.onStreamAnimationStart,onAnimationProgress:e.onStreamAnimationProgress,onAnimationComplete:e.onStreamAnimationComplete}),s={...e,message:n,extendedMessagePayload:r?{}:e.extendedMessagePayload},o=!!s.isTyping,a=s.testerMode,l=!!s.isSenderAvatarVisible,u=!!((I=s.extendedMessagePayload)!=null&&I.form)&&!((A=s.extendedMessagePayload)!=null&&A.form.canceled_at),d=!!((w=s.extendedMessagePayload)!=null&&w.message_template),m=!!((k=s.extendedMessagePayload)!=null&&k.cta_button),h=!!((N=s.extendedMessagePayload)!=null&&N.citations)&&s.extendedMessagePayload.citations.length>0,f=!!s.createdAt,v=m||h,b=s.messageType==="user"&&!Uf(s.message),C=s.groupType==="top"||s.groupType==="single",g=s.groupType==="bottom"||s.groupType==="single",y=a||!l?0:ee.AVATAR_SIZE,E=K=>b?i.createElement(qf,null,K):K;return i.createElement(Hf,{$marginBottom:o?0:gn(s.groupType)},C&&i.createElement(zf,{"aria-hidden":"true"},!a&&l&&i.createElement(t.SenderAvatar,{...s}),i.createElement(t.SenderName,{...s})),i.createElement(Yf,null,i.createElement($n,{$extraStartPadding:y},o?i.createElement(t.TypingIndicator,{...s}):v?i.createElement(Gf,{$maxWidth:s.maxBodyWidth??ee.BODY_MAX_WIDTH},E(i.createElement(t.MessageBody,{...s,surface:"plain"})),m&&i.createElement(Vf,{$marginTop:12,$paddingInline:12},i.createElement(t.CTAButton,{...s})),h&&i.createElement(t.Citation,{...s})):E(i.createElement(t.MessageBody,{...s}))),d&&i.createElement(Os,{$startPadding:0,$endPadding:0},i.createElement(t.MessageTemplate,{...s,messageTemplateErrorFallback:s.messageTemplateErrorFallback??i.createElement($n,{$extraStartPadding:y},i.createElement(t.MessageBody,{...s,messageType:"user",message:((G=(W=s.extendedMessagePayload)==null?void 0:W.message_template)==null?void 0:G.fallback_message)??"Cannot read this template."})),messageTemplateLoadingFallback:s.messageTemplateLoadingFallback??i.createElement($n,{$extraStartPadding:y},i.createElement(t.TypingIndicator,{...s}))})),i.createElement(t.CustomMessageTemplate,{...s}),u&&i.createElement(Os,{$extraStartPadding:y},i.createElement(t.Form,{...s}))),g&&f&&i.createElement(Wf,{$extraStartPadding:y+8,"aria-hidden":"true"},i.createElement(t.SentTime,{...s})),i.createElement(c.Fragment,null,!o&&i.createElement($t,{$extraStartPadding:y+8},i.createElement(t.Feedback,{...s})),s.suggestedRepliesVisible&&i.createElement(t.SuggestedReplies,{...s}),i.createElement(t.MessageLogs,{...s})))},Hf=_.default.div.attrs({role:"presentation"})`
315
+ ${({$type:e,theme:t})=>P.css`${e==="vertical"?ig:ag};&:active{background-color:${t.colors.base.primary};color:${t.colors.base.primaryContrastContent};}`}
316
+ `,rg=p.default(U)`color:inherit;`,sg=P.css`flex-direction:column;align-items:flex-end;`,og=P.css`flex-direction:row;overflow-x:scroll;-ms-overflow-style:none;scrollbar-width:none;&::-webkit-scrollbar{display:none;}`,ig=P.css`max-width:calc(100% - 70px);white-space:pre-wrap;`,ag=P.css`white-space:nowrap;`,lg=e=>{const{components:t}=at.useContext(),{stringSet:n}=ie(),r=co(e)?i.createElement(t.TextMessageBody,{...e}):null;if(e.messageType==="user")return r;if(e.messageType==="file"){const s=e.file;return s.type.startsWith("image")||s.type.startsWith("video")?i.createElement(t.MediaMessageBody,{...e},r):i.createElement(t.FileMessageBody,{...e},r)}return e.messageType==="multipleFiles"?i.createElement(t.MultipleFilesMessageBody,{...e},r):i.createElement(t.TextMessageBody,{...e,message:n.UNKNOWN__UNKNOWN_MESSAGE_TYPE})},cg=e=>i.createElement(wi,{...e,testerMode:!1}),at=Ye({template:cg,components:{SenderName:xh,SenderAvatar:Sh,SentTime:Ih,MessageBody:lg,TextMessageBody:bh,MediaMessageBody:th,FileMessageBody:Jm,MultipleFilesMessageBody:fh,TypingIndicator:Mh,SuggestedReplies:eg,MessageTemplate:Qf,CustomMessageTemplate:zh,CTAButton:Dh,Citation:Fh,Form:Kf,Feedback:uf,MessageLogs:Jf}}),ug=/(?:!\[[^\]]*]\([^)]+\)|\[[^\]]+]\([^)]+\)|https?:\/\/\S+|www\.\S+)/i,dg=e=>e?ug.test(e):!1,wi=e=>{var A,M,B,w,O,k,R;const{components:t}=at.useContext(),{streamText:n,isAnimating:r}=Yc({text:e.message,enabled:e.isStreaming,onAnimationStart:e.onStreamAnimationStart,onAnimationProgress:e.onStreamAnimationProgress,onAnimationComplete:e.onStreamAnimationComplete}),s={...e,message:n,extendedMessagePayload:r?{}:e.extendedMessagePayload},o=!!s.isTyping,a=s.testerMode,l=!!s.isSenderAvatarVisible,u=!!((A=s.extendedMessagePayload)!=null&&A.form)&&!((M=s.extendedMessagePayload)!=null&&M.form.canceled_at),d=!!((B=s.extendedMessagePayload)!=null&&B.message_template),m=!!((w=s.extendedMessagePayload)!=null&&w.cta_button),h=!!((O=s.extendedMessagePayload)!=null&&O.citations)&&s.extendedMessagePayload.citations.length>0,f=!!s.createdAt,v=m||h,C=s.messageType==="user"&&!dg(s.message),y=s.groupType==="top"||s.groupType==="single",E=s.groupType==="bottom"||s.groupType==="single",_=a||!l?0:ne.AVATAR_SIZE,b=W=>C?i.createElement(pg,null,W):W;return i.createElement(mg,{$marginBottom:o?0:fn(s.groupType)},y&&i.createElement(gg,{"aria-hidden":"true"},!a&&l&&i.createElement(t.SenderAvatar,{...s}),i.createElement(t.SenderName,{...s})),i.createElement(Eg,null,i.createElement(Fn,{$extraStartPadding:_},o?i.createElement(t.TypingIndicator,{...s}):v?i.createElement(hg,{$maxWidth:s.maxBodyWidth??ne.BODY_MAX_WIDTH},b(i.createElement(t.MessageBody,{...s,surface:"plain"})),m&&i.createElement(fg,{$marginTop:12,$paddingInline:12},i.createElement(t.CTAButton,{...s})),h&&i.createElement(t.Citation,{...s})):b(i.createElement(t.MessageBody,{...s}))),d&&i.createElement(Gs,{$startPadding:0,$endPadding:0},i.createElement(t.MessageTemplate,{...s,messageTemplateErrorFallback:s.messageTemplateErrorFallback??i.createElement(Fn,{$extraStartPadding:_},i.createElement(t.MessageBody,{...s,messageType:"user",message:((R=(k=s.extendedMessagePayload)==null?void 0:k.message_template)==null?void 0:R.fallback_message)??"Cannot read this template."})),messageTemplateLoadingFallback:s.messageTemplateLoadingFallback??i.createElement(Fn,{$extraStartPadding:_},i.createElement(t.TypingIndicator,{...s}))})),i.createElement(t.CustomMessageTemplate,{...s}),u&&i.createElement(Gs,{$extraStartPadding:_},i.createElement(t.Form,{...s}))),E&&f&&i.createElement(_g,{$extraStartPadding:_+8,"aria-hidden":"true"},i.createElement(t.SentTime,{...s})),i.createElement(c.Fragment,null,!o&&i.createElement(Ft,{$extraStartPadding:_+8},i.createElement(t.Feedback,{...s})),s.suggestedRepliesVisible&&i.createElement(t.SuggestedReplies,{...s}),i.createElement(t.MessageLogs,{...s})))},mg=p.default.div.attrs({role:"presentation"})`
317
317
  display: flex;
318
318
  flex-direction: column;
319
319
  align-items: flex-start;
320
320
  margin-bottom: ${({$marginBottom:e})=>`${e}px`};
321
- `,$t=_.default.div.attrs({role:"presentation"})`
321
+ `,Ft=p.default.div.attrs({role:"presentation"})`
322
322
  display: flex;
323
323
  align-self: stretch;
324
324
  justify-content: flex-start;
325
- ${({$startPadding:e=ee.HORIZONTAL_PADDING,$endPadding:t=ee.HORIZONTAL_PADDING,$extraStartPadding:n=0})=>`
325
+ ${({$startPadding:e=ne.HORIZONTAL_PADDING,$endPadding:t=ne.HORIZONTAL_PADDING,$extraStartPadding:n=0})=>`
326
326
  padding-inline: ${e+n}px ${t}px;
327
327
  `}
328
- `,Gf=_.default.div.attrs({role:"presentation"})`
328
+ `,hg=p.default.div.attrs({role:"presentation"})`
329
329
  display: flex;
330
330
  flex-direction: column;
331
331
  min-width: 0;
@@ -334,71 +334,68 @@
334
334
  overflow: hidden;
335
335
  padding: 12px 0;
336
336
  ${({theme:e})=>P.css`color:${e.colors.messageIncoming.text};background-color:${e.colors.messageIncoming.background};`}
337
- `,Vf=_.default.div.attrs({role:"presentation"})`
337
+ `,fg=p.default.div.attrs({role:"presentation"})`
338
338
  display: flex;
339
339
  flex-direction: column;
340
340
  min-width: 0;
341
341
  ${({$marginTop:e=0,$paddingInline:t=0})=>P.css`margin-top:${e}px;padding-inline:${t}px;`}
342
- `,zf=_.default($t)`display:flex;flex-direction:row;align-items:center;gap:8px;`,$n=_.default($t)`display:flex;`,qf=_.default.div.attrs({"aria-hidden":"true",role:"presentation"})``,Wf=_.default($t)`margin-top:${ee.BODY_TIME_GAP}px;display:flex;align-items:flex-start;justify-content:flex-start;`,Os=_.default($t).attrs({role:"presentation"})`
342
+ `,gg=p.default(Ft)`display:flex;flex-direction:row;align-items:center;gap:8px;`,Fn=p.default(Ft)`display:flex;`,pg=p.default.div.attrs({"aria-hidden":"true",role:"presentation"})``,_g=p.default(Ft)`margin-top:${ne.BODY_TIME_GAP}px;display:flex;align-items:flex-start;justify-content:flex-start;`,Gs=p.default(Ft).attrs({role:"presentation"})`
343
343
  display: flex;
344
- ${({$startPadding:e=ee.HORIZONTAL_PADDING,$endPadding:t=ee.HORIZONTAL_PADDING,$extraStartPadding:n=0})=>`
344
+ ${({$startPadding:e=ne.HORIZONTAL_PADDING,$endPadding:t=ne.HORIZONTAL_PADDING,$extraStartPadding:n=0})=>`
345
345
  padding-inline: ${e+n}px ${t}px;
346
346
  `}
347
- `,Yf=_.default.div.attrs({role:"presentation"})`
347
+ `,Eg=p.default.div.attrs({role:"presentation"})`
348
348
  display: flex;
349
349
  flex-direction: column;
350
350
  min-width: 0;
351
351
  max-width: 100%;
352
- gap: ${ee.GAP_GROUPED}px;
353
- `;function Kf({file:e,children:t,onClickFile:n,sendingStatus:r}){const s=(()=>{if(!(!n||r==="failed"))return()=>n==null?void 0:n(e)})();return i.createElement(jf,null,i.createElement(yr,{name:e.name,mimeType:e.type,type:nr(e.name,e.type),onClick:s}),t)}const jf=_.default.div`display:flex;flex-direction:column;align-items:flex-end;gap:${ee.GAP_GROUPED}px;`;function Xf({sendingStatus:e,file:t,metadata:n,onClickMedia:r,onClickMediaFiles:s,children:o}){const{conversation:a}=se(),{aspectRatio:l,localFile:u}=n,[d]=c.useState(()=>u instanceof Blob?URL.createObjectURL(u):t.url),[m,h]=c.useState(!1),f=(()=>{if(e!=="failed"){if(s)return()=>s({files:[{url:d,type:t.type,name:t.name}],index:0});if(r)return()=>r({...t,url:d})}})(),v=f?a.file.buttonLikeInteractivePreview({name:t.name,mimeType:t.type,onActivate:f}):a.file.preview({name:t.name,mimeType:t.type}),b={...v.props,$ratio:l,$clickable:!!f};return i.createElement(Zf,null,i.createElement(Jf,{...b},!m&&i.createElement(dt,{size:26},i.createElement(Z,{type:"spinner",color:"textLowEmphasis",size:26})),i.createElement(Qf,{$loaded:m,src:d,alt:"image-message",onLoad:()=>h(!0)}),v.descriptionNode),o)}const Zf=_.default.div`display:flex;flex-direction:column;align-items:flex-end;gap:${ee.GAP_GROUPED}px;`,Jf=_.default.div`width:${ee.BODY_MAX_WIDTH}px;border-radius:12px;overflow:hidden;cursor:${e=>e.$clickable?"pointer":"default"};height:auto;aspect-ratio:${e=>e.$ratio};position:relative;display:flex;align-items:center;justify-content:center;${X.light`
354
- background-color: ${p.color.background100};
352
+ gap: ${ne.GAP_GROUPED}px;
353
+ `;function bg({file:e,children:t,onClickFile:n,sendingStatus:r}){const s=(()=>{if(!(!n||r==="failed"))return()=>n==null?void 0:n(e)})();return i.createElement(Cg,null,i.createElement(Ir,{name:e.name,mimeType:e.type,type:lr(e.name,e.type),onClick:s}),t)}const Cg=p.default.div`display:flex;flex-direction:column;align-items:flex-end;gap:${ne.GAP_GROUPED}px;`;function vg({sendingStatus:e,file:t,metadata:n,onClickMedia:r,onClickMediaFiles:s,children:o}){const{conversation:a}=se(),{aspectRatio:l,localFile:u}=n,[d]=c.useState(()=>u instanceof Blob?URL.createObjectURL(u):t.url),[m,h]=c.useState(!1),f=(()=>{if(e!=="failed"){if(s)return()=>s({files:[{url:d,type:t.type,name:t.name}],index:0});if(r)return()=>r({...t,url:d})}})(),v=f?a.file.buttonLikeInteractivePreview({name:t.name,mimeType:t.type,onActivate:f}):a.file.preview({name:t.name,mimeType:t.type}),C={...v.props,$ratio:l,$clickable:!!f};return i.createElement(yg,null,i.createElement(Sg,{...C},!m&&i.createElement(mt,{size:26},i.createElement(ee,{type:"spinner",color:"textLowEmphasis",size:26})),i.createElement(Ag,{$loaded:m,src:d,alt:"image-message",onLoad:()=>h(!0)}),v.descriptionNode),o)}const yg=p.default.div`display:flex;flex-direction:column;align-items:flex-end;gap:${ne.GAP_GROUPED}px;`,Sg=p.default.div`width:${ne.BODY_MAX_WIDTH}px;border-radius:12px;overflow:hidden;cursor:${e=>e.$clickable?"pointer":"default"};height:auto;aspect-ratio:${e=>e.$ratio};position:relative;display:flex;align-items:center;justify-content:center;${Q.light`
354
+ background-color: ${g.color.background100};
355
355
  `}
356
- ${X.dark`
357
- background-color: ${p.color.background400};
356
+ ${Q.dark`
357
+ background-color: ${g.color.background400};
358
358
  `}
359
- `,Qf=_.default.img`position:absolute;width:100%;height:100%;inset-block-start:0;inset-inline-start:0;object-fit:cover;opacity:${e=>e.$loaded?1:0};transition:opacity 0.5s ease;`,eg=({sendingStatus:e,files:t,metadata:n,onClickMedia:r,onClickMediaFiles:s,children:o})=>{const[a]=c.useState(()=>n.localFiles?n.localFiles.filter(m=>m instanceof Blob).map(m=>({...m,url:URL.createObjectURL(m)})):t),l=e==="pending",u=e==="failed",d=m=>{if(u||l)return;const h=a[m];h&&(s?s({files:a,index:m}):r&&r({url:h.url,type:h.type||"image/*"}))};return i.createElement(tg,null,i.createElement(Qo,{images:a,isPending:l,onClickImage:d}),o)},tg=_.default.div`display:flex;flex-direction:column;align-items:flex-end;gap:${ee.GAP_GROUPED}px;`;function ng(e){var n,r;const t=c.useMemo(()=>{const s=Wm(ti(e.message));return Js.default.sanitize(s)},[e.message]);return i.createElement(rg,{$maxWidth:e.maxBodyWidth??ee.BODY_MAX_WIDTH,$color:(n=e.customStyle)==null?void 0:n.bubbleContentColor,$bgColor:(r=e.customStyle)==null?void 0:r.bubbleBackgroundColor},i.createElement(sg,{variant:"body3",dangerouslySetInnerHTML:{__html:t}}))}const rg=_.default.div`display:flex;flex-direction:column;border-radius:12px;overflow:hidden;max-width:${({$maxWidth:e})=>e}px;${({theme:e,$color:t,$bgColor:n})=>P.css`
359
+ `,Ag=p.default.img`position:absolute;width:100%;height:100%;inset-block-start:0;inset-inline-start:0;object-fit:cover;opacity:${e=>e.$loaded?1:0};transition:opacity 0.5s ease;`,xg=({sendingStatus:e,files:t,metadata:n,onClickMedia:r,onClickMediaFiles:s,children:o})=>{const[a]=c.useState(()=>n.localFiles?n.localFiles.filter(m=>m instanceof Blob).map(m=>({...m,url:URL.createObjectURL(m)})):t),l=e==="pending",u=e==="failed",d=m=>{if(u||l)return;const h=a[m];h&&(s?s({files:a,index:m}):r&&r({url:h.url,type:h.type||"image/*"}))};return i.createElement(Tg,null,i.createElement(gi,{images:a,isPending:l,onClickImage:d}),o)},Tg=p.default.div`display:flex;flex-direction:column;align-items:flex-end;gap:${ne.GAP_GROUPED}px;`;function Ig(e){var n,r;const t=c.useMemo(()=>{const s=_h(_i(e.message));return io.default.sanitize(s)},[e.message]);return i.createElement(wg,{$maxWidth:e.maxBodyWidth??ne.BODY_MAX_WIDTH,$color:(n=e.customStyle)==null?void 0:n.bubbleContentColor,$bgColor:(r=e.customStyle)==null?void 0:r.bubbleBackgroundColor},i.createElement(Mg,{variant:"body3",dangerouslySetInnerHTML:{__html:t}}))}const wg=p.default.div`display:flex;flex-direction:column;border-radius:12px;overflow:hidden;max-width:${({$maxWidth:e})=>e}px;${({theme:e,$color:t,$bgColor:n})=>P.css`
360
360
  color: ${t||e.colors.messageOutgoing.text};
361
361
  background-color: ${n||e.colors.messageOutgoing.background};
362
362
  `}
363
363
  padding: 12px 0;
364
364
  transition: max-width 0.3s;
365
365
  overflow-wrap: break-word;
366
- `,sg=_.default(B)`align-items:flex-start;line-height:140%;white-space:pre-wrap;padding:0 12px;`,og=({sendingStatus:e})=>{const t=P.useTheme();switch(e){case"pending":return i.createElement(ig,{size:16},i.createElement(Z,{type:"spinner",color:t.colors.messageOutgoing.background,size:16}));case"failed":return i.createElement("div",{style:{marginBottom:2}},i.createElement(Z,{type:"error",color:p.themedColor.error,size:16}));case"scheduled":case"canceled":return null;default:return i.createElement("div",{style:{marginBottom:2}},i.createElement(Z,{type:"done",color:p.themedColor.secondary,size:16}))}},ig=_.default(dt)`margin-bottom:2px;width:16px;height:16px;`,ag=({createdAt:e})=>{const{stringSet:t,format:n}=re();return e?i.createElement(B,{variant:"caption4",color:p.themedColor.textLowEmphasis},n(e,t.DATE_FORMAT__MESSAGE_TIMESTAMP)):null},lg=e=>{const{components:t}=Pt.useContext(),{stringSet:n}=re(),r=()=>{const a=no(e)?i.createElement(t.TextMessageBody,{...e}):null;return e.messageType==="user"?a:e.messageType==="file"?e.file.type.startsWith("image")?i.createElement(t.MediaMessageBody,{...e},a):i.createElement(t.FileMessageBody,{...e},a):e.messageType==="multipleFiles"?i.createElement(t.MultipleFilesMessageBody,{...e},a):i.createElement(t.TextMessageBody,{...e,message:n.UNKNOWN__UNKNOWN_MESSAGE_TYPE})},s=e.sendingStatus==="failed"&&e.onClickFailedMessage,o=s?wt({onActivate:()=>{var a;return(a=e.onClickFailedMessage)==null?void 0:a.call(e)}}):{};return i.createElement("div",{...o,style:{display:"contents",cursor:s?"pointer":"default"}},r())},cg=e=>{const{components:t}=Pt.useContext(),n=e.sendingStatus==="succeeded",r=e.groupType==="bottom"||e.groupType==="single",s=e.messageType==="user"&&e.sendingStatus!=="failed";return i.createElement(ug,{$marginBottom:gn(e.groupType)},i.createElement(dg,{"aria-hidden":s?"true":void 0},i.createElement(t.MessageBody,{...e})),r&&i.createElement(mg,{$extraEndPadding:8,"aria-hidden":n?"true":void 0},n?i.createElement(t.SentTime,{...e}):i.createElement(t.SendingStatus,{...e})))},Pt=qe({template:cg,components:{SendingStatus:og,SentTime:ag,MessageBody:lg,TextMessageBody:ng,MediaMessageBody:Xf,FileMessageBody:Kf,MultipleFilesMessageBody:eg}}),ug=_.default.div`display:flex;flex:1;flex-direction:column;align-items:flex-end;margin-bottom:${({$marginBottom:e})=>`${e}px`};
367
- `,hi=_.default.div`display:flex;align-self:stretch;justify-content:flex-end;${({$startPadding:e=ee.HORIZONTAL_PADDING,$endPadding:t=ee.HORIZONTAL_PADDING,$extraEndPadding:n=0})=>`padding-inline: ${e}px ${t+n}px;`};
368
- `,dg=_.default(hi)``,mg=_.default(hi)`margin-top:${ee.BODY_TIME_GAP}px;`,hg=e=>e.messageType!=="admin"?null:i.createElement(fg,null,i.createElement(B,{variant:"caption2",color:p.themedColor.textMidEmphasis},gg(Js.default.sanitize(e.message)))),fg=_.default.div`text-align:center;text-wrap:pretty;word-break:break-word;padding-inline:${ee.HORIZONTAL_PADDING}px;a{text-decoration:underline;color:inherit;}`,gg=e=>{try{const t=[];let n=e,r=0;for(;n;){const s=n.match(/\[([^\]]+)\]\((https?:\/\/[^\s]+)\)/),o=n.match(/\*\*([^*]+)\*\*/),a=[s&&{match:s,type:"link"},o&&{match:o,type:"bold"}].filter(h=>!!h);if(!a.length){t.push(n);break}const l=a.reduce((h,f)=>f.match.index<h.match.index?f:h),{match:u,type:d}=l,m=u.index;m>0&&t.push(n.slice(0,m)),d==="link"?t.push(i.createElement("a",{key:r++,href:u[2],target:"_blank",rel:pr},u[1])):d==="bold"&&t.push(i.createElement("strong",{key:r++},u[1])),n=n.slice(m+u[0].length)}return t.filter(s=>s!=="")}catch{return[e]}},pg=({direction:e,currentIndex:t,totalCount:n})=>n<=0?t:e==="next"?(t+1)%n:(t-1+n)%n,fi=({options:e,value:t,disabled:n,hasError:r=!1,errorId:s,onChange:o})=>{const a=c.useRef([]),l=e.findIndex(h=>h.value===t),u=l>=0?l:0,d=h=>{requestAnimationFrame(()=>{var f;(f=a.current[h])==null||f.focus()})},m=h=>{const f=e[h];!f||n||(o==null||o(f.value),d(h))};return{radioGroupProps:h=>({role:"radiogroup","aria-label":h,...r&&s?{"aria-invalid":!0,"aria-errormessage":s}:{}}),getRadioProps:h=>({ref:f=>{a.current[h]=f},tabIndex:n?-1:h===u?0:-1,describedBy:r&&s?s:void 0,onArrowNavigate:f=>{m(pg({direction:f,currentIndex:h,totalCount:e.length}))}})}},_g=e=>{switch(e.key){case"ArrowDown":case"ArrowRight":return"next";case"ArrowUp":case"ArrowLeft":return"previous";default:return}},Eg=({event:e,onClick:t,onArrowNavigate:n})=>{if(bg(e))return;const r=_g(e);if(r){e.preventDefault(),n==null||n(r);return}e.key!=="Enter"&&e.key!==" "||(e.preventDefault(),t==null||t())},bg=e=>e.repeat||e.currentTarget.getAttribute("aria-disabled")==="true",xr=c.forwardRef(({onClick:e,checked:t,label:n,disabled:r,tabIndex:s=0,labelVariant:o="caption2",describedBy:a,onArrowNavigate:l},u)=>{const d=t?p.themedColor.primary:r?p.themedColor.textDisabled:p.themedColor.textLowEmphasis,m=t?p.themedColor.textHighEmphasis:r?p.themedColor.textLowEmphasis:p.themedColor.textHighEmphasis;return i.createElement(yg,{ref:u,role:"radio",tabIndex:r?-1:s,"aria-checked":t,"aria-disabled":!!r,"aria-label":n,"aria-describedby":a,onClick:r?void 0:e,onKeyDown:h=>Eg({event:h,onClick:e,onArrowNavigate:l})},i.createElement(Cg,{"aria-hidden":"true"},i.createElement(Z,{size:20,type:t?"radio-on":"radio-off",color:d})),i.createElement(vg,{"aria-hidden":"true",variant:o,color:m},n))});xr.displayName="Radio";const Cg=_.default.div`width:20px;height:20px;`,vg=_.default(B)`line-height:20px;word-break:break-word;`,yg=_.default.div`display:flex;align-items:flex-start;justify-content:flex-start;gap:2px;${Ie}&[aria-disabled='false']{cursor:pointer;}`,Sg=({csatPayload:e,submitted:t,defaultValue:n,value:r,onChange:s})=>{var u,d;const o=[{label:((u=e.cre)==null?void 0:u.positive_label)??"",value:!0},{label:((d=e.cre)==null?void 0:d.negative_label)??"",value:!1}],a=fi({options:o,value:r,disabled:t,onChange:s});if(c.useEffect(()=>{typeof r>"u"&&typeof n=="boolean"&&(s==null||s(n))},[r,n]),!e.cre)return null;const l=e.cre;return i.createElement(Ag,null,i.createElement(xe.Label,{required:l.required,"aria-hidden":!0},l.question),i.createElement(xg,{...a.radioGroupProps(l.question)},o.map((m,h)=>i.createElement(xr,{key:m.label,checked:r===m.value,label:m.label,disabled:t,...a.getRadioProps(h),onClick:()=>s==null?void 0:s(m.value)}))))},Ag=_.default.div`display:flex;flex-direction:column;gap:8px;`,xg=_.default.div`display:flex;flex-direction:column;gap:8px;`,Tg=({followUpItem:e,submitted:t,value:n="",onChange:r,hasError:s})=>{const{stringSet:o}=re(),{conversation:a}=se(),l=c.useId(),u=e.response_type!=="free_text",d=e.response_type==="single_choice"?e.options.map(h=>({label:h,value:h})):[],m=fi({options:d,value:n,disabled:t,hasError:s,errorId:l,onChange:r});return i.createElement(Ig,null,i.createElement(xe.Label,{required:e.required,"aria-hidden":u},e.question),e.response_type==="free_text"&&i.createElement(xe.TextInput,{variant:"multi-line",disabled:t,submitted:t,maxLength:100,value:n,onChange:h=>r(h),error:s,...a.form.textInput(o.A11Y_CSAT_TEXT_INPUT_LABEL,e.required??!1,t),"aria-invalid":s,"aria-errormessage":s?l:void 0}),e.response_type==="single_choice"&&i.createElement(wg,{...m.radioGroupProps(e.question)},d.map((h,f)=>i.createElement(xr,{key:h.value,checked:n===h.value,label:h.label,disabled:t,...m.getRadioProps(f),onClick:()=>r==null?void 0:r(h.value),labelVariant:"body3"}))),s&&i.createElement(Mg,{role:"alert",id:l},o.FORM_VALIDATION_REQUIRED))},Ig=_.default.div`display:flex;flex-direction:column;gap:8px;`,wg=_.default.div`display:flex;flex-direction:column;gap:8px;`,Mg=_.default(xe.ErrorLabel)``,kg=({value:e,selected:t})=>i.createElement(Lg,{$selected:t,"aria-hidden":"true"},Rg[e-1]),Lg=_.default.div`user-select:none;-webkit-user-drag:none;width:40px;height:40px;aspect-ratio:1;opacity:${({$selected:e})=>e?1:.38};`,Rg=[i.createElement("svg",{width:"40",height:"40",viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i.createElement("path",{d:"M2.08337 19.9999C2.08337 10.1048 10.1049 2.08325 20 2.08325C29.8952 2.08325 37.9167 10.1048 37.9167 19.9999C37.9167 29.8951 29.8952 37.9166 20 37.9166C10.1049 37.9166 2.08337 29.8951 2.08337 19.9999Z",fill:"url(#paint0_linear_159_173206)"}),i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.5828 29.3328C13.1348 29.7473 13.9184 29.636 14.3329 29.084C15.6272 27.3607 17.6839 26.25 20 26.25C22.3164 26.25 24.373 27.3607 25.6672 29.084C26.0819 29.636 26.8654 29.7473 27.4175 29.3328C27.9695 28.9182 28.0809 28.1347 27.6662 27.5825C25.9202 25.2577 23.136 23.75 20 23.75C16.8642 23.75 14.0801 25.2577 12.334 27.5825C11.9194 28.1347 12.0308 28.9182 12.5828 29.3328Z",fill:"#141B34"}),i.createElement("path",{d:"M28.4454 13.7707C29.1329 13.8328 29.6405 14.4406 29.5785 15.1281C29.5165 15.8153 28.9095 16.3221 28.2224 16.2608C28.2224 16.2608 28.0287 16.2502 27.9272 16.2487C27.7229 16.2457 27.4387 16.2509 27.1229 16.2833C26.7869 16.3177 26.4649 16.3782 26.1804 16.4662L26.3045 16.86C26.7797 18.3675 25.5099 19.5813 24.2062 19.5813C23.5045 19.5813 22.8324 19.2617 22.43 18.6857C22.003 18.0745 21.9422 17.241 22.408 16.5344C22.751 16.0143 23.2449 15.3831 23.8964 14.8657C24.836 14.1195 26.044 13.8809 26.8675 13.7963C27.3029 13.7517 28.0154 13.7319 28.4454 13.7707Z",fill:"#141B34"}),i.createElement("path",{d:"M11.5549 13.7707C10.8674 13.8328 10.3597 14.4406 10.4218 15.1281C10.4838 15.8153 11.0908 16.3221 11.7779 16.2608C11.7779 16.2608 11.9716 16.2502 12.073 16.2487C12.2774 16.2457 12.5616 16.2509 12.8774 16.2833C13.2134 16.3177 13.5353 16.3782 13.8199 16.4662L13.6958 16.86C13.2205 18.3675 14.4904 19.5813 15.794 19.5813C16.4958 19.5813 17.168 19.2617 17.5703 18.6857C17.9971 18.0745 18.0581 17.241 17.5921 16.5344C17.2493 16.0143 16.7553 15.3831 16.1039 14.8657C15.1643 14.1195 13.9562 13.8809 13.1327 13.7963C12.6974 13.7517 11.9849 13.7319 11.5549 13.7707Z",fill:"#141B34"}),i.createElement("defs",null,i.createElement("linearGradient",{id:"paint0_linear_159_173206",x1:"20",y1:"2.08325",x2:"20",y2:"37.9166",gradientUnits:"userSpaceOnUse"},i.createElement("stop",{stopColor:"#FF2D1D"}),i.createElement("stop",{offset:"1",stopColor:"#FFA540"})))),i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"40",height:"40",viewBox:"0 0 40 40",fill:"none"},i.createElement("path",{d:"M2.083 20C2.083 10.105 10.105 2.083 20 2.083c9.895 0 17.917 8.021 17.917 17.917 0 9.895-8.022 17.917-17.917 17.917C10.105 37.917 2.083 29.895 2.083 20Z",fill:"#FFD46E"}),i.createElement("path",{d:"M14.249 27.334C15.851 26.13 17.844 25.417 20 25.417c2.156 0 4.149.714 5.751 1.917.553.415.664 1.199.25 1.751-.415.552-1.199.664-1.751.25-1.183-.889-2.652-1.416-4.25-1.416s-3.067.527-4.25 1.416c-.553.414-1.336.302-1.751-.25-.415-.552-.303-1.336.249-1.751Z",fill:"#141B34"}),i.createElement("path",{d:"M23.445 14.596c-.687.062-1.294-.445-1.356-1.132-.062-.687.445-1.295 1.132-1.357.082-.005.342-.02.482-.022.277-.004.662.002 1.097.047.823.085 2.031.323 2.97 1.07.652.518 1.146 1.15 1.489 1.67.466.706.405 1.54-.022 2.15-.402.576-1.074.896-1.775.896-1.304 0-2.573-1.214-2.098-2.722l.125-.394c-.285-.088-.607-.148-.942-.182-.316-.033-.6-.038-.804-.035-.101.002-.242.01-.294.013Z",fill:"#141B34"}),i.createElement("path",{d:"M11.779 14.596c-.687.062-1.294-.445-1.356-1.132-.062-.687.445-1.295 1.132-1.357.082-.005.342-.02.482-.022.277-.004.662.002 1.097.047.823.085 2.031.323 2.97 1.07.652.518 1.146 1.15 1.489 1.67.466.706.405 1.54-.022 2.15-.402.576-1.074.896-1.775.896-1.304 0-2.573-1.214-2.098-2.722l.124-.394c-.284-.088-.606-.148-.941-.182-.316-.033-.6-.038-.804-.035-.101.002-.243.01-.294.013Z",fill:"#141B34"})),i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"40",height:"40",viewBox:"0 0 40 40",fill:"none"},i.createElement("path",{d:"M2.083 20C2.083 10.105 10.105 2.083 20 2.083c9.895 0 17.917 8.021 17.917 17.917 0 9.895-8.022 17.917-17.917 17.917C10.105 37.917 2.083 29.895 2.083 20Z",fill:"#FFD46E"}),i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.25 15c0-1.151.933-2.083 2.083-2.083h.015c1.151 0 2.084.933 2.084 2.083 0 1.151-.933 2.083-2.084 2.083h-.015c-1.15 0-2.083-.933-2.083-2.083ZM24.568 15c0-1.151.933-2.083 2.084-2.083h.015c1.151 0 2.083.933 2.083 2.083 0 1.151-.932 2.083-2.083 2.083h-.015c-1.151 0-2.084-.933-2.084-2.083Z",fill:"#141B34"}),i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.75 26.667c0-.691.56-1.25 1.25-1.25h10c.69 0 1.25.559 1.25 1.25 0 .691-.56 1.25-1.25 1.25h-10c-.69 0-1.25-.559-1.25-1.25Z",fill:"#141B34"})),i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"40",height:"40",viewBox:"0 0 40 40",fill:"none"},i.createElement("path",{d:"M2.083 20C2.083 10.105 10.105 2.083 20 2.083c9.895 0 17.917 8.021 17.917 17.917 0 9.895-8.022 17.917-17.917 17.917C10.105 37.917 2.083 29.895 2.083 20Z",fill:"#FFD46E"}),i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.583 24.001c.552-.414 1.335-.302 1.75.25 1.294 1.723 3.35 2.834 5.667 2.834s4.373-1.11 5.667-2.834c.415-.552 1.199-.664 1.751-.25.552.415.664 1.199.25 1.751C25.92 28.076 23.136 29.584 20 29.584s-5.92-1.508-7.666-3.832c-.415-.552-.303-1.336.249-1.751Z",fill:"#141B34"}),i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.25 15c0-1.151.933-2.083 2.083-2.083h.015c1.151 0 2.084.933 2.084 2.083 0 1.151-.933 2.083-2.084 2.083h-.015c-1.15 0-2.083-.933-2.083-2.083ZM24.568 15c0-1.151.933-2.083 2.084-2.083h.015c1.151 0 2.083.933 2.083 2.083 0 1.151-.932 2.083-2.083 2.083h-.015c-1.151 0-2.084-.933-2.084-2.083Z",fill:"#141B34"})),i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"40",height:"40",viewBox:"0 0 40 40",fill:"none"},i.createElement("path",{d:"M2.083 20C2.083 10.105 10.105 2.083 20 2.083c9.895 0 17.917 8.021 17.917 17.917 0 9.895-8.022 17.917-17.917 17.917C10.105 37.917 2.083 29.895 2.083 20Z",fill:"#FFD46E"}),i.createElement("g",{clipPath:"url(#clip0_159_173224)"},i.createElement("g",{clipPath:"url(#clip1_159_173224)"},i.createElement("path",{d:"M20 30.624c3.752 0 6.904-2.532 7.789-5.956.412-1.593-.185-1.959-1.76-1.959H13.973c-1.575 0-2.173.366-1.761 1.959.885 3.424 4.037 5.956 7.788 5.956Z",fill:"#141B34"})),i.createElement("mask",{id:"mask0_159_173224",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:"12",y:"22",width:"16",height:"9"},i.createElement("path",{d:"M20 30.624c3.752 0 6.904-2.532 7.789-5.956.412-1.593-.185-1.959-1.76-1.959H13.973c-1.575 0-2.173.366-1.761 1.959.885 3.424 4.037 5.956 7.788 5.956Z",fill:"#141B34"})),i.createElement("g",{mask:"url(#mask0_159_173224)"},i.createElement("path",{d:"M20 32.998c3.278 0 5.936-1.594 5.936-3.561 0-1.968-2.658-3.562-5.936-3.562-3.278 0-5.936 1.594-5.936 3.562 0 1.967 2.658 3.561 5.936 3.561Z",fill:"#FF493B"}))),i.createElement("path",{d:"M11.667 15.833c0-1.381 1.12-2.5 2.5-2.5s2.5 1.12 2.5 2.5M23.333 15.833c0-1.381 1.12-2.5 2.5-2.5s2.5 1.12 2.5 2.5",stroke:"#141B34",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"}),i.createElement("defs",null,i.createElement("clipPath",{id:"clip0_159_173224"},i.createElement("rect",{width:"15.83",height:"7.915",fill:"white",transform:"translate(12.085 22.709)"})),i.createElement("clipPath",{id:"clip1_159_173224"},i.createElement("rect",{width:"15.83",height:"7.915",fill:"white",transform:"translate(12.085 22.709)"}))))],Og=({csatPayload:e,submitted:t,value:n,onChange:r})=>{const s=typeof n>"u",{conversation:o}=se(),a=o.csat.scoresContainer(e.csat_question);return i.createElement(Dg,null,i.createElement(B,{variant:"caption3",color:p.themedColor.textMidEmphasis,"aria-hidden":"true"},e.csat_question),i.createElement($g,{...a.props},a.descriptionNode,e.csat_scores.map(({label:l,image_url:u},d)=>{const m=d+1,h=n===m,f=e.csat_scores.length,v=o.csat.scoreItem({score:m,label:l,selected:h,disabled:t,currentIndex:d,totalCount:f,hasSelection:!s,onChange:r});return i.createElement(Pg,{key:d,type:"button",...v.props},i.createElement(Ng,{value:m,selected:s||h,src:u}),!!l&&i.createElement(B,{"aria-hidden":"true",color:h?p.themedColor.textHighEmphasis:p.themedColor.textLowEmphasis,variant:"caption3"},l))})))},Ng=({value:e,src:t,selected:n})=>{const[r,s]=c.useState(!1),o=r?i.createElement(kg,{value:e,selected:n}):i.createElement(Bg,{$selected:n,alt:"","aria-hidden":"true",src:t,onError:()=>s(!0)});return i.createElement(Fg,null,o)},Dg=_.default.div`display:flex;flex-direction:column;gap:8px;`,$g=_.default.div`display:flex;justify-content:space-between;align-self:center;width:100%;max-width:400px;gap:16px;`,Pg=_.default.button`appearance:none;-webkit-appearance:none;background-color:transparent;border:none;padding:0;text-align:center;gap:4px;display:flex;flex-direction:column;align-items:center;justify-content:start;box-sizing:border-box;min-width:48px;max-width:68px;${Ie}&:not(:disabled):hover span{color:${p.themedColor.textHighEmphasis};}`,Fg=_.default.div`button:not(:disabled):hover &{border-radius:4px;cursor:pointer;background-color:${p.color.background200};${X.dark`
369
- background-color: ${p.color.background500};
366
+ `,Mg=p.default(U)`align-items:flex-start;line-height:140%;white-space:pre-wrap;padding:0 12px;`,kg=({sendingStatus:e})=>{const t=P.useTheme();switch(e){case"pending":return i.createElement(Rg,{size:16},i.createElement(ee,{type:"spinner",color:t.colors.messageOutgoing.background,size:16}));case"failed":return i.createElement("div",{style:{marginBottom:2}},i.createElement(ee,{type:"error",color:g.themedColor.error,size:16}));case"scheduled":case"canceled":return null;default:return i.createElement("div",{style:{marginBottom:2}},i.createElement(ee,{type:"done",color:g.themedColor.secondary,size:16}))}},Rg=p.default(mt)`margin-bottom:2px;width:16px;height:16px;`,Og=({createdAt:e})=>{const{stringSet:t,format:n}=ie();return e?i.createElement(U,{variant:"caption4",color:g.themedColor.textLowEmphasis},n(e,t.DATE_FORMAT__MESSAGE_TIMESTAMP)):null},Lg=e=>{const{components:t}=Bt.useContext(),{stringSet:n}=ie(),r=()=>{const a=co(e)?i.createElement(t.TextMessageBody,{...e}):null;return e.messageType==="user"?a:e.messageType==="file"?e.file.type.startsWith("image")?i.createElement(t.MediaMessageBody,{...e},a):i.createElement(t.FileMessageBody,{...e},a):e.messageType==="multipleFiles"?i.createElement(t.MultipleFilesMessageBody,{...e},a):i.createElement(t.TextMessageBody,{...e,message:n.UNKNOWN__UNKNOWN_MESSAGE_TYPE})},s=e.sendingStatus==="failed"&&e.onClickFailedMessage,o=s?wt({onActivate:()=>{var a;return(a=e.onClickFailedMessage)==null?void 0:a.call(e)}}):{};return i.createElement("div",{...o,style:{display:"contents",cursor:s?"pointer":"default"}},r())},Ng=e=>{const{components:t}=Bt.useContext(),n=e.sendingStatus==="succeeded",r=e.groupType==="bottom"||e.groupType==="single",s=e.messageType==="user"&&e.sendingStatus!=="failed";return i.createElement(Dg,{$marginBottom:fn(e.groupType)},i.createElement($g,{"aria-hidden":s?"true":void 0},i.createElement(t.MessageBody,{...e})),r&&i.createElement(Pg,{$extraEndPadding:8,"aria-hidden":n?"true":void 0},n?i.createElement(t.SentTime,{...e}):i.createElement(t.SendingStatus,{...e})))},Bt=Ye({template:Ng,components:{SendingStatus:kg,SentTime:Og,MessageBody:Lg,TextMessageBody:Ig,MediaMessageBody:vg,FileMessageBody:bg,MultipleFilesMessageBody:xg}}),Dg=p.default.div`display:flex;flex:1;flex-direction:column;align-items:flex-end;margin-bottom:${({$marginBottom:e})=>`${e}px`};
367
+ `,Mi=p.default.div`display:flex;align-self:stretch;justify-content:flex-end;${({$startPadding:e=ne.HORIZONTAL_PADDING,$endPadding:t=ne.HORIZONTAL_PADDING,$extraEndPadding:n=0})=>`padding-inline: ${e}px ${t+n}px;`};
368
+ `,$g=p.default(Mi)``,Pg=p.default(Mi)`margin-top:${ne.BODY_TIME_GAP}px;`,Fg=e=>e.messageType!=="admin"?null:i.createElement(Bg,null,i.createElement(U,{variant:"caption2",color:g.themedColor.textMidEmphasis},Ug(io.default.sanitize(e.message)))),Bg=p.default.div`text-align:center;text-wrap:pretty;word-break:break-word;padding-inline:${ne.HORIZONTAL_PADDING}px;a{text-decoration:underline;color:inherit;}`,Ug=e=>{try{const t=[];let n=e,r=0;for(;n;){const s=n.match(/\[([^\]]+)\]\((https?:\/\/[^\s]+)\)/),o=n.match(/\*\*([^*]+)\*\*/),a=[s&&{match:s,type:"link"},o&&{match:o,type:"bold"}].filter(h=>!!h);if(!a.length){t.push(n);break}const l=a.reduce((h,f)=>f.match.index<h.match.index?f:h),{match:u,type:d}=l,m=u.index;m>0&&t.push(n.slice(0,m)),d==="link"?t.push(i.createElement("a",{key:r++,href:u[2],target:"_blank",rel:vr},u[1])):d==="bold"&&t.push(i.createElement("strong",{key:r++},u[1])),n=n.slice(m+u[0].length)}return t.filter(s=>s!=="")}catch{return[e]}},Hg=({direction:e,currentIndex:t,totalCount:n})=>n<=0?t:e==="next"?(t+1)%n:(t-1+n)%n,ki=({options:e,value:t,disabled:n,hasError:r=!1,errorId:s,onChange:o})=>{const a=c.useRef([]),l=e.findIndex(h=>h.value===t),u=l>=0?l:0,d=h=>{requestAnimationFrame(()=>{var f;(f=a.current[h])==null||f.focus()})},m=h=>{const f=e[h];!f||n||(o==null||o(f.value),d(h))};return{radioGroupProps:h=>({role:"radiogroup","aria-label":h,...r&&s?{"aria-invalid":!0,"aria-errormessage":s}:{}}),getRadioProps:h=>({ref:f=>{a.current[h]=f},tabIndex:n?-1:h===u?0:-1,describedBy:r&&s?s:void 0,onArrowNavigate:f=>{m(Hg({direction:f,currentIndex:h,totalCount:e.length}))}})}},Gg=e=>{switch(e.key){case"ArrowDown":case"ArrowRight":return"next";case"ArrowUp":case"ArrowLeft":return"previous";default:return}},Vg=({event:e,onClick:t,onArrowNavigate:n})=>{if(zg(e))return;const r=Gg(e);if(r){e.preventDefault(),n==null||n(r);return}e.key!=="Enter"&&e.key!==" "||(e.preventDefault(),t==null||t())},zg=e=>e.repeat||e.currentTarget.getAttribute("aria-disabled")==="true",kr=c.forwardRef(({onClick:e,checked:t,label:n,disabled:r,tabIndex:s=0,labelVariant:o="caption2",describedBy:a,onArrowNavigate:l},u)=>{const d=t?g.themedColor.primary:r?g.themedColor.textDisabled:g.themedColor.textLowEmphasis,m=t?g.themedColor.textHighEmphasis:r?g.themedColor.textLowEmphasis:g.themedColor.textHighEmphasis;return i.createElement(qg,{ref:u,role:"radio",tabIndex:r?-1:s,"aria-checked":t,"aria-disabled":!!r,"aria-label":n,"aria-describedby":a,onClick:r?void 0:e,onKeyDown:h=>Vg({event:h,onClick:e,onArrowNavigate:l})},i.createElement(Yg,{"aria-hidden":"true"},i.createElement(ee,{size:20,type:t?"radio-on":"radio-off",color:d})),i.createElement(Wg,{"aria-hidden":"true",variant:o,color:m},n))});kr.displayName="Radio";const Yg=p.default.div`width:20px;height:20px;`,Wg=p.default(U)`line-height:20px;word-break:break-word;`,qg=p.default.div`display:flex;align-items:flex-start;justify-content:flex-start;gap:2px;${we}&[aria-disabled='false']{cursor:pointer;}`,Kg=({csatPayload:e,submitted:t,defaultValue:n,value:r,onChange:s})=>{var u,d;const o=[{label:((u=e.cre)==null?void 0:u.positive_label)??"",value:!0},{label:((d=e.cre)==null?void 0:d.negative_label)??"",value:!1}],a=ki({options:o,value:r,disabled:t,onChange:s});if(c.useEffect(()=>{typeof r>"u"&&typeof n=="boolean"&&(s==null||s(n))},[r,n]),!e.cre)return null;const l=e.cre;return i.createElement(jg,null,i.createElement(Me.Label,{required:l.required,"aria-hidden":!0},l.question),i.createElement(Xg,{...a.radioGroupProps(l.question)},o.map((m,h)=>i.createElement(kr,{key:m.label,checked:r===m.value,label:m.label,disabled:t,...a.getRadioProps(h),onClick:()=>s==null?void 0:s(m.value)}))))},jg=p.default.div`display:flex;flex-direction:column;gap:8px;`,Xg=p.default.div`display:flex;flex-direction:column;gap:8px;`,Zg=({followUpItem:e,submitted:t,value:n="",onChange:r,hasError:s})=>{const{stringSet:o}=ie(),{conversation:a}=se(),l=c.useId(),u=e.response_type!=="free_text",d=e.response_type==="single_choice"?e.options.map(h=>({label:h,value:h})):[],m=ki({options:d,value:n,disabled:t,hasError:s,errorId:l,onChange:r});return i.createElement(Jg,null,i.createElement(Me.Label,{required:e.required,"aria-hidden":u},e.question),e.response_type==="free_text"&&i.createElement(Me.TextInput,{variant:"multi-line",disabled:t,submitted:t,maxLength:100,value:n,onChange:h=>r(h),error:s,...a.form.textInput(o.A11Y_CSAT_TEXT_INPUT_LABEL,e.required??!1,t),"aria-invalid":s,"aria-errormessage":s?l:void 0}),e.response_type==="single_choice"&&i.createElement(Qg,{...m.radioGroupProps(e.question)},d.map((h,f)=>i.createElement(kr,{key:h.value,checked:n===h.value,label:h.label,disabled:t,...m.getRadioProps(f),onClick:()=>r==null?void 0:r(h.value),labelVariant:"body3"}))),s&&i.createElement(ep,{role:"alert",id:l},o.FORM_VALIDATION_REQUIRED))},Jg=p.default.div`display:flex;flex-direction:column;gap:8px;`,Qg=p.default.div`display:flex;flex-direction:column;gap:8px;`,ep=p.default(Me.ErrorLabel)``,tp=({value:e,selected:t})=>i.createElement(np,{$selected:t,"aria-hidden":"true"},rp[e-1]),np=p.default.div`user-select:none;-webkit-user-drag:none;width:40px;height:40px;aspect-ratio:1;opacity:${({$selected:e})=>e?1:.38};`,rp=[i.createElement("svg",{width:"40",height:"40",viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i.createElement("path",{d:"M2.08337 19.9999C2.08337 10.1048 10.1049 2.08325 20 2.08325C29.8952 2.08325 37.9167 10.1048 37.9167 19.9999C37.9167 29.8951 29.8952 37.9166 20 37.9166C10.1049 37.9166 2.08337 29.8951 2.08337 19.9999Z",fill:"url(#paint0_linear_159_173206)"}),i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.5828 29.3328C13.1348 29.7473 13.9184 29.636 14.3329 29.084C15.6272 27.3607 17.6839 26.25 20 26.25C22.3164 26.25 24.373 27.3607 25.6672 29.084C26.0819 29.636 26.8654 29.7473 27.4175 29.3328C27.9695 28.9182 28.0809 28.1347 27.6662 27.5825C25.9202 25.2577 23.136 23.75 20 23.75C16.8642 23.75 14.0801 25.2577 12.334 27.5825C11.9194 28.1347 12.0308 28.9182 12.5828 29.3328Z",fill:"#141B34"}),i.createElement("path",{d:"M28.4454 13.7707C29.1329 13.8328 29.6405 14.4406 29.5785 15.1281C29.5165 15.8153 28.9095 16.3221 28.2224 16.2608C28.2224 16.2608 28.0287 16.2502 27.9272 16.2487C27.7229 16.2457 27.4387 16.2509 27.1229 16.2833C26.7869 16.3177 26.4649 16.3782 26.1804 16.4662L26.3045 16.86C26.7797 18.3675 25.5099 19.5813 24.2062 19.5813C23.5045 19.5813 22.8324 19.2617 22.43 18.6857C22.003 18.0745 21.9422 17.241 22.408 16.5344C22.751 16.0143 23.2449 15.3831 23.8964 14.8657C24.836 14.1195 26.044 13.8809 26.8675 13.7963C27.3029 13.7517 28.0154 13.7319 28.4454 13.7707Z",fill:"#141B34"}),i.createElement("path",{d:"M11.5549 13.7707C10.8674 13.8328 10.3597 14.4406 10.4218 15.1281C10.4838 15.8153 11.0908 16.3221 11.7779 16.2608C11.7779 16.2608 11.9716 16.2502 12.073 16.2487C12.2774 16.2457 12.5616 16.2509 12.8774 16.2833C13.2134 16.3177 13.5353 16.3782 13.8199 16.4662L13.6958 16.86C13.2205 18.3675 14.4904 19.5813 15.794 19.5813C16.4958 19.5813 17.168 19.2617 17.5703 18.6857C17.9971 18.0745 18.0581 17.241 17.5921 16.5344C17.2493 16.0143 16.7553 15.3831 16.1039 14.8657C15.1643 14.1195 13.9562 13.8809 13.1327 13.7963C12.6974 13.7517 11.9849 13.7319 11.5549 13.7707Z",fill:"#141B34"}),i.createElement("defs",null,i.createElement("linearGradient",{id:"paint0_linear_159_173206",x1:"20",y1:"2.08325",x2:"20",y2:"37.9166",gradientUnits:"userSpaceOnUse"},i.createElement("stop",{stopColor:"#FF2D1D"}),i.createElement("stop",{offset:"1",stopColor:"#FFA540"})))),i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"40",height:"40",viewBox:"0 0 40 40",fill:"none"},i.createElement("path",{d:"M2.083 20C2.083 10.105 10.105 2.083 20 2.083c9.895 0 17.917 8.021 17.917 17.917 0 9.895-8.022 17.917-17.917 17.917C10.105 37.917 2.083 29.895 2.083 20Z",fill:"#FFD46E"}),i.createElement("path",{d:"M14.249 27.334C15.851 26.13 17.844 25.417 20 25.417c2.156 0 4.149.714 5.751 1.917.553.415.664 1.199.25 1.751-.415.552-1.199.664-1.751.25-1.183-.889-2.652-1.416-4.25-1.416s-3.067.527-4.25 1.416c-.553.414-1.336.302-1.751-.25-.415-.552-.303-1.336.249-1.751Z",fill:"#141B34"}),i.createElement("path",{d:"M23.445 14.596c-.687.062-1.294-.445-1.356-1.132-.062-.687.445-1.295 1.132-1.357.082-.005.342-.02.482-.022.277-.004.662.002 1.097.047.823.085 2.031.323 2.97 1.07.652.518 1.146 1.15 1.489 1.67.466.706.405 1.54-.022 2.15-.402.576-1.074.896-1.775.896-1.304 0-2.573-1.214-2.098-2.722l.125-.394c-.285-.088-.607-.148-.942-.182-.316-.033-.6-.038-.804-.035-.101.002-.242.01-.294.013Z",fill:"#141B34"}),i.createElement("path",{d:"M11.779 14.596c-.687.062-1.294-.445-1.356-1.132-.062-.687.445-1.295 1.132-1.357.082-.005.342-.02.482-.022.277-.004.662.002 1.097.047.823.085 2.031.323 2.97 1.07.652.518 1.146 1.15 1.489 1.67.466.706.405 1.54-.022 2.15-.402.576-1.074.896-1.775.896-1.304 0-2.573-1.214-2.098-2.722l.124-.394c-.284-.088-.606-.148-.941-.182-.316-.033-.6-.038-.804-.035-.101.002-.243.01-.294.013Z",fill:"#141B34"})),i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"40",height:"40",viewBox:"0 0 40 40",fill:"none"},i.createElement("path",{d:"M2.083 20C2.083 10.105 10.105 2.083 20 2.083c9.895 0 17.917 8.021 17.917 17.917 0 9.895-8.022 17.917-17.917 17.917C10.105 37.917 2.083 29.895 2.083 20Z",fill:"#FFD46E"}),i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.25 15c0-1.151.933-2.083 2.083-2.083h.015c1.151 0 2.084.933 2.084 2.083 0 1.151-.933 2.083-2.084 2.083h-.015c-1.15 0-2.083-.933-2.083-2.083ZM24.568 15c0-1.151.933-2.083 2.084-2.083h.015c1.151 0 2.083.933 2.083 2.083 0 1.151-.932 2.083-2.083 2.083h-.015c-1.151 0-2.084-.933-2.084-2.083Z",fill:"#141B34"}),i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.75 26.667c0-.691.56-1.25 1.25-1.25h10c.69 0 1.25.559 1.25 1.25 0 .691-.56 1.25-1.25 1.25h-10c-.69 0-1.25-.559-1.25-1.25Z",fill:"#141B34"})),i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"40",height:"40",viewBox:"0 0 40 40",fill:"none"},i.createElement("path",{d:"M2.083 20C2.083 10.105 10.105 2.083 20 2.083c9.895 0 17.917 8.021 17.917 17.917 0 9.895-8.022 17.917-17.917 17.917C10.105 37.917 2.083 29.895 2.083 20Z",fill:"#FFD46E"}),i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.583 24.001c.552-.414 1.335-.302 1.75.25 1.294 1.723 3.35 2.834 5.667 2.834s4.373-1.11 5.667-2.834c.415-.552 1.199-.664 1.751-.25.552.415.664 1.199.25 1.751C25.92 28.076 23.136 29.584 20 29.584s-5.92-1.508-7.666-3.832c-.415-.552-.303-1.336.249-1.751Z",fill:"#141B34"}),i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.25 15c0-1.151.933-2.083 2.083-2.083h.015c1.151 0 2.084.933 2.084 2.083 0 1.151-.933 2.083-2.084 2.083h-.015c-1.15 0-2.083-.933-2.083-2.083ZM24.568 15c0-1.151.933-2.083 2.084-2.083h.015c1.151 0 2.083.933 2.083 2.083 0 1.151-.932 2.083-2.083 2.083h-.015c-1.151 0-2.084-.933-2.084-2.083Z",fill:"#141B34"})),i.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"40",height:"40",viewBox:"0 0 40 40",fill:"none"},i.createElement("path",{d:"M2.083 20C2.083 10.105 10.105 2.083 20 2.083c9.895 0 17.917 8.021 17.917 17.917 0 9.895-8.022 17.917-17.917 17.917C10.105 37.917 2.083 29.895 2.083 20Z",fill:"#FFD46E"}),i.createElement("g",{clipPath:"url(#clip0_159_173224)"},i.createElement("g",{clipPath:"url(#clip1_159_173224)"},i.createElement("path",{d:"M20 30.624c3.752 0 6.904-2.532 7.789-5.956.412-1.593-.185-1.959-1.76-1.959H13.973c-1.575 0-2.173.366-1.761 1.959.885 3.424 4.037 5.956 7.788 5.956Z",fill:"#141B34"})),i.createElement("mask",{id:"mask0_159_173224",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:"12",y:"22",width:"16",height:"9"},i.createElement("path",{d:"M20 30.624c3.752 0 6.904-2.532 7.789-5.956.412-1.593-.185-1.959-1.76-1.959H13.973c-1.575 0-2.173.366-1.761 1.959.885 3.424 4.037 5.956 7.788 5.956Z",fill:"#141B34"})),i.createElement("g",{mask:"url(#mask0_159_173224)"},i.createElement("path",{d:"M20 32.998c3.278 0 5.936-1.594 5.936-3.561 0-1.968-2.658-3.562-5.936-3.562-3.278 0-5.936 1.594-5.936 3.562 0 1.967 2.658 3.561 5.936 3.561Z",fill:"#FF493B"}))),i.createElement("path",{d:"M11.667 15.833c0-1.381 1.12-2.5 2.5-2.5s2.5 1.12 2.5 2.5M23.333 15.833c0-1.381 1.12-2.5 2.5-2.5s2.5 1.12 2.5 2.5",stroke:"#141B34",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"}),i.createElement("defs",null,i.createElement("clipPath",{id:"clip0_159_173224"},i.createElement("rect",{width:"15.83",height:"7.915",fill:"white",transform:"translate(12.085 22.709)"})),i.createElement("clipPath",{id:"clip1_159_173224"},i.createElement("rect",{width:"15.83",height:"7.915",fill:"white",transform:"translate(12.085 22.709)"}))))],sp=({csatPayload:e,submitted:t,value:n,onChange:r})=>{const s=typeof n>"u",{conversation:o}=se(),a=o.csat.scoresContainer(e.csat_question);return i.createElement(ip,null,i.createElement(U,{variant:"caption3",color:g.themedColor.textMidEmphasis,"aria-hidden":"true"},e.csat_question),i.createElement(ap,{...a.props},a.descriptionNode,e.csat_scores.map(({label:l,image_url:u},d)=>{const m=d+1,h=n===m,f=e.csat_scores.length,v=o.csat.scoreItem({score:m,label:l,selected:h,disabled:t,currentIndex:d,totalCount:f,hasSelection:!s,onChange:r});return i.createElement(lp,{key:d,type:"button",...v.props},i.createElement(op,{value:m,selected:s||h,src:u}),!!l&&i.createElement(U,{"aria-hidden":"true",color:h?g.themedColor.textHighEmphasis:g.themedColor.textLowEmphasis,variant:"caption3"},l))})))},op=({value:e,src:t,selected:n})=>{const[r,s]=c.useState(!1),o=r?i.createElement(tp,{value:e,selected:n}):i.createElement(up,{$selected:n,alt:"","aria-hidden":"true",src:t,onError:()=>s(!0)});return i.createElement(cp,null,o)},ip=p.default.div`display:flex;flex-direction:column;gap:8px;`,ap=p.default.div`display:flex;justify-content:space-between;align-self:center;width:100%;max-width:400px;gap:16px;`,lp=p.default.button`appearance:none;-webkit-appearance:none;background-color:transparent;border:none;padding:0;text-align:center;gap:4px;display:flex;flex-direction:column;align-items:center;justify-content:start;box-sizing:border-box;min-width:48px;max-width:68px;${we}&:not(:disabled):hover span{color:${g.themedColor.textHighEmphasis};}`,cp=p.default.div`button:not(:disabled):hover &{border-radius:4px;cursor:pointer;background-color:${g.color.background200};${Q.dark`
369
+ background-color: ${g.color.background500};
370
370
  `}
371
371
  }
372
- `,Bg=_.default.img`user-select:none;-webkit-user-drag:none;width:40px;height:40px;aspect-ratio:1;opacity:${({$selected:e})=>e?1:.38};`,Ug=({csatPayload:e})=>i.createElement(B,{variant:"button",color:p.themedColor.textHighEmphasis},e.title),Pn=({csatPayload:e,type:t,renderSubmitButton:n,initialCsat:r,initialCsatReason:s,initialIsResolved:o})=>{const{params:a,setParams:l,error:u,setError:d,followUpItem:m,state:h,validateParams:f,itemProps:v}=Cc({csatPayload:e,type:t,initialCsat:r,initialCsatReason:s,initialIsResolved:o});return i.createElement(i.Fragment,null,i.createElement(Hg,null,i.createElement(Ug,{...v}),t===We.AI_AGENT_CSAT_5_WITH_CRE&&i.createElement(Sg,{...v,defaultValue:o,value:a.isResolved,onChange:b=>l({isResolved:b})}),i.createElement(Og,{...v,value:a.csat,onChange:b=>l({csat:b})}),m&&i.createElement(Tg,{...v,followUpItem:m,value:a.csatReason,onChange:b=>{l({csatReason:b}),d({followUpItem:!1})},hasError:u.followUpItem})),h!=="unsubmittable"&&i.createElement(i.Fragment,null,i.createElement(xe.Separator,null),n({state:h,params:a,validateParams:f})))},Hg=_.default.div`display:flex;flex-direction:column;gap:12px;`,Gg=e=>{const{stringSet:t}=re();return xa(e,{title:t.CSAT_TITLE_UNSUBMITTED,question:t.CSAT_RATING_TITLE,cre:{question:t.CSAT_CRE_TITLE,positive_label:t.CSAT_CRE_SOLVED,negative_label:t.CSAT_CRE_NOT_SOLVED},followUp:{question:t.CSAT_REASON_PLACEHOLDER},submit_label:t.CSAT_SUBMIT_LABEL,submitted_label:t.CSAT_TITLE_SUBMITTED})},Vg=()=>{const{stringSet:e}=re();return i.createElement(B,{variant:"body2",color:p.themedColor.textMidEmphasis,style:{textAlign:"center"}},e.CSAT_SUBMISSION_EXPIRED)},zg=({onMount:e,children:t})=>(c.useEffect(()=>{e&&Oe(e)},[]),t),qg=e=>{const{conversation:t}=se(),{announceStatusText:n,announceError:r}=st();if(e.messageType!=="admin.csat")throw new Error("Invalid message type");const{extendedMessagePayload:s,onSubmitCSAT:o,onScrollToBottom:a}=e,{csat:l,csatReason:u,csatExpireAt:d,isResolvedWhenDeterminedByUser:m}=e,h=ur(),f=Gg(s==null?void 0:s.csat),v=c.useRef(null),b=c.useRef(!1),C=c.useRef(null),g=c.useRef(typeof l=="number"),y=(f==null?void 0:f.csat_submitted_label)??"",E=!!f&&f.visibility&&!!We[f.type];if(c.useEffect(()=>{E&&y&&(typeof l!="number"||g.current||(g.current=!0,n(y),Oe(()=>{var w;(w=C.current)==null||w.focus()})))},[n,l,E,y]),!E||!f)return null;const I=()=>{var k;const w=(k=v.current)==null?void 0:k.querySelector('[aria-invalid="true"]');return w?w.getAttribute("role")==="radiogroup"?w.querySelector('[role="radio"]'):w:null},A=f.type===We.AI_AGENT_CSAT_5||f.type===We.AI_AGENT_CSAT_5_WITH_CRE||f.type===We.HELPDESK_CSAT_5?Pn:()=>null;return i.createElement(Wg,{ref:v},!l&&Fr(d)?i.createElement(Vg,null):i.createElement(A,{csatPayload:f,type:f.type,initialCsat:l,initialCsatReason:u,initialIsResolved:m,renderSubmitButton:({state:w,params:k,validateParams:N})=>w==="submitted"?i.createElement(Kg,{ref:C,role:"status","aria-live":"polite","aria-atomic":"true","aria-label":y,tabIndex:-1},i.createElement(B,{variant:"button","aria-hidden":"true"},f.csat_submitted_label)):i.createElement(zg,{onMount:a},i.createElement(Yg,{type:"button",...t.csat.submitButton(f.csat_submit_label),onClick:async()=>{if(b.current)return;const W=Fr(d);!W&&N()?(b.current=!0,await o(k).finally(()=>{b.current=!1})):(h(),W||Oe(()=>{r({type:"csatFormError"},I())}))}},i.createElement(B,{variant:"button"},f.csat_submit_label)))}))},Wg=_.default.div`display:flex;flex-direction:column;background-color:${({theme:e})=>e.colors.csat.background};border-radius:16px;gap:16px;padding:16px;`,Yg=_.default.button`all:unset;width:100%;box-sizing:border-box;background-color:${({theme:e})=>e.colors.base.primary};color:${({theme:e})=>e.colors.base.primaryContrastContent};border-radius:6px;padding:10px 20px;display:flex;align-items:center;justify-content:center;cursor:pointer;text-align:center;word-break:break-word;${Ie}&:hover{background-color:${p.color.primary.dark};}`,Kg=_.default.div`width:100%;box-sizing:border-box;color:${p.themedColor.textHighEmphasis};background-color:${p.color.background200};border-radius:6px;padding:10px 20px;display:flex;align-items:center;justify-content:center;text-align:center;word-break:break-word;${X.dark`
373
- background-color: ${p.color.onlight.textDisabled};
372
+ `,up=p.default.img`user-select:none;-webkit-user-drag:none;width:40px;height:40px;aspect-ratio:1;opacity:${({$selected:e})=>e?1:.38};`,dp=({csatPayload:e})=>i.createElement(U,{variant:"button",color:g.themedColor.textHighEmphasis},e.title),Bn=({csatPayload:e,type:t,renderSubmitButton:n,initialCsat:r,initialCsatReason:s,initialIsResolved:o})=>{const{params:a,setParams:l,error:u,setError:d,followUpItem:m,state:h,validateParams:f,itemProps:v}=Hc({csatPayload:e,type:t,initialCsat:r,initialCsatReason:s,initialIsResolved:o});return i.createElement(i.Fragment,null,i.createElement(mp,null,i.createElement(dp,{...v}),t===Ke.AI_AGENT_CSAT_5_WITH_CRE&&i.createElement(Kg,{...v,defaultValue:o,value:a.isResolved,onChange:C=>l({isResolved:C})}),i.createElement(sp,{...v,value:a.csat,onChange:C=>l({csat:C})}),m&&i.createElement(Zg,{...v,followUpItem:m,value:a.csatReason,onChange:C=>{l({csatReason:C}),d({followUpItem:!1})},hasError:u.followUpItem})),h!=="unsubmittable"&&i.createElement(i.Fragment,null,i.createElement(Me.Separator,null),n({state:h,params:a,validateParams:f})))},mp=p.default.div`display:flex;flex-direction:column;gap:12px;`,hp=e=>{const{stringSet:t}=ie();return Va(e,{title:t.CSAT_TITLE_UNSUBMITTED,question:t.CSAT_RATING_TITLE,cre:{question:t.CSAT_CRE_TITLE,positive_label:t.CSAT_CRE_SOLVED,negative_label:t.CSAT_CRE_NOT_SOLVED},followUp:{question:t.CSAT_REASON_PLACEHOLDER},submit_label:t.CSAT_SUBMIT_LABEL,submitted_label:t.CSAT_TITLE_SUBMITTED})},fp=()=>{const{stringSet:e}=ie();return i.createElement(U,{variant:"body2",color:g.themedColor.textMidEmphasis,style:{textAlign:"center"}},e.CSAT_SUBMISSION_EXPIRED)},gp=({onMount:e,children:t})=>(c.useEffect(()=>{e&&$e(e)},[]),t),pp=e=>{const{conversation:t}=se(),{announceError:n,announceStatus:r}=Je();if(e.messageType!=="admin.csat")throw new Error("Invalid message type");const{extendedMessagePayload:s,onSubmitCSAT:o,onScrollToBottom:a}=e,{csat:l,csatReason:u,csatExpireAt:d,isResolvedWhenDeterminedByUser:m}=e,h=gn(),f=hp(s==null?void 0:s.csat),v=c.useRef(null),C=c.useRef(null),[y,E]=c.useState(!1),_=c.useRef(!1),b=c.useCallback(()=>{$e(()=>{var O;return(O=C.current)==null?void 0:O.focus()})},[]),{isExpiredNow:A,isRenderableCSAT:M}=Bc({csat:l,csatExpireAt:d,csatPayload:f,announceStatus:r,onSubmittedAnnounced:b,isSubmitInFlight:y});if(!M||!f)return null;const B=()=>{var k;const O=(k=v.current)==null?void 0:k.querySelector('[aria-invalid="true"]');return O?O.getAttribute("role")==="radiogroup"?O.querySelector('[role="radio"]'):O:null},w=f.type===Ke.AI_AGENT_CSAT_5||f.type===Ke.AI_AGENT_CSAT_5_WITH_CRE||f.type===Ke.HELPDESK_CSAT_5?Bn:()=>null;return i.createElement(_p,{ref:v},!l&&A?i.createElement(fp,null):i.createElement(w,{csatPayload:f,type:f.type,initialCsat:l,initialCsatReason:u,initialIsResolved:m,renderSubmitButton:({state:O,params:k,validateParams:R})=>O==="submitted"?i.createElement(bp,{ref:C,role:"status","aria-live":"polite","aria-atomic":"true","aria-label":f.csat_submitted_label,tabIndex:-1},i.createElement(U,{variant:"button","aria-hidden":"true"},f.csat_submitted_label)):i.createElement(gp,{onMount:a},i.createElement(Ep,{type:"button",...t.csat.submitButton(f.csat_submit_label),onClick:async()=>{if(_.current)return;const W=_o(d);if(!W&&R()){_.current=!0,E(!0);try{await o(k)}catch(D){throw _.current=!1,E(!1),D}}else h(),W||$e(()=>{n({type:"csatFormError"},B())})}},i.createElement(U,{variant:"button"},f.csat_submit_label)))}))},_p=p.default.div`display:flex;flex-direction:column;background-color:${({theme:e})=>e.colors.csat.background};border-radius:16px;gap:16px;padding:16px;`,Ep=p.default.button`all:unset;width:100%;box-sizing:border-box;background-color:${({theme:e})=>e.colors.base.primary};color:${({theme:e})=>e.colors.base.primaryContrastContent};border-radius:6px;padding:10px 20px;display:flex;align-items:center;justify-content:center;cursor:pointer;text-align:center;word-break:break-word;${we}&:hover{background-color:${g.color.primary.dark};}`,bp=p.default.div`width:100%;box-sizing:border-box;color:${g.themedColor.textHighEmphasis};background-color:${g.color.background200};border-radius:6px;padding:10px 20px;display:flex;align-items:center;justify-content:center;text-align:center;word-break:break-word;${Q.dark`
373
+ background-color: ${g.color.onlight.textDisabled};
374
374
  `}
375
- `,jg=e=>{const{components:t}=bn.useContext(),n=e.messageType==="admin"?i.createElement(t.AdminMessage,{...e}):e.messageType==="admin.csat"?i.createElement(t.CSATMessage,{...e}):null;return i.createElement(Xg,{$marginBottom:gn(e.groupType)},n)},bn=qe({template:jg,components:{AdminMessage:hg,CSATMessage:qg}}),Xg=_.default.div`padding-inline:${ee.HORIZONTAL_PADDING}px;margin-bottom:${({$marginBottom:e})=>e}px;`,Ns={file:"attach",snippet:"snippet",site:"website",sb_sprinklr:"sprinklr",sb_salesforce:"salesforce",sb_confluence:"confluence",sb_zendesk:"zendesk",sb_desk:"snippet"},gi=({actionbook:e,functionCalls:t,groundedness:n,agentMessageTemplates:r,onClickActionbook:s,onClickFunctionCall:o,onClickFunctionCallDetail:a,onClickGroundedness:l,onClickAgentMessageTemplate:u,bottomContent:d,renderCustomGroundednessIcon:m=f=>f.default,style:h={}})=>{const{iconColor:f="#000000",textColor:v="#000000",highlightColor:b=Rt.DEFAULT_PRIMARY}=h;return i.createElement(Ds,null,e&&i.createElement(Ds,null,i.createElement(fn,null,i.createElement(Xt,null,i.createElement(Z,{size:16,type:"actionbook",color:f})),i.createElement(jt,{$clickable:!!s,$highlightColor:b,variant:"body2",color:v,onClick:()=>s==null?void 0:s(e),maxTextLines:1},e.name))),t==null?void 0:t.map(C=>i.createElement(Fn,{key:C.key},i.createElement(Xt,null,i.createElement(Z,{size:16,type:"function",color:f})),i.createElement(fn,null,i.createElement(jt,{$clickable:!!o,$highlightColor:b,variant:"body2",color:v,onClick:()=>o==null?void 0:o(C),maxTextLines:1},C.name),a&&i.createElement(Jg,{role:"button",onClick:()=>a==null?void 0:a(C)},i.createElement(B,{variant:"body2",color:b},"View details"),i.createElement(Z,{type:"chevron-right",size:16,color:b}))))),n==null?void 0:n.map(C=>i.createElement(Fn,{key:C.id},i.createElement(Xt,null,m({default:i.createElement(Z,{size:16,type:Ns[C.source_type]??Ns.snippet,color:f}),sourceType:C.source_type})),i.createElement(jt,{$clickable:!!l,$highlightColor:b,variant:"body2",color:v,onClick:()=>l==null?void 0:l(C),maxTextLines:1},C.preview_title))),r==null?void 0:r.map(C=>i.createElement(Fn,{key:C.key},i.createElement(Xt,null,i.createElement(Z,{size:16,type:"template",color:f})),i.createElement(jt,{$clickable:!!u,$highlightColor:b,variant:"body2",color:v,onClick:()=>u==null?void 0:u(C),maxTextLines:1},C.name))),d)},Zg=_.default(B)`font-weight:400;`,jt=_.default(Zg)`${({$clickable:e,$highlightColor:t})=>e&&P.css`
375
+ `,Cp=e=>{const{components:t}=vn.useContext(),n=e.messageType==="admin"?i.createElement(t.AdminMessage,{...e}):e.messageType==="admin.csat"?i.createElement(t.CSATMessage,{...e}):null;return i.createElement(vp,{$marginBottom:fn(e.groupType)},n)},vn=Ye({template:Cp,components:{AdminMessage:Fg,CSATMessage:pp}}),vp=p.default.div`padding-inline:${ne.HORIZONTAL_PADDING}px;margin-bottom:${({$marginBottom:e})=>e}px;`,Vs={file:"attach",snippet:"snippet",site:"website",sb_sprinklr:"sprinklr",sb_salesforce:"salesforce",sb_confluence:"confluence",sb_zendesk:"zendesk",sb_desk:"snippet"},Ri=({actionbook:e,functionCalls:t,groundedness:n,agentMessageTemplates:r,onClickActionbook:s,onClickFunctionCall:o,onClickFunctionCallDetail:a,onClickGroundedness:l,onClickAgentMessageTemplate:u,bottomContent:d,renderCustomGroundednessIcon:m=f=>f.default,style:h={}})=>{const{iconColor:f="#000000",textColor:v="#000000",highlightColor:C=Ot.DEFAULT_PRIMARY}=h;return i.createElement(zs,null,e&&i.createElement(zs,null,i.createElement(hn,null,i.createElement(Zt,null,i.createElement(ee,{size:16,type:"actionbook",color:f})),i.createElement(Xt,{$clickable:!!s,$highlightColor:C,variant:"body2",color:v,onClick:()=>s==null?void 0:s(e),maxTextLines:1},e.name))),t==null?void 0:t.map(y=>i.createElement(Un,{key:y.key},i.createElement(Zt,null,i.createElement(ee,{size:16,type:"function",color:f})),i.createElement(hn,null,i.createElement(Xt,{$clickable:!!o,$highlightColor:C,variant:"body2",color:v,onClick:()=>o==null?void 0:o(y),maxTextLines:1},y.name),a&&i.createElement(Sp,{role:"button",onClick:()=>a==null?void 0:a(y)},i.createElement(U,{variant:"body2",color:C},"View details"),i.createElement(ee,{type:"chevron-right",size:16,color:C}))))),n==null?void 0:n.map(y=>i.createElement(Un,{key:y.id},i.createElement(Zt,null,m({default:i.createElement(ee,{size:16,type:Vs[y.source_type]??Vs.snippet,color:f}),sourceType:y.source_type})),i.createElement(Xt,{$clickable:!!l,$highlightColor:C,variant:"body2",color:v,onClick:()=>l==null?void 0:l(y),maxTextLines:1},y.preview_title))),r==null?void 0:r.map(y=>i.createElement(Un,{key:y.key},i.createElement(Zt,null,i.createElement(ee,{size:16,type:"template",color:f})),i.createElement(Xt,{$clickable:!!u,$highlightColor:C,variant:"body2",color:v,onClick:()=>u==null?void 0:u(y),maxTextLines:1},y.name))),d)},yp=p.default(U)`font-weight:400;`,Xt=p.default(yp)`${({$clickable:e,$highlightColor:t})=>e&&P.css`
376
376
  cursor: pointer;
377
377
  text-decoration: underline;
378
378
  &:hover {
379
379
  color: ${t};
380
380
  }
381
381
  `}
382
- `,Xt=_.default.div`display:flex;align-items:center;justify-content:center;flex-shrink:0;`,fn=_.default.div`display:flex;gap:8px;align-items:center;word-break:break-word;`,Jg=_.default(fn)`cursor:pointer;gap:4px;`,Fn=_.default(fn)`flex-direction:row;align-items:center;`,Ds=_.default.div`display:flex;gap:4px;flex-direction:column;align-items:flex-start;`,pi=c.createContext(null);function Qg({testerType:e,origin:t,children:n}){return i.createElement(pi.Provider,{value:{testerType:e,isActionbookTester:e==="actionbook",origin:t}},e&&i.createElement(ep,null),n)}const St=()=>{const e=c.useContext(pi);if(!e)throw new Error("_UNSAFE_INTERNAL_DashboardTesterProvider not found");return e},ep=()=>{const{isActionbookTester:e}=St();return i.createElement(rt.Template,{template:e?tp:void 0},i.createElement(rt.MessageLogs,{component:np}))},tp=e=>i.createElement(mi,{...e,testerMode:!0,maxBodyWidth:ee.WIDE_BODY_MAX_WIDTH}),np=({extendedMessagePayload:e={}})=>{const{handlers:t}=fe(),{manual:n,groundedness:r,function_calls:s,agent_message_templates:o,is_thinking:a}=e;return a||!n&&!(r!=null&&r.length)&&!(s!=null&&s.length)&&!(o!=null&&o.length)?i.createElement(i.Fragment,null):i.createElement(rp,null,i.createElement(sp,{$width:4}),i.createElement(gi,{actionbook:n,functionCalls:s,groundedness:r,agentMessageTemplates:o,onClickFunctionCallDetail:t==null?void 0:t.onFunctionCallDetailClick,style:{iconColor:p.themedColor.textHighEmphasis,textColor:p.themedColor.textHighEmphasis,barColor:p.themedColor.textDisabled},bottomContent:i.createElement(op,{variant:"caption2",color:p.themedColor.textLowEmphasis},"Only visible in the tester")}))},rp=_.default.div`display:flex;gap:16px;margin:16px ${ee.HORIZONTAL_PADDING}px 0;align-self:stretch;`,sp=_.default.div`width:${({$width:e})=>e}px;background-color:${p.themedColor.textDisabled};border-radius:100px;flex-shrink:0;`,op=_.default(B)`margin-top:5px;`,$s=40,Ps=.9,ip="[data-message-listitem]",ap='input, textarea, select, [role="textbox"], [contenteditable="true"]',lp=({event:e,list:t,isMessageAnchor:n})=>{switch(e.key){case"PageDown":return t.clientHeight*Ps;case"PageUp":return t.clientHeight*-Ps;case"ArrowDown":return n?$s:void 0;case"ArrowUp":return n?$s*-1:void 0;default:return}},cp=({listRef:e,syncScrollPosition:t})=>c.useCallback(n=>{const r=e.current;if(!r||n.defaultPrevented||n.metaKey||n.altKey||n.ctrlKey)return;const s=n.target;if(!s||!r.contains(s)||s.closest(ap))return;const o=s===r||s.matches(ip),a=lp({event:n,list:r,isMessageAnchor:o});if(a==null||a===0)return;const l=Math.max(0,r.scrollHeight-r.clientHeight),u=Math.min(l,Math.max(0,r.scrollTop+a));u!==r.scrollTop&&(n.preventDefault(),t(u))},[e,t]),up="[data-message-listitem]",dp=e=>Math.min(Math.max(0,e),1),mp=e=>{const n=e.getRootNode().activeElement,r=n==null?void 0:n.closest(up),s=n===e||n===r;return!n||!e.contains(n)?null:s?e:n},hp=({list:e,focusRestoreTarget:t})=>{if(!t)return;const r=e.getRootNode().activeElement,s=r===e||e.contains(r),o=t===e||e.contains(t);s&&o&&t.focus({preventScroll:!0})},fp=({depsForResetScrollPositionToBottom:e,listRef:t,loadThreshold:n,messagesLength:r,onLoadNext:s,onLoadPrev:o,onScroll:a})=>{const l=c.useRef(!1),u=c.useRef(void 0),d=c.useRef(0),m=c.useRef(0),h=c.useRef(null),f=c.useRef(null),v=c.useRef(null);c.useLayoutEffect(()=>{t.current&&(t.current.scrollTop=t.current.scrollHeight)},e),c.useLayoutEffect(()=>{const y=t.current;y&&(u.current==="top"&&(y.scrollTop=y.scrollHeight-m.current,hp({list:y,focusRestoreTarget:h.current}),h.current=null),u.current==="bottom"&&(y.scrollTop=d.current),u.current=void 0)},[t,r]);const b=c.useCallback(async y=>{const E=t.current;if(!E||(a==null||a(y),m.current=E.scrollHeight-E.scrollTop,d.current=E.scrollTop,l.current))return;const I=E.clientHeight*dp(n);if(E.scrollTop<=I){l.current=!0,u.current="top",h.current=mp(E),await o(),l.current=!1;return}if(E.scrollHeight-E.scrollTop-E.clientHeight<=I){l.current=!0,u.current="bottom",await s(),l.current=!1;return}u.current=void 0},[t,n,s,o,a]),C=c.useCallback(y=>{const E=t.current;if(!E)return;const I=v.current;if(I!=null){if(I===E.scrollTop){v.current=null;return}v.current=null}const A=f.current;if(A!=null&&A===E.scrollTop){f.current=null,v.current=E.scrollTop,b(y);return}f.current=null,b(y)},[b,t]),g=c.useCallback(y=>{const E=t.current;E&&(f.current=y,v.current=null,E.scrollTop=y,E.dispatchEvent(new Event("scroll",{bubbles:!0})))},[t]);return c.useLayoutEffect(()=>()=>{f.current=null,v.current=null},[]),{handleScroll:C,syncScrollPosition:g}},gp=c.forwardRef(function(t,n){const{messages:r,renderMessage:s,loading:o,LoadingComponent:a,error:l,ErrorComponent:u,empty:d,EmptyComponent:m,messageTopArea:h,messageBottomArea:f,overlayArea:v,onLoadPrev:b,onLoadNext:C,loadThreshold:g=.05,onScroll:y=he,depsForResetScrollPositionToBottom:E,stackDirection:I="top",bottomSpacerHeight:A=0,"aria-label":w}=t,k=c.useRef(null),N=c.useCallback(L=>{k.current=L,n&&(typeof n=="function"?n(L):n.current=L)},[n]),{handleScroll:W,syncScrollPosition:G}=fp({depsForResetScrollPositionToBottom:E,listRef:k,loadThreshold:g,messagesLength:r.length,onLoadNext:C,onLoadPrev:b,onScroll:y}),K=cp({listRef:k,syncScrollPosition:G});return l?i.createElement(i.Fragment,null,u):o?i.createElement(i.Fragment,null,a):i.createElement(pp,{id:"infinite-list-container"},i.createElement(_p,{id:"infinite-list-inner",ref:N,onScroll:W,onKeyDown:K,role:"list","aria-label":w,tabIndex:0},I==="bottom"&&i.createElement("div",{style:{flexGrow:1}}),h,d?m:r.map((L,V)=>s({message:L,index:V})),f,A>0&&i.createElement("div",{style:{minHeight:A}})),i.createElement(Ep,{id:"infinite-list-overlay-container"},i.createElement(bp,{id:"infinite-list-overlay"},v)))}),pp=_.default.div`display:flex;position:relative;flex:1;overflow:hidden;`,_p=_.default.div`display:flex;flex:1;flex-direction:column;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:${p.themedColor.textLowEmphasis}transparent;&::-webkit-scrollbar-thumb:hover{background-color:transparent;}`,Ep=_.default.div`position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:none;`,bp=_.default.div`pointer-events:auto;`,Je=({as:e,type:t,size:n=16,color:r,disabled:s,children:o,...a})=>{const l=s?p.themedColor.textDisabled:p.themedColor.textHighEmphasis;return i.createElement(Cp,{as:e,disabled:s,...a},i.createElement(Z,{type:t,size:n,color:r??l}),o)},Cp=_.default.button`all:unset;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;${Ie}&:disabled{cursor:not-allowed;}`,vp=({files:e,initialIndex:t=0,onClose:n,visible:r})=>{var w,k;const[s,o]=c.useState(t),[a,l]=c.useState(!1),{stringSet:u,format:d}=re(),{config:m}=fe(),h=e.length,f=e[s],v=((k=(w=m==null?void 0:m.conversation)==null?void 0:w.fileViewer)==null?void 0:k.downloadEnabled)!==!1,b=h>1,C=(f==null?void 0:f.type)||"",g=at(C),y=to(C),E=!em(C);c.useEffect(()=>{r&&(o(t),l(!1))},[r,t]);const I=c.useCallback(()=>{s>0&&(o(N=>N-1),l(!1))},[s]),A=c.useCallback(()=>{s<h-1&&(o(N=>N+1),l(!1))},[s,h]);return c.useEffect(()=>{if(!r)return;const N=W=>{W.key==="ArrowLeft"?I():W.key==="ArrowRight"&&A()};return window.addEventListener("keydown",N),()=>window.removeEventListener("keydown",N)},[r,I,A]),!r||!f?null:i.createElement(ut,{onClose:n,visible:r,portalContainerId:ve.MODAL_ROOT,"aria-label":(f==null?void 0:f.name)||u.IMAGE_VIEWER__DEFAULT_TITLE},i.createElement(yp,null,i.createElement(Sp,null,i.createElement(Ap,null,i.createElement(xp,null,i.createElement(B,{variant:"button",maxTextLines:1,color:p.color.ondark.textHighEmphasis},f.name||u.IMAGE_VIEWER__DEFAULT_TITLE),f.timestamp&&i.createElement(B,{variant:"caption2",color:p.color.ondark.textHighEmphasis},d(new Date(f.timestamp),"h:mm a")))),i.createElement(Tp,{type:"close",size:18,color:p.color.ondark.textHighEmphasis,"aria-label":u.A11Y_IMAGE_VIEWER_CLOSE,onClick:n})),i.createElement(Ip,{onClick:N=>N.currentTarget===N.target&&n()},b&&i.createElement(Fs,{$position:"left",type:"chevron-right",size:22,color:p.color.ondark.textHighEmphasis,onClick:I,"aria-label":u.A11Y_IMAGE_VIEWER_PREVIOUS,disabled:s===0,$flipped:!0}),i.createElement(wp,null,g&&i.createElement(i.Fragment,null,!a&&i.createElement(Mp,null,i.createElement(dt,{size:32},i.createElement(Z,{type:"spinner",color:"textLowEmphasis",size:32}))),i.createElement(kp,{src:f.url,alt:f.name||"Image",$loaded:a,onLoad:()=>l(!0)})),y&&i.createElement(Lp,{controls:!0},i.createElement("source",{src:f.url,type:C})),E&&i.createElement(Rp,null,i.createElement(B,{variant:"h1",color:p.themedColor.textHighEmphasis},u.FILE_VIEWER__UNSUPPORT))),b&&i.createElement(Fs,{$position:"right",type:"chevron-right",size:22,color:p.color.ondark.textHighEmphasis,onClick:A,"aria-label":u.A11Y_IMAGE_VIEWER_NEXT,disabled:s===h-1})),i.createElement(Op,null,b&&i.createElement(B,{variant:"body2",color:p.color.ondark.textHighEmphasis},s+1,"/",h),v&&!E&&i.createElement(Np,{forwardedAs:"a",href:f.url,download:f.name||"file",type:"download",size:24,color:p.color.ondark.textHighEmphasis,"aria-label":u.A11Y_IMAGE_VIEWER_DOWNLOAD}))))},yp=_.default.div`position:fixed;inset:0;outline:none;display:flex;flex-direction:column;background-color:${p.themedColor.bg_50_600};`,Sp=_.default.header`display:flex;align-items:center;justify-content:space-between;padding:12px 12px 12px 16px;min-height:56px;background-color:${p.color.overlay.dark};`,Ap=_.default.div`flex:1;min-width:0;padding-right:8px;`,xp=_.default.div`display:flex;flex-direction:column;gap:2px;`,Tp=_.default(Je)`flex-shrink:0;width:28px;height:28px;border-radius:50%;`,Cn=_.default.div`display:flex;align-items:center;justify-content:center;`,Ip=_.default(Cn)`flex:1;min-height:0;position:relative;`,wp=_.default(Cn)`position:relative;max-width:100%;max-height:100%;`,Mp=_.default(Cn)`position:absolute;inset:0;`,kp=_.default.img`max-width:100%;max-height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;opacity:${e=>e.$loaded?1:0};transition:opacity 0.3s ease;`,Lp=_.default.video`max-width:100%;max-height:100%;object-fit:contain;`,Rp=_.default(Cn)`flex-direction:column;gap:16px;`,Fs=_.default(Je)`position:absolute;${e=>e.$position==="left"?"left: 12px;":"right: 12px;"}top:50%;z-index:1;width:38px;height:38px;transform:translateY(-50%) ${e=>e.$flipped?"scaleX(-1)":""};border-radius:50%;background-color:${p.color.overlay.dark};&:disabled{opacity:0.3;}`,Op=_.default.footer`position:relative;display:flex;align-items:center;justify-content:center;padding:16px;min-height:56px;background-color:${p.color.overlay.dark};`,Np=_.default(Je)`position:absolute;right:16px;top:50%;transform:translateY(-50%);padding:0;width:24px;height:24px;`,_i=({title:e,description:t,negativeText:n,positiveText:r,onCancel:s,onConfirm:o})=>i.createElement(Dp,null,i.createElement($p,null,i.createElement(B,{as:"div",variant:"h2",color:p.themedColor.textHighEmphasis},e)),i.createElement(Pp,null,i.createElement(B,{as:"div",variant:"body3",color:p.themedColor.textMidEmphasis},t)),i.createElement(Fp,null,i.createElement(Bp,{type:"button",onClick:s},i.createElement(B,{variant:"button",color:p.themedColor.textHighEmphasis},n)),i.createElement(Up,{type:"button",onClick:o},i.createElement(B,{variant:"button",color:p.themedColor.textHighEmphasisInverse},r)))),Dp=_.default.div`display:flex;flex-direction:column;width:280px;border-radius:16px;overflow:hidden;background-color:${p.color.background50};${X.dark`
383
- background-color: ${p.color.background500};
384
- `}
385
- `,$p=_.default.div`padding:24px 24px 16px;`,Pp=_.default.div`padding-inline:24px;`,Fp=_.default.div`display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:4px;padding:16px 24px;`,Bp=_.default.button`display:flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:0;cursor:pointer;border:none;background:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;&:hover{opacity:0.8;}`,Up=_.default.button`display:flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:20px;cursor:pointer;border:none;background-color:${p.themedColor.textHighEmphasis};white-space:nowrap;overflow:hidden;text-overflow:ellipsis;&:hover{opacity:0.8;}`,Zt=16,Hp=({status:e})=>e===rn.COMPLETED?i.createElement(Z,{type:"done-circle",size:Zt,color:p.themedColor.textHighEmphasis}):e===rn.CANCELED?i.createElement(Z,{type:"stop-circle",size:Zt,color:p.themedColor.textLowEmphasis}):i.createElement(dt,{size:Zt},i.createElement(Z,{type:"spinner",size:Zt,color:p.themedColor.textHighEmphasis})),Ei=24,Gp=8,Vp=40,zp=({task:e,isFirst:t,isLast:n})=>i.createElement(qp,{role:"listitem"},i.createElement(Wp,null,i.createElement(Bs,{$hidden:t}),i.createElement(Yp,null,i.createElement(Hp,{status:e.status})),i.createElement(Bs,{$hidden:n})),i.createElement(Kp,null,i.createElement(B,{as:"div",variant:"body3",color:e.status===rn.CANCELED?p.themedColor.textLowEmphasis:p.themedColor.textHighEmphasis},e.user_facing_title))),qp=_.default.div`display:flex;gap:4px;`,Wp=_.default.div`display:flex;flex-direction:column;align-items:center;width:${Ei}px;flex-shrink:0;`,Bs=_.default.div`width:1px;flex:1;transform:translateX(-25%);${({$hidden:e})=>e&&"visibility: hidden;"}background-image:repeating-linear-gradient( to bottom,${p.themedColor.textHighEmphasis}0 2px,transparent 2px 4px );`,Yp=_.default.div`display:flex;height:${Ei}px;align-items:center;justify-content:center;`,Kp=_.default.div`display:flex;flex:1;align-items:center;box-sizing:border-box;min-width:0;min-height:${Vp}px;padding-block:${Gp}px;`,jp=({steward:e,onCancelSteward:t})=>{const{logger:n}=fe(),[r,s]=c.useState(!1),[o,a]=c.useState(!1),l=!!e.cancellation_option,u=ji(e.status);return i.createElement(Xp,{$marginBottom:gn("single")},i.createElement(Zp,null,i.createElement(Jp,null,i.createElement(Qp,null,i.createElement(B,{as:"div",variant:"caption1",color:p.themedColor.textHighEmphasis},e.title),!!e.description&&i.createElement(B,{as:"div",variant:"caption4",color:p.themedColor.textLowEmphasis},e.description)),l&&i.createElement(r_,{type:"button","aria-label":"Stop steward",disabled:o,onClick:()=>s(!0)},i.createElement(Z,{type:"stop",size:16,color:o?p.themedColor.textDisabled:p.themedColor.textHighEmphasis}))),i.createElement(e_,null),e.tasks.length===0?u!==kt.IN_PROGRESS?null:i.createElement(n_,null,i.createElement(dt,{size:16},i.createElement(Z,{type:"spinner",size:16,color:p.themedColor.textHighEmphasis}))):i.createElement(t_,{role:"list"},e.tasks.map((d,m)=>i.createElement(zp,{key:d.id,task:d,isFirst:m===0,isLast:m===e.tasks.length-1})))),r&&e.cancellation_option&&i.createElement(ut,{portalContainerId:ve.WINDOW,visible:r,onClose:()=>s(!1)},i.createElement(_i,{title:e.cancellation_option.title,description:e.cancellation_option.description,negativeText:e.cancellation_option.negative_text,positiveText:e.cancellation_option.positive_text,onCancel:()=>s(!1),onConfirm:async()=>{s(!1),a(!0);try{await(t==null?void 0:t())}catch(d){n.warn("steward.cancelSteward: failed",d)}finally{a(!1)}}})))},Xp=_.default.div`display:flex;flex-direction:column;margin:0 ${ee.HORIZONTAL_PADDING}px;margin-bottom:${({$marginBottom:e})=>`${e}px`};
386
- `,Zp=_.default.div`display:flex;flex-direction:column;border-radius:12px;overflow:hidden;padding:16px;border:1px solid ${p.themedColor.bg_300_500};background-color:${p.themedColor.bg_50_600};box-shadow:0 8px 20px rgba(0,0,0,0.12);`,Jp=_.default.div`display:flex;flex-direction:row;align-items:flex-start;gap:8px;`,Qp=_.default.div`display:flex;flex-direction:column;gap:4px;flex:1;min-width:0;`,e_=_.default.div`height:1px;margin-block:12px;background-color:${p.themedColor.bg_200_400};`,t_=_.default.div`display:flex;flex-direction:column;`,n_=_.default.div`display:flex;width:100%;height:40px;align-items:center;justify-content:center;`,r_=_.default.button`width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:none;cursor:pointer;color:${p.themedColor.textHighEmphasis};background-color:${p.themedColor.bg_200_400};&:hover:not(:disabled){opacity:0.8;}&:disabled{cursor:default;}`,s_=({className:e,label:t,onClick:n})=>{const{colors:r}=P.useTheme(),{conversation:s}=se(),o=s.newMessagesButton;return i.createElement(o_,{className:e,onClick:n,...o.props},i.createElement(B,{variant:"button",color:r.base.primaryContrastContent},t),i.createElement(Z,{size:16,type:"chevron-down",color:r.base.primaryContrastContent}),o.descriptionNode)},o_=_.default.button`all:unset;cursor:pointer;display:flex;align-items:center;gap:4px;padding:10px 12px 10px 16px;border-radius:24px;background-color:${({theme:e})=>e.colors.base.primary};box-shadow:0 8px 10px 1px rgba(13,13,13,0.12),0 3px 14px 2px rgba(13,13,13,0.08),0 3px 5px -3px rgba(13,13,13,0.04);&:focus{outline:none;}${Ie}`,Tr=({iconSize:e=64,icon:t,className:n,label:r,children:s})=>i.createElement(a_,{className:n},t&&i.createElement(Z,{type:t,size:e,color:p.themedColor.textLowEmphasis}),r&&i.createElement(B,{variant:"body1",color:p.themedColor.textMidEmphasis},r),s),i_=_.default.div`position:relative;display:flex;justify-content:center;align-items:center;width:100%;height:100%;`,a_=_.default.div`display:flex;flex-direction:column;min-height:104px;align-items:center;gap:20px;text-align:center;`,l_=({label:e="Something went wrong",icon:t="error",action:n,...r})=>i.createElement(Tr,{icon:t,label:e,...r},n&&i.createElement(c_,{onClick:n.onClick,label:n.label??"Retry"})),c_=({label:e,onClick:t})=>{const{conversation:n}=se();return i.createElement(u_,{tabIndex:0,"aria-label":n.retryButton(e)["aria-label"],onClick:t},i.createElement(Z,{type:"refresh",size:20}),i.createElement(B,{variant:"button",color:p.color.primary.main},e))},u_=_.default.button`all:unset;display:flex;cursor:pointer;gap:4px;align-items:center;justify-content:center;${Ie}`,d_=({iconSize:e=48,className:t})=>i.createElement(dt,{size:e,className:t}),m_=({label:e="No channels",icon:t="chat",...n})=>i.createElement(Tr,{icon:t,label:e,...n}),h_=({label:e="No messages",icon:t="message",...n})=>i.createElement(Tr,{icon:t,label:e,...n}),f_=e=>{const{components:t}=vn.useContext(),n=e.type==="loading"?i.createElement(t.Loading,{...e}):e.type==="error"?i.createElement(t.Error,{...e}):e.type==="noChannels"?i.createElement(t.NoChannels,{...e}):e.type==="noMessages"?i.createElement(t.NoMessages,{...e}):null;return n&&i.createElement(i_,null,n)},vn=qe({template:f_,components:{Loading:d_,Error:l_,NoChannels:m_,NoMessages:h_}}),Lt=e=>{const{Template:t}=vn.useContext();return i.createElement(t,{...e})},g_=[0,150,450];function p_({enabled:e}){const{state:t,actions:n}=Wo(),r=c.useRef(0),s=c.useRef(t.isAwayFromBottom);s.current=t.isAwayFromBottom,c.useEffect(()=>{if(!e){r.current+=1;return}const o=r.current+1;r.current=o;const a=g_.map(l=>setTimeout(()=>{Oe(()=>{r.current===o&&(s.current||n.scrollToBottom(!1))})},l));return()=>{r.current+=1,a.forEach(l=>clearTimeout(l))}},[n.scrollToBottom,e])}const __=({className:e,date:t=Date.now(),style:n})=>{const{format:r,stringSet:s}=re();return i.createElement(E_,{id:`${He}-date-separator`,style:n,className:e},i.createElement(B,{variant:"caption4",color:p.themedColor.textMidEmphasis},r(t,s.DATE_FORMAT__MESSAGE_LIST__DATE_SEPARATOR)))},E_=_.default.div`display:flex;justify-content:center;align-items:center;text-align:center;word-break:break-word;`,b_=({className:e,style:t,onClick:n})=>{const{conversation:r}=se(),s=r.scrollToBottomButton;return i.createElement(C_,{className:e,style:t,onClick:n,tabIndex:0,...s.props},i.createElement(Z,{size:24,type:"chevron-down",color:p.color.primary.main}),s.descriptionNode??null)},C_=_.default.button`all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:24px;box-shadow:0 2px 8px 0 rgba(0,0,0,0.08),0 4px 6px 0 rgba(0,0,0,0.12);${X.light`
387
- background-color: ${p.color.background50};
382
+ `,Zt=p.default.div`display:flex;align-items:center;justify-content:center;flex-shrink:0;`,hn=p.default.div`display:flex;gap:8px;align-items:center;word-break:break-word;`,Sp=p.default(hn)`cursor:pointer;gap:4px;`,Un=p.default(hn)`flex-direction:row;align-items:center;`,zs=p.default.div`display:flex;gap:4px;flex-direction:column;align-items:flex-start;`,Oi=c.createContext(null);function Ap({testerType:e,origin:t,children:n}){return i.createElement(Oi.Provider,{value:{testerType:e,isActionbookTester:e==="actionbook",origin:t}},e&&i.createElement(xp,null),n)}const Ct=()=>{const e=c.useContext(Oi);if(!e)throw new Error("_UNSAFE_INTERNAL_DashboardTesterProvider not found");return e},xp=()=>{const{isActionbookTester:e}=Ct();return i.createElement(at.Template,{template:e?Tp:void 0},i.createElement(at.MessageLogs,{component:Ip}))},Tp=e=>i.createElement(wi,{...e,testerMode:!0,maxBodyWidth:ne.WIDE_BODY_MAX_WIDTH}),Ip=({extendedMessagePayload:e={}})=>{const{handlers:t}=fe(),{manual:n,groundedness:r,function_calls:s,agent_message_templates:o,is_thinking:a}=e;return a||!n&&!(r!=null&&r.length)&&!(s!=null&&s.length)&&!(o!=null&&o.length)?i.createElement(i.Fragment,null):i.createElement(wp,null,i.createElement(Mp,{$width:4}),i.createElement(Ri,{actionbook:n,functionCalls:s,groundedness:r,agentMessageTemplates:o,onClickFunctionCallDetail:t==null?void 0:t.onFunctionCallDetailClick,style:{iconColor:g.themedColor.textHighEmphasis,textColor:g.themedColor.textHighEmphasis,barColor:g.themedColor.textDisabled},bottomContent:i.createElement(kp,{variant:"caption2",color:g.themedColor.textLowEmphasis},"Only visible in the tester")}))},wp=p.default.div`display:flex;gap:16px;margin:16px ${ne.HORIZONTAL_PADDING}px 0;align-self:stretch;`,Mp=p.default.div`width:${({$width:e})=>e}px;background-color:${g.themedColor.textDisabled};border-radius:100px;flex-shrink:0;`,kp=p.default(U)`margin-top:5px;`,Ys=40,Ws=.9,Rp="[data-message-listitem]",Op='input, textarea, select, [role="textbox"], [contenteditable="true"]',Lp=({event:e,list:t,isMessageAnchor:n})=>{switch(e.key){case"PageDown":return t.clientHeight*Ws;case"PageUp":return t.clientHeight*-Ws;case"ArrowDown":return n?Ys:void 0;case"ArrowUp":return n?Ys*-1:void 0;default:return}},Np=({listRef:e,syncScrollPosition:t})=>c.useCallback(n=>{const r=e.current;if(!r||n.defaultPrevented||n.metaKey||n.altKey||n.ctrlKey)return;const s=n.target;if(!s||!r.contains(s)||s.closest(Op))return;const o=s===r||s.matches(Rp),a=Lp({event:n,list:r,isMessageAnchor:o});if(a==null||a===0)return;const l=Math.max(0,r.scrollHeight-r.clientHeight),u=Math.min(l,Math.max(0,r.scrollTop+a));u!==r.scrollTop&&(n.preventDefault(),t(u))},[e,t]),Dp="[data-message-listitem]",$p=e=>Math.min(Math.max(0,e),1),Pp=e=>{const n=e.getRootNode().activeElement,r=n==null?void 0:n.closest(Dp),s=n===e||n===r;return!n||!e.contains(n)?null:s?e:n},Fp=({list:e,focusRestoreTarget:t})=>{if(!t)return;const r=e.getRootNode().activeElement,s=r===e||e.contains(r),o=t===e||e.contains(t);s&&o&&t.focus({preventScroll:!0})},Bp=({depsForResetScrollPositionToBottom:e,listRef:t,loadThreshold:n,messagesLength:r,onLoadNext:s,onLoadPrev:o,onScroll:a})=>{const l=c.useRef(!1),u=c.useRef(void 0),d=c.useRef(0),m=c.useRef(0),h=c.useRef(null),f=c.useRef(null),v=c.useRef(null);c.useLayoutEffect(()=>{t.current&&(t.current.scrollTop=t.current.scrollHeight)},e),c.useLayoutEffect(()=>{const _=t.current;_&&(u.current==="top"&&(_.scrollTop=_.scrollHeight-m.current,Fp({list:_,focusRestoreTarget:h.current}),h.current=null),u.current==="bottom"&&(_.scrollTop=d.current),u.current=void 0)},[t,r]);const C=c.useCallback(async _=>{const b=t.current;if(!b||(a==null||a(_),m.current=b.scrollHeight-b.scrollTop,d.current=b.scrollTop,l.current))return;const A=b.clientHeight*$p(n);if(b.scrollTop<=A){l.current=!0,u.current="top",h.current=Pp(b),await o(),l.current=!1;return}if(b.scrollHeight-b.scrollTop-b.clientHeight<=A){l.current=!0,u.current="bottom",await s(),l.current=!1;return}u.current=void 0},[t,n,s,o,a]),y=c.useCallback(_=>{const b=t.current;if(!b)return;const A=v.current;if(A!=null){if(A===b.scrollTop){v.current=null;return}v.current=null}const M=f.current;if(M!=null&&M===b.scrollTop){f.current=null,v.current=b.scrollTop,C(_);return}f.current=null,C(_)},[C,t]),E=c.useCallback(_=>{const b=t.current;b&&(f.current=_,v.current=null,b.scrollTop=_,b.dispatchEvent(new Event("scroll",{bubbles:!0})))},[t]);return c.useLayoutEffect(()=>()=>{f.current=null,v.current=null},[]),{handleScroll:y,syncScrollPosition:E}},Up=c.forwardRef(function(t,n){const{messages:r,renderMessage:s,loading:o,LoadingComponent:a,error:l,ErrorComponent:u,empty:d,EmptyComponent:m,messageTopArea:h,messageBottomArea:f,overlayArea:v,onLoadPrev:C,onLoadNext:y,loadThreshold:E=.05,onScroll:_=he,depsForResetScrollPositionToBottom:b,stackDirection:A="top",bottomSpacerHeight:M=0,"aria-label":B}=t,w=c.useRef(null),O=c.useCallback(D=>{w.current=D,n&&(typeof n=="function"?n(D):n.current=D)},[n]),{handleScroll:k,syncScrollPosition:R}=Bp({depsForResetScrollPositionToBottom:b,listRef:w,loadThreshold:E,messagesLength:r.length,onLoadNext:y,onLoadPrev:C,onScroll:_}),W=Np({listRef:w,syncScrollPosition:R});return l?i.createElement(i.Fragment,null,u):o?i.createElement(i.Fragment,null,a):i.createElement(Hp,{id:"infinite-list-container"},i.createElement(Gp,{id:"infinite-list-inner",ref:O,onScroll:k,onKeyDown:W,role:"list","aria-label":B,tabIndex:0},A==="bottom"&&i.createElement("div",{style:{flexGrow:1}}),h,d?m:r.map((D,F)=>s({message:D,index:F})),f,M>0&&i.createElement("div",{style:{minHeight:M}})),i.createElement(Vp,{id:"infinite-list-overlay-container"},i.createElement(zp,{id:"infinite-list-overlay"},v)))}),Hp=p.default.div`display:flex;position:relative;flex:1;overflow:hidden;`,Gp=p.default.div`display:flex;flex:1;flex-direction:column;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:${g.themedColor.textLowEmphasis}transparent;&::-webkit-scrollbar-thumb:hover{background-color:transparent;}`,Vp=p.default.div`position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:none;`,zp=p.default.div`pointer-events:auto;`,Qe=({as:e,type:t,size:n=16,color:r,disabled:s,children:o,...a})=>{const l=s?g.themedColor.textDisabled:g.themedColor.textHighEmphasis;return i.createElement(Yp,{as:e,disabled:s,...a},i.createElement(ee,{type:t,size:n,color:r??l}),o)},Yp=p.default.button`all:unset;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;${we}&:disabled{cursor:not-allowed;}`,Wp=({files:e,initialIndex:t=0,onClose:n,visible:r})=>{var B,w;const[s,o]=c.useState(t),[a,l]=c.useState(!1),{stringSet:u,format:d}=ie(),{config:m}=fe(),h=e.length,f=e[s],v=((w=(B=m==null?void 0:m.conversation)==null?void 0:B.fileViewer)==null?void 0:w.downloadEnabled)!==!1,C=h>1,y=(f==null?void 0:f.type)||"",E=tt(y),_=ar(y),b=!Sm(y);c.useEffect(()=>{r&&(o(t),l(!1))},[r,t]);const A=c.useCallback(()=>{s>0&&(o(O=>O-1),l(!1))},[s]),M=c.useCallback(()=>{s<h-1&&(o(O=>O+1),l(!1))},[s,h]);return c.useEffect(()=>{if(!r)return;const O=k=>{k.key==="ArrowLeft"?A():k.key==="ArrowRight"&&M()};return window.addEventListener("keydown",O),()=>window.removeEventListener("keydown",O)},[r,A,M]),!r||!f?null:i.createElement(lt,{onClose:n,visible:r,portalContainerId:_e.MODAL_ROOT,"aria-label":(f==null?void 0:f.name)||u.IMAGE_VIEWER__DEFAULT_TITLE},i.createElement(qp,null,i.createElement(Kp,null,i.createElement(jp,null,i.createElement(Xp,null,i.createElement(U,{variant:"button",maxTextLines:1,color:g.color.ondark.textHighEmphasis},f.name||u.IMAGE_VIEWER__DEFAULT_TITLE),f.timestamp&&i.createElement(U,{variant:"caption2",color:g.color.ondark.textHighEmphasis},d(new Date(f.timestamp),"h:mm a")))),i.createElement(Zp,{type:"close",size:18,color:g.color.ondark.textHighEmphasis,"aria-label":u.A11Y_IMAGE_VIEWER_CLOSE,onClick:n})),i.createElement(Jp,{onClick:O=>O.currentTarget===O.target&&n()},C&&i.createElement(qs,{$position:"left",type:"chevron-right",size:22,color:g.color.ondark.textHighEmphasis,onClick:A,"aria-label":u.A11Y_IMAGE_VIEWER_PREVIOUS,disabled:s===0,$flipped:!0}),i.createElement(Qp,null,E&&i.createElement(i.Fragment,null,!a&&i.createElement(e_,null,i.createElement(mt,{size:32},i.createElement(ee,{type:"spinner",color:"textLowEmphasis",size:32}))),i.createElement(t_,{src:f.url,alt:f.name||"Image",$loaded:a,onLoad:()=>l(!0)})),_&&i.createElement(n_,{controls:!0},i.createElement("source",{src:f.url,type:y})),b&&i.createElement(r_,null,i.createElement(U,{variant:"h1",color:g.themedColor.textHighEmphasis},u.FILE_VIEWER__UNSUPPORT))),C&&i.createElement(qs,{$position:"right",type:"chevron-right",size:22,color:g.color.ondark.textHighEmphasis,onClick:M,"aria-label":u.A11Y_IMAGE_VIEWER_NEXT,disabled:s===h-1})),i.createElement(s_,null,C&&i.createElement(U,{variant:"body2",color:g.color.ondark.textHighEmphasis},s+1,"/",h),v&&!b&&i.createElement(o_,{forwardedAs:"a",href:f.url,download:f.name||"file",type:"download",size:24,color:g.color.ondark.textHighEmphasis,"aria-label":u.A11Y_IMAGE_VIEWER_DOWNLOAD}))))},qp=p.default.div`position:fixed;inset:0;outline:none;display:flex;flex-direction:column;background-color:${g.themedColor.bg_50_600};`,Kp=p.default.header`display:flex;align-items:center;justify-content:space-between;padding:12px 12px 12px 16px;min-height:56px;background-color:${g.color.overlay.dark};`,jp=p.default.div`flex:1;min-width:0;padding-right:8px;`,Xp=p.default.div`display:flex;flex-direction:column;gap:2px;`,Zp=p.default(Qe)`flex-shrink:0;width:28px;height:28px;border-radius:50%;`,yn=p.default.div`display:flex;align-items:center;justify-content:center;`,Jp=p.default(yn)`flex:1;min-height:0;position:relative;`,Qp=p.default(yn)`position:relative;max-width:100%;max-height:100%;`,e_=p.default(yn)`position:absolute;inset:0;`,t_=p.default.img`max-width:100%;max-height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;opacity:${e=>e.$loaded?1:0};transition:opacity 0.3s ease;`,n_=p.default.video`max-width:100%;max-height:100%;object-fit:contain;`,r_=p.default(yn)`flex-direction:column;gap:16px;`,qs=p.default(Qe)`position:absolute;${e=>e.$position==="left"?"left: 12px;":"right: 12px;"}top:50%;z-index:1;width:38px;height:38px;transform:translateY(-50%) ${e=>e.$flipped?"scaleX(-1)":""};border-radius:50%;background-color:${g.color.overlay.dark};&:disabled{opacity:0.3;}`,s_=p.default.footer`position:relative;display:flex;align-items:center;justify-content:center;padding:16px;min-height:56px;background-color:${g.color.overlay.dark};`,o_=p.default(Qe)`position:absolute;right:16px;top:50%;transform:translateY(-50%);padding:0;width:24px;height:24px;`,Rr=({title:e,titleId:t,description:n,descriptionId:r,negativeText:s,positiveText:o,onCancel:a,onConfirm:l,buttonLayout:u="horizontal",styles:d})=>{const m=s!==void 0&&a!==void 0,h=o!==void 0&&l!==void 0,f=m?i.createElement(u_,{type:"button",onClick:a,$fullWidth:u!=="horizontal",$background:d==null?void 0:d.negativeBackground,$borderColor:d==null?void 0:d.negativeBorderColor},i.createElement(U,{variant:"button",color:(d==null?void 0:d.negativeText)??g.themedColor.textHighEmphasis},s)):null,v=h?i.createElement(d_,{type:"button",onClick:l,$fullWidth:u!=="horizontal",$background:d==null?void 0:d.positiveBackground,$borderColor:d==null?void 0:d.positiveBorderColor},i.createElement(U,{variant:"button",color:(d==null?void 0:d.positiveText)??g.themedColor.textHighEmphasisInverse},o)):null;return i.createElement(i_,null,i.createElement(a_,null,i.createElement(U,{as:"div",id:t,variant:"h2",color:(d==null?void 0:d.titleColor)??g.themedColor.textHighEmphasis},e)),i.createElement(l_,null,i.createElement(U,{as:"div",id:r,variant:"body3",color:(d==null?void 0:d.descriptionColor)??g.themedColor.textMidEmphasis},n)),i.createElement(c_,{$buttonLayout:u},u==="horizontal"?i.createElement(i.Fragment,null,f,v):i.createElement(i.Fragment,null,v,f)))},i_=p.default.div`display:flex;flex-direction:column;width:280px;border-radius:16px;overflow:hidden;background-color:${({theme:e})=>e.colors.base.modalContentBackground};`,a_=p.default.div`padding:24px 24px 16px;`,l_=p.default.div`padding-inline:24px;`,c_=p.default.div`display:flex;flex-direction:${({$buttonLayout:e})=>e==="vertical-full-width"?"column":"row"};align-items:center;justify-content:flex-end;gap:4px;padding:16px 24px;`,u_=p.default.button`display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:${({$fullWidth:e})=>e?"100%":"auto"};padding:12px 20px;border-radius:20px;cursor:pointer;border:1px solid ${({$borderColor:e})=>e??"transparent"};background:${({$background:e})=>e??"none"};white-space:nowrap;overflow:hidden;text-overflow:ellipsis;&:hover{opacity:0.8;}`,d_=p.default.button`display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:${({$fullWidth:e})=>e?"100%":"auto"};padding:12px 20px;border-radius:20px;cursor:pointer;border:1px solid ${({$borderColor:e})=>e??"transparent"};background-color:${({$background:e})=>e??g.themedColor.textHighEmphasis};white-space:nowrap;overflow:hidden;text-overflow:ellipsis;&:hover{opacity:0.8;}`,Jt=16,m_=({status:e})=>e===nn.COMPLETED?i.createElement(ee,{type:"done-circle",size:Jt,color:g.themedColor.textHighEmphasis}):e===nn.CANCELED?i.createElement(ee,{type:"stop-circle",size:Jt,color:g.themedColor.textLowEmphasis}):i.createElement(mt,{size:Jt},i.createElement(ee,{type:"spinner",size:Jt,color:g.themedColor.textHighEmphasis})),Li=24,h_=8,f_=40,g_=({task:e,isFirst:t,isLast:n})=>i.createElement(p_,{role:"listitem"},i.createElement(__,null,i.createElement(Ks,{$hidden:t}),i.createElement(E_,null,i.createElement(m_,{status:e.status})),i.createElement(Ks,{$hidden:n})),i.createElement(b_,null,i.createElement(U,{as:"div",variant:"body3",color:e.status===nn.CANCELED?g.themedColor.textLowEmphasis:g.themedColor.textHighEmphasis},e.user_facing_title))),p_=p.default.div`display:flex;gap:4px;`,__=p.default.div`display:flex;flex-direction:column;align-items:center;width:${Li}px;flex-shrink:0;`,Ks=p.default.div`width:1px;flex:1;transform:translateX(-25%);${({$hidden:e})=>e&&"visibility: hidden;"}background-image:repeating-linear-gradient( to bottom,${g.themedColor.textHighEmphasis}0 2px,transparent 2px 4px );`,E_=p.default.div`display:flex;height:${Li}px;align-items:center;justify-content:center;`,b_=p.default.div`display:flex;flex:1;align-items:center;box-sizing:border-box;min-width:0;min-height:${f_}px;padding-block:${h_}px;`,C_=({steward:e,onCancelSteward:t})=>{const{logger:n}=fe(),[r,s]=c.useState(!1),[o,a]=c.useState(!1),l=!!e.cancellation_option,u=da(e.status);return i.createElement(v_,{$marginBottom:fn("single")},i.createElement(y_,null,i.createElement(S_,null,i.createElement(A_,null,i.createElement(U,{as:"div",variant:"caption1",color:g.themedColor.textHighEmphasis},e.title),!!e.description&&i.createElement(U,{as:"div",variant:"caption4",color:g.themedColor.textLowEmphasis},e.description)),l&&i.createElement(w_,{type:"button","aria-label":"Stop steward",disabled:o,onClick:()=>s(!0)},i.createElement(ee,{type:"stop",size:16,color:o?g.themedColor.textDisabled:g.themedColor.textHighEmphasis}))),i.createElement(x_,null),e.tasks.length===0?u!==kt.IN_PROGRESS?null:i.createElement(I_,null,i.createElement(mt,{size:16},i.createElement(ee,{type:"spinner",size:16,color:g.themedColor.textHighEmphasis}))):i.createElement(T_,{role:"list"},e.tasks.map((d,m)=>i.createElement(g_,{key:d.id,task:d,isFirst:m===0,isLast:m===e.tasks.length-1})))),r&&e.cancellation_option&&i.createElement(lt,{portalContainerId:_e.WINDOW,visible:r,onClose:()=>s(!1)},i.createElement(Rr,{title:e.cancellation_option.title,description:e.cancellation_option.description,negativeText:e.cancellation_option.negative_text,positiveText:e.cancellation_option.positive_text,onCancel:()=>s(!1),onConfirm:async()=>{s(!1),a(!0);try{await(t==null?void 0:t())}catch(d){n.warn("steward.cancelSteward: failed",d)}finally{a(!1)}}})))},v_=p.default.div`display:flex;flex-direction:column;margin:0 ${ne.HORIZONTAL_PADDING}px;margin-bottom:${({$marginBottom:e})=>`${e}px`};
383
+ `,y_=p.default.div`display:flex;flex-direction:column;border-radius:12px;overflow:hidden;padding:16px;border:1px solid ${g.themedColor.bg_300_500};background-color:${g.themedColor.bg_50_600};box-shadow:0 8px 20px rgba(0,0,0,0.12);`,S_=p.default.div`display:flex;flex-direction:row;align-items:flex-start;gap:8px;`,A_=p.default.div`display:flex;flex-direction:column;gap:4px;flex:1;min-width:0;`,x_=p.default.div`height:1px;margin-block:12px;background-color:${g.themedColor.bg_200_400};`,T_=p.default.div`display:flex;flex-direction:column;`,I_=p.default.div`display:flex;width:100%;height:40px;align-items:center;justify-content:center;`,w_=p.default.button`width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:none;cursor:pointer;color:${g.themedColor.textHighEmphasis};background-color:${g.themedColor.bg_200_400};&:hover:not(:disabled){opacity:0.8;}&:disabled{cursor:default;}`,M_=({className:e,label:t,onClick:n})=>{const{colors:r}=P.useTheme(),{conversation:s}=se(),o=s.newMessagesButton;return i.createElement(k_,{className:e,onClick:n,...o.props},i.createElement(U,{variant:"button",color:r.base.primaryContrastContent},t),i.createElement(ee,{size:16,type:"chevron-down",color:r.base.primaryContrastContent}),o.descriptionNode)},k_=p.default.button`all:unset;cursor:pointer;display:flex;align-items:center;gap:4px;padding:10px 12px 10px 16px;border-radius:24px;background-color:${({theme:e})=>e.colors.base.primary};box-shadow:0 8px 10px 1px rgba(13,13,13,0.12),0 3px 14px 2px rgba(13,13,13,0.08),0 3px 5px -3px rgba(13,13,13,0.04);&:focus{outline:none;}${we}`,Or=({iconSize:e=64,icon:t,className:n,label:r,children:s})=>i.createElement(O_,{className:n},t&&i.createElement(ee,{type:t,size:e,color:g.themedColor.textLowEmphasis}),r&&i.createElement(U,{variant:"body1",color:g.themedColor.textMidEmphasis},r),s),R_=p.default.div`position:relative;display:flex;justify-content:center;align-items:center;width:100%;height:100%;`,O_=p.default.div`display:flex;flex-direction:column;min-height:104px;align-items:center;gap:20px;text-align:center;`,L_=({label:e="Something went wrong",icon:t="error",action:n,...r})=>i.createElement(Or,{icon:t,label:e,...r},n&&i.createElement(N_,{onClick:n.onClick,label:n.label??"Retry"})),N_=({label:e,onClick:t})=>{const{conversation:n}=se();return i.createElement(D_,{tabIndex:0,"aria-label":n.retryButton(e)["aria-label"],onClick:t},i.createElement(ee,{type:"refresh",size:20}),i.createElement(U,{variant:"button",color:g.color.primary.main},e))},D_=p.default.button`all:unset;display:flex;cursor:pointer;gap:4px;align-items:center;justify-content:center;${we}`,$_=({iconSize:e=48,className:t})=>i.createElement(mt,{size:e,className:t}),P_=({label:e="No channels",icon:t="chat",...n})=>i.createElement(Or,{icon:t,label:e,...n}),F_=({label:e="No messages",icon:t="message",...n})=>i.createElement(Or,{icon:t,label:e,...n}),B_=e=>{const{components:t}=Sn.useContext(),n=e.type==="loading"?i.createElement(t.Loading,{...e}):e.type==="error"?i.createElement(t.Error,{...e}):e.type==="noChannels"?i.createElement(t.NoChannels,{...e}):e.type==="noMessages"?i.createElement(t.NoMessages,{...e}):null;return n&&i.createElement(R_,null,n)},Sn=Ye({template:B_,components:{Loading:$_,Error:L_,NoChannels:P_,NoMessages:F_}}),Rt=e=>{const{Template:t}=Sn.useContext();return i.createElement(t,{...e})},U_=[0,150,450];function H_({enabled:e}){const{state:t,actions:n}=ai(),r=c.useRef(0),s=c.useRef(t.isAwayFromBottom);s.current=t.isAwayFromBottom,c.useEffect(()=>{if(!e){r.current+=1;return}const o=r.current+1;r.current=o;const a=U_.map(l=>setTimeout(()=>{$e(()=>{r.current===o&&(s.current||n.scrollToBottom(!1))})},l));return()=>{r.current+=1,a.forEach(l=>clearTimeout(l))}},[n.scrollToBottom,e])}const G_=({className:e,date:t=Date.now(),style:n})=>{const{format:r,stringSet:s}=ie();return i.createElement(V_,{id:`${Be}-date-separator`,style:n,className:e},i.createElement(U,{variant:"caption4",color:g.themedColor.textMidEmphasis},r(t,s.DATE_FORMAT__MESSAGE_LIST__DATE_SEPARATOR)))},V_=p.default.div`display:flex;justify-content:center;align-items:center;text-align:center;word-break:break-word;`,z_=({className:e,style:t,onClick:n})=>{const{conversation:r}=se(),s=r.scrollToBottomButton;return i.createElement(Y_,{className:e,style:t,onClick:n,tabIndex:0,...s.props},i.createElement(ee,{size:24,type:"chevron-down",color:g.color.primary.main}),s.descriptionNode??null)},Y_=p.default.button`all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:24px;box-shadow:0 2px 8px 0 rgba(0,0,0,0.08),0 4px 6px 0 rgba(0,0,0,0.12);${Q.light`
384
+ background-color: ${g.color.background50};
388
385
  &:hover {
389
- background-color: ${p.color.background100};
386
+ background-color: ${g.color.background100};
390
387
  }
391
388
  &:active {
392
- background-color: ${p.color.background200};
389
+ background-color: ${g.color.background200};
393
390
  }
394
391
  `}
395
- ${X.dark`
396
- background-color: ${p.color.background400};
392
+ ${Q.dark`
393
+ background-color: ${g.color.background400};
397
394
  &:hover {
398
- background-color: ${p.color.background500};
395
+ background-color: ${g.color.background500};
399
396
  }
400
397
  &:active {
401
- background-color: ${p.color.background700};
398
+ background-color: ${g.color.background700};
402
399
  }
403
400
  `}
404
401
 
@@ -406,61 +403,64 @@
406
403
  outline: none;
407
404
  }
408
405
 
409
- ${Ie}
410
- `,v_=()=>null,yn=qe({template:v_,components:{DateSeparator:__,ScrollToBottomButton:b_}}),y_=()=>{const{stringSet:e,format:t}=re(),{agentPreviewConfigs:n={},aiAgentId:r}=fe(),{aiAgentInfo:s}=Ne(),{messageSource:o}=ye(),{Template:a}=rt.useContext(),{components:l}=yn.useContext(),u=n.welcomeMessages??[],d=o.messages,m=nm(d,r),h=d[m.length+1],f=m[0]??h;return{filteredMessages:Ko(d,{previewWelcomeMessages:u,aiAgentUserId:r}),shouldShowOriginalDate:v=>v>0||u.length===0?!0:h&&!et.isSameDay(h.createdAt,(f==null?void 0:f.createdAt)??0),renderAgentPreviewWelcomeMessages:()=>u.length===0?null:i.createElement(i.Fragment,null,i.createElement(l.DateSeparator,{style:{margin:"16px 0"},date:f==null?void 0:f.createdAt}),u.map((v,b)=>{const C=b===u.length-1,g=m.length!==d.length,y=u.length===1?"single":b===0?"top":C||g?"bottom":"middle",E=(f==null?void 0:f.createdAt)??Date.now();return i.createElement("div",{key:b,role:"listitem",tabIndex:-1,"aria-label":pt({sender:(s==null?void 0:s.nickname)||"",message:v.message,messageFormat:"markdown",time:t(E,e.DATE_FORMAT__MESSAGE_TIMESTAMP),codeBlockPlaceholder:e.A11Y_CODE_BLOCK_PLACEHOLDER}),"data-message-listitem":""},i.createElement(a,{messageType:"user",message:v.message,sender:s,groupType:y,createdAt:E,extendedMessagePayload:{suggested_replies:v.suggestedReplies},suggestedRepliesDirection:n.suggestedRepliesDirection,suggestedRepliesVisible:C&&!g,isBotMessage:!0,onClickSuggestedReply:async({reply:I})=>{o.sendUserMessage({message:I})}}))}))}},S_=()=>{const{messageSource:e,scrollSource:t}=ye();c.useEffect(()=>{!t.state.isAwayFromBottom&&t.state.isScrollPositionReconciled&&e.resetNewMessages()},[t.state.isAwayFromBottom,t.state.isScrollPositionReconciled])},A_=({style:e})=>{const{stringSet:t}=re(),{conversation:n}=se(),{isActionbookTester:r}=St();return!mr("powered-by")||r?null:i.createElement(x_,{variant:"caption2",style:e},t.POWERED_BY+" ",i.createElement(T_,{variant:"caption2",forwardedAs:"a",href:"https://delight.ai?utm_medium=product&utm_source=aiagent&utm_campaign=fy26-glbl-ai-agent-poweredby",...n.poweredByLink,rel:pr,target:"_blank"},"Sendbird"))},x_=_.default(B)`color:${p.themedColor.textLowEmphasis};text-align:center;`,T_=_.default(B)`color:${p.themedColor.textLowEmphasis};cursor:pointer;text-decoration:none;`,I_=()=>{var u;const{stringSet:e}=re(),{conversation:t}=se(),{channelSource:n,goToActiveConversation:r,scrollSource:s}=ye(),o=De(n.channel),a=c.useRef(o);if(c.useEffect(()=>{if(!a.current&&o){const h=setTimeout(()=>{s.actions.scrollToBottom()},100);return()=>clearTimeout(h)}a.current=o},[o,s.actions.scrollToBottom]),!((u=n.channel)!=null&&u.isAIAgent)||!o)return null;const l=t.startNewConversationButton({onActivate:r});return i.createElement(w_,null,i.createElement(M_,{variant:"button",color:p.themedColor.textHighEmphasis,...l},e.TALK_TO_AGENT))},w_=_.default.div`display:flex;justify-content:center;margin-bottom:16px;`,M_=_.default(B)`border-radius:6px;box-sizing:border-box;padding:10px 20px;cursor:pointer;user-select:none;background-color:${p.color.background50};border:1px solid ${p.color.onlight.textDisabled};${X.dark`
411
- background-color: ${p.color.background700};
412
- border-color: ${p.color.ondark.textLowEmphasis};
406
+ ${we}
407
+ `,W_=()=>null,An=Ye({template:W_,components:{DateSeparator:G_,ScrollToBottomButton:z_}}),q_=()=>{const{stringSet:e,format:t}=ie(),{agentPreviewConfigs:n={},aiAgentId:r}=fe(),{aiAgentInfo:s}=Re(),{messageSource:o}=Se(),{Template:a}=at.useContext(),{components:l}=An.useContext(),u=n.welcomeMessages??[],d=o.messages,m=xm(d,r),h=d[m.length+1],f=m[0]??h;return{filteredMessages:ui(d,{previewWelcomeMessages:u,aiAgentUserId:r}),shouldShowOriginalDate:v=>v>0||u.length===0?!0:h&&!nt.isSameDay(h.createdAt,(f==null?void 0:f.createdAt)??0),renderAgentPreviewWelcomeMessages:()=>u.length===0?null:i.createElement(i.Fragment,null,i.createElement(l.DateSeparator,{style:{margin:"16px 0"},date:f==null?void 0:f.createdAt}),u.map((v,C)=>{const y=C===u.length-1,E=m.length!==d.length,_=u.length===1?"single":C===0?"top":y||E?"bottom":"middle",b=(f==null?void 0:f.createdAt)??Date.now();return i.createElement("div",{key:C,role:"listitem",tabIndex:-1,"aria-label":It({sender:(s==null?void 0:s.nickname)||"",message:v.message,messageFormat:"markdown",time:t(b,e.DATE_FORMAT__MESSAGE_TIMESTAMP),codeBlockPlaceholder:e.A11Y_CODE_BLOCK_PLACEHOLDER}),"data-message-listitem":""},i.createElement(a,{messageType:"user",message:v.message,sender:s,groupType:_,createdAt:b,extendedMessagePayload:{suggested_replies:v.suggestedReplies},suggestedRepliesDirection:n.suggestedRepliesDirection,suggestedRepliesVisible:y&&!E,isBotMessage:!0,onClickSuggestedReply:async({reply:A})=>{o.sendUserMessage({message:A})}}))}))}},K_=()=>{const{messageSource:e,scrollSource:t}=Se();c.useEffect(()=>{!t.state.isAwayFromBottom&&t.state.isScrollPositionReconciled&&e.resetNewMessages()},[t.state.isAwayFromBottom,t.state.isScrollPositionReconciled])},j_=({style:e})=>{const{stringSet:t}=ie(),{conversation:n}=se(),{isActionbookTester:r}=Ct();return!_r("powered-by")||r?null:i.createElement(X_,{variant:"caption2",style:e},t.POWERED_BY+" ",i.createElement(Z_,{variant:"caption2",forwardedAs:"a",href:"https://delight.ai?utm_medium=product&utm_source=aiagent&utm_campaign=fy26-glbl-ai-agent-poweredby",...n.poweredByLink,rel:vr,target:"_blank"},"Sendbird"))},X_=p.default(U)`color:${g.themedColor.textLowEmphasis};text-align:center;`,Z_=p.default(U)`color:${g.themedColor.textLowEmphasis};cursor:pointer;text-decoration:none;`,J_=()=>{var u;const{stringSet:e}=ie(),{conversation:t}=se(),{channelSource:n,goToActiveConversation:r,scrollSource:s}=Se(),o=De(n.channel),a=c.useRef(o);if(c.useEffect(()=>{if(!a.current&&o){const h=setTimeout(()=>{s.actions.scrollToBottom()},100);return()=>clearTimeout(h)}a.current=o},[o,s.actions.scrollToBottom]),!((u=n.channel)!=null&&u.isAIAgent)||!o)return null;const l=t.startNewConversationButton({onActivate:r});return i.createElement(Q_,null,i.createElement(eE,{variant:"button",color:g.themedColor.textHighEmphasis,...l},e.TALK_TO_AGENT))},Q_=p.default.div`display:flex;justify-content:center;margin-bottom:16px;`,eE=p.default(U)`border-radius:6px;box-sizing:border-box;padding:10px 20px;cursor:pointer;user-select:none;background-color:${g.color.background50};border:1px solid ${g.color.onlight.textDisabled};${Q.dark`
408
+ background-color: ${g.color.background700};
409
+ border-color: ${g.color.ondark.textLowEmphasis};
413
410
  `}
414
- `,k_=()=>{var Q,ae,de,we;const{Template:e}=Pt.useContext(),{Template:t}=rt.useContext(),{Template:n}=bn.useContext(),{components:r}=yn.useContext(),{stringSet:s,format:o}=re(),{conversation:a}=se(),{config:l,cache:u,agentPreviewConfigs:d,chatSDK:m,state:h}=fe(),{userSession:f,aiAgentInfo:v,connectionError:b}=Ne(),{conversation:C,channelSource:g,messageSource:y,scrollSource:E,state:{input:I,streamAnimation:A}}=ye(),{isActionbookTester:w}=St(),{filteredMessages:k,shouldShowOriginalDate:N,renderAgentPreviewWelcomeMessages:W}=y_(),G=vo(g.channel),[K,L]=c.useState(null),[V,Y]=c.useState(null);c.useEffect(()=>{E.actions.onTypingIndicatorUpdate(!!G)},[!!G,E.actions.onTypingIndicatorUpdate]),S_(),p_({enabled:y.initialized&&y.messages.length>0});const x=(T,F=!1)=>{var z;return F?v:((z=g.channel)==null?void 0:z.members.find(J=>J.userId===T.sender.userId))??T.sender},D=T=>{if(T.sendingStatus==="failed"&&!I.disabled)return()=>Y(T)},$=({message:T,index:F})=>{const z=Xi(T),J=k[F-1],me=k[F+1],pe=k[k.length-1],Pe=T===pe,Me=Et(T,v.userId),M=!(v.isUserFeedbackEnabled&&Me&&!Ke.isWelcomeMessage(T)),R=Zi(T,J,me,M),O=!qi.isSameDay((J==null?void 0:J.createdAt)??0,T.createdAt)&&N(F)&&!w,j=ge=>{L({files:ge.files.map(be=>({...be,timestamp:T.createdAt})),index:ge.index})},q=ge=>{j({files:[ge],index:0})},U=()=>{T.isFileMessage()&&br(T.url)},H=O?i.createElement(r.DateSeparator,{style:{margin:"16px 0"},date:T.createdAt}):null,oe={data:T.data,maxBodyWidth:h.expanded?ee.WIDE_BODY_MAX_WIDTH:void 0,extendedMessagePayload:T.extendedMessagePayload,createdAt:T.createdAt,groupType:R,onClickMedia:q,onClickMediaFiles:j,onClickFile:U},Ge=()=>{if(Te.isOutgoing(T,f.userId))return"outgoingmessage";if(Te.isIncoming(T,f.userId))return"incomingmessage"},ne=T.createdAt!=null&&T.createdAt!==0?o(T.createdAt,s.DATE_FORMAT__MESSAGE_TIMESTAMP):void 0,ie=(()=>{var be,ke,Le,te,Se,Be;const ge=(be=T.message)==null?void 0:be.trim();if(T.isFileMessage()){const Bt=((ke=T.name)==null?void 0:ke.trim())||"";return _t({markdownText:ge,comparisonText:Bt,plainText:a.file.label(Bt,T.type)})}if(T.isMultipleFilesMessage()){const Bt=((Se=(te=(Le=T.fileInfoList)==null?void 0:Le[0])==null?void 0:te.fileName)==null?void 0:Se.trim())||"",Or=((Be=T.fileInfoList)==null?void 0:Be.length)??0;return _t({markdownText:ge,comparisonText:Bt,plainText:Or>0?s.CONVERSATION_LIST__MULTIPLE_FILES_COUNT(Or):""})}return ge?_t({markdownText:ge}):fr("")})(),ce=(()=>{if(Te.isAdmin(T))return pt({message:ie.text,messageFormat:ie.format,codeBlockPlaceholder:s.A11Y_CODE_BLOCK_PLACEHOLDER});if(Te.isOutgoing(T,f.userId))return pt({sender:s.A11Y_MESSAGE_SENDER_YOU,message:ie.text,messageFormat:"plain",time:ne,codeBlockPlaceholder:s.A11Y_CODE_BLOCK_PLACEHOLDER});if(Te.isIncoming(T,f.userId))return pt({sender:x(T,Me).nickname,message:ie.text,messageFormat:ie.format,time:ne,codeBlockPlaceholder:s.A11Y_CODE_BLOCK_PLACEHOLDER})})(),ue=(()=>{var ge,be,ke;if(Te.isAdmin(T))return Te.isCSAT(T)?C?i.createElement(n,{...oe,...C,isResolvedWhenDeterminedByUser:Sa(C),messageType:"admin.csat",onSubmitCSAT:async Le=>{var te;await((te=g.channel)==null?void 0:te.submitCSAT(Le))},onScrollToBottom:()=>E.actions.scrollToBottom()}):null:i.createElement(n,{...oe,messageType:"admin",message:T.message});if(Te.isSteward(T))return i.createElement(jp,{steward:T.extendedMessagePayload.steward,onCancelSteward:async()=>{await m.aiAgent.cancelStewardTask({channelUrl:T.channelUrl,messageId:T.messageId})}});if(Te.isOutgoing(T,f.userId)){const Le={...oe,message:T.message,sender:x(T),sendingStatus:T.sendingStatus,onClickFailedMessage:D(T)};if(T.isUserMessage())return i.createElement(e,{messageType:"user",...Le});if(T.isFileMessage()){const[te,Se]=((ge=T.metaArrays.find(Be=>Be.key===Qs))==null?void 0:ge.value)??[];return i.createElement(e,{messageType:"file",file:T,metadata:{aspectRatio:te&&Se?`${te}/${Se}`:"1/1",localFile:(be=T.messageParams)==null?void 0:be.file},...Le})}if(T.isMultipleFilesMessage()){const{files:te,metadata:Se}=As(T);return i.createElement(e,{messageType:"multipleFiles",files:te,metadata:Se,...Le})}}if(Te.isIncoming(T,f.userId)){const Le={...oe,sender:x(T,Me),message:T.message,suggestedRepliesVisible:Pe,suggestedRepliesDirection:d==null?void 0:d.suggestedRepliesDirection,isBotMessage:Me,isStreaming:Ke.isStreaming(T),isHandedOff:nt(g.channel),isConversationClosed:De(g.channel),isFeedbackEnabled:v.isUserFeedbackEnabled,isFeedbackCommentEnabled:v.isUserFeedbackCommentOptionEnabled,isSenderAvatarVisible:(ke=l==null?void 0:l.conversation)==null?void 0:ke.senderAvatarEnabled,onClickSuggestedReply:async({reply:te})=>{y.sendUserMessage({message:te})},onRequestMessageTemplate:async te=>{const{template:Se}=await m.aiAgent.getMessageTemplate(te);return u.template.set(te,Se),Se},onGetCachedMessageTemplate:te=>u.template.get(te),onHandleTemplateInternalAction:te=>{if(te.type==="internal"&&te.internalData){const{method:Se,payload:Be}=te.internalData;Se==="message.send"&&(Be!=null&&Be.message)&&y.sendUserMessage({message:Be.message})}},onFeedbackUpdate:te=>{const Se={messageId:T.messageId,channelUrl:T.channelUrl};if(!te)return m.aiAgent.deleteMessageFeedback(Se);const Be={...Se,rating:xh(te.rating),comment:te.comment};return Ke.hasFeedback(T)?m.aiAgent.updateMessageFeedback(Be):m.aiAgent.createMessageFeedback(Be)},onSubmitForm:({key:te,data:Se})=>m.aiAgent.submitForm({messageId:T.messageId,channelUrl:T.channelUrl,formKey:te,formData:Se}),onCancelForm:({key:te})=>m.aiAgent.cancelForm({messageId:T.messageId,channelUrl:T.channelUrl,formKey:te}),onStreamAnimationStart:()=>{A.start(T.messageId)},onStreamAnimationProgress:()=>{E.actions.onStreamingUpdate(!0)},onStreamAnimationComplete:()=>{A.stop(T.messageId),E.actions.onStreamingUpdate(!1)}};if(T.isUserMessage())return i.createElement(t,{messageType:"user",...Le});if(T.isFileMessage())return i.createElement(t,{messageType:"file",file:T,...Le});if(T.isMultipleFilesMessage()){const{files:te}=As(T);return i.createElement(t,{messageType:"multipleFiles",files:te,...Le})}}})();return i.createElement("div",{key:z,id:`${He}-message-item`,role:"listitem",tabIndex:-1,"aria-label":ce,"data-message-listitem":"","data-layout-id":Ge()},H,ue)};return i.createElement(L_,{id:`${He}-message-list`},i.createElement(gp,{ref:E.ref,onScroll:E.props.onScroll,stackDirection:d==null?void 0:d.messageStackDirection,messages:k,renderMessage:$,onLoadPrev:y.loadPrevious,onLoadNext:y.loadNext,depsForResetScrollPositionToBottom:[y.initialized,y.messages.length!==0],bottomSpacerHeight:E.state.bottomSpace,"aria-label":s.A11Y_MESSAGE_LIST,loading:!y.initialized||!g.channel,empty:k.length===0&&!G,error:!!(b||g.error),LoadingComponent:i.createElement(Lt,{type:"loading"}),EmptyComponent:(()=>{const T=W();return T?i.createElement("div",{style:{width:"100%"}},T):i.createElement(Lt,{type:"noMessages",label:s.PLACE_HOLDER__NO_MESSAGES})})(),ErrorComponent:i.createElement(Lt,{type:"error",label:(b==null?void 0:b.message)??((Q=g.error)==null?void 0:Q.message),action:g.error?{label:s.RETRY,onClick:()=>g.refetch()}:void 0}),messageTopArea:i.createElement(i.Fragment,null,i.createElement(A_,{style:{marginTop:16}}),W()),messageBottomArea:i.createElement(i.Fragment,null,G&&i.createElement("div",{id:`${He}-message-item`,role:"listitem",tabIndex:-1,"aria-label":pt({sender:G.user.nickname,message:s.A11Y_TYPING_INDICATOR,codeBlockPlaceholder:s.A11Y_CODE_BLOCK_PLACEHOLDER}),"data-message-listitem":"",style:{marginTop:k.length===0?8:0}},i.createElement(t,{isTyping:!0,isBotMessage:G.isBot,sender:G.user,thinkingMessage:G.thinkingMessage,messageType:"user",groupType:"single",message:"",isSenderAvatarVisible:(ae=l==null?void 0:l.conversation)==null?void 0:ae.senderAvatarEnabled})),((de=l==null?void 0:l.conversation)==null?void 0:de.isTalkToAgentViewEnabled)&&i.createElement(I_,null)),overlayArea:i.createElement(i.Fragment,null,((we=l==null?void 0:l.conversation)==null?void 0:we.newMessageIndicatorEnabled)&&E.state.isAwayFromBottom&&y.newMessages.length>0&&i.createElement(R_,{label:s.SCROLL_TO_NEW_MESSAGES_LABEL(y.newMessages),onClick:()=>E.actions.scrollToBottom()}),E.state.isAwayFromBottom&&y.newMessages.length===0&&!G&&i.createElement(r.ScrollToBottomButton,{onClick:()=>E.actions.scrollToBottom(),style:{position:"absolute",bottom:12,insetInlineEnd:16}}))}),K&&i.createElement(vp,{files:K.files,initialIndex:K.index,onClose:()=>L(null),visible:!0}),V&&i.createElement(tt,{visible:!0,onClose:()=>Y(null),"aria-label":s.A11Y_FAILED_MESSAGE_OPTIONS},i.createElement(tt.ActionItem,{onClick:()=>{y.resendMessage(V),Y(null)}},s.FAILED_MESSAGE_RESEND),i.createElement(tt.ActionItem,{destructive:!0,onClick:()=>{y.deleteMessage(V),Y(null)}},s.FAILED_MESSAGE_REMOVE)))},L_=_.default.div`overflow-y:hidden;display:flex;flex:1;position:relative;`,R_=_.default(s_)`position:absolute;bottom:12px;left:50%;transform:translateX(-50%);`,O_=()=>i.createElement(k_,null),N_=()=>{var s;const{origin:e}=St(),{appId:t,aiAgentId:n}=$e(),{channelSource:r}=ye();return(s=r.channel)!=null&&s.conversation?i.createElement(D_,null,i.createElement(Jn,{style:{gap:4}},i.createElement(Z,{color:p.themedColor.textLowEmphasis,size:12,type:"show"}),i.createElement(B,{as:"i",color:p.themedColor.textLowEmphasis,variant:"caption2"},"Only visible in the tester")),i.createElement(Jn,{role:"button",style:{gap:4},onClick:()=>{var u,d;const o=e??window.location.origin,a=(d=(u=r.channel)==null?void 0:u.conversation)==null?void 0:d.id,l=`${o}/ai-agent/${t}/${n}/evaluate/conversations/${a}`;navigator.clipboard.writeText(l)}},i.createElement(B,{variant:"body3",color:p.themedColor.textHighEmphasis},"Copy ",i.createElement("span",{style:{color:p.themedColor.primary}},"conversation link")),i.createElement(Z,{color:p.themedColor.primary,size:14,type:"copy"}))):null},Jn=_.default.div`display:flex;justify-content:center;align-items:center;`,D_=_.default(Jn)`flex-direction:column;padding-block:16px;background-color:${p.themedColor.bg_100_500};gap:8px;`,$_=(e,t)=>{const n=[],r=[],s=[];for(const o of e){const a=t.isSupportedMimeType(o.type),l=o.size<=t.getUploadSizeLimit(o.type);a&&l?n.push(o):a?r.push(o):s.push(o)}return{passed:n,failedBySize:r,failedByType:s}},bi=c.createContext(void 0),P_=({children:e})=>{var V,Y;const{chatSDK:t}=fe(),{createAttachmentRules:n}=Ne(),{stringSet:r}=re(),{channelSource:s,state:o}=ye(),[a,l]=c.useState([]),{announceError:u}=Er(),[d,m]=c.useState(null),h=n({channel:s.channel,uploadSizeLimit:(V=t.appInfo)==null?void 0:V.uploadSizeLimit}),f=((Y=o==null?void 0:o.input)==null?void 0:Y.disabled)??!1,v=h.isEnabled(),b=h.maxAttachmentCount,C=()=>m(null),g=x=>m(x),y=()=>{g({title:r.FILE_UPLOAD_NOTIFICATION__COUNT_LIMIT.replace("%d",b.toString())})},E=x=>{g({title:r.FILE_UPLOAD_NOTIFICATION__SIZE_LIMIT.replace("%d",x.toString())}),u({type:"fileSizeExceeded",maxSizeMB:x})},I=x=>{g({title:r.FILE_UPLOAD_NOTIFICATION__FILES_EXCLUDED_BY_VALIDATION.replace("%d",x.toString())})},A=x=>x.map(D=>({file:D,preview:{url:URL.createObjectURL(D),type:D.type,name:D.name}})),w=x=>{l(D=>[...D,...A(x)])},k=x=>{l(D=>(D.forEach($=>URL.revokeObjectURL($.preview.url)),A(x)))},N=x=>{const{passed:D,failedBySize:$,failedByType:Q}=$_(x,h),ae=$.length+Q.length,de=x.length===1?$[0]:void 0;return de?E(h.getUploadSizeLimitInMB(de.type)):ae>0&&I(ae),D},W=x=>{const D=N(x.files);D.length!==0&&(x.type==="append"?w(D):k(D))},G=x=>{if(!v||f||!Za(x))return;const D=Qa({currentFiles:a.map(({file:$})=>$),incomingFiles:x,maxAttachmentCount:b});switch(D.type){case"reject":y();return;case"confirm_replace":g({title:r.FILE_UPLOAD_REPLACE_ALERT__TITLE,description:r.FILE_UPLOAD_REPLACE_ALERT__DESCRIPTION,confirmText:r.BUTTON__OK,cancelText:r.BUTTON__CANCEL,onConfirm:()=>W(D.action)});return;case"apply":W(D.action);return}},K=x=>{l(D=>{var Q;const $=(Q=D[x])==null?void 0:Q.preview;return $&&URL.revokeObjectURL($.url),D.filter((ae,de)=>de!==x)})},L=()=>{l(x=>(x.forEach(D=>URL.revokeObjectURL(D.preview.url)),[]))};return i.createElement(bi.Provider,{value:{files:a,addFiles:G,removeFile:K,clearFiles:L,isFileUploadEnabled:v,acceptableMimeTypes:h.supportedMimeTypes,maxAttachmentCount:h.maxAttachmentCount,showFileUploadAlert:g}},e,i.createElement(Cr,{visible:!!d,...d??{},onClose:C}))},Ir=()=>{const e=c.useContext(bi);if(!e)throw new Error("useFileUpload must be used within FileUploadProvider");return e};function F_({elementRef:e,ready:t,onRestore:n}){const r=c.useRef(!1);c.useEffect(()=>{var a;!t||!r.current||(n==null||n(),(a=e.current)==null||a.focus(),r.current=!1)},[t,n]);const s=c.useCallback(()=>{r.current=!0},[]),o=c.useCallback(()=>{r.current=!1},[]);return{requestRestore:s,cancelRestore:o}}function B_({blurred:e,elementRef:t,document:n=window.document,onRecoverFocus:r}){const s=c.useRef(!1);e&&t.current&&n.activeElement===t.current&&(s.current=!0),c.useLayoutEffect(()=>{var o;!e&&s.current&&(r==null||r(),(o=t.current)==null||o.focus(),s.current=!1)},[e,r])}const U_=()=>{const{announceError:e}=st();return c.useCallback(t=>{e({type:"sendFailed"},t)},[e])},H_=1e3,G_=(e,t,n)=>{const{announcementsActive:r,setIsSuppressed:s}=st(),o=n??!0,a=c.useRef(!1),l=c.useRef(void 0),u=c.useCallback(d=>{var m;d&&o&&(a.current=!0,l.current=e,e==null||e.startTyping()),d||(a.current&&o&&((m=l.current)==null||m.endTyping()),a.current=!1,l.current=void 0),s(d)},[e,s,o]);c.useLayoutEffect(()=>{s(a.current)},[r,s]),pc(t,u,{enabled:o,idleMs:H_})},V_=({enabled:e=!0,focusRoot:t})=>{const[n,r]=c.useState(!1),s=c.useRef(!1),o=c.useRef(!1);c.useEffect(()=>{if(!e){r(!1);return}const d=h=>{const f=h;f.metaKey||f.altKey||f.ctrlKey||(s.current=!0)},m=()=>{s.current=!1,r(!1)};return t.addEventListener("keydown",d),t.addEventListener("pointerdown",m),()=>{t.removeEventListener("keydown",d),t.removeEventListener("pointerdown",m)}},[e,t]);const a=c.useCallback(()=>{if(o.current){o.current=!1,r(!1);return}r(s.current)},[]),l=c.useCallback(()=>{r(!1)},[]),u=c.useCallback(()=>{o.current=!0,r(!1)},[]);return{isFocusVisible:n,suppressNextFocusVisible:u,focusHandlers:{onFocus:a,onBlur:l}}},z_=_.default.div`&::-webkit-scrollbar{display:none;}overflow-x:auto;display:flex;flex-direction:row;gap:10px;padding:8px 16px;background-color:transparent;`,q_=_.default.div`display:flex;flex-shrink:0;position:relative;margin-block-start:8px;border-radius:12px;height:64px;img{border-radius:12px;object-fit:cover;width:64px;-webkit-user-drag:none;}&:hover button,&:focus-within button{opacity:1;}`,W_=_.default.button`display:flex;align-items:center;justify-content:center;position:absolute;inset-inline-end:-8px;inset-block-start:-8px;cursor:pointer;border-radius:50%;border:none;padding:0;opacity:${({$mobile:e})=>e?1:0};transition:opacity 0.12s ease-in-out;${X.light`
415
- background-color: ${p.color.background50};
411
+ `,tE=()=>{var z,Z,ge,j;const{Template:e}=Bt.useContext(),{Template:t}=at.useContext(),{Template:n}=vn.useContext(),{components:r}=An.useContext(),{stringSet:s,format:o}=ie(),{conversation:a}=se(),{config:l,cache:u,agentPreviewConfigs:d,chatSDK:m,state:h}=fe(),{userSession:f,aiAgentInfo:v,connectionError:C}=Re(),{conversation:y,channelSource:E,messageSource:_,scrollSource:b,state:{input:A,streamAnimation:M}}=Se(),{isActionbookTester:B}=Ct(),{filteredMessages:w,shouldShowOriginalDate:O,renderAgentPreviewWelcomeMessages:k}=q_(),R=Mo(E.channel),[W,D]=c.useState(null),[F,q]=c.useState(null);c.useEffect(()=>{b.actions.onTypingIndicatorUpdate(!!R)},[!!R,b.actions.onTypingIndicatorUpdate]),K_(),H_({enabled:_.initialized&&_.messages.length>0});const H=(x,$=!1)=>{var J;return $?v:((J=E.channel)==null?void 0:J.members.find(te=>te.userId===x.sender.userId))??x.sender},K=x=>{if(x.sendingStatus==="failed"&&!A.disabled)return()=>q(x)},T=({message:x,index:$})=>{const J=ma(x),te=w[$-1],oe=w[$+1],Ae=w[w.length-1],Te=x===Ae,be=_t(x,v.userId),I=!(v.isUserFeedbackEnabled&&be&&!qe.isWelcomeMessage(x)),L=ha(x,te,oe,I),N=!aa.isSameDay((te==null?void 0:te.createdAt)??0,x.createdAt)&&O($)&&!B,X=pe=>{D({files:pe.files.map(ve=>({...ve,timestamp:x.createdAt})),index:pe.index})},Y=pe=>{X({files:[pe],index:0})},G=()=>{x.isFileMessage()&&Ar(x.url)},V=N?i.createElement(r.DateSeparator,{style:{margin:"16px 0"},date:x.createdAt}):null,le={data:x.data,maxBodyWidth:h.expanded?ne.WIDE_BODY_MAX_WIDTH:void 0,extendedMessagePayload:x.extendedMessagePayload,createdAt:x.createdAt,groupType:L,onClickMedia:Y,onClickMediaFiles:X,onClickFile:G},Ge=()=>{if(ke.isOutgoing(x,f.userId))return"outgoingmessage";if(ke.isIncoming(x,f.userId))return"incomingmessage"},ae=x.createdAt!=null&&x.createdAt!==0?o(x.createdAt,s.DATE_FORMAT__MESSAGE_TIMESTAMP):void 0,ce=(()=>{var ve,Oe,Le,re,Ie,Ue;const pe=(ve=x.message)==null?void 0:ve.trim();if(x.isFileMessage()){const Ut=((Oe=x.name)==null?void 0:Oe.trim())||"";return On({markdownText:pe,comparisonText:Ut,plainText:a.file.label(Ut,x.type)})}if(x.isMultipleFilesMessage()){const Ut=((Ie=(re=(Le=x.fileInfoList)==null?void 0:Le[0])==null?void 0:re.fileName)==null?void 0:Ie.trim())||"",Vr=((Ue=x.fileInfoList)==null?void 0:Ue.length)??0;return On({markdownText:pe,comparisonText:Ut,plainText:Vr>0?s.CONVERSATION_LIST__MULTIPLE_FILES_COUNT(Vr):""})}return pe?On({markdownText:pe}):Do("")})(),de=(()=>{if(ke.isAdmin(x))return It({message:ce.text,messageFormat:ce.format,codeBlockPlaceholder:s.A11Y_CODE_BLOCK_PLACEHOLDER});if(ke.isOutgoing(x,f.userId))return It({sender:s.A11Y_MESSAGE_SENDER_YOU,message:ce.text,messageFormat:"plain",time:ae,codeBlockPlaceholder:s.A11Y_CODE_BLOCK_PLACEHOLDER});if(ke.isIncoming(x,f.userId))return It({sender:H(x,be).nickname,message:ce.text,messageFormat:ce.format,time:ae,codeBlockPlaceholder:s.A11Y_CODE_BLOCK_PLACEHOLDER})})(),me=(()=>{var pe,ve,Oe;if(ke.isAdmin(x))return ke.isCSAT(x)?y?i.createElement(n,{...le,...y,isResolvedWhenDeterminedByUser:Ha(y),messageType:"admin.csat",onSubmitCSAT:async Le=>{var re;await((re=E.channel)==null?void 0:re.submitCSAT(Le))},onScrollToBottom:()=>b.actions.scrollToBottom()}):null:i.createElement(n,{...le,messageType:"admin",message:x.message});if(ke.isSteward(x))return i.createElement(C_,{steward:x.extendedMessagePayload.steward,onCancelSteward:async()=>{await m.aiAgent.cancelStewardTask({channelUrl:x.channelUrl,messageId:x.messageId})}});if(ke.isOutgoing(x,f.userId)){const Le={...le,message:x.message,sender:H(x),sendingStatus:x.sendingStatus,onClickFailedMessage:K(x)};if(x.isUserMessage())return i.createElement(e,{messageType:"user",...Le});if(x.isFileMessage()){const[re,Ie]=((pe=x.metaArrays.find(Ue=>Ue.key===ao))==null?void 0:pe.value)??[];return i.createElement(e,{messageType:"file",file:x,metadata:{aspectRatio:re&&Ie?`${re}/${Ie}`:"1/1",localFile:(ve=x.messageParams)==null?void 0:ve.file},...Le})}if(x.isMultipleFilesMessage()){const{files:re,metadata:Ie}=Ls(x);return i.createElement(e,{messageType:"multipleFiles",files:re,metadata:Ie,...Le})}}if(ke.isIncoming(x,f.userId)){const Le={...le,sender:H(x,be),message:x.message,suggestedRepliesVisible:Te,suggestedRepliesDirection:d==null?void 0:d.suggestedRepliesDirection,isBotMessage:be,isStreaming:qe.isStreaming(x),isHandedOff:it(E.channel),isConversationClosed:De(E.channel),isFeedbackEnabled:v.isUserFeedbackEnabled,isFeedbackCommentEnabled:v.isUserFeedbackCommentOptionEnabled,isSenderAvatarVisible:(Oe=l==null?void 0:l.conversation)==null?void 0:Oe.senderAvatarEnabled,onClickSuggestedReply:async({reply:re})=>{_.sendUserMessage({message:re})},onRequestMessageTemplate:async re=>{const{template:Ie}=await m.aiAgent.getMessageTemplate(re);return u.template.set(re,Ie),Ie},onGetCachedMessageTemplate:re=>u.template.get(re),onHandleTemplateInternalAction:re=>{if(re.type==="internal"&&re.internalData){const{method:Ie,payload:Ue}=re.internalData;Ie==="message.send"&&(Ue!=null&&Ue.message)&&_.sendUserMessage({message:Ue.message})}},onFeedbackUpdate:re=>{const Ie={messageId:x.messageId,channelUrl:x.channelUrl};if(!re)return m.aiAgent.deleteMessageFeedback(Ie);const Ue={...Ie,rating:Xh(re.rating),comment:re.comment};return qe.hasFeedback(x)?m.aiAgent.updateMessageFeedback(Ue):m.aiAgent.createMessageFeedback(Ue)},onSubmitForm:({key:re,data:Ie})=>m.aiAgent.submitForm({messageId:x.messageId,channelUrl:x.channelUrl,formKey:re,formData:Ie}),onCancelForm:({key:re})=>m.aiAgent.cancelForm({messageId:x.messageId,channelUrl:x.channelUrl,formKey:re}),onStreamAnimationStart:()=>{M.start(x.messageId)},onStreamAnimationProgress:()=>{b.actions.onStreamingUpdate(!0)},onStreamAnimationComplete:()=>{M.stop(x.messageId),b.actions.onStreamingUpdate(!1)}};if(x.isUserMessage())return i.createElement(t,{messageType:"user",...Le});if(x.isFileMessage())return i.createElement(t,{messageType:"file",file:x,...Le});if(x.isMultipleFilesMessage()){const{files:re}=Ls(x);return i.createElement(t,{messageType:"multipleFiles",files:re,...Le})}}})();return i.createElement("div",{key:J,id:`${Be}-message-item`,role:"listitem",tabIndex:-1,"aria-label":de,"data-message-listitem":"","data-layout-id":Ge()},V,me)};return i.createElement(nE,{id:`${Be}-message-list`},i.createElement(Up,{ref:b.ref,onScroll:b.props.onScroll,stackDirection:d==null?void 0:d.messageStackDirection,messages:w,renderMessage:T,onLoadPrev:_.loadPrevious,onLoadNext:_.loadNext,depsForResetScrollPositionToBottom:[_.initialized,_.messages.length!==0],bottomSpacerHeight:b.state.bottomSpace,"aria-label":s.A11Y_MESSAGE_LIST,loading:!_.initialized||!E.channel,empty:w.length===0&&!R,error:!!(C||E.error),LoadingComponent:i.createElement(Rt,{type:"loading"}),EmptyComponent:(()=>{const x=k();return x?i.createElement("div",{style:{width:"100%"}},x):i.createElement(Rt,{type:"noMessages",label:s.PLACE_HOLDER__NO_MESSAGES})})(),ErrorComponent:i.createElement(Rt,{type:"error",label:(C==null?void 0:C.message)??((z=E.error)==null?void 0:z.message),action:E.error?{label:s.RETRY,onClick:()=>E.refetch()}:void 0}),messageTopArea:i.createElement(i.Fragment,null,i.createElement(j_,{style:{marginTop:16}}),k()),messageBottomArea:i.createElement(i.Fragment,null,R&&i.createElement("div",{id:`${Be}-message-item`,role:"listitem",tabIndex:-1,"aria-label":It({sender:R.user.nickname,message:s.A11Y_TYPING_INDICATOR,codeBlockPlaceholder:s.A11Y_CODE_BLOCK_PLACEHOLDER}),"data-message-listitem":"",style:{marginTop:w.length===0?8:0}},i.createElement(t,{isTyping:!0,isBotMessage:R.isBot,sender:R.user,thinkingMessage:R.thinkingMessage,messageType:"user",groupType:"single",message:"",isSenderAvatarVisible:(Z=l==null?void 0:l.conversation)==null?void 0:Z.senderAvatarEnabled})),((ge=l==null?void 0:l.conversation)==null?void 0:ge.isTalkToAgentViewEnabled)&&i.createElement(J_,null)),overlayArea:i.createElement(i.Fragment,null,((j=l==null?void 0:l.conversation)==null?void 0:j.newMessageIndicatorEnabled)&&b.state.isAwayFromBottom&&_.newMessages.length>0&&i.createElement(rE,{label:s.SCROLL_TO_NEW_MESSAGES_LABEL(_.newMessages),onClick:()=>b.actions.scrollToBottom()}),b.state.isAwayFromBottom&&_.newMessages.length===0&&!R&&i.createElement(r.ScrollToBottomButton,{onClick:()=>b.actions.scrollToBottom(),style:{position:"absolute",bottom:12,insetInlineEnd:16}}))}),W&&i.createElement(Wp,{files:W.files,initialIndex:W.index,onClose:()=>D(null),visible:!0}),F&&i.createElement(st,{visible:!0,onClose:()=>q(null),"aria-label":s.A11Y_FAILED_MESSAGE_OPTIONS},i.createElement(st.ActionItem,{onClick:()=>{_.resendMessage(F),q(null)}},s.FAILED_MESSAGE_RESEND),i.createElement(st.ActionItem,{destructive:!0,onClick:()=>{_.deleteMessage(F),q(null)}},s.FAILED_MESSAGE_REMOVE)))},nE=p.default.div`overflow-y:hidden;display:flex;flex:1;position:relative;`,rE=p.default(M_)`position:absolute;bottom:12px;left:50%;transform:translateX(-50%);`,sE=()=>i.createElement(tE,null),oE=()=>{var s;const{origin:e}=Ct(),{appId:t,aiAgentId:n}=Pe(),{channelSource:r}=Se();return(s=r.channel)!=null&&s.conversation?i.createElement(iE,null,i.createElement(rr,{style:{gap:4}},i.createElement(ee,{color:g.themedColor.textLowEmphasis,size:12,type:"show"}),i.createElement(U,{as:"i",color:g.themedColor.textLowEmphasis,variant:"caption2"},"Only visible in the tester")),i.createElement(rr,{role:"button",style:{gap:4},onClick:()=>{var u,d;const o=e??window.location.origin,a=(d=(u=r.channel)==null?void 0:u.conversation)==null?void 0:d.id,l=`${o}/ai-agent/${t}/${n}/evaluate/conversations/${a}`;navigator.clipboard.writeText(l)}},i.createElement(U,{variant:"body3",color:g.themedColor.textHighEmphasis},"Copy ",i.createElement("span",{style:{color:g.themedColor.primary}},"conversation link")),i.createElement(ee,{color:g.themedColor.primary,size:14,type:"copy"}))):null},rr=p.default.div`display:flex;justify-content:center;align-items:center;`,iE=p.default(rr)`flex-direction:column;padding-block:16px;background-color:${g.themedColor.bg_100_500};gap:8px;`,aE=(e,t)=>{const n=[],r=[],s=[];for(const o of e){const a=t.isSupportedMimeType(o.type),l=o.size<=t.getUploadSizeLimit(o.type);a&&l?n.push(o):a?r.push(o):s.push(o)}return{passed:n,failedBySize:r,failedByType:s}},Ni=c.createContext(void 0),lE=({children:e})=>{var F,q;const{chatSDK:t}=fe(),{createAttachmentRules:n}=Re(),{stringSet:r}=ie(),{channelSource:s,state:o}=Se(),[a,l]=c.useState([]),{announceError:u}=Sr(),[d,m]=c.useState(null),h=n({channel:s.channel,uploadSizeLimit:(F=t.appInfo)==null?void 0:F.uploadSizeLimit}),f=((q=o==null?void 0:o.input)==null?void 0:q.disabled)??!1,v=h.isEnabled(),C=h.maxAttachmentCount,y=()=>m(null),E=H=>m(H),_=()=>{E({title:r.FILE_UPLOAD_NOTIFICATION__COUNT_LIMIT.replace("%d",C.toString())})},b=H=>{E({title:r.FILE_UPLOAD_NOTIFICATION__SIZE_LIMIT.replace("%d",H.toString())}),u({type:"fileSizeExceeded",maxSizeMB:H})},A=H=>{E({title:r.FILE_UPLOAD_NOTIFICATION__FILES_EXCLUDED_BY_VALIDATION.replace("%d",H.toString())})},M=H=>H.map(K=>({file:K,preview:{url:URL.createObjectURL(K),type:K.type,name:K.name}})),B=H=>{l(K=>[...K,...M(H)])},w=H=>{l(K=>(K.forEach(T=>URL.revokeObjectURL(T.preview.url)),M(H)))},O=H=>{const{passed:K,failedBySize:T,failedByType:z}=aE(H,h),Z=T.length+z.length,ge=H.length===1?T[0]:void 0;return ge?b(h.getUploadSizeLimitInMB(ge.type)):Z>0&&A(Z),K},k=H=>{const K=O(H.files);K.length!==0&&(H.type==="append"?B(K):w(K))},R=H=>{if(!v||f||!pl(H))return;const K=El({currentFiles:a.map(({file:T})=>T),incomingFiles:H,maxAttachmentCount:C});switch(K.type){case"reject":_();return;case"confirm_replace":E({title:r.FILE_UPLOAD_REPLACE_ALERT__TITLE,description:r.FILE_UPLOAD_REPLACE_ALERT__DESCRIPTION,confirmText:r.BUTTON__OK,cancelText:r.BUTTON__CANCEL,onConfirm:()=>k(K.action)});return;case"apply":k(K.action);return}},W=H=>{l(K=>{var z;const T=(z=K[H])==null?void 0:z.preview;return T&&URL.revokeObjectURL(T.url),K.filter((Z,ge)=>ge!==H)})},D=()=>{l(H=>(H.forEach(K=>URL.revokeObjectURL(K.preview.url)),[]))};return i.createElement(Ni.Provider,{value:{files:a,addFiles:R,removeFile:W,clearFiles:D,isFileUploadEnabled:v,acceptableMimeTypes:h.supportedMimeTypes,maxAttachmentCount:h.maxAttachmentCount,showFileUploadAlert:E}},e,i.createElement(Cn,{visible:!!d,...d??{},onClose:y}))},Lr=()=>{const e=c.useContext(Ni);if(!e)throw new Error("useFileUpload must be used within FileUploadProvider");return e};function cE({elementRef:e,ready:t,onRestore:n}){const r=c.useRef(!1);c.useEffect(()=>{var a;!t||!r.current||(n==null||n(),(a=e.current)==null||a.focus(),r.current=!1)},[t,n]);const s=c.useCallback(()=>{r.current=!0},[]),o=c.useCallback(()=>{r.current=!1},[]);return{requestRestore:s,cancelRestore:o}}function uE({blurred:e,elementRef:t,document:n=window.document,onRecoverFocus:r}){const s=c.useRef(!1);e&&t.current&&n.activeElement===t.current&&(s.current=!0),c.useLayoutEffect(()=>{var o;!e&&s.current&&(r==null||r(),(o=t.current)==null||o.focus(),s.current=!1)},[e,r])}const dE=()=>{const{announceError:e}=Je();return c.useCallback(t=>{e({type:"sendFailed"},t)},[e])},mE=1e3,hE=(e,t,n)=>{const{announcementsActive:r,setIsSuppressed:s}=Je(),o=n??!0,a=c.useRef(!1),l=c.useRef(void 0),u=c.useCallback(d=>{var m;d&&o&&(a.current=!0,l.current=e,e==null||e.startTyping()),d||(a.current&&o&&((m=l.current)==null||m.endTyping()),a.current=!1,l.current=void 0),s(d)},[e,s,o]);c.useLayoutEffect(()=>{s(a.current)},[r,s]),Dc(t,u,{enabled:o,idleMs:mE})},fE=({enabled:e=!0,focusRoot:t})=>{const[n,r]=c.useState(!1),s=c.useRef(!1),o=c.useRef(!1);c.useEffect(()=>{if(!e){r(!1);return}const d=h=>{const f=h;f.metaKey||f.altKey||f.ctrlKey||(s.current=!0)},m=()=>{s.current=!1,r(!1)};return t.addEventListener("keydown",d),t.addEventListener("pointerdown",m),()=>{t.removeEventListener("keydown",d),t.removeEventListener("pointerdown",m)}},[e,t]);const a=c.useCallback(()=>{if(o.current){o.current=!1,r(!1);return}r(s.current)},[]),l=c.useCallback(()=>{r(!1)},[]),u=c.useCallback(()=>{o.current=!0,r(!1)},[]);return{isFocusVisible:n,suppressNextFocusVisible:u,focusHandlers:{onFocus:a,onBlur:l}}},gE=p.default.div`&::-webkit-scrollbar{display:none;}overflow-x:auto;display:flex;flex-direction:row;gap:10px;padding:8px 16px;background-color:transparent;`,pE=p.default.div`display:flex;flex-shrink:0;position:relative;margin-block-start:8px;border-radius:12px;height:64px;img{border-radius:12px;object-fit:cover;width:64px;-webkit-user-drag:none;}&:hover button,&:focus-within button{opacity:1;}`,_E=p.default.button`display:flex;align-items:center;justify-content:center;position:absolute;inset-inline-end:-8px;inset-block-start:-8px;cursor:pointer;border-radius:50%;border:none;padding:0;opacity:${({$mobile:e})=>e?1:0};transition:opacity 0.12s ease-in-out;${Q.light`
412
+ background-color: ${g.color.background50};
416
413
  `}
417
- ${X.dark`
418
- background-color: ${p.color.background500};
414
+ ${Q.dark`
415
+ background-color: ${g.color.background500};
419
416
  `}
420
417
  path {
421
- fill: ${p.themedColor.textMidEmphasis};
418
+ fill: ${g.themedColor.textMidEmphasis};
422
419
  }
423
420
 
424
421
  &:hover {
425
422
  path {
426
- fill: ${p.themedColor.textHighEmphasis};
423
+ fill: ${g.themedColor.textHighEmphasis};
427
424
  }
428
425
  }
429
426
 
430
427
  &:focus-visible {
431
428
  opacity: 1;
432
- outline: 2px solid ${p.color.primary.main};
429
+ outline: 2px solid ${g.color.primary.main};
433
430
  outline-offset: 2px;
434
431
  }
435
432
 
436
433
  circle {
437
- stroke: ${p.themedColor.bg_50_600};
434
+ stroke: ${g.themedColor.bg_50_600};
438
435
  }
439
- `,Y_=()=>{const e=Dt(),{conversation:t}=se(),{files:n,removeFile:r,isFileUploadEnabled:s}=Ir();return s&&n.length>0?i.createElement(z_,null,n.map(({preview:{type:a,name:l,url:u}},d)=>{const m=t.file.removeButton(l),h=t.file.preview({name:l,mimeType:a,selected:!0});return i.createElement(q_,{key:u},i.createElement(W_,{type:"button",...m,$mobile:e,onClick:()=>r(d)},i.createElement(Z,{type:"close-filled",color:p.themedColor.textMidEmphasis})),a.startsWith("image/")?i.createElement("img",{alt:h.props["aria-label"],src:u}):i.createElement(yr,{name:l,mimeType:a,type:nr(l,a),selected:!0}))})):null},K_={textArea:P.css`min-height:40px;height:40px;font-size:16px;line-height:24px;`},Ci=_.default.button`all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:32px;height:32px;${Ie}`,Us=_.default.div`width:100%;position:relative;background-color:${p.themedColor.bg_100_500};border-radius:20px;`,Hs=_.default.div`display:flex;flex-direction:row;align-items:flex-end;position:relative;`,Gs=_.default.textarea`all:unset;display:block;flex:1;min-width:0;padding-top:8px;padding-bottom:8px;padding-inline-start:16px;padding-inline-end:12px;box-sizing:border-box;font-size:14px;line-height:20px;color:${p.themedColor.textHighEmphasis};resize:none;width:100%;height:${Lo}px;overflow-wrap:break-word;white-space:pre-wrap;overflow-x:hidden;${Vo&&K_.textArea};${({$focusVisible:e})=>e&&P.css`
440
- outline: 2px solid ${p.themedColor.primary};
436
+ `,EE=()=>{const e=Pt(),{conversation:t}=se(),{files:n,removeFile:r,isFileUploadEnabled:s}=Lr();return s&&n.length>0?i.createElement(gE,null,n.map(({preview:{type:a,name:l,url:u}},d)=>{const m=t.file.removeButton(l),h=t.file.preview({name:l,mimeType:a,selected:!0});return i.createElement(pE,{key:u},i.createElement(_E,{type:"button",...m,$mobile:e,onClick:()=>r(d)},i.createElement(ee,{type:"close-filled",color:g.themedColor.textMidEmphasis})),a.startsWith("image/")?i.createElement("img",{alt:h.props["aria-label"],src:u}):i.createElement(Ir,{name:l,mimeType:a,type:lr(l,a),selected:!0}))})):null},bE={textArea:P.css`min-height:40px;height:40px;font-size:16px;line-height:24px;`},Di=p.default.button`all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:32px;height:32px;${we}`,js=p.default.div`width:100%;position:relative;background-color:${g.themedColor.bg_100_500};border-radius:20px;`,Xs=p.default.div`display:flex;flex-direction:row;align-items:flex-end;position:relative;`,Zs=p.default.textarea`all:unset;display:block;flex:1;min-width:0;padding-top:8px;padding-bottom:8px;padding-inline-start:16px;padding-inline-end:12px;box-sizing:border-box;font-size:14px;line-height:20px;color:${g.themedColor.textHighEmphasis};resize:none;width:100%;height:${Vo}px;overflow-wrap:break-word;white-space:pre-wrap;overflow-x:hidden;${si&&bE.textArea};${({$focusVisible:e})=>e&&P.css`
437
+ outline: 2px solid ${g.themedColor.primary};
441
438
  outline-offset: 2px;
442
439
  `}
443
440
 
444
441
  &::placeholder {
445
- color: ${p.themedColor.textLowEmphasis};
442
+ color: ${g.themedColor.textLowEmphasis};
446
443
  }
447
444
 
448
445
  &:disabled {
449
446
  cursor: not-allowed;
450
447
  &::placeholder {
451
- color: ${p.themedColor.textDisabled};
448
+ color: ${g.themedColor.textDisabled};
452
449
  }
453
450
  }
454
451
 
455
- ${({$blocked:e})=>e&&P.css`cursor:not-allowed;&::placeholder{color:${p.themedColor.textDisabled};}`}
456
- `,j_=_.default.input`display:none;`;_.default.div`display:flex;align-items:center;gap:24px;`;const X_=_.default(Ci)`flex-shrink:0;border-radius:8px;&:disabled{cursor:not-allowed;}&:not(:disabled){&:hover{background-color:${p.themedColor.bg_100_500};path{fill:${p.themedColor.textHighEmphasis};}}&:active{background-color:${p.themedColor.bg_200_400};}}`,Vs=_.default.div`padding:10px 16px 10px 12px;position:relative;display:flex;align-items:center;gap:8px;`,zs=e=>e.startsWith("image/"),qs=({disabled:e})=>{var k,N,W,G,K;const{stringSet:t}=re(),{conversation:n}=se(),{config:r}=fe(),s=c.useRef(null),o=c.useRef(null),[a,l]=c.useState(!1),{addFiles:u,isFileUploadEnabled:d,acceptableMimeTypes:m,showFileUploadAlert:h}=Ir(),f=m.includes(Hn),v=f?["image/*"]:m.filter(zs),b=f?[Hn]:m.filter(L=>!zs(L)),C=!!((W=(N=(k=r==null?void 0:r.conversation)==null?void 0:k.input)==null?void 0:N.gallery)!=null&&W.photoEnabled),g=!!((K=(G=r==null?void 0:r.conversation)==null?void 0:G.input)!=null&&K.fileEnabled),y=()=>f||v.length>0,E=()=>f||b.length>0,I=L=>{const V=L.currentTarget.files;V&&u(Array.from(V)),L.target.value=""},A=()=>{l(!0)},w=c.useMemo(()=>{const L=[];return C&&L.push({type:"image",icon:"photo",label:t.FILE_UPLOAD_PHOTOS,accept:v.join(","),inputRef:s,onSelect:()=>{if(!y()){h({title:t.FILE_UPLOAD_NO_SUPPORTED_FILES});return}l(!1),setTimeout(()=>{var V;return(V=s.current)==null?void 0:V.click()},100)}}),g&&L.push({type:"file",icon:"document",label:t.FILE_UPLOAD_FILES,accept:m.join(","),inputRef:o,onSelect:()=>{if(!E()){h({title:t.FILE_UPLOAD_NO_SUPPORTED_FILES});return}l(!1),setTimeout(()=>{var V;return(V=o.current)==null?void 0:V.click()},100)}}),L},[v,m,t,C,g]);return d?i.createElement(i.Fragment,null,i.createElement(X_,{...n.messageInput.attachFileButton.props,disabled:e,onClick:A},i.createElement(Z,{type:"add",color:e?p.themedColor.textDisabled:p.color.primary.main,size:20}),n.messageInput.attachFileButton.descriptionNode),w.map(L=>i.createElement(j_,{key:L.type,type:"file",ref:L.inputRef,multiple:L.type==="image",onChange:I,accept:L.accept})),i.createElement(tt,{visible:a,onClose:()=>l(!1),"aria-label":t.A11Y_FILE_UPLOAD_OPTIONS},w.map(L=>i.createElement(tt.ActionItem,{key:L.type,onClick:L.onSelect,icon:L.icon},L.label)))):null},Z_=()=>{const e=c.useRef(null),[t,n]=c.useState(""),{stringSet:r}=re(),{conversation:s}=se(),{rootElement:o}=fe(),a=ct(o),{focusHandlers:l,isFocusVisible:u,suppressNextFocusVisible:d}=V_({focusRoot:a}),{channelSource:m,messageSource:h,state:f}=ye(),{files:v,addFiles:b,clearFiles:C}=Ir(),g=U_(),{focusPolicy:y,disabled:E,disabledBy:I}=f.input,A=y==="preserve",w=y==="release",k=s.messageInput.textInput(r.A11Y_MESSAGE_INPUT),N=(()=>{if(!E)return r.MESSAGE_INPUT__PLACE_HOLDER;switch(I){case"form_active":return r.FORM_PLACEHOLDER;case"ai_responding":return r.MESSAGE_INPUT__PLACE_HOLDER__WAIT_AI_AGENT_RESPONSE;case"suggested_replies":return r.MESSAGE_INPUT__PLACE_HOLDER__SUGGESTED_REPLIES;case"steward":return r.MESSAGE_INPUT__PLACE_HOLDER__STEWARD;case"system":return r.MESSAGE_INPUT__PLACE_HOLDER__DISABLED;case"reconnecting":return r.MESSAGE_INPUT__PLACE_HOLDER__RECONNECTING;case"unavailable":case"conversation_closed":default:return r.MESSAGE_INPUT__PLACE_HOLDER__DISABLED}})();Zd({onDropFiles:F=>{b(F)}}),B_({blurred:w,elementRef:e,document:a,onRecoverFocus:()=>{d()}}),G_(m.channel,t,!E);const W=t.trim().length>0,G=v.length>0,K=!E&&(W||G),L=()=>{e.current&&(e.current.value="",e.current.style.height=""),C(),n("")},V=()=>{var F;d(),(F=e.current)==null||F.focus()},{requestRestore:Y,cancelRestore:x}=F_({elementRef:e,ready:A,onRestore:d}),D=F=>{x(),g(F)},$=()=>{x()},Q=async F=>{try{await F(),$()}catch{D(e.current)}},ae=async()=>{if(E)return;const F=t.trim();if(!F&&!v.length)return;const z=[...v];if(Y(),L(),V(),z.length===0){await Q(()=>h.sendUserMessage({message:F}));return}if(z.length===1)await Q(()=>h.sendFileMessage({message:F,file:z[0].file}));else{const J=z.map(({file:me})=>({file:me}));await Q(()=>h.sendMultipleFilesMessage({message:F,fileInfoList:J}))}},de=F=>{const z=Array.from(F.clipboardData.files);z.length>0&&(F.preventDefault(),b(z))},we=F=>{F.key!=="Enter"||F.nativeEvent.isComposing||F.shiftKey||(F.preventDefault(),ae())},T=F=>{if(E){e.current&&(e.current.value=t);return}if(e.current){e.current.style.height="";const z=Math.min(mu,e.current.scrollHeight);Lo<z&&(e.current.style.height=`${z}px`)}n(F.target.value)};return w?i.createElement(Vs,null,i.createElement(qs,{disabled:!0}),i.createElement(Us,null,i.createElement(Hs,null,i.createElement(Gs,{rows:1,...k,disabled:!0,placeholder:N,$blocked:!0,$focusVisible:!1,"data-focus-visible":"false"})))):i.createElement(Vs,{"data-message-composer":""},i.createElement(qs,{disabled:E}),i.createElement(Us,null,i.createElement(Y_,null),i.createElement(Hs,null,i.createElement(Gs,{ref:e,rows:1,...k,readOnly:A,"aria-disabled":A?"true":void 0,placeholder:N,maxLength:5e3,$blocked:E,$focusVisible:u,"data-focus-visible":u?"true":"false",onKeyDown:we,onChange:T,onFocus:l.onFocus,onBlur:l.onBlur,onPaste:de}))),K&&i.createElement(Ci,{...s.messageInput.sendButton.props,onClick:()=>ae()},i.createElement(Z,{type:"send",color:p.color.primary.main,size:20}),s.messageInput.sendButton.descriptionNode))},J_=_.default.div`padding:8px 16px;text-align:center;word-break:break-word;white-space:pre-wrap;line-height:1.43;letter-spacing:-0.2px;font-size:14px;font-weight:400;color:${p.themedColor.textLowEmphasis};&& a{font-weight:700;text-decoration:none;${X.light`
457
- color: ${p.color.information.light};
452
+ ${({$blocked:e})=>e&&P.css`cursor:not-allowed;&::placeholder{color:${g.themedColor.textDisabled};}`}
453
+ `,CE=p.default.input`display:none;`;p.default.div`display:flex;align-items:center;gap:24px;`;const vE=p.default(Di)`flex-shrink:0;border-radius:8px;&:disabled{cursor:not-allowed;}&:not(:disabled){&:hover{background-color:${g.themedColor.bg_100_500};path{fill:${g.themedColor.textHighEmphasis};}}&:active{background-color:${g.themedColor.bg_200_400};}}`,Js=p.default.div`padding:10px 16px 10px 12px;position:relative;display:flex;align-items:center;gap:8px;`,Qs=e=>e.startsWith("image/"),eo=({disabled:e})=>{var w,O,k,R,W;const{stringSet:t}=ie(),{conversation:n}=se(),{config:r}=fe(),s=c.useRef(null),o=c.useRef(null),[a,l]=c.useState(!1),{addFiles:u,isFileUploadEnabled:d,acceptableMimeTypes:m,showFileUploadAlert:h}=Lr(),f=m.includes(Vn),v=f?["image/*"]:m.filter(Qs),C=f?[Vn]:m.filter(D=>!Qs(D)),y=!!((k=(O=(w=r==null?void 0:r.conversation)==null?void 0:w.input)==null?void 0:O.gallery)!=null&&k.photoEnabled),E=!!((W=(R=r==null?void 0:r.conversation)==null?void 0:R.input)!=null&&W.fileEnabled),_=()=>f||v.length>0,b=()=>f||C.length>0,A=D=>{const F=D.currentTarget.files;F&&u(Array.from(F)),D.target.value=""},M=()=>{l(!0)},B=c.useMemo(()=>{const D=[];return y&&D.push({type:"image",icon:"photo",label:t.FILE_UPLOAD_PHOTOS,accept:v.join(","),inputRef:s,onSelect:()=>{if(!_()){h({title:t.FILE_UPLOAD_NO_SUPPORTED_FILES});return}l(!1),setTimeout(()=>{var F;return(F=s.current)==null?void 0:F.click()},100)}}),E&&D.push({type:"file",icon:"document",label:t.FILE_UPLOAD_FILES,accept:m.join(","),inputRef:o,onSelect:()=>{if(!b()){h({title:t.FILE_UPLOAD_NO_SUPPORTED_FILES});return}l(!1),setTimeout(()=>{var F;return(F=o.current)==null?void 0:F.click()},100)}}),D},[v,m,t,y,E]);return d?i.createElement(i.Fragment,null,i.createElement(vE,{...n.messageInput.attachFileButton.props,disabled:e,onClick:M},i.createElement(ee,{type:"add",color:e?g.themedColor.textDisabled:g.color.primary.main,size:20}),n.messageInput.attachFileButton.descriptionNode),B.map(D=>i.createElement(CE,{key:D.type,type:"file",ref:D.inputRef,multiple:D.type==="image",onChange:A,accept:D.accept})),i.createElement(st,{visible:a,onClose:()=>l(!1),"aria-label":t.A11Y_FILE_UPLOAD_OPTIONS},B.map(D=>i.createElement(st.ActionItem,{key:D.type,onClick:D.onSelect,icon:D.icon},D.label)))):null},yE=()=>{const e=c.useRef(null),[t,n]=c.useState(""),{stringSet:r}=ie(),{conversation:s}=se(),{rootElement:o}=fe(),a=ut(o),{focusHandlers:l,isFocusVisible:u,suppressNextFocusVisible:d}=fE({focusRoot:a}),{channelSource:m,messageSource:h,state:f}=Se(),{files:v,addFiles:C,clearFiles:y}=Lr(),E=dE(),{focusPolicy:_,disabled:b,disabledBy:A}=f.input,M=_==="preserve",B=_==="release",w=s.messageInput.textInput(r.A11Y_MESSAGE_INPUT),O=(()=>{if(!b)return r.MESSAGE_INPUT__PLACE_HOLDER;switch(A){case"form_active":return r.FORM_PLACEHOLDER;case"ai_responding":return r.MESSAGE_INPUT__PLACE_HOLDER__WAIT_AI_AGENT_RESPONSE;case"suggested_replies":return r.MESSAGE_INPUT__PLACE_HOLDER__SUGGESTED_REPLIES;case"steward":return r.MESSAGE_INPUT__PLACE_HOLDER__STEWARD;case"system":return r.MESSAGE_INPUT__PLACE_HOLDER__DISABLED;case"reconnecting":return r.MESSAGE_INPUT__PLACE_HOLDER__RECONNECTING;case"unavailable":case"conversation_closed":default:return r.MESSAGE_INPUT__PLACE_HOLDER__DISABLED}})();Cm({onDropFiles:$=>{C($)}}),uE({blurred:B,elementRef:e,document:a,onRecoverFocus:()=>{d()}}),hE(m.channel,t,!b);const k=t.trim().length>0,R=v.length>0,W=!b&&(k||R),D=()=>{e.current&&(e.current.value="",e.current.style.height=""),y(),n("")},F=()=>{var $;d(),($=e.current)==null||$.focus()},{requestRestore:q,cancelRestore:H}=cE({elementRef:e,ready:M,onRestore:d}),K=$=>{H(),E($)},T=()=>{H()},z=async $=>{try{await $(),T()}catch{K(e.current)}},Z=async()=>{if(b)return;const $=t.trim();if(!$&&!v.length)return;const J=[...v];if(q(),D(),F(),J.length===0){await z(()=>h.sendUserMessage({message:$}));return}if(J.length===1)await z(()=>h.sendFileMessage({message:$,file:J[0].file}));else{const te=J.map(({file:oe})=>({file:oe}));await z(()=>h.sendMultipleFilesMessage({message:$,fileInfoList:te}))}},ge=$=>{const J=Array.from($.clipboardData.files);J.length>0&&($.preventDefault(),C(J))},j=$=>{$.key!=="Enter"||$.nativeEvent.isComposing||$.shiftKey||($.preventDefault(),Z())},x=$=>{if(b){e.current&&(e.current.value=t);return}if(e.current){e.current.style.height="";const J=Math.min($u,e.current.scrollHeight);Vo<J&&(e.current.style.height=`${J}px`)}n($.target.value)};return B?i.createElement(Js,null,i.createElement(eo,{disabled:!0}),i.createElement(js,null,i.createElement(Xs,null,i.createElement(Zs,{rows:1,...w,disabled:!0,placeholder:O,$blocked:!0,$focusVisible:!1,"data-focus-visible":"false"})))):i.createElement(Js,{"data-message-composer":""},i.createElement(eo,{disabled:b}),i.createElement(js,null,i.createElement(EE,null),i.createElement(Xs,null,i.createElement(Zs,{ref:e,rows:1,...w,readOnly:M,"aria-disabled":M?"true":void 0,placeholder:O,maxLength:5e3,$blocked:b,$focusVisible:u,"data-focus-visible":u?"true":"false",onKeyDown:j,onChange:x,onFocus:l.onFocus,onBlur:l.onBlur,onPaste:ge}))),W&&i.createElement(Di,{...s.messageInput.sendButton.props,onClick:()=>Z()},i.createElement(ee,{type:"send",color:g.color.primary.main,size:20}),s.messageInput.sendButton.descriptionNode))},SE=p.default.div`padding:8px 16px;text-align:center;word-break:break-word;white-space:pre-wrap;line-height:1.43;letter-spacing:-0.2px;font-size:14px;font-weight:400;color:${g.themedColor.textLowEmphasis};&& a{font-weight:700;text-decoration:none;${Q.light`
454
+ color: ${g.color.information.light};
458
455
  `};
459
- ${X.dark`
460
- color: ${p.color.information.main};
456
+ ${Q.dark`
457
+ color: ${g.color.information.main};
461
458
  `};
462
459
  }
463
- `,Q_=c.lazy(()=>Promise.resolve().then(()=>require("./cjs/D2Opuq0j.cjs")).then(e=>({default:e.MarkdownText}))),eE=()=>{const{aiAgentInfo:e,userSession:t}=Ne(),{messageSource:n,channelSource:r}=ye(),[s,o]=c.useState(null),a=mr("special-notice",r.channel),l=c.useCallback(()=>r.channel?a?n.messages.some(u=>Et(u,(t==null?void 0:t.userId)??"")):!0:null,[r.channel,a,n.messages,t==null?void 0:t.userId]);return c.useEffect(()=>{s||o(l())},[l,s]),s||!e.specialNotice?null:i.createElement(J_,null,i.createElement(Q_,null,e.specialNotice))},tE=()=>i.createElement(nE,null,i.createElement(eE,null),i.createElement(P_,null,i.createElement(Z_,null))),nE=_.default.div`z-index:0;border:none;width:100%;`,rE=()=>{var s;const{testerType:e}=St(),{channelSource:t}=ye(),n=De(t.channel),r=!!e&&((s=t.channel)==null?void 0:s.isAIAgent);return n&&r?i.createElement(N_,null):i.createElement(tE,null)},vi=({start:e,title:t,titleAlign:n="start",end:r,containerProps:s})=>{const o=c.useRef(null),a=c.useRef(null),[l,u]=c.useState(0),[d,m]=c.useState(0);return c.useLayoutEffect(()=>{o.current&&u(o.current.offsetWidth),a.current&&m(a.current.offsetWidth)},[e,r]),i.createElement(sE,{...s},i.createElement(oE,null,n==="center"&&t&&i.createElement(iE,{$sideWidth:Math.max(l,d)},i.createElement(aE,null,t)),i.createElement(lE,null,i.createElement(cE,{ref:o},e),(n==="start"||n==="end")&&t&&i.createElement(dE,{$align:n,$hasStart:!!e,$hasEnd:!!r},t),i.createElement(uE,{ref:a},r))))},sE=_.default.div`position:relative;width:100%;background-color:${({theme:e})=>e.colors.base.headerBackground};border-bottom:1px solid ${p.themedColor.textDisabled};`,oE=_.default.div`position:relative;height:56px;padding:11px 12px;`,iE=_.default.div`position:absolute;left:${({$sideWidth:e})=>e}px;right:${({$sideWidth:e})=>e}px;top:0;bottom:0;display:flex;align-items:center;justify-content:center;`,aE=_.default.div`max-width:100%;overflow:hidden;`,lE=_.default.div`display:flex;flex-direction:row;align-items:center;justify-content:space-between;height:100%;z-index:1;`,cE=_.default.div`flex-shrink:0;display:flex;align-items:center;`,uE=_.default.div`flex-shrink:0;display:flex;align-items:center;`,dE=_.default.div`flex:1;overflow:hidden;display:flex;align-items:${({$align:e})=>e==="start"?"flex-start":"flex-end"};margin-left:${({$hasStart:e})=>e?8:0}px;margin-right:${({$hasEnd:e})=>e?8:0}px;`,Ft=()=>Dt()?24:16,mE=()=>{const{state:e}=fe(),{messenger:t}=se(),n=Ft(),r=()=>{e.setOpened(!1)};return i.createElement(Je,{...t.closeButton,type:"close",size:n,onClick:r})},hE=()=>{const{enableCloseConversationButton:e,dispatcher:t}=fe(),{channelSource:n}=ye(),{conversation:r}=se(),s=n.channel,o=Ft(),a=(s==null?void 0:s.isAIAgent)&&e,l=!sr(s);if(!a)return null;const u=async()=>{s&&await t.send(lt.CloseConversation({channelUrl:s.url}))};return i.createElement(i.Fragment,null,i.createElement(Je,{...r.header.closeConversationButton.props,type:"mute",size:o,disabled:l,onClick:u}),r.header.closeConversationButton.descriptionNode)},fE=()=>{const{state:e,enableExpandButton:t}=fe(),{messenger:n}=se(),r=Ft();return t?i.createElement(Je,{...n.expandButton(e.expanded),type:e.expanded?"collapse":"expand",size:r,onClick:()=>e.setExpanded(!e.expanded)}):null},gE=({label:e,children:t,position:n="top",disabled:r})=>r?t:i.createElement(Qn,null,t,i.createElement(EE,{$position:n},i.createElement(bE,{variant:"caption1"},e),i.createElement(pE,{$position:n}))),pE=({$position:e})=>i.createElement("svg",{style:{transform:e==="top"?"rotate(0)":"rotate(180deg)"},xmlns:"http://www.w3.org/2000/svg",width:"12",height:"6",viewBox:"0 0 12 6",fill:"none"},i.createElement("path",{d:"M6 6L0 0h12L6 6Z",fill:p.themedColor.textHighEmphasis})),_E={top:P.css`flex-direction:column;top:0;transform:translate(-50%,-100%);`,bottom:P.css`flex-direction:column-reverse;bottom:0;transform:translate(-50%,100%);`},Qn=_.default.div`position:relative;`,EE=_.default.div`display:flex;align-items:center;position:absolute;left:50%;z-index:${vt.TOOLTIP};${({$position:e})=>_E[e]}opacity:0;transition:opacity 0.2s ease-in-out;pointer-events:none;${Qn}:hover &,${Qn}:focus-within &{opacity:1;}`,bE=_.default(B)`padding:6px 8px;background:${p.themedColor.textHighEmphasis};color:${p.themedColor.textHighEmphasisInverse};border-radius:4px;font-size:12px;white-space:nowrap;`,CE=2e3,Ws=0,vE=1500,Jt=Symbol("header-focus-status-pause"),Ys="data-sb-header-focus-protected",yE="[data-message-composer]",Ks=new WeakMap,Bn=e=>{const t=Ks.get(e);if(t)return t;const n={focusedTargetIds:new Set,pendingBlurTimeouts:new Map,maxPauseTimeout:null};return Ks.set(e,n),n},Un=(e,t)=>{const n=e.pendingBlurTimeouts.get(t);n&&(clearTimeout(n),e.pendingBlurTimeouts.delete(t))},tn=e=>{e.maxPauseTimeout&&(clearTimeout(e.maxPauseTimeout),e.maxPauseTimeout=null)},SE=e=>{e.pendingBlurTimeouts.forEach(t=>clearTimeout(t)),e.pendingBlurTimeouts.clear(),e.focusedTargetIds.clear(),tn(e)},AE=e=>{const t=e.hasAttribute("tabindex"),n=e.getAttribute("tabindex");return t||e.tabIndex>=0?()=>{}:(e.setAttribute("tabindex","-1"),()=>{if(n===null){e.removeAttribute("tabindex");return}e.setAttribute("tabindex",n)})},xE=e=>e instanceof HTMLBodyElement||(e instanceof HTMLButtonElement||e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement)&&e.disabled?!0:(e instanceof HTMLElement&&e.closest(yE),!1),yi=()=>{const{setStatusPauseState:e}=st(),t=c.useRef(Symbol("header-focus-target")),n=c.useRef(!1),r=c.useRef(0),s=c.useRef(null),o=c.useCallback(()=>{s.current&&(clearTimeout(s.current),s.current=null)},[]),a=c.useCallback(()=>{if(n.current)return;n.current=!0,r.current=Date.now()+vE,o();const u=Bn(e);Un(u,t.current),u.focusedTargetIds.add(t.current),u.focusedTargetIds.size===1&&e(Jt,!0),tn(u),u.maxPauseTimeout=setTimeout(()=>{SE(u),e(Jt,!1)},CE)},[o,e]),l=c.useCallback(u=>{if(!n.current)return;n.current=!1;const d=u.currentTarget,m=Bn(e),h=d instanceof HTMLElement&&Date.now()<=r.current;Un(m,t.current),h&&(o(),s.current=setTimeout(()=>{if(s.current=null,!(d instanceof HTMLElement)||!d.isConnected)return;const v=d.ownerDocument.activeElement,b=v instanceof HTMLElement&&v.hasAttribute(Ys);if(v===d||b||!xE(v))return;const C=AE(d);d.focus({preventScroll:!0}),C()},Ws)),m.pendingBlurTimeouts.set(t.current,setTimeout(()=>{m.pendingBlurTimeouts.delete(t.current),m.focusedTargetIds.delete(t.current),m.focusedTargetIds.size===0&&(tn(m),e(Jt,!1))},Ws))},[o,e]);return c.useEffect(()=>()=>{const u=Bn(e);n.current=!1,o(),Un(u,t.current),u.focusedTargetIds.delete(t.current)&&u.focusedTargetIds.size===0&&(tn(u),e(Jt,!1))},[o,e]),{[Ys]:"true",onFocus:a,onBlur:l}},TE=()=>{const{logger:e}=fe(),{stringSet:t}=re(),{channelSource:n}=ye(),{conversation:r}=se(),s=n.channel,o=Ft(),a=mr("handoff-button",s),l=!sr(s)||nt(s),[u,d]=c.useState(!1),m=yi(),h=async()=>{d(!1);try{const f=await(s==null?void 0:s.markConversationAsHandoff());e.info("conversation.handleAgentHandoff: success",f)}catch(f){e.error("conversation.handleAgentHandoff: error",f)}};return a?i.createElement(i.Fragment,null,i.createElement(i.Fragment,null,i.createElement(gE,{label:t.HEADER_BUTTON__AGENT_HANDOFF,position:"bottom",disabled:l},i.createElement(Je,{...r.header.handoffButton.props,type:"agent",size:o,disabled:l,...m,onClick:()=>d(!0)})),r.header.handoffButton.descriptionNode),i.createElement(ut,{portalContainerId:ve.WINDOW,visible:u,onClose:()=>d(!1)},i.createElement(_i,{title:t.HANDOFF_CONFIRM__TITLE,description:t.HANDOFF_CONFIRM__DESCRIPTION,negativeText:t.HANDOFF_CONFIRM__CANCEL,positiveText:t.HANDOFF_CONFIRM__HANDOFF,onCancel:()=>d(!1),onConfirm:h}))):null},IE=()=>{const{conversation:e}=se(),{onNavigateToConversationList:t}=ye();return t?i.createElement(i.Fragment,null,i.createElement(Je,{...e.header.menuButton.props,...cu,type:"menu",size:24,onClick:()=>t()}),e.header.menuButton.descriptionNode):null},Si=({channel:e,size:t=40})=>{const{userSession:n,aiAgentInfo:r}=Ne(),{fallbackIcon:s,url:o}=hr({channel:e,aiAgentInfo:r,userSession:n}),a=P.useTheme();return o?i.createElement(ni,{src:o,size:t,"aria-hidden":"true"}):i.createElement(wE,{"aria-hidden":"true",$size:t,$bgColor:a.colors.base.primary},i.createElement(Z,{type:s,size:t*.55,color:a.colors.base.primaryContrastContent}))},wE=_.default.div`width:${({$size:e})=>e}px;height:${({$size:e})=>e}px;border-radius:50%;background-color:${({$bgColor:e})=>e};display:flex;align-items:center;justify-content:center;flex-shrink:0;`,ME=()=>{var m,h;const{channelSource:e}=ye(),{aiAgentInfo:t,userSession:n}=Ne(),{conversation:r}=se(),{config:s}=$e(),o=e.channel,a=hr({channel:o,userSession:n,aiAgentInfo:t}),l=(h=(m=s==null?void 0:s.conversation)==null?void 0:m.header)==null?void 0:h.avatarEnabled,u=yi(),d=r.header.title(a.title);return i.createElement(kE,null,l&&i.createElement(Si,{channel:o,size:34}),i.createElement(LE,{...d,...u},a.title))},kE=_.default.div`display:flex;flex-direction:row;align-items:center;gap:6px;overflow:hidden;`,LE=_.default(B).attrs({variant:"h2",color:p.themedColor.textHighEmphasis})`
460
+ `,AE=c.lazy(()=>Promise.resolve().then(()=>require("./cjs/D2Opuq0j.cjs")).then(e=>({default:e.MarkdownText}))),xE=()=>{const{aiAgentInfo:e,userSession:t}=Re(),{messageSource:n,channelSource:r}=Se(),[s,o]=c.useState(null),a=_r("special-notice",r.channel),l=c.useCallback(()=>r.channel?a?n.messages.some(u=>_t(u,(t==null?void 0:t.userId)??"")):!0:null,[r.channel,a,n.messages,t==null?void 0:t.userId]);return c.useEffect(()=>{s||o(l())},[l,s]),s||!e.specialNotice?null:i.createElement(SE,null,i.createElement(AE,null,e.specialNotice))},TE=()=>i.createElement(IE,null,i.createElement(xE,null),i.createElement(lE,null,i.createElement(yE,null))),IE=p.default.div`z-index:0;border:none;width:100%;`,wE=()=>{var s;const{testerType:e}=Ct(),{channelSource:t}=Se(),n=De(t.channel),r=!!e&&((s=t.channel)==null?void 0:s.isAIAgent);return n&&r?i.createElement(oE,null):i.createElement(TE,null)},$i=({start:e,title:t,titleAlign:n="start",end:r,containerProps:s})=>{const o=c.useRef(null),a=c.useRef(null),[l,u]=c.useState(0),[d,m]=c.useState(0);return c.useLayoutEffect(()=>{o.current&&u(o.current.offsetWidth),a.current&&m(a.current.offsetWidth)},[e,r]),i.createElement(ME,{...s},i.createElement(kE,null,n==="center"&&t&&i.createElement(RE,{$sideWidth:Math.max(l,d)},i.createElement(OE,null,t)),i.createElement(LE,null,i.createElement(NE,{ref:o},e),(n==="start"||n==="end")&&t&&i.createElement($E,{$align:n,$hasStart:!!e,$hasEnd:!!r},t),i.createElement(DE,{ref:a},r))))},ME=p.default.div`position:relative;width:100%;background-color:${({theme:e})=>e.colors.base.headerBackground};border-bottom:1px solid ${g.themedColor.textDisabled};`,kE=p.default.div`position:relative;height:56px;padding:11px 12px;`,RE=p.default.div`position:absolute;left:${({$sideWidth:e})=>e}px;right:${({$sideWidth:e})=>e}px;top:0;bottom:0;display:flex;align-items:center;justify-content:center;`,OE=p.default.div`max-width:100%;overflow:hidden;`,LE=p.default.div`display:flex;flex-direction:row;align-items:center;justify-content:space-between;height:100%;z-index:1;`,NE=p.default.div`flex-shrink:0;display:flex;align-items:center;`,DE=p.default.div`flex-shrink:0;display:flex;align-items:center;`,$E=p.default.div`flex:1;overflow:hidden;display:flex;align-items:${({$align:e})=>e==="start"?"flex-start":"flex-end"};margin-left:${({$hasStart:e})=>e?8:0}px;margin-right:${({$hasEnd:e})=>e?8:0}px;`,vt=(e=16)=>Pt()?e*1.5:e,PE=()=>{const{state:e}=fe(),{messenger:t}=se(),n=vt(),r=()=>{e.setOpened(!1)};return i.createElement(Qe,{...t.closeButton,type:"close",size:n,onClick:r})},FE=()=>{const{enableCloseConversationButton:e,dispatcher:t}=fe(),{channelSource:n}=Se(),{conversation:r}=se(),s=n.channel,o=vt(),a=(s==null?void 0:s.isAIAgent)&&e,l=!ur(s);if(!a)return null;const u=async()=>{s&&await t.send(rt.CloseConversation({channelUrl:s.url}))};return i.createElement(i.Fragment,null,i.createElement(Qe,{...r.header.closeConversationButton.props,type:"mute",size:o,disabled:l,onClick:u}),r.header.closeConversationButton.descriptionNode)},BE=()=>{const{state:e,enableExpandButton:t}=fe(),{messenger:n}=se(),r=vt();return t?i.createElement(Qe,{...n.expandButton(e.expanded),type:e.expanded?"collapse":"expand",size:r,onClick:()=>e.setExpanded(!e.expanded)}):null},UE=({label:e,children:t,position:n="top",disabled:r})=>r?t:i.createElement(sr,null,t,i.createElement(VE,{$position:n},i.createElement(zE,{variant:"caption1"},e),i.createElement(HE,{$position:n}))),HE=({$position:e})=>i.createElement("svg",{style:{transform:e==="top"?"rotate(0)":"rotate(180deg)"},xmlns:"http://www.w3.org/2000/svg",width:"12",height:"6",viewBox:"0 0 12 6",fill:"none"},i.createElement("path",{d:"M6 6L0 0h12L6 6Z",fill:g.themedColor.textHighEmphasis})),GE={top:P.css`flex-direction:column;top:0;transform:translate(-50%,-100%);`,bottom:P.css`flex-direction:column-reverse;bottom:0;transform:translate(-50%,100%);`},sr=p.default.div`position:relative;`,VE=p.default.div`display:flex;align-items:center;position:absolute;left:50%;z-index:${dt.TOOLTIP};${({$position:e})=>GE[e]}opacity:0;transition:opacity 0.2s ease-in-out;pointer-events:none;${sr}:hover &,${sr}:focus-within &{opacity:1;}`,zE=p.default(U)`padding:6px 8px;background:${g.themedColor.textHighEmphasis};color:${g.themedColor.textHighEmphasisInverse};border-radius:4px;font-size:12px;white-space:nowrap;`,YE=2e3,to=0,WE=1500,Qt=Symbol("header-focus-status-pause"),no="data-sb-header-focus-protected",qE="[data-message-composer]",ro=new WeakMap,Hn=e=>{const t=ro.get(e);if(t)return t;const n={focusedTargetIds:new Set,pendingBlurTimeouts:new Map,maxPauseTimeout:null};return ro.set(e,n),n},Gn=(e,t)=>{const n=e.pendingBlurTimeouts.get(t);n&&(clearTimeout(n),e.pendingBlurTimeouts.delete(t))},en=e=>{e.maxPauseTimeout&&(clearTimeout(e.maxPauseTimeout),e.maxPauseTimeout=null)},KE=e=>{e.pendingBlurTimeouts.forEach(t=>clearTimeout(t)),e.pendingBlurTimeouts.clear(),e.focusedTargetIds.clear(),en(e)},jE=e=>{const t=e.hasAttribute("tabindex"),n=e.getAttribute("tabindex");return t||e.tabIndex>=0?()=>{}:(e.setAttribute("tabindex","-1"),()=>{if(n===null){e.removeAttribute("tabindex");return}e.setAttribute("tabindex",n)})},XE=e=>e instanceof HTMLBodyElement||(e instanceof HTMLButtonElement||e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement)&&e.disabled?!0:(e instanceof HTMLElement&&e.closest(qE),!1),Nr=()=>{const{setStatusPauseState:e}=Je(),t=c.useRef(Symbol("header-focus-target")),n=c.useRef(!1),r=c.useRef(0),s=c.useRef(null),o=c.useCallback(()=>{s.current&&(clearTimeout(s.current),s.current=null)},[]),a=c.useCallback(()=>{if(n.current)return;n.current=!0,r.current=Date.now()+WE,o();const u=Hn(e);Gn(u,t.current),u.focusedTargetIds.add(t.current),u.focusedTargetIds.size===1&&e(Qt,!0),en(u),u.maxPauseTimeout=setTimeout(()=>{KE(u),e(Qt,!1)},YE)},[o,e]),l=c.useCallback(u=>{if(!n.current)return;n.current=!1;const d=u.currentTarget,m=Hn(e),h=d instanceof HTMLElement&&Date.now()<=r.current;Gn(m,t.current),h&&(o(),s.current=setTimeout(()=>{if(s.current=null,!(d instanceof HTMLElement)||!d.isConnected)return;const v=d.ownerDocument.activeElement,C=v instanceof HTMLElement&&v.hasAttribute(no);if(v===d||C||!XE(v))return;const y=jE(d);d.focus({preventScroll:!0}),y()},to)),m.pendingBlurTimeouts.set(t.current,setTimeout(()=>{m.pendingBlurTimeouts.delete(t.current),m.focusedTargetIds.delete(t.current),m.focusedTargetIds.size===0&&(en(m),e(Qt,!1))},to))},[o,e]);return c.useEffect(()=>()=>{const u=Hn(e);n.current=!1,o(),Gn(u,t.current),u.focusedTargetIds.delete(t.current)&&u.focusedTargetIds.size===0&&(en(u),e(Qt,!1))},[o,e]),{[no]:"true",onFocus:a,onBlur:l}},ZE=()=>{const{logger:e}=fe(),{stringSet:t}=ie(),{channelSource:n}=Se(),{conversation:r}=se(),s=n.channel,o=vt(),a=_r("handoff-button",s),l=!ur(s)||it(s),[u,d]=c.useState(!1),m=Nr(),h=async()=>{d(!1);try{const f=await(s==null?void 0:s.markConversationAsHandoff());e.info("conversation.handleAgentHandoff: success",f)}catch(f){e.error("conversation.handleAgentHandoff: error",f)}};return a?i.createElement(i.Fragment,null,i.createElement(i.Fragment,null,i.createElement(UE,{label:t.HEADER_BUTTON__AGENT_HANDOFF,position:"bottom",disabled:l},i.createElement(Qe,{...r.header.handoffButton.props,type:"agent",size:o,disabled:l,...m,onClick:()=>d(!0)})),r.header.handoffButton.descriptionNode),i.createElement(lt,{portalContainerId:_e.WINDOW,visible:u,onClose:()=>d(!1)},i.createElement(Rr,{title:t.HANDOFF_CONFIRM__TITLE,description:t.HANDOFF_CONFIRM__DESCRIPTION,negativeText:t.HANDOFF_CONFIRM__CANCEL,positiveText:t.HANDOFF_CONFIRM__HANDOFF,onCancel:()=>d(!1),onConfirm:h}))):null},JE=c.lazy(()=>Promise.resolve().then(()=>require("./cjs/D2Opuq0j.cjs")).then(e=>({default:e.MarkdownText}))),QE=()=>{const{logger:e}=fe(),{stringSet:t}=ie(),{memoryInfo:n,sdkUser:r}=Re(),{actions:s}=Se(),{conversation:o}=se(),a=vt(20),l=Nr(),[u,d]=c.useState(null),[m,h]=c.useState(!1),f=c.useRef(!1);if(c.useEffect(()=>{r&&(n!=null&&n.consentDialog)&&d({...n})},[r,n==null?void 0:n.consentDialog]),!r||!n)return null;const{props:v,descriptionNode:C}=o.header.memoryIndicator(n.enabled),y={as:"button",type:"button",onClick:()=>d({...n}),...l},E=async _=>{if(!f.current){f.current=!0,h(!1);try{await s.setUserMemoryState({enabled:_}),d(null)}catch(b){e.error("memoryIndicator.setUserMemoryState: error",b),h(!0)}finally{f.current=!1}}};return i.createElement(i.Fragment,null,n.showIndicator&&i.createElement(i.Fragment,null,i.createElement(rb,{...v,...y,$size:a},i.createElement(ee,{type:"memory",size:a,color:g.themedColor.textHighEmphasis}),i.createElement(sb,{$enabled:n.enabled})),C),u&&i.createElement(eb,{memoryInfo:u,onClose:()=>d(null),onSetEnabled:E}),i.createElement(Cn,{visible:m,title:t.PLACE_HOLDER__WRONG,description:t.MEMORY__ERROR_MESSAGE,onClose:()=>h(!1)}))},eb=({memoryInfo:e,onClose:t,onSetEnabled:n})=>{var h;const{stringSet:r}=ie(),{colors:s}=P.useTheme(),o=c.useId(),a=c.useId(),l=gl(e),u=l==="consent",d={consent:{body:((h=e.consentDialog)==null?void 0:h.body)??"",negativeText:r.MEMORY__BUTTON_DONT_USE,positiveText:r.MEMORY__BUTTON_USE,onCancel:()=>n(!1),onConfirm:()=>n(!0)},on:{body:r.MEMORY__DESC_ON,negativeText:e.deleteOnOff?r.MEMORY__BUTTON_DISABLE_AND_DELETE:r.MEMORY__BUTTON_DISABLE,positiveText:r.MEMORY__BUTTON_KEEP_USING,onCancel:()=>n(!1),onConfirm:t},off:{body:r.MEMORY__DESC_OFF,negativeText:r.MEMORY__BUTTON_ENABLE,positiveText:r.MEMORY__BUTTON_KEEP_OFF,onCancel:()=>n(!0),onConfirm:t},readonly:{body:e.enabled?r.MEMORY__DESC_ON:r.MEMORY__DESC_OFF,negativeText:void 0,positiveText:r.MEMORY__BUTTON_CANCEL,onCancel:void 0,onConfirm:t}}[l],m=s.memoryDialog;return i.createElement(lt,{visible:!0,portalContainerId:_e.WINDOW,onClose:t,cancelable:!u,"aria-labelledby":o,"aria-describedby":a},i.createElement(Rr,{title:r.MEMORY__DIALOG_TITLE,titleId:o,description:i.createElement(tb,null,d.body),descriptionId:a,negativeText:d.negativeText,positiveText:d.positiveText,buttonLayout:u?"horizontal":"vertical-full-width",onCancel:d.onCancel,onConfirm:d.onConfirm,styles:{titleColor:m.titleText,positiveBackground:m.positiveBackground,positiveText:m.positiveText,positiveBorderColor:m.positiveBorderColor,negativeBackground:m.negativeBackground,negativeText:m.negativeText,negativeBorderColor:m.negativeBorderColor}}))},tb=({children:e})=>i.createElement(ob,null,i.createElement(Lt,{fallback:e},i.createElement(JE,null,e))),nb=P.css`all:unset;box-sizing:border-box;width:${({$size:e})=>e}px;height:${({$size:e})=>e}px;display:flex;align-items:center;justify-content:center;position:relative;`,rb=p.default.button`${nb};cursor:pointer;${we}`,sb=p.default.span`position:absolute;top:0;inset-inline-end:0;width:8px;height:8px;border-radius:999px;background-color:${({$enabled:e})=>e?g.themedColor.secondary:g.color.background300};box-shadow:0 0 0 2px ${g.color.background50};${Q.dark`
461
+ box-shadow: 0 0 0 2px ${g.color.background500};
462
+ `}
463
+ `,ob=p.default.div`color:${({theme:e})=>e.colors.memoryDialog.markdownBodyText};line-height:20px;word-break:break-word;&& a{color:${({theme:e})=>e.colors.memoryDialog.markdownLinkText};font-weight:inherit;text-decoration:underline;}`,ib=()=>{const{conversation:e}=se(),{onNavigateToConversationList:t}=Se();return t?i.createElement(i.Fragment,null,i.createElement(Qe,{...e.header.menuButton.props,...Bo,type:"menu",size:24,onClick:()=>t()}),e.header.menuButton.descriptionNode):null},Pi=Ee("WindowTitle",{hasWindowTitleReference:!1,registerWindowTitleReference:()=>he}),ab=Pi.Provider,Fi=Pi.useContext,Dr=({children:e})=>{const t=c.useRef(0),[n,r]=c.useState(!1),s=c.useCallback(()=>{let a=!0;return t.current+=1,t.current===1&&r(!0),()=>{a&&(a=!1,t.current=Math.max(0,t.current-1),t.current===0&&r(!1))}},[]),o=c.useMemo(()=>({hasWindowTitleReference:n,registerWindowTitleReference:s}),[n,s]);return i.createElement(ab,{value:o},e)},$r=Fi,Bi=({active:e,label:t})=>{const{registerWindowTitleReference:n}=Fi(),r=e&&t.trim().length>0;return c.useLayoutEffect(()=>{if(r)return n()},[n,r]),{active:r,id:r?_e.WINDOW_TITLE:void 0}},Ui=({channel:e,size:t=40})=>{const{userSession:n,aiAgentInfo:r}=Re(),{fallbackIcon:s,url:o}=Er({channel:e,aiAgentInfo:r,userSession:n}),a=P.useTheme();return o?i.createElement(Ei,{src:o,size:t,"aria-hidden":"true"}):i.createElement(lb,{"aria-hidden":"true",$size:t,$bgColor:a.colors.base.primary},i.createElement(ee,{type:s,size:t*.55,color:a.colors.base.primaryContrastContent}))},lb=p.default.div`width:${({$size:e})=>e}px;height:${({$size:e})=>e}px;border-radius:50%;background-color:${({$bgColor:e})=>e};display:flex;align-items:center;justify-content:center;flex-shrink:0;`,cb=()=>{var f,v;const{channelSource:e}=Se(),{aiAgentInfo:t,userSession:n}=Re(),{conversation:r}=se(),{config:s}=Pe(),{announcementsActive:o}=Je(),a=e.channel,l=Er({channel:a,userSession:n,aiAgentInfo:t}),u=(v=(f=s==null?void 0:s.conversation)==null?void 0:f.header)==null?void 0:v.avatarEnabled,d=Nr(),m=Bi({active:o,label:l.title}),h=r.header.title(l.title,{active:m.active,titleId:m.id});return i.createElement(ub,null,u&&i.createElement(Ui,{channel:a,size:34}),i.createElement(db,{...h,...d},l.title))},ub=p.default.div`display:flex;flex-direction:row;align-items:center;gap:6px;min-width:0;width:100%;overflow:hidden;`,db=p.default(U).attrs({variant:"h2",color:g.themedColor.textHighEmphasis})`
464
464
  margin: 0;
465
465
  flex: 1;
466
466
  min-width: 0;
@@ -472,10 +472,10 @@
472
472
  &:focus {
473
473
  outline: none;
474
474
  }
475
- `,RE=e=>{const{components:t}=mt.useContext();return i.createElement(vi,{start:i.createElement(t.StartArea,null),title:i.createElement(t.TitleArea,null),titleAlign:e.titleAlign,end:i.createElement(t.EndArea,null),containerProps:du})},OE=()=>{const{components:e}=mt.useContext();return i.createElement(e.MenuButton,null)},NE=()=>{const{components:e}=mt.useContext();return i.createElement(e.Title,null)},DE=()=>{const{components:e}=mt.useContext();return i.createElement(PE,null,i.createElement(e.HandoffButton,null),i.createElement(e.ConversationCloseButton,null),i.createElement(e.ExpandButton,null),i.createElement(e.CloseButton,null))},mt=qe({template:RE,components:{StartArea:OE,TitleArea:NE,EndArea:DE,MenuButton:IE,Title:ME,HandoffButton:TE,ConversationCloseButton:hE,ExpandButton:fE,CloseButton:mE}}),$E=()=>{const{isActionbookTester:e}=St(),{Template:t}=mt.useContext();return e?null:i.createElement(t,{titleAlign:"start"})},PE=_.default.div`display:flex;gap:10px;align-items:center;justify-content:center;`,Ai=({children:e,onNavigateToConversationList:t,channelUrl:n,onClearChannelUrl:r,shouldMarkAsRead:s,announcementsEnabled:o,style:a,closedChannelUrl:l,onClearClosedChannelUrl:u})=>{const{Template:d}=Sn.useContext();return i.createElement(Yo,{onNavigateToConversationList:t,channelUrl:n??l,onClearChannelUrl:r??u,shouldMarkAsRead:s},i.createElement(jn,null,i.createElement(jn.Consumer,null,m=>i.createElement(rd,{announcementsActive:o},i.createElement(FE,null),i.createElement(BE,{style:a,dragHandlers:m},i.createElement(d,null)),e))))},FE=()=>(hm(),om(),um(),null),BE=({style:e,dragHandlers:t,children:n})=>{const r=c.useRef(null);return Qd(r),i.createElement(HE,{ref:r,style:e,...t},n)},UE=e=>{const{components:t}=Sn.useContext();return i.createElement(i.Fragment,null,i.createElement(t.Header,null),i.createElement(t.Body,null),i.createElement(t.Footer,null))},Sn=qe({template:UE,components:{Header:$E,Body:O_,Footer:rE}}),HE=_.default.div`height:100%;width:100%;display:flex;flex-direction:column;flex:1;background-color:${({theme:e})=>e.colors.base.background};`,{Provider:GE,Context:VE,useContext:An}=Ee("ConversationList");function xi({conversationListLimit:e,conversationListFilter:t,onOpenConversationView:n=he,children:r}){return i.createElement(Ql,{conversationListLimit:e,conversationListFilter:t},s=>i.createElement(GE,{value:{...s,onOpenConversationView:n}},r))}const zE=({channel:e})=>i.createElement(Si,{channel:e}),er=99,qE=e=>{var g,y;const{channel:t,onClick:n}=e,{stringSet:r,format:s}=re(),{userSession:o,aiAgentInfo:a}=Ne(),{conversationList:l}=se(),u=hr({channel:t,userSession:o,aiAgentInfo:a}),d=Ya(t,{formatMultipleFilesCount:r.CONVERSATION_LIST__MULTIPLE_FILES_COUNT}),m=Ka(t,s,{justNow:r.DATE_FORMAT__JUST_NOW,minutesAgo:r.DATE_FORMAT__MINUTES_AGO,hoursAgo:r.DATE_FORMAT__HOURS_AGO,dateShortFormat:r.DATE_FORMAT__DATE_SHORT}),h=t.unreadMessageCount,f=(g=t.lastMessage)!=null&&g.isAdminMessage()?r.CONVERSATION_LIST__SYSTEM_MESSAGE:u.title,v=De(t)?r.CONVERSATION_LIST__ENDED:go(t,{formatMultipleFilesCount:r.CONVERSATION_LIST__MULTIPLE_FILES_COUNT}),b=n?()=>n():void 0,C=l.item({agent:f,status:v,time:m,unreadCount:h,onActivate:b});return i.createElement(WE,{"data-testid":"sb-conversation-list-item",$clickable:!!b,...C.props},i.createElement(YE,null,i.createElement(zE,{...e})),i.createElement(KE,null,i.createElement(jE,null,(y=t.lastMessage)!=null&&y.isFileMessage()&&(!t.lastMessage.message||t.lastMessage.name===t.lastMessage.message)?i.createElement(Jo,{variant:"subtitle1",color:p.themedColor.textHighEmphasis},d):i.createElement(B,{variant:"subtitle1",color:p.themedColor.textHighEmphasis,maxTextLines:1},d),i.createElement(XE,null,De(t)&&i.createElement(i.Fragment,null,i.createElement(B,{variant:"caption1",color:p.themedColor.textMidEmphasis,maxTextLines:1},r.CONVERSATION_LIST__ENDED),i.createElement(ZE,null)),i.createElement(B,{variant:"caption2",color:p.themedColor.textLowEmphasis,maxTextLines:1},m))),h>0&&i.createElement(JE,{$count:h},i.createElement(B,{variant:"caption3",color:p.themedColor.textHighEmphasisInverse},h<=er?h:`${er}+`))),C.descriptionNode)},wr=qe({template:qE,components:{}}),WE=_.default.div`display:flex;flex-shrink:0;flex-direction:row;align-items:center;position:relative;width:100%;height:72px;box-sizing:border-box;gap:16px;cursor:${({$clickable:e})=>e?"pointer":"default"};`,YE=_.default.div`display:flex;align-items:center;justify-content:center;padding-inline-start:16px;`,KE=_.default.div`display:flex;flex-direction:row;align-items:center;flex:1;min-width:0;padding-inline-end:16px;height:100%;gap:8px;border-bottom:1px solid ${p.themedColor.textDisabled};`,jE=_.default.div`display:flex;flex-direction:column;justify-content:center;flex:1;min-width:0;gap:4px;word-break:break-word;overflow-wrap:break-word;`,XE=_.default.div`display:flex;align-items:center;gap:6px;`,ZE=_.default.div`width:2px;height:2px;border-radius:1px;background-color:${p.themedColor.textLowEmphasis};`,JE=_.default.div`display:flex;align-items:center;justify-content:center;height:20px;padding:4px;border-radius:10px;background-color:${p.themedColor.error};${({$count:e})=>e<=er&&P.css`
475
+ `,mb=e=>{const{components:t}=ht.useContext();return i.createElement($i,{start:i.createElement(t.StartArea,null),title:i.createElement(t.TitleArea,null),titleAlign:e.titleAlign,end:i.createElement(t.EndArea,null),containerProps:Go})},hb=()=>{const{components:e}=ht.useContext();return i.createElement(e.MenuButton,null)},fb=()=>{const{components:e}=ht.useContext();return i.createElement(e.Title,null)},gb=()=>{const{components:e}=ht.useContext();return i.createElement(_b,null,i.createElement(e.MemoryIndicator,null),i.createElement(e.HandoffButton,null),i.createElement(e.ConversationCloseButton,null),i.createElement(e.ExpandButton,null),i.createElement(e.CloseButton,null))},ht=Ye({template:mb,components:{StartArea:hb,TitleArea:fb,EndArea:gb,MenuButton:ib,Title:cb,MemoryIndicator:QE,HandoffButton:ZE,ConversationCloseButton:FE,ExpandButton:BE,CloseButton:PE}}),pb=()=>{const{isActionbookTester:e}=Ct(),{Template:t}=ht.useContext();return e?null:i.createElement(t,{titleAlign:"start"})},_b=p.default.div`display:flex;gap:10px;align-items:center;justify-content:center;`,Hi=({children:e,onNavigateToConversationList:t,channelUrl:n,onClearChannelUrl:r,shouldMarkAsRead:s,announcementsEnabled:o,style:a,closedChannelUrl:l,onClearClosedChannelUrl:u})=>{const{Template:d}=xn.useContext();return i.createElement(li,{onNavigateToConversationList:t,channelUrl:n??l,onClearChannelUrl:r??u,shouldMarkAsRead:s},i.createElement(Qn,null,i.createElement(Qn.Consumer,null,m=>i.createElement(Id,{announcementsActive:o},i.createElement(Eb,null),i.createElement(bb,{style:a,dragHandlers:m},i.createElement(d,null)),e))))},Eb=()=>(Fm(),wm(),Dm(),null),bb=({style:e,dragHandlers:t,children:n})=>{const r=c.useRef(null);return ym(r),i.createElement(vb,{ref:r,style:e,...t},n)},Cb=e=>{const{components:t}=xn.useContext();return i.createElement(i.Fragment,null,i.createElement(t.Header,null),i.createElement(t.Body,null),i.createElement(t.Footer,null))},xn=Ye({template:Cb,components:{Header:pb,Body:sE,Footer:wE}}),vb=p.default.div`height:100%;width:100%;display:flex;flex-direction:column;flex:1;background-color:${({theme:e})=>e.colors.base.background};`,{Provider:yb,Context:Sb,useContext:yt}=Ee("ConversationList");function Gi({conversationListLimit:e,conversationListFilter:t,onOpenConversationView:n=he,announcementsEnabled:r=!0,children:s}){return i.createElement(Ec,{conversationListLimit:e,conversationListFilter:t},o=>i.createElement(yb,{value:{...o,announcementsEnabled:r,onOpenConversationView:n}},s))}const Ab=e=>{const{announcementsEnabled:t,listSource:n}=yt();ci(e,{enabled:t,ready:n.initialized})},xb=({channel:e})=>i.createElement(Ui,{channel:e}),or=99,Tb=e=>{var E,_;const{channel:t,onClick:n}=e,{stringSet:r,format:s}=ie(),{userSession:o,aiAgentInfo:a}=Re(),{conversationList:l}=se(),u=Er({channel:t,userSession:o,aiAgentInfo:a}),d=dl(t,{formatMultipleFilesCount:r.CONVERSATION_LIST__MULTIPLE_FILES_COUNT}),m=ml(t,s,{justNow:r.DATE_FORMAT__JUST_NOW,minutesAgo:r.DATE_FORMAT__MINUTES_AGO,hoursAgo:r.DATE_FORMAT__HOURS_AGO,dateShortFormat:r.DATE_FORMAT__DATE_SHORT}),h=t.unreadMessageCount,f=(E=t.lastMessage)!=null&&E.isAdminMessage()?r.CONVERSATION_LIST__SYSTEM_MESSAGE:u.title,v=De(t)?r.CONVERSATION_LIST__ENDED:So(t,{formatMultipleFilesCount:r.CONVERSATION_LIST__MULTIPLE_FILES_COUNT}),C=n?()=>n():void 0,y=l.item({agent:f,status:v,time:m,unreadCount:h,onActivate:C});return i.createElement(Ib,{"data-testid":"sb-conversation-list-item",$clickable:!!C,...y.props},i.createElement(wb,null,i.createElement(xb,{...e})),i.createElement(Mb,null,i.createElement(kb,null,(_=t.lastMessage)!=null&&_.isFileMessage()&&(!t.lastMessage.message||t.lastMessage.name===t.lastMessage.message)?i.createElement(fi,{variant:"subtitle1",color:g.themedColor.textHighEmphasis},d):i.createElement(U,{variant:"subtitle1",color:g.themedColor.textHighEmphasis,maxTextLines:1},d),i.createElement(Rb,null,De(t)&&i.createElement(i.Fragment,null,i.createElement(U,{variant:"caption1",color:g.themedColor.textMidEmphasis,maxTextLines:1},r.CONVERSATION_LIST__ENDED),i.createElement(Ob,null)),i.createElement(U,{variant:"caption2",color:g.themedColor.textLowEmphasis,maxTextLines:1},m))),h>0&&i.createElement(Lb,{$count:h},i.createElement(U,{variant:"caption3",color:g.themedColor.textHighEmphasisInverse},h<=or?h:`${or}+`))),y.descriptionNode)},Pr=Ye({template:Tb,components:{}}),Ib=p.default.div`display:flex;flex-shrink:0;flex-direction:row;align-items:center;position:relative;width:100%;height:72px;box-sizing:border-box;gap:16px;cursor:${({$clickable:e})=>e?"pointer":"default"};`,wb=p.default.div`display:flex;align-items:center;justify-content:center;padding-inline-start:16px;`,Mb=p.default.div`display:flex;flex-direction:row;align-items:center;flex:1;min-width:0;padding-inline-end:16px;height:100%;gap:8px;border-bottom:1px solid ${g.themedColor.textDisabled};`,kb=p.default.div`display:flex;flex-direction:column;justify-content:center;flex:1;min-width:0;gap:4px;word-break:break-word;overflow-wrap:break-word;`,Rb=p.default.div`display:flex;align-items:center;gap:6px;`,Ob=p.default.div`width:2px;height:2px;border-radius:1px;background-color:${g.themedColor.textLowEmphasis};`,Lb=p.default.div`display:flex;align-items:center;justify-content:center;height:20px;padding:4px;border-radius:10px;background-color:${g.themedColor.error};${({$count:e})=>e<=or&&P.css`
476
476
  width: 20px;
477
477
  `}
478
- `,QE=({items:e,renderItem:t,onEndReached:n})=>{const r=s=>{const o=s.target;o.scrollHeight-o.scrollTop===o.clientHeight&&(n==null||n())};return i.createElement(eb,{onScroll:s=>r(s)},e.map((s,o)=>t(s,o)))},eb=_.default.div`width:100%;height:100%;display:flex;flex-direction:column;flex:1;overflow:auto;overscroll-behavior:contain;`,tb=()=>{const{stringSet:e}=re(),{listSource:t,onOpenConversationView:n}=An(),{Template:r}=wr.useContext();return t.initialized?t.channels.length===0?i.createElement(Lt,{type:"noChannels",label:e.CONVERSATION_LIST__NO_CONVERSATIONS}):i.createElement(QE,{items:t.channels,renderItem:s=>{var o,a,l;return i.createElement(r,{key:s.url,channel:s,onClick:()=>n(s.url,De(s)?"closed":"open"),channelUrl:s.url,title:(a=(o=s.conversation)==null?void 0:o.topics)==null?void 0:a.join(", "),lastMessageTimestamp:(l=s.lastMessage)==null?void 0:l.createdAt})},onEndReached:()=>{t.loadMore()}}):i.createElement(Lt,{type:"loading"})},nb=()=>{const{stringSet:e}=re(),{_aiAgentSDK:t}=$e(),{language:n,countryCode:r,context:s}=fe(),{aiAgentInfo:o,refreshActiveChannel:a,createConversation:l}=Ne(),{onOpenConversationView:u}=An(),{conversationList:d}=se(),m=async()=>{var h;if(o.isMultipleActiveConversationsEnabled){const f=await l({aiAgentId:o.userId,language:n,country:r,context:s});(h=t.session)==null||h._updateActiveChannel({url:f,status:"open"}),u(f,"open")}else{const f=await a();u(f,"open")}};return i.createElement(rb,{...d.footer.button({onActivate:m})},i.createElement(sb,{variant:"h1"},e.TALK_TO_AGENT))},rb=_.default.div`background-color:${({theme:e})=>e.colors.base.primary};display:flex;align-items:center;justify-content:center;padding:16px;cursor:pointer;`,sb=_.default(B)`color:${({theme:e})=>e.colors.base.primaryContrastContent};overflow:hidden;text-overflow:ellipsis;white-space:nowrap;`,ob=()=>{const{state:e}=fe(),{messenger:t}=se(),n=Ft(),r=()=>{e.setOpened(!1)};return i.createElement(Je,{...t.closeButton,type:"close",size:n,onClick:r})},ib=()=>{const{stringSet:e}=re();return i.createElement(ab,{forwardedAs:"h2",variant:"h2",color:p.themedColor.textHighEmphasis},e.CONVERSATION_LIST__HEADER_TITLE)},ab=_.default(B)`margin:0;padding:0 4px;width:100%;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;`,lb=e=>{const{components:t}=At.useContext();return i.createElement(vi,{start:i.createElement(t.StartArea,null),title:i.createElement(t.TitleArea,null),titleAlign:e.titleAlign,end:i.createElement(t.EndArea,null)})},cb=()=>null,ub=()=>{const{components:e}=At.useContext();return i.createElement(e.Title,null)},db=()=>{const{components:e}=At.useContext();return i.createElement(e.CloseButton,null)},At=qe({template:lb,components:{StartArea:cb,TitleArea:ub,EndArea:db,Title:ib,CloseButton:ob}}),mb=()=>{const{Template:e}=At.useContext();return i.createElement(e,{titleAlign:"start"})},Ti=({conversationListLimit:e,conversationListFilter:t,children:n,onOpenConversationView:r,style:s})=>{const{Template:o}=xn.useContext();return i.createElement(xi,{conversationListLimit:e,conversationListFilter:t,onOpenConversationView:r},i.createElement(fb,{style:s},i.createElement(o,null)),n)},hb=()=>{const{components:e}=xn.useContext();return i.createElement(i.Fragment,null,i.createElement(e.Header,null),i.createElement(e.Body,null),i.createElement(e.Footer,null))},xn=qe({template:hb,components:{Header:mb,Body:tb,Footer:nb}}),fb=_.default.div`height:100%;width:100%;display:flex;flex-direction:column;flex:1;background-color:${({theme:e})=>e.colors.base.background};`,gb=P.css`:where(#${ve.ENTRY}) :not(code *){font-family:'Roboto',sans-serif;box-sizing:border-box;}`,pb=[gb,ku,Lu],_b=(e,...t)=>P.createGlobalStyle(e,...pb,...t),Eb=_b``,bb=Wa(Sn,rt,Pt,bn,yn,xn,mt,wr,At,vn,En),Cb=typeof __SBA_USE_MESSAGE_TEMPLATE__>"u"||__SBA_USE_MESSAGE_TEMPLATE__;function Ii({appearance:e,rootElement:t,logger:n,language:r,languageCode:s,stringSet:o,children:a,messageTemplate:l,icons:u,theme:d,entryElement:m,modalRootElement:h}){Xu(Cb?_u:"",t);const[f,v]=c.useState(null),b=c.useCallback(y=>{v(E=>E===y?E:y)},[]),C=m??f,g=i.createElement(P.StyleSheetManager,{target:t},i.createElement(Yu,{rootElement:t,logger:n,appearance:e,theme:d},i.createElement(vu,{rootElement:t,boundaryElement:C},i.createElement(rc,{internalVariables:l==null?void 0:l.__internalVariables},i.createElement(Mu,{stringSet:o,logger:n,language:r,languageCode:s},i.createElement(qu,{icons:u},i.createElement(bb,null,i.createElement(bu,{entryElement:C,modalRootElement:h,rootElement:t},a),i.createElement(Eb,null))))))));return m?g:i.createElement("div",{ref:b,style:{display:"contents"}},g)}const vb=()=>{const[e,t]=c.useState(null),[n,r]=c.useState(null),s=c.useCallback(a=>{t(l=>l===a?l:a)},[]),o=c.useCallback(a=>{r(l=>l===a?l:a)},[]);return{entryElement:e,modalRootElement:n,setEntryElement:s,setModalRootElement:o}},Mr=c.forwardRef(function({rootElement:t=document.body,logLevel:n=le.LogLevel.WARN,language:r=navigator.language,userSessionInfo:s,children:o,chatParams:a,icons:l,...u},d){var g,y,E;Mt.level!==n&&(Mt.level=n);const{entryElement:m,modalRootElement:h,setEntryElement:f,setModalRootElement:v}=vb();ju("https://fonts.googleapis.com/css2?family=Roboto&display=swap",t);const b=Oo(r),C=No.has(b)?b:Nt;return i.createElement("div",{ref:f,id:ve.ENTRY,lang:C,style:{width:"fit-content",height:"fit-content",...u.entryStyle}},m&&h&&i.createElement(Ii,{logger:Mt,rootElement:t,appearance:(g=u.agentPreviewConfigs)==null?void 0:g.appearance,stringSet:u.stringSet,language:C,messageTemplate:u.messageTemplate,icons:l,theme:u.theme,entryElement:m,modalRootElement:h},i.createElement(Id,{rootElement:t,language:r,logger:Mt,dispatcher:wi,chatParams:{...a,...u.customApiHost&&{customApiHost:u.customApiHost},...u.customWebSocketHost&&{customWebSocketHost:u.customWebSocketHost}},chatSDK:u.customChatSDK,_forceCreateChannel:(y=u.agentPreviewConfigs)==null?void 0:y.forceCreateChannel,_agentVersion:(E=u.agentPreviewConfigs)==null?void 0:E.agentVersion,...u},i.createElement(Dd,{ref:d,userSessionInfo:s},i.createElement(Qg,{...u._UNSAFE_INTERNAL_dashboardTester},i.createElement(td,null,o))))),i.createElement("div",{ref:v,id:ve.MODAL_ROOT,dir:u.dir}))}),Mt=new io(le.LogLevel.WARN),wi=new oo(Mt),{Provider:yb,useContext:kr}=Ee("PageChildren"),Mi=({children:e})=>{const[t,n]=c.useState(null),[r,s]=c.useState(null);return i.createElement(yb,{value:{conversationChildren:t,setConversationChildren:n,conversationListChildren:r,setConversationListChildren:s}},e)},ki=({children:e,isOpened:t,zIndex:n=vt.WINDOW})=>{const{dir:r,rootElement:s}=fe(),o=ct(s,!0);return c.useEffect(()=>{const a="sb-agent-block-scroll";return t?o.body.classList.add(a):o.body.classList.remove(a),()=>{o.body.classList.remove(a)}},[o,t]),i.createElement(Sb,{id:ve.WINDOW,dir:r,$visible:t,$zIndex:n},e)},Sb=_.default.div`width:100%;height:100%;position:fixed;top:0;left:0;z-index:${({$zIndex:e})=>e};visibility:${({$visible:e})=>e?"visible":"hidden"};`,Ab=48,xb=2/3;function Li({className:e,children:t,isOpened:n,onClick:r,"aria-label":s,"aria-describedby":o,type:a,imageUrl:l,dir:u,animated:d=!0,backgroundColor:m,size:h=Ab}){const f=si(),v=d&&!f,b=Wn(m),C=Math.round(h*xb);return i.createElement(wb,{dir:u,id:ve.LAUNCHER,className:e,"aria-label":s,"aria-describedby":o,onClick:r,$animated:v,$backgroundColor:m,$prefersReducedMotion:f,$size:h},i.createElement(Mb,{$isOpened:n,$animated:v,$fillColor:b,$iconSize:C,$prefersReducedMotion:f},i.createElement(js.Open,{url:l,isDefaultIcon:a==="default_icon",size:C})),i.createElement(kb,{$isOpened:n,$animated:v,$fillColor:b,$iconSize:C,$prefersReducedMotion:f},i.createElement(js.Close,{size:C})),t)}const Tb=P.css`&:hover{transition:transform 250ms cubic-bezier(0.33,0,0,1);transform:scale(1.1);}&:active{transform:scale(0.8);}`,Ib=P.css`img{width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-drag:none;&[data-default-icon='true']{width:${({$iconSize:e})=>e}px;height:${({$iconSize:e})=>e}px;filter:${({$fillColor:e})=>e===Rt.WHITE?"grayscale(100%) brightness(2000%)":"grayscale(100%) invert(100%) saturate(0%) brightness(0%) contrast(1000%)"};}}`,Ri=P.css`svg{width:${({$iconSize:e})=>e}px;height:${({$iconSize:e})=>e}px;${({$fillColor:e})=>P.css`
478
+ `,Nb=({items:e,renderItem:t,onEndReached:n,role:r,"aria-label":s})=>{const o=a=>{const l=a.target;l.scrollHeight-l.scrollTop===l.clientHeight&&(n==null||n())};return i.createElement(Db,{role:r,"aria-label":s,onScroll:a=>o(a)},e.map((a,l)=>{const u=t(a,l);if(r!=="list")return u;const d=c.isValidElement(u)&&u.key!=null?u.key:l;return i.createElement($b,{key:d,role:"listitem"},u)}))},Db=p.default.div`width:100%;height:100%;display:flex;flex-direction:column;flex:1;overflow:auto;overscroll-behavior:contain;`,$b=p.default.div`flex-shrink:0;`,Pb=()=>{const{stringSet:e}=ie(),{listSource:t,onOpenConversationView:n}=yt(),{Template:r}=Pr.useContext();return t.initialized?t.channels.length===0?i.createElement(Rt,{type:"noChannels",label:e.CONVERSATION_LIST__NO_CONVERSATIONS}):i.createElement(Nb,{role:"list","aria-label":e.CONVERSATION_LIST__HEADER_TITLE,items:t.channels,renderItem:s=>{var o,a,l;return i.createElement(r,{key:s.url,channel:s,onClick:()=>n(s.url,De(s)?"closed":"open"),channelUrl:s.url,title:(a=(o=s.conversation)==null?void 0:o.topics)==null?void 0:a.join(", "),lastMessageTimestamp:(l=s.lastMessage)==null?void 0:l.createdAt})},onEndReached:()=>{t.loadMore()}}):i.createElement(Rt,{type:"loading"})},Fb=()=>{const{stringSet:e}=ie(),{_aiAgentSDK:t}=Pe(),{language:n,countryCode:r,context:s}=fe(),{aiAgentInfo:o,refreshActiveChannel:a,createConversation:l}=Re(),{onOpenConversationView:u}=yt(),{conversationList:d}=se(),m=async()=>{var h;if(o.isMultipleActiveConversationsEnabled){const f=await l({aiAgentId:o.userId,language:n,country:r,context:s});(h=t.session)==null||h._updateActiveChannel({url:f,status:"open"}),u(f,"open")}else{const f=await a();u(f,"open")}};return i.createElement(Bb,{...d.footer.button({onActivate:m})},i.createElement(Ub,{variant:"h1"},e.TALK_TO_AGENT))},Bb=p.default.div`background-color:${({theme:e})=>e.colors.base.primary};display:flex;align-items:center;justify-content:center;padding:16px;cursor:pointer;`,Ub=p.default(U)`color:${({theme:e})=>e.colors.base.primaryContrastContent};overflow:hidden;text-overflow:ellipsis;white-space:nowrap;`,Hb=()=>{const{state:e}=fe(),{messenger:t}=se(),n=vt(),r=()=>{e.setOpened(!1)};return i.createElement(Qe,{...t.closeButton,type:"close",size:n,onClick:r})},Gb=()=>{const{stringSet:e}=ie(),{announcementsEnabled:t}=yt(),{conversationList:n}=se(),r=e.CONVERSATION_LIST__HEADER_TITLE,s=Bi({active:t,label:r}),o=n.headerTitle(r,{active:s.active,titleId:s.id});return i.createElement(Vb,{forwardedAs:"h2",variant:"h2",color:g.themedColor.textHighEmphasis,...o},r)},Vb=p.default(U)`margin:0;padding:0 4px;min-width:0;width:100%;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;`,zb=e=>{const{components:t}=St.useContext();return i.createElement($i,{start:i.createElement(t.StartArea,null),title:i.createElement(t.TitleArea,null),titleAlign:e.titleAlign,end:i.createElement(t.EndArea,null),containerProps:Go})},Yb=()=>null,Wb=()=>{const{components:e}=St.useContext();return i.createElement(e.Title,null)},qb=()=>{const{components:e}=St.useContext();return i.createElement(e.CloseButton,null)},St=Ye({template:zb,components:{StartArea:Yb,TitleArea:Wb,EndArea:qb,Title:Gb,CloseButton:Hb}}),Kb=()=>{const{Template:e}=St.useContext();return i.createElement(e,{titleAlign:"start"})},Vi=({conversationListLimit:e,conversationListFilter:t,children:n,onOpenConversationView:r,announcementsEnabled:s=!0,style:o})=>{const{Template:a}=Tn.useContext();return i.createElement(Gi,{conversationListLimit:e,conversationListFilter:t,onOpenConversationView:r,announcementsEnabled:s},i.createElement(jb,{style:o},i.createElement(a,null)),n)},jb=({style:e,children:t})=>{const n=c.useRef(null);return Ab(n),i.createElement(Zb,{ref:n,style:e},t)},Xb=()=>{const{components:e}=Tn.useContext();return i.createElement(i.Fragment,null,i.createElement(e.Header,null),i.createElement(e.Body,null),i.createElement(e.Footer,null))},Tn=Ye({template:Xb,components:{Header:Kb,Body:Pb,Footer:Fb}}),Zb=p.default.div`height:100%;width:100%;display:flex;flex-direction:column;flex:1;background-color:${({theme:e})=>e.colors.base.background};`,Jb=P.css`:where(#${_e.ENTRY}) :not(code *){font-family:'Roboto',sans-serif;box-sizing:border-box;}`,Qb=[Jb,ed,td],eC=(e,...t)=>P.createGlobalStyle(e,...Qb,...t),tC=eC``,nC=ul(xn,at,Bt,vn,An,Tn,ht,Pr,St,Sn,bn),rC=typeof __SBA_USE_MESSAGE_TEMPLATE__>"u"||__SBA_USE_MESSAGE_TEMPLATE__;function zi({appearance:e,rootElement:t,logger:n,language:r,languageCode:s,stringSet:o,children:a,messageTemplate:l,icons:u,theme:d,entryElement:m,modalRootElement:h}){Cd(rC?Hu:"",t);const[f,v]=c.useState(null),C=c.useCallback(_=>{v(b=>b===_?b:_)},[]),y=m??f,E=i.createElement(P.StyleSheetManager,{target:t},i.createElement(_d,{rootElement:t,logger:n,appearance:e,theme:d},i.createElement(Yu,{rootElement:t,boundaryElement:y},i.createElement(yc,{internalVariables:l==null?void 0:l.__internalVariables},i.createElement(Qu,{stringSet:o,logger:n,language:r,languageCode:s},i.createElement(gd,{icons:u},i.createElement(nC,null,i.createElement(Vu,{entryElement:y,modalRootElement:h,rootElement:t},a),i.createElement(tC,null))))))));return m?E:i.createElement("div",{ref:C,style:{display:"contents"}},E)}const sC=()=>{const[e,t]=c.useState(null),[n,r]=c.useState(null),s=c.useCallback(a=>{t(l=>l===a?l:a)},[]),o=c.useCallback(a=>{r(l=>l===a?l:a)},[]);return{entryElement:e,modalRootElement:n,setEntryElement:s,setModalRootElement:o}},Fr=c.forwardRef(function({rootElement:t=document.body,logLevel:n=ue.LogLevel.WARN,language:r=navigator.language,userSessionInfo:s,children:o,chatParams:a,icons:l,...u},d){var E,_,b;Mt.level!==n&&(Mt.level=n);const{entryElement:m,modalRootElement:h,setEntryElement:f,setModalRootElement:v}=sC();bd("https://fonts.googleapis.com/css2?family=Roboto&display=swap",t);const C=Yo(r),y=Wo.has(C)?C:$t;return i.createElement("div",{ref:f,id:_e.ENTRY,lang:y,style:{width:"fit-content",height:"fit-content",...u.entryStyle}},m&&h&&i.createElement(zi,{logger:Mt,rootElement:t,appearance:(E=u.agentPreviewConfigs)==null?void 0:E.appearance,stringSet:u.stringSet,language:y,messageTemplate:u.messageTemplate,icons:l,theme:u.theme,entryElement:m,modalRootElement:h},i.createElement(Xd,{rootElement:t,language:r,logger:Mt,dispatcher:Yi,chatParams:{...a,...u.customApiHost&&{customApiHost:u.customApiHost},...u.customWebSocketHost&&{customWebSocketHost:u.customWebSocketHost}},chatSDK:u.customChatSDK,_forceCreateChannel:(_=u.agentPreviewConfigs)==null?void 0:_.forceCreateChannel,_agentVersion:(b=u.agentPreviewConfigs)==null?void 0:b.agentVersion,...u},i.createElement(sm,{ref:d,userSessionInfo:s},i.createElement(Ap,{...u._UNSAFE_INTERNAL_dashboardTester},i.createElement(xd,null,o))))),i.createElement("div",{ref:v,id:_e.MODAL_ROOT,dir:u.dir}))}),Mt=new fo(ue.LogLevel.WARN),Yi=new ho(Mt),{Provider:oC,useContext:Br}=Ee("PageChildren"),Wi=({children:e})=>{const[t,n]=c.useState(null),[r,s]=c.useState(null);return i.createElement(oC,{value:{conversationChildren:t,setConversationChildren:n,conversationListChildren:r,setConversationListChildren:s}},e)},Ur=(e,t)=>e?{role:"dialog","aria-modal":"true",...t?{"aria-labelledby":_e.WINDOW_TITLE}:{"aria-label":"Messenger"}}:{"aria-hidden":"true",inert:!0},qi=({children:e,isOpened:t,zIndex:n=dt.WINDOW})=>i.createElement(Dr,null,i.createElement(iC,{isOpened:t,zIndex:n},e)),iC=({children:e,isOpened:t,zIndex:n=dt.WINDOW})=>{const{dir:r,rootElement:s}=fe(),o=ut(s,!0),a=c.useRef(null),{hasWindowTitleReference:l}=$r();return En(t,a),c.useEffect(()=>{const u="sb-agent-block-scroll";return t?o.body.classList.add(u):o.body.classList.remove(u),()=>{o.body.classList.remove(u)}},[o,t]),i.createElement(aC,{ref:a,id:_e.WINDOW,dir:r,...Ur(t,l),$visible:t,$zIndex:n},e)},aC=p.default.div`width:100%;height:100%;position:fixed;top:0;left:0;z-index:${({$zIndex:e})=>e};visibility:${({$visible:e})=>e?"visible":"hidden"};`,lC=48,cC=2/3;function Ki({className:e,children:t,isOpened:n,onClick:r,"aria-label":s,"aria-describedby":o,type:a,imageUrl:l,dir:u,animated:d=!0,backgroundColor:m,size:h=lC}){const f=Ci(),v=d&&!f,C=jn(m),y=Math.round(h*cC);return i.createElement(mC,{dir:u,id:_e.LAUNCHER,className:e,"aria-label":s,"aria-describedby":o,onClick:r,$animated:v,$backgroundColor:m,$prefersReducedMotion:f,$size:h},i.createElement(hC,{$isOpened:n,$animated:v,$fillColor:C,$iconSize:y,$prefersReducedMotion:f},i.createElement(so.Open,{url:l,isDefaultIcon:a==="default_icon",size:y})),i.createElement(fC,{$isOpened:n,$animated:v,$fillColor:C,$iconSize:y,$prefersReducedMotion:f},i.createElement(so.Close,{size:y})),t)}const uC=P.css`&:hover{transition:transform 250ms cubic-bezier(0.33,0,0,1);transform:scale(1.1);}&:active{transform:scale(0.8);}`,dC=P.css`img{width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-drag:none;&[data-default-icon='true']{width:${({$iconSize:e})=>e}px;height:${({$iconSize:e})=>e}px;filter:${({$fillColor:e})=>e===Ot.WHITE?"grayscale(100%) brightness(2000%)":"grayscale(100%) invert(100%) saturate(0%) brightness(0%) contrast(1000%)"};}}`,ji=P.css`svg{width:${({$iconSize:e})=>e}px;height:${({$iconSize:e})=>e}px;${({$fillColor:e})=>P.css`
479
479
  ellipse,
480
480
  path {
481
481
  fill: ${e};
@@ -485,7 +485,7 @@
485
485
  }
486
486
  `}
487
487
  }
488
- `,wb=_.default.button`position:relative;padding:0;width:${({$size:e})=>e}px;height:${({$size:e})=>e}px;background:${({$backgroundColor:e})=>e};border-radius:50%;transition:${({$prefersReducedMotion:e})=>e?"none":"all 0.3s cubic-bezier(0.31, -0.105, 0.43, 1.4)"};border:none;display:flex;justify-content:center;align-items:center;box-shadow:0 16px 24px 2px rgba(33,33,33,0.12),0 6px 30px 5px rgba(33,33,33,0.08),0 6px 10px -5px rgba(33,33,33,0.04);${({$animated:e})=>e&&Tb}`,Oi=_.default.span.attrs({"aria-hidden":"true"})`
488
+ `,mC=p.default.button`position:relative;padding:0;width:${({$size:e})=>e}px;height:${({$size:e})=>e}px;background:${({$backgroundColor:e})=>e};border-radius:50%;transition:${({$prefersReducedMotion:e})=>e?"none":"all 0.3s cubic-bezier(0.31, -0.105, 0.43, 1.4)"};border:none;display:flex;justify-content:center;align-items:center;box-shadow:0 16px 24px 2px rgba(33,33,33,0.12),0 6px 30px 5px rgba(33,33,33,0.08),0 6px 10px -5px rgba(33,33,33,0.04);${({$animated:e})=>e&&uC}`,Xi=p.default.span.attrs({"aria-hidden":"true"})`
489
489
  position: absolute;
490
490
  width: 100%;
491
491
  height: 100%;
@@ -495,15 +495,15 @@
495
495
  display: flex;
496
496
  justify-content: center;
497
497
  align-items: center;
498
- `,Mb=_.default(Oi)`transition:${({$prefersReducedMotion:e})=>e?"none":"transform 0.16s linear, opacity 0.08s linear, scale 0.16s linear"};opacity:${({$isOpened:e})=>e?0:1};transform:${({$animated:e,$isOpened:t})=>e&&(t?"rotate(-90deg) scale(0)":"rotate(0deg)")};${Ib}${Ri}`,kb=_.default(Oi)`transition:${({$prefersReducedMotion:e})=>e?"none":"transform 0.16s linear, opacity 0.08s linear, scale 0.16s linear"};scale:${({$isOpened:e})=>e?1:0};transform:${({$animated:e,$isOpened:t})=>e&&(t?"rotate(0deg)":"rotate(-90deg)")};${Ri}`,js={Open:e=>e.url?i.createElement("img",{src:e.url,alt:"","data-default-icon":e.isDefaultIcon}):i.createElement(Z,{size:e.size,type:"delight"}),Close:({size:e})=>i.createElement(Z,{size:e,type:"chevron-down"})},Xs=(e,t)=>Array.from(e.querySelectorAll(t)).find(yt)??null,Ni=e=>Xs(e,gr)??Xs(e,_n),Lb=e=>{const t=Ni(e)??e;t===e&&!t.hasAttribute("tabindex")&&t.setAttribute("tabindex","-1"),t.focus()},Rb=(e,t)=>{c.useEffect(()=>{if(!e||!t.current)return;let n=!1;return Oe(()=>{n||!t.current||Lb(t.current)}),()=>{n=!0}},[e,t])};function Di({className:e,size:t,entryPoint:n="Conversation",activeRoute:r}){const{colors:s}=P.useTheme(),{dir:o,state:a}=fe(),{resolveElement:l}=_r(),{launcher:u}=se(),{launcherInfo:d,statsTrackers:m}=Ne(),h=(r??n)==="ConversationList",f=u.button({isOpened:a.opened,opensConversationList:h});c.useLayoutEffect(()=>{m.initialRender.setPresentMethod("launcher_toggle")},[m]),Nb();const v=()=>{Oe(()=>{const g=l(ve.WINDOW),y=g?Ni(g):null;y==null||y.focus()})},b=()=>{Oe(()=>{var g;(g=l(ve.LAUNCHER))==null||g.focus()})},C=()=>{const g=!a.opened;a.setOpened(g),g?v():b()};return i.createElement(Li,{dir:o,className:e,isOpened:a.opened,onClick:C,type:d.type,imageUrl:d.imageUrl,backgroundColor:s.base.primary,size:t,...f.props},f.descriptionNode)}const Ob=1e3*60;function Nb(){const{chatSDK:e,state:t,logger:n,enableAutoDisconnectInLauncher:r}=fe(),s=c.useRef(null);c.useEffect(()=>{if(!r)return;function o(){s.current&&(clearTimeout(s.current),s.current=null)}function a(){e.connectionState===le.ConnectionState.CLOSED&&(e.reconnect(),n.debug("useSDKInactivityTimeout: reconnected")),o(),n.debug("useSDKInactivityTimeout: clear disconnect schedule")}function l(){o(),s.current=setTimeout(async()=>{await e.disconnectWebSocket(),n.debug("useSDKInactivityTimeout: disconnected")},Ob)}t.opened?a():(l(),n.debug("useSDKInactivityTimeout: schedule disconnect"))},[r,e,t.opened])}const $i=c.createContext(null);function Lr(){const e=c.useContext($i);if(!e)throw new Error("useNavigator() must be used within <Navigator />");return e}function Pi({children:e}){const t=Lr();return typeof e=="function"?e(t):i.createElement(i.Fragment,null,e)}const Db=P.keyframes`0%{transform:translateY(40px);opacity:0;}100%{transform:translateY(0px);opacity:1;}`,$b=P.keyframes`0%{transform:translateY(0px);opacity:1;}100%{transform:translateY(40px);opacity:0;}`,Pb=P.css`animation-name:${Db};animation-duration:0.3s;animation-fill-mode:forwards;`,Fb=P.css``,Bb=P.css`animation-name:${$b};animation-duration:0.3s;animation-fill-mode:forwards;`,Ub=P.css`visibility:hidden;`,Hb=_.default.div`position:absolute;top:0;left:0;width:100%;height:100%;${({$transitionState:e})=>{switch(e){case"entering":return Pb;case"entered":return Fb;case"exiting":return Bb;case"exited":return Ub;default:return""}}}${({$active:e})=>e?P.css`
498
+ `,hC=p.default(Xi)`transition:${({$prefersReducedMotion:e})=>e?"none":"transform 0.16s linear, opacity 0.08s linear, scale 0.16s linear"};opacity:${({$isOpened:e})=>e?0:1};transform:${({$animated:e,$isOpened:t})=>e&&(t?"rotate(-90deg) scale(0)":"rotate(0deg)")};${dC}${ji}`,fC=p.default(Xi)`transition:${({$prefersReducedMotion:e})=>e?"none":"transform 0.16s linear, opacity 0.08s linear, scale 0.16s linear"};scale:${({$isOpened:e})=>e?1:0};transform:${({$animated:e,$isOpened:t})=>e&&(t?"rotate(0deg)":"rotate(-90deg)")};${ji}`,so={Open:e=>e.url?i.createElement("img",{src:e.url,alt:"","data-default-icon":e.isDefaultIcon}):i.createElement(ee,{size:e.size,type:"delight"}),Close:({size:e})=>i.createElement(ee,{size:e,type:"chevron-down"})};function Zi({className:e,size:t,entryPoint:n="Conversation",activeRoute:r}){const{colors:s}=P.useTheme(),{dir:o,state:a}=fe(),{resolveElement:l}=yr(),{launcher:u}=se(),{launcherInfo:d,statsTrackers:m}=Re(),h=(r??n)==="ConversationList",f=u.button({isOpened:a.opened,opensConversationList:h});c.useLayoutEffect(()=>{m.initialRender.setPresentMethod("launcher_toggle")},[m]),pC();const v=()=>{$e(()=>{const E=l(_e.WINDOW),_=E?ti(E):null;_==null||_.focus()})},C=()=>{$e(()=>{var E;(E=l(_e.LAUNCHER))==null||E.focus()})},y=()=>{const E=!a.opened;a.setOpened(E),E?v():C()};return i.createElement(Ki,{dir:o,className:e,isOpened:a.opened,onClick:y,type:d.type,imageUrl:d.imageUrl,backgroundColor:s.base.primary,size:t,...f.props},f.descriptionNode)}const gC=1e3*60;function pC(){const{chatSDK:e,state:t,logger:n,enableAutoDisconnectInLauncher:r}=fe(),s=c.useRef(null);c.useEffect(()=>{if(!r)return;function o(){s.current&&(clearTimeout(s.current),s.current=null)}function a(){e.connectionState===ue.ConnectionState.CLOSED&&(e.reconnect(),n.debug("useSDKInactivityTimeout: reconnected")),o(),n.debug("useSDKInactivityTimeout: clear disconnect schedule")}function l(){o(),s.current=setTimeout(async()=>{await e.disconnectWebSocket(),n.debug("useSDKInactivityTimeout: disconnected")},gC)}t.opened?a():(l(),n.debug("useSDKInactivityTimeout: schedule disconnect"))},[r,e,t.opened])}const Ji=c.createContext(null);function Hr(){const e=c.useContext(Ji);if(!e)throw new Error("useNavigator() must be used within <Navigator />");return e}function Qi({children:e}){const t=Hr();return typeof e=="function"?e(t):i.createElement(i.Fragment,null,e)}const _C=P.keyframes`0%{transform:translateY(40px);opacity:0;}100%{transform:translateY(0px);opacity:1;}`,EC=P.keyframes`0%{transform:translateY(0px);opacity:1;}100%{transform:translateY(40px);opacity:0;}`,bC=P.css`animation-name:${_C};animation-duration:0.3s;animation-fill-mode:forwards;`,CC=P.css``,vC=P.css`animation-name:${EC};animation-duration:0.3s;animation-fill-mode:forwards;`,yC=P.css`visibility:hidden;`,SC=p.default.div`position:absolute;top:0;left:0;width:100%;height:100%;${({$transitionState:e})=>{switch(e){case"entering":return bC;case"entered":return CC;case"exiting":return vC;case"exited":return yC;default:return""}}}${({$active:e})=>e?P.css`
499
499
  z-index: 999;
500
500
  `:P.css`z-index:1;pointer-events:none;`}
501
- `;function nn({initialId:e,children:t}){const[n,r]=c.useState([e]),s=n[n.length-1],o=c.useCallback((g,y)=>{r(E=>[...E,g]),h(E=>({...E,[g]:!0})),y!=null&&y.reset&&C(E=>({...E,[g]:(E[g]||0)+1})),v(E=>({...E,[g]:"entering"})),setTimeout(()=>{v(E=>({...E,[g]:"entered"}))},300)},[]),a=c.useCallback(()=>{r(g=>{if(g.length<=1)return g;const y=g[g.length-1];return v(E=>({...E,[y]:"exiting"})),setTimeout(()=>{v(E=>({...E,[y]:"exited"})),r(E=>E.slice(0,-1))},300),g})},[]),l=c.useMemo(()=>({navigation:{navigate:o,pop:a},activeScreenId:s}),[o,a,s]),u=c.useMemo(()=>c.Children.toArray(t).filter(g=>g.type===Pi),[t]),d=c.useMemo(()=>{const g={};return u.forEach(y=>{const{id:E,lazy:I,children:A}=y.props;g[E]={lazy:I,element:typeof A=="function"?A(l):A}}),g},[u,l]),[m,h]=c.useState(()=>{const g={};return Object.entries(d).forEach(([y,{lazy:E}])=>{E===!1&&(g[y]=!0)}),g[e]=!0,g}),[f,v]=c.useState(()=>{const g={};return Object.keys(d).forEach(y=>{y===e?g[y]="entered":g[y]="exited"}),g}),[b,C]=c.useState({});return i.createElement($i.Provider,{value:l},i.createElement(Gb,null,Object.keys(d).map(g=>{var A;if(!m[g])return null;const y=f[g]||"exited",E=g===s,I=`${g}-${b[g]||0}`;return i.createElement(Hb,{key:I,$transitionState:y,$active:E,"aria-hidden":E?void 0:!0,inert:E?void 0:!0},(A=d[g])==null?void 0:A.element)})))}const Gb=_.default.div`position:relative;width:100%;height:100%;`;nn.Screen=Pi;const Fe={conv:"conv",convList:"conv-list"},Zs=({isOpened:e,activeScreenId:t})=>e&&t===Fe.conv,Vb=({screenId:e,conversationKey:t,navigationKey:n})=>e===Fe.conv?`${e}:${t??""}`:n?`${e}:${n}`:e,zb=({initialRoute:e,isOpened:t,selectedChannelUrl:n,setSelectedChannelUrl:r})=>{const{announceScreenEntry:s}=Er(),o=c.useRef(null),a=c.useRef(null),l=c.useRef(0),[u,d]=c.useState(0),m=c.useCallback(b=>{const C=Vb(b);o.current!==C&&(o.current=C,a.current=b,b.screenId===Fe.convList&&s({screen:"conversationList"}))},[s]),h=c.useCallback((b,C)=>{const g={screenId:Fe.conv,conversationKey:C};r(C),b.navigate(Fe.conv),a.current=g,t&&m(g)},[m,t,r]),f=c.useCallback(b=>{l.current+=1;const C=l.current,g={screenId:Fe.convList,navigationKey:`visit:${C}`};a.current=g,d(C),b.navigate(Fe.convList)},[]),v=c.useCallback(()=>{var C;const b=((C=a.current)==null?void 0:C.screenId)===Fe.convList?a.current:{screenId:Fe.convList};m(b)},[m]);return c.useEffect(()=>{if(t){const b=a.current?a.current.screenId===Fe.conv?{screenId:Fe.conv,conversationKey:n??a.current.conversationKey}:a.current:{screenId:e,conversationKey:e===Fe.conv?n:void 0};b.screenId!==Fe.convList&&m(b)}else o.current=null,a.current=null},[m,e,t,n]),{announceConversationListScreen:v,conversationListAnnouncementToken:u,navigateToConversationList:f,openConversation:h}},it={conv:"conv",convList:"conv-list"},qb=e=>e===it.convList?"ConversationList":"Conversation",Fi=({isOpened:e,entryPoint:t,selectedChannelUrl:n,setSelectedChannelUrl:r,onActiveRouteChange:s})=>{const{conversationChildren:o,conversationListChildren:a}=kr(),l=(()=>{switch(t){case"Conversation":return it.conv;case"ConversationList":return it.convList;default:return it.conv}})(),{announceConversationListScreen:u,conversationListAnnouncementToken:d,navigateToConversationList:m,openConversation:h}=zb({initialRoute:l,isOpened:e,selectedChannelUrl:n,setSelectedChannelUrl:r}),f=i.createElement(i.Fragment,null,i.createElement(Wb,{onOpenConversationView:(v,b)=>h(v,b)}),i.createElement(Kb,{onActiveRouteChange:s}));return i.createElement(nn,{initialId:l},i.createElement(nn.Screen,{id:it.conv},({navigation:v,activeScreenId:b})=>i.createElement(Ai,{key:n,channelUrl:n,onClearChannelUrl:()=>r(void 0),onNavigateToConversationList:()=>m(v),announcementsEnabled:Zs({isOpened:e,activeScreenId:b}),shouldMarkAsRead:Zs({isOpened:e,activeScreenId:b})},f,o)),i.createElement(nn.Screen,{id:it.convList,lazy:!0},({navigation:v,activeScreenId:b})=>{const C=e&&b===it.convList;return i.createElement(Ti,{onOpenConversationView:g=>{h(v,g)}},i.createElement(Yb,{announcementToken:d,enabled:C,onAnnounce:u}),f,a)}))},Wb=({onOpenConversationView:e})=>{const{registerOnJoinedProactiveConversation:t}=Ne(),{navigation:n}=Lr();return t(({channel:r})=>{e(n,r.url)}),null},Yb=({announcementToken:e,enabled:t,onAnnounce:n})=>{const{listSource:r}=An();return c.useEffect(()=>{if(!t||!r.initialized)return;const s=setTimeout(()=>{n()},0);return()=>{clearTimeout(s)}},[e,t,r.initialized,n]),null},Kb=({onActiveRouteChange:e})=>{const{activeScreenId:t}=Lr();return c.useEffect(()=>{e==null||e(qb(t))},[t,e]),null},jb=({isExpanded:e,isOpened:t,children:n,launcher:r})=>{const{dir:s}=fe(),o=c.useRef(null);return Rb(t,o),i.createElement(Xb,null,i.createElement(Zb,{ref:o,dir:s,id:ve.WINDOW,$isExpanded:e,$isOpened:t},n),r)},Xb=_.default.div`display:flex;flex-direction:column;gap:8px;align-items:flex-end;`,Zb=_.default.div`background:${({theme:e})=>e.colors.base.background};display:flex;overscroll-behavior:none;-webkit-overflow-scrolling:auto;height:640px;min-height:80px;width:400px;max-width:80vw;max-height:80vh;box-shadow:0px 16px 24px 2px rgba(33,33,33,0.12),0px 6px 30px 5px rgba(33,33,33,0.08),0px 6px 10px -5px rgba(33,33,33,0.04);border-radius:16px;overflow:hidden;transition:width 200ms ease 0s,height 200ms ease 0s,max-height 200ms ease 0s,transform 150ms cubic-bezier(0,1.2,1,1) 0s,opacity 83ms ease-out 0s;transform:scale(0.15);opacity:0;transform-origin:right bottom;[dir='rtl'] &:not([dir='ltr']),&[dir='rtl']{transform-origin:left bottom;}${({$isOpened:e})=>e&&Qb};${({$isExpanded:e})=>e&&Jb};`,Jb=P.css`width:743px;height:723px;`,Qb=P.css`pointer-events:all;transform:scale(1);opacity:1;transition:width 200ms ease 0s,height 200ms ease 0s,max-height 200ms ease 0s,transform 300ms cubic-bezier(0,1.2,1,1) 0s,opacity 83ms ease-out 0s;`,eC=c.forwardRef(function({children:e,initialChannelUrl:t,...n},r){const s=Dt(),[o,a]=c.useState(t),[l,u]=c.useState(n.entryPoint??"Conversation"),d=s?ki:jb;return i.createElement(Mr,{enableExpandButton:!s,ref:r,...n},i.createElement(Go,null,({state:m})=>i.createElement(Mi,null,i.createElement(d,{isExpanded:m.expanded,isOpened:m.opened,...s&&{zIndex:"auto"},launcher:i.createElement(Di,{entryPoint:n.entryPoint,activeRoute:l})},i.createElement(Fi,{isOpened:m.opened,entryPoint:n.entryPoint,selectedChannelUrl:o,setSelectedChannelUrl:a,onActiveRouteChange:u})),e)))}),{Provider:tC,useContext:Rr}=Ee("FixedMessengerStyle");function Bi(e,t,n,r=0){const{top:s,bottom:o,start:a,end:l}=n;let u="",d="";switch(e){case"start":d=`inset-inline-start: ${Ye(a)}`;break;case"end":d=`inset-inline-end: ${Ye(l)}`;break}switch(t){case"top":u=`top: calc(${Ye(s)} + ${r}px)`;break;case"bottom":u=`bottom: calc(${Ye(o)} + ${r}px)`;break}return P.css`${u};${d};`}function nC(e){const{horizontal:t,vertical:n,margin:r,launcherSize:s}=Rr();return i.createElement(rC,{...e,size:s,$horizontal:t,$vertical:n,$margin:r})}const rC=_.default(Di)`position:fixed;z-index:${vt.LAUNCHER};${({$horizontal:e,$vertical:t,$margin:n})=>Bi(e,t,n)};`,sC=({isExpanded:e,isOpened:t,children:n})=>{const{dir:r}=fe(),{horizontal:s,vertical:o,margin:a,launcherSize:l}=Rr();return i.createElement(oC,{dir:r,id:ve.WINDOW,"aria-hidden":t?void 0:"true",inert:t?void 0:!0,$isExpanded:e,$isOpened:t,$horizontal:s,$vertical:o,$margin:a,$launcherSize:l},n)},oC=_.default.div`background:${({theme:e})=>e.colors.base.background};display:flex;overscroll-behavior:none;-webkit-overflow-scrolling:auto;position:fixed;pointer-events:none;visibility:hidden;${({$horizontal:e,$vertical:t,$margin:n,$launcherSize:r})=>Bi(e,t,n,r+12)};height:640px;min-height:80px;width:400px;max-width:80vw;max-height:80vh;box-shadow:0px 16px 24px 2px rgba(33,33,33,0.12),0px 6px 30px 5px rgba(33,33,33,0.08),0px 6px 10px -5px rgba(33,33,33,0.04);border-radius:16px;overflow:hidden;transition:width 200ms ease 0s,height 200ms ease 0s,max-height 200ms ease 0s,transform 150ms cubic-bezier(0,1.2,1,1) 0s,opacity 83ms ease-out 0s,visibility 0s linear 150ms;transform:scale(0.15);opacity:0;transform-origin:${({$horizontal:e,$vertical:t})=>`${e==="start"?"left":"right"} ${t}`};
501
+ `;function tn({initialId:e,children:t}){const[n,r]=c.useState([e]),s=n[n.length-1],o=c.useCallback((E,_)=>{r(b=>[...b,E]),h(b=>({...b,[E]:!0})),_!=null&&_.reset&&y(b=>({...b,[E]:(b[E]||0)+1})),v(b=>({...b,[E]:"entering"})),setTimeout(()=>{v(b=>({...b,[E]:"entered"}))},300)},[]),a=c.useCallback(()=>{r(E=>{if(E.length<=1)return E;const _=E[E.length-1];return v(b=>({...b,[_]:"exiting"})),setTimeout(()=>{v(b=>({...b,[_]:"exited"})),r(b=>b.slice(0,-1))},300),E})},[]),l=c.useMemo(()=>({navigation:{navigate:o,pop:a},activeScreenId:s}),[o,a,s]),u=c.useMemo(()=>c.Children.toArray(t).filter(E=>E.type===Qi),[t]),d=c.useMemo(()=>{const E={};return u.forEach(_=>{const{id:b,lazy:A,children:M}=_.props;E[b]={lazy:A,element:typeof M=="function"?M(l):M}}),E},[u,l]),[m,h]=c.useState(()=>{const E={};return Object.entries(d).forEach(([_,{lazy:b}])=>{b===!1&&(E[_]=!0)}),E[e]=!0,E}),[f,v]=c.useState(()=>{const E={};return Object.keys(d).forEach(_=>{_===e?E[_]="entered":E[_]="exited"}),E}),[C,y]=c.useState({});return i.createElement(Ji.Provider,{value:l},i.createElement(AC,null,Object.keys(d).map(E=>{var M;if(!m[E])return null;const _=f[E]||"exited",b=E===s,A=`${E}-${C[E]||0}`;return i.createElement(SC,{key:A,$transitionState:_,$active:b,"aria-hidden":b?void 0:!0,inert:b?void 0:!0},(M=d[E])==null?void 0:M.element)})))}const AC=p.default.div`position:relative;width:100%;height:100%;`;tn.Screen=Qi;const Fe={conv:"conv",convList:"conv-list"},oo=({isOpened:e,activeScreenId:t})=>e&&t===Fe.conv,xC=({screenId:e,conversationKey:t,navigationKey:n})=>e===Fe.conv?`${e}:${t??""}`:n?`${e}:${n}`:e,TC=({initialRoute:e,isOpened:t,selectedChannelUrl:n,setSelectedChannelUrl:r})=>{const{announceScreenEntry:s}=Sr(),o=c.useRef(null),a=c.useRef(null),l=c.useRef(0),[u,d]=c.useState(0),m=c.useCallback(C=>{const y=xC(C);o.current!==y&&(o.current=y,a.current=C,C.screenId===Fe.convList&&s({screen:"conversationList"}))},[s]),h=c.useCallback((C,y)=>{const E={screenId:Fe.conv,conversationKey:y};r(y),C.navigate(Fe.conv),a.current=E,t&&m(E)},[m,t,r]),f=c.useCallback(C=>{l.current+=1;const y=l.current,E={screenId:Fe.convList,navigationKey:`visit:${y}`};a.current=E,d(y),C.navigate(Fe.convList)},[]),v=c.useCallback(()=>{var y;const C=((y=a.current)==null?void 0:y.screenId)===Fe.convList?a.current:{screenId:Fe.convList};m(C)},[m]);return c.useEffect(()=>{if(t){const C=a.current?a.current.screenId===Fe.conv?{screenId:Fe.conv,conversationKey:n??a.current.conversationKey}:a.current:{screenId:e,conversationKey:e===Fe.conv?n:void 0};C.screenId!==Fe.convList&&m(C)}else o.current=null,a.current=null},[m,e,t,n]),{announceConversationListScreen:v,conversationListAnnouncementToken:u,navigateToConversationList:f,openConversation:h}},ct={conv:"conv",convList:"conv-list"},IC=e=>e===ct.convList?"ConversationList":"Conversation",ea=({isOpened:e,entryPoint:t,selectedChannelUrl:n,setSelectedChannelUrl:r,onActiveRouteChange:s})=>{const{conversationChildren:o,conversationListChildren:a}=Br(),l=(()=>{switch(t){case"Conversation":return ct.conv;case"ConversationList":return ct.convList;default:return ct.conv}})(),{announceConversationListScreen:u,conversationListAnnouncementToken:d,navigateToConversationList:m,openConversation:h}=TC({initialRoute:l,isOpened:e,selectedChannelUrl:n,setSelectedChannelUrl:r}),f=i.createElement(i.Fragment,null,i.createElement(wC,{onOpenConversationView:(v,C)=>h(v,C)}),i.createElement(kC,{onActiveRouteChange:s}));return i.createElement(tn,{initialId:l},i.createElement(tn.Screen,{id:ct.conv},({navigation:v,activeScreenId:C})=>i.createElement(Hi,{key:n,channelUrl:n,onClearChannelUrl:()=>r(void 0),onNavigateToConversationList:()=>m(v),announcementsEnabled:oo({isOpened:e,activeScreenId:C}),shouldMarkAsRead:oo({isOpened:e,activeScreenId:C})},f,o)),i.createElement(tn.Screen,{id:ct.convList,lazy:!0},({navigation:v,activeScreenId:C})=>{const y=e&&C===ct.convList;return i.createElement(Vi,{announcementsEnabled:y,onOpenConversationView:E=>{h(v,E)}},i.createElement(MC,{announcementToken:d,enabled:y,onAnnounce:u}),f,a)}))},wC=({onOpenConversationView:e})=>{const{registerOnJoinedProactiveConversation:t}=Re(),{navigation:n}=Hr();return t(({channel:r})=>{e(n,r.url)}),null},MC=({announcementToken:e,enabled:t,onAnnounce:n})=>{const{listSource:r}=yt();return c.useEffect(()=>{if(!t||!r.initialized)return;const s=setTimeout(()=>{n()},0);return()=>{clearTimeout(s)}},[e,t,r.initialized,n]),null},kC=({onActiveRouteChange:e})=>{const{activeScreenId:t}=Hr();return c.useEffect(()=>{e==null||e(IC(t))},[t,e]),null},RC=({isExpanded:e,isOpened:t,children:n,launcher:r})=>i.createElement(Dr,null,i.createElement(OC,{isExpanded:e,isOpened:t,launcher:r},n)),OC=({isExpanded:e,isOpened:t,children:n,launcher:r})=>{const{dir:s}=fe(),o=c.useRef(null),{hasWindowTitleReference:a}=$r();return En(t,o),i.createElement(LC,null,i.createElement(NC,{ref:o,dir:s,id:_e.WINDOW,...Ur(t,a),$isExpanded:e,$isOpened:t},n),r)},LC=p.default.div`display:flex;flex-direction:column;gap:8px;align-items:flex-end;`,NC=p.default.div`background:${({theme:e})=>e.colors.base.background};display:flex;overscroll-behavior:none;-webkit-overflow-scrolling:auto;height:640px;min-height:80px;width:400px;max-width:80vw;max-height:80vh;box-shadow:0px 16px 24px 2px rgba(33,33,33,0.12),0px 6px 30px 5px rgba(33,33,33,0.08),0px 6px 10px -5px rgba(33,33,33,0.04);border-radius:16px;overflow:hidden;transition:width 200ms ease 0s,height 200ms ease 0s,max-height 200ms ease 0s,transform 150ms cubic-bezier(0,1.2,1,1) 0s,opacity 83ms ease-out 0s;transform:scale(0.15);opacity:0;transform-origin:right bottom;[dir='rtl'] &:not([dir='ltr']),&[dir='rtl']{transform-origin:left bottom;}${({$isOpened:e})=>e&&$C};${({$isExpanded:e})=>e&&DC};`,DC=P.css`width:743px;height:723px;`,$C=P.css`pointer-events:all;transform:scale(1);opacity:1;transition:width 200ms ease 0s,height 200ms ease 0s,max-height 200ms ease 0s,transform 300ms cubic-bezier(0,1.2,1,1) 0s,opacity 83ms ease-out 0s;`,PC=c.forwardRef(function({children:e,initialChannelUrl:t,...n},r){const s=Pt(),[o,a]=c.useState(t),[l,u]=c.useState(n.entryPoint??"Conversation"),d=s?qi:RC;return i.createElement(Fr,{enableExpandButton:!s,ref:r,...n},i.createElement(ri,null,({state:m})=>i.createElement(Wi,null,i.createElement(d,{isExpanded:m.expanded,isOpened:m.opened,...s&&{zIndex:"auto"},launcher:i.createElement(Zi,{entryPoint:n.entryPoint,activeRoute:l})},i.createElement(ea,{isOpened:m.opened,entryPoint:n.entryPoint,selectedChannelUrl:o,setSelectedChannelUrl:a,onActiveRouteChange:u})),e)))}),{Provider:FC,useContext:Gr}=Ee("FixedMessengerStyle");function ta(e,t,n,r=0){const{top:s,bottom:o,start:a,end:l}=n;let u="",d="";switch(e){case"start":d=`inset-inline-start: ${We(a)}`;break;case"end":d=`inset-inline-end: ${We(l)}`;break}switch(t){case"top":u=`top: calc(${We(s)} + ${r}px)`;break;case"bottom":u=`bottom: calc(${We(o)} + ${r}px)`;break}return P.css`${u};${d};`}function BC(e){const{horizontal:t,vertical:n,margin:r,launcherSize:s}=Gr();return i.createElement(UC,{...e,size:s,$horizontal:t,$vertical:n,$margin:r})}const UC=p.default(Zi)`position:fixed;z-index:${dt.LAUNCHER};${({$horizontal:e,$vertical:t,$margin:n})=>ta(e,t,n)};`,HC=({isExpanded:e,isOpened:t,children:n})=>i.createElement(Dr,null,i.createElement(GC,{isExpanded:e,isOpened:t},n)),GC=({isExpanded:e,isOpened:t,children:n})=>{const{dir:r}=fe(),{horizontal:s,vertical:o,margin:a,launcherSize:l}=Gr(),u=c.useRef(null),{hasWindowTitleReference:d}=$r();return En(t,u),i.createElement(VC,{ref:u,dir:r,id:_e.WINDOW,...Ur(t,d),$isExpanded:e,$isOpened:t,$horizontal:s,$vertical:o,$margin:a,$launcherSize:l},n)},VC=p.default.div`background:${({theme:e})=>e.colors.base.background};display:flex;overscroll-behavior:none;-webkit-overflow-scrolling:auto;position:fixed;pointer-events:none;visibility:hidden;${({$horizontal:e,$vertical:t,$margin:n,$launcherSize:r})=>ta(e,t,n,r+12)};height:640px;min-height:80px;width:400px;max-width:80vw;max-height:80vh;box-shadow:0px 16px 24px 2px rgba(33,33,33,0.12),0px 6px 30px 5px rgba(33,33,33,0.08),0px 6px 10px -5px rgba(33,33,33,0.04);border-radius:16px;overflow:hidden;transition:width 200ms ease 0s,height 200ms ease 0s,max-height 200ms ease 0s,transform 150ms cubic-bezier(0,1.2,1,1) 0s,opacity 83ms ease-out 0s,visibility 0s linear 150ms;transform:scale(0.15);opacity:0;transform-origin:${({$horizontal:e,$vertical:t})=>`${e==="start"?"left":"right"} ${t}`};
502
502
  [dir='rtl'] &:not([dir='ltr']),
503
503
  &[dir='rtl'] {
504
504
  transform-origin: ${({$horizontal:e,$vertical:t})=>`${e==="start"?"right":"left"} ${t}`};
505
505
  }
506
506
 
507
- ${({$isOpened:e})=>e&&aC};
508
- ${({$isExpanded:e})=>e&&iC};
509
- `,iC=P.css`width:743px;height:723px;`,aC=P.css`z-index:${vt.WINDOW};pointer-events:all;visibility:visible;transform:scale(1);opacity:1;transition:width 200ms ease 0s,height 200ms ease 0s,max-height 200ms ease 0s,transform 300ms cubic-bezier(0,1.2,1,1) 0s,opacity 83ms ease-out 0s,visibility 0s linear 0s;`,Ui={top:24,bottom:24,start:24,end:24},lC=c.forwardRef(function({children:e,initialChannelUrl:t,...n},r){const[s,o]=c.useState(t),[a,l]=c.useState(n.entryPoint??"Conversation"),[u,d]=c.useState("end-bottom"),[m,h]=c.useState(Ui),[f,v]=c.useState(48),b=Dt(),C=b?ki:sC,{horizontal:g,vertical:y}=c.useMemo(()=>{const[E,I]=u.split("-");return{horizontal:E==="start"?"start":"end",vertical:I==="top"?"top":"bottom"}},[u]);return i.createElement(Mr,{enableExpandButton:!b,ref:r,...n},i.createElement(Go,null,({state:E})=>i.createElement(tC,{value:{horizontal:g,vertical:y,margin:m,launcherSize:f,setPosition:d,setMargin:h,setLauncherSize:v}},i.createElement(Mi,null,i.createElement(C,{isExpanded:E.expanded,isOpened:E.opened},i.createElement(Fi,{isOpened:E.opened,entryPoint:n.entryPoint,selectedChannelUrl:s,setSelectedChannelUrl:o,onActiveRouteChange:l})),i.createElement(nC,{entryPoint:n.entryPoint,activeRoute:a}),e))))}),cC=e=>{var s,o,a,l;const{setPosition:t,setMargin:n,setLauncherSize:r}=Rr();return c.useLayoutEffect(()=>{e.position&&t(e.position),e.margin&&n({...Ui,...e.margin}),e.launcherSize&&r(e.launcherSize)},[e.position,(s=e.margin)==null?void 0:s.top,(o=e.margin)==null?void 0:o.bottom,(a=e.margin)==null?void 0:a.start,(l=e.margin)==null?void 0:l.end,e.launcherSize]),null},uC=({children:e})=>{const{setConversationChildren:t}=kr();return c.useLayoutEffect(()=>(t(e),()=>t(null)),[e]),null},dC=({children:e})=>{const{setConversationListChildren:t}=kr();return c.useLayoutEffect(()=>(t(e),()=>t(null)),[e]),null},mC=Object.assign(lC,{Style:cC,ConversationChildren:uC,ConversationListChildren:dC}),hC=e=>{const{refreshActiveChannel:t}=Ne(),[n,r]=c.useState(!1),s=c.useRef(null),o=c.useRef(null);return c.useEffect(()=>{n&&t().then(()=>{var a;(a=s.current)==null||a.call(s),r(!1)}).catch(a=>{var l;(l=o.current)==null||l.call(o,a),r(!1)})},[n]),c.useCallback(()=>new Promise((a,l)=>{s.current=a,o.current=l,e().then(()=>r(!0)).catch(l)}),[e])};ho.set(le.SendbirdPlatform.JS,{deviceOSPlatform:sa()?le.DeviceOsPlatform.MOBILE_WEB:le.DeviceOsPlatform.WEB,messengerVersion:hu,keyValueStorage:gu(),networkStateAdapter:fu()});exports.ANCHOR_REL=pr;exports.AgentProviderContainer=Mr;exports.AgentUIProviderContainer=Ii;exports.AnonymousSessionInfo=zn;exports.CSATType=We;exports.Commands=lt;exports.ConnectionDelayLayout=En;exports.Conversation=Ai;exports.ConversationContext=Kd;exports.ConversationContextProvider=Yo;exports.ConversationHeaderLayout=mt;exports.ConversationLayout=Sn;exports.ConversationList=Ti;exports.ConversationListContext=VE;exports.ConversationListContextProvider=xi;exports.ConversationListHeaderLayout=At;exports.ConversationListItemLayout=wr;exports.ConversationListLayout=xn;exports.DefaultMessenger=eC;exports.DeskTicketPriority=ar;exports.DeskTicketStatus=ir;exports.FixedMessenger=mC;exports.ID_INCOMING=Ze;exports.IncomingMessageLayout=rt;exports.LauncherBase=Li;exports.LogLevel=rr;exports.ManualSessionInfo=ao;exports.MessageListUILayout=yn;exports.MessageLogs=gi;exports.OutgoingMessageLayout=Pt;exports.PlaceholderLayout=vn;exports.SystemMessageLayout=bn;exports.cssVars=p;exports.escapeMarkdownSyntax=na;exports.flattenObject=ka;exports.mapCommonStringsToReactFormat=Ro;exports.messengerDispatcher=wi;exports.noop=he;exports.parseToMessageTemplate=uo;exports.parseToUITemplate=wa;exports.pickColorByTheme=Ma;exports.replaceVariablesAsync=Ra;exports.replaceVariablesSync=La;exports.useAIAgentContext=$e;exports.useConversationContext=ye;exports.useConversationListContext=An;exports.useLocalizationContext=re;exports.useMessageTemplateFetchingContext=nc;exports.useMessengerContext=fe;exports.useMessengerSessionContext=Ne;exports.useMessengerThemeContext=Fo;exports.useRefreshActiveChannel=hC;
507
+ ${({$isOpened:e})=>e&&YC};
508
+ ${({$isExpanded:e})=>e&&zC};
509
+ `,zC=P.css`width:743px;height:723px;`,YC=P.css`z-index:${dt.WINDOW};pointer-events:all;visibility:visible;transform:scale(1);opacity:1;transition:width 200ms ease 0s,height 200ms ease 0s,max-height 200ms ease 0s,transform 300ms cubic-bezier(0,1.2,1,1) 0s,opacity 83ms ease-out 0s,visibility 0s linear 0s;`,na={top:24,bottom:24,start:24,end:24},WC=c.forwardRef(function({children:e,initialChannelUrl:t,...n},r){const[s,o]=c.useState(t),[a,l]=c.useState(n.entryPoint??"Conversation"),[u,d]=c.useState("end-bottom"),[m,h]=c.useState(na),[f,v]=c.useState(48),C=Pt(),y=C?qi:HC,{horizontal:E,vertical:_}=c.useMemo(()=>{const[b,A]=u.split("-");return{horizontal:b==="start"?"start":"end",vertical:A==="top"?"top":"bottom"}},[u]);return i.createElement(Fr,{enableExpandButton:!C,ref:r,...n},i.createElement(ri,null,({state:b})=>i.createElement(FC,{value:{horizontal:E,vertical:_,margin:m,launcherSize:f,setPosition:d,setMargin:h,setLauncherSize:v}},i.createElement(Wi,null,i.createElement(y,{isExpanded:b.expanded,isOpened:b.opened},i.createElement(ea,{isOpened:b.opened,entryPoint:n.entryPoint,selectedChannelUrl:s,setSelectedChannelUrl:o,onActiveRouteChange:l})),i.createElement(BC,{entryPoint:n.entryPoint,activeRoute:a}),e))))}),qC=e=>{var s,o,a,l;const{setPosition:t,setMargin:n,setLauncherSize:r}=Gr();return c.useLayoutEffect(()=>{e.position&&t(e.position),e.margin&&n({...na,...e.margin}),e.launcherSize&&r(e.launcherSize)},[e.position,(s=e.margin)==null?void 0:s.top,(o=e.margin)==null?void 0:o.bottom,(a=e.margin)==null?void 0:a.start,(l=e.margin)==null?void 0:l.end,e.launcherSize]),null},KC=({children:e})=>{const{setConversationChildren:t}=Br();return c.useLayoutEffect(()=>(t(e),()=>t(null)),[e]),null},jC=({children:e})=>{const{setConversationListChildren:t}=Br();return c.useLayoutEffect(()=>(t(e),()=>t(null)),[e]),null},XC=Object.assign(WC,{Style:qC,ConversationChildren:KC,ConversationListChildren:jC}),ZC=e=>{const{refreshActiveChannel:t}=Re(),[n,r]=c.useState(!1),s=c.useRef(null),o=c.useRef(null);return c.useEffect(()=>{n&&t().then(()=>{var a;(a=s.current)==null||a.call(s),r(!1)}).catch(a=>{var l;(l=o.current)==null||l.call(o,a),r(!1)})},[n]),c.useCallback(()=>new Promise((a,l)=>{s.current=a,o.current=l,e().then(()=>r(!0)).catch(l)}),[e])};vo.set(ue.SendbirdPlatform.JS,{deviceOSPlatform:Ca()?ue.DeviceOsPlatform.MOBILE_WEB:ue.DeviceOsPlatform.WEB,messengerVersion:Pu,keyValueStorage:Bu(),networkStateAdapter:Fu()});exports.ANCHOR_REL=vr;exports.AgentProviderContainer=Fr;exports.AgentUIProviderContainer=zi;exports.AnonymousSessionInfo=Wn;exports.CSATType=Ke;exports.Commands=rt;exports.ConnectionDelayLayout=bn;exports.Conversation=Hi;exports.ConversationContext=_m;exports.ConversationContextProvider=li;exports.ConversationHeaderLayout=ht;exports.ConversationLayout=xn;exports.ConversationList=Vi;exports.ConversationListContext=Sb;exports.ConversationListContextProvider=Gi;exports.ConversationListHeaderLayout=St;exports.ConversationListItemLayout=Pr;exports.ConversationListLayout=Tn;exports.DefaultMessenger=PC;exports.DeskTicketPriority=hr;exports.DeskTicketStatus=mr;exports.FixedMessenger=XC;exports.ID_INCOMING=Xe;exports.IncomingMessageLayout=at;exports.LauncherBase=Ki;exports.LogLevel=cr;exports.ManualSessionInfo=go;exports.MessageListUILayout=An;exports.MessageLogs=Ri;exports.OutgoingMessageLayout=Bt;exports.PlaceholderLayout=Sn;exports.SystemMessageLayout=vn;exports.cssVars=g;exports.escapeMarkdownSyntax=Ea;exports.flattenObject=Ka;exports.mapCommonStringsToReactFormat=zo;exports.messengerDispatcher=Yi;exports.noop=he;exports.parseToMessageTemplate=bo;exports.parseToUITemplate=Wa;exports.pickColorByTheme=qa;exports.replaceVariablesAsync=Xa;exports.replaceVariablesSync=ja;exports.useAIAgentContext=Pe;exports.useConversationContext=Se;exports.useConversationListContext=yt;exports.useLocalizationContext=ie;exports.useMessageTemplateFetchingContext=vc;exports.useMessengerContext=fe;exports.useMessengerSessionContext=Re;exports.useMessengerThemeContext=Xo;exports.useRefreshActiveChannel=ZC;