@redzone/taunt-logins-ui-react 0.0.5 → 0.0.6
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/dist/App.d.ts +2 -0
- package/dist/lib/index.d.ts +4 -0
- package/dist/lib/magic.d.ts +3 -0
- package/dist/lib/metamask.d.ts +3 -0
- package/dist/lib/tauntContext.d.ts +12 -0
- package/dist/lib/tauntProvider.d.ts +5 -0
- package/dist/main.d.ts +1 -0
- package/dist/taunt-logins-ui-react.d.ts +2 -0
- package/dist/taunt-logins-ui-react.js +3089 -0
- package/dist/taunt-logins-ui-react.js.map +1 -0
- package/dist/taunt-logins-ui-react.umd.cjs +7 -0
- package/dist/taunt-logins-ui-react.umd.cjs.map +1 -0
- package/package.json +5 -2
- package/.history/babel.config_20251002171845.json +0 -0
- package/.history/babel.config_20251002171847.json +0 -3
- package/.history/babel.config_20251002172145.json +0 -3
- package/.history/babel.config_20251002172313.json +0 -3
- package/.history/babel.config_20251002172415.json +0 -8
- package/.history/index_20251002141038.html +0 -13
- package/.history/index_20251002141344.html +0 -13
- package/.history/package_20251002154235.json +0 -32
- package/.history/package_20251002160110.json +0 -33
- package/.history/package_20251002161109.json +0 -33
- package/.history/package_20251002161124.json +0 -32
- package/.history/package_20251002161826.json +0 -32
- package/.history/package_20251002162139.json +0 -32
- package/.history/package_20251002162605.json +0 -35
- package/.history/package_20251002162619.json +0 -35
- package/.history/package_20251002162631.json +0 -35
- package/.history/package_20251002162639.json +0 -35
- package/.history/package_20251002162659.json +0 -35
- package/.history/package_20251002162811.json +0 -39
- package/.history/package_20251002162820.json +0 -39
- package/.history/package_20251002171613.json +0 -40
- package/.history/package_20251002171644.json +0 -40
- package/.history/package_20251002171740.json +0 -43
- package/.history/package_20251002172017.json +0 -43
- package/.history/package_20251002172634.json +0 -53
- package/.history/package_20251002182812.json +0 -52
- package/.history/package_20251002183227.json +0 -34
- package/.history/package_20251002183258.json +0 -42
- package/.history/package_20251002202514.json +0 -46
- package/.history/package_20251002202542.json +0 -46
- package/.history/package_20251002202550.json +0 -45
- package/.history/package_20251002203503.json +0 -46
- package/.history/package_20251002204314.json +0 -45
- package/.history/package_20251002213111.json +0 -45
- package/.history/package_20251002222438.json +0 -47
- package/.history/package_20251002222511.json +0 -45
- package/.history/package_20251002222541.json +0 -45
- package/.history/src/App_20251002141038.tsx +0 -35
- package/.history/src/App_20251002142848.tsx +0 -15
- package/.history/src/App_20251002152540.tsx +0 -15
- package/.history/src/App_20251002152831.tsx +0 -17
- package/.history/src/App_20251002153145.tsx +0 -18
- package/.history/src/App_20251002153323.tsx +0 -25
- package/.history/src/App_20251002153420.tsx +0 -32
- package/.history/src/App_20251002153429.tsx +0 -33
- package/.history/src/App_20251002153457.tsx +0 -39
- package/.history/src/App_20251002153516.tsx +0 -39
- package/.history/src/App_20251002153520.tsx +0 -39
- package/.history/src/App_20251002153546.tsx +0 -41
- package/.history/src/App_20251002154625.tsx +0 -41
- package/.history/src/App_20251002154740.tsx +0 -47
- package/.history/src/App_20251002154812.tsx +0 -47
- package/.history/src/App_20251002154841.tsx +0 -47
- package/.history/src/App_20251002154915.tsx +0 -54
- package/.history/src/App_20251002160347.tsx +0 -54
- package/.history/src/App_20251002205122.tsx +0 -54
- package/.history/src/lib/exports_20251002160004.ts +0 -0
- package/.history/src/lib/exports_20251002160045.ts +0 -3
- package/.history/src/lib/index_20251002162704.ts +0 -0
- package/.history/src/lib/index_20251002162712.ts +0 -1
- package/.history/src/lib/index_20251002182429.ts +0 -4
- package/.history/src/lib/magic_20251002142829.tsx +0 -0
- package/.history/src/lib/magic_20251002142848.tsx +0 -44
- package/.history/src/lib/magic_20251002152540.tsx +0 -28
- package/.history/src/lib/magic_20251002152543.tsx +0 -28
- package/.history/src/lib/magic_20251002152546.tsx +0 -28
- package/.history/src/lib/magic_20251002152802.tsx +0 -47
- package/.history/src/lib/magic_20251002154740.tsx +0 -47
- package/.history/src/lib/magic_20251002155035.tsx +0 -47
- package/.history/src/lib/magic_20251002160411.tsx +0 -49
- package/.history/src/lib/magic_20251002160428.tsx +0 -49
- package/.history/src/lib/magic_20251002161028.tsx +0 -50
- package/.history/src/lib/magic_20251002162134.tsx +0 -50
- package/.history/src/lib/magic_20251002171038.tsx +0 -50
- package/.history/src/lib/metamask_20251002141612.tsx +0 -0
- package/.history/src/lib/metamask_20251002142622.tsx +0 -38
- package/.history/src/lib/metamask_20251002142654.tsx +0 -41
- package/.history/src/lib/metamask_20251002142726.tsx +0 -44
- package/.history/src/lib/metamask_20251002142848.tsx +0 -0
- package/.history/src/lib/metamask_20251002152802.tsx +0 -28
- package/.history/src/lib/metamask_20251002153516.tsx +0 -27
- package/.history/src/lib/metamask_20251002154228.tsx +0 -27
- package/.history/src/lib/metamask_20251002154523.tsx +0 -27
- package/.history/src/lib/metamask_20251002162122.tsx +0 -27
- package/.history/src/lib/metamask_20251002171636.tsx +0 -27
- package/.history/src/lib/styling_20251002154448.css +0 -0
- package/.history/src/lib/styling_20251002154523.css +0 -19
- package/.history/src/lib/styling_20251002154531.css +0 -19
- package/.history/src/lib/styling_20251002154544.css +0 -20
- package/.history/src/lib/styling_20251002154548.css +0 -19
- package/.history/src/lib/styling_20251002160446.css +0 -20
- package/.history/src/lib/styling_20251002160511.css +0 -23
- package/.history/src/lib/styling_20251002160515.css +0 -24
- package/.history/src/lib/styling_20251002160815.css +0 -24
- package/.history/src/lib/styling_20251002160910.css +0 -24
- package/.history/src/lib/styling_20251002160915.css +0 -24
- package/.history/src/lib/styling_20251002160952.css +0 -24
- package/.history/src/lib/styling_20251002161001.css +0 -24
- package/.history/src/lib/styling_20251002161011.css +0 -24
- package/.history/src/lib/styling_20251002161016.css +0 -24
- package/.history/src/lib/styling_20251002161036.css +0 -25
- package/.history/src/lib/tauntContext_20251002142359.ts +0 -0
- package/.history/src/lib/tauntContext_20251002142622.ts +0 -17
- package/.history/src/lib/tauntContext_20251002152540.ts +0 -22
- package/.history/src/lib/tauntContext_20251002152802.ts +0 -22
- package/.history/src/lib/tauntProvider_20251002142503.tsx +0 -0
- package/.history/src/lib/tauntProvider_20251002142622.tsx +0 -15
- package/.history/src/lib/tauntProvider_20251002143158.tsx +0 -19
- package/.history/src/lib/tauntProvider_20251002144018.tsx +0 -19
- package/.history/src/lib/tauntProvider_20251002152234.tsx +0 -40
- package/.history/src/lib/tauntProvider_20251002152802.tsx +0 -40
- package/.history/src/lib/tauntProvider_20251002153101.tsx +0 -49
- package/.history/src/lib/taunt_20251002160026.ts +0 -0
- package/.history/src/lib/taunt_20251002160045.ts +0 -2
- package/.history/src/main_20251002141038.tsx +0 -10
- package/.history/src/main_20251002141444.tsx +0 -12
- package/.history/src/main_20251002160347.tsx +0 -12
- package/.history/tsconfig.app_20251002141038.json +0 -28
- package/.history/tsconfig.app_20251002172720.json +0 -28
- package/.history/vite.config_20251002141038.ts +0 -7
- package/.history/vite.config_20251002141323.ts +0 -10
- package/.history/vite.config_20251002182237.ts +0 -19
- package/.history/vite.config_20251002182326.ts +0 -19
- package/.history/vite.config_20251002182358.ts +0 -19
- package/.history/vite.config_20251002182434.ts +0 -19
- package/.history/vite.config_20251002182749.ts +0 -26
- package/.history/vite.config_20251002182810.ts +0 -26
- package/.history/vite.config_20251002184535.ts +0 -36
- package/.history/vite.config_20251002184720.ts +0 -41
- package/.history/vite.config_20251002184748.ts +0 -37
- package/.history/vite.config_20251002184844.ts +0 -37
- package/.history/vite.config_20251002201901.ts +0 -45
- package/.history/vite.config_20251002202019.ts +0 -47
- package/.history/vite.config_20251002202043.ts +0 -47
- package/.history/vite.config_20251002202502.ts +0 -47
- package/.history/vite.config_20251002203503.ts +0 -43
- package/.prettierrc.mjs +0 -22
- package/asdf/tsconfig.app.json +0 -28
- package/asdf/tsconfig.json +0 -7
- package/asdf/tsconfig.node.json +0 -26
- package/eslint.config.js +0 -23
- package/index.html +0 -13
- package/src/App.css +0 -42
- package/src/App.tsx +0 -54
- package/src/index.css +0 -68
- package/src/lib/index.ts +0 -4
- package/src/lib/magic.tsx +0 -50
- package/src/lib/metamask.tsx +0 -27
- package/src/lib/styling.css +0 -25
- package/src/lib/tauntContext.ts +0 -22
- package/src/lib/tauntProvider.tsx +0 -49
- package/src/main.tsx +0 -12
- package/tsconfig.json +0 -25
- package/tsconfig.node.json +0 -10
- package/vite.config.ts +0 -43
|
@@ -0,0 +1,3089 @@
|
|
|
1
|
+
(function(){"use strict";try{if(typeof document<"u"){var t=document.createElement("style");t.appendChild(document.createTextNode(".rdz-button,.rdz-input{font-family:Avenir,Helvetica,Arial,sans-serif!important;line-height:1.5;font-weight:400!important;color:#d3d3d3;border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}:is(.rdz-button,.rdz-input):hover{border-color:#646cff}:is(.rdz-button,.rdz-input):focus,:is(.rdz-button,.rdz-input):focus-visible{outline:4px auto -webkit-focus-ring-color}")),document.head.appendChild(t)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})();
|
|
2
|
+
import { jsxs as Pn, jsx as Le } from "react/jsx-runtime";
|
|
3
|
+
import { createContext as kn, useContext as Dn, useState as vr, useMemo as rr, useCallback as st } from "react";
|
|
4
|
+
const yr = kn({
|
|
5
|
+
tauntServiceEndpoint: "",
|
|
6
|
+
metamaskLogin: () => {
|
|
7
|
+
},
|
|
8
|
+
otpMagicLogin: () => {
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
function gr() {
|
|
12
|
+
const e = Dn(yr);
|
|
13
|
+
if (!e)
|
|
14
|
+
throw new Error("useTaunt must be used within a TauntProvider");
|
|
15
|
+
return e;
|
|
16
|
+
}
|
|
17
|
+
const Na = ({
|
|
18
|
+
onEmail: e
|
|
19
|
+
}) => {
|
|
20
|
+
const { otpMagicLogin: t } = gr(), [r, o] = vr(), i = rr(() => r !== void 0, [r]), a = rr(() => {
|
|
21
|
+
const f = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;
|
|
22
|
+
return r?.match(f) ? r : void 0;
|
|
23
|
+
}, [r]), p = st(() => {
|
|
24
|
+
a && (e ? e(r) : t(r));
|
|
25
|
+
}, [a, e]);
|
|
26
|
+
return /* @__PURE__ */ Pn("div", { style: { display: "flex", flexDirection: "row", gap: 8 }, children: [
|
|
27
|
+
i && !a && /* @__PURE__ */ Le("div", { style: { color: "red" }, children: "Please enter a valid email" }),
|
|
28
|
+
/* @__PURE__ */ Le(
|
|
29
|
+
"input",
|
|
30
|
+
{
|
|
31
|
+
className: "rdz-input",
|
|
32
|
+
onChange: (f) => o(f.target.value ? f.target.value : void 0),
|
|
33
|
+
placeholder: "Enter your email",
|
|
34
|
+
type: "email",
|
|
35
|
+
value: r
|
|
36
|
+
}
|
|
37
|
+
),
|
|
38
|
+
/* @__PURE__ */ Le("button", { className: "rdz-button", onClick: p, type: "button", children: "Send Magic Link" })
|
|
39
|
+
] });
|
|
40
|
+
}, Ra = ({
|
|
41
|
+
openMetamask: e
|
|
42
|
+
}) => {
|
|
43
|
+
const { metamaskLogin: t } = gr(), r = st(() => {
|
|
44
|
+
e ? e() : t();
|
|
45
|
+
}, [t, e]);
|
|
46
|
+
return /* @__PURE__ */ Le("button", { className: "rdz-button", onClick: r, children: "Login with Metamask" });
|
|
47
|
+
};
|
|
48
|
+
var Pe = ((e) => (e.MissingApiKey = "MISSING_API_KEY", e.ModalNotReady = "MODAL_NOT_READY", e.ConnectionLost = "CONNECTION_WAS_LOST", e.MalformedResponse = "MALFORMED_RESPONSE", e.InvalidArgument = "INVALID_ARGUMENT", e.ExtensionNotInitialized = "EXTENSION_NOT_INITIALIZED", e.IncompatibleExtensions = "INCOMPATIBLE_EXTENSIONS", e))(Pe || {}), ke = ((e) => (e.SyncWeb3Method = "SYNC_WEB3_METHOD", e.DuplicateIframe = "DUPLICATE_IFRAME", e.ReactNativeEndpointConfiguration = "REACT_NATIVE_ENDPOINT_CONFIGURATION", e.DeprecationNotice = "DEPRECATION_NOTICE", e.ProductAnnouncement = "ANNOUNCEMENT", e))(ke || {}), dt = ((e) => (e[e.ParseError = -32700] = "ParseError", e[e.InvalidRequest = -32600] = "InvalidRequest", e[e.MethodNotFound = -32601] = "MethodNotFound", e[e.InvalidParams = -32602] = "InvalidParams", e[e.InternalError = -32603] = "InternalError", e[e.MagicLinkFailedVerification = -1e4] = "MagicLinkFailedVerification", e[e.MagicLinkExpired = -10001] = "MagicLinkExpired", e[e.MagicLinkRateLimited = -10002] = "MagicLinkRateLimited", e[e.MagicLinkInvalidRedirectURL = -10006] = "MagicLinkInvalidRedirectURL", e[e.UserAlreadyLoggedIn = -10003] = "UserAlreadyLoggedIn", e[e.UpdateEmailFailed = -10004] = "UpdateEmailFailed", e[e.UserRequestEditEmail = -10005] = "UserRequestEditEmail", e[e.InactiveRecipient = -10010] = "InactiveRecipient", e[e.AccessDeniedToUser = -10011] = "AccessDeniedToUser", e[e.RedirectLoginComplete = -10015] = "RedirectLoginComplete", e[e.DpopInvalidated = -10019] = "DpopInvalidated", e))(dt || {}), Ie = ((e) => (e.PROVIDER = "magic_3pw_provider", e.ADDRESS = "magic_3pw_address", e.CHAIN_ID = "magic_3pw_chainId", e))(Ie || {}), Un = ((e) => (e.WalletConnected = "wallet_connected", e.WalletRejected = "wallet_rejected", e.Web3ModalSelected = "web3modal_selected", e))(Un || {}), L = ((e) => (e.LoginWithSms = "magic_auth_login_with_sms", e.LoginWithEmailOTP = "magic_auth_login_with_email_otp", e.LoginWithMagicLink = "magic_auth_login_with_magic_link", e.LoginWithCredential = "magic_auth_login_with_credential", e.SetAuthorizationToken = "magic_auth_set_authorization_token", e.GetIdToken = "magic_auth_get_id_token", e.GenerateIdToken = "magic_auth_generate_id_token", e.GetMetadata = "magic_auth_get_metadata", e.IsLoggedIn = "magic_is_logged_in", e.Logout = "magic_auth_logout", e.UpdateEmail = "magic_auth_update_email", e.UserSettings = "magic_auth_settings", e.UserSettingsTestMode = "magic_auth_settings_testing_mode", e.LoginWithSmsTestMode = "magic_auth_login_with_sms_testing_mode", e.LoginWithEmailOTPTestMode = "magic_auth_login_with_email_otp_testing_mode", e.LoginWithMagicLinkTestMode = "magic_login_with_magic_link_testing_mode", e.LoginWithCredentialTestMode = "magic_auth_login_with_credential_testing_mode", e.GetIdTokenTestMode = "magic_auth_get_id_token_testing_mode", e.GenerateIdTokenTestMode = "magic_auth_generate_id_token_testing_mode", e.GetMetadataTestMode = "magic_auth_get_metadata_testing_mode", e.IsLoggedInTestMode = "magic_auth_is_logged_in_testing_mode", e.LogoutTestMode = "magic_auth_logout_testing_mode", e.UpdateEmailTestMode = "magic_auth_update_email_testing_mode", e.IntermediaryEvent = "magic_intermediary_event", e.RequestAccounts = "eth_requestAccounts", e.GetInfo = "magic_get_info", e.ShowUI = "magic_wallet", e.NFTPurchase = "magic_nft_purchase", e.NFTCheckout = "magic_nft_checkout", e.NFTTransfer = "magic_nft_transfer", e.RequestUserInfoWithUI = "mc_request_user_info", e.Disconnect = "mc_disconnect", e.RecoverAccount = "magic_auth_recover_account", e.RecoverAccountTestMode = "magic_auth_recover_account_testing_mode", e.MagicBoxHeartBeat = "magic_box_heart_beat", e.AutoConnect = "mc_auto_connect", e.Login = "mc_login", e.EncryptV1 = "magic_auth_encrypt_v1", e.DecryptV1 = "magic_auth_decrypt_v1", e.ShowNFTs = "magic_show_nfts", e.ShowOnRamp = "magic_show_fiat_onramp", e.ShowSendTokensUI = "magic_show_send_tokens_ui", e.ShowAddress = "magic_show_address", e.ShowBalances = "magic_show_balances", e.SendGaslessTransaction = "eth_sendGaslessTransaction", e.RevealPK = "magic_reveal_key", e.EnableMFA = "magic_auth_enable_mfa_flow", e.DisableMFA = "magic_auth_disable_mfa_flow", e.GetMultichainPublicAddress = "magic_get_multichain_public_address", e))(L || {}), jn = ["magic_intermediary_event", "magic_nft_checkout", "mc_login"], we = ((e) => (e.MAGIC_HANDLE_RESPONSE = "MAGIC_HANDLE_RESPONSE", e.MAGIC_OVERLAY_READY = "MAGIC_OVERLAY_READY", e.MAGIC_SHOW_OVERLAY = "MAGIC_SHOW_OVERLAY", e.MAGIC_HIDE_OVERLAY = "MAGIC_HIDE_OVERLAY", e.MAGIC_HANDLE_EVENT = "MAGIC_HANDLE_EVENT", e.MAGIC_MG_BOX_SEND_RECEIPT = "MAGIC_MG_BOX_SEND_RECEIPT", e.MAGIC_SEND_PRODUCT_ANNOUNCEMENT = "MAGIC_SEND_PRODUCT_ANNOUNCEMENT", e.MAGIC_PONG = "MAGIC_PONG", e.MAGIC_POPUP_RESPONSE = "MAGIC_POPUP_RESPONSE", e.MAGIC_POPUP_OAUTH_VERIFY_RESPONSE = "MAGIC_POPUP_OAUTH_VERIFY_RESPONSE", e))(we || {}), ze = ((e) => (e.MAGIC_HANDLE_REQUEST = "MAGIC_HANDLE_REQUEST", e.MAGIC_PING = "MAGIC_PING", e))(ze || {}), xn = ((e) => (e.UpdateEmail = "update-email", e.MFA = "mfa", e.Recovery = "recovery", e))(xn || {}), Fn = ((e) => (e.Retry = "retry", e))(Fn || {}), Gn = ((e) => (e.EmailSent = "email-sent", e.EmailNotDeliverable = "email-not-deliverable", e))(Gn || {}), de = ((e) => (e.VerifyEmailOtp = "verify-email-otp", e.VerifyMFACode = "verify-mfa-code", e.LostDevice = "lost-device", e.VerifyRecoveryCode = "verify-recovery-code", e.Cancel = "cancel", e))(de || {}), Be = ((e) => (e.VerifySmsOtp = "verify-sms-otp", e.Cancel = "cancel", e.Retry = "retry", e))(Be || {}), Wn = ((e) => (e.SmsOTPSent = "sms-otp-sent", e.InvalidSmsOtp = "invalid-sms-otp", e.ExpiredSmsOtp = "expired-sms-otp", e))(Wn || {}), Bn = ((e) => (e.EmailOTPSent = "email-otp-sent", e.InvalidEmailOtp = "invalid-email-otp", e.InvalidMfaOtp = "invalid-mfa-otp", e.ExpiredEmailOtp = "expired-email-otp", e.MfaSentHandle = "mfa-sent-handle", e.RecoveryCodeSentHandle = "recovery-code-sent-handle", e.InvalidRecoveryCode = "invalid-recovery-code", e.RecoveryCodeSuccess = "recovery-code-success", e.LoginThrottled = "login-throttled", e))(Bn || {}), At = ((e) => (e.Retry = "device-retry", e))(At || {}), qn = ((e) => (e.DeviceApproved = "device-approved", e.DeviceNeedsApproval = "device-needs-approval", e.DeviceVerificationLinkExpired = "device-verification-link-expired", e.DeviceVerificationEmailSent = "device-verification-email-sent", e))(qn || {}), fe = ((e) => (e.Retry = "Recency/auth-factor-retry", e.Cancel = "Recency/auth-factor-verification-cancel", e.VerifyEmailOtp = "Recency/auth-factor-verify-email-otp", e.VerifyMFACode = "Recency/verify-mfa-code", e))(fe || {}), Vn = ((e) => (e.PrimaryAuthFactorNeedsVerification = "Recency/auth-factor-needs-verification", e.PrimaryAuthFactorVerified = "Recency/auth-factor-verified", e.InvalidEmailOtp = "Recency/auth-factor-invalid-email-otp", e.EmailExpired = "Recency/auth-factor-verification-email-expired", e.EmailSent = "Recency/auth-factor-verification-email-sent", e.EmailNotDeliverable = "Recency/auth-factor-verification-email-not-deliverable", e))(Vn || {}), ae = ((e) => (e.RetryWithNewEmail = "UpdateEmail/retry-with-new-email", e.Cancel = "UpdateEmail/new-email-verification-cancel", e.VerifyEmailOtp = "UpdateEmail/new-email-verify-otp", e))(ae || {}), Hn = ((e) => (e.NewAuthFactorNeedsVerification = "UpdateEmail/new-email-needs-verification", e.EmailUpdated = "UpdateEmail/email-updated", e.InvalidEmailOtp = "UpdateEmail/new-email-invalid-email-otp", e.EmailExpired = "UpdateEmail/new-email-verification-email-expired", e.EmailSent = "UpdateEmail/new-email-verification-email-sent", e.EmailNotDeliverable = "UpdateEmail/new-email-verification-email-not-deliverable", e.InvalidEmail = "UpdateEmail/new-email-invalid", e.EmailAlreadyExists = "UpdateEmail/new-email-already-exists", e))(Hn || {}), zn = ((e) => (e.IDTokenCreated = "Auth/id-token-created", e))(zn || {}), Xn = ((e) => (e.Cancel = "Farcaster/cancel", e))(Xn || {}), Kn = ((e) => (e.MFASecretGenerated = "mfa-secret-generated", e.InvalidMFAOtp = "invalid-mfa-otp", e.MFARecoveryCodes = "mfa-recovery-codes", e))(Kn || {}), qe = ((e) => (e.VerifyMFACode = "verify-mfa-code", e.Cancel = "cancel-mfa-setup", e))(qe || {}), Yn = ((e) => (e.MFACodeRequested = "mfa-code-requested", e.InvalidMFAOtp = "invalid-mfa-otp", e.InvalidRecoveryCode = "invalid-recovery-code", e))(Yn || {}), Se = ((e) => (e.VerifyMFACode = "verify-mfa-code", e.LostDevice = "lost-device", e.Cancel = "cancel-mfa-disable", e))(Se || {}), Jn = ((e) => (e.Harmony = "HARMONY", e))(Jn || {}), Er = ((e) => (e.ClosedByUser = "closed-by-user", e))(Er || {}), Ir = ((e) => (e.ClosedByUser = "closed-by-user-on-received", e))(Ir || {}), Qn = ((e) => (e.EnterNewPhoneNumber = "enter-new-phone-number", e.EnterOtpCode = "enter-otp-code", e.RecoveryFactorAlreadyExists = "recovery-factor-already-exists", e.MalformedPhoneNumber = "malformed-phone-number", e.InvalidOtpCode = "invalid-otp-code", e.RecoveryFactorUpdated = "recovery-factor-updated", e.RecoveryFactorDeleted = "recovery-factor-deleted", e))(Qn || {}), pe = ((e) => (e.SendNewPhoneNumber = "send-new-phone-number", e.SendOtpCode = "send-otp-code", e.Cancel = "cancel", e.StartEditPhoneNumber = "start-edit-phone-number", e))(pe || {}), Zn = ((e) => (e.PhoneNumber = "phone_number", e))(Zn || {}), eo = ((e) => (e.SmsOtpSent = "sms-otp-sent", e.LoginThrottled = "login-throttled", e.InvalidSmsOtp = "invalid-sms-otp", e.SmsVerified = "sms-verified", e.AccountRecovered = "account-recovered", e.UpdateEmailRequired = "update-email-required", e))(eo || {}), me = ((e) => (e.Cancel = "cancel", e.VerifyOtp = "verify-otp-code", e.ResendSms = "resend-sms-otp", e.UpdateEmail = "update-email", e))(me || {}), Ve = ((e) => (e.Success = "nft-checkout-success", e.Failure = "nft-checkout-failure", e.Initiated = "nft-checkout-initiated", e.Disconnect = "disconnect", e))(Ve || {}), to = ((e) => (e.WalletInfoFetched = "Wallet/wallet-info-fetched", e))(to || {}), ro = ((e) => (e.CloseMagicWindow = "close-magic-window", e))(ro || {}), no = Object.create, Ct = Object.defineProperty, oo = Object.getOwnPropertyDescriptor, io = Object.getOwnPropertyNames, ao = Object.getPrototypeOf, so = Object.prototype.hasOwnProperty, co = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), lo = (e, t) => {
|
|
49
|
+
for (var r in t) Ct(e, r, { get: t[r], enumerable: !0 });
|
|
50
|
+
}, uo = (e, t, r, o) => {
|
|
51
|
+
if (t && typeof t == "object" || typeof t == "function") for (let i of io(t)) !so.call(e, i) && i !== r && Ct(e, i, { get: () => t[i], enumerable: !(o = oo(t, i)) || o.enumerable });
|
|
52
|
+
return e;
|
|
53
|
+
}, fo = (e, t, r) => (r = e != null ? no(ao(e)) : {}, uo(!e || !e.__esModule ? Ct(r, "default", { value: e, enumerable: !0 }) : r, e)), ho = co((e, t) => {
|
|
54
|
+
var r = Object.prototype.hasOwnProperty, o = "~";
|
|
55
|
+
function i() {
|
|
56
|
+
}
|
|
57
|
+
Object.create && (i.prototype = /* @__PURE__ */ Object.create(null), new i().__proto__ || (o = !1));
|
|
58
|
+
function a(y, g, h) {
|
|
59
|
+
this.fn = y, this.context = g, this.once = h || !1;
|
|
60
|
+
}
|
|
61
|
+
function p(y, g, h, S, P) {
|
|
62
|
+
if (typeof h != "function") throw new TypeError("The listener must be a function");
|
|
63
|
+
var k = new a(h, S || y, P), F = o ? o + g : g;
|
|
64
|
+
return y._events[F] ? y._events[F].fn ? y._events[F] = [y._events[F], k] : y._events[F].push(k) : (y._events[F] = k, y._eventsCount++), y;
|
|
65
|
+
}
|
|
66
|
+
function f(y, g) {
|
|
67
|
+
--y._eventsCount === 0 ? y._events = new i() : delete y._events[g];
|
|
68
|
+
}
|
|
69
|
+
function A() {
|
|
70
|
+
this._events = new i(), this._eventsCount = 0;
|
|
71
|
+
}
|
|
72
|
+
A.prototype.eventNames = function() {
|
|
73
|
+
var y = [], g, h;
|
|
74
|
+
if (this._eventsCount === 0) return y;
|
|
75
|
+
for (h in g = this._events) r.call(g, h) && y.push(o ? h.slice(1) : h);
|
|
76
|
+
return Object.getOwnPropertySymbols ? y.concat(Object.getOwnPropertySymbols(g)) : y;
|
|
77
|
+
}, A.prototype.listeners = function(y) {
|
|
78
|
+
var g = o ? o + y : y, h = this._events[g];
|
|
79
|
+
if (!h) return [];
|
|
80
|
+
if (h.fn) return [h.fn];
|
|
81
|
+
for (var S = 0, P = h.length, k = new Array(P); S < P; S++) k[S] = h[S].fn;
|
|
82
|
+
return k;
|
|
83
|
+
}, A.prototype.listenerCount = function(y) {
|
|
84
|
+
var g = o ? o + y : y, h = this._events[g];
|
|
85
|
+
return h ? h.fn ? 1 : h.length : 0;
|
|
86
|
+
}, A.prototype.emit = function(y, g, h, S, P, k) {
|
|
87
|
+
var F = o ? o + y : y;
|
|
88
|
+
if (!this._events[F]) return !1;
|
|
89
|
+
var O = this._events[F], Y = arguments.length, q, V;
|
|
90
|
+
if (O.fn) {
|
|
91
|
+
switch (O.once && this.removeListener(y, O.fn, void 0, !0), Y) {
|
|
92
|
+
case 1:
|
|
93
|
+
return O.fn.call(O.context), !0;
|
|
94
|
+
case 2:
|
|
95
|
+
return O.fn.call(O.context, g), !0;
|
|
96
|
+
case 3:
|
|
97
|
+
return O.fn.call(O.context, g, h), !0;
|
|
98
|
+
case 4:
|
|
99
|
+
return O.fn.call(O.context, g, h, S), !0;
|
|
100
|
+
case 5:
|
|
101
|
+
return O.fn.call(O.context, g, h, S, P), !0;
|
|
102
|
+
case 6:
|
|
103
|
+
return O.fn.call(O.context, g, h, S, P, k), !0;
|
|
104
|
+
}
|
|
105
|
+
for (V = 1, q = new Array(Y - 1); V < Y; V++) q[V - 1] = arguments[V];
|
|
106
|
+
O.fn.apply(O.context, q);
|
|
107
|
+
} else {
|
|
108
|
+
var le = O.length, N;
|
|
109
|
+
for (V = 0; V < le; V++) switch (O[V].once && this.removeListener(y, O[V].fn, void 0, !0), Y) {
|
|
110
|
+
case 1:
|
|
111
|
+
O[V].fn.call(O[V].context);
|
|
112
|
+
break;
|
|
113
|
+
case 2:
|
|
114
|
+
O[V].fn.call(O[V].context, g);
|
|
115
|
+
break;
|
|
116
|
+
case 3:
|
|
117
|
+
O[V].fn.call(O[V].context, g, h);
|
|
118
|
+
break;
|
|
119
|
+
case 4:
|
|
120
|
+
O[V].fn.call(O[V].context, g, h, S);
|
|
121
|
+
break;
|
|
122
|
+
default:
|
|
123
|
+
if (!q) for (N = 1, q = new Array(Y - 1); N < Y; N++) q[N - 1] = arguments[N];
|
|
124
|
+
O[V].fn.apply(O[V].context, q);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return !0;
|
|
128
|
+
}, A.prototype.on = function(y, g, h) {
|
|
129
|
+
return p(this, y, g, h, !1);
|
|
130
|
+
}, A.prototype.once = function(y, g, h) {
|
|
131
|
+
return p(this, y, g, h, !0);
|
|
132
|
+
}, A.prototype.removeListener = function(y, g, h, S) {
|
|
133
|
+
var P = o ? o + y : y;
|
|
134
|
+
if (!this._events[P]) return this;
|
|
135
|
+
if (!g) return f(this, P), this;
|
|
136
|
+
var k = this._events[P];
|
|
137
|
+
if (k.fn) k.fn === g && (!S || k.once) && (!h || k.context === h) && f(this, P);
|
|
138
|
+
else {
|
|
139
|
+
for (var F = 0, O = [], Y = k.length; F < Y; F++) (k[F].fn !== g || S && !k[F].once || h && k[F].context !== h) && O.push(k[F]);
|
|
140
|
+
O.length ? this._events[P] = O.length === 1 ? O[0] : O : f(this, P);
|
|
141
|
+
}
|
|
142
|
+
return this;
|
|
143
|
+
}, A.prototype.removeAllListeners = function(y) {
|
|
144
|
+
var g;
|
|
145
|
+
return y ? (g = o ? o + y : y, this._events[g] && f(this, g)) : (this._events = new i(), this._eventsCount = 0), this;
|
|
146
|
+
}, A.prototype.off = A.prototype.removeListener, A.prototype.addListener = A.prototype.on, A.prefixed = o, A.EventEmitter = A, typeof t < "u" && (t.exports = A);
|
|
147
|
+
});
|
|
148
|
+
function po(e) {
|
|
149
|
+
let t = { exports: {} };
|
|
150
|
+
return e(t, t.exports), t.exports;
|
|
151
|
+
}
|
|
152
|
+
var mo = Number.MAX_SAFE_INTEGER || 9007199254740991, Mt = { MAX_LENGTH: 256, MAX_SAFE_INTEGER: mo, MAX_SAFE_COMPONENT_LENGTH: 16 }, vo = typeof process == "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...e) => console.error("SEMVER", ...e) : () => {
|
|
153
|
+
}, B = vo, Xe = po(function(e, t) {
|
|
154
|
+
let { MAX_SAFE_COMPONENT_LENGTH: r } = Mt, o = (t = e.exports = {}).re = [], i = t.src = [], a = t.t = {}, p = 0, f = (A, y, g) => {
|
|
155
|
+
let h = p++;
|
|
156
|
+
B(h, y), a[A] = h, i[h] = y, o[h] = new RegExp(y, g ? "g" : void 0);
|
|
157
|
+
};
|
|
158
|
+
f("NUMERICIDENTIFIER", "0|[1-9]\\d*"), f("NUMERICIDENTIFIERLOOSE", "[0-9]+"), f("NONNUMERICIDENTIFIER", "\\d*[a-zA-Z-][a-zA-Z0-9-]*"), f("MAINVERSION", `(${i[a.NUMERICIDENTIFIER]})\\.(${i[a.NUMERICIDENTIFIER]})\\.(${i[a.NUMERICIDENTIFIER]})`), f("MAINVERSIONLOOSE", `(${i[a.NUMERICIDENTIFIERLOOSE]})\\.(${i[a.NUMERICIDENTIFIERLOOSE]})\\.(${i[a.NUMERICIDENTIFIERLOOSE]})`), f("PRERELEASEIDENTIFIER", `(?:${i[a.NUMERICIDENTIFIER]}|${i[a.NONNUMERICIDENTIFIER]})`), f("PRERELEASEIDENTIFIERLOOSE", `(?:${i[a.NUMERICIDENTIFIERLOOSE]}|${i[a.NONNUMERICIDENTIFIER]})`), f("PRERELEASE", `(?:-(${i[a.PRERELEASEIDENTIFIER]}(?:\\.${i[a.PRERELEASEIDENTIFIER]})*))`), f("PRERELEASELOOSE", `(?:-?(${i[a.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${i[a.PRERELEASEIDENTIFIERLOOSE]})*))`), f("BUILDIDENTIFIER", "[0-9A-Za-z-]+"), f("BUILD", `(?:\\+(${i[a.BUILDIDENTIFIER]}(?:\\.${i[a.BUILDIDENTIFIER]})*))`), f("FULLPLAIN", `v?${i[a.MAINVERSION]}${i[a.PRERELEASE]}?${i[a.BUILD]}?`), f("FULL", `^${i[a.FULLPLAIN]}$`), f("LOOSEPLAIN", `[v=\\s]*${i[a.MAINVERSIONLOOSE]}${i[a.PRERELEASELOOSE]}?${i[a.BUILD]}?`), f("LOOSE", `^${i[a.LOOSEPLAIN]}$`), f("GTLT", "((?:<|>)?=?)"), f("XRANGEIDENTIFIERLOOSE", `${i[a.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`), f("XRANGEIDENTIFIER", `${i[a.NUMERICIDENTIFIER]}|x|X|\\*`), f("XRANGEPLAIN", `[v=\\s]*(${i[a.XRANGEIDENTIFIER]})(?:\\.(${i[a.XRANGEIDENTIFIER]})(?:\\.(${i[a.XRANGEIDENTIFIER]})(?:${i[a.PRERELEASE]})?${i[a.BUILD]}?)?)?`), f("XRANGEPLAINLOOSE", `[v=\\s]*(${i[a.XRANGEIDENTIFIERLOOSE]})(?:\\.(${i[a.XRANGEIDENTIFIERLOOSE]})(?:\\.(${i[a.XRANGEIDENTIFIERLOOSE]})(?:${i[a.PRERELEASELOOSE]})?${i[a.BUILD]}?)?)?`), f("XRANGE", `^${i[a.GTLT]}\\s*${i[a.XRANGEPLAIN]}$`), f("XRANGELOOSE", `^${i[a.GTLT]}\\s*${i[a.XRANGEPLAINLOOSE]}$`), f("COERCE", `(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?(?:$|[^\\d])`), f("COERCERTL", i[a.COERCE], !0), f("LONETILDE", "(?:~>?)"), f("TILDETRIM", `(\\s*)${i[a.LONETILDE]}\\s+`, !0), t.tildeTrimReplace = "$1~", f("TILDE", `^${i[a.LONETILDE]}${i[a.XRANGEPLAIN]}$`), f("TILDELOOSE", `^${i[a.LONETILDE]}${i[a.XRANGEPLAINLOOSE]}$`), f("LONECARET", "(?:\\^)"), f("CARETTRIM", `(\\s*)${i[a.LONECARET]}\\s+`, !0), t.caretTrimReplace = "$1^", f("CARET", `^${i[a.LONECARET]}${i[a.XRANGEPLAIN]}$`), f("CARETLOOSE", `^${i[a.LONECARET]}${i[a.XRANGEPLAINLOOSE]}$`), f("COMPARATORLOOSE", `^${i[a.GTLT]}\\s*(${i[a.LOOSEPLAIN]})$|^$`), f("COMPARATOR", `^${i[a.GTLT]}\\s*(${i[a.FULLPLAIN]})$|^$`), f("COMPARATORTRIM", `(\\s*)${i[a.GTLT]}\\s*(${i[a.LOOSEPLAIN]}|${i[a.XRANGEPLAIN]})`, !0), t.comparatorTrimReplace = "$1$2$3", f("HYPHENRANGE", `^\\s*(${i[a.XRANGEPLAIN]})\\s+-\\s+(${i[a.XRANGEPLAIN]})\\s*$`), f("HYPHENRANGELOOSE", `^\\s*(${i[a.XRANGEPLAINLOOSE]})\\s+-\\s+(${i[a.XRANGEPLAINLOOSE]})\\s*$`), f("STAR", "(<|>)?=?\\s*\\*"), f("GTE0", "^\\s*>=\\s*0.0.0\\s*$"), f("GTE0PRE", "^\\s*>=\\s*0.0.0-0\\s*$");
|
|
159
|
+
}), nr = /^[0-9]+$/, yo = (e, t) => {
|
|
160
|
+
let r = nr.test(e), o = nr.test(t);
|
|
161
|
+
return r && o && (e = +e, t = +t), e === t ? 0 : r && !o ? -1 : o && !r ? 1 : e < t ? -1 : 1;
|
|
162
|
+
}, go = { compareIdentifiers: yo }, { MAX_LENGTH: or, MAX_SAFE_INTEGER: Ze } = Mt, { re: ir, t: ar } = Xe, { compareIdentifiers: Ge } = go, be = class he {
|
|
163
|
+
constructor(t, r) {
|
|
164
|
+
if (r && typeof r == "object" || (r = { loose: !!r, includePrerelease: !1 }), t instanceof he) {
|
|
165
|
+
if (t.loose === !!r.loose && t.includePrerelease === !!r.includePrerelease) return t;
|
|
166
|
+
t = t.version;
|
|
167
|
+
} else if (typeof t != "string") throw new TypeError(`Invalid Version: ${t}`);
|
|
168
|
+
if (t.length > or) throw new TypeError(`version is longer than ${or} characters`);
|
|
169
|
+
B("SemVer", t, r), this.options = r, this.loose = !!r.loose, this.includePrerelease = !!r.includePrerelease;
|
|
170
|
+
let o = t.trim().match(r.loose ? ir[ar.LOOSE] : ir[ar.FULL]);
|
|
171
|
+
if (!o) throw new TypeError(`Invalid Version: ${t}`);
|
|
172
|
+
if (this.raw = t, this.major = +o[1], this.minor = +o[2], this.patch = +o[3], this.major > Ze || this.major < 0) throw new TypeError("Invalid major version");
|
|
173
|
+
if (this.minor > Ze || this.minor < 0) throw new TypeError("Invalid minor version");
|
|
174
|
+
if (this.patch > Ze || this.patch < 0) throw new TypeError("Invalid patch version");
|
|
175
|
+
o[4] ? this.prerelease = o[4].split(".").map((i) => {
|
|
176
|
+
if (/^[0-9]+$/.test(i)) {
|
|
177
|
+
let a = +i;
|
|
178
|
+
if (a >= 0 && a < Ze) return a;
|
|
179
|
+
}
|
|
180
|
+
return i;
|
|
181
|
+
}) : this.prerelease = [], this.build = o[5] ? o[5].split(".") : [], this.format();
|
|
182
|
+
}
|
|
183
|
+
format() {
|
|
184
|
+
return this.version = `${this.major}.${this.minor}.${this.patch}`, this.prerelease.length && (this.version += `-${this.prerelease.join(".")}`), this.version;
|
|
185
|
+
}
|
|
186
|
+
toString() {
|
|
187
|
+
return this.version;
|
|
188
|
+
}
|
|
189
|
+
compare(t) {
|
|
190
|
+
if (B("SemVer.compare", this.version, this.options, t), !(t instanceof he)) {
|
|
191
|
+
if (typeof t == "string" && t === this.version) return 0;
|
|
192
|
+
t = new he(t, this.options);
|
|
193
|
+
}
|
|
194
|
+
return t.version === this.version ? 0 : this.compareMain(t) || this.comparePre(t);
|
|
195
|
+
}
|
|
196
|
+
compareMain(t) {
|
|
197
|
+
return t instanceof he || (t = new he(t, this.options)), Ge(this.major, t.major) || Ge(this.minor, t.minor) || Ge(this.patch, t.patch);
|
|
198
|
+
}
|
|
199
|
+
comparePre(t) {
|
|
200
|
+
if (t instanceof he || (t = new he(t, this.options)), this.prerelease.length && !t.prerelease.length) return -1;
|
|
201
|
+
if (!this.prerelease.length && t.prerelease.length) return 1;
|
|
202
|
+
if (!this.prerelease.length && !t.prerelease.length) return 0;
|
|
203
|
+
let r = 0;
|
|
204
|
+
do {
|
|
205
|
+
let o = this.prerelease[r], i = t.prerelease[r];
|
|
206
|
+
if (B("prerelease compare", r, o, i), o === void 0 && i === void 0) return 0;
|
|
207
|
+
if (i === void 0) return 1;
|
|
208
|
+
if (o === void 0) return -1;
|
|
209
|
+
if (o !== i) return Ge(o, i);
|
|
210
|
+
} while (++r);
|
|
211
|
+
}
|
|
212
|
+
compareBuild(t) {
|
|
213
|
+
t instanceof he || (t = new he(t, this.options));
|
|
214
|
+
let r = 0;
|
|
215
|
+
do {
|
|
216
|
+
let o = this.build[r], i = t.build[r];
|
|
217
|
+
if (B("prerelease compare", r, o, i), o === void 0 && i === void 0) return 0;
|
|
218
|
+
if (i === void 0) return 1;
|
|
219
|
+
if (o === void 0) return -1;
|
|
220
|
+
if (o !== i) return Ge(o, i);
|
|
221
|
+
} while (++r);
|
|
222
|
+
}
|
|
223
|
+
inc(t, r) {
|
|
224
|
+
switch (t) {
|
|
225
|
+
case "premajor":
|
|
226
|
+
this.prerelease.length = 0, this.patch = 0, this.minor = 0, this.major++, this.inc("pre", r);
|
|
227
|
+
break;
|
|
228
|
+
case "preminor":
|
|
229
|
+
this.prerelease.length = 0, this.patch = 0, this.minor++, this.inc("pre", r);
|
|
230
|
+
break;
|
|
231
|
+
case "prepatch":
|
|
232
|
+
this.prerelease.length = 0, this.inc("patch", r), this.inc("pre", r);
|
|
233
|
+
break;
|
|
234
|
+
case "prerelease":
|
|
235
|
+
this.prerelease.length === 0 && this.inc("patch", r), this.inc("pre", r);
|
|
236
|
+
break;
|
|
237
|
+
case "major":
|
|
238
|
+
this.minor === 0 && this.patch === 0 && this.prerelease.length !== 0 || this.major++, this.minor = 0, this.patch = 0, this.prerelease = [];
|
|
239
|
+
break;
|
|
240
|
+
case "minor":
|
|
241
|
+
this.patch === 0 && this.prerelease.length !== 0 || this.minor++, this.patch = 0, this.prerelease = [];
|
|
242
|
+
break;
|
|
243
|
+
case "patch":
|
|
244
|
+
this.prerelease.length === 0 && this.patch++, this.prerelease = [];
|
|
245
|
+
break;
|
|
246
|
+
case "pre":
|
|
247
|
+
if (this.prerelease.length === 0) this.prerelease = [0];
|
|
248
|
+
else {
|
|
249
|
+
let o = this.prerelease.length;
|
|
250
|
+
for (; --o >= 0; ) typeof this.prerelease[o] == "number" && (this.prerelease[o]++, o = -2);
|
|
251
|
+
o === -1 && this.prerelease.push(0);
|
|
252
|
+
}
|
|
253
|
+
r && (this.prerelease[0] === r ? isNaN(this.prerelease[1]) && (this.prerelease = [r, 0]) : this.prerelease = [r, 0]);
|
|
254
|
+
break;
|
|
255
|
+
default:
|
|
256
|
+
throw new Error(`invalid increment argument: ${t}`);
|
|
257
|
+
}
|
|
258
|
+
return this.format(), this.raw = this.version, this;
|
|
259
|
+
}
|
|
260
|
+
}, Eo = (e, t, r) => new be(e, r).compare(new be(t, r)), De = Eo, Io = (e, t, r) => De(e, t, r) === 0, wo = Io, _o = (e, t, r) => De(e, t, r) !== 0, bo = _o, Ao = (e, t, r) => De(e, t, r) > 0, No = Ao, Ro = (e, t, r) => De(e, t, r) >= 0, So = Ro, Oo = (e, t, r) => De(e, t, r) < 0, To = Oo, Co = (e, t, r) => De(e, t, r) <= 0, Mo = Co, Lo = (e, t, r, o) => {
|
|
261
|
+
switch (t) {
|
|
262
|
+
case "===":
|
|
263
|
+
return typeof e == "object" && (e = e.version), typeof r == "object" && (r = r.version), e === r;
|
|
264
|
+
case "!==":
|
|
265
|
+
return typeof e == "object" && (e = e.version), typeof r == "object" && (r = r.version), e !== r;
|
|
266
|
+
case "":
|
|
267
|
+
case "=":
|
|
268
|
+
case "==":
|
|
269
|
+
return wo(e, r, o);
|
|
270
|
+
case "!=":
|
|
271
|
+
return bo(e, r, o);
|
|
272
|
+
case ">":
|
|
273
|
+
return No(e, r, o);
|
|
274
|
+
case ">=":
|
|
275
|
+
return So(e, r, o);
|
|
276
|
+
case "<":
|
|
277
|
+
return To(e, r, o);
|
|
278
|
+
case "<=":
|
|
279
|
+
return Mo(e, r, o);
|
|
280
|
+
default:
|
|
281
|
+
throw new TypeError(`Invalid operator: ${t}`);
|
|
282
|
+
}
|
|
283
|
+
}, _t = Lo, We = Symbol("SemVer ANY"), Nt = class Rt {
|
|
284
|
+
static get ANY() {
|
|
285
|
+
return We;
|
|
286
|
+
}
|
|
287
|
+
constructor(t, r) {
|
|
288
|
+
if (r && typeof r == "object" || (r = { loose: !!r, includePrerelease: !1 }), t instanceof Rt) {
|
|
289
|
+
if (t.loose === !!r.loose) return t;
|
|
290
|
+
t = t.value;
|
|
291
|
+
}
|
|
292
|
+
B("comparator", t, r), this.options = r, this.loose = !!r.loose, this.parse(t), this.semver === We ? this.value = "" : this.value = this.operator + this.semver.version, B("comp", this);
|
|
293
|
+
}
|
|
294
|
+
parse(t) {
|
|
295
|
+
let r = this.options.loose ? sr[cr.COMPARATORLOOSE] : sr[cr.COMPARATOR], o = t.match(r);
|
|
296
|
+
if (!o) throw new TypeError(`Invalid comparator: ${t}`);
|
|
297
|
+
this.operator = o[1] !== void 0 ? o[1] : "", this.operator === "=" && (this.operator = ""), o[2] ? this.semver = new be(o[2], this.options.loose) : this.semver = We;
|
|
298
|
+
}
|
|
299
|
+
toString() {
|
|
300
|
+
return this.value;
|
|
301
|
+
}
|
|
302
|
+
test(t) {
|
|
303
|
+
if (B("Comparator.test", t, this.options.loose), this.semver === We || t === We) return !0;
|
|
304
|
+
if (typeof t == "string") try {
|
|
305
|
+
t = new be(t, this.options);
|
|
306
|
+
} catch {
|
|
307
|
+
return !1;
|
|
308
|
+
}
|
|
309
|
+
return _t(t, this.operator, this.semver, this.options);
|
|
310
|
+
}
|
|
311
|
+
intersects(t, r) {
|
|
312
|
+
if (!(t instanceof Rt)) throw new TypeError("a Comparator is required");
|
|
313
|
+
if (r && typeof r == "object" || (r = { loose: !!r, includePrerelease: !1 }), this.operator === "") return this.value === "" || new St(t.value, r).test(this.value);
|
|
314
|
+
if (t.operator === "") return t.value === "" || new St(this.value, r).test(t.semver);
|
|
315
|
+
let o = !(this.operator !== ">=" && this.operator !== ">" || t.operator !== ">=" && t.operator !== ">"), i = !(this.operator !== "<=" && this.operator !== "<" || t.operator !== "<=" && t.operator !== "<"), a = this.semver.version === t.semver.version, p = !(this.operator !== ">=" && this.operator !== "<=" || t.operator !== ">=" && t.operator !== "<="), f = _t(this.semver, "<", t.semver, r) && (this.operator === ">=" || this.operator === ">") && (t.operator === "<=" || t.operator === "<"), A = _t(this.semver, ">", t.semver, r) && (this.operator === "<=" || this.operator === "<") && (t.operator === ">=" || t.operator === ">");
|
|
316
|
+
return o || i || a && p || f || A;
|
|
317
|
+
}
|
|
318
|
+
}, { re: sr, t: cr } = Xe, St = class it {
|
|
319
|
+
constructor(t, r) {
|
|
320
|
+
if (r && typeof r == "object" || (r = { loose: !!r, includePrerelease: !1 }), t instanceof it) return t.loose === !!r.loose && t.includePrerelease === !!r.includePrerelease ? t : new it(t.raw, r);
|
|
321
|
+
if (t instanceof Nt) return this.raw = t.value, this.set = [[t]], this.format(), this;
|
|
322
|
+
if (this.options = r, this.loose = !!r.loose, this.includePrerelease = !!r.includePrerelease, this.raw = t, this.set = t.split(/\s*\|\|\s*/).map((o) => this.parseRange(o.trim())).filter((o) => o.length), !this.set.length) throw new TypeError(`Invalid SemVer Range: ${t}`);
|
|
323
|
+
this.format();
|
|
324
|
+
}
|
|
325
|
+
format() {
|
|
326
|
+
return this.range = this.set.map((t) => t.join(" ").trim()).join("||").trim(), this.range;
|
|
327
|
+
}
|
|
328
|
+
toString() {
|
|
329
|
+
return this.range;
|
|
330
|
+
}
|
|
331
|
+
parseRange(t) {
|
|
332
|
+
let { loose: r } = this.options;
|
|
333
|
+
t = t.trim();
|
|
334
|
+
let o = r ? te[Z.HYPHENRANGELOOSE] : te[Z.HYPHENRANGE];
|
|
335
|
+
t = t.replace(o, Vo(this.options.includePrerelease)), B("hyphen replace", t), t = t.replace(te[Z.COMPARATORTRIM], $o), B("comparator trim", t, te[Z.COMPARATORTRIM]), t = (t = (t = t.replace(te[Z.TILDETRIM], Po)).replace(te[Z.CARETTRIM], ko)).split(/\s+/).join(" ");
|
|
336
|
+
let i = r ? te[Z.COMPARATORLOOSE] : te[Z.COMPARATOR];
|
|
337
|
+
return t.split(" ").map((a) => Do(a, this.options)).join(" ").split(/\s+/).map((a) => qo(a, this.options)).filter(this.options.loose ? (a) => !!a.match(i) : () => !0).map((a) => new Nt(a, this.options));
|
|
338
|
+
}
|
|
339
|
+
intersects(t, r) {
|
|
340
|
+
if (!(t instanceof it)) throw new TypeError("a Range is required");
|
|
341
|
+
return this.set.some((o) => lr(o, r) && t.set.some((i) => lr(i, r) && o.every((a) => i.every((p) => a.intersects(p, r)))));
|
|
342
|
+
}
|
|
343
|
+
test(t) {
|
|
344
|
+
if (!t) return !1;
|
|
345
|
+
if (typeof t == "string") try {
|
|
346
|
+
t = new be(t, this.options);
|
|
347
|
+
} catch {
|
|
348
|
+
return !1;
|
|
349
|
+
}
|
|
350
|
+
for (let r = 0; r < this.set.length; r++) if (Ho(this.set[r], t, this.options)) return !0;
|
|
351
|
+
return !1;
|
|
352
|
+
}
|
|
353
|
+
}, { re: te, t: Z, comparatorTrimReplace: $o, tildeTrimReplace: Po, caretTrimReplace: ko } = Xe, lr = (e, t) => {
|
|
354
|
+
let r = !0, o = e.slice(), i = o.pop();
|
|
355
|
+
for (; r && o.length; ) r = o.every((a) => i.intersects(a, t)), i = o.pop();
|
|
356
|
+
return r;
|
|
357
|
+
}, Do = (e, t) => (B("comp", e, t), e = xo(e, t), B("caret", e), e = Uo(e, t), B("tildes", e), e = Go(e, t), B("xrange", e), e = Bo(e, t), B("stars", e), e), ne = (e) => !e || e.toLowerCase() === "x" || e === "*", Uo = (e, t) => e.trim().split(/\s+/).map((r) => jo(r, t)).join(" "), jo = (e, t) => {
|
|
358
|
+
let r = t.loose ? te[Z.TILDELOOSE] : te[Z.TILDE];
|
|
359
|
+
return e.replace(r, (o, i, a, p, f) => {
|
|
360
|
+
let A;
|
|
361
|
+
return B("tilde", e, o, i, a, p, f), ne(i) ? A = "" : ne(a) ? A = `>=${i}.0.0 <${+i + 1}.0.0-0` : ne(p) ? A = `>=${i}.${a}.0 <${i}.${+a + 1}.0-0` : f ? (B("replaceTilde pr", f), A = `>=${i}.${a}.${p}-${f} <${i}.${+a + 1}.0-0`) : A = `>=${i}.${a}.${p} <${i}.${+a + 1}.0-0`, B("tilde return", A), A;
|
|
362
|
+
});
|
|
363
|
+
}, xo = (e, t) => e.trim().split(/\s+/).map((r) => Fo(r, t)).join(" "), Fo = (e, t) => {
|
|
364
|
+
B("caret", e, t);
|
|
365
|
+
let r = t.loose ? te[Z.CARETLOOSE] : te[Z.CARET], o = t.includePrerelease ? "-0" : "";
|
|
366
|
+
return e.replace(r, (i, a, p, f, A) => {
|
|
367
|
+
let y;
|
|
368
|
+
return B("caret", e, i, a, p, f, A), ne(a) ? y = "" : ne(p) ? y = `>=${a}.0.0${o} <${+a + 1}.0.0-0` : ne(f) ? y = a === "0" ? `>=${a}.${p}.0${o} <${a}.${+p + 1}.0-0` : `>=${a}.${p}.0${o} <${+a + 1}.0.0-0` : A ? (B("replaceCaret pr", A), y = a === "0" ? p === "0" ? `>=${a}.${p}.${f}-${A} <${a}.${p}.${+f + 1}-0` : `>=${a}.${p}.${f}-${A} <${a}.${+p + 1}.0-0` : `>=${a}.${p}.${f}-${A} <${+a + 1}.0.0-0`) : (B("no pr"), y = a === "0" ? p === "0" ? `>=${a}.${p}.${f}${o} <${a}.${p}.${+f + 1}-0` : `>=${a}.${p}.${f}${o} <${a}.${+p + 1}.0-0` : `>=${a}.${p}.${f} <${+a + 1}.0.0-0`), B("caret return", y), y;
|
|
369
|
+
});
|
|
370
|
+
}, Go = (e, t) => (B("replaceXRanges", e, t), e.split(/\s+/).map((r) => Wo(r, t)).join(" ")), Wo = (e, t) => {
|
|
371
|
+
e = e.trim();
|
|
372
|
+
let r = t.loose ? te[Z.XRANGELOOSE] : te[Z.XRANGE];
|
|
373
|
+
return e.replace(r, (o, i, a, p, f, A) => {
|
|
374
|
+
B("xRange", e, o, i, a, p, f, A);
|
|
375
|
+
let y = ne(a), g = y || ne(p), h = g || ne(f), S = h;
|
|
376
|
+
return i === "=" && S && (i = ""), A = t.includePrerelease ? "-0" : "", y ? o = i === ">" || i === "<" ? "<0.0.0-0" : "*" : i && S ? (g && (p = 0), f = 0, i === ">" ? (i = ">=", g ? (a = +a + 1, p = 0, f = 0) : (p = +p + 1, f = 0)) : i === "<=" && (i = "<", g ? a = +a + 1 : p = +p + 1), i === "<" && (A = "-0"), o = `${i + a}.${p}.${f}${A}`) : g ? o = `>=${a}.0.0${A} <${+a + 1}.0.0-0` : h && (o = `>=${a}.${p}.0${A} <${a}.${+p + 1}.0-0`), B("xRange return", o), o;
|
|
377
|
+
});
|
|
378
|
+
}, Bo = (e, t) => (B("replaceStars", e, t), e.trim().replace(te[Z.STAR], "")), qo = (e, t) => (B("replaceGTE0", e, t), e.trim().replace(te[t.includePrerelease ? Z.GTE0PRE : Z.GTE0], "")), Vo = (e) => (t, r, o, i, a, p, f, A, y, g, h, S, P) => `${r = ne(o) ? "" : ne(i) ? `>=${o}.0.0${e ? "-0" : ""}` : ne(a) ? `>=${o}.${i}.0${e ? "-0" : ""}` : p ? `>=${r}` : `>=${r}${e ? "-0" : ""}`} ${A = ne(y) ? "" : ne(g) ? `<${+y + 1}.0.0-0` : ne(h) ? `<${y}.${+g + 1}.0-0` : S ? `<=${y}.${g}.${h}-${S}` : e ? `<${y}.${g}.${+h + 1}-0` : `<=${A}`}`.trim(), Ho = (e, t, r) => {
|
|
379
|
+
for (let o = 0; o < e.length; o++) if (!e[o].test(t)) return !1;
|
|
380
|
+
if (t.prerelease.length && !r.includePrerelease) {
|
|
381
|
+
for (let o = 0; o < e.length; o++) if (B(e[o].semver), e[o].semver !== Nt.ANY && e[o].semver.prerelease.length > 0) {
|
|
382
|
+
let i = e[o].semver;
|
|
383
|
+
if (i.major === t.major && i.minor === t.minor && i.patch === t.patch) return !0;
|
|
384
|
+
}
|
|
385
|
+
return !1;
|
|
386
|
+
}
|
|
387
|
+
return !0;
|
|
388
|
+
}, zo = (e, t, r) => {
|
|
389
|
+
try {
|
|
390
|
+
t = new St(t, r);
|
|
391
|
+
} catch {
|
|
392
|
+
return !1;
|
|
393
|
+
}
|
|
394
|
+
return t.test(e);
|
|
395
|
+
}, { MAX_LENGTH: Xo } = Mt, { re: ur, t: dr } = Xe, Ko = (e, t) => {
|
|
396
|
+
if (t && typeof t == "object" || (t = { loose: !!t, includePrerelease: !1 }), e instanceof be) return e;
|
|
397
|
+
if (typeof e != "string" || e.length > Xo || !(t.loose ? ur[dr.LOOSE] : ur[dr.FULL]).test(e)) return null;
|
|
398
|
+
try {
|
|
399
|
+
return new be(e, t);
|
|
400
|
+
} catch {
|
|
401
|
+
return null;
|
|
402
|
+
}
|
|
403
|
+
}, Yo = Ko, { re: et, t: tt } = Xe, Jo = (e, t) => {
|
|
404
|
+
if (e instanceof be) return e;
|
|
405
|
+
if (typeof e == "number" && (e = String(e)), typeof e != "string") return null;
|
|
406
|
+
let r = null;
|
|
407
|
+
if ((t = t || {}).rtl) {
|
|
408
|
+
let o;
|
|
409
|
+
for (; (o = et[tt.COERCERTL].exec(e)) && (!r || r.index + r[0].length !== e.length); ) r && o.index + o[0].length === r.index + r[0].length || (r = o), et[tt.COERCERTL].lastIndex = o.index + o[1].length + o[2].length;
|
|
410
|
+
et[tt.COERCERTL].lastIndex = -1;
|
|
411
|
+
} else r = e.match(et[tt.COERCE]);
|
|
412
|
+
return r === null ? null : Yo(`${r[2]}.${r[3] || "0"}.${r[4] || "0"}`, t);
|
|
413
|
+
};
|
|
414
|
+
function Qo(e) {
|
|
415
|
+
return String.fromCharCode(parseInt(e.slice(1), 16));
|
|
416
|
+
}
|
|
417
|
+
function Zo(e) {
|
|
418
|
+
return btoa(encodeURIComponent(e).replace(/%[0-9A-F]{2}/g, Qo));
|
|
419
|
+
}
|
|
420
|
+
function ei(e) {
|
|
421
|
+
return Zo(JSON.stringify(e));
|
|
422
|
+
}
|
|
423
|
+
function He(e) {
|
|
424
|
+
return typeof e > "u";
|
|
425
|
+
}
|
|
426
|
+
function ti(e) {
|
|
427
|
+
return e === null;
|
|
428
|
+
}
|
|
429
|
+
function wr(e) {
|
|
430
|
+
return ti(e) || He(e);
|
|
431
|
+
}
|
|
432
|
+
function ri(e) {
|
|
433
|
+
return wr(e) ? !1 : !He(e.jsonrpc) && !He(e.id) && (!He(e.result) || !He(e.error));
|
|
434
|
+
}
|
|
435
|
+
function ni(e) {
|
|
436
|
+
return wr(e) ? !1 : typeof e == "number" && Object.values(dt).includes(e);
|
|
437
|
+
}
|
|
438
|
+
function ct(e) {
|
|
439
|
+
if (!e) return !0;
|
|
440
|
+
for (let t in e) if (Object.hasOwnProperty.call(e, t)) return !1;
|
|
441
|
+
return !0;
|
|
442
|
+
}
|
|
443
|
+
var z = {};
|
|
444
|
+
function oi(e, t) {
|
|
445
|
+
return Object.assign(z, t), e;
|
|
446
|
+
}
|
|
447
|
+
var ii = { "magic-sdk": "magic-sdk", "@magic-sdk/react-native": "magic-sdk-rn", "@magic-sdk/react-native-bare": "magic-sdk-rn-bare", "@magic-sdk/react-native-expo": "magic-sdk-rn-expo" }, Ke = class _r extends Error {
|
|
448
|
+
constructor(t, r) {
|
|
449
|
+
super(`Magic SDK Error: [${t}] ${r}`), this.code = t, this.rawMessage = r, Object.setPrototypeOf(this, _r.prototype);
|
|
450
|
+
}
|
|
451
|
+
__proto__ = Error;
|
|
452
|
+
}, Ot = class br extends Error {
|
|
453
|
+
__proto__ = Error;
|
|
454
|
+
code;
|
|
455
|
+
rawMessage;
|
|
456
|
+
data;
|
|
457
|
+
constructor(t) {
|
|
458
|
+
super();
|
|
459
|
+
let r = Number(t?.code);
|
|
460
|
+
this.rawMessage = t?.message || "Internal error", this.code = ni(r) ? r : dt.InternalError, this.message = `Magic RPC Error: [${this.code}] ${this.rawMessage}`, this.data = t?.data || void 0, Object.setPrototypeOf(this, br.prototype);
|
|
461
|
+
}
|
|
462
|
+
}, Ye = class {
|
|
463
|
+
constructor(e, t) {
|
|
464
|
+
this.code = e, this.rawMessage = t, this.message = `Magic SDK Warning: [${e}] ${t}`;
|
|
465
|
+
}
|
|
466
|
+
message;
|
|
467
|
+
log() {
|
|
468
|
+
console.warn(this.message);
|
|
469
|
+
}
|
|
470
|
+
};
|
|
471
|
+
function ai() {
|
|
472
|
+
return new Ke(Pe.MissingApiKey, "Please provide an API key that you acquired from the Magic developer dashboard.");
|
|
473
|
+
}
|
|
474
|
+
function Ar() {
|
|
475
|
+
return new Ke(Pe.ModalNotReady, "Modal is not ready");
|
|
476
|
+
}
|
|
477
|
+
function si() {
|
|
478
|
+
return new Ke(Pe.MalformedResponse, "Response from the Magic iframe is malformed.");
|
|
479
|
+
}
|
|
480
|
+
function ci(e) {
|
|
481
|
+
let t = `Some extensions are incompatible with \`${z.sdkName}@${z.version}\`:`;
|
|
482
|
+
return e.filter((r) => typeof r.compat < "u" && r.compat !== null).forEach((r) => {
|
|
483
|
+
let o = r.compat[z.sdkName];
|
|
484
|
+
typeof o == "string" ? t += `
|
|
485
|
+
- Extension \`${r.name}\` supports version(s) \`${o}\`` : o || (t += `
|
|
486
|
+
- Extension \`${r.name}\` does not support ${z.platform} environments.`);
|
|
487
|
+
}), new Ke(Pe.IncompatibleExtensions, t);
|
|
488
|
+
}
|
|
489
|
+
function li(e) {
|
|
490
|
+
let t = (r) => {
|
|
491
|
+
let o = r + 1, i = o % 10, a = o % 100;
|
|
492
|
+
return i === 1 && a !== 11 ? `${o}st` : i === 2 && a !== 12 ? `${o}nd` : i === 3 && a !== 13 ? `${o}rd` : `${o}th`;
|
|
493
|
+
};
|
|
494
|
+
return new Ke(Pe.InvalidArgument, `Invalid ${t(e.argument)} argument given to \`${e.procedure}\`.
|
|
495
|
+
Expected: \`${e.expected}\`
|
|
496
|
+
Received: \`${e.received}\``);
|
|
497
|
+
}
|
|
498
|
+
function ui() {
|
|
499
|
+
return new Ye(ke.DuplicateIframe, "Duplicate iframes found.");
|
|
500
|
+
}
|
|
501
|
+
function di() {
|
|
502
|
+
return new Ye(ke.SyncWeb3Method, "Non-async web3 methods are deprecated in web3 > 1.0 and are not supported by the Magic web3 provider. Please use an async method instead.");
|
|
503
|
+
}
|
|
504
|
+
function fi() {
|
|
505
|
+
return new Ye(ke.ReactNativeEndpointConfiguration, `CUSTOM DOMAINS ARE NOT SUPPORTED WHEN USING MAGIC SDK WITH REACT NATIVE! The \`endpoint\` parameter SHOULD NOT be provided. The Magic \`<iframe>\` is automatically wrapped by a WebView pointed at \`${z.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`);
|
|
506
|
+
}
|
|
507
|
+
function hi(e) {
|
|
508
|
+
let { method: t, removalVersions: r, useInstead: o } = e, i = r[z.sdkName], a = o ? ` Use \`${o}\` instead.` : "", p = `\`${t}\` will be removed from \`${z.sdkName}\` in version \`${i}\`.${a}`;
|
|
509
|
+
return new Ye(ke.DeprecationNotice, p);
|
|
510
|
+
}
|
|
511
|
+
function* pi() {
|
|
512
|
+
let e = 0;
|
|
513
|
+
for (; ; ) e < Number.MAX_SAFE_INTEGER ? yield ++e : e = 0;
|
|
514
|
+
}
|
|
515
|
+
var mi = pi();
|
|
516
|
+
function Nr() {
|
|
517
|
+
return mi.next().value;
|
|
518
|
+
}
|
|
519
|
+
var vi = {};
|
|
520
|
+
lo(vi, { clear: () => yi, getItem: () => ce, iterate: () => Rr, key: () => Ei, keys: () => Ii, length: () => gi, removeItem: () => $e, setItem: () => _e });
|
|
521
|
+
var rt;
|
|
522
|
+
function Ae(e) {
|
|
523
|
+
return async (...t) => (rt || (rt = await z.configureStorage()), await rt.ready(), rt[e](...t));
|
|
524
|
+
}
|
|
525
|
+
var ce = Ae("getItem"), _e = Ae("setItem"), $e = Ae("removeItem"), yi = Ae("clear"), gi = Ae("length"), Ei = Ae("key"), Ii = Ae("keys"), Rr = Ae("iterate");
|
|
526
|
+
function wi() {
|
|
527
|
+
let e = window.crypto.getRandomValues(new Uint8Array(16));
|
|
528
|
+
e[6] = e[6] & 15 | 64, e[8] = e[8] & 191 | 128;
|
|
529
|
+
let t = "";
|
|
530
|
+
return t += e[0].toString(16), t += e[1].toString(16), t += e[2].toString(16), t += e[3].toString(16), t += "-", t += e[4].toString(16), t += e[5].toString(16), t += "-", t += e[6].toString(16), t += e[7].toString(16), t += "-", t += e[8].toString(16), t += e[9].toString(16), t += "-", t += e[10].toString(16), t += e[11].toString(16), t += e[12].toString(16), t += e[13].toString(16), t += e[14].toString(16), t += e[15].toString(16), t;
|
|
531
|
+
}
|
|
532
|
+
var Lt = "STORE_KEY_PRIVATE_KEY", lt = "STORE_KEY_PUBLIC_JWK", Sr = "ECDSA", _i = "P-256", bi = { name: Sr, namedCurve: _i };
|
|
533
|
+
function ft() {
|
|
534
|
+
let e = typeof window < "u" && !!window.crypto, t = e && !!window.crypto.subtle;
|
|
535
|
+
return e && t;
|
|
536
|
+
}
|
|
537
|
+
function Ai() {
|
|
538
|
+
$e(lt), $e(Lt);
|
|
539
|
+
}
|
|
540
|
+
async function Ni() {
|
|
541
|
+
let e = await Ri();
|
|
542
|
+
if (!e) {
|
|
543
|
+
console.info("unable to create public key or webcrypto is unsupported");
|
|
544
|
+
return;
|
|
545
|
+
}
|
|
546
|
+
let { subtle: t } = window.crypto, r = await ce(Lt);
|
|
547
|
+
if (!r || !t) {
|
|
548
|
+
console.info("unable to find private key or webcrypto unsupported");
|
|
549
|
+
return;
|
|
550
|
+
}
|
|
551
|
+
let o = { iat: Math.floor((/* @__PURE__ */ new Date()).getTime() / 1e3), jti: wi() }, i = { protected: fr(JSON.stringify({ typ: "dpop+jwt", alg: "ES256", jwk: e })), claims: fr(JSON.stringify(o)) }, a = Oi(`${i.protected}.${i.claims}`), p = { name: Sr, hash: { name: "SHA-256" } }, f = Ci(new Uint8Array(await t.sign(p, r, a)));
|
|
552
|
+
return `${i.protected}.${i.claims}.${f}`;
|
|
553
|
+
}
|
|
554
|
+
async function Ri() {
|
|
555
|
+
if (!ft()) {
|
|
556
|
+
console.info("webcrypto is not supported");
|
|
557
|
+
return;
|
|
558
|
+
}
|
|
559
|
+
return await ce(lt) || await Si(), ce(lt);
|
|
560
|
+
}
|
|
561
|
+
async function Si() {
|
|
562
|
+
let { subtle: e } = window.crypto, t = await e.generateKey(bi, !1, ["sign"]), r = await e.exportKey("jwk", t.publicKey);
|
|
563
|
+
await _e(Lt, t.privateKey), await _e(lt, r);
|
|
564
|
+
}
|
|
565
|
+
function fr(e) {
|
|
566
|
+
return Or(Ti(e));
|
|
567
|
+
}
|
|
568
|
+
function Oi(e) {
|
|
569
|
+
return new TextEncoder().encode(e);
|
|
570
|
+
}
|
|
571
|
+
function Or(e) {
|
|
572
|
+
return btoa(e).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+/g, "");
|
|
573
|
+
}
|
|
574
|
+
function Ti(e) {
|
|
575
|
+
return encodeURIComponent(e).replace(/%([0-9A-F]{2})/g, (t, r) => String.fromCharCode(parseInt(r, 16)));
|
|
576
|
+
}
|
|
577
|
+
function Ci(e) {
|
|
578
|
+
let t = "";
|
|
579
|
+
return e.forEach((r) => {
|
|
580
|
+
t += String.fromCharCode(r);
|
|
581
|
+
}), Or(t);
|
|
582
|
+
}
|
|
583
|
+
var Tr = Symbol("Payload pre-processed by Magic SDK");
|
|
584
|
+
function Cr(e) {
|
|
585
|
+
return Object.defineProperty(e, Tr, { value: !0, enumerable: !1 }), e;
|
|
586
|
+
}
|
|
587
|
+
function Mi(e) {
|
|
588
|
+
return !!e[Tr];
|
|
589
|
+
}
|
|
590
|
+
function Tt(e) {
|
|
591
|
+
return Mi(e) || (e.jsonrpc = e.jsonrpc ?? "2.0", e.id = Nr(), e.method = e.method ?? "noop", e.params = e.params ?? [], Cr(e)), e;
|
|
592
|
+
}
|
|
593
|
+
function x(e, t = []) {
|
|
594
|
+
return Cr({ params: t, method: e, jsonrpc: "2.0", id: Nr() });
|
|
595
|
+
}
|
|
596
|
+
var Mr = class Lr {
|
|
597
|
+
_jsonrpc;
|
|
598
|
+
_id;
|
|
599
|
+
_result;
|
|
600
|
+
_error;
|
|
601
|
+
constructor(t) {
|
|
602
|
+
t instanceof Lr ? (this._jsonrpc = t.payload.jsonrpc, this._id = t.payload.id, this._result = t.payload.result, this._error = t.payload.error) : ri(t) ? (this._jsonrpc = t.jsonrpc, this._id = t.id, this._result = t.result, this._error = t.error) : (this._jsonrpc = t.jsonrpc, this._id = t.id, this._result = void 0, this._error = void 0);
|
|
603
|
+
}
|
|
604
|
+
applyError(t) {
|
|
605
|
+
return this._error = t, this;
|
|
606
|
+
}
|
|
607
|
+
applyResult(t) {
|
|
608
|
+
return this._result = t, this;
|
|
609
|
+
}
|
|
610
|
+
get hasError() {
|
|
611
|
+
return this._error?.code === dt.DpopInvalidated && Ai(), typeof this._error < "u" && this._error !== null;
|
|
612
|
+
}
|
|
613
|
+
get hasResult() {
|
|
614
|
+
return typeof this._result < "u";
|
|
615
|
+
}
|
|
616
|
+
get payload() {
|
|
617
|
+
return { jsonrpc: this._jsonrpc, id: this._id, result: this._result, error: this._error };
|
|
618
|
+
}
|
|
619
|
+
}, Li = fo(ho()), $i = class extends Li.default {
|
|
620
|
+
};
|
|
621
|
+
function $r() {
|
|
622
|
+
let e = new $i();
|
|
623
|
+
return { emitter: e, createChainingEmitterMethod: (t, r) => (...o) => (e[t].apply(e, o), r), createBoundEmitterMethod: (t) => (...r) => e[t].apply(e, r) };
|
|
624
|
+
}
|
|
625
|
+
var Pi = Symbol("isPromiEvent");
|
|
626
|
+
function ve(e) {
|
|
627
|
+
let t = Pr(e), { createBoundEmitterMethod: r, createChainingEmitterMethod: o } = $r(), i = Symbol("Promise.then"), a = Symbol("Promise.catch"), p = Symbol("Promise.finally"), f = (g, h) => (...S) => {
|
|
628
|
+
let P = h[g].apply(h, S);
|
|
629
|
+
return A(P);
|
|
630
|
+
}, A = (g) => Object.assign(g, { [Pi]: !0, [i]: g[i] || g.then, [a]: g[a] || g.catch, [p]: g[p] || g.finally, then: f(i, g), catch: f(a, g), finally: f(p, g), on: o("on", g), once: o("once", g), addListener: o("addListener", g), off: o("off", g), removeListener: o("removeListener", g), removeAllListeners: o("removeAllListeners", g), emit: r("emit"), eventNames: r("eventNames"), listeners: r("listeners"), listenerCount: r("listenerCount") }), y = A(t.then((g) => (y.emit("done", g), y.emit("settled"), g), (g) => {
|
|
631
|
+
throw y.emit("error", g), y.emit("settled"), g;
|
|
632
|
+
}));
|
|
633
|
+
return y.on(Ir.ClosedByUser, () => {
|
|
634
|
+
y.emit(Er.ClosedByUser);
|
|
635
|
+
}), y;
|
|
636
|
+
}
|
|
637
|
+
function Pr(e) {
|
|
638
|
+
return new Promise((t, r) => {
|
|
639
|
+
let o = e(t, r);
|
|
640
|
+
Promise.resolve(o).catch(r);
|
|
641
|
+
});
|
|
642
|
+
}
|
|
643
|
+
var Ue = class {
|
|
644
|
+
constructor(e) {
|
|
645
|
+
this.sdk = e;
|
|
646
|
+
}
|
|
647
|
+
get overlay() {
|
|
648
|
+
return this.sdk.overlay;
|
|
649
|
+
}
|
|
650
|
+
request(e) {
|
|
651
|
+
if (this.sdk.thirdPartyWallets.isConnected && !jn.includes(e.method)) return ve((i, a) => {
|
|
652
|
+
this.sdk.thirdPartyWallets.requestOverride(e).then(i).catch(a);
|
|
653
|
+
});
|
|
654
|
+
let t = this.overlay.post(ze.MAGIC_HANDLE_REQUEST, Tt(e)), r = ve((i, a) => {
|
|
655
|
+
t.then((p) => {
|
|
656
|
+
if (o(), p.hasError) a(new Ot(p.payload.error));
|
|
657
|
+
else if (p.hasResult) i(p.payload.result);
|
|
658
|
+
else throw si();
|
|
659
|
+
}).catch((p) => {
|
|
660
|
+
o(), a(p);
|
|
661
|
+
});
|
|
662
|
+
}), o = this.overlay.on(we.MAGIC_HANDLE_EVENT, (i) => {
|
|
663
|
+
let { response: a } = i.data;
|
|
664
|
+
if (a.id === e.id && a.result?.event) {
|
|
665
|
+
let { event: p, params: f = [] } = a.result;
|
|
666
|
+
r.emit(p, ...f);
|
|
667
|
+
}
|
|
668
|
+
});
|
|
669
|
+
return r;
|
|
670
|
+
}
|
|
671
|
+
createIntermediaryEvent(e, t) {
|
|
672
|
+
return (r) => {
|
|
673
|
+
let o = x(L.IntermediaryEvent, [{ payloadId: t, eventType: e, args: r }]);
|
|
674
|
+
this.request(o);
|
|
675
|
+
};
|
|
676
|
+
}
|
|
677
|
+
};
|
|
678
|
+
function ki(e, t) {
|
|
679
|
+
let [r] = e.split(".").map(Number);
|
|
680
|
+
return r >= t;
|
|
681
|
+
}
|
|
682
|
+
var Di = { "magic-sdk": "v18.0.0", "@magic-sdk/react-native": "v14.0.0", "@magic-sdk/react-native-bare": "v19.0.0", "@magic-sdk/react-native-expo": "v19.0.0" }, Ui = class extends Ue {
|
|
683
|
+
loginWithMagicLink(t) {
|
|
684
|
+
let r = z.sdkName === "@magic-sdk/react-native" || z.sdkName === "@magic-sdk/react-native-bare" || z.sdkName === "@magic-sdk/react-native-expo";
|
|
685
|
+
if (r && ki(z.version, 19)) throw new Error("loginWithMagicLink() is deprecated for this package, please utilize a passcode method like loginWithSMS or loginWithEmailOTP instead.");
|
|
686
|
+
r && hi({ method: "auth.loginWithMagicLink()", removalVersions: Di, useInstead: "auth.loginWithEmailOTP()" }).log();
|
|
687
|
+
let { email: o, showUI: i = !0, redirectURI: a, overrides: p, lifespan: f } = t, A = x(this.sdk.testMode ? L.LoginWithMagicLinkTestMode : L.LoginWithMagicLink, [{ email: o, showUI: i, redirectURI: a, overrides: p, lifespan: f }]);
|
|
688
|
+
return this.request(A);
|
|
689
|
+
}
|
|
690
|
+
loginWithSMS(t) {
|
|
691
|
+
let { phoneNumber: r, showUI: o = !0, lifespan: i } = t, a = x(this.sdk.testMode ? L.LoginWithSmsTestMode : L.LoginWithSms, [{ phoneNumber: r, showUI: o, lifespan: i }]), p = this.request(a);
|
|
692
|
+
return !o && p && (p.on(Be.VerifySmsOtp, (f) => {
|
|
693
|
+
this.createIntermediaryEvent(Be.VerifySmsOtp, a.id)(f);
|
|
694
|
+
}), p.on(Be.Cancel, () => {
|
|
695
|
+
this.createIntermediaryEvent(Be.Cancel, a.id)();
|
|
696
|
+
})), p;
|
|
697
|
+
}
|
|
698
|
+
loginWithEmailOTP(t) {
|
|
699
|
+
let { email: r, showUI: o, deviceCheckUI: i, overrides: a, lifespan: p } = t, f = x(this.sdk.testMode ? L.LoginWithEmailOTPTestMode : L.LoginWithEmailOTP, [{ email: r, showUI: o, deviceCheckUI: i, overrides: a, lifespan: p }]), A = this.request(f);
|
|
700
|
+
return !i && A && A.on(At.Retry, () => {
|
|
701
|
+
this.createIntermediaryEvent(At.Retry, f.id)();
|
|
702
|
+
}), !o && A && (A.on(de.VerifyEmailOtp, (y) => {
|
|
703
|
+
this.createIntermediaryEvent(de.VerifyEmailOtp, f.id)(y);
|
|
704
|
+
}), A.on(de.VerifyMFACode, (y) => {
|
|
705
|
+
this.createIntermediaryEvent(de.VerifyMFACode, f.id)(y);
|
|
706
|
+
}), A.on(de.LostDevice, () => {
|
|
707
|
+
this.createIntermediaryEvent(de.LostDevice, f.id)();
|
|
708
|
+
}), A.on(de.VerifyRecoveryCode, (y) => {
|
|
709
|
+
this.createIntermediaryEvent(de.VerifyRecoveryCode, f.id)(y);
|
|
710
|
+
}), A.on(de.Cancel, () => {
|
|
711
|
+
this.createIntermediaryEvent(de.Cancel, f.id)();
|
|
712
|
+
})), A;
|
|
713
|
+
}
|
|
714
|
+
loginWithCredential(t) {
|
|
715
|
+
let { credentialOrQueryString: r, lifespan: o } = t || {}, i = r ?? "";
|
|
716
|
+
if (!r && z.platform === "web") {
|
|
717
|
+
i = window.location.search;
|
|
718
|
+
let p = window.location.origin + window.location.pathname;
|
|
719
|
+
window.history.replaceState(null, "", p);
|
|
720
|
+
}
|
|
721
|
+
let a = x(this.sdk.testMode ? L.LoginWithCredentialTestMode : L.LoginWithCredential, [i, o]);
|
|
722
|
+
return this.request(a);
|
|
723
|
+
}
|
|
724
|
+
setAuthorizationToken(t) {
|
|
725
|
+
let r = x(L.SetAuthorizationToken, [{ jwt: t }]);
|
|
726
|
+
return this.request(r);
|
|
727
|
+
}
|
|
728
|
+
updateEmailWithUI(t) {
|
|
729
|
+
let { email: r, showUI: o = !0 } = t, i = x(this.sdk.testMode ? L.UpdateEmailTestMode : L.UpdateEmail, [{ email: r, showUI: o }]), a = this.request(i);
|
|
730
|
+
return o || (a.on(fe.Retry, () => {
|
|
731
|
+
this.createIntermediaryEvent(fe.Retry, i.id)();
|
|
732
|
+
}), a.on(fe.Cancel, () => {
|
|
733
|
+
this.createIntermediaryEvent(fe.Cancel, i.id)();
|
|
734
|
+
}), a.on(fe.VerifyEmailOtp, (p) => {
|
|
735
|
+
this.createIntermediaryEvent(fe.VerifyEmailOtp, i.id)(p);
|
|
736
|
+
}), a.on(fe.VerifyMFACode, (p) => {
|
|
737
|
+
this.createIntermediaryEvent(fe.VerifyMFACode, i.id)(p);
|
|
738
|
+
}), a.on(ae.RetryWithNewEmail, (p) => {
|
|
739
|
+
this.createIntermediaryEvent(ae.RetryWithNewEmail, i.id)(p);
|
|
740
|
+
}), a.on(ae.Cancel, () => {
|
|
741
|
+
this.createIntermediaryEvent(ae.Cancel, i.id)();
|
|
742
|
+
}), a.on(ae.VerifyEmailOtp, (p) => {
|
|
743
|
+
this.createIntermediaryEvent(ae.VerifyEmailOtp, i.id)(p);
|
|
744
|
+
})), a;
|
|
745
|
+
}
|
|
746
|
+
}, $t = "ds", Pt = "ek", kt = "iv", Dt = "AES-GCM", ji = 256;
|
|
747
|
+
async function kr() {
|
|
748
|
+
let e = [];
|
|
749
|
+
await Rr((t, r, o) => {
|
|
750
|
+
r.startsWith(`${$t}_`) && e.push(r);
|
|
751
|
+
});
|
|
752
|
+
for (let t of e) await $e(t);
|
|
753
|
+
}
|
|
754
|
+
function Dr(e) {
|
|
755
|
+
let t = "", r = new Uint8Array(e), o = r.byteLength;
|
|
756
|
+
for (let i = 0; i < o; i++) t += String.fromCharCode(r[i]);
|
|
757
|
+
return window.btoa(t);
|
|
758
|
+
}
|
|
759
|
+
function Ur(e) {
|
|
760
|
+
let t = window.atob(e), r = t.length, o = new Uint8Array(r);
|
|
761
|
+
for (let i = 0; i < r; i++) o[i] = t.charCodeAt(i);
|
|
762
|
+
return o.buffer;
|
|
763
|
+
}
|
|
764
|
+
async function xi() {
|
|
765
|
+
if (!ft()) {
|
|
766
|
+
console.info("webcrypto is not supported");
|
|
767
|
+
return;
|
|
768
|
+
}
|
|
769
|
+
let { crypto: e } = window;
|
|
770
|
+
return await ce(kt) || e.getRandomValues(new Uint8Array(12));
|
|
771
|
+
}
|
|
772
|
+
async function Fi() {
|
|
773
|
+
if (!ft()) {
|
|
774
|
+
console.info("webcrypto is not supported");
|
|
775
|
+
return;
|
|
776
|
+
}
|
|
777
|
+
let { subtle: e } = window.crypto;
|
|
778
|
+
return await ce(Pt) || await e.generateKey({ name: Dt, length: ji }, !1, ["encrypt", "decrypt"]);
|
|
779
|
+
}
|
|
780
|
+
async function Gi(e, t) {
|
|
781
|
+
let r = await xi(), o = await Fi();
|
|
782
|
+
if (!r || !o || !e) return;
|
|
783
|
+
let i = Ur(e), { subtle: a } = window.crypto, p = await a.encrypt({ name: Dt, iv: r }, o, i), f = Dr(p);
|
|
784
|
+
await _e(`${$t}_${t}`, f), await _e(Pt, o), await _e(kt, r);
|
|
785
|
+
}
|
|
786
|
+
async function Wi(e) {
|
|
787
|
+
let t = await ce(`${$t}_${e}`), r = await ce(kt), o = await ce(Pt);
|
|
788
|
+
if (!r || !t || !o || !ft()) return;
|
|
789
|
+
let { subtle: i } = window.crypto, a = await i.decrypt({ name: Dt, iv: r }, o, Ur(t));
|
|
790
|
+
return Dr(a);
|
|
791
|
+
}
|
|
792
|
+
function ut(e, t) {
|
|
793
|
+
return t ? new URL(e, t) : new URL(e);
|
|
794
|
+
}
|
|
795
|
+
var Bi = class extends Ue {
|
|
796
|
+
getIdToken(t) {
|
|
797
|
+
let r = x(this.sdk.testMode ? L.GetIdTokenTestMode : L.GetIdToken, [t]);
|
|
798
|
+
return this.request(r);
|
|
799
|
+
}
|
|
800
|
+
generateIdToken(t) {
|
|
801
|
+
let r = x(this.sdk.testMode ? L.GenerateIdTokenTestMode : L.GenerateIdToken, [t]);
|
|
802
|
+
return this.request(r);
|
|
803
|
+
}
|
|
804
|
+
getInfo() {
|
|
805
|
+
let t = x(L.GetInfo, []);
|
|
806
|
+
return this.request(t);
|
|
807
|
+
}
|
|
808
|
+
isLoggedIn() {
|
|
809
|
+
return ve(async (t, r) => {
|
|
810
|
+
try {
|
|
811
|
+
let o = !1;
|
|
812
|
+
this.sdk.useStorageCache && (o = await ce(this.localForageIsLoggedInKey) === "true", o && t(!0));
|
|
813
|
+
let i = x(this.sdk.testMode ? L.IsLoggedInTestMode : L.IsLoggedIn), a = await this.request(i);
|
|
814
|
+
this.sdk.useStorageCache && (a ? _e(this.localForageIsLoggedInKey, !0) : $e(this.localForageIsLoggedInKey), o && !a && this.emitUserLoggedOut(!0)), t(a);
|
|
815
|
+
} catch (o) {
|
|
816
|
+
r(o);
|
|
817
|
+
}
|
|
818
|
+
});
|
|
819
|
+
}
|
|
820
|
+
logout() {
|
|
821
|
+
return $e(this.localForageIsLoggedInKey), kr(), ve(async (t, r) => {
|
|
822
|
+
try {
|
|
823
|
+
let o = x(this.sdk.testMode ? L.LogoutTestMode : L.Logout), i = await this.request(o);
|
|
824
|
+
this.sdk.useStorageCache && this.emitUserLoggedOut(i), t(i);
|
|
825
|
+
} catch (o) {
|
|
826
|
+
r(o);
|
|
827
|
+
}
|
|
828
|
+
});
|
|
829
|
+
}
|
|
830
|
+
requestInfoWithUI(t) {
|
|
831
|
+
let r = x(L.RequestUserInfoWithUI, t ? [t] : []);
|
|
832
|
+
return this.request(r);
|
|
833
|
+
}
|
|
834
|
+
showSettings(t) {
|
|
835
|
+
let { showUI: r = !0 } = t || {}, o = x(this.sdk.testMode ? L.UserSettingsTestMode : L.UserSettings, [t]), i = this.request(o);
|
|
836
|
+
return !r && i && (i.on(pe.SendNewPhoneNumber, (a) => {
|
|
837
|
+
this.createIntermediaryEvent(pe.SendNewPhoneNumber, o.id)(a);
|
|
838
|
+
}), i.on(pe.SendOtpCode, (a) => {
|
|
839
|
+
this.createIntermediaryEvent(pe.SendOtpCode, o.id)(a);
|
|
840
|
+
}), i.on(pe.StartEditPhoneNumber, () => {
|
|
841
|
+
this.createIntermediaryEvent(pe.StartEditPhoneNumber, o.id)();
|
|
842
|
+
}), i.on(pe.Cancel, () => {
|
|
843
|
+
this.createIntermediaryEvent(pe.Cancel, o.id)();
|
|
844
|
+
}), i.on(fe.VerifyEmailOtp, (a) => {
|
|
845
|
+
this.createIntermediaryEvent(fe.VerifyEmailOtp, o.id)(a);
|
|
846
|
+
})), i;
|
|
847
|
+
}
|
|
848
|
+
recoverAccount(t) {
|
|
849
|
+
let { email: r, showUI: o } = t, i = x(this.sdk.testMode ? L.RecoverAccountTestMode : L.RecoverAccount, [{ email: r, showUI: o }]), a = this.request(i);
|
|
850
|
+
return !o && a && (a.on(me.Cancel, () => {
|
|
851
|
+
this.createIntermediaryEvent(me.Cancel, i.id)();
|
|
852
|
+
}), a.on(me.ResendSms, () => {
|
|
853
|
+
this.createIntermediaryEvent(me.ResendSms, i.id)();
|
|
854
|
+
}), a.on(me.VerifyOtp, (p) => {
|
|
855
|
+
this.createIntermediaryEvent(me.VerifyOtp, i.id)(p);
|
|
856
|
+
}), a.on(me.UpdateEmail, (p) => {
|
|
857
|
+
this.createIntermediaryEvent(me.UpdateEmail, i.id)(p);
|
|
858
|
+
}), a.on(ae.Cancel, () => {
|
|
859
|
+
this.createIntermediaryEvent(ae.Cancel, i.id)();
|
|
860
|
+
}), a.on(ae.RetryWithNewEmail, (p) => {
|
|
861
|
+
this.createIntermediaryEvent(ae.RetryWithNewEmail, i.id)(p);
|
|
862
|
+
}), a.on(ae.VerifyEmailOtp, (p) => {
|
|
863
|
+
this.createIntermediaryEvent(ae.VerifyEmailOtp, i.id)(p);
|
|
864
|
+
})), a;
|
|
865
|
+
}
|
|
866
|
+
revealPrivateKey() {
|
|
867
|
+
let t = x(L.RevealPK);
|
|
868
|
+
return this.request(t);
|
|
869
|
+
}
|
|
870
|
+
onUserLoggedOut(t) {
|
|
871
|
+
this.userLoggedOutCallbacks.push(t);
|
|
872
|
+
}
|
|
873
|
+
enableMFA(t) {
|
|
874
|
+
let { showUI: r = !0 } = t, o = x(L.EnableMFA, [{ showUI: r }]), i = this.request(o);
|
|
875
|
+
return !r && i && (i.on(qe.VerifyMFACode, (a) => {
|
|
876
|
+
this.createIntermediaryEvent(qe.VerifyMFACode, o.id)(a);
|
|
877
|
+
}), i.on(qe.Cancel, () => {
|
|
878
|
+
this.createIntermediaryEvent(qe.Cancel, o.id)();
|
|
879
|
+
})), i;
|
|
880
|
+
}
|
|
881
|
+
disableMFA(t) {
|
|
882
|
+
let { showUI: r = !0 } = t, o = x(L.DisableMFA, [{ showUI: r }]), i = this.request(o);
|
|
883
|
+
return !r && i && (i.on(Se.VerifyMFACode, (a) => {
|
|
884
|
+
this.createIntermediaryEvent(Se.VerifyMFACode, o.id)(a);
|
|
885
|
+
}), i.on(Se.LostDevice, (a) => {
|
|
886
|
+
this.createIntermediaryEvent(Se.LostDevice, o.id)(a);
|
|
887
|
+
}), i.on(Se.Cancel, () => {
|
|
888
|
+
this.createIntermediaryEvent(Se.Cancel, o.id)();
|
|
889
|
+
})), i;
|
|
890
|
+
}
|
|
891
|
+
emitUserLoggedOut(t) {
|
|
892
|
+
this.userLoggedOutCallbacks.forEach((r) => {
|
|
893
|
+
r(t);
|
|
894
|
+
});
|
|
895
|
+
}
|
|
896
|
+
localForageIsLoggedInKey = "magic_auth_is_logged_in";
|
|
897
|
+
userLoggedOutCallbacks = [];
|
|
898
|
+
}, qi = class extends Ue {
|
|
899
|
+
connectWithUI(e) {
|
|
900
|
+
let t = ve(async (r, o) => {
|
|
901
|
+
try {
|
|
902
|
+
let i = x(L.Login, [{ enabledWallets: this.sdk.thirdPartyWallets.enabledWallets, ...e }]), a = this.request(i);
|
|
903
|
+
this.sdk.thirdPartyWallets.eventListeners.forEach(({ event: f, callback: A }) => {
|
|
904
|
+
a.on(f, () => A(i.id));
|
|
905
|
+
}), a.on("id-token-created", (f) => {
|
|
906
|
+
t.emit("id-token-created", f);
|
|
907
|
+
});
|
|
908
|
+
let p = await a;
|
|
909
|
+
p.error && o(p), r(p);
|
|
910
|
+
} catch (i) {
|
|
911
|
+
o(i);
|
|
912
|
+
}
|
|
913
|
+
});
|
|
914
|
+
return t;
|
|
915
|
+
}
|
|
916
|
+
showUI(e) {
|
|
917
|
+
return this.request(x(L.ShowUI, [e]));
|
|
918
|
+
}
|
|
919
|
+
showAddress() {
|
|
920
|
+
return this.request(x(L.ShowAddress));
|
|
921
|
+
}
|
|
922
|
+
showSendTokensUI() {
|
|
923
|
+
return this.request(x(L.ShowSendTokensUI));
|
|
924
|
+
}
|
|
925
|
+
showOnRamp() {
|
|
926
|
+
return this.request(x(L.ShowOnRamp));
|
|
927
|
+
}
|
|
928
|
+
showNFTs() {
|
|
929
|
+
return this.request(x(L.ShowNFTs));
|
|
930
|
+
}
|
|
931
|
+
showBalances() {
|
|
932
|
+
return this.request(x(L.ShowBalances));
|
|
933
|
+
}
|
|
934
|
+
sendGaslessTransaction(e, t) {
|
|
935
|
+
return this.request(x(L.SendGaslessTransaction, [e, t]));
|
|
936
|
+
}
|
|
937
|
+
}, Vi = class extends Ue {
|
|
938
|
+
eventListeners = [];
|
|
939
|
+
enabledWallets = {};
|
|
940
|
+
isConnected = !1;
|
|
941
|
+
resetThirdPartyWalletState() {
|
|
942
|
+
localStorage.removeItem(Ie.PROVIDER), localStorage.removeItem(Ie.ADDRESS), localStorage.removeItem(Ie.CHAIN_ID), this.isConnected = !1;
|
|
943
|
+
}
|
|
944
|
+
requestOverride(e) {
|
|
945
|
+
if (e.method === L.Login) return this.resetThirdPartyWalletState(), super.request(e);
|
|
946
|
+
if (e.method === L.GetInfo) return this.getInfo(e);
|
|
947
|
+
if (e.method === L.IsLoggedIn) return this.isLoggedIn(e);
|
|
948
|
+
if (e.method === L.Logout) return this.logout(e);
|
|
949
|
+
switch (localStorage.getItem(Ie.PROVIDER)) {
|
|
950
|
+
case "web3modal":
|
|
951
|
+
return this.web3modalRequest(e);
|
|
952
|
+
default:
|
|
953
|
+
return this.resetThirdPartyWalletState(), super.request(e);
|
|
954
|
+
}
|
|
955
|
+
}
|
|
956
|
+
isLoggedIn(e) {
|
|
957
|
+
switch (localStorage.getItem(Ie.PROVIDER)) {
|
|
958
|
+
case "web3modal":
|
|
959
|
+
return this.web3modalIsLoggedIn();
|
|
960
|
+
default:
|
|
961
|
+
return this.resetThirdPartyWalletState(), super.request(e);
|
|
962
|
+
}
|
|
963
|
+
}
|
|
964
|
+
getInfo(e) {
|
|
965
|
+
switch (localStorage.getItem(Ie.PROVIDER)) {
|
|
966
|
+
case "web3modal":
|
|
967
|
+
return this.web3modalGetInfo();
|
|
968
|
+
default:
|
|
969
|
+
return this.resetThirdPartyWalletState(), super.request(e);
|
|
970
|
+
}
|
|
971
|
+
}
|
|
972
|
+
logout(e) {
|
|
973
|
+
let t = localStorage.getItem(Ie.PROVIDER);
|
|
974
|
+
switch (this.resetThirdPartyWalletState(), t) {
|
|
975
|
+
case "web3modal":
|
|
976
|
+
return this.web3modalLogout();
|
|
977
|
+
default:
|
|
978
|
+
return super.request(e);
|
|
979
|
+
}
|
|
980
|
+
}
|
|
981
|
+
web3modalRequest(e) {
|
|
982
|
+
return ve((t, r) => {
|
|
983
|
+
this.sdk.web3modal.modal.getWalletProvider().request(e).then(t).catch(r);
|
|
984
|
+
});
|
|
985
|
+
}
|
|
986
|
+
web3modalIsLoggedIn() {
|
|
987
|
+
return ve((e) => {
|
|
988
|
+
let t = this.sdk.web3modal.modal.getStatus();
|
|
989
|
+
if (t === "connected" && e(!0), t === "disconnected" && (this.resetThirdPartyWalletState(), e(!1)), t === "reconnecting") {
|
|
990
|
+
let r = this.sdk.web3modal.modal.subscribeProvider(({ status: o }) => {
|
|
991
|
+
o === "connected" && (r(), e(!0)), o === "disconnected" && (r(), this.resetThirdPartyWalletState(), e(!1));
|
|
992
|
+
});
|
|
993
|
+
}
|
|
994
|
+
});
|
|
995
|
+
}
|
|
996
|
+
formatWeb3modalGetInfoResponse() {
|
|
997
|
+
let e = this.sdk.web3modal.modal.getWalletInfo()?.name, t = this.sdk.web3modal.modal.getAddress();
|
|
998
|
+
return { publicAddress: t, email: null, issuer: `did:ethr:${t}`, phoneNumber: null, isMfaEnabled: !1, recoveryFactors: [], walletType: e || "web3modal", firstLoginAt: null };
|
|
999
|
+
}
|
|
1000
|
+
web3modalGetInfo() {
|
|
1001
|
+
return ve((e, t) => {
|
|
1002
|
+
let r = this.sdk.web3modal.modal.getStatus();
|
|
1003
|
+
if (r === "connected" && e(this.formatWeb3modalGetInfoResponse()), r === "disconnected" && (this.resetThirdPartyWalletState(), t("Magic RPC Error: [-32603] Internal error: User denied account access.")), r === "reconnecting") {
|
|
1004
|
+
let o = this.sdk.web3modal.modal.subscribeProvider(({ status: i }) => {
|
|
1005
|
+
i === "connected" && (o(), e(this.formatWeb3modalGetInfoResponse())), i === "disconnected" && (o(), this.resetThirdPartyWalletState(), t("Magic RPC Error: [-32603] Internal error: User denied account access."));
|
|
1006
|
+
});
|
|
1007
|
+
}
|
|
1008
|
+
});
|
|
1009
|
+
}
|
|
1010
|
+
web3modalLogout() {
|
|
1011
|
+
return ve(async (e) => {
|
|
1012
|
+
try {
|
|
1013
|
+
await this.sdk.web3modal.modal.disconnect();
|
|
1014
|
+
} catch (t) {
|
|
1015
|
+
console.error(t);
|
|
1016
|
+
}
|
|
1017
|
+
e(!0);
|
|
1018
|
+
});
|
|
1019
|
+
}
|
|
1020
|
+
}, { createBoundEmitterMethod: nt, createChainingEmitterMethod: Me } = $r(), Hi = class extends Ue {
|
|
1021
|
+
isMagic = !0;
|
|
1022
|
+
sendAsync(e, t) {
|
|
1023
|
+
if (!t) throw li({ procedure: "Magic.rpcProvider.sendAsync", argument: 1, expected: "function", received: t === null ? "null" : typeof t });
|
|
1024
|
+
if (Array.isArray(e)) this.overlay.post(ze.MAGIC_HANDLE_REQUEST, e.map((r) => {
|
|
1025
|
+
let o = Tt(r);
|
|
1026
|
+
return this.prefixPayloadMethodForTestMode(o), o;
|
|
1027
|
+
})).then((r) => {
|
|
1028
|
+
t(null, r.map((o) => ({ ...o.payload, error: o.hasError ? new Ot(o.payload.error) : null })));
|
|
1029
|
+
});
|
|
1030
|
+
else {
|
|
1031
|
+
let r = Tt(e);
|
|
1032
|
+
this.prefixPayloadMethodForTestMode(r), this.overlay.post(ze.MAGIC_HANDLE_REQUEST, r).then((o) => {
|
|
1033
|
+
t(o.hasError ? new Ot(o.payload.error) : null, o.payload);
|
|
1034
|
+
});
|
|
1035
|
+
}
|
|
1036
|
+
}
|
|
1037
|
+
send(e, t) {
|
|
1038
|
+
if (typeof e == "string") {
|
|
1039
|
+
let o = x(e, Array.isArray(t) ? t : []);
|
|
1040
|
+
return this.request(o);
|
|
1041
|
+
}
|
|
1042
|
+
if (Array.isArray(e) || t) {
|
|
1043
|
+
this.sendAsync(e, t);
|
|
1044
|
+
return;
|
|
1045
|
+
}
|
|
1046
|
+
let r = di();
|
|
1047
|
+
return r.log(), new Mr(e).applyError({ code: -32603, message: r.rawMessage }).payload;
|
|
1048
|
+
}
|
|
1049
|
+
enable() {
|
|
1050
|
+
let e = x(L.Login);
|
|
1051
|
+
return this.request(e);
|
|
1052
|
+
}
|
|
1053
|
+
request(e) {
|
|
1054
|
+
return this.prefixPayloadMethodForTestMode(e), super.request(e);
|
|
1055
|
+
}
|
|
1056
|
+
prefixPayloadMethodForTestMode(e) {
|
|
1057
|
+
let t = "testMode/eth/";
|
|
1058
|
+
this.sdk.testMode && (e.method = `${t}${e.method}`);
|
|
1059
|
+
}
|
|
1060
|
+
on = Me("on", this);
|
|
1061
|
+
once = Me("once", this);
|
|
1062
|
+
addListener = Me("addListener", this);
|
|
1063
|
+
off = Me("off", this);
|
|
1064
|
+
removeListener = Me("removeListener", this);
|
|
1065
|
+
removeAllListeners = Me("removeAllListeners", this);
|
|
1066
|
+
emit = nt("emit");
|
|
1067
|
+
eventNames = nt("eventNames");
|
|
1068
|
+
listeners = nt("listeners");
|
|
1069
|
+
listenerCount = nt("listenerCount");
|
|
1070
|
+
}, zi = class extends Ue {
|
|
1071
|
+
purchase(e) {
|
|
1072
|
+
let t = x(L.NFTPurchase, [e]);
|
|
1073
|
+
return this.request(t);
|
|
1074
|
+
}
|
|
1075
|
+
checkout(e) {
|
|
1076
|
+
let t = this.sdk.thirdPartyWallets.isConnected, r = x(L.NFTCheckout, [{ ...e, walletProvider: t ? "web3modal" : "magic" }]), o = this.request(r);
|
|
1077
|
+
return t && (o.on(Ve.Initiated, async (i) => {
|
|
1078
|
+
try {
|
|
1079
|
+
let a = await this.request({ method: "eth_sendTransaction", params: [i] });
|
|
1080
|
+
this.createIntermediaryEvent(Ve.Success, r.id)(a);
|
|
1081
|
+
} catch {
|
|
1082
|
+
this.createIntermediaryEvent(Ve.Failure, r.id)();
|
|
1083
|
+
}
|
|
1084
|
+
}), o.on(Ve.Disconnect, () => {
|
|
1085
|
+
this.sdk.thirdPartyWallets.resetThirdPartyWalletState(), o.emit("disconnect");
|
|
1086
|
+
})), o;
|
|
1087
|
+
}
|
|
1088
|
+
transfer(e) {
|
|
1089
|
+
let t = x(L.NFTTransfer, [e]);
|
|
1090
|
+
return this.request(t);
|
|
1091
|
+
}
|
|
1092
|
+
};
|
|
1093
|
+
function hr(e) {
|
|
1094
|
+
return e.compat && e.compat[z.sdkName] != null ? typeof e.compat[z.sdkName] == "string" ? zo(Jo(z.version), e.compat[z.sdkName]) : !!e.compat[z.sdkName] : !0;
|
|
1095
|
+
}
|
|
1096
|
+
function Xi(e, t, r) {
|
|
1097
|
+
return !t && !r ? `${e}_eth_mainnet` : r ? `${e}_${JSON.stringify(r)}` : t ? typeof t == "string" ? `${e}_eth_${t}` : `${e}_${t.rpcUrl}_${t.chainId}_${t.chainType}` : `${e}_unknown`;
|
|
1098
|
+
}
|
|
1099
|
+
function Ki(e) {
|
|
1100
|
+
let t = e?.extensions ?? [], r = {}, o = [];
|
|
1101
|
+
if (Array.isArray(t) ? t.forEach((i) => {
|
|
1102
|
+
hr(i) ? (i.init(this), i.name && (this[i.name] = i), ct(i.config) || (r[i.name] = i.config)) : o.push(i);
|
|
1103
|
+
}) : Object.keys(t).forEach((i) => {
|
|
1104
|
+
if (hr(t[i])) {
|
|
1105
|
+
t[i].init(this);
|
|
1106
|
+
let a = t[i];
|
|
1107
|
+
this[i] = a, ct(a.config) || (r[t[i].name] = a.config);
|
|
1108
|
+
} else o.push(t[i]);
|
|
1109
|
+
}), o.length) throw ci(o);
|
|
1110
|
+
return r;
|
|
1111
|
+
}
|
|
1112
|
+
var Yi = class at {
|
|
1113
|
+
constructor(t, r) {
|
|
1114
|
+
if (this.apiKey = t, !t) throw ai();
|
|
1115
|
+
z.platform === "react-native" && r?.endpoint && fi().log();
|
|
1116
|
+
let { defaultEndpoint: o, version: i } = z;
|
|
1117
|
+
this.testMode = !!r?.testMode, this.useStorageCache = !!r?.useStorageCache, this.endpoint = ut(r?.endpoint ?? o).origin, this.auth = new Ui(this), this.user = new Bi(this), this.wallet = new qi(this), this.nft = new zi(this), this.thirdPartyWallets = new Vi(this), this.rpcProvider = new Hi(this);
|
|
1118
|
+
let a = Ki.call(this, r);
|
|
1119
|
+
this.parameters = ei({ API_KEY: this.apiKey, DOMAIN_ORIGIN: typeof window < "u" && window?.location ? window?.location.origin : "", ETH_NETWORK: r?.network, host: ut(this.endpoint).host, sdk: ii[z.sdkName], version: i, ext: ct(a) ? void 0 : a, locale: r?.locale || "en_US", authConfig: r?.authConfig ? { ...r.authConfig } : void 0, ...z.bundleId ? { bundleId: z.bundleId } : {}, meta: r?.meta }), this.networkHash = Xi(this.apiKey, r?.network, ct(a) ? void 0 : a), r?.deferPreload || this.preload();
|
|
1120
|
+
}
|
|
1121
|
+
static __overlays__ = /* @__PURE__ */ new Map();
|
|
1122
|
+
endpoint;
|
|
1123
|
+
parameters;
|
|
1124
|
+
networkHash;
|
|
1125
|
+
testMode;
|
|
1126
|
+
useStorageCache;
|
|
1127
|
+
auth;
|
|
1128
|
+
user;
|
|
1129
|
+
wallet;
|
|
1130
|
+
nft;
|
|
1131
|
+
thirdPartyWallets;
|
|
1132
|
+
rpcProvider;
|
|
1133
|
+
get overlay() {
|
|
1134
|
+
if (!at.__overlays__.has(this.parameters)) {
|
|
1135
|
+
let t = new z.ViewController(this.endpoint, this.parameters, this.networkHash);
|
|
1136
|
+
t.init(), at.__overlays__.set(this.parameters, t);
|
|
1137
|
+
}
|
|
1138
|
+
return at.__overlays__.get(this.parameters);
|
|
1139
|
+
}
|
|
1140
|
+
async preload() {
|
|
1141
|
+
await this.overlay.waitForReady();
|
|
1142
|
+
}
|
|
1143
|
+
};
|
|
1144
|
+
function Ji(e, t) {
|
|
1145
|
+
return t && Array.isArray(e) ? e.find((r) => r.id === t) : e;
|
|
1146
|
+
}
|
|
1147
|
+
function Qi(e, t) {
|
|
1148
|
+
let r = t.data.response?.id, o = Ji(e, r);
|
|
1149
|
+
if (r && o) {
|
|
1150
|
+
let i = new Mr(o).applyResult(t.data.response.result).applyError(t.data.response.error);
|
|
1151
|
+
return { id: r, response: i };
|
|
1152
|
+
}
|
|
1153
|
+
return {};
|
|
1154
|
+
}
|
|
1155
|
+
async function Zi(e, t, r) {
|
|
1156
|
+
let o = await ce("rt"), i;
|
|
1157
|
+
if (z.platform === "web") try {
|
|
1158
|
+
i = await ce("jwt") ?? await Ni();
|
|
1159
|
+
} catch (f) {
|
|
1160
|
+
console.error("webcrypto error", f);
|
|
1161
|
+
}
|
|
1162
|
+
let a = { msgType: e, payload: t };
|
|
1163
|
+
i && (a.jwt = i), i && o && (a.rt = o);
|
|
1164
|
+
let p = await Wi(r);
|
|
1165
|
+
return p && (a.deviceShare = p), a;
|
|
1166
|
+
}
|
|
1167
|
+
async function ea(e) {
|
|
1168
|
+
e.data.rt && await _e("rt", e.data.rt);
|
|
1169
|
+
}
|
|
1170
|
+
function ta(e, t) {
|
|
1171
|
+
let r = null;
|
|
1172
|
+
return function(...o) {
|
|
1173
|
+
r && clearTimeout(r), r = setTimeout(() => {
|
|
1174
|
+
e(...o);
|
|
1175
|
+
}, t);
|
|
1176
|
+
};
|
|
1177
|
+
}
|
|
1178
|
+
var ra = 1e3, jr = 60 * ra, pr = 5 * jr, na = 60 * jr, oa = class {
|
|
1179
|
+
constructor(e, t, r) {
|
|
1180
|
+
this.endpoint = e, this.parameters = t, this.networkHash = r, this.listen();
|
|
1181
|
+
}
|
|
1182
|
+
isReadyForRequest = !1;
|
|
1183
|
+
messageHandlers = /* @__PURE__ */ new Set();
|
|
1184
|
+
isConnectedToInternet = !0;
|
|
1185
|
+
lastPongTime = null;
|
|
1186
|
+
heartbeatIntervalTimer = null;
|
|
1187
|
+
heartbeatDebounce = ta(() => {
|
|
1188
|
+
this.endpoint === "https://auth.magic.link/" && this.heartBeatCheck();
|
|
1189
|
+
}, na);
|
|
1190
|
+
async post(e, t) {
|
|
1191
|
+
return Pr(async (r, o) => {
|
|
1192
|
+
if (!this.isConnectedToInternet) {
|
|
1193
|
+
let y = Ar();
|
|
1194
|
+
o(y);
|
|
1195
|
+
}
|
|
1196
|
+
await this.checkRelayerExistsInDOM() || (this.isReadyForRequest = !1, await this.reloadRelayer()), this.isReadyForRequest || await this.waitForReady();
|
|
1197
|
+
let i = [], a = Array.isArray(t) ? t.map((y) => y.id) : [], p = await Zi(`${e}-${this.parameters}`, t, this.networkHash);
|
|
1198
|
+
await this._post(p);
|
|
1199
|
+
let f = (y) => (g) => {
|
|
1200
|
+
let { id: h, response: S } = Qi(t, g);
|
|
1201
|
+
if (ea(g), S?.payload.error?.message === "User denied account access.") kr();
|
|
1202
|
+
else if (g.data.deviceShare) {
|
|
1203
|
+
let { deviceShare: P } = g.data;
|
|
1204
|
+
Gi(P, this.networkHash);
|
|
1205
|
+
}
|
|
1206
|
+
h && S && Array.isArray(t) && a.includes(h) ? (i.push(S), i.length === t.length && (y(), r(i))) : h && S && !Array.isArray(t) && h === t.id && (y(), r(S));
|
|
1207
|
+
}, A = this.on(we.MAGIC_HANDLE_RESPONSE, f(() => A()));
|
|
1208
|
+
});
|
|
1209
|
+
}
|
|
1210
|
+
on(e, t) {
|
|
1211
|
+
let r = t.bind(window), o = (i) => {
|
|
1212
|
+
i.data.msgType === `${e}-${this.parameters}` && r(i);
|
|
1213
|
+
};
|
|
1214
|
+
return this.messageHandlers.add(o), () => this.messageHandlers.delete(o);
|
|
1215
|
+
}
|
|
1216
|
+
waitForReady() {
|
|
1217
|
+
return new Promise((e) => {
|
|
1218
|
+
let t = this.on(we.MAGIC_OVERLAY_READY, () => {
|
|
1219
|
+
this.isReadyForRequest = !0, e(), t();
|
|
1220
|
+
});
|
|
1221
|
+
});
|
|
1222
|
+
}
|
|
1223
|
+
listen() {
|
|
1224
|
+
this.on(we.MAGIC_HIDE_OVERLAY, () => {
|
|
1225
|
+
this.hideOverlay();
|
|
1226
|
+
}), this.on(we.MAGIC_SHOW_OVERLAY, () => {
|
|
1227
|
+
this.showOverlay();
|
|
1228
|
+
}), this.on(we.MAGIC_SEND_PRODUCT_ANNOUNCEMENT, (e) => {
|
|
1229
|
+
e.data.response.result.product_announcement && new Ye(ke.ProductAnnouncement, e.data.response.result.product_announcement).log();
|
|
1230
|
+
});
|
|
1231
|
+
}
|
|
1232
|
+
heartBeatCheck() {
|
|
1233
|
+
let e = !0, t = async () => {
|
|
1234
|
+
let r = { msgType: `${ze.MAGIC_PING}-${this.parameters}`, payload: [] };
|
|
1235
|
+
await this._post(r);
|
|
1236
|
+
};
|
|
1237
|
+
this.heartbeatIntervalTimer = setInterval(async () => {
|
|
1238
|
+
if (this.lastPongTime) {
|
|
1239
|
+
if (Date.now() - this.lastPongTime > pr * 2) {
|
|
1240
|
+
this.reloadRelayer(), e = !0;
|
|
1241
|
+
return;
|
|
1242
|
+
}
|
|
1243
|
+
} else if (!e) {
|
|
1244
|
+
this.reloadRelayer(), e = !0;
|
|
1245
|
+
return;
|
|
1246
|
+
}
|
|
1247
|
+
await t(), e = !1;
|
|
1248
|
+
}, pr);
|
|
1249
|
+
}
|
|
1250
|
+
stopHeartBeat() {
|
|
1251
|
+
this.heartbeatDebounce(), this.lastPongTime = null, this.heartbeatIntervalTimer && (clearInterval(this.heartbeatIntervalTimer), this.heartbeatIntervalTimer = null);
|
|
1252
|
+
}
|
|
1253
|
+
}, ia = Object.create, xr = Object.defineProperty, aa = Object.getOwnPropertyDescriptor, sa = Object.getOwnPropertyNames, ca = Object.getPrototypeOf, la = Object.prototype.hasOwnProperty, ot = ((e) => typeof require < "u" ? require : typeof Proxy < "u" ? new Proxy(e, { get: (t, r) => (typeof require < "u" ? require : t)[r] }) : e)(function(e) {
|
|
1254
|
+
if (typeof require < "u") return require.apply(this, arguments);
|
|
1255
|
+
throw Error('Dynamic require of "' + e + '" is not supported');
|
|
1256
|
+
}), Fr = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), ua = (e, t, r, o) => {
|
|
1257
|
+
if (t && typeof t == "object" || typeof t == "function") for (let i of sa(t)) !la.call(e, i) && i !== r && xr(e, i, { get: () => t[i], enumerable: !(o = aa(t, i)) || o.enumerable });
|
|
1258
|
+
return e;
|
|
1259
|
+
}, Gr = (e, t, r) => (r = e != null ? ia(ca(e)) : {}, ua(!e || !e.__esModule ? xr(r, "default", { value: e, enumerable: !0 }) : r, e)), da = Fr((e, t) => {
|
|
1260
|
+
(function(r) {
|
|
1261
|
+
if (typeof e == "object" && typeof t < "u") t.exports = r();
|
|
1262
|
+
else if (typeof define == "function" && define.amd) define([], r);
|
|
1263
|
+
else {
|
|
1264
|
+
var o;
|
|
1265
|
+
typeof window < "u" ? o = window : typeof global < "u" ? o = global : typeof self < "u" ? o = self : o = this, o.localforage = r();
|
|
1266
|
+
}
|
|
1267
|
+
})(function() {
|
|
1268
|
+
return (function r(o, i, a) {
|
|
1269
|
+
function p(y, g) {
|
|
1270
|
+
if (!i[y]) {
|
|
1271
|
+
if (!o[y]) {
|
|
1272
|
+
var h = typeof ot == "function" && ot;
|
|
1273
|
+
if (!g && h) return h(y, !0);
|
|
1274
|
+
if (f) return f(y, !0);
|
|
1275
|
+
var S = new Error("Cannot find module '" + y + "'");
|
|
1276
|
+
throw S.code = "MODULE_NOT_FOUND", S;
|
|
1277
|
+
}
|
|
1278
|
+
var P = i[y] = { exports: {} };
|
|
1279
|
+
o[y][0].call(P.exports, function(k) {
|
|
1280
|
+
var F = o[y][1][k];
|
|
1281
|
+
return p(F || k);
|
|
1282
|
+
}, P, P.exports, r, o, i, a);
|
|
1283
|
+
}
|
|
1284
|
+
return i[y].exports;
|
|
1285
|
+
}
|
|
1286
|
+
for (var f = typeof ot == "function" && ot, A = 0; A < a.length; A++) p(a[A]);
|
|
1287
|
+
return p;
|
|
1288
|
+
})({ 1: [function(r, o, i) {
|
|
1289
|
+
(function(a) {
|
|
1290
|
+
var p = a.MutationObserver || a.WebKitMutationObserver, f;
|
|
1291
|
+
if (p) {
|
|
1292
|
+
var A = 0, y = new p(k), g = a.document.createTextNode("");
|
|
1293
|
+
y.observe(g, { characterData: !0 }), f = function() {
|
|
1294
|
+
g.data = A = ++A % 2;
|
|
1295
|
+
};
|
|
1296
|
+
} else if (!a.setImmediate && typeof a.MessageChannel < "u") {
|
|
1297
|
+
var h = new a.MessageChannel();
|
|
1298
|
+
h.port1.onmessage = k, f = function() {
|
|
1299
|
+
h.port2.postMessage(0);
|
|
1300
|
+
};
|
|
1301
|
+
} else "document" in a && "onreadystatechange" in a.document.createElement("script") ? f = function() {
|
|
1302
|
+
var O = a.document.createElement("script");
|
|
1303
|
+
O.onreadystatechange = function() {
|
|
1304
|
+
k(), O.onreadystatechange = null, O.parentNode.removeChild(O), O = null;
|
|
1305
|
+
}, a.document.documentElement.appendChild(O);
|
|
1306
|
+
} : f = function() {
|
|
1307
|
+
setTimeout(k, 0);
|
|
1308
|
+
};
|
|
1309
|
+
var S, P = [];
|
|
1310
|
+
function k() {
|
|
1311
|
+
S = !0;
|
|
1312
|
+
for (var O, Y, q = P.length; q; ) {
|
|
1313
|
+
for (Y = P, P = [], O = -1; ++O < q; ) Y[O]();
|
|
1314
|
+
q = P.length;
|
|
1315
|
+
}
|
|
1316
|
+
S = !1;
|
|
1317
|
+
}
|
|
1318
|
+
o.exports = F;
|
|
1319
|
+
function F(O) {
|
|
1320
|
+
P.push(O) === 1 && !S && f();
|
|
1321
|
+
}
|
|
1322
|
+
}).call(this, typeof global < "u" ? global : typeof self < "u" ? self : typeof window < "u" ? window : {});
|
|
1323
|
+
}, {}], 2: [function(r, o, i) {
|
|
1324
|
+
var a = r(1);
|
|
1325
|
+
function p() {
|
|
1326
|
+
}
|
|
1327
|
+
var f = {}, A = ["REJECTED"], y = ["FULFILLED"], g = ["PENDING"];
|
|
1328
|
+
o.exports = h;
|
|
1329
|
+
function h(N) {
|
|
1330
|
+
if (typeof N != "function") throw new TypeError("resolver must be a function");
|
|
1331
|
+
this.state = g, this.queue = [], this.outcome = void 0, N !== p && F(this, N);
|
|
1332
|
+
}
|
|
1333
|
+
h.prototype.catch = function(N) {
|
|
1334
|
+
return this.then(null, N);
|
|
1335
|
+
}, h.prototype.then = function(N, j) {
|
|
1336
|
+
if (typeof N != "function" && this.state === y || typeof j != "function" && this.state === A) return this;
|
|
1337
|
+
var D = new this.constructor(p);
|
|
1338
|
+
if (this.state !== g) {
|
|
1339
|
+
var G = this.state === y ? N : j;
|
|
1340
|
+
P(D, G, this.outcome);
|
|
1341
|
+
} else this.queue.push(new S(D, N, j));
|
|
1342
|
+
return D;
|
|
1343
|
+
};
|
|
1344
|
+
function S(N, j, D) {
|
|
1345
|
+
this.promise = N, typeof j == "function" && (this.onFulfilled = j, this.callFulfilled = this.otherCallFulfilled), typeof D == "function" && (this.onRejected = D, this.callRejected = this.otherCallRejected);
|
|
1346
|
+
}
|
|
1347
|
+
S.prototype.callFulfilled = function(N) {
|
|
1348
|
+
f.resolve(this.promise, N);
|
|
1349
|
+
}, S.prototype.otherCallFulfilled = function(N) {
|
|
1350
|
+
P(this.promise, this.onFulfilled, N);
|
|
1351
|
+
}, S.prototype.callRejected = function(N) {
|
|
1352
|
+
f.reject(this.promise, N);
|
|
1353
|
+
}, S.prototype.otherCallRejected = function(N) {
|
|
1354
|
+
P(this.promise, this.onRejected, N);
|
|
1355
|
+
};
|
|
1356
|
+
function P(N, j, D) {
|
|
1357
|
+
a(function() {
|
|
1358
|
+
var G;
|
|
1359
|
+
try {
|
|
1360
|
+
G = j(D);
|
|
1361
|
+
} catch (Q) {
|
|
1362
|
+
return f.reject(N, Q);
|
|
1363
|
+
}
|
|
1364
|
+
G === N ? f.reject(N, new TypeError("Cannot resolve promise with itself")) : f.resolve(N, G);
|
|
1365
|
+
});
|
|
1366
|
+
}
|
|
1367
|
+
f.resolve = function(N, j) {
|
|
1368
|
+
var D = O(k, j);
|
|
1369
|
+
if (D.status === "error") return f.reject(N, D.value);
|
|
1370
|
+
var G = D.value;
|
|
1371
|
+
if (G) F(N, G);
|
|
1372
|
+
else {
|
|
1373
|
+
N.state = y, N.outcome = j;
|
|
1374
|
+
for (var Q = -1, re = N.queue.length; ++Q < re; ) N.queue[Q].callFulfilled(j);
|
|
1375
|
+
}
|
|
1376
|
+
return N;
|
|
1377
|
+
}, f.reject = function(N, j) {
|
|
1378
|
+
N.state = A, N.outcome = j;
|
|
1379
|
+
for (var D = -1, G = N.queue.length; ++D < G; ) N.queue[D].callRejected(j);
|
|
1380
|
+
return N;
|
|
1381
|
+
};
|
|
1382
|
+
function k(N) {
|
|
1383
|
+
var j = N && N.then;
|
|
1384
|
+
if (N && (typeof N == "object" || typeof N == "function") && typeof j == "function") return function() {
|
|
1385
|
+
j.apply(N, arguments);
|
|
1386
|
+
};
|
|
1387
|
+
}
|
|
1388
|
+
function F(N, j) {
|
|
1389
|
+
var D = !1;
|
|
1390
|
+
function G(ie) {
|
|
1391
|
+
D || (D = !0, f.reject(N, ie));
|
|
1392
|
+
}
|
|
1393
|
+
function Q(ie) {
|
|
1394
|
+
D || (D = !0, f.resolve(N, ie));
|
|
1395
|
+
}
|
|
1396
|
+
function re() {
|
|
1397
|
+
j(Q, G);
|
|
1398
|
+
}
|
|
1399
|
+
var oe = O(re);
|
|
1400
|
+
oe.status === "error" && G(oe.value);
|
|
1401
|
+
}
|
|
1402
|
+
function O(N, j) {
|
|
1403
|
+
var D = {};
|
|
1404
|
+
try {
|
|
1405
|
+
D.value = N(j), D.status = "success";
|
|
1406
|
+
} catch (G) {
|
|
1407
|
+
D.status = "error", D.value = G;
|
|
1408
|
+
}
|
|
1409
|
+
return D;
|
|
1410
|
+
}
|
|
1411
|
+
h.resolve = Y;
|
|
1412
|
+
function Y(N) {
|
|
1413
|
+
return N instanceof this ? N : f.resolve(new this(p), N);
|
|
1414
|
+
}
|
|
1415
|
+
h.reject = q;
|
|
1416
|
+
function q(N) {
|
|
1417
|
+
var j = new this(p);
|
|
1418
|
+
return f.reject(j, N);
|
|
1419
|
+
}
|
|
1420
|
+
h.all = V;
|
|
1421
|
+
function V(N) {
|
|
1422
|
+
var j = this;
|
|
1423
|
+
if (Object.prototype.toString.call(N) !== "[object Array]") return this.reject(new TypeError("must be an array"));
|
|
1424
|
+
var D = N.length, G = !1;
|
|
1425
|
+
if (!D) return this.resolve([]);
|
|
1426
|
+
for (var Q = new Array(D), re = 0, oe = -1, ie = new this(p); ++oe < D; ) ue(N[oe], oe);
|
|
1427
|
+
return ie;
|
|
1428
|
+
function ue(Ne, Oe) {
|
|
1429
|
+
j.resolve(Ne).then(je, function(ye) {
|
|
1430
|
+
G || (G = !0, f.reject(ie, ye));
|
|
1431
|
+
});
|
|
1432
|
+
function je(ye) {
|
|
1433
|
+
Q[Oe] = ye, ++re === D && !G && (G = !0, f.resolve(ie, Q));
|
|
1434
|
+
}
|
|
1435
|
+
}
|
|
1436
|
+
}
|
|
1437
|
+
h.race = le;
|
|
1438
|
+
function le(N) {
|
|
1439
|
+
var j = this;
|
|
1440
|
+
if (Object.prototype.toString.call(N) !== "[object Array]") return this.reject(new TypeError("must be an array"));
|
|
1441
|
+
var D = N.length, G = !1;
|
|
1442
|
+
if (!D) return this.resolve([]);
|
|
1443
|
+
for (var Q = -1, re = new this(p); ++Q < D; ) oe(N[Q]);
|
|
1444
|
+
return re;
|
|
1445
|
+
function oe(ie) {
|
|
1446
|
+
j.resolve(ie).then(function(ue) {
|
|
1447
|
+
G || (G = !0, f.resolve(re, ue));
|
|
1448
|
+
}, function(ue) {
|
|
1449
|
+
G || (G = !0, f.reject(re, ue));
|
|
1450
|
+
});
|
|
1451
|
+
}
|
|
1452
|
+
}
|
|
1453
|
+
}, { 1: 1 }], 3: [function(r, o, i) {
|
|
1454
|
+
(function(a) {
|
|
1455
|
+
typeof a.Promise != "function" && (a.Promise = r(2));
|
|
1456
|
+
}).call(this, typeof global < "u" ? global : typeof self < "u" ? self : typeof window < "u" ? window : {});
|
|
1457
|
+
}, { 2: 2 }], 4: [function(r, o, i) {
|
|
1458
|
+
var a = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(n) {
|
|
1459
|
+
return typeof n;
|
|
1460
|
+
} : function(n) {
|
|
1461
|
+
return n && typeof Symbol == "function" && n.constructor === Symbol && n !== Symbol.prototype ? "symbol" : typeof n;
|
|
1462
|
+
};
|
|
1463
|
+
function p(n, s) {
|
|
1464
|
+
if (!(n instanceof s)) throw new TypeError("Cannot call a class as a function");
|
|
1465
|
+
}
|
|
1466
|
+
function f() {
|
|
1467
|
+
try {
|
|
1468
|
+
if (typeof indexedDB < "u") return indexedDB;
|
|
1469
|
+
if (typeof webkitIndexedDB < "u") return webkitIndexedDB;
|
|
1470
|
+
if (typeof mozIndexedDB < "u") return mozIndexedDB;
|
|
1471
|
+
if (typeof OIndexedDB < "u") return OIndexedDB;
|
|
1472
|
+
if (typeof msIndexedDB < "u") return msIndexedDB;
|
|
1473
|
+
} catch {
|
|
1474
|
+
return;
|
|
1475
|
+
}
|
|
1476
|
+
}
|
|
1477
|
+
var A = f();
|
|
1478
|
+
function y() {
|
|
1479
|
+
try {
|
|
1480
|
+
if (!A || !A.open) return !1;
|
|
1481
|
+
var n = typeof openDatabase < "u" && /(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent) && !/Chrome/.test(navigator.userAgent) && !/BlackBerry/.test(navigator.platform), s = typeof fetch == "function" && fetch.toString().indexOf("[native code") !== -1;
|
|
1482
|
+
return (!n || s) && typeof indexedDB < "u" && typeof IDBKeyRange < "u";
|
|
1483
|
+
} catch {
|
|
1484
|
+
return !1;
|
|
1485
|
+
}
|
|
1486
|
+
}
|
|
1487
|
+
function g(n, s) {
|
|
1488
|
+
n = n || [], s = s || {};
|
|
1489
|
+
try {
|
|
1490
|
+
return new Blob(n, s);
|
|
1491
|
+
} catch (d) {
|
|
1492
|
+
if (d.name !== "TypeError") throw d;
|
|
1493
|
+
for (var c = typeof BlobBuilder < "u" ? BlobBuilder : typeof MSBlobBuilder < "u" ? MSBlobBuilder : typeof MozBlobBuilder < "u" ? MozBlobBuilder : WebKitBlobBuilder, u = new c(), l = 0; l < n.length; l += 1) u.append(n[l]);
|
|
1494
|
+
return u.getBlob(s.type);
|
|
1495
|
+
}
|
|
1496
|
+
}
|
|
1497
|
+
typeof Promise > "u" && r(3);
|
|
1498
|
+
var h = Promise;
|
|
1499
|
+
function S(n, s) {
|
|
1500
|
+
s && n.then(function(c) {
|
|
1501
|
+
s(null, c);
|
|
1502
|
+
}, function(c) {
|
|
1503
|
+
s(c);
|
|
1504
|
+
});
|
|
1505
|
+
}
|
|
1506
|
+
function P(n, s, c) {
|
|
1507
|
+
typeof s == "function" && n.then(s), typeof c == "function" && n.catch(c);
|
|
1508
|
+
}
|
|
1509
|
+
function k(n) {
|
|
1510
|
+
return typeof n != "string" && (console.warn(n + " used as a key, but it is not a string."), n = String(n)), n;
|
|
1511
|
+
}
|
|
1512
|
+
function F() {
|
|
1513
|
+
if (arguments.length && typeof arguments[arguments.length - 1] == "function") return arguments[arguments.length - 1];
|
|
1514
|
+
}
|
|
1515
|
+
var O = "local-forage-detect-blob-support", Y = void 0, q = {}, V = Object.prototype.toString, le = "readonly", N = "readwrite";
|
|
1516
|
+
function j(n) {
|
|
1517
|
+
for (var s = n.length, c = new ArrayBuffer(s), u = new Uint8Array(c), l = 0; l < s; l++) u[l] = n.charCodeAt(l);
|
|
1518
|
+
return c;
|
|
1519
|
+
}
|
|
1520
|
+
function D(n) {
|
|
1521
|
+
return new h(function(s) {
|
|
1522
|
+
var c = n.transaction(O, N), u = g([""]);
|
|
1523
|
+
c.objectStore(O).put(u, "key"), c.onabort = function(l) {
|
|
1524
|
+
l.preventDefault(), l.stopPropagation(), s(!1);
|
|
1525
|
+
}, c.oncomplete = function() {
|
|
1526
|
+
var l = navigator.userAgent.match(/Chrome\/(\d+)/), d = navigator.userAgent.match(/Edge\//);
|
|
1527
|
+
s(d || !l || parseInt(l[1], 10) >= 43);
|
|
1528
|
+
};
|
|
1529
|
+
}).catch(function() {
|
|
1530
|
+
return !1;
|
|
1531
|
+
});
|
|
1532
|
+
}
|
|
1533
|
+
function G(n) {
|
|
1534
|
+
return typeof Y == "boolean" ? h.resolve(Y) : D(n).then(function(s) {
|
|
1535
|
+
return Y = s, Y;
|
|
1536
|
+
});
|
|
1537
|
+
}
|
|
1538
|
+
function Q(n) {
|
|
1539
|
+
var s = q[n.name], c = {};
|
|
1540
|
+
c.promise = new h(function(u, l) {
|
|
1541
|
+
c.resolve = u, c.reject = l;
|
|
1542
|
+
}), s.deferredOperations.push(c), s.dbReady ? s.dbReady = s.dbReady.then(function() {
|
|
1543
|
+
return c.promise;
|
|
1544
|
+
}) : s.dbReady = c.promise;
|
|
1545
|
+
}
|
|
1546
|
+
function re(n) {
|
|
1547
|
+
var s = q[n.name], c = s.deferredOperations.pop();
|
|
1548
|
+
if (c) return c.resolve(), c.promise;
|
|
1549
|
+
}
|
|
1550
|
+
function oe(n, s) {
|
|
1551
|
+
var c = q[n.name], u = c.deferredOperations.pop();
|
|
1552
|
+
if (u) return u.reject(s), u.promise;
|
|
1553
|
+
}
|
|
1554
|
+
function ie(n, s) {
|
|
1555
|
+
return new h(function(c, u) {
|
|
1556
|
+
if (q[n.name] = q[n.name] || M(), n.db) if (s) Q(n), n.db.close();
|
|
1557
|
+
else return c(n.db);
|
|
1558
|
+
var l = [n.name];
|
|
1559
|
+
s && l.push(n.version);
|
|
1560
|
+
var d = A.open.apply(A, l);
|
|
1561
|
+
s && (d.onupgradeneeded = function(v) {
|
|
1562
|
+
var E = d.result;
|
|
1563
|
+
try {
|
|
1564
|
+
E.createObjectStore(n.storeName), v.oldVersion <= 1 && E.createObjectStore(O);
|
|
1565
|
+
} catch (b) {
|
|
1566
|
+
if (b.name === "ConstraintError") console.warn('The database "' + n.name + '" has been upgraded from version ' + v.oldVersion + " to version " + v.newVersion + ', but the storage "' + n.storeName + '" already exists.');
|
|
1567
|
+
else throw b;
|
|
1568
|
+
}
|
|
1569
|
+
}), d.onerror = function(v) {
|
|
1570
|
+
v.preventDefault(), u(d.error);
|
|
1571
|
+
}, d.onsuccess = function() {
|
|
1572
|
+
var v = d.result;
|
|
1573
|
+
v.onversionchange = function(E) {
|
|
1574
|
+
E.target.close();
|
|
1575
|
+
}, c(v), re(n);
|
|
1576
|
+
};
|
|
1577
|
+
});
|
|
1578
|
+
}
|
|
1579
|
+
function ue(n) {
|
|
1580
|
+
return ie(n, !1);
|
|
1581
|
+
}
|
|
1582
|
+
function Ne(n) {
|
|
1583
|
+
return ie(n, !0);
|
|
1584
|
+
}
|
|
1585
|
+
function Oe(n, s) {
|
|
1586
|
+
if (!n.db) return !0;
|
|
1587
|
+
var c = !n.db.objectStoreNames.contains(n.storeName), u = n.version < n.db.version, l = n.version > n.db.version;
|
|
1588
|
+
if (u && (n.version !== s && console.warn('The database "' + n.name + `" can't be downgraded from version ` + n.db.version + " to version " + n.version + "."), n.version = n.db.version), l || c) {
|
|
1589
|
+
if (c) {
|
|
1590
|
+
var d = n.db.version + 1;
|
|
1591
|
+
d > n.version && (n.version = d);
|
|
1592
|
+
}
|
|
1593
|
+
return !0;
|
|
1594
|
+
}
|
|
1595
|
+
return !1;
|
|
1596
|
+
}
|
|
1597
|
+
function je(n) {
|
|
1598
|
+
return new h(function(s, c) {
|
|
1599
|
+
var u = new FileReader();
|
|
1600
|
+
u.onerror = c, u.onloadend = function(l) {
|
|
1601
|
+
var d = btoa(l.target.result || "");
|
|
1602
|
+
s({ __local_forage_encoded_blob: !0, data: d, type: n.type });
|
|
1603
|
+
}, u.readAsBinaryString(n);
|
|
1604
|
+
});
|
|
1605
|
+
}
|
|
1606
|
+
function ye(n) {
|
|
1607
|
+
var s = j(atob(n.data));
|
|
1608
|
+
return g([s], { type: n.type });
|
|
1609
|
+
}
|
|
1610
|
+
function m(n) {
|
|
1611
|
+
return n && n.__local_forage_encoded_blob;
|
|
1612
|
+
}
|
|
1613
|
+
function I(n) {
|
|
1614
|
+
var s = this, c = s._initReady().then(function() {
|
|
1615
|
+
var u = q[s._dbInfo.name];
|
|
1616
|
+
if (u && u.dbReady) return u.dbReady;
|
|
1617
|
+
});
|
|
1618
|
+
return P(c, n, n), c;
|
|
1619
|
+
}
|
|
1620
|
+
function R(n) {
|
|
1621
|
+
Q(n);
|
|
1622
|
+
for (var s = q[n.name], c = s.forages, u = 0; u < c.length; u++) {
|
|
1623
|
+
var l = c[u];
|
|
1624
|
+
l._dbInfo.db && (l._dbInfo.db.close(), l._dbInfo.db = null);
|
|
1625
|
+
}
|
|
1626
|
+
return n.db = null, ue(n).then(function(d) {
|
|
1627
|
+
return n.db = d, Oe(n) ? Ne(n) : d;
|
|
1628
|
+
}).then(function(d) {
|
|
1629
|
+
n.db = s.db = d;
|
|
1630
|
+
for (var v = 0; v < c.length; v++) c[v]._dbInfo.db = d;
|
|
1631
|
+
}).catch(function(d) {
|
|
1632
|
+
throw oe(n, d), d;
|
|
1633
|
+
});
|
|
1634
|
+
}
|
|
1635
|
+
function T(n, s, c, u) {
|
|
1636
|
+
u === void 0 && (u = 1);
|
|
1637
|
+
try {
|
|
1638
|
+
var l = n.db.transaction(n.storeName, s);
|
|
1639
|
+
c(null, l);
|
|
1640
|
+
} catch (d) {
|
|
1641
|
+
if (u > 0 && (!n.db || d.name === "InvalidStateError" || d.name === "NotFoundError")) return h.resolve().then(function() {
|
|
1642
|
+
if (!n.db || d.name === "NotFoundError" && !n.db.objectStoreNames.contains(n.storeName) && n.version <= n.db.version) return n.db && (n.version = n.db.version + 1), Ne(n);
|
|
1643
|
+
}).then(function() {
|
|
1644
|
+
return R(n).then(function() {
|
|
1645
|
+
T(n, s, c, u - 1);
|
|
1646
|
+
});
|
|
1647
|
+
}).catch(c);
|
|
1648
|
+
c(d);
|
|
1649
|
+
}
|
|
1650
|
+
}
|
|
1651
|
+
function M() {
|
|
1652
|
+
return { forages: [], db: null, dbReady: null, deferredOperations: [] };
|
|
1653
|
+
}
|
|
1654
|
+
function $(n) {
|
|
1655
|
+
var s = this, c = { db: null };
|
|
1656
|
+
if (n) for (var u in n) c[u] = n[u];
|
|
1657
|
+
var l = q[c.name];
|
|
1658
|
+
l || (l = M(), q[c.name] = l), l.forages.push(s), s._initReady || (s._initReady = s.ready, s.ready = I);
|
|
1659
|
+
var d = [];
|
|
1660
|
+
function v() {
|
|
1661
|
+
return h.resolve();
|
|
1662
|
+
}
|
|
1663
|
+
for (var E = 0; E < l.forages.length; E++) {
|
|
1664
|
+
var b = l.forages[E];
|
|
1665
|
+
b !== s && d.push(b._initReady().catch(v));
|
|
1666
|
+
}
|
|
1667
|
+
var _ = l.forages.slice(0);
|
|
1668
|
+
return h.all(d).then(function() {
|
|
1669
|
+
return c.db = l.db, ue(c);
|
|
1670
|
+
}).then(function(w) {
|
|
1671
|
+
return c.db = w, Oe(c, s._defaultConfig.version) ? Ne(c) : w;
|
|
1672
|
+
}).then(function(w) {
|
|
1673
|
+
c.db = l.db = w, s._dbInfo = c;
|
|
1674
|
+
for (var C = 0; C < _.length; C++) {
|
|
1675
|
+
var U = _[C];
|
|
1676
|
+
U !== s && (U._dbInfo.db = c.db, U._dbInfo.version = c.version);
|
|
1677
|
+
}
|
|
1678
|
+
});
|
|
1679
|
+
}
|
|
1680
|
+
function X(n, s) {
|
|
1681
|
+
var c = this;
|
|
1682
|
+
n = k(n);
|
|
1683
|
+
var u = new h(function(l, d) {
|
|
1684
|
+
c.ready().then(function() {
|
|
1685
|
+
T(c._dbInfo, le, function(v, E) {
|
|
1686
|
+
if (v) return d(v);
|
|
1687
|
+
try {
|
|
1688
|
+
var b = E.objectStore(c._dbInfo.storeName), _ = b.get(n);
|
|
1689
|
+
_.onsuccess = function() {
|
|
1690
|
+
var w = _.result;
|
|
1691
|
+
w === void 0 && (w = null), m(w) && (w = ye(w)), l(w);
|
|
1692
|
+
}, _.onerror = function() {
|
|
1693
|
+
d(_.error);
|
|
1694
|
+
};
|
|
1695
|
+
} catch (w) {
|
|
1696
|
+
d(w);
|
|
1697
|
+
}
|
|
1698
|
+
});
|
|
1699
|
+
}).catch(d);
|
|
1700
|
+
});
|
|
1701
|
+
return S(u, s), u;
|
|
1702
|
+
}
|
|
1703
|
+
function ee(n, s) {
|
|
1704
|
+
var c = this, u = new h(function(l, d) {
|
|
1705
|
+
c.ready().then(function() {
|
|
1706
|
+
T(c._dbInfo, le, function(v, E) {
|
|
1707
|
+
if (v) return d(v);
|
|
1708
|
+
try {
|
|
1709
|
+
var b = E.objectStore(c._dbInfo.storeName), _ = b.openCursor(), w = 1;
|
|
1710
|
+
_.onsuccess = function() {
|
|
1711
|
+
var C = _.result;
|
|
1712
|
+
if (C) {
|
|
1713
|
+
var U = C.value;
|
|
1714
|
+
m(U) && (U = ye(U));
|
|
1715
|
+
var H = n(U, C.key, w++);
|
|
1716
|
+
H !== void 0 ? l(H) : C.continue();
|
|
1717
|
+
} else l();
|
|
1718
|
+
}, _.onerror = function() {
|
|
1719
|
+
d(_.error);
|
|
1720
|
+
};
|
|
1721
|
+
} catch (C) {
|
|
1722
|
+
d(C);
|
|
1723
|
+
}
|
|
1724
|
+
});
|
|
1725
|
+
}).catch(d);
|
|
1726
|
+
});
|
|
1727
|
+
return S(u, s), u;
|
|
1728
|
+
}
|
|
1729
|
+
function Te(n, s, c) {
|
|
1730
|
+
var u = this;
|
|
1731
|
+
n = k(n);
|
|
1732
|
+
var l = new h(function(d, v) {
|
|
1733
|
+
var E;
|
|
1734
|
+
u.ready().then(function() {
|
|
1735
|
+
return E = u._dbInfo, V.call(s) === "[object Blob]" ? G(E.db).then(function(b) {
|
|
1736
|
+
return b ? s : je(s);
|
|
1737
|
+
}) : s;
|
|
1738
|
+
}).then(function(b) {
|
|
1739
|
+
T(u._dbInfo, N, function(_, w) {
|
|
1740
|
+
if (_) return v(_);
|
|
1741
|
+
try {
|
|
1742
|
+
var C = w.objectStore(u._dbInfo.storeName);
|
|
1743
|
+
b === null && (b = void 0);
|
|
1744
|
+
var U = C.put(b, n);
|
|
1745
|
+
w.oncomplete = function() {
|
|
1746
|
+
b === void 0 && (b = null), d(b);
|
|
1747
|
+
}, w.onabort = w.onerror = function() {
|
|
1748
|
+
var H = U.error ? U.error : U.transaction.error;
|
|
1749
|
+
v(H);
|
|
1750
|
+
};
|
|
1751
|
+
} catch (H) {
|
|
1752
|
+
v(H);
|
|
1753
|
+
}
|
|
1754
|
+
});
|
|
1755
|
+
}).catch(v);
|
|
1756
|
+
});
|
|
1757
|
+
return S(l, c), l;
|
|
1758
|
+
}
|
|
1759
|
+
function Re(n, s) {
|
|
1760
|
+
var c = this;
|
|
1761
|
+
n = k(n);
|
|
1762
|
+
var u = new h(function(l, d) {
|
|
1763
|
+
c.ready().then(function() {
|
|
1764
|
+
T(c._dbInfo, N, function(v, E) {
|
|
1765
|
+
if (v) return d(v);
|
|
1766
|
+
try {
|
|
1767
|
+
var b = E.objectStore(c._dbInfo.storeName), _ = b.delete(n);
|
|
1768
|
+
E.oncomplete = function() {
|
|
1769
|
+
l();
|
|
1770
|
+
}, E.onerror = function() {
|
|
1771
|
+
d(_.error);
|
|
1772
|
+
}, E.onabort = function() {
|
|
1773
|
+
var w = _.error ? _.error : _.transaction.error;
|
|
1774
|
+
d(w);
|
|
1775
|
+
};
|
|
1776
|
+
} catch (w) {
|
|
1777
|
+
d(w);
|
|
1778
|
+
}
|
|
1779
|
+
});
|
|
1780
|
+
}).catch(d);
|
|
1781
|
+
});
|
|
1782
|
+
return S(u, s), u;
|
|
1783
|
+
}
|
|
1784
|
+
function xe(n) {
|
|
1785
|
+
var s = this, c = new h(function(u, l) {
|
|
1786
|
+
s.ready().then(function() {
|
|
1787
|
+
T(s._dbInfo, N, function(d, v) {
|
|
1788
|
+
if (d) return l(d);
|
|
1789
|
+
try {
|
|
1790
|
+
var E = v.objectStore(s._dbInfo.storeName), b = E.clear();
|
|
1791
|
+
v.oncomplete = function() {
|
|
1792
|
+
u();
|
|
1793
|
+
}, v.onabort = v.onerror = function() {
|
|
1794
|
+
var _ = b.error ? b.error : b.transaction.error;
|
|
1795
|
+
l(_);
|
|
1796
|
+
};
|
|
1797
|
+
} catch (_) {
|
|
1798
|
+
l(_);
|
|
1799
|
+
}
|
|
1800
|
+
});
|
|
1801
|
+
}).catch(l);
|
|
1802
|
+
});
|
|
1803
|
+
return S(c, n), c;
|
|
1804
|
+
}
|
|
1805
|
+
function Br(n) {
|
|
1806
|
+
var s = this, c = new h(function(u, l) {
|
|
1807
|
+
s.ready().then(function() {
|
|
1808
|
+
T(s._dbInfo, le, function(d, v) {
|
|
1809
|
+
if (d) return l(d);
|
|
1810
|
+
try {
|
|
1811
|
+
var E = v.objectStore(s._dbInfo.storeName), b = E.count();
|
|
1812
|
+
b.onsuccess = function() {
|
|
1813
|
+
u(b.result);
|
|
1814
|
+
}, b.onerror = function() {
|
|
1815
|
+
l(b.error);
|
|
1816
|
+
};
|
|
1817
|
+
} catch (_) {
|
|
1818
|
+
l(_);
|
|
1819
|
+
}
|
|
1820
|
+
});
|
|
1821
|
+
}).catch(l);
|
|
1822
|
+
});
|
|
1823
|
+
return S(c, n), c;
|
|
1824
|
+
}
|
|
1825
|
+
function qr(n, s) {
|
|
1826
|
+
var c = this, u = new h(function(l, d) {
|
|
1827
|
+
if (n < 0) {
|
|
1828
|
+
l(null);
|
|
1829
|
+
return;
|
|
1830
|
+
}
|
|
1831
|
+
c.ready().then(function() {
|
|
1832
|
+
T(c._dbInfo, le, function(v, E) {
|
|
1833
|
+
if (v) return d(v);
|
|
1834
|
+
try {
|
|
1835
|
+
var b = E.objectStore(c._dbInfo.storeName), _ = !1, w = b.openKeyCursor();
|
|
1836
|
+
w.onsuccess = function() {
|
|
1837
|
+
var C = w.result;
|
|
1838
|
+
if (!C) {
|
|
1839
|
+
l(null);
|
|
1840
|
+
return;
|
|
1841
|
+
}
|
|
1842
|
+
n === 0 || _ ? l(C.key) : (_ = !0, C.advance(n));
|
|
1843
|
+
}, w.onerror = function() {
|
|
1844
|
+
d(w.error);
|
|
1845
|
+
};
|
|
1846
|
+
} catch (C) {
|
|
1847
|
+
d(C);
|
|
1848
|
+
}
|
|
1849
|
+
});
|
|
1850
|
+
}).catch(d);
|
|
1851
|
+
});
|
|
1852
|
+
return S(u, s), u;
|
|
1853
|
+
}
|
|
1854
|
+
function Vr(n) {
|
|
1855
|
+
var s = this, c = new h(function(u, l) {
|
|
1856
|
+
s.ready().then(function() {
|
|
1857
|
+
T(s._dbInfo, le, function(d, v) {
|
|
1858
|
+
if (d) return l(d);
|
|
1859
|
+
try {
|
|
1860
|
+
var E = v.objectStore(s._dbInfo.storeName), b = E.openKeyCursor(), _ = [];
|
|
1861
|
+
b.onsuccess = function() {
|
|
1862
|
+
var w = b.result;
|
|
1863
|
+
if (!w) {
|
|
1864
|
+
u(_);
|
|
1865
|
+
return;
|
|
1866
|
+
}
|
|
1867
|
+
_.push(w.key), w.continue();
|
|
1868
|
+
}, b.onerror = function() {
|
|
1869
|
+
l(b.error);
|
|
1870
|
+
};
|
|
1871
|
+
} catch (w) {
|
|
1872
|
+
l(w);
|
|
1873
|
+
}
|
|
1874
|
+
});
|
|
1875
|
+
}).catch(l);
|
|
1876
|
+
});
|
|
1877
|
+
return S(c, n), c;
|
|
1878
|
+
}
|
|
1879
|
+
function Hr(n, s) {
|
|
1880
|
+
s = F.apply(this, arguments);
|
|
1881
|
+
var c = this.config();
|
|
1882
|
+
n = typeof n != "function" && n || {}, n.name || (n.name = n.name || c.name, n.storeName = n.storeName || c.storeName);
|
|
1883
|
+
var u = this, l;
|
|
1884
|
+
if (!n.name) l = h.reject("Invalid arguments");
|
|
1885
|
+
else {
|
|
1886
|
+
var d = n.name === c.name && u._dbInfo.db, v = d ? h.resolve(u._dbInfo.db) : ue(n).then(function(E) {
|
|
1887
|
+
var b = q[n.name], _ = b.forages;
|
|
1888
|
+
b.db = E;
|
|
1889
|
+
for (var w = 0; w < _.length; w++) _[w]._dbInfo.db = E;
|
|
1890
|
+
return E;
|
|
1891
|
+
});
|
|
1892
|
+
n.storeName ? l = v.then(function(E) {
|
|
1893
|
+
if (E.objectStoreNames.contains(n.storeName)) {
|
|
1894
|
+
var b = E.version + 1;
|
|
1895
|
+
Q(n);
|
|
1896
|
+
var _ = q[n.name], w = _.forages;
|
|
1897
|
+
E.close();
|
|
1898
|
+
for (var C = 0; C < w.length; C++) {
|
|
1899
|
+
var U = w[C];
|
|
1900
|
+
U._dbInfo.db = null, U._dbInfo.version = b;
|
|
1901
|
+
}
|
|
1902
|
+
var H = new h(function(W, J) {
|
|
1903
|
+
var K = A.open(n.name, b);
|
|
1904
|
+
K.onerror = function(se) {
|
|
1905
|
+
var It = K.result;
|
|
1906
|
+
It.close(), J(se);
|
|
1907
|
+
}, K.onupgradeneeded = function() {
|
|
1908
|
+
var se = K.result;
|
|
1909
|
+
se.deleteObjectStore(n.storeName);
|
|
1910
|
+
}, K.onsuccess = function() {
|
|
1911
|
+
var se = K.result;
|
|
1912
|
+
se.close(), W(se);
|
|
1913
|
+
};
|
|
1914
|
+
});
|
|
1915
|
+
return H.then(function(W) {
|
|
1916
|
+
_.db = W;
|
|
1917
|
+
for (var J = 0; J < w.length; J++) {
|
|
1918
|
+
var K = w[J];
|
|
1919
|
+
K._dbInfo.db = W, re(K._dbInfo);
|
|
1920
|
+
}
|
|
1921
|
+
}).catch(function(W) {
|
|
1922
|
+
throw (oe(n, W) || h.resolve()).catch(function() {
|
|
1923
|
+
}), W;
|
|
1924
|
+
});
|
|
1925
|
+
}
|
|
1926
|
+
}) : l = v.then(function(E) {
|
|
1927
|
+
Q(n);
|
|
1928
|
+
var b = q[n.name], _ = b.forages;
|
|
1929
|
+
E.close();
|
|
1930
|
+
for (var w = 0; w < _.length; w++) {
|
|
1931
|
+
var C = _[w];
|
|
1932
|
+
C._dbInfo.db = null;
|
|
1933
|
+
}
|
|
1934
|
+
var U = new h(function(H, W) {
|
|
1935
|
+
var J = A.deleteDatabase(n.name);
|
|
1936
|
+
J.onerror = function() {
|
|
1937
|
+
var K = J.result;
|
|
1938
|
+
K && K.close(), W(J.error);
|
|
1939
|
+
}, J.onblocked = function() {
|
|
1940
|
+
console.warn('dropInstance blocked for database "' + n.name + '" until all open connections are closed');
|
|
1941
|
+
}, J.onsuccess = function() {
|
|
1942
|
+
var K = J.result;
|
|
1943
|
+
K && K.close(), H(K);
|
|
1944
|
+
};
|
|
1945
|
+
});
|
|
1946
|
+
return U.then(function(H) {
|
|
1947
|
+
b.db = H;
|
|
1948
|
+
for (var W = 0; W < _.length; W++) {
|
|
1949
|
+
var J = _[W];
|
|
1950
|
+
re(J._dbInfo);
|
|
1951
|
+
}
|
|
1952
|
+
}).catch(function(H) {
|
|
1953
|
+
throw (oe(n, H) || h.resolve()).catch(function() {
|
|
1954
|
+
}), H;
|
|
1955
|
+
});
|
|
1956
|
+
});
|
|
1957
|
+
}
|
|
1958
|
+
return S(l, s), l;
|
|
1959
|
+
}
|
|
1960
|
+
var zr = { _driver: "asyncStorage", _initStorage: $, _support: y(), iterate: ee, getItem: X, setItem: Te, removeItem: Re, clear: xe, length: Br, key: qr, keys: Vr, dropInstance: Hr };
|
|
1961
|
+
function Xr() {
|
|
1962
|
+
return typeof openDatabase == "function";
|
|
1963
|
+
}
|
|
1964
|
+
var ge = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", Kr = "~~local_forage_type~", Ut = /^~~local_forage_type~([^~]+)~/, Je = "__lfsc__:", ht = Je.length, pt = "arbf", mt = "blob", jt = "si08", xt = "ui08", Ft = "uic8", Gt = "si16", Wt = "si32", Bt = "ur16", qt = "ui32", Vt = "fl32", Ht = "fl64", zt = ht + pt.length, Xt = Object.prototype.toString;
|
|
1965
|
+
function Kt(n) {
|
|
1966
|
+
var s = n.length * 0.75, c = n.length, u, l = 0, d, v, E, b;
|
|
1967
|
+
n[n.length - 1] === "=" && (s--, n[n.length - 2] === "=" && s--);
|
|
1968
|
+
var _ = new ArrayBuffer(s), w = new Uint8Array(_);
|
|
1969
|
+
for (u = 0; u < c; u += 4) d = ge.indexOf(n[u]), v = ge.indexOf(n[u + 1]), E = ge.indexOf(n[u + 2]), b = ge.indexOf(n[u + 3]), w[l++] = d << 2 | v >> 4, w[l++] = (v & 15) << 4 | E >> 2, w[l++] = (E & 3) << 6 | b & 63;
|
|
1970
|
+
return _;
|
|
1971
|
+
}
|
|
1972
|
+
function vt(n) {
|
|
1973
|
+
var s = new Uint8Array(n), c = "", u;
|
|
1974
|
+
for (u = 0; u < s.length; u += 3) c += ge[s[u] >> 2], c += ge[(s[u] & 3) << 4 | s[u + 1] >> 4], c += ge[(s[u + 1] & 15) << 2 | s[u + 2] >> 6], c += ge[s[u + 2] & 63];
|
|
1975
|
+
return s.length % 3 === 2 ? c = c.substring(0, c.length - 1) + "=" : s.length % 3 === 1 && (c = c.substring(0, c.length - 2) + "=="), c;
|
|
1976
|
+
}
|
|
1977
|
+
function Yr(n, s) {
|
|
1978
|
+
var c = "";
|
|
1979
|
+
if (n && (c = Xt.call(n)), n && (c === "[object ArrayBuffer]" || n.buffer && Xt.call(n.buffer) === "[object ArrayBuffer]")) {
|
|
1980
|
+
var u, l = Je;
|
|
1981
|
+
n instanceof ArrayBuffer ? (u = n, l += pt) : (u = n.buffer, c === "[object Int8Array]" ? l += jt : c === "[object Uint8Array]" ? l += xt : c === "[object Uint8ClampedArray]" ? l += Ft : c === "[object Int16Array]" ? l += Gt : c === "[object Uint16Array]" ? l += Bt : c === "[object Int32Array]" ? l += Wt : c === "[object Uint32Array]" ? l += qt : c === "[object Float32Array]" ? l += Vt : c === "[object Float64Array]" ? l += Ht : s(new Error("Failed to get type for BinaryArray"))), s(l + vt(u));
|
|
1982
|
+
} else if (c === "[object Blob]") {
|
|
1983
|
+
var d = new FileReader();
|
|
1984
|
+
d.onload = function() {
|
|
1985
|
+
var v = Kr + n.type + "~" + vt(this.result);
|
|
1986
|
+
s(Je + mt + v);
|
|
1987
|
+
}, d.readAsArrayBuffer(n);
|
|
1988
|
+
} else try {
|
|
1989
|
+
s(JSON.stringify(n));
|
|
1990
|
+
} catch (v) {
|
|
1991
|
+
console.error("Couldn't convert value into a JSON string: ", n), s(null, v);
|
|
1992
|
+
}
|
|
1993
|
+
}
|
|
1994
|
+
function Jr(n) {
|
|
1995
|
+
if (n.substring(0, ht) !== Je) return JSON.parse(n);
|
|
1996
|
+
var s = n.substring(zt), c = n.substring(ht, zt), u;
|
|
1997
|
+
if (c === mt && Ut.test(s)) {
|
|
1998
|
+
var l = s.match(Ut);
|
|
1999
|
+
u = l[1], s = s.substring(l[0].length);
|
|
2000
|
+
}
|
|
2001
|
+
var d = Kt(s);
|
|
2002
|
+
switch (c) {
|
|
2003
|
+
case pt:
|
|
2004
|
+
return d;
|
|
2005
|
+
case mt:
|
|
2006
|
+
return g([d], { type: u });
|
|
2007
|
+
case jt:
|
|
2008
|
+
return new Int8Array(d);
|
|
2009
|
+
case xt:
|
|
2010
|
+
return new Uint8Array(d);
|
|
2011
|
+
case Ft:
|
|
2012
|
+
return new Uint8ClampedArray(d);
|
|
2013
|
+
case Gt:
|
|
2014
|
+
return new Int16Array(d);
|
|
2015
|
+
case Bt:
|
|
2016
|
+
return new Uint16Array(d);
|
|
2017
|
+
case Wt:
|
|
2018
|
+
return new Int32Array(d);
|
|
2019
|
+
case qt:
|
|
2020
|
+
return new Uint32Array(d);
|
|
2021
|
+
case Vt:
|
|
2022
|
+
return new Float32Array(d);
|
|
2023
|
+
case Ht:
|
|
2024
|
+
return new Float64Array(d);
|
|
2025
|
+
default:
|
|
2026
|
+
throw new Error("Unkown type: " + c);
|
|
2027
|
+
}
|
|
2028
|
+
}
|
|
2029
|
+
var yt = { serialize: Yr, deserialize: Jr, stringToBuffer: Kt, bufferToString: vt };
|
|
2030
|
+
function Yt(n, s, c, u) {
|
|
2031
|
+
n.executeSql("CREATE TABLE IF NOT EXISTS " + s.storeName + " (id INTEGER PRIMARY KEY, key unique, value)", [], c, u);
|
|
2032
|
+
}
|
|
2033
|
+
function Qr(n) {
|
|
2034
|
+
var s = this, c = { db: null };
|
|
2035
|
+
if (n) for (var u in n) c[u] = typeof n[u] != "string" ? n[u].toString() : n[u];
|
|
2036
|
+
var l = new h(function(d, v) {
|
|
2037
|
+
try {
|
|
2038
|
+
c.db = openDatabase(c.name, String(c.version), c.description, c.size);
|
|
2039
|
+
} catch (E) {
|
|
2040
|
+
return v(E);
|
|
2041
|
+
}
|
|
2042
|
+
c.db.transaction(function(E) {
|
|
2043
|
+
Yt(E, c, function() {
|
|
2044
|
+
s._dbInfo = c, d();
|
|
2045
|
+
}, function(b, _) {
|
|
2046
|
+
v(_);
|
|
2047
|
+
});
|
|
2048
|
+
}, v);
|
|
2049
|
+
});
|
|
2050
|
+
return c.serializer = yt, l;
|
|
2051
|
+
}
|
|
2052
|
+
function Ee(n, s, c, u, l, d) {
|
|
2053
|
+
n.executeSql(c, u, l, function(v, E) {
|
|
2054
|
+
E.code === E.SYNTAX_ERR ? v.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?", [s.storeName], function(b, _) {
|
|
2055
|
+
_.rows.length ? d(b, E) : Yt(b, s, function() {
|
|
2056
|
+
b.executeSql(c, u, l, d);
|
|
2057
|
+
}, d);
|
|
2058
|
+
}, d) : d(v, E);
|
|
2059
|
+
}, d);
|
|
2060
|
+
}
|
|
2061
|
+
function Zr(n, s) {
|
|
2062
|
+
var c = this;
|
|
2063
|
+
n = k(n);
|
|
2064
|
+
var u = new h(function(l, d) {
|
|
2065
|
+
c.ready().then(function() {
|
|
2066
|
+
var v = c._dbInfo;
|
|
2067
|
+
v.db.transaction(function(E) {
|
|
2068
|
+
Ee(E, v, "SELECT * FROM " + v.storeName + " WHERE key = ? LIMIT 1", [n], function(b, _) {
|
|
2069
|
+
var w = _.rows.length ? _.rows.item(0).value : null;
|
|
2070
|
+
w && (w = v.serializer.deserialize(w)), l(w);
|
|
2071
|
+
}, function(b, _) {
|
|
2072
|
+
d(_);
|
|
2073
|
+
});
|
|
2074
|
+
});
|
|
2075
|
+
}).catch(d);
|
|
2076
|
+
});
|
|
2077
|
+
return S(u, s), u;
|
|
2078
|
+
}
|
|
2079
|
+
function en(n, s) {
|
|
2080
|
+
var c = this, u = new h(function(l, d) {
|
|
2081
|
+
c.ready().then(function() {
|
|
2082
|
+
var v = c._dbInfo;
|
|
2083
|
+
v.db.transaction(function(E) {
|
|
2084
|
+
Ee(E, v, "SELECT * FROM " + v.storeName, [], function(b, _) {
|
|
2085
|
+
for (var w = _.rows, C = w.length, U = 0; U < C; U++) {
|
|
2086
|
+
var H = w.item(U), W = H.value;
|
|
2087
|
+
if (W && (W = v.serializer.deserialize(W)), W = n(W, H.key, U + 1), W !== void 0) {
|
|
2088
|
+
l(W);
|
|
2089
|
+
return;
|
|
2090
|
+
}
|
|
2091
|
+
}
|
|
2092
|
+
l();
|
|
2093
|
+
}, function(b, _) {
|
|
2094
|
+
d(_);
|
|
2095
|
+
});
|
|
2096
|
+
});
|
|
2097
|
+
}).catch(d);
|
|
2098
|
+
});
|
|
2099
|
+
return S(u, s), u;
|
|
2100
|
+
}
|
|
2101
|
+
function Jt(n, s, c, u) {
|
|
2102
|
+
var l = this;
|
|
2103
|
+
n = k(n);
|
|
2104
|
+
var d = new h(function(v, E) {
|
|
2105
|
+
l.ready().then(function() {
|
|
2106
|
+
s === void 0 && (s = null);
|
|
2107
|
+
var b = s, _ = l._dbInfo;
|
|
2108
|
+
_.serializer.serialize(s, function(w, C) {
|
|
2109
|
+
C ? E(C) : _.db.transaction(function(U) {
|
|
2110
|
+
Ee(U, _, "INSERT OR REPLACE INTO " + _.storeName + " (key, value) VALUES (?, ?)", [n, w], function() {
|
|
2111
|
+
v(b);
|
|
2112
|
+
}, function(H, W) {
|
|
2113
|
+
E(W);
|
|
2114
|
+
});
|
|
2115
|
+
}, function(U) {
|
|
2116
|
+
if (U.code === U.QUOTA_ERR) {
|
|
2117
|
+
if (u > 0) {
|
|
2118
|
+
v(Jt.apply(l, [n, b, c, u - 1]));
|
|
2119
|
+
return;
|
|
2120
|
+
}
|
|
2121
|
+
E(U);
|
|
2122
|
+
}
|
|
2123
|
+
});
|
|
2124
|
+
});
|
|
2125
|
+
}).catch(E);
|
|
2126
|
+
});
|
|
2127
|
+
return S(d, c), d;
|
|
2128
|
+
}
|
|
2129
|
+
function tn(n, s, c) {
|
|
2130
|
+
return Jt.apply(this, [n, s, c, 1]);
|
|
2131
|
+
}
|
|
2132
|
+
function rn(n, s) {
|
|
2133
|
+
var c = this;
|
|
2134
|
+
n = k(n);
|
|
2135
|
+
var u = new h(function(l, d) {
|
|
2136
|
+
c.ready().then(function() {
|
|
2137
|
+
var v = c._dbInfo;
|
|
2138
|
+
v.db.transaction(function(E) {
|
|
2139
|
+
Ee(E, v, "DELETE FROM " + v.storeName + " WHERE key = ?", [n], function() {
|
|
2140
|
+
l();
|
|
2141
|
+
}, function(b, _) {
|
|
2142
|
+
d(_);
|
|
2143
|
+
});
|
|
2144
|
+
});
|
|
2145
|
+
}).catch(d);
|
|
2146
|
+
});
|
|
2147
|
+
return S(u, s), u;
|
|
2148
|
+
}
|
|
2149
|
+
function nn(n) {
|
|
2150
|
+
var s = this, c = new h(function(u, l) {
|
|
2151
|
+
s.ready().then(function() {
|
|
2152
|
+
var d = s._dbInfo;
|
|
2153
|
+
d.db.transaction(function(v) {
|
|
2154
|
+
Ee(v, d, "DELETE FROM " + d.storeName, [], function() {
|
|
2155
|
+
u();
|
|
2156
|
+
}, function(E, b) {
|
|
2157
|
+
l(b);
|
|
2158
|
+
});
|
|
2159
|
+
});
|
|
2160
|
+
}).catch(l);
|
|
2161
|
+
});
|
|
2162
|
+
return S(c, n), c;
|
|
2163
|
+
}
|
|
2164
|
+
function on(n) {
|
|
2165
|
+
var s = this, c = new h(function(u, l) {
|
|
2166
|
+
s.ready().then(function() {
|
|
2167
|
+
var d = s._dbInfo;
|
|
2168
|
+
d.db.transaction(function(v) {
|
|
2169
|
+
Ee(v, d, "SELECT COUNT(key) as c FROM " + d.storeName, [], function(E, b) {
|
|
2170
|
+
var _ = b.rows.item(0).c;
|
|
2171
|
+
u(_);
|
|
2172
|
+
}, function(E, b) {
|
|
2173
|
+
l(b);
|
|
2174
|
+
});
|
|
2175
|
+
});
|
|
2176
|
+
}).catch(l);
|
|
2177
|
+
});
|
|
2178
|
+
return S(c, n), c;
|
|
2179
|
+
}
|
|
2180
|
+
function an(n, s) {
|
|
2181
|
+
var c = this, u = new h(function(l, d) {
|
|
2182
|
+
c.ready().then(function() {
|
|
2183
|
+
var v = c._dbInfo;
|
|
2184
|
+
v.db.transaction(function(E) {
|
|
2185
|
+
Ee(E, v, "SELECT key FROM " + v.storeName + " WHERE id = ? LIMIT 1", [n + 1], function(b, _) {
|
|
2186
|
+
var w = _.rows.length ? _.rows.item(0).key : null;
|
|
2187
|
+
l(w);
|
|
2188
|
+
}, function(b, _) {
|
|
2189
|
+
d(_);
|
|
2190
|
+
});
|
|
2191
|
+
});
|
|
2192
|
+
}).catch(d);
|
|
2193
|
+
});
|
|
2194
|
+
return S(u, s), u;
|
|
2195
|
+
}
|
|
2196
|
+
function sn(n) {
|
|
2197
|
+
var s = this, c = new h(function(u, l) {
|
|
2198
|
+
s.ready().then(function() {
|
|
2199
|
+
var d = s._dbInfo;
|
|
2200
|
+
d.db.transaction(function(v) {
|
|
2201
|
+
Ee(v, d, "SELECT key FROM " + d.storeName, [], function(E, b) {
|
|
2202
|
+
for (var _ = [], w = 0; w < b.rows.length; w++) _.push(b.rows.item(w).key);
|
|
2203
|
+
u(_);
|
|
2204
|
+
}, function(E, b) {
|
|
2205
|
+
l(b);
|
|
2206
|
+
});
|
|
2207
|
+
});
|
|
2208
|
+
}).catch(l);
|
|
2209
|
+
});
|
|
2210
|
+
return S(c, n), c;
|
|
2211
|
+
}
|
|
2212
|
+
function cn(n) {
|
|
2213
|
+
return new h(function(s, c) {
|
|
2214
|
+
n.transaction(function(u) {
|
|
2215
|
+
u.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'", [], function(l, d) {
|
|
2216
|
+
for (var v = [], E = 0; E < d.rows.length; E++) v.push(d.rows.item(E).name);
|
|
2217
|
+
s({ db: n, storeNames: v });
|
|
2218
|
+
}, function(l, d) {
|
|
2219
|
+
c(d);
|
|
2220
|
+
});
|
|
2221
|
+
}, function(u) {
|
|
2222
|
+
c(u);
|
|
2223
|
+
});
|
|
2224
|
+
});
|
|
2225
|
+
}
|
|
2226
|
+
function ln(n, s) {
|
|
2227
|
+
s = F.apply(this, arguments);
|
|
2228
|
+
var c = this.config();
|
|
2229
|
+
n = typeof n != "function" && n || {}, n.name || (n.name = n.name || c.name, n.storeName = n.storeName || c.storeName);
|
|
2230
|
+
var u = this, l;
|
|
2231
|
+
return n.name ? l = new h(function(d) {
|
|
2232
|
+
var v;
|
|
2233
|
+
n.name === c.name ? v = u._dbInfo.db : v = openDatabase(n.name, "", "", 0), n.storeName ? d({ db: v, storeNames: [n.storeName] }) : d(cn(v));
|
|
2234
|
+
}).then(function(d) {
|
|
2235
|
+
return new h(function(v, E) {
|
|
2236
|
+
d.db.transaction(function(b) {
|
|
2237
|
+
function _(H) {
|
|
2238
|
+
return new h(function(W, J) {
|
|
2239
|
+
b.executeSql("DROP TABLE IF EXISTS " + H, [], function() {
|
|
2240
|
+
W();
|
|
2241
|
+
}, function(K, se) {
|
|
2242
|
+
J(se);
|
|
2243
|
+
});
|
|
2244
|
+
});
|
|
2245
|
+
}
|
|
2246
|
+
for (var w = [], C = 0, U = d.storeNames.length; C < U; C++) w.push(_(d.storeNames[C]));
|
|
2247
|
+
h.all(w).then(function() {
|
|
2248
|
+
v();
|
|
2249
|
+
}).catch(function(H) {
|
|
2250
|
+
E(H);
|
|
2251
|
+
});
|
|
2252
|
+
}, function(b) {
|
|
2253
|
+
E(b);
|
|
2254
|
+
});
|
|
2255
|
+
});
|
|
2256
|
+
}) : l = h.reject("Invalid arguments"), S(l, s), l;
|
|
2257
|
+
}
|
|
2258
|
+
var un = { _driver: "webSQLStorage", _initStorage: Qr, _support: Xr(), iterate: en, getItem: Zr, setItem: tn, removeItem: rn, clear: nn, length: on, key: an, keys: sn, dropInstance: ln };
|
|
2259
|
+
function dn() {
|
|
2260
|
+
try {
|
|
2261
|
+
return typeof localStorage < "u" && "setItem" in localStorage && !!localStorage.setItem;
|
|
2262
|
+
} catch {
|
|
2263
|
+
return !1;
|
|
2264
|
+
}
|
|
2265
|
+
}
|
|
2266
|
+
function Qt(n, s) {
|
|
2267
|
+
var c = n.name + "/";
|
|
2268
|
+
return n.storeName !== s.storeName && (c += n.storeName + "/"), c;
|
|
2269
|
+
}
|
|
2270
|
+
function fn() {
|
|
2271
|
+
var n = "_localforage_support_test";
|
|
2272
|
+
try {
|
|
2273
|
+
return localStorage.setItem(n, !0), localStorage.removeItem(n), !1;
|
|
2274
|
+
} catch {
|
|
2275
|
+
return !0;
|
|
2276
|
+
}
|
|
2277
|
+
}
|
|
2278
|
+
function hn() {
|
|
2279
|
+
return !fn() || localStorage.length > 0;
|
|
2280
|
+
}
|
|
2281
|
+
function pn(n) {
|
|
2282
|
+
var s = this, c = {};
|
|
2283
|
+
if (n) for (var u in n) c[u] = n[u];
|
|
2284
|
+
return c.keyPrefix = Qt(n, s._defaultConfig), hn() ? (s._dbInfo = c, c.serializer = yt, h.resolve()) : h.reject();
|
|
2285
|
+
}
|
|
2286
|
+
function mn(n) {
|
|
2287
|
+
var s = this, c = s.ready().then(function() {
|
|
2288
|
+
for (var u = s._dbInfo.keyPrefix, l = localStorage.length - 1; l >= 0; l--) {
|
|
2289
|
+
var d = localStorage.key(l);
|
|
2290
|
+
d.indexOf(u) === 0 && localStorage.removeItem(d);
|
|
2291
|
+
}
|
|
2292
|
+
});
|
|
2293
|
+
return S(c, n), c;
|
|
2294
|
+
}
|
|
2295
|
+
function vn(n, s) {
|
|
2296
|
+
var c = this;
|
|
2297
|
+
n = k(n);
|
|
2298
|
+
var u = c.ready().then(function() {
|
|
2299
|
+
var l = c._dbInfo, d = localStorage.getItem(l.keyPrefix + n);
|
|
2300
|
+
return d && (d = l.serializer.deserialize(d)), d;
|
|
2301
|
+
});
|
|
2302
|
+
return S(u, s), u;
|
|
2303
|
+
}
|
|
2304
|
+
function yn(n, s) {
|
|
2305
|
+
var c = this, u = c.ready().then(function() {
|
|
2306
|
+
for (var l = c._dbInfo, d = l.keyPrefix, v = d.length, E = localStorage.length, b = 1, _ = 0; _ < E; _++) {
|
|
2307
|
+
var w = localStorage.key(_);
|
|
2308
|
+
if (w.indexOf(d) === 0) {
|
|
2309
|
+
var C = localStorage.getItem(w);
|
|
2310
|
+
if (C && (C = l.serializer.deserialize(C)), C = n(C, w.substring(v), b++), C !== void 0) return C;
|
|
2311
|
+
}
|
|
2312
|
+
}
|
|
2313
|
+
});
|
|
2314
|
+
return S(u, s), u;
|
|
2315
|
+
}
|
|
2316
|
+
function gn(n, s) {
|
|
2317
|
+
var c = this, u = c.ready().then(function() {
|
|
2318
|
+
var l = c._dbInfo, d;
|
|
2319
|
+
try {
|
|
2320
|
+
d = localStorage.key(n);
|
|
2321
|
+
} catch {
|
|
2322
|
+
d = null;
|
|
2323
|
+
}
|
|
2324
|
+
return d && (d = d.substring(l.keyPrefix.length)), d;
|
|
2325
|
+
});
|
|
2326
|
+
return S(u, s), u;
|
|
2327
|
+
}
|
|
2328
|
+
function En(n) {
|
|
2329
|
+
var s = this, c = s.ready().then(function() {
|
|
2330
|
+
for (var u = s._dbInfo, l = localStorage.length, d = [], v = 0; v < l; v++) {
|
|
2331
|
+
var E = localStorage.key(v);
|
|
2332
|
+
E.indexOf(u.keyPrefix) === 0 && d.push(E.substring(u.keyPrefix.length));
|
|
2333
|
+
}
|
|
2334
|
+
return d;
|
|
2335
|
+
});
|
|
2336
|
+
return S(c, n), c;
|
|
2337
|
+
}
|
|
2338
|
+
function In(n) {
|
|
2339
|
+
var s = this, c = s.keys().then(function(u) {
|
|
2340
|
+
return u.length;
|
|
2341
|
+
});
|
|
2342
|
+
return S(c, n), c;
|
|
2343
|
+
}
|
|
2344
|
+
function wn(n, s) {
|
|
2345
|
+
var c = this;
|
|
2346
|
+
n = k(n);
|
|
2347
|
+
var u = c.ready().then(function() {
|
|
2348
|
+
var l = c._dbInfo;
|
|
2349
|
+
localStorage.removeItem(l.keyPrefix + n);
|
|
2350
|
+
});
|
|
2351
|
+
return S(u, s), u;
|
|
2352
|
+
}
|
|
2353
|
+
function _n(n, s, c) {
|
|
2354
|
+
var u = this;
|
|
2355
|
+
n = k(n);
|
|
2356
|
+
var l = u.ready().then(function() {
|
|
2357
|
+
s === void 0 && (s = null);
|
|
2358
|
+
var d = s;
|
|
2359
|
+
return new h(function(v, E) {
|
|
2360
|
+
var b = u._dbInfo;
|
|
2361
|
+
b.serializer.serialize(s, function(_, w) {
|
|
2362
|
+
if (w) E(w);
|
|
2363
|
+
else try {
|
|
2364
|
+
localStorage.setItem(b.keyPrefix + n, _), v(d);
|
|
2365
|
+
} catch (C) {
|
|
2366
|
+
(C.name === "QuotaExceededError" || C.name === "NS_ERROR_DOM_QUOTA_REACHED") && E(C), E(C);
|
|
2367
|
+
}
|
|
2368
|
+
});
|
|
2369
|
+
});
|
|
2370
|
+
});
|
|
2371
|
+
return S(l, c), l;
|
|
2372
|
+
}
|
|
2373
|
+
function bn(n, s) {
|
|
2374
|
+
if (s = F.apply(this, arguments), n = typeof n != "function" && n || {}, !n.name) {
|
|
2375
|
+
var c = this.config();
|
|
2376
|
+
n.name = n.name || c.name, n.storeName = n.storeName || c.storeName;
|
|
2377
|
+
}
|
|
2378
|
+
var u = this, l;
|
|
2379
|
+
return n.name ? l = new h(function(d) {
|
|
2380
|
+
n.storeName ? d(Qt(n, u._defaultConfig)) : d(n.name + "/");
|
|
2381
|
+
}).then(function(d) {
|
|
2382
|
+
for (var v = localStorage.length - 1; v >= 0; v--) {
|
|
2383
|
+
var E = localStorage.key(v);
|
|
2384
|
+
E.indexOf(d) === 0 && localStorage.removeItem(E);
|
|
2385
|
+
}
|
|
2386
|
+
}) : l = h.reject("Invalid arguments"), S(l, s), l;
|
|
2387
|
+
}
|
|
2388
|
+
var An = { _driver: "localStorageWrapper", _initStorage: pn, _support: dn(), iterate: yn, getItem: vn, setItem: _n, removeItem: wn, clear: mn, length: In, key: gn, keys: En, dropInstance: bn }, Nn = function(n, s) {
|
|
2389
|
+
return n === s || typeof n == "number" && typeof s == "number" && isNaN(n) && isNaN(s);
|
|
2390
|
+
}, Rn = function(n, s) {
|
|
2391
|
+
for (var c = n.length, u = 0; u < c; ) {
|
|
2392
|
+
if (Nn(n[u], s)) return !0;
|
|
2393
|
+
u++;
|
|
2394
|
+
}
|
|
2395
|
+
return !1;
|
|
2396
|
+
}, Zt = Array.isArray || function(n) {
|
|
2397
|
+
return Object.prototype.toString.call(n) === "[object Array]";
|
|
2398
|
+
}, Fe = {}, er = {}, Ce = { INDEXEDDB: zr, WEBSQL: un, LOCALSTORAGE: An }, Sn = [Ce.INDEXEDDB._driver, Ce.WEBSQL._driver, Ce.LOCALSTORAGE._driver], Qe = ["dropInstance"], gt = ["clear", "getItem", "iterate", "key", "keys", "length", "removeItem", "setItem"].concat(Qe), On = { description: "", driver: Sn.slice(), name: "localforage", size: 4980736, storeName: "keyvaluepairs", version: 1 };
|
|
2399
|
+
function Tn(n, s) {
|
|
2400
|
+
n[s] = function() {
|
|
2401
|
+
var c = arguments;
|
|
2402
|
+
return n.ready().then(function() {
|
|
2403
|
+
return n[s].apply(n, c);
|
|
2404
|
+
});
|
|
2405
|
+
};
|
|
2406
|
+
}
|
|
2407
|
+
function Et() {
|
|
2408
|
+
for (var n = 1; n < arguments.length; n++) {
|
|
2409
|
+
var s = arguments[n];
|
|
2410
|
+
if (s) for (var c in s) s.hasOwnProperty(c) && (Zt(s[c]) ? arguments[0][c] = s[c].slice() : arguments[0][c] = s[c]);
|
|
2411
|
+
}
|
|
2412
|
+
return arguments[0];
|
|
2413
|
+
}
|
|
2414
|
+
var Cn = (function() {
|
|
2415
|
+
function n(s) {
|
|
2416
|
+
p(this, n);
|
|
2417
|
+
for (var c in Ce) if (Ce.hasOwnProperty(c)) {
|
|
2418
|
+
var u = Ce[c], l = u._driver;
|
|
2419
|
+
this[c] = l, Fe[l] || this.defineDriver(u);
|
|
2420
|
+
}
|
|
2421
|
+
this._defaultConfig = Et({}, On), this._config = Et({}, this._defaultConfig, s), this._driverSet = null, this._initDriver = null, this._ready = !1, this._dbInfo = null, this._wrapLibraryMethodsWithReady(), this.setDriver(this._config.driver).catch(function() {
|
|
2422
|
+
});
|
|
2423
|
+
}
|
|
2424
|
+
return n.prototype.config = function(s) {
|
|
2425
|
+
if ((typeof s > "u" ? "undefined" : a(s)) === "object") {
|
|
2426
|
+
if (this._ready) return new Error("Can't call config() after localforage has been used.");
|
|
2427
|
+
for (var c in s) {
|
|
2428
|
+
if (c === "storeName" && (s[c] = s[c].replace(/\W/g, "_")), c === "version" && typeof s[c] != "number") return new Error("Database version must be a number.");
|
|
2429
|
+
this._config[c] = s[c];
|
|
2430
|
+
}
|
|
2431
|
+
return "driver" in s && s.driver ? this.setDriver(this._config.driver) : !0;
|
|
2432
|
+
} else return typeof s == "string" ? this._config[s] : this._config;
|
|
2433
|
+
}, n.prototype.defineDriver = function(s, c, u) {
|
|
2434
|
+
var l = new h(function(d, v) {
|
|
2435
|
+
try {
|
|
2436
|
+
var E = s._driver, b = new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");
|
|
2437
|
+
if (!s._driver) {
|
|
2438
|
+
v(b);
|
|
2439
|
+
return;
|
|
2440
|
+
}
|
|
2441
|
+
for (var _ = gt.concat("_initStorage"), w = 0, C = _.length; w < C; w++) {
|
|
2442
|
+
var U = _[w], H = !Rn(Qe, U);
|
|
2443
|
+
if ((H || s[U]) && typeof s[U] != "function") {
|
|
2444
|
+
v(b);
|
|
2445
|
+
return;
|
|
2446
|
+
}
|
|
2447
|
+
}
|
|
2448
|
+
var W = function() {
|
|
2449
|
+
for (var K = function(Ln) {
|
|
2450
|
+
return function() {
|
|
2451
|
+
var $n = new Error("Method " + Ln + " is not implemented by the current driver"), tr = h.reject($n);
|
|
2452
|
+
return S(tr, arguments[arguments.length - 1]), tr;
|
|
2453
|
+
};
|
|
2454
|
+
}, se = 0, It = Qe.length; se < It; se++) {
|
|
2455
|
+
var wt = Qe[se];
|
|
2456
|
+
s[wt] || (s[wt] = K(wt));
|
|
2457
|
+
}
|
|
2458
|
+
};
|
|
2459
|
+
W();
|
|
2460
|
+
var J = function(K) {
|
|
2461
|
+
Fe[E] && console.info("Redefining LocalForage driver: " + E), Fe[E] = s, er[E] = K, d();
|
|
2462
|
+
};
|
|
2463
|
+
"_support" in s ? s._support && typeof s._support == "function" ? s._support().then(J, v) : J(!!s._support) : J(!0);
|
|
2464
|
+
} catch (K) {
|
|
2465
|
+
v(K);
|
|
2466
|
+
}
|
|
2467
|
+
});
|
|
2468
|
+
return P(l, c, u), l;
|
|
2469
|
+
}, n.prototype.driver = function() {
|
|
2470
|
+
return this._driver || null;
|
|
2471
|
+
}, n.prototype.getDriver = function(s, c, u) {
|
|
2472
|
+
var l = Fe[s] ? h.resolve(Fe[s]) : h.reject(new Error("Driver not found."));
|
|
2473
|
+
return P(l, c, u), l;
|
|
2474
|
+
}, n.prototype.getSerializer = function(s) {
|
|
2475
|
+
var c = h.resolve(yt);
|
|
2476
|
+
return P(c, s), c;
|
|
2477
|
+
}, n.prototype.ready = function(s) {
|
|
2478
|
+
var c = this, u = c._driverSet.then(function() {
|
|
2479
|
+
return c._ready === null && (c._ready = c._initDriver()), c._ready;
|
|
2480
|
+
});
|
|
2481
|
+
return P(u, s, s), u;
|
|
2482
|
+
}, n.prototype.setDriver = function(s, c, u) {
|
|
2483
|
+
var l = this;
|
|
2484
|
+
Zt(s) || (s = [s]);
|
|
2485
|
+
var d = this._getSupportedDrivers(s);
|
|
2486
|
+
function v() {
|
|
2487
|
+
l._config.driver = l.driver();
|
|
2488
|
+
}
|
|
2489
|
+
function E(w) {
|
|
2490
|
+
return l._extend(w), v(), l._ready = l._initStorage(l._config), l._ready;
|
|
2491
|
+
}
|
|
2492
|
+
function b(w) {
|
|
2493
|
+
return function() {
|
|
2494
|
+
var C = 0;
|
|
2495
|
+
function U() {
|
|
2496
|
+
for (; C < w.length; ) {
|
|
2497
|
+
var H = w[C];
|
|
2498
|
+
return C++, l._dbInfo = null, l._ready = null, l.getDriver(H).then(E).catch(U);
|
|
2499
|
+
}
|
|
2500
|
+
v();
|
|
2501
|
+
var W = new Error("No available storage method found.");
|
|
2502
|
+
return l._driverSet = h.reject(W), l._driverSet;
|
|
2503
|
+
}
|
|
2504
|
+
return U();
|
|
2505
|
+
};
|
|
2506
|
+
}
|
|
2507
|
+
var _ = this._driverSet !== null ? this._driverSet.catch(function() {
|
|
2508
|
+
return h.resolve();
|
|
2509
|
+
}) : h.resolve();
|
|
2510
|
+
return this._driverSet = _.then(function() {
|
|
2511
|
+
var w = d[0];
|
|
2512
|
+
return l._dbInfo = null, l._ready = null, l.getDriver(w).then(function(C) {
|
|
2513
|
+
l._driver = C._driver, v(), l._wrapLibraryMethodsWithReady(), l._initDriver = b(d);
|
|
2514
|
+
});
|
|
2515
|
+
}).catch(function() {
|
|
2516
|
+
v();
|
|
2517
|
+
var w = new Error("No available storage method found.");
|
|
2518
|
+
return l._driverSet = h.reject(w), l._driverSet;
|
|
2519
|
+
}), P(this._driverSet, c, u), this._driverSet;
|
|
2520
|
+
}, n.prototype.supports = function(s) {
|
|
2521
|
+
return !!er[s];
|
|
2522
|
+
}, n.prototype._extend = function(s) {
|
|
2523
|
+
Et(this, s);
|
|
2524
|
+
}, n.prototype._getSupportedDrivers = function(s) {
|
|
2525
|
+
for (var c = [], u = 0, l = s.length; u < l; u++) {
|
|
2526
|
+
var d = s[u];
|
|
2527
|
+
this.supports(d) && c.push(d);
|
|
2528
|
+
}
|
|
2529
|
+
return c;
|
|
2530
|
+
}, n.prototype._wrapLibraryMethodsWithReady = function() {
|
|
2531
|
+
for (var s = 0, c = gt.length; s < c; s++) Tn(this, gt[s]);
|
|
2532
|
+
}, n.prototype.createInstance = function(s) {
|
|
2533
|
+
return new n(s);
|
|
2534
|
+
}, n;
|
|
2535
|
+
})(), Mn = new Cn();
|
|
2536
|
+
o.exports = Mn;
|
|
2537
|
+
}, { 3: 3 }] }, {}, [4])(4);
|
|
2538
|
+
});
|
|
2539
|
+
}), fa = Fr((e, t) => {
|
|
2540
|
+
(function(r, o) {
|
|
2541
|
+
typeof e == "object" && typeof t < "u" ? o(e) : typeof define == "function" && define.amd ? define("localforage-driver-memory", ["exports"], o) : o(r.LocalforageDriverMemory = {});
|
|
2542
|
+
})(typeof self < "u" ? self : e, function(r) {
|
|
2543
|
+
var o = "localforage-driver-memory";
|
|
2544
|
+
function i(m) {
|
|
2545
|
+
var I = typeof Symbol == "function" && m[Symbol.iterator], R = 0;
|
|
2546
|
+
return I ? I.call(m) : { next: function() {
|
|
2547
|
+
return m && R >= m.length && (m = void 0), { value: m && m[R++], done: !m };
|
|
2548
|
+
} };
|
|
2549
|
+
}
|
|
2550
|
+
function a(m, I) {
|
|
2551
|
+
m = m || [], I = I || {};
|
|
2552
|
+
try {
|
|
2553
|
+
return new Blob(m, I);
|
|
2554
|
+
} catch ($) {
|
|
2555
|
+
if ($.name !== "TypeError") throw $;
|
|
2556
|
+
for (var R = typeof BlobBuilder < "u" ? BlobBuilder : typeof MSBlobBuilder < "u" ? MSBlobBuilder : typeof MozBlobBuilder < "u" ? MozBlobBuilder : WebKitBlobBuilder, T = new R(), M = 0; M < m.length; M += 1) T.append(m[M]);
|
|
2557
|
+
return T.getBlob(I.type);
|
|
2558
|
+
}
|
|
2559
|
+
}
|
|
2560
|
+
var p = /^~~local_forage_type~([^~]+)~/, f = 9, A = f + 4, y = Object.prototype.toString;
|
|
2561
|
+
function g(m) {
|
|
2562
|
+
var I = m.length * 0.75, R = m.length;
|
|
2563
|
+
m[m.length - 1] === "=" && (I--, m[m.length - 2] === "=" && I--);
|
|
2564
|
+
for (var T = new ArrayBuffer(I), M = new Uint8Array(T), $ = 0, X = 0; $ < R; $ += 4) {
|
|
2565
|
+
var ee = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(m[$]), Te = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(m[$ + 1]), Re = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(m[$ + 2]), xe = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(m[$ + 3]);
|
|
2566
|
+
M[X++] = ee << 2 | Te >> 4, M[X++] = (Te & 15) << 4 | Re >> 2, M[X++] = (Re & 3) << 6 | xe & 63;
|
|
2567
|
+
}
|
|
2568
|
+
return T;
|
|
2569
|
+
}
|
|
2570
|
+
function h(m) {
|
|
2571
|
+
for (var I = new Uint8Array(m), R = "", T = 0; T < I.length; T += 3) R += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[I[T] >> 2], R += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(I[T] & 3) << 4 | I[T + 1] >> 4], R += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(I[T + 1] & 15) << 2 | I[T + 2] >> 6], R += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[I[T + 2] & 63];
|
|
2572
|
+
return I.length % 3 === 2 ? R = R.substring(0, R.length - 1) + "=" : I.length % 3 === 1 && (R = R.substring(0, R.length - 2) + "=="), R;
|
|
2573
|
+
}
|
|
2574
|
+
function S(m, I) {
|
|
2575
|
+
var R = "";
|
|
2576
|
+
if (m && (R = y.call(m)), m && (R === "[object ArrayBuffer]" || m.buffer && y.call(m.buffer) === "[object ArrayBuffer]")) {
|
|
2577
|
+
var T = void 0, M = "__lfsc__:";
|
|
2578
|
+
m instanceof ArrayBuffer ? (T = m, M += "arbf") : (T = m.buffer, R === "[object Int8Array]" ? M += "si08" : R === "[object Uint8Array]" ? M += "ui08" : R === "[object Uint8ClampedArray]" ? M += "uic8" : R === "[object Int16Array]" ? M += "si16" : R === "[object Uint16Array]" ? M += "ur16" : R === "[object Int32Array]" ? M += "si32" : R === "[object Uint32Array]" ? M += "ui32" : R === "[object Float32Array]" ? M += "fl32" : R === "[object Float64Array]" ? M += "fl64" : I(new Error("Failed to get type for BinaryArray"))), I(M + h(T));
|
|
2579
|
+
} else if (R === "[object Blob]") {
|
|
2580
|
+
var $ = new FileReader();
|
|
2581
|
+
$.onload = function() {
|
|
2582
|
+
var X = "~~local_forage_type~" + m.type + "~" + h(this.result);
|
|
2583
|
+
I("__lfsc__:blob" + X);
|
|
2584
|
+
}, $.readAsArrayBuffer(m);
|
|
2585
|
+
} else try {
|
|
2586
|
+
I(JSON.stringify(m));
|
|
2587
|
+
} catch (X) {
|
|
2588
|
+
console.error("Couldn't convert value into a JSON string: ", m), I(null, X);
|
|
2589
|
+
}
|
|
2590
|
+
}
|
|
2591
|
+
function P(m) {
|
|
2592
|
+
if (m.substring(0, f) !== "__lfsc__:") return JSON.parse(m);
|
|
2593
|
+
var I = m.substring(A), R = m.substring(f, A), T;
|
|
2594
|
+
if (R === "blob" && p.test(I)) {
|
|
2595
|
+
var M = I.match(p);
|
|
2596
|
+
T = M[1], I = I.substring(M[0].length);
|
|
2597
|
+
}
|
|
2598
|
+
var $ = g(I);
|
|
2599
|
+
switch (R) {
|
|
2600
|
+
case "arbf":
|
|
2601
|
+
return $;
|
|
2602
|
+
case "blob":
|
|
2603
|
+
return a([$], { type: T });
|
|
2604
|
+
case "si08":
|
|
2605
|
+
return new Int8Array($);
|
|
2606
|
+
case "ui08":
|
|
2607
|
+
return new Uint8Array($);
|
|
2608
|
+
case "uic8":
|
|
2609
|
+
return new Uint8ClampedArray($);
|
|
2610
|
+
case "si16":
|
|
2611
|
+
return new Int16Array($);
|
|
2612
|
+
case "ur16":
|
|
2613
|
+
return new Uint16Array($);
|
|
2614
|
+
case "si32":
|
|
2615
|
+
return new Int32Array($);
|
|
2616
|
+
case "ui32":
|
|
2617
|
+
return new Uint32Array($);
|
|
2618
|
+
case "fl32":
|
|
2619
|
+
return new Float32Array($);
|
|
2620
|
+
case "fl64":
|
|
2621
|
+
return new Float64Array($);
|
|
2622
|
+
default:
|
|
2623
|
+
throw new Error("Unkown type: " + R);
|
|
2624
|
+
}
|
|
2625
|
+
}
|
|
2626
|
+
function k(m) {
|
|
2627
|
+
var I, R;
|
|
2628
|
+
if (m === null || typeof m != "object" || "isActiveClone" in m) return m;
|
|
2629
|
+
var T = m instanceof Date ? new Date(m) : m.constructor();
|
|
2630
|
+
try {
|
|
2631
|
+
for (var M = i(Object.keys(m)), $ = M.next(); !$.done; $ = M.next()) {
|
|
2632
|
+
var X = $.value;
|
|
2633
|
+
Object.prototype.hasOwnProperty.call(m, X) && (m.isActiveClone = null, T[X] = k(m[X]), delete m.isActiveClone);
|
|
2634
|
+
}
|
|
2635
|
+
} catch (ee) {
|
|
2636
|
+
I = { error: ee };
|
|
2637
|
+
} finally {
|
|
2638
|
+
try {
|
|
2639
|
+
$ && !$.done && (R = M.return) && R.call(M);
|
|
2640
|
+
} finally {
|
|
2641
|
+
if (I) throw I.error;
|
|
2642
|
+
}
|
|
2643
|
+
}
|
|
2644
|
+
return T;
|
|
2645
|
+
}
|
|
2646
|
+
function F(m, I) {
|
|
2647
|
+
return (m.name || I.name) + "/" + (m.storeName || I.storeName) + "/";
|
|
2648
|
+
}
|
|
2649
|
+
function O(m, I) {
|
|
2650
|
+
I && m.then(function(R) {
|
|
2651
|
+
I(null, R);
|
|
2652
|
+
}, function(R) {
|
|
2653
|
+
I(R);
|
|
2654
|
+
});
|
|
2655
|
+
}
|
|
2656
|
+
function Y() {
|
|
2657
|
+
for (var m = [], I = 0; I < arguments.length; I++) m[I] = arguments[I];
|
|
2658
|
+
if (arguments.length && typeof arguments[arguments.length - 1] == "function") return arguments[arguments.length - 1];
|
|
2659
|
+
}
|
|
2660
|
+
function q(m, I) {
|
|
2661
|
+
var R = this;
|
|
2662
|
+
if (I = Y.apply(this, arguments), m = typeof m != "function" && m || {}, !m.name) {
|
|
2663
|
+
var T = this.config();
|
|
2664
|
+
m.name = m.name || T.name, m.storeName = m.storeName || T.storeName;
|
|
2665
|
+
}
|
|
2666
|
+
var M;
|
|
2667
|
+
return m.name ? M = new Promise(function($) {
|
|
2668
|
+
m.storeName ? $(F(m, R._defaultConfig)) : $(m.name + "/");
|
|
2669
|
+
}) : M = Promise.reject("Invalid arguments"), { promise: M, callback: I };
|
|
2670
|
+
}
|
|
2671
|
+
function V(m) {
|
|
2672
|
+
return typeof m != "string" && (console.warn(m + " used as a key, but it is not a string."), m = String(m)), m;
|
|
2673
|
+
}
|
|
2674
|
+
var le = { bufferToString: h, deserialize: P, serialize: S, stringToBuffer: g }, N = {}, j = (function() {
|
|
2675
|
+
function m(I) {
|
|
2676
|
+
this.kp = I, this.data = {};
|
|
2677
|
+
}
|
|
2678
|
+
return m.resolve = function(I) {
|
|
2679
|
+
return N[I] || (N[I] = new m(I)), N[I];
|
|
2680
|
+
}, m.prototype.clear = function() {
|
|
2681
|
+
this.data = {};
|
|
2682
|
+
}, m.prototype.drop = function() {
|
|
2683
|
+
this.clear(), delete N[this.kp];
|
|
2684
|
+
}, m.prototype.get = function(I) {
|
|
2685
|
+
return this.data[I];
|
|
2686
|
+
}, m.prototype.key = function(I) {
|
|
2687
|
+
return this.keys()[I];
|
|
2688
|
+
}, m.prototype.keys = function() {
|
|
2689
|
+
return Object.keys(this.data);
|
|
2690
|
+
}, m.prototype.rm = function(I) {
|
|
2691
|
+
delete this.data[I];
|
|
2692
|
+
}, m.prototype.set = function(I, R) {
|
|
2693
|
+
this.data[I] = R;
|
|
2694
|
+
}, m;
|
|
2695
|
+
})();
|
|
2696
|
+
function D(m) {
|
|
2697
|
+
var I = m ? k(m) : {}, R = F(I, this._defaultConfig), T = j.resolve(R);
|
|
2698
|
+
return this._dbInfo = I, this._dbInfo.serializer = le, this._dbInfo.keyPrefix = R, this._dbInfo.mStore = T, Promise.resolve();
|
|
2699
|
+
}
|
|
2700
|
+
function G(m) {
|
|
2701
|
+
var I = this, R = this.ready().then(function() {
|
|
2702
|
+
I._dbInfo.mStore.clear();
|
|
2703
|
+
});
|
|
2704
|
+
return O(R, m), R;
|
|
2705
|
+
}
|
|
2706
|
+
function Q(m, I) {
|
|
2707
|
+
var R = q.apply(this, arguments), T = R.promise, M = R.callback, $ = T.then(function(X) {
|
|
2708
|
+
j.resolve(X).drop();
|
|
2709
|
+
});
|
|
2710
|
+
return O($, M), T;
|
|
2711
|
+
}
|
|
2712
|
+
function re(m, I) {
|
|
2713
|
+
var R = this;
|
|
2714
|
+
m = V(m);
|
|
2715
|
+
var T = this.ready().then(function() {
|
|
2716
|
+
var M = R._dbInfo.mStore.get(m);
|
|
2717
|
+
return M == null ? null : R._dbInfo.serializer.deserialize(M);
|
|
2718
|
+
});
|
|
2719
|
+
return O(T, I), T;
|
|
2720
|
+
}
|
|
2721
|
+
function oe(m, I) {
|
|
2722
|
+
var R = this, T = this.ready().then(function() {
|
|
2723
|
+
for (var M = R._dbInfo.mStore, $ = M.keys(), X = 0; X < $.length; X++) {
|
|
2724
|
+
var ee = M.get($[X]);
|
|
2725
|
+
if (ee && (ee = R._dbInfo.serializer.deserialize(ee)), ee = m(ee, $[X], X + 1), ee !== void 0) return ee;
|
|
2726
|
+
}
|
|
2727
|
+
});
|
|
2728
|
+
return O(T, I), T;
|
|
2729
|
+
}
|
|
2730
|
+
function ie(m, I) {
|
|
2731
|
+
var R = this, T = this.ready().then(function() {
|
|
2732
|
+
var M;
|
|
2733
|
+
try {
|
|
2734
|
+
M = R._dbInfo.mStore.key(m), M === void 0 && (M = null);
|
|
2735
|
+
} catch {
|
|
2736
|
+
M = null;
|
|
2737
|
+
}
|
|
2738
|
+
return M;
|
|
2739
|
+
});
|
|
2740
|
+
return O(T, I), T;
|
|
2741
|
+
}
|
|
2742
|
+
function ue(m) {
|
|
2743
|
+
var I = this, R = this.ready().then(function() {
|
|
2744
|
+
return I._dbInfo.mStore.keys();
|
|
2745
|
+
});
|
|
2746
|
+
return O(R, m), R;
|
|
2747
|
+
}
|
|
2748
|
+
function Ne(m) {
|
|
2749
|
+
var I = this.keys().then(function(R) {
|
|
2750
|
+
return R.length;
|
|
2751
|
+
});
|
|
2752
|
+
return O(I, m), I;
|
|
2753
|
+
}
|
|
2754
|
+
function Oe(m, I) {
|
|
2755
|
+
var R = this;
|
|
2756
|
+
m = V(m);
|
|
2757
|
+
var T = this.ready().then(function() {
|
|
2758
|
+
R._dbInfo.mStore.rm(m);
|
|
2759
|
+
});
|
|
2760
|
+
return O(T, I), T;
|
|
2761
|
+
}
|
|
2762
|
+
function je(m, I, R) {
|
|
2763
|
+
var T = this;
|
|
2764
|
+
m = V(m);
|
|
2765
|
+
var M = this.ready().then(function() {
|
|
2766
|
+
I === void 0 && (I = null);
|
|
2767
|
+
var $ = I;
|
|
2768
|
+
return new Promise(function(X, ee) {
|
|
2769
|
+
T._dbInfo.serializer.serialize(I, function(Te, Re) {
|
|
2770
|
+
if (Re) ee(Re);
|
|
2771
|
+
else try {
|
|
2772
|
+
T._dbInfo.mStore.set(m, Te), X($);
|
|
2773
|
+
} catch (xe) {
|
|
2774
|
+
ee(xe);
|
|
2775
|
+
}
|
|
2776
|
+
});
|
|
2777
|
+
});
|
|
2778
|
+
});
|
|
2779
|
+
return O(M, R), M;
|
|
2780
|
+
}
|
|
2781
|
+
var ye = !0;
|
|
2782
|
+
r._support = ye, r._driver = o, r._initStorage = D, r.clear = G, r.dropInstance = Q, r.getItem = re, r.iterate = oe, r.key = ie, r.keys = ue, r.length = Ne, r.removeItem = Oe, r.setItem = je, Object.defineProperty(r, "__esModule", { value: !0 });
|
|
2783
|
+
});
|
|
2784
|
+
}), bt = Gr(da()), mr = Gr(fa()), ha = { display: "none", position: "fixed", top: "0", right: "0", width: "100%", height: "100%", borderRadius: "0", border: "none", opacity: "0", zIndex: "-1" };
|
|
2785
|
+
function pa(e) {
|
|
2786
|
+
for (let [t, r] of Object.entries(ha)) e.style[t] = r;
|
|
2787
|
+
}
|
|
2788
|
+
function ma(e) {
|
|
2789
|
+
return !![].slice.call(document.querySelectorAll(".magic-iframe")).find((t) => t.src.includes(e));
|
|
2790
|
+
}
|
|
2791
|
+
var va = class extends oa {
|
|
2792
|
+
activeElement = null;
|
|
2793
|
+
iframe;
|
|
2794
|
+
relayerSrc = ut(`/send?params=${encodeURIComponent(this.parameters)}`, this.endpoint).href;
|
|
2795
|
+
init() {
|
|
2796
|
+
this.test = "hello", this.iframe = new Promise((e) => {
|
|
2797
|
+
let t = () => {
|
|
2798
|
+
if (ma(encodeURIComponent(this.parameters))) ui().log();
|
|
2799
|
+
else {
|
|
2800
|
+
let r = document.createElement("iframe");
|
|
2801
|
+
r.classList.add("magic-iframe"), r.dataset.magicIframeLabel = ut(this.endpoint).host, r.title = "Secure Modal", r.src = this.relayerSrc, r.allow = "clipboard-read; clipboard-write", pa(r), document.body.appendChild(r), e(r);
|
|
2802
|
+
}
|
|
2803
|
+
};
|
|
2804
|
+
["loaded", "interactive", "complete"].includes(document.readyState) ? t() : window.addEventListener("load", t, !1);
|
|
2805
|
+
}), this.iframe.then((e) => {
|
|
2806
|
+
e instanceof HTMLIFrameElement && e.addEventListener("load", async () => {
|
|
2807
|
+
this.heartbeatDebounce();
|
|
2808
|
+
});
|
|
2809
|
+
}), window.addEventListener("message", (e) => {
|
|
2810
|
+
if (e.origin === this.endpoint && e.data.msgType && (e.data.msgType.includes(we.MAGIC_PONG) && (this.lastPongTime = Date.now()), e.data && this.messageHandlers.size)) {
|
|
2811
|
+
e.data.response = e.data.response ?? {}, this.stopHeartBeat();
|
|
2812
|
+
for (let t of this.messageHandlers.values()) t(e);
|
|
2813
|
+
}
|
|
2814
|
+
}), window.addEventListener("beforeunload", () => {
|
|
2815
|
+
this.stopHeartBeat();
|
|
2816
|
+
});
|
|
2817
|
+
}
|
|
2818
|
+
async showOverlay() {
|
|
2819
|
+
let e = await this.iframe;
|
|
2820
|
+
e.style.display = "block", e.style.zIndex = "2147483647", e.style.opacity = "1", this.activeElement = document.activeElement, e.focus();
|
|
2821
|
+
}
|
|
2822
|
+
async hideOverlay() {
|
|
2823
|
+
let e = await this.iframe;
|
|
2824
|
+
e.style.display = "none", e.style.zIndex = "-1", e.style.opacity = "0", this.activeElement?.focus && this.activeElement.focus(), this.activeElement = null;
|
|
2825
|
+
}
|
|
2826
|
+
async _post(e) {
|
|
2827
|
+
let t = await this.iframe;
|
|
2828
|
+
if (t && t.contentWindow) t.contentWindow.postMessage(e, this.endpoint);
|
|
2829
|
+
else throw Ar();
|
|
2830
|
+
}
|
|
2831
|
+
async checkRelayerExistsInDOM() {
|
|
2832
|
+
let e = await this.iframe;
|
|
2833
|
+
return !e || !e.contentWindow ? !1 : !![].slice.call(document.querySelectorAll(".magic-iframe")).find((t) => t.src.includes(encodeURIComponent(this.parameters)));
|
|
2834
|
+
}
|
|
2835
|
+
async reloadRelayer() {
|
|
2836
|
+
let e = await this.iframe;
|
|
2837
|
+
if (this.stopHeartBeat(), !e) {
|
|
2838
|
+
this.init(), console.warn("Magic SDK: Modal lost, re-initiating");
|
|
2839
|
+
return;
|
|
2840
|
+
}
|
|
2841
|
+
if (!e.contentWindow) {
|
|
2842
|
+
document.body.appendChild(e), console.warn("Magic SDK: Modal did not append in the iframe, re-initiating");
|
|
2843
|
+
return;
|
|
2844
|
+
}
|
|
2845
|
+
e && (e.src = this.relayerSrc);
|
|
2846
|
+
}
|
|
2847
|
+
}, ya = oi(Yi, { platform: "web", sdkName: "magic-sdk", version: "30.0.0", defaultEndpoint: "https://auth.magic.link/", ViewController: va, configureStorage: async () => {
|
|
2848
|
+
let e = bt.default.createInstance({ name: "MagicAuthLocalStorageDB", storeName: "MagicAuthLocalStorage" });
|
|
2849
|
+
return await e.defineDriver(mr), await e.setDriver([bt.default.INDEXEDDB, bt.default.LOCALSTORAGE, mr._driver]), e;
|
|
2850
|
+
} });
|
|
2851
|
+
class Wr {
|
|
2852
|
+
constructor(t, r = this) {
|
|
2853
|
+
this.endpoint = t, this.api = r;
|
|
2854
|
+
}
|
|
2855
|
+
async stdPGET(t, r, o, i = {}) {
|
|
2856
|
+
const a = await fetch(this.endpoint + r, {
|
|
2857
|
+
method: t,
|
|
2858
|
+
headers: {
|
|
2859
|
+
"Content-Type": "application/json",
|
|
2860
|
+
// Include credentials (cookies) in the request
|
|
2861
|
+
Accept: "application/json",
|
|
2862
|
+
...i
|
|
2863
|
+
},
|
|
2864
|
+
body: o ? JSON.stringify(o) : null,
|
|
2865
|
+
credentials: "include"
|
|
2866
|
+
// This ensures cookies are sent with the request
|
|
2867
|
+
});
|
|
2868
|
+
return this.withResp(a);
|
|
2869
|
+
}
|
|
2870
|
+
async withResp(t) {
|
|
2871
|
+
if (!t.ok) {
|
|
2872
|
+
const r = await t.json().catch(() => ({})), o = new Error("Network response was not ok");
|
|
2873
|
+
throw Object.assign(o, { response: t, data: r }), o;
|
|
2874
|
+
}
|
|
2875
|
+
return t.json().then((r) => ({ data: r, response: t }));
|
|
2876
|
+
}
|
|
2877
|
+
async post(t, r = {}) {
|
|
2878
|
+
return this.stdPGET("POST", t, r);
|
|
2879
|
+
}
|
|
2880
|
+
async get(t, r = {}) {
|
|
2881
|
+
return this.stdPGET("GET", t, void 0, r);
|
|
2882
|
+
}
|
|
2883
|
+
async loginWithMagicDid(t) {
|
|
2884
|
+
const { data: r } = await this.api.post("/v1/auth/login/did", { did: t });
|
|
2885
|
+
return r;
|
|
2886
|
+
}
|
|
2887
|
+
async loginWithWeb3WalletSignature(t) {
|
|
2888
|
+
const { data: r } = await this.api.post("/v1/auth/login/signature", t);
|
|
2889
|
+
return r;
|
|
2890
|
+
}
|
|
2891
|
+
async loginExtWithWeb3WalletSignature(t) {
|
|
2892
|
+
const { data: r } = await this.api.post("/v1/auth/login/ext-signature", t);
|
|
2893
|
+
return r;
|
|
2894
|
+
}
|
|
2895
|
+
// Logout of the backend with access token. Assumes user is currently logged in and has a cookie with the access token
|
|
2896
|
+
async logout(t) {
|
|
2897
|
+
await this.api.post("/v1/auth/logout", { accessToken: t }), await this.writePlayerEvent("player_logged_out");
|
|
2898
|
+
}
|
|
2899
|
+
// Use the cookie stored in the browser to get the user and save user model in state and local storage
|
|
2900
|
+
// This assumes that the user is logged to backend in and has a cookie jwt
|
|
2901
|
+
async getLoggedInUser(t) {
|
|
2902
|
+
const { data: r } = await this.api.get("/v1/auth/me", {
|
|
2903
|
+
Authorization: `Bearer ${t}`
|
|
2904
|
+
});
|
|
2905
|
+
return r;
|
|
2906
|
+
}
|
|
2907
|
+
// async loginPlayFabPlayer() {}
|
|
2908
|
+
/*async loginPlayFabPlayer() {
|
|
2909
|
+
try {
|
|
2910
|
+
// Get the user's playfab id from taunt api
|
|
2911
|
+
let id = null;
|
|
2912
|
+
if (!this.user && !this.user?.id) {
|
|
2913
|
+
id = this.getPlayfabAnonId()
|
|
2914
|
+
if (!id) {
|
|
2915
|
+
const { data: playFabResponse } = await this.api.get('/v1/auth/playfab', {})
|
|
2916
|
+
id = playFabResponse.playFabId
|
|
2917
|
+
this.setAnonPlayfabUserId(playFabResponse.playFabId);
|
|
2918
|
+
}
|
|
2919
|
+
} else {
|
|
2920
|
+
const { data: playFabResponse } = await this.api.get('/v1/auth/playfab', {})
|
|
2921
|
+
id = playFabResponse.playFabId
|
|
2922
|
+
}
|
|
2923
|
+
// Login with playfab via the unique id from taunt api
|
|
2924
|
+
const { data: playFabLoginResults } = await Axios.post(loginEndpoint, {
|
|
2925
|
+
CustomId: id,
|
|
2926
|
+
CreateAccount: true,
|
|
2927
|
+
titleId: playFabTitleId,
|
|
2928
|
+
})
|
|
2929
|
+
const playFabSession = JSON.stringify(playFabLoginResults.data)
|
|
2930
|
+
this.setPlayFabSession(playFabSession)
|
|
2931
|
+
}
|
|
2932
|
+
catch (error) {
|
|
2933
|
+
const err = error as AxiosError
|
|
2934
|
+
if (err?.response) {
|
|
2935
|
+
console.log(err.response.status, err.response.data)
|
|
2936
|
+
}
|
|
2937
|
+
else {
|
|
2938
|
+
console.log(error)
|
|
2939
|
+
}
|
|
2940
|
+
}
|
|
2941
|
+
}*/
|
|
2942
|
+
// async getCToken() {
|
|
2943
|
+
// try {
|
|
2944
|
+
// const url = "v1/claimr/token"
|
|
2945
|
+
// const { data } = await this.api.get<{ data: { token: string } }>(`${url}`)
|
|
2946
|
+
// this.claimrToken = data.data.token
|
|
2947
|
+
// this.setClaimrToken(this.claimrToken)
|
|
2948
|
+
// } catch (e) {
|
|
2949
|
+
// console.error(e)
|
|
2950
|
+
// }
|
|
2951
|
+
// }
|
|
2952
|
+
// setLastWalletConnection(lastWalletConnection: string) {
|
|
2953
|
+
// localStorage.setItem("lastWalletConnection", lastWalletConnection)
|
|
2954
|
+
// }
|
|
2955
|
+
// setRefId(ref = "") {
|
|
2956
|
+
// this.refId = ref
|
|
2957
|
+
// }
|
|
2958
|
+
// clearLocalAuthStorage() {
|
|
2959
|
+
// localStorage.removeItem("user")
|
|
2960
|
+
// localStorage.removeItem("refreshToken")
|
|
2961
|
+
// localStorage.removeItem("playFabSession")
|
|
2962
|
+
// this.user = null
|
|
2963
|
+
// }
|
|
2964
|
+
// setAccessToken(accessToken: string) {
|
|
2965
|
+
// localStorage.setItem("accessToken", accessToken)
|
|
2966
|
+
// }
|
|
2967
|
+
// setRefreshToken(refreshToken: string) {
|
|
2968
|
+
// localStorage.setItem("refreshToken", refreshToken)
|
|
2969
|
+
// }
|
|
2970
|
+
// setIsFirsTimeLogin(isFirstTimeLogin: string) {
|
|
2971
|
+
// localStorage.setItem("isFirstTimeLogin", isFirstTimeLogin)
|
|
2972
|
+
// }
|
|
2973
|
+
// setPlayFabSession(playFabSession: string) {
|
|
2974
|
+
// localStorage.setItem("playFabSession", playFabSession)
|
|
2975
|
+
// }
|
|
2976
|
+
// setAnonPlayfabUserId(id: string) {
|
|
2977
|
+
// localStorage.setItem("playfabAnonId", id)
|
|
2978
|
+
// }
|
|
2979
|
+
// setClaimrToken(token: string) {
|
|
2980
|
+
// localStorage.setItem("ctoken", token)
|
|
2981
|
+
// }
|
|
2982
|
+
// getAccessToken() {
|
|
2983
|
+
// return localStorage.getItem("accessToken")
|
|
2984
|
+
// }
|
|
2985
|
+
// getRefreshToken() {
|
|
2986
|
+
// return localStorage.getItem("refreshToken")
|
|
2987
|
+
// }
|
|
2988
|
+
// getPlayfabAnonId() {
|
|
2989
|
+
// return localStorage.getItem("playfabAnonId")
|
|
2990
|
+
// }
|
|
2991
|
+
// Write a playfab event. retryfIfLoginNeeded should not be set by caller. It's used for stopping recursive calls when login is needed.
|
|
2992
|
+
// If login is needed, for example, if the web browser has been open longer than playfab session timeout, we'll try to login again at most
|
|
2993
|
+
// one time. Then we'll retry the event.
|
|
2994
|
+
async writePlayerEvent(t, r = null, o = !0) {
|
|
2995
|
+
return console.log("writePlayerEvent", {
|
|
2996
|
+
eventName: t,
|
|
2997
|
+
eventData: r,
|
|
2998
|
+
retryIfLoginNeeded: o
|
|
2999
|
+
}), Promise.resolve();
|
|
3000
|
+
}
|
|
3001
|
+
}
|
|
3002
|
+
const ga = {
|
|
3003
|
+
rpcUrl: "https://polygon-rpc.com",
|
|
3004
|
+
// your ethereum, polygon, or optimism mainnet/testnet rpc URL
|
|
3005
|
+
chainId: 137
|
|
3006
|
+
};
|
|
3007
|
+
function Ea(e, t) {
|
|
3008
|
+
return new ya(e, {
|
|
3009
|
+
network: ga
|
|
3010
|
+
}).auth.loginWithEmailOTP({ email: t });
|
|
3011
|
+
}
|
|
3012
|
+
async function Ia(e, t, r) {
|
|
3013
|
+
const o = new Wr(e);
|
|
3014
|
+
try {
|
|
3015
|
+
const i = await Ea(t, r);
|
|
3016
|
+
if (!i) throw new Error("No DID returned");
|
|
3017
|
+
return console.log("Magic email OTP login", { did: i }), o.loginWithMagicDid(i);
|
|
3018
|
+
} catch (i) {
|
|
3019
|
+
throw console.error("Magic login error:", i), i;
|
|
3020
|
+
}
|
|
3021
|
+
}
|
|
3022
|
+
async function wa(e, t) {
|
|
3023
|
+
if (t = t || window.ethereum, !t) throw new Error("MetaMask provider not found");
|
|
3024
|
+
const r = await t.request({
|
|
3025
|
+
method: "eth_requestAccounts"
|
|
3026
|
+
});
|
|
3027
|
+
if (!r.length) throw new Error("No accounts returned");
|
|
3028
|
+
console.log("MetaMask", { accounts: r });
|
|
3029
|
+
const o = r[0], i = `${e}/v1/auth`, a = new Uint32Array(3), p = crypto.getRandomValues(a).toString(), f = await fetch(`${i}/nonce/login`, {
|
|
3030
|
+
method: "POST",
|
|
3031
|
+
body: JSON.stringify({ walletAddress: o, clientNonce: p }),
|
|
3032
|
+
headers: { "Content-Type": "application/json" }
|
|
3033
|
+
}).then((h) => h.text()), y = `Sign this message with your wallet to connect to Taunt Battleworld ::: ${JSON.stringify({ clientNonce: p, serverNonce: f })}`;
|
|
3034
|
+
let g;
|
|
3035
|
+
try {
|
|
3036
|
+
g = await t.request({
|
|
3037
|
+
method: "personal_sign",
|
|
3038
|
+
params: [y, o]
|
|
3039
|
+
});
|
|
3040
|
+
} catch {
|
|
3041
|
+
throw new Error("User denied message signature");
|
|
3042
|
+
}
|
|
3043
|
+
if (!g) throw new Error("No signature returned");
|
|
3044
|
+
return { walletAddress: o, message: y, signature: g };
|
|
3045
|
+
}
|
|
3046
|
+
async function _a(e, t) {
|
|
3047
|
+
const r = new Wr(e), { walletAddress: o, message: i, signature: a } = await wa(
|
|
3048
|
+
e,
|
|
3049
|
+
t
|
|
3050
|
+
);
|
|
3051
|
+
return r.loginWithWeb3WalletSignature({
|
|
3052
|
+
walletAddress: o,
|
|
3053
|
+
message: i,
|
|
3054
|
+
signature: a
|
|
3055
|
+
});
|
|
3056
|
+
}
|
|
3057
|
+
const Ta = ({
|
|
3058
|
+
children: e,
|
|
3059
|
+
tauntServiceEndpoint: t,
|
|
3060
|
+
magicKey: r
|
|
3061
|
+
}) => {
|
|
3062
|
+
const [o, i] = vr(), a = st(
|
|
3063
|
+
(f) => {
|
|
3064
|
+
if (!r) throw new Error("magicKey is required for OTP login");
|
|
3065
|
+
Ia(t, r, f).then(
|
|
3066
|
+
i
|
|
3067
|
+
);
|
|
3068
|
+
},
|
|
3069
|
+
[t]
|
|
3070
|
+
), p = st(
|
|
3071
|
+
() => _a(t).then(i),
|
|
3072
|
+
[t]
|
|
3073
|
+
);
|
|
3074
|
+
return t ? /* @__PURE__ */ Le(
|
|
3075
|
+
yr.Provider,
|
|
3076
|
+
{
|
|
3077
|
+
value: { tauntServiceEndpoint: t, deets: o, otpMagicLogin: a, metamaskLogin: p },
|
|
3078
|
+
children: e
|
|
3079
|
+
}
|
|
3080
|
+
) : /* @__PURE__ */ Le("div", { children: "tauntServiceEndpoint is required" });
|
|
3081
|
+
};
|
|
3082
|
+
export {
|
|
3083
|
+
Na as MagicEmailInput,
|
|
3084
|
+
Ra as MetaMaskButton,
|
|
3085
|
+
yr as TauntContext,
|
|
3086
|
+
Ta as TauntProvider,
|
|
3087
|
+
gr as useTaunt
|
|
3088
|
+
};
|
|
3089
|
+
//# sourceMappingURL=taunt-logins-ui-react.js.map
|