GenXdev.FileSystem.psm1

if (-not $IsWindows) {
    throw "This module only supports Windows 10+ x64 with PowerShell 7.5+ x64"
}

$osVersion = [System.Environment]::OSVersion.Version
$major = $osVersion.Major

if ($major -ne 10) {
    throw "This module only supports Windows 10+ x64 with PowerShell 7.5+ x64"
}



. "$PSScriptRoot\Functions\GenXdev.FileSystem\_EnsureTypes.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Confirm-InstallationConsent.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\EnsurePester.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Expand-Path.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Find-DuplicateFiles.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Invoke-Fasti.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Move-ItemWithTracking.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Move-ToRecycleBin.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\ReadJsonWithRetry.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Remove-AllItems.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Remove-ItemWithFallback.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Remove-OnReboot.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Rename-InProject.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\ResolveInputObjectFileNames.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Set-FoundLocation.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Set-LocationParent.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Set-LocationParent2.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Set-LocationParent3.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Set-LocationParent4.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Set-LocationParent5.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\Start-RoboCopy.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\WriteFileOutput.ps1"
. "$PSScriptRoot\Functions\GenXdev.FileSystem\WriteJsonAtomic.ps1"