diff --git a/packages/react-native-popup-menu-android/android/src/main/java/com/facebook/react/popupmenu/PopupMenuPackage.kt b/packages/react-native-popup-menu-android/android/src/main/java/com/facebook/react/popupmenu/PopupMenuPackage.kt index a63c9ba8c25..538a9474978 100644 --- a/packages/react-native-popup-menu-android/android/src/main/java/com/facebook/react/popupmenu/PopupMenuPackage.kt +++ b/packages/react-native-popup-menu-android/android/src/main/java/com/facebook/react/popupmenu/PopupMenuPackage.kt @@ -18,35 +18,29 @@ import com.facebook.react.uimanager.ViewManager @ReactModuleList(nativeModules = arrayOf()) public class PopupMenuPackage() : BaseReactPackage(), ViewManagerOnDemandReactPackage { - private var viewManagersMap: Map? = null + private val viewManagersMap: Map = + mapOf( + ReactPopupMenuManager.REACT_CLASS to + ModuleSpec.viewManagerSpec({ ReactPopupMenuManager() }), + ) override fun getModule(name: String, context: ReactApplicationContext): NativeModule? { return null } - private fun getViewManagersMap(): Map { - val viewManagers = - viewManagersMap - ?: mapOf( - ReactPopupMenuManager.REACT_CLASS to - ModuleSpec.viewManagerSpec({ ReactPopupMenuManager() })) - viewManagersMap = viewManagers - return viewManagers - } - protected override fun getViewManagers(context: ReactApplicationContext): List { - return ArrayList(getViewManagersMap().values) + return viewManagersMap.values.toList() } override fun getViewManagerNames(context: ReactApplicationContext): Collection { - return getViewManagersMap().keys + return viewManagersMap.keys } override fun createViewManager( reactContext: ReactApplicationContext, viewManagerName: String ): ViewManager<*, *>? { - val spec: ModuleSpec? = getViewManagersMap().get(viewManagerName) + val spec: ModuleSpec? = viewManagersMap.get(viewManagerName) return if (spec != null) (spec.getProvider().get() as ViewManager<*, *>) else null }