From 73a3d2b7e1c77bafcdf0204d91e17f8cb8af5b0e Mon Sep 17 00:00:00 2001 From: Hugo Bernier Date: Sat, 31 Aug 2024 20:04:30 -0400 Subject: [PATCH] Updated sample.json, readme, added container --- .../.devcontainer/devcontainer.json | 75 +++-- samples/react-my-onedrive-info/.nvmrc | 1 + samples/react-my-onedrive-info/README.md | 12 +- .../react-my-onedrive-info/assets/sample.json | 6 +- .../react-my-onedrive-info/package-lock.json | 2 +- .../react-my-onedrive-info/spfx.upgrade.md | 275 ------------------ 6 files changed, 48 insertions(+), 323 deletions(-) create mode 100644 samples/react-my-onedrive-info/.nvmrc delete mode 100644 samples/react-my-onedrive-info/spfx.upgrade.md diff --git a/samples/react-my-onedrive-info/.devcontainer/devcontainer.json b/samples/react-my-onedrive-info/.devcontainer/devcontainer.json index d0df53099..a16d708b1 100644 --- a/samples/react-my-onedrive-info/.devcontainer/devcontainer.json +++ b/samples/react-my-onedrive-info/.devcontainer/devcontainer.json @@ -1,39 +1,38 @@ -// For more information on how to run this SPFx project in a VS Code Remote Container, please visit https://aka.ms/spfx-devcontainer { - "name": "SPFx 1.16.1", - "image": "docker.io/m365pnp/spfx:1.16.1", - // Set *default* container specific settings.json values on container create. - "settings": {}, - // Add the IDs of extensions you want installed when the container is created. - "extensions": [ - "editorconfig.editorconfig", - "dbaeumer.vscode-eslint" - ], - // Use 'forwardPorts' to make a list of ports inside the container available locally. - "forwardPorts": [ - 4321, - 35729 - ], - "portsAttributes": { - "4321": { - "protocol": "https", - "label": "Manifest", - "onAutoForward": "silent", - "requireLocalPort": true - }, - // Not needed for SPFx>= 1.12.1 - // "5432": { - // "protocol": "https", - // "label": "Workbench", - // "onAutoForward": "silent" - // }, - "35729": { - "protocol": "https", - "label": "LiveReload", - "onAutoForward": "silent", - "requireLocalPort": true - } - }, - "postCreateCommand": "bash .devcontainer/spfx-startup.sh", - "remoteUser": "node" -} \ No newline at end of file + "name": "SPFx 1.19.0", + "image": "docker.io/m365pnp/spfx:1.19.0", + "customizations": { + "vscode": { + "extensions": [ + "editorconfig.editorconfig", + "dbaeumer.vscode-eslint" + ] + } + }, + "forwardPorts": [ + 4321, + 35729, + 5432 + ], + "portsAttributes": { + "4321": { + "protocol": "https", + "label": "Manifest", + "onAutoForward": "silent", + "requireLocalPort": true + }, + "5432": { + "protocol": "https", + "label": "Workbench", + "onAutoForward": "silent" + }, + "35729": { + "protocol": "https", + "label": "LiveReload", + "onAutoForward": "silent", + "requireLocalPort": true + } + }, + "postCreateCommand": "bash .devcontainer/spfx-startup.sh", + "remoteUser": "node" +} diff --git a/samples/react-my-onedrive-info/.nvmrc b/samples/react-my-onedrive-info/.nvmrc new file mode 100644 index 000000000..860cc5000 --- /dev/null +++ b/samples/react-my-onedrive-info/.nvmrc @@ -0,0 +1 @@ +v18.17.1 diff --git a/samples/react-my-onedrive-info/README.md b/samples/react-my-onedrive-info/README.md index 7f3515f44..92945cda8 100644 --- a/samples/react-my-onedrive-info/README.md +++ b/samples/react-my-onedrive-info/README.md @@ -15,16 +15,16 @@ MyOneDriveInfo solution contains Adaptive card extension for Viva connection wit | :warning: Important | |:---------------------------| -| Every SPFx version is only compatible with specific version(s) of Node.js. In order to be able to build this sample, please ensure that the version of Node on your workstation matches one of the versions listed in this section. This sample will not work on a different version of Node.| +| Every SPFx version is optimally compatible with specific versions of Node.js. In order to be able to build this sample, you need to ensure that the version of Node on your workstation matches one of the versions listed in this section. This sample will not work on a different version of Node.| |Refer to for more information on SPFx compatibility. | This sample is optimally compatible with the following environment configuration: -![SPFx 1.16.1](https://img.shields.io/badge/SPFx-1.16.1-green.svg) -![Node.js v16 | v14 | v12](https://img.shields.io/badge/Node.js-v16%20%7C%20v14%20%7C%20v12-green.svg) +![SPFx 1.19.0](https://img.shields.io/badge/SPFx-1.19.0-green.svg) +![Node.js v18](https://img.shields.io/badge/Node.js-v18-green.svg) ![Compatible with SharePoint Online](https://img.shields.io/badge/SharePoint%20Online-Compatible-green.svg) ![Does not work with SharePoint 2019](https://img.shields.io/badge/SharePoint%20Server%202019-Incompatible-red.svg "SharePoint Server 2019 requires SPFx 1.4.1 or lower") -![Does not work with SharePoint 2016 (Feature Pack 2)]( "SharePoint Server 2016 Feature Pack 2 requires SPFx 1.1") +![Does not work with SharePoint 2016 (Feature Pack 2)](https://img.shields.io/badge/SharePoint%20Server%202016%20(Feature%20Pack%202)-Incompatible-red.svg "SharePoint Server 2016 Feature Pack 2 requires SPFx 1.1") ![Local Workbench Unsupported](https://img.shields.io/badge/Local%20Workbench-Unsupported-red.svg "Local workbench is no longer available as of SPFx 1.13 and above") ![Hosted Workbench Compatible](https://img.shields.io/badge/Hosted%20Workbench-Compatible-green.svg) ![Compatible with Remote Containers](https://img.shields.io/badge/Remote%20Containers-Compatible-green.svg) @@ -38,16 +38,16 @@ For more information about SPFx compatibility, please refer to Get your own free development tenant by subscribing to [Microsoft 365 developer program](https://aka.ms/m365/devprogram) - ## Contributors -* [Harminder Singh](https://github.com/HarminderSethi) +- [Harminder Singh](https://github.com/HarminderSethi) ## Version history | Version | Date | Comments | | ------- | ---------------- | --------------- | | 1.1 | January 24, 2021 | Initial Release | +| 1.2 | August 26, 2024 | Upgraded to SPFx 1.19.0 and @fluentui/react-components to 9.54.13 | ## Minimal Path to Awesome diff --git a/samples/react-my-onedrive-info/assets/sample.json b/samples/react-my-onedrive-info/assets/sample.json index 7c2a8a224..912ac3fcd 100644 --- a/samples/react-my-onedrive-info/assets/sample.json +++ b/samples/react-my-onedrive-info/assets/sample.json @@ -2,7 +2,7 @@ { "name": "pnp-sp-dev-spfx-web-parts-react-my-onedrive-info", "source": "pnp", - "title": "My OneDrive Info Web Part", + "title": "My OneDrive Info", "shortDescription": "MyOneDriveInfo solution contains Adaptive card extension for Viva connection with below functionalities", "url": "https://github.com/pnp/sp-dev-fx-webparts/tree/main/samples/react-my-onedrive-info", "downloadUrl": "https://pnp.github.io/download-partial/?url=https://github.com/pnp/sp-dev-fx-webparts/tree/main/samples/react-my-onedrive-info", @@ -10,7 +10,7 @@ "MyOneDriveInfo solution contains Adaptive card extension for Viva connection with below functionalities" ], "creationDateTime": "2023-02-03", - "updateDateTime": "2023-02-03", + "updateDateTime": "2024-08-26", "products": [ "SharePoint" ], @@ -21,7 +21,7 @@ }, { "key": "SPFX-VERSION", - "value": "1.16.1" + "value": "1.19.0" } ], "thumbnails": [ diff --git a/samples/react-my-onedrive-info/package-lock.json b/samples/react-my-onedrive-info/package-lock.json index 688427cae..0ce8705e0 100644 --- a/samples/react-my-onedrive-info/package-lock.json +++ b/samples/react-my-onedrive-info/package-lock.json @@ -30,7 +30,7 @@ "typescript": "4.7.4" }, "engines": { - "node": ">=16.13.0 <17.0.0" + "node": ">=16.13.0 <17.0.0 || >=18.17.1 <19.0.0" } }, "node_modules/@ampproject/remapping": { diff --git a/samples/react-my-onedrive-info/spfx.upgrade.md b/samples/react-my-onedrive-info/spfx.upgrade.md deleted file mode 100644 index e289e1d0d..000000000 --- a/samples/react-my-onedrive-info/spfx.upgrade.md +++ /dev/null @@ -1,275 +0,0 @@ -# Upgrade project react-my-one-drive-info-client-side-solution to v1.19.0 - -Date: 8/28/2024 - -## Findings - -Following is the list of steps required to upgrade your project to SharePoint Framework version 1.19.0. [Summary](#Summary) of the modifications is included at the end of the report. - -### FN001001 @microsoft/sp-core-library | Required - -Upgrade SharePoint Framework dependency package @microsoft/sp-core-library - -Execute the following command: - -```sh -npm i -SE @microsoft/sp-core-library@1.19.0 -``` - -File: [./package.json:17:5](./package.json) - -### FN001021 @microsoft/sp-property-pane | Required - -Upgrade SharePoint Framework dependency package @microsoft/sp-property-pane - -Execute the following command: - -```sh -npm i -SE @microsoft/sp-property-pane@1.19.0 -``` - -File: [./package.json:18:5](./package.json) - -### FN001034 @microsoft/sp-adaptive-card-extension-base | Optional - -Upgrade SharePoint Framework dependency package @microsoft/sp-adaptive-card-extension-base - -Execute the following command: - -```sh -npm i -SE @microsoft/sp-adaptive-card-extension-base@1.19.0 -``` - -File: [./package.json:16:5](./package.json) - -### FN002001 @microsoft/sp-build-web | Required - -Upgrade SharePoint Framework dev dependency package @microsoft/sp-build-web - -Execute the following command: - -```sh -npm i -DE @microsoft/sp-build-web@1.20.1 -``` - -File: [./package.json:26:5](./package.json) - -### FN002002 @microsoft/sp-module-interfaces | Required - -Upgrade SharePoint Framework dev dependency package @microsoft/sp-module-interfaces - -Execute the following command: - -```sh -npm i -DE @microsoft/sp-module-interfaces@1.20.1 -``` - -File: [./package.json:27:5](./package.json) - -### FN002022 @microsoft/eslint-plugin-spfx | Required - -Upgrade SharePoint Framework dev dependency package @microsoft/eslint-plugin-spfx - -Execute the following command: - -```sh -npm i -DE @microsoft/eslint-plugin-spfx@1.20.1 -``` - -File: [./package.json:23:5](./package.json) - -### FN002023 @microsoft/eslint-config-spfx | Required - -Upgrade SharePoint Framework dev dependency package @microsoft/eslint-config-spfx - -Execute the following command: - -```sh -npm i -DE @microsoft/eslint-config-spfx@1.20.1 -``` - -File: [./package.json:22:5](./package.json) - -### FN010001 .yo-rc.json version | Recommended - -Update version in .yo-rc.json - -```json -{ - "@microsoft/generator-sharepoint": { - "version": "1.19.0" - } -} -``` - -File: [./.yo-rc.json:10:5](./.yo-rc.json) - -### FN002026 typescript | Required - -Upgrade SharePoint Framework dev dependency package typescript - -Execute the following command: - -```sh -npm i -DE typescript@4.7.4 -``` - -File: [./package.json:33:5](./package.json) - -### FN002028 @microsoft/rush-stack-compiler-4.7 | Required - -Install SharePoint Framework dev dependency package @microsoft/rush-stack-compiler-4.7 - -Execute the following command: - -```sh -npm i -DE @microsoft/rush-stack-compiler-4.7@0.1.0 -``` - -File: [./package.json:21:3](./package.json) - -### FN010010 .yo-rc.json @microsoft/teams-js SDK version | Recommended - -Update @microsoft/teams-js SDK version in .yo-rc.json - -```json -{ - "@microsoft/generator-sharepoint": { - "sdkVersions": { - "@microsoft/teams-js": "2.12.0" - } - } -} -``` - -File: [./.yo-rc.json:2:3](./.yo-rc.json) - -### FN012017 tsconfig.json extends property | Required - -Update tsconfig.json extends property - -```json -{ - "extends": "./node_modules/@microsoft/rush-stack-compiler-4.7/includes/tsconfig-web.json" -} -``` - -File: [./tsconfig.json:2:3](./tsconfig.json) - -### FN021003 package.json engines.node | Required - -Update package.json engines.node property - -```json -{ - "engines": { - "node": ">=16.13.0 <17.0.0 || >=18.17.1 <19.0.0" - } -} -``` - -File: [./package.json:6:5](./package.json) - -### FN002024 eslint | Required - -Install SharePoint Framework dev dependency package eslint - -Execute the following command: - -```sh -npm i -DE eslint@8.7.0 -``` - -File: [./package.json:21:3](./package.json) - -### FN007002 serve.json initialPage | Required - -Update serve.json initialPage URL - -```json -{ - "initialPage": "https://{tenantDomain}/_layouts/workbench.aspx" -} -``` - -File: [./config/serve.json:5:3](./config/serve.json) - -### FN017001 Run npm dedupe | Optional - -If, after upgrading npm packages, when building the project you have errors similar to: "error TS2345: Argument of type 'SPHttpClientConfiguration' is not assignable to parameter of type 'SPHttpClientConfiguration'", try running 'npm dedupe' to cleanup npm packages. - -Execute the following command: - -```sh -npm dedupe -``` - -File: [./package.json](./package.json) - -## Summary - -### Execute script - -```sh -npm i -SE @microsoft/sp-core-library@1.19.0 @microsoft/sp-property-pane@1.19.0 @microsoft/sp-adaptive-card-extension-base@1.19.0 -npm i -DE @microsoft/sp-build-web@1.20.1 @microsoft/sp-module-interfaces@1.20.1 @microsoft/eslint-plugin-spfx@1.20.1 @microsoft/eslint-config-spfx@1.20.1 typescript@4.7.4 @microsoft/rush-stack-compiler-4.7@0.1.0 eslint@8.7.0 -npm dedupe -``` - -### Modify files - -#### [./.yo-rc.json](./.yo-rc.json) - -Update version in .yo-rc.json: - -```json -{ - "@microsoft/generator-sharepoint": { - "version": "1.19.0" - } -} -``` - -Update @microsoft/teams-js SDK version in .yo-rc.json: - -```json -{ - "@microsoft/generator-sharepoint": { - "sdkVersions": { - "@microsoft/teams-js": "2.12.0" - } - } -} -``` - -#### [./tsconfig.json](./tsconfig.json) - -Update tsconfig.json extends property: - -```json -{ - "extends": "./node_modules/@microsoft/rush-stack-compiler-4.7/includes/tsconfig-web.json" -} -``` - -#### [./package.json](./package.json) - -Update package.json engines.node property: - -```json -{ - "engines": { - "node": ">=16.13.0 <17.0.0 || >=18.17.1 <19.0.0" - } -} -``` - -#### [./config/serve.json](./config/serve.json) - -Update serve.json initialPage URL: - -```json -{ - "initialPage": "https://{tenantDomain}/_layouts/workbench.aspx" -} -``` \ No newline at end of file