@@ -207,8 +207,11 @@ public class IterableEmbeddedView: UIView {
207207 func loadViewFromNib( ) -> UIView ? {
208208 var nib : UINib
209209 #if COCOAPODS
210- let bundle = Bundle ( path: Bundle ( for: IterableEmbeddedView . self) . path ( forResource: " Resources " , ofType: " bundle " ) !)
211- nib = UINib ( nibName: " IterableEmbeddedView " , bundle: bundle)
210+ if let bundle = Self . findCocoaPodsResourceBundle ( ) {
211+ nib = UINib ( nibName: " IterableEmbeddedView " , bundle: bundle)
212+ } else {
213+ nib = UINib ( nibName: " IterableEmbeddedView " , bundle: Bundle . main)
214+ }
212215 #else
213216 #if SWIFT_PACKAGE
214217 nib = UINib ( nibName: " IterableEmbeddedView " , bundle: Bundle . module)
@@ -222,7 +225,24 @@ public class IterableEmbeddedView: UIView {
222225 return view
223226 }
224227
225-
228+ private static let cocoaPodsResourceBundleNames = [
229+ ResourceHelper . cocoaPodsResourceBundleName,
230+ " Resources " // legacy name for cached pod builds
231+ ]
232+
233+ private static func findCocoaPodsResourceBundle( ) -> Bundle ? {
234+ let searchBundles = [ Bundle . main, Bundle ( for: IterableEmbeddedView . self) ]
235+ for name in cocoaPodsResourceBundleNames {
236+ for parent in searchBundles {
237+ if let path = parent. path ( forResource: name, ofType: " bundle " ) ,
238+ let bundle = Bundle ( path: path) {
239+ return bundle
240+ }
241+ }
242+ }
243+ return nil
244+ }
245+
226246 public func configure( message: IterableEmbeddedMessage , viewType: IterableEmbeddedViewType , config: IterableEmbeddedViewConfig ? ) {
227247
228248 self . message = message
0 commit comments