{"version":3,"sources":["jsdelivr-header.js","/npm/@monadstech/react-native-use-otp-verify@1.0.10/lib/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,aACA,IAAI,gBAAmB,MAAQ,KAAK,iBAAoB,SAAU,GAC9D,OAAQ,GAAO,EAAI,WAAc,EAAM,CAAE,QAAW,EACxD,EACA,OAAO,eAAe,QAAS,aAAc,CAAE,OAAO,IACtD,QAAQ,aAAe,QAAQ,eAAiB,QAAQ,iBAAc,EACtE,IAAI,QAAU,gBAAgB,QAAQ,UAClC,eAAiB,QAAQ,gBACzB,0BAA4B,gBAAgB,QAAQ,4BACxD,SAAS,YAAY,GAejB,OAdA,0BAA0B,QAAQ,SAC7B,MAAK,SAAU,GAChB,OAAO,0BAA0B,QAAQ,aAAY,SAAU,GAC3D,IACQ,GACA,EAAS,KAAM,EAEvB,CACA,MAAO,GACH,EAAS,EACb,CACJ,GACJ,IACK,OAAM,SAAU,GAAK,OAAO,QAAQ,IAAI,EAAI,IAC1C,WAAc,OAAO,0BAA0B,QAAQ,gBAAkB,CACpF,CAEA,SAAS,eAAe,GACpB,IAAI,EAAK,QAAQ,QAAQ,SAAS,IAAK,EAAM,EAAG,GAAI,EAAS,EAAG,GAC5D,EAAK,QAAQ,QAAQ,SAAS,MAAO,EAAM,EAAG,GAAI,EAAS,EAAG,GAC9D,EAAoB,QAAQ,QAAQ,QAAO,WAAc,IAa7D,OAZA,QAAQ,QAAQ,WAAU,WAUtB,OATA,EAAkB,QAAU,aAAY,SAAU,EAAO,GACjD,IAAQ,GACR,EAAO,GAAgB,MAEvB,GACA,EAAW,GAEf,EAAO,EACX,IACO,EAAkB,OAC7B,GAAG,CAAC,EAAK,IACF,CAAC,EAAK,EAAK,EAAkB,QACxC,CAlBA,QAAQ,YAAc,YAmBtB,QAAQ,eAAiB,eACzB,IAAI,UAAY,gCACZ,QAAU,UACd,SAAS,iBAAiB,GACtB,IAAI,EAAW,UAAU,KAAK,GAAO,IACrC,OAAO,IAAW,EAAS,IAAM,EAAS,KAAW,EACzD,CACA,SAAS,aAAa,QACA,IAAd,IAAwB,EAAY,kBACxC,IAAI,EAAK,QAAQ,QAAQ,SAAS,MAAO,EAAM,EAAG,GAAI,EAAS,EAAG,GAC9D,EAAK,eAAe,SAAS,KAAO,QAClC,oBAAe,GACf,CAAC,KAAM,KAAM,WAAc,GAAI,EAAM,EAAG,GAAI,EAAM,EAAG,GAAI,EAAkB,EAAG,GASpF,OARA,QAAQ,QAAQ,WAAU,WACtB,GAAI,eAAe,SAAS,KAAO,UAC1B,EAAK,CACN,IAAI,EAAQ,EAAU,GACtB,EAAO,EACX,CAER,GAAG,CAAC,EAAK,EAAW,IACb,CAAC,EAAK,EAAK,EACtB,CACA,QAAQ,aAAe,aACvB,QAAQ,QAAU,0BAA0B","file":"/npm/@monadstech/react-native-use-otp-verify@1.0.10/lib/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@monadstech/react-native-use-otp-verify@1.0.10/lib/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n    return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useOtpVerify = exports.useSMSListener = exports.smsListener = void 0;\nvar react_1 = __importDefault(require(\"react\"));\nvar react_native_1 = require(\"react-native\");\nvar react_native_otp_verify_1 = __importDefault(require(\"react-native-otp-verify\"));\nfunction smsListener(callback) {\n    react_native_otp_verify_1.default.getOtp()\n        .then(function (p) {\n        return react_native_otp_verify_1.default.addListener(function (message) {\n            try {\n                if (message) {\n                    callback(null, message);\n                }\n            }\n            catch (error) {\n                callback(error);\n            }\n        });\n    })\n        .catch(function (p) { return console.log(p); });\n    return function () { return react_native_otp_verify_1.default.removeListener(); };\n}\nexports.smsListener = smsListener;\nfunction useSMSListener(smsHandler) {\n    var _a = react_1.default.useState(''), sms = _a[0], setSMS = _a[1];\n    var _b = react_1.default.useState(null), err = _b[0], setErr = _b[1];\n    var cancelSMSListener = react_1.default.useRef(function () { });\n    react_1.default.useEffect(function () {\n        cancelSMSListener.current = smsListener(function (error, message) {\n            if (err !== error) {\n                setErr(error ? error : null);\n            }\n            if (smsHandler) {\n                smsHandler(message);\n            }\n            setSMS(message);\n        });\n        return cancelSMSListener.current;\n    }, [err, smsHandler]);\n    return [sms, err, cancelSMSListener.current];\n}\nexports.useSMSListener = useSMSListener;\nvar OTP_REGEX = /(\\d+)[\\s]*is|is[\\s]*(\\d+)\\.?/g;\nvar ANDROID = 'android';\nfunction defaultOtpParser(sms) {\n    var otpMatch = OTP_REGEX.exec(sms || '');\n    return otpMatch ? otpMatch[1] || otpMatch[2] || '' : '';\n}\nfunction useOtpVerify(otpParser) {\n    if (otpParser === void 0) { otpParser = defaultOtpParser; }\n    var _a = react_1.default.useState(null), otp = _a[0], setOTP = _a[1];\n    var _b = react_native_1.Platform.OS === ANDROID\n        ? useSMSListener(undefined)\n        : [null, null, function () { }], sms = _b[0], err = _b[1], stopSMSListener = _b[2];\n    react_1.default.useEffect(function () {\n        if (react_native_1.Platform.OS === ANDROID) {\n            if (!err) {\n                var otp_1 = otpParser(sms);\n                setOTP(otp_1);\n            }\n        }\n    }, [err, otpParser, sms]);\n    return [otp, err, stopSMSListener];\n}\nexports.useOtpVerify = useOtpVerify;\nexports.default = react_native_otp_verify_1.default;\n"]}