src/functions/plugins.ps1
|
$script:ConfigMapPlugins = @() function Invoke-ConfigMapPluginHooks { param( [string]$HookName, [hashtable]$Context ) $plugins = $script:ConfigMapPlugins | Sort-Object { if ($null -ne $_.priority) { $_.priority } else { 100 } } foreach ($plugin in $plugins) { if (-not $plugin.hooks) { continue } $hook = $plugin.hooks[$HookName] if (-not $hook) { continue } $result = & $hook $Context if ($result -and $result.Handled) { return $result } } return @{ Handled = $false } } |