DscResources/Viva/Viva.schema.psm1

# (2025-06-13 01:51:26) Generated using Microsoft365DSC v1.25.611.1
Configuration 'Viva'
{
    param
    (
        [Parameter(Mandatory = $true)]
        [System.String]
        $ApplicationId,

        [Parameter(Mandatory = $true)]
        [System.String]
        $TenantId,

        [Parameter(Mandatory = $true)]
        [System.String]
        $CertificateThumbprint
    )

    Import-DscResource -ModuleName Microsoft365DSC

    foreach ($EngagementRoleMember in $ConfigurationData.NonNodeData.Viva.EngagementRoleMember)
    {
        $resourceTitle = 'VivaEngagementRoleMember-{0}' -f $EngagementRoleMember.Role
        $resourceTitle = $resourceTitle -replace "@","_" -replace "/","_" -replace ":","_"

        $parameters = $EngagementRoleMember
        $parameters.ApplicationId = $ApplicationId
        $parameters.TenantId = $TenantId
        $parameters.CertificateThumbprint = $CertificateThumbprint

        if ($parameters.ContainsKey('UniqueId'))
        {
            $parameters.Remove('UniqueId')
        }

        (Get-DscSplattedResource -ResourceName 'VivaEngagementRoleMember' -ExecutionName $resourceTitle -Properties $parameters -NoInvoke).Invoke($parameters)
    }
}