SfMetadataToolkit.psm1

# Implement your module commands in this script.

# strict mode supposed to be set across all scripts in this module
Set-StrictMode -Version 3

# --- module root path, available to all functions via $Script:ModuleRoot
$Script:ModuleRoot = $PSScriptRoot

# Export only the functions using PowerShell standard verb-noun naming.
# Be sure to list each exported functions in the FunctionsToExport field of the module manifest file.
# This improves performance of command discovery in PowerShell.
#Export-ModuleMember -Function *-*

# dot-sourcing all public and private functions.
foreach ($directory in @('private', 'public')) {
    foreach ($ScriptFile in (Get-ChildItem -Path "$PSScriptRoot/$directory/*.ps1" )) {
        . $ScriptFile.FullName
    }
}

# Here we export
# - all functions that have been dot-Tabled in the initial step
# - all variables
# BUT actually exported will only be those that are also listed in the *.psd1 file
# under VariablesToExport, FunctionsToExport and AliasesToExport!
Export-ModuleMember -Variable * -Function * -Alias *