@microsoft/office-js
Version:
Office JavaScript APIs
1,338 lines (1,336 loc) • 196 kB
JavaScript
/* Outlook specific API library */
/* Version: 15.0.4927.1000 */
/*
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",
FlightReservations: "flightReservations",
ParcelDeliveries: "parcelDeliveries"
};
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",
Cloud: "cloud"
};
Microsoft.Office.WebExtension.MailboxEnums.BodyType={
Text: "text",
Html: "html"
};
Microsoft.Office.WebExtension.MailboxEnums.ItemNotificationMessageType={
ProgressIndicator: "progressIndicator",
InformationalMessage: "informationalMessage",
ErrorMessage: "errorMessage"
};
Microsoft.Office.WebExtension.CoercionType={
Text: "text",
Html: "html"
};
Microsoft.Office.WebExtension.MailboxEnums.UserProfileType={
Office365: "office365",
OutlookCom: "outlookCom",
Enterprise: "enterprise"
};
Microsoft.Office.WebExtension.MailboxEnums.RestVersion={
v1_0: "v1.0",
v2_0: "v2.0",
Beta: "beta"
};
Type.registerNamespace("OSF.DDA");
var OSF=window.OSF || {};
OSF.DDA=OSF.DDA || {};
window["OSF"]["DDA"]["OutlookAppOm"]=OSF.DDA.OutlookAppOm=function(officeAppContext, targetWindow, appReadyCallback)
{
this.$$d__callAppReadyCallback$p$0=Function.createDelegate(this,this._callAppReadyCallback$p$0);
this.$$d_displayContactCardAsync=Function.createDelegate(this,this.displayContactCardAsync);
this.$$d_displayNewMessageFormApi=Function.createDelegate(this,this.displayNewMessageFormApi);
this.$$d__displayNewAppointmentFormApi$p$0=Function.createDelegate(this,this._displayNewAppointmentFormApi$p$0);
this.$$d_windowOpenOverrideHandler=Function.createDelegate(this,this.windowOpenOverrideHandler);
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);
window["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)
if(!officeAppContext["get_isDialog"]())
$$t_4.invokeHostMethod(1,null,$$t_4.$$d__getInitialDataResponseHandler$p$0);
else
window.setTimeout($$t_4.$$d__callAppReadyCallback$p$0,0)
};
if(this._areStringsLoaded$p$0())
stringLoadedCallback();
else
this._loadLocalizedScript$p$0(stringLoadedCallback)
};
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnPropertyAccessForRestrictedPermission$i=function(currentPermissionLevel)
{
if(!currentPermissionLevel)
throw Error.create(window["_u"]["ExtensibilityStrings"]["l_ElevatedPermissionNeeded_Text"]);
};
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnOutOfRange$i=function(value, minValue, maxValue, argumentName)
{
if(value < minValue || value > maxValue)
throw Error.argumentOutOfRange(argumentName);
};
window["OSF"]["DDA"]["OutlookAppOm"]._getHtmlBody$p=function(data)
{
var htmlBody="";
if("htmlBody" in data)
{
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidHtmlBody$p(data["htmlBody"]);
htmlBody=data["htmlBody"]
}
return htmlBody
};
window["OSF"]["DDA"]["OutlookAppOm"]._getAttachments$p=function(data)
{
var attachments=[];
if("attachments" in data)
{
attachments=data["attachments"];
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachmentsArray$p(attachments)
}
return attachments
};
window["OSF"]["DDA"]["OutlookAppOm"]._getOptionsAndCallback$p=function(data)
{
var args=[];
if("options" in data)
args[0]=data["options"];
if("callback" in data)
args[args.length]=data["callback"];
return args
};
window["OSF"]["DDA"]["OutlookAppOm"]._createAttachmentsDataForHost$p=function(attachments)
{
var attachmentsData=new Array(0);
if(Array.isInstanceOfType(attachments))
for(var i=0; i < attachments["length"]; i++)
if(Object.isInstanceOfType(attachments[i]))
{
var attachment=attachments[i];
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachment$p(attachment);
attachmentsData[i]=window["OSF"]["DDA"]["OutlookAppOm"]._createAttachmentData$p(attachment)
}
else
throw Error.argument("attachments");
return attachmentsData
};
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidHtmlBody$p=function(htmlBody)
{
if(!String.isInstanceOfType(htmlBody))
throw Error.argument("htmlBody");
if($h.ScriptHelpers.isNullOrUndefined(htmlBody))
throw Error.argument("htmlBody");
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnOutOfRange$i(htmlBody["length"],0,window["OSF"]["DDA"]["OutlookAppOm"].maxBodyLength,"htmlBody")
};
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachmentsArray$p=function(attachments)
{
if(!Array.isInstanceOfType(attachments))
throw Error.argument("attachments");
};
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachment$p=function(attachment)
{
if(!Object.isInstanceOfType(attachment))
throw Error.argument("attachments");
if(!("type" in attachment) || !("name" in attachment))
throw Error.argument("attachments");
if(!("url" in attachment || "itemId" in attachment))
throw Error.argument("attachments");
};
window["OSF"]["DDA"]["OutlookAppOm"]._createAttachmentData$p=function(attachment)
{
var attachmentData=null;
if(attachment["type"]==="file")
{
var url=attachment["url"];
var name=attachment["name"];
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachmentUrlOrName$p(url,name);
attachmentData=window["OSF"]["DDA"]["OutlookAppOm"]._createFileAttachmentData$p(url,name)
}
else if(attachment["type"]==="item")
{
var itemId=window["OSF"]["DDA"]["OutlookAppOm"].getItemIdBasedOnHost(attachment["itemId"]);
var name=attachment["name"];
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachmentItemIdOrName$p(itemId,name);
attachmentData=window["OSF"]["DDA"]["OutlookAppOm"]._createItemAttachmentData$p(itemId,name)
}
else
throw Error.argument("attachments");
return attachmentData
};
window["OSF"]["DDA"]["OutlookAppOm"]._createFileAttachmentData$p=function(url, name)
{
return["file",name,url]
};
window["OSF"]["DDA"]["OutlookAppOm"]._createItemAttachmentData$p=function(itemId, name)
{
return["item",name,itemId]
};
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachmentUrlOrName$p=function(url, name)
{
if(!String.isInstanceOfType(url) || !String.isInstanceOfType(name))
throw Error.argument("attachments");
if(url["length"] > 2048)
throw Error.argumentOutOfRange("attachments",url["length"],window["_u"]["ExtensibilityStrings"]["l_AttachmentUrlTooLong_Text"]);
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachmentName$p(name)
};
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachmentItemIdOrName$p=function(itemId, name)
{
if(!String.isInstanceOfType(itemId) || !String.isInstanceOfType(name))
throw Error.argument("attachments");
if(itemId["length"] > 200)
throw Error.argumentOutOfRange("attachments",itemId["length"],window["_u"]["ExtensibilityStrings"]["l_AttachmentItemIdTooLong_Text"]);
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachmentName$p(name)
};
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidAttachmentName$p=function(name)
{
if(name["length"] > 255)
throw Error.argumentOutOfRange("attachments",name["length"],window["_u"]["ExtensibilityStrings"]["l_AttachmentNameTooLong_Text"]);
};
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidRestVersion$p=function(restVersion)
{
if(!restVersion)
throw Error.argumentNull("restVersion");
if(restVersion !==window["Microsoft"]["Office"]["WebExtension"]["MailboxEnums"]["RestVersion"]["v1_0"] && restVersion !==window["Microsoft"]["Office"]["WebExtension"]["MailboxEnums"]["RestVersion"]["v2_0"] && restVersion !==window["Microsoft"]["Office"]["WebExtension"]["MailboxEnums"]["RestVersion"]["Beta"])
throw Error.argument("restVersion");
};
window["OSF"]["DDA"]["OutlookAppOm"].getItemIdBasedOnHost=function(itemId)
{
if(window["OSF"]["DDA"]["OutlookAppOm"]._instance$p._initialData$p$0 && window["OSF"]["DDA"]["OutlookAppOm"]._instance$p._initialData$p$0.get__isRestIdSupported$i$0())
return window["OSF"]["DDA"]["OutlookAppOm"]._instance$p["convertToRestId"](itemId,window["Microsoft"]["Office"]["WebExtension"]["MailboxEnums"]["RestVersion"]["v1_0"]);
return window["OSF"]["DDA"]["OutlookAppOm"]._instance$p["convertToEwsId"](itemId,window["Microsoft"]["Office"]["WebExtension"]["MailboxEnums"]["RestVersion"]["v1_0"])
};
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnArgumentType$p=function(value, expectedType, argumentName)
{
if(Object["getType"](value) !==expectedType)
throw Error.argumentType(argumentName);
};
window["OSF"]["DDA"]["OutlookAppOm"]._validateOptionalStringParameter$p=function(value, minLength, maxLength, name)
{
if($h.ScriptHelpers.isNullOrUndefined(value))
return;
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnArgumentType$p(value,String,name);
var stringValue=value;
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnOutOfRange$i(stringValue["length"],minLength,maxLength,name)
};
window["OSF"]["DDA"]["OutlookAppOm"]._convertToOutlookParameters$p=function(dispid, data)
{
var executeParameters=null;
switch(dispid)
{
case 1:
case 2:
case 12:
case 3:
case 14:
case 18:
case 26:
case 32:
case 41:
case 34:
break;
case 4:
var jsonProperty=window["JSON"]["stringify"](data["customProperties"]);
executeParameters=[jsonProperty];
break;
case 5:
executeParameters=[data["body"]];
break;
case 8:
case 9:
executeParameters=[data["itemId"]];
break;
case 7:
executeParameters=[window["OSF"]["DDA"]["OutlookAppOm"]._convertRecipientArrayParameterForOutlookForDisplayApi$p(data["requiredAttendees"]),window["OSF"]["DDA"]["OutlookAppOm"]._convertRecipientArrayParameterForOutlookForDisplayApi$p(data["optionalAttendees"]),data["start"],data["end"],data["location"],window["OSF"]["DDA"]["OutlookAppOm"]._convertRecipientArrayParameterForOutlookForDisplayApi$p(data["resources"]),data["subject"],data["body"]];
break;
case 44:
executeParameters=[window["OSF"]["DDA"]["OutlookAppOm"]._convertRecipientArrayParameterForOutlookForDisplayApi$p(data["toRecipients"]),window["OSF"]["DDA"]["OutlookAppOm"]._convertRecipientArrayParameterForOutlookForDisplayApi$p(data["ccRecipients"]),window["OSF"]["DDA"]["OutlookAppOm"]._convertRecipientArrayParameterForOutlookForDisplayApi$p(data["bccRecipients"]),data["subject"],data["htmlBody"],data["attachments"]];
break;
case 43:
executeParameters=[data["ewsIdOrEmail"]];
break;
case 40:
executeParameters=[data["extensionId"],data["consentState"]];
break;
case 11:
case 10:
executeParameters=[data["htmlBody"]];
break;
case 31:
case 30:
executeParameters=[data["htmlBody"],data["attachments"]];
break;
case 23:
case 13:
case 38:
case 29:
executeParameters=[data["data"],data["coercionType"]];
break;
case 37:
case 28:
executeParameters=[data["coercionType"]];
break;
case 17:
executeParameters=[data["subject"]];
break;
case 15:
executeParameters=[data["recipientField"]];
break;
case 22:
case 21:
executeParameters=[data["recipientField"],window["OSF"]["DDA"]["OutlookAppOm"]._convertComposeEmailDictionaryParameterForSetApi$p(data["recipientArray"])];
break;
case 19:
executeParameters=[data["itemId"],data["name"]];
break;
case 16:
executeParameters=[data["uri"],data["name"]];
break;
case 20:
executeParameters=[data["attachmentIndex"]];
break;
case 25:
executeParameters=[data["TimeProperty"],data["time"]];
break;
case 24:
executeParameters=[data["TimeProperty"]];
break;
case 27:
executeParameters=[data["location"]];
break;
case 33:
case 35:
executeParameters=[data["key"],data["type"],data["persistent"],data["message"],data["icon"]];
break;
case 36:
executeParameters=[data["key"]];
break;
default:
Sys.Debug.fail("Unexpected method dispid");
break
}
return executeParameters
};
window["OSF"]["DDA"]["OutlookAppOm"]._convertRecipientArrayParameterForOutlookForDisplayApi$p=function(array)
{
return array ? array["join"](";") : null
};
window["OSF"]["DDA"]["OutlookAppOm"]._convertComposeEmailDictionaryParameterForSetApi$p=function(recipients)
{
if(!recipients)
return null;
var results=new Array(recipients.length);
for(var i=0; i < recipients.length; i++)
results[i]=[recipients[i]["address"],recipients[i]["name"]];
return results
};
window["OSF"]["DDA"]["OutlookAppOm"]._validateAndNormalizeRecipientEmails$p=function(emailset, name)
{
if($h.ScriptHelpers.isNullOrUndefined(emailset))
return null;
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnArgumentType$p(emailset,Array,name);
var originalAttendees=emailset;
var updatedAttendees=null;
var normalizationNeeded=false;
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnOutOfRange$i(originalAttendees["length"],0,window["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];
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnArgumentType$p(updatedAttendees[i],String,String.format("{0}[{1}]",name,i))
}
else
window["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,
_clientEndPoint$p$0: null,
get_clientEndPoint: function()
{
if(!this._clientEndPoint$p$0)
this._clientEndPoint$p$0=window["OSF"]["_OfficeAppFactory"]["getClientEndPoint"]();
return this._clientEndPoint$p$0
},
set_clientEndPoint: function(value)
{
this._clientEndPoint$p$0=value;
return value
},
get_initialData: function()
{
return this._initialData$p$0
},
get__appName$i$0: function()
{
return this._officeAppContext$p$0["get_appName"]()
},
initialize: function(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 if(4===initialData[ItemTypeKey])
this._item$p$0=new $h.MessageCompose(this._initialData$p$0);
else if(5===initialData[ItemTypeKey])
this._item$p$0=new $h.AppointmentCompose(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"]());
this._initializeMethods$p$0();
$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);
$h.InitialData._defineReadOnlyProperty$i(this,"ewsUrl",this.$$d__getEwsUrl$p$0);
if(window["OSF"]["DDA"]["OutlookAppOm"]._instance$p.get__appName$i$0()===64)
if(this._initialData$p$0.get__overrideWindowOpen$i$0())
window.open=this.$$d_windowOpenOverrideHandler
},
windowOpenOverrideHandler: function(url, targetName, features, replace)
{
this.invokeHostMethod(403,{launchUrl: url},null)
},
makeEwsRequestAsync: function(data)
{
var args=[];
for(var $$pai_5=1; $$pai_5 < arguments.length;++$$pai_5)
args[$$pai_5 - 1]=arguments[$$pai_5];
if($h.ScriptHelpers.isNullOrUndefined(data))
throw Error.argumentNull("data");
if(data["length"] > window["OSF"]["DDA"]["OutlookAppOm"]._maxEwsRequestSize$p)
throw Error.argument("data",window["_u"]["ExtensibilityStrings"]["l_EwsRequestOversized_Text"]);
this._throwOnMethodCallForInsufficientPermission$i$0(3,"makeEwsRequestAsync");
var parameters=$h.CommonParameters.parse(args,true,true);
var ewsRequest=new $h.EwsRequest(parameters._asyncContext$p$0);
var $$t_4=this;
ewsRequest.onreadystatechange=function()
{
if(4===ewsRequest.get__requestState$i$1())
parameters._callback$p$0(ewsRequest._asyncResult$p$0)
};
ewsRequest.send(data)
},
recordDataPoint: function(data)
{
if($h.ScriptHelpers.isNullOrUndefined(data))
throw Error.argumentNull("data");
this.invokeHostMethod(402,data,null)
},
recordTrace: function(data)
{
if($h.ScriptHelpers.isNullOrUndefined(data))
throw Error.argumentNull("data");
this.invokeHostMethod(401,data,null)
},
trackCtq: function(data)
{
if($h.ScriptHelpers.isNullOrUndefined(data))
throw Error.argumentNull("data");
this.invokeHostMethod(400,data,null)
},
convertToLocalClientTime: function(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(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
},
convertToRestId: function(itemId, restVersion)
{
if(!itemId)
throw Error.argumentNull("itemId");
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidRestVersion$p(restVersion);
return itemId["replace"](new RegExp("[/]","g"),"-")["replace"](new RegExp("[+]","g"),"_")
},
convertToEwsId: function(itemId, restVersion)
{
if(!itemId)
throw Error.argumentNull("itemId");
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnInvalidRestVersion$p(restVersion);
return itemId["replace"](new RegExp("[-]","g"),"/")["replace"](new RegExp("[_]","g"),"+")
},
getUserIdentityTokenAsync: function()
{
var args=[];
for(var $$pai_2=0; $$pai_2 < arguments.length;++$$pai_2)
args[$$pai_2]=arguments[$$pai_2];
this._throwOnMethodCallForInsufficientPermission$i$0(1,"getUserIdentityTokenAsync");
var parameters=$h.CommonParameters.parse(args,true,true);
this._invokeGetTokenMethodAsync$p$0(2,"GetUserIdentityToken",parameters._callback$p$0,parameters._asyncContext$p$0)
},
getCallbackTokenAsync: function()
{
var args=[];
for(var $$pai_2=0; $$pai_2 < arguments.length;++$$pai_2)
args[$$pai_2]=arguments[$$pai_2];
this._throwOnMethodCallForInsufficientPermission$i$0(1,"getCallbackTokenAsync");
var parameters=$h.CommonParameters.parse(args,true,true);
this._invokeGetTokenMethodAsync$p$0(12,"GetCallbackToken",parameters._callback$p$0,parameters._asyncContext$p$0)
},
displayMessageForm: function(itemId)
{
if($h.ScriptHelpers.isNullOrUndefined(itemId))
throw Error.argumentNull("itemId");
this.invokeHostMethod(8,{itemId: window["OSF"]["DDA"]["OutlookAppOm"].getItemIdBasedOnHost(itemId)},null)
},
displayAppointmentForm: function(itemId)
{
if($h.ScriptHelpers.isNullOrUndefined(itemId))
throw Error.argumentNull("itemId");
this.invokeHostMethod(9,{itemId: window["OSF"]["DDA"]["OutlookAppOm"].getItemIdBasedOnHost(itemId)},null)
},
RegisterConsentAsync: function(consentState)
{
if(consentState !==2 && consentState !==1 && consentState)
throw Error.argumentOutOfRange("consentState");
var parameters={};
parameters["consentState"]=consentState["toString"]();
parameters["extensionId"]=this["GetExtensionId"]();
this.invokeHostMethod(40,parameters,null)
},
CloseApp: function()
{
this.invokeHostMethod(42,null,null)
},
GetIsRead: function()
{
return this._initialData$p$0.get__isRead$i$0()
},
GetEndNodeUrl: function()
{
return this._initialData$p$0.get__endNodeUrl$i$0()
},
GetConsentMetadata: function()
{
return this._initialData$p$0.get__consentMetadata$i$0()
},
GetEntryPointUrl: function()
{
return this._initialData$p$0.get__entryPointUrl$i$0()
},
GetMarketplaceContentMarket: function()
{
return this._initialData$p$0.get__marketplaceContentMarket$i$0()
},
GetMarketplaceAssetId: function()
{
return this._initialData$p$0.get__marketplaceAssetId$i$0()
},
GetExtensionId: function()
{
return this._initialData$p$0.get__extensionId$i$0()
},
createAsyncResult: function(value, errorCode, detailedErrorCode, userContext, errorMessage)
{
var initArgs={};
var errorArgs=null;
initArgs[window["OSF"]["DDA"]["AsyncResultEnum"]["Properties"]["Value"]]=value;
initArgs[window["OSF"]["DDA"]["AsyncResultEnum"]["Properties"]["Context"]]=userContext;
if(0 !==errorCode)
{
errorArgs={};
var errorProperties=$h.OutlookErrorManager.getErrorArgs(detailedErrorCode);
errorArgs[window["OSF"]["DDA"]["AsyncResultEnum"]["ErrorProperties"]["Name"]]=errorProperties["name"];
errorArgs[window["OSF"]["DDA"]["AsyncResultEnum"]["ErrorProperties"]["Message"]]=!errorMessage ? errorProperties["message"] : errorMessage;
errorArgs[window["OSF"]["DDA"]["AsyncResultEnum"]["ErrorProperties"]["Code"]]=detailedErrorCode
}
return new window["OSF"]["DDA"]["AsyncResult"](initArgs,errorArgs)
},
_throwOnMethodCallForInsufficientPermission$i$0: function(requiredPermissionLevel, methodName)
{
if(this._initialData$p$0._permissionLevel$p$0 < requiredPermissionLevel)
throw Error.create(String.format(window["_u"]["ExtensibilityStrings"]["l_ElevatedPermissionNeededForMethod_Text"],methodName));
},
_displayReplyForm$i$0: function(obj)
{
this._displayReplyFormHelper$p$0(obj,false)
},
_displayReplyAllForm$i$0: function(obj)
{
this._displayReplyFormHelper$p$0(obj,true)
},
_displayReplyFormHelper$p$0: function(obj, isReplyAll)
{
if(String.isInstanceOfType(obj))
this._doDisplayReplyForm$p$0(obj,isReplyAll);
else if(Object.isInstanceOfType(obj) && Object.getTypeName(obj)==="Object")
this._doDisplayReplyFormWithAttachments$p$0(obj,isReplyAll);
else
throw Error.argumentType();
},
_doDisplayReplyForm$p$0: function(htmlBody, isReplyAll)
{
if(!$h.ScriptHelpers.isNullOrUndefined(htmlBody))
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnOutOfRange$i(htmlBody["length"],0,window["OSF"]["DDA"]["OutlookAppOm"].maxBodyLength,"htmlBody");
this.invokeHostMethod(isReplyAll ? 11 : 10,{htmlBody: htmlBody},null)
},
_doDisplayReplyFormWithAttachments$p$0: function(data, isReplyAll)
{
var htmlBody=window["OSF"]["DDA"]["OutlookAppOm"]._getHtmlBody$p(data);
var attachments=window["OSF"]["DDA"]["OutlookAppOm"]._getAttachments$p(data);
var parameters=$h.CommonParameters.parse(window["OSF"]["DDA"]["OutlookAppOm"]._getOptionsAndCallback$p(data),false);
var $$t_6=this;
this._standardInvokeHostMethod$i$0(isReplyAll ? 31 : 30,{
htmlBody: htmlBody,
attachments: window["OSF"]["DDA"]["OutlookAppOm"]._createAttachmentsDataForHost$p(attachments)
},function(rawInput)
{
return rawInput
},parameters._asyncContext$p$0,parameters._callback$p$0)
},
_standardInvokeHostMethod$i$0: function(dispid, data, format, userContext, callback)
{
var $$t_B=this;
this.invokeHostMethod(dispid,data,function(resultCode, response)
{
if(callback)
{
var asyncResult=null;
if(Object.isInstanceOfType(response))
{
var responseDictionary=response;
if("error" in responseDictionary || "data" in responseDictionary || "errorCode" in responseDictionary)
if(!responseDictionary["error"])
{
var formattedData=format ? format(responseDictionary["data"]) : responseDictionary["data"];
asyncResult=$$t_B.createAsyncResult(formattedData,0,0,userContext,null)
}
else
{
var errorCode=responseDictionary["errorCode"];
asyncResult=$$t_B.createAsyncResult(null,1,errorCode,userContext,null)
}
}
if(!asyncResult && resultCode)
asyncResult=$$t_B.createAsyncResult(null,1,9002,userContext,null);
callback(asyncResult)
}
})
},
invokeHostMethod: function(dispid, data, responseCallback)
{
if(64===this._officeAppContext$p$0["get_appName"]())
{
var args={ApiParams: data};
args["MethodData"]={
ControlId: window["OSF"]["_OfficeAppFactory"]["getId"](),
DispatchId: dispid
};
if(dispid===1)
this.get_clientEndPoint()["invoke"]("GetInitialData",responseCallback,args);
else
this.get_clientEndPoint()["invoke"]("ExecuteMethod",responseCallback,args)
}
else if(!this._isOwaOnlyMethod$p$0(dispid))
{
var executeParameters=window["OSF"]["DDA"]["OutlookAppOm"]._convertToOutlookParameters$p(dispid,data);
var $$t_B=this;
window["OSF"]["ClientHostController"]["execute"](dispid,executeParameters,function(nativeData, resultCode)
{
if(responseCallback)
{
var responseData=nativeData.toArray();
var rawData=window["JSON"]["parse"](responseData[0]);
if(Object.isInstanceOfType(rawData))
{
var deserializedData=rawData;
if(responseData["length"] > 1 && responseData[1])
{
deserializedData["error"]=true;
deserializedData["errorCode"]=responseData[1]
}
else
deserializedData["error"]=false;
responseCallback(resultCode,deserializedData)
}
else if(Number.isInstanceOfType(rawData))
{
var returnDict={};
returnDict["error"]=true;
returnDict["errorCode"]=rawData;
responseCallback(resultCode,returnDict)
}
else
throw Error.notImplemented("Return data type from host must be Dictionary or int");
}
})
}
else if(responseCallback)
responseCallback(-2,null)
},
_dictionaryToDate$i$0: function(input)
{
var retValue=new Date(input["year"],input["month"],input["date"],input["hours"],input["minutes"],input["seconds"],!input["milliseconds"] ? 0 : input["milliseconds"]);
if(window["isNaN"](retValue["getTime"]()))
throw Error.format(window["_u"]["ExtensibilityStrings"]["l_InvalidDate_Text"]);
return retValue
},
_dateToDictionary$i$0: function(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
},
_isOwaOnlyMethod$p$0: function(dispId)
{
switch(dispId)
{
case 402:
case 401:
case 400:
case 403:
return true;
default:
return false
}
},
_displayNewAppointmentFormApi$p$0: function(parameters)
{
var normalizedRequiredAttendees=window["OSF"]["DDA"]["OutlookAppOm"]._validateAndNormalizeRecipientEmails$p(parameters["requiredAttendees"],"requiredAttendees");
var normalizedOptionalAttendees=window["OSF"]["DDA"]["OutlookAppOm"]._validateAndNormalizeRecipientEmails$p(parameters["optionalAttendees"],"optionalAttendees");
window["OSF"]["DDA"]["OutlookAppOm"]._validateOptionalStringParameter$p(parameters["location"],0,window["OSF"]["DDA"]["OutlookAppOm"]._maxLocationLength$p,"location");
window["OSF"]["DDA"]["OutlookAppOm"]._validateOptionalStringParameter$p(parameters["body"],0,window["OSF"]["DDA"]["OutlookAppOm"].maxBodyLength,"body");
window["OSF"]["DDA"]["OutlookAppOm"]._validateOptionalStringParameter$p(parameters["subject"],0,window["OSF"]["DDA"]["OutlookAppOm"]._maxSubjectLength$p,"subject");
if(!$h.ScriptHelpers.isNullOrUndefined(parameters["start"]))
{
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnArgumentType$p(parameters["start"],Date,"start");
var startDateTime=parameters["start"];
parameters["start"]=startDateTime["getTime"]();
if(!$h.ScriptHelpers.isNullOrUndefined(parameters["end"]))
{
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnArgumentType$p(parameters["end"],Date,"end");
var endDateTime=parameters["end"];
if(endDateTime < startDateTime)
throw Error.argumentOutOfRange("end",endDateTime,window["_u"]["ExtensibilityStrings"]["l_InvalidEventDates_Text"]);
parameters["end"]=endDateTime["getTime"]()
}
}
var updatedParameters=null;
if(normalizedRequiredAttendees || normalizedOptionalAttendees)
{
updatedParameters={};
var $$dict_7=parameters;
for(var $$key_8 in $$dict_7)
{
var entry={
key: $$key_8,
value: $$dict_7[$$key_8]
};
updatedParameters[entry.key]=entry.value
}
if(normalizedRequiredAttendees)
updatedParameters["requiredAttendees"]=normalizedRequiredAttendees;
if(normalizedOptionalAttendees)
updatedParameters["optionalAttendees"]=normalizedOptionalAttendees
}
this.invokeHostMethod(7,updatedParameters || parameters,null)
},
displayNewMessageFormApi: function(parameters)
{
var updatedParameters={};
if(parameters)
{
var normalizedToRecipients=window["OSF"]["DDA"]["OutlookAppOm"]._validateAndNormalizeRecipientEmails$p(parameters["toRecipients"],"toRecipients");
var normalizedCcRecipients=window["OSF"]["DDA"]["OutlookAppOm"]._validateAndNormalizeRecipientEmails$p(parameters["ccRecipients"],"ccRecipients");
var normalizedBccRecipients=window["OSF"]["DDA"]["OutlookAppOm"]._validateAndNormalizeRecipientEmails$p(parameters["bccRecipients"],"bccRecipients");
window["OSF"]["DDA"]["OutlookAppOm"]._validateOptionalStringParameter$p(parameters["htmlBody"],0,window["OSF"]["DDA"]["OutlookAppOm"].maxBodyLength,"htmlBody");
window["OSF"]["DDA"]["OutlookAppOm"]._validateOptionalStringParameter$p(parameters["subject"],0,window["OSF"]["DDA"]["OutlookAppOm"]._maxSubjectLength$p,"subject");
var attachments=window["OSF"]["DDA"]["OutlookAppOm"]._getAttachments$p(parameters);
var $$dict_7=parameters;
for(var $$key_8 in $$dict_7)
{
var entry={
key: $$key_8,
value: $$dict_7[$$key_8]
};
updatedParameters[entry.key]=entry.value
}
if(normalizedToRecipients)
updatedParameters["toRecipients"]=normalizedToRecipients;
if(normalizedCcRecipients)
updatedParameters["ccRecipients"]=normalizedCcRecipients;
if(normalizedBccRecipients)
updatedParameters["bccRecipients"]=normalizedBccRecipients;
if(attachments)
updatedParameters["attachments"]=window["OSF"]["DDA"]["OutlookAppOm"]._createAttachmentsDataForHost$p(attachments)
}
this.invokeHostMethod(44,updatedParameters || parameters,null)
},
displayContactCardAsync: function(ewsIdOrEmail, callback)
{
if($h.ScriptHelpers.isNullOrUndefined(ewsIdOrEmail))
throw Error.argumentNull("ewsIdOrEmail");
var asyncContext=null;
var asyncFunctionCallback=null;
if(callback)
{
var commonParameters=$h.CommonParameters.parse([callback],false);
asyncContext=commonParameters._asyncContext$p$0;
asyncFunctionCallback=commonParameters._callback$p$0
}
this._standardInvokeHostMethod$i$0(43,{ewsIdOrEmail: ewsIdOrEmail.trim()},null,asyncContext,asyncFunctionCallback)
},
_initializeMethods$p$0: function()
{
var currentInstance=this;
if($h.Item.isInstanceOfType(this._item$p$0))
{
currentInstance["displayNewAppointmentForm"]=this.$$d__displayNewAppointmentFormApi$p$0;
currentInstance["displayNewMessageForm"]=this.$$d_displayNewMessageFormApi;
currentInstance["displayContactCardAsync"]=this.$$d_displayContactCardAsync
}
},
_getInitialDataResponseHandler$p$0: function(resultCode, data)
{
if(resultCode)
return;
this.initialize(data);
this["displayName"]="mailbox";
window.setTimeout(this.$$d__callAppReadyCallback$p$0,0)
},
_callAppReadyCallback$p$0: function()
{
this._appReadyCallback$p$0()
},
_invokeGetTokenMethodAsync$p$0: function(outlookDispid, methodName, callback, userContext)
{
if($h.ScriptHelpers.isNullOrUndefined(callback))
throw Error.argumentNull("callback");
var $$t_8=this;
this.invokeHostMethod(outlookDispid,null,function(resultCode, response)
{
var asyncResult;
if(resultCode)
asyncResult=$$t_8.createAsyncResult(null,1,9017,userContext,String.format(window["_u"]["ExtensibilityStrings"]["l_InternalProtocolError_Text"],resultCode));
else
{
var responseDictionary=response;
if(responseDictionary["wasSuccessful"])
asyncResult=$$t_8.createAsyncResult(responseDictionary["token"],0,0,userContext,null);
else
asyncResult=$$t_8.createAsyncResult(null,1,responseDictionary["errorCode"],userContext,responseDictionary["errorMessage"])
}
callback(asyncResult)
})
},
_getItem$p$0: function()
{
return this._item$p$0
},
_getUserProfile$p$0: function()
{
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnPropertyAccessForRestrictedPermission$i(this._initialData$p$0._permissionLevel$p$0);
return this._userProfile$p$0
},
_getDiagnostics$p$0: function()
{
return this._diagnostics$p$0
},
_getEwsUrl$p$0: function()
{
window["OSF"]["DDA"]["OutlookAppOm"]._throwOnPropertyAccessForRestrictedPermission$i(this._initialData$p$0._permissionLevel$p$0);
return this._initialData$p$0.get__ewsUrl$i$0()
},
_findOffset$p$0: function(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=window["parseInt"](range["start"]);
var end=window["parseInt"](range["end"]);
if(value["getTime"]() - start >=0 && value["getTime"]() - end < 0)
return window["parseInt"](range["offset"])
}
throw Error.format(window["_u"]["ExtensibilityStrings"]["l_InvalidDate_Text"]);
},
_areStringsLoaded$p$0: function()
{
var stringsLoaded=false;
try
{
stringsLoaded=!$h.ScriptHelpers.isNullOrUndefined(window["_u"]["ExtensibilityStrings"]["l_EwsRequestOversized_Text"])
}
catch($$e_1){}
return stringsLoaded
},
_loadLocalizedScript$p$0: function(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,2e3);
head.appendChild(scriptElement)
}
},
_createScriptElement$p$0: function(url)
{
var scriptElement=document.createElement("script");
scriptElement.type="text/javascript";
scriptElement.src=url;
return scriptElement
}
};
window["OSF"]["DDA"]["Settings"]=OSF.DDA.Settings=function(data)
{
this._rawData$p$0=data
};
window["OSF"]["DDA"]["Settings"]._convertFromRawSettings$p=function(rawSettings)
{
if(!rawSettings)
return{};
if(window["OSF"]["DDA"]["OutlookAppOm"]._instance$p.get__appName$i$0()===8)
{
var outlookSettings=rawSettings["SettingsKey"];
if(outlookSettings)
return window["OSF"]["DDA"]["SettingsManager"]["deserializeSettings"](outlookSettings)
}
return rawSettings
};
OSF.DDA.Settings.prototype={
_rawData$p$0: null,
_settingsData$p$0: null,
get__data$p$0: function()
{
if(!this._settingsData$p$0)
{
this._settingsData$p$0=window["OSF"]["DDA"]["Settings"]._convertFromRawSettings$p(this._rawData$p$0);
this._rawData$p$0=null
}
return this._settingsData$p$0
},
get: function(name)
{
return this.get__data$p$0()[name]
},
set: function(name, value)
{
this.get__data$p$0()[name]=value
},
remove: function(name)
{
delete this.get__data$p$0()[name]
},
saveAsync: function()
{
var args=[];
for(var $$pai_4=0; $$pai_4 < arguments.length;++$$pai_4)
args[$$pai_4]=arguments[$$pai_4];
var commonParameters=$h.CommonParameters.parse(args,false);
if(window["JSON"]["stringify"](window["OSF"]["DDA"]["SettingsManager"]["serializeSettings"](this.get__data$p$0()))["length"] > 32768)
{
var asyncResult=window["OSF"]["DDA"]["OutlookAppOm"]._instance$p.createAsyncResult(null,1,9019,commonParameters._asyncContext$p$0,"");
var $$t_3=this;
window.setTimeout(function()
{
commonParameters._callback$p$0(asyncResult)
},0);
return
}
if(window["OSF"]["DDA"]["OutlookAppOm"]._instance$p.get__appName$i$0()===64)
this._saveSettingsForOwa$p$0(commonParameters._callback$p$0,commonParameters._asyncContext$p$0);
else
this._saveSettingsForOutlook$p$0(commonParameters._callback$p$0,commonParameters._asyncContext$p$0)
},
_saveSettingsForOutlook$p$0: function(callback, userContext)
{
var storedException=null;
try
{
var serializedSettings=window["OSF"]["DDA"]["SettingsManager"]["serializeSettings"](this.get__data$p$0());
var jsonSettings=window["JSON"]["stringify"](serializedSettings);
var settingsObjectToSave={SettingsKey: jsonSettings};
window["OSF"]["DDA"]["RichClientSettingsManager"]["write"](settingsObjectToSave)
}
catch(ex)
{
storedException=ex
}
if(callback)
{
var asyncResult;
if(storedException)
asyncResult=window["OSF"]["DDA"]["OutlookAppOm"]._instance$p.createAsyncResult(null,1,9019,userContext,storedException["message"]);
else
asyncResult=window["OSF"]["DDA"]["OutlookAppOm"]._instance$p.createAsyncResult(null,0,0,userContext,null);
callback(asyncResult)
}
},
_saveSettingsForOwa$p$0: function(callback, userContext)
{
var serializedSettings=window["OSF"]["DDA"]["SettingsManager"]["serializeSettings"](this.get__data$p$0());
var $$t_7=this;
window["OSF"]["DDA"]["OutlookAppOm"]._instance$p.invokeHostMethod(404,[serializedSettings],function(resultCode, response)
{
if(callback)
{
var asyncResult;
if(resultCode)
asyncResult=window["OSF"]["DDA"]["OutlookAppOm"]._instance$p.createAsyncResult(null,1,9017,userContext,String.format(window["_u"]["ExtensibilityStrings"]["l_InternalProtocolError_Text"],resultCode));
else
{
var responseDictionary=response;
if(!responseDictionary["error"])
asyncResult=window["OSF"]["DDA"]["OutlookAppOm"]._instance$p.createAsyncResult(null,0,0,userContext,null);
else
asyncResult=window["OSF"]["DDA"]["OutlookAppOm"]._instance$p.createAsyncResult(null,1,9019,userContext,responseDictionary["errorMessage"])
}
callback(asyncResult)
}
})
}
};
Type.registerNamespace("$h");
var $h=window.$h || {};
Type.registerNamespace("Office.cast");
var Office=window.Office || {};
Office.cast=Office.cast || {};
$h.Appointment=function(dataDictionary)
{
this.$$d__getOrganizer$p$2=Function.createDelegate(this,this._getOrganizer$p$2);
this.$$d__getNormalizedSubject$p$2=Function.createDelegate(this,this._getNormalizedSubject$p$2);
this.$$d__getSubject$p$2=Function.createDelegate(this,this._getSubject$p$2);
this.$$d__getResources$p$2=Function.createDelegate(this,this._getResources$p$2);
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.Appointment.initializeBase(this,[dataDictionary]);
$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.InitialData._defineReadOnlyProperty$i(this,"resources",this.$$d__getResources$p$2);
$h.InitialData._defineReadOnlyProperty$i(this,"subject",this.$$d__getSubject$p$2);
$h.InitialData._defineReadOnlyProperty$i(this,"normalizedSubject",this.$$d__getNormalizedSubject$p$2);
$h.InitialData._defineReadOnlyProperty$i(this,"organizer",this.$$d__getOrganizer$p$2)
};
$h.Appointment.prototype={
getEntities: function()
{
return this._data$p$0._getEntities$i$0()
},
getEntitiesByType: function(entityType)
{
return this._data$p$0._getEntitiesByType$i$0(entityType)
},
getRegExMatches: function()
{
window["OSF"]["DDA"]["OutlookAppOm"]._instance$p._throwOnMethodCallForInsufficientPermission$i$0(1,"getRegExMatches");
return this._data$p$0._getRegExMatches$i$0()
},
getFilteredEntitiesByName: function(name)
{
return this._data$p$0._getFilteredEntitiesByName$i$0(name)
},
getRegExMatchesByName: function(name)
{
window["OSF"]["DDA"]["OutlookAppOm"]._instance$p._throwOnMethodCallForInsufficientPermission$i$0(1,"getRegExMatchesByName");
return this._data$p$0._getRegExMatchesByName$i$0(name)
},
displayReplyForm: function(obj)
{
window["OSF"]["DDA"]["OutlookAppOm"]._instance$p._displayReplyForm$i$0(obj)
},
displayReplyAllForm: function(obj)
{
window["OSF"]["DDA"]["OutlookAppOm"]._instance$p._displayReplyAllForm$i$0(obj)
},
getItemType: function()
{
return window["Microsoft"]["Office"]["WebExtension"]["MailboxEnums"]["ItemType"]["Appointment"]
},
_getStart$p$2: function()
{
return this._data$p$0.get__start$i$0()
},
_getEnd$p$2: function()
{
return this._data$p$0.get__end$i$0()
},
_getLocation$p$2: function()
{
return this._data$p$0.get__location$i$0()
},
_getOptionalAttendees$p$2: function()
{
return this._data$p$0.get__cc$i$0()
},
_getRequiredAttendees$p$2: function()
{
return this._data$p$0.get__to$i$0()
},
_getResources$p$2: function()
{
return this._data$p$0.get__resources$i$0()
},
_getSubject$p$2: function()
{
return this._data$p$0.get__subject$i$0()
},
_getNormalizedSubject$p$2: function()
{
return this._data$p$0.get__normalizedSubject$i$0()
},
_getOrganizer$p$2: function()
{
return this._data$p$0.get__organizer$i$0()
}
};
$h.AppointmentCompose=function(data)
{
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);
this.$$d__getOptionalAttendees$p$2=Function.createDelegate(this,this._getOptionalAttendees$p$2);
this.$$d__getRequiredAttendees$p$2=Function.createDelegate(this,this._getRequiredAttendees$p$2);
$h.AppointmentCompose.initializeBase(this,[data]);
$h.InitialData._defineReadOnlyProperty$i(this,"requiredAttendees",this.$$d__getRequiredAttendees$p$2);
$h.InitialData._defineReadOnlyProperty$i(this,"optionalAttendees",this.$$d__getOptionalAttendees$p$2);
$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.AppointmentCompose.prototype={
_requiredAttendees$p$2: null,
_optionalAttendees$p$2: null,
_start$p$2: null,
_end$p$2: null,
_location$p$2: null,
getItemType: function()
{
return window["Microsoft"]["Office"]["WebExtension"]["MailboxEnums"]["ItemType"]["Appointment"]
},
_getRequiredAttendees$p$2: function()
{
this._data$p$0._throwOnRestrictedPermissionLevel$i$0();
if(!this._requiredAttendees$p$2)
this._requiredAttendees$p$2=new $h.ComposeRecipient(0,"requiredAttendees");
return this._requiredAttendees$p$2
},
_getOptionalAttendees$p$2: function()
{
this._data$p$0._throwOnRestrictedPermissionLevel$i$0();
if(!this._optionalAttendees$p$2)
this._optionalAttendees$p$2=new $h.ComposeRecipient(1,"optionalAttendees");
return this._optionalAttendees$p$2
},
_getStart$p$2: function()
{
this._data$p$0._throwOnRestrictedPermissionLevel$i$0();
if(!this._start$p$2)
this._start$p$2=new $h.ComposeTime(1);
return this._start$p$2
},
_getEnd$p$2: function()
{
this._data$p$0._throwOnRestrictedPermissionLevel$i$0();
if(!this._end$p$2)
this._end$p$2=new $h.ComposeTime(2);
return this._end$p$2
},
_getLocation$p$2: function()
{
this._data$p$0._throwOnRestrictedPermissionLevel$i$0();
if(!this._location$p$2)
this._location$p$2=new $h.ComposeLocation;
return this._location$p$2
}
};
$h.AttachmentConstants=function(){};
$h.AttachmentDetails=function(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()
{
return this._data$p$0["id"]
},
_getName$p$0: function()
{
return this._data$p$0["name"]
},
_getContentType$p$0: function()
{
return this._data$p$0["contentType"]
},
_getSize$p$0: function()
{
return this._data$p$0["size"]
},
_getAttachmentType$p$0: function()
{
var response=this._data$p$0["attachmentType"];
return response < $h.AttachmentDetails._attachmentTypeMap$p.length ? $h.AttachmentDetails._attachmentTypeMap$p[response] : window["Microsoft"]["Office"]["WebExtension"]["MailboxEnums"]["AttachmentType"]["File"]
},
_getIsInline$p$0: function()
{
return this._data$p$0["isInline"]
}
};
$h.Body=function(){};
$h.Body._tryMapToHostCoercionType$i=function(coercionType, hostCoercionType)
{
hostCoercionType.val=undefined;
if(coercionType===window["Microsoft"]["Office"]["WebExtension"]["CoercionType"]["Html"])
hostCoercionType.val=3;
else if(coercionType===window["Microsoft"]["Office"]["WebExtension"]["CoercionType"]["Text"])
hostCoercio