Public/Emoji/Find-MMEmoji.ps1
|
# Searches custom emoji in MatterMost function Find-MMEmoji { <# .SYNOPSIS Searches MatterMost custom emoji by name term or returns autocomplete suggestions. .EXAMPLE Find-MMEmoji -Term 'party' .EXAMPLE Find-MMEmoji -Term 'par' -PrefixOnly .EXAMPLE Find-MMEmoji -Autocomplete 'par' #> [CmdletBinding(DefaultParameterSetName = 'Search')] [OutputType('MMEmoji')] param( [Parameter(Mandatory, ParameterSetName = 'Search')] [string]$Term, [Parameter(ParameterSetName = 'Search')] [switch]$PrefixOnly, [Parameter(Mandatory, ParameterSetName = 'Autocomplete')] [string]$Autocomplete ) process { if ($PSCmdlet.ParameterSetName -eq 'Autocomplete') { Invoke-MMRequest -Endpoint "emoji/autocomplete?name=$Autocomplete" -Method GET | ForEach-Object { $_ | ConvertTo-MMEmoji } } else { $body = @{ term = $Term } if ($PrefixOnly) { $body['prefix_only'] = $true } Invoke-MMRequest -Endpoint 'emoji/search' -Method POST -Body $body | ForEach-Object { $_ | ConvertTo-MMEmoji } } } } |