Initial commit

This commit is contained in:
2025-03-07 19:22:02 +01:00
commit 4a98255d83
55743 changed files with 5280367 additions and 0 deletions
+88
View File
@@ -0,0 +1,88 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0"
xmlns:ov="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="TaskPaneApp">
<Id>6c883c79-9b2a-45a3-b3d1-3dbd08000c5a</Id>
<Version>1.2.3.4</Version>
<ProviderName>Contoso</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="Contoso Task Pane Add-in"/>
<Description DefaultValue="Describes this Office Add-in."/>
<IconUrl DefaultValue="https://localhost:3000/assets/icon-32.png"/>
<HighResolutionIconUrl DefaultValue="https://localhost:3000/assets/icon-80.png"/>
<SupportUrl DefaultValue="https://www.contoso.com/help"/>
<AppDomains>
<AppDomain>contoso.com</AppDomain>
</AppDomains>
<Hosts>
<Host Name="Workbook"/>
</Hosts>
<DefaultSettings>
<SourceLocation DefaultValue="https://localhost:3000/taskpane.html"/>
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
<VersionOverrides xmlns="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="VersionOverridesV1_0">
<Hosts>
<Host xsi:type="Workbook">
<DesktopFormFactor>
<GetStarted>
<Title resid="Contoso.GetStarted.Title"/>
<Description resid="Contoso.GetStarted.Description"/>
<LearnMoreUrl resid="Contoso.GetStarted.LearnMoreUrl"/>
</GetStarted>
<FunctionFile resid="Contoso.Ribbon.Url"/>
<ExtensionPoint xsi:type="PrimaryCommandSurface">
<OfficeTab id="TabHome">
<Group id="Contoso.Group1">
<Label resid="Contoso.Group1Label"/>
<Icon>
<bt:Image size="16" resid="Contoso.tpicon_16x16"/>
<bt:Image size="32" resid="Contoso.tpicon_32x32"/>
<bt:Image size="80" resid="Contoso.tpicon_80x80"/>
</Icon>
<Control xsi:type="Button" id="Contoso.TaskpaneButton">
<Label resid="Contoso.TaskpaneButton.Label"/>
<Supertip>
<Title resid="Contoso.TaskpaneButton.Label"/>
<Description resid="Contoso.TaskpaneButton.Tooltip"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="Contoso.tpicon_16x16"/>
<bt:Image size="32" resid="Contoso.tpicon_32x32"/>
<bt:Image size="80" resid="Contoso.tpicon_80x80"/>
</Icon>
<Action xsi:type="ShowTaskpane">
<TaskpaneId>ButtonId1</TaskpaneId>
<SourceLocation resid="Contoso.Taskpane.Url"/>
</Action>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
</DesktopFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="Contoso.tpicon_16x16" DefaultValue="https://localhost:3000/assets/icon-16.png"/>
<bt:Image id="Contoso.tpicon_32x32" DefaultValue="https://localhost:3000/assets/icon-32.png"/>
<bt:Image id="Contoso.tpicon_80x80" DefaultValue="https://localhost:3000/assets/icon-80.png"/>
</bt:Images>
<bt:Urls>
<bt:Url id="Contoso.GetStarted.LearnMoreUrl" DefaultValue="https://go.microsoft.com/fwlink/?LinkId=276812"/>
<bt:Url id="Contoso.Ribbon.Url" DefaultValue="https://localhost:3000/ribbon.html"/>
<bt:Url id="Contoso.Taskpane.Url" DefaultValue="https://localhost:3000/taskpane.html"/>
</bt:Urls>
<bt:ShortStrings>
<bt:String id="Contoso.GetStarted.Title" DefaultValue="Get started with your sample add-in!"/>
<bt:String id="Contoso.Group1Label" DefaultValue="Commands Group"/>
<bt:String id="Contoso.TaskpaneButton.Label" DefaultValue="Show Taskpane"/>
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="Contoso.GetStarted.Description" DefaultValue="Your sample add-in loaded succesfully. Go to the HOME tab and click the 'Show Taskpane' button to get started."/>
<bt:String id="Contoso.TaskpaneButton.Tooltip" DefaultValue="Click to Show a Taskpane"/>
</bt:LongStrings>
</Resources>
</VersionOverrides>
</OfficeApp>
+390
View File
@@ -0,0 +1,390 @@
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="MailApp">
<NotId>cd65cfae-6426-46ae-b778-a36ae2f4f1e5</NotId>
<Version>1.0.0.0</Version>
<ProviderName>Add-in Express Ltd</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="Attachments" />
<Description DefaultValue="When you are looking for a file in Outlook online, let the Attachments add-in quickly find it for you. Click on its name in any email to get a list of all files used in the conversation, filter them by sender, search attachments, and more." />
<IconUrl DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/conversation-attachments-main-icon_64.png" />
<HighResolutionIconUrl DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/conversation-attachments-main-icon_128.png" />
<SupportUrl DefaultValue="https://www.ablebits.com/outlook-online/attachments/howto.php" />
<Hosts>
<Host Name="Mailbox" />
</Hosts>
<Requirements>
<Sets>
<Set Name="MailBox" MinVersion="1.1" />
</Sets>
</Requirements>
<FormSettings>
<Form xsi:type="ItemRead">
<DesktopSettings>
<SourceLocation DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
<RequestedHeight>250</RequestedHeight>
</DesktopSettings>
<TabletSettings>
<SourceLocation DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
<RequestedHeight>250</RequestedHeight>
</TabletSettings>
<PhoneSettings>
<SourceLocation DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
</PhoneSettings>
</Form>
</FormSettings>
<Permissions>ReadWriteMailbox</Permissions>
<Rule xsi:type="RuleCollection" Mode="Or">
<Rule xsi:type="ItemIs" ItemType="Message" FormType="Read" />
</Rule>
<DisableEntityHighlighting>false</DisableEntityHighlighting>
<VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides" xsi:type="VersionOverridesV1_0">
<Requirements>
<bt:Sets DefaultMinVersion="1.3">
<bt:Set Name="Mailbox" />
</bt:Sets>
</Requirements>
<Hosts>
<Host xsi:type="MailHost">
<DesktopFormFactor>
<FunctionFile resid="functionFile0" />
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<OfficeTab id="TabDefault00">
<Group id="msgReadDemoGroup00">
<Label resid="groupLabel00" />
<!-- Task pane button -->
<Control xsi:type="Button" id="msgReadOpenPaneButton0">
<Label resid="paneReadButtonLabel" />
<Supertip>
<Title resid="paneReadSupertipTitle" />
<Description resid="paneReadSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl0" />
</Action>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="AppointmentOrganizerCommandSurface">
<OfficeTab id="TabDefault01">
<Group id="apptComposeDemoGroup">
<Label resid="groupLabel01" />
<Control xsi:type="Menu" id="apptComposeOpenDisplayDialogMenu">
<Label resid="displayDialogButtonLabel" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="displayDialogSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Items>
<Item id="displayDialogApptComposeFunctionButton">
<Label resid="displayDialogFuncButtonLabel" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="funcComposeSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>displayDialog</FunctionName>
</Action>
</Item>
<Item id="displayDialogApptComposeOpenPaneButton">
<Label resid="displayDialogPaneButtonLabel" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="paneSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl0" />
</Action>
</Item>
</Items>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="LaunchEvent">
<LaunchEvents>
<LaunchEvent Type="OnNewMessageCompose" FunctionName="autoRunFunction" />
</LaunchEvents>
<SourceLocation resid="eventHandlers" />
</ExtensionPoint>
</DesktopFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="ribbon-attachments-icon-16" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_16.png" />
<bt:Image id="ribbon-attachments-icon-32" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_32.png" />
<bt:Image id="ribbon-attachments-icon-80" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_80.png" />
</bt:Images>
<bt:Urls>
<bt:Url id="functionFile0" DefaultValue="https://featuretest.olkeco.com/FeatureTest/DisplayDialogPlayground/app/FunctionFile/Functions.html" />
<bt:Url id="readTaskPaneUrl0" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
<bt:Url id="customPaneUrl" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
</bt:Urls>
<bt:ShortStrings>
<bt:String id="groupLabel00" DefaultValue="Ablebits00" />
<bt:String id="groupLabel01" DefaultValue="Ablebits01" />
<!-- Read mode -->
<bt:String id="paneReadButtonLabel" DefaultValue="Conversation attachments" />
<bt:String id="paneReadSupertipTitle" DefaultValue="Open Attachments add-in" />
<bt:String id="displayDialogButtonLabel" DefaultValue="Display Dialog Playground" />
<bt:String id="displayDialogSupertipTitle" DefaultValue="Tests Display Dialog" />
<bt:String id="displayDialogPaneButtonLabel" DefaultValue="Task pane display dialog" />
<bt:String id="displayDialogFuncButtonLabel" DefaultValue="UI-less display dialog" />
</bt:ShortStrings>
<bt:LongStrings>
<!-- Read mode -->
<bt:String id="paneReadSupertipDescription" DefaultValue="Get a list of attachments in this email conversation" />
<bt:String id="displayDialogSupertipDescription" DefaultValue="Tests UI-less, non-iframeable, and task pane DisplayDialog" />
<bt:String id="funcComposeSupertipDescription" DefaultValue="Tests UI-less display dialog." />
<bt:String id="paneSupertipDescription" DefaultValue="Tests task pane display dialog" />
</bt:LongStrings>
</Resources>
<VersionOverrides xsi:type="VersionOverridesV1_1">
<Requirements>
<bt:Sets DefaultMinVersion="1.3">
<bt:Set Name="Mailbox" />
</bt:Sets>
</Requirements>
<Hosts>
<Host xsi:type="MailHost">
<Runtimes>
<Runtime resid="runtime0">
<Override type="javascript" resid="runtime0Js" />
</Runtime>
</Runtimes>
<DesktopFormFactor>
<FunctionFile resid="functionFile1" />
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<OfficeTab id="TabDefault10">
<Group id="msgReadDemoGroup1">
<Label resid="groupLabel10" />
<!-- Task pane button -->
<Control xsi:type="Button" id="msgReadOpenPaneButton1">
<Label resid="paneReadButtonLabel" />
<Supertip>
<Title resid="paneReadSupertipTitle" />
<Description resid="paneReadSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl1" />
</Action>
</Control>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="MessageComposeCommandSurface">
<OfficeTab id="TabDefault11">
<InsertAfter>TabHome</InsertAfter>
<Group id="msgComposeDemoGroup">
<Label resid="groupLabel11" />
<Control xsi:type="Menu" id="msgComposeOpenOutlookJsMenu">
<Label resid="outlookJsMenuLabel" />
<Supertip>
<Title resid="outlookJsMenuLabel" />
<Description resid="outlookJsSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Items>
<Item id="msgComposeOpenPaneButtonOutlookJs">
<Label resid="paneComposeButtonLabelOutlookJs" />
<Supertip>
<Title resid="paneComposeTitleOutlookJs" />
<Description resid="paneComposeSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl1" />
</Action>
</Item>
</Items>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="AppointmentAttendeeCommandSurface">
<OfficeTab id="TabDefault12">
<InsertBefore>TabHome</InsertBefore>
<Group id="apptReadDemoGroup">
<Label resid="groupLabel12" />
<Control xsi:type="Button" id="apptReadOpenPaneButton">
<Label resid="paneReadButtonLabel" />
<Supertip>
<Title resid="paneReadSupertipTitle" />
<Description resid="paneReadSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl1" />
</Action>
</Control>
<Control xsi:type="Menu" id="apptReadOpenDisplayDialogMenu">
<Label resid="displayDialogButtonLabel" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="displayDialogSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Items>
<Item id="displayDialogApptReadFunctionButton">
<Label resid="displayDialogFuncButtonLabel" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="funcComposeSupertipDescription" />
</Supertip>
<Action xsi:type="ExecuteFunction">
<FunctionName>displayDialog</FunctionName>
</Action>
</Item>
<Item id="displayDialogApptReadFunctionButton2">
<Label resid="displayDialogFuncButtonLabel2" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="funcReadSupertipDescription" />
</Supertip>
<Action xsi:type="ExecuteFunction">
<FunctionName>displayDialogNonIframeable</FunctionName>
</Action>
</Item>
</Items>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="LaunchEvent">
<LaunchEvents>
<LaunchEvent Type="OnNewMessageCompose" FunctionName="runLaunchEventMessageTests" />
<LaunchEvent Type="OnNewAppointmentOrganizer" FunctionName="runLaunchEventAppointmentTests" />
<LaunchEvent Type="OnMessageSend" FunctionName="validateSendable" SendMode="PromptUser" />
<LaunchEvent Type="OnAppointmentSend" FunctionName="validateSendable" SendMode="PromptUser" />
</LaunchEvents>
<SourceLocation resid="runtime0" />
</ExtensionPoint>
</DesktopFormFactor>
<MobileFormFactor>
<FunctionFile resid="mobileFunctionFile" />
<ExtensionPoint xsi:type="MobileOnlineMeetingCommandSurface">
<Control xsi:type="MobileButton" id="msgReadFunctionButton">
<Label resid="addZoomButtonLabel" />
<Icon xsi:type="bt:MobileIconList">
<bt:Image size="25" scale="1" resid="addzoommobile25" />
<bt:Image size="25" scale="2" resid="addzoommobile25" />
<bt:Image size="25" scale="3" resid="addzoommobile25" />
<bt:Image size="32" scale="1" resid="addzoommobile32" />
<bt:Image size="32" scale="2" resid="addzoommobile32" />
<bt:Image size="32" scale="3" resid="addzoommobile32" />
<bt:Image size="48" scale="1" resid="addzoommobile48" />
<bt:Image size="48" scale="2" resid="addzoommobile48" />
<bt:Image size="48" scale="3" resid="addzoommobile48" />
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>oneClickPrepareMeeting</FunctionName>
</Action>
</Control>
</ExtensionPoint>
</MobileFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="ribbon-attachments-icon-16" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_16.png" />
<bt:Image id="ribbon-attachments-icon-32" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_32.png" />
<bt:Image id="ribbon-attachments-icon-80" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_80.png" />
<bt:Image id="addzoommobile25" DefaultValue="https://st1.zoom.us/assets/addzoom-mobile-25.png" />
<bt:Image id="addzoommobile32" DefaultValue="https://st1.zoom.us/assets/addzoom-mobile-32.png" />
<bt:Image id="addzoommobile48" DefaultValue="https://st1.zoom.us/assets/addzoom-mobile-48.png" />
</bt:Images>
<bt:Urls>
<bt:Url id="functionFile1" DefaultValue="https://featuretest.olkeco.com/FeatureTest/DisplayDialogPlayground/app/FunctionFile/Functions.html" />
<bt:Url id="readTaskPaneUrl1" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
<bt:Url id="customPaneUrl1" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
<bt:Url id="runtime0" DefaultValue="https://featuretest.olkeco.com/featureTest/Compose/launchEvent/launchEvent.html" />
<bt:Url id="runtime0Js" DefaultValue="https://featuretest.olkeco.com/featureTest/Compose/launchEvent/launchEventWin32.js" />
<bt:Url id="mobileFunctionFile" DefaultValue="https://zoom.us/office365/addzoom" />
</bt:Urls>
<bt:ShortStrings>
<bt:String id="groupLabel10" DefaultValue="Ablebits10" />
<bt:String id="groupLabel11" DefaultValue="Ablebits11" />
<bt:String id="groupLabel12" DefaultValue="Ablebits12" />
<bt:String id="addZoomButtonLabel" DefaultValue="Add a Zoom Meeting" />
<bt:String id="outlookJsMenuLabel" DefaultValue="Outlook.js" />
<!-- Read mode -->
<bt:String id="paneReadButtonLabel" DefaultValue="Conversation attachments" />
<bt:String id="paneReadSupertipTitle" DefaultValue="Open Attachments add-in" />
<bt:String id="displayDialogButtonLabel" DefaultValue="Display Dialog Playground" />
<bt:String id="displayDialogSupertipTitle" DefaultValue="Tests Display Dialog" />
<bt:String id="paneComposeButtonLabelOutlookJs" DefaultValue="Step-1 (Compose)" />
<bt:String id="paneComposeTitleOutlookJs" DefaultValue="Test Compose Mode APIs" />
<bt:String id="displayDialogFuncButtonLabel" DefaultValue="UI-less display dialog" />
<bt:String id="displayDialogFuncButtonLabel2" DefaultValue="UI-less non-iframeable dialog" />
</bt:ShortStrings>
<bt:LongStrings>
<!-- Read mode -->
<bt:String id="paneReadSupertipDescription" DefaultValue="Get a list of attachments in this email conversation" />
<bt:String id="displayDialogSupertipDescription" DefaultValue="Tests UI-less, non-iframeable, and task pane DisplayDialog" />
<bt:String id="funcComposeSupertipDescription" DefaultValue="Tests UI-less display dialog." />
<bt:String id="funcReadSupertipDescription" DefaultValue="Tests UI-less non-iframeable dialog" />
<bt:String id="outlookJsSupertipDescription" DefaultValue="Tests for outlook.js" />
<bt:String id="paneComposeSupertipDescription" DefaultValue="Step-1: Open a New Compose Form -&gt; Click on Start Test -&gt; Wait for all tests to complete -&gt; Note any errors -&gt; Now Send the generated email" />
</bt:LongStrings>
</Resources>
<EquivalentAddins>
<EquivalentAddin>
<ProgId>BarAddin</ProgId>
<DisplayName>Bar Addin</DisplayName>
<Type>COM</Type>
</EquivalentAddin>
<EquivalentAddin>
<FileName>foo.xll</FileName>
<Type>XLL</Type>
</EquivalentAddin>
</EquivalentAddins>
</VersionOverrides>
</VersionOverrides>
</OfficeApp>
+79
View File
@@ -0,0 +1,79 @@
{
"name": "office-addin-taskpane",
"version": "0.0.1",
"repository": {
"type": "git",
"url": "https://github.com/OfficeDev/Office-Addin-TaskPane.git"
},
"license": "MIT",
"config": {
"app_to_debug": "excel",
"app_type_to_debug": "desktop",
"dev_server_port": 3000
},
"engines": {
"node": ">=16 <21",
"npm": ">=6 <11"
},
"scripts": {
"build": "webpack --mode production",
"build:dev": "webpack --mode development",
"convert-to-single-host": "node convertToSingleHost.js",
"dev-server": "webpack serve --mode development",
"lint": "office-addin-lint check",
"lint:fix": "office-addin-lint fix",
"prettier": "office-addin-lint prettier",
"start": "office-addin-debugging start manifest.xml",
"start:desktop": "office-addin-debugging start manifest.xml desktop",
"start:desktop:outlook": "office-addin-debugging start manifest.outlook.xml desktop --app outlook",
"start:web": "office-addin-debugging start manifest.xml web",
"stop": "office-addin-debugging stop manifest.xml",
"test": "npm run test:unit && npm run test:e2e",
"test:e2e": "mocha -r ts-node/register test/end-to-end/*.ts",
"test:unit": "mocha -r ts-node/register test/unit/*.test.ts",
"validate": "office-addin-manifest validate manifest.xml",
"watch": "webpack --mode development --watch"
},
"dependencies": {
"regenerator-runtime": "^0.13.7"
},
"devDependencies": {
"@babel/core": "^7.13.10",
"@babel/preset-typescript": "^7.13.0",
"@types/mocha": "^10.0.6",
"@types/node": "^14.14.22",
"@types/office-js": "^1.0.180",
"@types/office-runtime": "^1.0.17",
"acorn": "^8.5.0",
"babel-loader": "^8.2.2",
"copy-webpack-plugin": "^9.0.1",
"eslint-plugin-office-addins": "^1.1.4",
"file-loader": "^6.2.0",
"html-loader": "^2.1.2",
"html-webpack-plugin": "^5.3.2",
"mocha": "^11.0.0",
"office-addin-cli": "^1.3.4",
"office-addin-debugging": "^6.0.1",
"office-addin-dev-certs": "^1.7.6",
"office-addin-lint": "^1.4.5",
"office-addin-manifest": "^2.1.2",
"office-addin-mock": "^1.0.4",
"office-addin-prettier-config": "^1.1.3",
"office-addin-test-helpers": "^1.2.5",
"office-addin-test-server": "^1.2.6",
"os-browserify": "^0.3.0",
"process": "^0.11.10",
"source-map-loader": "^3.0.0",
"ts-loader": "^9.2.5",
"ts-node": "^10.2.0",
"typescript": "^4.7.4",
"webpack": "^5.50.0",
"webpack-cli": "^4.8.0",
"webpack-dev-server": "4.1.1"
},
"prettier": "office-addin-prettier-config",
"browserslist": [
"ie 11"
]
}
+390
View File
@@ -0,0 +1,390 @@
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="MailApp">
<Id>cd65cfae-6426-46ae-b778-a36ae2f4f1e5</Id>
<Version>1.0.0.0</Version>
<ProviderName>Add-in Express Ltd</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="Attachments" />
<Description DefaultValue="When you are looking for a file in Outlook online, let the Attachments add-in quickly find it for you. Click on its name in any email to get a list of all files used in the conversation, filter them by sender, search attachments, and more." />
<IconUrl DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/conversation-attachments-main-icon_64.png" />
<HighResolutionIconUrl DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/conversation-attachments-main-icon_128.png" />
<SupportUrl DefaultValue="https://www.ablebits.com/outlook-online/attachments/howto.php" />
<Hosts>
<Host Name="Mailbox" />
</Hosts>
<Requirements>
<Sets>
<Set Name="MailBox" MinVersion="1.1" />
</Sets>
</Requirements>
<FormSettings>
<Form xsi:type="ItemRead">
<DesktopSettings>
<SourceLocation DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
<RequestedHeight>250</RequestedHeight>
</DesktopSettings>
<TabletSettings>
<SourceLocation DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
<RequestedHeight>250</RequestedHeight>
</TabletSettings>
<PhoneSettings>
<SourceLocation DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
</PhoneSettings>
</Form>
</FormSettings>
<Permissions>ReadWriteMailbox</Permissions>
<Rule xsi:type="RuleCollection" Mode="Or">
<Rule xsi:type="ItemIs" ItemType="Message" FormType="Read" />
</Rule>
<DisableEntityHighlighting>false</DisableEntityHighlighting>
<VersionOverrides xmlns="http://schemas.microsoft.com/office/mailappversionoverrides" xsi:type="VersionOverridesV1_0">
<Requirements>
<bt:Sets DefaultMinVersion="1.3">
<bt:Set Name="Mailbox" />
</bt:Sets>
</Requirements>
<Hosts>
<Host xsi:type="MailHost">
<DesktopFormFactor>
<FunctionFile resid="functionFile0" />
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<OfficeTab id="TabDefault00">
<Group id="msgReadDemoGroup00">
<Label resid="groupLabel00" />
<!-- Task pane button -->
<Control xsi:type="Button" id="msgReadOpenPaneButton0">
<Label resid="paneReadButtonLabel" />
<Supertip>
<Title resid="paneReadSupertipTitle" />
<Description resid="paneReadSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl0" />
</Action>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="AppointmentOrganizerCommandSurface">
<OfficeTab id="TabDefault01">
<Group id="apptComposeDemoGroup">
<Label resid="groupLabel01" />
<Control xsi:type="Menu" id="apptComposeOpenDisplayDialogMenu">
<Label resid="displayDialogButtonLabel" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="displayDialogSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Items>
<Item id="displayDialogApptComposeFunctionButton">
<Label resid="displayDialogFuncButtonLabel" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="funcComposeSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>displayDialog</FunctionName>
</Action>
</Item>
<Item id="displayDialogApptComposeOpenPaneButton">
<Label resid="displayDialogPaneButtonLabel" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="paneSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl0" />
</Action>
</Item>
</Items>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="LaunchEvent">
<LaunchEvents>
<LaunchEvent Type="OnNewMessageCompose" FunctionName="autoRunFunction" />
</LaunchEvents>
<SourceLocation resid="eventHandlers" />
</ExtensionPoint>
</DesktopFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="ribbon-attachments-icon-16" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_16.png" />
<bt:Image id="ribbon-attachments-icon-32" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_32.png" />
<bt:Image id="ribbon-attachments-icon-80" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_80.png" />
</bt:Images>
<bt:Urls>
<bt:Url id="functionFile0" DefaultValue="https://featuretest.olkeco.com/FeatureTest/DisplayDialogPlayground/app/FunctionFile/Functions.html" />
<bt:Url id="readTaskPaneUrl0" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
<bt:Url id="customPaneUrl" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
</bt:Urls>
<bt:ShortStrings>
<bt:String id="groupLabel00" DefaultValue="Ablebits00" />
<bt:String id="groupLabel01" DefaultValue="Ablebits01" />
<!-- Read mode -->
<bt:String id="paneReadButtonLabel" DefaultValue="Conversation attachments" />
<bt:String id="paneReadSupertipTitle" DefaultValue="Open Attachments add-in" />
<bt:String id="displayDialogButtonLabel" DefaultValue="Display Dialog Playground" />
<bt:String id="displayDialogSupertipTitle" DefaultValue="Tests Display Dialog" />
<bt:String id="displayDialogPaneButtonLabel" DefaultValue="Task pane display dialog" />
<bt:String id="displayDialogFuncButtonLabel" DefaultValue="UI-less display dialog" />
</bt:ShortStrings>
<bt:LongStrings>
<!-- Read mode -->
<bt:String id="paneReadSupertipDescription" DefaultValue="Get a list of attachments in this email conversation" />
<bt:String id="displayDialogSupertipDescription" DefaultValue="Tests UI-less, non-iframeable, and task pane DisplayDialog" />
<bt:String id="funcComposeSupertipDescription" DefaultValue="Tests UI-less display dialog." />
<bt:String id="paneSupertipDescription" DefaultValue="Tests task pane display dialog" />
</bt:LongStrings>
</Resources>
<VersionOverrides xsi:type="VersionOverridesV1_1">
<Requirements>
<bt:Sets DefaultMinVersion="1.3">
<bt:Set Name="Mailbox" />
</bt:Sets>
</Requirements>
<Hosts>
<Host xsi:type="MailHost">
<Runtimes>
<Runtime resid="runtime0">
<Override type="javascript" resid="runtime0Js" />
</Runtime>
</Runtimes>
<DesktopFormFactor>
<FunctionFile resid="functionFile1" />
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<OfficeTab id="TabDefault10">
<Group id="msgReadDemoGroup1">
<Label resid="groupLabel10" />
<!-- Task pane button -->
<Control xsi:type="Button" id="msgReadOpenPaneButton1">
<Label resid="paneReadButtonLabel" />
<Supertip>
<Title resid="paneReadSupertipTitle" />
<Description resid="paneReadSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl1" />
</Action>
</Control>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="MessageComposeCommandSurface">
<OfficeTab id="TabDefault11">
<InsertAfter>TabHome</InsertAfter>
<Group id="msgComposeDemoGroup">
<Label resid="groupLabel11" />
<Control xsi:type="Menu" id="msgComposeOpenOutlookJsMenu">
<Label resid="outlookJsMenuLabel" />
<Supertip>
<Title resid="outlookJsMenuLabel" />
<Description resid="outlookJsSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Items>
<Item id="msgComposeOpenPaneButtonOutlookJs">
<Label resid="paneComposeButtonLabelOutlookJs" />
<Supertip>
<Title resid="paneComposeTitleOutlookJs" />
<Description resid="paneComposeSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl1" />
</Action>
</Item>
</Items>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="AppointmentAttendeeCommandSurface">
<OfficeTab id="TabDefault12">
<InsertBefore>TabHome</InsertBefore>
<Group id="apptReadDemoGroup">
<Label resid="groupLabel12" />
<Control xsi:type="Button" id="apptReadOpenPaneButton">
<Label resid="paneReadButtonLabel" />
<Supertip>
<Title resid="paneReadSupertipTitle" />
<Description resid="paneReadSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl1" />
</Action>
</Control>
<Control xsi:type="Menu" id="apptReadOpenDisplayDialogMenu">
<Label resid="displayDialogButtonLabel" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="displayDialogSupertipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="ribbon-attachments-icon-16" />
<bt:Image size="32" resid="ribbon-attachments-icon-32" />
<bt:Image size="80" resid="ribbon-attachments-icon-80" />
</Icon>
<Items>
<Item id="displayDialogApptReadFunctionButton">
<Label resid="displayDialogFuncButtonLabel" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="funcComposeSupertipDescription" />
</Supertip>
<Action xsi:type="ExecuteFunction">
<FunctionName>displayDialog</FunctionName>
</Action>
</Item>
<Item id="displayDialogApptReadFunctionButton2">
<Label resid="displayDialogFuncButtonLabel2" />
<Supertip>
<Title resid="displayDialogSupertipTitle" />
<Description resid="funcReadSupertipDescription" />
</Supertip>
<Action xsi:type="ExecuteFunction">
<FunctionName>displayDialogNonIframeable</FunctionName>
</Action>
</Item>
</Items>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<ExtensionPoint xsi:type="LaunchEvent">
<LaunchEvents>
<LaunchEvent Type="OnNewMessageCompose" FunctionName="runLaunchEventMessageTests" />
<LaunchEvent Type="OnNewAppointmentOrganizer" FunctionName="runLaunchEventAppointmentTests" />
<LaunchEvent Type="OnMessageSend" FunctionName="validateSendable" SendMode="PromptUser" />
<LaunchEvent Type="OnAppointmentSend" FunctionName="validateSendable" SendMode="PromptUser" />
</LaunchEvents>
<SourceLocation resid="runtime0" />
</ExtensionPoint>
</DesktopFormFactor>
<MobileFormFactor>
<FunctionFile resid="mobileFunctionFile" />
<ExtensionPoint xsi:type="MobileOnlineMeetingCommandSurface">
<Control xsi:type="MobileButton" id="msgReadFunctionButton">
<Label resid="addZoomButtonLabel" />
<Icon xsi:type="bt:MobileIconList">
<bt:Image size="25" scale="1" resid="addzoommobile25" />
<bt:Image size="25" scale="2" resid="addzoommobile25" />
<bt:Image size="25" scale="3" resid="addzoommobile25" />
<bt:Image size="32" scale="1" resid="addzoommobile32" />
<bt:Image size="32" scale="2" resid="addzoommobile32" />
<bt:Image size="32" scale="3" resid="addzoommobile32" />
<bt:Image size="48" scale="1" resid="addzoommobile48" />
<bt:Image size="48" scale="2" resid="addzoommobile48" />
<bt:Image size="48" scale="3" resid="addzoommobile48" />
</Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>oneClickPrepareMeeting</FunctionName>
</Action>
</Control>
</ExtensionPoint>
</MobileFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="ribbon-attachments-icon-16" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_16.png" />
<bt:Image id="ribbon-attachments-icon-32" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_32.png" />
<bt:Image id="ribbon-attachments-icon-80" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/images/assets/conversation-attachments-main-icon-ribbon_80.png" />
<bt:Image id="addzoommobile25" DefaultValue="https://st1.zoom.us/assets/addzoom-mobile-25.png" />
<bt:Image id="addzoommobile32" DefaultValue="https://st1.zoom.us/assets/addzoom-mobile-32.png" />
<bt:Image id="addzoommobile48" DefaultValue="https://st1.zoom.us/assets/addzoom-mobile-48.png" />
</bt:Images>
<bt:Urls>
<bt:Url id="functionFile1" DefaultValue="https://featuretest.olkeco.com/FeatureTest/DisplayDialogPlayground/app/FunctionFile/Functions.html" />
<bt:Url id="readTaskPaneUrl1" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
<bt:Url id="customPaneUrl1" DefaultValue="https://online-addins.ablebits.com/Dev_conversation-attachments/appread/index.html" />
<bt:Url id="runtime0" DefaultValue="https://featuretest.olkeco.com/featureTest/Compose/launchEvent/launchEvent.html" />
<bt:Url id="runtime0Js" DefaultValue="https://featuretest.olkeco.com/featureTest/Compose/launchEvent/launchEventWin32.js" />
<bt:Url id="mobileFunctionFile" DefaultValue="https://zoom.us/office365/addzoom" />
</bt:Urls>
<bt:ShortStrings>
<bt:String id="groupLabel10" DefaultValue="Ablebits10" />
<bt:String id="groupLabel11" DefaultValue="Ablebits11" />
<bt:String id="groupLabel12" DefaultValue="Ablebits12" />
<bt:String id="addZoomButtonLabel" DefaultValue="Add a Zoom Meeting" />
<bt:String id="outlookJsMenuLabel" DefaultValue="Outlook.js" />
<!-- Read mode -->
<bt:String id="paneReadButtonLabel" DefaultValue="Conversation attachments" />
<bt:String id="paneReadSupertipTitle" DefaultValue="Open Attachments add-in" />
<bt:String id="displayDialogButtonLabel" DefaultValue="Display Dialog Playground" />
<bt:String id="displayDialogSupertipTitle" DefaultValue="Tests Display Dialog" />
<bt:String id="paneComposeButtonLabelOutlookJs" DefaultValue="Step-1 (Compose)" />
<bt:String id="paneComposeTitleOutlookJs" DefaultValue="Test Compose Mode APIs" />
<bt:String id="displayDialogFuncButtonLabel" DefaultValue="UI-less display dialog" />
<bt:String id="displayDialogFuncButtonLabel2" DefaultValue="UI-less non-iframeable dialog" />
</bt:ShortStrings>
<bt:LongStrings>
<!-- Read mode -->
<bt:String id="paneReadSupertipDescription" DefaultValue="Get a list of attachments in this email conversation" />
<bt:String id="displayDialogSupertipDescription" DefaultValue="Tests UI-less, non-iframeable, and task pane DisplayDialog" />
<bt:String id="funcComposeSupertipDescription" DefaultValue="Tests UI-less display dialog." />
<bt:String id="funcReadSupertipDescription" DefaultValue="Tests UI-less non-iframeable dialog" />
<bt:String id="outlookJsSupertipDescription" DefaultValue="Tests for outlook.js" />
<bt:String id="paneComposeSupertipDescription" DefaultValue="Step-1: Open a New Compose Form -&gt; Click on Start Test -&gt; Wait for all tests to complete -&gt; Note any errors -&gt; Now Send the generated email" />
</bt:LongStrings>
</Resources>
<EquivalentAddins>
<EquivalentAddin>
<ProgId>BarAddin</ProgId>
<DisplayName>Bar Addin</DisplayName>
<Type>COM</Type>
</EquivalentAddin>
<EquivalentAddin>
<FileName>foo.xll</FileName>
<Type>XLL</Type>
</EquivalentAddin>
</EquivalentAddins>
</VersionOverrides>
</VersionOverrides>
</OfficeApp>
+51
View File
@@ -0,0 +1,51 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT license.
import assert from "assert";
import fs from "fs";
import { describe, it } from "mocha";
import path from "path";
import { convertProject } from "../src/convert";
import { convert } from "office-addin-manifest-converter";
describe("office-addin-project tests", function() {
describe("convert.ts", function() {
describe("convertProject", function() {
it("Throws when manifest file does not exist", async function() {
try {
await convertProject("foo/bar.xml");
assert.fail("The expected Error was not thrown.");
} catch (err: any) {}
});
it("Throws when coverting already converted project", async function() {
try {
await convertProject("test/test.json");
assert.fail("The expected Error was not thrown.");
} catch (err: any) {}
});
});
describe("convertManifest", function() {
it("Converts test manifest", async function() {
this.timeout(6000);
const manifestPath = "./test/test-manifest.xml";
const outputPath = path.join(process.env.TEMP as string, "ConvertManifstTest");
await convert(manifestPath, outputPath);
assert.strictEqual(fs.existsSync(path.join(outputPath, "manifest.json")), true);
});
it("Converts TaskPane manifest", async function() {
this.timeout(6000);
const manifestPath = "./test/TaskPane.manifest.xml";
const outputPath = path.join(process.env.TEMP as string, "ConvertTaskpaneManifestTest");
await convert(manifestPath, outputPath);
assert.strictEqual(fs.existsSync(path.join(outputPath, "manifest.json")), true);
});
it("Can't convert malformed manifest", async function() {
this.timeout(6000);
const manifestPath = "./test/invalid.manifest.xml";
const outputPath = path.join(process.env.TEMP as string, "ConvertMalformedManifestTest");
convert(manifestPath, outputPath);
assert.strictEqual(fs.existsSync(path.join(outputPath, "manifest.json")), false);
});
});
});
});