LeadForge.psm1
|
# LeadForge — Email-to-Opportunity Pipeline Module # Dot-sources all pipeline functions and exports public API $ErrorActionPreference = 'Stop' # Dot-source all function files $functionPaths = @( "$PSScriptRoot\tool\Analysis\functions\Repair-JsonResponse.ps1" "$PSScriptRoot\tool\Automation\functions\Get-OwnerDomains.ps1" "$PSScriptRoot\tool\Automation\functions\Invoke-GatherEmails.ps1" "$PSScriptRoot\tool\Analysis\functions\Invoke-AnalyseEmails.ps1" "$PSScriptRoot\tool\Enrichment\functions\Invoke-EnrichContacts.ps1" "$PSScriptRoot\tool\Analysis\functions\Invoke-ResearchContacts.ps1" "$PSScriptRoot\tool\Analysis\functions\Invoke-TriageContacts.ps1" "$PSScriptRoot\tool\Analysis\functions\Invoke-DeepResearch.ps1" "$PSScriptRoot\tool\Analysis\functions\Invoke-ScoreOpportunities.ps1" "$PSScriptRoot\tool\Automation\functions\Export-HtmlReport.ps1" "$PSScriptRoot\tool\Automation\functions\Export-OpportunityResults.ps1" ) foreach ($path in $functionPaths) { if (Test-Path $path) { . $path } } # Dot-source public functions $Public = @(Get-ChildItem -Path "$PSScriptRoot\Public\*.ps1" -ErrorAction SilentlyContinue) foreach ($file in $Public) { . $file.FullName } Export-ModuleMember -Function @( # Pipeline entry point 'Invoke-LeadForge' # Setup wizard 'Initialize-LeadForge' # Individual stages (advanced use) 'Invoke-GatherEmails' 'Invoke-AnalyseEmails' 'Invoke-EnrichContacts' 'Invoke-ResearchContacts' 'Invoke-TriageContacts' 'Invoke-DeepResearch' 'Invoke-ScoreOpportunities' 'Export-OpportunityResults' ) |