@tatchi-xyz/sdk 0.16.0 → 0.18.0
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/core/EmailRecovery/emailRecoveryPendingStore.js +69 -0
- package/dist/cjs/core/EmailRecovery/emailRecoveryPendingStore.js.map +1 -0
- package/dist/cjs/core/EmailRecovery/index.js +32 -13
- package/dist/cjs/core/EmailRecovery/index.js.map +1 -1
- package/dist/cjs/core/IndexedDBManager/passkeyClientDB.js +35 -36
- package/dist/cjs/core/IndexedDBManager/passkeyClientDB.js.map +1 -1
- package/dist/cjs/core/NearClient.js +2 -1
- package/dist/cjs/core/NearClient.js.map +1 -1
- package/dist/cjs/core/TatchiPasskey/emailRecovery.js +557 -377
- package/dist/cjs/core/TatchiPasskey/emailRecovery.js.map +1 -1
- package/dist/cjs/core/TatchiPasskey/faucets/createAccountRelayServer.js +1 -0
- package/dist/cjs/core/TatchiPasskey/faucets/createAccountRelayServer.js.map +1 -1
- package/dist/cjs/core/TatchiPasskey/index.js +26 -0
- package/dist/cjs/core/TatchiPasskey/index.js.map +1 -1
- package/dist/cjs/core/TatchiPasskey/linkDevice.js +2 -0
- package/dist/cjs/core/TatchiPasskey/linkDevice.js.map +1 -1
- package/dist/cjs/core/TatchiPasskey/login.js +15 -4
- package/dist/cjs/core/TatchiPasskey/login.js.map +1 -1
- package/dist/cjs/core/TatchiPasskey/recoverAccount.js +1 -0
- package/dist/cjs/core/TatchiPasskey/recoverAccount.js.map +1 -1
- package/dist/cjs/core/TatchiPasskey/relay.js +23 -1
- package/dist/cjs/core/TatchiPasskey/relay.js.map +1 -1
- package/dist/cjs/core/TatchiPasskey/scanDevice.js +1 -0
- package/dist/cjs/core/TatchiPasskey/scanDevice.js.map +1 -1
- package/dist/cjs/core/WalletIframe/client/IframeTransport.js +3 -0
- package/dist/cjs/core/WalletIframe/client/IframeTransport.js.map +1 -1
- package/dist/cjs/core/WalletIframe/client/router.js +15 -2
- package/dist/cjs/core/WalletIframe/client/router.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-drawer.js +1 -1
- package/dist/cjs/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-drawer.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-modal.js +52 -52
- package/dist/cjs/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-modal.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/getDeviceNumber.js +10 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/getDeviceNumber.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/checkCanRegisterUser.js +1 -0
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/checkCanRegisterUser.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/decryptPrivateKeyWithPrf.js +1 -0
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/decryptPrivateKeyWithPrf.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/deriveNearKeypairAndEncryptFromSerialized.js +1 -0
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/deriveNearKeypairAndEncryptFromSerialized.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/exportNearKeypairUi.js +1 -0
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/exportNearKeypairUi.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/registerDevice2WithDerivedKey.js +2 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/registerDevice2WithDerivedKey.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/signDelegateAction.js +1 -0
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/signDelegateAction.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/signNep413Message.js +1 -0
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/signNep413Message.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/signTransactionsWithActions.js +1 -0
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/signTransactionsWithActions.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/validation.js +2 -0
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/handlers/validation.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/index.js +1 -0
- package/dist/cjs/core/WebAuthnManager/SignerWorkerManager/index.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/vrf.js +1 -0
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/vrf.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/webauthn.js +6 -0
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/webauthn.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/determineConfirmationConfig.js +2 -1
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/determineConfirmationConfig.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/localOnly.js +1 -0
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/localOnly.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/registration.js +1 -0
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/registration.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/transactions.js +4 -15
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/transactions.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/handlers/deriveVrfKeypairFromPrf.js +1 -0
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/handlers/deriveVrfKeypairFromPrf.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfChallenge.js +1 -0
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfChallenge.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfKeypairBootstrap.js +1 -0
- package/dist/cjs/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfKeypairBootstrap.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/WebAuthnFallbacks/index.js +17 -0
- package/dist/cjs/core/WebAuthnManager/WebAuthnFallbacks/index.js.map +1 -0
- package/dist/cjs/core/WebAuthnManager/WebAuthnFallbacks/safari-fallbacks.js +64 -54
- package/dist/cjs/core/WebAuthnManager/WebAuthnFallbacks/safari-fallbacks.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/credentialsHelpers.js +12 -2
- package/dist/cjs/core/WebAuthnManager/credentialsHelpers.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/index.js +6 -1
- package/dist/cjs/core/WebAuthnManager/index.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/touchIdPrompt.js +209 -201
- package/dist/cjs/core/WebAuthnManager/touchIdPrompt.js.map +1 -1
- package/dist/cjs/core/WebAuthnManager/userHandle.js +2 -1
- package/dist/cjs/core/WebAuthnManager/userHandle.js.map +1 -1
- package/dist/cjs/core/defaultConfigs.js +1 -1
- package/dist/cjs/core/defaultConfigs.js.map +1 -1
- package/dist/cjs/core/rpcCalls.js +8 -0
- package/dist/cjs/core/rpcCalls.js.map +1 -1
- package/dist/cjs/core/types/vrf-worker.js +10 -1
- package/dist/cjs/core/types/vrf-worker.js.map +1 -1
- package/dist/cjs/index.js +6 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/react/components/AccountMenuButton/{LinkedDevicesModal-STvIsylA.css → LinkedDevicesModal-CSSowiHP.css} +1 -1
- package/dist/{esm/react/components/AccountMenuButton/LinkedDevicesModal-STvIsylA.css.map → cjs/react/components/AccountMenuButton/LinkedDevicesModal-CSSowiHP.css.map} +1 -1
- package/dist/cjs/react/components/AccountMenuButton/{ProfileDropdown-iARgUwK1.css → ProfileDropdown-CEPMZ1gY.css} +1 -1
- package/dist/{esm/react/components/AccountMenuButton/ProfileDropdown-iARgUwK1.css.map → cjs/react/components/AccountMenuButton/ProfileDropdown-CEPMZ1gY.css.map} +1 -1
- package/dist/cjs/react/components/AccountMenuButton/{Web3AuthProfileButton-Db3NeoAC.css → Web3AuthProfileButton-DopOg7Xc.css} +1 -1
- package/dist/cjs/react/components/AccountMenuButton/{Web3AuthProfileButton-Db3NeoAC.css.map → Web3AuthProfileButton-DopOg7Xc.css.map} +1 -1
- package/dist/cjs/react/components/AccountMenuButton/icons/{TouchIcon-BXM5NR4A.css → TouchIcon-BQWentvJ.css} +1 -1
- package/dist/cjs/react/components/AccountMenuButton/icons/{TouchIcon-BXM5NR4A.css.map → TouchIcon-BQWentvJ.css.map} +1 -1
- package/dist/cjs/react/components/PasskeyAuthMenu/{PasskeyAuthMenu-De1qTSmU.css → PasskeyAuthMenu-DwrzWMYx.css} +14 -1
- package/dist/cjs/react/components/PasskeyAuthMenu/{PasskeyAuthMenu-De1qTSmU.css.map → PasskeyAuthMenu-DwrzWMYx.css.map} +1 -1
- package/dist/cjs/react/components/PasskeyAuthMenu/ui/EmailRecoverySlide.js +122 -53
- package/dist/cjs/react/components/PasskeyAuthMenu/ui/EmailRecoverySlide.js.map +1 -1
- package/dist/cjs/react/components/{ShowQRCode-DCnR__fx.css → ShowQRCode-CCN4h6Uv.css} +1 -1
- package/dist/cjs/react/components/{ShowQRCode-DCnR__fx.css.map → ShowQRCode-CCN4h6Uv.css.map} +1 -1
- package/dist/cjs/react/deviceDetection.js +75 -92
- package/dist/cjs/react/deviceDetection.js.map +1 -1
- package/dist/cjs/react/hooks/useQRCamera.js +1 -0
- package/dist/cjs/react/hooks/useQRCamera.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/EmailRecovery/emailRecoveryPendingStore.js +69 -0
- package/dist/cjs/react/sdk/src/core/EmailRecovery/emailRecoveryPendingStore.js.map +1 -0
- package/dist/cjs/react/sdk/src/core/EmailRecovery/index.js +32 -13
- package/dist/cjs/react/sdk/src/core/EmailRecovery/index.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/IndexedDBManager/passkeyClientDB.js +35 -36
- package/dist/cjs/react/sdk/src/core/IndexedDBManager/passkeyClientDB.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/NearClient.js +2 -1
- package/dist/cjs/react/sdk/src/core/NearClient.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/emailRecovery.js +557 -377
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/emailRecovery.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/faucets/createAccountRelayServer.js +1 -0
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/faucets/createAccountRelayServer.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/index.js +26 -0
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/index.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/linkDevice.js +2 -0
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/linkDevice.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/login.js +15 -4
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/login.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/recoverAccount.js +1 -0
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/recoverAccount.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/relay.js +23 -1
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/relay.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/scanDevice.js +1 -0
- package/dist/cjs/react/sdk/src/core/TatchiPasskey/scanDevice.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WalletIframe/client/IframeTransport.js +3 -0
- package/dist/cjs/react/sdk/src/core/WalletIframe/client/IframeTransport.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WalletIframe/client/router.js +15 -2
- package/dist/cjs/react/sdk/src/core/WalletIframe/client/router.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-drawer.js +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-drawer.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-modal.js +52 -52
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-modal.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/getDeviceNumber.js +10 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/getDeviceNumber.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/checkCanRegisterUser.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/checkCanRegisterUser.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/decryptPrivateKeyWithPrf.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/decryptPrivateKeyWithPrf.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/deriveNearKeypairAndEncryptFromSerialized.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/deriveNearKeypairAndEncryptFromSerialized.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/exportNearKeypairUi.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/exportNearKeypairUi.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/registerDevice2WithDerivedKey.js +2 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/registerDevice2WithDerivedKey.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signDelegateAction.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signDelegateAction.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signNep413Message.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signNep413Message.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signTransactionsWithActions.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signTransactionsWithActions.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/validation.js +2 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/validation.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/index.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/index.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/vrf.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/vrf.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/webauthn.js +6 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/webauthn.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/determineConfirmationConfig.js +2 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/determineConfirmationConfig.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/localOnly.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/localOnly.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/registration.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/registration.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/transactions.js +4 -15
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/transactions.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/deriveVrfKeypairFromPrf.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/deriveVrfKeypairFromPrf.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfChallenge.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfChallenge.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfKeypairBootstrap.js +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfKeypairBootstrap.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/WebAuthnFallbacks/index.js +17 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/WebAuthnFallbacks/index.js.map +1 -0
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/WebAuthnFallbacks/safari-fallbacks.js +64 -54
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/WebAuthnFallbacks/safari-fallbacks.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/credentialsHelpers.js +12 -2
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/credentialsHelpers.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/index.js +6 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/index.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/touchIdPrompt.js +209 -201
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/touchIdPrompt.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/userHandle.js +2 -1
- package/dist/cjs/react/sdk/src/core/WebAuthnManager/userHandle.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/defaultConfigs.js +1 -1
- package/dist/cjs/react/sdk/src/core/defaultConfigs.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/rpcCalls.js +8 -0
- package/dist/cjs/react/sdk/src/core/rpcCalls.js.map +1 -1
- package/dist/cjs/react/sdk/src/core/types/vrf-worker.js +10 -1
- package/dist/cjs/react/sdk/src/core/types/vrf-worker.js.map +1 -1
- package/dist/cjs/react/sdk/src/utils/index.js +13 -3
- package/dist/cjs/server/email-recovery/emailEncryptor.js +11 -0
- package/dist/cjs/server/email-recovery/emailEncryptor.js.map +1 -1
- package/dist/cjs/server/email-recovery/emailParsers.js +57 -0
- package/dist/cjs/server/email-recovery/emailParsers.js.map +1 -1
- package/dist/cjs/server/email-recovery/index.js +1 -1
- package/dist/cjs/server/email-recovery/index.js.map +1 -1
- package/dist/cjs/server/email-recovery/rpcCalls.js +14 -1
- package/dist/cjs/server/email-recovery/rpcCalls.js.map +1 -1
- package/dist/cjs/server/index.js +1 -0
- package/dist/cjs/server/router/cloudflare.js.map +1 -1
- package/dist/cjs/server/router/express.js.map +1 -1
- package/dist/cjs/server/sdk/src/core/defaultConfigs.js +1 -1
- package/dist/cjs/server/sdk/src/core/defaultConfigs.js.map +1 -1
- package/dist/cjs/utils/index.js +13 -3
- package/dist/esm/core/EmailRecovery/emailRecoveryPendingStore.js +63 -0
- package/dist/esm/core/EmailRecovery/emailRecoveryPendingStore.js.map +1 -0
- package/dist/esm/core/EmailRecovery/index.js +28 -14
- package/dist/esm/core/EmailRecovery/index.js.map +1 -1
- package/dist/esm/core/IndexedDBManager/passkeyClientDB.js +35 -36
- package/dist/esm/core/IndexedDBManager/passkeyClientDB.js.map +1 -1
- package/dist/esm/core/NearClient.js +2 -1
- package/dist/esm/core/NearClient.js.map +1 -1
- package/dist/esm/core/TatchiPasskey/emailRecovery.js +557 -377
- package/dist/esm/core/TatchiPasskey/emailRecovery.js.map +1 -1
- package/dist/esm/core/TatchiPasskey/faucets/createAccountRelayServer.js +2 -1
- package/dist/esm/core/TatchiPasskey/faucets/createAccountRelayServer.js.map +1 -1
- package/dist/esm/core/TatchiPasskey/index.js +28 -2
- package/dist/esm/core/TatchiPasskey/index.js.map +1 -1
- package/dist/esm/core/TatchiPasskey/linkDevice.js +4 -2
- package/dist/esm/core/TatchiPasskey/linkDevice.js.map +1 -1
- package/dist/esm/core/TatchiPasskey/login.js +13 -7
- package/dist/esm/core/TatchiPasskey/login.js.map +1 -1
- package/dist/esm/core/TatchiPasskey/recoverAccount.js +2 -1
- package/dist/esm/core/TatchiPasskey/recoverAccount.js.map +1 -1
- package/dist/esm/core/TatchiPasskey/relay.js +23 -1
- package/dist/esm/core/TatchiPasskey/relay.js.map +1 -1
- package/dist/esm/core/TatchiPasskey/scanDevice.js +2 -1
- package/dist/esm/core/TatchiPasskey/scanDevice.js.map +1 -1
- package/dist/esm/core/WalletIframe/client/IframeTransport.js +4 -1
- package/dist/esm/core/WalletIframe/client/IframeTransport.js.map +1 -1
- package/dist/esm/core/WalletIframe/client/router.js +16 -3
- package/dist/esm/core/WalletIframe/client/router.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-drawer.js +1 -1
- package/dist/esm/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-drawer.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-modal.js +52 -52
- package/dist/esm/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-modal.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/getDeviceNumber.js +6 -2
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/checkCanRegisterUser.js +2 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/checkCanRegisterUser.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/decryptPrivateKeyWithPrf.js +2 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/decryptPrivateKeyWithPrf.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/deriveNearKeypairAndEncryptFromSerialized.js +2 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/deriveNearKeypairAndEncryptFromSerialized.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/exportNearKeypairUi.js +2 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/exportNearKeypairUi.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/registerDevice2WithDerivedKey.js +2 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/registerDevice2WithDerivedKey.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/signDelegateAction.js +2 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/signDelegateAction.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/signNep413Message.js +2 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/signNep413Message.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/signTransactionsWithActions.js +2 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/signTransactionsWithActions.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/validation.js +4 -2
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/handlers/validation.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/index.js +2 -1
- package/dist/esm/core/WebAuthnManager/SignerWorkerManager/index.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/vrf.js +1 -0
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/vrf.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/webauthn.js +8 -2
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/webauthn.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/determineConfirmationConfig.js +2 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/determineConfirmationConfig.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/localOnly.js +2 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/localOnly.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/registration.js +2 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/registration.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/transactions.js +5 -16
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/transactions.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/handlers/deriveVrfKeypairFromPrf.js +2 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/handlers/deriveVrfKeypairFromPrf.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfChallenge.js +2 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfChallenge.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfKeypairBootstrap.js +2 -1
- package/dist/esm/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfKeypairBootstrap.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/WebAuthnFallbacks/index.js +12 -0
- package/dist/esm/core/WebAuthnManager/WebAuthnFallbacks/index.js.map +1 -0
- package/dist/esm/core/WebAuthnManager/WebAuthnFallbacks/safari-fallbacks.js +61 -55
- package/dist/esm/core/WebAuthnManager/WebAuthnFallbacks/safari-fallbacks.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/credentialsHelpers.js +8 -3
- package/dist/esm/core/WebAuthnManager/index.js +8 -3
- package/dist/esm/core/WebAuthnManager/index.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/touchIdPrompt.js +207 -204
- package/dist/esm/core/WebAuthnManager/touchIdPrompt.js.map +1 -1
- package/dist/esm/core/WebAuthnManager/userHandle.js +2 -1
- package/dist/esm/core/WebAuthnManager/userHandle.js.map +1 -1
- package/dist/esm/core/defaultConfigs.js +1 -1
- package/dist/esm/core/defaultConfigs.js.map +1 -1
- package/dist/esm/core/rpcCalls.js +8 -1
- package/dist/esm/core/rpcCalls.js.map +1 -1
- package/dist/esm/core/types/vrf-worker.js +6 -2
- package/dist/esm/index.js +4 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/react/components/AccountMenuButton/{LinkedDevicesModal-STvIsylA.css → LinkedDevicesModal-CSSowiHP.css} +1 -1
- package/dist/{cjs/react/components/AccountMenuButton/LinkedDevicesModal-STvIsylA.css.map → esm/react/components/AccountMenuButton/LinkedDevicesModal-CSSowiHP.css.map} +1 -1
- package/dist/esm/react/components/AccountMenuButton/{ProfileDropdown-iARgUwK1.css → ProfileDropdown-CEPMZ1gY.css} +1 -1
- package/dist/{cjs/react/components/AccountMenuButton/ProfileDropdown-iARgUwK1.css.map → esm/react/components/AccountMenuButton/ProfileDropdown-CEPMZ1gY.css.map} +1 -1
- package/dist/esm/react/components/AccountMenuButton/{Web3AuthProfileButton-Db3NeoAC.css → Web3AuthProfileButton-DopOg7Xc.css} +1 -1
- package/dist/esm/react/components/AccountMenuButton/{Web3AuthProfileButton-Db3NeoAC.css.map → Web3AuthProfileButton-DopOg7Xc.css.map} +1 -1
- package/dist/esm/react/components/AccountMenuButton/icons/{TouchIcon-BXM5NR4A.css → TouchIcon-BQWentvJ.css} +1 -1
- package/dist/esm/react/components/AccountMenuButton/icons/{TouchIcon-BXM5NR4A.css.map → TouchIcon-BQWentvJ.css.map} +1 -1
- package/dist/esm/react/components/PasskeyAuthMenu/{PasskeyAuthMenu-De1qTSmU.css → PasskeyAuthMenu-DwrzWMYx.css} +14 -1
- package/dist/esm/react/components/PasskeyAuthMenu/{PasskeyAuthMenu-De1qTSmU.css.map → PasskeyAuthMenu-DwrzWMYx.css.map} +1 -1
- package/dist/esm/react/components/PasskeyAuthMenu/ui/EmailRecoverySlide.js +123 -54
- package/dist/esm/react/components/PasskeyAuthMenu/ui/EmailRecoverySlide.js.map +1 -1
- package/dist/esm/react/components/{ShowQRCode-DCnR__fx.css → ShowQRCode-CCN4h6Uv.css} +1 -1
- package/dist/esm/react/components/{ShowQRCode-DCnR__fx.css.map → ShowQRCode-CCN4h6Uv.css.map} +1 -1
- package/dist/esm/react/deviceDetection.js +72 -93
- package/dist/esm/react/deviceDetection.js.map +1 -1
- package/dist/esm/react/hooks/useQRCamera.js +2 -1
- package/dist/esm/react/hooks/useQRCamera.js.map +1 -1
- package/dist/esm/react/sdk/src/core/EmailRecovery/emailRecoveryPendingStore.js +63 -0
- package/dist/esm/react/sdk/src/core/EmailRecovery/emailRecoveryPendingStore.js.map +1 -0
- package/dist/esm/react/sdk/src/core/EmailRecovery/index.js +28 -14
- package/dist/esm/react/sdk/src/core/EmailRecovery/index.js.map +1 -1
- package/dist/esm/react/sdk/src/core/IndexedDBManager/passkeyClientDB.js +35 -36
- package/dist/esm/react/sdk/src/core/IndexedDBManager/passkeyClientDB.js.map +1 -1
- package/dist/esm/react/sdk/src/core/NearClient.js +2 -1
- package/dist/esm/react/sdk/src/core/NearClient.js.map +1 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/emailRecovery.js +557 -377
- package/dist/esm/react/sdk/src/core/TatchiPasskey/emailRecovery.js.map +1 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/faucets/createAccountRelayServer.js +2 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/faucets/createAccountRelayServer.js.map +1 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/index.js +28 -2
- package/dist/esm/react/sdk/src/core/TatchiPasskey/index.js.map +1 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/linkDevice.js +4 -2
- package/dist/esm/react/sdk/src/core/TatchiPasskey/linkDevice.js.map +1 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/login.js +13 -7
- package/dist/esm/react/sdk/src/core/TatchiPasskey/login.js.map +1 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/recoverAccount.js +2 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/recoverAccount.js.map +1 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/relay.js +23 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/relay.js.map +1 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/scanDevice.js +2 -1
- package/dist/esm/react/sdk/src/core/TatchiPasskey/scanDevice.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WalletIframe/client/IframeTransport.js +4 -1
- package/dist/esm/react/sdk/src/core/WalletIframe/client/IframeTransport.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WalletIframe/client/router.js +16 -3
- package/dist/esm/react/sdk/src/core/WalletIframe/client/router.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-drawer.js +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-drawer.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-modal.js +52 -52
- package/dist/esm/react/sdk/src/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-modal.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/getDeviceNumber.js +6 -2
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/checkCanRegisterUser.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/checkCanRegisterUser.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/decryptPrivateKeyWithPrf.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/decryptPrivateKeyWithPrf.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/deriveNearKeypairAndEncryptFromSerialized.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/deriveNearKeypairAndEncryptFromSerialized.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/exportNearKeypairUi.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/exportNearKeypairUi.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/registerDevice2WithDerivedKey.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/registerDevice2WithDerivedKey.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signDelegateAction.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signDelegateAction.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signNep413Message.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signNep413Message.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signTransactionsWithActions.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/signTransactionsWithActions.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/validation.js +4 -2
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/handlers/validation.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/index.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/SignerWorkerManager/index.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/vrf.js +1 -0
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/vrf.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/webauthn.js +8 -2
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/webauthn.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/determineConfirmationConfig.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/determineConfirmationConfig.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/localOnly.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/localOnly.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/registration.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/registration.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/transactions.js +5 -16
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/transactions.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/deriveVrfKeypairFromPrf.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/deriveVrfKeypairFromPrf.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfChallenge.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfChallenge.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfKeypairBootstrap.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/VrfWorkerManager/handlers/generateVrfKeypairBootstrap.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/WebAuthnFallbacks/index.js +12 -0
- package/dist/esm/react/sdk/src/core/WebAuthnManager/WebAuthnFallbacks/index.js.map +1 -0
- package/dist/esm/react/sdk/src/core/WebAuthnManager/WebAuthnFallbacks/safari-fallbacks.js +61 -55
- package/dist/esm/react/sdk/src/core/WebAuthnManager/WebAuthnFallbacks/safari-fallbacks.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/credentialsHelpers.js +8 -3
- package/dist/esm/react/sdk/src/core/WebAuthnManager/index.js +8 -3
- package/dist/esm/react/sdk/src/core/WebAuthnManager/index.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/touchIdPrompt.js +207 -204
- package/dist/esm/react/sdk/src/core/WebAuthnManager/touchIdPrompt.js.map +1 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/userHandle.js +2 -1
- package/dist/esm/react/sdk/src/core/WebAuthnManager/userHandle.js.map +1 -1
- package/dist/esm/react/sdk/src/core/defaultConfigs.js +1 -1
- package/dist/esm/react/sdk/src/core/defaultConfigs.js.map +1 -1
- package/dist/esm/react/sdk/src/core/rpcCalls.js +8 -1
- package/dist/esm/react/sdk/src/core/rpcCalls.js.map +1 -1
- package/dist/esm/react/sdk/src/core/types/vrf-worker.js +6 -2
- package/dist/esm/react/sdk/src/utils/index.js +10 -4
- package/dist/esm/react/styles/styles.css +13 -0
- package/dist/esm/sdk/{safari-fallbacks-oQKu9xUs.js → WebAuthnFallbacks-Bl4BTsNt.js} +131 -135
- package/dist/esm/sdk/{createAdapters-pNiL2KNq.js → createAdapters-BumKM2ft.js} +59 -54
- package/dist/esm/sdk/createAdapters-BumKM2ft.js.map +1 -0
- package/dist/esm/sdk/{createAdapters-BWLe9Ddo.js → createAdapters-qVGD6i0g.js} +10 -3
- package/dist/esm/sdk/{defaultConfigs-VzvDejmy.js → defaultConfigs-DpslkAQd.js} +1 -1
- package/dist/esm/sdk/{getDeviceNumber-CkWRT17I.js → getDeviceNumber-fXizNGQl.js} +2 -2
- package/dist/esm/sdk/getDeviceNumber-fXizNGQl.js.map +1 -0
- package/dist/esm/sdk/{getDeviceNumber-CfmlgfMX.js → getDeviceNumber-zsOHT_Um.js} +6 -3
- package/dist/esm/sdk/{localOnly-DnpSyDaF.js → localOnly-Byi3AK7A.js} +2 -2
- package/dist/esm/sdk/{localOnly-DnpSyDaF.js.map → localOnly-Byi3AK7A.js.map} +1 -1
- package/dist/esm/sdk/{localOnly-BdumO2st.js → localOnly-pXMTqh1m.js} +5 -4
- package/dist/esm/sdk/offline-export-app.js +46 -44
- package/dist/esm/sdk/offline-export-app.js.map +1 -1
- package/dist/esm/sdk/{overlay-BTqPGG-o.js → overlay-ZGbucXIa.js} +2 -0
- package/dist/esm/sdk/{registration-C633u6x8.js → registration-CBiS4Ua_.js} +2 -2
- package/dist/esm/sdk/{registration-C633u6x8.js.map → registration-CBiS4Ua_.js.map} +1 -1
- package/dist/esm/sdk/{registration-xyYUFRqk.js → registration-DLPLsGCz.js} +5 -4
- package/dist/esm/sdk/{requestHelpers-DLBGBHMw.js → requestHelpers-Dh1hEYL9.js} +206 -204
- package/dist/esm/sdk/{router-BG6KC_p7.js → router-DuGYOd3G.js} +19 -4
- package/dist/esm/sdk/{rpcCalls-fLObBbbz.js → rpcCalls-BQrJMTdg.js} +3 -3
- package/dist/esm/sdk/{rpcCalls-CAU5XYEF.js → rpcCalls-YVeUVMk2.js} +9 -2
- package/dist/esm/sdk/{transactions-jH38BZ-Q.js → transactions-BIqKZeR0.js} +6 -18
- package/dist/esm/sdk/transactions-BIqKZeR0.js.map +1 -0
- package/dist/esm/sdk/{transactions-CzZAt1Yn.js → transactions-Bk-VavcV.js} +10 -21
- package/dist/esm/sdk/tx-confirm-ui.js +53 -53
- package/dist/esm/sdk/{tx-confirmer-wrapper-CqfVBUaA.js → tx-confirmer-wrapper-lHNgz9i4.js} +53 -53
- package/dist/esm/sdk/tx-confirmer.css +6 -4
- package/dist/esm/sdk/w3a-tx-confirmer.js +1 -1
- package/dist/esm/sdk/wallet-iframe-host.js +782 -447
- package/dist/esm/server/email-recovery/emailEncryptor.js +11 -1
- package/dist/esm/server/email-recovery/emailEncryptor.js.map +1 -1
- package/dist/esm/server/email-recovery/emailParsers.js +55 -1
- package/dist/esm/server/email-recovery/emailParsers.js.map +1 -1
- package/dist/esm/server/email-recovery/index.js +2 -2
- package/dist/esm/server/email-recovery/index.js.map +1 -1
- package/dist/esm/server/email-recovery/rpcCalls.js +14 -1
- package/dist/esm/server/email-recovery/rpcCalls.js.map +1 -1
- package/dist/esm/server/index.js +2 -2
- package/dist/esm/server/router/cloudflare.js.map +1 -1
- package/dist/esm/server/router/express.js.map +1 -1
- package/dist/esm/server/sdk/src/core/defaultConfigs.js +1 -1
- package/dist/esm/server/sdk/src/core/defaultConfigs.js.map +1 -1
- package/dist/esm/utils/index.js +10 -4
- package/dist/esm/wasm_vrf_worker/pkg/wasm_vrf_worker.js +3 -0
- package/dist/esm/wasm_vrf_worker/pkg/wasm_vrf_worker_bg.wasm +0 -0
- package/dist/types/src/core/EmailRecovery/emailRecoveryPendingStore.d.ts +25 -0
- package/dist/types/src/core/EmailRecovery/emailRecoveryPendingStore.d.ts.map +1 -0
- package/dist/types/src/core/EmailRecovery/index.d.ts +1 -0
- package/dist/types/src/core/EmailRecovery/index.d.ts.map +1 -1
- package/dist/types/src/core/IndexedDBManager/passkeyClientDB.d.ts +11 -21
- package/dist/types/src/core/IndexedDBManager/passkeyClientDB.d.ts.map +1 -1
- package/dist/types/src/core/TatchiPasskey/emailRecovery.d.ts +45 -5
- package/dist/types/src/core/TatchiPasskey/emailRecovery.d.ts.map +1 -1
- package/dist/types/src/core/TatchiPasskey/index.d.ts +10 -2
- package/dist/types/src/core/TatchiPasskey/index.d.ts.map +1 -1
- package/dist/types/src/core/TatchiPasskey/relay.d.ts +2 -1
- package/dist/types/src/core/TatchiPasskey/relay.d.ts.map +1 -1
- package/dist/types/src/core/WalletIframe/TatchiPasskeyIframe.d.ts +4 -0
- package/dist/types/src/core/WalletIframe/TatchiPasskeyIframe.d.ts.map +1 -1
- package/dist/types/src/core/WalletIframe/client/router.d.ts +7 -3
- package/dist/types/src/core/WalletIframe/client/router.d.ts.map +1 -1
- package/dist/types/src/core/WalletIframe/host/wallet-iframe-handlers.d.ts.map +1 -1
- package/dist/types/src/core/WalletIframe/shared/messages.d.ts +6 -2
- package/dist/types/src/core/WalletIframe/shared/messages.d.ts.map +1 -1
- package/dist/types/src/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-drawer.d.ts.map +1 -1
- package/dist/types/src/core/WebAuthnManager/LitComponents/IframeTxConfirmer/viewer-modal.d.ts.map +1 -1
- package/dist/types/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/vrf.d.ts.map +1 -1
- package/dist/types/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/adapters/webauthn.d.ts.map +1 -1
- package/dist/types/src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/transactions.d.ts.map +1 -1
- package/dist/types/src/core/WebAuthnManager/index.d.ts.map +1 -1
- package/dist/types/src/core/defaultConfigs.d.ts.map +1 -1
- package/dist/types/src/core/rpcCalls.d.ts +9 -0
- package/dist/types/src/core/rpcCalls.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/react/components/PasskeyAuthMenu/ui/EmailRecoverySlide.d.ts.map +1 -1
- package/dist/types/src/server/email-recovery/emailEncryptor.d.ts +4 -0
- package/dist/types/src/server/email-recovery/emailEncryptor.d.ts.map +1 -1
- package/dist/types/src/server/email-recovery/emailParsers.d.ts +7 -0
- package/dist/types/src/server/email-recovery/emailParsers.d.ts.map +1 -1
- package/dist/types/src/server/email-recovery/index.d.ts +1 -1
- package/dist/types/src/server/email-recovery/rpcCalls.d.ts +1 -1
- package/dist/types/src/server/email-recovery/rpcCalls.d.ts.map +1 -1
- package/dist/types/src/wasm_vrf_worker/pkg/wasm_vrf_worker.d.ts.map +1 -1
- package/dist/workers/wasm_vrf_worker_bg.wasm +0 -0
- package/dist/workers/web3authn-vrf.worker.js +3 -0
- package/package.json +1 -1
- package/dist/esm/sdk/createAdapters-pNiL2KNq.js.map +0 -1
- package/dist/esm/sdk/getDeviceNumber-CkWRT17I.js.map +0 -1
- package/dist/esm/sdk/transactions-jH38BZ-Q.js.map +0 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { init_validation, isFunction } from "./validation-DtLVzHDY.js";
|
|
2
2
|
import { base64Decode, base64Encode } from "./base64-DBPGuXh4.js";
|
|
3
3
|
import { errorMessage, init_errors } from "./errors-D9ar28Dr.js";
|
|
4
|
+
import { init_utils } from "./WebAuthnFallbacks-Bl4BTsNt.js";
|
|
4
5
|
import { DEFAULT_WAIT_STATUS, init_rpc } from "./sdkSentEvents-_jrJLIhw.js";
|
|
5
6
|
|
|
6
7
|
//#region src/core/NearRpcError.ts
|
|
@@ -116,6 +117,7 @@ function describeTxExecution(operationName, exec) {
|
|
|
116
117
|
|
|
117
118
|
//#endregion
|
|
118
119
|
//#region src/core/NearClient.ts
|
|
120
|
+
init_utils();
|
|
119
121
|
init_errors();
|
|
120
122
|
init_rpc();
|
|
121
123
|
init_validation();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ERROR_MESSAGES, getIntentDigest, getNearAccountId, getRegisterAccountPayload, isSerializedRegistrationCredential, isUserCancelledSecureConfirm, serializeRegistrationCredentialWithPRF, toError } from "./requestHelpers-aUKhXiEl.js";
|
|
2
2
|
import "./validation-DhPPUba7.js";
|
|
3
|
-
import { createConfirmSession, createConfirmTxFlowAdapters } from "./createAdapters-
|
|
3
|
+
import { createConfirmSession, createConfirmTxFlowAdapters } from "./createAdapters-BumKM2ft.js";
|
|
4
4
|
import "./css-loader-BrMMlG4X.js";
|
|
5
5
|
import "./lit-events-BKobq01K.js";
|
|
6
6
|
import "./tx-tree-themes-i3It4IYY.js";
|
|
@@ -130,4 +130,4 @@ async function handleRegistrationFlow(ctx, request, worker, opts) {
|
|
|
130
130
|
|
|
131
131
|
//#endregion
|
|
132
132
|
export { handleRegistrationFlow };
|
|
133
|
-
//# sourceMappingURL=registration-
|
|
133
|
+
//# sourceMappingURL=registration-CBiS4Ua_.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registration-
|
|
1
|
+
{"version":3,"file":"registration-CBiS4Ua_.js","names":["uiVrfChallenge: VRFChallenge","credential: PublicKeyCredential | undefined","e: unknown","serialized: WebAuthnRegistrationCredential","err: unknown"],"sources":["../../../src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/registration.ts"],"sourcesContent":["import type { VrfWorkerManagerContext } from '../../';\nimport type { ConfirmationConfig } from '../../../../types/signer-worker';\nimport {\n TransactionSummary,\n RegistrationSecureConfirmRequest,\n} from '../types';\nimport { VRFChallenge, TransactionContext } from '../../../../types';\nimport type { WebAuthnRegistrationCredential } from '../../../../types/webauthn';\nimport {\n getNearAccountId,\n getIntentDigest,\n isUserCancelledSecureConfirm,\n ERROR_MESSAGES,\n getRegisterAccountPayload,\n} from './index';\nimport { isSerializedRegistrationCredential, serializeRegistrationCredentialWithPRF } from '../../../credentialsHelpers';\nimport { toError } from '../../../../../utils/errors';\nimport { createConfirmSession } from '../adapters/session';\nimport { createConfirmTxFlowAdapters } from '../adapters/createAdapters';\n\nexport async function handleRegistrationFlow(\n ctx: VrfWorkerManagerContext,\n request: RegistrationSecureConfirmRequest,\n worker: Worker,\n opts: { confirmationConfig: ConfirmationConfig; transactionSummary: TransactionSummary },\n): Promise<void> {\n\n const { confirmationConfig, transactionSummary } = opts;\n const adapters = createConfirmTxFlowAdapters(ctx);\n const session = createConfirmSession({\n adapters,\n worker,\n request,\n confirmationConfig,\n transactionSummary,\n });\n const nearAccountId = getNearAccountId(request);\n\n console.debug('[RegistrationFlow] start', {\n nearAccountId,\n uiMode: confirmationConfig?.uiMode,\n behavior: confirmationConfig?.behavior,\n theme: confirmationConfig?.theme,\n intentDigest: transactionSummary?.intentDigest,\n });\n\n // 1) NEAR context\n const nearRpc = await adapters.near.fetchNearContext({ nearAccountId, txCount: 1, reserveNonces: true });\n if (nearRpc.error && !nearRpc.transactionContext) {\n return session.confirmAndCloseModal({\n requestId: request.requestId,\n intentDigest: getIntentDigest(request),\n confirmed: false,\n error: `${ERROR_MESSAGES.nearRpcFailed}: ${nearRpc.details}`,\n });\n }\n const transactionContext = nearRpc.transactionContext as TransactionContext;\n session.setReservedNonces(nearRpc.reservedNonces);\n\n // 2) Initial VRF challenge via bootstrap\n const rpId = adapters.vrf.getRpId();\n const bootstrap = await adapters.vrf.generateVrfKeypairBootstrap({\n vrfInputData: {\n userId: nearAccountId,\n rpId,\n blockHeight: transactionContext.txBlockHeight,\n blockHash: transactionContext.txBlockHash,\n },\n saveInMemory: true,\n sessionId: request.requestId,\n });\n let uiVrfChallenge: VRFChallenge = bootstrap.vrfChallenge;\n console.debug('[RegistrationFlow] VRF bootstrap ok', { blockHeight: uiVrfChallenge.blockHeight });\n\n // 3) UI confirm\n const { confirmed, error: uiError } = await session.promptUser({ vrfChallenge: uiVrfChallenge });\n if (!confirmed) {\n console.debug('[RegistrationFlow] user cancelled');\n return session.confirmAndCloseModal({\n requestId: request.requestId,\n intentDigest: getIntentDigest(request),\n confirmed: false,\n error: uiError,\n });\n }\n\n // 4) JIT refresh VRF (best-effort)\n try {\n const refreshed = await adapters.vrf.maybeRefreshVrfChallenge(request, nearAccountId);\n uiVrfChallenge = refreshed.vrfChallenge;\n session.updateUI({ vrfChallenge: uiVrfChallenge });\n console.debug('[RegistrationFlow] VRF JIT refresh ok', { blockHeight: uiVrfChallenge.blockHeight });\n } catch (e) {\n console.debug('[RegistrationFlow] VRF JIT refresh skipped', e);\n }\n\n // 5) Collect registration credentials (with duplicate retry)\n let credential: PublicKeyCredential | undefined;\n let deviceNumber = request.payload?.deviceNumber;\n\n const tryCreate = async (dn?: number): Promise<PublicKeyCredential> => {\n console.debug('[RegistrationFlow] navigator.credentials.create start', { deviceNumber: dn });\n return await adapters.webauthn.createRegistrationCredential({\n nearAccountId,\n challenge: uiVrfChallenge,\n deviceNumber: dn,\n });\n };\n\n try {\n try {\n credential = await tryCreate(deviceNumber);\n console.debug('[RegistrationFlow] credentials.create ok');\n } catch (e: unknown) {\n const err = toError(e);\n const name = String(err?.name || '');\n const msg = String(err?.message || '');\n const isDuplicate = name === 'InvalidStateError' || /excluded|already\\s*registered/i.test(msg);\n if (isDuplicate) {\n const nextDeviceNumber = (deviceNumber !== undefined && Number.isFinite(deviceNumber)) ? (deviceNumber + 1) : 2;\n console.debug('[RegistrationFlow] duplicate credential, retry with next deviceNumber', { nextDeviceNumber });\n credential = await tryCreate(nextDeviceNumber);\n getRegisterAccountPayload(request).deviceNumber = nextDeviceNumber;\n } else {\n console.error('[RegistrationFlow] credentials.create failed (non-duplicate)', { name, msg });\n throw err;\n }\n }\n\n // We require registration credentials to include dual PRF outputs (first + second)\n // so VRF/NEAR key derivation can happen inside the workers without passing PRF outputs\n // as separate main-thread values.\n const serialized: WebAuthnRegistrationCredential = isSerializedRegistrationCredential(credential as unknown)\n ? (credential as unknown as WebAuthnRegistrationCredential)\n : serializeRegistrationCredentialWithPRF({\n credential: credential! as PublicKeyCredential,\n firstPrfOutput: true,\n secondPrfOutput: true,\n });\n\n // 6) Respond + close\n session.confirmAndCloseModal({\n requestId: request.requestId,\n intentDigest: getIntentDigest(request),\n confirmed: true,\n credential: serialized,\n // PRF outputs are embedded in serialized credential; VRF worker extracts and sends via MessagePort\n vrfChallenge: uiVrfChallenge,\n transactionContext,\n });\n\n } catch (err: unknown) {\n const cancelled = isUserCancelledSecureConfirm(err);\n const msg = String((toError(err))?.message || err || '');\n // For missing PRF outputs, surface the error to caller (defensive path tests expect a throw)\n if (/Missing PRF result/i.test(msg) || /Missing PRF results/i.test(msg)) {\n return session.cleanupAndRethrow(err);\n }\n if (cancelled) {\n window.parent?.postMessage({ type: 'WALLET_UI_CLOSED' }, '*');\n }\n\n const isPrfBrowserUnsupported =\n /WebAuthn PRF output is missing from navigator\\.credentials\\.create\\(\\)/i.test(msg)\n || /does not fully support the WebAuthn PRF extension during registration/i.test(msg)\n || /roaming hardware authenticators .* not supported in this flow/i.test(msg);\n\n return session.confirmAndCloseModal({\n requestId: request.requestId,\n intentDigest: getIntentDigest(request),\n confirmed: false,\n error: cancelled\n ? ERROR_MESSAGES.cancelled\n : (isPrfBrowserUnsupported ? msg : ERROR_MESSAGES.collectCredentialsFailed),\n });\n }\n}\n"],"mappings":";;;;;;;;AAoBA,eAAsB,uBACpB,KACA,SACA,QACA,MACe;CAEf,MAAM,EAAE,oBAAoB,uBAAuB;CACnD,MAAM,WAAW,4BAA4B;CAC7C,MAAM,UAAU,qBAAqB;EACnC;EACA;EACA;EACA;EACA;;CAEF,MAAM,gBAAgB,iBAAiB;AAEvC,SAAQ,MAAM,4BAA4B;EACxC;EACA,QAAQ,oBAAoB;EAC5B,UAAU,oBAAoB;EAC9B,OAAO,oBAAoB;EAC3B,cAAc,oBAAoB;;CAIpC,MAAM,UAAU,MAAM,SAAS,KAAK,iBAAiB;EAAE;EAAe,SAAS;EAAG,eAAe;;AACjG,KAAI,QAAQ,SAAS,CAAC,QAAQ,mBAC5B,QAAO,QAAQ,qBAAqB;EAClC,WAAW,QAAQ;EACnB,cAAc,gBAAgB;EAC9B,WAAW;EACX,OAAO,GAAG,eAAe,cAAc,IAAI,QAAQ;;CAGvD,MAAM,qBAAqB,QAAQ;AACnC,SAAQ,kBAAkB,QAAQ;CAGlC,MAAM,OAAO,SAAS,IAAI;CAC1B,MAAM,YAAY,MAAM,SAAS,IAAI,4BAA4B;EAC/D,cAAc;GACZ,QAAQ;GACR;GACA,aAAa,mBAAmB;GAChC,WAAW,mBAAmB;;EAEhC,cAAc;EACd,WAAW,QAAQ;;CAErB,IAAIA,iBAA+B,UAAU;AAC7C,SAAQ,MAAM,uCAAuC,EAAE,aAAa,eAAe;CAGnF,MAAM,EAAE,WAAW,OAAO,YAAY,MAAM,QAAQ,WAAW,EAAE,cAAc;AAC/E,KAAI,CAAC,WAAW;AACd,UAAQ,MAAM;AACd,SAAO,QAAQ,qBAAqB;GAClC,WAAW,QAAQ;GACnB,cAAc,gBAAgB;GAC9B,WAAW;GACX,OAAO;;;AAKX,KAAI;EACF,MAAM,YAAY,MAAM,SAAS,IAAI,yBAAyB,SAAS;AACvE,mBAAiB,UAAU;AAC3B,UAAQ,SAAS,EAAE,cAAc;AACjC,UAAQ,MAAM,yCAAyC,EAAE,aAAa,eAAe;UAC9E,GAAG;AACV,UAAQ,MAAM,8CAA8C;;CAI9D,IAAIC;CACJ,IAAI,eAAe,QAAQ,SAAS;CAEpC,MAAM,YAAY,OAAO,OAA8C;AACrE,UAAQ,MAAM,yDAAyD,EAAE,cAAc;AACvF,SAAO,MAAM,SAAS,SAAS,6BAA6B;GAC1D;GACA,WAAW;GACX,cAAc;;;AAIlB,KAAI;AACF,MAAI;AACF,gBAAa,MAAM,UAAU;AAC7B,WAAQ,MAAM;WACPC,GAAY;GACnB,MAAM,MAAM,QAAQ;GACpB,MAAM,OAAO,OAAO,KAAK,QAAQ;GACjC,MAAM,MAAM,OAAO,KAAK,WAAW;GACnC,MAAM,cAAc,SAAS,uBAAuB,iCAAiC,KAAK;AAC1F,OAAI,aAAa;IACf,MAAM,mBAAoB,iBAAiB,UAAa,OAAO,SAAS,gBAAkB,eAAe,IAAK;AAC9G,YAAQ,MAAM,yEAAyE,EAAE;AACzF,iBAAa,MAAM,UAAU;AAC7B,8BAA0B,SAAS,eAAe;UAC7C;AACL,YAAQ,MAAM,gEAAgE;KAAE;KAAM;;AACtF,UAAM;;;EAOV,MAAMC,aAA6C,mCAAmC,cACjF,aACD,uCAAuC;GACzB;GACZ,gBAAgB;GAChB,iBAAiB;;AAIvB,UAAQ,qBAAqB;GAC3B,WAAW,QAAQ;GACnB,cAAc,gBAAgB;GAC9B,WAAW;GACX,YAAY;GAEZ,cAAc;GACd;;UAGKC,KAAc;EACrB,MAAM,YAAY,6BAA6B;EAC/C,MAAM,MAAM,OAAQ,QAAQ,MAAO,WAAW,OAAO;AAErD,MAAI,sBAAsB,KAAK,QAAQ,uBAAuB,KAAK,KACjE,QAAO,QAAQ,kBAAkB;AAEnC,MAAI,UACF,QAAO,QAAQ,YAAY,EAAE,MAAM,sBAAsB;EAG3D,MAAM,0BACJ,0EAA0E,KAAK,QAC5E,yEAAyE,KAAK,QAC9E,iEAAiE,KAAK;AAE3E,SAAO,QAAQ,qBAAqB;GAClC,WAAW,QAAQ;GACnB,cAAc,gBAAgB;GAC9B,WAAW;GACX,OAAO,YACH,eAAe,YACd,0BAA0B,MAAM,eAAe"}
|
|
@@ -7,13 +7,14 @@ import "./txDigest-CxjhSCgm.js";
|
|
|
7
7
|
import "./base64-DBPGuXh4.js";
|
|
8
8
|
import "./actions-O1FD5Bq8.js";
|
|
9
9
|
import "./lit-events-C-jpeT5r.js";
|
|
10
|
-
import "./tx-confirmer-wrapper-
|
|
10
|
+
import "./tx-confirmer-wrapper-lHNgz9i4.js";
|
|
11
11
|
import { init_errors, toError } from "./errors-D9ar28Dr.js";
|
|
12
|
-
import { isSerializedRegistrationCredential, serializeRegistrationCredentialWithPRF } from "./
|
|
13
|
-
import { ERROR_MESSAGES, getIntentDigest, getNearAccountId, getRegisterAccountPayload, isUserCancelledSecureConfirm } from "./requestHelpers-
|
|
14
|
-
import { createConfirmSession, createConfirmTxFlowAdapters } from "./createAdapters-
|
|
12
|
+
import { init_credentialsHelpers, isSerializedRegistrationCredential, serializeRegistrationCredentialWithPRF } from "./WebAuthnFallbacks-Bl4BTsNt.js";
|
|
13
|
+
import { ERROR_MESSAGES, getIntentDigest, getNearAccountId, getRegisterAccountPayload, isUserCancelledSecureConfirm } from "./requestHelpers-Dh1hEYL9.js";
|
|
14
|
+
import { createConfirmSession, createConfirmTxFlowAdapters } from "./createAdapters-qVGD6i0g.js";
|
|
15
15
|
|
|
16
16
|
//#region src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/flows/registration.ts
|
|
17
|
+
init_credentialsHelpers();
|
|
17
18
|
init_errors();
|
|
18
19
|
async function handleRegistrationFlow(ctx, request, worker, opts) {
|
|
19
20
|
const { confirmationConfig, transactionSummary } = opts;
|
|
@@ -2,7 +2,7 @@ import { __esm } from "./chunk-DIQ1yeMN.js";
|
|
|
2
2
|
import { init_validation, isFunction, isObject, isString } from "./validation-DtLVzHDY.js";
|
|
3
3
|
import { base64UrlDecode, base64UrlEncode } from "./base64-DBPGuXh4.js";
|
|
4
4
|
import { init_encoders, init_errors, isTouchIdCancellationError, toError } from "./errors-D9ar28Dr.js";
|
|
5
|
-
import { executeWebAuthnWithParentFallbacksSafari, generateChaCha20Salt, generateEd25519Salt, init_validation as init_validation$1, serializeAuthenticationCredentialWithPRF, validateNearAccountId } from "./
|
|
5
|
+
import { executeWebAuthnWithParentFallbacksSafari, generateChaCha20Salt, generateEd25519Salt, init_WebAuthnFallbacks, init_credentialsHelpers, init_validation as init_validation$1, serializeAuthenticationCredentialWithPRF, validateNearAccountId } from "./WebAuthnFallbacks-Bl4BTsNt.js";
|
|
6
6
|
|
|
7
7
|
//#region src/core/types/accountIds.ts
|
|
8
8
|
/**
|
|
@@ -20,7 +20,6 @@ var init_accountIds = __esm({ "src/core/types/accountIds.ts": (() => {
|
|
|
20
20
|
|
|
21
21
|
//#endregion
|
|
22
22
|
//#region src/core/types/vrf-worker.ts
|
|
23
|
-
init_encoders();
|
|
24
23
|
/**
|
|
25
24
|
* Decode VRF output and use first 32 bytes as WebAuthn challenge
|
|
26
25
|
* @param vrfChallenge - VRF challenge object
|
|
@@ -74,10 +73,12 @@ function createRandomVRFChallenge() {
|
|
|
74
73
|
blockHash: void 0
|
|
75
74
|
};
|
|
76
75
|
}
|
|
76
|
+
var init_vrf_worker = __esm({ "src/core/types/vrf-worker.ts": (() => {
|
|
77
|
+
init_encoders();
|
|
78
|
+
}) });
|
|
77
79
|
|
|
78
80
|
//#endregion
|
|
79
81
|
//#region src/core/WebAuthnManager/touchIdPrompt.ts
|
|
80
|
-
init_encoders();
|
|
81
82
|
function isRegistrableSuffix(host, cand) {
|
|
82
83
|
if (!host || !cand) return false;
|
|
83
84
|
if (host === cand) return true;
|
|
@@ -96,184 +97,6 @@ function authenticatorsToAllowCredentials(authenticators) {
|
|
|
96
97
|
transports: auth.transports
|
|
97
98
|
}));
|
|
98
99
|
}
|
|
99
|
-
/**
|
|
100
|
-
* TouchIdPrompt prompts for touchID,
|
|
101
|
-
* creates credentials,
|
|
102
|
-
* manages WebAuthn touchID prompts,
|
|
103
|
-
* and generates credentials, and PRF Outputs
|
|
104
|
-
*/
|
|
105
|
-
var TouchIdPrompt = class TouchIdPrompt {
|
|
106
|
-
rpIdOverride;
|
|
107
|
-
safariGetWebauthnRegistrationFallback;
|
|
108
|
-
abortController;
|
|
109
|
-
removePageAbortHandlers;
|
|
110
|
-
removeExternalAbortListener;
|
|
111
|
-
constructor(rpIdOverride, safariGetWebauthnRegistrationFallback = false) {
|
|
112
|
-
this.rpIdOverride = rpIdOverride;
|
|
113
|
-
this.safariGetWebauthnRegistrationFallback = safariGetWebauthnRegistrationFallback === true;
|
|
114
|
-
}
|
|
115
|
-
getRpId() {
|
|
116
|
-
try {
|
|
117
|
-
return resolveRpId(this.rpIdOverride, window?.location?.hostname);
|
|
118
|
-
} catch {
|
|
119
|
-
return this.rpIdOverride || "";
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
static _inIframe() {
|
|
123
|
-
try {
|
|
124
|
-
return window.self !== window.top;
|
|
125
|
-
} catch {
|
|
126
|
-
return true;
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Get authentication credentials
|
|
131
|
-
* @param nearAccountId - NEAR account ID to authenticate
|
|
132
|
-
* @param challenge - VRF challenge bytes
|
|
133
|
-
* @param allowCredentials - Array of allowed credentials for authentication
|
|
134
|
-
* @returns WebAuthn credential with only the first PRF output
|
|
135
|
-
*/
|
|
136
|
-
async getAuthenticationCredentialsSerialized({ nearAccountId, challenge, allowCredentials }) {
|
|
137
|
-
const credentialMaybe = await this.getAuthenticationCredentialsInternal({
|
|
138
|
-
nearAccountId,
|
|
139
|
-
challenge,
|
|
140
|
-
allowCredentials
|
|
141
|
-
});
|
|
142
|
-
if (isSerializedAuthenticationCredential(credentialMaybe)) return credentialMaybe;
|
|
143
|
-
return serializeAuthenticationCredentialWithPRF({
|
|
144
|
-
credential: credentialMaybe,
|
|
145
|
-
firstPrfOutput: true,
|
|
146
|
-
secondPrfOutput: false
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
/**
|
|
150
|
-
* Same as getAuthenticationCredentialsSerialized but returns both PRF outputs
|
|
151
|
-
* (PRF.first + PRF.second).
|
|
152
|
-
* @param nearAccountId - NEAR account ID to authenticate
|
|
153
|
-
* @param challenge - VRF challenge bytes
|
|
154
|
-
* @param allowCredentials - Array of allowed credentials for authentication
|
|
155
|
-
* @returns
|
|
156
|
-
*/
|
|
157
|
-
async getAuthenticationCredentialsSerializedDualPrf({ nearAccountId, challenge, allowCredentials }) {
|
|
158
|
-
const credentialMaybe = await this.getAuthenticationCredentialsInternal({
|
|
159
|
-
nearAccountId,
|
|
160
|
-
challenge,
|
|
161
|
-
allowCredentials
|
|
162
|
-
});
|
|
163
|
-
if (isSerializedAuthenticationCredential(credentialMaybe)) return credentialMaybe;
|
|
164
|
-
return serializeAuthenticationCredentialWithPRF({
|
|
165
|
-
credential: credentialMaybe,
|
|
166
|
-
firstPrfOutput: true,
|
|
167
|
-
secondPrfOutput: true
|
|
168
|
-
});
|
|
169
|
-
}
|
|
170
|
-
/**
|
|
171
|
-
* Internal method for generating WebAuthn registration credentials with PRF output
|
|
172
|
-
* @param nearAccountId - NEAR account ID for PRF salts and keypair derivation (always base account)
|
|
173
|
-
* @param challenge - Random challenge bytes for the registration ceremony
|
|
174
|
-
* @param deviceNumber - Device number for device-specific user ID.
|
|
175
|
-
* @returns Credential with PRF output
|
|
176
|
-
*/
|
|
177
|
-
async generateRegistrationCredentialsInternal({ nearAccountId, challenge, deviceNumber }) {
|
|
178
|
-
this.abortController = new AbortController();
|
|
179
|
-
this.removePageAbortHandlers = TouchIdPrompt.attachPageAbortHandlers(this.abortController);
|
|
180
|
-
const rpId = this.getRpId();
|
|
181
|
-
const publicKey = {
|
|
182
|
-
challenge: outputAs32Bytes(challenge),
|
|
183
|
-
rp: {
|
|
184
|
-
name: "WebAuthn VRF Passkey",
|
|
185
|
-
id: rpId
|
|
186
|
-
},
|
|
187
|
-
user: {
|
|
188
|
-
id: new TextEncoder().encode(generateDeviceSpecificUserId(nearAccountId, deviceNumber)),
|
|
189
|
-
name: generateDeviceSpecificUserId(nearAccountId, deviceNumber),
|
|
190
|
-
displayName: generateUserFriendlyDisplayName(nearAccountId, deviceNumber)
|
|
191
|
-
},
|
|
192
|
-
pubKeyCredParams: [{
|
|
193
|
-
alg: -7,
|
|
194
|
-
type: "public-key"
|
|
195
|
-
}, {
|
|
196
|
-
alg: -257,
|
|
197
|
-
type: "public-key"
|
|
198
|
-
}],
|
|
199
|
-
authenticatorSelection: {
|
|
200
|
-
residentKey: "required",
|
|
201
|
-
userVerification: "preferred"
|
|
202
|
-
},
|
|
203
|
-
timeout: 6e4,
|
|
204
|
-
attestation: "none",
|
|
205
|
-
extensions: { prf: { eval: {
|
|
206
|
-
first: generateChaCha20Salt(nearAccountId),
|
|
207
|
-
second: generateEd25519Salt(nearAccountId)
|
|
208
|
-
} } }
|
|
209
|
-
};
|
|
210
|
-
try {
|
|
211
|
-
const result = await executeWebAuthnWithParentFallbacksSafari("create", publicKey, {
|
|
212
|
-
rpId,
|
|
213
|
-
inIframe: TouchIdPrompt._inIframe(),
|
|
214
|
-
timeoutMs: publicKey.timeout,
|
|
215
|
-
abortSignal: this.abortController.signal
|
|
216
|
-
});
|
|
217
|
-
return result;
|
|
218
|
-
} finally {
|
|
219
|
-
this.removePageAbortHandlers?.();
|
|
220
|
-
this.removePageAbortHandlers = void 0;
|
|
221
|
-
this.removeExternalAbortListener?.();
|
|
222
|
-
this.removeExternalAbortListener = void 0;
|
|
223
|
-
this.abortController = void 0;
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
/**
|
|
227
|
-
* Internal method for getting WebAuthn authentication credentials with PRF output
|
|
228
|
-
* @param nearAccountId - NEAR account ID to authenticate
|
|
229
|
-
* @param challenge - VRF challenge bytes to use for WebAuthn authentication
|
|
230
|
-
* @param authenticators - List of stored authenticator data for the user
|
|
231
|
-
* @returns WebAuthn credential with PRF output (HKDF derivation done in WASM worker)
|
|
232
|
-
* ```ts
|
|
233
|
-
* const credential = await touchIdPrompt.getCredentials({
|
|
234
|
-
* nearAccountId,
|
|
235
|
-
* challenge,
|
|
236
|
-
* authenticators,
|
|
237
|
-
* });
|
|
238
|
-
* ```
|
|
239
|
-
*/
|
|
240
|
-
async getAuthenticationCredentialsInternal({ nearAccountId, challenge, allowCredentials }) {
|
|
241
|
-
this.abortController = new AbortController();
|
|
242
|
-
this.removePageAbortHandlers = TouchIdPrompt.attachPageAbortHandlers(this.abortController);
|
|
243
|
-
const rpId = this.getRpId();
|
|
244
|
-
const publicKey = {
|
|
245
|
-
challenge: outputAs32Bytes(challenge),
|
|
246
|
-
rpId,
|
|
247
|
-
allowCredentials: allowCredentials.map((credential) => ({
|
|
248
|
-
id: base64UrlDecode(credential.id),
|
|
249
|
-
type: "public-key",
|
|
250
|
-
transports: credential.transports
|
|
251
|
-
})),
|
|
252
|
-
userVerification: "preferred",
|
|
253
|
-
timeout: 6e4,
|
|
254
|
-
extensions: { prf: { eval: {
|
|
255
|
-
first: generateChaCha20Salt(nearAccountId),
|
|
256
|
-
second: generateEd25519Salt(nearAccountId)
|
|
257
|
-
} } }
|
|
258
|
-
};
|
|
259
|
-
try {
|
|
260
|
-
const result = await executeWebAuthnWithParentFallbacksSafari("get", publicKey, {
|
|
261
|
-
rpId,
|
|
262
|
-
inIframe: TouchIdPrompt._inIframe(),
|
|
263
|
-
timeoutMs: publicKey.timeout,
|
|
264
|
-
permitGetBridgeOnAncestorError: this.safariGetWebauthnRegistrationFallback,
|
|
265
|
-
abortSignal: this.abortController.signal
|
|
266
|
-
});
|
|
267
|
-
return result;
|
|
268
|
-
} finally {
|
|
269
|
-
this.removePageAbortHandlers?.();
|
|
270
|
-
this.removePageAbortHandlers = void 0;
|
|
271
|
-
this.removeExternalAbortListener?.();
|
|
272
|
-
this.removeExternalAbortListener = void 0;
|
|
273
|
-
this.abortController = void 0;
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
};
|
|
277
100
|
function isSerializedAuthenticationCredential(x) {
|
|
278
101
|
if (!x || typeof x !== "object") return false;
|
|
279
102
|
const obj = x;
|
|
@@ -311,28 +134,207 @@ function generateUserFriendlyDisplayName(nearAccountId, deviceNumber) {
|
|
|
311
134
|
if (deviceNumber === void 0 || deviceNumber === 1) return baseUsername;
|
|
312
135
|
return `${baseUsername} (device ${deviceNumber})`;
|
|
313
136
|
}
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
}
|
|
137
|
+
var TouchIdPrompt;
|
|
138
|
+
var init_touchIdPrompt = __esm({ "src/core/WebAuthnManager/touchIdPrompt.ts": (() => {
|
|
139
|
+
init_encoders();
|
|
140
|
+
init_vrf_worker();
|
|
141
|
+
init_credentialsHelpers();
|
|
142
|
+
init_WebAuthnFallbacks();
|
|
143
|
+
TouchIdPrompt = class TouchIdPrompt {
|
|
144
|
+
rpIdOverride;
|
|
145
|
+
safariGetWebauthnRegistrationFallback;
|
|
146
|
+
abortController;
|
|
147
|
+
removePageAbortHandlers;
|
|
148
|
+
removeExternalAbortListener;
|
|
149
|
+
constructor(rpIdOverride, safariGetWebauthnRegistrationFallback = false) {
|
|
150
|
+
this.rpIdOverride = rpIdOverride;
|
|
151
|
+
this.safariGetWebauthnRegistrationFallback = safariGetWebauthnRegistrationFallback === true;
|
|
152
|
+
}
|
|
153
|
+
getRpId() {
|
|
154
|
+
try {
|
|
155
|
+
return resolveRpId(this.rpIdOverride, window?.location?.hostname);
|
|
156
|
+
} catch {
|
|
157
|
+
return this.rpIdOverride || "";
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
static _inIframe() {
|
|
161
|
+
try {
|
|
162
|
+
return window.self !== window.top;
|
|
163
|
+
} catch {
|
|
164
|
+
return true;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Get authentication credentials
|
|
169
|
+
* @param nearAccountId - NEAR account ID to authenticate
|
|
170
|
+
* @param challenge - VRF challenge bytes
|
|
171
|
+
* @param allowCredentials - Array of allowed credentials for authentication
|
|
172
|
+
* @returns WebAuthn credential with only the first PRF output
|
|
173
|
+
*/
|
|
174
|
+
async getAuthenticationCredentialsSerialized({ nearAccountId, challenge, allowCredentials }) {
|
|
175
|
+
const credentialMaybe = await this.getAuthenticationCredentialsInternal({
|
|
176
|
+
nearAccountId,
|
|
177
|
+
challenge,
|
|
178
|
+
allowCredentials
|
|
179
|
+
});
|
|
180
|
+
if (isSerializedAuthenticationCredential(credentialMaybe)) return credentialMaybe;
|
|
181
|
+
return serializeAuthenticationCredentialWithPRF({
|
|
182
|
+
credential: credentialMaybe,
|
|
183
|
+
firstPrfOutput: true,
|
|
184
|
+
secondPrfOutput: false
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Same as getAuthenticationCredentialsSerialized but returns both PRF outputs
|
|
189
|
+
* (PRF.first + PRF.second).
|
|
190
|
+
* @param nearAccountId - NEAR account ID to authenticate
|
|
191
|
+
* @param challenge - VRF challenge bytes
|
|
192
|
+
* @param allowCredentials - Array of allowed credentials for authentication
|
|
193
|
+
* @returns
|
|
194
|
+
*/
|
|
195
|
+
async getAuthenticationCredentialsSerializedDualPrf({ nearAccountId, challenge, allowCredentials }) {
|
|
196
|
+
const credentialMaybe = await this.getAuthenticationCredentialsInternal({
|
|
197
|
+
nearAccountId,
|
|
198
|
+
challenge,
|
|
199
|
+
allowCredentials
|
|
200
|
+
});
|
|
201
|
+
if (isSerializedAuthenticationCredential(credentialMaybe)) return credentialMaybe;
|
|
202
|
+
return serializeAuthenticationCredentialWithPRF({
|
|
203
|
+
credential: credentialMaybe,
|
|
204
|
+
firstPrfOutput: true,
|
|
205
|
+
secondPrfOutput: true
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Internal method for generating WebAuthn registration credentials with PRF output
|
|
210
|
+
* @param nearAccountId - NEAR account ID for PRF salts and keypair derivation (always base account)
|
|
211
|
+
* @param challenge - Random challenge bytes for the registration ceremony
|
|
212
|
+
* @param deviceNumber - Device number for device-specific user ID.
|
|
213
|
+
* @returns Credential with PRF output
|
|
214
|
+
*/
|
|
215
|
+
async generateRegistrationCredentialsInternal({ nearAccountId, challenge, deviceNumber }) {
|
|
216
|
+
this.abortController = new AbortController();
|
|
217
|
+
this.removePageAbortHandlers = TouchIdPrompt.attachPageAbortHandlers(this.abortController);
|
|
218
|
+
const rpId = this.getRpId();
|
|
219
|
+
const publicKey = {
|
|
220
|
+
challenge: outputAs32Bytes(challenge),
|
|
221
|
+
rp: {
|
|
222
|
+
name: "WebAuthn VRF Passkey",
|
|
223
|
+
id: rpId
|
|
224
|
+
},
|
|
225
|
+
user: {
|
|
226
|
+
id: new TextEncoder().encode(generateDeviceSpecificUserId(nearAccountId, deviceNumber)),
|
|
227
|
+
name: generateDeviceSpecificUserId(nearAccountId, deviceNumber),
|
|
228
|
+
displayName: generateUserFriendlyDisplayName(nearAccountId, deviceNumber)
|
|
229
|
+
},
|
|
230
|
+
pubKeyCredParams: [{
|
|
231
|
+
alg: -7,
|
|
232
|
+
type: "public-key"
|
|
233
|
+
}, {
|
|
234
|
+
alg: -257,
|
|
235
|
+
type: "public-key"
|
|
236
|
+
}],
|
|
237
|
+
authenticatorSelection: {
|
|
238
|
+
residentKey: "required",
|
|
239
|
+
userVerification: "preferred"
|
|
240
|
+
},
|
|
241
|
+
timeout: 6e4,
|
|
242
|
+
attestation: "none",
|
|
243
|
+
extensions: { prf: { eval: {
|
|
244
|
+
first: generateChaCha20Salt(nearAccountId),
|
|
245
|
+
second: generateEd25519Salt(nearAccountId)
|
|
246
|
+
} } }
|
|
247
|
+
};
|
|
248
|
+
try {
|
|
249
|
+
const result = await executeWebAuthnWithParentFallbacksSafari("create", publicKey, {
|
|
250
|
+
rpId,
|
|
251
|
+
inIframe: TouchIdPrompt._inIframe(),
|
|
252
|
+
timeoutMs: publicKey.timeout,
|
|
253
|
+
abortSignal: this.abortController.signal
|
|
254
|
+
});
|
|
255
|
+
return result;
|
|
256
|
+
} finally {
|
|
257
|
+
this.removePageAbortHandlers?.();
|
|
258
|
+
this.removePageAbortHandlers = void 0;
|
|
259
|
+
this.removeExternalAbortListener?.();
|
|
260
|
+
this.removeExternalAbortListener = void 0;
|
|
261
|
+
this.abortController = void 0;
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Internal method for getting WebAuthn authentication credentials with PRF output
|
|
266
|
+
* @param nearAccountId - NEAR account ID to authenticate
|
|
267
|
+
* @param challenge - VRF challenge bytes to use for WebAuthn authentication
|
|
268
|
+
* @param authenticators - List of stored authenticator data for the user
|
|
269
|
+
* @returns WebAuthn credential with PRF output (HKDF derivation done in WASM worker)
|
|
270
|
+
* ```ts
|
|
271
|
+
* const credential = await touchIdPrompt.getCredentials({
|
|
272
|
+
* nearAccountId,
|
|
273
|
+
* challenge,
|
|
274
|
+
* authenticators,
|
|
275
|
+
* });
|
|
276
|
+
* ```
|
|
277
|
+
*/
|
|
278
|
+
async getAuthenticationCredentialsInternal({ nearAccountId, challenge, allowCredentials }) {
|
|
279
|
+
this.abortController = new AbortController();
|
|
280
|
+
this.removePageAbortHandlers = TouchIdPrompt.attachPageAbortHandlers(this.abortController);
|
|
281
|
+
const rpId = this.getRpId();
|
|
282
|
+
const publicKey = {
|
|
283
|
+
challenge: outputAs32Bytes(challenge),
|
|
284
|
+
rpId,
|
|
285
|
+
allowCredentials: allowCredentials.map((credential) => ({
|
|
286
|
+
id: base64UrlDecode(credential.id),
|
|
287
|
+
type: "public-key",
|
|
288
|
+
transports: credential.transports
|
|
289
|
+
})),
|
|
290
|
+
userVerification: "preferred",
|
|
291
|
+
timeout: 6e4,
|
|
292
|
+
extensions: { prf: { eval: {
|
|
293
|
+
first: generateChaCha20Salt(nearAccountId),
|
|
294
|
+
second: generateEd25519Salt(nearAccountId)
|
|
295
|
+
} } }
|
|
296
|
+
};
|
|
297
|
+
try {
|
|
298
|
+
const result = await executeWebAuthnWithParentFallbacksSafari("get", publicKey, {
|
|
299
|
+
rpId,
|
|
300
|
+
inIframe: TouchIdPrompt._inIframe(),
|
|
301
|
+
timeoutMs: publicKey.timeout,
|
|
302
|
+
permitGetBridgeOnAncestorError: this.safariGetWebauthnRegistrationFallback,
|
|
303
|
+
abortSignal: this.abortController.signal
|
|
304
|
+
});
|
|
305
|
+
return result;
|
|
306
|
+
} finally {
|
|
307
|
+
this.removePageAbortHandlers?.();
|
|
308
|
+
this.removePageAbortHandlers = void 0;
|
|
309
|
+
this.removeExternalAbortListener?.();
|
|
310
|
+
this.removeExternalAbortListener = void 0;
|
|
311
|
+
this.abortController = void 0;
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
};
|
|
315
|
+
(function(_TouchIdPrompt) {
|
|
316
|
+
function attachPageAbortHandlers(controller) {
|
|
317
|
+
const onVisibility = () => {
|
|
318
|
+
if (document.hidden) controller.abort();
|
|
319
|
+
};
|
|
320
|
+
const onPageHide = () => {
|
|
321
|
+
controller.abort();
|
|
322
|
+
};
|
|
323
|
+
const onBeforeUnload = () => {
|
|
324
|
+
controller.abort();
|
|
325
|
+
};
|
|
326
|
+
document.addEventListener("visibilitychange", onVisibility, { passive: true });
|
|
327
|
+
window.addEventListener("pagehide", onPageHide, { passive: true });
|
|
328
|
+
window.addEventListener("beforeunload", onBeforeUnload, { passive: true });
|
|
329
|
+
return () => {
|
|
330
|
+
document.removeEventListener("visibilitychange", onVisibility);
|
|
331
|
+
window.removeEventListener("pagehide", onPageHide);
|
|
332
|
+
window.removeEventListener("beforeunload", onBeforeUnload);
|
|
333
|
+
};
|
|
334
|
+
}
|
|
335
|
+
_TouchIdPrompt.attachPageAbortHandlers = attachPageAbortHandlers;
|
|
336
|
+
})(TouchIdPrompt || (TouchIdPrompt = {}));
|
|
337
|
+
}) });
|
|
336
338
|
|
|
337
339
|
//#endregion
|
|
338
340
|
//#region src/core/WebAuthnManager/VrfWorkerManager/confirmTxFlow/types.ts
|
|
@@ -440,4 +442,4 @@ function getRegisterAccountPayload(request) {
|
|
|
440
442
|
}
|
|
441
443
|
|
|
442
444
|
//#endregion
|
|
443
|
-
export { ERROR_MESSAGES, SecureConfirmMessageType, SecureConfirmationType, TouchIdPrompt, authenticatorsToAllowCredentials, createRandomVRFChallenge, getIntentDigest, getNearAccountId, getRegisterAccountPayload, getSignTransactionPayload, getTxCount, init_accountIds, isUserCancelledSecureConfirm, parseTransactionSummary, sanitizeForPostMessage, sendConfirmResponse, toAccountId, validateVRFChallenge };
|
|
445
|
+
export { ERROR_MESSAGES, SecureConfirmMessageType, SecureConfirmationType, TouchIdPrompt, authenticatorsToAllowCredentials, createRandomVRFChallenge, getIntentDigest, getNearAccountId, getRegisterAccountPayload, getSignTransactionPayload, getTxCount, init_accountIds, init_touchIdPrompt, init_vrf_worker, isUserCancelledSecureConfirm, parseTransactionSummary, sanitizeForPostMessage, sendConfirmResponse, toAccountId, validateVRFChallenge };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { extractBorshBytesFromPlainSignedTx, init_validation, isBoolean, isObject, isPlainSignedTransactionLike, stripFunctionsShallow } from "./validation-DtLVzHDY.js";
|
|
2
2
|
import "./base64-DBPGuXh4.js";
|
|
3
3
|
import { init_errors, toError } from "./errors-D9ar28Dr.js";
|
|
4
|
-
import { WebAuthnBridgeMessage, serializeAuthenticationCredentialWithPRF, serializeRegistrationCredentialWithPRF } from "./
|
|
5
|
-
import { SignedTransaction, openOfflineExportWindow } from "./overlay-
|
|
4
|
+
import { WebAuthnBridgeMessage, init_WebAuthnFallbacks, init_credentialsHelpers, serializeAuthenticationCredentialWithPRF, serializeRegistrationCredentialWithPRF } from "./WebAuthnFallbacks-Bl4BTsNt.js";
|
|
5
|
+
import { SignedTransaction, openOfflineExportWindow } from "./overlay-ZGbucXIa.js";
|
|
6
6
|
import { AccountRecoveryPhase, ActionPhase, DeviceLinkingPhase, EmailRecoveryPhase, LoginPhase, RegistrationPhase, init_sdkSentEvents } from "./sdkSentEvents-_jrJLIhw.js";
|
|
7
7
|
|
|
8
8
|
//#region src/core/WalletIframe/client/on-events-progress-bus.ts
|
|
@@ -210,6 +210,7 @@ const defaultPhaseHeuristics = (payload) => {
|
|
|
210
210
|
|
|
211
211
|
//#endregion
|
|
212
212
|
//#region src/core/WalletIframe/client/overlay-styles.ts
|
|
213
|
+
init_credentialsHelpers();
|
|
213
214
|
init_validation();
|
|
214
215
|
const CLASS_BASE = "w3a-wallet-overlay";
|
|
215
216
|
const CLASS_HIDDEN = "is-hidden";
|
|
@@ -332,6 +333,7 @@ function setAnchored(el, rect) {
|
|
|
332
333
|
|
|
333
334
|
//#endregion
|
|
334
335
|
//#region src/core/WalletIframe/client/IframeTransport.ts
|
|
336
|
+
init_WebAuthnFallbacks();
|
|
335
337
|
const IframeMessage = {
|
|
336
338
|
Connect: "CONNECT",
|
|
337
339
|
Ready: "READY",
|
|
@@ -1398,7 +1400,7 @@ var WalletIframeRouter = class {
|
|
|
1398
1400
|
recoveryEmail: payload.recoveryEmail,
|
|
1399
1401
|
options: safeOptions && Object.keys(safeOptions).length > 0 ? safeOptions : void 0
|
|
1400
1402
|
},
|
|
1401
|
-
options: { onProgress: payload.onEvent }
|
|
1403
|
+
options: { onProgress: this.wrapOnEvent(payload.onEvent, isEmailRecoverySSEEvent) }
|
|
1402
1404
|
});
|
|
1403
1405
|
return res.result;
|
|
1404
1406
|
}
|
|
@@ -1409,7 +1411,16 @@ var WalletIframeRouter = class {
|
|
|
1409
1411
|
accountId: payload.accountId,
|
|
1410
1412
|
nearPublicKey: payload.nearPublicKey
|
|
1411
1413
|
},
|
|
1412
|
-
options: { onProgress: payload.onEvent }
|
|
1414
|
+
options: { onProgress: this.wrapOnEvent(payload.onEvent, isEmailRecoverySSEEvent) }
|
|
1415
|
+
});
|
|
1416
|
+
}
|
|
1417
|
+
async stopEmailRecovery(payload) {
|
|
1418
|
+
await this.post({
|
|
1419
|
+
type: "PM_STOP_EMAIL_RECOVERY",
|
|
1420
|
+
payload: {
|
|
1421
|
+
accountId: payload?.accountId,
|
|
1422
|
+
nearPublicKey: payload?.nearPublicKey
|
|
1423
|
+
}
|
|
1413
1424
|
});
|
|
1414
1425
|
}
|
|
1415
1426
|
async linkDeviceWithScannedQRData(payload) {
|
|
@@ -1740,6 +1751,7 @@ const LOGIN_PHASES = new Set(Object.values(LoginPhase));
|
|
|
1740
1751
|
const ACTION_PHASES = new Set(Object.values(ActionPhase));
|
|
1741
1752
|
const DEVICE_LINKING_PHASES = new Set(Object.values(DeviceLinkingPhase));
|
|
1742
1753
|
const ACCOUNT_RECOVERY_PHASES = new Set(Object.values(AccountRecoveryPhase));
|
|
1754
|
+
const EMAIL_RECOVERY_PHASES = new Set(Object.values(EmailRecoveryPhase));
|
|
1743
1755
|
function phaseOf(progress) {
|
|
1744
1756
|
return String(progress?.phase ?? "");
|
|
1745
1757
|
}
|
|
@@ -1758,6 +1770,9 @@ function isDeviceLinkingSSEEvent(p) {
|
|
|
1758
1770
|
function isAccountRecoverySSEEvent(p) {
|
|
1759
1771
|
return ACCOUNT_RECOVERY_PHASES.has(phaseOf(p));
|
|
1760
1772
|
}
|
|
1773
|
+
function isEmailRecoverySSEEvent(p) {
|
|
1774
|
+
return EMAIL_RECOVERY_PHASES.has(phaseOf(p));
|
|
1775
|
+
}
|
|
1761
1776
|
/**
|
|
1762
1777
|
* Strips out class functions as they cannot be sent over postMessage to iframe
|
|
1763
1778
|
*/
|
|
@@ -3,8 +3,8 @@ import "./base64-DBPGuXh4.js";
|
|
|
3
3
|
import "./actions-O1FD5Bq8.js";
|
|
4
4
|
import "./errors-D9ar28Dr.js";
|
|
5
5
|
import "./sdkSentEvents-_jrJLIhw.js";
|
|
6
|
-
import "./defaultConfigs-
|
|
7
|
-
import { buildSetRecoveryEmailsActions, checkCanRegisterUserContractCall, executeDeviceLinkingContractCalls, getAuthenticatorsByUser, getCredentialIdsContractCall, getDeviceLinkingAccountContractCall, getRecoveryEmailHashesContractCall, init_rpcCalls, syncAuthenticatorsContractCall, verifyAuthenticationResponse } from "./rpcCalls-
|
|
6
|
+
import "./defaultConfigs-DpslkAQd.js";
|
|
7
|
+
import { buildSetRecoveryEmailsActions, checkCanRegisterUserContractCall, executeDeviceLinkingContractCalls, getAuthenticatorsByUser, getCredentialIdsContractCall, getDeviceLinkingAccountContractCall, getEmailRecoveryVerificationResult, getRecoveryEmailHashesContractCall, init_rpcCalls, syncAuthenticatorsContractCall, verifyAuthenticationResponse } from "./rpcCalls-YVeUVMk2.js";
|
|
8
8
|
|
|
9
9
|
init_rpcCalls();
|
|
10
|
-
export { syncAuthenticatorsContractCall };
|
|
10
|
+
export { getEmailRecoveryVerificationResult, syncAuthenticatorsContractCall };
|
|
@@ -3,9 +3,16 @@ import { base64UrlDecode, base64UrlEncode } from "./base64-DBPGuXh4.js";
|
|
|
3
3
|
import { ActionType, init_actions } from "./actions-O1FD5Bq8.js";
|
|
4
4
|
import { errorMessage, init_encoders, init_errors } from "./errors-D9ar28Dr.js";
|
|
5
5
|
import { ActionPhase, DEFAULT_WAIT_STATUS, DeviceLinkingPhase, DeviceLinkingStatus, init_rpc, init_sdkSentEvents } from "./sdkSentEvents-_jrJLIhw.js";
|
|
6
|
-
import { DEFAULT_EMAIL_RECOVERY_CONTRACTS, init_defaultConfigs } from "./defaultConfigs-
|
|
6
|
+
import { DEFAULT_EMAIL_RECOVERY_CONTRACTS, init_defaultConfigs } from "./defaultConfigs-DpslkAQd.js";
|
|
7
7
|
|
|
8
8
|
//#region src/core/rpcCalls.ts
|
|
9
|
+
async function getEmailRecoveryVerificationResult(nearClient, dkimVerifierAccountId, verificationViewMethod, requestId) {
|
|
10
|
+
return await nearClient.view({
|
|
11
|
+
account: dkimVerifierAccountId,
|
|
12
|
+
method: verificationViewMethod,
|
|
13
|
+
args: { request_id: requestId }
|
|
14
|
+
});
|
|
15
|
+
}
|
|
9
16
|
/**
|
|
10
17
|
* Query the contract to get the account linked to a device public key
|
|
11
18
|
* Used in device linking flow to check if a device key has been added
|
|
@@ -387,4 +394,4 @@ var init_rpcCalls = __esm({ "src/core/rpcCalls.ts": (() => {
|
|
|
387
394
|
}) });
|
|
388
395
|
|
|
389
396
|
//#endregion
|
|
390
|
-
export { buildSetRecoveryEmailsActions, checkCanRegisterUserContractCall, executeDeviceLinkingContractCalls, getAuthenticatorsByUser, getCredentialIdsContractCall, getDeviceLinkingAccountContractCall, getRecoveryEmailHashesContractCall, init_rpcCalls, syncAuthenticatorsContractCall, verifyAuthenticationResponse };
|
|
397
|
+
export { buildSetRecoveryEmailsActions, checkCanRegisterUserContractCall, executeDeviceLinkingContractCalls, getAuthenticatorsByUser, getCredentialIdsContractCall, getDeviceLinkingAccountContractCall, getEmailRecoveryVerificationResult, getRecoveryEmailHashesContractCall, init_rpcCalls, syncAuthenticatorsContractCall, verifyAuthenticationResponse };
|