Skip to content

Commit 0ac5d8b

Browse files
authored
Release v2.6.0 (#197)
## 🎯 Aim Create a new release ## 📷 Result ![CICD-pipeline](https://github.com/pnp/vscode-viva/assets/58668583/27bea558-3906-42ac-bbf4-9b0ae8cf0e85) ![scaffolding](https://github.com/pnp/vscode-viva/assets/58668583/90525786-8543-445e-975f-1f765340ee26) ## ✅ What was done - [X] Refactored and rebuilt the scaffolding process - [X] Added an additional dependency step in the scaffolding form - [X] Fixed in sample gallery - [X] Added Azure DevOps pipeline support - [X] Updated account and app catalog view to tenant health information and tenant-wide extensions
1 parent fd28f87 commit 0ac5d8b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+1101
-535
lines changed

CHANGELOG.md

+10
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
# Change Log
22

3+
## [2.6.0] - 2024-03-18
4+
5+
- Refactored and rebuilt the scaffolding process
6+
- Added an additional dependency step in the scaffolding form
7+
- Fixed bug in sample gallery filters
8+
- Added Azure DevOps pipeline support
9+
- Updated account and app catalog view
10+
- Added tenant health information
11+
- Added tenant-wide extensions list
12+
313
## [2.5.0] - 2024-02-05
414

515
- Refactored sample galleries to a single sample gallery

README.md

+31-9
Original file line numberDiff line numberDiff line change
@@ -96,28 +96,46 @@ Start your solution based on the provided set of ACE scenarios with ready-to-use
9696

9797
### 5️⃣ Create a new project
9898

99-
Creating a new project was never easier. Just use the **create a new project** action, and the extension will guide you through the process.
99+
Creating a new project was never easier. Just use the **create a new project** action, and the extension will guide you through the process with a dedicated scaffolding form.
100100

101-
Check it out 👇.
101+
![Create new project](./assets/images/scaffolding.png)
102+
103+
Check it out in action 👇.
102104

103-
![Create new project](./assets/images/scaffolding.gif)
105+
![Create new project](./assets/images/scaffolding-form.gif)
104106

105107
It's possible to scaffold any kind of SPFx project.
106108

107-
![Create new project](./assets/images/scaffolding.png)
109+
![All SPFx project support](./assets/images/scaffolding-support.png)
110+
111+
Install additional dependencies with a single click straight from the scaffolding form. Currently we support installing [PnP reusable property pane controls](https://pnp.github.io/sp-dev-fx-property-controls/), [PnP reusable React controls](https://pnp.github.io/sp-dev-fx-controls-react/), and [PnPjs](https://pnp.github.io/pnpjs/).
112+
113+
![Additional dependency step](./assets/images/scaffolding-additional-step.png)
108114

109115
[Check out our docs for more details](https://github.com/pnp/vscode-viva/wiki/5.2-Scaffolding#1-scaffold-a-new-spfx-project)
110116

111117
### 6️⃣ Login to your tenant & retrieve environment details
112118

113-
The extension also allows you to login to your Microsoft 365 tenant using CLI for Microsoft 365.
119+
![tenant info](./assets/images/tenant-info.png)
120+
121+
The extension allows you to login to your Microsoft 365 tenant using CLI for Microsoft 365.
114122

115123
![login](./assets/images/login.png)
116124

117-
Thanks to that the extension will retrieve helpful URLs from your tenant like the link to SharePoint main site and tenant level as well as site level App Catalog.
125+
Thanks to that the extension will retrieve helpful URLs from your tenant like:
126+
127+
- link to SharePoint main site
128+
- link to SharePoint admin site
129+
- link to SharePoint web API permission management page
130+
131+
Additionally, the extension will check and retrieve tenant service health incidents that are currently happening in your tenant so that you gain quick insights on your tenant health.
118132

119133
![tenant details](./assets/images/tenant-links.png)
120134

135+
After successful login an additional view is presented that shows list links to app catalogs available in the tenant, both tenant-level and all site-level app catalogs. Additionally it will show you all tenant-wide extensions installed on your tenant with.
136+
137+
![tenant details](./assets/images/app-catalog-list.png)
138+
121139
Login-in is also required for some actions to work properly like the deploy action which allows you to upload of the .sppkg file to the tenant or site-level App Catalog.
122140

123141
Additionally, when an SPFx project is opened the extension will check serve.json file and suggest updating it to set the properties based on the currently logged-in tenant.
@@ -142,13 +160,17 @@ The actions section allows unique functionalities that may significantly boost p
142160

143161
Currently the extension allows you to:
144162

145-
- **CI/CD GitHub Workflow** - This action will allow you to generate yaml GitHub workflow that uses CLI for Microsoft 365 GitHub actions to bundle, package, and deploy your project to an app catalog on every code push.
163+
- **CI/CD Workflow** - This action will allow you to generate yaml CI/CD GitHub Workflow or Azure DevOps Pipeline to bundle, package, and deploy your project to any app catalog on every code push.
146164

147165
![CI CD pipeline](./assets/images/CICD-pipeline.png)
148166

149-
Check it out in action 👇
167+
Check it out in action for GitHub👇
168+
169+
![GitHub CI CD workflow](./assets/images/gh-ci-cd.gif)
170+
171+
And for Azure DevOps👇
150172

151-
![CI CD pipeline](./assets/images/CICD-pipeline.gif)
173+
![Azure DevOps CI CD pipeline](./assets/images/azdo-ci-cd.gif)
152174

153175
[Check out our docs for more details](https://github.com/pnp/vscode-viva/wiki/5.5-Actions#cicd-github-workflow)
154176

assets/fonts/fabric-icons.woff

3.19 KB
Binary file not shown.

assets/icons/dark/M365.svg

-3
This file was deleted.

assets/icons/dark/sharepoint.svg

-4
This file was deleted.

assets/icons/light/M365.svg

-3
This file was deleted.

assets/icons/light/sharepoint.svg

-4
This file was deleted.

assets/images/CICD-pipeline.gif

-3.88 MB
Binary file not shown.

assets/images/CICD-pipeline.png

136 KB
Loading

assets/images/add-component.png

84.3 KB
Loading

assets/images/app-catalog-list.png

49.3 KB
Loading

assets/images/azdo-ci-cd.gif

5.08 MB
Loading

assets/images/deploy.png

57.9 KB
Loading

assets/images/gh-ci-cd.gif

4.84 MB
Loading

assets/images/grant-permissions.png

32.8 KB
Loading

assets/images/login.png

-2.05 KB
Loading

assets/images/rename.png

29.1 KB
Loading

assets/images/samples-responsive.png

19 KB
Loading

assets/images/samples.png

1.38 KB
Loading
84.3 KB
Loading

assets/images/scaffolding-form.gif

1.64 MB
Loading

assets/images/scaffolding-support.png

64.9 KB
Loading

assets/images/scaffolding.gif

-1.88 MB
Binary file not shown.

assets/images/scaffolding.png

296 KB
Loading

assets/images/start.png

-12.3 KB
Loading

assets/images/tenant-info.png

425 KB
Loading

assets/images/tenant-links.png

13.1 KB
Loading

assets/images/upgrade-project.png

86 KB
Loading

assets/images/validate-project.png

66.8 KB
Loading
14.4 KB
Loading

package-lock.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+71-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "viva-connections-toolkit",
33
"displayName": "Viva Connections Toolkit",
44
"description": "Viva Connections Toolkit aims to boost your productivity in developing and managing SharePoint Framework solutions helping at every stage of your development flow, from setting up your development workspace to deploying a solution straight to your tenant without the need to leave VS Code and now even create a CI/CD pipeline to introduce automate deployment of your app. This toolkit is provided by the community.",
5-
"version": "2.5.0",
5+
"version": "2.6.0",
66
"publisher": "m365pnp",
77
"preview": false,
88
"homepage": "https://github.com/pnp/vscode-viva",
@@ -45,6 +45,50 @@
4545
"license": "MIT",
4646
"main": "./dist/extension.js",
4747
"contributes": {
48+
"icons": {
49+
"spo-m365": {
50+
"description": "Microsoft 365 icon",
51+
"default": {
52+
"fontPath": "./assets/fonts/fabric-icons.woff",
53+
"fontCharacter": "\\ED72"
54+
}
55+
},
56+
"spo-logo": {
57+
"description": "SharePoint Online icon",
58+
"default": {
59+
"fontPath": "./assets/fonts/fabric-icons.woff",
60+
"fontCharacter": "\\ED18"
61+
}
62+
},
63+
"spo-app-list": {
64+
"description": "Tenant-Wide extension list icon",
65+
"default": {
66+
"fontPath": "./assets/fonts/fabric-icons.woff",
67+
"fontCharacter": "\\E31E"
68+
}
69+
},
70+
"spo-app": {
71+
"description": "App icon",
72+
"default": {
73+
"fontPath": "./assets/fonts/fabric-icons.woff",
74+
"fontCharacter": "\\ECDC"
75+
}
76+
},
77+
"m365-warning": {
78+
"description": "Warning icon",
79+
"default": {
80+
"fontPath": "./assets/fonts/fabric-icons.woff",
81+
"fontCharacter": "\\E7BA"
82+
}
83+
},
84+
"m365-health": {
85+
"description": "Health icon",
86+
"default": {
87+
"fontPath": "./assets/fonts/fabric-icons.woff",
88+
"fontCharacter": "\\E95E"
89+
}
90+
}
91+
},
4892
"viewsContainers": {
4993
"activitybar": [
5094
{
@@ -68,7 +112,7 @@
68112
},
69113
{
70114
"id": "pnp-view-environment",
71-
"name": "Environment details",
115+
"name": "App Catalog details",
72116
"when": "pnp.project.isSPFxProject && pnp.project.isLoggedIn"
73117
},
74118
{
@@ -166,6 +210,18 @@
166210
"title": "Sign out from M365",
167211
"category": "Viva Connections Toolkit",
168212
"icon": "$(sign-out)"
213+
},
214+
{
215+
"command": "viva-connections-toolkit.refreshAppCatalogTreeView",
216+
"title": "Refresh App Catalog list",
217+
"category": "Viva Connections Toolkit",
218+
"icon": "$(refresh)"
219+
},
220+
{
221+
"command": "viva-connections-toolkit.refreshAccountTreeView",
222+
"title": "Refresh Account view",
223+
"category": "Viva Connections Toolkit",
224+
"icon": "$(refresh)"
169225
}
170226
],
171227
"menus": {
@@ -187,6 +243,18 @@
187243
"when": "pnp.project.isSPFxProject"
188244
}
189245
],
246+
"view/title": [
247+
{
248+
"command": "viva-connections-toolkit.refreshAppCatalogTreeView",
249+
"when": "view == pnp-view-environment",
250+
"group": "navigation"
251+
},
252+
{
253+
"command": "viva-connections-toolkit.refreshAccountTreeView",
254+
"when": "view == pnp-view-account",
255+
"group": "navigation"
256+
}
257+
],
190258
"view/item/context": [
191259
{
192260
"command": "viva-connections-toolkit.logout",
@@ -276,4 +344,4 @@
276344
"react-markdown": "^9.0.1",
277345
"remark-gfm": "^4.0.0"
278346
}
279-
}
347+
}

src/constants/Commands.ts

+4
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,8 @@ export const Commands = {
4343

4444
// Serving
4545
serveProject: `${EXTENSION_NAME}.serveProject`,
46+
47+
// TreeViews
48+
refreshAppCatalogTreeView: `${EXTENSION_NAME}.refreshAppCatalogTreeView`,
49+
refreshAccountTreeView: `${EXTENSION_NAME}.refreshAccountTreeView`,
4650
};

src/constants/ExtensionTypes.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ export const ExtensionTypes = [
1717
{
1818
name: 'Field Customizer',
1919
value: ExtensionType.field,
20-
templates: ['React', 'Minimal', 'No framework']
20+
templates: ['No framework', 'React', 'Minimal']
2121
},
2222
{
2323
name: 'ListView Command Set',
@@ -27,7 +27,7 @@ export const ExtensionTypes = [
2727
{
2828
name: 'Form Customizer',
2929
value: ExtensionType.formCustomizer,
30-
templates: ['React', 'No framework']
30+
templates: ['No framework', 'React']
3131
},
3232
{
3333
name: 'Search Query Modifier',

src/constants/ProjectFileContent.ts

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
/* eslint-disable no-unused-vars */
22
// eslint-disable-next-line no-shadow
33
export enum ProjectFileContent {
4-
init = 'init',
4+
init = 'init-project',
55
initScenario = 'init-scenario',
6+
installReusablePropertyPaneControls = 'install-spfx-property-controls',
7+
installReusableReactControls = 'install-spfx-controls-react',
8+
installPnPJs = 'install-pnpjs',
69
}

0 commit comments

Comments
 (0)