Skip to content

Commit

Permalink
fix: allow adding Swift Plugins to ObjC Amplitude (#264)
Browse files Browse the repository at this point in the history
  • Loading branch information
crleona authored Mar 5, 2025
1 parent b6fd248 commit d916d93
Showing 1 changed file with 11 additions and 4 deletions.
15 changes: 11 additions & 4 deletions Sources/Amplitude/ObjC/ObjCAmplitude.swift
Original file line number Diff line number Diff line change
Expand Up @@ -147,10 +147,17 @@ public class ObjCAmplitude: NSObject {

@objc(add:)
@discardableResult
public func add(plugin: ObjCPlugin) -> ObjCAmplitude {
let wrapper = ObjCPluginWrapper(amplitude: self, wrapped: plugin)
plugins.append(wrapper)
amplitude.add(plugin: wrapper)
public func add(plugin: AnyObject) -> ObjCAmplitude {
switch plugin {
case let swiftPlugin as Plugin:
amplitude.add(plugin: swiftPlugin)
case let objcPlugin as ObjCPlugin:
let wrapper = ObjCPluginWrapper(amplitude: self, wrapped: objcPlugin)
plugins.append(wrapper)
amplitude.add(plugin: wrapper)
default:
fatalError("Attempted to add a plugin that is not an instance of Plugin or ObjCPlugin")
}
return self
}

Expand Down

0 comments on commit d916d93

Please sign in to comment.