@turnkey/sdk-react 3.0.0 → 3.0.1
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.
- package/CHANGELOG.md +13 -0
- package/dist/_virtual/_rollupPluginBabelHelpers.mjs +470 -0
- package/dist/_virtual/_rollupPluginBabelHelpers.mjs.map +1 -0
- package/dist/components/auth/Apple.js +78 -64
- package/dist/components/auth/Apple.js.map +1 -1
- package/dist/components/auth/Apple.mjs +85 -64
- package/dist/components/auth/Apple.mjs.map +1 -1
- package/dist/components/auth/Auth.d.ts +3 -0
- package/dist/components/auth/Auth.d.ts.map +1 -1
- package/dist/components/auth/Auth.js +507 -259
- package/dist/components/auth/Auth.js.map +1 -1
- package/dist/components/auth/Auth.mjs +725 -229
- package/dist/components/auth/Auth.mjs.map +1 -1
- package/dist/components/auth/Facebook.js +78 -63
- package/dist/components/auth/Facebook.js.map +1 -1
- package/dist/components/auth/Facebook.mjs +121 -54
- package/dist/components/auth/Facebook.mjs.map +1 -1
- package/dist/components/auth/Google.js +63 -47
- package/dist/components/auth/Google.js.map +1 -1
- package/dist/components/auth/Google.mjs +70 -39
- package/dist/components/auth/Google.mjs.map +1 -1
- package/dist/components/auth/OtpVerification.js +106 -51
- package/dist/components/auth/OtpVerification.js.map +1 -1
- package/dist/components/auth/OtpVerification.mjs +151 -41
- package/dist/components/auth/OtpVerification.mjs.map +1 -1
- package/dist/components/auth/PhoneInput.d.ts.map +1 -1
- package/dist/components/auth/PhoneInput.js +138 -69
- package/dist/components/auth/PhoneInput.js.map +1 -1
- package/dist/components/auth/PhoneInput.mjs +141 -70
- package/dist/components/auth/PhoneInput.mjs.map +1 -1
- package/dist/components/auth/TurnkeyThemeProvider.js +26 -17
- package/dist/components/auth/TurnkeyThemeProvider.js.map +1 -1
- package/dist/components/auth/TurnkeyThemeProvider.mjs +33 -18
- package/dist/components/auth/TurnkeyThemeProvider.mjs.map +1 -1
- package/dist/components/auth/constants.js +26 -26
- package/dist/components/auth/constants.js.map +1 -1
- package/dist/components/auth/constants.mjs +34 -34
- package/dist/components/auth/constants.mjs.map +1 -1
- package/dist/components/auth/facebookUtils.js +23 -21
- package/dist/components/auth/facebookUtils.js.map +1 -1
- package/dist/components/auth/facebookUtils.mjs +65 -23
- package/dist/components/auth/facebookUtils.mjs.map +1 -1
- package/dist/components/auth/otp.js +84 -71
- package/dist/components/auth/otp.js.map +1 -1
- package/dist/components/auth/otp.mjs +96 -70
- package/dist/components/auth/otp.mjs.map +1 -1
- package/dist/components/auth/utils.js +3 -3
- package/dist/components/auth/utils.js.map +1 -1
- package/dist/components/auth/utils.mjs +3 -3
- package/dist/components/auth/utils.mjs.map +1 -1
- package/dist/components/export/Export.js +181 -99
- package/dist/components/export/Export.js.map +1 -1
- package/dist/components/export/Export.mjs +257 -89
- package/dist/components/export/Export.mjs.map +1 -1
- package/dist/components/import/Import.js +185 -132
- package/dist/components/import/Import.js.map +1 -1
- package/dist/components/import/Import.mjs +264 -120
- package/dist/components/import/Import.mjs.map +1 -1
- package/dist/contexts/TurnkeyContext.d.ts.map +1 -1
- package/dist/contexts/TurnkeyContext.js +113 -93
- package/dist/contexts/TurnkeyContext.js.map +1 -1
- package/dist/contexts/TurnkeyContext.mjs +191 -92
- package/dist/contexts/TurnkeyContext.mjs.map +1 -1
- package/dist/hooks/use-session.js +16 -13
- package/dist/hooks/use-session.js.map +1 -1
- package/dist/hooks/use-session.mjs +18 -13
- package/dist/hooks/use-session.mjs.map +1 -1
- package/dist/hooks/use-turnkey.js +5 -5
- package/dist/hooks/use-turnkey.js.map +1 -1
- package/dist/hooks/use-turnkey.mjs +6 -6
- package/dist/hooks/use-turnkey.mjs.map +1 -1
- package/package.json +8 -8
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
1
|
+
var GOOGLE_AUTH_URL = "https://accounts.google.com/o/oauth2/v2/auth";
|
|
2
|
+
var APPLE_AUTH_URL = "https://appleid.apple.com/auth/authorize";
|
|
3
|
+
var APPLE_AUTH_SCRIPT_URL = "https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js";
|
|
4
|
+
var FACEBOOK_AUTH_URL = "https://www.facebook.com/v11.0/dialog/oauth";
|
|
5
|
+
var FACEBOOK_GRAPH_URL = "https://graph.facebook.com/v11.0/oauth/access_token";
|
|
6
|
+
var popupWidth = 500;
|
|
7
|
+
var popupHeight = 600;
|
|
8
|
+
var authErrors = {
|
|
9
|
+
// Passkey-related errors
|
|
10
|
+
passkey: {
|
|
11
|
+
createFailed: "Passkey not created. Please try again.",
|
|
12
|
+
loginFailed: "Failed to login with passkey. Please try again.",
|
|
13
|
+
timeoutOrNotAllowed: "The operation either timed out or was not allowed. Please try again."
|
|
14
|
+
},
|
|
15
|
+
// OTP-related errors
|
|
16
|
+
otp: {
|
|
17
|
+
sendFailed: "Failed to send OTP",
|
|
18
|
+
invalidEmail: "Invalid email address.",
|
|
19
|
+
invalidPhone: "Invalid phone number."
|
|
20
|
+
},
|
|
21
|
+
// OAuth-related errors
|
|
22
|
+
oauth: {
|
|
23
|
+
loginFailed: "Failed to login with OIDC provider"
|
|
24
|
+
},
|
|
25
|
+
// Sub-organization-related errors
|
|
26
|
+
suborg: {
|
|
27
|
+
fetchFailed: "Failed to fetch account",
|
|
28
|
+
createFailed: "Failed to create account."
|
|
29
|
+
}
|
|
30
30
|
};
|
|
31
31
|
var OtpType;
|
|
32
32
|
(function (OtpType) {
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
OtpType["Email"] = "OTP_TYPE_EMAIL";
|
|
34
|
+
OtpType["Sms"] = "OTP_TYPE_SMS";
|
|
35
35
|
})(OtpType || (OtpType = {}));
|
|
36
36
|
var FilterType;
|
|
37
37
|
(function (FilterType) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
FilterType["Email"] = "EMAIL";
|
|
39
|
+
FilterType["PhoneNumber"] = "PHONE_NUMBER";
|
|
40
|
+
FilterType["OidcToken"] = "OIDC_TOKEN";
|
|
41
41
|
})(FilterType || (FilterType = {}));
|
|
42
42
|
|
|
43
43
|
export { APPLE_AUTH_SCRIPT_URL, APPLE_AUTH_URL, FACEBOOK_AUTH_URL, FACEBOOK_GRAPH_URL, FilterType, GOOGLE_AUTH_URL, OtpType, authErrors, popupHeight, popupWidth };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.mjs","sources":["../../../src/components/auth/constants.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAO,
|
|
1
|
+
{"version":3,"file":"constants.mjs","sources":["../../../src/components/auth/constants.ts"],"sourcesContent":[null],"names":["GOOGLE_AUTH_URL","APPLE_AUTH_URL","APPLE_AUTH_SCRIPT_URL","FACEBOOK_AUTH_URL","FACEBOOK_GRAPH_URL","popupWidth","popupHeight","authErrors","passkey","createFailed","loginFailed","timeoutOrNotAllowed","otp","sendFailed","invalidEmail","invalidPhone","oauth","suborg","fetchFailed","OtpType","FilterType"],"mappings":"AAAO,IAAMA,eAAe,GAAG,+CAA8C;AACtE,IAAMC,cAAc,GAAG,2CAA0C;AACjE,IAAMC,qBAAqB,GAChC,uFAAsF;AACjF,IAAMC,iBAAiB,GAAG,8CAA6C;AACvE,IAAMC,kBAAkB,GAC7B,sDAAqD;AAChD,IAAMC,UAAU,GAAG,IAAG;AACtB,IAAMC,WAAW,GAAG,IAAG;AAEvB,IAAMC,UAAU,GAAG;AACxB;AACAC,EAAAA,OAAO,EAAE;AACPC,IAAAA,YAAY,EAAE,wCAAwC;AACtDC,IAAAA,WAAW,EAAE,iDAAiD;AAC9DC,IAAAA,mBAAmB,EACjB,sEAAA;GACH;AAED;AACAC,EAAAA,GAAG,EAAE;AACHC,IAAAA,UAAU,EAAE,oBAAoB;AAChCC,IAAAA,YAAY,EAAE,wBAAwB;AACtCC,IAAAA,YAAY,EAAE,uBAAA;GACf;AAED;AACAC,EAAAA,KAAK,EAAE;AACLN,IAAAA,WAAW,EAAE,oCAAA;GACd;AAED;AACAO,EAAAA,MAAM,EAAE;AACNC,IAAAA,WAAW,EAAE,yBAAyB;AACtCT,IAAAA,YAAY,EAAE,2BAAA;AACf,GAAA;EACF;IAEWU,QAGX;AAHD,CAAA,UAAYA,OAAO,EAAA;AACjBA,EAAAA,OAAA,CAAA,OAAA,CAAA,GAAA,gBAAwB,CAAA;AACxBA,EAAAA,OAAA,CAAA,KAAA,CAAA,GAAA,cAAoB,CAAA;AACtB,CAAC,EAHWA,OAAO,KAAPA,OAAO,GAGlB,EAAA,CAAA,CAAA,CAAA;IAEWC,WAIX;AAJD,CAAA,UAAYA,UAAU,EAAA;AACpBA,EAAAA,UAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACfA,EAAAA,UAAA,CAAA,aAAA,CAAA,GAAA,cAA4B,CAAA;AAC5BA,EAAAA,UAAA,CAAA,WAAA,CAAA,GAAA,YAAwB,CAAA;AAC1B,CAAC,EAJWA,UAAU,KAAVA,UAAU,GAIrB,EAAA,CAAA,CAAA;;;;"}
|
|
@@ -5,29 +5,31 @@ var crypto = require('crypto');
|
|
|
5
5
|
var constants = require('./constants.js');
|
|
6
6
|
|
|
7
7
|
async function generateChallengePair() {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
const verifier = crypto.randomBytes(32).toString("base64url");
|
|
9
|
+
const codeChallenge = crypto.createHash("sha256").update(verifier).digest("base64url");
|
|
10
|
+
return {
|
|
11
|
+
verifier,
|
|
12
|
+
codeChallenge
|
|
13
|
+
};
|
|
14
14
|
}
|
|
15
15
|
async function exchangeCodeForToken(clientId, redirectURI, authCode, verifier) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
16
|
+
const response = await fetch(constants.FACEBOOK_GRAPH_URL, {
|
|
17
|
+
method: "POST",
|
|
18
|
+
headers: {
|
|
19
|
+
"Content-Type": "application/json"
|
|
20
|
+
},
|
|
21
|
+
body: JSON.stringify({
|
|
22
|
+
client_id: clientId,
|
|
23
|
+
redirect_uri: redirectURI,
|
|
24
|
+
code: authCode,
|
|
25
|
+
code_verifier: verifier
|
|
26
|
+
})
|
|
27
|
+
});
|
|
28
|
+
const tokenData = await response.json();
|
|
29
|
+
if (!response.ok) {
|
|
30
|
+
throw new Error("Token exchange failed: " + JSON.stringify(tokenData));
|
|
31
|
+
}
|
|
32
|
+
return tokenData;
|
|
31
33
|
}
|
|
32
34
|
|
|
33
35
|
exports.exchangeCodeForToken = exchangeCodeForToken;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facebookUtils.js","sources":["../../../src/components/auth/facebookUtils.ts"],"sourcesContent":[null],"names":["FACEBOOK_GRAPH_URL"],"mappings":";;;;;;AAKO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,
|
|
1
|
+
{"version":3,"file":"facebookUtils.js","sources":["../../../src/components/auth/facebookUtils.ts"],"sourcesContent":[null],"names":["generateChallengePair","verifier","crypto","randomBytes","toString","codeChallenge","createHash","update","digest","exchangeCodeForToken","clientId","redirectURI","authCode","response","fetch","FACEBOOK_GRAPH_URL","method","headers","body","JSON","stringify","client_id","redirect_uri","code","code_verifier","tokenData","json","ok","Error"],"mappings":"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"}
|
|
@@ -1,31 +1,73 @@
|
|
|
1
1
|
'use server';
|
|
2
|
+
import { asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime } from '../../_virtual/_rollupPluginBabelHelpers.mjs';
|
|
2
3
|
import crypto from 'crypto';
|
|
3
4
|
import { FACEBOOK_GRAPH_URL } from './constants.mjs';
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const codeChallenge = crypto
|
|
8
|
-
.createHash("sha256")
|
|
9
|
-
.update(verifier)
|
|
10
|
-
.digest("base64url");
|
|
11
|
-
return { verifier, codeChallenge };
|
|
6
|
+
function generateChallengePair() {
|
|
7
|
+
return _generateChallengePair.apply(this, arguments);
|
|
12
8
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
9
|
+
function _generateChallengePair() {
|
|
10
|
+
_generateChallengePair = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
11
|
+
var verifier, codeChallenge;
|
|
12
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
13
|
+
while (1) switch (_context.prev = _context.next) {
|
|
14
|
+
case 0:
|
|
15
|
+
verifier = crypto.randomBytes(32).toString("base64url");
|
|
16
|
+
codeChallenge = crypto.createHash("sha256").update(verifier).digest("base64url");
|
|
17
|
+
return _context.abrupt("return", {
|
|
18
|
+
verifier: verifier,
|
|
19
|
+
codeChallenge: codeChallenge
|
|
20
|
+
});
|
|
21
|
+
case 3:
|
|
22
|
+
case "end":
|
|
23
|
+
return _context.stop();
|
|
24
|
+
}
|
|
25
|
+
}, _callee);
|
|
26
|
+
}));
|
|
27
|
+
return _generateChallengePair.apply(this, arguments);
|
|
28
|
+
}
|
|
29
|
+
function exchangeCodeForToken(_x, _x2, _x3, _x4) {
|
|
30
|
+
return _exchangeCodeForToken.apply(this, arguments);
|
|
31
|
+
}
|
|
32
|
+
function _exchangeCodeForToken() {
|
|
33
|
+
_exchangeCodeForToken = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(clientId, redirectURI, authCode, verifier) {
|
|
34
|
+
var response, tokenData;
|
|
35
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
36
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
37
|
+
case 0:
|
|
38
|
+
_context2.next = 2;
|
|
39
|
+
return fetch(FACEBOOK_GRAPH_URL, {
|
|
40
|
+
method: "POST",
|
|
41
|
+
headers: {
|
|
42
|
+
"Content-Type": "application/json"
|
|
43
|
+
},
|
|
44
|
+
body: JSON.stringify({
|
|
45
|
+
client_id: clientId,
|
|
46
|
+
redirect_uri: redirectURI,
|
|
47
|
+
code: authCode,
|
|
48
|
+
code_verifier: verifier
|
|
49
|
+
})
|
|
50
|
+
});
|
|
51
|
+
case 2:
|
|
52
|
+
response = _context2.sent;
|
|
53
|
+
_context2.next = 5;
|
|
54
|
+
return response.json();
|
|
55
|
+
case 5:
|
|
56
|
+
tokenData = _context2.sent;
|
|
57
|
+
if (response.ok) {
|
|
58
|
+
_context2.next = 8;
|
|
59
|
+
break;
|
|
60
|
+
}
|
|
61
|
+
throw new Error("Token exchange failed: " + JSON.stringify(tokenData));
|
|
62
|
+
case 8:
|
|
63
|
+
return _context2.abrupt("return", tokenData);
|
|
64
|
+
case 9:
|
|
65
|
+
case "end":
|
|
66
|
+
return _context2.stop();
|
|
67
|
+
}
|
|
68
|
+
}, _callee2);
|
|
69
|
+
}));
|
|
70
|
+
return _exchangeCodeForToken.apply(this, arguments);
|
|
29
71
|
}
|
|
30
72
|
|
|
31
73
|
export { exchangeCodeForToken, generateChallengePair };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facebookUtils.mjs","sources":["../../../src/components/auth/facebookUtils.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"facebookUtils.mjs","sources":["../../../src/components/auth/facebookUtils.ts"],"sourcesContent":[null],"names":["generateChallengePair","_generateChallengePair","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","verifier","codeChallenge","wrap","_callee$","_context","prev","next","crypto","randomBytes","toString","createHash","update","digest","abrupt","stop","exchangeCodeForToken","_x","_x2","_x3","_x4","_exchangeCodeForToken","_callee2","clientId","redirectURI","authCode","response","tokenData","_callee2$","_context2","fetch","FACEBOOK_GRAPH_URL","method","headers","body","JSON","stringify","client_id","redirect_uri","code","code_verifier","sent","json","ok","Error"],"mappings":"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"}
|
|
@@ -4,79 +4,92 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var material = require('@mui/material');
|
|
6
6
|
|
|
7
|
-
const OtpInput = React.forwardRef(({
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
7
|
+
const OtpInput = /*#__PURE__*/React.forwardRef(({
|
|
8
|
+
onComplete,
|
|
9
|
+
hasError
|
|
10
|
+
}, ref) => {
|
|
11
|
+
const [otp, setOtp] = React.useState(Array(6).fill(""));
|
|
12
|
+
React.useImperativeHandle(ref, () => ({
|
|
13
|
+
resetOtp() {
|
|
14
|
+
setOtp(Array(6).fill(""));
|
|
15
|
+
const firstInput = document.getElementById("otp-input-0");
|
|
16
|
+
if (firstInput) firstInput.focus();
|
|
17
|
+
}
|
|
18
|
+
}));
|
|
19
|
+
const handleChange = (value, index) => {
|
|
20
|
+
if (/^\d*$/.test(value)) {
|
|
21
|
+
const newOtp = [...otp];
|
|
22
|
+
newOtp[index] = value;
|
|
23
|
+
setOtp(newOtp);
|
|
24
|
+
// If all boxes are filled, call onComplete with the OTP
|
|
25
|
+
if (newOtp.every(digit => digit !== "")) {
|
|
26
|
+
onComplete(newOtp.join(""));
|
|
27
|
+
}
|
|
28
|
+
// Move focus to the next box if current is filled
|
|
29
|
+
if (value && index < 5) {
|
|
30
|
+
const nextInput = document.getElementById(`otp-input-${index + 1}`);
|
|
31
|
+
if (nextInput) nextInput.focus();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
const handleKeyDown = (event, index) => {
|
|
36
|
+
if (event.key === "Backspace" && otp[index] === "" && index > 0) {
|
|
37
|
+
const prevInput = document.getElementById(`otp-input-${index - 1}`);
|
|
38
|
+
if (prevInput) prevInput.focus();
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
const handlePaste = event => {
|
|
42
|
+
const pasteData = event.clipboardData.getData("Text").replace(/\D/g, ""); // Ensure only digits are pasted
|
|
43
|
+
if (pasteData.length === 6) {
|
|
44
|
+
const newOtp = pasteData.split("");
|
|
45
|
+
setOtp(newOtp);
|
|
46
|
+
onComplete(newOtp.join(""));
|
|
47
|
+
// Automatically move focus to the last input box
|
|
48
|
+
const lastInput = document.getElementById(`otp-input-5`);
|
|
49
|
+
if (lastInput) lastInput.focus();
|
|
50
|
+
event.preventDefault();
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
return jsxRuntime.jsx(material.Box, {
|
|
54
|
+
display: "flex",
|
|
55
|
+
gap: 1,
|
|
56
|
+
justifyContent: "center",
|
|
57
|
+
mt: 2,
|
|
58
|
+
children: otp.map((digit, index) => jsxRuntime.jsx(material.TextField, {
|
|
59
|
+
autoComplete: "off",
|
|
60
|
+
id: `otp-input-${index}`,
|
|
61
|
+
value: digit,
|
|
62
|
+
onChange: e => handleChange(e.target.value, index),
|
|
63
|
+
onKeyDown: e => handleKeyDown(e, index),
|
|
64
|
+
onPaste: index === 0 ? handlePaste : undefined,
|
|
65
|
+
inputProps: {
|
|
66
|
+
maxLength: 1,
|
|
67
|
+
style: {
|
|
68
|
+
textAlign: "center",
|
|
69
|
+
fontSize: "1.5rem",
|
|
70
|
+
height: "20px",
|
|
71
|
+
width: "100%",
|
|
72
|
+
background: "var(--input-bg)"
|
|
32
73
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
74
|
+
},
|
|
75
|
+
variant: "outlined",
|
|
76
|
+
sx: {
|
|
77
|
+
"& .MuiOutlinedInput-root": {
|
|
78
|
+
color: "var(--input-text)",
|
|
79
|
+
"& fieldset": {
|
|
80
|
+
borderColor: hasError && !digit ? "var(--error-color)" : "var(--input-border)"
|
|
81
|
+
},
|
|
82
|
+
"&:hover fieldset": {
|
|
83
|
+
borderColor: "var(--input-border-hover)"
|
|
84
|
+
},
|
|
85
|
+
"&.Mui-focused fieldset": {
|
|
86
|
+
borderColor: "var(--input-border-focus)",
|
|
87
|
+
border: "1px solid"
|
|
88
|
+
}
|
|
39
89
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
if (pasteData.length === 6) {
|
|
44
|
-
const newOtp = pasteData.split("");
|
|
45
|
-
setOtp(newOtp);
|
|
46
|
-
onComplete(newOtp.join(""));
|
|
47
|
-
// Automatically move focus to the last input box
|
|
48
|
-
const lastInput = document.getElementById(`otp-input-5`);
|
|
49
|
-
if (lastInput)
|
|
50
|
-
lastInput.focus();
|
|
51
|
-
event.preventDefault();
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
return (jsxRuntime.jsx(material.Box, { display: "flex", gap: 1, justifyContent: "center", mt: 2, children: otp.map((digit, index) => (jsxRuntime.jsx(material.TextField, { autoComplete: "off", id: `otp-input-${index}`, value: digit, onChange: (e) => handleChange(e.target.value, index), onKeyDown: (e) => handleKeyDown(e, index), onPaste: index === 0 ? handlePaste : undefined, inputProps: {
|
|
55
|
-
maxLength: 1,
|
|
56
|
-
style: {
|
|
57
|
-
textAlign: "center",
|
|
58
|
-
fontSize: "1.5rem",
|
|
59
|
-
height: "20px",
|
|
60
|
-
width: "100%",
|
|
61
|
-
background: "var(--input-bg)",
|
|
62
|
-
},
|
|
63
|
-
}, variant: "outlined", sx: {
|
|
64
|
-
"& .MuiOutlinedInput-root": {
|
|
65
|
-
color: "var(--input-text)",
|
|
66
|
-
"& fieldset": {
|
|
67
|
-
borderColor: hasError && !digit
|
|
68
|
-
? "var(--error-color)"
|
|
69
|
-
: "var(--input-border)",
|
|
70
|
-
},
|
|
71
|
-
"&:hover fieldset": {
|
|
72
|
-
borderColor: "var(--input-border-hover)",
|
|
73
|
-
},
|
|
74
|
-
"&.Mui-focused fieldset": {
|
|
75
|
-
borderColor: "var(--input-border-focus)",
|
|
76
|
-
border: "1px solid",
|
|
77
|
-
},
|
|
78
|
-
},
|
|
79
|
-
} }, index))) }));
|
|
90
|
+
}
|
|
91
|
+
}, index))
|
|
92
|
+
});
|
|
80
93
|
});
|
|
81
94
|
|
|
82
95
|
module.exports = OtpInput;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"otp.js","sources":["../../../src/components/auth/otp.tsx"],"sourcesContent":[null],"names":["forwardRef","useState","useImperativeHandle","_jsx","Box","TextField"],"mappings":";;;;;;AAQA,
|
|
1
|
+
{"version":3,"file":"otp.js","sources":["../../../src/components/auth/otp.tsx"],"sourcesContent":[null],"names":["OtpInput","forwardRef","onComplete","hasError","ref","otp","setOtp","useState","Array","fill","useImperativeHandle","resetOtp","firstInput","document","getElementById","focus","handleChange","value","index","test","newOtp","every","digit","join","nextInput","handleKeyDown","event","key","prevInput","handlePaste","pasteData","clipboardData","getData","replace","length","split","lastInput","preventDefault","_jsx","Box","display","gap","justifyContent","mt","children","map","TextField","autoComplete","id","onChange","e","target","onKeyDown","onPaste","undefined","inputProps","maxLength","style","textAlign","fontSize","height","width","background","variant","sx","color","borderColor","border"],"mappings":"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"}
|