@seams/wallet 0.23.0 → 0.24.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/README.md +19 -2
- package/THIRD_PARTY_NOTICES.md +182 -5
- package/dist/.build-inputs.sha256 +1 -1
- package/dist/esm/SeamsWeb/operations/recovery/walletRecoveryCommit.js +1 -0
- package/dist/esm/SeamsWeb/publicApi/createPublicApi.js +3 -0
- package/dist/esm/SeamsWeb/walletIframe/client/authMenuAnchor.js +44 -0
- package/dist/esm/SeamsWeb/walletIframe/client/overlay/overlay-styles.js +4 -6
- package/dist/esm/SeamsWeb/walletIframe/client/registrationCommands.js +12 -0
- package/dist/esm/SeamsWeb/walletIframe/client/router.js +67 -31
- package/dist/esm/SeamsWeb/walletIframe/client/sessionCommands.js +4 -0
- package/dist/esm/SeamsWeb/walletIframe/client/surface/geometry.js +2 -2
- package/dist/esm/SeamsWeb/walletIframe/client/transport/iframe-transport-dom.js +2 -2
- package/dist/esm/SeamsWeb/walletIframe/host/auth-menu/domain.js +22 -3
- package/dist/esm/SeamsWeb/walletIframe/host/surface-measurement-reporter.js +6 -2
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuFooter.js +1 -3
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.js +81 -19
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/icons.js +1 -4
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/presentation.js +7 -11
- package/dist/esm/SeamsWeb/walletIframe/host/walletMutationGuard.js +86 -0
- package/dist/esm/SeamsWeb/walletIframe/shared/configuration.js +23 -1
- package/dist/esm/SeamsWeb/walletIframe/shared/exactSessionState.js +1 -0
- package/dist/esm/SeamsWeb/walletIframe/shared/messages.js +7 -1
- package/dist/esm/SeamsWeb/walletIframe/shared/transactionReview.js +20 -1
- package/dist/esm/core/authMethods/availability.js +28 -0
- package/dist/esm/core/authMethods/availabilityTypes.js +29 -0
- package/dist/esm/core/authMethods/plugins.js +17 -0
- package/dist/esm/core/config/configBuilder.js +2 -0
- package/dist/esm/core/config/defaultConfigs.js +1 -0
- package/dist/esm/core/indexedDB/seamsWalletDB/repositories.js +41 -2
- package/dist/esm/core/indexedDB/unifiedIndexedDBManager.js +3 -0
- package/dist/esm/core/rpcClients/relayer/routerAbNormalSigning.js +1 -1
- package/dist/esm/core/rpcClients/relayer/walletSessionAuthorizationStatus.js +1 -1
- package/dist/esm/core/signingEngine/flows/signEvmFamily/authPlanning.js +2 -1
- package/dist/esm/core/signingEngine/flows/signEvmFamily/ecdsaSelection.js +29 -12
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signEvmFamily.js +1 -0
- package/dist/esm/core/signingEngine/flows/signEvmFamily/signingFlowRuntime.js +2 -1
- package/dist/esm/core/signingEngine/flows/signNear/requireNearStepUpAuth.js +1 -0
- package/dist/esm/core/signingEngine/flows/signNear/shared/ed25519YaoNormalSigning.js +1 -1
- package/dist/esm/core/signingEngine/flows/signNear/shared/signingSessionAuthMode.js +5 -0
- package/dist/esm/core/signingEngine/flows/signNear/signNear.js +16 -12
- package/dist/esm/core/signingEngine/session/availability/availableSigningLanes.js +2 -3
- package/dist/esm/core/signingEngine/session/identity/exactSigningLaneIdentity.js +16 -1
- package/dist/esm/core/signingEngine/session/identity/signingLaneAuthBinding.js +6 -0
- package/dist/esm/core/signingEngine/session/material/ecdsaSigningCapability.js +3 -0
- package/dist/esm/core/signingEngine/session/operationState/lanes.js +21 -4
- package/dist/esm/core/signingEngine/session/passkey/ed25519YaoRecoveryCapability.js +94 -0
- package/dist/esm/core/signingEngine/stepUpConfirmation/methodSelection.js +1 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/confirm-surface-resize.js +19 -2
- package/dist/esm/core/signingEngine/uiConfirm/ui/confirmation-model.js +3 -1
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmContent.js +6 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.js +59 -23
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.js +13 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReview.js +48 -16
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +146 -9
- package/dist/esm/core/signingEngine/walletCustody/ceremonyStepRunner.js +8 -0
- package/dist/esm/core/signingEngine/walletCustody/resealedEnvelopeResult.js +24 -0
- package/dist/esm/core/signingEngine/walletCustody/unlockedEd25519ExportRootCapability.js +74 -0
- package/dist/esm/core/signingEngine/workerManager/workerDeferred.js +25 -0
- package/dist/esm/core/ui/messages.js +15 -4
- package/dist/esm/externalNear/controller.js +36 -0
- package/dist/esm/externalNear/hot.js +1 -0
- package/dist/esm/externalNear/intear.js +1 -0
- package/dist/esm/externalNear/message.js +60 -0
- package/dist/esm/externalNear/meteor.js +12 -0
- package/dist/esm/react/components/AccountMenuButton/AccountMenuButtonView.js +10 -22
- package/dist/esm/react/components/AccountMenuButton/AccountMenuDeviceDetails.js +2 -2
- package/dist/esm/react/components/AccountMenuButton/AccountMenuMockScreens.js +7 -4
- package/dist/esm/react/components/AccountMenuButton/AddEvmAccount.js +124 -0
- package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodRow.js +41 -23
- package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodsModal.js +220 -164
- package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodsView.js +7 -5
- package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.css +142 -36
- package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.js +11 -2
- package/dist/esm/react/components/AccountMenuButton/TransactionSettingsSection.css +12 -10
- package/dist/esm/react/components/AccountMenuButton/TransactionSettingsSection.js +1 -1
- package/dist/esm/react/components/AccountMenuButton/VoiceIdAvailabilityControl.js +186 -0
- package/dist/esm/react/components/AccountMenuButton/Web3AuthProfileButton.css +10 -8
- package/dist/esm/react/components/AccountMenuButton/icons/ChevronRightIcon.js +8 -0
- package/dist/esm/react/components/AccountMenuButton/icons/WalletIcon.js +8 -0
- package/dist/esm/react/components/AccountMenuButton/index.js +35 -13
- package/dist/esm/react/components/HostedSeamsAuthMenu/shell.js +8 -4
- package/dist/esm/react/context/useLoginStateRefresher.js +10 -2
- package/dist/esm/react/index.js +2 -4
- package/dist/esm/react/styles/styles.css +22 -332
- package/dist/esm/react/styles.css +0 -1
- package/dist/esm/sdk/ConfirmationDrawer-CTaGM1AE.js +1 -0
- package/dist/esm/sdk/{NonceCoordinator-Do23iTzQ.js → NonceCoordinator-Bti1HQPo.js} +1 -1
- package/dist/esm/sdk/SeamsWordmark-CFpsGoLw.js +1 -0
- package/dist/esm/sdk/{accountLifecycle-CXTlwnAS.js → accountLifecycle-B98g9zN9.js} +1 -1
- package/dist/esm/sdk/actions-GYsSR2Q2.js +1 -0
- package/dist/esm/sdk/activeWalletSession-H9JBdHyQ.js +1 -0
- package/dist/esm/sdk/adapters-D5MZ5NG5.js +2 -0
- package/dist/esm/sdk/appearance-token-vars-CgYTfCKg.js +1 -0
- package/dist/esm/sdk/{canonicalPrimitives-D_1HyEuJ.js → canonicalPrimitives-B6YMrI3W.js} +1 -1
- package/dist/esm/sdk/{capabilityKinds-CqHVzVsJ.js → capabilityKinds-BzrNeEyO.js} +1 -1
- package/dist/esm/sdk/{chains-CPmd4s9f.js → chains-gV2K9gA4.js} +1 -1
- package/dist/esm/sdk/{challengeDelivery-C88JNwKf.js → challengeDelivery-FW9gYyr0.js} +1 -1
- package/dist/esm/sdk/clientSessionPersistenceState-BPYK9PYV.js +1 -0
- package/dist/esm/sdk/{collectAuthenticationCredentialForChallengeB64u-CSwy9csE.js → collectAuthenticationCredentialForChallengeB64u-kLIxmw3V.js} +1 -1
- package/dist/esm/sdk/{commitQueue-BQPOhyGl.js → commitQueue-Bs23Rs57.js} +1 -1
- package/dist/esm/sdk/configBuilder-DrxXNUpV.js +1 -0
- package/dist/esm/sdk/{configHelpers-D50F_Txb.js → configHelpers-BNqoU2cv.js} +1 -1
- package/dist/esm/sdk/configuration-CAqANpTI.js +1 -0
- package/dist/esm/sdk/csp-stylesheet-DeuiM0Mo.js +2 -0
- package/dist/esm/sdk/{display-Dtugjeya.js → display-BXjW58UF.js} +1 -1
- package/dist/esm/sdk/domainIds-t1lp25yU.js +1 -0
- package/dist/esm/sdk/ecdsaCapabilityManifest--FjbES8k.js +1 -0
- package/dist/esm/sdk/{ecdsaChainTarget-svSlzhze.js → ecdsaChainTarget-DbLthshF.js} +1 -1
- package/dist/esm/sdk/{ecdsaDerivationClientWasm-D1HzwUgV.js → ecdsaDerivationClientWasm-7Rp4TmYE.js} +1 -1
- package/dist/esm/sdk/ecdsaDerivationExport-dInN7N6e.js +1 -0
- package/dist/esm/sdk/{ecdsaWalletRecords-BmhuJF1y.js → ecdsaWalletRecords-BgcXXCZy.js} +1 -1
- package/dist/esm/sdk/emailOtpEcdsaDerivationIdentity-CIh9IPai.js +1 -0
- package/dist/esm/sdk/{enrichDisplayModelWithAbi-D0o0IL7_.js → enrichDisplayModelWithAbi-CudPUW0T.js} +1 -1
- package/dist/esm/sdk/{evmCryptoWasm-S2gL5ht4.js → evmCryptoWasm-DacbCVNM.js} +1 -1
- package/dist/esm/sdk/{export-viewer-host-C9n-62Pi.js → export-viewer-host-DsWOvc0t.js} +1 -1
- package/dist/esm/sdk/exportKeypairOperation-BazJvSov.js +1 -0
- package/dist/esm/sdk/{helpers-BXezXx19.js → helpers-CXqXyyCU.js} +1 -1
- package/dist/esm/sdk/host-C0Is56lU.js +1 -0
- package/dist/esm/sdk/icons-DyndJzSh.js +1 -0
- package/dist/esm/sdk/indexedDB-C1odKEC6.js +1 -0
- package/dist/esm/sdk/intentDigest-BMXki7yB.js +1 -0
- package/dist/esm/sdk/{keyMaterialEnvelope-B3v6HLtz.js → keyMaterialEnvelope-B-Q5KTJC.js} +1 -1
- package/dist/esm/sdk/lanes-C7OvAK_L.js +1 -0
- package/dist/esm/sdk/localOnly-BB3Rx3J6.js +1 -0
- package/dist/esm/sdk/mountExportPrivateKeySurface-CV1KrFWg.js +1 -0
- package/dist/esm/sdk/{mountRecoveryCodeBackupSurface-D3QFgMGE.js → mountRecoveryCodeBackupSurface-CVXU1zzl.js} +2 -2
- package/dist/esm/sdk/nearEd25519YaoMaterialActivation-D9cdMKIZ.js +1 -0
- package/dist/esm/sdk/nearEd25519YaoSigningPreparation-D_Jvj7ht.js +1 -0
- package/dist/esm/sdk/{nonceLaneKeys-CR2XEvnk.js → nonceLaneKeys-BS4fek17.js} +1 -1
- package/dist/esm/sdk/{normalization-Ctkj80dW.js → normalization-BN-2VWZf.js} +1 -1
- package/dist/esm/sdk/{operationFingerprint-DRPONhBD.js → operationFingerprint-Bn0lUYlm.js} +1 -1
- package/dist/esm/sdk/pendingWalletRecoveryCodeBackup-lr1oISjL.js +1 -0
- package/dist/esm/sdk/presignaturePool-CultzkOG.js +1 -0
- package/dist/esm/sdk/{presignatures-DGLNs29C.js → presignatures-B9GrGx0L.js} +1 -1
- package/dist/esm/sdk/recovery-entrypoint-QBvJBngm.js +1 -0
- package/dist/esm/sdk/{recoveryAuthorization-BplZWc-N.js → recoveryAuthorization-DB-zxeHq.js} +1 -1
- package/dist/esm/sdk/registration-CM5a7WYO.js +1 -0
- package/dist/esm/sdk/registration-Hv0xi7-L.js +1 -0
- package/dist/esm/sdk/{registrationAccounts-BfO6Ztye.js → registrationAccounts-BHikxS5q.js} +1 -1
- package/dist/esm/sdk/{registrationAuthMethodInput-DKz6Mgg4.js → registrationAuthMethodInput-BvbWl0y_.js} +1 -1
- package/dist/esm/sdk/registrationIntent-DTs2SR9E.js +1 -0
- package/dist/esm/sdk/{registrationSignerPlan-B66FjqIp.js → registrationSignerPlan-CgbFVsAp.js} +1 -1
- package/dist/esm/sdk/{requireStepUpAuth-DsNLml1i.js → requireStepUpAuth-B7tC4MrA.js} +1 -1
- package/dist/esm/sdk/resealedEnvelopeResult--iCVt_Bh.js +1 -0
- package/dist/esm/sdk/routerAbNormalSigning-Div3lZWV.js +1 -0
- package/dist/esm/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/esm/sdk/runtime-auth-CVw1KoVD.js +1 -0
- package/dist/esm/sdk/runtime-device-link-Dp0YMZTQ.js +1 -0
- package/dist/esm/sdk/runtime-ecdsa-tempo-DEIjIgEO.js +1 -0
- package/dist/esm/sdk/runtime-email-otp-gsr_FsQn.js +1 -0
- package/dist/esm/sdk/runtime-export-upMPrZ4V.js +1 -0
- package/dist/esm/sdk/runtime-near-B64Hn3nc.js +1 -0
- package/dist/esm/sdk/runtime-preferences-CULdHkbg.js +1 -0
- package/dist/esm/sdk/runtime-recovery-D2saBaJy.js +1 -0
- package/dist/esm/sdk/runtime-recovery-codes-Bvc0IXMJ.js +1 -0
- package/dist/esm/sdk/runtimeContext-CNFJjcns.js +6 -0
- package/dist/{public/sdk/sdkSentEvents-BzMVO1AR.js → esm/sdk/sdkSentEvents-DUht3AOD.js} +1 -1
- package/dist/{public/sdk/secp256k1-CYu8ENjP.js → esm/sdk/secp256k1-BGVlx50C.js} +1 -1
- package/dist/esm/sdk/sessionObservationRevision-84ZzJ-fC.js +1 -0
- package/dist/esm/sdk/shared-DcHtE-D-.js +1 -0
- package/dist/esm/sdk/signEvmFamily-PjwUc5MT.js +1 -0
- package/dist/{public/sdk/signEvmFamilyWithUiConfirmForTempo-4A3D9nKv.js → esm/sdk/signEvmFamilyWithUiConfirmForTempo-BMfC2sc2.js} +1 -1
- package/dist/esm/sdk/{signEvmWithUiConfirm-lZyPfrGe.js → signEvmWithUiConfirm-BNkupz3z.js} +1 -1
- package/dist/esm/sdk/signNear-r8VCOoTh.js +1 -0
- package/dist/esm/sdk/{signatureUses-CY4U-X6V.js → signatureUses-DrqCoN12.js} +1 -1
- package/dist/esm/sdk/signerDomain-D-EUTlLK.js +1 -0
- package/dist/esm/sdk/{signerSlot-CpyIfl3J.js → signerSlot-D4ZOuK7e.js} +1 -1
- package/dist/{public/sdk/signingFlow-Co_QtuHK.js → esm/sdk/signingFlow-BVvteILM.js} +1 -1
- package/dist/{public/sdk/signingQueue-Cj9sCJLj.js → esm/sdk/signingQueue-BJzOrwDq.js} +1 -1
- package/dist/esm/sdk/surface-measurement-reporter-NUm_54LH.js +1 -0
- package/dist/{public/sdk/thresholdEcdsa-LvkD6z8-.js → esm/sdk/thresholdEcdsa-tnY83qyG.js} +1 -1
- package/dist/esm/sdk/{trace-CWTzEALZ.js → trace-CGNqO1FV.js} +1 -1
- package/dist/esm/sdk/{transaction-activity-CpDMkSPm.js → transaction-activity-DPq9RTh5.js} +1 -1
- package/dist/esm/sdk/transactionReview-DSGnpreN.js +1 -0
- package/dist/esm/sdk/transactionReviewAdmission--8tDis7M.js +1 -0
- package/dist/{public/sdk/transactionState-BaFSiA9t.js → esm/sdk/transactionState-BS1VLT7B.js} +1 -1
- package/dist/esm/sdk/tx-confirm-ui.js +418 -109
- package/dist/esm/sdk/types-DdzuHlAQ.js +1 -0
- package/dist/esm/sdk/unlockedEd25519ExportRootCapability-D43rvO9a.js +1 -0
- package/dist/esm/sdk/voiceid-host.js +1 -0
- package/dist/esm/sdk/wallet-iframe-host-ecdsa.js +1 -1
- package/dist/esm/sdk/wallet-iframe-host-full.js +1 -1
- package/dist/esm/sdk/wallet-iframe-host-near.js +1 -1
- package/dist/esm/sdk/wallet-iframe-host-runtime.js +1 -1
- package/dist/esm/sdk/wallet-recovery-BjIQdOha.js +1 -0
- package/dist/esm/sdk/wallet-ui.css +1 -1
- package/dist/esm/sdk/walletAuthMethodRecord-yIqCeE-o.js +1 -0
- package/dist/esm/sdk/walletCapabilityBindings-CUPk3mVH.js +1 -0
- package/dist/esm/sdk/walletCustodyEcdsaContinuity-DlOBCmwb.js +1 -0
- package/dist/esm/sdk/walletCustodyOperation-DzPcxEBS.js +1 -0
- package/dist/esm/sdk/walletDbName-DDJXrgA5.js +1 -0
- package/dist/esm/sdk/walletOwnershipGeneration-DI9ogcXF.js +1 -0
- package/dist/esm/sdk/walletRecoveryAdminProof-BJxmg3f7.js +1 -0
- package/dist/esm/sdk/walletRecoveryCommit-B7WsdR7y.js +1 -0
- package/dist/esm/sdk/walletRegistrationSetupPrewarm-CEJCj78c.js +1 -0
- package/dist/esm/sdk/walletSessionAuthorizationStatus-98G3Qji8.js +1 -0
- package/dist/{public/sdk/walletSessionAuthorizationStore-DYRMCkiT.js → esm/sdk/walletSessionAuthorizationStore-zkxcMdSp.js} +1 -1
- package/dist/esm/sdk/warmSessionHydration-DqZyfi1h.js +1 -0
- package/dist/esm/sdk/{webauthnP256-unqBoZCk.js → webauthnP256-BvTL8nq4.js} +1 -1
- package/dist/esm/shared-ts/src/authorization/capabilityKinds.js +4 -1
- package/dist/esm/shared-ts/src/authorization/delegatedAuthority.js +11 -2
- package/dist/esm/shared-ts/src/authorization/voiceIdDeviceAssertion.js +110 -0
- package/dist/esm/shared-ts/src/device-linking/authorityActivation.js +1 -0
- package/dist/esm/shared-ts/src/device-linking/committedSignerPackages.js +1 -0
- package/dist/esm/shared-ts/src/device-linking/deviceManagement.js +17 -9
- package/dist/esm/shared-ts/src/passkey-custody/custodyEnvelope.js +62 -3
- package/dist/esm/shared-ts/src/passkey-custody/custodySecretBinding.js +1 -1
- package/dist/esm/shared-ts/src/utils/canonicalPrimitives.js +5 -2
- package/dist/esm/shared-ts/src/utils/domainIds.js +14 -1
- package/dist/esm/shared-ts/src/utils/signerDomain.js +4 -2
- package/dist/esm/shared-ts/src/utils/validation.js +4 -1
- package/dist/esm/shared-ts/src/utils/walletAuthAuthority.js +46 -2
- package/dist/esm/shared-ts/src/utils/walletAuthMethodRecord.js +116 -6
- package/dist/esm/shared-ts/src/utils/walletCapabilityBindings.js +39 -1
- package/dist/esm/voiceid-host.js +47 -0
- package/dist/esm/wasm/near_signer/pkg/wasm_signer_worker_bg.wasm +0 -0
- package/dist/esm/wasm/router_ab_ed25519_yao_client/pkg/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/public/headers.manifest.json +1 -1
- package/dist/public/sdk/ConfirmationDrawer-CTaGM1AE.js +1 -0
- package/dist/public/sdk/{NonceCoordinator-Do23iTzQ.js → NonceCoordinator-Bti1HQPo.js} +1 -1
- package/dist/public/sdk/SeamsWordmark-CFpsGoLw.js +1 -0
- package/dist/public/sdk/{accountLifecycle-CXTlwnAS.js → accountLifecycle-B98g9zN9.js} +1 -1
- package/dist/public/sdk/actions-GYsSR2Q2.js +1 -0
- package/dist/public/sdk/activeWalletSession-H9JBdHyQ.js +1 -0
- package/dist/public/sdk/adapters-D5MZ5NG5.js +2 -0
- package/dist/public/sdk/appearance-token-vars-CgYTfCKg.js +1 -0
- package/dist/public/sdk/{canonicalPrimitives-D_1HyEuJ.js → canonicalPrimitives-B6YMrI3W.js} +1 -1
- package/dist/public/sdk/{capabilityKinds-CqHVzVsJ.js → capabilityKinds-BzrNeEyO.js} +1 -1
- package/dist/public/sdk/{chains-CPmd4s9f.js → chains-gV2K9gA4.js} +1 -1
- package/dist/public/sdk/{challengeDelivery-C88JNwKf.js → challengeDelivery-FW9gYyr0.js} +1 -1
- package/dist/public/sdk/clientSessionPersistenceState-BPYK9PYV.js +1 -0
- package/dist/public/sdk/{collectAuthenticationCredentialForChallengeB64u-CSwy9csE.js → collectAuthenticationCredentialForChallengeB64u-kLIxmw3V.js} +1 -1
- package/dist/public/sdk/{commitQueue-BQPOhyGl.js → commitQueue-Bs23Rs57.js} +1 -1
- package/dist/public/sdk/configBuilder-DrxXNUpV.js +1 -0
- package/dist/public/sdk/{configHelpers-D50F_Txb.js → configHelpers-BNqoU2cv.js} +1 -1
- package/dist/public/sdk/configuration-CAqANpTI.js +1 -0
- package/dist/public/sdk/csp-stylesheet-DeuiM0Mo.js +2 -0
- package/dist/public/sdk/{display-Dtugjeya.js → display-BXjW58UF.js} +1 -1
- package/dist/public/sdk/domainIds-t1lp25yU.js +1 -0
- package/dist/public/sdk/ecdsaCapabilityManifest--FjbES8k.js +1 -0
- package/dist/public/sdk/{ecdsaChainTarget-svSlzhze.js → ecdsaChainTarget-DbLthshF.js} +1 -1
- package/dist/public/sdk/{ecdsaDerivationClientWasm-D1HzwUgV.js → ecdsaDerivationClientWasm-7Rp4TmYE.js} +1 -1
- package/dist/public/sdk/ecdsaDerivationExport-dInN7N6e.js +1 -0
- package/dist/public/sdk/{ecdsaWalletRecords-BmhuJF1y.js → ecdsaWalletRecords-BgcXXCZy.js} +1 -1
- package/dist/public/sdk/emailOtpEcdsaDerivationIdentity-CIh9IPai.js +1 -0
- package/dist/public/sdk/{enrichDisplayModelWithAbi-D0o0IL7_.js → enrichDisplayModelWithAbi-CudPUW0T.js} +1 -1
- package/dist/public/sdk/{evmCryptoWasm-S2gL5ht4.js → evmCryptoWasm-DacbCVNM.js} +1 -1
- package/dist/public/sdk/{export-viewer-host-C9n-62Pi.js → export-viewer-host-DsWOvc0t.js} +1 -1
- package/dist/public/sdk/exportKeypairOperation-BazJvSov.js +1 -0
- package/dist/public/sdk/{helpers-BXezXx19.js → helpers-CXqXyyCU.js} +1 -1
- package/dist/public/sdk/host-C0Is56lU.js +1 -0
- package/dist/public/sdk/icons-DyndJzSh.js +1 -0
- package/dist/public/sdk/indexedDB-C1odKEC6.js +1 -0
- package/dist/public/sdk/intentDigest-BMXki7yB.js +1 -0
- package/dist/public/sdk/{keyMaterialEnvelope-B3v6HLtz.js → keyMaterialEnvelope-B-Q5KTJC.js} +1 -1
- package/dist/public/sdk/lanes-C7OvAK_L.js +1 -0
- package/dist/public/sdk/localOnly-BB3Rx3J6.js +1 -0
- package/dist/public/sdk/mountExportPrivateKeySurface-CV1KrFWg.js +1 -0
- package/dist/public/sdk/{mountRecoveryCodeBackupSurface-D3QFgMGE.js → mountRecoveryCodeBackupSurface-CVXU1zzl.js} +2 -2
- package/dist/public/sdk/nearEd25519YaoMaterialActivation-D9cdMKIZ.js +1 -0
- package/dist/public/sdk/nearEd25519YaoSigningPreparation-D_Jvj7ht.js +1 -0
- package/dist/public/sdk/{nonceLaneKeys-CR2XEvnk.js → nonceLaneKeys-BS4fek17.js} +1 -1
- package/dist/public/sdk/{normalization-Ctkj80dW.js → normalization-BN-2VWZf.js} +1 -1
- package/dist/public/sdk/{operationFingerprint-DRPONhBD.js → operationFingerprint-Bn0lUYlm.js} +1 -1
- package/dist/public/sdk/pendingWalletRecoveryCodeBackup-lr1oISjL.js +1 -0
- package/dist/public/sdk/presignaturePool-CultzkOG.js +1 -0
- package/dist/public/sdk/{presignatures-DGLNs29C.js → presignatures-B9GrGx0L.js} +1 -1
- package/dist/public/sdk/recovery-entrypoint-QBvJBngm.js +1 -0
- package/dist/public/sdk/{recoveryAuthorization-BplZWc-N.js → recoveryAuthorization-DB-zxeHq.js} +1 -1
- package/dist/public/sdk/registration-CM5a7WYO.js +1 -0
- package/dist/public/sdk/registration-Hv0xi7-L.js +1 -0
- package/dist/public/sdk/{registrationAccounts-BfO6Ztye.js → registrationAccounts-BHikxS5q.js} +1 -1
- package/dist/public/sdk/{registrationAuthMethodInput-DKz6Mgg4.js → registrationAuthMethodInput-BvbWl0y_.js} +1 -1
- package/dist/public/sdk/registrationIntent-DTs2SR9E.js +1 -0
- package/dist/public/sdk/{registrationSignerPlan-B66FjqIp.js → registrationSignerPlan-CgbFVsAp.js} +1 -1
- package/dist/public/sdk/{requireStepUpAuth-DsNLml1i.js → requireStepUpAuth-B7tC4MrA.js} +1 -1
- package/dist/public/sdk/resealedEnvelopeResult--iCVt_Bh.js +1 -0
- package/dist/public/sdk/routerAbNormalSigning-Div3lZWV.js +1 -0
- package/dist/public/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/public/sdk/runtime-auth-CVw1KoVD.js +1 -0
- package/dist/public/sdk/runtime-device-link-Dp0YMZTQ.js +1 -0
- package/dist/public/sdk/runtime-ecdsa-tempo-DEIjIgEO.js +1 -0
- package/dist/public/sdk/runtime-email-otp-gsr_FsQn.js +1 -0
- package/dist/public/sdk/runtime-export-upMPrZ4V.js +1 -0
- package/dist/public/sdk/runtime-near-B64Hn3nc.js +1 -0
- package/dist/public/sdk/runtime-preferences-CULdHkbg.js +1 -0
- package/dist/public/sdk/runtime-recovery-D2saBaJy.js +1 -0
- package/dist/public/sdk/runtime-recovery-codes-Bvc0IXMJ.js +1 -0
- package/dist/public/sdk/runtimeContext-CNFJjcns.js +6 -0
- package/dist/{esm/sdk/sdkSentEvents-BzMVO1AR.js → public/sdk/sdkSentEvents-DUht3AOD.js} +1 -1
- package/dist/{esm/sdk/secp256k1-CYu8ENjP.js → public/sdk/secp256k1-BGVlx50C.js} +1 -1
- package/dist/public/sdk/sessionObservationRevision-84ZzJ-fC.js +1 -0
- package/dist/public/sdk/shared-DcHtE-D-.js +1 -0
- package/dist/public/sdk/signEvmFamily-PjwUc5MT.js +1 -0
- package/dist/{esm/sdk/signEvmFamilyWithUiConfirmForTempo-4A3D9nKv.js → public/sdk/signEvmFamilyWithUiConfirmForTempo-BMfC2sc2.js} +1 -1
- package/dist/public/sdk/{signEvmWithUiConfirm-lZyPfrGe.js → signEvmWithUiConfirm-BNkupz3z.js} +1 -1
- package/dist/public/sdk/signNear-r8VCOoTh.js +1 -0
- package/dist/public/sdk/{signatureUses-CY4U-X6V.js → signatureUses-DrqCoN12.js} +1 -1
- package/dist/public/sdk/signerDomain-D-EUTlLK.js +1 -0
- package/dist/public/sdk/{signerSlot-CpyIfl3J.js → signerSlot-D4ZOuK7e.js} +1 -1
- package/dist/{esm/sdk/signingFlow-Co_QtuHK.js → public/sdk/signingFlow-BVvteILM.js} +1 -1
- package/dist/{esm/sdk/signingQueue-Cj9sCJLj.js → public/sdk/signingQueue-BJzOrwDq.js} +1 -1
- package/dist/public/sdk/surface-measurement-reporter-NUm_54LH.js +1 -0
- package/dist/{esm/sdk/thresholdEcdsa-LvkD6z8-.js → public/sdk/thresholdEcdsa-tnY83qyG.js} +1 -1
- package/dist/public/sdk/{trace-CWTzEALZ.js → trace-CGNqO1FV.js} +1 -1
- package/dist/public/sdk/{transaction-activity-CpDMkSPm.js → transaction-activity-DPq9RTh5.js} +1 -1
- package/dist/public/sdk/transactionReview-DSGnpreN.js +1 -0
- package/dist/public/sdk/transactionReviewAdmission--8tDis7M.js +1 -0
- package/dist/{esm/sdk/transactionState-BaFSiA9t.js → public/sdk/transactionState-BS1VLT7B.js} +1 -1
- package/dist/public/sdk/tx-confirm-ui.js +418 -109
- package/dist/public/sdk/types-DdzuHlAQ.js +1 -0
- package/dist/public/sdk/unlockedEd25519ExportRootCapability-D43rvO9a.js +1 -0
- package/dist/public/sdk/voiceid-host.js +1 -0
- package/dist/public/sdk/wallet-iframe-host-ecdsa.js +1 -1
- package/dist/public/sdk/wallet-iframe-host-full.js +1 -1
- package/dist/public/sdk/wallet-iframe-host-near.js +1 -1
- package/dist/public/sdk/wallet-iframe-host-runtime.js +1 -1
- package/dist/public/sdk/wallet-recovery-BjIQdOha.js +1 -0
- package/dist/public/sdk/wallet-ui.css +1 -1
- package/dist/public/sdk/walletAuthMethodRecord-yIqCeE-o.js +1 -0
- package/dist/public/sdk/walletCapabilityBindings-CUPk3mVH.js +1 -0
- package/dist/public/sdk/walletCustodyEcdsaContinuity-DlOBCmwb.js +1 -0
- package/dist/public/sdk/walletCustodyOperation-DzPcxEBS.js +1 -0
- package/dist/public/sdk/walletDbName-DDJXrgA5.js +1 -0
- package/dist/public/sdk/walletOwnershipGeneration-DI9ogcXF.js +1 -0
- package/dist/public/sdk/walletRecoveryAdminProof-BJxmg3f7.js +1 -0
- package/dist/public/sdk/walletRecoveryCommit-B7WsdR7y.js +1 -0
- package/dist/public/sdk/walletRegistrationSetupPrewarm-CEJCj78c.js +1 -0
- package/dist/public/sdk/walletSessionAuthorizationStatus-98G3Qji8.js +1 -0
- package/dist/{esm/sdk/walletSessionAuthorizationStore-DYRMCkiT.js → public/sdk/walletSessionAuthorizationStore-zkxcMdSp.js} +1 -1
- package/dist/public/sdk/warmSessionHydration-DqZyfi1h.js +1 -0
- package/dist/public/sdk/{webauthnP256-unqBoZCk.js → webauthnP256-BvTL8nq4.js} +1 -1
- package/dist/public/sdk/workers/device-linking-key.worker.js +93 -5
- package/dist/public/sdk/workers/ecdsa-derivation-client.worker.js +67 -65
- package/dist/public/sdk/workers/email-otp.worker.js +93 -4
- package/dist/public/sdk/workers/passkey-mpc-export.worker.js +21 -2
- package/dist/public/sdk/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/public/sdk/workers/wallet-custody-ceremony.worker.js +20 -2
- package/dist/public/sdk/workers/wallet_custody_ceremony_bg.wasm +0 -0
- package/dist/public/sdk/workers/wasm_signer_worker_bg.wasm +0 -0
- package/dist/public/wallet-assets.manifest.json +503 -239
- package/dist/public/wallet-service/index.html +4 -4
- package/dist/types/shared-ts/src/authorization/voiceIdDeviceAssertion.d.ts +32 -0
- package/dist/types/shared-ts/src/device-linking/committedSignerPackages.d.ts +3 -1
- package/dist/types/shared-ts/src/device-linking/contracts.d.ts +8 -0
- package/dist/types/shared-ts/src/device-linking/wireFields.d.ts +4 -4
- package/dist/types/shared-ts/src/passkey-custody/custodyEnvelope.d.ts +29 -0
- package/dist/types/shared-ts/src/passkey-custody/custodySecretBinding.d.ts +1 -0
- package/dist/types/shared-ts/src/signing-lanes/execution.d.ts +2 -2
- package/dist/types/shared-ts/src/signing-lanes/recordParsers.d.ts +2 -1
- package/dist/types/shared-ts/src/signing-lanes/records.d.ts +10 -2
- package/dist/types/shared-ts/src/signing-lanes/rotation.d.ts +2 -2
- package/dist/types/shared-ts/src/threshold/sessionPolicy.d.ts +9 -0
- package/dist/types/shared-ts/src/utils/addWalletAuthMethod.d.ts +3 -3
- package/dist/types/shared-ts/src/utils/domainIds.d.ts +4 -5
- package/dist/types/shared-ts/src/utils/registrationIntent.d.ts +0 -1
- package/dist/types/shared-ts/src/utils/signerDomain.d.ts +3 -0
- package/dist/types/shared-ts/src/utils/walletAuthAuthority.d.ts +32 -2
- package/dist/types/shared-ts/src/utils/walletAuthMethodRecord.d.ts +15 -1
- package/dist/types/shared-ts/src/utils/walletCapabilityBindings.d.ts +20 -0
- package/dist/types/wallet/src/SeamsWeb/operations/authMethods/addAuthMethodSourceClaim.d.ts +2 -2
- package/dist/types/wallet/src/SeamsWeb/publicApi/auth.d.ts +1 -1
- package/dist/types/wallet/src/SeamsWeb/publicApi/createPublicApi.d.ts +1 -1
- package/dist/types/wallet/src/SeamsWeb/publicApi/types.d.ts +22 -0
- package/dist/types/wallet/src/SeamsWeb/signingSurface/BrowserSigningSurface.d.ts +4 -0
- package/dist/types/wallet/src/SeamsWeb/signingSurface/ports.d.ts +2 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/authMenuAnchor.d.ts +17 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/router.d.ts +4 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/client/surface/geometry.d.ts +0 -1
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/WalletHostRuntime.d.ts +2 -1
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/auth-menu/domain.d.ts +9 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/auth-menu/session.d.ts +15 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createRegistrationCommands.d.ts +2 -1
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/createSessionCommands.d.ts +7 -2
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/requestRouter.d.ts +2 -2
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/runtimeContext.d.ts +3 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.d.ts +4 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/icons.d.ts +0 -1
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/presentation.d.ts +2 -2
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/walletMutationGuard.d.ts +2 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/shared/messages.d.ts +15 -4
- package/dist/types/wallet/src/core/authMethods/availability.d.ts +13 -0
- package/dist/types/wallet/src/core/authMethods/availabilityTypes.d.ts +13 -0
- package/dist/types/wallet/src/core/authMethods/hostPlugin.d.ts +82 -0
- package/dist/types/wallet/src/core/authMethods/hostRegistry.d.ts +5 -0
- package/dist/types/wallet/src/core/authMethods/installSession.d.ts +15 -0
- package/dist/types/wallet/src/core/authMethods/plugins.d.ts +7 -0
- package/dist/types/wallet/src/core/authMethods/prepareEcdsaSession.d.ts +6 -0
- package/dist/types/wallet/src/core/authMethods/prepareNearSession.d.ts +18 -0
- package/dist/types/wallet/src/core/authMethods/sessionIdentity.d.ts +53 -0
- package/dist/types/wallet/src/core/indexedDB/passkeyClientDB.types.d.ts +11 -1
- package/dist/types/wallet/src/core/indexedDB/seamsWalletDB/repositories.d.ts +53 -2
- package/dist/types/wallet/src/core/indexedDB/unifiedIndexedDBManager.d.ts +1 -0
- package/dist/types/wallet/src/core/rpcClients/relayer/walletRegistration.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/flows/recovery/ecdsaExportMaterial.d.ts +6 -3
- package/dist/types/wallet/src/core/signingEngine/flows/signEvmFamily/ecdsaSelection.d.ts +8 -2
- package/dist/types/wallet/src/core/signingEngine/session/availability/availableSigningLanes.d.ts +10 -10
- package/dist/types/wallet/src/core/signingEngine/session/identity/exactSigningLaneIdentity.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/session/identity/laneIdentity.d.ts +3 -1
- package/dist/types/wallet/src/core/signingEngine/session/identity/signingLaneAuthBinding.d.ts +16 -4
- package/dist/types/wallet/src/core/signingEngine/session/material/ecdsaSealedRuntime.d.ts +13 -4
- package/dist/types/wallet/src/core/signingEngine/session/material/ecdsaSigningCapability.d.ts +15 -6
- package/dist/types/wallet/src/core/signingEngine/session/operationState/lanes.d.ts +11 -4
- package/dist/types/wallet/src/core/signingEngine/session/postconditions/runtimePostconditions.d.ts +3 -3
- package/dist/types/wallet/src/core/signingEngine/session/warmCapabilities/routerAbEd25519WalletSessionState.d.ts +6 -0
- package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/methodSelection.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/stepUpConfirmation/requireStepUpAuth.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/threshold/ed25519/yaoPublicCapabilityReferences.d.ts +6 -0
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/transactionReviewAdmission.d.ts +11 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/confirm-ui-types.d.ts +2 -0
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/confirmation-model.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmContent.d.ts +1 -0
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.d.ts +4 -0
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/TransactionReview.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/walletCustody/passkeyLink.d.ts +2 -2
- package/dist/types/wallet/src/core/signingEngine/walletCustody/resealedEnvelopeResult.d.ts +10 -0
- package/dist/types/wallet/src/core/types/sdkSentEvents.d.ts +1 -1
- package/dist/types/wallet/src/core/types/seams.d.ts +4 -0
- package/dist/types/wallet/src/core/ui/messages.d.ts +1 -1
- package/dist/types/wallet/src/externalNear/controller.d.ts +2 -1
- package/dist/types/wallet/src/externalNear/hot.d.ts +3 -2
- package/dist/types/wallet/src/externalNear/index.d.ts +1 -1
- package/dist/types/wallet/src/externalNear/intear.d.ts +3 -2
- package/dist/types/wallet/src/externalNear/message.d.ts +14 -0
- package/dist/types/wallet/src/externalNear/meteor.d.ts +5 -2
- package/dist/types/wallet/src/externalNear/meteorRequest.d.ts +1 -1
- package/dist/types/wallet/src/externalNear/types.d.ts +22 -2
- package/dist/types/wallet/src/index.d.ts +1 -0
- package/dist/types/wallet/src/react/components/AccountMenuButton/AddEvmAccount.d.ts +29 -0
- package/dist/types/wallet/src/react/components/AccountMenuButton/AuthenticationMethodRow.d.ts +8 -3
- package/dist/types/wallet/src/react/components/AccountMenuButton/AuthenticationMethodsView.d.ts +1 -2
- package/dist/types/wallet/src/react/components/AccountMenuButton/VoiceIdAvailabilityControl.d.ts +19 -0
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/ChevronRightIcon.d.ts +2 -0
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/WalletIcon.d.ts +2 -0
- package/dist/types/wallet/src/react/index.d.ts +1 -4
- package/dist/types/wallet/src/voiceid-host.d.ts +52 -0
- package/dist/workers/device-linking-key.worker.js +93 -5
- package/dist/workers/ecdsa-derivation-client.worker.js +67 -65
- package/dist/workers/email-otp.worker.js +93 -4
- package/dist/workers/passkey-mpc-export.worker.js +21 -2
- package/dist/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/workers/wallet-custody-ceremony.worker.js +20 -2
- package/dist/workers/wallet_custody_ceremony_bg.wasm +0 -0
- package/dist/workers/wasm_signer_worker_bg.wasm +0 -0
- package/package.json +8 -3
- package/dist/esm/react/components/AccountMenuButton/icons/PlusIcon.js +0 -8
- package/dist/esm/react/components/VoiceAssistantCard.css +0 -313
- package/dist/esm/react/components/VoiceAssistantCard.js +0 -150
- package/dist/esm/sdk/ConfirmationDrawer-Ck33ZmU-.js +0 -1
- package/dist/esm/sdk/activeWalletSession-BtEHhe99.js +0 -1
- package/dist/esm/sdk/adapters-CgJpSAxH.js +0 -2
- package/dist/esm/sdk/appearance-token-vars-BA3KQyEE.js +0 -2
- package/dist/esm/sdk/clientSessionPersistenceState-DFGHXoKK.js +0 -1
- package/dist/esm/sdk/configBuilder-BMNShuOu.js +0 -1
- package/dist/esm/sdk/domainIds-C3fUa33Q.js +0 -1
- package/dist/esm/sdk/ecdsaCapabilityManifest-B3u6J5gn.js +0 -1
- package/dist/esm/sdk/ecdsaDerivationExport-DrFESeRP.js +0 -1
- package/dist/esm/sdk/emailOtpEcdsaDerivationIdentity-DreNrM6n.js +0 -1
- package/dist/esm/sdk/exportKeypairOperation-Du9HKB8f.js +0 -1
- package/dist/esm/sdk/host-C5KYWEcs.js +0 -1
- package/dist/esm/sdk/intentDigest--FZ63NBy.js +0 -1
- package/dist/esm/sdk/lanes-l274pbT5.js +0 -1
- package/dist/esm/sdk/localOnly-CvFSZFUy.js +0 -1
- package/dist/esm/sdk/mountExportPrivateKeySurface-DdJHWwqY.js +0 -1
- package/dist/esm/sdk/nearEd25519YaoMaterialActivation-BK8_DxHs.js +0 -1
- package/dist/esm/sdk/nearEd25519YaoSigningPreparation-BgCxoh9S.js +0 -1
- package/dist/esm/sdk/pendingWalletRecoveryCodeBackup-LbstFwcY.js +0 -1
- package/dist/esm/sdk/presignaturePool-DNiA3sgr.js +0 -1
- package/dist/esm/sdk/recovery-entrypoint-CNVjXz6A.js +0 -1
- package/dist/esm/sdk/registration-CIxJvbTo.js +0 -1
- package/dist/esm/sdk/registration-CeOmKyCG.js +0 -1
- package/dist/esm/sdk/registrationIntent-DW_kKWlx.js +0 -1
- package/dist/esm/sdk/routerAbNormalSigning-DSAfCcND.js +0 -1
- package/dist/esm/sdk/runtime-auth-C0V-5znH.js +0 -1
- package/dist/esm/sdk/runtime-device-link-B1jpHQSF.js +0 -1
- package/dist/esm/sdk/runtime-ecdsa-tempo-CDSZ3pxS.js +0 -1
- package/dist/esm/sdk/runtime-email-otp-DXuxFOjL.js +0 -1
- package/dist/esm/sdk/runtime-export-Ba12ChDI.js +0 -1
- package/dist/esm/sdk/runtime-near-DRrdWzmr.js +0 -1
- package/dist/esm/sdk/runtime-preferences-BWyhRaBA.js +0 -1
- package/dist/esm/sdk/runtime-recovery-DlJlaZlf.js +0 -1
- package/dist/esm/sdk/runtime-recovery-codes-CuqYWqK7.js +0 -1
- package/dist/esm/sdk/sessionObservationRevision-abErAhd6.js +0 -1
- package/dist/esm/sdk/shared-B95wnpoD.js +0 -6
- package/dist/esm/sdk/signEvmFamily-C4XMiSue.js +0 -1
- package/dist/esm/sdk/signNear-B_UcqMRf.js +0 -1
- package/dist/esm/sdk/signerDomain-YEHkugWX.js +0 -1
- package/dist/esm/sdk/surface-measurement-reporter-F-fVB7d3.js +0 -1
- package/dist/esm/sdk/transactionReviewAdmission-CNNho8IG.js +0 -1
- package/dist/esm/sdk/types-BrEW276O.js +0 -1
- package/dist/esm/sdk/wallet-recovery-BEui57xM.js +0 -1
- package/dist/esm/sdk/walletAuthMethodRecord-Cv_MYpxt.js +0 -1
- package/dist/esm/sdk/walletCapabilityBindings-CKOK39sP.js +0 -1
- package/dist/esm/sdk/walletCustodyEcdsaContinuity-5XsLsT8D.js +0 -1
- package/dist/esm/sdk/walletCustodyOperation-BO_tSfGY.js +0 -1
- package/dist/esm/sdk/walletDbName-BVZhb4xF.js +0 -1
- package/dist/esm/sdk/walletOwnershipGeneration-CQzaodhB.js +0 -1
- package/dist/esm/sdk/walletRecoveryAdminProof-CtH8_lph.js +0 -1
- package/dist/esm/sdk/walletRecoveryCommit-B_e4k5Pa.js +0 -1
- package/dist/esm/sdk/walletRegistrationSetupPrewarm-CQow9u8m.js +0 -1
- package/dist/esm/sdk/walletSessionAuthorizationStatus-_KtCVFYW.js +0 -1
- package/dist/esm/sdk/warmSessionHydration-CY9ofEGr.js +0 -1
- package/dist/public/sdk/ConfirmationDrawer-Ck33ZmU-.js +0 -1
- package/dist/public/sdk/activeWalletSession-BtEHhe99.js +0 -1
- package/dist/public/sdk/adapters-CgJpSAxH.js +0 -2
- package/dist/public/sdk/appearance-token-vars-BA3KQyEE.js +0 -2
- package/dist/public/sdk/clientSessionPersistenceState-DFGHXoKK.js +0 -1
- package/dist/public/sdk/configBuilder-BMNShuOu.js +0 -1
- package/dist/public/sdk/domainIds-C3fUa33Q.js +0 -1
- package/dist/public/sdk/ecdsaCapabilityManifest-B3u6J5gn.js +0 -1
- package/dist/public/sdk/ecdsaDerivationExport-DrFESeRP.js +0 -1
- package/dist/public/sdk/emailOtpEcdsaDerivationIdentity-DreNrM6n.js +0 -1
- package/dist/public/sdk/exportKeypairOperation-Du9HKB8f.js +0 -1
- package/dist/public/sdk/host-C5KYWEcs.js +0 -1
- package/dist/public/sdk/intentDigest--FZ63NBy.js +0 -1
- package/dist/public/sdk/lanes-l274pbT5.js +0 -1
- package/dist/public/sdk/localOnly-CvFSZFUy.js +0 -1
- package/dist/public/sdk/mountExportPrivateKeySurface-DdJHWwqY.js +0 -1
- package/dist/public/sdk/nearEd25519YaoMaterialActivation-BK8_DxHs.js +0 -1
- package/dist/public/sdk/nearEd25519YaoSigningPreparation-BgCxoh9S.js +0 -1
- package/dist/public/sdk/pendingWalletRecoveryCodeBackup-LbstFwcY.js +0 -1
- package/dist/public/sdk/presignaturePool-DNiA3sgr.js +0 -1
- package/dist/public/sdk/recovery-entrypoint-CNVjXz6A.js +0 -1
- package/dist/public/sdk/registration-CIxJvbTo.js +0 -1
- package/dist/public/sdk/registration-CeOmKyCG.js +0 -1
- package/dist/public/sdk/registrationIntent-DW_kKWlx.js +0 -1
- package/dist/public/sdk/routerAbNormalSigning-DSAfCcND.js +0 -1
- package/dist/public/sdk/runtime-auth-C0V-5znH.js +0 -1
- package/dist/public/sdk/runtime-device-link-B1jpHQSF.js +0 -1
- package/dist/public/sdk/runtime-ecdsa-tempo-CDSZ3pxS.js +0 -1
- package/dist/public/sdk/runtime-email-otp-DXuxFOjL.js +0 -1
- package/dist/public/sdk/runtime-export-Ba12ChDI.js +0 -1
- package/dist/public/sdk/runtime-near-DRrdWzmr.js +0 -1
- package/dist/public/sdk/runtime-preferences-BWyhRaBA.js +0 -1
- package/dist/public/sdk/runtime-recovery-DlJlaZlf.js +0 -1
- package/dist/public/sdk/runtime-recovery-codes-CuqYWqK7.js +0 -1
- package/dist/public/sdk/sessionObservationRevision-abErAhd6.js +0 -1
- package/dist/public/sdk/shared-B95wnpoD.js +0 -6
- package/dist/public/sdk/signEvmFamily-C4XMiSue.js +0 -1
- package/dist/public/sdk/signNear-B_UcqMRf.js +0 -1
- package/dist/public/sdk/signerDomain-YEHkugWX.js +0 -1
- package/dist/public/sdk/surface-measurement-reporter-F-fVB7d3.js +0 -1
- package/dist/public/sdk/transactionReviewAdmission-CNNho8IG.js +0 -1
- package/dist/public/sdk/types-BrEW276O.js +0 -1
- package/dist/public/sdk/wallet-recovery-BEui57xM.js +0 -1
- package/dist/public/sdk/walletAuthMethodRecord-Cv_MYpxt.js +0 -1
- package/dist/public/sdk/walletCapabilityBindings-CKOK39sP.js +0 -1
- package/dist/public/sdk/walletCustodyEcdsaContinuity-5XsLsT8D.js +0 -1
- package/dist/public/sdk/walletCustodyOperation-BO_tSfGY.js +0 -1
- package/dist/public/sdk/walletDbName-BVZhb4xF.js +0 -1
- package/dist/public/sdk/walletOwnershipGeneration-CQzaodhB.js +0 -1
- package/dist/public/sdk/walletRecoveryAdminProof-CtH8_lph.js +0 -1
- package/dist/public/sdk/walletRecoveryCommit-B_e4k5Pa.js +0 -1
- package/dist/public/sdk/walletRegistrationSetupPrewarm-CQow9u8m.js +0 -1
- package/dist/public/sdk/walletSessionAuthorizationStatus-_KtCVFYW.js +0 -1
- package/dist/public/sdk/warmSessionHydration-CY9ofEGr.js +0 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/icons/PlusIcon.d.ts +0 -2
- package/dist/types/wallet/src/react/components/VoiceAssistantCard.d.ts +0 -37
- package/dist/types/wallet/src/react/components/VoiceAssistantCard.typecheck.d.ts +0 -2
- /package/dist/esm/sdk/{accountIds-BzZs7YoX.js → accountIds-D5NI31F2.js} +0 -0
- /package/dist/esm/sdk/{appearance-ZGVLwA4N.js → appearance-DVFno9Tv.js} +0 -0
- /package/dist/esm/sdk/{authenticatorOptions-BB_sU4uA.js → authenticatorOptions-EF_Rps52.js} +0 -0
- /package/dist/esm/sdk/{authorizationAdmission-D7nx2n4d.js → authorizationAdmission-DbhNiY3X.js} +0 -0
- /package/dist/esm/sdk/{browser-DkCRXFkk.js → browser-B2RI00tM.js} +0 -0
- /package/dist/esm/sdk/{bytes-Cv07P0Pu.js → bytes-DVe42j_r.js} +0 -0
- /package/dist/esm/sdk/{canonicalSignerErrorCode-CqHi6ji6.js → canonicalSignerErrorCode-AwNMAn8S.js} +0 -0
- /package/dist/esm/sdk/{errors-CI1xdN0d.js → errors-ADOZT8oV.js} +0 -0
- /package/dist/esm/sdk/{executeWorkerOperation-S6glYwAs.js → executeWorkerOperation-B-9JuL55.js} +0 -0
- /package/dist/esm/sdk/{jsonRpc-B5zMY6lE.js → jsonRpc-CHutSlC9.js} +0 -0
- /package/dist/esm/sdk/{keccak-CaPOCznk.js → keccak-C9kCkZem.js} +0 -0
- /package/dist/esm/sdk/{normalization-CpLZcL2f.js → normalization-DtruiNPw.js} +0 -0
- /package/dist/esm/sdk/{prfCache-D25ZCg5n.js → prfCache-8Wm3etlV.js} +0 -0
- /package/dist/esm/sdk/{profileAccountProjection-C1z9sKHa.js → profileAccountProjection-D01e10UY.js} +0 -0
- /package/dist/esm/sdk/{promptText-D2f5Rg0h.js → promptText-Bz3YRl9D.js} +0 -0
- /package/dist/esm/sdk/{signer-worker-Bh_5foqX.js → signer-worker-DlK58rEA.js} +0 -0
- /package/dist/esm/sdk/{types-BNUuaUtl.js → types-fJKfUgTi.js} +0 -0
- /package/dist/esm/sdk/{walletIframeIdentity-DJ0KOBHg.js → walletIframeIdentity-Cz82I_Uh.js} +0 -0
- /package/dist/esm/sdk/{walletSessionAuthorizationProjection-UdGeS6x3.js → walletSessionAuthorizationProjection-BJgnZaBc.js} +0 -0
- /package/dist/esm/sdk/{walletSessionFailure-Ct412mDZ.js → walletSessionFailure-CLUIF3Eh.js} +0 -0
- /package/dist/esm/sdk/{webauthnPromptCoordinator-CBkTiMP0.js → webauthnPromptCoordinator-CU9ag7vz.js} +0 -0
- /package/dist/public/sdk/{accountIds-BzZs7YoX.js → accountIds-D5NI31F2.js} +0 -0
- /package/dist/public/sdk/{appearance-ZGVLwA4N.js → appearance-DVFno9Tv.js} +0 -0
- /package/dist/public/sdk/{authenticatorOptions-BB_sU4uA.js → authenticatorOptions-EF_Rps52.js} +0 -0
- /package/dist/public/sdk/{authorizationAdmission-D7nx2n4d.js → authorizationAdmission-DbhNiY3X.js} +0 -0
- /package/dist/public/sdk/{browser-DkCRXFkk.js → browser-B2RI00tM.js} +0 -0
- /package/dist/public/sdk/{bytes-Cv07P0Pu.js → bytes-DVe42j_r.js} +0 -0
- /package/dist/public/sdk/{canonicalSignerErrorCode-CqHi6ji6.js → canonicalSignerErrorCode-AwNMAn8S.js} +0 -0
- /package/dist/public/sdk/{errors-CI1xdN0d.js → errors-ADOZT8oV.js} +0 -0
- /package/dist/public/sdk/{executeWorkerOperation-S6glYwAs.js → executeWorkerOperation-B-9JuL55.js} +0 -0
- /package/dist/public/sdk/{jsonRpc-B5zMY6lE.js → jsonRpc-CHutSlC9.js} +0 -0
- /package/dist/public/sdk/{keccak-CaPOCznk.js → keccak-C9kCkZem.js} +0 -0
- /package/dist/public/sdk/{normalization-CpLZcL2f.js → normalization-DtruiNPw.js} +0 -0
- /package/dist/public/sdk/{prfCache-D25ZCg5n.js → prfCache-8Wm3etlV.js} +0 -0
- /package/dist/public/sdk/{profileAccountProjection-C1z9sKHa.js → profileAccountProjection-D01e10UY.js} +0 -0
- /package/dist/public/sdk/{promptText-D2f5Rg0h.js → promptText-Bz3YRl9D.js} +0 -0
- /package/dist/public/sdk/{signer-worker-Bh_5foqX.js → signer-worker-DlK58rEA.js} +0 -0
- /package/dist/public/sdk/{types-BNUuaUtl.js → types-fJKfUgTi.js} +0 -0
- /package/dist/public/sdk/{walletIframeIdentity-DJ0KOBHg.js → walletIframeIdentity-Cz82I_Uh.js} +0 -0
- /package/dist/public/sdk/{walletSessionAuthorizationProjection-UdGeS6x3.js → walletSessionAuthorizationProjection-BJgnZaBc.js} +0 -0
- /package/dist/public/sdk/{walletSessionFailure-Ct412mDZ.js → walletSessionFailure-CLUIF3Eh.js} +0 -0
- /package/dist/public/sdk/{webauthnPromptCoordinator-CBkTiMP0.js → webauthnPromptCoordinator-CU9ag7vz.js} +0 -0
|
@@ -13,7 +13,7 @@ function trackIframeLoad(iframe) {
|
|
|
13
13
|
iframe.addEventListener("load", () => markIframeLoaded(iframe), { once: true });
|
|
14
14
|
}
|
|
15
15
|
function buildAllowAttr(walletOrigin) {
|
|
16
|
-
return `publickey-credentials-get 'self' ${walletOrigin}; publickey-credentials-create 'self' ${walletOrigin}; clipboard-read; clipboard-write`;
|
|
16
|
+
return `publickey-credentials-get 'self' ${walletOrigin}; publickey-credentials-create 'self' ${walletOrigin}; clipboard-read; clipboard-write; microphone ${walletOrigin}`;
|
|
17
17
|
}
|
|
18
18
|
function isOverlayForOrigin(el, walletOrigin) {
|
|
19
19
|
const dsOrigin = el.dataset?.seamsOrigin;
|
|
@@ -57,7 +57,7 @@ function createWalletIframe(opts) {
|
|
|
57
57
|
try {
|
|
58
58
|
iframe.setAttribute("allow", buildAllowAttr(opts.walletOrigin));
|
|
59
59
|
} catch {
|
|
60
|
-
iframe.setAttribute("allow", "publickey-credentials-get 'self'; publickey-credentials-create 'self'; clipboard-read; clipboard-write");
|
|
60
|
+
iframe.setAttribute("allow", "publickey-credentials-get 'self'; publickey-credentials-create 'self'; clipboard-read; clipboard-write; microphone 'self'");
|
|
61
61
|
}
|
|
62
62
|
trackIframeLoad(iframe);
|
|
63
63
|
if (opts.onLoad) iframe.addEventListener("load", opts.onLoad);
|
|
@@ -11,6 +11,16 @@ const AUTH_MENU_WAITING_PROMPTS = {
|
|
|
11
11
|
instruction: "Choose your Google account."
|
|
12
12
|
}
|
|
13
13
|
};
|
|
14
|
+
/** What the success view says for each successful outcome. */
|
|
15
|
+
function authMenuSuccessCopy(outcome) {
|
|
16
|
+
return outcome === "registered" ? {
|
|
17
|
+
headline: "Wallet created",
|
|
18
|
+
message: "Your wallet is ready on this device."
|
|
19
|
+
} : {
|
|
20
|
+
headline: "You’re in",
|
|
21
|
+
message: "Your wallet is unlocked."
|
|
22
|
+
};
|
|
23
|
+
}
|
|
14
24
|
function resolveAuthMenuLoginAccount(accountOptions, selectedAccount) {
|
|
15
25
|
const exactSelection = selectedAccount ? accountOptions.find((account) => account.walletId === selectedAccount.walletId && account.authMethod === selectedAccount.authMethod) : null;
|
|
16
26
|
const sameWalletSelection = selectedAccount ? accountOptions.find((account) => account.walletId === selectedAccount.walletId) : null;
|
|
@@ -43,6 +53,10 @@ function resolveAuthMenuLoginAccount(accountOptions, selectedAccount) {
|
|
|
43
53
|
kind: "email_otp",
|
|
44
54
|
...resolved
|
|
45
55
|
};
|
|
56
|
+
if (walletMethods.some(isVoiceIdAccount)) return {
|
|
57
|
+
kind: "voiceid",
|
|
58
|
+
...resolved
|
|
59
|
+
};
|
|
46
60
|
throw new Error("Selected auth-menu account has no supported authentication method");
|
|
47
61
|
}
|
|
48
62
|
function authMenuLoginAllowsPasskey(resolution) {
|
|
@@ -50,7 +64,8 @@ function authMenuLoginAllowsPasskey(resolution) {
|
|
|
50
64
|
case "discoverable":
|
|
51
65
|
case "passkey":
|
|
52
66
|
case "passkey_and_email_otp": return true;
|
|
53
|
-
case "email_otp":
|
|
67
|
+
case "email_otp":
|
|
68
|
+
case "voiceid": return false;
|
|
54
69
|
}
|
|
55
70
|
}
|
|
56
71
|
function authMenuLoginAllowsEmailOtp(resolution) {
|
|
@@ -58,7 +73,8 @@ function authMenuLoginAllowsEmailOtp(resolution) {
|
|
|
58
73
|
case "discoverable":
|
|
59
74
|
case "email_otp":
|
|
60
75
|
case "passkey_and_email_otp": return true;
|
|
61
|
-
case "passkey":
|
|
76
|
+
case "passkey":
|
|
77
|
+
case "voiceid": return false;
|
|
62
78
|
}
|
|
63
79
|
}
|
|
64
80
|
function isAuthMenuLoadingStatus(status) {
|
|
@@ -93,7 +109,10 @@ function isAuthMenuGoogleActionReady(viewModel) {
|
|
|
93
109
|
if (viewModel.kind !== "passkey" || viewModel.mode !== "login") return true;
|
|
94
110
|
return authMenuLoginAllowsEmailOtp(resolveAuthMenuLoginAccount(viewModel.accountOptions, viewModel.selectedAccount));
|
|
95
111
|
}
|
|
112
|
+
function isVoiceIdAccount(account) {
|
|
113
|
+
return account.authMethod === "voiceid";
|
|
114
|
+
}
|
|
96
115
|
//#endregion
|
|
97
|
-
export { AUTH_MENU_WAITING_PROMPTS, isAuthMenuActionReady, isAuthMenuGoogleActionReady, isAuthMenuLoadingStatus, isAuthMenuReady, resolveAuthMenuLoginAccount };
|
|
116
|
+
export { AUTH_MENU_WAITING_PROMPTS, authMenuSuccessCopy, isAuthMenuActionReady, isAuthMenuGoogleActionReady, isAuthMenuLoadingStatus, isAuthMenuReady, resolveAuthMenuLoginAccount };
|
|
98
117
|
|
|
99
118
|
//# sourceMappingURL=domain.js.map
|
|
@@ -14,7 +14,11 @@ function sizeFromRect(rect) {
|
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
16
|
function sizeFromEntryOrElement(element, entry) {
|
|
17
|
-
|
|
17
|
+
const box = entry?.borderBoxSize[0];
|
|
18
|
+
return sizeFromRect(box ? {
|
|
19
|
+
width: box.inlineSize,
|
|
20
|
+
height: box.blockSize
|
|
21
|
+
} : element.getBoundingClientRect());
|
|
18
22
|
}
|
|
19
23
|
function sizeForReporter(options, entry) {
|
|
20
24
|
if (options.kind === "request_scroll_surface") {
|
|
@@ -87,7 +91,7 @@ var SurfaceMeasurementReporter = class {
|
|
|
87
91
|
this.options = options;
|
|
88
92
|
if (typeof ResizeObserver === "function") {
|
|
89
93
|
this.observer = new ResizeObserver(this.onResize);
|
|
90
|
-
this.observer.observe(options.element);
|
|
94
|
+
this.observer.observe(options.element, { box: "border-box" });
|
|
91
95
|
if (options.kind === "request_scroll_surface" && options.element.firstElementChild) this.observer.observe(options.element.firstElementChild);
|
|
92
96
|
this.reportLatestSize();
|
|
93
97
|
return;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { WalletText } from "../../../../../core/signingEngine/uiConfirm/ui/preact/WalletLocale.js";
|
|
2
2
|
import { SeamsWordmark } from "../../../../../core/signingEngine/uiConfirm/ui/preact/SeamsWordmark.js";
|
|
3
|
-
import { alertIcon
|
|
3
|
+
import { alertIcon } from "./icons.js";
|
|
4
4
|
import { Component } from "preact";
|
|
5
5
|
import { jsx, jsxs } from "preact/jsx-runtime";
|
|
6
6
|
//#region src/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuFooter.tsx
|
|
@@ -22,8 +22,6 @@ var AuthMenuFooter = class extends Component {
|
|
|
22
22
|
class: "seams-auth-footer-brand",
|
|
23
23
|
"aria-hidden": notice ? "true" : void 0,
|
|
24
24
|
children: [
|
|
25
|
-
shieldIcon(),
|
|
26
|
-
" ",
|
|
27
25
|
/* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx(WalletText, { message: "Secured by" }) }),
|
|
28
26
|
" ",
|
|
29
27
|
/* @__PURE__ */ jsx(SeamsWordmark, {})
|
|
@@ -35,6 +35,7 @@ var AuthMenuSurface = class extends Component {
|
|
|
35
35
|
previousLinkDeviceStateKind = null;
|
|
36
36
|
previousRecoveryStage = null;
|
|
37
37
|
lastMethod = "passkey";
|
|
38
|
+
walletRowEntry = null;
|
|
38
39
|
get viewModel() {
|
|
39
40
|
return this.props.viewModel;
|
|
40
41
|
}
|
|
@@ -138,6 +139,7 @@ var AuthMenuSurface = class extends Component {
|
|
|
138
139
|
const switcher = this.props.element.querySelector(".seams-content-switcher");
|
|
139
140
|
const sizer = this.props.element.querySelector(".seams-content-sizer");
|
|
140
141
|
if (!switcher || !sizer) return;
|
|
142
|
+
if (this.props.element.hidden) return;
|
|
141
143
|
this.props.styles.setDynamicDeclarations(this.props.element.id + "-height", "#" + this.props.element.id + " .seams-content-switcher", { height: sizer.scrollHeight + "px" });
|
|
142
144
|
};
|
|
143
145
|
focusInitialControl() {
|
|
@@ -296,6 +298,10 @@ var AuthMenuSurface = class extends Component {
|
|
|
296
298
|
onGoogleRegistrationReroll = () => {
|
|
297
299
|
this.emitIntent({ kind: "google_registration_reroll" });
|
|
298
300
|
};
|
|
301
|
+
onVoiceClick = () => {
|
|
302
|
+
this.lastMethod = "voiceid";
|
|
303
|
+
this.emitIntent({ kind: "voiceid_selected" });
|
|
304
|
+
};
|
|
299
305
|
onGoogleClick = () => {
|
|
300
306
|
this.lastMethod = "google";
|
|
301
307
|
this.emitIntent({
|
|
@@ -304,6 +310,10 @@ var AuthMenuSurface = class extends Component {
|
|
|
304
310
|
});
|
|
305
311
|
};
|
|
306
312
|
onNoticeRetry = () => {
|
|
313
|
+
if (this.lastMethod === "voiceid") {
|
|
314
|
+
this.onVoiceClick();
|
|
315
|
+
return;
|
|
316
|
+
}
|
|
307
317
|
if (this.lastMethod === "google" && isAuthMenuGoogleActionReady(this.viewModel)) this.onGoogleClick();
|
|
308
318
|
else this.onPrimaryClick();
|
|
309
319
|
};
|
|
@@ -581,16 +591,42 @@ var AuthMenuSurface = class extends Component {
|
|
|
581
591
|
})] })
|
|
582
592
|
}) });
|
|
583
593
|
}
|
|
594
|
+
walletRowEntering(viewModel, shown) {
|
|
595
|
+
const viewKey = authViewKey(viewModel);
|
|
596
|
+
const entry = this.walletRowEntry;
|
|
597
|
+
if (entry?.viewKey !== viewKey) this.walletRowEntry = {
|
|
598
|
+
viewKey,
|
|
599
|
+
shown,
|
|
600
|
+
entering: false
|
|
601
|
+
};
|
|
602
|
+
else if (shown && !entry.shown) this.walletRowEntry = {
|
|
603
|
+
viewKey,
|
|
604
|
+
shown,
|
|
605
|
+
entering: true
|
|
606
|
+
};
|
|
607
|
+
return this.walletRowEntry?.entering ?? false;
|
|
608
|
+
}
|
|
609
|
+
onWalletRowEntered = (event) => {
|
|
610
|
+
const entry = this.walletRowEntry;
|
|
611
|
+
if (event.target !== event.currentTarget || !entry?.entering) return;
|
|
612
|
+
this.walletRowEntry = {
|
|
613
|
+
...entry,
|
|
614
|
+
entering: false
|
|
615
|
+
};
|
|
616
|
+
this.forceUpdate();
|
|
617
|
+
};
|
|
584
618
|
renderPasskeyInput(viewModel) {
|
|
585
619
|
if (viewModel.mode === "login") {
|
|
586
620
|
const selected = selectedLoginAccount(viewModel);
|
|
621
|
+
const entering = this.walletRowEntering(viewModel, selected !== null);
|
|
587
622
|
if (!selected) return /* @__PURE__ */ jsx(Fragment$1, {});
|
|
588
623
|
const groups = accountGroups(viewModel.accountOptions);
|
|
589
624
|
const accountMenu = this.state.accountMenu;
|
|
590
625
|
const choice = this.accountMenuChoice;
|
|
591
626
|
const listSelected = choice?.previous ?? selected;
|
|
592
627
|
return /* @__PURE__ */ jsx(Fragment$1, { children: /* @__PURE__ */ jsx("div", {
|
|
593
|
-
class:
|
|
628
|
+
class: `seams-passkey-row ${entering ? "is-entering" : ""}`,
|
|
629
|
+
onAnimationEnd: this.onWalletRowEntered,
|
|
594
630
|
children: /* @__PURE__ */ jsxs("div", {
|
|
595
631
|
class: "seams-input-pill",
|
|
596
632
|
children: [/* @__PURE__ */ jsx("div", {
|
|
@@ -623,7 +659,7 @@ var AuthMenuSurface = class extends Component {
|
|
|
623
659
|
class: `seams-account-menu-popover ${accountMenu === "closing" ? "is-closing" : ""}`,
|
|
624
660
|
role: "listbox",
|
|
625
661
|
children: groups.map((group) => {
|
|
626
|
-
const groupLabelId = `${AUTH_MENU_ACCOUNT_LIST_ID}-${group.
|
|
662
|
+
const groupLabelId = `${AUTH_MENU_ACCOUNT_LIST_ID}-${group.id}`;
|
|
627
663
|
return /* @__PURE__ */ jsx(Fragment$1, { children: /* @__PURE__ */ jsxs("div", {
|
|
628
664
|
class: "seams-account-menu-group",
|
|
629
665
|
role: "group",
|
|
@@ -633,8 +669,8 @@ var AuthMenuSurface = class extends Component {
|
|
|
633
669
|
class: "seams-account-menu-group-label",
|
|
634
670
|
children: /* @__PURE__ */ jsx(WalletText, { copy: group.label })
|
|
635
671
|
}), group.accounts.map((account) => {
|
|
636
|
-
const isSelected = account.walletId === listSelected.walletId
|
|
637
|
-
const isChosen = !isSelected && account.walletId === choice?.chosen.walletId
|
|
672
|
+
const isSelected = account.walletId === listSelected.walletId;
|
|
673
|
+
const isChosen = !isSelected && account.walletId === choice?.chosen.walletId;
|
|
638
674
|
const secondaryText = accountSecondaryText(account);
|
|
639
675
|
return /* @__PURE__ */ jsx(Fragment$1, { children: /* @__PURE__ */ jsxs("button", {
|
|
640
676
|
class: `seams-account-menu-option ${isSelected ? "is-selected" : ""} ${isChosen ? "is-chosen" : ""}`,
|
|
@@ -702,21 +738,31 @@ var AuthMenuSurface = class extends Component {
|
|
|
702
738
|
const googleEnabled = viewModel.enabledExternalProviders?.includes("google") ?? false;
|
|
703
739
|
return /* @__PURE__ */ jsx(Fragment$1, { children: /* @__PURE__ */ jsxs("div", {
|
|
704
740
|
class: "seams-auth-methods",
|
|
705
|
-
children: [
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
741
|
+
children: [
|
|
742
|
+
/* @__PURE__ */ jsxs("button", {
|
|
743
|
+
class: "seams-auth-method-btn seams-auth-method-btn-primary",
|
|
744
|
+
type: "button",
|
|
745
|
+
"data-auth-menu-primary": true,
|
|
746
|
+
disabled: !isAuthMenuActionReady(viewModel),
|
|
747
|
+
onClick: this.onPrimaryClick,
|
|
748
|
+
children: [fingerprintIcon(), /* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx(WalletText, { copy: passkeyButtonLabel(viewModel.mode) }) })]
|
|
749
|
+
}),
|
|
750
|
+
googleEnabled ? /* @__PURE__ */ jsxs("button", {
|
|
751
|
+
class: "seams-auth-method-btn",
|
|
752
|
+
type: "button",
|
|
753
|
+
"data-auth-menu-provider": "google",
|
|
754
|
+
disabled: !isAuthMenuGoogleActionReady(viewModel),
|
|
755
|
+
onClick: this.onGoogleClick,
|
|
756
|
+
children: [googleIcon(), /* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx(WalletText, { copy: viewModel.mode === "login" ? "Email code (Google)" : "Continue with Google" }) })]
|
|
757
|
+
}) : null,
|
|
758
|
+
viewModel.mode === "login" && viewModel.accountOptions.some(voiceAvailableForWallet.bind(null, selectedLoginAccount(viewModel)?.walletId)) ? /* @__PURE__ */ jsxs("button", {
|
|
759
|
+
type: "button",
|
|
760
|
+
class: "seams-auth-method-btn",
|
|
761
|
+
"data-auth-menu-voiceid": true,
|
|
762
|
+
onClick: this.onVoiceClick,
|
|
763
|
+
children: [voiceMethodIcon(), /* @__PURE__ */ jsx("span", { children: "Unlock with VoiceID" })]
|
|
764
|
+
}) : null
|
|
765
|
+
]
|
|
720
766
|
}) });
|
|
721
767
|
}
|
|
722
768
|
renderOtherOptions() {
|
|
@@ -1515,6 +1561,22 @@ var AuthMenuSurface = class extends Component {
|
|
|
1515
1561
|
}) });
|
|
1516
1562
|
}
|
|
1517
1563
|
};
|
|
1564
|
+
function voiceAvailableForWallet(walletId, account) {
|
|
1565
|
+
return account.walletId === walletId && account.authMethod === "voiceid";
|
|
1566
|
+
}
|
|
1567
|
+
function voiceMethodIcon() {
|
|
1568
|
+
return /* @__PURE__ */ jsx("svg", {
|
|
1569
|
+
width: "20",
|
|
1570
|
+
height: "20",
|
|
1571
|
+
viewBox: "0 0 24 24",
|
|
1572
|
+
fill: "none",
|
|
1573
|
+
stroke: "currentColor",
|
|
1574
|
+
strokeWidth: "1.75",
|
|
1575
|
+
strokeLinecap: "round",
|
|
1576
|
+
"aria-hidden": "true",
|
|
1577
|
+
children: /* @__PURE__ */ jsx("path", { d: "M4 10v4m4-7v10m4-14v18m4-14v10m4-7v4" })
|
|
1578
|
+
});
|
|
1579
|
+
}
|
|
1518
1580
|
//#endregion
|
|
1519
1581
|
export { AuthMenuSurface };
|
|
1520
1582
|
|
|
@@ -178,9 +178,6 @@ function googleIcon() {
|
|
|
178
178
|
function chevronIcon() {
|
|
179
179
|
return strokeIcon("13", "1.75", /* @__PURE__ */ jsx("path", { d: "m9 6 6 6-6 6" }));
|
|
180
180
|
}
|
|
181
|
-
function shieldIcon() {
|
|
182
|
-
return strokeIcon("14", "1.6", /* @__PURE__ */ jsx("path", { d: "M12 3 4.5 6v5.5c0 4.2 2.7 7.4 7.5 9.5 4.8-2.1 7.5-5.3 7.5-9.5V6L12 3Z" }), /* @__PURE__ */ jsx("path", { d: "m8.5 11.5 2.5 2.5 4.5-5" }));
|
|
183
|
-
}
|
|
184
181
|
function alertIcon() {
|
|
185
182
|
return strokeIcon("15", "1.6", /* @__PURE__ */ jsx("path", { d: "M12 8v5" }), /* @__PURE__ */ jsx("path", { d: "M12 16v.1" }), /* @__PURE__ */ jsx("circle", {
|
|
186
183
|
cx: "12",
|
|
@@ -189,6 +186,6 @@ function alertIcon() {
|
|
|
189
186
|
}));
|
|
190
187
|
}
|
|
191
188
|
//#endregion
|
|
192
|
-
export { accountDropdownIcon, alertIcon, backIcon, chevronIcon, fingerprintIcon, googleIcon, linkDeviceIcon, linkFailedIcon, mailIcon, passkeyRingIcon, passkeySuccessIcon, recoveryIcon, rerollIcon
|
|
189
|
+
export { accountDropdownIcon, alertIcon, backIcon, chevronIcon, fingerprintIcon, googleIcon, linkDeviceIcon, linkFailedIcon, mailIcon, passkeyRingIcon, passkeySuccessIcon, recoveryIcon, rerollIcon };
|
|
193
190
|
|
|
194
191
|
//# sourceMappingURL=icons.js.map
|
|
@@ -99,17 +99,13 @@ function savedAccountsTriggerLabel(account) {
|
|
|
99
99
|
return emailAddress ? `Saved wallets. Selected wallet ID ${account.walletId}, email ${emailAddress}` : `Saved wallets. Selected ${account.walletId}`;
|
|
100
100
|
}
|
|
101
101
|
function accountGroups(options) {
|
|
102
|
-
const
|
|
103
|
-
const
|
|
104
|
-
return [{
|
|
105
|
-
|
|
106
|
-
label: "
|
|
107
|
-
accounts:
|
|
108
|
-
}
|
|
109
|
-
authMethod: "email_otp",
|
|
110
|
-
label: "Email OTP",
|
|
111
|
-
accounts: emailOtpAccounts
|
|
112
|
-
}].filter((group) => group.accounts.length > 0);
|
|
102
|
+
const wallets = /* @__PURE__ */ new Map();
|
|
103
|
+
for (const option of options) if (!wallets.has(option.walletId)) wallets.set(option.walletId, option);
|
|
104
|
+
return wallets.size ? [{
|
|
105
|
+
id: "wallets",
|
|
106
|
+
label: "Saved wallets",
|
|
107
|
+
accounts: [...wallets.values()]
|
|
108
|
+
}] : [];
|
|
113
109
|
}
|
|
114
110
|
//#endregion
|
|
115
111
|
export { AUTH_MENU_ACCOUNT_LIST_ID, AUTH_MENU_TITLE_ID, accountGroups, accountSecondaryText, authViewKey, menuNotice, modeLabel, modeSwitchCopy, otpCodeDigits, passkeyButtonLabel, recoveryAnnouncement, recoveryBackLabel, recoveryCaretAtPoint, recoveryNavigationLocked, renderDemoEmailCode, renderOtpCodeDigit, savedAccountsTriggerLabel, selectedAccountPrimaryText, selectedLoginAccount };
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { parseWalletId } from "../../../shared-ts/src/utils/domainIds.js";
|
|
2
|
+
//#region src/SeamsWeb/walletIframe/host/walletMutationGuard.ts
|
|
3
|
+
function requiredWallet(raw) {
|
|
4
|
+
const parsed = parseWalletId(raw);
|
|
5
|
+
if (!parsed.ok) throw new Error("Wallet mutation identity is invalid");
|
|
6
|
+
return parsed.value;
|
|
7
|
+
}
|
|
8
|
+
function walletForHostRequest(request, currentWalletId) {
|
|
9
|
+
switch (request.type) {
|
|
10
|
+
case "PM_ADD_WALLET_SIGNER":
|
|
11
|
+
case "PM_ADD_PASSKEY":
|
|
12
|
+
case "PM_ACTIVATE_AUTH_METHOD":
|
|
13
|
+
case "PM_SET_AUTH_METHOD_ENABLED":
|
|
14
|
+
case "PM_ADD_EMAIL_OTP":
|
|
15
|
+
case "PM_REVOKE_AUTH_METHOD":
|
|
16
|
+
case "PM_ACKNOWLEDGE_WALLET_RECOVERY_CODE_BACKUP":
|
|
17
|
+
case "PM_ROTATE_WALLET_RECOVERY_CODES":
|
|
18
|
+
case "PM_REQUEST_WALLET_CUSTODY_EMAIL_OTP_CHALLENGE":
|
|
19
|
+
case "PM_SIGN_TX_WITH_ACTIONS":
|
|
20
|
+
case "PM_SIGN_AND_SEND_TX":
|
|
21
|
+
case "PM_SIGN_DELEGATE_ACTION":
|
|
22
|
+
case "PM_SIGN_NEP413":
|
|
23
|
+
case "PM_REVOKE_LINKED_DEVICE": return requiredWallet(request.payload?.walletId);
|
|
24
|
+
case "PM_SIGN_TEMPO":
|
|
25
|
+
case "PM_RESOLVE_EXACT_KEY_EXPORT_LANE":
|
|
26
|
+
case "PM_EXPORT_KEYPAIR_UI": return requiredWallet(request.payload?.walletSession.walletId);
|
|
27
|
+
case "PM_SYNC_ACCOUNT_FLOW": {
|
|
28
|
+
const walletId = request.payload?.walletId ?? currentWalletId;
|
|
29
|
+
return walletId === null ? null : requiredWallet(walletId);
|
|
30
|
+
}
|
|
31
|
+
case "PM_SCAN_AND_LINK_DEVICE": return currentWalletId === null ? null : requiredWallet(currentWalletId);
|
|
32
|
+
case "PM_SET_TRANSACTION_VIEW":
|
|
33
|
+
case "PM_TRANSACTION_BROADCAST_STARTED":
|
|
34
|
+
case "PING":
|
|
35
|
+
case "PM_GET_AUTH_METHOD_AVAILABILITY":
|
|
36
|
+
case "PM_PREPARE_WALLET_RUNTIME":
|
|
37
|
+
case "PM_SET_CONFIG":
|
|
38
|
+
case "PM_ACTIVATE_TRANSACTION_REVIEW":
|
|
39
|
+
case "PM_CANCEL":
|
|
40
|
+
case "PM_OPEN_AUTH_MENU":
|
|
41
|
+
case "PM_CANCEL_AUTH_MENU":
|
|
42
|
+
case "PM_RESOLVE_AUTH_MENU_EXTERNAL_AUTH":
|
|
43
|
+
case "PM_REDEEM_HOSTED_WALLET_SEAMS_SESSION":
|
|
44
|
+
case "PM_REGISTER_WALLET":
|
|
45
|
+
case "PM_UNLOCK":
|
|
46
|
+
case "PM_UNLOCK_AUTH_METHOD":
|
|
47
|
+
case "PM_LOCK":
|
|
48
|
+
case "PM_LOCK_EXACT_WALLET_SESSION":
|
|
49
|
+
case "PM_GET_LAST_WALLET_MOVE_REQUEST":
|
|
50
|
+
case "PM_MOVE_WALLET":
|
|
51
|
+
case "PM_GET_WALLET_MOVE":
|
|
52
|
+
case "PM_GET_WALLET_PLACEMENT":
|
|
53
|
+
case "PM_GET_WALLET_SESSION":
|
|
54
|
+
case "PM_GET_EXACT_WALLET_SESSION_STATE":
|
|
55
|
+
case "PM_GET_NEAR_PROVISIONING_STATE":
|
|
56
|
+
case "PM_REQUEST_EMAIL_OTP_CHALLENGE":
|
|
57
|
+
case "PM_BEGIN_GOOGLE_EMAIL_OTP_WALLET_AUTH":
|
|
58
|
+
case "PM_GOOGLE_EMAIL_OTP_WALLET_AUTH_RESEND":
|
|
59
|
+
case "PM_GOOGLE_EMAIL_OTP_WALLET_AUTH_REROLL_WALLET_ID":
|
|
60
|
+
case "PM_GOOGLE_EMAIL_OTP_WALLET_AUTH_SUBMIT":
|
|
61
|
+
case "PM_GOOGLE_EMAIL_OTP_WALLET_AUTH_COMPLETE_REGISTRATION":
|
|
62
|
+
case "PM_GOOGLE_EMAIL_OTP_WALLET_AUTH_CANCEL":
|
|
63
|
+
case "PM_GET_WALLET_RECOVERY_CODE_STATUS":
|
|
64
|
+
case "PM_SEND_TRANSACTION":
|
|
65
|
+
case "PM_REPORT_TEMPO_BROADCAST_ACCEPTED":
|
|
66
|
+
case "PM_REPORT_TEMPO_BROADCAST_REJECTED":
|
|
67
|
+
case "PM_REPORT_TEMPO_FINALIZED":
|
|
68
|
+
case "PM_REPORT_TEMPO_DROPPED_OR_REPLACED":
|
|
69
|
+
case "PM_RECONCILE_TEMPO_NONCE_LANE":
|
|
70
|
+
case "PM_GET_RECENT_UNLOCKS":
|
|
71
|
+
case "PM_SET_CONFIRM_BEHAVIOR":
|
|
72
|
+
case "PM_SET_CONFIRMATION_CONFIG":
|
|
73
|
+
case "PM_GET_CONFIRMATION_CONFIG":
|
|
74
|
+
case "PM_HAS_PASSKEY":
|
|
75
|
+
case "PM_LIST_LINKED_DEVICES":
|
|
76
|
+
case "PM_START_DEVICE2_LINKING_FLOW":
|
|
77
|
+
case "PM_DEVICE_LINK_TARGET_FACTOR_ACTION":
|
|
78
|
+
case "PM_DEVICE_LINK_EMAIL_OTP_BASE_FACTOR_ACTION":
|
|
79
|
+
case "PM_CANCEL_DEVICE_LINKING": return null;
|
|
80
|
+
default: throw new Error("Unsupported wallet mutation request");
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
//#endregion
|
|
84
|
+
export { walletForHostRequest };
|
|
85
|
+
|
|
86
|
+
//# sourceMappingURL=walletMutationGuard.js.map
|
|
@@ -10,6 +10,7 @@ function resolveWalletRpId(config) {
|
|
|
10
10
|
}
|
|
11
11
|
function createWalletHostConfig(config) {
|
|
12
12
|
return {
|
|
13
|
+
authMethods: config.authMethods,
|
|
13
14
|
network: config.network,
|
|
14
15
|
registration: config.registration,
|
|
15
16
|
signing: config.signing,
|
|
@@ -23,6 +24,7 @@ function createWalletHostConfig(config) {
|
|
|
23
24
|
}
|
|
24
25
|
function replaceWalletHostAppearance(config, appearance) {
|
|
25
26
|
return {
|
|
27
|
+
authMethods: config.authMethods,
|
|
26
28
|
network: config.network,
|
|
27
29
|
registration: config.registration,
|
|
28
30
|
signing: config.signing,
|
|
@@ -31,7 +33,27 @@ function replaceWalletHostAppearance(config, appearance) {
|
|
|
31
33
|
ui: { appearance }
|
|
32
34
|
};
|
|
33
35
|
}
|
|
36
|
+
function normalizeForStableSerialize(value) {
|
|
37
|
+
if (Array.isArray(value)) return value.map(normalizeForStableSerialize);
|
|
38
|
+
if (value && typeof value === "object") {
|
|
39
|
+
const record = value;
|
|
40
|
+
const normalized = {};
|
|
41
|
+
for (const key of Object.keys(record).sort()) normalized[key] = normalizeForStableSerialize(record[key]);
|
|
42
|
+
return normalized;
|
|
43
|
+
}
|
|
44
|
+
return value;
|
|
45
|
+
}
|
|
46
|
+
function walletHostExecutionFingerprint(config) {
|
|
47
|
+
return JSON.stringify(normalizeForStableSerialize({
|
|
48
|
+
authMethods: config?.authMethods,
|
|
49
|
+
network: config?.network,
|
|
50
|
+
registration: config?.registration,
|
|
51
|
+
signing: config?.signing,
|
|
52
|
+
webauthn: config?.webauthn,
|
|
53
|
+
rpId: config?.wallet.rpId
|
|
54
|
+
}));
|
|
55
|
+
}
|
|
34
56
|
//#endregion
|
|
35
|
-
export { createWalletHostConfig, replaceWalletHostAppearance };
|
|
57
|
+
export { createWalletHostConfig, replaceWalletHostAppearance, walletHostExecutionFingerprint };
|
|
36
58
|
|
|
37
59
|
//# sourceMappingURL=configuration.js.map
|
|
@@ -324,6 +324,7 @@ function parseWalletAuthMethodBinding(value) {
|
|
|
324
324
|
function walletIdFromAuthBinding(binding) {
|
|
325
325
|
switch (binding.kind) {
|
|
326
326
|
case "passkey": return binding.scope.wallet.walletId;
|
|
327
|
+
case "voiceid":
|
|
327
328
|
case "email_otp": return binding.wallet.walletId;
|
|
328
329
|
}
|
|
329
330
|
throw new Error("Wallet auth-method binding kind is invalid");
|
|
@@ -405,6 +405,12 @@ function parseHostedAuthMenuOutcome(value) {
|
|
|
405
405
|
"method"
|
|
406
406
|
])) return null;
|
|
407
407
|
const walletId = parseWalletId(record.walletId);
|
|
408
|
+
if (record.kind === "authenticated" && record.method === "voiceid") return walletId.ok ? {
|
|
409
|
+
kind: "authenticated",
|
|
410
|
+
authMenuSessionId,
|
|
411
|
+
walletId: walletId.value,
|
|
412
|
+
method: "voiceid"
|
|
413
|
+
} : null;
|
|
408
414
|
const method = record.method === "passkey" || record.method === "google_email_otp" ? record.method : null;
|
|
409
415
|
return walletId.ok && method ? {
|
|
410
416
|
kind: record.kind,
|
|
@@ -458,7 +464,7 @@ function parseHostedAuthMenuOutcome(value) {
|
|
|
458
464
|
default: return null;
|
|
459
465
|
}
|
|
460
466
|
}
|
|
461
|
-
const WALLET_PROTOCOL_VERSION = "
|
|
467
|
+
const WALLET_PROTOCOL_VERSION = "17.0.0";
|
|
462
468
|
const WALLET_IFRAME_PROTOCOL_VERSION_MISMATCH = "WALLET_IFRAME_PROTOCOL_VERSION_MISMATCH";
|
|
463
469
|
const HOSTED_WALLET_REDEMPTION_PAYLOAD_FIELDS = [
|
|
464
470
|
"home",
|
|
@@ -33,6 +33,25 @@ function parseIdentity(value) {
|
|
|
33
33
|
generation: value.generation
|
|
34
34
|
});
|
|
35
35
|
}
|
|
36
|
+
function parseTransactionReviewWire(value) {
|
|
37
|
+
if (!isPlainObject(value) || value.kind !== "transaction_review_v1" || !onlyKeys(value, [
|
|
38
|
+
"kind",
|
|
39
|
+
"connectionId",
|
|
40
|
+
"requestId",
|
|
41
|
+
"surfaceId",
|
|
42
|
+
"generation",
|
|
43
|
+
"validity"
|
|
44
|
+
])) throw new TransactionReviewError("review_invalid_input", "Invalid transaction review metadata");
|
|
45
|
+
const identity = parseIdentity(value);
|
|
46
|
+
return Object.freeze({
|
|
47
|
+
kind: "transaction_review_v1",
|
|
48
|
+
connectionId: identity.connectionId,
|
|
49
|
+
requestId: identity.requestId,
|
|
50
|
+
surfaceId: identity.surfaceId,
|
|
51
|
+
generation: identity.generation,
|
|
52
|
+
validity: parseTransactionReviewValidity(value.validity)
|
|
53
|
+
});
|
|
54
|
+
}
|
|
36
55
|
function parseTransactionReviewState(value) {
|
|
37
56
|
if (!isPlainObject(value) || !onlyKeys(value, [
|
|
38
57
|
"connectionId",
|
|
@@ -78,6 +97,6 @@ function transactionReviewCancellationCode(value) {
|
|
|
78
97
|
}
|
|
79
98
|
}
|
|
80
99
|
//#endregion
|
|
81
|
-
export { TransactionReviewError, assertTransactionReviewValid, parseTransactionReviewState, parseTransactionReviewValidity, reviewedConfirmationConfig, sameTransactionReviewIdentity, transactionReviewCancellationCode };
|
|
100
|
+
export { TransactionReviewError, assertTransactionReviewValid, parseTransactionReviewState, parseTransactionReviewValidity, parseTransactionReviewWire, reviewedConfirmationConfig, sameTransactionReviewIdentity, transactionReviewCancellationCode };
|
|
82
101
|
|
|
83
102
|
//# sourceMappingURL=transactionReview.js.map
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { requireRecord } from "../../shared-ts/src/utils/validation.js";
|
|
2
|
+
import { rejectUnknownFields } from "../../shared-ts/src/utils/exactRecord.js";
|
|
3
|
+
import { IndexedDBManager } from "../indexedDB/index.js";
|
|
4
|
+
//#region src/core/authMethods/availability.ts
|
|
5
|
+
function availabilityKey(walletId, methodId) {
|
|
6
|
+
return `wallet-auth-method-availability:${encodeURIComponent(walletId)}:${encodeURIComponent(methodId)}`;
|
|
7
|
+
}
|
|
8
|
+
async function readAuthMethodEnabled(walletId, methodId) {
|
|
9
|
+
return parseStoredAuthMethodAvailability(await IndexedDBManager.getAppState(availabilityKey(walletId, methodId))).enabled;
|
|
10
|
+
}
|
|
11
|
+
function parseStoredAuthMethodAvailability(raw) {
|
|
12
|
+
if (raw === void 0 || raw === null) return {
|
|
13
|
+
enabled: true,
|
|
14
|
+
revision: "initial"
|
|
15
|
+
};
|
|
16
|
+
const record = requireRecord(raw, "authentication method availability");
|
|
17
|
+
rejectUnknownFields(record, ["kind", "revision"], "authentication method availability");
|
|
18
|
+
if (record.kind !== "enabled" && record.kind !== "disabled") throw new Error("Authentication method availability is invalid.");
|
|
19
|
+
if (record.revision !== void 0 && (typeof record.revision !== "string" || !record.revision)) throw new Error("Authentication method availability revision is invalid.");
|
|
20
|
+
return {
|
|
21
|
+
enabled: record.kind === "enabled",
|
|
22
|
+
revision: record.revision ?? "initial"
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
//#endregion
|
|
26
|
+
export { availabilityKey, parseStoredAuthMethodAvailability, readAuthMethodEnabled };
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=availability.js.map
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { requireRecord } from "../../shared-ts/src/utils/validation.js";
|
|
2
|
+
import { parseWalletAuthMethodId } from "../../shared-ts/src/utils/domainIds.js";
|
|
3
|
+
import { rejectUnknownFields } from "../../shared-ts/src/utils/exactRecord.js";
|
|
4
|
+
//#region src/core/authMethods/availabilityTypes.ts
|
|
5
|
+
function parseAuthMethodAvailability(value) {
|
|
6
|
+
const record = requireRecord(value, "authentication method availability");
|
|
7
|
+
if (record.kind === "not_enrolled") {
|
|
8
|
+
rejectUnknownFields(record, ["kind"], "authentication method availability");
|
|
9
|
+
return { kind: "not_enrolled" };
|
|
10
|
+
}
|
|
11
|
+
rejectUnknownFields(record, ["kind", "walletAuthMethodId"], "authentication method availability");
|
|
12
|
+
const method = parseWalletAuthMethodId(record.walletAuthMethodId);
|
|
13
|
+
if (!method.ok) throw new Error("Authentication method identity is invalid.");
|
|
14
|
+
switch (record.kind) {
|
|
15
|
+
case "enabled": return {
|
|
16
|
+
kind: "enabled",
|
|
17
|
+
walletAuthMethodId: method.value
|
|
18
|
+
};
|
|
19
|
+
case "disabled": return {
|
|
20
|
+
kind: "disabled",
|
|
21
|
+
walletAuthMethodId: method.value
|
|
22
|
+
};
|
|
23
|
+
default: throw new Error("Authentication method availability is invalid.");
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//#endregion
|
|
27
|
+
export { parseAuthMethodAvailability };
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=availabilityTypes.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { isPlainObject } from "../../shared-ts/src/utils/validation.js";
|
|
2
|
+
//#region src/core/authMethods/plugins.ts
|
|
3
|
+
function parseWalletAuthMethodPlugins(value) {
|
|
4
|
+
if (!Array.isArray(value)) throw new Error("authMethods must be an array of wallet auth method plugins.");
|
|
5
|
+
const plugins = [];
|
|
6
|
+
const seen = /* @__PURE__ */ new Set();
|
|
7
|
+
for (const candidate of value) {
|
|
8
|
+
if (!isPlainObject(candidate) || Object.keys(candidate).length !== 1 || candidate.kind !== "voiceid" || seen.has(candidate.kind)) throw new Error("Unsupported or duplicate wallet auth method plugin.");
|
|
9
|
+
seen.add(candidate.kind);
|
|
10
|
+
plugins.push({ kind: "voiceid" });
|
|
11
|
+
}
|
|
12
|
+
return plugins;
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
export { parseWalletAuthMethodPlugins };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=plugins.js.map
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { normalizeTrimmedString } from "../../shared-ts/src/utils/normalize.js";
|
|
2
2
|
import { normalizeWalletLocale } from "../ui/locale.js";
|
|
3
|
+
import { parseWalletAuthMethodPlugins } from "../authMethods/plugins.js";
|
|
3
4
|
import { copyEcdsaSignerProvisioningDefaults, resolveAppearanceTheme, resolveBoolean, resolveChains, resolveIntegerInRange, resolveThemePalette } from "./configHelpers.js";
|
|
4
5
|
import { normalizeWalletHostVariant } from "../browser/walletIframe/hostVariant.js";
|
|
5
6
|
import { SIGNING_SESSION_SEAL_ALG, SIGNING_SESSION_SEAL_GROUP_ID } from "../../shared-ts/src/utils/signingSessionSeal.js";
|
|
@@ -156,6 +157,7 @@ function buildConfigsFromDefaults(args) {
|
|
|
156
157
|
defaults
|
|
157
158
|
});
|
|
158
159
|
return {
|
|
160
|
+
authMethods: parseWalletAuthMethodPlugins(overrides.authMethods ?? defaults.authMethods),
|
|
159
161
|
network: {
|
|
160
162
|
chains,
|
|
161
163
|
relayer: {
|