Scripts/New-UDGauge.ps1
<# .SYNOPSIS Sample control for UniversalDashboard. .DESCRIPTION Sample control function for UniversalDashboard. This function must have an ID and return a hash table. .PARAMETER Id An id for the component default value will be generated by new-guid. .EXAMPLE PS C:\> <example usage> Explanation of what the example does .INPUTS Inputs (if any) .OUTPUTS Output (if any) .NOTES General notes #> function New-UDGauge { param( [Parameter()] [string]$Id = (New-Guid).ToString(), [Parameter()] [int]$MaxValue = 100, [Parameter()] [int]$Value = 50, [Parameter()] [string]$NeedleColor = "steelblue", [Parameter()] [string]$StartColor = "green", [Parameter()] [string]$EndColor = "red", [Parameter()] [int]$Segments = 10, [Parameter()] [float]$NeedleHeight = "0.8", [Parameter()] [int]$NeedleTransition = 4000, [Parameter()] [string]$LabelFontSize = "24px", [Parameter()] [string]$ValueFontSize = "28px", [Parameter()] [int]$PaddingHorizontal = 17, [Parameter()] [int]$PaddingVertical = 17, [Parameter()] [string]$ValueText ) End { @{ # The AssetID of the main JS File assetId = $AssetId # Tell UD this is a plugin isPlugin = $true # This ID must be the same as the one used in the JavaScript to register the control with UD type = "UD-Gauge" # An ID is mandatory id = $Id # This is where you can put any other properties. They are passed to the React control's props # The keys are case-sensitive in JS. maxValue = $MaxValue value = $Value needleColor = $NeedleColor startColor = $StartColor endColor = $EndColor segments = $Segments needleHeightRatio = $NeedleHeight needleTransitionDuration = $NeedleTransition labelFontSize = $LabelFontSize valueTextFontSize = $ValueFontSize paddingHorizontal = $PaddingHorizontal paddingVertical = $PaddingVertical currentValueText = $ValueText } } } |