Modules/UniversalDashboard.MaterialUI/Scripts/paper.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
function New-UDMuPaper {
    param(
        [Parameter()][string]$Id = (New-Guid).ToString(),
        [Parameter()][ScriptBlock]$Content,
        [Parameter()][switch]$IsEndPoint,
        [Parameter()][string]$Width = '500',
        [Parameter()][string]$Height = '500',
        [Parameter()][Switch]$Square,
        [Parameter()][Hashtable]$Style,
        [Parameter()][int]$Elevation,
        [Parameter()][switch]$AutoRefresh,
        [Parameter()][int]$RefreshInterval = 5
    )

    End 
    {
        if($IsEndPoint){
            $EndPoint = New-UDEndPoint -Endpoint $Content -Id $Id 
        }

        @{
            type = 'mu-paper'
            isPlugin = $true
            assetId = $MUAssetId
            
            id = $Id
            isEndpoint = $IsEndPoint.IsPresent
            width  = $Width 
            content = $Content.Invoke()
            height = $Height
            square = $Square.IsPresent
            style = $Style
            elevation = $Elevation
            refreshInterval = $RefreshInterval
            autoRefresh = $AutoRefresh.IsPresent
        }
    }
}