var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
  if (from && typeof from == "object" || typeof from == "function")
    for (let key of __getOwnPropNames(from))
      !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var BarcodeScanner_exports = {};
__export(BarcodeScanner_exports, {
  BarcodeScanner: () => BarcodeScanner
});
module.exports = __toCommonJS(BarcodeScanner_exports);
var import_core = require("@tamagui/core"), import_html5_qrcode = require("html5-qrcode"), import_react = require("react"), import_jsx_runtime = require("react/jsx-runtime");
function BarcodeScanner({
  onScan,
  onError,
  ...props
}) {
  return (0, import_react.useEffect)(() => {
    import_html5_qrcode.Html5Qrcode.getCameras().then((devices) => {
      if (devices && devices.length) {
        const html5QrCode = new import_html5_qrcode.Html5Qrcode("qr-code-region");
        return html5QrCode.start(
          devices[0].id,
          {
            fps: 10,
            qrbox: 250
          },
          (decodedText) => {
            onScan(decodedText);
          },
          (errorMessage) => {
          }
        ), () => {
          html5QrCode.stop().catch(console.error);
        };
      }
    });
  }, []), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
    import_core.View,
    {
      minWidth: 300,
      width: 300,
      borderRadius: "$shape.corner_m",
      overflow: "hidden",
      position: "relative",
      ...props,
      children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_core.View, { id: "qr-code-region" })
    }
  );
}
//# sourceMappingURL=BarcodeScanner.js.map
