Pax8API/Public/Get-Pax8CommandSchema.ps1
|
function Get-Pax8CommandSchema { [CmdletBinding()] param ( [Parameter(Mandatory)] [ArgumentCompleter({ param($commandName, $parameterName, $wordToComplete) @($script:Pax8OperationMap.Keys | Sort-Object -Unique | Where-Object { $_ -like "$wordToComplete*" }) })] [string]$CommandName ) if (-not $script:Pax8OperationMap.ContainsKey($CommandName)) { throw "Unknown Pax8 command '$CommandName'." } $operation = $script:Pax8OperationMap[$CommandName] [pscustomobject][ordered]@{ CommandName = $operation.CommandName Aliases = @($operation.Aliases) Scope = $operation.Scope Audience = $operation.Audience SpecFile = $operation.SpecFile Method = $operation.Method Path = $operation.Path OperationId = $operation.OperationId Parameters = @($operation.Parameters) BodyParameters = @($operation.BodyParameters) RequestBody = [bool]$operation.RequestBody RequestBodyContentType = $operation.RequestBodyContentType RequestBodySchemaName = $operation.RequestBodySchemaName RequestBodySchema = $operation.RequestBodySchema Responses = @($operation.Responses) } } |