Add a bug report hook. (#2988)

This commit is contained in:
Doug
2024-07-01 13:53:24 +01:00
committed by GitHub
parent 1178561853
commit 78b0c7068d
6 changed files with 33 additions and 9 deletions
+15 -1
View File
@@ -19,7 +19,7 @@ import Foundation
// MARK: Registration
class AppHooks: AppHooksProtocol {
private(set) var appSettingsHook: AppSettingsHookProtocol?
private var appSettingsHook: AppSettingsHookProtocol?
func registerAppSettingsHook(_ hook: AppSettingsHookProtocol) {
appSettingsHook = hook
}
@@ -28,6 +28,16 @@ class AppHooks: AppHooksProtocol {
guard let appSettingsHook else { return appSettings }
return appSettingsHook.run(appSettings: appSettings)
}
private var bugReportHook: BugReportHookProtocol?
func registerBugReportHook(_ hook: BugReportHookProtocol) {
bugReportHook = hook
}
func runBugReportHook(_ bugReport: BugReport) -> BugReport {
guard let bugReportHook else { return bugReport }
return bugReportHook.run(bugReport: bugReport)
}
}
protocol AppHooksProtocol {
@@ -43,3 +53,7 @@ extension AppHooksProtocol {
protocol AppSettingsHookProtocol {
func run(appSettings: AppSettings) -> AppSettings
}
protocol BugReportHookProtocol {
func run(bugReport: BugReport) -> BugReport
}