FPSMS-frontend
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

CameraProvider.tsx 671 B

il y a 6 mois
1234567891011121314151617181920212223242526
  1. "use client";
  2. import { CameraDevice, Html5Qrcode } from "html5-qrcode";
  3. import React, { createContext, useContext, useEffect, useState } from "react";
  4. export const CameraContext = createContext<CameraDevice[]>([]);
  5. export const CameraProvider: React.FC<{ children: React.ReactNode }> = ({
  6. children,
  7. }) => {
  8. const [cameras, setCameras] = useState<CameraDevice[]>([]);
  9. useEffect(() => {
  10. const fetchCameras = async () => {
  11. const res = await Html5Qrcode.getCameras();
  12. if (res) {
  13. setCameras(res);
  14. }
  15. };
  16. fetchCameras();
  17. }, []);
  18. return (
  19. <CameraContext.Provider value={cameras}>{children}</CameraContext.Provider>
  20. );
  21. };