package com.seonreactnativemobilewrapper;

import java.util.HashMap;
import java.util.Map;

import com.facebook.react.bridge.NativeModule;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.module.model.ReactModuleInfo;
import com.facebook.react.module.model.ReactModuleInfoProvider;
import com.facebook.react.TurboReactPackage;

import android.util.Log;

public class SeonReactNativeMobileWrapperPackage extends TurboReactPackage {
    @Override
    public NativeModule getModule(String name, ReactApplicationContext reactContext) {
        if (name.equals(SeonReactNativeMobileWrapperModule.NAME)) {
            return new SeonReactNativeMobileWrapperModule(reactContext);
        } else {
            return null;
        }
    }

    @Override
    public ReactModuleInfoProvider getReactModuleInfoProvider() {
      return new ReactModuleInfoProvider() {
        @Override
        public Map<String, ReactModuleInfo> getReactModuleInfos() {
          Map<String, ReactModuleInfo> map = new HashMap<>();
          map.put(SeonReactNativeMobileWrapperModule.NAME, new ReactModuleInfo(
            SeonReactNativeMobileWrapperModule.NAME,       // name
            SeonReactNativeMobileWrapperModule.NAME,       // className
            false, // canOverrideExistingModule
            false, // needsEagerInit
            false, // isCXXModule
            true   // isTurboModule
          ));
          return map;
        }
      };
    }
}
