package com.pdf417scanner;

import androidx.annotation.NonNull;

import com.facebook.react.ReactPackage;
import com.facebook.react.bridge.NativeModule;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.uimanager.ViewManager;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class PDF417ScannerPackage implements ReactPackage {
    @NonNull
    @Override
    public List<NativeModule> createNativeModules(@NonNull ReactApplicationContext reactContext) {
        List<NativeModule> modules = new ArrayList<>();
        modules.add(new PDF417ScannerModule(reactContext));
        return modules;
    }

    @NonNull
    @Override
    public List<ViewManager> createViewManagers(@NonNull ReactApplicationContext reactContext) {
        List<ViewManager> viewManagers = new ArrayList<>();
        
        // Create the module and view manager with proper connection
        PDF417ScannerModule scannerModule = new PDF417ScannerModule(reactContext);
        PDF417CameraViewManager cameraViewManager = new PDF417CameraViewManager();
        cameraViewManager.setScannerModule(scannerModule);
        
        viewManagers.add(cameraViewManager);
        return viewManagers;
    }
}