GinShell.psm1

# GinShell Rollup Module
# Ensures submodule directories are discoverable during development
if ($env:PSModulePath -notlike "*$PSScriptRoot*") {
    $env:PSModulePath = "$PSScriptRoot;$env:PSModulePath"
}

# Import all submodules (order matters: Logging first as others depend on it)
$submodules = @(
    'GinShell.Logging',
    'GinShell.Utilities',
    'GinShell.Azure',
    'GinShell.GoDaddy',
    'GinShell.Windows'
)

foreach ($mod in $submodules) {
    Import-Module -Name $mod -Force -Global -ErrorAction Stop
}

function Test-GsModule {
    Write-Host "GinShell module is working correctly!`nCurrent Installed Path: $PSScriptRoot"
}

Export-ModuleMember -Function Test-GsModule