@chem-po/firebase-native 0.0.16 → 0.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/README.md +215 -0
  2. package/lib/commonjs/adapter/auth.js +431 -0
  3. package/lib/commonjs/adapter/auth.js.map +1 -0
  4. package/lib/commonjs/adapter/db.js +103 -0
  5. package/lib/commonjs/adapter/db.js.map +1 -0
  6. package/lib/commonjs/adapter/index.js +16 -0
  7. package/lib/commonjs/adapter/index.js.map +1 -0
  8. package/lib/commonjs/adapter/storage.js +52 -0
  9. package/lib/commonjs/adapter/storage.js.map +1 -0
  10. package/lib/commonjs/auth/functions.js +11 -0
  11. package/lib/commonjs/auth/functions.js.map +1 -0
  12. package/lib/commonjs/auth/index.js +17 -0
  13. package/lib/commonjs/auth/index.js.map +1 -0
  14. package/lib/commonjs/components/AuthenticatorVerify.js +90 -0
  15. package/lib/commonjs/components/AuthenticatorVerify.js.map +1 -0
  16. package/lib/commonjs/components/FirebaseSignIn.js +196 -0
  17. package/lib/commonjs/components/FirebaseSignIn.js.map +1 -0
  18. package/lib/commonjs/components/PhoneVerify.js +123 -0
  19. package/lib/commonjs/components/PhoneVerify.js.map +1 -0
  20. package/lib/commonjs/components/TwoFactorAuthModal.js +118 -0
  21. package/lib/commonjs/components/TwoFactorAuthModal.js.map +1 -0
  22. package/lib/commonjs/components/index.js +28 -0
  23. package/lib/commonjs/components/index.js.map +1 -0
  24. package/lib/commonjs/contexts/FirebaseContext.js +48 -0
  25. package/lib/commonjs/contexts/FirebaseContext.js.map +1 -0
  26. package/lib/commonjs/contexts/index.js +17 -0
  27. package/lib/commonjs/contexts/index.js.map +1 -0
  28. package/lib/commonjs/db/index.js +17 -0
  29. package/lib/commonjs/db/index.js.map +1 -0
  30. package/lib/commonjs/db/utils.js +120 -0
  31. package/lib/commonjs/db/utils.js.map +1 -0
  32. package/lib/commonjs/hooks/backend.js +12 -0
  33. package/lib/commonjs/hooks/backend.js.map +1 -0
  34. package/lib/commonjs/hooks/index.js +17 -0
  35. package/lib/commonjs/hooks/index.js.map +1 -0
  36. package/lib/commonjs/hooks/useAuthenticatorVerify.js +52 -0
  37. package/lib/commonjs/hooks/useAuthenticatorVerify.js.map +1 -0
  38. package/lib/commonjs/hooks/usePhoneVerify.js +83 -0
  39. package/lib/commonjs/hooks/usePhoneVerify.js.map +1 -0
  40. package/lib/commonjs/icons/Google.js +29 -0
  41. package/lib/commonjs/icons/Google.js.map +1 -0
  42. package/lib/commonjs/index.js +105 -0
  43. package/lib/commonjs/index.js.map +1 -0
  44. package/lib/commonjs/storage/index.js +17 -0
  45. package/lib/commonjs/storage/index.js.map +1 -0
  46. package/lib/commonjs/storage/utils.js +37 -0
  47. package/lib/commonjs/storage/utils.js.map +1 -0
  48. package/lib/commonjs/types/adapter.js +6 -0
  49. package/lib/commonjs/types/adapter.js.map +1 -0
  50. package/lib/commonjs/types/auth.js +6 -0
  51. package/lib/commonjs/types/auth.js.map +1 -0
  52. package/lib/commonjs/types/db.js +6 -0
  53. package/lib/commonjs/types/db.js.map +1 -0
  54. package/lib/commonjs/types/functions.js +6 -0
  55. package/lib/commonjs/types/functions.js.map +1 -0
  56. package/lib/commonjs/types/index.js +6 -0
  57. package/lib/commonjs/types/index.js.map +1 -0
  58. package/lib/commonjs/types/storage.js +6 -0
  59. package/lib/commonjs/types/storage.js.map +1 -0
  60. package/lib/commonjs/utils/validation.js +71 -0
  61. package/lib/commonjs/utils/validation.js.map +1 -0
  62. package/lib/module/adapter/auth.js +424 -0
  63. package/lib/module/adapter/auth.js.map +1 -0
  64. package/lib/module/adapter/db.js +96 -0
  65. package/lib/module/adapter/db.js.map +1 -0
  66. package/lib/module/adapter/index.js +9 -0
  67. package/lib/module/adapter/index.js.map +1 -0
  68. package/lib/module/adapter/storage.js +45 -0
  69. package/lib/module/adapter/storage.js.map +1 -0
  70. package/lib/module/auth/functions.js +3 -0
  71. package/lib/module/auth/functions.js.map +1 -0
  72. package/lib/module/auth/index.js +2 -0
  73. package/lib/module/auth/index.js.map +1 -0
  74. package/lib/module/components/AuthenticatorVerify.js +82 -0
  75. package/lib/module/components/AuthenticatorVerify.js.map +1 -0
  76. package/lib/module/components/FirebaseSignIn.js +187 -0
  77. package/lib/module/components/FirebaseSignIn.js.map +1 -0
  78. package/lib/module/components/PhoneVerify.js +116 -0
  79. package/lib/module/components/PhoneVerify.js.map +1 -0
  80. package/lib/module/components/TwoFactorAuthModal.js +110 -0
  81. package/lib/module/components/TwoFactorAuthModal.js.map +1 -0
  82. package/lib/module/components/index.js +3 -0
  83. package/lib/module/components/index.js.map +1 -0
  84. package/lib/module/contexts/FirebaseContext.js +39 -0
  85. package/lib/module/contexts/FirebaseContext.js.map +1 -0
  86. package/lib/module/contexts/index.js +2 -0
  87. package/lib/module/contexts/index.js.map +1 -0
  88. package/lib/module/db/index.js +2 -0
  89. package/lib/module/db/index.js.map +1 -0
  90. package/lib/module/db/utils.js +111 -0
  91. package/lib/module/db/utils.js.map +1 -0
  92. package/lib/module/hooks/backend.js +5 -0
  93. package/lib/module/hooks/backend.js.map +1 -0
  94. package/lib/module/hooks/index.js +2 -0
  95. package/lib/module/hooks/index.js.map +1 -0
  96. package/lib/module/hooks/useAuthenticatorVerify.js +45 -0
  97. package/lib/module/hooks/useAuthenticatorVerify.js.map +1 -0
  98. package/lib/module/hooks/usePhoneVerify.js +76 -0
  99. package/lib/module/hooks/usePhoneVerify.js.map +1 -0
  100. package/lib/module/icons/Google.js +22 -0
  101. package/lib/module/icons/Google.js.map +1 -0
  102. package/lib/module/index.js +10 -0
  103. package/lib/module/index.js.map +1 -0
  104. package/lib/module/storage/index.js +2 -0
  105. package/lib/module/storage/index.js.map +1 -0
  106. package/lib/module/storage/utils.js +30 -0
  107. package/lib/module/storage/utils.js.map +1 -0
  108. package/lib/module/types/adapter.js +2 -0
  109. package/lib/module/types/adapter.js.map +1 -0
  110. package/lib/module/types/auth.js +2 -0
  111. package/lib/module/types/auth.js.map +1 -0
  112. package/lib/module/types/db.js +2 -0
  113. package/lib/module/types/db.js.map +1 -0
  114. package/lib/module/types/functions.js +2 -0
  115. package/lib/module/types/functions.js.map +1 -0
  116. package/lib/module/types/index.js +2 -0
  117. package/lib/module/types/index.js.map +1 -0
  118. package/lib/module/types/storage.js +2 -0
  119. package/lib/module/types/storage.js.map +1 -0
  120. package/lib/module/utils/validation.js +62 -0
  121. package/lib/module/utils/validation.js.map +1 -0
  122. package/lib/typescript/adapter/auth.d.ts +7 -0
  123. package/lib/typescript/adapter/auth.d.ts.map +1 -0
  124. package/lib/typescript/adapter/db.d.ts +5 -0
  125. package/lib/typescript/adapter/db.d.ts.map +1 -0
  126. package/lib/typescript/adapter/index.d.ts +9 -0
  127. package/lib/typescript/adapter/index.d.ts.map +1 -0
  128. package/lib/typescript/adapter/storage.d.ts +4 -0
  129. package/lib/typescript/adapter/storage.d.ts.map +1 -0
  130. package/lib/typescript/auth/functions.d.ts +4 -0
  131. package/lib/typescript/auth/functions.d.ts.map +1 -0
  132. package/lib/typescript/auth/index.d.ts +2 -0
  133. package/lib/typescript/auth/index.d.ts.map +1 -0
  134. package/lib/typescript/components/AuthenticatorVerify.d.ts +3 -0
  135. package/lib/typescript/components/AuthenticatorVerify.d.ts.map +1 -0
  136. package/lib/typescript/components/FirebaseSignIn.d.ts +6 -0
  137. package/lib/typescript/components/FirebaseSignIn.d.ts.map +1 -0
  138. package/lib/typescript/components/PhoneVerify.d.ts +6 -0
  139. package/lib/typescript/components/PhoneVerify.d.ts.map +1 -0
  140. package/lib/typescript/components/TwoFactorAuthModal.d.ts +3 -0
  141. package/lib/typescript/components/TwoFactorAuthModal.d.ts.map +1 -0
  142. package/lib/typescript/components/index.d.ts +3 -0
  143. package/lib/typescript/components/index.d.ts.map +1 -0
  144. package/lib/typescript/contexts/FirebaseContext.d.ts +9 -0
  145. package/lib/typescript/contexts/FirebaseContext.d.ts.map +1 -0
  146. package/lib/typescript/contexts/index.d.ts +2 -0
  147. package/lib/typescript/contexts/index.d.ts.map +1 -0
  148. package/lib/typescript/db/index.d.ts +2 -0
  149. package/lib/typescript/db/index.d.ts.map +1 -0
  150. package/lib/typescript/db/utils.d.ts +6 -0
  151. package/lib/typescript/db/utils.d.ts.map +1 -0
  152. package/lib/typescript/hooks/backend.d.ts +2 -0
  153. package/lib/typescript/hooks/backend.d.ts.map +1 -0
  154. package/lib/typescript/hooks/index.d.ts +2 -0
  155. package/lib/typescript/hooks/index.d.ts.map +1 -0
  156. package/lib/typescript/hooks/useAuthenticatorVerify.d.ts +8 -0
  157. package/lib/typescript/hooks/useAuthenticatorVerify.d.ts.map +1 -0
  158. package/lib/typescript/hooks/usePhoneVerify.d.ts +9 -0
  159. package/lib/typescript/hooks/usePhoneVerify.d.ts.map +1 -0
  160. package/lib/typescript/icons/Google.d.ts +5 -0
  161. package/lib/typescript/icons/Google.d.ts.map +1 -0
  162. package/lib/typescript/index.d.ts +10 -0
  163. package/lib/typescript/index.d.ts.map +1 -0
  164. package/lib/typescript/storage/index.d.ts +2 -0
  165. package/lib/typescript/storage/index.d.ts.map +1 -0
  166. package/lib/typescript/storage/utils.d.ts +4 -0
  167. package/lib/typescript/storage/utils.d.ts.map +1 -0
  168. package/lib/typescript/types/adapter.d.ts +6 -0
  169. package/lib/typescript/types/adapter.d.ts.map +1 -0
  170. package/lib/typescript/types/auth.d.ts +12 -0
  171. package/lib/typescript/types/auth.d.ts.map +1 -0
  172. package/lib/typescript/types/db.d.ts +8 -0
  173. package/lib/typescript/types/db.d.ts.map +1 -0
  174. package/lib/typescript/types/functions.d.ts +3 -0
  175. package/lib/typescript/types/functions.d.ts.map +1 -0
  176. package/lib/typescript/types/index.d.ts +24 -0
  177. package/lib/typescript/types/index.d.ts.map +1 -0
  178. package/lib/typescript/types/storage.d.ts +3 -0
  179. package/lib/typescript/types/storage.d.ts.map +1 -0
  180. package/lib/typescript/utils/validation.d.ts +21 -0
  181. package/lib/typescript/utils/validation.d.ts.map +1 -0
  182. package/package.json +29 -12
  183. package/src/adapter/auth.ts +474 -0
  184. package/src/adapter/db.ts +146 -0
  185. package/src/adapter/index.ts +30 -0
  186. package/src/adapter/storage.ts +58 -0
  187. package/src/auth/functions.ts +7 -0
  188. package/src/auth/index.ts +1 -0
  189. package/src/components/AuthenticatorVerify.tsx +75 -0
  190. package/src/components/FirebaseSignIn.tsx +187 -0
  191. package/src/components/PhoneVerify.tsx +102 -0
  192. package/src/components/TwoFactorAuthModal.tsx +133 -0
  193. package/src/components/index.ts +2 -0
  194. package/src/contexts/FirebaseContext.tsx +54 -0
  195. package/src/contexts/index.ts +1 -0
  196. package/src/db/index.ts +1 -0
  197. package/src/db/utils.ts +142 -0
  198. package/src/hooks/backend.ts +4 -0
  199. package/src/hooks/index.ts +1 -0
  200. package/src/hooks/useAuthenticatorVerify.ts +45 -0
  201. package/src/hooks/usePhoneVerify.ts +76 -0
  202. package/src/icons/Google.tsx +24 -0
  203. package/src/index.ts +9 -0
  204. package/src/storage/index.ts +1 -0
  205. package/src/storage/utils.ts +29 -0
  206. package/src/types/adapter.ts +13 -0
  207. package/src/types/auth.ts +13 -0
  208. package/src/types/db.ts +10 -0
  209. package/src/types/functions.ts +3 -0
  210. package/src/types/index.ts +26 -0
  211. package/src/types/storage.ts +3 -0
  212. package/src/utils/validation.ts +85 -0
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.PhoneVerify = void 0;
7
+ var _react = require("@chem-po/react");
8
+ var _reactNative = require("@chem-po/react-native");
9
+ var _react2 = _interopRequireDefault(require("react"));
10
+ var _reactNative2 = require("react-native");
11
+ var _usePhoneVerify = require("../hooks/usePhoneVerify");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ // UI to send code and verify code
14
+ const PhoneVerify = ({
15
+ factor
16
+ }) => {
17
+ const {
18
+ handleVerify,
19
+ verifying,
20
+ error,
21
+ code,
22
+ setCode
23
+ } = (0, _usePhoneVerify.usePhoneVerify)(factor, true);
24
+ const {
25
+ multiFactorVerification: twoFactorVerification,
26
+ multiFactorLoading: loading
27
+ } = (0, _react.useAuth)();
28
+ const verificationId = twoFactorVerification === null || twoFactorVerification === void 0 ? void 0 : twoFactorVerification.verificationId;
29
+ let body = null;
30
+ if (loading) {
31
+ body = /*#__PURE__*/_react2.default.createElement(_reactNative2.View, {
32
+ style: styles.container
33
+ }, /*#__PURE__*/_react2.default.createElement(_reactNative2.ActivityIndicator, {
34
+ size: "large",
35
+ color: "#0000ff"
36
+ }), /*#__PURE__*/_react2.default.createElement(_reactNative.Txt, {
37
+ style: styles.text
38
+ }, "Sending verification code..."));
39
+ } else if (verificationId) {
40
+ body = /*#__PURE__*/_react2.default.createElement(_reactNative2.View, {
41
+ style: styles.container
42
+ }, /*#__PURE__*/_react2.default.createElement(_reactNative.Txt, {
43
+ style: styles.text
44
+ }, "Enter the code sent to your phone:"), /*#__PURE__*/_react2.default.createElement(_reactNative2.TextInput, {
45
+ style: styles.input,
46
+ value: code,
47
+ onChangeText: setCode,
48
+ placeholder: "Verification Code",
49
+ keyboardType: "number-pad",
50
+ maxLength: 6
51
+ }), error ? /*#__PURE__*/_react2.default.createElement(_reactNative.Txt, {
52
+ style: styles.errorText
53
+ }, error) : null, /*#__PURE__*/_react2.default.createElement(_reactNative2.TouchableOpacity, {
54
+ style: styles.button,
55
+ onPress: handleVerify,
56
+ disabled: verifying
57
+ }, /*#__PURE__*/_react2.default.createElement(_reactNative.Txt, {
58
+ style: styles.buttonText
59
+ }, verifying ? 'Verifying...' : 'Verify')));
60
+ } else {
61
+ body = /*#__PURE__*/_react2.default.createElement(_reactNative2.View, {
62
+ style: styles.container
63
+ }, /*#__PURE__*/_react2.default.createElement(_reactNative.Txt, {
64
+ style: styles.text
65
+ }, "We'll send a verification code to ", factor.phoneNumber), /*#__PURE__*/_react2.default.createElement(_reactNative2.TouchableOpacity, {
66
+ style: styles.button,
67
+ onPress: () => {},
68
+ disabled: loading
69
+ }, /*#__PURE__*/_react2.default.createElement(_reactNative.Txt, {
70
+ style: styles.buttonText
71
+ }, "Send Verification Code")));
72
+ }
73
+ return /*#__PURE__*/_react2.default.createElement(_reactNative2.View, {
74
+ style: styles.wrapper
75
+ }, body);
76
+ };
77
+ exports.PhoneVerify = PhoneVerify;
78
+ const styles = _reactNative2.StyleSheet.create({
79
+ wrapper: {
80
+ flex: 1,
81
+ padding: 16
82
+ },
83
+ container: {
84
+ flex: 1,
85
+ alignItems: 'center',
86
+ justifyContent: 'center',
87
+ gap: 16
88
+ },
89
+ text: {
90
+ fontSize: 16,
91
+ textAlign: 'center',
92
+ marginBottom: 8
93
+ },
94
+ input: {
95
+ width: '100%',
96
+ height: 48,
97
+ borderWidth: 1,
98
+ borderColor: '#ccc',
99
+ borderRadius: 8,
100
+ paddingHorizontal: 16,
101
+ fontSize: 16,
102
+ marginBottom: 8
103
+ },
104
+ button: {
105
+ backgroundColor: '#007AFF',
106
+ paddingHorizontal: 24,
107
+ paddingVertical: 12,
108
+ borderRadius: 8,
109
+ minWidth: 200,
110
+ alignItems: 'center'
111
+ },
112
+ buttonText: {
113
+ color: 'white',
114
+ fontSize: 16,
115
+ fontWeight: '600'
116
+ },
117
+ errorText: {
118
+ color: 'red',
119
+ fontSize: 14,
120
+ marginBottom: 8
121
+ }
122
+ });
123
+ //# sourceMappingURL=PhoneVerify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_react2","_interopRequireDefault","_reactNative2","_usePhoneVerify","e","__esModule","default","PhoneVerify","factor","handleVerify","verifying","error","code","setCode","usePhoneVerify","multiFactorVerification","twoFactorVerification","multiFactorLoading","loading","useAuth","verificationId","body","createElement","View","style","styles","container","ActivityIndicator","size","color","Txt","text","TextInput","input","value","onChangeText","placeholder","keyboardType","maxLength","errorText","TouchableOpacity","button","onPress","disabled","buttonText","phoneNumber","wrapper","exports","StyleSheet","create","flex","padding","alignItems","justifyContent","gap","fontSize","textAlign","marginBottom","width","height","borderWidth","borderColor","borderRadius","paddingHorizontal","backgroundColor","paddingVertical","minWidth","fontWeight"],"sourceRoot":"..\\..\\..\\src","sources":["components/PhoneVerify.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TwoFactorAuthModal = void 0;
7
+ var _react = require("@chem-po/react");
8
+ var _reactNative = require("@chem-po/react-native");
9
+ var _react2 = _interopRequireWildcard(require("react"));
10
+ var _reactNative2 = require("react-native");
11
+ var _reactNativePaper = require("react-native-paper");
12
+ var _backend = require("../hooks/backend");
13
+ var _AuthenticatorVerify = require("./AuthenticatorVerify");
14
+ var _PhoneVerify = require("./PhoneVerify");
15
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
+ const TwoFactorSelect = ({
17
+ factors,
18
+ onSelect
19
+ }) => {
20
+ const buttonBackgroundColor = (0, _react.useBackgroundColor)(100);
21
+ return /*#__PURE__*/_react2.default.createElement(_reactNative2.View, {
22
+ style: styles.selectContainer
23
+ }, /*#__PURE__*/_react2.default.createElement(_reactNative.Txt, {
24
+ style: styles.selectTitle
25
+ }, "Select an option to verify with:"), /*#__PURE__*/_react2.default.createElement(_reactNative2.View, {
26
+ style: styles.factorsList
27
+ }, factors.map(factor => /*#__PURE__*/_react2.default.createElement(_reactNative2.TouchableOpacity, {
28
+ key: factor.uid,
29
+ style: [styles.factorButton, {
30
+ backgroundColor: buttonBackgroundColor
31
+ }],
32
+ onPress: () => onSelect(factor)
33
+ }, /*#__PURE__*/_react2.default.createElement(_reactNative.Txt, {
34
+ style: styles.factorHeaderText
35
+ }, factor.type === 'phone' ? `Phone: ${factor.phoneNumber}` : 'Authenticator App'), factor.displayName ? /*#__PURE__*/_react2.default.createElement(_reactNative.Txt, {
36
+ style: styles.factorDetailsText
37
+ }, factor.displayName) : null))));
38
+ };
39
+ const TwoFactorVerify = ({
40
+ factorInfo
41
+ }) => factorInfo.type === 'phone' ? /*#__PURE__*/_react2.default.createElement(_PhoneVerify.PhoneVerify, {
42
+ factor: factorInfo
43
+ }) : /*#__PURE__*/_react2.default.createElement(_AuthenticatorVerify.AuthenticatorVerify, null);
44
+ const TwoFactorContent = () => {
45
+ const [selectedEnrollmentFactor, setSelectedEnrollmentFactor] = (0, _react2.useState)(null);
46
+ const enrolledFactors = (0, _react.useAuth)(s => s.enrollmentFactors);
47
+ if (selectedEnrollmentFactor) return /*#__PURE__*/_react2.default.createElement(TwoFactorVerify, {
48
+ factorInfo: selectedEnrollmentFactor
49
+ });
50
+ if (!enrolledFactors) return null;
51
+ if (enrolledFactors.enrollmentFactors.length === 0) return null;
52
+ // if (enrolledFactors.enrollmentFactors.length === 1) return <TwoFactorVerify factorInfo={enrolledFactors.enrollmentFactors[0]} />
53
+ return /*#__PURE__*/_react2.default.createElement(TwoFactorSelect, {
54
+ factors: enrolledFactors.enrollmentFactors,
55
+ onSelect: setSelectedEnrollmentFactor
56
+ });
57
+ };
58
+ const TwoFactorAuthModal = () => {
59
+ const {
60
+ multiFactorVerification: twoFactorVerification,
61
+ enrollmentFactors
62
+ } = (0, _react.useAuth)();
63
+ const {
64
+ auth
65
+ } = (0, _backend.useBackend)();
66
+ const backgroundColor = (0, _react.useBackgroundColor)(150);
67
+ if (!twoFactorVerification && !enrollmentFactors) return null;
68
+ return /*#__PURE__*/_react2.default.createElement(_reactNativePaper.Portal, null, /*#__PURE__*/_react2.default.createElement(_reactNativePaper.Modal, {
69
+ visible: true,
70
+ onDismiss: () => {
71
+ auth.logout();
72
+ },
73
+ contentContainerStyle: [styles.modalContent, {
74
+ backgroundColor
75
+ }],
76
+ style: styles.modal
77
+ }, /*#__PURE__*/_react2.default.createElement(_reactNative2.ScrollView, {
78
+ contentContainerStyle: styles.scrollContent
79
+ }, /*#__PURE__*/_react2.default.createElement(TwoFactorContent, null))));
80
+ };
81
+ exports.TwoFactorAuthModal = TwoFactorAuthModal;
82
+ const styles = _reactNative2.StyleSheet.create({
83
+ modal: {
84
+ margin: 0
85
+ },
86
+ modalContent: {
87
+ margin: 20,
88
+ borderRadius: 12,
89
+ maxHeight: '80%'
90
+ },
91
+ scrollContent: {
92
+ padding: 16
93
+ },
94
+ selectContainer: {
95
+ width: '100%'
96
+ },
97
+ selectTitle: {
98
+ fontSize: 16,
99
+ marginBottom: 16
100
+ },
101
+ factorsList: {
102
+ gap: 8
103
+ },
104
+ factorButton: {
105
+ padding: 16,
106
+ borderRadius: 8,
107
+ borderWidth: 1
108
+ },
109
+ factorHeaderText: {
110
+ fontSize: 14,
111
+ fontWeight: 'bold',
112
+ opacity: 0.8
113
+ },
114
+ factorDetailsText: {
115
+ fontSize: 16
116
+ }
117
+ });
118
+ //# sourceMappingURL=TwoFactorAuthModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_react2","_interopRequireWildcard","_reactNative2","_reactNativePaper","_backend","_AuthenticatorVerify","_PhoneVerify","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TwoFactorSelect","factors","onSelect","buttonBackgroundColor","useBackgroundColor","createElement","View","style","styles","selectContainer","Txt","selectTitle","factorsList","map","factor","TouchableOpacity","key","uid","factorButton","backgroundColor","onPress","factorHeaderText","type","phoneNumber","displayName","factorDetailsText","TwoFactorVerify","factorInfo","PhoneVerify","AuthenticatorVerify","TwoFactorContent","selectedEnrollmentFactor","setSelectedEnrollmentFactor","useState","enrolledFactors","useAuth","s","enrollmentFactors","length","TwoFactorAuthModal","multiFactorVerification","twoFactorVerification","auth","useBackend","Portal","Modal","visible","onDismiss","logout","contentContainerStyle","modalContent","modal","ScrollView","scrollContent","exports","StyleSheet","create","margin","borderRadius","maxHeight","padding","width","fontSize","marginBottom","gap","borderWidth","fontWeight","opacity"],"sourceRoot":"..\\..\\..\\src","sources":["components/TwoFactorAuthModal.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _FirebaseSignIn = require("./FirebaseSignIn");
7
+ Object.keys(_FirebaseSignIn).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _FirebaseSignIn[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _FirebaseSignIn[key];
14
+ }
15
+ });
16
+ });
17
+ var _TwoFactorAuthModal = require("./TwoFactorAuthModal");
18
+ Object.keys(_TwoFactorAuthModal).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _TwoFactorAuthModal[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _TwoFactorAuthModal[key];
25
+ }
26
+ });
27
+ });
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_FirebaseSignIn","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_TwoFactorAuthModal"],"sourceRoot":"..\\..\\..\\src","sources":["components/index.ts"],"mappings":";;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,eAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,eAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,eAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,mBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,mBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,mBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,mBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.FirebaseProvider = FirebaseProvider;
7
+ exports.useFirebase = useFirebase;
8
+ var _app = _interopRequireDefault(require("@react-native-firebase/app"));
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ const FirebaseContext = /*#__PURE__*/(0, _react.createContext)(null);
13
+ function FirebaseProvider({
14
+ config,
15
+ children
16
+ }) {
17
+ const [loading, setLoading] = (0, _react.useState)(true);
18
+ const [app, setApp] = (0, _react.useState)(null);
19
+ const [auth] = (0, _react.useState)(_app.default.auth());
20
+ const [firestore] = (0, _react.useState)(_app.default.firestore());
21
+ const [storage] = (0, _react.useState)(_app.default.storage());
22
+ (0, _react.useEffect)(() => {
23
+ const initializeApp = async () => {
24
+ const firebaseApp = await _app.default.initializeApp(config);
25
+ setApp(firebaseApp);
26
+ setLoading(false);
27
+ };
28
+ initializeApp();
29
+ }, [config]);
30
+ const value = (0, _react.useMemo)(() => ({
31
+ loading,
32
+ app,
33
+ auth,
34
+ firestore,
35
+ storage
36
+ }), [app, auth, firestore, storage, loading]);
37
+ return /*#__PURE__*/_react.default.createElement(FirebaseContext.Provider, {
38
+ value: value
39
+ }, children);
40
+ }
41
+ function useFirebase() {
42
+ const context = (0, _react.useContext)(FirebaseContext);
43
+ if (!context) {
44
+ throw new Error('useFirebase must be used within a FirebaseProvider');
45
+ }
46
+ return context;
47
+ }
48
+ //# sourceMappingURL=FirebaseContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_app","_interopRequireDefault","require","_react","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FirebaseContext","createContext","FirebaseProvider","config","children","loading","setLoading","useState","app","setApp","auth","firebase","firestore","storage","useEffect","initializeApp","firebaseApp","value","useMemo","createElement","Provider","useFirebase","context","useContext","Error"],"sourceRoot":"..\\..\\..\\src","sources":["contexts/FirebaseContext.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _FirebaseContext = require("./FirebaseContext");
7
+ Object.keys(_FirebaseContext).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _FirebaseContext[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _FirebaseContext[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_FirebaseContext","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sourceRoot":"..\\..\\..\\src","sources":["contexts/index.ts"],"mappings":";;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,gBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,gBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,gBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _utils = require("./utils");
7
+ Object.keys(_utils).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _utils[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _utils[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_utils","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sourceRoot":"..\\..\\..\\src","sources":["db/index.ts"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,MAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.toFirestoreQuery = exports.toFirestoreQueries = exports.toCursorQuery = void 0;
7
+ var _core = require("@chem-po/core");
8
+ var _firestore = require("@react-native-firebase/firestore");
9
+ const toFirestoreQuery = (db, baseQuery) => {
10
+ var _search$paths;
11
+ const {
12
+ collection: collectionPath,
13
+ filters,
14
+ limit,
15
+ search,
16
+ sort,
17
+ isCollectionGroup,
18
+ cursor: startAfterDoc
19
+ } = baseQuery;
20
+ let q = isCollectionGroup ? (0, _firestore.collectionGroup)(db, collectionPath) : (0, _firestore.collection)(db, collectionPath);
21
+ if (filters) {
22
+ filters.forEach(({
23
+ key,
24
+ operator,
25
+ value
26
+ }) => {
27
+ q = (0, _firestore.query)(q, (0, _firestore.where)(key, operator, value));
28
+ });
29
+ }
30
+ if (sort) {
31
+ q = (0, _firestore.query)(q, (0, _firestore.orderBy)(sort.key, sort.direction));
32
+ }
33
+ if (startAfterDoc) {
34
+ q = (0, _firestore.query)(q, (0, _firestore.startAfter)(startAfterDoc));
35
+ }
36
+ if (search !== null && search !== void 0 && (_search$paths = search.paths) !== null && _search$paths !== void 0 && _search$paths.length && search.query) {
37
+ const trimmed = (search.query || '').trim();
38
+ if (trimmed) {
39
+ q = (0, _firestore.query)(q, (0, _firestore.where)(search.paths[0].prop, '>=', trimmed), (0, _firestore.where)(search.paths[0].prop, '<=', `${trimmed}\uf8ff`));
40
+ }
41
+ }
42
+ return limit ? (0, _firestore.query)(q, (0, _firestore.limit)(limit)) : q;
43
+ };
44
+ exports.toFirestoreQuery = toFirestoreQuery;
45
+ const toCursorQuery = (db, baseQuery, cursor) => {
46
+ var _search$paths2;
47
+ const {
48
+ collection: collectionPath,
49
+ filters,
50
+ sort,
51
+ isCollectionGroup,
52
+ search,
53
+ limit
54
+ } = baseQuery;
55
+ let q = isCollectionGroup ? (0, _firestore.collectionGroup)(db, collectionPath) : (0, _firestore.collection)(db, collectionPath);
56
+ if (filters) {
57
+ filters.forEach(({
58
+ key,
59
+ operator,
60
+ value
61
+ }) => {
62
+ q = (0, _firestore.query)(q, (0, _firestore.where)(key, operator, value));
63
+ });
64
+ }
65
+ if (sort) {
66
+ q = (0, _firestore.query)(q, (0, _firestore.orderBy)(sort.key, sort.direction));
67
+ }
68
+ if (search !== null && search !== void 0 && (_search$paths2 = search.paths) !== null && _search$paths2 !== void 0 && _search$paths2.length && search.query) {
69
+ const trimmed = (search.query || '').trim();
70
+ if (trimmed) {
71
+ q = (0, _firestore.query)(q, (0, _firestore.where)(search.paths[0].prop, '>=', trimmed), (0, _firestore.where)(search.paths[0].prop, '<=', `${trimmed}\uf8ff`));
72
+ }
73
+ }
74
+ if (cursor) {
75
+ q = (0, _firestore.query)(q, (0, _firestore.startAfter)(cursor));
76
+ }
77
+ return limit ? (0, _firestore.query)(q, (0, _firestore.limit)(limit), (0, _firestore.limit)(1)) : q;
78
+ };
79
+ exports.toCursorQuery = toCursorQuery;
80
+ const toFirestoreQueries = (db, baseQuery, cursors) => {
81
+ var _search$paths3;
82
+ const {
83
+ collection: collectionPath,
84
+ filters,
85
+ limit,
86
+ search,
87
+ sort,
88
+ isCollectionGroup
89
+ } = baseQuery;
90
+ let q = isCollectionGroup ? (0, _firestore.collectionGroup)(db, collectionPath) : (0, _firestore.collection)(db, collectionPath);
91
+ if (filters) {
92
+ let filterSortKey = null;
93
+ filters.forEach(({
94
+ key,
95
+ operator,
96
+ value
97
+ }) => {
98
+ q = (0, _firestore.query)(q, (0, _firestore.where)(key, operator, value));
99
+ if (!filterSortKey && (0, _core.isInequalityOperator)(operator) && (!sort || sort.key !== key)) {
100
+ filterSortKey = key;
101
+ q = (0, _firestore.query)(q, (0, _firestore.orderBy)(key, 'asc'));
102
+ }
103
+ });
104
+ }
105
+ if (sort) {
106
+ q = (0, _firestore.query)(q, (0, _firestore.orderBy)(sort.key, sort.direction));
107
+ }
108
+ if (cursors !== null && cursors !== void 0 && cursors.length) {
109
+ q = (0, _firestore.query)(q, (0, _firestore.startAfter)(cursors[cursors.length - 1]));
110
+ }
111
+ const queries = search !== null && search !== void 0 && (_search$paths3 = search.paths) !== null && _search$paths3 !== void 0 && _search$paths3.length && search.query ? search.paths.map(path => {
112
+ let trimmed = (search.query ?? '').trim();
113
+ if (!trimmed) return q;
114
+ if (path.transform) trimmed = _core.stringTransforms[path.transform](trimmed);
115
+ return (0, _firestore.query)(q, (0, _firestore.where)(path.prop, '>=', trimmed), (0, _firestore.where)(path.prop, '<=', `${trimmed}\uf8ff`));
116
+ }) : [q];
117
+ return queries.map(q0 => limit ? (0, _firestore.query)(q0, (0, _firestore.limit)(limit)) : q0);
118
+ };
119
+ exports.toFirestoreQueries = toFirestoreQueries;
120
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_core","require","_firestore","toFirestoreQuery","db","baseQuery","_search$paths","collection","collectionPath","filters","limit","search","sort","isCollectionGroup","cursor","startAfterDoc","q","collectionGroup","forEach","key","operator","value","query","where","orderBy","direction","startAfter","paths","length","trimmed","trim","prop","limitTo","exports","toCursorQuery","_search$paths2","toFirestoreQueries","cursors","_search$paths3","filterSortKey","isInequalityOperator","queries","map","path","transform","stringTransforms","q0"],"sourceRoot":"..\\..\\..\\src","sources":["db/utils.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useBackend = void 0;
7
+ var _react = require("@chem-po/react");
8
+ // import { FirebaseBackendAdapter } from '../types/adapter'
9
+
10
+ const useBackend = () => (0, _react.useBackendBase)();
11
+ exports.useBackend = useBackend;
12
+ //# sourceMappingURL=backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","useBackend","useBackendBase","exports"],"sourceRoot":"..\\..\\..\\src","sources":["hooks/backend.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA;;AAEO,MAAMC,UAAU,GAAGA,CAAA,KAAM,IAAAC,qBAAc,EAAC,CAAC;AAAAC,OAAA,CAAAF,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _backend = require("./backend");
7
+ Object.keys(_backend).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _backend[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _backend[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_backend","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sourceRoot":"..\\..\\..\\src","sources":["hooks/index.ts"],"mappings":";;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,QAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useAuthenticatorVerify = void 0;
7
+ var _react = require("@chem-po/react");
8
+ var _react2 = require("react");
9
+ var _backend = require("./backend");
10
+ const useAuthenticatorVerify = () => {
11
+ const [code, setCode] = (0, _react2.useState)('');
12
+ const [verifying, setVerifying] = (0, _react2.useState)(false);
13
+ const [error, setError] = (0, _react2.useState)('');
14
+ const twoFactorVerification = (0, _react.useAuth)(s => s.multiFactorVerification);
15
+ const {
16
+ auth
17
+ } = (0, _backend.useBackend)();
18
+ // const { showSuccess, showError, showInfo } = useToast()
19
+
20
+ const handleVerify = (0, _react2.useCallback)(async () => {
21
+ const verify = auth.verifyMultiFactor;
22
+ if (!verify) {
23
+ setError('Error - Two factor verification is not supported');
24
+ return;
25
+ }
26
+ if (!code) return;
27
+ if (!twoFactorVerification) {
28
+ setError('Error - No session found');
29
+ return;
30
+ }
31
+ const resolver = twoFactorVerification.resolver;
32
+ if (!resolver) {
33
+ setError('Error - No session found');
34
+ return;
35
+ }
36
+ setVerifying(true);
37
+ try {
38
+ await verify(twoFactorVerification, code);
39
+ } catch (error) {
40
+ setError(error instanceof Error ? error.message : 'An unknown error occurred');
41
+ }
42
+ }, [code, auth, twoFactorVerification]);
43
+ return {
44
+ code,
45
+ setCode,
46
+ verifying,
47
+ error,
48
+ handleVerify
49
+ };
50
+ };
51
+ exports.useAuthenticatorVerify = useAuthenticatorVerify;
52
+ //# sourceMappingURL=useAuthenticatorVerify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_react2","_backend","useAuthenticatorVerify","code","setCode","useState","verifying","setVerifying","error","setError","twoFactorVerification","useAuth","s","multiFactorVerification","auth","useBackend","handleVerify","useCallback","verify","verifyMultiFactor","resolver","Error","message","exports"],"sourceRoot":"..\\..\\..\\src","sources":["hooks/useAuthenticatorVerify.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEO,MAAMG,sBAAsB,GAAGA,CAAA,KAAM;EAC1C,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,gBAAQ,EAAC,EAAE,CAAC;EACpC,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAF,gBAAQ,EAAC,KAAK,CAAC;EACjD,MAAM,CAACG,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAJ,gBAAQ,EAAC,EAAE,CAAC;EACtC,MAAMK,qBAAqB,GAAG,IAAAC,cAAO,EAACC,CAAC,IAAIA,CAAC,CAACC,uBAAuB,CAAC;EACrE,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,mBAAU,EAAC,CAAC;EAC7B;;EAEA,MAAMC,YAAY,GAAG,IAAAC,mBAAW,EAAC,YAAY;IAC3C,MAAMC,MAAM,GAAGJ,IAAI,CAACK,iBAAiB;IACrC,IAAI,CAACD,MAAM,EAAE;MACXT,QAAQ,CAAC,kDAAkD,CAAC;MAC5D;IACF;IACA,IAAI,CAACN,IAAI,EAAE;IACX,IAAI,CAACO,qBAAqB,EAAE;MAC1BD,QAAQ,CAAC,0BAA0B,CAAC;MACpC;IACF;IACA,MAAMW,QAAQ,GAAGV,qBAAqB,CAACU,QAAiD;IACxF,IAAI,CAACA,QAAQ,EAAE;MACbX,QAAQ,CAAC,0BAA0B,CAAC;MACpC;IACF;IACAF,YAAY,CAAC,IAAI,CAAC;IAClB,IAAI;MACF,MAAMW,MAAM,CAACR,qBAAqB,EAAEP,IAAI,CAAC;IAC3C,CAAC,CAAC,OAAOK,KAAK,EAAE;MACdC,QAAQ,CAACD,KAAK,YAAYa,KAAK,GAAGb,KAAK,CAACc,OAAO,GAAG,2BAA2B,CAAC;IAChF;EACF,CAAC,EAAE,CAACnB,IAAI,EAAEW,IAAI,EAAEJ,qBAAqB,CAAC,CAAC;EAEvC,OAAO;IACLP,IAAI;IACJC,OAAO;IACPE,SAAS;IACTE,KAAK;IACLQ;EACF,CAAC;AACH,CAAC;AAAAO,OAAA,CAAArB,sBAAA,GAAAA,sBAAA","ignoreList":[]}