/* Outlook web application specific API library */ /* Version: 15.0.4420.1017 Build Time: 03/31/2014 */ /* Copyright (c) Microsoft Corporation. All rights reserved. */ /* Your use of this file is governed by the Microsoft Services Agreement http://go.microsoft.com/fwlink/?LinkId=266419. */ Type.registerNamespace('Microsoft.Office.WebExtension.MailboxEnums'); Microsoft.Office.WebExtension.MailboxEnums.EntityType={ MeetingSuggestion: "meetingSuggestion", TaskSuggestion: "taskSuggestion", Address: "address", EmailAddress: "emailAddress", Url: "url", PhoneNumber: "phoneNumber", Contact: "contact" }; Microsoft.Office.WebExtension.MailboxEnums.ItemType={ Message: 'message', Appointment: 'appointment' }; Microsoft.Office.WebExtension.MailboxEnums.ResponseType={ None: "none", Organizer: "organizer", Tentative: "tentative", Accepted: "accepted", Declined: "declined" }; Microsoft.Office.WebExtension.MailboxEnums.RecipientType={ Other: "other", DistributionList: "distributionList", User: "user", ExternalUser: "externalUser" }; Microsoft.Office.WebExtension.MailboxEnums.AttachmentType={ File: "file", Item: "item" }; Type.registerNamespace('OSF.DDA'); OSF.DDA.OutlookAppOm=function OSF_DDA_OutlookAppOm(officeAppContext, targetWindow, appReadyCallback) { this.$$d__callAppReadyCallback$p$0=Function.createDelegate(this, this._callAppReadyCallback$p$0); this.$$d__getEwsUrl$p$0=Function.createDelegate(this, this._getEwsUrl$p$0); this.$$d__getDiagnostics$p$0=Function.createDelegate(this, this._getDiagnostics$p$0); this.$$d__getUserProfile$p$0=Function.createDelegate(this, this._getUserProfile$p$0); this.$$d__getItem$p$0=Function.createDelegate(this, this._getItem$p$0); this.$$d__getInitialDataResponseHandler$p$0=Function.createDelegate(this, this._getInitialDataResponseHandler$p$0); OSF.DDA.OutlookAppOm._instance$p=this; this._officeAppContext$p$0=officeAppContext; this._appReadyCallback$p$0=appReadyCallback; var $$t_4=this; var stringLoadedCallback=function() { if (appReadyCallback) { $$t_4._invokeHostMethod$i$0(1, 'GetInitialData', null, $$t_4.$$d__getInitialDataResponseHandler$p$0); } }; if (this._areStringsLoaded$p$0()) { stringLoadedCallback(); } else { this._loadLocalizedScript$p$0(stringLoadedCallback); } } OSF.DDA.OutlookAppOm._createAsyncResult$i=function OSF_DDA_OutlookAppOm$_createAsyncResult$i(value, errorCode, errorDescription, userContext) { var initArgs={}; initArgs[OSF.DDA.AsyncResultEnum.Properties.Value]=value; initArgs[OSF.DDA.AsyncResultEnum.Properties.Context]=userContext; var errorArgs=null; if (0 !==errorCode) { errorArgs={}; errorArgs[OSF.DDA.AsyncResultEnum.ErrorProperties.Name]=errorCode; errorArgs[OSF.DDA.AsyncResultEnum.ErrorProperties.Message]=errorDescription; } return new OSF.DDA.AsyncResult(initArgs, errorArgs); } OSF.DDA.OutlookAppOm._throwOnPropertyAccessForRestrictedPermission$i=function OSF_DDA_OutlookAppOm$_throwOnPropertyAccessForRestrictedPermission$i(currentPermissionLevel) { if (!currentPermissionLevel) { throw Error.create(_u.ExtensibilityStrings.l_ElevatedPermissionNeeded_Text); } } OSF.DDA.OutlookAppOm._throwOnMethodCallForInsufficientPermission$i=function OSF_DDA_OutlookAppOm$_throwOnMethodCallForInsufficientPermission$i(currentPermissionLevel, requiredPermissionLevel, methodName) { if (currentPermissionLevel < requiredPermissionLevel) { throw Error.create(String.format(_u.ExtensibilityStrings.l_ElevatedPermissionNeededForMethod_Text, methodName)); } } OSF.DDA.OutlookAppOm._throwOnArgumentType$p=function OSF_DDA_OutlookAppOm$_throwOnArgumentType$p(value, expectedType, argumentName) { if (Object.getType(value) !==expectedType) { throw Error.argumentType(argumentName); } } OSF.DDA.OutlookAppOm._throwOnOutOfRange$p=function OSF_DDA_OutlookAppOm$_throwOnOutOfRange$p(value, minValue, maxValue, argumentName) { if (value < minValue || value > maxValue) { throw Error.argumentOutOfRange(argumentName); } } OSF.DDA.OutlookAppOm._validateOptionalStringParameter$p=function OSF_DDA_OutlookAppOm$_validateOptionalStringParameter$p(value, minLength, maxLength, name) { if ($h.ScriptHelpers.isNullOrUndefined(value)) { return; } OSF.DDA.OutlookAppOm._throwOnArgumentType$p(value, String, name); var stringValue=value; OSF.DDA.OutlookAppOm._throwOnOutOfRange$p(stringValue.length, minLength, maxLength, name); } OSF.DDA.OutlookAppOm._convertToOutlookParameters$p=function OSF_DDA_OutlookAppOm$_convertToOutlookParameters$p(dispid, data) { var executeParameters=null; switch (dispid) { case 1: case 2: case 12: case 3: break; case 4: var jsonProperty=JSON.stringify(data['customProperties']); executeParameters=[ jsonProperty ]; break; case 5: executeParameters=[ data['body'] ]; break; case 8: case 9: executeParameters=[ data['itemId'] ]; break; case 7: executeParameters=[ OSF.DDA.OutlookAppOm._convertRecipientArrayParameterForOutlook$p(data['requiredAttendees']), OSF.DDA.OutlookAppOm._convertRecipientArrayParameterForOutlook$p(data['optionalAttendees']), data['start'], data['end'], data['location'], OSF.DDA.OutlookAppOm._convertRecipientArrayParameterForOutlook$p(data['resources']), data['subject'], data['body'] ]; break; case 11: case 10: executeParameters=[ data['htmlBody'] ]; break; default: Sys.Debug.fail('Unexpected method dispid'); break; } return executeParameters; } OSF.DDA.OutlookAppOm._convertRecipientArrayParameterForOutlook$p=function OSF_DDA_OutlookAppOm$_convertRecipientArrayParameterForOutlook$p(array) { return (array) ? array.join(';') : null; } OSF.DDA.OutlookAppOm._validateAndNormalizeRecipientEmails$p=function OSF_DDA_OutlookAppOm$_validateAndNormalizeRecipientEmails$p(emailset, name) { if ($h.ScriptHelpers.isNullOrUndefined(emailset)) { return null; } OSF.DDA.OutlookAppOm._throwOnArgumentType$p(emailset, Array, name); var originalAttendees=emailset; var updatedAttendees=null; var normalizationNeeded=false; OSF.DDA.OutlookAppOm._throwOnOutOfRange$p(originalAttendees.length, 0, OSF.DDA.OutlookAppOm._maxRecipients$p, String.format('{0}.length', name)); for (var i=0; i < originalAttendees.length; i++) { if ($h.EmailAddressDetails.isInstanceOfType(originalAttendees[i])) { normalizationNeeded=true; break; } } if (normalizationNeeded) { updatedAttendees=[]; } for (var i=0; i < originalAttendees.length; i++) { if (normalizationNeeded) { updatedAttendees[i]=($h.EmailAddressDetails.isInstanceOfType(originalAttendees[i])) ? (originalAttendees[i]).emailAddress : originalAttendees[i]; OSF.DDA.OutlookAppOm._throwOnArgumentType$p(updatedAttendees[i], String, String.format('{0}[{1}]', name, i)); } else { OSF.DDA.OutlookAppOm._throwOnArgumentType$p(originalAttendees[i], String, String.format('{0}[{1}]', name, i)); } } return updatedAttendees; } OSF.DDA.OutlookAppOm.prototype={ _initialData$p$0: null, _item$p$0: null, _userProfile$p$0: null, _diagnostics$p$0: null, _officeAppContext$p$0: null, _appReadyCallback$p$0: null, get__appName$i$0: function OSF_DDA_OutlookAppOm$get__appName$i$0() { return this._officeAppContext$p$0.get_appName(); }, initialize: function OSF_DDA_OutlookAppOm$initialize(initialData) { var ItemTypeKey='itemType'; this._initialData$p$0=new $h.InitialData(initialData); if (1===initialData[ItemTypeKey]) { this._item$p$0=new $h.Message(this._initialData$p$0); } else if (3===initialData[ItemTypeKey]) { this._item$p$0=new $h.MeetingRequest(this._initialData$p$0); } else if (2===initialData[ItemTypeKey]) { this._item$p$0=new $h.Appointment(this._initialData$p$0); } else { Sys.Debug.trace('Unexpected item type was received from the host.'); } this._userProfile$p$0=new $h.UserProfile(this._initialData$p$0); this._diagnostics$p$0=new $h.Diagnostics(this._initialData$p$0, this._officeAppContext$p$0.get_appName()); $h.InitialData._defineReadOnlyProperty$i(this, 'item', this.$$d__getItem$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'userProfile', this.$$d__getUserProfile$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'diagnostics', this.$$d__getDiagnostics$p$0); if (OSF.DDA.OutlookAppOm._instance$p.get__appName$i$0()===64) { $h.InitialData._defineReadOnlyProperty$i(this, 'ewsUrl', this.$$d__getEwsUrl$p$0); } }, makeEwsRequestAsync: function OSF_DDA_OutlookAppOm$makeEwsRequestAsync(data, callback, userContext) { if ($h.ScriptHelpers.isNullOrUndefined(data)) { throw Error.argumentNull('data'); } if (data.length > OSF.DDA.OutlookAppOm._maxEwsRequestSize$p) { throw Error.argument('data', _u.ExtensibilityStrings.l_EwsRequestOversized_Text); } OSF.DDA.OutlookAppOm._throwOnMethodCallForInsufficientPermission$i(this._initialData$p$0.get__permissionLevel$i$0(), 2, 'makeEwsRequestAsync'); var ewsRequest=new $h.EwsRequest(userContext); var $$t_4=this; ewsRequest.onreadystatechange=function() { if (4===ewsRequest.get__requestState$i$1()) { callback(ewsRequest._asyncResult$p$0); } }; ewsRequest.send(data); }, recordDataPoint: function OSF_DDA_OutlookAppOm$recordDataPoint(data) { if ($h.ScriptHelpers.isNullOrUndefined(data)) { throw Error.argumentNull('data'); } this._invokeHostMethod$i$0(0, 'RecordDataPoint', data, null); }, recordTrace: function OSF_DDA_OutlookAppOm$recordTrace(data) { if ($h.ScriptHelpers.isNullOrUndefined(data)) { throw Error.argumentNull('data'); } this._invokeHostMethod$i$0(0, 'RecordTrace', data, null); }, trackCtq: function OSF_DDA_OutlookAppOm$trackCtq(data) { if ($h.ScriptHelpers.isNullOrUndefined(data)) { throw Error.argumentNull('data'); } this._invokeHostMethod$i$0(0, 'TrackCtq', data, null); }, convertToLocalClientTime: function OSF_DDA_OutlookAppOm$convertToLocalClientTime(timeValue) { var date=new Date(timeValue.getTime()); var offset=date.getTimezoneOffset() * -1; if (this._initialData$p$0 && this._initialData$p$0.get__timeZoneOffsets$i$0()) { date.setUTCMinutes(date.getUTCMinutes() - offset); offset=this._findOffset$p$0(date); date.setUTCMinutes(date.getUTCMinutes()+offset); } var retValue=this._dateToDictionary$i$0(date); retValue['timezoneOffset']=offset; return retValue; }, convertToUtcClientTime: function OSF_DDA_OutlookAppOm$convertToUtcClientTime(input) { var retValue=this._dictionaryToDate$i$0(input); if (this._initialData$p$0 && this._initialData$p$0.get__timeZoneOffsets$i$0()) { var offset=this._findOffset$p$0(retValue); retValue.setUTCMinutes(retValue.getUTCMinutes() - offset); offset=(!input['timezoneOffset']) ? retValue.getTimezoneOffset() * -1 : input['timezoneOffset']; retValue.setUTCMinutes(retValue.getUTCMinutes()+offset); } return retValue; }, getUserIdentityTokenAsync: function OSF_DDA_OutlookAppOm$getUserIdentityTokenAsync(callback, userContext) { OSF.DDA.OutlookAppOm._throwOnMethodCallForInsufficientPermission$i(this._initialData$p$0.get__permissionLevel$i$0(), 1, 'getUserIdentityTokenAsync'); this._invokeGetTokenMethodAsync$p$0(2, 'GetUserIdentityToken', callback, userContext); }, getCallbackTokenAsync: function OSF_DDA_OutlookAppOm$getCallbackTokenAsync(callback, userContext) { OSF.DDA.OutlookAppOm._throwOnMethodCallForInsufficientPermission$i(this._initialData$p$0.get__permissionLevel$i$0(), 1, 'getCallbackTokenAsync'); if (64 !==this._officeAppContext$p$0.get_appName()) { throw Error.notImplemented('The getCallbackTokenAsync is not supported by outlook for now.'); } this._invokeGetTokenMethodAsync$p$0(12, 'GetCallbackToken', callback, userContext); }, displayMessageForm: function OSF_DDA_OutlookAppOm$displayMessageForm(itemId) { if ($h.ScriptHelpers.isNullOrUndefined(itemId)) { throw Error.argumentNull('itemId'); } this._invokeHostMethod$i$0(8, 'DisplayExistingMessageForm', { itemId: itemId }, null); }, displayAppointmentForm: function OSF_DDA_OutlookAppOm$displayAppointmentForm(itemId) { if ($h.ScriptHelpers.isNullOrUndefined(itemId)) { throw Error.argumentNull('itemId'); } this._invokeHostMethod$i$0(9, 'DisplayExistingAppointmentForm', { itemId: itemId }, null); }, displayNewAppointmentForm: function OSF_DDA_OutlookAppOm$displayNewAppointmentForm(parameters) { var normalizedRequiredAttendees=OSF.DDA.OutlookAppOm._validateAndNormalizeRecipientEmails$p(parameters['requiredAttendees'], 'requiredAttendees'); var normalizedOptionalAttendees=OSF.DDA.OutlookAppOm._validateAndNormalizeRecipientEmails$p(parameters['optionalAttendees'], 'optionalAttendees'); OSF.DDA.OutlookAppOm._validateOptionalStringParameter$p(parameters['location'], 0, OSF.DDA.OutlookAppOm._maxLocationLength$p, 'location'); OSF.DDA.OutlookAppOm._validateOptionalStringParameter$p(parameters['body'], 0, OSF.DDA.OutlookAppOm._maxBodyLength$p, 'body'); OSF.DDA.OutlookAppOm._validateOptionalStringParameter$p(parameters['subject'], 0, OSF.DDA.OutlookAppOm._maxSubjectLength$p, 'subject'); if (!$h.ScriptHelpers.isNullOrUndefined(parameters['start'])) { OSF.DDA.OutlookAppOm._throwOnArgumentType$p(parameters['start'], Date, 'start'); var startDateTime=parameters['start']; parameters['start']=startDateTime.getTime(); if (!$h.ScriptHelpers.isNullOrUndefined(parameters['end'])) { OSF.DDA.OutlookAppOm._throwOnArgumentType$p(parameters['end'], Date, 'end'); var endDateTime=parameters['end']; if (endDateTime < startDateTime) { throw Error.argumentOutOfRange('end', endDateTime, _u.ExtensibilityStrings.l_InvalidEventDates_Text); } parameters['end']=endDateTime.getTime(); } } var updatedParameters=null; if (normalizedRequiredAttendees || normalizedOptionalAttendees) { updatedParameters={}; var $$dict_6=parameters; for (var $$key_7 in $$dict_6) { var entry={ key: $$key_7, value: $$dict_6[$$key_7] }; updatedParameters[entry.key]=entry.value; } if (normalizedRequiredAttendees) { updatedParameters['requiredAttendees']=normalizedRequiredAttendees; } if (normalizedOptionalAttendees) { updatedParameters['optionalAttendees']=normalizedOptionalAttendees; } } this._invokeHostMethod$i$0(7, 'DisplayNewAppointmentForm', updatedParameters || parameters, null); }, _displayReplyForm$i$0: function OSF_DDA_OutlookAppOm$_displayReplyForm$i$0(htmlBody) { if (!$h.ScriptHelpers.isNullOrUndefined(htmlBody)) { OSF.DDA.OutlookAppOm._throwOnOutOfRange$p(htmlBody.length, 0, OSF.DDA.OutlookAppOm._maxBodyLength$p, 'htmlBody'); } this._invokeHostMethod$i$0(10, 'DisplayReplyForm', { htmlBody: htmlBody }, null); }, _displayReplyAllForm$i$0: function OSF_DDA_OutlookAppOm$_displayReplyAllForm$i$0(htmlBody) { if (!$h.ScriptHelpers.isNullOrUndefined(htmlBody)) { OSF.DDA.OutlookAppOm._throwOnOutOfRange$p(htmlBody.length, 0, OSF.DDA.OutlookAppOm._maxBodyLength$p, 'htmlBody'); } this._invokeHostMethod$i$0(11, 'DisplayReplyAllForm', { htmlBody: htmlBody }, null); }, _invokeHostMethod$i$0: function OSF_DDA_OutlookAppOm$_invokeHostMethod$i$0(dispid, name, data, responseCallback) { if (64===this._officeAppContext$p$0.get_appName()) { OSF._OfficeAppFactory.getClientEndPoint().invoke(name, responseCallback, data); } else if (dispid) { var executeParameters=OSF.DDA.OutlookAppOm._convertToOutlookParameters$p(dispid, data); var $$t_9=this; window.external.Execute(dispid, executeParameters, function(nativeData, resultCode) { if (responseCallback) { var serializedData=nativeData.getItem(0); var deserializedData=JSON.parse(serializedData); responseCallback(resultCode, deserializedData); } }); } else if (responseCallback) { responseCallback(-2, null); } }, _dictionaryToDate$i$0: function OSF_DDA_OutlookAppOm$_dictionaryToDate$i$0(input) { var retValue=new Date(input['year'], input['month'], input['date'], input['hours'], input['minutes'], input['seconds'], (!input['milliseconds']) ? 0 : input['milliseconds']); if (isNaN(retValue.getTime())) { throw Error.format(_u.ExtensibilityStrings.l_InvalidDate_Text); } return retValue; }, _dateToDictionary$i$0: function OSF_DDA_OutlookAppOm$_dateToDictionary$i$0(input) { var retValue={}; retValue['month']=input.getMonth(); retValue['date']=input.getDate(); retValue['year']=input.getFullYear(); retValue['hours']=input.getHours(); retValue['minutes']=input.getMinutes(); retValue['seconds']=input.getSeconds(); retValue['milliseconds']=input.getMilliseconds(); return retValue; }, _getInitialDataResponseHandler$p$0: function OSF_DDA_OutlookAppOm$_getInitialDataResponseHandler$p$0(resultCode, data) { if (resultCode) { return; } this.initialize(data); (this).displayName='mailbox'; window.setTimeout(this.$$d__callAppReadyCallback$p$0, 0); }, _callAppReadyCallback$p$0: function OSF_DDA_OutlookAppOm$_callAppReadyCallback$p$0() { this._appReadyCallback$p$0(); }, _invokeGetTokenMethodAsync$p$0: function OSF_DDA_OutlookAppOm$_invokeGetTokenMethodAsync$p$0(outlookDispid, methodName, callback, userContext) { if ($h.ScriptHelpers.isNullOrUndefined(callback)) { throw Error.argumentNull('callback'); } var $$t_8=this; this._invokeHostMethod$i$0(outlookDispid, methodName, null, function(resultCode, response) { var asyncResult; if (resultCode) { asyncResult=OSF.DDA.OutlookAppOm._createAsyncResult$i(null, 1, String.format(_u.ExtensibilityStrings.l_InternalProtocolError_Text, resultCode), userContext); } else { var responseDictionary=response; if (responseDictionary['wasSuccessful']) { asyncResult=OSF.DDA.OutlookAppOm._createAsyncResult$i(responseDictionary['token'], 0, null, userContext); } else { asyncResult=OSF.DDA.OutlookAppOm._createAsyncResult$i(null, 1, responseDictionary['errorMessage'], userContext); } } callback(asyncResult); }); }, _getItem$p$0: function OSF_DDA_OutlookAppOm$_getItem$p$0() { return this._item$p$0; }, _getUserProfile$p$0: function OSF_DDA_OutlookAppOm$_getUserProfile$p$0() { OSF.DDA.OutlookAppOm._throwOnPropertyAccessForRestrictedPermission$i(this._initialData$p$0.get__permissionLevel$i$0()); return this._userProfile$p$0; }, _getDiagnostics$p$0: function OSF_DDA_OutlookAppOm$_getDiagnostics$p$0() { return this._diagnostics$p$0; }, _getEwsUrl$p$0: function OSF_DDA_OutlookAppOm$_getEwsUrl$p$0() { OSF.DDA.OutlookAppOm._throwOnPropertyAccessForRestrictedPermission$i(this._initialData$p$0.get__permissionLevel$i$0()); return this._initialData$p$0.get__ewsUrl$i$0(); }, _findOffset$p$0: function OSF_DDA_OutlookAppOm$_findOffset$p$0(value) { var ranges=this._initialData$p$0.get__timeZoneOffsets$i$0(); for (var r=0; r < ranges.length; r++) { var range=ranges[r]; var start=parseInt(range['start']); var end=parseInt(range['end']); if (value.getTime() - start >=0 && value.getTime() - end < 0) { return parseInt(range['offset']); } } throw Error.format(_u.ExtensibilityStrings.l_InvalidDate_Text); }, _areStringsLoaded$p$0: function OSF_DDA_OutlookAppOm$_areStringsLoaded$p$0() { var stringsLoaded=false; try { stringsLoaded=!$h.ScriptHelpers.isNullOrUndefined(_u.ExtensibilityStrings.l_EwsRequestOversized_Text); } catch ($$e_1) { } return stringsLoaded; }, _loadLocalizedScript$p$0: function OSF_DDA_OutlookAppOm$_loadLocalizedScript$p$0(stringLoadedCallback) { var url=null; var baseUrl=''; var scripts=document.getElementsByTagName('script'); for (var i=scripts.length - 1; i >=0; i--) { var filename=null; var attributes=scripts[i].attributes; if (attributes) { var attribute=attributes.getNamedItem('src'); if (attribute) { filename=attribute.value; } if (filename) { var debug=false; filename=filename.toLowerCase(); var officeIndex=filename.indexOf('office_strings.js'); if (officeIndex < 0) { officeIndex=filename.indexOf('office_strings.debug.js'); debug=true; } if ((officeIndex > 0) && (officeIndex < filename.length)) { url=filename.replace((debug) ? 'office_strings.debug.js' : 'office_strings.js', 'outlook_strings.js'); var languageUrl=filename.substring(0, officeIndex); var lastIndexOfSlash=languageUrl.lastIndexOf('/', languageUrl.length - 2); if (lastIndexOfSlash===-1) { lastIndexOfSlash=languageUrl.lastIndexOf('\\', languageUrl.length - 2); } if (lastIndexOfSlash !==-1 && languageUrl.length > lastIndexOfSlash+1) { baseUrl=languageUrl.substring(0, lastIndexOfSlash+1); } break; } } } } if (url) { var head=document.getElementsByTagName('head')[0]; var scriptElement=null; var $$t_H=this; var scriptElementCallback=function() { if (stringLoadedCallback && (!scriptElement.readyState || (scriptElement.readyState && (scriptElement.readyState==='loaded' || scriptElement.readyState==='complete')))) { scriptElement.onload=null; scriptElement.onreadystatechange=null; stringLoadedCallback(); } }; var $$t_I=this; var failureCallback=function() { if (!$$t_I._areStringsLoaded$p$0()) { var fallbackUrl=baseUrl+'en-us/'+'outlook_strings.js'; scriptElement.onload=null; scriptElement.onreadystatechange=null; scriptElement=$$t_I._createScriptElement$p$0(fallbackUrl); scriptElement.onload=scriptElementCallback; scriptElement.onreadystatechange=scriptElementCallback; head.appendChild(scriptElement); } }; scriptElement=this._createScriptElement$p$0(url); scriptElement.onload=scriptElementCallback; scriptElement.onreadystatechange=scriptElementCallback; window.setTimeout(failureCallback, 2000); head.appendChild(scriptElement); } }, _createScriptElement$p$0: function OSF_DDA_OutlookAppOm$_createScriptElement$p$0(url) { var scriptElement=document.createElement('script'); scriptElement.type='text/javascript'; scriptElement.src=url; return scriptElement; } } OSF.DDA.Settings=function OSF_DDA_Settings(data) { this._rawData$p$0=data; } OSF.DDA.Settings._convertFromRawSettings$p=function OSF_DDA_Settings$_convertFromRawSettings$p(rawSettings) { if (!rawSettings) { return {}; } if (OSF.DDA.OutlookAppOm._instance$p.get__appName$i$0()===8) { var outlookSettings=rawSettings['SettingsKey']; if (outlookSettings) { return OSF.DDA.SettingsManager.deserializeSettings(outlookSettings); } } return rawSettings; } OSF.DDA.Settings.prototype={ _rawData$p$0: null, _settingsData$p$0: null, get__data$p$0: function OSF_DDA_Settings$get__data$p$0() { if (!this._settingsData$p$0) { this._settingsData$p$0=OSF.DDA.Settings._convertFromRawSettings$p(this._rawData$p$0); this._rawData$p$0=null; } return this._settingsData$p$0; }, get: function OSF_DDA_Settings$get(name) { return this.get__data$p$0()[name]; }, set: function OSF_DDA_Settings$set(name, value) { this.get__data$p$0()[name]=value; }, remove: function OSF_DDA_Settings$remove(name) { delete this.get__data$p$0()[name]; }, saveAsync: function OSF_DDA_Settings$saveAsync() { var args=[]; for (var $$pai_4=0; $$pai_4 < arguments.length;++$$pai_4) { args[$$pai_4]=arguments[$$pai_4]; } var callback=null; var userContext=null; if (args && args.length > 0) { var currentArgument=args.length - 1; if (Function.isInstanceOfType(args[currentArgument])) { callback=args[currentArgument]; currentArgument--; if (currentArgument >=0) { userContext=(args[currentArgument])['asyncContext']; } } } if (OSF.DDA.OutlookAppOm._instance$p.get__appName$i$0()===64) { this._saveSettingsForOwa$p$0(callback, userContext); } else { this._saveSettingsForOutlook$p$0(callback, userContext); } }, _saveSettingsForOutlook$p$0: function OSF_DDA_Settings$_saveSettingsForOutlook$p$0(callback, userContext) { var storedException=null; try { var serializedSettings=OSF.DDA.SettingsManager.serializeSettings(this.get__data$p$0()); var jsonSettings=JSON.stringify(serializedSettings); var settingsObjectToSave={ SettingsKey: jsonSettings }; OSF.DDA.RichClientSettingsManager.write(settingsObjectToSave); } catch (ex) { storedException=ex; } if (callback) { var asyncResult; if (storedException) { asyncResult=OSF.DDA.OutlookAppOm._createAsyncResult$i(null, 1, storedException.message, userContext); } else { asyncResult=OSF.DDA.OutlookAppOm._createAsyncResult$i(null, 0, null, userContext); } callback(asyncResult); } }, _saveSettingsForOwa$p$0: function OSF_DDA_Settings$_saveSettingsForOwa$p$0(callback, userContext) { var serializedSettings=OSF.DDA.SettingsManager.serializeSettings(this.get__data$p$0()); var $$t_7=this; OSF._OfficeAppFactory.getClientEndPoint().invoke('saveSettingsAsync', function(resultCode, response) { if (callback) { var asyncResult; if (resultCode) { asyncResult=OSF.DDA.OutlookAppOm._createAsyncResult$i(null, 1, String.format(_u.ExtensibilityStrings.l_InternalProtocolError_Text, resultCode), userContext); } else { var responseDictionary=response; if (!(responseDictionary['error'])) { asyncResult=OSF.DDA.OutlookAppOm._createAsyncResult$i(null, 0, null, userContext); } else { asyncResult=OSF.DDA.OutlookAppOm._createAsyncResult$i(null, 1, responseDictionary['errorMessage'], userContext); } } callback(asyncResult); } }, [ serializedSettings ]); } } Type.registerNamespace('$h'); $h.Appointment=function $h_Appointment(dataDictionary) { this.$$d__getOrganizer$p$1=Function.createDelegate(this, this._getOrganizer$p$1); this.$$d__getNormalizedSubject$p$1=Function.createDelegate(this, this._getNormalizedSubject$p$1); this.$$d__getSubject$p$1=Function.createDelegate(this, this._getSubject$p$1); this.$$d__getResources$p$1=Function.createDelegate(this, this._getResources$p$1); this.$$d__getRequiredAttendees$p$1=Function.createDelegate(this, this._getRequiredAttendees$p$1); this.$$d__getOptionalAttendees$p$1=Function.createDelegate(this, this._getOptionalAttendees$p$1); this.$$d__getLocation$p$1=Function.createDelegate(this, this._getLocation$p$1); this.$$d__getEnd$p$1=Function.createDelegate(this, this._getEnd$p$1); this.$$d__getStart$p$1=Function.createDelegate(this, this._getStart$p$1); $h.Appointment.initializeBase(this, [ dataDictionary ]); $h.InitialData._defineReadOnlyProperty$i(this, 'start', this.$$d__getStart$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'end', this.$$d__getEnd$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'location', this.$$d__getLocation$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'optionalAttendees', this.$$d__getOptionalAttendees$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'requiredAttendees', this.$$d__getRequiredAttendees$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'resources', this.$$d__getResources$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'subject', this.$$d__getSubject$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'normalizedSubject', this.$$d__getNormalizedSubject$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'organizer', this.$$d__getOrganizer$p$1); } $h.Appointment.prototype={ getEntities: function $h_Appointment$getEntities() { return this._data$p$0._getEntities$i$0(); }, getEntitiesByType: function $h_Appointment$getEntitiesByType(entityType) { return this._data$p$0._getEntitiesByType$i$0(entityType); }, getRegExMatches: function $h_Appointment$getRegExMatches() { OSF.DDA.OutlookAppOm._throwOnMethodCallForInsufficientPermission$i(this._data$p$0.get__permissionLevel$i$0(), 1, 'getRegExMatches'); return this._data$p$0._getRegExMatches$i$0(); }, getFilteredEntitiesByName: function $h_Appointment$getFilteredEntitiesByName(name) { return this._data$p$0._getFilteredEntitiesByName$i$0(name); }, getRegExMatchesByName: function $h_Appointment$getRegExMatchesByName(name) { OSF.DDA.OutlookAppOm._throwOnMethodCallForInsufficientPermission$i(this._data$p$0.get__permissionLevel$i$0(), 1, 'getRegExMatchesByName'); return this._data$p$0._getRegExMatchesByName$i$0(name); }, displayReplyForm: function $h_Appointment$displayReplyForm(htmlBody) { OSF.DDA.OutlookAppOm._instance$p._displayReplyForm$i$0(htmlBody); }, displayReplyAllForm: function $h_Appointment$displayReplyAllForm(htmlBody) { OSF.DDA.OutlookAppOm._instance$p._displayReplyAllForm$i$0(htmlBody); }, getItemType: function $h_Appointment$getItemType() { return Microsoft.Office.WebExtension.MailboxEnums.ItemType.Appointment; }, _getStart$p$1: function $h_Appointment$_getStart$p$1() { return this._data$p$0.get__start$i$0(); }, _getEnd$p$1: function $h_Appointment$_getEnd$p$1() { return this._data$p$0.get__end$i$0(); }, _getLocation$p$1: function $h_Appointment$_getLocation$p$1() { return this._data$p$0.get__location$i$0(); }, _getOptionalAttendees$p$1: function $h_Appointment$_getOptionalAttendees$p$1() { return this._data$p$0.get__cc$i$0(); }, _getRequiredAttendees$p$1: function $h_Appointment$_getRequiredAttendees$p$1() { return this._data$p$0.get__to$i$0(); }, _getResources$p$1: function $h_Appointment$_getResources$p$1() { return this._data$p$0.get__resources$i$0(); }, _getSubject$p$1: function $h_Appointment$_getSubject$p$1() { return this._data$p$0.get__subject$i$0(); }, _getNormalizedSubject$p$1: function $h_Appointment$_getNormalizedSubject$p$1() { return this._data$p$0.get__normalizedSubject$i$0(); }, _getOrganizer$p$1: function $h_Appointment$_getOrganizer$p$1() { return this._data$p$0.get__organizer$i$0(); } } $h.AttachmentDetails=function $h_AttachmentDetails(data) { this.$$d__getIsInline$p$0=Function.createDelegate(this, this._getIsInline$p$0); this.$$d__getAttachmentType$p$0=Function.createDelegate(this, this._getAttachmentType$p$0); this.$$d__getSize$p$0=Function.createDelegate(this, this._getSize$p$0); this.$$d__getContentType$p$0=Function.createDelegate(this, this._getContentType$p$0); this.$$d__getName$p$0=Function.createDelegate(this, this._getName$p$0); this.$$d__getId$p$0=Function.createDelegate(this, this._getId$p$0); this._data$p$0=data; $h.InitialData._defineReadOnlyProperty$i(this, 'id', this.$$d__getId$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'name', this.$$d__getName$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'contentType', this.$$d__getContentType$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'size', this.$$d__getSize$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'attachmentType', this.$$d__getAttachmentType$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'isInline', this.$$d__getIsInline$p$0); } $h.AttachmentDetails.prototype={ _data$p$0: null, _getId$p$0: function $h_AttachmentDetails$_getId$p$0() { return this._data$p$0['id']; }, _getName$p$0: function $h_AttachmentDetails$_getName$p$0() { return this._data$p$0['name']; }, _getContentType$p$0: function $h_AttachmentDetails$_getContentType$p$0() { return this._data$p$0['contentType']; }, _getSize$p$0: function $h_AttachmentDetails$_getSize$p$0() { return this._data$p$0['size']; }, _getAttachmentType$p$0: function $h_AttachmentDetails$_getAttachmentType$p$0() { var response=this._data$p$0['attachmentType']; return (response < $h.AttachmentDetails._attachmentTypeMap$p.length) ? $h.AttachmentDetails._attachmentTypeMap$p[response] : Microsoft.Office.WebExtension.MailboxEnums.AttachmentType.File; }, _getIsInline$p$0: function $h_AttachmentDetails$_getIsInline$p$0() { return this._data$p$0['isInline']; } } $h.Contact=function $h_Contact(data) { this.$$d__getContactString$p$0=Function.createDelegate(this, this._getContactString$p$0); this.$$d__getAddresses$p$0=Function.createDelegate(this, this._getAddresses$p$0); this.$$d__getUrls$p$0=Function.createDelegate(this, this._getUrls$p$0); this.$$d__getEmailAddresses$p$0=Function.createDelegate(this, this._getEmailAddresses$p$0); this.$$d__getPhoneNumbers$p$0=Function.createDelegate(this, this._getPhoneNumbers$p$0); this.$$d__getBusinessName$p$0=Function.createDelegate(this, this._getBusinessName$p$0); this.$$d__getPersonName$p$0=Function.createDelegate(this, this._getPersonName$p$0); this._data$p$0=data; $h.InitialData._defineReadOnlyProperty$i(this, 'personName', this.$$d__getPersonName$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'businessName', this.$$d__getBusinessName$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'phoneNumbers', this.$$d__getPhoneNumbers$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'emailAddresses', this.$$d__getEmailAddresses$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'urls', this.$$d__getUrls$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'addresses', this.$$d__getAddresses$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'contactString', this.$$d__getContactString$p$0); } $h.Contact.prototype={ _data$p$0: null, _phoneNumbers$p$0: null, _getPersonName$p$0: function $h_Contact$_getPersonName$p$0() { return this._data$p$0['PersonName']; }, _getBusinessName$p$0: function $h_Contact$_getBusinessName$p$0() { return this._data$p$0['BusinessName']; }, _getAddresses$p$0: function $h_Contact$_getAddresses$p$0() { return $h.Entities._getExtractedStringProperty$i(this._data$p$0, 'Addresses'); }, _getEmailAddresses$p$0: function $h_Contact$_getEmailAddresses$p$0() { return $h.Entities._getExtractedStringProperty$i(this._data$p$0, 'EmailAddresses'); }, _getUrls$p$0: function $h_Contact$_getUrls$p$0() { return $h.Entities._getExtractedStringProperty$i(this._data$p$0, 'Urls'); }, _getPhoneNumbers$p$0: function $h_Contact$_getPhoneNumbers$p$0() { if (!this._phoneNumbers$p$0) { var $$t_1=this; this._phoneNumbers$p$0=$h.Entities._getExtractedObjects$i($h.PhoneNumber, this._data$p$0, 'PhoneNumbers', function(data) { return new $h.PhoneNumber(data); }); } return this._phoneNumbers$p$0; }, _getContactString$p$0: function $h_Contact$_getContactString$p$0() { return this._data$p$0['ContactString']; } } $h.CustomProperties=function $h_CustomProperties(data) { if ($h.ScriptHelpers.isNullOrUndefined(data)) { throw Error.argumentNull('data'); } this._data$p$0=data; } $h.CustomProperties.prototype={ _data$p$0: null, get: function $h_CustomProperties$get(name) { var value=this._data$p$0[name]; if (typeof(value)==='string') { var valueString=value; if (valueString.length > 6 && valueString.startsWith('Date(') && valueString.endsWith(')')) { var ticksString=valueString.substring(5, valueString.length - 1); var ticks=parseInt(ticksString); if (!isNaN(ticks)) { var dateTimeValue=new Date(ticks); if (dateTimeValue) { value=dateTimeValue; } } } } return value; }, set: function $h_CustomProperties$set(name, value) { if (OSF.OUtil.isDate(value)) { value='Date('+(value).getTime()+')'; } this._data$p$0[name]=value; }, remove: function $h_CustomProperties$remove(name) { delete this._data$p$0[name]; }, saveAsync: function $h_CustomProperties$saveAsync(callback, userContext) { var MaxCustomPropertiesLength=2500; if (JSON.stringify(this._data$p$0).length > MaxCustomPropertiesLength) { throw Error.argument(); } var saveCustomProperties=new $h._saveDictionaryRequest(callback, userContext); saveCustomProperties._sendRequest$i$0(4, 'SaveCustomProperties', { customProperties: this._data$p$0 }); } } $h.Diagnostics=function $h_Diagnostics(data, appName) { this.$$d__getOwaView$p$0=Function.createDelegate(this, this._getOwaView$p$0); this.$$d__getHostVersion$p$0=Function.createDelegate(this, this._getHostVersion$p$0); this.$$d__getHostName$p$0=Function.createDelegate(this, this._getHostName$p$0); this._data$p$0=data; this._appName$p$0=appName; $h.InitialData._defineReadOnlyProperty$i(this, 'hostName', this.$$d__getHostName$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'hostVersion', this.$$d__getHostVersion$p$0); if (64===this._appName$p$0) { $h.InitialData._defineReadOnlyProperty$i(this, 'OWAView', this.$$d__getOwaView$p$0); } } $h.Diagnostics.prototype={ _data$p$0: null, _appName$p$0: 0, _getHostName$p$0: function $h_Diagnostics$_getHostName$p$0() { if (8===this._appName$p$0) { return 'Outlook'; } else if (64===this._appName$p$0) { return 'OutlookWebApp'; } return null; }, _getHostVersion$p$0: function $h_Diagnostics$_getHostVersion$p$0() { return this._data$p$0.get__hostVersion$i$0(); }, _getOwaView$p$0: function $h_Diagnostics$_getOwaView$p$0() { return this._data$p$0.get__owaView$i$0(); } } $h.EmailAddressDetails=function $h_EmailAddressDetails(data) { this.$$d__getRecipientType$p$0=Function.createDelegate(this, this._getRecipientType$p$0); this.$$d__getAppointmentResponse$p$0=Function.createDelegate(this, this._getAppointmentResponse$p$0); this.$$d__getDisplayName$p$0=Function.createDelegate(this, this._getDisplayName$p$0); this.$$d__getEmailAddress$p$0=Function.createDelegate(this, this._getEmailAddress$p$0); this._data$p$0=data; $h.InitialData._defineReadOnlyProperty$i(this, 'emailAddress', this.$$d__getEmailAddress$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'displayName', this.$$d__getDisplayName$p$0); if ($h.ScriptHelpers.dictionaryContainsKey(data, 'appointmentResponse')) { $h.InitialData._defineReadOnlyProperty$i(this, 'appointmentResponse', this.$$d__getAppointmentResponse$p$0); } if ($h.ScriptHelpers.dictionaryContainsKey(data, 'recipientType')) { $h.InitialData._defineReadOnlyProperty$i(this, 'recipientType', this.$$d__getRecipientType$p$0); } } $h.EmailAddressDetails._createFromEmailUserDictionary$i=function $h_EmailAddressDetails$_createFromEmailUserDictionary$i(data) { var emailAddressDetailsDictionary={}; var displayName=data['Name']; var emailAddress=data['UserId']; emailAddressDetailsDictionary['name']=displayName || $h.EmailAddressDetails._emptyString$p; emailAddressDetailsDictionary['address']=emailAddress || $h.EmailAddressDetails._emptyString$p; return new $h.EmailAddressDetails(emailAddressDetailsDictionary); } $h.EmailAddressDetails.prototype={ _data$p$0: null, _getEmailAddress$p$0: function $h_EmailAddressDetails$_getEmailAddress$p$0() { return this._data$p$0['address']; }, _getDisplayName$p$0: function $h_EmailAddressDetails$_getDisplayName$p$0() { return this._data$p$0['name']; }, _getAppointmentResponse$p$0: function $h_EmailAddressDetails$_getAppointmentResponse$p$0() { var response=this._data$p$0['appointmentResponse']; return (response < $h.EmailAddressDetails._responseTypeMap$p.length) ? $h.EmailAddressDetails._responseTypeMap$p[response] : Microsoft.Office.WebExtension.MailboxEnums.ResponseType.None; }, _getRecipientType$p$0: function $h_EmailAddressDetails$_getRecipientType$p$0() { var response=this._data$p$0['recipientType']; return (response < $h.EmailAddressDetails._recipientTypeMap$p.length) ? $h.EmailAddressDetails._recipientTypeMap$p[response] : Microsoft.Office.WebExtension.MailboxEnums.RecipientType.Other; } } $h.Entities=function $h_Entities(data, filteredEntitiesData, timeSent, permissionLevel) { this.$$d__createMeetingSuggestion$p$0=Function.createDelegate(this, this._createMeetingSuggestion$p$0); this.$$d__getContacts$p$0=Function.createDelegate(this, this._getContacts$p$0); this.$$d__getPhoneNumbers$p$0=Function.createDelegate(this, this._getPhoneNumbers$p$0); this.$$d__getUrls$p$0=Function.createDelegate(this, this._getUrls$p$0); this.$$d__getEmailAddresses$p$0=Function.createDelegate(this, this._getEmailAddresses$p$0); this.$$d__getMeetingSuggestions$p$0=Function.createDelegate(this, this._getMeetingSuggestions$p$0); this.$$d__getTaskSuggestions$p$0=Function.createDelegate(this, this._getTaskSuggestions$p$0); this.$$d__getAddresses$p$0=Function.createDelegate(this, this._getAddresses$p$0); this._data$p$0=data || {}; this._filteredData$p$0=filteredEntitiesData || {}; this._dateTimeSent$p$0=timeSent; $h.InitialData._defineReadOnlyProperty$i(this, 'addresses', this.$$d__getAddresses$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'taskSuggestions', this.$$d__getTaskSuggestions$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'meetingSuggestions', this.$$d__getMeetingSuggestions$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'emailAddresses', this.$$d__getEmailAddresses$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'urls', this.$$d__getUrls$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'phoneNumbers', this.$$d__getPhoneNumbers$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'contacts', this.$$d__getContacts$p$0); this._permissionLevel$p$0=permissionLevel; } $h.Entities._getExtractedObjects$i=function $h_Entities$_getExtractedObjects$i(T, data, name, creator, removeDuplicates, stringPropertyName) { var results=null; var extractedObjects=data[name]; if (!extractedObjects) { return new Array(0); } if (removeDuplicates) { extractedObjects=$h.Entities._removeDuplicate$p(Object, extractedObjects, $h.Entities._entityDictionaryEquals$p, stringPropertyName); } results=new Array(extractedObjects.length); var count=0; for (var $$arr_9=extractedObjects, $$len_A=$$arr_9.length, $$idx_B=0; $$idx_B < $$len_A;++$$idx_B) { var extractedObject=$$arr_9[$$idx_B]; results[count++]=creator(extractedObject); } return results; } $h.Entities._getExtractedStringProperty$i=function $h_Entities$_getExtractedStringProperty$i(data, name, removeDuplicate) { var extractedProperties=data[name]; if (!extractedProperties) { return new Array(0); } if (removeDuplicate) { extractedProperties=$h.Entities._removeDuplicate$p(String, extractedProperties, $h.Entities._stringEquals$p, null); } return extractedProperties; } $h.Entities._createContact$p=function $h_Entities$_createContact$p(data) { return new $h.Contact(data); } $h.Entities._createTaskSuggestion$p=function $h_Entities$_createTaskSuggestion$p(data) { return new $h.TaskSuggestion(data); } $h.Entities._createPhoneNumber$p=function $h_Entities$_createPhoneNumber$p(data) { return new $h.PhoneNumber(data); } $h.Entities._entityDictionaryEquals$p=function $h_Entities$_entityDictionaryEquals$p(dictionary1, dictionary2, entityPropertyIdentifier) { if (dictionary1===dictionary2) { return true; } if (!dictionary1 || !dictionary2) { return false; } if (dictionary1[entityPropertyIdentifier]===dictionary2[entityPropertyIdentifier]) { return true; } return false; } $h.Entities._stringEquals$p=function $h_Entities$_stringEquals$p(string1, string2, entityProperty) { return string1===string2; } $h.Entities._removeDuplicate$p=function $h_Entities$_removeDuplicate$p(T, array, entityEquals, entityPropertyIdentifier) { for (var matchIndex1=array.length - 1; matchIndex1 >=0; matchIndex1--) { var removeMatch=false; for (var matchIndex2=matchIndex1 - 1; matchIndex2 >=0; matchIndex2--) { if (entityEquals(array[matchIndex1], array[matchIndex2], entityPropertyIdentifier)) { removeMatch=true; break; } } if (removeMatch) { Array.removeAt(array, matchIndex1); } } return array; } $h.Entities.prototype={ _dateTimeSent$p$0: null, _data$p$0: null, _filteredData$p$0: null, _filteredEntitiesCache$p$0: null, _permissionLevel$p$0: 0, _taskSuggestions$p$0: null, _meetingSuggestions$p$0: null, _phoneNumbers$p$0: null, _contacts$p$0: null, _addresses$p$0: null, _emailAddresses$p$0: null, _urls$p$0: null, _getByType$i$0: function $h_Entities$_getByType$i$0(entityType) { if (entityType===Microsoft.Office.WebExtension.MailboxEnums.EntityType.MeetingSuggestion) { return this._getMeetingSuggestions$p$0(); } else if (entityType===Microsoft.Office.WebExtension.MailboxEnums.EntityType.TaskSuggestion) { return this._getTaskSuggestions$p$0(); } else if (entityType===Microsoft.Office.WebExtension.MailboxEnums.EntityType.Address) { return this._getAddresses$p$0(); } else if (entityType===Microsoft.Office.WebExtension.MailboxEnums.EntityType.PhoneNumber) { return this._getPhoneNumbers$p$0(); } else if (entityType===Microsoft.Office.WebExtension.MailboxEnums.EntityType.EmailAddress) { return this._getEmailAddresses$p$0(); } else if (entityType===Microsoft.Office.WebExtension.MailboxEnums.EntityType.Url) { return this._getUrls$p$0(); } else if (entityType===Microsoft.Office.WebExtension.MailboxEnums.EntityType.Contact) { return this._getContacts$p$0(); } return null; }, _getFilteredEntitiesByName$i$0: function $h_Entities$_getFilteredEntitiesByName$i$0(name) { if (!this._filteredEntitiesCache$p$0) { this._filteredEntitiesCache$p$0={}; } if (!$h.ScriptHelpers.dictionaryContainsKey(this._filteredEntitiesCache$p$0, name)) { var found=false; for (var i=0; i < $h.Entities._allEntityKeys$p.length; i++) { var entityTypeKey=$h.Entities._allEntityKeys$p[i]; var perEntityTypeDictionary=this._filteredData$p$0[entityTypeKey]; if (!perEntityTypeDictionary) { continue; } if ($h.ScriptHelpers.dictionaryContainsKey(perEntityTypeDictionary, name)) { switch (entityTypeKey) { case 'EmailAddresses': case 'Urls': this._filteredEntitiesCache$p$0[name]=$h.Entities._getExtractedStringProperty$i(perEntityTypeDictionary, name); break; case 'Addresses': this._filteredEntitiesCache$p$0[name]=$h.Entities._getExtractedStringProperty$i(perEntityTypeDictionary, name, true); break; case 'PhoneNumbers': this._filteredEntitiesCache$p$0[name]=$h.Entities._getExtractedObjects$i($h.PhoneNumber, perEntityTypeDictionary, name, $h.Entities._createPhoneNumber$p, false, null); break; case 'TaskSuggestions': this._filteredEntitiesCache$p$0[name]=$h.Entities._getExtractedObjects$i($h.TaskSuggestion, perEntityTypeDictionary, name, $h.Entities._createTaskSuggestion$p, true, 'TaskString'); break; case 'MeetingSuggestions': this._filteredEntitiesCache$p$0[name]=$h.Entities._getExtractedObjects$i($h.MeetingSuggestion, perEntityTypeDictionary, name, this.$$d__createMeetingSuggestion$p$0, true, 'MeetingString'); break; case 'Contacts': this._filteredEntitiesCache$p$0[name]=$h.Entities._getExtractedObjects$i($h.Contact, perEntityTypeDictionary, name, $h.Entities._createContact$p, true, 'ContactString'); break; } found=true; break; } } if (!found) { this._filteredEntitiesCache$p$0[name]=null; } } return this._filteredEntitiesCache$p$0[name]; }, _createMeetingSuggestion$p$0: function $h_Entities$_createMeetingSuggestion$p$0(data) { return new $h.MeetingSuggestion(data, this._dateTimeSent$p$0); }, _getAddresses$p$0: function $h_Entities$_getAddresses$p$0() { if (!this._addresses$p$0) { this._addresses$p$0=$h.Entities._getExtractedStringProperty$i(this._data$p$0, 'Addresses', true); } return this._addresses$p$0; }, _getEmailAddresses$p$0: function $h_Entities$_getEmailAddresses$p$0() { OSF.DDA.OutlookAppOm._throwOnPropertyAccessForRestrictedPermission$i(this._permissionLevel$p$0); if (!this._emailAddresses$p$0) { this._emailAddresses$p$0=$h.Entities._getExtractedStringProperty$i(this._data$p$0, 'EmailAddresses', false); } return this._emailAddresses$p$0; }, _getUrls$p$0: function $h_Entities$_getUrls$p$0() { if (!this._urls$p$0) { this._urls$p$0=$h.Entities._getExtractedStringProperty$i(this._data$p$0, 'Urls', false); } return this._urls$p$0; }, _getPhoneNumbers$p$0: function $h_Entities$_getPhoneNumbers$p$0() { if (!this._phoneNumbers$p$0) { this._phoneNumbers$p$0=$h.Entities._getExtractedObjects$i($h.PhoneNumber, this._data$p$0, 'PhoneNumbers', $h.Entities._createPhoneNumber$p); } return this._phoneNumbers$p$0; }, _getTaskSuggestions$p$0: function $h_Entities$_getTaskSuggestions$p$0() { OSF.DDA.OutlookAppOm._throwOnPropertyAccessForRestrictedPermission$i(this._permissionLevel$p$0); if (!this._taskSuggestions$p$0) { this._taskSuggestions$p$0=$h.Entities._getExtractedObjects$i($h.TaskSuggestion, this._data$p$0, 'TaskSuggestions', $h.Entities._createTaskSuggestion$p, true, 'TaskString'); } return this._taskSuggestions$p$0; }, _getMeetingSuggestions$p$0: function $h_Entities$_getMeetingSuggestions$p$0() { OSF.DDA.OutlookAppOm._throwOnPropertyAccessForRestrictedPermission$i(this._permissionLevel$p$0); if (!this._meetingSuggestions$p$0) { this._meetingSuggestions$p$0=$h.Entities._getExtractedObjects$i($h.MeetingSuggestion, this._data$p$0, 'MeetingSuggestions', this.$$d__createMeetingSuggestion$p$0, true, 'MeetingString'); } return this._meetingSuggestions$p$0; }, _getContacts$p$0: function $h_Entities$_getContacts$p$0() { OSF.DDA.OutlookAppOm._throwOnPropertyAccessForRestrictedPermission$i(this._permissionLevel$p$0); if (!this._contacts$p$0) { this._contacts$p$0=$h.Entities._getExtractedObjects$i($h.Contact, this._data$p$0, 'Contacts', $h.Entities._createContact$p, true, 'ContactString'); } return this._contacts$p$0; } } $h.Item=function $h_Item(data) { this.$$d__createCustomProperties$i$0=Function.createDelegate(this, this._createCustomProperties$i$0); this.$$d__getAttachments$p$0=Function.createDelegate(this, this._getAttachments$p$0); this.$$d__getItemClass$p$0=Function.createDelegate(this, this._getItemClass$p$0); this.$$d__getItemId$p$0=Function.createDelegate(this, this._getItemId$p$0); this.$$d__getDateTimeModified$p$0=Function.createDelegate(this, this._getDateTimeModified$p$0); this.$$d__getDateTimeCreated$p$0=Function.createDelegate(this, this._getDateTimeCreated$p$0); this._data$p$0=data; $h.InitialData._defineReadOnlyProperty$i(this, 'dateTimeCreated', this.$$d__getDateTimeCreated$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'dateTimeModified', this.$$d__getDateTimeModified$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'itemId', this.$$d__getItemId$p$0); var $$t_1=this; $h.InitialData._defineReadOnlyProperty$i(this, 'itemType', function() { return $$t_1.getItemType(); }); $h.InitialData._defineReadOnlyProperty$i(this, 'itemClass', this.$$d__getItemClass$p$0); if (OSF.DDA.OutlookAppOm._instance$p.get__appName$i$0()===64) { $h.InitialData._defineReadOnlyProperty$i(this, 'attachments', this.$$d__getAttachments$p$0); } } $h.Item.prototype={ _data$p$0: null, loadCustomPropertiesAsync: function $h_Item$loadCustomPropertiesAsync(callback, userContext) { if ($h.ScriptHelpers.isNullOrUndefined(callback)) { throw Error.argumentNull('callback'); } var loadCustomProperties=new $h._loadDictionaryRequest(this.$$d__createCustomProperties$i$0, 'customProperties', callback, userContext); loadCustomProperties._sendRequest$i$0(3, 'LoadCustomProperties', {}); }, _createCustomProperties$i$0: function $h_Item$_createCustomProperties$i$0(data) { return new $h.CustomProperties(data); }, _getItemId$p$0: function $h_Item$_getItemId$p$0() { return this._data$p$0.get__itemId$i$0(); }, _getItemClass$p$0: function $h_Item$_getItemClass$p$0() { return this._data$p$0.get__itemClass$i$0(); }, _getDateTimeCreated$p$0: function $h_Item$_getDateTimeCreated$p$0() { return this._data$p$0.get__dateTimeCreated$i$0(); }, _getDateTimeModified$p$0: function $h_Item$_getDateTimeModified$p$0() { return this._data$p$0.get__dateTimeModified$i$0(); }, _getAttachments$p$0: function $h_Item$_getAttachments$p$0() { return this._data$p$0.get__attachments$i$0(); } } $h.MeetingRequest=function $h_MeetingRequest(data) { this.$$d__getRequiredAttendees$p$2=Function.createDelegate(this, this._getRequiredAttendees$p$2); this.$$d__getOptionalAttendees$p$2=Function.createDelegate(this, this._getOptionalAttendees$p$2); this.$$d__getLocation$p$2=Function.createDelegate(this, this._getLocation$p$2); this.$$d__getEnd$p$2=Function.createDelegate(this, this._getEnd$p$2); this.$$d__getStart$p$2=Function.createDelegate(this, this._getStart$p$2); $h.MeetingRequest.initializeBase(this, [ data ]); $h.InitialData._defineReadOnlyProperty$i(this, 'start', this.$$d__getStart$p$2); $h.InitialData._defineReadOnlyProperty$i(this, 'end', this.$$d__getEnd$p$2); $h.InitialData._defineReadOnlyProperty$i(this, 'location', this.$$d__getLocation$p$2); $h.InitialData._defineReadOnlyProperty$i(this, 'optionalAttendees', this.$$d__getOptionalAttendees$p$2); $h.InitialData._defineReadOnlyProperty$i(this, 'requiredAttendees', this.$$d__getRequiredAttendees$p$2); } $h.MeetingRequest.prototype={ _getStart$p$2: function $h_MeetingRequest$_getStart$p$2() { return this._data$p$0.get__start$i$0(); }, _getEnd$p$2: function $h_MeetingRequest$_getEnd$p$2() { return this._data$p$0.get__end$i$0(); }, _getLocation$p$2: function $h_MeetingRequest$_getLocation$p$2() { return this._data$p$0.get__location$i$0(); }, _getOptionalAttendees$p$2: function $h_MeetingRequest$_getOptionalAttendees$p$2() { return this._data$p$0.get__cc$i$0(); }, _getRequiredAttendees$p$2: function $h_MeetingRequest$_getRequiredAttendees$p$2() { return this._data$p$0.get__to$i$0(); } } $h.MeetingSuggestion=function $h_MeetingSuggestion(data, dateTimeSent) { this.$$d__getEndTime$p$0=Function.createDelegate(this, this._getEndTime$p$0); this.$$d__getStartTime$p$0=Function.createDelegate(this, this._getStartTime$p$0); this.$$d__getSubject$p$0=Function.createDelegate(this, this._getSubject$p$0); this.$$d__getLocation$p$0=Function.createDelegate(this, this._getLocation$p$0); this.$$d__getAttendees$p$0=Function.createDelegate(this, this._getAttendees$p$0); this.$$d__getMeetingString$p$0=Function.createDelegate(this, this._getMeetingString$p$0); this._data$p$0=data; this._dateTimeSent$p$0=dateTimeSent; $h.InitialData._defineReadOnlyProperty$i(this, 'meetingString', this.$$d__getMeetingString$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'attendees', this.$$d__getAttendees$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'location', this.$$d__getLocation$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'subject', this.$$d__getSubject$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'start', this.$$d__getStartTime$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'end', this.$$d__getEndTime$p$0); } $h.MeetingSuggestion.prototype={ _dateTimeSent$p$0: null, _data$p$0: null, _attendees$p$0: null, _getMeetingString$p$0: function $h_MeetingSuggestion$_getMeetingString$p$0() { return this._data$p$0['MeetingString']; }, _getLocation$p$0: function $h_MeetingSuggestion$_getLocation$p$0() { return this._data$p$0['Location']; }, _getSubject$p$0: function $h_MeetingSuggestion$_getSubject$p$0() { return this._data$p$0['Subject']; }, _getStartTime$p$0: function $h_MeetingSuggestion$_getStartTime$p$0() { var time=this._createDateTimeFromParameter$p$0('StartTime'); var resolvedTime=$h.MeetingSuggestionTimeDecoder.resolve(time, this._dateTimeSent$p$0); if (resolvedTime.getTime() !==time.getTime()) { return OSF.DDA.OutlookAppOm._instance$p.convertToUtcClientTime(OSF.DDA.OutlookAppOm._instance$p._dateToDictionary$i$0(resolvedTime)); } return time; }, _getEndTime$p$0: function $h_MeetingSuggestion$_getEndTime$p$0() { var time=this._createDateTimeFromParameter$p$0('EndTime'); var resolvedTime=$h.MeetingSuggestionTimeDecoder.resolve(time, this._dateTimeSent$p$0); if (resolvedTime.getTime() !==time.getTime()) { return OSF.DDA.OutlookAppOm._instance$p.convertToUtcClientTime(OSF.DDA.OutlookAppOm._instance$p._dateToDictionary$i$0(resolvedTime)); } return time; }, _createDateTimeFromParameter$p$0: function $h_MeetingSuggestion$_createDateTimeFromParameter$p$0(keyName) { var dateTimeString=this._data$p$0[keyName]; if (!dateTimeString) { return null; } return new Date(dateTimeString); }, _getAttendees$p$0: function $h_MeetingSuggestion$_getAttendees$p$0() { if (!this._attendees$p$0) { var $$t_1=this; this._attendees$p$0=$h.Entities._getExtractedObjects$i($h.EmailAddressDetails, this._data$p$0, 'Attendees', function(data) { return $h.EmailAddressDetails._createFromEmailUserDictionary$i(data); }); } return this._attendees$p$0; } } $h.MeetingSuggestionTimeDecoder=function $h_MeetingSuggestionTimeDecoder() { } $h.MeetingSuggestionTimeDecoder.resolve=function $h_MeetingSuggestionTimeDecoder$resolve(inTime, sentTime) { if (!sentTime) { return inTime; } try { var tod; var outDate; var extractedDate; var sentDate=new Date(sentTime.getFullYear(), sentTime.getMonth(), sentTime.getDate(), 0, 0, 0, 0); var $$t_7, $$t_8, $$t_9; if (!(($$t_9=$h.MeetingSuggestionTimeDecoder._decode$p(inTime, ($$t_7={'val': extractedDate}), ($$t_8={'val': tod}))), extractedDate=$$t_7.val, tod=$$t_8.val, $$t_9)) { return inTime; } else { if ($h._preciseDate.isInstanceOfType(extractedDate)) { outDate=$h.MeetingSuggestionTimeDecoder._resolvePreciseDate$p(sentDate, extractedDate); } else { if ($h._relativeDate.isInstanceOfType(extractedDate)) { outDate=$h.MeetingSuggestionTimeDecoder._resolveRelativeDate$p(sentDate, extractedDate); } else { outDate=sentDate; } } if (isNaN(outDate.getTime())) { return sentTime; } outDate.setMilliseconds(outDate.getMilliseconds()+tod); return outDate; } } catch ($$e_6) { return sentTime; } } $h.MeetingSuggestionTimeDecoder._isNullOrUndefined$i=function $h_MeetingSuggestionTimeDecoder$_isNullOrUndefined$i(value) { return null===value || value===undefined; } $h.MeetingSuggestionTimeDecoder._resolvePreciseDate$p=function $h_MeetingSuggestionTimeDecoder$_resolvePreciseDate$p(sentDate, precise) { var year=precise._year$i$1; var month=(!precise._month$i$1) ? sentDate.getMonth() : precise._month$i$1 - 1; var day=precise._day$i$1; if (!day) { return sentDate; } var candidate; if ($h.MeetingSuggestionTimeDecoder._isNullOrUndefined$i(year)) { candidate=new Date(sentDate.getFullYear(), month, day); if (candidate.getTime() < sentDate.getTime()) { candidate=new Date(sentDate.getFullYear()+1, month, day); } } else { candidate=new Date((year < 50) ? 2000+year : 1900+year, month, day); } if (candidate.getMonth() !==month) { return sentDate; } return candidate; } $h.MeetingSuggestionTimeDecoder._resolveRelativeDate$p=function $h_MeetingSuggestionTimeDecoder$_resolveRelativeDate$p(sentDate, relative) { var date; switch (relative._unit$i$1) { case 0: date=new Date(sentDate.getFullYear(), sentDate.getMonth(), sentDate.getDate()); date.setDate(date.getDate()+relative._offset$i$1); return date; case 5: return $h.MeetingSuggestionTimeDecoder._findBestDateForWeekDate$p(sentDate, relative._offset$i$1, relative._tag$i$1); case 2: var days=1; switch (relative._modifier$i$1) { case 1: break; case 2: days=16; break; default: if (!relative._offset$i$1) { days=sentDate.getDate(); } break; } date=new Date(sentDate.getFullYear(), sentDate.getMonth(), days); date.setMonth(date.getMonth()+relative._offset$i$1); if (date.getTime() < sentDate.getTime()) { date.setDate(date.getDate()+sentDate.getDate() - 1); } return date; case 1: date=new Date(sentDate.getFullYear(), sentDate.getMonth(), sentDate.getDate()); date.setDate(sentDate.getDate()+(7 * relative._offset$i$1)); if (relative._modifier$i$1===1 || !relative._modifier$i$1) { date.setDate(date.getDate()+1 - date.getDay()); if (date.getTime() < sentDate.getTime()) { return sentDate; } return date; } else if (relative._modifier$i$1===2) { date.setDate(date.getDate()+5 - date.getDay()); return date; } break; case 4: return $h.MeetingSuggestionTimeDecoder._findBestDateForWeekOfMonthDate$p(sentDate, relative); case 3: if (relative._offset$i$1 > 0) { return new Date(sentDate.getFullYear()+relative._offset$i$1, 0, 1); } break; default: break; } return sentDate; } $h.MeetingSuggestionTimeDecoder._findBestDateForWeekDate$p=function $h_MeetingSuggestionTimeDecoder$_findBestDateForWeekDate$p(sentDate, offset, tag) { if (offset > -5 && offset < 5) { var dayOfWeek; var days; dayOfWeek=((tag+6) % 7)+1; days=(7 * offset)+(dayOfWeek - sentDate.getDay()); sentDate.setDate(sentDate.getDate()+days); return sentDate; } else { var days=(tag - sentDate.getDay()) % 7; if (days < 0) { days+=7; } sentDate.setDate(sentDate.getDate()+days); return sentDate; } } $h.MeetingSuggestionTimeDecoder._findBestDateForWeekOfMonthDate$p=function $h_MeetingSuggestionTimeDecoder$_findBestDateForWeekOfMonthDate$p(sentDate, relative) { var date; var firstDay; var newDate; date=sentDate; if (relative._tag$i$1 <=0 || relative._tag$i$1 > 12 || relative._offset$i$1 <=0 || relative._offset$i$1 > 5) { return sentDate; } var monthOffset=(12+relative._tag$i$1 - date.getMonth() - 1) % 12; firstDay=new Date(date.getFullYear(), date.getMonth()+monthOffset, 1); if (relative._modifier$i$1===1) { if (relative._offset$i$1===1 && firstDay.getDay() !==6 && firstDay.getDay() !==0) { return firstDay; } else { newDate=new Date(firstDay.getFullYear(), firstDay.getMonth(), firstDay.getDate()); newDate.setDate(newDate.getDate()+((7+(1 - firstDay.getDay())) % 7)); if (firstDay.getDay() !==6 && firstDay.getDay() !==0 && firstDay.getDay() !==1) { newDate.setDate(newDate.getDate() - 7); } newDate.setDate(newDate.getDate()+(7 * (relative._offset$i$1 - 1))); if (newDate.getMonth()+1 !==relative._tag$i$1) { return sentDate; } return newDate; } } else { newDate=new Date(firstDay.getFullYear(), firstDay.getMonth(), $h.MeetingSuggestionTimeDecoder._daysInMonth$p(firstDay.getMonth(), firstDay.getFullYear())); var offset=1 - newDate.getDay(); if (offset > 0) { offset=offset - 7; } newDate.setDate(newDate.getDate()+offset); newDate.setDate(newDate.getDate()+(7 * (1 - relative._offset$i$1))); if (newDate.getMonth()+1 !==relative._tag$i$1) { if (firstDay.getDay() !==6 && firstDay.getDay() !==0) { return firstDay; } else { return sentDate; } } else { return newDate; } } } $h.MeetingSuggestionTimeDecoder._decode$p=function $h_MeetingSuggestionTimeDecoder$_decode$p(inDate, date, time) { var DateValueMask=32767; date.val=null; time.val=0; if (!inDate) { return false; } time.val=$h.MeetingSuggestionTimeDecoder._getTimeOfDayInMillisecondsUTC$p(inDate); var inDateAtMidnight=inDate.getTime() - time.val; var value=(inDateAtMidnight - $h.MeetingSuggestionTimeDecoder._baseDate$p.getTime()) / 86400000; if (value < 0) { return false; } else if (value >=262144) { return false; } else { var type=value >> 15; value=value & DateValueMask; switch (type) { case 0: return $h.MeetingSuggestionTimeDecoder._decodePreciseDate$p(value, date); case 1: return $h.MeetingSuggestionTimeDecoder._decodeRelativeDate$p(value, date); default: return false; } } } $h.MeetingSuggestionTimeDecoder._decodePreciseDate$p=function $h_MeetingSuggestionTimeDecoder$_decodePreciseDate$p(value, date) { var c_SubTypeMask=7; var c_MonthMask=15; var c_DayMask=31; var c_YearMask=127; var year=null; var month=0; var day=0; date.val=null; var subType=(value >> 12) & c_SubTypeMask; if ((subType & 4)===4) { year=(value >> 5) & c_YearMask; if ((subType & 2)===2) { if ((subType & 1)===1) { return false; } month=(value >> 1) & c_MonthMask; } } else { if ((subType & 2)===2) { month=(value >> 8) & c_MonthMask; } if ((subType & 1)===1) { day=(value >> 3) & c_DayMask; } } date.val=new $h._preciseDate(day, month, year); return true; } $h.MeetingSuggestionTimeDecoder._decodeRelativeDate$p=function $h_MeetingSuggestionTimeDecoder$_decodeRelativeDate$p(value, date) { var TagMask=15; var OffsetMask=63; var UnitMask=7; var ModifierMask=3; var tag=value & TagMask; value >>=4; var offset=$h.MeetingSuggestionTimeDecoder._fromComplement$p(value & OffsetMask, 6); value >>=6; var unit=value & UnitMask; value >>=3; var modifier=value & ModifierMask; try { date.val=new $h._relativeDate(modifier, offset, unit, tag); return true; } catch ($$e_A) { date.val=null; return false; } } $h.MeetingSuggestionTimeDecoder._fromComplement$p=function $h_MeetingSuggestionTimeDecoder$_fromComplement$p(value, n) { var signed=1 << (n - 1); var mask=(1 << n) - 1; if ((value & signed)===signed) { return -((value ^ mask)+1); } else { return value; } } $h.MeetingSuggestionTimeDecoder._daysInMonth$p=function $h_MeetingSuggestionTimeDecoder$_daysInMonth$p(month, year) { return 32 - new Date(year, month, 32).getDate(); } $h.MeetingSuggestionTimeDecoder._getTimeOfDayInMillisecondsUTC$p=function $h_MeetingSuggestionTimeDecoder$_getTimeOfDayInMillisecondsUTC$p(inputTime) { var timeOfDay=0; timeOfDay+=inputTime.getUTCHours() * 3600; timeOfDay+=inputTime.getUTCMinutes() * 60; timeOfDay+=inputTime.getUTCSeconds(); timeOfDay *=1000; timeOfDay+=inputTime.getUTCMilliseconds(); return timeOfDay; } $h._extractedDate=function $h__extractedDate() { } $h._preciseDate=function $h__preciseDate(day, month, year) { $h._preciseDate.initializeBase(this); if (day < 0 || day > 31) { throw Error.argumentOutOfRange('day'); } if (month < 0 || month > 12) { throw Error.argumentOutOfRange('month'); } this._day$i$1=day; this._month$i$1=month; if (!$h.MeetingSuggestionTimeDecoder._isNullOrUndefined$i(year)) { if (!month && day) { throw Error.argument('Invalid arguments'); } if (year < 0 || year > 2099) { throw Error.argumentOutOfRange('year'); } this._year$i$1=year % 100; } else if (!this._month$i$1 && !this._day$i$1) { throw Error.argument('Invalid datetime'); } } $h._preciseDate.prototype={ _day$i$1: 0, _month$i$1: 0, _year$i$1: null } $h._relativeDate=function $h__relativeDate(modifier, offset, unit, tag) { $h._relativeDate.initializeBase(this); if (offset < -32 || offset > 31) { throw Error.argumentOutOfRange('offset'); } if (tag < 0 || tag > 15) { throw Error.argumentOutOfRange('tag'); } if (!unit && offset < 0) { throw Error.argument('unit & offset do not form a valid date'); } this._modifier$i$1=modifier; this._offset$i$1=offset; this._unit$i$1=unit; this._tag$i$1=tag; } $h._relativeDate.prototype={ _modifier$i$1: 0, _offset$i$1: 0, _unit$i$1: 0, _tag$i$1: 0 } $h.Message=function $h_Message(dataDictionary) { this.$$d__getConversationId$p$1=Function.createDelegate(this, this._getConversationId$p$1); this.$$d__getInternetMessageId$p$1=Function.createDelegate(this, this._getInternetMessageId$p$1); this.$$d__getCc$p$1=Function.createDelegate(this, this._getCc$p$1); this.$$d__getTo$p$1=Function.createDelegate(this, this._getTo$p$1); this.$$d__getFrom$p$1=Function.createDelegate(this, this._getFrom$p$1); this.$$d__getSender$p$1=Function.createDelegate(this, this._getSender$p$1); this.$$d__getNormalizedSubject$p$1=Function.createDelegate(this, this._getNormalizedSubject$p$1); this.$$d__getSubject$p$1=Function.createDelegate(this, this._getSubject$p$1); $h.Message.initializeBase(this, [ dataDictionary ]); $h.InitialData._defineReadOnlyProperty$i(this, 'subject', this.$$d__getSubject$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'normalizedSubject', this.$$d__getNormalizedSubject$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'sender', this.$$d__getSender$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'from', this.$$d__getFrom$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'to', this.$$d__getTo$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'cc', this.$$d__getCc$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'internetMessageId', this.$$d__getInternetMessageId$p$1); $h.InitialData._defineReadOnlyProperty$i(this, 'conversationId', this.$$d__getConversationId$p$1); } $h.Message.prototype={ getEntities: function $h_Message$getEntities() { return this._data$p$0._getEntities$i$0(); }, getEntitiesByType: function $h_Message$getEntitiesByType(entityType) { return this._data$p$0._getEntitiesByType$i$0(entityType); }, getFilteredEntitiesByName: function $h_Message$getFilteredEntitiesByName(name) { return this._data$p$0._getFilteredEntitiesByName$i$0(name); }, getRegExMatches: function $h_Message$getRegExMatches() { OSF.DDA.OutlookAppOm._throwOnMethodCallForInsufficientPermission$i(this._data$p$0.get__permissionLevel$i$0(), 1, 'getRegExMatches'); return this._data$p$0._getRegExMatches$i$0(); }, getRegExMatchesByName: function $h_Message$getRegExMatchesByName(name) { OSF.DDA.OutlookAppOm._throwOnMethodCallForInsufficientPermission$i(this._data$p$0.get__permissionLevel$i$0(), 1, 'getRegExMatchesByName'); return this._data$p$0._getRegExMatchesByName$i$0(name); }, displayReplyForm: function $h_Message$displayReplyForm(htmlBody) { OSF.DDA.OutlookAppOm._instance$p._displayReplyForm$i$0(htmlBody); }, displayReplyAllForm: function $h_Message$displayReplyAllForm(htmlBody) { OSF.DDA.OutlookAppOm._instance$p._displayReplyAllForm$i$0(htmlBody); }, getItemType: function $h_Message$getItemType() { return Microsoft.Office.WebExtension.MailboxEnums.ItemType.Message; }, _getSubject$p$1: function $h_Message$_getSubject$p$1() { return this._data$p$0.get__subject$i$0(); }, _getNormalizedSubject$p$1: function $h_Message$_getNormalizedSubject$p$1() { return this._data$p$0.get__normalizedSubject$i$0(); }, _getSender$p$1: function $h_Message$_getSender$p$1() { return this._data$p$0.get__sender$i$0(); }, _getFrom$p$1: function $h_Message$_getFrom$p$1() { return this._data$p$0.get__from$i$0(); }, _getTo$p$1: function $h_Message$_getTo$p$1() { return this._data$p$0.get__to$i$0(); }, _getCc$p$1: function $h_Message$_getCc$p$1() { return this._data$p$0.get__cc$i$0(); }, _getInternetMessageId$p$1: function $h_Message$_getInternetMessageId$p$1() { return this._data$p$0.get__internetMessageId$i$0(); }, _getConversationId$p$1: function $h_Message$_getConversationId$p$1() { return this._data$p$0.get__conversationId$i$0(); } } $h.PhoneNumber=function $h_PhoneNumber(data) { this.$$d__getPhoneType$p$0=Function.createDelegate(this, this._getPhoneType$p$0); this.$$d__getOriginalPhoneString$p$0=Function.createDelegate(this, this._getOriginalPhoneString$p$0); this.$$d__getPhoneString$p$0=Function.createDelegate(this, this._getPhoneString$p$0); this._data$p$0=data; $h.InitialData._defineReadOnlyProperty$i(this, 'phoneString', this.$$d__getPhoneString$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'originalPhoneString', this.$$d__getOriginalPhoneString$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'type', this.$$d__getPhoneType$p$0); } $h.PhoneNumber.prototype={ _data$p$0: null, _getPhoneString$p$0: function $h_PhoneNumber$_getPhoneString$p$0() { return this._data$p$0['PhoneString']; }, _getOriginalPhoneString$p$0: function $h_PhoneNumber$_getOriginalPhoneString$p$0() { return this._data$p$0['OriginalPhoneString']; }, _getPhoneType$p$0: function $h_PhoneNumber$_getPhoneType$p$0() { return this._data$p$0['Type']; } } $h.TaskSuggestion=function $h_TaskSuggestion(data) { this.$$d__getAssignees$p$0=Function.createDelegate(this, this._getAssignees$p$0); this.$$d__getTaskString$p$0=Function.createDelegate(this, this._getTaskString$p$0); this._data$p$0=data; $h.InitialData._defineReadOnlyProperty$i(this, 'taskString', this.$$d__getTaskString$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'assignees', this.$$d__getAssignees$p$0); } $h.TaskSuggestion.prototype={ _data$p$0: null, _assignees$p$0: null, _getTaskString$p$0: function $h_TaskSuggestion$_getTaskString$p$0() { return this._data$p$0['TaskString']; }, _getAssignees$p$0: function $h_TaskSuggestion$_getAssignees$p$0() { if (!this._assignees$p$0) { var $$t_1=this; this._assignees$p$0=$h.Entities._getExtractedObjects$i($h.EmailAddressDetails, this._data$p$0, 'Assignees', function(data) { return $h.EmailAddressDetails._createFromEmailUserDictionary$i(data); }); } return this._assignees$p$0; } } $h.UserProfile=function $h_UserProfile(data) { this.$$d__getTimeZone$p$0=Function.createDelegate(this, this._getTimeZone$p$0); this.$$d__getEmailAddress$p$0=Function.createDelegate(this, this._getEmailAddress$p$0); this.$$d__getDisplayName$p$0=Function.createDelegate(this, this._getDisplayName$p$0); this._data$p$0=data; $h.InitialData._defineReadOnlyProperty$i(this, 'displayName', this.$$d__getDisplayName$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'emailAddress', this.$$d__getEmailAddress$p$0); $h.InitialData._defineReadOnlyProperty$i(this, 'timeZone', this.$$d__getTimeZone$p$0); } $h.UserProfile.prototype={ _data$p$0: null, _getDisplayName$p$0: function $h_UserProfile$_getDisplayName$p$0() { return this._data$p$0.get__userDisplayName$i$0(); }, _getEmailAddress$p$0: function $h_UserProfile$_getEmailAddress$p$0() { return this._data$p$0.get__userEmailAddress$i$0(); }, _getTimeZone$p$0: function $h_UserProfile$_getTimeZone$p$0() { return this._data$p$0.get__userTimeZone$i$0(); } } $h.RequestState=function() {} $h.RequestState.prototype={ unsent: 0, opened: 1, headersReceived: 2, loading: 3, done: 4 } $h.RequestState.registerEnum('$h.RequestState', false); $h.EwsRequest=function $h_EwsRequest(userContext) { this.readyState=1; $h.EwsRequest.initializeBase(this, [ userContext ]); } $h.EwsRequest.prototype={ status: 0, statusText: null, onreadystatechange: null, responseText: null, get__statusCode$i$1: function $h_EwsRequest$get__statusCode$i$1() { return this.status; }, set__statusCode$i$1: function $h_EwsRequest$set__statusCode$i$1(value) { this.status=value; return value; }, get__statusDescription$i$1: function $h_EwsRequest$get__statusDescription$i$1() { return this.statusText; }, set__statusDescription$i$1: function $h_EwsRequest$set__statusDescription$i$1(value) { this.statusText=value; return value; }, get__requestState$i$1: function $h_EwsRequest$get__requestState$i$1() { return this.readyState; }, set__requestState$i$1: function $h_EwsRequest$set__requestState$i$1(value) { this.readyState=value; return value; }, get__response$i$1: function $h_EwsRequest$get__response$i$1() { return this.responseText; }, set__response$i$1: function $h_EwsRequest$set__response$i$1(value) { this.responseText=value; return value; }, send: function $h_EwsRequest$send(data) { this._checkSendConditions$i$1(); if ($h.ScriptHelpers.isNullOrUndefined(data)) { this._throwInvalidStateException$i$1(); } this._sendRequest$i$0(5, 'EwsRequest', { body: data }); }, _callOnReadyStateChangeCallback$i$1: function $h_EwsRequest$_callOnReadyStateChangeCallback$i$1() { if (!$h.ScriptHelpers.isNullOrUndefined(this.onreadystatechange)) { this.onreadystatechange(); } }, _parseExtraResponseData$i$1: function $h_EwsRequest$_parseExtraResponseData$i$1(response) { } } $h.InitialData=function $h_InitialData(data) { this._data$p$0=data; } $h.InitialData._defineReadOnlyProperty$i=function $h_InitialData$_defineReadOnlyProperty$i(o, methodName, getter) { var propertyDescriptor={ get: getter, configurable: false }; Object.defineProperty(o, methodName, propertyDescriptor); } $h.InitialData.prototype={ _toRecipients$p$0: null, _ccRecipients$p$0: null, _attachments$p$0: null, _resources$p$0: null, _entities$p$0: null, _data$p$0: null, get__permissionLevel$i$0: function $h_InitialData$get__permissionLevel$i$0() { var permissionLevel=this._data$p$0['permissionLevel']; return (!$h.ScriptHelpers.isUndefined(permissionLevel)) ? permissionLevel : 0; }, get__itemId$i$0: function $h_InitialData$get__itemId$i$0() { return this._data$p$0['id']; }, get__itemClass$i$0: function $h_InitialData$get__itemClass$i$0() { return this._data$p$0['itemClass']; }, get__dateTimeCreated$i$0: function $h_InitialData$get__dateTimeCreated$i$0() { return new Date(this._data$p$0['dateTimeCreated']); }, get__dateTimeModified$i$0: function $h_InitialData$get__dateTimeModified$i$0() { return new Date(this._data$p$0['dateTimeModified']); }, get__dateTimeSent$i$0: function $h_InitialData$get__dateTimeSent$i$0() { return new Date(this._data$p$0['dateTimeSent']); }, get__subject$i$0: function $h_InitialData$get__subject$i$0() { return this._data$p$0['subject']; }, get__normalizedSubject$i$0: function $h_InitialData$get__normalizedSubject$i$0() { return this._data$p$0['normalizedSubject']; }, get__internetMessageId$i$0: function $h_InitialData$get__internetMessageId$i$0() { return this._data$p$0['internetMessageId']; }, get__conversationId$i$0: function $h_InitialData$get__conversationId$i$0() { return this._data$p$0['conversationId']; }, get__sender$i$0: function $h_InitialData$get__sender$i$0() { this._throwOnRestrictedPermissionLevel$p$0(); var sender=this._data$p$0['sender']; return ($h.ScriptHelpers.isNullOrUndefined(sender)) ? null : new $h.EmailAddressDetails(sender); }, get__from$i$0: function $h_InitialData$get__from$i$0() { this._throwOnRestrictedPermissionLevel$p$0(); var from=this._data$p$0['from']; return ($h.ScriptHelpers.isNullOrUndefined(from)) ? null : new $h.EmailAddressDetails(from); }, get__to$i$0: function $h_InitialData$get__to$i$0() { this._throwOnRestrictedPermissionLevel$p$0(); if (null===this._toRecipients$p$0) { this._toRecipients$p$0=this._createEmailAddressDetails$p$0('to'); } return this._toRecipients$p$0; }, get__cc$i$0: function $h_InitialData$get__cc$i$0() { this._throwOnRestrictedPermissionLevel$p$0(); if (null===this._ccRecipients$p$0) { this._ccRecipients$p$0=this._createEmailAddressDetails$p$0('cc'); } return this._ccRecipients$p$0; }, get__attachments$i$0: function $h_InitialData$get__attachments$i$0() { this._throwOnRestrictedPermissionLevel$p$0(); if (null===this._attachments$p$0) { this._attachments$p$0=this._createAttachmentDetails$p$0(); } return this._attachments$p$0; }, get__ewsUrl$i$0: function $h_InitialData$get__ewsUrl$i$0() { return this._data$p$0['ewsUrl']; }, get__start$i$0: function $h_InitialData$get__start$i$0() { return new Date(this._data$p$0['start']); }, get__end$i$0: function $h_InitialData$get__end$i$0() { return new Date(this._data$p$0['end']); }, get__location$i$0: function $h_InitialData$get__location$i$0() { return this._data$p$0['location']; }, get__resources$i$0: function $h_InitialData$get__resources$i$0() { this._throwOnRestrictedPermissionLevel$p$0(); if (null===this._resources$p$0) { this._resources$p$0=this._createEmailAddressDetails$p$0('resources'); } return this._resources$p$0; }, get__organizer$i$0: function $h_InitialData$get__organizer$i$0() { this._throwOnRestrictedPermissionLevel$p$0(); var organizer=this._data$p$0['organizer']; return ($h.ScriptHelpers.isNullOrUndefined(organizer)) ? null : new $h.EmailAddressDetails(organizer); }, get__userDisplayName$i$0: function $h_InitialData$get__userDisplayName$i$0() { return this._data$p$0['userDisplayName']; }, get__userEmailAddress$i$0: function $h_InitialData$get__userEmailAddress$i$0() { return this._data$p$0['userEmailAddress']; }, get__userTimeZone$i$0: function $h_InitialData$get__userTimeZone$i$0() { return this._data$p$0['userTimeZone']; }, get__timeZoneOffsets$i$0: function $h_InitialData$get__timeZoneOffsets$i$0() { return this._data$p$0['timeZoneOffsets']; }, get__hostVersion$i$0: function $h_InitialData$get__hostVersion$i$0() { return this._data$p$0['hostVersion']; }, get__owaView$i$0: function $h_InitialData$get__owaView$i$0() { return this._data$p$0['owaView']; }, _getEntities$i$0: function $h_InitialData$_getEntities$i$0() { if (!this._entities$p$0) { this._entities$p$0=new $h.Entities(this._data$p$0['entities'], this._data$p$0['filteredEntities'], this.get__dateTimeSent$i$0(), this.get__permissionLevel$i$0()); } return this._entities$p$0; }, _getEntitiesByType$i$0: function $h_InitialData$_getEntitiesByType$i$0(entityType) { var entites=this._getEntities$i$0(); return entites._getByType$i$0(entityType); }, _getFilteredEntitiesByName$i$0: function $h_InitialData$_getFilteredEntitiesByName$i$0(name) { var entities=this._getEntities$i$0(); return entities._getFilteredEntitiesByName$i$0(name); }, _getRegExMatches$i$0: function $h_InitialData$_getRegExMatches$i$0() { if (!this._data$p$0['regExMatches']) { return null; } return this._data$p$0['regExMatches']; }, _getRegExMatchesByName$i$0: function $h_InitialData$_getRegExMatchesByName$i$0(regexName) { var regexMatches=this._getRegExMatches$i$0(); if (!regexMatches || !regexMatches[regexName]) { return null; } return regexMatches[regexName]; }, _createEmailAddressDetails$p$0: function $h_InitialData$_createEmailAddressDetails$p$0(key) { var to=this._data$p$0[key]; if ($h.ScriptHelpers.isNullOrUndefined(to)) { return []; } var recipients=[]; for (var i=0; i < to.length; i++) { if (!$h.ScriptHelpers.isNullOrUndefined(to[i])) { recipients[i]=new $h.EmailAddressDetails(to[i]); } } return recipients; }, _createAttachmentDetails$p$0: function $h_InitialData$_createAttachmentDetails$p$0() { var attachments=this._data$p$0['attachments']; if ($h.ScriptHelpers.isNullOrUndefined(attachments)) { return []; } var attachmentDetails=[]; for (var i=0; i < attachments.length; i++) { if (!$h.ScriptHelpers.isNullOrUndefined(attachments[i])) { attachmentDetails[i]=new $h.AttachmentDetails(attachments[i]); } } return attachmentDetails; }, _throwOnRestrictedPermissionLevel$p$0: function $h_InitialData$_throwOnRestrictedPermissionLevel$p$0() { OSF.DDA.OutlookAppOm._throwOnPropertyAccessForRestrictedPermission$i(this.get__permissionLevel$i$0()); } } $h._loadDictionaryRequest=function $h__loadDictionaryRequest(createResultObject, dictionaryName, callback, userContext) { $h._loadDictionaryRequest.initializeBase(this, [ userContext ]); this._createResultObject$p$1=createResultObject; this._dictionaryName$p$1=dictionaryName; this._callback$p$1=callback; } $h._loadDictionaryRequest.prototype={ _dictionaryName$p$1: null, _createResultObject$p$1: null, _callback$p$1: null, handleResponse: function $h__loadDictionaryRequest$handleResponse(response) { if (response['wasSuccessful']) { var value=response[this._dictionaryName$p$1]; var responseData=JSON.parse(value); this.createAsyncResult(this._createResultObject$p$1(responseData), 0, null); } else { this.createAsyncResult(null, 1, response['errorMessage']); } this._callback$p$1(this._asyncResult$p$0); } } $h.ProxyRequestBase=function $h_ProxyRequestBase(userContext) { $h.ProxyRequestBase.initializeBase(this, [ userContext ]); } $h.ProxyRequestBase.prototype={ handleResponse: function $h_ProxyRequestBase$handleResponse(response) { if (!(response['wasProxySuccessful'])) { this.set__statusCode$i$1(500); this.set__statusDescription$i$1('Error'); var errorMessage=response['errorMessage']; this.set__response$i$1(errorMessage); this.createAsyncResult(null, 1, errorMessage); } else { this.set__statusCode$i$1(response['statusCode']); this.set__statusDescription$i$1(response['statusDescription']); this.set__response$i$1(response['body']); this.createAsyncResult(this.get__response$i$1(), 0, null); } this._parseExtraResponseData$i$1(response); this._cycleReadyStateFromHeadersReceivedToLoadingToDone$i$1(); }, _throwInvalidStateException$i$1: function $h_ProxyRequestBase$_throwInvalidStateException$i$1() { throw Error.create('DOMException', { code: 11, message: 'INVALID_STATE_ERR' }); }, _cycleReadyStateFromHeadersReceivedToLoadingToDone$i$1: function $h_ProxyRequestBase$_cycleReadyStateFromHeadersReceivedToLoadingToDone$i$1() { var $$t_0=this; this._changeReadyState$i$1(2, function() { $$t_0._changeReadyState$i$1(3, function() { $$t_0._changeReadyState$i$1(4, null); }); }); }, _changeReadyState$i$1: function $h_ProxyRequestBase$_changeReadyState$i$1(state, nextStep) { this.set__requestState$i$1(state); var $$t_2=this; window.setTimeout(function() { try { $$t_2._callOnReadyStateChangeCallback$i$1(); } finally { if (!$h.ScriptHelpers.isNullOrUndefined(nextStep)) { nextStep(); } } }, 0); }, _checkSendConditions$i$1: function $h_ProxyRequestBase$_checkSendConditions$i$1() { if (this.get__requestState$i$1() !==1) { this._throwInvalidStateException$i$1(); } if (this._isSent$p$0) { this._throwInvalidStateException$i$1(); } } } $h.RequestBase=function $h_RequestBase(userContext) { this._userContext$p$0=userContext; } $h.RequestBase.prototype={ _isSent$p$0: false, _asyncResult$p$0: null, _userContext$p$0: null, _sendRequest$i$0: function $h_RequestBase$_sendRequest$i$0(dispid, methodName, dataToSend) { this._isSent$p$0=true; var $$t_5=this; OSF.DDA.OutlookAppOm._instance$p._invokeHostMethod$i$0(dispid, methodName, dataToSend, function(resultCode, response) { if (resultCode) { $$t_5.createAsyncResult(null, 1, String.format(_u.ExtensibilityStrings.l_InternalProtocolError_Text, resultCode)); } else { $$t_5.handleResponse(response); } }); }, createAsyncResult: function $h_RequestBase$createAsyncResult(value, errorCode, errorDescription) { this._asyncResult$p$0=OSF.DDA.OutlookAppOm._createAsyncResult$i(value, errorCode, errorDescription, this._userContext$p$0); } } $h._saveDictionaryRequest=function $h__saveDictionaryRequest(callback, userContext) { $h._saveDictionaryRequest.initializeBase(this, [ userContext ]); if (!$h.ScriptHelpers.isNullOrUndefined(callback)) { this._callback$p$1=callback; } } $h._saveDictionaryRequest.prototype={ _callback$p$1: null, handleResponse: function $h__saveDictionaryRequest$handleResponse(response) { if (response['wasSuccessful']) { this.createAsyncResult(null, 0, null); } else { this.createAsyncResult(null, 1, response['errorMessage']); } if (!$h.ScriptHelpers.isNullOrUndefined(this._callback$p$1)) { this._callback$p$1(this._asyncResult$p$0); } } } $h.ScriptHelpers=function $h_ScriptHelpers() { } $h.ScriptHelpers.isNull=function $h_ScriptHelpers$isNull(value) { return null===value; } $h.ScriptHelpers.isNullOrUndefined=function $h_ScriptHelpers$isNullOrUndefined(value) { return $h.ScriptHelpers.isNull(value) || $h.ScriptHelpers.isUndefined(value); } $h.ScriptHelpers.isUndefined=function $h_ScriptHelpers$isUndefined(value) { return value===undefined; } $h.ScriptHelpers.dictionaryContainsKey=function $h_ScriptHelpers$dictionaryContainsKey(obj, keyName) { return (Object.isInstanceOfType(obj)) ? keyName in obj : false; } OSF.DDA.OutlookAppOm.registerClass('OSF.DDA.OutlookAppOm'); OSF.DDA.Settings.registerClass('OSF.DDA.Settings'); $h.Item.registerClass('$h.Item'); $h.Appointment.registerClass('$h.Appointment', $h.Item); $h.AttachmentDetails.registerClass('$h.AttachmentDetails'); $h.Contact.registerClass('$h.Contact'); $h.CustomProperties.registerClass('$h.CustomProperties'); $h.Diagnostics.registerClass('$h.Diagnostics'); $h.EmailAddressDetails.registerClass('$h.EmailAddressDetails'); $h.Entities.registerClass('$h.Entities'); $h.Message.registerClass('$h.Message', $h.Item); $h.MeetingRequest.registerClass('$h.MeetingRequest', $h.Message); $h.MeetingSuggestion.registerClass('$h.MeetingSuggestion'); $h.MeetingSuggestionTimeDecoder.registerClass('$h.MeetingSuggestionTimeDecoder'); $h._extractedDate.registerClass('$h._extractedDate'); $h._preciseDate.registerClass('$h._preciseDate', $h._extractedDate); $h._relativeDate.registerClass('$h._relativeDate', $h._extractedDate); $h.PhoneNumber.registerClass('$h.PhoneNumber'); $h.TaskSuggestion.registerClass('$h.TaskSuggestion'); $h.UserProfile.registerClass('$h.UserProfile'); $h.RequestBase.registerClass('$h.RequestBase'); $h.ProxyRequestBase.registerClass('$h.ProxyRequestBase', $h.RequestBase); $h.EwsRequest.registerClass('$h.EwsRequest', $h.ProxyRequestBase); $h.InitialData.registerClass('$h.InitialData'); $h._loadDictionaryRequest.registerClass('$h._loadDictionaryRequest', $h.RequestBase); $h._saveDictionaryRequest.registerClass('$h._saveDictionaryRequest', $h.RequestBase); $h.ScriptHelpers.registerClass('$h.ScriptHelpers'); OSF.DDA.OutlookAppOm._maxRecipients$p=100; OSF.DDA.OutlookAppOm._maxSubjectLength$p=255; OSF.DDA.OutlookAppOm._maxBodyLength$p=32768; OSF.DDA.OutlookAppOm._maxLocationLength$p=255; OSF.DDA.OutlookAppOm._maxEwsRequestSize$p=1000000; OSF.DDA.OutlookAppOm._instance$p=null; $h.AttachmentDetails._attachmentTypeMap$p=[ Microsoft.Office.WebExtension.MailboxEnums.AttachmentType.File, Microsoft.Office.WebExtension.MailboxEnums.AttachmentType.Item ]; $h.Diagnostics.outlookAppName='Outlook'; $h.Diagnostics.outlookWebAppName='OutlookWebApp'; $h.EmailAddressDetails._emptyString$p=''; $h.EmailAddressDetails._responseTypeMap$p=[ Microsoft.Office.WebExtension.MailboxEnums.ResponseType.None, Microsoft.Office.WebExtension.MailboxEnums.ResponseType.Organizer, Microsoft.Office.WebExtension.MailboxEnums.ResponseType.Tentative, Microsoft.Office.WebExtension.MailboxEnums.ResponseType.Accepted, Microsoft.Office.WebExtension.MailboxEnums.ResponseType.Declined ]; $h.EmailAddressDetails._recipientTypeMap$p=[ Microsoft.Office.WebExtension.MailboxEnums.RecipientType.Other, Microsoft.Office.WebExtension.MailboxEnums.RecipientType.DistributionList, Microsoft.Office.WebExtension.MailboxEnums.RecipientType.User, Microsoft.Office.WebExtension.MailboxEnums.RecipientType.ExternalUser ]; $h.Entities._allEntityKeys$p=[ 'Addresses', 'EmailAddresses', 'Urls', 'PhoneNumbers', 'TaskSuggestions', 'MeetingSuggestions', 'Contacts' ]; $h.MeetingSuggestionTimeDecoder._baseDate$p=new Date('0001-01-01T00:00:00Z'); $h.ScriptHelpers.emptyString='';