[CmdletBinding(SupportsShouldProcess)]param( [ArgumentCompleter({Invoke-Command -ScriptBlock $_DockerComposeDirsCompleter -ArgumentList $args})] [string[]]$ProjectPath, [switch]$Recurse, [int]$Depth=1, [Parameter(Position = 0, ValueFromRemainingArguments = $true)] [ArgumentCompleter({Invoke-Command -ScriptBlock $_DockerComposeCompleter -ArgumentList ($args+@('down'))})] [array]$CliParams=@('--timeout=3','--volumes','--remove-orphans') ) if( -not $CliParams -or $CliParams[0] -is [string] ) { $CliParams = @($CliParams,@($null)) } $CliParams[0] = @('&') + $CliParams[0] Invoke-DockerCompose -ProjectPath $ProjectPath -dcCommand 'down' -CliParams $CliParams -Recurse:$Recurse -Depth $Depth