/* polyfills.min.js:start */ (function(self, undefined) {function Call(t,l){var n=arguments.length>2?arguments[2]:[];if(!1===IsCallable(t))throw new TypeError(Object.prototype.toString.call(t)+"is not a function.");return t.apply(l,n)}function CreateMethodProperty(e,r,t){var a={value:t,writable:!0,enumerable:!1,configurable:!0};Object.defineProperty(e,r,a)}function Get(n,t){return n[t]}function IsCallable(n){return"function"==typeof n}function RequireObjectCoercible(e){if(null===e||e===undefined)throw TypeError();return e}function SameValueNonNumber(e,n){return e===n}function ToBoolean(o){return Boolean(o)}function ToInteger(n){var i=Number(n);return isNaN(i)?0:1/i===Infinity||1/i==-Infinity||i===Infinity||i===-Infinity?i:(i<0?-1:1)*Math.floor(Math.abs(i))}function ToLength(n){var t=ToInteger(n);return t<=0?0:Math.min(t,Math.pow(2,53)-1)}function ToObject(e){if(null===e||e===undefined)throw TypeError();return Object(e)}function GetV(t,e){return ToObject(t)[e]}function GetMethod(e,n){var r=GetV(e,n);if(null===r||r===undefined)return undefined;if(!1===IsCallable(r))throw new TypeError("Method not callable: "+n);return r}function Type(e){switch(typeof e){case"undefined":return"undefined";case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"symbol":return"symbol";default:return null===e?"null":"Symbol"in self&&(e instanceof self.Symbol||e.constructor===self.Symbol)?"symbol":"object"}}function IsRegExp(e){if("object"!==Type(e))return!1;var n="Symbol"in self&&"match"in self.Symbol?Get(e,self.Symbol.match):undefined;if(n!==undefined)return ToBoolean(n);try{var t=e.lastIndex;return e.lastIndex=0,RegExp.prototype.exec.call(e),!0}catch(l){}finally{e.lastIndex=t}return!1}function OrdinaryToPrimitive(r,t){if("string"===t)var e=["toString","valueOf"];else e=["valueOf","toString"];for(var i=0;i1?arguments[1]:undefined;if("object"===Type(e)){if(arguments.length<2)var i="default";else t===String?i="string":t===Number&&(i="number");var r="function"==typeof self.Symbol&&"symbol"==typeof self.Symbol.toPrimitive?GetMethod(e,self.Symbol.toPrimitive):undefined;if(r!==undefined){var n=Call(r,e,[i]);if("object"!==Type(n))return n;throw new TypeError("Cannot convert exotic object to primitive.")}return"default"===i&&(i="number"),OrdinaryToPrimitive(e,i)}return e}function ToString(t){switch(Type(t)){case"symbol":throw new TypeError("Cannot convert a Symbol value to a string");case"object":return ToString(ToPrimitive(t,String));default:return String(t)}}CreateMethodProperty(Array.prototype,"findIndex",function e(r){var t=ToObject(this),n=ToLength(Get(t,"length"));if(!1===IsCallable(r))throw new TypeError(r+" is not a function");for(var o=arguments.length>1?arguments[1]:undefined,a=0;a=0)var a=n;else(a=o+n)<0&&(a=0);for(;a1?arguments[1]:undefined,n=RequireObjectCoercible(this),i=ToString(n);if(IsRegExp(t))throw new TypeError("First argument to String.prototype.endsWith must not be a regular expression");var o=ToString(t),s=i.length,g=r===undefined?s:ToInteger(r),h=Math.min(Math.max(g,0),s),u=o.length,a=h-u;return!(a<0)&&i.substr(a,u)===o});CreateMethodProperty(String.prototype,"includes",function e(t){"use strict";var r=arguments.length>1?arguments[1]:undefined,n=RequireObjectCoercible(this),i=ToString(n);if(IsRegExp(t))throw new TypeError("First argument to String.prototype.includes must not be a regular expression");var o=ToString(t),g=ToInteger(r),a=i.length,p=Math.min(Math.max(g,0),a);return-1!==String.prototype.indexOf.call(i,o,p)});})('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {}); /* polyfills.min.js:end */ /* Model.min.js:start */ var Microsoft;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){this.messagesObservers=[];this.fileMessagesObservers=[]}return n.prototype.generateMessage=function(n,t){var i={disconnect:null,downloadFile:null,getFileStatus:null,getMembers:null,getMessages:null,id:n,indicateTypingStatus:null,registerOnIC3Error:null,registerOnNewMessage:null,registerOnThreadUpdate:null,sendFileMessage:null,sendMessage:null,sendMessageToBot:null,uploadFile:null};this.messagesObservers.forEach(function(n){n(i,t)})},n.prototype.generateFileMessage=function(n,t,i){var r={disconnect:null,downloadFile:null,getFileStatus:null,getMembers:null,getMessages:null,id:n,indicateTypingStatus:null,registerOnIC3Error:null,registerOnNewMessage:null,registerOnThreadUpdate:null,sendFileMessage:null,sendMessage:null,sendMessageToBot:null,uploadFile:null};this.fileMessagesObservers.forEach(function(n){n(r,t,i)})},n.prototype.subscribeToMessages=function(n){this.messagesObservers.push(n)},n.prototype.subscribeToFileMessages=function(n){this.fileMessagesObservers.push(n)},n}();n.ConversationGenerator=t})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))})(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.NewMessage="NewMessage",n.MessageUpdate="MessageUpdate",n.UserPresence="UserPresence",n.ConversationUpdate="ConversationUpdate",n.ThreadUpdate="ThreadUpdate",n}();n.ResourceType=t})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){n[n.Unknown=0]="Unknown";n[n.User=1]="User";n[n.Bot=2]="Bot"})(t=n.PersonType||(n.PersonType={}))})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){n[n.Typing=0]="Typing";n[n.ClearTyping=1]="ClearTyping"})(t=n.TypingStatus||(n.TypingStatus={}))})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){n[n.Unknown=0]="Unknown";n[n.InProgress=1]="InProgress";n[n.Success=2]="Success";n[n.Error=3]="Error"})(t=n.FileStatus||(n.FileStatus={}))})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){n[n.AmsBasedFileSharing=0]="AmsBasedFileSharing"})(t=n.FileSharingProtocolType||(n.FileSharingProtocolType={}))})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.Bridged="bridged",n.Unbridged="unbridged",n}();n.DeliveryMode=t})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.RichText="RichText",n.Text="Text",n}();n.MessageContentType=t})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.UserMessage="UserMessage",n.SwiftCard="SwiftCard",n.Typing="Control/Typing",n.ClearTyping="Control/ClearTyping",n.LiveState="Control/LiveState",n}();n.MessageType=t})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.IC3V1SDK=0,n.IC3V2SDK=1,n.MockIC3SDK=2,n}();n.ProtocolType=t})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.IFrame=0,n.Page=1,n}();n.HostType=t})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){n.INFO="INFO";n.DEBUG="DEBUG";n.WARN="WARN";n.ERROR="ERROR"})(t=n.LogLevel||(n.LogLevel={}))})(t=n.Model||(n.Model={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})); /* Model.min.js:end */ /* Common.min.js:start */ var __extends=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=i===null?Object.create(i):(r.prototype=i.prototype,new r)}}(),__assign=this&&this.__assign||function(){return __assign=Object.assign||function(n){for(var t,r,i=1,u=arguments.length;i=t.Constants.Unusual_Response_Start_Point){var e={ResponseText:f.responseText,Status:status};i.logWarning("Requesting "+n.url,f.status,e)}t.Utilities.isNullOrUndefined(n.callbackOnSuccess)||n.callbackOnSuccess(f);r(u)}function h(r,s,h,c){var y={ContextId:t.Utilities.getResponseHeader(c,t.HttpHeaders.ContextIdHeader),ErrorThrown:h,Location:t.Utilities.getResponseHeader(c,t.HttpHeaders.LocationHeader),ResponseText:c.responseText,Status:r,TextStatus:s},l=function(){i.logError("Request to "+n.url+" failed.",r,y);u(new Error(c.responseText))},a=function(){i.logError("Request to "+n.url+" failed. Resetting endpoint.",r,y);t.Utilities.isNullOrUndefined(n.callbackOnFailure)||n.callbackOnFailure(c);u(new Error(t.Constants.Reset_Flag))},v=function(){e++;var r=n.timeBetweenRetry||0;(n.enableExponentialBackoff||c.status===t.HttpCode.TooManyRequests)&&(r=r*Math.exp(e));setTimeout(function(){i.MakeAjaxCall(f)},r)},p=t.Utilities.getResponseHeader(c,t.HttpHeaders.LocationHeader),w=t.Utilities.getResponseHeader(c,t.HttpHeaders.SetRegistrationTokenHeader);c.status!==t.HttpCode.Redirect||t.Utilities.isNullOrEmptyString(p)?c.status!==t.HttpCode.Unauthorized&&c.status!==t.HttpCode.Forbidden||t.Utilities.isNullOrEmptyString(w)?e<=o&&n.shouldRetryOnFailure&&n.shouldRetryOnFailure(c.status)||c.status===t.HttpCode.TooManyRequests?v():n.shouldResetOnFailure?a():l():e<=o&&n.shouldRetryOnFailure&&n.shouldRetryOnFailure(c.status)?(f.headers[t.HttpHeaders.RegistrationTokenHeader]=t.Utilities.getRegistrationTokenValue(w),v()):n.shouldResetOnFailure?a():l():n.shouldRedirectOn404?a():e<=o?(f.url=p,v()):l()}var f={type:n.type,url:n.url},e,o;!t.Utilities.isNullOrUndefined(n.useXHRWithCredentials)&&n.useXHRWithCredentials&&(f.xhrFields={withCredentials:!0});n.isBlobData&&(f.xhrFields=__assign(__assign({},f.xhrFields),{responseType:"blob"}));t.Utilities.isNullOrUndefined(n.data)||(f.data=n.data);t.Utilities.isNullOrUndefined(n.contentType)||(f.contentType=n.contentType);t.Utilities.isNullOrUndefined(n.timeout)||(f.timeout=n.timeout);t.Utilities.isNullOrUndefined(n.headers)||(f.headers=n.headers);t.Utilities.isNullOrUndefined(n.dataType)||(f.dataType=n.dataType);t.Utilities.isNullOrUndefined(n.processData)||(f.processData=n.processData);f.success=function(n,t,i){s(n,i)};f.error=function(n,t,i){h(n.status,t,i,n)};e=0;o=t.Utilities.isNullOrUndefined(n.retryCount)?1:n.retryCount;i.MakeAjaxCall(f)})},i.isClientError=function(n){if(!n)return!1;var i=n.message,r=!1;return t.Utilities.isNullOrEmptyString(i)||(r=i.search(/Status- 40\d/)>=-1),r},i.setLogger=function(n){i.logger=n},i.logInfo=function(r,u,f){if(i.logger&&r){var e={};Object.keys(r).forEach(function(n){t.Constants.sensitiveProperties.indexOf(n)===-1&&(e[n]=r[n])});try{i.logger.log(n.Model.LogLevel.INFO,f,{Description:JSON.stringify(e),EndpointId:"",EndpointUrl:u})}catch(o){this.logger.log(n.Model.LogLevel.ERROR,t.IC3TelemetryEvent.GetMessages,{Description:t.Constants.unableToStringifyMessage,EndpointId:"",EndpointUrl:u,ExceptionDetails:{Message:t.Utilities.stringifyHelper(o)}})}}},i.logError=function(r,u,f){i.logger&&i.logger.log(n.Model.LogLevel.ERROR,t.IC3TelemetryEvent.HTTPRequestFailed,{Description:r,ErrorCode:u.toString(),ExceptionDetails:f})},i.logWarning=function(r,u,f){i.logger&&i.logger.log(n.Model.LogLevel.INFO,t.IC3TelemetryEvent.HTTPRequestUnusualResponse,{Description:r,ErrorCode:u.toString(),ExceptionDetails:f})},i.ParseData=function(n){return typeof n=="string"?n===""?null:JSON.parse(n):n},i.MakeAjaxCall=function(n){var t=window.$||window.$j;t.ajax(n)},i}();t.HttpClient=i})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return Object.defineProperty(n,"OK",{get:function(){return 200},enumerable:!0,configurable:!0}),Object.defineProperty(n,"Created",{get:function(){return 201},enumerable:!0,configurable:!0}),Object.defineProperty(n,"Accepted",{get:function(){return 202},enumerable:!0,configurable:!0}),Object.defineProperty(n,"NoContent",{get:function(){return 204},enumerable:!0,configurable:!0}),Object.defineProperty(n,"Unauthorized",{get:function(){return 401},enumerable:!0,configurable:!0}),Object.defineProperty(n,"Forbidden",{get:function(){return 403},enumerable:!0,configurable:!0}),Object.defineProperty(n,"Redirect",{get:function(){return 404},enumerable:!0,configurable:!0}),Object.defineProperty(n,"TooManyRequests",{get:function(){return 429},enumerable:!0,configurable:!0}),Object.defineProperty(n,"InternalServerError",{get:function(){return 500},enumerable:!0,configurable:!0}),Object.defineProperty(n,"ServiceUnavailable",{get:function(){return 503},enumerable:!0,configurable:!0}),Object.defineProperty(n,"NotFound",{get:function(){return 729},enumerable:!0,configurable:!0}),n}();n.HttpCode=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return Object.defineProperty(n,"GET",{get:function(){return"get"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"POST",{get:function(){return"post"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"PUT",{get:function(){return"put"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"DELETE",{get:function(){return"delete"},enumerable:!0,configurable:!0}),n}();n.HTTPRequestType=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.Success=0,n.Failure=1,n}();n.PostMessageEventStatus=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.ADAPTER_LOAD_COMPLETE="ADAPTER_LOAD_COMPLETE",n.ADAPTER_LOAD_FAIL="ADAPTER_LOAD_FAIL",n.INCOMING_MESSAGE="INCOMING_MESSAGE",n.THREAD_UPDATE="THREAD_UPDATE",n.IC3_ERROR="IC3_ERROR",n.TELEMETRY_EVENT="TELEMETRY_EVENT",n.START_SESSION_REQUEST="START_SESSION_REQUEST",n.UPDATE_SESSION_REQUEST="UPDATE_SESSION_REQUEST",n.END_SESSION_REQUEST="END_SESSION_REQUEST",n.JOIN_CONVERSATION_REQUEST="JOIN_CONVERSATION_REQUEST",n.SEND_MESSAGE_REQUEST="SEND_MESSAGE_REQUEST",n.GET_MESSAGES_REQUEST="GET_MESSAGES_REQUEST",n.REGISTER_ON_NEW_MESSAGE_REQUEST="REGISTER_ON_NEW_MESSAGE_REQUEST",n.REGISTER_ON_THREAD_UPDATE_REQUEST="REGISTER_ON_THREAD_UPDATE_REQUEST",n.REGISTER_ON_IC3_ERROR_REQUEST="REGISTER_ON_IC3_ERROR_REQUEST",n.DISCONNECT_FROM_CONVERSATION_REQUEST="DISCONNECT_FROM_CONVERSATION_REQUEST",n.SEND_FILE_DATA_REQUEST="SEND_FILE_DATA_REQUEST",n.DOWNLOAD_FILE_DATA_REQUEST="DOWNLOAD_FILE_DATA_REQUEST",n.GET_FILE_STATUS_REQUEST="GET_FILE_STATUS_REQUEST",n.INDICATE_TYPING_STATUS_REQUEST="INDICATE_TYPING_STATUS_REQUEST",n.SEND_FILE_MESSAGE_REQUEST="SEND_FILE_MESSAGE_REQUEST",n.SEND_MESSAGE_TO_BOT_REQUEST="SEND_MESSAGE_TO_BOT_REQUEST",n.GET_MEMBERS_REQUEST="GET_MEMBERS_REQUEST",n}();n.PostMessageEventNames=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return Object.defineProperty(n,"IS_FRAMED",{get:function(){return"isFramed"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"PROTOCOL_TYPE",{get:function(){return"protocolType"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"SDK_ID",{get:function(){return"sdkId"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"SHOULD_SEND_TELEMETRY_EVENTS",{get:function(){return"shouldSendTelemetryEvents"},enumerable:!0,configurable:!0}),n}();n.QueryParameters=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.None=0,n.Request=1,n.Response=2,n}();n.PostMessageEventType=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){n.JoinConversation="JoinConversation";n.RegisterOnNewMessage="RegisterOnNewMessage";n.GetMessages="GetMessages";n.SendMessage="SendMessage";n.MakeRequest="MakeRequest";n.OnNewMessage="OnNewMessage";n.RegisterOnThreadUpdate="RegisterOnThreadUpdate";n.RegisterOnIC3Error="RegisterOnIC3Error";n.OnNewMessageFailure="OnNewMessageFailure";n.OnThreadUpdateFailure="OnThreadUpdateFailure";n.SendLiveStateFailure="SendLiveStateFailure";n.JoinConversationV1GetThreadRequestFailed="JoinConversationV1GetThreadRequestFailed";n.JoinConversationV1GetThreadRequestStarted="JoinConversationV1GetThreadRequestStarted";n.ReportIC3ErrorToClient="ReportIC3ErrorToClient";n.ReportIC3ErrorToClientFailed="ReportIC3ErrorToClientFailed";n.UpdateToken="UpdateToken";n.SyncingPollData="SyncingPollData";n.IC3InitializationBegins="IC3InitializationBegins";n.IC3StartedPolling="IC3StartedPolling";n.IC3StoppedPolling="IC3StoppedPolling";n.IC3EndpointCreationSuccess="IC3EndpointCreationSuccess";n.RedirectOnRequestCreationFailure="RedirectOnRequestCreationFailure";n.ResetOnRequestCreationFailure="ResetOnRequestCreationFailure";n.MaxRetryCountReachedForRedirect="MaxRetryCountReachedForRedirect";n.OnRequestCreationFailureRedirect="OnRequestCreationFailureRedirect";n.OnRequestCreationSuccessRedirect="OnRequestCreationSuccessRedirect";n.ErrorDuringPolling="ErrorDuringPolling";n.HTTPRequestFailed="HTTPRequestFailed";n.HTTPRequestUnusualResponse="HTTPRequestUnusualResponse";n.IC3SDKDisposed="IC3SDKDisposed";n.IC3InfoUpdatedInV1Adapter="IC3InfoUpdatedInV1Adapter";n.IC3InfoUpdatedInInitializerAfterError="IC3InfoUpdatedInInitializerAfterError";n.CreateIC3Info="CreateIC3Info";n.UpdateSkypeToken="UpdateSkypeToken";n.AMSQueryEvent="AMSQueryEvent";n.UnknownProtocolError="UnknownProtocolError";n.SetAMSSkypeToken="SetAMSSkypeToken"})(t=n.IC3TelemetryEvent||(n.IC3TelemetryEvent={}))})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.Script=0,n.IFrame=1,n}();n.ResourceType=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.Minified=0,n.NonMinified=1,n}();n.SDKLoadFileType=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function t(){}return t.readFileAsArrayBuffer=function(t){return new Promise(function(i,r){if(n.Utilities.isNullOrUndefined(t))r(new Error("No file to read"));else{var u=new FileReader;u.onload=function(){i(u.result)};u.onerror=function(n){r(n)};u.readAsArrayBuffer(t)}})},t}();n.PromiseBasedFileReader=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return n.getTelemetryEventData=function(n,t,i){return{Description:i.Description,ElapsedTimeInMilliseconds:i.ElapsedTimeInMilliseconds,EndpointId:i.EndpointId,EndpointUrl:i.EndpointUrl,ErrorCode:i.ErrorCode,Event:t,ExceptionDetails:i.ExceptionDetails,ShouldBubbleToHost:i.ShouldBubbleToHost,SubscriptionId:n.id}},n}();n.TelemetryHelper=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function t(n,t){this.sdk=n;this.logger=t}return t.prototype.log=function(t,i,r){if(this.isLoggingEnabled()){var u=n.TelemetryHelper.getTelemetryEventData(this.sdk,i,r);this.logEvent(t,u)}},t.prototype.logEvent=function(n,t){this.isLoggingEnabled()&&this.logger.logClientSdkTelemetryEvent(n,t)},t.prototype.isLoggingEnabled=function(){return!n.Utilities.isNullOrUndefined(this.logger)},t}();n.RawLogger=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return Object.defineProperty(n,"unableToStringifyMessage",{get:function(){return"Unable to stringify file metadata"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"sensitiveProperties",{get:function(){return["messages"]},enumerable:!0,configurable:!0}),Object.defineProperty(n,"SDK_SCRIPT_ID",{get:function(){return"Microsoft_CRM_IC3SDK"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"Reset_Flag",{get:function(){return"reset_ic3_needed"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"Unusual_Response_Start_Point",{get:function(){return 300},enumerable:!0,configurable:!0}),Object.defineProperty(n,"encodeHTMLSpecialCharacters",{get:function(){return[["&","&"],["<","<"]]},enumerable:!0,configurable:!0}),Object.defineProperty(n,"decodeHTMLSpecialCharacters",{get:function(){return[["

",""],["<\/p>",""],["<","<"],[">",">"],[""",'"'],["+","+"],["&","&"]]},enumerable:!0,configurable:!0}),n}();n.Constants=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return Object.defineProperty(n,"IC3SDKLOAD",{get:function(){return"ic3:sdk:load"},enumerable:!0,configurable:!0}),n}();n.EventNames=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return Object.defineProperty(n,"SdkVersion",{get:function(){return"2021.03.02.1"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"BaseUrl",{get:function(){return"https://comms.omnichannelengagementhub.com/release/"},enumerable:!0,configurable:!0}),n}();n.StaticSdkConfiguration=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function t(){}return t.raiseCustomEvent=function(n,i){var r=t.createCustomEvent(n,i);window.dispatchEvent(r)},t.createCustomEvent=function(t,i){var u=n.Utilities.isNullOrUndefined(i)?undefined:{detail:i},r=null;try{r=new CustomEvent(t,u)}catch(f){r=document.createEvent("CustomEvent");r.initCustomEvent(t,!0,!0,u)}return r},t}();n.EventManager=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function t(){}return t.setRootPath=function(i,r,u){var f=null;n.Utilities.isNullOrEmptyString(u)?(f=i,f=f.trim(),f.charAt(f.length-1)!=="/"&&(f+="/"),f+=r+"/"):f=u.substring(0,u.lastIndexOf("/")+1)+"../../";t.rootPath=f},t.setLoadFileType=function(n){t.loadFileType=n},Object.defineProperty(t,"ModelScriptFilePath",{get:function(){return t.rootPath+t.scriptsFolder+t.modelFolder+t.modelScriptFile},enumerable:!0,configurable:!0}),Object.defineProperty(t,"CommonScriptFilePath",{get:function(){return t.rootPath+t.scriptsFolder+t.commonFolder+t.commonScriptFile},enumerable:!0,configurable:!0}),Object.defineProperty(t,"SDKScriptFilePath",{get:function(){return t.rootPath+t.scriptsFolder+t.sdkFolder+t.scriptPathWithValidExtension(t.sdkScriptFile)},enumerable:!0,configurable:!0}),Object.defineProperty(t,"IC3ClientScriptFilePath",{get:function(){return t.rootPath+t.scriptsFolder+t.ic3ClientFolder+t.scriptPathWithValidExtension(t.ic3ClientScriptFile)},enumerable:!0,configurable:!0}),Object.defineProperty(t,"MockIC3ClientScriptFilePath",{get:function(){return t.rootPath+t.scriptsFolder+t.mockIC3ClientFolder+t.scriptPathWithValidExtension(t.mockIC3ClientScriptFile)},enumerable:!0,configurable:!0}),Object.defineProperty(t,"IframePath",{get:function(){return t.rootPath+t.htmlsFolder+t.iframeFile},enumerable:!0,configurable:!0}),Object.defineProperty(t,"JQueryLibraryFilePath",{get:function(){return t.rootPath+t.librariesFolder+t.initializerFolder+t.jqueryLibraryFile},enumerable:!0,configurable:!0}),Object.defineProperty(t,"BluebirdLibraryFilePath",{get:function(){return t.rootPath+t.librariesFolder+t.initializerFolder+t.bluebirdLibraryFile},enumerable:!0,configurable:!0}),Object.defineProperty(t,"AriaLibraryFilePath",{get:function(){return t.rootPath+t.librariesFolder+t.initializerFolder+t.ariaLibraryFile},enumerable:!0,configurable:!0}),t.scriptPathWithValidExtension=function(i){var r=i;return t.loadFileType===n.SDKLoadFileType.Minified&&!i.endsWith(t.ScriptMinifiedExtension)&&i.endsWith(t.ScriptUnminifiedExtension)&&(r=i.substring(0,i.length-t.ScriptUnminifiedExtension.length)+t.ScriptMinifiedExtension),r},t.ScriptMinifiedExtension=".min.js",t.ScriptUnminifiedExtension=".js",t.loadFileType=n.SDKLoadFileType.Minified,t.scriptsFolder="Scripts/",t.librariesFolder="Libraries/",t.htmlsFolder="Htmls/",t.initializerFolder="Initializer/",t.modelFolder="Model/",t.commonFolder="Common/",t.sdkFolder="SDK/",t.clientsFolder="Clients/",t.ic3ClientFolder=t.clientsFolder+"IC3Client/",t.mockIC3ClientFolder=t.clientsFolder+"MockIC3Client/",t.modelScriptFile="Model.js",t.commonScriptFile="Common.js",t.sdkScriptFile="SDK.js",t.ic3ClientScriptFile="IC3Client.js",t.mockIC3ClientScriptFile="MockIC3Client.js",t.iframeFile="iframe.html",t.jqueryLibraryFile="jquery-3.4.1.min.js",t.bluebirdLibraryFile="bluebird-3.5.0.min.js",t.ariaLibraryFile="aria-webjs-sdk-1.6.2.min.js",t}();n.FilePaths=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function t(){}return t.Load=function(t){return new Promise(function(i,r){if(n.Utilities.isNullOrUndefinedOrEmptyArray(t))r(new Error("No resources to load"));else{var u=t[t.length-1],f=u.callback,e=function(){f&&f();i()};u.callback=e;n.ResourceLoader.Load(t)}})},t}();n.PromiseBasedResourceLoader=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function t(){}return t.isNullOrEmptyString=function(n){return t.isNullOrUndefined(n)||n===""},t.isNullOrUndefinedOrEmptyArray=function(n){return t.isNullOrUndefined(n)||n.length===0},t.isNullOrUndefined=function(n){return n===null||n===undefined},t.isPrimitiveString=function(n){return typeof n=="string"},t.convertStringToBoolean=function(n){return!t.isNullOrUndefined(n)&&n.toLowerCase()==="true"},t.newGuid=function(){for(var r,t,n="",i=0,u="xx-x-4m-ym-xxx";i=0||(r+="?");for(u in i)i.hasOwnProperty(u)&&(f=u+"="+i[u],r[r.length-1]!=="?"&&(f="&"+f),r+=f)}return r},t.getQueryParameters=function(n){var r={},i;return t.isNullOrEmptyString(n)||(n[0]==="?"&&(n=n.substring(1)),i=n.split("&"),i.length>0&&i.forEach(function(n){var t=n.split("=");t.length===2&&(r[t[0]]=t[1])})),r},t.getOriginUrl=function(n){var r=!n.startsWith("https://"),t=null;if(r)t=window.location.origin;else{var i=n.split("/"),u=i[0],f=i[2];t=u+"//"+f}return t},t.sanitizeUrlWithBackSlash=function(n){return n.endsWith("/")?n:n+"/"},t.getResponseHeader=function(t,i){var r;return n.Utilities.isNullOrUndefined(t)||(r=t.getResponseHeader(i)),r},t.timer=function(){var n=(new Date).getTime();return{get milliSecondsElapsed(){return(new Date).getTime()-n}}},t.concatArrays=function(t,i){n.Utilities.isNullOrUndefined(t)||n.Utilities.isNullOrUndefined(i)||i.forEach(function(n){t.push(n)})},t.getRegistrationTokenValue=function(t){var i=t.match(/registrationToken=(.+); expires=(\d+)/);return i&&i.length>=2?n.HttpHeaders.RegistrationTokenHeaderValue+i[1]:""},t.encodeDecodeHTMLMessage=function(t,i){for(var r=t,o=i?n.Constants.encodeHTMLSpecialCharacters:n.Constants.decodeHTMLSpecialCharacters,u=0,f=o;u=this.resources.length||(n=!0,this.resources[this.counter]&&this.resources[this.counter].preload&&(n=this.resources[this.counter].preload()),n?(r=function(){i.executeCurrentCallback(n);i.counter++;i.loadResources()},t.LoadResource(this.resources[this.counter],r)):(this.executeCurrentCallback(n),this.counter++,this.loadResources())))},t.prototype.executeCurrentCallback=function(n){if(this.resources[this.counter].callback)try{this.resources[this.counter].callback(n)}catch(t){console.log("Error executing the callback function: "+JSON.stringify(this.resources[this.counter]))}},t}();n.ResourceLoader=t})(t=n.Common||(n.Common={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})); /* Common.min.js:end */ /* IC3Client.min.js:start */ var __extends=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=i===null?Object.create(i):(r.prototype=i.prototype,new r)}}(),__assign=this&&this.__assign||function(){return __assign=Object.assign||function(n){for(var t,r,i=1,u=arguments.length;i=t.Constants.liveStateRetryCount&&(r.logger.log(n.Model.LogLevel.ERROR,n.Common.IC3TelemetryEvent.SendLiveStateFailure,{EndpointId:r.ic3Info.endpointId,EndpointUrl:r.ic3Info.RegionGtms.chatService,ExceptionDetails:{Message:n.Common.Utilities.stringifyHelper(i)}}),r.stopHeartBeat(),r.liveStateFailureCount=0)})},i.prototype.sendHeartBeat=function(n){this.heartBeatTimer||(this.sendLiveState(n),this.heartBeatTimer=window.setInterval(this.sendLiveState.bind(this,n),t.Constants.heartBeatDuration))},i.prototype.stopHeartBeat=function(){clearInterval(this.heartBeatTimer)},i.prototype.sendMessage=function(i,r){var u=this,f=t.Util.createMessageData(r),e={clientmessageid:r.clientmessageid,id:r.messageid,messageLength:r.content?r.content.length:0};return this.sendMessageToIC3(i.id,f).then(function(){try{u.logger.log(n.Model.LogLevel.INFO,n.Common.IC3TelemetryEvent.GetMessages,{Description:JSON.stringify(e),EndpointId:u.ic3Info.endpointId,EndpointUrl:u.ic3Info.RegionGtms.chatService})}catch(t){u.logger.log(n.Model.LogLevel.ERROR,n.Common.IC3TelemetryEvent.GetMessages,{Description:n.Common.Constants.unableToStringifyMessage,EndpointId:u.ic3Info.endpointId,ExceptionDetails:{Message:n.Common.Utilities.stringifyHelper(t)}})}return Promise.resolve()})},i.prototype.getMessages=function(i){var r=this,f=t.RequestHelper.getDefaultGetMessagesQueryParameters(),o=n.Common.Utilities.addQueryParametersToPath(t.ServiceEndpointHelper.getMessagesUrl(i.id,this.ic3Info.RegionGtms),f),u=t.RequestHelper.getDefaultIC3Headers(),e;return u[n.Common.HttpHeaders.RegistrationTokenHeader]=this.ic3Info.RegistrationToken,u[n.Common.HttpHeaders.ContentTypeHeader]=t.Constants.ContentTypeJson,e={enableExponentialBackoff:!0,headers:u,redirect404RetryCount:t.Constants.retryCount,retryCount:t.Constants.retryCount,shouldRedirectOn404:!1,shouldResetOnFailure:!1,shouldRetryOnFailure:t.Util.shouldRetryOnFailure,timeBetweenRetry:t.Constants.timeBetweenOperationRetry,type:n.Common.HTTPRequestType.GET,url:o},n.Common.HttpClient.MakeRequest(e).then(function(i){for(var u,h,o=[],e=0,s=i.messages;e0&&this.ic3ErrorListeners.forEach(function(u){var f=r.milliSecondsElapsed;i.logger.log(n.Model.LogLevel.INFO,n.Common.IC3TelemetryEvent.ReportIC3ErrorToClient,{ElapsedTimeInMilliseconds:f,EndpointId:i.ic3Info.endpointId,EndpointUrl:i.ic3Info.RegionGtms.chatService});u(n.Common.Utilities.stringifyHelper(t));return})}catch(f){u=r.milliSecondsElapsed;this.logger.log(n.Model.LogLevel.ERROR,n.Common.IC3TelemetryEvent.ReportIC3ErrorToClientFailed,{ElapsedTimeInMilliseconds:u,EndpointId:this.ic3Info.endpointId,EndpointUrl:this.ic3Info.RegionGtms.chatService,ExceptionDetails:{Message:n.Common.Utilities.stringifyHelper(f)}});return}},i.prototype.updateConversationMembers=function(t){var i=this,r=t.id,u=n.Common.Utilities.timer();return this.getThreadRequest(r).then(function(n){return i.internalConversationsData[r]={id:r,members:n.members},t}).catch(function(f){var e=u.milliSecondsElapsed;return i.logger.log(n.Model.LogLevel.ERROR,n.Common.IC3TelemetryEvent.JoinConversationV1GetThreadRequestFailed,{Description:"Unable to retrieve thread. "+f,ElapsedTimeInMilliseconds:e,EndpointId:i.ic3Info.endpointId,EndpointUrl:i.ic3Info.RegionGtms.chatService}),i.internalConversationsData[r]={id:r,members:[]},t})},i.prototype.getThreadRequest=function(i){var u=t.ServiceEndpointHelper.getThreadUrl(i,this.ic3Info.RegionGtms),r,f;return this.logger.log(n.Model.LogLevel.INFO,n.Common.IC3TelemetryEvent.JoinConversationV1GetThreadRequestStarted,{Description:"Getting thread for "+u,EndpointId:this.ic3Info.endpointId,EndpointUrl:this.ic3Info.RegionGtms.chatService}),r=t.RequestHelper.getDefaultBaseIC3Headers(),r[n.Common.HttpHeaders.RegistrationTokenHeader]=this.ic3Info.RegistrationToken,f={enableExponentialBackoff:!0,headers:r,redirect404RetryCount:t.Constants.retryCount,retryCount:t.Constants.retryCount,shouldRedirectOn404:!0,shouldRetryOnFailure:t.Util.shouldRetryOnFailure,timeBetweenRetry:t.Constants.timeBetweenOperationRetry,type:n.Common.HTTPRequestType.GET,url:u},n.Common.HttpClient.MakeRequest(f)},i.prototype.updateIc3Info=function(t){this.ic3Info=t;this.logger.log(n.Model.LogLevel.INFO,n.Common.IC3TelemetryEvent.IC3InfoUpdatedInV1Adapter,{Description:"IC3Info Updated In V1Adapter",EndpointId:this.ic3Info.endpointId,EndpointUrl:this.ic3Info.RegionGtms.chatService})},i.prototype.getAllMessagesFromBackwardLinkUrl=function(i,r,u){var f=this;return n.Common.Utilities.isNullOrEmptyString(i)?Promise.resolve(u):this.getMessagesFromBackwardLinkUrl(i,r).then(function(n){for(var o,i=0,e=n.messages;i0&&(n.ic3Info.subscriptionId=t.subscriptions[0].id),t})},i.prototype.onSubscriptionCreationFailure=function(n){this.onRequestCreationFailure(n,t.Constants.subscriptionRequestLog)},i.prototype.onSubscriptionCreationSuccess=function(i){var r=n.Common.Utilities.getResponseHeader(i,n.Common.HttpHeaders.LocationHeader)||"",u;i.status!==n.Common.HttpCode.Created||n.Common.Utilities.isNullOrUndefined(r)||t.Util.parseChatServiceHostUrl(r)===this.ic3Info.RegionGtms.chatService||(this.ic3Info.RegionGtms.chatService=t.Util.parseChatServiceHostUrl(r),this.logger.log(n.Model.LogLevel.WARN,n.Common.IC3TelemetryEvent.OnRequestCreationSuccessRedirect,{Description:"Endpoint changed",EndpointUrl:this.ic3Info.RegionGtms.chatService,EndpointId:this.ic3Info.endpointId}));u=r.match(/\/(\d+)$/);u&&(this.ic3Info.subscriptionId=u[1])},i.prototype.createSubscriptionRequest=function(){var f=t.ServiceEndpointHelper.getV1SubscriptionUrl(this.ic3Info.RegionGtms),i=t.RequestHelper.getDefaultIC3Headers(),r,u;return i[n.Common.HttpHeaders.RegistrationTokenHeader]=this.ic3Info.RegistrationToken,i[n.Common.HttpHeaders.ContentTypeHeader]=t.Constants.ContentTypeJson,r={channelType:t.Constants.HttpLongPoll,interestedResources:[t.IC3PollingV1InterestedResources.ConversationMessages,t.IC3PollingV1InterestedResources.ConversationProperties,t.IC3PollingV1InterestedResources.Threads,t.IC3PollingV1InterestedResources.Contacts]},u={callbackOnFailure:this.onSubscriptionCreationFailure.bind(this),callbackOnSuccess:this.onSubscriptionCreationSuccess.bind(this),contentType:t.Constants.ContentTypeJson,data:JSON.stringify(r),enableExponentialBackoff:!0,headers:i,redirect404RetryCount:t.Constants.retryCount,retryCount:t.Constants.retryCount,shouldRedirectOn404:!0,shouldResetOnFailure:!0,shouldRetryOnFailure:t.Util.shouldRetryOnFailure,timeBetweenRetry:t.Constants.timeBetweenOperationRetry,type:n.Common.HTTPRequestType.POST,url:f},n.Common.HttpClient.MakeRequest(u)},i.prototype.createSubscription=function(){return this.createSubscriptionRequest()},i.prototype.onSetEndpointPropertyCreationFailure=function(n){this.onRequestCreationFailure(n,t.Constants.setPropertiesRequestLog)},i.prototype.setEndpointProperty=function(){var i,u;if(this.ic3Info.visitor)return Promise.resolve();var f=t.ServiceEndpointHelper.getV1SetPropertiesUrl(this.ic3Info.RegionGtms),r={},e=n.Common.HttpHeaders.SetEndpointProperty;return r[e]=!0,i=t.RequestHelper.getDefaultIC3Headers(),i[n.Common.HttpHeaders.AuthenticationHeader]=n.Common.HttpHeaders.SkypeTokenHeaderValue+this.ic3Info.SkypeToken,i[n.Common.HttpHeaders.RegistrationTokenHeader]=this.ic3Info.RegistrationToken,i[n.Common.HttpHeaders.ContentTypeHeader]=t.Constants.ContentTypeJson,u={callbackOnFailure:this.onSetEndpointPropertyCreationFailure.bind(this),contentType:t.Constants.ContentTypeJson,data:JSON.stringify(r),enableExponentialBackoff:!0,headers:i,redirect404RetryCount:t.Constants.retryCount,retryCount:t.Constants.retryCount,shouldRedirectOn404:!0,shouldResetOnFailure:!0,shouldRetryOnFailure:t.Util.shouldRetryOnFailure,timeBetweenRetry:t.Constants.timeBetweenOperationRetry,type:n.Common.HTTPRequestType.PUT,url:f},n.Common.HttpClient.MakeRequest(u)},i.prototype.onUnsubscribeCreationFailure=function(n){this.onRequestCreationFailure(n,t.Constants.unsubscribeRequestLog)},i.prototype.unsubscribeFromEndpoint=function(){var r,i,u;return this.ic3Info.visitor||n.Common.Utilities.isNullOrUndefined(this.ic3Info.endpointId)||this.skipUnsubscribe?(this.skipUnsubscribe=!0,Promise.resolve()):(r=t.ServiceEndpointHelper.getV1DeleteEndpointUrl(this.ic3Info.RegionGtms,this.ic3Info.endpointId),i=t.RequestHelper.getDefaultIC3Headers(),i[n.Common.HttpHeaders.AuthenticationHeader]=n.Common.HttpHeaders.SkypeTokenHeaderValue+this.ic3Info.SkypeToken,i[n.Common.HttpHeaders.RegistrationTokenHeader]=this.ic3Info.RegistrationToken,i[n.Common.HttpHeaders.ContentTypeHeader]=t.Constants.ContentTypeJson,u={callbackOnFailure:this.onUnsubscribeCreationFailure.bind(this),contentType:t.Constants.ContentTypeJson,enableExponentialBackoff:!0,headers:i,redirect404RetryCount:t.Constants.retryCount,retryCount:t.Constants.retryCount,shouldRedirectOn404:!0,shouldResetOnFailure:!0,shouldRetryOnFailure:t.Util.shouldRetryOnFailure,timeBetweenRetry:t.Constants.timeBetweenOperationRetry,type:n.Common.HTTPRequestType.DELETE,url:r},n.Common.HttpClient.MakeRequest(u))},i.prototype.onRequestCreationFailure=function(i,r){var u=n.Common.Utilities.getResponseHeader(i,n.Common.HttpHeaders.LocationHeader);if(this.telemetryMessage=r+" failed. Error Code: "+i.status+".",this.errorCode=i.status.toString(),this.skipUnsubscribe=!0,i.status!==n.Common.HttpCode.Redirect||n.Common.Utilities.isNullOrEmptyString(u))this.logger.log(n.Model.LogLevel.WARN,n.Common.IC3TelemetryEvent.ResetOnRequestCreationFailure,{Description:this.telemetryMessage+" Trying to reset."+("CurrentRetryCount: "+this.currentOtherRetryCount+". TimeBetweenReset: "+this.timeBetweenReset),EndpointId:this.ic3Info.endpointId,EndpointUrl:this.ic3Info.RegionGtms.chatService,ErrorCode:i.status.toString()}),this.current404RetryCount=0,this.timeBetweenReset=t.Constants.timeBetweenEndpointReset*Math.exp(this.currentOtherRetryCount),this.currentOtherRetryCount++;else{this.logger.log(n.Model.LogLevel.WARN,n.Common.IC3TelemetryEvent.RedirectOnRequestCreationFailure,{Description:this.telemetryMessage+" Trying to redirect.",EndpointId:this.ic3Info.endpointId,EndpointUrl:this.ic3Info.RegionGtms.chatService,ErrorCode:i.status.toString()});this.onRequestCreationFailureRedirect(i)}},i.prototype.redirectErrorHandler=function(i){var r=this;return i.message===n.Common.Constants.Reset_Flag&&this.current404RetryCount<=t.Constants.retry404Count&&this.currentOtherRetryCount<=t.Constants.retryOtherCount?this.reset().then(function(){return n.Common.Utilities.delay(r.timeBetweenReset).then(function(){return r.initializeIC3()}).then(function(n){if(r.onIC3Error)r.onIC3Error(i);return n})}):(this.logger.log(n.Model.LogLevel.ERROR,n.Common.IC3TelemetryEvent.MaxRetryCountReachedForRedirect,{Description:"Fatal Error. Initialization failed. Maximum retry count reached. Exiting. "+this.telemetryMessage,EndpointId:this.ic3Info.endpointId,EndpointUrl:this.ic3Info.RegionGtms.chatService,ErrorCode:this.errorCode,ExceptionDetails:{Message:n.Common.Utilities.stringifyHelper(i)}}),this.reset().then(function(){return Promise.reject(i.message)}))},i.prototype.onRequestCreationFailureRedirect=function(i){this.current404RetryCount++;this.currentOtherRetryCount=0;this.ic3Info.RegionGtms.chatService=t.Util.parseChatServiceHostUrl(n.Common.Utilities.getResponseHeader(i,n.Common.HttpHeaders.LocationHeader));this.updateIc3Info(this.ic3Info);this.logger.log(n.Model.LogLevel.WARN,n.Common.IC3TelemetryEvent.OnRequestCreationFailureRedirect,{Description:"Endpoint changed.",EndpointUrl:this.ic3Info.RegionGtms.chatService,EndpointId:this.ic3Info.endpointId})},i}();t.IC3Initializer=i})(i=t.IC3Client||(t.IC3Client={}))})(t=n.Clients||(n.Clients={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function t(n,t,i,r,u){this.isPolling=!1;this._ic3Info=n;this._onNewData=t;this._onError=i;this.callbackOnFailure=r;this.resetRetryCount=u}return t.prototype.start=function(){return this.isPolling||(this.isPolling=!0,this.startPolling()),Promise.resolve()},t.prototype.stop=function(){return this.isPolling=!1,Promise.resolve()},Object.defineProperty(t.prototype,"onNewData",{get:function(){return this._onNewData},set:function(n){this._onNewData=n},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"onError",{get:function(){return this._onError},set:function(n){this._onError=n},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"setCallbackOnFailure",{set:function(n){this.setCallbackOnFailure=n},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ic3Info",{get:function(){return this._ic3Info},set:function(n){this._ic3Info=n},enumerable:!0,configurable:!0}),t.prototype.startPolling=function(){var n=this;this.isPolling&&this.poll().then(function(t){n.resetRetryCount();n.isPolling&&n._onNewData&&n._onNewData(t)}).catch(function(t){n._onError&&n._onError(t)}).then(function(){n.startPolling()})},t.prototype.poll=function(){var t=n.ServiceEndpointHelper.getV1PollUrl(this._ic3Info.RegionGtms,this._ic3Info.subscriptionId);return n.V1PollingHelper.poll(t,this._ic3Info.RegistrationToken,this.callbackOnEachRequestCompleted.bind(this))},t.prototype.callbackOnEachRequestCompleted=function(t){this.callbackOnFailure(t,n.Constants.pollRequestLog)},t}();n.Poller=t})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Clients||(n.Clients={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i;(function(t){var i=function(){function i(){}return i.getDefaultIC3Headers=function(){return{Accept:t.Constants.ContentTypeJson,BehaviorOverride:t.Constants.RedirectAs404,ClientInfo:t.Constants.ClientInfoValue,ContextId:"tcid="+n.Common.Utilities.newGuid(),Expires:0,Pragma:t.Constants.NoCache,"x-ms-client-type":t.Constants.Web,"x-ms-user-type":t.Constants.User}},i.getDefaultBaseIC3Headers=function(){return{Accept:t.Constants.ContentTypeJson,BehaviorOverride:t.Constants.RedirectAs404,"content-type":t.Constants.ContentTypeJson}},i.getDefaultGetMessagesQueryParameters=function(){return{pageSize:20,startTime:0,view:"msnp24Equivalent|supportsMessageProperties"}},i.getDefaultAMSHeaders=function(n){return{Authorization:t.Constants.AMSAuthorizationSkypeTokenValue+n,"X-MS-Client-Version":t.Constants.ClientInfoValue}},i.getDefaultAMSViewHeaders=function(n){return{Accept:t.Constants.AMSAcceptHeaderValue,"Accept-Encoding":t.Constants.AMSAcceptEncodingHeaderValue,Authorization:t.Constants.AMSAuthorizationSkypeTokenValue+n,"X-MS-Client-Version":t.Constants.ClientInfoValue}},i}();t.RequestHelper=i})(i=t.IC3Client||(t.IC3Client={}))})(t=n.Clients||(n.Clients={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i;(function(t){var i=function(){function i(){}return i.getV2EndpointUrl=function(n,t){return t.chatService+"/v2/users/ME/endpoints/"+n},i.getThreadUrl=function(n,t){return t.chatService+"/v1/threads/"+n+"?view=msnp24Equivalent"},i.getMessagesUrl=function(n,t){return t.chatService+"/v1/users/ME/conversations/"+n+"/messages"},i.getBotMessagesUrl=function(n,t){return t.chatService+"/v1/agents/"+n+"/invoke"},i.getAmsObjectsUrl=function(t){return n.Common.Utilities.sanitizeUrlWithBackSlash(t.ams)+"v1/objects"},i.getAmsObjectContentUrl=function(i,r,u){u===void 0&&(u=!1);var f=u?t.Constants.ImageContent:t.Constants.FileContent;return n.Common.Utilities.sanitizeUrlWithBackSlash(r.ams)+"v1/objects/"+i+"/content/"+f},i.getAmsObjectViewUrl=function(i,r,u){u===void 0&&(u=!1);var f=u?t.Constants.ImageView:t.Constants.FileView;return n.Common.Utilities.sanitizeUrlWithBackSlash(r.ams)+"v1/objects/"+i+"/views/"+f},i.getAmsStatusUrl=function(i,r,u){u===void 0&&(u=!1);var f=u?t.Constants.ImageView:t.Constants.FileView;return n.Common.Utilities.sanitizeUrlWithBackSlash(r.ams)+"v1/objects/"+i+"/views/"+f+"/status"},i.getV1EndpointUrl=function(n){return n.chatService+"/v1/users/ME/endpoints"},i.getV1DeleteEndpointUrl=function(n,t){return n.chatService+"/v1/users/ME/endpoints/"+t},i.getV1SubscriptionUrl=function(n){return n.chatService+"/v1/users/ME/endpoints/SELF/subscriptions"},i.getV1PollUrl=function(n,t){return n.chatService+"/v1/users/ME/endpoints/SELF/subscriptions/"+t+"/poll"},i.getV1SetPropertiesUrl=function(t){return t.chatService+"/v1/users/ME/endpoints/SELF/properties?name="+n.Common.HttpHeaders.SetEndpointProperty},i}();t.ServiceEndpointHelper=i})(i=t.IC3Client||(t.IC3Client={}))})(t=n.Clients||(n.Clients={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i;(function(t){var i=function(){function i(){}return i.createMessageData=function(r){var f=r.contentType===n.Model.MessageContentType.Text?t.MessagePayloadType.Text:t.MessagePayloadType.RichTextHtml,e=n.Common.Utilities.encodeDecodeHTMLMessage(r.content,!0),u=i.createBaseMessageData(f,r.contentType.toString(),e);return r.clientmessageid&&(u.clientmessageid=r.clientmessageid),u.properties=this.getMessageProperties(r),n.Common.Utilities.isNullOrUndefined(r.sender.displayName)||(u.imdisplayname=r.sender.displayName),u},i.createBaseMessageData=function(n,t,i){return{"Has-Mentions":"false",clientmessageid:Date.now().toString(),content:i,contenttype:t,messagetype:n}},i.getMessageProperties=function(n){var t={},i;return t.deliveryMode=n.deliveryMode.toString(),n.properties&&n.properties.userSubmitData&&(t.userSubmitData=n.properties.userSubmitData),n.tags&&(i=[],n.tags.forEach(function(n){i.push(n)}),t.tags=i.join()),t},i.createTypingStatusThreadMessageData=function(r,u){var e="",f;switch(r){case n.Model.TypingStatus.Typing:e=t.MessagePayloadType.ControlTyping;break;case n.Model.TypingStatus.ClearTyping:e=t.MessagePayloadType.ControlClearTyping}return f=i.createBaseMessageData(e,n.Model.MessageContentType.Text,""),n.Common.Utilities.isNullOrUndefined(u)||(f=__assign(__assign({},u),f)),f},i.createBotMessageData=function(n,t){var i={conversation:{id:n},value:t};return JSON.stringify(i)},i.createFileMessage=function(r,u,f){var o=t.MessagePayloadType.Text,s=n.Model.MessageContentType.Text.toString().toLowerCase(),e=i.createBaseMessageData(o,s.toString(),"");return f.clientmessageid&&(e.clientmessageid=f.clientmessageid),e.amsreferences=JSON.stringify([r.id]),e.properties=JSON.stringify(this.createFileMessageProperties(r,u,f)),n.Common.Utilities.isNullOrUndefined(f.sender.displayName)||(e.imdisplayname=f.sender.displayName),e},i.createFileMessageProperties=function(n,t,i){var r={},u;return r.deliveryMode=i.deliveryMode.toString(),r.files=JSON.stringify([this.createFileProperty(n,t)]),r.importance="",r.subject=null,i.tags&&(u=[],i.tags.forEach(function(n){u.push(n)}),r.tags=u.join()),r},i.createFileProperty=function(n,r){var u=i.isDocumentTypeImage(n.type)?!0:!1;return{"@type":"http://schema.skype.com/File",type:n.type,itemid:"",baseUrl:"",providerData:"",version:2,id:n.id,title:n.name,state:"active",objectUrl:t.ServiceEndpointHelper.getAmsObjectViewUrl(n.id,r.RegionGtms,u),fileName:n.name,fileType:i.getNameAndExtension(n.name).extension,botFileProperties:{url:t.ServiceEndpointHelper.getAmsObjectViewUrl(n.id,r.RegionGtms,u)},fileInfo:{fileUrl:t.ServiceEndpointHelper.getAmsObjectContentUrl(n.id,r.RegionGtms,u),siteUrl:"",serverRelativeUrl:""},filePreview:{previewUrl:""}}},i.getNameAndExtension=function(n){var t=(n||"").split("."),i="",r="";return t.length>1?(r=t.pop().toLowerCase(),i=t.join(".")):(r="",i=t[0]),{name:i,extension:r}},i.createIRawMessage=function(t,r,u){var o={clientmessageid:t.clientmessageid,content:t.content,contentType:i.getMessageContentType(t),deliveryMode:!n.Common.Utilities.isNullOrUndefined(t.properties)&&t.properties.deliveryMode===n.Model.DeliveryMode.Bridged?n.Model.DeliveryMode.Bridged:n.Model.DeliveryMode.Unbridged,messageType:i.getMessageType(t),messageid:t.id,properties:t.properties,sender:{displayName:t.imdisplayname,id:t.from,type:i.getPersonType(t.from)},timestamp:new Date(Date.parse(t.originalarrivaltime))},s,f,e,h,c;return u&&(o.resourceType=u),n.Common.Utilities.isNullOrUndefined(t.properties)||n.Common.Utilities.isNullOrEmptyString(t.properties.tags)||(s=[],s=t.properties.tags.split(","),o.tags=s),n.Common.Utilities.isNullOrUndefined(t.properties)||n.Common.Utilities.isNullOrEmptyString(t.properties.files)||(f=[],f=JSON.parse(t.properties.files),f.length>0&&(e=f[0].id,n.Common.Utilities.isNullOrUndefined(e)&&t.amsreferences&&(e=t.amsreferences[0]),h=i.getFileUrl(f[0],e,r),c={fileSharingProtocolType:n.Model.FileSharingProtocolType.AmsBasedFileSharing,id:e,name:f[0].fileName,size:f[0].version,type:f[0].fileType,url:h},o.fileMetadata=c)),o},i.createIRawThread=function(n){return{id:n.id,members:n.members,messages:n.messages,properties:n.properties,rosterVersion:n.rosterVersion,type:n.type,version:n.version}},i.getConversationIdFromUrl=function(n){var t=n&&n.match(/\/(\d+:[^\/]*)[\/]?/);return t&&t[1]?t[1]:undefined},i.getDomainRegexp=function(){return new RegExp(/^(https?:.+?\.microsoft\.com)/i)},i.parseDomain=function(n){var t=n.match(i.getDomainRegexp());return t?t[1]:null},i.parseChatServiceHostUrl=function(n){return i.parseDomain(n)},i.isDocumentTypeImage=function(n){return n.indexOf(t.Constants.Image)!==-1},i.shouldRetryOnFailure=function(t){return t!==n.Common.HttpCode.Accepted&&t!==n.Common.HttpCode.Created},i.shouldRetryOnFailureForPoll=function(){return!1},i.isSystemMessage=function(t){var r=!1;return n.Common.Utilities.isNullOrEmptyString(t.messagetype)||(r=i.getSystemMessageTypes().reduce(function(n,i){return n||t.messagetype.toLowerCase().indexOf(i.toLowerCase())===0},r)),r},i.getPersonType=function(t){var i=n.Model.PersonType.Unknown,r=t.split("/").pop();return r.indexOf("28:")===0?i=n.Model.PersonType.Bot:r.indexOf("19:")===0&&(i=n.Model.PersonType.User),i},i.isImageType=function(n){switch(n.toLowerCase()){case"jpeg":case"jpg":case"gif":case"png":case"bmp":case"tiff":case"jfif":return!0;default:return!1}},i.getMessageType=function(t){var i;switch(t.messagetype){case n.Model.MessageType.Typing:i=n.Model.MessageType.Typing;break;case n.Model.MessageType.ClearTyping:i=n.Model.MessageType.ClearTyping;break;default:i=n.Model.MessageType.UserMessage}return i},i.getMessageContentType=function(i){var r=i.contenttype?i.contenttype:i.messagetype;return r===t.MessagePayloadType.Text.toLowerCase()?n.Model.MessageContentType.Text:r.indexOf(t.Constants.TextPlainMimeType)>=0?n.Model.MessageContentType.Text:n.Model.MessageContentType.RichText},i.getSystemMessageTypes=function(){return["ThreadActivity"]},i.getFileUrl=function(n,r,u){var f=n.fileInfo,e,o;return f&&f.fileUrl?e=f.fileUrl:r&&(o=i.isImageType(n.fileType),e=t.ServiceEndpointHelper.getAmsObjectContentUrl(r,u.RegionGtms,o)),e},i}();t.Util=i})(i=t.IC3Client||(t.IC3Client={}))})(t=n.Clients||(n.Clients={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i;(function(t){var i=function(){function i(){}return i.poll=function(i,r,u){var f=t.RequestHelper.getDefaultIC3Headers(),e,o;return f[n.Common.HttpHeaders.RegistrationTokenHeader]=r,f[n.Common.HttpHeaders.ContentTypeHeader]=t.Constants.ContentTypeJson,e=JSON.stringify({}),o={callbackOnFailure:u,contentType:t.Constants.ContentTypeJson,data:e,enableExponentialBackoff:!0,headers:f,redirect404RetryCount:t.Constants.retryCount,retryCount:t.Constants.retryCount,shouldRedirectOn404:!0,shouldResetOnFailure:!0,shouldRetryOnFailure:t.Util.shouldRetryOnFailureForPoll,timeBetweenRetry:t.Constants.timeBetweenOperationRetry,type:n.Common.HTTPRequestType.POST,url:i},n.Common.HttpClient.MakeRequest(o)},i}();t.V1PollingHelper=i})(i=t.IC3Client||(t.IC3Client={}))})(t=n.Clients||(n.Clients={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i;(function(t){var i=function(){function i(){}return i.createEndpointRequest=function(i,r){var o=t.ServiceEndpointHelper.getV2EndpointUrl(i,r.RegionGtms),u=t.RequestHelper.getDefaultIC3Headers(),f,e;return u[n.Common.HttpHeaders.AuthenticationHeader]=n.Common.HttpHeaders.SkypeTokenHeaderValue+r.SkypeToken,u[n.Common.HttpHeaders.ContentTypeHeader]=t.Constants.ContentTypeJson,f={endpointFeatures:t.IC3PollingV2EndpointFeatures.Agent+","+t.IC3PollingV2EndpointFeatures.MessageProperties,startingTimeSpan:0,subscriptions:[{channelType:t.Constants.HttpLongPoll,interestedResources:[t.IC3PollingV2InterestedResources.ConversationMessages,t.IC3PollingV2InterestedResources.ConversationProperties,t.IC3PollingV2InterestedResources.Threads]}]},e={contentType:t.Constants.ContentTypeJson,data:JSON.stringify(f),enableExponentialBackoff:!0,headers:u,redirect404RetryCount:t.Constants.retryCount,retryCount:t.Constants.retryCount,shouldRedirectOn404:!0,shouldRetryOnFailure:t.Util.shouldRetryOnFailure,type:n.Common.HTTPRequestType.PUT,url:o},n.Common.HttpClient.MakeRequest(e)},i.poll=function(i,r){var u=t.RequestHelper.getDefaultBaseIC3Headers(),f;return u[n.Common.HttpHeaders.AuthenticationHeader]=n.Common.HttpHeaders.SkypeTokenHeaderValue+r.SkypeToken,f={enableExponentialBackoff:!0,headers:u,redirect404RetryCount:t.Constants.retryCount,retryCount:t.Constants.retryCount,shouldRedirectOn404:!0,shouldResetOnFailure:!0,shouldRetryOnFailure:t.Util.shouldRetryOnFailure,type:n.Common.HTTPRequestType.GET,url:i},n.Common.HttpClient.MakeRequest(f)},i}();t.V2PollingHelper=i})(i=t.IC3Client||(t.IC3Client={}))})(t=n.Clients||(n.Clients={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})); /* IC3Client.min.js:end */ /* MockIC3Client.min.js:start */ var Microsoft;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t=function(){function n(){}return Object.defineProperty(n,"MockSenderDisplayName",{get:function(){return"MockSender"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockSenderId",{get:function(){return"mocksender"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockBotDisplayName",{get:function(){return"MockBot"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockBotId",{get:function(){return"mockbot"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockMessageEmptyContent",{get:function(){return""},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockMessageNonEmptyContent",{get:function(){return"abcdefghijklmnopqrstuvwxyz"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockMessageFrequency",{get:function(){return 6e3},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockTimeDeltaToSendTypingMessage",{get:function(){return 0},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockTimeDeltaToSendActualMessage",{get:function(){return 2e3},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockTimeDeltaToSendClearTypingMessage",{get:function(){return 2e3},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockFileName",{get:function(){return"mockFile.txt"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockFileMimeType",{get:function(){return"text/plain"},enumerable:!0,configurable:!0}),Object.defineProperty(n,"MockFileMessageFrequency",{get:function(){return 1e4},enumerable:!0,configurable:!0}),n}();n.Constants=t})(t=n.MockIC3Client||(n.MockIC3Client={}))})(t=n.Clients||(n.Clients={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))})(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i;(function(t){var i=function(){function t(){}return t.generateFileInfo=function(i,r,u){if(n.Common.Utilities.isNullOrUndefined(u))switch(r){case"text/plain":default:u=t.generateTextArrayBuffer("Hey, this is a test file!")}return{data:u,name:i,size:u.byteLength,type:r}},t.generateTextArrayBuffer=function(n){for(var i=new ArrayBuffer(n.length*2),r=new Uint16Array(i),t=0,u=n.length;t0){var r=this.conversations[Math.floor(Math.random()*Math.floor(this.conversations.length))],u={content:t.Constants.MockMessageEmptyContent,contentType:n.Model.MessageContentType.Text,deliveryMode:n.Model.DeliveryMode.Unbridged,messageType:n.Model.MessageType.Typing,properties:null,sender:{displayName:t.Constants.MockSenderDisplayName,id:t.Constants.MockSenderId,type:n.Model.PersonType.User},timestamp:new Date},f={content:t.Constants.MockMessageNonEmptyContent,contentType:n.Model.MessageContentType.Text,deliveryMode:n.Model.DeliveryMode.Unbridged,messageType:n.Model.MessageType.UserMessage,properties:null,sender:{displayName:t.Constants.MockSenderDisplayName,id:t.Constants.MockSenderId,type:n.Model.PersonType.User},timestamp:new Date},e={content:t.Constants.MockMessageEmptyContent,contentType:n.Model.MessageContentType.Text,deliveryMode:n.Model.DeliveryMode.Unbridged,messageType:n.Model.MessageType.ClearTyping,properties:null,sender:{displayName:t.Constants.MockSenderDisplayName,id:t.Constants.MockSenderId,type:n.Model.PersonType.User},timestamp:new Date};setTimeout(function(){i.onNewMessage(r,u)},t.Constants.MockTimeDeltaToSendTypingMessage);setTimeout(function(){i.onNewMessage(r,f)},t.Constants.MockTimeDeltaToSendActualMessage);setTimeout(function(){i.onNewMessage(r,e)},t.Constants.MockTimeDeltaToSendClearTypingMessage)}},i.prototype.generateFileMessage=function(i,r,u){var e=this,f,o;this.conversations.length>0&&(f=n.Common.Utilities.isNullOrUndefined(i)?this.conversations[Math.floor(Math.random()*Math.floor(this.conversations.length))]:this.conversations.find(function(n){return n.id===i.id}),o=new Promise(function(i){var r;n.Common.Utilities.isNullOrUndefined(u)?(r={fileInfo:t.FileUtilities.generateFileInfo(t.Constants.MockFileName,t.Constants.MockFileMimeType),id:n.Common.Utilities.newGuid()},i(r)):n.Common.PromiseBasedFileReader.readFileAsArrayBuffer(u).then(function(f){r={fileInfo:t.FileUtilities.generateFileInfo(u.name,u.type,f),id:n.Common.Utilities.newGuid()};i(r)})}),o.then(function(i){e.conversationFiles[f.id].push(i);var u;u=n.Common.Utilities.isNullOrUndefined(r)?{content:null,contentType:n.Model.MessageContentType.Text,deliveryMode:n.Model.DeliveryMode.Unbridged,messageType:n.Model.MessageType.UserMessage,properties:null,sender:{displayName:t.Constants.MockSenderDisplayName,id:t.Constants.MockSenderId,type:n.Model.PersonType.User},timestamp:new Date}:r;u.fileMetadata={fileSharingProtocolType:n.Model.FileSharingProtocolType.AmsBasedFileSharing,id:i.id,name:i.fileInfo.name,size:i.fileInfo.size,type:i.fileInfo.type,url:""};e.onNewMessage(f,u)}))},i}();t.MockIC3ClientSdk=i})(i=t.MockIC3Client||(t.MockIC3Client={}))})(t=n.Clients||(n.Clients={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})); /* MockIC3Client.min.js:end */ /* SDK.min.js:start */ var __extends=this&&this.__extends||function(){var n=function(t,i){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var i in t)t.hasOwnProperty(i)&&(n[i]=t[i])},n(t,i)};return function(t,i){function r(){this.constructor=t}n(t,i);t.prototype=i===null?Object.create(i):(r.prototype=i.prototype,new r)}}(),Microsoft;(function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i=function(){function i(i,r,u,f){var e=this,o;f===void 0&&(f=null);this.id=r;this.newConversations={};this.targetWindow=parent;this.sourceWindow=f||window;this.hostType=n.Model.HostType.IFrame;this.protocolType=i;this.protocolAdapter=(new t.ProtocolAdapterFactory).getProtocolAdapter(this.protocolType,n.Model.HostType.IFrame,this.id);this.setupEventListeners();o={logger:new n.Common.RawLogger(this,{logClientSdkTelemetryEvent:this.logEventToParentFrame.bind(this,u)})};this.protocolAdapter.setup(o).then(function(){e.postMessageOnWindow(n.Common.PostMessageEventNames.ADAPTER_LOAD_COMPLETE,n.Common.PostMessageEventType.None,null)}).catch(function(){e.postMessageOnWindow(n.Common.PostMessageEventNames.ADAPTER_LOAD_FAIL,n.Common.PostMessageEventType.None,null)})}return i.initialize=function(t){var e,r,u,f,o;t===void 0&&(t=null);t=t||window;e=t.location.search.substring(1);r=n.Common.Utilities.getQueryParameters(e);n.Common.Utilities.isNullOrEmptyString(r[n.Common.QueryParameters.IS_FRAMED])||r[n.Common.QueryParameters.IS_FRAMED].toLowerCase()!=="true"||(u=parseInt(r[n.Common.QueryParameters.PROTOCOL_TYPE],10),f=r[n.Common.QueryParameters.SDK_ID],n.Common.Utilities.isNullOrUndefined(u)||n.Common.Utilities.isNullOrEmptyString(f)||(o=n.Common.Utilities.convertStringToBoolean(r[n.Common.QueryParameters.SHOULD_SEND_TELEMETRY_EVENTS]),i.instance=new i(u,f,o,t)))},i.prototype.setup=function(n){return this.logger=n.logger,Promise.resolve()},i.prototype.initialize=function(n){return this.protocolAdapter.initialize(n)},i.prototype.update=function(n){return this.protocolAdapter.update(n)},i.prototype.dispose=function(){return delete this.newConversations,this.eventListenerForMessages&&this.sourceWindow.removeEventListener("message",this.eventListenerForMessages),this.protocolAdapter.dispose()},i.prototype.joinConversation=function(n,t){var i=this;return this.protocolAdapter.joinConversation(n,t).then(function(t){return i.newConversations[n]=t,t})},i.prototype.sendMessage=function(n,t){return this.protocolAdapter.sendMessage(n,t)},i.prototype.sendFileMessage=function(n,t,i){return this.protocolAdapter.sendFileMessage(n,t,i)},i.prototype.getMessages=function(n){return this.protocolAdapter.getMessages(n)},i.prototype.registerOnNewMessage=function(n,t){return this.protocolAdapter.registerOnNewMessage(n,t)},i.prototype.registerOnThreadUpdate=function(n,t){return this.protocolAdapter.registerOnThreadUpdate(n,t)},i.prototype.registerOnIC3Error=function(n){return this.protocolAdapter.registerOnIC3Error(n)},i.prototype.disconnectFromConversation=function(n){return delete this.newConversations[n.id],this.protocolAdapter.disconnectFromConversation(n)},i.prototype.sendFileData=function(n,t,i){return this.protocolAdapter.sendFileData(n,t,i)},i.prototype.downloadFileData=function(n,t){return this.protocolAdapter.downloadFileData(n,t)},i.prototype.getFileStatus=function(n,t){return this.protocolAdapter.getFileStatus(n,t)},i.prototype.indicateTypingStatus=function(n,t,i){return this.protocolAdapter.indicateTypingStatus(n,t,i)},i.prototype.sendMessageToBot=function(n,t,i){return this.protocolAdapter.sendMessageToBot(n,t,i)},i.prototype.getMembers=function(n){return this.protocolAdapter.getMembers(n)},i.prototype.logEventToParentFrame=function(t,i,r){if(t){var u={logData:r,logLevel:i},f=u;this.postMessageOnWindow(n.Common.PostMessageEventNames.TELEMETRY_EVENT,n.Common.PostMessageEventType.None,f)}},i.prototype.postMessageOnWindow=function(n,t,i,r,u){var f={data:i,eventName:n,eventStatus:u,eventType:t,id:this.id,requestId:r};this.targetWindow.postMessage(f,"*")},i.prototype.handleEvent=function(t){var u=this,i,r;if(t.data){if(i=t.data,i.id!==this.id)return;if(i.eventType===n.Common.PostMessageEventType.Request)switch(i.eventName){case n.Common.PostMessageEventNames.START_SESSION_REQUEST:r=i.data;this.initialize(r).then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.UPDATE_SESSION_REQUEST:r=i.data;this.update(r).then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.END_SESSION_REQUEST:this.dispose().then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.JOIN_CONVERSATION_REQUEST:r=i.data;this.joinConversation(r.conversationId,r.sendHeartbeat).then(function(t){var r=t;u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,r,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.SEND_MESSAGE_REQUEST:r=i.data;this.sendMessage(this.newConversations[r.conversationId],r.message).then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.SEND_FILE_MESSAGE_REQUEST:r=i.data;this.sendFileMessage(r.conversation,r.fileMetadata,r.message).then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.GET_MESSAGES_REQUEST:r=i.data;this.getMessages(r).then(function(t){var r=t;u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,r,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.REGISTER_ON_NEW_MESSAGE_REQUEST:r=i.data;this.registerOnNewMessage(r,this.onNewMessage.bind(this,r.id)).then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.REGISTER_ON_THREAD_UPDATE_REQUEST:r=i.data;this.registerOnThreadUpdate(r,this.onThreadUpdate.bind(this,r.id)).then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.REGISTER_ON_IC3_ERROR_REQUEST:this.registerOnIC3Error(this.onIC3Error.bind(this)).then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.DISCONNECT_FROM_CONVERSATION_REQUEST:r=i.data;this.disconnectFromConversation(r).then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.SEND_FILE_DATA_REQUEST:r=i.data;this.sendFileData(r.conversation,r.fileInfo,r.fileSharingProtocolType).then(function(t){var r=t;u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,r,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.DOWNLOAD_FILE_DATA_REQUEST:r=i.data;this.downloadFileData(r.conversation,r.fileMetadata).then(function(t){var r=t;u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,r,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.GET_FILE_STATUS_REQUEST:r=i.data;this.getFileStatus(r.conversation,r.fileMetadata).then(function(t){var r=t;u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,r,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.INDICATE_TYPING_STATUS_REQUEST:r=i.data;this.indicateTypingStatus(r.conversation,r.typingStatus,r.messageProperties).then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.SEND_MESSAGE_TO_BOT_REQUEST:r=i.data;this.sendMessageToBot(r.conversation,r.botId,r.botMessage).then(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)});break;case n.Common.PostMessageEventNames.GET_MEMBERS_REQUEST:r=i.data;this.getMembers(r).then(function(t){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,t,i.requestId,n.Common.PostMessageEventStatus.Success)}).catch(function(){u.postMessageOnWindow(i.eventName,n.Common.PostMessageEventType.Response,null,i.requestId,n.Common.PostMessageEventStatus.Failure)})}}},i.prototype.onNewMessage=function(t,i){var r={conversationId:t,message:i};this.postMessageOnWindow(n.Common.PostMessageEventNames.INCOMING_MESSAGE,n.Common.PostMessageEventType.None,r)},i.prototype.onThreadUpdate=function(t,i){var r={conversationId:t,message:i};this.postMessageOnWindow(n.Common.PostMessageEventNames.THREAD_UPDATE,n.Common.PostMessageEventType.None,r)},i.prototype.onIC3Error=function(t){var i={error:t};this.postMessageOnWindow(n.Common.PostMessageEventNames.IC3_ERROR,n.Common.PostMessageEventType.None,i)},i.prototype.setupEventListeners=function(){var n=this.handleEvent.bind(this);this.eventListenerForMessages=n;this.sourceWindow.addEventListener("message",n,!1)},i}();t.IframeCommunicator=i})(t=n.SDK||(n.SDK={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))})(Microsoft||(Microsoft={})),function(n){var t;(function(t){var i;(function(t){var i;(function(t){var i;(function(i){var r=function(){function i(){}return i.prototype.getProtocolAdapter=function(i,r,u){switch(i){case t.Model.ProtocolType.MockIC3SDK:return new n.CRM.Omnichannel.IC3Client.Clients.MockIC3Client.MockIC3ClientSdk(u,r);case t.Model.ProtocolType.IC3V1SDK:return new n.CRM.Omnichannel.IC3Client.Clients.IC3Client.IC3ClientV1Adapter(u,r);case t.Model.ProtocolType.IC3V2SDK:return new n.CRM.Omnichannel.IC3Client.Clients.IC3Client.IC3ClientV2Adapter(u,r);default:throw new Error("Protocol adapter not implemented for "+i);}},i}();i.ProtocolAdapterFactory=r})(i=t.SDK||(t.SDK={}))})(i=t.IC3Client||(t.IC3Client={}))})(i=t.Omnichannel||(t.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i=function(){function t(t){this.id=n.Common.Utilities.newGuid();this.protocolType=t;this.newConversationMessageListeners={};this.threadUpdateListeners={}}return t.prototype.joinConversation=function(n,t){var i=this;return this.onJoinConversation(n,t).then(function(n){return{disconnect:i.disconnectFromConversation.bind(i,n),downloadFile:i.downloadFile.bind(i,n),getFileStatus:i.getFileStatus.bind(i,n),getMembers:i.getMembers.bind(i,n),getMessages:i.getMessages.bind(i,n),id:n.id,indicateTypingStatus:i.indicateTypingStatus.bind(i,n),registerOnIC3Error:i.registerOnIC3Error.bind(i),registerOnNewMessage:i.registerOnNewMessage.bind(i,n),registerOnThreadUpdate:i.registerOnThreadUpdate.bind(i,n),sendFileMessage:i.sendFileMessage.bind(i,n),sendMessage:i.sendMessage.bind(i,n),sendMessageToBot:i.sendMessageToBot.bind(i,n),uploadFile:i.uploadFile.bind(i,n)}})},t.prototype.uploadFile=function(t,i,r){var u=this;return n.Common.PromiseBasedFileReader.readFileAsArrayBuffer(i).then(function(n){var f={data:n,name:i.name,size:i.size,type:i.type};return u.sendFileData(t,f,r)})},t.prototype.registerOnNewMessage=function(t,i){var u=this,r=Promise.resolve();return n.Common.Utilities.isNullOrUndefined(this.newConversationMessageListeners[t.id])&&(this.newConversationMessageListeners[t.id]=new n.Common.TimeOutEventDispatcher,r=this.onRegisterOnNewMessage(t)),r.then(function(){u.newConversationMessageListeners[t.id].addEventListener(i)})},t.prototype.registerOnThreadUpdate=function(t,i){var u=this,r=Promise.resolve();return n.Common.Utilities.isNullOrUndefined(this.threadUpdateListeners[t.id])&&(this.threadUpdateListeners[t.id]=new n.Common.TimeOutEventDispatcher,r=this.onRegisterOnThreadUpdate(t)),r.then(function(){u.threadUpdateListeners[t.id].addEventListener(i)})},t.prototype.registerOnIC3Error=function(t){var r=this,i=Promise.resolve();return n.Common.Utilities.isNullOrUndefined(this.ic3ErrorListeners)&&(this.ic3ErrorListeners=new n.Common.TimeOutEventDispatcher,i=this.onRegisterOnIC3Error()),i.then(function(){r.ic3ErrorListeners.addEventListener(t)})},t.prototype.downloadFile=function(n,t){return this.downloadFileData(n,t).then(function(n){var i=n,t;return i&&i.size?i:(t=new Blob([new Uint8Array(n)]),t&&(t.size!==0||t.type!=="")?t:n)})},t}();t.ClientBridge=i})(t=n.SDK||(n.SDK={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i=function(i){function r(r){var u=i.call(this,r)||this;return u.hostType=n.Model.HostType.Page,u.protocolAdapter=(new t.ProtocolAdapterFactory).getProtocolAdapter(u.protocolType,n.Model.HostType.Page,u.id),u}return __extends(r,i),r.prototype.setup=function(n){return this.logger=n.logger,this.protocolAdapter.setup(n)},r.prototype.initialize=function(n){return this.protocolAdapter.initialize(n)},r.prototype.update=function(n){return this.protocolAdapter.update(n)},r.prototype.dispose=function(){return this.protocolAdapter.dispose()},r.prototype.sendMessage=function(n,t){return this.protocolAdapter.sendMessage(n,t)},r.prototype.sendFileMessage=function(n,t,i){return this.protocolAdapter.sendFileMessage(n,t,i)},r.prototype.getMessages=function(n){return this.protocolAdapter.getMessages(n)},r.prototype.onRegisterOnNewMessage=function(n){var t=this.newConversationMessageListeners[n.id];return this.protocolAdapter.registerOnNewMessage(n,t.dispatchEvent.bind(t))},r.prototype.onRegisterOnThreadUpdate=function(n){var t=this.threadUpdateListeners[n.id];return this.protocolAdapter.registerOnThreadUpdate(n,t.dispatchEvent.bind(t))},r.prototype.onRegisterOnIC3Error=function(){var n=this.ic3ErrorListeners;return this.protocolAdapter.registerOnIC3Error(n.dispatchEvent.bind(n))},r.prototype.disconnectFromConversation=function(n){return this.protocolAdapter.disconnectFromConversation(n)},r.prototype.onJoinConversation=function(n,t){return this.protocolAdapter.joinConversation(n,t)},r.prototype.sendFileData=function(n,t,i){return this.protocolAdapter.sendFileData(n,t,i)},r.prototype.downloadFileData=function(n,t){return this.protocolAdapter.downloadFileData(n,t)},r.prototype.getFileStatus=function(n,t){return this.protocolAdapter.getFileStatus(n,t)},r.prototype.indicateTypingStatus=function(n,t,i){return this.protocolAdapter.indicateTypingStatus(n,t,i)},r.prototype.sendMessageToBot=function(n,t,i){return this.protocolAdapter.sendMessageToBot(n,t,i)},r.prototype.getMembers=function(n){return this.protocolAdapter.getMembers(n)},r}(t.ClientBridge);t.FramelessBridge=i})(t=n.SDK||(n.SDK={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i=function(t){function i(i){var r=t.call(this,i)||this;return r.hostType=n.Model.HostType.IFrame,r.protocolAdapterResourceIdentifier=r.id,r.requestsSuccessCallbackMapping={},r.requestsFailureCallbackMapping={},r}return __extends(i,t),i.prototype.setup=function(t){var i=this;return this.logger=t.logger,new Promise(function(t,r){var u;i.onAdapterLoadComplete=t;i.onAdapterLoadFail=r;i.setupEventListeners();var f=(u={},u[n.Common.QueryParameters.IS_FRAMED]="true",u[n.Common.QueryParameters.PROTOCOL_TYPE]=i.protocolType.toString(),u[n.Common.QueryParameters.SHOULD_SEND_TELEMETRY_EVENTS]=i.logger.isLoggingEnabled().toString(),u[n.Common.QueryParameters.SDK_ID]=i.id,u),e=n.Common.Utilities.addQueryParametersToPath(n.Common.FilePaths.IframePath,f),o=[{path:e,resourceMetadata:{id:i.id},resourceType:n.Common.ResourceType.IFrame}];n.Common.PromiseBasedResourceLoader.Load(o)})},i.prototype.initialize=function(t){var i=this;return new Promise(function(r,u){var f=t;i.postMessageOnWindow(n.Common.PostMessageEventNames.START_SESSION_REQUEST,f,r,u)})},i.prototype.update=function(t){var i=this;return new Promise(function(r,u){var f=t;i.postMessageOnWindow(n.Common.PostMessageEventNames.UPDATE_SESSION_REQUEST,f,r,u)})},i.prototype.dispose=function(){var t=this;return new Promise(function(i,r){t.eventListenerForMessages&&window.removeEventListener("message",t.eventListenerForMessages);t.postMessageOnWindow(n.Common.PostMessageEventNames.END_SESSION_REQUEST,null,i,r)})},i.prototype.sendMessage=function(t,i){var r=this;return new Promise(function(u,f){var e={conversationId:t.id,message:i};r.postMessageOnWindow(n.Common.PostMessageEventNames.SEND_MESSAGE_REQUEST,e,u,f)})},i.prototype.sendFileMessage=function(t,i,r){var u=this;return new Promise(function(f,e){var o={conversation:t,fileMetadata:i,message:r};u.postMessageOnWindow(n.Common.PostMessageEventNames.SEND_FILE_MESSAGE_REQUEST,o,f,e)})},i.prototype.getMessages=function(t){var i=this;return new Promise(function(r,u){var f=t;i.postMessageOnWindow(n.Common.PostMessageEventNames.GET_MESSAGES_REQUEST,f,r,u)})},i.prototype.onRegisterOnNewMessage=function(t){var i=this;return new Promise(function(r,u){var f=t;i.postMessageOnWindow(n.Common.PostMessageEventNames.REGISTER_ON_NEW_MESSAGE_REQUEST,f,r,u)})},i.prototype.onRegisterOnThreadUpdate=function(t){var i=this;return new Promise(function(r,u){var f=t;i.postMessageOnWindow(n.Common.PostMessageEventNames.REGISTER_ON_THREAD_UPDATE_REQUEST,f,r,u)})},i.prototype.onRegisterOnIC3Error=function(){var t=this;return new Promise(function(i,r){t.postMessageOnWindow(n.Common.PostMessageEventNames.REGISTER_ON_IC3_ERROR_REQUEST,{},i,r)})},i.prototype.disconnectFromConversation=function(t){var i=this;return new Promise(function(r,u){var f=t;delete i.newConversationMessageListeners[t.id];i.postMessageOnWindow(n.Common.PostMessageEventNames.DISCONNECT_FROM_CONVERSATION_REQUEST,f,r,u)})},i.prototype.onJoinConversation=function(t,i){var r=this;return new Promise(function(u,f){var e=function(){var n={id:t};u(n)},o={conversationId:t,sendHeartbeat:i};r.postMessageOnWindow(n.Common.PostMessageEventNames.JOIN_CONVERSATION_REQUEST,o,e,f)})},i.prototype.sendFileData=function(t,i,r){var u=this;return new Promise(function(f,e){var o={conversation:t,fileSharingProtocolType:r,fileInfo:i};u.postMessageOnWindow(n.Common.PostMessageEventNames.SEND_FILE_DATA_REQUEST,o,f,e)})},i.prototype.downloadFileData=function(t,i){var r=this;return new Promise(function(u,f){var e={conversation:t,fileMetadata:i};r.postMessageOnWindow(n.Common.PostMessageEventNames.DOWNLOAD_FILE_DATA_REQUEST,e,u,f)})},i.prototype.getFileStatus=function(t,i){var r=this;return new Promise(function(u,f){var e={conversation:t,fileMetadata:i};r.postMessageOnWindow(n.Common.PostMessageEventNames.GET_FILE_STATUS_REQUEST,e,u,f)})},i.prototype.indicateTypingStatus=function(t,i,r){var u=this;return new Promise(function(f,e){var o={conversation:t,typingStatus:i,messageProperties:r};u.postMessageOnWindow(n.Common.PostMessageEventNames.INDICATE_TYPING_STATUS_REQUEST,o,f,e)})},i.prototype.sendMessageToBot=function(t,i,r){var u=this;return new Promise(function(f,e){var o={conversation:t,botId:i,botMessage:r};u.postMessageOnWindow(n.Common.PostMessageEventNames.SEND_MESSAGE_TO_BOT_REQUEST,o,f,e)})},i.prototype.getMembers=function(t){var i=this;return new Promise(function(r,u){var f=t;i.postMessageOnWindow(n.Common.PostMessageEventNames.GET_MEMBERS_REQUEST,f,r,u)})},i.prototype.postMessageOnWindow=function(t,i,r,u){var f=n.Common.Utilities.newGuid(),e;this.requestsSuccessCallbackMapping[f]=r;this.requestsFailureCallbackMapping[f]=u;e={data:i,eventName:t,eventType:n.Common.PostMessageEventType.Request,id:this.id,requestId:f};!this.targetWindow||this.targetWindow.postMessage(e,n.Common.Utilities.getOriginUrl(n.Common.FilePaths.IframePath))},i.prototype.handleEvent=function(t){var i,f,e,o,r,u;if(n.Common.Utilities.sanitizeUrlWithBackSlash(t.origin)===n.Common.Utilities.sanitizeUrlWithBackSlash(n.Common.Utilities.getOriginUrl(n.Common.FilePaths.IframePath))&&t.data){if(i=t.data,i.id!==this.id)return;if(this.targetWindow=t.source,i.eventType===n.Common.PostMessageEventType.None)switch(i.eventName){case n.Common.PostMessageEventNames.ADAPTER_LOAD_COMPLETE:this.onAdapterLoadComplete();break;case n.Common.PostMessageEventNames.ADAPTER_LOAD_FAIL:this.onAdapterLoadFail();break;case n.Common.PostMessageEventNames.INCOMING_MESSAGE:r=i.data;f=this.newConversationMessageListeners[r.conversationId];n.Common.Utilities.isNullOrUndefined(f)||f.dispatchEvent(r.message);break;case n.Common.PostMessageEventNames.THREAD_UPDATE:r=i.data;e=this.threadUpdateListeners[r.conversationId];n.Common.Utilities.isNullOrUndefined(e)||e.dispatchEvent(r.message);break;case n.Common.PostMessageEventNames.IC3_ERROR:r=i.data;o=this.ic3ErrorListeners;n.Common.Utilities.isNullOrUndefined(o)||o.dispatchEvent(r.error);break;case n.Common.PostMessageEventNames.TELEMETRY_EVENT:r=i.data;this.logger.logEvent(r.logLevel,r.logData)}else if(i.eventType===n.Common.PostMessageEventType.Response){u=null;switch(i.eventStatus){case n.Common.PostMessageEventStatus.Success:u=this.requestsSuccessCallbackMapping[i.requestId];break;case n.Common.PostMessageEventStatus.Failure:u=this.requestsFailureCallbackMapping[i.requestId]}n.Common.Utilities.isNullOrUndefined(u)||u(i.data)}delete this.requestsSuccessCallbackMapping[i.requestId];delete this.requestsFailureCallbackMapping[i.requestId]}},i.prototype.setupEventListeners=function(){var n=this.handleEvent.bind(this);this.eventListenerForMessages=n;window.addEventListener("message",n,!1)},i}(t.ClientBridge);t.FramedBridge=i})(t=n.SDK||(n.SDK={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i=function(){function i(){}return i.getClientBridge=function(i){switch(i.hostType){case n.Model.HostType.IFrame:return new t.FramedBridge(i.protocolType);case n.Model.HostType.Page:return new t.FramelessBridge(i.protocolType);default:throw new Error("Client bridge not implemented for "+i.hostType);}},i}();t.ClientBridgeFactory=i})(t=n.SDK||(n.SDK={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i=function(){function i(){}return i.getSDK=function(i){var u={hostType:i.hostType,protocolType:i.protocolType},r=t.ClientBridgeFactory.getClientBridge(u),f={logger:new n.Common.RawLogger(r,i.logger)};return r.setup(f).then(function(){return{dispose:r.dispose.bind(r),id:r.id,initialize:r.initialize.bind(r),joinConversation:r.joinConversation.bind(r),update:r.update.bind(r)}})},i}();t.SDKProvider=i})(t=n.SDK||(n.SDK={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(n){var t;(function(n){var t;(function(t){var i=function(){function i(){}return i.prototype.bootstrap=function(){n.Common.FilePaths.setRootPath(n.Common.StaticSdkConfiguration.BaseUrl,n.Common.StaticSdkConfiguration.SdkVersion,this.getSDKUrl());n.Common.FilePaths.setLoadFileType(n.Common.SDKLoadFileType.Minified);var t=[{path:n.Common.FilePaths.JQueryLibraryFilePath,preload:this.shouldLoadJQuery,resourceType:n.Common.ResourceType.Script,callback:this.onLoadJQuery.bind(this)},{path:n.Common.FilePaths.BluebirdLibraryFilePath,preload:this.shouldLoadBluebird,resourceType:n.Common.ResourceType.Script,callback:this.onBootstrapComplete.bind(this)}];n.Common.ResourceLoader.Load(t)},i.prototype.getSDKUrl=function(){var t=null,i=document.querySelector("script#"+n.Common.Constants.SDK_SCRIPT_ID);return n.Common.Utilities.isNullOrUndefined(i)||(t=i.getAttribute("src")),t},i.prototype.shouldLoadJQuery=function(){return window.jQuery===undefined},i.prototype.onLoadJQuery=function(n){window.$=n?jQuery.noConflict(!0):jQuery},i.prototype.shouldLoadBluebird=function(){return window.Promise===undefined},i.prototype.onBootstrapComplete=function(){n.Common.EventManager.raiseCustomEvent(n.Common.EventNames.IC3SDKLOAD);t.IframeCommunicator.initialize()},i}();t.Bootstrapper=i})(t=n.SDK||(n.SDK={}))})(t=n.IC3Client||(n.IC3Client={}))})(t=n.Omnichannel||(n.Omnichannel={}))})(t=n.CRM||(n.CRM={}))}(Microsoft||(Microsoft={})),function(){(new Microsoft.CRM.Omnichannel.IC3Client.SDK.Bootstrapper).bootstrap()}(); /* SDK.min.js:end */