Commit b36e04d3 authored by Lorenzo Trujillo Rojas's avatar Lorenzo Trujillo Rojas
Browse files

Se agregó un parametro opcional para validar algo leido por el QR

parent 4682ef8b
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -4,7 +4,11 @@ import { Camera, PermissionResponse } from "expo-camera";
import { BarCodeScannerResult } from "expo-barcode-scanner";
import { router } from "expo-router";

export const useQRScanner = () => {
interface QRScannerHookProps {
  validator?: (data: string) => boolean;
}

export const useQRScanner = ({ validator }: QRScannerHookProps) => {
  const [status, requestPermission] = Camera.useCameraPermissions();
  const [hasPermission, setHasPermission] = useState<boolean>(false);
  const [qrData, setQRData] = useState<string | null>(null);
@@ -17,7 +21,9 @@ export const useQRScanner = () => {
  };

  const onQRScanned = (data: BarCodeScannerResult) => {
    console.log(data.data);
    if (validator && !validator(data.data)) {
      return;
    }
    setQRData(data.data);
    setScanning(false);
    router.back();