!function(t){"use strict";function e(t,e){return t===e||t!=t&&e!=e}function n(t,n){for(var o=t.length;o--;)if(e(t[o][0],n))return o;return-1}var o=Array.prototype.splice;function r(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1},r.prototype.set=function(t,e){var o=this.__data__,r=n(o,t);return r<0?(++this.size,o.push([t,e])):o[r][1]=e,this};var a="object"==typeof global&&global&&global.Object===Object&&global,i="object"==typeof self&&self&&self.Object===Object&&self,s=a||i||Function("return this")(),c=s.Symbol,u=Object.prototype,E=u.hasOwnProperty,l=u.toString,_=c?c.toStringTag:void 0;var f=Object.prototype.toString;var d="[object Null]",p="[object Undefined]",T=c?c.toStringTag:void 0;function O(t){return null==t?void 0===t?p:d:T&&T in Object(t)?function(t){var e=E.call(t,_),n=t[_];try{t[_]=void 0;var o=!0}catch(t){}var r=l.call(t);return o&&(e?t[_]=n:delete t[_]),r}(t):function(t){return f.call(t)}(t)}function I(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}var h="[object AsyncFunction]",A="[object Function]",R="[object GeneratorFunction]",N="[object Proxy]";function b(t){if(!I(t))return!1;var e=O(t);return e==A||e==R||e==h||e==N}var S,g=s["__core-js_shared__"],y=(S=/[^.]+$/.exec(g&&g.keys&&g.keys.IE_PROTO||""))?"Symbol(src)_1."+S:"";var v=Function.prototype.toString;function w(t){if(null!=t){try{return v.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var m=/^\[object .+?Constructor\]$/,C=Function.prototype,D=Object.prototype,L=C.toString,P=D.hasOwnProperty,j=RegExp("^"+L.call(P).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function U(t){return!(!I(t)||(e=t,y&&y in e))&&(b(t)?j:m).test(w(t));var e}function M(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return U(n)?n:void 0}var F=M(s,"Map"),G=M(Object,"create");var B=Object.prototype.hasOwnProperty;var W=Object.prototype.hasOwnProperty;function H(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1&&t%1==0&&t-1&&t%1==0&&t<=ut}var lt={};function _t(t){return function(e){return t(e)}}lt["[object Float32Array]"]=lt["[object Float64Array]"]=lt["[object Int8Array]"]=lt["[object Int16Array]"]=lt["[object Int32Array]"]=lt["[object Uint8Array]"]=lt["[object Uint8ClampedArray]"]=lt["[object Uint16Array]"]=lt["[object Uint32Array]"]=!0,lt["[object Arguments]"]=lt["[object Array]"]=lt["[object ArrayBuffer]"]=lt["[object Boolean]"]=lt["[object DataView]"]=lt["[object Date]"]=lt["[object Error]"]=lt["[object Function]"]=lt["[object Map]"]=lt["[object Number]"]=lt["[object Object]"]=lt["[object RegExp]"]=lt["[object Set]"]=lt["[object String]"]=lt["[object WeakMap]"]=!1;var ft="object"==typeof t&&t&&!t.nodeType&&t,dt=ft&&"object"==typeof module&&module&&!module.nodeType&&module,pt=dt&&dt.exports===ft&&a.process,Tt=function(){try{var t=dt&&dt.require&&dt.require("util").types;return t||pt&&pt.binding&&pt.binding("util")}catch(t){}}(),Ot=Tt&&Tt.isTypedArray,It=Ot?_t(Ot):function(t){return K(t)&&Et(t.length)&&!!lt[O(t)]},ht=Object.prototype.hasOwnProperty;function At(t,e){var n=et(t),o=!n&&tt(t),r=!n&&!o&&at(t),a=!n&&!o&&!r&&It(t),i=n||o||r||a,s=i?function(t,e){for(var n=-1,o=Array(t);++n0){if(++un>=800)return arguments[0]}else un=0;return cn.apply(void 0,arguments)});function _n(t,e){return ln(function(t,e,n){return e=rn(void 0===e?t.length-1:e,0),function(){for(var o=arguments,r=-1,a=rn(o.length-e,0),i=Array(a);++r1?n[r-1]:void 0,i=r>2?n[2]:void 0;for(a=fn.length>3&&"function"==typeof a?(r--,a):void 0,i&&function(t,n,o){if(!I(o))return!1;var r=typeof n;return!!("number"==r?yt(o)&&ct(n,o.length):"string"==r&&n in o)&&e(o[n],t)}(n[0],n[1],i)&&(a=r<3?void 0:a,r=1),t=Object(t);++o{setTimeout(e,t)}))}!function(t){t.AI_TOOLTIP_AFTER_DESCRIPTION_ELEMENT="aiTooltipAfterDescriptionElement",t.WELCOME_NODE_BEFORE_ELEMENT="welcomeNodeBeforeElement",t.HEADER_BOTTOM_ELEMENT="headerBottomElement",t.BEFORE_INPUT_ELEMENT="beforeInputElement",t.HOME_SCREEN_BEFORE_INPUT_ELEMENT="homeScreenBeforeInputElement",t.HOME_SCREEN_AFTER_STARTERS_ELEMENT="homeScreenAfterStartersElement",t.HOME_SCREEN_HEADER_BOTTOM_ELEMENT="homeScreenHeaderBottomElement"}(Ln||(Ln={})),function(t){t.MESSAGE="message",t.HOME_SCREEN="homeScreen"}(Pn||(Pn={}));const Fn="[Chat]";var Gn,Bn,Wn,Hn,xn,$n;function Yn(t,...e){console.error(`${Fn} ${t}`,...e)}function kn(t,...e){console.debug(`${Fn} ${t}`,...e)}function Vn(t,...e){console.warn(`${Fn} ${t}`,...e)}async function Qn(t){try{if(t)return await t.text()}catch(t){Yn("Error getting fetch text",t)}}async function zn(t){try{if(t)return function(t,e,n){const o=new Promise(((t,o)=>{setTimeout((()=>{o(n)}),e)}));return Promise.race([t,o])}(t.text(),2e3,"Getting response text")}catch(t){Yn("Error getting fetch text",t)}}function Kn(){window.watsonAssistantChatSharedConfig=window.watsonAssistantChatSharedConfig||{},window.watsonAssistantChatSharedConfig.namespaces=window.watsonAssistantChatSharedConfig.namespaces||[],window.watsonAssistantChatSharedConfig.loadScriptPromises=window.watsonAssistantChatSharedConfig.loadScriptPromises||{}}function Xn(){return window.watsonAssistantChatSharedConfig}function qn(t){return t?t.trim():""}function Jn(t,e){Kn();const n=qn(t);if(Xn().namespaces.includes(n)){Yn(`You have multiple web chats attempting to use the same namespace. (${n||"No namespace provided"})`)}else!function(t){Kn();const e=qn(t),{namespaces:n}=Xn();n.push(e)}(t)}!function(t){t.PRIMARY="primary",t.ACCENT="accent"}(Gn||(Gn={})),function(t){t.WHITE="cds--white",t.G10="cds--g10",t.G90="cds--g90",t.G100="cds--g100"}(Bn||(Bn={})),function(t){t.PRIMARY="primary",t.SECONDARY="secondary",t.DANGER="danger",t.GHOST="ghost",t.DANGER_PRIMARY="danger--primary",t.DANGER_GHOST="danger--ghost",t.DANGER_TERTIARY="danger--tertiary",t.TERTIARY="tertiary"}(Wn||(Wn={})),function(t){t.SMALL="sm",t.MEDIUM="md",t.LARGE="lg",t.XLARGE="xl",t.XXLARGE="2xl"}(Hn||(Hn={})),function(t){t.START="start",t.CENTER="center",t.END="end"}(xn||(xn={})),function(t){t.TEXT_NOTIFICATION="text_notification"}($n||($n={}));function Zn(t){return Object.freeze(t),Object.getOwnPropertyNames(t).forEach((e=>{!Object.prototype.hasOwnProperty.call(t,e)||null===t[e]||"object"!=typeof t[e]&&"function"!=typeof t[e]||Object.isFrozen(t[e])||Zn(t[e])})),t}function to(t){Kn();const e=t.clientVersion||jn,{requestedVersion:n}=Xn();if(n){if(n!==e)return!0}else!function(t){window.watsonAssistantChatSharedConfig.requestedVersion=t}(e);return!1}const eo={config:{mobile:{title:"",time_to_expand:15e3,new_expand_time:!1,time_to_reduce:1e4,notification_type:$n.TEXT_NOTIFICATION},desktop:{title:"",new_expand_time:!1,time_to_expand:15e3,notification_type:$n.TEXT_NOTIFICATION}}};Zn(eo);const no={title:null,hideBackButton:!1,hidePanelHeader:!1,disableAnimation:!1};Zn(no);Zn({isOpen:!1,panelID:"wac-default-panel",options:no});Zn({isOpen:!1,messageItem:null});Zn({isOpen:!1,citationItem:null,relatedSearchResult:null});const oo={config:{is_on:!1},isOpen:!1,showBanner:!0};Zn(oo);Zn({activeTourStepItems:null});Zn({isOpen:!1,localMessageItem:null,isMessageForInput:!1});const ro={showButton:!1,allowCollapse:!1,panelState:gn.CLOSED,config:{is_on:!1},contactItem:null,starters:null,suggestionListItems:null,showSearchSection:!1,searchResults:null,searchResultsLoading:!1,searchResultsText:null};Zn(ro);const ao={launcher:!1,mainWindow:!1,tour:!1};Zn(ao);Zn({launcher:!0,mainWindow:!1,tour:!1});Zn({mainWindow:!0,launcher:!1,tour:!1});Zn({tour:!0,mainWindow:!1,launcher:!1});Zn({chatState:{version:jn,sessionID:null,sessionStartedTimestamp:null,updateHistoryUserDefinedCount:{},disclaimersAccepted:{},homeScreenState:{isHomeScreenOpen:!1,showBackToBot:!1},hasSentNonWelcomeMessage:!1,suggestionsPersistedState:{numStrikes:0,selectedIndex:-1,selectedSection:null},persistedTourState:{activeTourID:null,activeTourCurrentStepIndex:null},agentState:{isConnected:!1,agentProfiles:{}}},launcherState:{wasLoadedFromBrowser:!1,version:jn,viewState:ao,activeTour:!1,showUnreadIndicator:!1,mobileLauncherIsExtended:!1,mobileLauncherWasReduced:!1,mobileLauncherDisableBounce:!1,desktopLauncherIsExpanded:!1,desktopLauncherWasMinimized:!1,bounceTurn:1,hasSentNonWelcomeMessage:!1}});const io={localMessageIDs:[],messageIDs:[],isTypingCounter:0,isLoadingCounter:0,isScrollAnchored:!1};Zn(io);Zn({allMessageItemsByID:{},allMessagesByID:{},botMessageState:{...io}});Zn({isConnecting:!1,isReconnecting:!1,numUnreadMessages:0,fileUploadInProgress:!1,showScreenShareRequest:!1,isScreenSharing:!1,serviceDeskCapabilities:{allowFileUploads:!1,allowedFileUploadTypes:null,allowMultipleFileUploads:!1}});Zn({carbonTheme:An.G10,useAITheme:!1,corners:Rn.ROUND});Zn({carbon_theme:An.G10,use_ai_theme:!1});Zn({enabled:!1});Zn({is_on:!1});var so;Zn({showFrame:!0,hasContentMaxWidth:!1}),function(t){t.NONE="none",t.SOLID="solid",t.TOP_CORNER_OUT="top_corner_out",t.BOTTOM_UP="bottom_up"}(so||(so={}));class co extends Error{}co.prototype.name="InvalidTokenError";const uo="token provided is malformed",Eo="Authorization header provided but does not follow JWT format",lo="token expired";var _o;!function(t){t[t.MISCELLANEOUS=1]="MISCELLANEOUS",t[t.LOCAL_MESSAGE=2]="LOCAL_MESSAGE",t[t.MESSAGE=3]="MESSAGE",t[t.USER=6]="USER",t[t.DEVICE_ID=8]="DEVICE_ID",t[t.FILE=9]="FILE"}(_o||(_o={}));const fo={dev:"integrations.us-south.assistant.dev.watson.appdomain.cloud",staging:"integrations.us-south.assistant.test.watson.appdomain.cloud","us-south":"integrations.us-south.assistant.watson.appdomain.cloud","us-east":"integrations.us-east.assistant.watson.appdomain.cloud","jp-tok":"integrations.jp-tok.assistant.watson.appdomain.cloud","au-syd":"integrations.au-syd.assistant.watson.appdomain.cloud","eu-gb":"integrations.eu-gb.assistant.watson.appdomain.cloud","eu-de":"integrations.eu-de.assistant.watson.appdomain.cloud","kr-seo":"integrations.kr-seo.assistant.watson.appdomain.cloud","aws-dev":"integrations.aws-us-east-1.assistant.dev.watson.appdomain.cloud","aws-staging":"integrations.aws-us-east-1.assistant.test.watson.appdomain.cloud","aws-us-east-1":"integrations.aws-us-east-1.assistant.watson.appdomain.cloud","aws-preprod":"integrations.aws-us-east-1.assistant.preprod.watson.appdomain.cloud","aws-eu-central-1":"integrations.aws-eu-central-1.assistant.watson.appdomain.cloud","wxo-dev":"integrations.us-south.assistant-builder.dev.watson.appdomain.cloud","wxo-staging":"integrations.us-south.assistant-builder.test.watson.appdomain.cloud","wxo-us-south":"integrations.us-south.assistant-builder.watson.appdomain.cloud"};const po={openChatByDefault:!1,showLauncher:!0,shouldTakeFocusIfOpensAutomatically:!0,agentAppConfig:{is_on:!1},servers:{},serviceDesk:{},messaging:{copyPreviousContextOnRequest:!0},__ibm__:{isTrackingEnabled:!0,logTrackObjects:!1,connectToAgentBehavior:mn.ERROR_MISSING,enableFeatures:{}},wxo:{}},To="chat";function Oo(t){const e=function(t){return fo[t.region]}(t);return`${t.servers?.assistantURLPrefix||`https://${e}`}/${t.subscriptionID||"public"}`}function Io(t,e){const n=t.__ibm__?.customInitConfigURL;if(n)return n;const o=function(t,e){let n=null;if(t.cloudPrivateHostURL){const e=To;n=`${t.cloudPrivateHostURL.replace(/\/?$/,"/")}v1/${e}/${t.integrationID}`}return n}(t);if(o)return`${o}/config?type=init`;const r=Oo(t),a="?type=init";return t.agentAppConfig?.is_on?`${r}/agentapp/${t.integrationID}/config${a}`:`${r}/chat/${t.integrationID}/config${a}`}async function ho(t,e,n,o){const r=await e(t,o);if(!r.ok){if(r.status===dn.TOO_MANY_REQUESTS)return null;const t=await Qn(r);if(function(t,e,n){return t===dn.FORBIDDEN&&e||t===dn.BAD_REQUEST&&n?.includes(uo)||t===dn.BAD_REQUEST&&n?.includes(Eo)||t===dn.UNAUTHORIZED&&n?.includes(lo)}(r.status,n,t))return r;throw r}return r}async function Ao(t,e,n){if(t.servers?.skipConfig)return{botName:"watsonx Assistant"};const o=Io(t);let r;try{r=await async function(t,e,n){let o=1;for(;o-1<=e.length;){try{return await t(o)}catch(t){if(o-1===e.length)throw Yn(`The operation "${n}" failed after ${o} attempts and will not be retried.`,t),t;{const r=e[o-1];Yn(`The operation "${n}" failed after ${o} attempts will be retried in ${r}ms.`,t),await Mn(r)}}o++}throw new Error(`Unexpected retry state for operation "${n}".`)}((()=>ho(o,n,!1,undefined)),[100,1e3,2e3,5e3],"fetch init config")}catch(t){if(e)throw e({errorType:Nn.INITIAL_CONFIG,message:"The init configuration data could not be loaded.",errorCode:t?.status||void 0,otherData:await zn(t)}),new Error(`${Fn} The init configuration data could not be loaded.`)}if(!r)throw new Error(`${Fn} The init configuration data could not be loaded.`);const a=await Qn(r);if(!r.ok){const n=`The configuration for integrationID "${t.integrationID}" requires a valid identityToken. The chat widget will not be displayed.`;throw e&&e({errorType:Nn.INITIAL_CONFIG,message:"The init configuration data could not be loaded (JWT retry).",errorCode:r.status||void 0,otherData:a}),Yn(n),new Error(`${Fn} ${n}`)}const i=a?JSON.parse(a):{};if(i.botName=i.botName||"watsonx Assistant",t.__ibm__?.toolingType===wn.PREVIEW_LINK&&i.authorization?.is_on)throw e&&e({errorType:Nn.PREVIEW_LINK_SECURITY,message:"Web chat security is enabled which is not supported by the preview link."}),new Error(`${Fn} Web chat security is enabled which is not supported by the preview link.`);return i}function Ro(){return t=window.fetch.bind(window),async(...e)=>{const n=await t(...e),o=n.text.bind(n);let r=No;return n.text=async()=>(r===No&&(r=await o()),r),n.json=async()=>{const t=await n.text();return JSON.parse(t)},n};var t}const No={};let bo;function So(t){try{if(t){const e=window.sessionStorage?.getItem("IBM_WAC_CONFIG_OVERRIDE");if(e){const n=JSON.parse(e);Vn("Applying local config override",n),Dn(t,n)}}}catch(t){Yn("Error trying to apply session overrides",t)}}async function go(t){So(t),t?.debug&&kn("[WatsonAssistantChatEntry] Called loadWatsonAssistantChat()",t);return vo(await yo(t,Ro(),bo))}async function yo(t,e,n,o,r,a){const i=Date.now();let s=xe(t,$e|Ye);s?.debug&&kn("[ChatEntry] Called instantiateWidget",s),"https:"!==document.location.protocol&&Vn('Your page is not running with "https"; your data will not be sent securely.'),function(t,e){const{integrationID:n,region:o,namespace:r,__ibm__:a=po.__ibm__,messaging:i}=t;if(!a.customMessageURL&&!i?.customSendMessage){if("string"!=typeof(s=n)||null===s.match(/^[0-9a-f]{8}-?[0-9a-f]{4}-?[0-9a-f]{4}-?[0-9a-f]{4}-?[0-9a-f]{12}$/i))throw new Error(`${Fn} The value of integrationID "${n}" is not a valid ID.`);if(!o)throw new Error(`${Fn} You failed to provide a region in your config object.`);if(!fo[o])throw new Error(`${Fn} The region "${o}" you provided in your config object is not a valid region.`)}if(to(t))throw new Error(`${Fn} You cannot load web chats of different versions on the same page.`);var s;Jn(r)}(s);const{element:c,onLoad:u,onError:E,...l}=s;l.__ibm__?.skipConfig&&(Vn("IBM skipConfig is deprecated. Use servers.skipConfig."),l.servers=l.servers||{},l.servers.skipConfig=!0),l.__ibm__?.overrideRemoteInitConfig&&(Vn("IBM overrideRemoteInitConfig is deprecated. Use servers.initConfig."),l.servers=l.servers||{},l.servers.initConfig=l.__ibm__.overrideRemoteInitConfig);const[_,f]=await Promise.all([Ao(l,E,e),n(l)]);return new f(l,_,c,{loadVersion:"CarbonChatEntry",onError:E,fetch:e,loadStartTime:i,asCarbonChat:o,renderOverride:r,localInstall:a})}function vo(t){return new Promise(((e,n)=>{const o=function(){t.start().then(e,n)};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",o):o()}))}var wo,mo,Co,Do;t.MessageInputType=void 0,(wo=t.MessageInputType||(t.MessageInputType={})).TEXT="text",wo.EVENT="event",t.MessageResponseTypes=void 0,(mo=t.MessageResponseTypes||(t.MessageResponseTypes={})).TEXT="text",mo.OPTION="option",mo.CONNECT_TO_AGENT="connect_to_agent",mo.IMAGE="image",mo.PAUSE="pause",mo.USER_DEFINED="user_defined",mo.IFRAME="iframe",mo.VIDEO="video",mo.AUDIO="audio",mo.DATE="date",mo.TABLE="table",mo.INLINE_ERROR="inline_error",t.OptionItemPreference=void 0,(Co=t.OptionItemPreference||(t.OptionItemPreference={})).DROPDOWN="dropdown",Co.BUTTON="button",t.IFrameItemDisplayOption=void 0,(Do=t.IFrameItemDisplayOption||(t.IFrameItemDisplayOption={})).INLINE="inline",Do.PANEL="panel",function(t){bo=t;const e=window.watsonAssistantChatOptions;So(e);const n=e?.debug;n&&kn("[WatsonAssistantChatEntry] Starting."),e?e.onLoad?(n&&kn("[WatsonAssistantChatEntry] Using publicConfig.onLoad."),function(){const t=window.watsonAssistantChatOptions;t?.debug&&kn("[WatsonAssistantChatEntry] Called loadWatsonAssistantChatWithOnLoad",t);const e=t.onLoad;yo(t,Ro(),bo).then((t=>vo(t))).then(e)}()):n&&Vn("[WatsonAssistantChatEntry] No onLoad found in public config."):n&&kn("[WatsonAssistantChatEntry] No window.watsonAssistantChatOptions found."),window.loadWatsonAssistantChat=go}((async function(t){const e=function(t){return t.__ibm__?.useExactVersion?t.clientVersion:jn}(t),{loadScriptPromises:n}=Xn();return n[jn]?n[jn]:(n[jn]=function(){let t,e;const n=new Promise(((n,o)=>{t=n,e=o}));return n.doResolve=e=>{n.isResolved=!0,n.isComplete=!0,t(e)},n.doReject=t=>{n.isRejected=!0,n.isComplete=!0,e(t)},n.isResolved=!1,n.isRejected=!1,n.isComplete=!1,n}(),new Promise(((o,r)=>{const a=function(t){return t?.cloudPrivateHostURL?`${t.cloudPrivateHostURL.replace(/\/?$/,"/")}static/webchat`:t?.servers?.webChatScriptPrefix?t?.servers?.webChatScriptPrefix:Un}(t),i=`${a}/versions/${e}`,s=document.createElement("script");s.onload=async()=>{const t=await n[jn];o(t)},s.onerror=t=>{r(t)},s.src=`${i}/chat.js`,document.head.appendChild(s)})))}))}({}); //# sourceMappingURL=WatsonAssistantChatEntry.js.map