Commands/Lexicons/app/bsky/feed/Get-BskyFeedActorFeeds.ps1
function Get-BskyFeedActorFeeds { <# .Synopsis app.bsky.feed.getActorFeeds .Description app.bsky.feed.getActorFeeds .Link https://github.com/bluesky-social/atproto/tree/main/lexicons/app/bsky/feed/getActorFeeds.json #> [Alias('Get-BlueSkyFeedActorFeeds','bsky.feed.getActorFeeds','app.bsky.feed.getActorFeeds')] [CmdletBinding(SupportsShouldProcess)] param( <# The Actor. This can be either a handle (e.g. @AtProto.com) or a Decentralized Identifier (.did) #> [Parameter(Mandatory,ValueFromPipelineByPropertyName)] [ComponentModel.DefaultBindingProperty('actor')] [String] $Actor, # A limit to the number of results returned. [Parameter(ValueFromPipelineByPropertyName)] [ComponentModel.DefaultBindingProperty('limit')] [Management.Automation.PSObject] $Limit, <# A cursor that can be used to get more results. Any command that accepts a -Cursor parameter returns a .Cursor property. You can provide this -Cursor to the same command with the same input to get more results. #> [Parameter(ValueFromPipelineByPropertyName)] [ComponentModel.DefaultBindingProperty('cursor')] [String] $Cursor, # If set, will cache results for performance. [Management.Automation.SwitchParameter] $Cache ) begin { $NamespaceID = 'app.bsky.feed.getActorFeeds' $httpMethod = 'GET' $InvokeAtSplat = [Ordered]@{Method=$httpMethod} $InvokeAtSplat.DecorateProperty = [Ordered]@{ 'feeds'='app.bsky.feed.defs#generatorView' 'feeds.creator'='app.bsky.actor.defs#profileView' 'feeds.viewer'='app.bsky.feed.defs#generatorViewerState' } $InvokeAtSplat["PSTypeName"] = $NamespaceID $parameterAliases = [Ordered]@{} $AsByte = $false :nextParameter foreach ($paramMetadata in ([Management.Automation.CommandMetadata]$MyInvocation.MyCommand).Parameters.Values) { foreach ($attr in $paramMetadata.Attributes) { if ($attr -is [ComponentModel.DefaultBindingPropertyAttribute]) { $parameterAliases[$paramMetadata.Name] = $attr.Name continue nextParameter } } } $parameterQueue = [Collections.Queue]::new() } process { $parameterQueue.Enqueue([Ordered]@{} + $PSBoundParameters) } end { $parameterQueue.ToArray() | Invoke-AtProtocol -Method $httpMethod -NamespaceID $NamespaceID -Parameter { $_ } -ParameterAlias $parameterAliases @InvokeAtSplat -ContentType $( if ($ContentType) { $ContentType } else { "application/json" } ) -AsByte:$AsByte -Property { $_ } -Cache:$( if ($cache) {$cache} else { $false } ) } } |