sp-dev-fx-webparts/samples/react-save-attachments/README.md

64 lines
3.0 KiB
Markdown
Raw Normal View History

2020-10-04 07:54:51 -04:00
# React Save Attachments
## Summary
2020-10-05 22:25:16 -04:00
This SPFx Outlook Add-In lets users save any email attachments to a OneDrive folder. The users can select any OneDrive folder/subfolder and choose the attachments that need to be saved. It uses Microsoft Graph API to fetch the OneDrive folders and upload the attachment files.
2020-10-04 07:54:51 -04:00
2020-10-06 16:39:32 -04:00
![Preview](./assets/react-save-attachments-1.png)
![Save Attachments in Action](./assets/react-save-attachments-2.gif)
2020-10-04 07:54:51 -04:00
## Used SharePoint Framework Version
2020-10-05 22:20:00 -04:00
![SPFx 1.10](https://img.shields.io/badge/version-1.10.0-green.svg)
2020-10-04 07:54:51 -04:00
## Features
This web part illustrates the below features for creating Outlook Add-Ins using SPFx.
* Select Office context and attributes of currently selected mail
* Requesting **Mail.Read** and **Files.ReadWrite** permission scopes for Microsoft Graph through the `webApiPermissionRequests` property in `package-solution.json`
2020-10-05 22:20:00 -04:00
* Use Microsoft Graph to retrieve folders and sub-folders for OneDrive
* Use Microsoft Graph to retrieve complete mail `mimestream` by given `ID`
2020-10-04 07:54:51 -04:00
* Use Microsoft Graph to save normal or big files (in size bigger 4MB) with different concepts
## Solution
Solution|Author(s)
--------|---------
react-save-attachments | [Aakash Bhardwaj](https://twitter.com/aakash_316)
2020-10-05 22:20:00 -04:00
## Version history
Version|Date|Comments
-------|----|--------
1.0|October 4, 2020|Initial release
2020-10-04 07:54:51 -04:00
## Minimal Path to Awesome
* Clone this repository
* In the command line run:
* Restore dependencies: `npm install`
From here you can also follow the deployment steps from the official [Microsoft Tutorial](https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/get-started/office-addins-tutorial#packaging-and-deploying-your-solution-to-sharepoint)
* Build solution `gulp build --ship`
* Bundle solution: `gulp bundle --ship`
* Package solution: `gulp package-solution --ship`
* Locate solution at `.\sharepoint\solution\react-save-attachments.sppkg`
* Upload it to your tenant app catalog
* Go to your Outlook Web Access then double-click an e-mail to open it in a window
* Choose **...** and **Get Add-ins**
* Choose **My Add-ins** from left menu
* Under **Custom add-ins**, choose **+ Add a custom add-in**, then **Add from file...**
* Upload the manifest xml file from `\officeAddin` folder
* Click **Install** on the warning message to get your add-in available on the tenant
2020-10-05 22:21:14 -04:00
* Go to the **API Management** section in the new SharePoint Admin Center (*https://{tenantname}-admin.sharepoint.com/_layouts/15/online/AdminHome.aspx#/webApiPermissionManagement*)
* **Approve** the permission request for **Mail.ReadWrite** and **Files.ReadWrite** to **Microsoft Graph**
2020-10-04 07:54:51 -04:00
## Disclaimer
**THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.**
---
2020-10-06 16:39:32 -04:00
<img src="https://telemetry.sharepointpnp.com/sp-dev-fx-webparts/samples/react-save-attachments" />