Public/Resolve-PdqClipboardFormat.ps1
<#
.SYNOPSIS Outputs a format name and data type for Get-PdqClipboardData. .DESCRIPTION See Get-PdqClipboardData for an explanation of these format names. .INPUTS None. .OUTPUTS System.Collections.Hashtable .EXAMPLE Resolve-PdqClipboardFormat -Format 'Package' Outputs a hashtable containing the format name and data type for Packages. #> function Resolve-PdqClipboardFormat { [CmdletBinding()] param ( [Parameter(Mandatory = $true)] # The name of the type of data you would like Get-PdqClipboardData to retrieve for you. [String]$Format ) $FormatTable = @{ 'AutoReport' = @{ 'Name' = 'x-application/PDQAutoReportDefinitions' 'Type' = 'JSON' } 'Collection' = @{ 'Name' = 'AdminArsenal.PDQInventory.MainTree.Export' 'Type' = 'XML' } 'DeployFolder' = @{ 'Name' = 'AdminArsenal.MainTreeControl.Clipboard' 'Type' = 'XML' } 'Filter' = @{ 'Name' = 'AdminArsenal.Reports.Engine.Basic.FilterViewModel' 'Type' = 'JSON' } 'Notification' = @{ 'Name' = 'x-application/PDQDeployMailNotification' 'Type' = 'JSON' } 'Package' = @{ 'Name' = 'AdminArsenal.MainTreeControl.Clipboard' 'Type' = 'XML' } 'PackageStep' = @{ 'Name' = 'AdminArsenal.PDQDeploy.PackageStepViewModel' 'Type' = 'JSON' } 'ReportFolder' = @{ 'Name' = 'AdminArsenal.PDQInventory.MainTree.Export' 'Type' = 'XML' } 'Scanner' = @{ 'Name' = 'AdminArsenal.PDQInventory.Scanners.ScannerViewModel' 'Type' = 'JSON' } 'ScanProfile' = @{ 'Name' = 'AdminArsenal.PDQInventory.Scanners.ScanProfilesPageViewModel' 'Type' = 'XML' } 'TargetList' = @{ 'Name' = 'AdminArsenal.MainTreeControl.Clipboard' 'Type' = 'XML' } 'Tool' = @{ 'Name' = 'AdminArsenal.ComputerToolSettings.Clipboard' 'Type' = 'XML' } 'Trigger' = @{ 'Name' = 'AdminArsenal.ScheduleTriggers.ScheduleTriggerViewModel' 'Type' = 'JSON' } 'Variable' = @{ 'Name' = 'AdminArsenal.Variables.CustomVariableViewModel' 'Type' = 'JSON' } } if ( $Format -notin $FormatTable.Keys ) { throw "'$Format' is not a valid format." } $FormatTable.$Format } |