Scripts/New-UDDatePicker.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:\> New-UDDatePicker -Id "DatePicker" Places the UD date picker on the screen with an ID of DatePicker so you can reference the values from this component .INPUTS Inputs (if any) .OUTPUTS Output (if any) .NOTES General notes #> function New-UDDatePicker { param( [Parameter()] [string]$Id = (New-Guid).ToString() # [Parameter()] # [object]$OnChange, # [Parameter()] # [object]$OnDayClick ) End { $activeOnChange = "false" $activeOnDayClick = "false" if ($null -ne $OnChange) { if ($OnChange -is [scriptblock]) { $OnChange = New-UDEndpoint -Endpoint $OnChange -Id ($Id + "onChange") } elseif ($onChange -isnot [UniversalDashboard.Models.Endpoint]) { throw "OnChange must be a script block or UDEndpoint." } $activeOnChange = "true" } if ($null -ne $OnDayClick) { if ($OnDayClick -is [scriptblock]) { $OnDayClick = New-UDEndpoint -Endpoint $OnDayClick -Id ($Id + "onDayClick") } elseif ($OnDayClick -isnot [UniversalDashboard.Models.Endpoint]) { throw "OnDayClick must be a script block or UDEndpoint." } $activeOnDayClick = "true" } @{ # 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-DatePicker" # An ID is mandatory id = $Id activeOnChange = $activeOnChange activeOnDayClick = $activeOnDayClick # 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. ### } } } |