dev #1
10
README.md
10
README.md
@@ -4,7 +4,7 @@ Barrierearme, dreistufige Portalnavigation auf Basis von SharePoint Managed Meta
|
|||||||
|
|
||||||
| Eigenschaft | Wert |
|
| Eigenschaft | Wert |
|
||||||
|---|---|
|
|---|---|
|
||||||
| Version | 2.0.0 |
|
| Version | 2.0.1 |
|
||||||
| SharePoint Framework | SPFx 1.4.1 |
|
| SharePoint Framework | SPFx 1.4.1 |
|
||||||
| Node.js | 8.17.0 |
|
| Node.js | 8.17.0 |
|
||||||
| Zieloberfläche | Moderne SharePoint-Seiten |
|
| Zieloberfläche | Moderne SharePoint-Seiten |
|
||||||
@@ -43,7 +43,7 @@ MegaMenuApplicationCustomizer
|
|||||||
└── responsive Darstellung
|
└── responsive Darstellung
|
||||||
```
|
```
|
||||||
|
|
||||||
Das MegaMenu wird einmal pro Site Collection konfiguriert. PortalSettings speichert die zentrale Konfiguration im Property Bag des Root Webs und synchronisiert eine identische, web-scoped Runtime-Bindung auf das Root Web und alle vorhandenen Unterwebs. Das MegaMenu selbst enthält keine eigene Administrationsoberfläche.
|
Das MegaMenu wird einmal pro Site Collection konfiguriert. Das Paket wird mit `skipFeatureDeployment: true` zentral über den App Catalog bereitgestellt, damit das SPFx-Bundle ohne eine App-Installation in jedem einzelnen Web verfügbar ist. PortalSettings speichert die zentrale Konfiguration im Property Bag des Root Webs. Eine Site-Collection-Action aktiviert das MegaMenu auf dem Root Web sowie auf vorhandenen und zukünftigen Unterwebs. Das MegaMenu selbst enthält keine eigene Administrationsoberfläche.
|
||||||
|
|
||||||
## Voraussetzungen
|
## Voraussetzungen
|
||||||
|
|
||||||
@@ -261,6 +261,12 @@ MegaMenu/
|
|||||||
|
|
||||||
## Versionshistorie
|
## Versionshistorie
|
||||||
|
|
||||||
|
### 2.0.1
|
||||||
|
|
||||||
|
- Zentrale SPFx-Bereitstellung mit `skipFeatureDeployment: true`.
|
||||||
|
- Das MegaMenu-Paket muss nicht mehr als App in jedem Unterweb installiert werden.
|
||||||
|
- Feature-Framework-Registrierung aus dem Paket entfernt; die Aktivierung erfolgt zentral über PortalSettings oder das Deploymentskript.
|
||||||
|
|
||||||
### 2.0.0
|
### 2.0.0
|
||||||
|
|
||||||
- Neue Application-Customizer-ID `c0abbffb-355d-4d4e-bd38-9e15fb811506`, um alte On-Premises-Manifest- und Loader-Zuordnungen sicher zu umgehen.
|
- Neue Application-Customizer-ID `c0abbffb-355d-4d4e-bd38-9e15fb811506`, um alte On-Premises-Manifest- und Loader-Zuordnungen sicher zu umgehen.
|
||||||
|
|||||||
@@ -3,22 +3,9 @@
|
|||||||
"solution": {
|
"solution": {
|
||||||
"name": "mega-menu-client-side-solution",
|
"name": "mega-menu-client-side-solution",
|
||||||
"id": "f4660e06-ce08-43ee-bfb7-5c4464e01133",
|
"id": "f4660e06-ce08-43ee-bfb7-5c4464e01133",
|
||||||
"version": "2.0.0.0",
|
"version": "2.0.1.0",
|
||||||
"includeClientSideAssets": true,
|
"includeClientSideAssets": true,
|
||||||
"skipFeatureDeployment": false,
|
"skipFeatureDeployment": true
|
||||||
"features": [
|
|
||||||
{
|
|
||||||
"title": "MegaMenu extension registration",
|
|
||||||
"description": "Registers the MegaMenu Application Customizer in the host web.",
|
|
||||||
"id": "1e4fdc74-8053-48b2-a15b-e975d61eb71f",
|
|
||||||
"version": "2.0.0.0",
|
|
||||||
"assets": {
|
|
||||||
"elementManifests": [
|
|
||||||
"elements.xml"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"paths": {
|
"paths": {
|
||||||
"zippedPackage": "solution/mega-menu.sppkg"
|
"zippedPackage": "solution/mega-menu.sppkg"
|
||||||
|
|||||||
@@ -64,8 +64,15 @@ try {
|
|||||||
|
|
||||||
foreach ($web in $site.AllWebs) {
|
foreach ($web in $site.AllWebs) {
|
||||||
try {
|
try {
|
||||||
|
$webUrl = $web.Url
|
||||||
|
$userCustomActions = $web.UserCustomActions
|
||||||
|
|
||||||
|
if ($null -eq $userCustomActions) {
|
||||||
|
throw ('UserCustomActions konnten fuer das Web nicht geladen werden: ' + $webUrl)
|
||||||
|
}
|
||||||
|
|
||||||
$actions = @(
|
$actions = @(
|
||||||
$web.UserCustomActions |
|
$userCustomActions |
|
||||||
Where-Object {
|
Where-Object {
|
||||||
$_.ClientSideComponentId -eq $componentId -or
|
$_.ClientSideComponentId -eq $componentId -or
|
||||||
$_.ClientSideComponentId -eq $legacyComponentId
|
$_.ClientSideComponentId -eq $legacyComponentId
|
||||||
@@ -88,7 +95,7 @@ try {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (-not $currentAction) {
|
if (-not $currentAction) {
|
||||||
$currentAction = $web.UserCustomActions.Add()
|
$currentAction = $userCustomActions.Add()
|
||||||
$currentAction.Name = [Guid]::NewGuid().ToString('B')
|
$currentAction.Name = [Guid]::NewGuid().ToString('B')
|
||||||
$created++
|
$created++
|
||||||
}
|
}
|
||||||
@@ -105,7 +112,7 @@ try {
|
|||||||
$currentAction.Update()
|
$currentAction.Update()
|
||||||
$web.Update()
|
$web.Update()
|
||||||
|
|
||||||
Write-Host ('MegaMenu synchronisiert: ' + $web.Url) -ForegroundColor Green
|
Write-Host ('MegaMenu synchronisiert: ' + $webUrl) -ForegroundColor Green
|
||||||
}
|
}
|
||||||
finally {
|
finally {
|
||||||
$web.Dispose()
|
$web.Dispose()
|
||||||
|
|||||||
2
package-lock.json
generated
2
package-lock.json
generated
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "mega-menu",
|
"name": "mega-menu",
|
||||||
"version": "2.0.0",
|
"version": "2.0.1",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "mega-menu",
|
"name": "mega-menu",
|
||||||
"version": "2.0.0",
|
"version": "2.0.1",
|
||||||
"private": true,
|
"private": true,
|
||||||
"main": "lib/index.js",
|
"main": "lib/index.js",
|
||||||
"engines": {
|
"engines": {
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ export default class MegaMenuApplicationCustomizer
|
|||||||
const debug: boolean = this._isDebugEnabled();
|
const debug: boolean = this._isDebugEnabled();
|
||||||
debugLog(debug, LOG_SOURCE, 'onInit started.', {
|
debugLog(debug, LOG_SOURCE, 'onInit started.', {
|
||||||
componentId: UserCustomActionMegaMenuId,
|
componentId: UserCustomActionMegaMenuId,
|
||||||
version: '2.0.0',
|
version: '2.0.1',
|
||||||
properties: this.properties || {},
|
properties: this.properties || {},
|
||||||
pageUrl: window.location.href,
|
pageUrl: window.location.href,
|
||||||
webUrl: this.context.pageContext.web.absoluteUrl,
|
webUrl: this.context.pageContext.web.absoluteUrl,
|
||||||
|
|||||||
Reference in New Issue
Block a user