
Major Overhaul with Breaking Changes split into packaged, default behavior moved into 'base' package each package has a json package description file with criteria for loading Modified Setup-Profile to refer to 'base' package path for auto loading moved Linux aliases and command to 'base.linux' package created 'docker' package to address docker supported systems modified Get-MyScripts, Edit-MyScripts and Reload-MyScripts accordingly. Dropped -System and sys.*, package json conditions will take care of it. Supplied command to create/edit package json files: - New-MyPackage - Add-PackageCondition - Set-MyPackage
44 lines
1.4 KiB
PowerShell
44 lines
1.4 KiB
PowerShell
[CmdletBinding()]param(
|
|
[Parameter(ParameterSetName="Normal")]
|
|
[Parameter(ParameterSetName="DropNamespace")]
|
|
[string]$Filter,
|
|
[Parameter(ParameterSetName="ByPackage",Mandatory)]
|
|
[Parameter(ParameterSetName="DropNamespace",Mandatory)]
|
|
[ArgumentCompleter({ param (
|
|
$commandName,
|
|
$parameterName,
|
|
$wordToComplete,
|
|
$commandAst,
|
|
$fakeBoundParameters
|
|
)
|
|
$local:NotAll = $true
|
|
if( $fakeBoundParameters.ContainsKey("Force") ) { $NotAll = -not $fakeBoundParameters.Force }
|
|
[Packagesz]::_GetValidValues($wordToComplete,$NotAll,$true)
|
|
})]
|
|
[string]$Package,
|
|
[Parameter(ParameterSetName="Normal")]
|
|
[Parameter(ParameterSetName="ByPackage")]
|
|
[Parameter(ParameterSetName="DropNamespace",Mandatory)]
|
|
[switch]$NamesOnly,
|
|
[Parameter(ParameterSetName="Normal")]
|
|
[Parameter(ParameterSetName="ByPackage")]
|
|
[Parameter(ParameterSetName="DropNamespace")]
|
|
[switch]$Force,
|
|
[Parameter(ParameterSetName="DropNamespace",Mandatory)]
|
|
[switch]$DropNamespace
|
|
)
|
|
$local:rVal = [MyScript]::_GetValidValues($Filter,-not $Force,$true)
|
|
|
|
if( $Package ) {
|
|
$Package = Join-Path $Package ''
|
|
$rVal = $rVal |
|
|
Where-Object { $_ -match "^$Package" }
|
|
if( $DropNamespace ) {
|
|
$rVal = $rVal |
|
|
ForEach-Object { $_.Replace($Package,'') }
|
|
}
|
|
}
|
|
|
|
if( $NamesOnly ) { return $rVal }
|
|
return $rVal | ForEach-Object { Join-Path $MyPSScriptRoot "$_`.ps1" }
|
|
|