@redzone/taunt-logins-ui-react 0.0.12 → 0.0.14
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/cjs/cc-D-353NYd.cjs +63 -0
- package/dist/cjs/index.cjs +655 -0
- package/dist/cjs/index.d.cts +114 -0
- package/dist/es/cc-D6TRVNtd.js +61 -0
- package/dist/es/index.d.ts +114 -0
- package/dist/es/index.js +644 -0
- package/package.json +39 -29
- package/README.md +0 -73
- package/dist/LoadingView.d.ts +0 -1
- package/dist/LoginUIComplete.d.ts +0 -7
- package/dist/LoginView.d.ts +0 -41
- package/dist/ModalView.d.ts +0 -7
- package/dist/assets/fonts/DrukTextWide-Bold-Trial.otf +0 -0
- package/dist/coinbase.d.ts +0 -5
- package/dist/index.d.ts +0 -11
- package/dist/magic.d.ts +0 -4
- package/dist/meta.d.ts +0 -5
- package/dist/metamask.d.ts +0 -5
- package/dist/taunt-logins-ui-react.css +0 -1
- package/dist/taunt-logins-ui-react.d.ts +0 -2
- package/dist/taunt-logins-ui-react.js +0 -3639
- package/dist/taunt-logins-ui-react.js.map +0 -1
- package/dist/taunt-logins-ui-react.umd.cjs +0 -12
- package/dist/taunt-logins-ui-react.umd.cjs.map +0 -1
- package/dist/tauntContext.d.ts +0 -18
- package/dist/tauntProvider.d.ts +0 -5
- package/dist/telegram.d.ts +0 -5
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"taunt-logins-ui-react.js","sources":["../src/lib/coinbase.tsx","../src/lib/LoadingView.tsx","../src/lib/LoginUIComplete.tsx","../src/lib/tauntContext.ts","../src/lib/magic.tsx","../src/lib/meta.tsx","../src/lib/metamask.tsx","../src/lib/telegram.tsx","../src/lib/LoginView.tsx","../src/lib/ModalView.tsx","../node_modules/@magic-sdk/types/dist/es/index.mjs","../node_modules/@magic-sdk/provider/dist/es/index.mjs","../node_modules/@magic-ext/oauth2/dist/es/index.mjs","../node_modules/magic-sdk/dist/es/index.mjs","../node_modules/@redzone/taunt-logins/dist/taunt-logins.js","../src/lib/tauntProvider.tsx"],"sourcesContent":["import { useCallback } from \"react\"\nimport \"./styling.css\"\n\n\nconst coinbaseLogo = 'https://res.cloudinary.com/dz0wa3qbj/image/upload/v1760030923/coinbase_kyknjr.png'\n\nexport interface CoinbaseButtonProps {\n openCoinbase?: () => void\n disabled?: boolean\n}\n\nexport const CoinbaseButton = ({\n openCoinbase,\n disabled = false\n}: CoinbaseButtonProps) => {\n\n\n const runCoinbase = useCallback(() => {\n if (disabled) return\n if (openCoinbase) {\n openCoinbase()\n } else {\n console.log(\"Coinbase login not yet implemented\")\n }\n }, [openCoinbase, disabled])\n\n return (\n <button \n className={`rdz-icon-button ${disabled ? 'rdz-icon-button-disabled' : ''}`}\n onClick={runCoinbase}\n disabled={disabled}\n >\n <img src={coinbaseLogo} alt=\"Coinbase\" />\n </button>\n )\n}\n\n","export function LoadingView() {\n return (\n <div\n className=\"rzd-loginview\"\n style={{\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n gap: 20\n }}>\n <h1>Processing...</h1>\n <div\n style={{\n width: \"60px\",\n height: \"60px\",\n border: \"4px solid #009df3\",\n borderTop: \"4px solid transparent\",\n borderRadius: \"50%\",\n animation: \"spin 1s linear infinite\"\n }}\n />\n <style>{`\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n `}</style>\n <p\n style={{\n fontFamily: \"Futura PT, sans-serif\",\n fontSize: \"1.2em\",\n color: \"white\"\n }}>\n Please wait while we authenticate you...\n </p>\n </div>\n )\n}\n","import { LoadingView, LoginComponentProps, LoginView, useTaunt } from \".\"\n\nimport \"../lib/styling.css\"\n\ntype LoginUICompleteProps = LoginComponentProps & {\n className?: string\n extLoading?: boolean\n}\n\nexport const LoginUIComplete = ({\n className,\n extLoading=false,\n ...loginProps\n}: LoginUICompleteProps) => {\n const { loggedIn, isLoading } = useTaunt()\n\n return (\n <div className={`rzd-loginview rzd-loginui-complete ${className || \"\"}`}>\n {extLoading || isLoading ? (\n <LoadingView />\n ) : loggedIn ? (\n <LoggedInView />\n ) : (\n <>\n <h1 className=\"header-login\">login</h1>\n <LoginView {...loginProps} />\n </>\n )}\n </div>\n )\n}\n\nfunction LoggedInView() {\n return (\n <>\n <h1>Successfully Logged In</h1>\n <p style={{ fontFamily: \"Futura PT, sans-serif\", fontSize: \"1.2em\" }}>\n You are now logged in!\n </p>\n <LogoutButton />\n </>\n )\n}\n\nfunction LogoutButton() {\n const { logout } = useTaunt()\n\n return (\n <button onClick={logout} className=\"rdz-logout-button\" type=\"button\">\n Logout\n </button>\n )\n}\n","import { createContext, useContext } from \"react\"\n\ntype ContextProps = {\n tauntServiceEndpoint: string\n loggedIn: boolean\n deets?: { accessToken: string; refreshToken: string }\n isLoading: boolean\n metamaskLogin: () => void\n otpMagicLogin: (email: string) => void\n telegramLogin: () => void\n metaLogin: () => void\n coinbaseLogin: () => void\n logout: () => void\n}\n\nexport const TauntContext = createContext<ContextProps>({\n tauntServiceEndpoint: \"\",\n isLoading: false,\n loggedIn: false,\n metamaskLogin: () => {},\n otpMagicLogin: () => {},\n telegramLogin: () => {},\n metaLogin: () => {},\n coinbaseLogin: () => {},\n logout: () => {}\n})\n\nexport function useTaunt() {\n const ctx = useContext(TauntContext)\n if (!ctx) {\n throw new Error(\"useTaunt must be used within a TauntProvider\")\n }\n return ctx\n}\n","import { useMemo, useState } from \"react\"\nimport \"./styling.css\"\nimport { useTaunt } from \"./tauntContext\"\n\nconst btnImage = \"https://res.cloudinary.com/dz0wa3qbj/image/upload/v1760030925/btn_ioay6n.png\"\n\nexport type MagicEmailProps = {\n onEmail?: (email: string) => void\n}\n\nexport const MagicEmailInput = ({ onEmail }: MagicEmailProps) => {\n const { otpMagicLogin } = useTaunt()\n const [email, setEmail] = useState<string>()\n const [showError, setShowError] = useState(false)\n\n const validEmail = useMemo(() => {\n const validRegex =\n /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$/\n return email?.match(validRegex) ? email : undefined\n }, [email])\n\n const runMagic = () => {\n if (!validEmail) {\n setShowError(true)\n return\n }\n\n setShowError(false)\n\n if (onEmail) {\n onEmail(email!)\n } else {\n otpMagicLogin(email!)\n }\n }\n\n return (\n <div className=\"rdz-magic-email-container\">\n {showError && (\n <div className=\"rdz-magic-email-error\">Please enter a valid email</div>\n )}\n <input\n className=\"rdz-input\"\n onChange={(e) => setEmail(e.target.value ? e.target.value : undefined)}\n placeholder=\"Email address\"\n type=\"email\"\n value={email}\n />\n <button \n onClick={runMagic} \n type=\"button\"\n className=\"rdz-magic-email-button\"\n style={{\n backgroundImage: `url(${btnImage})`\n }}\n >\n LOG IN / SIGN UP\n </button>\n \n </div>\n )\n}\n","import { useCallback } from \"react\"\nimport \"./styling.css\"\n\n\nconst metaLogo = \"https://res.cloudinary.com/dz0wa3qbj/image/upload/v1760030923/meta_rhrjov.png\"\n\nexport interface MetaButtonProps {\n openMeta?: () => void\n disabled?: boolean\n}\n\nexport const MetaButton = ({\n openMeta,\n disabled = false\n}: MetaButtonProps) => {\n // const { metaLogin } = useTaunt() // Uncomment when meta login is implemented\n\n const runMeta = useCallback(() => {\n if (disabled) return\n if (openMeta) {\n openMeta()\n } else {\n // metaLogin() // Uncomment when meta login is implemented\n console.log(\"Meta login not yet implemented\")\n }\n }, [openMeta, disabled])\n\n return (\n <button \n className={`rdz-icon-button ${disabled ? 'rdz-icon-button-disabled' : ''}`}\n onClick={runMeta}\n disabled={disabled}\n >\n <img src={metaLogo} alt=\"Meta\" />\n </button>\n )\n}\n\n","import { useCallback } from \"react\"\n\nimport \"./styling.css\"\n\nimport { useTaunt } from \"./tauntContext\"\n\nconst metamaskLogo = \"https://res.cloudinary.com/dz0wa3qbj/image/upload/v1760030924/metamask_asjtmi.png\"\n\nexport interface MetaMaskButtonProps {\n openMetamask?: () => void\n disabled?: boolean\n}\n\nexport const MetaMaskButton = ({\n openMetamask,\n disabled = false\n}: MetaMaskButtonProps) => {\n const { metamaskLogin } = useTaunt()\n\n const runMetamask = useCallback(() => {\n if (disabled) return\n if (openMetamask) {\n openMetamask()\n } else {\n metamaskLogin()\n }\n }, [metamaskLogin, openMetamask, disabled])\n\n return (\n <button \n className={`rdz-icon-button ${disabled ? 'rdz-icon-button-disabled' : ''}`}\n onClick={runMetamask}\n disabled={disabled}\n >\n <img src={metamaskLogo} alt=\"MetaMask\" />\n </button>\n )\n}\n","import { useCallback } from \"react\"\n\nimport \"./styling.css\"\n\nimport { useTaunt } from \"./tauntContext\"\n\nconst telegramLogo = \"https://res.cloudinary.com/dz0wa3qbj/image/upload/v1760030924/tel_vcs64d.png\"\n\nexport interface TelegramButtonProps {\n openTelegram?: () => void\n disabled?: boolean\n}\n\nexport const TelegramButton = ({\n openTelegram,\n disabled = false\n}: TelegramButtonProps) => {\n const { telegramLogin } = useTaunt()\n\n const runTelegram = useCallback(() => {\n if (disabled) return\n if (openTelegram) {\n openTelegram()\n } else {\n telegramLogin()\n }\n }, [telegramLogin, openTelegram, disabled])\n\n return (\n <button \n className={`rdz-icon-button ${disabled ? 'rdz-icon-button-disabled' : ''}`}\n onClick={runTelegram}\n disabled={disabled}\n >\n <img src={telegramLogo} alt=\"Telegram\" />\n </button>\n )\n}\n","import { useState } from \"react\"\n\nimport \"./styling.css\"\n\nimport { CoinbaseButton, CoinbaseButtonProps } from \"./coinbase\"\nimport { MagicEmailInput, MagicEmailProps } from \"./magic\"\nimport { MetaButton, MetaButtonProps } from \"./meta\"\nimport { MetaMaskButton, MetaMaskButtonProps } from \"./metamask\"\nimport { TelegramButton, TelegramButtonProps } from \"./telegram\"\n\nexport type LoginProvider =\n | \"email\"\n | \"metamask\"\n | \"telegram\"\n | \"meta\"\n | \"coinbase\"\n\nexport interface LoginComponentProps {\n /** Array of login providers to display. If not provided, shows all providers */\n providers?: LoginProvider[]\n /** Whether to show the email/magic link login */\n showEmail?: boolean\n /** If true, show all providers but disable unsupported ones. If false, hide unsupported providers */\n showDisabled?: boolean\n /** Custom text for the divider between email and social logins */\n dividerText?: string\n /** Gap between provider buttons in pixels */\n providerGap?: number\n /** Whether to show terms and privacy links (default: false) */\n showTerms?: boolean\n /** Terms of Service text content (if provided, will show in built-in modal) */\n termsContent?: string\n /** Privacy Policy text content (if provided, will show in built-in modal) */\n privacyContent?: string\n /** Custom terms of service click handler (use if you want custom modal handling) */\n onTermsClick?: () => void\n /** Custom privacy policy click handler (use if you want custom modal handling) */\n onPrivacyClick?: () => void\n /** Custom modal component to use for displaying terms/privacy (optional) */\n ModalComponent?: React.ComponentType<{\n title: string\n content: string\n onClose: () => void\n }>\n /** Callback when email is entered (for custom handling) */\n magicEmailProps?: MagicEmailProps\n coinbaseProps?: CoinbaseButtonProps\n metamaskProps?: MetaMaskButtonProps\n metaProps?: MetaButtonProps\n telegramProps?: TelegramButtonProps\n}\n\nexport const LoginView = ({\n providers = [\"email\", \"metamask\", \"telegram\", \"meta\", \"coinbase\"],\n showEmail = true,\n showDisabled = false,\n dividerText = \"Or Sign Up Using\",\n providerGap = 20,\n showTerms = false,\n termsContent,\n privacyContent,\n onTermsClick,\n onPrivacyClick,\n ModalComponent,\n magicEmailProps = {},\n coinbaseProps = {},\n metamaskProps = {},\n metaProps = {},\n telegramProps = {}\n}: LoginComponentProps) => {\n const [modalContent, setModalContent] = useState<{\n title: string\n content: string\n } | null>(null)\n\n const showEmailInput = showEmail || providers.includes(\"email\")\n const allSocialProviders: LoginProvider[] = [\n \"coinbase\",\n \"metamask\",\n \"meta\",\n \"telegram\"\n ]\n\n // Determine which social providers to show\n const socialProvidersToShow = showDisabled\n ? allSocialProviders\n : allSocialProviders.filter((p) => providers.includes(p))\n\n const hasSocialProviders = socialProvidersToShow.length > 0\n\n const handleTermsClick = () => {\n console.log(\"Terms clicked\", { onTermsClick, termsContent: !!termsContent })\n if (onTermsClick) {\n onTermsClick()\n } else if (termsContent) {\n setModalContent({ title: \"Terms of Service\", content: termsContent })\n }\n }\n\n const handlePrivacyClick = () => {\n console.log(\"Privacy clicked\", {\n onPrivacyClick,\n privacyContent: !!privacyContent\n })\n if (onPrivacyClick) {\n onPrivacyClick()\n } else if (privacyContent) {\n setModalContent({ title: \"Privacy Policy\", content: privacyContent })\n }\n }\n\n return (\n <>\n {showEmailInput && <MagicEmailInput {...magicEmailProps} />}\n\n {showEmailInput && hasSocialProviders && (\n <p className=\"rdz-sign-up-text\">{dividerText}</p>\n )}\n\n {hasSocialProviders && (\n <div\n style={{\n display: \"flex\",\n flexDirection: \"row\",\n gap: providerGap,\n alignItems: \"center\"\n }}>\n {socialProvidersToShow.includes(\"coinbase\") && (\n <CoinbaseButton\n disabled={!providers.includes(\"coinbase\")}\n {...coinbaseProps}\n />\n )}\n {socialProvidersToShow.includes(\"metamask\") && (\n <MetaMaskButton\n disabled={!providers.includes(\"metamask\")}\n {...metamaskProps}\n />\n )}\n {socialProvidersToShow.includes(\"meta\") && (\n <MetaButton disabled={!providers.includes(\"meta\")} {...metaProps} />\n )}\n {socialProvidersToShow.includes(\"telegram\") && (\n <TelegramButton\n disabled={!providers.includes(\"telegram\")}\n {...telegramProps}\n />\n )}\n </div>\n )}\n\n {console.log(\"Terms render check:\", {\n showTerms,\n hasTermsContent: !!termsContent,\n hasPrivacyContent: !!privacyContent,\n hasTermsClick: !!onTermsClick,\n hasPrivacyClick: !!onPrivacyClick\n })}\n {showTerms &&\n (termsContent || privacyContent || onTermsClick || onPrivacyClick) && (\n <p\n style={{\n fontFamily: \"Futura PT, sans-serif\",\n fontSize: \"1.3em\"\n }}>\n By connecting you are agreeing to our{\" \"}\n {(termsContent || onTermsClick) && (\n <a\n href=\"#\"\n onClick={(e) => {\n e.preventDefault()\n handleTermsClick()\n }}\n style={{\n color: \"#0099ff\",\n textDecoration: \"none\",\n cursor: \"pointer\"\n }}>\n Terms of Service\n </a>\n )}\n {(termsContent || onTermsClick) &&\n (privacyContent || onPrivacyClick) &&\n \" and \"}\n {(privacyContent || onPrivacyClick) && (\n <a\n href=\"#\"\n onClick={(e) => {\n e.preventDefault()\n handlePrivacyClick()\n }}\n style={{\n color: \"#0099ff\",\n textDecoration: \"none\",\n cursor: \"pointer\"\n }}>\n Privacy Policy\n </a>\n )}\n </p>\n )}\n\n {modalContent && ModalComponent && (\n <>\n {console.log(\"Rendering modal\", {\n modalContent,\n ModalComponent: !!ModalComponent\n })}\n <ModalComponent\n title={modalContent.title}\n content={modalContent.content}\n onClose={() => setModalContent(null)}\n />\n </>\n )}\n </>\n )\n}\n","import { useEffect } from \"react\"\nimport \"./styling.css\"\n\ninterface ModalProps {\n title: string\n content: string\n onClose: () => void\n}\n\nexport function ModalView({ title, content, onClose }: ModalProps) {\n // Close modal on Escape key\n useEffect(() => {\n const handleEscape = (e: KeyboardEvent) => {\n if (e.key === \"Escape\") onClose()\n }\n document.addEventListener(\"keydown\", handleEscape)\n return () => document.removeEventListener(\"keydown\", handleEscape)\n }, [onClose])\n\n // Parse content to identify headers and format them\n const formatContent = (text: string) => {\n const lines = text.split(\"\\n\")\n return lines.map((line, index) => {\n const trimmedLine = line.trim()\n \n // First line is the main title (h1)\n if (index === 0 && trimmedLine) {\n return <h1 key={index} style={{ marginTop: 0, marginBottom: \"20px\", fontSize: \"28px\" }}>{trimmedLine}</h1>\n }\n \n // Section headers (lines that are short and followed by content)\n // Common patterns: \"Table of contents\", \"User content\", etc.\n if (trimmedLine && trimmedLine.length < 100 && !trimmedLine.includes(\".\") && \n index < lines.length - 1 && lines[index + 1].trim()) {\n // Check if next line starts with lowercase or is a paragraph\n const nextLine = lines[index + 1].trim()\n if (nextLine && (nextLine[0] === nextLine[0].toUpperCase() || nextLine.startsWith(\"We \"))) {\n return <h3 key={index} style={{ marginTop: \"24px\", marginBottom: \"12px\", fontSize: \"18px\", fontWeight: \"600\" }}>{trimmedLine}</h3>\n }\n }\n \n // Regular paragraphs\n if (trimmedLine) {\n return <p key={index} style={{ marginBottom: \"12px\" }}>{trimmedLine}</p>\n }\n \n // Empty lines\n return <br key={index} />\n })\n }\n\n return (\n <div\n style={{\n position: \"fixed\",\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n backgroundColor: \"rgba(0, 0, 0, 0.8)\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n zIndex: 1000,\n padding: \"20px\"\n }}\n onClick={onClose}\n >\n <div\n style={{\n backgroundColor: \"#1a1a1a\",\n borderRadius: \"12px\",\n border: \"2px solid #009df3\",\n maxWidth: \"800px\",\n maxHeight: \"80vh\",\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"column\",\n overflow: \"hidden\"\n }}\n onClick={(e) => e.stopPropagation()}\n >\n <div\n style={{\n padding: \"20px 24px\",\n borderBottom: \"1px solid #009df3\",\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\"\n }}\n >\n <h2 style={{ fontFamily: \"Futura PT, sans-serif\", margin: 0, color: \"white\", fontSize: \"24px\" }}>\n {title}\n </h2>\n <button\n onClick={onClose}\n style={{\n background: \"transparent\",\n border: \"none\",\n color: \"white\",\n fontSize: \"32px\",\n cursor: \"pointer\",\n padding: \"0 10px\",\n lineHeight: 1\n }}\n >\n ×\n </button>\n </div>\n <div\n style={{\n padding: \"24px\",\n overflow: \"auto\",\n flex: 1,\n fontFamily: \"Futura PT, sans-serif\",\n fontSize: \"15px\",\n lineHeight: \"1.6\",\n color: \"white\",\n textAlign: \"left\"\n }}\n >\n {formatContent(content)}\n </div>\n </div>\n </div>\n )\n}\n\n","var m=(o=>(o.MissingApiKey=\"MISSING_API_KEY\",o.ModalNotReady=\"MODAL_NOT_READY\",o.ConnectionLost=\"CONNECTION_WAS_LOST\",o.MalformedResponse=\"MALFORMED_RESPONSE\",o.InvalidArgument=\"INVALID_ARGUMENT\",o.ExtensionNotInitialized=\"EXTENSION_NOT_INITIALIZED\",o.IncompatibleExtensions=\"INCOMPATIBLE_EXTENSIONS\",o))(m||{}),v=(s=>(s.SyncWeb3Method=\"SYNC_WEB3_METHOD\",s.DuplicateIframe=\"DUPLICATE_IFRAME\",s.ReactNativeEndpointConfiguration=\"REACT_NATIVE_ENDPOINT_CONFIGURATION\",s.DeprecationNotice=\"DEPRECATION_NOTICE\",s.ProductAnnouncement=\"ANNOUNCEMENT\",s))(v||{}),u=(i=>(i[i.ParseError=-32700]=\"ParseError\",i[i.InvalidRequest=-32600]=\"InvalidRequest\",i[i.MethodNotFound=-32601]=\"MethodNotFound\",i[i.InvalidParams=-32602]=\"InvalidParams\",i[i.InternalError=-32603]=\"InternalError\",i[i.MagicLinkFailedVerification=-1e4]=\"MagicLinkFailedVerification\",i[i.MagicLinkExpired=-10001]=\"MagicLinkExpired\",i[i.MagicLinkRateLimited=-10002]=\"MagicLinkRateLimited\",i[i.MagicLinkInvalidRedirectURL=-10006]=\"MagicLinkInvalidRedirectURL\",i[i.UserAlreadyLoggedIn=-10003]=\"UserAlreadyLoggedIn\",i[i.UpdateEmailFailed=-10004]=\"UpdateEmailFailed\",i[i.UserRequestEditEmail=-10005]=\"UserRequestEditEmail\",i[i.InactiveRecipient=-10010]=\"InactiveRecipient\",i[i.AccessDeniedToUser=-10011]=\"AccessDeniedToUser\",i[i.RedirectLoginComplete=-10015]=\"RedirectLoginComplete\",i[i.DpopInvalidated=-10019]=\"DpopInvalidated\",i))(u||{});var _=(t=>(t.PROVIDER=\"magic_3pw_provider\",t.ADDRESS=\"magic_3pw_address\",t.CHAIN_ID=\"magic_3pw_chainId\",t))(_||{}),f=(t=>(t.WalletConnected=\"wallet_connected\",t.WalletRejected=\"wallet_rejected\",t.Web3ModalSelected=\"web3modal_selected\",t))(f||{}),g=(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))(g||{}),Z=[\"magic_intermediary_event\",\"magic_nft_checkout\",\"mc_login\"];var E=(c=>(c.MAGIC_HANDLE_RESPONSE=\"MAGIC_HANDLE_RESPONSE\",c.MAGIC_OVERLAY_READY=\"MAGIC_OVERLAY_READY\",c.MAGIC_SHOW_OVERLAY=\"MAGIC_SHOW_OVERLAY\",c.MAGIC_HIDE_OVERLAY=\"MAGIC_HIDE_OVERLAY\",c.MAGIC_HANDLE_EVENT=\"MAGIC_HANDLE_EVENT\",c.MAGIC_MG_BOX_SEND_RECEIPT=\"MAGIC_MG_BOX_SEND_RECEIPT\",c.MAGIC_SEND_PRODUCT_ANNOUNCEMENT=\"MAGIC_SEND_PRODUCT_ANNOUNCEMENT\",c.MAGIC_PONG=\"MAGIC_PONG\",c.MAGIC_POPUP_RESPONSE=\"MAGIC_POPUP_RESPONSE\",c.MAGIC_POPUP_OAUTH_VERIFY_RESPONSE=\"MAGIC_POPUP_OAUTH_VERIFY_RESPONSE\",c))(E||{}),y=(l=>(l.MAGIC_HANDLE_REQUEST=\"MAGIC_HANDLE_REQUEST\",l.MAGIC_PING=\"MAGIC_PING\",l))(y||{});var x=(t=>(t.UpdateEmail=\"update-email\",t.MFA=\"mfa\",t.Recovery=\"recovery\",t))(x||{});var A=(r=>(r.Retry=\"retry\",r))(A||{}),R=(l=>(l.EmailSent=\"email-sent\",l.EmailNotDeliverable=\"email-not-deliverable\",l))(R||{}),I=(s=>(s.VerifyEmailOtp=\"verify-email-otp\",s.VerifyMFACode=\"verify-mfa-code\",s.LostDevice=\"lost-device\",s.VerifyRecoveryCode=\"verify-recovery-code\",s.Cancel=\"cancel\",s))(I||{}),N=(t=>(t.VerifySmsOtp=\"verify-sms-otp\",t.Cancel=\"cancel\",t.Retry=\"retry\",t))(N||{}),h=(t=>(t.SmsOTPSent=\"sms-otp-sent\",t.InvalidSmsOtp=\"invalid-sms-otp\",t.ExpiredSmsOtp=\"expired-sms-otp\",t))(h||{}),T=(d=>(d.EmailOTPSent=\"email-otp-sent\",d.InvalidEmailOtp=\"invalid-email-otp\",d.InvalidMfaOtp=\"invalid-mfa-otp\",d.ExpiredEmailOtp=\"expired-email-otp\",d.MfaSentHandle=\"mfa-sent-handle\",d.RecoveryCodeSentHandle=\"recovery-code-sent-handle\",d.InvalidRecoveryCode=\"invalid-recovery-code\",d.RecoveryCodeSuccess=\"recovery-code-success\",d.LoginThrottled=\"login-throttled\",d))(T||{}),O=(r=>(r.Retry=\"device-retry\",r))(O||{}),S=(n=>(n.DeviceApproved=\"device-approved\",n.DeviceNeedsApproval=\"device-needs-approval\",n.DeviceVerificationLinkExpired=\"device-verification-link-expired\",n.DeviceVerificationEmailSent=\"device-verification-email-sent\",n))(S||{}),b=(n=>(n.Retry=\"Recency/auth-factor-retry\",n.Cancel=\"Recency/auth-factor-verification-cancel\",n.VerifyEmailOtp=\"Recency/auth-factor-verify-email-otp\",n.VerifyMFACode=\"Recency/verify-mfa-code\",n))(b||{}),C=(a=>(a.PrimaryAuthFactorNeedsVerification=\"Recency/auth-factor-needs-verification\",a.PrimaryAuthFactorVerified=\"Recency/auth-factor-verified\",a.InvalidEmailOtp=\"Recency/auth-factor-invalid-email-otp\",a.EmailExpired=\"Recency/auth-factor-verification-email-expired\",a.EmailSent=\"Recency/auth-factor-verification-email-sent\",a.EmailNotDeliverable=\"Recency/auth-factor-verification-email-not-deliverable\",a))(C||{}),F=(t=>(t.RetryWithNewEmail=\"UpdateEmail/retry-with-new-email\",t.Cancel=\"UpdateEmail/new-email-verification-cancel\",t.VerifyEmailOtp=\"UpdateEmail/new-email-verify-otp\",t))(F||{}),U=(p=>(p.NewAuthFactorNeedsVerification=\"UpdateEmail/new-email-needs-verification\",p.EmailUpdated=\"UpdateEmail/email-updated\",p.InvalidEmailOtp=\"UpdateEmail/new-email-invalid-email-otp\",p.EmailExpired=\"UpdateEmail/new-email-verification-email-expired\",p.EmailSent=\"UpdateEmail/new-email-verification-email-sent\",p.EmailNotDeliverable=\"UpdateEmail/new-email-verification-email-not-deliverable\",p.InvalidEmail=\"UpdateEmail/new-email-invalid\",p.EmailAlreadyExists=\"UpdateEmail/new-email-already-exists\",p))(U||{}),k=(r=>(r.IDTokenCreated=\"Auth/id-token-created\",r))(k||{}),L=(r=>(r.Cancel=\"Farcaster/cancel\",r))(L||{}),w=(t=>(t.MFASecretGenerated=\"mfa-secret-generated\",t.InvalidMFAOtp=\"invalid-mfa-otp\",t.MFARecoveryCodes=\"mfa-recovery-codes\",t))(w||{}),D=(l=>(l.VerifyMFACode=\"verify-mfa-code\",l.Cancel=\"cancel-mfa-setup\",l))(D||{}),G=(t=>(t.MFACodeRequested=\"mfa-code-requested\",t.InvalidMFAOtp=\"invalid-mfa-otp\",t.InvalidRecoveryCode=\"invalid-recovery-code\",t))(G||{}),V=(t=>(t.VerifyMFACode=\"verify-mfa-code\",t.LostDevice=\"lost-device\",t.Cancel=\"cancel-mfa-disable\",t))(V||{});var H=(r=>(r.Harmony=\"HARMONY\",r))(H||{});var q=(r=>(r.ClosedByUser=\"closed-by-user\",r))(q||{}),W=(r=>(r.ClosedByUser=\"closed-by-user-on-received\",r))(W||{}),J=(o=>(o.EnterNewPhoneNumber=\"enter-new-phone-number\",o.EnterOtpCode=\"enter-otp-code\",o.RecoveryFactorAlreadyExists=\"recovery-factor-already-exists\",o.MalformedPhoneNumber=\"malformed-phone-number\",o.InvalidOtpCode=\"invalid-otp-code\",o.RecoveryFactorUpdated=\"recovery-factor-updated\",o.RecoveryFactorDeleted=\"recovery-factor-deleted\",o))(J||{}),Y=(n=>(n.SendNewPhoneNumber=\"send-new-phone-number\",n.SendOtpCode=\"send-otp-code\",n.Cancel=\"cancel\",n.StartEditPhoneNumber=\"start-edit-phone-number\",n))(Y||{}),B=(r=>(r.PhoneNumber=\"phone_number\",r))(B||{}),P=(a=>(a.SmsOtpSent=\"sms-otp-sent\",a.LoginThrottled=\"login-throttled\",a.InvalidSmsOtp=\"invalid-sms-otp\",a.SmsVerified=\"sms-verified\",a.AccountRecovered=\"account-recovered\",a.UpdateEmailRequired=\"update-email-required\",a))(P||{}),j=(n=>(n.Cancel=\"cancel\",n.VerifyOtp=\"verify-otp-code\",n.ResendSms=\"resend-sms-otp\",n.UpdateEmail=\"update-email\",n))(j||{});var Q=(n=>(n.Success=\"nft-checkout-success\",n.Failure=\"nft-checkout-failure\",n.Initiated=\"nft-checkout-initiated\",n.Disconnect=\"disconnect\",n))(Q||{});var X=(r=>(r.WalletInfoFetched=\"Wallet/wallet-info-fetched\",r))(X||{});var z=(r=>(r.CloseMagicWindow=\"close-magic-window\",r))(z||{});export{k as AuthEventOnReceived,x as DeepLinkPage,O as DeviceVerificationEventEmit,S as DeviceVerificationEventOnReceived,V as DisableMFAEventEmit,G as DisableMFAEventOnReceived,D as EnableMFAEventEmit,w as EnableMFAEventOnReceived,H as EthChainType,L as FarcasterLoginEventEmit,_ as LocalStorageKeys,I as LoginWithEmailOTPEventEmit,T as LoginWithEmailOTPEventOnReceived,A as LoginWithMagicLinkEventEmit,R as LoginWithMagicLinkEventOnReceived,N as LoginWithSmsOTPEventEmit,h as LoginWithSmsOTPEventOnReceived,E as MagicIncomingWindowMessage,y as MagicOutgoingWindowMessage,g as MagicPayloadMethod,Q as NftCheckoutIntermediaryEvents,u as RPCErrorCode,b as RecencyCheckEventEmit,C as RecencyCheckEventOnReceived,j as RecoverAccountEventEmit,P as RecoverAccountEventOnReceived,Y as RecoveryFactorEventEmit,J as RecoveryFactorEventOnReceived,B as RecoveryMethodType,m as SDKErrorCode,v as SDKWarningCode,f as ThirdPartyWalletEvents,z as UiEventsEmit,F as UpdateEmailEventEmit,U as UpdateEmailEventOnReceived,q as UserEventsEmit,W as UserEventsOnReceived,X as WalletEventOnReceived,Z as routeToMagicMethods};\n//# sourceMappingURL=index.mjs.map\n","var Yt=Object.create;var Ne=Object.defineProperty;var Qt=Object.getOwnPropertyDescriptor;var Zt=Object.getOwnPropertyNames;var er=Object.getPrototypeOf,tr=Object.prototype.hasOwnProperty;var rr=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),nr=(r,e)=>{for(var t in e)Ne(r,t,{get:e[t],enumerable:!0})},sr=(r,e,t,s)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let n of Zt(e))!tr.call(r,n)&&n!==t&&Ne(r,n,{get:()=>e[n],enumerable:!(s=Qt(e,n))||s.enumerable});return r};var or=(r,e,t)=>(t=r!=null?Yt(er(r)):{},sr(e||!r||!r.__esModule?Ne(t,\"default\",{value:r,enumerable:!0}):t,r));var Nt=rr((us,ke)=>{\"use strict\";var mn=Object.prototype.hasOwnProperty,I=\"~\";function ne(){}Object.create&&(ne.prototype=Object.create(null),new ne().__proto__||(I=!1));function hn(r,e,t){this.fn=r,this.context=e,this.once=t||!1}function Ct(r,e,t,s,n){if(typeof t!=\"function\")throw new TypeError(\"The listener must be a function\");var o=new hn(t,s||r,n),i=I?I+e:e;return r._events[i]?r._events[i].fn?r._events[i]=[r._events[i],o]:r._events[i].push(o):(r._events[i]=o,r._eventsCount++),r}function Ee(r,e){--r._eventsCount===0?r._events=new ne:delete r._events[e]}function v(){this._events=new ne,this._eventsCount=0}v.prototype.eventNames=function(){var e=[],t,s;if(this._eventsCount===0)return e;for(s in t=this._events)mn.call(t,s)&&e.push(I?s.slice(1):s);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e};v.prototype.listeners=function(e){var t=I?I+e:e,s=this._events[t];if(!s)return[];if(s.fn)return[s.fn];for(var n=0,o=s.length,i=new Array(o);n<o;n++)i[n]=s[n].fn;return i};v.prototype.listenerCount=function(e){var t=I?I+e:e,s=this._events[t];return s?s.fn?1:s.length:0};v.prototype.emit=function(e,t,s,n,o,i){var a=I?I+e:e;if(!this._events[a])return!1;var c=this._events[a],d=arguments.length,l,u;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),d){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,s),!0;case 4:return c.fn.call(c.context,t,s,n),!0;case 5:return c.fn.call(c.context,t,s,n,o),!0;case 6:return c.fn.call(c.context,t,s,n,o,i),!0}for(u=1,l=new Array(d-1);u<d;u++)l[u-1]=arguments[u];c.fn.apply(c.context,l)}else{var P=c.length,w;for(u=0;u<P;u++)switch(c[u].once&&this.removeListener(e,c[u].fn,void 0,!0),d){case 1:c[u].fn.call(c[u].context);break;case 2:c[u].fn.call(c[u].context,t);break;case 3:c[u].fn.call(c[u].context,t,s);break;case 4:c[u].fn.call(c[u].context,t,s,n);break;default:if(!l)for(w=1,l=new Array(d-1);w<d;w++)l[w-1]=arguments[w];c[u].fn.apply(c[u].context,l)}}return!0};v.prototype.on=function(e,t,s){return Ct(this,e,t,s,!1)};v.prototype.once=function(e,t,s){return Ct(this,e,t,s,!0)};v.prototype.removeListener=function(e,t,s,n){var o=I?I+e:e;if(!this._events[o])return this;if(!t)return Ee(this,o),this;var i=this._events[o];if(i.fn)i.fn===t&&(!n||i.once)&&(!s||i.context===s)&&Ee(this,o);else{for(var a=0,c=[],d=i.length;a<d;a++)(i[a].fn!==t||n&&!i[a].once||s&&i[a].context!==s)&&c.push(i[a]);c.length?this._events[o]=c.length===1?c[0]:c:Ee(this,o)}return this};v.prototype.removeAllListeners=function(e){var t;return e?(t=I?I+e:e,this._events[t]&&Ee(this,t)):(this._events=new ne,this._eventsCount=0),this};v.prototype.off=v.prototype.removeListener;v.prototype.addListener=v.prototype.on;v.prefixed=I;v.EventEmitter=v;typeof ke<\"u\"&&(ke.exports=v)});function ir(r){let e={exports:{}};return r(e,e.exports),e.exports}var ar=Number.MAX_SAFE_INTEGER||9007199254740991;var $e={SEMVER_SPEC_VERSION:\"2.0.0\",MAX_LENGTH:256,MAX_SAFE_INTEGER:ar,MAX_SAFE_COMPONENT_LENGTH:16},cr=typeof process==\"object\"&&process.env&&process.env.NODE_DEBUG&&/\\bsemver\\b/i.test(process.env.NODE_DEBUG)?(...r)=>console.error(\"SEMVER\",...r):()=>{},h=cr,Z=ir(function(r,e){let{MAX_SAFE_COMPONENT_LENGTH:t}=$e,s=(e=r.exports={}).re=[],n=e.src=[],o=e.t={},i=0,a=(c,d,l)=>{let u=i++;h(u,d),o[c]=u,n[u]=d,s[u]=new RegExp(d,l?\"g\":void 0)};a(\"NUMERICIDENTIFIER\",\"0|[1-9]\\\\d*\"),a(\"NUMERICIDENTIFIERLOOSE\",\"[0-9]+\"),a(\"NONNUMERICIDENTIFIER\",\"\\\\d*[a-zA-Z-][a-zA-Z0-9-]*\"),a(\"MAINVERSION\",`(${n[o.NUMERICIDENTIFIER]})\\\\.(${n[o.NUMERICIDENTIFIER]})\\\\.(${n[o.NUMERICIDENTIFIER]})`),a(\"MAINVERSIONLOOSE\",`(${n[o.NUMERICIDENTIFIERLOOSE]})\\\\.(${n[o.NUMERICIDENTIFIERLOOSE]})\\\\.(${n[o.NUMERICIDENTIFIERLOOSE]})`),a(\"PRERELEASEIDENTIFIER\",`(?:${n[o.NUMERICIDENTIFIER]}|${n[o.NONNUMERICIDENTIFIER]})`),a(\"PRERELEASEIDENTIFIERLOOSE\",`(?:${n[o.NUMERICIDENTIFIERLOOSE]}|${n[o.NONNUMERICIDENTIFIER]})`),a(\"PRERELEASE\",`(?:-(${n[o.PRERELEASEIDENTIFIER]}(?:\\\\.${n[o.PRERELEASEIDENTIFIER]})*))`),a(\"PRERELEASELOOSE\",`(?:-?(${n[o.PRERELEASEIDENTIFIERLOOSE]}(?:\\\\.${n[o.PRERELEASEIDENTIFIERLOOSE]})*))`),a(\"BUILDIDENTIFIER\",\"[0-9A-Za-z-]+\"),a(\"BUILD\",`(?:\\\\+(${n[o.BUILDIDENTIFIER]}(?:\\\\.${n[o.BUILDIDENTIFIER]})*))`),a(\"FULLPLAIN\",`v?${n[o.MAINVERSION]}${n[o.PRERELEASE]}?${n[o.BUILD]}?`),a(\"FULL\",`^${n[o.FULLPLAIN]}$`),a(\"LOOSEPLAIN\",`[v=\\\\s]*${n[o.MAINVERSIONLOOSE]}${n[o.PRERELEASELOOSE]}?${n[o.BUILD]}?`),a(\"LOOSE\",`^${n[o.LOOSEPLAIN]}$`),a(\"GTLT\",\"((?:<|>)?=?)\"),a(\"XRANGEIDENTIFIERLOOSE\",`${n[o.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\*`),a(\"XRANGEIDENTIFIER\",`${n[o.NUMERICIDENTIFIER]}|x|X|\\\\*`),a(\"XRANGEPLAIN\",`[v=\\\\s]*(${n[o.XRANGEIDENTIFIER]})(?:\\\\.(${n[o.XRANGEIDENTIFIER]})(?:\\\\.(${n[o.XRANGEIDENTIFIER]})(?:${n[o.PRERELEASE]})?${n[o.BUILD]}?)?)?`),a(\"XRANGEPLAINLOOSE\",`[v=\\\\s]*(${n[o.XRANGEIDENTIFIERLOOSE]})(?:\\\\.(${n[o.XRANGEIDENTIFIERLOOSE]})(?:\\\\.(${n[o.XRANGEIDENTIFIERLOOSE]})(?:${n[o.PRERELEASELOOSE]})?${n[o.BUILD]}?)?)?`),a(\"XRANGE\",`^${n[o.GTLT]}\\\\s*${n[o.XRANGEPLAIN]}$`),a(\"XRANGELOOSE\",`^${n[o.GTLT]}\\\\s*${n[o.XRANGEPLAINLOOSE]}$`),a(\"COERCE\",`(^|[^\\\\d])(\\\\d{1,${t}})(?:\\\\.(\\\\d{1,${t}}))?(?:\\\\.(\\\\d{1,${t}}))?(?:$|[^\\\\d])`),a(\"COERCERTL\",n[o.COERCE],!0),a(\"LONETILDE\",\"(?:~>?)\"),a(\"TILDETRIM\",`(\\\\s*)${n[o.LONETILDE]}\\\\s+`,!0),e.tildeTrimReplace=\"$1~\",a(\"TILDE\",`^${n[o.LONETILDE]}${n[o.XRANGEPLAIN]}$`),a(\"TILDELOOSE\",`^${n[o.LONETILDE]}${n[o.XRANGEPLAINLOOSE]}$`),a(\"LONECARET\",\"(?:\\\\^)\"),a(\"CARETTRIM\",`(\\\\s*)${n[o.LONECARET]}\\\\s+`,!0),e.caretTrimReplace=\"$1^\",a(\"CARET\",`^${n[o.LONECARET]}${n[o.XRANGEPLAIN]}$`),a(\"CARETLOOSE\",`^${n[o.LONECARET]}${n[o.XRANGEPLAINLOOSE]}$`),a(\"COMPARATORLOOSE\",`^${n[o.GTLT]}\\\\s*(${n[o.LOOSEPLAIN]})$|^$`),a(\"COMPARATOR\",`^${n[o.GTLT]}\\\\s*(${n[o.FULLPLAIN]})$|^$`),a(\"COMPARATORTRIM\",`(\\\\s*)${n[o.GTLT]}\\\\s*(${n[o.LOOSEPLAIN]}|${n[o.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace=\"$1$2$3\",a(\"HYPHENRANGE\",`^\\\\s*(${n[o.XRANGEPLAIN]})\\\\s+-\\\\s+(${n[o.XRANGEPLAIN]})\\\\s*$`),a(\"HYPHENRANGELOOSE\",`^\\\\s*(${n[o.XRANGEPLAINLOOSE]})\\\\s+-\\\\s+(${n[o.XRANGEPLAINLOOSE]})\\\\s*$`),a(\"STAR\",\"(<|>)?=?\\\\s*\\\\*\"),a(\"GTE0\",\"^\\\\s*>=\\\\s*0.0.0\\\\s*$\"),a(\"GTE0PRE\",\"^\\\\s*>=\\\\s*0.0.0-0\\\\s*$\")}),ze=/^[0-9]+$/,ot=(r,e)=>{let t=ze.test(r),s=ze.test(e);return t&&s&&(r=+r,e=+e),r===e?0:t&&!s?-1:s&&!t?1:r<e?-1:1},lr=(r,e)=>ot(e,r),dr={compareIdentifiers:ot,rcompareIdentifiers:lr},{MAX_LENGTH:Ye,MAX_SAFE_INTEGER:oe}=$e,{re:Qe,t:Ze}=Z,{compareIdentifiers:X}=dr,M=class r{constructor(e,t){if(t&&typeof t==\"object\"||(t={loose:!!t,includePrerelease:!1}),e instanceof r){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if(typeof e!=\"string\")throw new TypeError(`Invalid Version: ${e}`);if(e.length>Ye)throw new TypeError(`version is longer than ${Ye} characters`);h(\"SemVer\",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;let s=e.trim().match(t.loose?Qe[Ze.LOOSE]:Qe[Ze.FULL]);if(!s)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+s[1],this.minor=+s[2],this.patch=+s[3],this.major>oe||this.major<0)throw new TypeError(\"Invalid major version\");if(this.minor>oe||this.minor<0)throw new TypeError(\"Invalid minor version\");if(this.patch>oe||this.patch<0)throw new TypeError(\"Invalid patch version\");s[4]?this.prerelease=s[4].split(\".\").map(n=>{if(/^[0-9]+$/.test(n)){let o=+n;if(o>=0&&o<oe)return o}return n}):this.prerelease=[],this.build=s[5]?s[5].split(\".\"):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(\".\")}`),this.version}toString(){return this.version}compare(e){if(h(\"SemVer.compare\",this.version,this.options,e),!(e instanceof r)){if(typeof e==\"string\"&&e===this.version)return 0;e=new r(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof r||(e=new r(e,this.options)),X(this.major,e.major)||X(this.minor,e.minor)||X(this.patch,e.patch)}comparePre(e){if(e instanceof r||(e=new r(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let t=0;do{let s=this.prerelease[t],n=e.prerelease[t];if(h(\"prerelease compare\",t,s,n),s===void 0&&n===void 0)return 0;if(n===void 0)return 1;if(s===void 0)return-1;if(s!==n)return X(s,n)}while(++t)}compareBuild(e){e instanceof r||(e=new r(e,this.options));let t=0;do{let s=this.build[t],n=e.build[t];if(h(\"prerelease compare\",t,s,n),s===void 0&&n===void 0)return 0;if(n===void 0)return 1;if(s===void 0)return-1;if(s!==n)return X(s,n)}while(++t)}inc(e,t){switch(e){case\"premajor\":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc(\"pre\",t);break;case\"preminor\":this.prerelease.length=0,this.patch=0,this.minor++,this.inc(\"pre\",t);break;case\"prepatch\":this.prerelease.length=0,this.inc(\"patch\",t),this.inc(\"pre\",t);break;case\"prerelease\":this.prerelease.length===0&&this.inc(\"patch\",t),this.inc(\"pre\",t);break;case\"major\":this.minor===0&&this.patch===0&&this.prerelease.length!==0||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case\"minor\":this.patch===0&&this.prerelease.length!==0||this.minor++,this.patch=0,this.prerelease=[];break;case\"patch\":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case\"pre\":if(this.prerelease.length===0)this.prerelease=[0];else{let s=this.prerelease.length;for(;--s>=0;)typeof this.prerelease[s]==\"number\"&&(this.prerelease[s]++,s=-2);s===-1&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error(`invalid increment argument: ${e}`)}return this.format(),this.raw=this.version,this}},ur=(r,e,t)=>new M(r,t).compare(new M(e,t)),J=ur,pr=(r,e,t)=>J(r,e,t)===0,mr=pr,hr=(r,e,t)=>J(r,e,t)!==0,Er=hr,fr=(r,e,t)=>J(r,e,t)>0,gr=fr,yr=(r,e,t)=>J(r,e,t)>=0,Rr=yr,vr=(r,e,t)=>J(r,e,t)<0,Tr=vr,Ir=(r,e,t)=>J(r,e,t)<=0,br=Ir,Pr=(r,e,t,s)=>{switch(e){case\"===\":return typeof r==\"object\"&&(r=r.version),typeof t==\"object\"&&(t=t.version),r===t;case\"!==\":return typeof r==\"object\"&&(r=r.version),typeof t==\"object\"&&(t=t.version),r!==t;case\"\":case\"=\":case\"==\":return mr(r,t,s);case\"!=\":return Er(r,t,s);case\">\":return gr(r,t,s);case\">=\":return Rr(r,t,s);case\"<\":return Tr(r,t,s);case\"<=\":return br(r,t,s);default:throw new TypeError(`Invalid operator: ${e}`)}},Ae=Pr,z=Symbol(\"SemVer ANY\"),Y=class r{static get ANY(){return z}constructor(e,t){if(t&&typeof t==\"object\"||(t={loose:!!t,includePrerelease:!1}),e instanceof r){if(e.loose===!!t.loose)return e;e=e.value}h(\"comparator\",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===z?this.value=\"\":this.value=this.operator+this.semver.version,h(\"comp\",this)}parse(e){let t=this.options.loose?et[tt.COMPARATORLOOSE]:et[tt.COMPARATOR],s=e.match(t);if(!s)throw new TypeError(`Invalid comparator: ${e}`);this.operator=s[1]!==void 0?s[1]:\"\",this.operator===\"=\"&&(this.operator=\"\"),s[2]?this.semver=new M(s[2],this.options.loose):this.semver=z}toString(){return this.value}test(e){if(h(\"Comparator.test\",e,this.options.loose),this.semver===z||e===z)return!0;if(typeof e==\"string\")try{e=new M(e,this.options)}catch{return!1}return Ae(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof r))throw new TypeError(\"a Comparator is required\");if(t&&typeof t==\"object\"||(t={loose:!!t,includePrerelease:!1}),this.operator===\"\")return this.value===\"\"||new Q(e.value,t).test(this.value);if(e.operator===\"\")return e.value===\"\"||new Q(this.value,t).test(e.semver);let s=!(this.operator!==\">=\"&&this.operator!==\">\"||e.operator!==\">=\"&&e.operator!==\">\"),n=!(this.operator!==\"<=\"&&this.operator!==\"<\"||e.operator!==\"<=\"&&e.operator!==\"<\"),o=this.semver.version===e.semver.version,i=!(this.operator!==\">=\"&&this.operator!==\"<=\"||e.operator!==\">=\"&&e.operator!==\"<=\"),a=Ae(this.semver,\"<\",e.semver,t)&&(this.operator===\">=\"||this.operator===\">\")&&(e.operator===\"<=\"||e.operator===\"<\"),c=Ae(this.semver,\">\",e.semver,t)&&(this.operator===\"<=\"||this.operator===\"<\")&&(e.operator===\">=\"||e.operator===\">\");return s||n||o&&i||a||c}},{re:et,t:tt}=Z,Q=class r{constructor(e,t){if(t&&typeof t==\"object\"||(t={loose:!!t,includePrerelease:!1}),e instanceof r)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new r(e.raw,t);if(e instanceof Y)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e,this.set=e.split(/\\s*\\|\\|\\s*/).map(s=>this.parseRange(s.trim())).filter(s=>s.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${e}`);this.format()}format(){return this.range=this.set.map(e=>e.join(\" \").trim()).join(\"||\").trim(),this.range}toString(){return this.range}parseRange(e){let{loose:t}=this.options;e=e.trim();let s=t?y[E.HYPHENRANGELOOSE]:y[E.HYPHENRANGE];e=e.replace(s,Dr(this.options.includePrerelease)),h(\"hyphen replace\",e),e=e.replace(y[E.COMPARATORTRIM],wr),h(\"comparator trim\",e,y[E.COMPARATORTRIM]),e=(e=(e=e.replace(y[E.TILDETRIM],xr)).replace(y[E.CARETTRIM],Sr)).split(/\\s+/).join(\" \");let n=t?y[E.COMPARATORLOOSE]:y[E.COMPARATOR];return e.split(\" \").map(o=>Mr(o,this.options)).join(\" \").split(/\\s+/).map(o=>kr(o,this.options)).filter(this.options.loose?o=>!!o.match(n):()=>!0).map(o=>new Y(o,this.options))}intersects(e,t){if(!(e instanceof r))throw new TypeError(\"a Range is required\");return this.set.some(s=>rt(s,t)&&e.set.some(n=>rt(n,t)&&s.every(o=>n.every(i=>o.intersects(i,t)))))}test(e){if(!e)return!1;if(typeof e==\"string\")try{e=new M(e,this.options)}catch{return!1}for(let t=0;t<this.set.length;t++)if(qr(this.set[t],e,this.options))return!0;return!1}},{re:y,t:E,comparatorTrimReplace:wr,tildeTrimReplace:xr,caretTrimReplace:Sr}=Z,rt=(r,e)=>{let t=!0,s=r.slice(),n=s.pop();for(;t&&s.length;)t=s.every(o=>n.intersects(o,e)),n=s.pop();return t},Mr=(r,e)=>(h(\"comp\",r,e),r=Ar(r,e),h(\"caret\",r),r=Cr(r,e),h(\"tildes\",r),r=Lr(r,e),h(\"xrange\",r),r=_r(r,e),h(\"stars\",r),r),T=r=>!r||r.toLowerCase()===\"x\"||r===\"*\",Cr=(r,e)=>r.trim().split(/\\s+/).map(t=>Nr(t,e)).join(\" \"),Nr=(r,e)=>{let t=e.loose?y[E.TILDELOOSE]:y[E.TILDE];return r.replace(t,(s,n,o,i,a)=>{let c;return h(\"tilde\",r,s,n,o,i,a),T(n)?c=\"\":T(o)?c=`>=${n}.0.0 <${+n+1}.0.0-0`:T(i)?c=`>=${n}.${o}.0 <${n}.${+o+1}.0-0`:a?(h(\"replaceTilde pr\",a),c=`>=${n}.${o}.${i}-${a} <${n}.${+o+1}.0-0`):c=`>=${n}.${o}.${i} <${n}.${+o+1}.0-0`,h(\"tilde return\",c),c})},Ar=(r,e)=>r.trim().split(/\\s+/).map(t=>$r(t,e)).join(\" \"),$r=(r,e)=>{h(\"caret\",r,e);let t=e.loose?y[E.CARETLOOSE]:y[E.CARET],s=e.includePrerelease?\"-0\":\"\";return r.replace(t,(n,o,i,a,c)=>{let d;return h(\"caret\",r,n,o,i,a,c),T(o)?d=\"\":T(i)?d=`>=${o}.0.0${s} <${+o+1}.0.0-0`:T(a)?d=o===\"0\"?`>=${o}.${i}.0${s} <${o}.${+i+1}.0-0`:`>=${o}.${i}.0${s} <${+o+1}.0.0-0`:c?(h(\"replaceCaret pr\",c),d=o===\"0\"?i===\"0\"?`>=${o}.${i}.${a}-${c} <${o}.${i}.${+a+1}-0`:`>=${o}.${i}.${a}-${c} <${o}.${+i+1}.0-0`:`>=${o}.${i}.${a}-${c} <${+o+1}.0.0-0`):(h(\"no pr\"),d=o===\"0\"?i===\"0\"?`>=${o}.${i}.${a}${s} <${o}.${i}.${+a+1}-0`:`>=${o}.${i}.${a}${s} <${o}.${+i+1}.0-0`:`>=${o}.${i}.${a} <${+o+1}.0.0-0`),h(\"caret return\",d),d})},Lr=(r,e)=>(h(\"replaceXRanges\",r,e),r.split(/\\s+/).map(t=>Or(t,e)).join(\" \")),Or=(r,e)=>{r=r.trim();let t=e.loose?y[E.XRANGELOOSE]:y[E.XRANGE];return r.replace(t,(s,n,o,i,a,c)=>{h(\"xRange\",r,s,n,o,i,a,c);let d=T(o),l=d||T(i),u=l||T(a),P=u;return n===\"=\"&&P&&(n=\"\"),c=e.includePrerelease?\"-0\":\"\",d?s=n===\">\"||n===\"<\"?\"<0.0.0-0\":\"*\":n&&P?(l&&(i=0),a=0,n===\">\"?(n=\">=\",l?(o=+o+1,i=0,a=0):(i=+i+1,a=0)):n===\"<=\"&&(n=\"<\",l?o=+o+1:i=+i+1),n===\"<\"&&(c=\"-0\"),s=`${n+o}.${i}.${a}${c}`):l?s=`>=${o}.0.0${c} <${+o+1}.0.0-0`:u&&(s=`>=${o}.${i}.0${c} <${o}.${+i+1}.0-0`),h(\"xRange return\",s),s})},_r=(r,e)=>(h(\"replaceStars\",r,e),r.trim().replace(y[E.STAR],\"\")),kr=(r,e)=>(h(\"replaceGTE0\",r,e),r.trim().replace(y[e.includePrerelease?E.GTE0PRE:E.GTE0],\"\")),Dr=r=>(e,t,s,n,o,i,a,c,d,l,u,P,w)=>`${t=T(s)?\"\":T(n)?`>=${s}.0.0${r?\"-0\":\"\"}`:T(o)?`>=${s}.${n}.0${r?\"-0\":\"\"}`:i?`>=${t}`:`>=${t}${r?\"-0\":\"\"}`} ${c=T(d)?\"\":T(l)?`<${+d+1}.0.0-0`:T(u)?`<${d}.${+l+1}.0-0`:P?`<=${d}.${l}.${u}-${P}`:r?`<${d}.${l}.${+u+1}-0`:`<=${c}`}`.trim(),qr=(r,e,t)=>{for(let s=0;s<r.length;s++)if(!r[s].test(e))return!1;if(e.prerelease.length&&!t.includePrerelease){for(let s=0;s<r.length;s++)if(h(r[s].semver),r[s].semver!==Y.ANY&&r[s].semver.prerelease.length>0){let n=r[s].semver;if(n.major===e.major&&n.minor===e.minor&&n.patch===e.patch)return!0}return!1}return!0},it=(r,e,t)=>{try{e=new Q(e,t)}catch{return!1}return e.test(r)};var{MAX_LENGTH:Ur}=$e,{re:nt,t:st}=Z,Fr=(r,e)=>{if(e&&typeof e==\"object\"||(e={loose:!!e,includePrerelease:!1}),r instanceof M)return r;if(typeof r!=\"string\"||r.length>Ur||!(e.loose?nt[st.LOOSE]:nt[st.FULL]).test(r))return null;try{return new M(r,e)}catch{return null}},Wr=Fr,{re:ie,t:ae}=Z,at=(r,e)=>{if(r instanceof M)return r;if(typeof r==\"number\"&&(r=String(r)),typeof r!=\"string\")return null;let t=null;if((e=e||{}).rtl){let s;for(;(s=ie[ae.COERCERTL].exec(r))&&(!t||t.index+t[0].length!==r.length);)t&&s.index+s[0].length===t.index+t[0].length||(t=s),ie[ae.COERCERTL].lastIndex=s.index+s[1].length+s[2].length;ie[ae.COERCERTL].lastIndex=-1}else t=r.match(ie[ae.COERCE]);return t===null?null:Wr(`${t[2]}.${t[3]||\"0\"}.${t[4]||\"0\"}`,e)};function Jr(r){return String.fromCharCode(parseInt(r.slice(1),16))}function Gr(r){return`%${`00${r.charCodeAt(0).toString(16)}`.slice(-2)}`}function Kr(r){return btoa(encodeURIComponent(r).replace(/%[0-9A-F]{2}/g,Jr))}function jr(r){return decodeURIComponent(Array.from(atob(r),Gr).join(\"\"))}function ce(r){return Kr(JSON.stringify(r))}function ct(r){return JSON.parse(jr(r))}import{RPCErrorCode as zr,SDKErrorCode as G,SDKWarningCode as ue}from\"@magic-sdk/types\";import{MagicPayloadMethod as Vr,RPCErrorCode as Br}from\"@magic-sdk/types\";function N(r){return typeof r>\"u\"}function Hr(r){return r===null}function le(r){return Hr(r)||N(r)}function Wn(r){return le(r)?!1:!N(r.jsonrpc)&&!N(r.id)&&!N(r.method)&&!N(r.params)}function lt(r){return le(r)?!1:!N(r.jsonrpc)&&!N(r.id)&&(!N(r.result)||!N(r.error))}function Jn(r){return le(r)?!1:typeof r==\"string\"&&Object.values(Vr).includes(r)}function dt(r){return le(r)?!1:typeof r==\"number\"&&Object.values(Br).includes(r)}function ee(r){if(!r)return!0;for(let e in r)if(Object.hasOwnProperty.call(r,e))return!1;return!0}var m={};function Xr(r,e){return Object.assign(m,e),r}var ut={\"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\"};var $=class r extends Error{constructor(t,s){super(`Magic SDK Error: [${t}] ${s}`);this.code=t;this.rawMessage=s;Object.setPrototypeOf(this,r.prototype)}__proto__=Error},U=class r extends Error{__proto__=Error;code;rawMessage;data;constructor(e){super();let t=Number(e?.code);this.rawMessage=e?.message||\"Internal error\",this.code=dt(t)?t:zr.InternalError,this.message=`Magic RPC Error: [${this.code}] ${this.rawMessage}`,this.data=e?.data||void 0,Object.setPrototypeOf(this,r.prototype)}},L=class{constructor(e,t){this.code=e;this.rawMessage=t;this.message=`Magic SDK Warning: [${e}] ${t}`}message;log(){console.warn(this.message)}},de=class r extends Error{constructor(t,s,n,o){super(`Magic Extension Error (${t.name}): [${s}] ${n}`);this.code=s;this.rawMessage=n;this.data=o;Object.setPrototypeOf(this,r.prototype)}__proto__=Error},te=class{constructor(e,t,s){this.code=t;this.rawMessage=s;this.message=`Magic Extension Warning (${e.name}): [${t}] ${s}`}message;log(){console.warn(this.message)}};function pt(){return new $(G.MissingApiKey,\"Please provide an API key that you acquired from the Magic developer dashboard.\")}function mt(){return new $(G.ModalNotReady,\"Modal is not ready\")}function ht(){return new $(G.MalformedResponse,\"Response from the Magic iframe is malformed.\")}function Et(r){return new $(G.ExtensionNotInitialized,`Extensions must be initialized with a Magic SDK instance before \\`Extension.${r}\\` can be accessed. Do not invoke \\`Extension.${r}\\` inside an extension constructor.`)}function ft(r){let e=`Some extensions are incompatible with \\`${m.sdkName}@${m.version}\\`:`;return r.filter(t=>typeof t.compat<\"u\"&&t.compat!==null).forEach(t=>{let s=t.compat[m.sdkName];typeof s==\"string\"?e+=`\n - Extension \\`${t.name}\\` supports version(s) \\`${s}\\``:s||(e+=`\n - Extension \\`${t.name}\\` does not support ${m.platform} environments.`)}),new $(G.IncompatibleExtensions,e)}function gt(r){let e=t=>{let s=t+1,n=s%10,o=s%100;return n===1&&o!==11?`${s}st`:n===2&&o!==12?`${s}nd`:n===3&&o!==13?`${s}rd`:`${s}th`};return new $(G.InvalidArgument,`Invalid ${e(r.argument)} argument given to \\`${r.procedure}\\`.\n Expected: \\`${r.expected}\\`\n Received: \\`${r.received}\\``)}function Xn(){return new L(ue.DuplicateIframe,\"Duplicate iframes found.\")}function yt(){return new L(ue.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.\")}function Rt(){return new L(ue.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 \\`${m.defaultEndpoint}\\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function vt(r){let{method:e,removalVersions:t,useInstead:s}=r,n=t[m.sdkName],o=s?` Use \\`${s}\\` instead.`:\"\",i=`\\`${e}\\` will be removed from \\`${m.sdkName}\\` in version \\`${n}\\`.${o}`;return new L(ue.DeprecationNotice,i)}import{MagicPayloadMethod as S,DeviceVerificationEventEmit as _t,LoginWithEmailOTPEventEmit as C,UpdateEmailEventEmit as j,RecencyCheckEventEmit as _,LoginWithSmsOTPEventEmit as ge}from\"@magic-sdk/types\";import{MagicOutgoingWindowMessage as gn,MagicIncomingWindowMessage as yn,MagicPayloadMethod as Rn,routeToMagicMethods as vn}from\"@magic-sdk/types\";import{RPCErrorCode as un}from\"@magic-sdk/types\";function*Yr(){let r=0;for(;;)r<Number.MAX_SAFE_INTEGER?yield++r:r=0}var Qr=Yr();function Le(){return Qr.next().value}var me={};nr(me,{clear:()=>Zr,getItem:()=>R,iterate:()=>Oe,key:()=>tn,keys:()=>rn,length:()=>en,removeItem:()=>A,setItem:()=>x});var pe;function O(r){return async(...e)=>(pe||(pe=await m.configureStorage()),await pe.ready(),pe[r](...e))}var R=O(\"getItem\"),x=O(\"setItem\"),A=O(\"removeItem\"),Zr=O(\"clear\"),en=O(\"length\"),tn=O(\"key\"),rn=O(\"keys\"),Oe=O(\"iterate\");function Tt(){let r=window.crypto.getRandomValues(new Uint8Array(16));r[6]=r[6]&15|64,r[8]=r[8]&191|128;let e=\"\";return e+=r[0].toString(16),e+=r[1].toString(16),e+=r[2].toString(16),e+=r[3].toString(16),e+=\"-\",e+=r[4].toString(16),e+=r[5].toString(16),e+=\"-\",e+=r[6].toString(16),e+=r[7].toString(16),e+=\"-\",e+=r[8].toString(16),e+=r[9].toString(16),e+=\"-\",e+=r[10].toString(16),e+=r[11].toString(16),e+=r[12].toString(16),e+=r[13].toString(16),e+=r[14].toString(16),e+=r[15].toString(16),e}var _e=\"STORE_KEY_PRIVATE_KEY\",he=\"STORE_KEY_PUBLIC_JWK\",bt=\"ECDSA\",nn=\"P-256\",sn={name:bt,namedCurve:nn};function re(){let r=typeof window<\"u\"&&!!window.crypto,e=r&&!!window.crypto.subtle;return r&&e}function Pt(){A(he),A(_e)}async function wt(){let r=await on();if(!r){console.info(\"unable to create public key or webcrypto is unsupported\");return}let{subtle:e}=window.crypto,t=await R(_e);if(!t||!e){console.info(\"unable to find private key or webcrypto unsupported\");return}let s={iat:Math.floor(new Date().getTime()/1e3),jti:Tt()},o={protected:It(JSON.stringify({typ:\"dpop+jwt\",alg:\"ES256\",jwk:r})),claims:It(JSON.stringify(s))},i=cn(`${o.protected}.${o.claims}`),a={name:bt,hash:{name:\"SHA-256\"}},c=dn(new Uint8Array(await e.sign(a,t,i)));return`${o.protected}.${o.claims}.${c}`}async function on(){if(!re()){console.info(\"webcrypto is not supported\");return}return await R(he)||await an(),R(he)}async function an(){let{subtle:r}=window.crypto,e=await r.generateKey(sn,!1,[\"sign\"]),t=await r.exportKey(\"jwk\",e.publicKey);await x(_e,e.privateKey),await x(he,t)}function It(r){return xt(ln(r))}function cn(r){return new TextEncoder().encode(r)}function xt(r){return btoa(r).replace(/\\+/g,\"-\").replace(/\\//g,\"_\").replace(/=+/g,\"\")}function ln(r){return encodeURIComponent(r).replace(/%([0-9A-F]{2})/g,(t,s)=>String.fromCharCode(parseInt(s,16)))}function dn(r){let e=\"\";return r.forEach(t=>{e+=String.fromCharCode(t)}),xt(e)}var St=Symbol(\"Payload pre-processed by Magic SDK\");function Mt(r){return Object.defineProperty(r,St,{value:!0,enumerable:!1}),r}function pn(r){return!!r[St]}function F(r){return pn(r)||(r.jsonrpc=r.jsonrpc??\"2.0\",r.id=Le(),r.method=r.method??\"noop\",r.params=r.params??[],Mt(r)),r}function p(r,e=[]){return Mt({params:e,method:r,jsonrpc:\"2.0\",id:Le()})}var K=class r{_jsonrpc;_id;_result;_error;constructor(e){e instanceof r?(this._jsonrpc=e.payload.jsonrpc,this._id=e.payload.id,this._result=e.payload.result,this._error=e.payload.error):lt(e)?(this._jsonrpc=e.jsonrpc,this._id=e.id,this._result=e.result,this._error=e.error):(this._jsonrpc=e.jsonrpc,this._id=e.id,this._result=void 0,this._error=void 0)}applyError(e){return this._error=e,this}applyResult(e){return this._result=e,this}get hasError(){return this._error?.code===un.DpopInvalidated&&Pt(),typeof this._error<\"u\"&&this._error!==null}get hasResult(){return typeof this._result<\"u\"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}};import{UserEventsEmit as En,UserEventsOnReceived as fn}from\"@magic-sdk/types\";var At=or(Nt()),De=class extends At.default{};function fe(){let r=new De;return{emitter:r,createChainingEmitterMethod:(s,n)=>(...o)=>(r[s].apply(r,o),n),createBoundEmitterMethod:s=>(...n)=>r[s].apply(r,n)}}var $t=Symbol(\"isPromiEvent\");function Lt(r){return!!r[$t]}function b(r){let e=qe(r),{createBoundEmitterMethod:t,createChainingEmitterMethod:s}=fe(),n=Symbol(\"Promise.then\"),o=Symbol(\"Promise.catch\"),i=Symbol(\"Promise.finally\"),a=(l,u)=>(...P)=>{let w=u[l].apply(u,P);return c(w)},c=l=>Object.assign(l,{[$t]:!0,[n]:l[n]||l.then,[o]:l[o]||l.catch,[i]:l[i]||l.finally,then:a(n,l),catch:a(o,l),finally:a(i,l),on:s(\"on\",l),once:s(\"once\",l),addListener:s(\"addListener\",l),off:s(\"off\",l),removeListener:s(\"removeListener\",l),removeAllListeners:s(\"removeAllListeners\",l),emit:t(\"emit\"),eventNames:t(\"eventNames\"),listeners:t(\"listeners\"),listenerCount:t(\"listenerCount\")}),d=c(e.then(l=>(d.emit(\"done\",l),d.emit(\"settled\"),l),l=>{throw d.emit(\"error\",l),d.emit(\"settled\"),l}));return d.on(fn.ClosedByUser,()=>{d.emit(En.ClosedByUser)}),d}function qe(r){return new Promise((e,t)=>{let s=r(e,t);Promise.resolve(s).catch(t)})}var f=class{constructor(e){this.sdk=e}get overlay(){return this.sdk.overlay}request(e){if(this.sdk.thirdPartyWallets.isConnected&&!vn.includes(e.method))return b((i,a)=>{this.sdk.thirdPartyWallets.requestOverride(e).then(i).catch(a)});let t=this.overlay.post(gn.MAGIC_HANDLE_REQUEST,F(e)),s=b((o,i)=>{t.then(a=>{if(n(),a.hasError)i(new U(a.payload.error));else if(a.hasResult)o(a.payload.result);else throw ht()}).catch(a=>{n(),i(a)})}),n=this.overlay.on(yn.MAGIC_HANDLE_EVENT,o=>{let{response:i}=o.data;if(i.id===e.id&&i.result?.event){let{event:a,params:c=[]}=i.result;s.emit(a,...c)}});return s}createIntermediaryEvent(e,t){return n=>{let o=p(Rn.IntermediaryEvent,[{payloadId:t,eventType:e,args:n}]);this.request(o)}}};function Ot(r,e){let[t]=r.split(\".\").map(Number);return t>=e}var Tn={\"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\"},ye=class extends f{loginWithMagicLink(e){let t=m.sdkName===\"@magic-sdk/react-native\"||m.sdkName===\"@magic-sdk/react-native-bare\"||m.sdkName===\"@magic-sdk/react-native-expo\";if(t&&Ot(m.version,19))throw new Error(\"loginWithMagicLink() is deprecated for this package, please utilize a passcode method like loginWithSMS or loginWithEmailOTP instead.\");t&&vt({method:\"auth.loginWithMagicLink()\",removalVersions:Tn,useInstead:\"auth.loginWithEmailOTP()\"}).log();let{email:s,showUI:n=!0,redirectURI:o,overrides:i,lifespan:a}=e,c=p(this.sdk.testMode?S.LoginWithMagicLinkTestMode:S.LoginWithMagicLink,[{email:s,showUI:n,redirectURI:o,overrides:i,lifespan:a}]);return this.request(c)}loginWithSMS(e){let{phoneNumber:t,showUI:s=!0,lifespan:n}=e,o=p(this.sdk.testMode?S.LoginWithSmsTestMode:S.LoginWithSms,[{phoneNumber:t,showUI:s,lifespan:n}]),i=this.request(o);return!s&&i&&(i.on(ge.VerifySmsOtp,a=>{this.createIntermediaryEvent(ge.VerifySmsOtp,o.id)(a)}),i.on(ge.Cancel,()=>{this.createIntermediaryEvent(ge.Cancel,o.id)()})),i}loginWithEmailOTP(e){let{email:t,showUI:s,deviceCheckUI:n,overrides:o,lifespan:i}=e,a=p(this.sdk.testMode?S.LoginWithEmailOTPTestMode:S.LoginWithEmailOTP,[{email:t,showUI:s,deviceCheckUI:n,overrides:o,lifespan:i}]),c=this.request(a);return!n&&c&&c.on(_t.Retry,()=>{this.createIntermediaryEvent(_t.Retry,a.id)()}),!s&&c&&(c.on(C.VerifyEmailOtp,d=>{this.createIntermediaryEvent(C.VerifyEmailOtp,a.id)(d)}),c.on(C.VerifyMFACode,d=>{this.createIntermediaryEvent(C.VerifyMFACode,a.id)(d)}),c.on(C.LostDevice,()=>{this.createIntermediaryEvent(C.LostDevice,a.id)()}),c.on(C.VerifyRecoveryCode,d=>{this.createIntermediaryEvent(C.VerifyRecoveryCode,a.id)(d)}),c.on(C.Cancel,()=>{this.createIntermediaryEvent(C.Cancel,a.id)()})),c}loginWithCredential(e){let{credentialOrQueryString:t,lifespan:s}=e||{},n=t??\"\";if(!t&&m.platform===\"web\"){n=window.location.search;let i=window.location.origin+window.location.pathname;window.history.replaceState(null,\"\",i)}let o=p(this.sdk.testMode?S.LoginWithCredentialTestMode:S.LoginWithCredential,[n,s]);return this.request(o)}setAuthorizationToken(e){let t=p(S.SetAuthorizationToken,[{jwt:e}]);return this.request(t)}updateEmailWithUI(e){let{email:t,showUI:s=!0}=e,n=p(this.sdk.testMode?S.UpdateEmailTestMode:S.UpdateEmail,[{email:t,showUI:s}]),o=this.request(n);return s||(o.on(_.Retry,()=>{this.createIntermediaryEvent(_.Retry,n.id)()}),o.on(_.Cancel,()=>{this.createIntermediaryEvent(_.Cancel,n.id)()}),o.on(_.VerifyEmailOtp,i=>{this.createIntermediaryEvent(_.VerifyEmailOtp,n.id)(i)}),o.on(_.VerifyMFACode,i=>{this.createIntermediaryEvent(_.VerifyMFACode,n.id)(i)}),o.on(j.RetryWithNewEmail,i=>{this.createIntermediaryEvent(j.RetryWithNewEmail,n.id)(i)}),o.on(j.Cancel,()=>{this.createIntermediaryEvent(j.Cancel,n.id)()}),o.on(j.VerifyEmailOtp,i=>{this.createIntermediaryEvent(j.VerifyEmailOtp,n.id)(i)})),o}};import{MagicPayloadMethod as g,EnableMFAEventEmit as ve,DisableMFAEventEmit as V,RecencyCheckEventEmit as Ft,RecoveryFactorEventEmit as k,RecoverAccountEventEmit as D,UpdateEmailEventEmit as B}from\"@magic-sdk/types\";var Ue=\"ds\",Fe=\"ek\",We=\"iv\",Je=\"AES-GCM\",In=256;async function Re(){let r=[];await Oe((e,t,s)=>{t.startsWith(`${Ue}_`)&&r.push(t)});for(let e of r)await A(e)}function kt(r){let e=\"\",t=new Uint8Array(r),s=t.byteLength;for(let n=0;n<s;n++)e+=String.fromCharCode(t[n]);return window.btoa(e)}function Dt(r){let e=window.atob(r),t=e.length,s=new Uint8Array(t);for(let n=0;n<t;n++)s[n]=e.charCodeAt(n);return s.buffer}async function bn(){if(!re()){console.info(\"webcrypto is not supported\");return}let{crypto:r}=window,e=await R(We);return e||r.getRandomValues(new Uint8Array(12))}async function Pn(){if(!re()){console.info(\"webcrypto is not supported\");return}let{subtle:r}=window.crypto,e=await R(Fe);return e||await r.generateKey({name:Je,length:In},!1,[\"encrypt\",\"decrypt\"])}async function qt(r,e){let t=await bn(),s=await Pn();if(!t||!s||!r)return;let n=Dt(r),{subtle:o}=window.crypto,i=await o.encrypt({name:Je,iv:t},s,n),a=kt(i);await x(`${Ue}_${e}`,a),await x(Fe,s),await x(We,t)}async function Ut(r){let e=await R(`${Ue}_${r}`),t=await R(We),s=await R(Fe);if(!t||!e||!s||!re())return;let{subtle:n}=window.crypto,o=await n.decrypt({name:Je,iv:t},s,Dt(e));return kt(o)}function Ge(r,e){return e?new URL(r,e):new URL(r)}var Te=class extends f{getIdToken(e){let t=p(this.sdk.testMode?g.GetIdTokenTestMode:g.GetIdToken,[e]);return this.request(t)}generateIdToken(e){let t=p(this.sdk.testMode?g.GenerateIdTokenTestMode:g.GenerateIdToken,[e]);return this.request(t)}getInfo(){let e=p(g.GetInfo,[]);return this.request(e)}isLoggedIn(){return b(async(e,t)=>{try{let s=!1;this.sdk.useStorageCache&&(s=await R(this.localForageIsLoggedInKey)===\"true\",s&&e(!0));let n=p(this.sdk.testMode?g.IsLoggedInTestMode:g.IsLoggedIn),o=await this.request(n);this.sdk.useStorageCache&&(o?x(this.localForageIsLoggedInKey,!0):A(this.localForageIsLoggedInKey),s&&!o&&this.emitUserLoggedOut(!0)),e(o)}catch(s){t(s)}})}logout(){return A(this.localForageIsLoggedInKey),Re(),b(async(e,t)=>{try{let s=p(this.sdk.testMode?g.LogoutTestMode:g.Logout),n=await this.request(s);this.sdk.useStorageCache&&this.emitUserLoggedOut(n),e(n)}catch(s){t(s)}})}requestInfoWithUI(e){let t=p(g.RequestUserInfoWithUI,e?[e]:[]);return this.request(t)}showSettings(e){let{showUI:t=!0}=e||{},s=p(this.sdk.testMode?g.UserSettingsTestMode:g.UserSettings,[e]),n=this.request(s);return!t&&n&&(n.on(k.SendNewPhoneNumber,o=>{this.createIntermediaryEvent(k.SendNewPhoneNumber,s.id)(o)}),n.on(k.SendOtpCode,o=>{this.createIntermediaryEvent(k.SendOtpCode,s.id)(o)}),n.on(k.StartEditPhoneNumber,()=>{this.createIntermediaryEvent(k.StartEditPhoneNumber,s.id)()}),n.on(k.Cancel,()=>{this.createIntermediaryEvent(k.Cancel,s.id)()}),n.on(Ft.VerifyEmailOtp,o=>{this.createIntermediaryEvent(Ft.VerifyEmailOtp,s.id)(o)})),n}recoverAccount(e){let{email:t,showUI:s}=e,n=p(this.sdk.testMode?g.RecoverAccountTestMode:g.RecoverAccount,[{email:t,showUI:s}]),o=this.request(n);return!s&&o&&(o.on(D.Cancel,()=>{this.createIntermediaryEvent(D.Cancel,n.id)()}),o.on(D.ResendSms,()=>{this.createIntermediaryEvent(D.ResendSms,n.id)()}),o.on(D.VerifyOtp,i=>{this.createIntermediaryEvent(D.VerifyOtp,n.id)(i)}),o.on(D.UpdateEmail,i=>{this.createIntermediaryEvent(D.UpdateEmail,n.id)(i)}),o.on(B.Cancel,()=>{this.createIntermediaryEvent(B.Cancel,n.id)()}),o.on(B.RetryWithNewEmail,i=>{this.createIntermediaryEvent(B.RetryWithNewEmail,n.id)(i)}),o.on(B.VerifyEmailOtp,i=>{this.createIntermediaryEvent(B.VerifyEmailOtp,n.id)(i)})),o}revealPrivateKey(){let e=p(g.RevealPK);return this.request(e)}onUserLoggedOut(e){this.userLoggedOutCallbacks.push(e)}enableMFA(e){let{showUI:t=!0}=e,s=p(g.EnableMFA,[{showUI:t}]),n=this.request(s);return!t&&n&&(n.on(ve.VerifyMFACode,o=>{this.createIntermediaryEvent(ve.VerifyMFACode,s.id)(o)}),n.on(ve.Cancel,()=>{this.createIntermediaryEvent(ve.Cancel,s.id)()})),n}disableMFA(e){let{showUI:t=!0}=e,s=p(g.DisableMFA,[{showUI:t}]),n=this.request(s);return!t&&n&&(n.on(V.VerifyMFACode,o=>{this.createIntermediaryEvent(V.VerifyMFACode,s.id)(o)}),n.on(V.LostDevice,o=>{this.createIntermediaryEvent(V.LostDevice,s.id)(o)}),n.on(V.Cancel,()=>{this.createIntermediaryEvent(V.Cancel,s.id)()})),n}emitUserLoggedOut(e){this.userLoggedOutCallbacks.forEach(t=>{t(e)})}localForageIsLoggedInKey=\"magic_auth_is_logged_in\";userLoggedOutCallbacks=[]};import{MagicPayloadMethod as q}from\"@magic-sdk/types\";var Ie=class extends f{connectWithUI(e){let t=b(async(s,n)=>{try{let o=p(q.Login,[{enabledWallets:this.sdk.thirdPartyWallets.enabledWallets,...e}]),i=this.request(o);this.sdk.thirdPartyWallets.eventListeners.forEach(({event:c,callback:d})=>{i.on(c,()=>d(o.id))}),i.on(\"id-token-created\",c=>{t.emit(\"id-token-created\",c)});let a=await i;a.error&&n(a),s(a)}catch(o){n(o)}});return t}showUI(e){return this.request(p(q.ShowUI,[e]))}showAddress(){return this.request(p(q.ShowAddress))}showSendTokensUI(){return this.request(p(q.ShowSendTokensUI))}showOnRamp(){return this.request(p(q.ShowOnRamp))}showNFTs(){return this.request(p(q.ShowNFTs))}showBalances(){return this.request(p(q.ShowBalances))}sendGaslessTransaction(e,t){return this.request(p(q.SendGaslessTransaction,[e,t]))}};import{LocalStorageKeys as W,MagicPayloadMethod as be}from\"@magic-sdk/types\";var Pe=class extends f{eventListeners=[];enabledWallets={};isConnected=!1;resetThirdPartyWalletState(){localStorage.removeItem(W.PROVIDER),localStorage.removeItem(W.ADDRESS),localStorage.removeItem(W.CHAIN_ID),this.isConnected=!1}requestOverride(e){if(e.method===be.Login)return this.resetThirdPartyWalletState(),super.request(e);if(e.method===be.GetInfo)return this.getInfo(e);if(e.method===be.IsLoggedIn)return this.isLoggedIn(e);if(e.method===be.Logout)return this.logout(e);switch(localStorage.getItem(W.PROVIDER)){case\"web3modal\":return this.web3modalRequest(e);default:return this.resetThirdPartyWalletState(),super.request(e)}}isLoggedIn(e){switch(localStorage.getItem(W.PROVIDER)){case\"web3modal\":return this.web3modalIsLoggedIn();default:return this.resetThirdPartyWalletState(),super.request(e)}}getInfo(e){switch(localStorage.getItem(W.PROVIDER)){case\"web3modal\":return this.web3modalGetInfo();default:return this.resetThirdPartyWalletState(),super.request(e)}}logout(e){let t=localStorage.getItem(W.PROVIDER);switch(this.resetThirdPartyWalletState(),t){case\"web3modal\":return this.web3modalLogout();default:return super.request(e)}}web3modalRequest(e){return b((t,s)=>{this.sdk.web3modal.modal.getWalletProvider().request(e).then(t).catch(s)})}web3modalIsLoggedIn(){return b(e=>{let t=this.sdk.web3modal.modal.getStatus();if(t===\"connected\"&&e(!0),t===\"disconnected\"&&(this.resetThirdPartyWalletState(),e(!1)),t===\"reconnecting\"){let s=this.sdk.web3modal.modal.subscribeProvider(({status:n})=>{n===\"connected\"&&(s(),e(!0)),n===\"disconnected\"&&(s(),this.resetThirdPartyWalletState(),e(!1))})}})}formatWeb3modalGetInfoResponse(){let e=this.sdk.web3modal.modal.getWalletInfo()?.name,t=this.sdk.web3modal.modal.getAddress();return{publicAddress:t,email:null,issuer:`did:ethr:${t}`,phoneNumber:null,isMfaEnabled:!1,recoveryFactors:[],walletType:e||\"web3modal\",firstLoginAt:null}}web3modalGetInfo(){return b((e,t)=>{let s=this.sdk.web3modal.modal.getStatus();if(s===\"connected\"&&e(this.formatWeb3modalGetInfoResponse()),s===\"disconnected\"&&(this.resetThirdPartyWalletState(),t(\"Magic RPC Error: [-32603] Internal error: User denied account access.\")),s===\"reconnecting\"){let n=this.sdk.web3modal.modal.subscribeProvider(({status:o})=>{o===\"connected\"&&(n(),e(this.formatWeb3modalGetInfoResponse())),o===\"disconnected\"&&(n(),this.resetThirdPartyWalletState(),t(\"Magic RPC Error: [-32603] Internal error: User denied account access.\"))})}})}web3modalLogout(){return b(async e=>{try{await this.sdk.web3modal.modal.disconnect()}catch(t){console.error(t)}e(!0)})}};import{MagicOutgoingWindowMessage as Wt,MagicPayloadMethod as wn}from\"@magic-sdk/types\";var{createBoundEmitterMethod:we,createChainingEmitterMethod:H}=fe(),xe=class extends f{isMagic=!0;sendAsync(e,t){if(!t)throw gt({procedure:\"Magic.rpcProvider.sendAsync\",argument:1,expected:\"function\",received:t===null?\"null\":typeof t});if(Array.isArray(e))this.overlay.post(Wt.MAGIC_HANDLE_REQUEST,e.map(s=>{let n=F(s);return this.prefixPayloadMethodForTestMode(n),n})).then(s=>{t(null,s.map(n=>({...n.payload,error:n.hasError?new U(n.payload.error):null})))});else{let s=F(e);this.prefixPayloadMethodForTestMode(s),this.overlay.post(Wt.MAGIC_HANDLE_REQUEST,s).then(n=>{t(n.hasError?new U(n.payload.error):null,n.payload)})}}send(e,t){if(typeof e==\"string\"){let n=p(e,Array.isArray(t)?t:[]);return this.request(n)}if(Array.isArray(e)||t){this.sendAsync(e,t);return}let s=yt();return s.log(),new K(e).applyError({code:-32603,message:s.rawMessage}).payload}enable(){let e=p(wn.Login);return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let t=\"testMode/eth/\";this.sdk.testMode&&(e.method=`${t}${e.method}`)}on=H(\"on\",this);once=H(\"once\",this);addListener=H(\"addListener\",this);off=H(\"off\",this);removeListener=H(\"removeListener\",this);removeAllListeners=H(\"removeAllListeners\",this);emit=we(\"emit\");eventNames=we(\"eventNames\");listeners=we(\"listeners\");listenerCount=we(\"listenerCount\")};import{MagicPayloadMethod as Ke,NftCheckoutIntermediaryEvents as Se}from\"@magic-sdk/types\";var Me=class extends f{purchase(e){let t=p(Ke.NFTPurchase,[e]);return this.request(t)}checkout(e){let t=this.sdk.thirdPartyWallets.isConnected,s=p(Ke.NFTCheckout,[{...e,walletProvider:t?\"web3modal\":\"magic\"}]),n=this.request(s);return t&&(n.on(Se.Initiated,async o=>{try{let i=await this.request({method:\"eth_sendTransaction\",params:[o]});this.createIntermediaryEvent(Se.Success,s.id)(i)}catch{this.createIntermediaryEvent(Se.Failure,s.id)()}}),n.on(Se.Disconnect,()=>{this.sdk.thirdPartyWallets.resetThirdPartyWalletState(),n.emit(\"disconnect\")})),n}transfer(e){let t=p(Ke.NFTTransfer,[e]);return this.request(t)}};function Jt(r){return r.compat&&r.compat[m.sdkName]!=null?typeof r.compat[m.sdkName]==\"string\"?it(at(m.version),r.compat[m.sdkName]):!!r.compat[m.sdkName]:!0}function xn(r,e,t){return!e&&!t?`${r}_eth_mainnet`:t?`${r}_${JSON.stringify(t)}`:e?typeof e==\"string\"?`${r}_eth_${e}`:`${r}_${e.rpcUrl}_${e.chainId}_${e.chainType}`:`${r}_unknown`}function Sn(r){let e=r?.extensions??[],t={},s=[];if(Array.isArray(e)?e.forEach(n=>{Jt(n)?(n.init(this),n.name&&(this[n.name]=n),ee(n.config)||(t[n.name]=n.config)):s.push(n)}):Object.keys(e).forEach(n=>{if(Jt(e[n])){e[n].init(this);let o=e[n];this[n]=o,ee(o.config)||(t[e[n].name]=o.config)}else s.push(e[n])}),s.length)throw ft(s);return t}var je=class r{constructor(e,t){this.apiKey=e;if(!e)throw pt();m.platform===\"react-native\"&&t?.endpoint&&Rt().log();let{defaultEndpoint:s,version:n}=m;this.testMode=!!t?.testMode,this.useStorageCache=!!t?.useStorageCache,this.endpoint=Ge(t?.endpoint??s).origin,this.auth=new ye(this),this.user=new Te(this),this.wallet=new Ie(this),this.nft=new Me(this),this.thirdPartyWallets=new Pe(this),this.rpcProvider=new xe(this);let o=Sn.call(this,t);this.parameters=ce({API_KEY:this.apiKey,DOMAIN_ORIGIN:typeof window<\"u\"&&window?.location?window?.location.origin:\"\",ETH_NETWORK:t?.network,host:Ge(this.endpoint).host,sdk:ut[m.sdkName],version:n,ext:ee(o)?void 0:o,locale:t?.locale||\"en_US\",authConfig:t?.authConfig?{...t.authConfig}:void 0,...m.bundleId?{bundleId:m.bundleId}:{},meta:t?.meta}),this.networkHash=xn(this.apiKey,t?.network,ee(o)?void 0:o),t?.deferPreload||this.preload()}static __overlays__=new Map;endpoint;parameters;networkHash;testMode;useStorageCache;auth;user;wallet;nft;thirdPartyWallets;rpcProvider;get overlay(){if(!r.__overlays__.has(this.parameters)){let e=new m.ViewController(this.endpoint,this.parameters,this.networkHash);e.init(),r.__overlays__.set(this.parameters,e)}return r.__overlays__.get(this.parameters)}async preload(){await this.overlay.waitForReady()}};import{MagicIncomingWindowMessage as se,MagicOutgoingWindowMessage as Cn,SDKWarningCode as Nn}from\"@magic-sdk/types\";function Mn(r,e){return e&&Array.isArray(r)?r.find(t=>t.id===e):r}function Gt(r,e){let t=e.data.response?.id,s=Mn(r,t);if(t&&s){let n=new K(s).applyResult(e.data.response.result).applyError(e.data.response.error);return{id:t,response:n}}return{}}async function Kt(r,e,t){let s=await R(\"rt\"),n;if(m.platform===\"web\")try{n=await R(\"jwt\")??await wt()}catch(a){console.error(\"webcrypto error\",a)}let o={msgType:r,payload:e};n&&(o.jwt=n),n&&s&&(o.rt=s);let i=await Ut(t);return i&&(o.deviceShare=i),o}async function jt(r){r.data.rt&&await x(\"rt\",r.data.rt)}function Vt(r,e){let t=null;return function(...s){t&&clearTimeout(t),t=setTimeout(()=>{r(...s)},e)}}var An=1e3,Ht=60*An,Bt=5*Ht,$n=60*Ht,Ve=class{constructor(e,t,s){this.endpoint=e;this.parameters=t;this.networkHash=s;this.listen()}isReadyForRequest=!1;messageHandlers=new Set;isConnectedToInternet=!0;lastPongTime=null;heartbeatIntervalTimer=null;heartbeatDebounce=Vt(()=>{this.endpoint===\"https://auth.magic.link/\"&&this.heartBeatCheck()},$n);async post(e,t){return qe(async(s,n)=>{if(!this.isConnectedToInternet){let l=mt();n(l)}await this.checkRelayerExistsInDOM()||(this.isReadyForRequest=!1,await this.reloadRelayer()),this.isReadyForRequest||await this.waitForReady();let o=[],i=Array.isArray(t)?t.map(l=>l.id):[],a=await Kt(`${e}-${this.parameters}`,t,this.networkHash);await this._post(a);let c=l=>u=>{let{id:P,response:w}=Gt(t,u);if(jt(u),w?.payload.error?.message===\"User denied account access.\")Re();else if(u.data.deviceShare){let{deviceShare:zt}=u.data;qt(zt,this.networkHash)}P&&w&&Array.isArray(t)&&i.includes(P)?(o.push(w),o.length===t.length&&(l(),s(o))):P&&w&&!Array.isArray(t)&&P===t.id&&(l(),s(w))},d=this.on(se.MAGIC_HANDLE_RESPONSE,c(()=>d()))})}on(e,t){let s=t.bind(window),n=o=>{o.data.msgType===`${e}-${this.parameters}`&&s(o)};return this.messageHandlers.add(n),()=>this.messageHandlers.delete(n)}waitForReady(){return new Promise(e=>{let t=this.on(se.MAGIC_OVERLAY_READY,()=>{this.isReadyForRequest=!0,e(),t()})})}listen(){this.on(se.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(se.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()}),this.on(se.MAGIC_SEND_PRODUCT_ANNOUNCEMENT,e=>{e.data.response.result.product_announcement&&new L(Nn.ProductAnnouncement,e.data.response.result.product_announcement).log()})}heartBeatCheck(){let e=!0,t=async()=>{let s={msgType:`${Cn.MAGIC_PING}-${this.parameters}`,payload:[]};await this._post(s)};this.heartbeatIntervalTimer=setInterval(async()=>{if(this.lastPongTime){if(Date.now()-this.lastPongTime>Bt*2){this.reloadRelayer(),e=!0;return}}else if(!e){this.reloadRelayer(),e=!0;return}await t(),e=!1},Bt)}stopHeartBeat(){this.heartbeatDebounce(),this.lastPongTime=null,this.heartbeatIntervalTimer&&(clearInterval(this.heartbeatIntervalTimer),this.heartbeatIntervalTimer=null)}};import{MagicPayloadMethod as Ln}from\"@magic-sdk/types\";var Xt=[\"request\",\"overlay\",\"sdk\"];function On(r){let e=Object.getPrototypeOf(r),t=[e];for(;e!==f.prototype;)e=Object.getPrototypeOf(e),t.push(e);return t}var Be=class extends f{compat;__sdk_access_field_descriptors__=new Map;__is_initialized__=!1;utils={createPromiEvent:b,isPromiEvent:Lt,encodeJSON:ce,decodeJSON:ct,createJsonRpcRequestPayload:p,standardizeJsonRpcRequestPayload:F,storage:me};constructor(){super(void 0);let e=[this,...On(this)];Xt.forEach(t=>{let s=e.map(a=>Object.getOwnPropertyDescriptor(a,t)),n=s.findIndex(a=>!!a),o=n>0,i=s[n];i&&(this.__sdk_access_field_descriptors__.set(t,{descriptor:i,isPrototypeField:o}),Object.defineProperty(this,t,{configurable:!0,get:()=>{throw Et(t)}}))})}init(e){this.__is_initialized__||(Xt.forEach(t=>{if(this.__sdk_access_field_descriptors__.has(t)){let{descriptor:s,isPrototypeField:n}=this.__sdk_access_field_descriptors__.get(t);n?delete this[t]:Object.defineProperty(this,t,s)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:t,removalVersion:s,useInstead:n}=e,o=n?` Use \\`${n}\\` instead.`:\"\",i=`\\`${t}\\` will be removed from this Extension in version \\`${s}\\`.${o}`;return new te(this,\"DEPRECATION_NOTICE\",i)}createWarning(e,t){return new te(this,e,t)}createError(e,t,s){return new de(this,e,t,s)}},Ce=class extends Be{},He=class{static Internal=Ce},Xe=class extends Ce{constructor(t){super();this.config=t;this.chain=t.chainType}chain;async getPublicAddress(){return this.request(this.utils.createJsonRpcRequestPayload(Ln.GetMultichainPublicAddress,[{chain:this.chain}]))}};export{He as Extension,de as MagicExtensionError,te as MagicExtensionWarning,U as MagicRPCError,$ as MagicSDKError,L as MagicSDKWarning,Xe as MultichainExtension,je as SDKBase,_e as STORE_KEY_PRIVATE_KEY,he as STORE_KEY_PUBLIC_JWK,De as TypedEmitter,Ve as ViewController,Pt as clearKeys,vt as createDeprecationWarning,Xn as createDuplicateIframeWarning,Et as createExtensionNotInitializedError,ft as createIncompatibleExtensionsError,gt as createInvalidArgumentError,wt as createJwt,ht as createMalformedResponseError,pt as createMissingApiKeyError,mt as createModalNotReadyError,b as createPromiEvent,qe as createPromise,Rt as createReactNativeEndpointConfigurationWarning,Xr as createSDK,yt as createSynchronousWeb3MethodWarning,fe as createTypedEmitter,Ge as createURL,ct as decodeJSON,ce as encodeJSON,Le as getPayloadId,ee as isEmpty,dt as isJsonRpcErrorCode,Wn as isJsonRpcRequestPayload,lt as isJsonRpcResponsePayload,Jn as isMagicPayloadMethod,Ot as isMajorVersionAtLeast,Lt as isPromiEvent,re as isWebCryptoSupported,me as storage,Tt as uuid};\n//# sourceMappingURL=index.mjs.map\n","import{Extension as g}from\"@magic-sdk/commons\";var p=(n=>(n.Start=\"magic_oauth_login_with_redirect_start\",n.Verify=\"magic_oauth_login_with_redirect_verify\",n.Popup=\"magic_oauth_login_with_popup\",n.VerifyTelegramData=\"magic_oauth_verify_telegram_data\",n))(p||{}),d=(i=>(i.InvalidRequest=\"invalid_request\",i.InvalidClient=\"invalid_client\",i.InvalidScope=\"invalid_scope\",i.InvalidGrant=\"invalid_grant\",i.UnauthorizedClient=\"unauthorized_client\",i.UnsupportedResponseType=\"unsupported_response_type\",i.UnsupportedGrantType=\"unsupported_grant_type\",i.UnsupportedTokenType=\"unsupported_token_type\",i.AccessDenied=\"access_denied\",i.ServerError=\"server_error\",i.TemporarilyUnavailable=\"temporarily_unavailable\",i))(d||{});var l=class extends g.Internal{name=\"oauth2\";config={};compat={\"magic-sdk\":\">=2.4.6\",\"@magic-sdk/react-native\":!1,\"@magic-sdk/react-native-bare\":!1,\"@magic-sdk/react-native-expo\":!1};constructor(){super(),this.seamlessTelegramLogin()}loginWithRedirect(r){return this.utils.createPromiEvent(async(e,o)=>{let n=this.utils.createJsonRpcRequestPayload(\"magic_oauth_login_with_redirect_start\",[{...r,apiKey:this.sdk.apiKey,platform:\"web\"}]),s=await this.request(n),a=s,t=s;if(t.error&&o(this.createError(t.error,t.error_description??\"An error occurred.\",{errorURI:t.error_uri,provider:t.provider})),a?.oauthAuthoriationURI){let u=a.useMagicServerCallback?new URL(a.oauthAuthoriationURI,this.sdk.endpoint).href:a.oauthAuthoriationURI;a?.shouldReturnURI?e(u):window.location.href=u}e(null)})}getRedirectResult(r){let e=r.optionalQueryString||window.location.search,o=window.location.origin+window.location.pathname;return window.history.replaceState(null,\"\",o),h.call(this,r,e)}loginWithPopup(r){let e=this.utils.createJsonRpcRequestPayload(\"magic_oauth_login_with_popup\",[{...r,apiKey:this.sdk.apiKey,platform:\"web\"}]);return this.request(e)}seamlessTelegramLogin(){try{if(!window.location.hash.toString().includes(\"#tgWebAppData\"))return;let e=document.createElement(\"script\");e.src=\"https://telegram.org/js/telegram-web-app.js\",document.head.prepend(e),e.onload=async()=>{try{let o=window.Telegram?.WebApp.initData,n=this.utils.createJsonRpcRequestPayload(\"magic_oauth_verify_telegram_data\",[{userData:o,isMiniApp:!0}]);await this.request(n)}catch(o){console.log(\"Error while verifying telegram data\",o)}}}catch(r){console.log(\"Error while loading telegram-web-app script\",r)}}};function h(c,r){return this.utils.createPromiEvent(async(e,o)=>{let n=this.utils.createJsonRpcRequestPayload(\"magic_oauth_login_with_redirect_verify\",[{authorizationResponseParams:r,magicApiKey:this.sdk.apiKey,platform:\"web\",...c}]),s=await this.request(n),a=s,t=s;t.error&&o(this.createError(t.error,t.error_description??\"An error occurred.\",{errorURI:t.error_uri,provider:t.provider})),e(a)})}export{d as OAuthErrorCode,l as OAuthExtension,p as OAuthPayloadMethods};\n//# sourceMappingURL=index.mjs.map\n","var $r=Object.create;var Qe=Object.defineProperty;var Zr=Object.getOwnPropertyDescriptor;var qr=Object.getOwnPropertyNames;var kr=Object.getPrototypeOf,et=Object.prototype.hasOwnProperty;var de=(_=>typeof require<\"u\"?require:typeof Proxy<\"u\"?new Proxy(_,{get:(y,O)=>(typeof require<\"u\"?require:y)[O]}):_)(function(_){if(typeof require<\"u\")return require.apply(this,arguments);throw Error('Dynamic require of \"'+_+'\" is not supported')});var Je=(_,y)=>()=>(y||_((y={exports:{}}).exports,y),y.exports);var rt=(_,y,O,C)=>{if(y&&typeof y==\"object\"||typeof y==\"function\")for(let W of qr(y))!et.call(_,W)&&W!==O&&Qe(_,W,{get:()=>y[W],enumerable:!(C=Zr(y,W))||C.enumerable});return _};var $e=(_,y,O)=>(O=_!=null?$r(kr(_)):{},rt(y||!_||!_.__esModule?Qe(O,\"default\",{value:_,enumerable:!0}):O,_));var qe=Je((Ze,De)=>{\"use strict\";(function(_){if(typeof Ze==\"object\"&&typeof De<\"u\")De.exports=_();else if(typeof define==\"function\"&&define.amd)define([],_);else{var y;typeof window<\"u\"?y=window:typeof global<\"u\"?y=global:typeof self<\"u\"?y=self:y=this,y.localforage=_()}})(function(){var _,y,O;return function C(W,Z,L){function V(K,J){if(!Z[K]){if(!W[K]){var m=typeof de==\"function\"&&de;if(!J&&m)return m(K,!0);if(D)return D(K,!0);var w=new Error(\"Cannot find module '\"+K+\"'\");throw w.code=\"MODULE_NOT_FOUND\",w}var T=Z[K]={exports:{}};W[K][0].call(T.exports,function(F){var $=W[K][1][F];return V($||F)},T,T.exports,C,W,Z,L)}return Z[K].exports}for(var D=typeof de==\"function\"&&de,z=0;z<L.length;z++)V(L[z]);return V}({1:[function(C,W,Z){(function(L){\"use strict\";var V=L.MutationObserver||L.WebKitMutationObserver,D;if(V){var z=0,K=new V(F),J=L.document.createTextNode(\"\");K.observe(J,{characterData:!0}),D=function(){J.data=z=++z%2}}else if(!L.setImmediate&&typeof L.MessageChannel<\"u\"){var m=new L.MessageChannel;m.port1.onmessage=F,D=function(){m.port2.postMessage(0)}}else\"document\"in L&&\"onreadystatechange\"in L.document.createElement(\"script\")?D=function(){var P=L.document.createElement(\"script\");P.onreadystatechange=function(){F(),P.onreadystatechange=null,P.parentNode.removeChild(P),P=null},L.document.documentElement.appendChild(P)}:D=function(){setTimeout(F,0)};var w,T=[];function F(){w=!0;for(var P,k,M=T.length;M;){for(k=T,T=[],P=-1;++P<M;)k[P]();M=T.length}w=!1}W.exports=$;function $(P){T.push(P)===1&&!w&&D()}}).call(this,typeof global<\"u\"?global:typeof self<\"u\"?self:typeof window<\"u\"?window:{})},{}],2:[function(C,W,Z){\"use strict\";var L=C(1);function V(){}var D={},z=[\"REJECTED\"],K=[\"FULFILLED\"],J=[\"PENDING\"];W.exports=m;function m(h){if(typeof h!=\"function\")throw new TypeError(\"resolver must be a function\");this.state=J,this.queue=[],this.outcome=void 0,h!==V&&$(this,h)}m.prototype.catch=function(h){return this.then(null,h)},m.prototype.then=function(h,A){if(typeof h!=\"function\"&&this.state===K||typeof A!=\"function\"&&this.state===z)return this;var E=new this.constructor(V);if(this.state!==J){var N=this.state===K?h:A;T(E,N,this.outcome)}else this.queue.push(new w(E,h,A));return E};function w(h,A,E){this.promise=h,typeof A==\"function\"&&(this.onFulfilled=A,this.callFulfilled=this.otherCallFulfilled),typeof E==\"function\"&&(this.onRejected=E,this.callRejected=this.otherCallRejected)}w.prototype.callFulfilled=function(h){D.resolve(this.promise,h)},w.prototype.otherCallFulfilled=function(h){T(this.promise,this.onFulfilled,h)},w.prototype.callRejected=function(h){D.reject(this.promise,h)},w.prototype.otherCallRejected=function(h){T(this.promise,this.onRejected,h)};function T(h,A,E){L(function(){var N;try{N=A(E)}catch(H){return D.reject(h,H)}N===h?D.reject(h,new TypeError(\"Cannot resolve promise with itself\")):D.resolve(h,N)})}D.resolve=function(h,A){var E=P(F,A);if(E.status===\"error\")return D.reject(h,E.value);var N=E.value;if(N)$(h,N);else{h.state=K,h.outcome=A;for(var H=-1,j=h.queue.length;++H<j;)h.queue[H].callFulfilled(A)}return h},D.reject=function(h,A){h.state=z,h.outcome=A;for(var E=-1,N=h.queue.length;++E<N;)h.queue[E].callRejected(A);return h};function F(h){var A=h&&h.then;if(h&&(typeof h==\"object\"||typeof h==\"function\")&&typeof A==\"function\")return function(){A.apply(h,arguments)}}function $(h,A){var E=!1;function N(Q){E||(E=!0,D.reject(h,Q))}function H(Q){E||(E=!0,D.resolve(h,Q))}function j(){A(H,N)}var X=P(j);X.status===\"error\"&&N(X.value)}function P(h,A){var E={};try{E.value=h(A),E.status=\"success\"}catch(N){E.status=\"error\",E.value=N}return E}m.resolve=k;function k(h){return h instanceof this?h:D.resolve(new this(V),h)}m.reject=M;function M(h){var A=new this(V);return D.reject(A,h)}m.all=ae;function ae(h){var A=this;if(Object.prototype.toString.call(h)!==\"[object Array]\")return this.reject(new TypeError(\"must be an array\"));var E=h.length,N=!1;if(!E)return this.resolve([]);for(var H=new Array(E),j=0,X=-1,Q=new this(V);++X<E;)ee(h[X],X);return Q;function ee(oe,a){A.resolve(oe).then(u,function(v){N||(N=!0,D.reject(Q,v))});function u(v){H[a]=v,++j===E&&!N&&(N=!0,D.resolve(Q,H))}}}m.race=re;function re(h){var A=this;if(Object.prototype.toString.call(h)!==\"[object Array]\")return this.reject(new TypeError(\"must be an array\"));var E=h.length,N=!1;if(!E)return this.resolve([]);for(var H=-1,j=new this(V);++H<E;)X(h[H]);return j;function X(Q){A.resolve(Q).then(function(ee){N||(N=!0,D.resolve(j,ee))},function(ee){N||(N=!0,D.reject(j,ee))})}}},{1:1}],3:[function(C,W,Z){(function(L){\"use strict\";typeof L.Promise!=\"function\"&&(L.Promise=C(2))}).call(this,typeof global<\"u\"?global:typeof self<\"u\"?self:typeof window<\"u\"?window:{})},{2:2}],4:[function(C,W,Z){\"use strict\";var L=typeof Symbol==\"function\"&&typeof Symbol.iterator==\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol==\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};function V(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}function D(){try{if(typeof indexedDB<\"u\")return indexedDB;if(typeof webkitIndexedDB<\"u\")return webkitIndexedDB;if(typeof mozIndexedDB<\"u\")return mozIndexedDB;if(typeof OIndexedDB<\"u\")return OIndexedDB;if(typeof msIndexedDB<\"u\")return msIndexedDB}catch{return}}var z=D();function K(){try{if(!z||!z.open)return!1;var e=typeof openDatabase<\"u\"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t=typeof fetch==\"function\"&&fetch.toString().indexOf(\"[native code\")!==-1;return(!e||t)&&typeof indexedDB<\"u\"&&typeof IDBKeyRange<\"u\"}catch{return!1}}function J(e,t){e=e||[],t=t||{};try{return new Blob(e,t)}catch(n){if(n.name!==\"TypeError\")throw n;for(var r=typeof BlobBuilder<\"u\"?BlobBuilder:typeof MSBlobBuilder<\"u\"?MSBlobBuilder:typeof MozBlobBuilder<\"u\"?MozBlobBuilder:WebKitBlobBuilder,o=new r,i=0;i<e.length;i+=1)o.append(e[i]);return o.getBlob(t.type)}}typeof Promise>\"u\"&&C(3);var m=Promise;function w(e,t){t&&e.then(function(r){t(null,r)},function(r){t(r)})}function T(e,t,r){typeof t==\"function\"&&e.then(t),typeof r==\"function\"&&e.catch(r)}function F(e){return typeof e!=\"string\"&&(console.warn(e+\" used as a key, but it is not a string.\"),e=String(e)),e}function $(){if(arguments.length&&typeof arguments[arguments.length-1]==\"function\")return arguments[arguments.length-1]}var P=\"local-forage-detect-blob-support\",k=void 0,M={},ae=Object.prototype.toString,re=\"readonly\",h=\"readwrite\";function A(e){for(var t=e.length,r=new ArrayBuffer(t),o=new Uint8Array(r),i=0;i<t;i++)o[i]=e.charCodeAt(i);return r}function E(e){return new m(function(t){var r=e.transaction(P,h),o=J([\"\"]);r.objectStore(P).put(o,\"key\"),r.onabort=function(i){i.preventDefault(),i.stopPropagation(),t(!1)},r.oncomplete=function(){var i=navigator.userAgent.match(/Chrome\\/(\\d+)/),n=navigator.userAgent.match(/Edge\\//);t(n||!i||parseInt(i[1],10)>=43)}}).catch(function(){return!1})}function N(e){return typeof k==\"boolean\"?m.resolve(k):E(e).then(function(t){return k=t,k})}function H(e){var t=M[e.name],r={};r.promise=new m(function(o,i){r.resolve=o,r.reject=i}),t.deferredOperations.push(r),t.dbReady?t.dbReady=t.dbReady.then(function(){return r.promise}):t.dbReady=r.promise}function j(e){var t=M[e.name],r=t.deferredOperations.pop();if(r)return r.resolve(),r.promise}function X(e,t){var r=M[e.name],o=r.deferredOperations.pop();if(o)return o.reject(t),o.promise}function Q(e,t){return new m(function(r,o){if(M[e.name]=M[e.name]||G(),e.db)if(t)H(e),e.db.close();else return r(e.db);var i=[e.name];t&&i.push(e.version);var n=z.open.apply(z,i);t&&(n.onupgradeneeded=function(f){var s=n.result;try{s.createObjectStore(e.storeName),f.oldVersion<=1&&s.createObjectStore(P)}catch(c){if(c.name===\"ConstraintError\")console.warn('The database \"'+e.name+'\" has been upgraded from version '+f.oldVersion+\" to version \"+f.newVersion+', but the storage \"'+e.storeName+'\" already exists.');else throw c}}),n.onerror=function(f){f.preventDefault(),o(n.error)},n.onsuccess=function(){var f=n.result;f.onversionchange=function(s){s.target.close()},r(f),j(e)}})}function ee(e){return Q(e,!1)}function oe(e){return Q(e,!0)}function a(e,t){if(!e.db)return!0;var r=!e.db.objectStoreNames.contains(e.storeName),o=e.version<e.db.version,i=e.version>e.db.version;if(o&&(e.version!==t&&console.warn('The database \"'+e.name+`\" can't be downgraded from version `+e.db.version+\" to version \"+e.version+\".\"),e.version=e.db.version),i||r){if(r){var n=e.db.version+1;n>e.version&&(e.version=n)}return!0}return!1}function u(e){return new m(function(t,r){var o=new FileReader;o.onerror=r,o.onloadend=function(i){var n=btoa(i.target.result||\"\");t({__local_forage_encoded_blob:!0,data:n,type:e.type})},o.readAsBinaryString(e)})}function v(e){var t=A(atob(e.data));return J([t],{type:e.type})}function g(e){return e&&e.__local_forage_encoded_blob}function b(e){var t=this,r=t._initReady().then(function(){var o=M[t._dbInfo.name];if(o&&o.dbReady)return o.dbReady});return T(r,e,e),r}function I(e){H(e);for(var t=M[e.name],r=t.forages,o=0;o<r.length;o++){var i=r[o];i._dbInfo.db&&(i._dbInfo.db.close(),i._dbInfo.db=null)}return e.db=null,ee(e).then(function(n){return e.db=n,a(e)?oe(e):n}).then(function(n){e.db=t.db=n;for(var f=0;f<r.length;f++)r[f]._dbInfo.db=n}).catch(function(n){throw X(e,n),n})}function R(e,t,r,o){o===void 0&&(o=1);try{var i=e.db.transaction(e.storeName,t);r(null,i)}catch(n){if(o>0&&(!e.db||n.name===\"InvalidStateError\"||n.name===\"NotFoundError\"))return m.resolve().then(function(){if(!e.db||n.name===\"NotFoundError\"&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),oe(e)}).then(function(){return I(e).then(function(){R(e,t,r,o-1)})}).catch(r);r(n)}}function G(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function fe(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=e[o];var i=M[r.name];i||(i=G(),M[r.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=b);var n=[];function f(){return m.resolve()}for(var s=0;s<i.forages.length;s++){var c=i.forages[s];c!==t&&n.push(c._initReady().catch(f))}var l=i.forages.slice(0);return m.all(n).then(function(){return r.db=i.db,ee(r)}).then(function(d){return r.db=d,a(r,t._defaultConfig.version)?oe(r):d}).then(function(d){r.db=i.db=d,t._dbInfo=r;for(var p=0;p<l.length;p++){var S=l[p];S!==t&&(S._dbInfo.db=r.db,S._dbInfo.version=r.version)}})}function ie(e,t){var r=this;e=F(e);var o=new m(function(i,n){r.ready().then(function(){R(r._dbInfo,re,function(f,s){if(f)return n(f);try{var c=s.objectStore(r._dbInfo.storeName),l=c.get(e);l.onsuccess=function(){var d=l.result;d===void 0&&(d=null),g(d)&&(d=v(d)),i(d)},l.onerror=function(){n(l.error)}}catch(d){n(d)}})}).catch(n)});return w(o,t),o}function ue(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){R(r._dbInfo,re,function(f,s){if(f)return n(f);try{var c=s.objectStore(r._dbInfo.storeName),l=c.openCursor(),d=1;l.onsuccess=function(){var p=l.result;if(p){var S=p.value;g(S)&&(S=v(S));var B=e(S,p.key,d++);B!==void 0?i(B):p.continue()}else i()},l.onerror=function(){n(l.error)}}catch(p){n(p)}})}).catch(n)});return w(o,t),o}function tr(e,t,r){var o=this;e=F(e);var i=new m(function(n,f){var s;o.ready().then(function(){return s=o._dbInfo,ae.call(t)===\"[object Blob]\"?N(s.db).then(function(c){return c?t:u(t)}):t}).then(function(c){R(o._dbInfo,h,function(l,d){if(l)return f(l);try{var p=d.objectStore(o._dbInfo.storeName);c===null&&(c=void 0);var S=p.put(c,e);d.oncomplete=function(){c===void 0&&(c=null),n(c)},d.onabort=d.onerror=function(){var B=S.error?S.error:S.transaction.error;f(B)}}catch(B){f(B)}})}).catch(f)});return w(i,r),i}function nr(e,t){var r=this;e=F(e);var o=new m(function(i,n){r.ready().then(function(){R(r._dbInfo,h,function(f,s){if(f)return n(f);try{var c=s.objectStore(r._dbInfo.storeName),l=c.delete(e);s.oncomplete=function(){i()},s.onerror=function(){n(l.error)},s.onabort=function(){var d=l.error?l.error:l.transaction.error;n(d)}}catch(d){n(d)}})}).catch(n)});return w(o,t),o}function or(e){var t=this,r=new m(function(o,i){t.ready().then(function(){R(t._dbInfo,h,function(n,f){if(n)return i(n);try{var s=f.objectStore(t._dbInfo.storeName),c=s.clear();f.oncomplete=function(){o()},f.onabort=f.onerror=function(){var l=c.error?c.error:c.transaction.error;i(l)}}catch(l){i(l)}})}).catch(i)});return w(r,e),r}function ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){R(t._dbInfo,re,function(n,f){if(n)return i(n);try{var s=f.objectStore(t._dbInfo.storeName),c=s.count();c.onsuccess=function(){o(c.result)},c.onerror=function(){i(c.error)}}catch(l){i(l)}})}).catch(i)});return w(r,e),r}function ar(e,t){var r=this,o=new m(function(i,n){if(e<0){i(null);return}r.ready().then(function(){R(r._dbInfo,re,function(f,s){if(f)return n(f);try{var c=s.objectStore(r._dbInfo.storeName),l=!1,d=c.openKeyCursor();d.onsuccess=function(){var p=d.result;if(!p){i(null);return}e===0||l?i(p.key):(l=!0,p.advance(e))},d.onerror=function(){n(d.error)}}catch(p){n(p)}})}).catch(n)});return w(o,t),o}function fr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){R(t._dbInfo,re,function(n,f){if(n)return i(n);try{var s=f.objectStore(t._dbInfo.storeName),c=s.openKeyCursor(),l=[];c.onsuccess=function(){var d=c.result;if(!d){o(l);return}l.push(d.key),d.continue()},c.onerror=function(){i(c.error)}}catch(d){i(d)}})}).catch(i)});return w(r,e),r}function sr(e,t){t=$.apply(this,arguments);var r=this.config();e=typeof e!=\"function\"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;if(!e.name)i=m.reject(\"Invalid arguments\");else{var n=e.name===r.name&&o._dbInfo.db,f=n?m.resolve(o._dbInfo.db):ee(e).then(function(s){var c=M[e.name],l=c.forages;c.db=s;for(var d=0;d<l.length;d++)l[d]._dbInfo.db=s;return s});e.storeName?i=f.then(function(s){if(s.objectStoreNames.contains(e.storeName)){var c=s.version+1;H(e);var l=M[e.name],d=l.forages;s.close();for(var p=0;p<d.length;p++){var S=d[p];S._dbInfo.db=null,S._dbInfo.version=c}var B=new m(function(x,Y){var U=z.open(e.name,c);U.onerror=function(q){var le=U.result;le.close(),Y(q)},U.onupgradeneeded=function(){var q=U.result;q.deleteObjectStore(e.storeName)},U.onsuccess=function(){var q=U.result;q.close(),x(q)}});return B.then(function(x){l.db=x;for(var Y=0;Y<d.length;Y++){var U=d[Y];U._dbInfo.db=x,j(U._dbInfo)}}).catch(function(x){throw(X(e,x)||m.resolve()).catch(function(){}),x})}}):i=f.then(function(s){H(e);var c=M[e.name],l=c.forages;s.close();for(var d=0;d<l.length;d++){var p=l[d];p._dbInfo.db=null}var S=new m(function(B,x){var Y=z.deleteDatabase(e.name);Y.onerror=function(){var U=Y.result;U&&U.close(),x(Y.error)},Y.onblocked=function(){console.warn('dropInstance blocked for database \"'+e.name+'\" until all open connections are closed')},Y.onsuccess=function(){var U=Y.result;U&&U.close(),B(U)}});return S.then(function(B){c.db=B;for(var x=0;x<l.length;x++){var Y=l[x];j(Y._dbInfo)}}).catch(function(B){throw(X(e,B)||m.resolve()).catch(function(){}),B})})}return w(i,t),i}var ur={_driver:\"asyncStorage\",_initStorage:fe,_support:K(),iterate:ue,getItem:ie,setItem:tr,removeItem:nr,clear:or,length:ir,key:ar,keys:fr,dropInstance:sr};function cr(){return typeof openDatabase==\"function\"}var te=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",lr=\"~~local_forage_type~\",Be=/^~~local_forage_type~([^~]+)~/,ve=\"__lfsc__:\",ge=ve.length,be=\"arbf\",_e=\"blob\",Ne=\"si08\",xe=\"ui08\",Oe=\"uic8\",Ce=\"si16\",Le=\"si32\",Pe=\"ur16\",Me=\"ui32\",Fe=\"fl32\",Ue=\"fl64\",We=ge+be.length,ze=Object.prototype.toString;function Ye(e){var t=e.length*.75,r=e.length,o,i=0,n,f,s,c;e[e.length-1]===\"=\"&&(t--,e[e.length-2]===\"=\"&&t--);var l=new ArrayBuffer(t),d=new Uint8Array(l);for(o=0;o<r;o+=4)n=te.indexOf(e[o]),f=te.indexOf(e[o+1]),s=te.indexOf(e[o+2]),c=te.indexOf(e[o+3]),d[i++]=n<<2|f>>4,d[i++]=(f&15)<<4|s>>2,d[i++]=(s&3)<<6|c&63;return l}function we(e){var t=new Uint8Array(e),r=\"\",o;for(o=0;o<t.length;o+=3)r+=te[t[o]>>2],r+=te[(t[o]&3)<<4|t[o+1]>>4],r+=te[(t[o+1]&15)<<2|t[o+2]>>6],r+=te[t[o+2]&63];return t.length%3===2?r=r.substring(0,r.length-1)+\"=\":t.length%3===1&&(r=r.substring(0,r.length-2)+\"==\"),r}function dr(e,t){var r=\"\";if(e&&(r=ze.call(e)),e&&(r===\"[object ArrayBuffer]\"||e.buffer&&ze.call(e.buffer)===\"[object ArrayBuffer]\")){var o,i=ve;e instanceof ArrayBuffer?(o=e,i+=be):(o=e.buffer,r===\"[object Int8Array]\"?i+=Ne:r===\"[object Uint8Array]\"?i+=xe:r===\"[object Uint8ClampedArray]\"?i+=Oe:r===\"[object Int16Array]\"?i+=Ce:r===\"[object Uint16Array]\"?i+=Pe:r===\"[object Int32Array]\"?i+=Le:r===\"[object Uint32Array]\"?i+=Me:r===\"[object Float32Array]\"?i+=Fe:r===\"[object Float64Array]\"?i+=Ue:t(new Error(\"Failed to get type for BinaryArray\"))),t(i+we(o))}else if(r===\"[object Blob]\"){var n=new FileReader;n.onload=function(){var f=lr+e.type+\"~\"+we(this.result);t(ve+_e+f)},n.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(f){console.error(\"Couldn't convert value into a JSON string: \",e),t(null,f)}}function vr(e){if(e.substring(0,ge)!==ve)return JSON.parse(e);var t=e.substring(We),r=e.substring(ge,We),o;if(r===_e&&Be.test(t)){var i=t.match(Be);o=i[1],t=t.substring(i[0].length)}var n=Ye(t);switch(r){case be:return n;case _e:return J([n],{type:o});case Ne:return new Int8Array(n);case xe:return new Uint8Array(n);case Oe:return new Uint8ClampedArray(n);case Ce:return new Int16Array(n);case Pe:return new Uint16Array(n);case Le:return new Int32Array(n);case Me:return new Uint32Array(n);case Fe:return new Float32Array(n);case Ue:return new Float64Array(n);default:throw new Error(\"Unkown type: \"+r)}}var Ie={serialize:dr,deserialize:vr,stringToBuffer:Ye,bufferToString:we};function Ke(e,t,r,o){e.executeSql(\"CREATE TABLE IF NOT EXISTS \"+t.storeName+\" (id INTEGER PRIMARY KEY, key unique, value)\",[],r,o)}function hr(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=typeof e[o]!=\"string\"?e[o].toString():e[o];var i=new m(function(n,f){try{r.db=openDatabase(r.name,String(r.version),r.description,r.size)}catch(s){return f(s)}r.db.transaction(function(s){Ke(s,r,function(){t._dbInfo=r,n()},function(c,l){f(l)})},f)});return r.serializer=Ie,i}function ne(e,t,r,o,i,n){e.executeSql(r,o,i,function(f,s){s.code===s.SYNTAX_ERR?f.executeSql(\"SELECT name FROM sqlite_master WHERE type='table' AND name = ?\",[t.storeName],function(c,l){l.rows.length?n(c,s):Ke(c,t,function(){c.executeSql(r,o,i,n)},n)},n):n(f,s)},n)}function mr(e,t){var r=this;e=F(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(s){ne(s,f,\"SELECT * FROM \"+f.storeName+\" WHERE key = ? LIMIT 1\",[e],function(c,l){var d=l.rows.length?l.rows.item(0).value:null;d&&(d=f.serializer.deserialize(d)),i(d)},function(c,l){n(l)})})}).catch(n)});return w(o,t),o}function yr(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(s){ne(s,f,\"SELECT * FROM \"+f.storeName,[],function(c,l){for(var d=l.rows,p=d.length,S=0;S<p;S++){var B=d.item(S),x=B.value;if(x&&(x=f.serializer.deserialize(x)),x=e(x,B.key,S+1),x!==void 0){i(x);return}}i()},function(c,l){n(l)})})}).catch(n)});return w(o,t),o}function He(e,t,r,o){var i=this;e=F(e);var n=new m(function(f,s){i.ready().then(function(){t===void 0&&(t=null);var c=t,l=i._dbInfo;l.serializer.serialize(t,function(d,p){p?s(p):l.db.transaction(function(S){ne(S,l,\"INSERT OR REPLACE INTO \"+l.storeName+\" (key, value) VALUES (?, ?)\",[e,d],function(){f(c)},function(B,x){s(x)})},function(S){if(S.code===S.QUOTA_ERR){if(o>0){f(He.apply(i,[e,c,r,o-1]));return}s(S)}})})}).catch(s)});return w(n,r),n}function pr(e,t,r){return He.apply(this,[e,t,r,1])}function gr(e,t){var r=this;e=F(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(s){ne(s,f,\"DELETE FROM \"+f.storeName+\" WHERE key = ?\",[e],function(){i()},function(c,l){n(l)})})}).catch(n)});return w(o,t),o}function br(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,\"DELETE FROM \"+n.storeName,[],function(){o()},function(s,c){i(c)})})}).catch(i)});return w(r,e),r}function _r(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,\"SELECT COUNT(key) as c FROM \"+n.storeName,[],function(s,c){var l=c.rows.item(0).c;o(l)},function(s,c){i(c)})})}).catch(i)});return w(r,e),r}function wr(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(s){ne(s,f,\"SELECT key FROM \"+f.storeName+\" WHERE id = ? LIMIT 1\",[e+1],function(c,l){var d=l.rows.length?l.rows.item(0).key:null;i(d)},function(c,l){n(l)})})}).catch(n)});return w(o,t),o}function Ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,\"SELECT key FROM \"+n.storeName,[],function(s,c){for(var l=[],d=0;d<c.rows.length;d++)l.push(c.rows.item(d).key);o(l)},function(s,c){i(c)})})}).catch(i)});return w(r,e),r}function Er(e){return new m(function(t,r){e.transaction(function(o){o.executeSql(\"SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'\",[],function(i,n){for(var f=[],s=0;s<n.rows.length;s++)f.push(n.rows.item(s).name);t({db:e,storeNames:f})},function(i,n){r(n)})},function(o){r(o)})})}function Sr(e,t){t=$.apply(this,arguments);var r=this.config();e=typeof e!=\"function\"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;return e.name?i=new m(function(n){var f;e.name===r.name?f=o._dbInfo.db:f=openDatabase(e.name,\"\",\"\",0),e.storeName?n({db:f,storeNames:[e.storeName]}):n(Er(f))}).then(function(n){return new m(function(f,s){n.db.transaction(function(c){function l(B){return new m(function(x,Y){c.executeSql(\"DROP TABLE IF EXISTS \"+B,[],function(){x()},function(U,q){Y(q)})})}for(var d=[],p=0,S=n.storeNames.length;p<S;p++)d.push(l(n.storeNames[p]));m.all(d).then(function(){f()}).catch(function(B){s(B)})},function(c){s(c)})})}):i=m.reject(\"Invalid arguments\"),w(i,t),i}var Ar={_driver:\"webSQLStorage\",_initStorage:hr,_support:cr(),iterate:yr,getItem:mr,setItem:pr,removeItem:gr,clear:br,length:_r,key:wr,keys:Ir,dropInstance:Sr};function Rr(){try{return typeof localStorage<\"u\"&&\"setItem\"in localStorage&&!!localStorage.setItem}catch{return!1}}function Ve(e,t){var r=e.name+\"/\";return e.storeName!==t.storeName&&(r+=e.storeName+\"/\"),r}function Dr(){var e=\"_localforage_support_test\";try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch{return!0}}function Tr(){return!Dr()||localStorage.length>0}function Br(e){var t=this,r={};if(e)for(var o in e)r[o]=e[o];return r.keyPrefix=Ve(e,t._defaultConfig),Tr()?(t._dbInfo=r,r.serializer=Ie,m.resolve()):m.reject()}function Nr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo.keyPrefix,i=localStorage.length-1;i>=0;i--){var n=localStorage.key(i);n.indexOf(o)===0&&localStorage.removeItem(n)}});return w(r,e),r}function xr(e,t){var r=this;e=F(e);var o=r.ready().then(function(){var i=r._dbInfo,n=localStorage.getItem(i.keyPrefix+e);return n&&(n=i.serializer.deserialize(n)),n});return w(o,t),o}function Or(e,t){var r=this,o=r.ready().then(function(){for(var i=r._dbInfo,n=i.keyPrefix,f=n.length,s=localStorage.length,c=1,l=0;l<s;l++){var d=localStorage.key(l);if(d.indexOf(n)===0){var p=localStorage.getItem(d);if(p&&(p=i.serializer.deserialize(p)),p=e(p,d.substring(f),c++),p!==void 0)return p}}});return w(o,t),o}function Cr(e,t){var r=this,o=r.ready().then(function(){var i=r._dbInfo,n;try{n=localStorage.key(e)}catch{n=null}return n&&(n=n.substring(i.keyPrefix.length)),n});return w(o,t),o}function Lr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo,i=localStorage.length,n=[],f=0;f<i;f++){var s=localStorage.key(f);s.indexOf(o.keyPrefix)===0&&n.push(s.substring(o.keyPrefix.length))}return n});return w(r,e),r}function Pr(e){var t=this,r=t.keys().then(function(o){return o.length});return w(r,e),r}function Mr(e,t){var r=this;e=F(e);var o=r.ready().then(function(){var i=r._dbInfo;localStorage.removeItem(i.keyPrefix+e)});return w(o,t),o}function Fr(e,t,r){var o=this;e=F(e);var i=o.ready().then(function(){t===void 0&&(t=null);var n=t;return new m(function(f,s){var c=o._dbInfo;c.serializer.serialize(t,function(l,d){if(d)s(d);else try{localStorage.setItem(c.keyPrefix+e,l),f(n)}catch(p){(p.name===\"QuotaExceededError\"||p.name===\"NS_ERROR_DOM_QUOTA_REACHED\")&&s(p),s(p)}})})});return w(i,r),i}function Ur(e,t){if(t=$.apply(this,arguments),e=typeof e!=\"function\"&&e||{},!e.name){var r=this.config();e.name=e.name||r.name,e.storeName=e.storeName||r.storeName}var o=this,i;return e.name?i=new m(function(n){e.storeName?n(Ve(e,o._defaultConfig)):n(e.name+\"/\")}).then(function(n){for(var f=localStorage.length-1;f>=0;f--){var s=localStorage.key(f);s.indexOf(n)===0&&localStorage.removeItem(s)}}):i=m.reject(\"Invalid arguments\"),w(i,t),i}var Wr={_driver:\"localStorageWrapper\",_initStorage:Br,_support:Rr(),iterate:Or,getItem:xr,setItem:Fr,removeItem:Mr,clear:Nr,length:Pr,key:Cr,keys:Lr,dropInstance:Ur},zr=function(t,r){return t===r||typeof t==\"number\"&&typeof r==\"number\"&&isNaN(t)&&isNaN(r)},Yr=function(t,r){for(var o=t.length,i=0;i<o;){if(zr(t[i],r))return!0;i++}return!1},Ge=Array.isArray||function(e){return Object.prototype.toString.call(e)===\"[object Array]\"},ce={},je={},se={INDEXEDDB:ur,WEBSQL:Ar,LOCALSTORAGE:Wr},Kr=[se.INDEXEDDB._driver,se.WEBSQL._driver,se.LOCALSTORAGE._driver],he=[\"dropInstance\"],Ee=[\"clear\",\"getItem\",\"iterate\",\"key\",\"keys\",\"length\",\"removeItem\",\"setItem\"].concat(he),Hr={description:\"\",driver:Kr.slice(),name:\"localforage\",size:4980736,storeName:\"keyvaluepairs\",version:1};function Vr(e,t){e[t]=function(){var r=arguments;return e.ready().then(function(){return e[t].apply(e,r)})}}function Se(){for(var e=1;e<arguments.length;e++){var t=arguments[e];if(t)for(var r in t)t.hasOwnProperty(r)&&(Ge(t[r])?arguments[0][r]=t[r].slice():arguments[0][r]=t[r])}return arguments[0]}var Gr=function(){function e(t){V(this,e);for(var r in se)if(se.hasOwnProperty(r)){var o=se[r],i=o._driver;this[r]=i,ce[i]||this.defineDriver(o)}this._defaultConfig=Se({},Hr),this._config=Se({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return e.prototype.config=function(r){if((typeof r>\"u\"?\"undefined\":L(r))===\"object\"){if(this._ready)return new Error(\"Can't call config() after localforage has been used.\");for(var o in r){if(o===\"storeName\"&&(r[o]=r[o].replace(/\\W/g,\"_\")),o===\"version\"&&typeof r[o]!=\"number\")return new Error(\"Database version must be a number.\");this._config[o]=r[o]}return\"driver\"in r&&r.driver?this.setDriver(this._config.driver):!0}else return typeof r==\"string\"?this._config[r]:this._config},e.prototype.defineDriver=function(r,o,i){var n=new m(function(f,s){try{var c=r._driver,l=new Error(\"Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver\");if(!r._driver){s(l);return}for(var d=Ee.concat(\"_initStorage\"),p=0,S=d.length;p<S;p++){var B=d[p],x=!Yr(he,B);if((x||r[B])&&typeof r[B]!=\"function\"){s(l);return}}var Y=function(){for(var le=function(Qr){return function(){var Jr=new Error(\"Method \"+Qr+\" is not implemented by the current driver\"),Xe=m.reject(Jr);return w(Xe,arguments[arguments.length-1]),Xe}},Ae=0,Xr=he.length;Ae<Xr;Ae++){var Re=he[Ae];r[Re]||(r[Re]=le(Re))}};Y();var U=function(le){ce[c]&&console.info(\"Redefining LocalForage driver: \"+c),ce[c]=r,je[c]=le,f()};\"_support\"in r?r._support&&typeof r._support==\"function\"?r._support().then(U,s):U(!!r._support):U(!0)}catch(q){s(q)}});return T(n,o,i),n},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(r,o,i){var n=ce[r]?m.resolve(ce[r]):m.reject(new Error(\"Driver not found.\"));return T(n,o,i),n},e.prototype.getSerializer=function(r){var o=m.resolve(Ie);return T(o,r),o},e.prototype.ready=function(r){var o=this,i=o._driverSet.then(function(){return o._ready===null&&(o._ready=o._initDriver()),o._ready});return T(i,r,r),i},e.prototype.setDriver=function(r,o,i){var n=this;Ge(r)||(r=[r]);var f=this._getSupportedDrivers(r);function s(){n._config.driver=n.driver()}function c(p){return n._extend(p),s(),n._ready=n._initStorage(n._config),n._ready}function l(p){return function(){var S=0;function B(){for(;S<p.length;){var x=p[S];return S++,n._dbInfo=null,n._ready=null,n.getDriver(x).then(c).catch(B)}s();var Y=new Error(\"No available storage method found.\");return n._driverSet=m.reject(Y),n._driverSet}return B()}}var d=this._driverSet!==null?this._driverSet.catch(function(){return m.resolve()}):m.resolve();return this._driverSet=d.then(function(){var p=f[0];return n._dbInfo=null,n._ready=null,n.getDriver(p).then(function(S){n._driver=S._driver,s(),n._wrapLibraryMethodsWithReady(),n._initDriver=l(f)})}).catch(function(){s();var p=new Error(\"No available storage method found.\");return n._driverSet=m.reject(p),n._driverSet}),T(this._driverSet,o,i),this._driverSet},e.prototype.supports=function(r){return!!je[r]},e.prototype._extend=function(r){Se(this,r)},e.prototype._getSupportedDrivers=function(r){for(var o=[],i=0,n=r.length;i<n;i++){var f=r[i];this.supports(f)&&o.push(f)}return o},e.prototype._wrapLibraryMethodsWithReady=function(){for(var r=0,o=Ee.length;r<o;r++)Vr(this,Ee[r])},e.prototype.createInstance=function(r){return new e(r)},e}(),jr=new Gr;W.exports=jr},{3:3}]},{},[4])(4)})});var er=Je((me,ke)=>{\"use strict\";(function(_,y){typeof me==\"object\"&&typeof ke<\"u\"?y(me):typeof define==\"function\"&&define.amd?define(\"localforage-driver-memory\",[\"exports\"],y):y(_.LocalforageDriverMemory={})})(typeof self<\"u\"?self:me,function(_){\"use strict\";var y=\"localforage-driver-memory\";function O(a){var u=typeof Symbol==\"function\"&&a[Symbol.iterator],v=0;return u?u.call(a):{next:function(){return a&&v>=a.length&&(a=void 0),{value:a&&a[v++],done:!a}}}}function C(a,u){a=a||[],u=u||{};try{return new Blob(a,u)}catch(I){if(I.name!==\"TypeError\")throw I;for(var v=typeof BlobBuilder<\"u\"?BlobBuilder:typeof MSBlobBuilder<\"u\"?MSBlobBuilder:typeof MozBlobBuilder<\"u\"?MozBlobBuilder:WebKitBlobBuilder,g=new v,b=0;b<a.length;b+=1)g.append(a[b]);return g.getBlob(u.type)}}var W=/^~~local_forage_type~([^~]+)~/,Z=9,L=Z+4,V=Object.prototype.toString;function D(a){var u=a.length*.75,v=a.length;a[a.length-1]===\"=\"&&(u--,a[a.length-2]===\"=\"&&u--);for(var g=new ArrayBuffer(u),b=new Uint8Array(g),I=0,R=0;I<v;I+=4){var G=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\".indexOf(a[I]),fe=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\".indexOf(a[I+1]),ie=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\".indexOf(a[I+2]),ue=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\".indexOf(a[I+3]);b[R++]=G<<2|fe>>4,b[R++]=(fe&15)<<4|ie>>2,b[R++]=(ie&3)<<6|ue&63}return g}function z(a){for(var u=new Uint8Array(a),v=\"\",g=0;g<u.length;g+=3)v+=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\"[u[g]>>2],v+=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\"[(u[g]&3)<<4|u[g+1]>>4],v+=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\"[(u[g+1]&15)<<2|u[g+2]>>6],v+=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\"[u[g+2]&63];return u.length%3===2?v=v.substring(0,v.length-1)+\"=\":u.length%3===1&&(v=v.substring(0,v.length-2)+\"==\"),v}function K(a,u){var v=\"\";if(a&&(v=V.call(a)),a&&(v===\"[object ArrayBuffer]\"||a.buffer&&V.call(a.buffer)===\"[object ArrayBuffer]\")){var g=void 0,b=\"__lfsc__:\";a instanceof ArrayBuffer?(g=a,b+=\"arbf\"):(g=a.buffer,v===\"[object Int8Array]\"?b+=\"si08\":v===\"[object Uint8Array]\"?b+=\"ui08\":v===\"[object Uint8ClampedArray]\"?b+=\"uic8\":v===\"[object Int16Array]\"?b+=\"si16\":v===\"[object Uint16Array]\"?b+=\"ur16\":v===\"[object Int32Array]\"?b+=\"si32\":v===\"[object Uint32Array]\"?b+=\"ui32\":v===\"[object Float32Array]\"?b+=\"fl32\":v===\"[object Float64Array]\"?b+=\"fl64\":u(new Error(\"Failed to get type for BinaryArray\"))),u(b+z(g))}else if(v===\"[object Blob]\"){var I=new FileReader;I.onload=function(){var R=\"~~local_forage_type~\"+a.type+\"~\"+z(this.result);u(\"__lfsc__:blob\"+R)},I.readAsArrayBuffer(a)}else try{u(JSON.stringify(a))}catch(R){console.error(\"Couldn't convert value into a JSON string: \",a),u(null,R)}}function J(a){if(a.substring(0,Z)!==\"__lfsc__:\")return JSON.parse(a);var u=a.substring(L),v=a.substring(Z,L),g;if(v===\"blob\"&&W.test(u)){var b=u.match(W);g=b[1],u=u.substring(b[0].length)}var I=D(u);switch(v){case\"arbf\":return I;case\"blob\":return C([I],{type:g});case\"si08\":return new Int8Array(I);case\"ui08\":return new Uint8Array(I);case\"uic8\":return new Uint8ClampedArray(I);case\"si16\":return new Int16Array(I);case\"ur16\":return new Uint16Array(I);case\"si32\":return new Int32Array(I);case\"ui32\":return new Uint32Array(I);case\"fl32\":return new Float32Array(I);case\"fl64\":return new Float64Array(I);default:throw new Error(\"Unkown type: \"+v)}}function m(a){var u,v;if(a===null||typeof a!=\"object\"||\"isActiveClone\"in a)return a;var g=a instanceof Date?new Date(a):a.constructor();try{for(var b=O(Object.keys(a)),I=b.next();!I.done;I=b.next()){var R=I.value;Object.prototype.hasOwnProperty.call(a,R)&&(a.isActiveClone=null,g[R]=m(a[R]),delete a.isActiveClone)}}catch(G){u={error:G}}finally{try{I&&!I.done&&(v=b.return)&&v.call(b)}finally{if(u)throw u.error}}return g}function w(a,u){return(a.name||u.name)+\"/\"+(a.storeName||u.storeName)+\"/\"}function T(a,u){u&&a.then(function(v){u(null,v)},function(v){u(v)})}function F(){for(var a=[],u=0;u<arguments.length;u++)a[u]=arguments[u];if(arguments.length&&typeof arguments[arguments.length-1]==\"function\")return arguments[arguments.length-1]}function $(a,u){var v=this;if(u=F.apply(this,arguments),a=typeof a!=\"function\"&&a||{},!a.name){var g=this.config();a.name=a.name||g.name,a.storeName=a.storeName||g.storeName}var b;return a.name?b=new Promise(function(I){a.storeName?I(w(a,v._defaultConfig)):I(a.name+\"/\")}):b=Promise.reject(\"Invalid arguments\"),{promise:b,callback:u}}function P(a){return typeof a!=\"string\"&&(console.warn(a+\" used as a key, but it is not a string.\"),a=String(a)),a}var k={bufferToString:z,deserialize:J,serialize:K,stringToBuffer:D},M={},ae=function(){function a(u){this.kp=u,this.data={}}return a.resolve=function(u){return M[u]||(M[u]=new a(u)),M[u]},a.prototype.clear=function(){this.data={}},a.prototype.drop=function(){this.clear(),delete M[this.kp]},a.prototype.get=function(u){return this.data[u]},a.prototype.key=function(u){return this.keys()[u]},a.prototype.keys=function(){return Object.keys(this.data)},a.prototype.rm=function(u){delete this.data[u]},a.prototype.set=function(u,v){this.data[u]=v},a}();function re(a){var u=a?m(a):{},v=w(u,this._defaultConfig),g=ae.resolve(v);return this._dbInfo=u,this._dbInfo.serializer=k,this._dbInfo.keyPrefix=v,this._dbInfo.mStore=g,Promise.resolve()}function h(a){var u=this,v=this.ready().then(function(){u._dbInfo.mStore.clear()});return T(v,a),v}function A(a,u){var v=$.apply(this,arguments),g=v.promise,b=v.callback,I=g.then(function(R){ae.resolve(R).drop()});return T(I,b),g}function E(a,u){var v=this;a=P(a);var g=this.ready().then(function(){var b=v._dbInfo.mStore.get(a);return b==null?null:v._dbInfo.serializer.deserialize(b)});return T(g,u),g}function N(a,u){var v=this,g=this.ready().then(function(){for(var b=v._dbInfo.mStore,I=b.keys(),R=0;R<I.length;R++){var G=b.get(I[R]);if(G&&(G=v._dbInfo.serializer.deserialize(G)),G=a(G,I[R],R+1),G!==void 0)return G}});return T(g,u),g}function H(a,u){var v=this,g=this.ready().then(function(){var b;try{b=v._dbInfo.mStore.key(a),b===void 0&&(b=null)}catch{b=null}return b});return T(g,u),g}function j(a){var u=this,v=this.ready().then(function(){return u._dbInfo.mStore.keys()});return T(v,a),v}function X(a){var u=this.keys().then(function(v){return v.length});return T(u,a),u}function Q(a,u){var v=this;a=P(a);var g=this.ready().then(function(){v._dbInfo.mStore.rm(a)});return T(g,u),g}function ee(a,u,v){var g=this;a=P(a);var b=this.ready().then(function(){u===void 0&&(u=null);var I=u;return new Promise(function(R,G){g._dbInfo.serializer.serialize(u,function(fe,ie){if(ie)G(ie);else try{g._dbInfo.mStore.set(a,fe),R(I)}catch(ue){G(ue)}})})});return T(b,v),b}var oe=!0;_._support=oe,_._driver=y,_._initStorage=re,_.clear=h,_.dropInstance=A,_.getItem=E,_.iterate=N,_.key=H,_.keys=j,_.length=X,_.removeItem=Q,_.setItem=ee,Object.defineProperty(_,\"__esModule\",{value:!0})})});var pe=$e(qe()),Te=$e(er());import{SDKBase as ut,createSDK as ct}from\"@magic-sdk/provider\";import{createDuplicateIframeWarning as tt,createModalNotReadyError as nt,createURL as rr,ViewController as ot}from\"@magic-sdk/provider\";import{MagicIncomingWindowMessage as it}from\"@magic-sdk/types\";var at={display:\"none\",position:\"fixed\",top:\"0\",right:\"0\",width:\"100%\",height:\"100%\",borderRadius:\"0\",border:\"none\",opacity:\"0\",zIndex:\"-1\"};function ft(_){for(let[y,O]of Object.entries(at))_.style[y]=O}function st(_){return!![].slice.call(document.querySelectorAll(\".magic-iframe\")).find(O=>O.src.includes(_))}var ye=class extends ot{activeElement=null;iframe;relayerSrc=rr(`/send?params=${encodeURIComponent(this.parameters)}`,this.endpoint).href;init(){this.test=\"hello\",this.iframe=new Promise(y=>{let O=()=>{if(st(encodeURIComponent(this.parameters)))tt().log();else{let C=document.createElement(\"iframe\");C.classList.add(\"magic-iframe\"),C.dataset.magicIframeLabel=rr(this.endpoint).host,C.title=\"Secure Modal\",C.src=this.relayerSrc,C.allow=\"clipboard-read; clipboard-write\",ft(C),document.body.appendChild(C),y(C)}};[\"loaded\",\"interactive\",\"complete\"].includes(document.readyState)?O():window.addEventListener(\"load\",O,!1)}),this.iframe.then(y=>{y instanceof HTMLIFrameElement&&y.addEventListener(\"load\",async()=>{this.heartbeatDebounce()})}),window.addEventListener(\"message\",y=>{if(y.origin===this.endpoint&&y.data.msgType&&(y.data.msgType.includes(it.MAGIC_PONG)&&(this.lastPongTime=Date.now()),y.data&&this.messageHandlers.size)){y.data.response=y.data.response??{},this.stopHeartBeat();for(let O of this.messageHandlers.values())O(y)}}),window.addEventListener(\"beforeunload\",()=>{this.stopHeartBeat()})}async showOverlay(){let y=await this.iframe;y.style.display=\"block\",y.style.zIndex=\"2147483647\",y.style.opacity=\"1\",this.activeElement=document.activeElement,y.focus()}async hideOverlay(){let y=await this.iframe;y.style.display=\"none\",y.style.zIndex=\"-1\",y.style.opacity=\"0\",this.activeElement?.focus&&this.activeElement.focus(),this.activeElement=null}async _post(y){let O=await this.iframe;if(O&&O.contentWindow)O.contentWindow.postMessage(y,this.endpoint);else throw nt()}async checkRelayerExistsInDOM(){let y=await this.iframe;return!y||!y.contentWindow?!1:!![].slice.call(document.querySelectorAll(\".magic-iframe\")).find(C=>C.src.includes(encodeURIComponent(this.parameters)))}async reloadRelayer(){let y=await this.iframe;if(this.stopHeartBeat(),!y){this.init(),console.warn(\"Magic SDK: Modal lost, re-initiating\");return}if(!y.contentWindow){document.body.appendChild(y),console.warn(\"Magic SDK: Modal did not append in the iframe, re-initiating\");return}y&&(y.src=this.relayerSrc)}};export*from\"@magic-sdk/commons\";var wt=ct(ut,{platform:\"web\",sdkName:\"magic-sdk\",version:\"30.0.0\",defaultEndpoint:\"https://auth.magic.link/\",ViewController:ye,configureStorage:async()=>{let _=pe.default.createInstance({name:\"MagicAuthLocalStorageDB\",storeName:\"MagicAuthLocalStorage\"});return await _.defineDriver(Te),await _.setDriver([pe.default.INDEXEDDB,pe.default.LOCALSTORAGE,Te._driver]),_}});export{wt as Magic};\n//# sourceMappingURL=index.mjs.map\n","import { OAuthExtension as w } from \"@magic-ext/oauth2\";\nimport { Magic as d } from \"magic-sdk\";\nclass i {\n constructor(t, n = this) {\n this.endpoint = t, this.api = n;\n }\n async stdPGET(t, n, e, o = {}) {\n const r = await fetch(this.endpoint + n, {\n method: t,\n headers: {\n \"Content-Type\": \"application/json\",\n // Include credentials (cookies) in the request\n Accept: \"application/json\",\n ...o\n },\n body: e ? JSON.stringify(e) : null,\n credentials: \"include\"\n // This ensures cookies are sent with the request\n });\n return this.withResp(r);\n }\n async withResp(t) {\n if (!t.ok) {\n const n = await t.json().catch(() => ({})), e = new Error(\"Network response was not ok\");\n throw Object.assign(e, { response: t, data: n }), e;\n }\n return t.json().then((n) => ({ data: n, response: t }));\n }\n async post(t, n = {}) {\n return this.stdPGET(\"POST\", t, n);\n }\n async get(t, n = {}) {\n return this.stdPGET(\"GET\", t, void 0, n);\n }\n async loginWithMagicDid(t) {\n const { data: n } = await this.api.post(\"/v1/auth/login/did\", { did: t });\n return n;\n }\n async loginWithWeb3WalletSignature(t) {\n const { data: n } = await this.api.post(\"/v1/auth/login/signature\", t);\n return n;\n }\n async loginExtWithWeb3WalletSignature(t) {\n const { data: n } = await this.api.post(\"/v1/auth/login/ext-signature\", t);\n return n;\n }\n // Logout of the backend with access token. Assumes user is currently logged in and has a cookie with the access token\n async logout(t) {\n await this.api.post(\"/v1/auth/logout\", { accessToken: t }), await this.writePlayerEvent(\"player_logged_out\");\n }\n // Use the cookie stored in the browser to get the user and save user model in state and local storage\n // This assumes that the user is logged to backend in and has a cookie jwt\n async getLoggedInUser(t) {\n const { data: n } = await this.api.get(\"/v1/auth/me\", {\n Authorization: `Bearer ${t}`\n });\n return n;\n }\n // async loginPlayFabPlayer() {}\n /*async loginPlayFabPlayer() {\n try {\n // Get the user's playfab id from taunt api\n let id = null;\n if (!this.user && !this.user?.id) {\n id = this.getPlayfabAnonId()\n if (!id) {\n const { data: playFabResponse } = await this.api.get('/v1/auth/playfab', {})\n id = playFabResponse.playFabId\n this.setAnonPlayfabUserId(playFabResponse.playFabId);\n }\n } else {\n const { data: playFabResponse } = await this.api.get('/v1/auth/playfab', {})\n id = playFabResponse.playFabId\n }\n // Login with playfab via the unique id from taunt api\n const { data: playFabLoginResults } = await Axios.post(loginEndpoint, {\n CustomId: id,\n CreateAccount: true,\n titleId: playFabTitleId,\n })\n const playFabSession = JSON.stringify(playFabLoginResults.data)\n this.setPlayFabSession(playFabSession)\n }\n catch (error) {\n const err = error as AxiosError\n if (err?.response) {\n console.log(err.response.status, err.response.data)\n }\n else {\n console.log(error)\n }\n }\n }*/\n // async getCToken() {\n // try {\n // const url = \"v1/claimr/token\"\n // const { data } = await this.api.get<{ data: { token: string } }>(`${url}`)\n // this.claimrToken = data.data.token\n // this.setClaimrToken(this.claimrToken)\n // } catch (e) {\n // console.error(e)\n // }\n // }\n // setLastWalletConnection(lastWalletConnection: string) {\n // localStorage.setItem(\"lastWalletConnection\", lastWalletConnection)\n // }\n // setRefId(ref = \"\") {\n // this.refId = ref\n // }\n // clearLocalAuthStorage() {\n // localStorage.removeItem(\"user\")\n // localStorage.removeItem(\"refreshToken\")\n // localStorage.removeItem(\"playFabSession\")\n // this.user = null\n // }\n // setAccessToken(accessToken: string) {\n // localStorage.setItem(\"accessToken\", accessToken)\n // }\n // setRefreshToken(refreshToken: string) {\n // localStorage.setItem(\"refreshToken\", refreshToken)\n // }\n // setIsFirsTimeLogin(isFirstTimeLogin: string) {\n // localStorage.setItem(\"isFirstTimeLogin\", isFirstTimeLogin)\n // }\n // setPlayFabSession(playFabSession: string) {\n // localStorage.setItem(\"playFabSession\", playFabSession)\n // }\n // setAnonPlayfabUserId(id: string) {\n // localStorage.setItem(\"playfabAnonId\", id)\n // }\n // setClaimrToken(token: string) {\n // localStorage.setItem(\"ctoken\", token)\n // }\n // getAccessToken() {\n // return localStorage.getItem(\"accessToken\")\n // }\n // getRefreshToken() {\n // return localStorage.getItem(\"refreshToken\")\n // }\n // getPlayfabAnonId() {\n // return localStorage.getItem(\"playfabAnonId\")\n // }\n // Write a playfab event. retryfIfLoginNeeded should not be set by caller. It's used for stopping recursive calls when login is needed.\n // 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\n // one time. Then we'll retry the event.\n async writePlayerEvent(t, n = null, e = !0) {\n return console.log(\"writePlayerEvent\", {\n eventName: t,\n eventData: n,\n retryIfLoginNeeded: e\n }), Promise.resolve();\n }\n}\nconst p = {\n rpcUrl: \"https://polygon-rpc.com\",\n // your ethereum, polygon, or optimism mainnet/testnet rpc URL\n chainId: 137\n}, u = (a) => new d(a, {\n network: p,\n extensions: [new w()]\n});\nfunction y(a, t) {\n return u(a).auth.loginWithEmailOTP({ email: t });\n}\nfunction m(a) {\n return u(a).oauth2.loginWithPopup({\n provider: \"telegram\"\n });\n}\nasync function T(a, t) {\n const n = new i(a);\n try {\n let e = await m(t);\n const o = e;\n if (o.error)\n throw new Error(`No ID token returned ${o.error}`);\n return e = e, console.log(\"Magic telegram login\", { result: e }), n.loginWithMagicDid(e.magic.idToken);\n } catch (e) {\n throw console.error(\"Magic login error:\", e), e;\n }\n}\nasync function P(a, t, n) {\n const e = new i(a);\n try {\n const o = await y(t, n);\n if (!o) throw new Error(\"No DID returned\");\n return console.log(\"Magic email OTP login\", { did: o }), e.loginWithMagicDid(o);\n } catch (o) {\n throw console.error(\"Magic login error:\", o), o;\n }\n}\nasync function O(a, t) {\n return new i(a).loginWithMagicDid(t);\n}\nasync function f(a, t) {\n if (t = t || window.ethereum, !t) throw new Error(\"MetaMask provider not found\");\n const n = await t.request({\n method: \"eth_requestAccounts\"\n });\n if (!n.length) throw new Error(\"No accounts returned\");\n console.log(\"MetaMask\", { accounts: n });\n const e = n[0], o = `${a}/v1/auth`, r = new Uint32Array(3), c = crypto.getRandomValues(r).toString(), h = await fetch(`${o}/nonce/login`, {\n method: \"POST\",\n body: JSON.stringify({ walletAddress: e, clientNonce: c }),\n headers: { \"Content-Type\": \"application/json\" }\n }).then((l) => l.text()), g = `Sign this message with your wallet to connect to Taunt Battleworld ::: ${JSON.stringify({ clientNonce: c, serverNonce: h })}`;\n let s;\n try {\n s = await t.request({\n method: \"personal_sign\",\n params: [g, e]\n });\n } catch {\n throw new Error(\"User denied message signature\");\n }\n if (!s) throw new Error(\"No signature returned\");\n return { walletAddress: e, message: g, signature: s };\n}\nasync function N(a, t) {\n const n = new i(a), { walletAddress: e, message: o, signature: r } = await f(\n a,\n t\n );\n return n.loginWithWeb3WalletSignature({\n walletAddress: e,\n message: o,\n signature: r\n });\n}\nexport {\n i as TauntApi,\n y as emailOTPWithMagic,\n O as tauntMagicDidLogin,\n P as tauntMagicEmailOTPLogin,\n T as tauntMagicTelegramLogin,\n N as tauntMetamaskLogin,\n f as tauntSignWithMetamask,\n m as telegramWithMagic\n};\n//# sourceMappingURL=taunt-logins.js.map\n","import {\n tauntMagicEmailOTPLogin,\n tauntMagicTelegramLogin,\n tauntMetamaskLogin\n} from \"@redzone/taunt-logins\"\nimport { useCallback, useState } from \"react\"\n\nimport { TauntContext } from \"./tauntContext\"\n\nexport const TauntProvider = ({\n children,\n tauntServiceEndpoint,\n magicKey\n}: {\n children: React.ReactNode\n tauntServiceEndpoint?: string\n magicKey?: string\n}) => {\n const [deets, setDeets] = useState<{\n accessToken: string\n refreshToken: string\n }>()\n const [isLoading, setIsLoading] = useState(false)\n\n const otpMagicLogin = useCallback(\n (email: string) => {\n if (!magicKey) throw new Error(\"magicKey is required for OTP login\")\n\n setIsLoading(true)\n tauntMagicEmailOTPLogin(tauntServiceEndpoint!, magicKey, email!)\n .then(setDeets)\n .finally(() => setIsLoading(false))\n },\n [tauntServiceEndpoint, magicKey]\n )\n\n const metamaskLogin = useCallback(() => {\n setIsLoading(true)\n tauntMetamaskLogin(tauntServiceEndpoint!)\n .then(setDeets)\n .finally(() => setIsLoading(false))\n }, [tauntServiceEndpoint])\n\n const telegramLogin = useCallback(() => {\n if (!magicKey) throw new Error(\"magicKey is required for Telegram login\")\n\n setIsLoading(true)\n tauntMagicTelegramLogin(tauntServiceEndpoint!, magicKey!)\n .then(setDeets)\n .finally(() => setIsLoading(false))\n }, [tauntServiceEndpoint, magicKey])\n\n const metaLogin = useCallback(() => {\n setIsLoading(true)\n console.log(\"Meta login not yet implemented\")\n // Placeholder for Meta login\n setTimeout(() => setIsLoading(false), 1000)\n }, [])\n\n const coinbaseLogin = useCallback(() => {\n setIsLoading(true)\n console.log(\"Coinbase login not yet implemented\")\n // Placeholder for Coinbase login\n setTimeout(() => setIsLoading(false), 1000)\n }, [])\n\n const logout = useCallback(() => {\n setDeets(undefined)\n }, [])\n\n if (!tauntServiceEndpoint) {\n return <div>tauntServiceEndpoint is required</div>\n }\n\n return (\n <TauntContext.Provider\n value={{\n tauntServiceEndpoint,\n isLoading,\n loggedIn: !!deets,\n deets,\n otpMagicLogin,\n metamaskLogin,\n telegramLogin,\n metaLogin,\n coinbaseLogin,\n logout\n }}>\n {children}\n </TauntContext.Provider>\n )\n}\n"],"names":["coinbaseLogo","CoinbaseButton","openCoinbase","disabled","runCoinbase","useCallback","jsx","LoadingView","jsxs","LoginUIComplete","className","extLoading","loginProps","loggedIn","isLoading","useTaunt","LoggedInView","Fragment","LoginView","LogoutButton","logout","TauntContext","createContext","ctx","useContext","btnImage","MagicEmailInput","onEmail","otpMagicLogin","email","setEmail","useState","showError","setShowError","validEmail","useMemo","validRegex","e","metaLogo","MetaButton","openMeta","runMeta","metamaskLogo","MetaMaskButton","openMetamask","metamaskLogin","runMetamask","telegramLogo","TelegramButton","openTelegram","telegramLogin","runTelegram","providers","showEmail","showDisabled","dividerText","providerGap","showTerms","termsContent","privacyContent","onTermsClick","onPrivacyClick","ModalComponent","magicEmailProps","coinbaseProps","metamaskProps","metaProps","telegramProps","modalContent","setModalContent","showEmailInput","allSocialProviders","socialProvidersToShow","p","hasSocialProviders","handleTermsClick","handlePrivacyClick","ModalView","title","content","onClose","useEffect","handleEscape","text","lines","line","index","trimmedLine","nextLine","m","o","v","s","u","i","_","t","f","g","Z","E","c","y","l","x","A","r","R","I","N","h","T","d","O","S","n","b","C","a","F","U","k","L","w","D","G","V","H","q","W","J","Y","B","P","j","Q","X","z","Yt","Ne","Qt","Zt","er","tr","rr","nr","sr","or","Nt","us","ke","mn","ne","hn","Ct","Ee","ir","ar","$e","cr","ze","ot","dr","Ye","oe","Qe","Ze","M","ur","pr","mr","hr","Er","fr","gr","yr","Rr","vr","Tr","Ir","br","Pr","Ae","et","tt","Dr","wr","xr","Sr","Mr","kr","rt","qr","Ar","Cr","Lr","_r","Nr","$r","Or","it","Ur","nt","st","Fr","Wr","ie","ae","at","Jr","Gr","Kr","jr","ce","ct","Hr","le","lt","dt","Br","ee","Xr","ut","$","zr","de","te","pt","mt","ht","Et","ft","gt","Xn","ue","yt","Rt","vt","Yr","Qr","Le","me","Zr","Oe","tn","rn","en","pe","Tt","_e","he","bt","nn","sn","re","Pt","wt","on","It","cn","dn","an","xt","ln","St","Mt","pn","K","un","At","De","fe","$t","Lt","qe","fn","En","vn","gn","yn","Rn","Ot","Tn","ye","ge","_t","Ue","Fe","We","Je","In","Re","kt","Dt","bn","Pn","qt","Ut","Ge","Te","Ft","ve","Ie","Pe","be","we","xe","Wt","wn","Me","Ke","Se","Jt","xn","Sn","je","Mn","Gt","Kt","jt","Vt","An","Ht","Bt","$n","Ve","zt","se","Nn","Cn","Xt","On","Be","Ce","He","lr","Vr","Xe","TauntProvider","children","tauntServiceEndpoint","magicKey","deets","setDeets","setIsLoading","tauntMagicEmailOTPLogin","tauntMetamaskLogin","tauntMagicTelegramLogin","metaLogin","coinbaseLogin"],"mappings":"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","x_google_ignoreList":[10,11,12,13,14]}
|