@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
|
@@ -3237,6 +3237,7 @@ function parsePasskeyCustodySecretBinding(raw, label = "passkeyCustodySecretBind
|
|
|
3237
3237
|
var WALLET_CUSTODY_ENVELOPE_VERSION_V2 = "wallet_custody_envelope_v2";
|
|
3238
3238
|
var PASSKEY_PRF_KEK_VERSION_V1 = "passkey_prf_kek_hkdf_sha256_v1";
|
|
3239
3239
|
var EMAIL_OTP_FACTOR_KEK_VERSION_V1 = "email_otp_factor_kek_hkdf_sha256_v1";
|
|
3240
|
+
var VOICEID_DEVICE_FACTOR_KEK_VERSION_V1 = "voiceid_device_factor_kek_hkdf_sha256_v1";
|
|
3240
3241
|
var ENVELOPE_OWNERSHIP_FIELDS = ["kind", "walletAuthMethodId"];
|
|
3241
3242
|
function parseWalletCustodyEnvelopeOwnership(raw, label) {
|
|
3242
3243
|
if (typeof raw !== "object" || raw === null || Array.isArray(raw)) {
|
|
@@ -3300,6 +3301,13 @@ function buildEmailOtpEnvelopeFactor(args) {
|
|
|
3300
3301
|
kekVersion: EMAIL_OTP_FACTOR_KEK_VERSION_V1
|
|
3301
3302
|
};
|
|
3302
3303
|
}
|
|
3304
|
+
function buildVoiceIdEnvelopeFactor(args) {
|
|
3305
|
+
return {
|
|
3306
|
+
kind: "voiceid",
|
|
3307
|
+
deviceKeyId: args.deviceKeyId,
|
|
3308
|
+
kekVersion: VOICEID_DEVICE_FACTOR_KEK_VERSION_V1
|
|
3309
|
+
};
|
|
3310
|
+
}
|
|
3303
3311
|
function buildActiveEnvelopeLifecycle(args) {
|
|
3304
3312
|
return { state: "active", activatedAtMs: args.activatedAtMs };
|
|
3305
3313
|
}
|
|
@@ -3378,7 +3386,8 @@ var EMAIL_OTP_FACTOR_FIELDS = [
|
|
|
3378
3386
|
"enrollmentSealKeyVersion",
|
|
3379
3387
|
"kekVersion"
|
|
3380
3388
|
];
|
|
3381
|
-
var
|
|
3389
|
+
var VOICEID_FACTOR_FIELDS = ["kind", "deviceKeyId", "kekVersion"];
|
|
3390
|
+
var ALL_FACTOR_FIELDS = Array.from(new Set([...PASSKEY_FACTOR_FIELDS, ...EMAIL_OTP_FACTOR_FIELDS, ...VOICEID_FACTOR_FIELDS]));
|
|
3382
3391
|
function requireNonEmptyString(value, label) {
|
|
3383
3392
|
if (typeof value !== "string" || !value.trim())
|
|
3384
3393
|
throw new Error(`${label} is required`);
|
|
@@ -3414,8 +3423,17 @@ function parseWalletCustodyEnvelopeFactor(raw, label = "factor") {
|
|
|
3414
3423
|
enrollmentSealKeyVersion: requireNonEmptyString(record.enrollmentSealKeyVersion, `${label}.enrollmentSealKeyVersion`)
|
|
3415
3424
|
});
|
|
3416
3425
|
}
|
|
3426
|
+
case "voiceid": {
|
|
3427
|
+
rejectUnknownFields(record, VOICEID_FACTOR_FIELDS, label, ALL_FACTOR_FIELDS);
|
|
3428
|
+
if (record.kekVersion !== VOICEID_DEVICE_FACTOR_KEK_VERSION_V1) {
|
|
3429
|
+
throw new Error(`${label}.kekVersion must be ${VOICEID_DEVICE_FACTOR_KEK_VERSION_V1}`);
|
|
3430
|
+
}
|
|
3431
|
+
return buildVoiceIdEnvelopeFactor({
|
|
3432
|
+
deviceKeyId: parseDigestField(record.deviceKeyId, `${label}.deviceKeyId`)
|
|
3433
|
+
});
|
|
3434
|
+
}
|
|
3417
3435
|
default:
|
|
3418
|
-
throw new Error(`${label}.kind must be passkey or
|
|
3436
|
+
throw new Error(`${label}.kind must be passkey, email_otp, or voiceid`);
|
|
3419
3437
|
}
|
|
3420
3438
|
}
|
|
3421
3439
|
var ENVELOPE_RECORD_FIELDS = [
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seams/wallet",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.24.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Seams web and runtime TypeScript SDK for NEAR and EVM-family wallets",
|
|
6
6
|
"main": "./dist/esm/index.js",
|
|
@@ -76,6 +76,11 @@
|
|
|
76
76
|
"types": "./dist/types/wallet/src/react/externalNear.d.ts",
|
|
77
77
|
"import": "./dist/esm/react/externalNear.js",
|
|
78
78
|
"default": "./dist/esm/react/externalNear.js"
|
|
79
|
+
},
|
|
80
|
+
"./voiceid-host": {
|
|
81
|
+
"types": "./dist/types/wallet/src/voiceid-host.d.ts",
|
|
82
|
+
"import": "./dist/esm/voiceid-host.js",
|
|
83
|
+
"default": "./dist/esm/voiceid-host.js"
|
|
79
84
|
}
|
|
80
85
|
},
|
|
81
86
|
"files": [
|
|
@@ -194,13 +199,13 @@
|
|
|
194
199
|
}
|
|
195
200
|
},
|
|
196
201
|
"dependencies": {
|
|
202
|
+
"@levischuck/tiny-cbor": "0.2.11",
|
|
197
203
|
"@near-js/types": "^2.4.0",
|
|
198
204
|
"borsh": "1.0.0",
|
|
199
205
|
"bs58": "^6.0.0",
|
|
200
206
|
"idb": "^8.0.3",
|
|
201
207
|
"preact": "10.29.8",
|
|
202
|
-
"viem": "^2.38.6"
|
|
203
|
-
"voice-glow": "0.2.1"
|
|
208
|
+
"viem": "^2.38.6"
|
|
204
209
|
},
|
|
205
210
|
"devDependencies": {
|
|
206
211
|
"@simplewebauthn/server": "^13.2.2",
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { lucideIcon } from "./lucideIcon.js";
|
|
2
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
-
//#region src/react/components/AccountMenuButton/icons/PlusIcon.tsx
|
|
4
|
-
const PlusIcon = lucideIcon("plus", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "M5 12h14" }), /* @__PURE__ */ jsx("path", { d: "M12 5v14" })] }));
|
|
5
|
-
//#endregion
|
|
6
|
-
export { PlusIcon };
|
|
7
|
-
|
|
8
|
-
//# sourceMappingURL=PlusIcon.js.map
|
|
@@ -1,313 +0,0 @@
|
|
|
1
|
-
.voice-assistant-card {
|
|
2
|
-
--voice-surface: #1d1d1d;
|
|
3
|
-
--voice-foreground: #f2f2f2;
|
|
4
|
-
--voice-muted: rgb(202 202 202 / 70%);
|
|
5
|
-
--voice-bubble: #303030;
|
|
6
|
-
--voice-divider: rgb(255 255 255 / 4%);
|
|
7
|
-
--voice-button: rgb(255 255 255 / 10%);
|
|
8
|
-
--voice-button-shadow:
|
|
9
|
-
0 1px 1px rgb(0 0 0 / 24%), inset 0 0 0 1px rgb(255 255 255 / 4%),
|
|
10
|
-
inset 0 1px 0 rgb(255 255 255 / 6%);
|
|
11
|
-
display: grid;
|
|
12
|
-
inline-size: 360px;
|
|
13
|
-
max-inline-size: 100%;
|
|
14
|
-
min-inline-size: 0;
|
|
15
|
-
border-radius: 24px;
|
|
16
|
-
background: var(--voice-surface);
|
|
17
|
-
color: var(--voice-foreground);
|
|
18
|
-
font: 400 14px / 20px var(--seams-fonts-sans, Inter, system-ui, sans-serif);
|
|
19
|
-
-webkit-font-smoothing: antialiased;
|
|
20
|
-
color-scheme: dark;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
.voice-assistant-card[data-theme='light'] {
|
|
24
|
-
--voice-surface: #fff;
|
|
25
|
-
--voice-foreground: #0d0d0d;
|
|
26
|
-
--voice-muted: #6c6c6c;
|
|
27
|
-
--voice-bubble: #f0f0f0;
|
|
28
|
-
--voice-divider: rgb(0 0 0 / 4%);
|
|
29
|
-
--voice-button: rgb(255 255 255 / 40%);
|
|
30
|
-
--voice-button-shadow:
|
|
31
|
-
0 1px 3px rgb(0 0 0 / 4%), inset 0 0 0 1px rgb(0 0 0 / 8%), inset 0 -1px 0 rgb(0 0 0 / 8%);
|
|
32
|
-
box-shadow:
|
|
33
|
-
0 0 0 1px rgb(0 0 0 / 4%),
|
|
34
|
-
0 8px 32px -4px rgb(0 0 0 / 6%),
|
|
35
|
-
0 1px 3px rgb(0 0 0 / 4%);
|
|
36
|
-
color-scheme: light;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
.voice-assistant-card,
|
|
40
|
-
.voice-assistant-card * {
|
|
41
|
-
box-sizing: border-box;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
.voice-assistant-beam {
|
|
45
|
-
margin: -1px;
|
|
46
|
-
border-radius: 25px;
|
|
47
|
-
min-inline-size: 0;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
.voice-assistant-content {
|
|
51
|
-
position: relative;
|
|
52
|
-
z-index: 5;
|
|
53
|
-
display: flex;
|
|
54
|
-
flex-direction: column;
|
|
55
|
-
min-block-size: 342px;
|
|
56
|
-
border-radius: 25px;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
.voice-assistant-header {
|
|
60
|
-
display: flex;
|
|
61
|
-
align-items: center;
|
|
62
|
-
gap: 12px;
|
|
63
|
-
padding: 16px;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
.voice-assistant-avatar {
|
|
67
|
-
display: grid;
|
|
68
|
-
flex: none;
|
|
69
|
-
place-items: center;
|
|
70
|
-
inline-size: 32px;
|
|
71
|
-
block-size: 32px;
|
|
72
|
-
border-radius: 50%;
|
|
73
|
-
background: #27272e;
|
|
74
|
-
color: #e6dfec;
|
|
75
|
-
box-shadow: inset 0 0 0 1px rgb(255 255 255 / 4%);
|
|
76
|
-
font-size: 13px;
|
|
77
|
-
font-weight: 500;
|
|
78
|
-
line-height: 1;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
.voice-assistant-card[data-theme='light'] .voice-assistant-avatar {
|
|
82
|
-
background: #eee9f2;
|
|
83
|
-
color: #37364f;
|
|
84
|
-
box-shadow: inset 0 0 0 1px rgb(0 0 0 / 2%);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
.voice-assistant-identity {
|
|
88
|
-
min-inline-size: 0;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
.voice-assistant-identity h2,
|
|
92
|
-
.voice-assistant-identity p {
|
|
93
|
-
margin: 0;
|
|
94
|
-
overflow-wrap: anywhere;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
.voice-assistant-identity h2 {
|
|
98
|
-
font-size: 16px;
|
|
99
|
-
font-weight: 500;
|
|
100
|
-
line-height: 22px;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
.voice-assistant-identity p {
|
|
104
|
-
color: var(--voice-muted);
|
|
105
|
-
font-size: 12px;
|
|
106
|
-
line-height: 16px;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
.voice-assistant-divider {
|
|
110
|
-
flex: none;
|
|
111
|
-
block-size: 1px;
|
|
112
|
-
background: linear-gradient(90deg, transparent, var(--voice-divider) 20% 80%, transparent);
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
.voice-assistant-body {
|
|
116
|
-
display: flex;
|
|
117
|
-
flex-direction: column;
|
|
118
|
-
gap: 16px;
|
|
119
|
-
padding: 24px 24px 0;
|
|
120
|
-
overflow-wrap: anywhere;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
.voice-assistant-bubble-row {
|
|
124
|
-
padding-inline-start: 8px;
|
|
125
|
-
animation: voice-assistant-float 4s ease-in-out infinite;
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
.voice-assistant-bubble {
|
|
129
|
-
position: relative;
|
|
130
|
-
display: inline-block;
|
|
131
|
-
max-inline-size: 240px;
|
|
132
|
-
margin: 0;
|
|
133
|
-
padding: 8px 12px;
|
|
134
|
-
border-radius: 18px;
|
|
135
|
-
background: var(--voice-bubble);
|
|
136
|
-
font-size: 14px;
|
|
137
|
-
line-height: 20px;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
.voice-assistant-bubble span {
|
|
141
|
-
position: relative;
|
|
142
|
-
z-index: 1;
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
.voice-assistant-bubble::before {
|
|
146
|
-
content: '';
|
|
147
|
-
position: absolute;
|
|
148
|
-
inset-block-end: 0;
|
|
149
|
-
inset-inline-start: -7px;
|
|
150
|
-
inline-size: 20px;
|
|
151
|
-
block-size: 20px;
|
|
152
|
-
border-end-end-radius: 16px 14px;
|
|
153
|
-
background: var(--voice-bubble);
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
.voice-assistant-bubble::after {
|
|
157
|
-
content: '';
|
|
158
|
-
position: absolute;
|
|
159
|
-
inset-block-end: 0;
|
|
160
|
-
inset-inline-start: -26px;
|
|
161
|
-
inline-size: 26px;
|
|
162
|
-
block-size: 20px;
|
|
163
|
-
border-end-end-radius: 10px;
|
|
164
|
-
background: var(--voice-surface);
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
.voice-assistant-transcript {
|
|
168
|
-
padding-inline-start: 32px;
|
|
169
|
-
text-align: end;
|
|
170
|
-
text-wrap: pretty;
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
.voice-assistant-footer {
|
|
174
|
-
display: flex;
|
|
175
|
-
flex-direction: column;
|
|
176
|
-
align-items: center;
|
|
177
|
-
gap: 12px;
|
|
178
|
-
margin-block-start: auto;
|
|
179
|
-
padding: 24px;
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
.voice-assistant-caption {
|
|
183
|
-
display: grid;
|
|
184
|
-
color: var(--voice-muted);
|
|
185
|
-
font-size: 12px;
|
|
186
|
-
line-height: 16px;
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
.voice-assistant-caption > span {
|
|
190
|
-
grid-area: 1 / 1;
|
|
191
|
-
text-align: center;
|
|
192
|
-
opacity: 0;
|
|
193
|
-
transform: translateY(4px);
|
|
194
|
-
transition:
|
|
195
|
-
opacity var(--seams-voice-transition, 150ms ease-out),
|
|
196
|
-
transform var(--seams-voice-transition, 150ms ease-out);
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
.voice-assistant-caption > span[data-visible='true'] {
|
|
200
|
-
opacity: 1;
|
|
201
|
-
transform: translateY(0);
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
.voice-assistant-status {
|
|
205
|
-
position: absolute;
|
|
206
|
-
inline-size: 1px;
|
|
207
|
-
block-size: 1px;
|
|
208
|
-
overflow: hidden;
|
|
209
|
-
clip-path: inset(50%);
|
|
210
|
-
white-space: nowrap;
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
.voice-assistant-mic {
|
|
214
|
-
display: grid;
|
|
215
|
-
place-items: center;
|
|
216
|
-
inline-size: 48px;
|
|
217
|
-
block-size: 48px;
|
|
218
|
-
padding: 0;
|
|
219
|
-
border: 0;
|
|
220
|
-
border-radius: 50%;
|
|
221
|
-
background: var(--voice-button);
|
|
222
|
-
box-shadow: var(--voice-button-shadow);
|
|
223
|
-
color: inherit;
|
|
224
|
-
font: inherit;
|
|
225
|
-
cursor: pointer;
|
|
226
|
-
touch-action: manipulation;
|
|
227
|
-
-webkit-tap-highlight-color: transparent;
|
|
228
|
-
user-select: none;
|
|
229
|
-
transition: transform var(--seams-voice-transition, 150ms ease-out);
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
.voice-assistant-mic:active {
|
|
233
|
-
transform: scale(0.95);
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
.voice-assistant-mic:focus-visible {
|
|
237
|
-
outline: 2px solid var(--voice-foreground);
|
|
238
|
-
outline-offset: 3px;
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
@media (hover: hover) and (pointer: fine) {
|
|
242
|
-
.voice-assistant-mic:hover {
|
|
243
|
-
background-image: linear-gradient(rgb(128 128 128 / 4%) 0 100%);
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
|
|
247
|
-
.voice-assistant-wave {
|
|
248
|
-
display: flex;
|
|
249
|
-
align-items: center;
|
|
250
|
-
gap: 2px;
|
|
251
|
-
block-size: 20px;
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
.voice-assistant-wave i {
|
|
255
|
-
inline-size: 2px;
|
|
256
|
-
block-size: 6px;
|
|
257
|
-
border-radius: 1px;
|
|
258
|
-
background: currentColor;
|
|
259
|
-
}
|
|
260
|
-
|
|
261
|
-
.voice-assistant-wave i:nth-child(2),
|
|
262
|
-
.voice-assistant-wave i:nth-child(4) {
|
|
263
|
-
block-size: 12px;
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
.voice-assistant-wave i:nth-child(3) {
|
|
267
|
-
block-size: 18px;
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
.voice-assistant-card[data-state='listening'] .voice-assistant-wave i {
|
|
271
|
-
animation: voice-assistant-wave 900ms ease-in-out infinite;
|
|
272
|
-
}
|
|
273
|
-
|
|
274
|
-
.voice-assistant-wave i:nth-child(2) {
|
|
275
|
-
animation-delay: -270ms;
|
|
276
|
-
}
|
|
277
|
-
|
|
278
|
-
.voice-assistant-wave i:nth-child(3) {
|
|
279
|
-
animation-delay: -540ms;
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
.voice-assistant-wave i:nth-child(4) {
|
|
283
|
-
animation-delay: -135ms;
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
.voice-assistant-wave i:nth-child(5) {
|
|
287
|
-
animation-delay: -405ms;
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
@keyframes voice-assistant-wave {
|
|
291
|
-
50% {
|
|
292
|
-
transform: scaleY(0.35);
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
@keyframes voice-assistant-float {
|
|
297
|
-
50% {
|
|
298
|
-
transform: translateY(-3px);
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
@media (prefers-reduced-motion: reduce) {
|
|
303
|
-
.voice-assistant-bubble-row,
|
|
304
|
-
.voice-assistant-card[data-state='listening'] .voice-assistant-wave i {
|
|
305
|
-
animation: none;
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
.voice-assistant-caption > span,
|
|
309
|
-
.voice-assistant-mic {
|
|
310
|
-
transition: none;
|
|
311
|
-
transform: none;
|
|
312
|
-
}
|
|
313
|
-
}
|
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { VoiceBeam } from "voice-glow";
|
|
4
|
-
import "./VoiceAssistantCard.css";
|
|
5
|
-
//#region src/react/components/VoiceAssistantCard.tsx
|
|
6
|
-
/** Controlled presentation. The caller owns audio, transcripts, and work. */
|
|
7
|
-
function VoiceAssistantCard(props) {
|
|
8
|
-
const titleId = React.useId();
|
|
9
|
-
const drive = beamDrive(props.state);
|
|
10
|
-
const listening = props.state.kind === "listening";
|
|
11
|
-
return /* @__PURE__ */ jsx("section", {
|
|
12
|
-
className: `voice-assistant-card ${props.className ?? ""}`,
|
|
13
|
-
style: props.style,
|
|
14
|
-
"data-theme": props.theme,
|
|
15
|
-
"data-state": props.state.kind,
|
|
16
|
-
"aria-labelledby": titleId,
|
|
17
|
-
children: /* @__PURE__ */ jsx(VoiceBeam, {
|
|
18
|
-
className: "voice-assistant-beam",
|
|
19
|
-
theme: props.theme,
|
|
20
|
-
level: drive.level,
|
|
21
|
-
stream: drive.stream,
|
|
22
|
-
processing: drive.processing,
|
|
23
|
-
children: /* @__PURE__ */ jsxs("div", {
|
|
24
|
-
className: "voice-assistant-content",
|
|
25
|
-
children: [
|
|
26
|
-
/* @__PURE__ */ jsxs("header", {
|
|
27
|
-
className: "voice-assistant-header",
|
|
28
|
-
children: [/* @__PURE__ */ jsx("span", {
|
|
29
|
-
className: "voice-assistant-avatar",
|
|
30
|
-
"aria-hidden": "true",
|
|
31
|
-
children: props.initials
|
|
32
|
-
}), /* @__PURE__ */ jsxs("div", {
|
|
33
|
-
className: "voice-assistant-identity",
|
|
34
|
-
children: [/* @__PURE__ */ jsx("h2", {
|
|
35
|
-
id: titleId,
|
|
36
|
-
children: props.name
|
|
37
|
-
}), /* @__PURE__ */ jsx("p", { children: props.description })]
|
|
38
|
-
})]
|
|
39
|
-
}),
|
|
40
|
-
/* @__PURE__ */ jsx("div", {
|
|
41
|
-
className: "voice-assistant-divider",
|
|
42
|
-
"aria-hidden": "true"
|
|
43
|
-
}),
|
|
44
|
-
/* @__PURE__ */ jsxs("div", {
|
|
45
|
-
className: "voice-assistant-body",
|
|
46
|
-
children: [/* @__PURE__ */ jsx("div", {
|
|
47
|
-
className: "voice-assistant-bubble-row",
|
|
48
|
-
children: /* @__PURE__ */ jsx("p", {
|
|
49
|
-
className: "voice-assistant-bubble",
|
|
50
|
-
children: /* @__PURE__ */ jsx("span", { children: props.message })
|
|
51
|
-
})
|
|
52
|
-
}), /* @__PURE__ */ jsx("div", {
|
|
53
|
-
className: "voice-assistant-transcript",
|
|
54
|
-
children: props.transcript
|
|
55
|
-
})]
|
|
56
|
-
}),
|
|
57
|
-
/* @__PURE__ */ jsxs("footer", {
|
|
58
|
-
className: "voice-assistant-footer",
|
|
59
|
-
children: [
|
|
60
|
-
/* @__PURE__ */ jsxs("div", {
|
|
61
|
-
className: "voice-assistant-caption",
|
|
62
|
-
"aria-hidden": "true",
|
|
63
|
-
children: [
|
|
64
|
-
/* @__PURE__ */ jsx("span", {
|
|
65
|
-
"data-visible": props.state.kind === "idle",
|
|
66
|
-
children: "Tap to speak"
|
|
67
|
-
}),
|
|
68
|
-
/* @__PURE__ */ jsx("span", {
|
|
69
|
-
"data-visible": listening,
|
|
70
|
-
children: "Listening…"
|
|
71
|
-
}),
|
|
72
|
-
/* @__PURE__ */ jsx("span", {
|
|
73
|
-
"data-visible": props.state.kind === "processing",
|
|
74
|
-
children: "One moment"
|
|
75
|
-
})
|
|
76
|
-
]
|
|
77
|
-
}),
|
|
78
|
-
/* @__PURE__ */ jsx("span", {
|
|
79
|
-
className: "voice-assistant-status",
|
|
80
|
-
role: "status",
|
|
81
|
-
children: stateCaption(props.state)
|
|
82
|
-
}),
|
|
83
|
-
/* @__PURE__ */ jsx("button", {
|
|
84
|
-
type: "button",
|
|
85
|
-
className: "voice-assistant-mic",
|
|
86
|
-
"aria-label": listening ? "Stop speaking" : "Start speaking",
|
|
87
|
-
"aria-pressed": listening,
|
|
88
|
-
onClick: props.onToggle,
|
|
89
|
-
children: /* @__PURE__ */ jsxs("span", {
|
|
90
|
-
className: "voice-assistant-wave",
|
|
91
|
-
"aria-hidden": "true",
|
|
92
|
-
children: [
|
|
93
|
-
/* @__PURE__ */ jsx("i", {}),
|
|
94
|
-
/* @__PURE__ */ jsx("i", {}),
|
|
95
|
-
/* @__PURE__ */ jsx("i", {}),
|
|
96
|
-
/* @__PURE__ */ jsx("i", {}),
|
|
97
|
-
/* @__PURE__ */ jsx("i", {})
|
|
98
|
-
]
|
|
99
|
-
})
|
|
100
|
-
})
|
|
101
|
-
]
|
|
102
|
-
})
|
|
103
|
-
]
|
|
104
|
-
})
|
|
105
|
-
})
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
function stateCaption(state) {
|
|
109
|
-
switch (state.kind) {
|
|
110
|
-
case "idle": return "Tap to speak";
|
|
111
|
-
case "listening": return "Listening…";
|
|
112
|
-
case "processing": return "One moment";
|
|
113
|
-
default: return assertNeverVoiceAssistantVariant(state);
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
function beamDrive(state) {
|
|
117
|
-
switch (state.kind) {
|
|
118
|
-
case "idle": return {
|
|
119
|
-
level: .06,
|
|
120
|
-
stream: null,
|
|
121
|
-
processing: false
|
|
122
|
-
};
|
|
123
|
-
case "processing": return {
|
|
124
|
-
level: .06,
|
|
125
|
-
stream: null,
|
|
126
|
-
processing: true
|
|
127
|
-
};
|
|
128
|
-
case "listening": switch (state.input.kind) {
|
|
129
|
-
case "level": return {
|
|
130
|
-
level: state.input.level,
|
|
131
|
-
stream: null,
|
|
132
|
-
processing: false
|
|
133
|
-
};
|
|
134
|
-
case "microphone": return {
|
|
135
|
-
level: 0,
|
|
136
|
-
stream: state.input.stream,
|
|
137
|
-
processing: false
|
|
138
|
-
};
|
|
139
|
-
default: return assertNeverVoiceAssistantVariant(state.input);
|
|
140
|
-
}
|
|
141
|
-
default: return assertNeverVoiceAssistantVariant(state);
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
function assertNeverVoiceAssistantVariant(value) {
|
|
145
|
-
throw new Error(`Unexpected voice assistant variant: ${String(value)}`);
|
|
146
|
-
}
|
|
147
|
-
//#endregion
|
|
148
|
-
export { VoiceAssistantCard };
|
|
149
|
-
|
|
150
|
-
//# sourceMappingURL=VoiceAssistantCard.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,d as t,f as n,l as r,o as i,p as a,u as o}from"./appearance-token-vars-BA3KQyEE.js";async function s(e,t,n){if(!e.isConnected||n?.aborted)return!1;let r=e.ownerDocument,i=r.defaultView?.navigator.clipboard;if(i?.writeText)try{return await i.writeText(t),!0}catch{}if(!e.isConnected||n?.aborted)return!1;let a=r.createElement(`textarea`);a.value=t,a.readOnly=!0,a.className=`seams-offscreen`,e.appendChild(a),a.select();try{return r.execCommand(`copy`)}finally{a.remove()}}function c(){return r(`span`,{class:`copy-icon`,"aria-hidden":`true`,children:[r(`span`,{class:`copy-icon-check`,children:r(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,children:r(`path`,{d:`M20 6 9 17l-5-5`})})}),r(`span`,{class:`copy-icon-copy`,children:r(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,children:[r(`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`}),r(`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`})]})})]})}let l=0;function u(e){return r(d,{...e},e.context)}var d=class extends n{static contextType=e;dialog=a();hosted=a();containerId=`seams-confirmation-modal-${++l}`;componentDidMount(){this.props.context===`standalone`?this.dialog.current?.showModal():this.hosted.current?.focus({preventScroll:!0})}componentWillUnmount(){this.dialog.current?.close()}cancel=e=>{e.preventDefault(),e.stopPropagation(),this.props.onCancel()};backdropClick=e=>{let t=this.dialog.current;if(!t||e.target!==t)return;let n=t.getBoundingClientRect();(e.clientX<n.left||e.clientX>n.right||e.clientY<n.top||e.clientY>n.bottom)&&this.cancel(e)};hostedKeyDown=e=>{!e.defaultPrevented&&e.key===`Escape`&&this.cancel(e)};render(){return this.props.context===`standalone`?r(`dialog`,{ref:this.dialog,class:`seams-confirmation-modal`,"aria-label":o(this.context,this.props.label),onCancel:this.cancel,onClick:this.backdropClick,children:r(`div`,{id:this.containerId,class:`modal-container-root`,tabIndex:-1,children:this.props.children})}):r(`div`,{ref:this.hosted,class:`seams-confirmation-modal seams-confirmation-modal--hosted`,tabIndex:-1,onKeyDown:this.hostedKeyDown,children:r(`div`,{id:this.containerId,class:`modal-container-root`,children:this.props.children})})}};function f(e){let t=e.startTranslatePx+e.deltaPx;if(t>=e.restTranslatePx)return t;let n=Math.max(e.sheetHeightPx*.5,e.viewportHeightPx*.5,e.minimumOverpullPx),r=e.restTranslatePx-t;return e.restTranslatePx-n*(1-1/(r/n+1))}function p(e){let t=e.totalDeltaPx/Math.max(1,e.durationMs);return Math.min(e.velocityPxPerMs,t)<=-.6||Math.max(e.velocityPxPerMs,t)>=.7||e.translatePx>=e.sheetHeightPx-50}let m=0;function h(e){return r(g,{...e},e.context)}var g=class extends n{static contextType=e;state={settled:!1};id=`seams-confirmation-drawer-${++m}`;dialog=a();sheet=a();body=a();content=a();observer=null;frame=null;closeTimer=null;gesture={kind:`idle`};lifetime=`active`;closeReported=!1;suppressPointerClick=!1;componentDidMount(){let e=this.sheet.current,t=e.ownerDocument.defaultView;this.dialog.current?.showModal(),this.dialog.current||e.focus({preventScroll:!0}),this.observer=new ResizeObserver(this.measureContent),this.observer.observe(this.content.current),this.observer.observe(e),t.addEventListener(`resize`,this.scheduleMeasure),t.visualViewport?.addEventListener(`resize`,this.scheduleMeasure),this.measure(),this.frame=t.requestAnimationFrame(this.openAfterLayout),this.props.state.kind===`closing`&&this.startClose()}openAfterLayout=()=>{this.frame=null,this.setState({settled:!0})};componentDidUpdate(e){e.styles!==this.props.styles&&(e.styles.deleteDynamicRule(this.id),e.styles.deleteDynamicRule(`${this.id}-drag`),this.resetGesture(),this.measure()),e.state.kind!==this.props.state.kind&&(this.props.state.kind===`closing`?this.startClose():(this.clearCloseTimer(),this.closeReported=!1)),this.props.state.kind===`open`&&this.props.state.interaction===`busy`&&this.resetGesture()}componentWillUnmount(){this.lifetime=`disposed`,this.resetGesture();let e=this.sheet.current.ownerDocument.defaultView;this.frame!==null&&e.cancelAnimationFrame(this.frame),this.clearCloseTimer(),this.observer?.disconnect(),e.removeEventListener(`resize`,this.scheduleMeasure),e.visualViewport?.removeEventListener(`resize`,this.scheduleMeasure),this.props.styles.deleteDynamicRule(this.id),this.dialog.current?.close()}scheduleMeasure=()=>{this.lifetime===`disposed`||this.frame!==null||(this.frame=this.sheet.current.ownerDocument.defaultView.requestAnimationFrame(this.measureFrame))};measureFrame=()=>{this.frame=null,this.measure()};measureContent=()=>{this.lifetime===`active`&&this.measure()};measure(){if(this.gesture.kind!==`idle`)return;let e=this.sheet.current,t=this.content.current,n=Math.round(t.getBoundingClientRect().bottom-e.getBoundingClientRect().top),r=this.props.context===`standalone`?Math.max(0,e.offsetHeight-n):0;this.props.styles.setDynamicDeclarations(this.id,`#${this.id}`,{"--seams-drawer-rest":`${r}px`})}startClose(){this.resetGesture(),this.clearCloseTimer();let e=this.sheet.current.ownerDocument.defaultView,t=e.matchMedia(`(prefers-reduced-motion: reduce)`).matches?0:150;this.closeTimer=e.setTimeout(this.reportClosed,t)}clearCloseTimer(){this.closeTimer!==null&&(this.sheet.current.ownerDocument.defaultView.clearTimeout(this.closeTimer),this.closeTimer=null)}reportClosed=()=>{this.clearCloseTimer(),!(this.lifetime===`disposed`||this.closeReported||this.props.state.kind!==`closing`)&&(this.closeReported=!0,this.props.state.onClosed())};transitionEnd=e=>{e.target===this.sheet.current&&e.propertyName===`transform`&&this.reportClosed()};cancel=e=>{e.preventDefault(),e.stopPropagation(),this.props.state.kind===`open`&&this.props.onCancel()};backdropClick=e=>{this.props.dismissOnBackdrop!==!1&&e.target===this.dialog.current&&this.canDrag()&&this.cancel(e)};keyDown=e=>{!e.defaultPrevented&&e.key===`Escape`&&this.cancel(e)};canDrag(){return this.props.state.kind===`open`&&this.props.state.interaction===`ready`}pointerDown=e=>{if(this.clearClickSuppression(),!this.canDrag()||this.gesture.kind!==`idle`||!e.isPrimary||e.button!==0)return;let t=e.target;if(t instanceof Element&&t.closest(`a, input, textarea, select, summary, button:not(.seams-drawer-handle), [data-seams-drawer-no-drag]`))return;this.gesture={kind:`pending`,pointerId:e.pointerId,startY:e.clientY};let n=this.sheet.current.ownerDocument;n.addEventListener(`pointermove`,this.pointerMove,{passive:!1}),n.addEventListener(`pointerup`,this.pointerUp),n.addEventListener(`pointercancel`,this.pointerCancel)};pointerMove=e=>{let t=this.gesture;if(t.kind===`idle`||t.pointerId!==e.pointerId)return;let n=this.sheet.current;if(t.kind===`pending`){if(Math.abs(e.clientY-t.startY)<8||this.body.current.scrollTop>0)return;let r=n.ownerDocument.defaultView,i=new DOMMatrixReadOnly(r.getComputedStyle(n).transform).m42;t={kind:`dragging`,pointerId:t.pointerId,startY:t.startY,lastY:t.startY,startedAt:e.timeStamp,lastTime:e.timeStamp,velocity:0,rest:i,translate:i,height:n.offsetHeight},this.gesture=t,n.setPointerCapture(e.pointerId),n.classList.add(`is-dragging`)}let r=e.timeStamp-t.lastTime;r>0&&(t.velocity=(e.clientY-t.lastY)/r),t.lastY=e.clientY,t.lastTime=e.timeStamp,t.translate=f({startTranslatePx:t.rest,deltaPx:e.clientY-t.startY,restTranslatePx:t.rest,sheetHeightPx:t.height,viewportHeightPx:n.ownerDocument.defaultView.innerHeight,minimumOverpullPx:160}),this.props.styles.setDynamicDeclarations(`${this.id}-drag`,`#${this.id}`,{"--seams-drawer-drag":`${t.translate}px`}),e.preventDefault()};pointerUp=e=>{let t=this.gesture;if(t.kind===`idle`||t.pointerId!==e.pointerId)return;let n=t.kind===`dragging`&&p({velocityPxPerMs:t.velocity,totalDeltaPx:t.lastY-t.startY,durationMs:e.timeStamp-t.startedAt,translatePx:t.translate,sheetHeightPx:t.height});t.kind===`dragging`&&(this.suppressPointerClick=!0,e.preventDefault()),this.resetGesture(),n&&this.props.state.kind===`open`&&this.props.onCancel()};pointerCancel=e=>{this.gesture.kind!==`idle`&&this.gesture.pointerId===e.pointerId&&(this.gesture.kind===`dragging`&&(this.suppressPointerClick=!0),this.resetGesture())};clearClickSuppression=()=>{this.suppressPointerClick=!1};suppressDragClick=e=>{!this.suppressPointerClick||e.detail===0||(this.suppressPointerClick=!1,e.preventDefault(),e.stopPropagation())};resetGesture(){let e=this.sheet.current,t=this.gesture;this.gesture={kind:`idle`},t.kind!==`idle`&&e.hasPointerCapture(t.pointerId)&&e.releasePointerCapture(t.pointerId),e.classList.remove(`is-dragging`);let n=e.ownerDocument;n.removeEventListener(`pointermove`,this.pointerMove),n.removeEventListener(`pointerup`,this.pointerUp),n.removeEventListener(`pointercancel`,this.pointerCancel),this.props.styles.deleteDynamicRule(`${this.id}-drag`),this.lifetime===`active`&&this.scheduleMeasure()}render(){let e=this.state.settled&&this.props.state.kind===`open`,n=[`seams-confirmation-drawer`];e&&n.push(`is-open`),this.gesture.kind===`dragging`&&n.push(`is-dragging`);let a=r(`section`,{ref:this.sheet,id:this.id,class:n.join(` `),"data-context":this.props.context,tabIndex:-1,onPointerDownCapture:this.pointerDown,onClickCapture:this.suppressDragClick,onLostPointerCapture:this.pointerCancel,onTransitionEnd:this.transitionEnd,onKeyDown:this.keyDown,children:[r(`div`,{class:`seams-drawer-controls`,children:[this.props.origin&&r(`div`,{class:`seams-drawer-origin`,children:this.props.origin}),r(`button`,{type:`button`,class:`seams-drawer-handle`,"aria-label":t(this.context,`Dismiss confirmation`),disabled:!this.canDrag(),onClick:this.cancel,children:r(`span`,{})}),r(`button`,{type:`button`,class:`seams-drawer-close`,"aria-label":t(this.context,`Close`),disabled:!this.canDrag(),onClick:this.cancel,children:`×`})]}),r(`div`,{class:`seams-drawer-body`,ref:this.body,children:[this.props.errorMessage&&r(`div`,{class:`error`,children:r(i,{copy:this.props.errorMessage})}),r(`div`,{class:`seams-drawer-content`,ref:this.content,children:this.props.children})]})]});return this.props.context===`wallet-iframe`?a:r(`dialog`,{class:`seams-drawer-dialog`,ref:this.dialog,"aria-label":o(this.context,this.props.label),onCancel:this.cancel,onClick:this.backdropClick,onClickCapture:this.suppressDragClick,onPointerDownCapture:this.clearClickSuppression,children:a})}};export{s as i,u as n,c as r,h as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{D as e,M as t,O as n,T as r,V as i,d as a,h as o,j as s,k as c,l,r as ee,u,w as d,z as f}from"./domainIds-C3fUa33Q.js";import{C as te,k as p}from"./chains-CPmd4s9f.js";import{i as ne,r as re}from"./base64-BmKR3UqU.js";import{d as ie,h as ae,l as oe,m}from"./capabilityKinds-CqHVzVsJ.js";import{r as h}from"./canonicalPrimitives-D_1HyEuJ.js";function g(e,t={trim:!0}){let n=String(e??``);return i(t.trim?n.trim():n)}function _(e){let t=String(e.token??``).trim();if(!t)throw Error(e.missingMessage);return{Authorization:`Bearer ${t}`}}function se(e){return{method:`POST`,headers:{"Content-Type":`application/json`,...e.headers||{}},credentials:`omit`,body:e.bodyJson??JSON.stringify(e.body)}}function ce(e,t){let n=g(e),r=globalThis.location?.origin,i;try{i=new URL(n).origin}catch{return}if(!(!r||i===r))for(let e of t)fetch(`${n}${e}`,{method:`OPTIONS`,credentials:`omit`}).catch(()=>{})}function le(e){return{..._({token:e.token,missingMessage:`Wallet Session token is required`}),...v(e.home)}}function v(e){switch(e.kind){case`direct`:return{};case`regional`:return{"X-Seams-Wallet-Region":e.region}}}async function ue(e){let t=await fetch(e.clone());if(t.status!==409||!e.headers.has(`X-Seams-Wallet-Region`))return t;let n;try{n=await t.clone().json()}catch{return t}if(!te(n)||n.code!==`wallet_home_discovery_required`)return t;let r=new Headers(e.headers);return r.delete(`X-Seams-Wallet-Region`),fetch(new Request(e,{headers:r}))}const de=[1,2];function y(e){let t=Number(e);return!Number.isSafeInteger(t)||t<1||t>65535?null:t}function fe(e){if(!Array.isArray(e)||e.length===0)return null;let t=[],n=new Set;for(let r of e){let e=y(r);if(!e)return null;n.has(e)||(n.add(e),t.push(e))}return t.sort((e,t)=>e-t),t.length?t:null}function pe(e){if(!Array.isArray(e)||e.length===0)return null;let t=[];for(let n of e){if(!n||typeof n!=`object`||Array.isArray(n))return null;let e=n,r=y(e.id),i=f(e.role);if(!r||i!==`client`&&i!==`relayer`)return null;let a={id:r,role:i},o=f(e.relayerUrl);o&&(a.relayerUrl=o);let s=f(e.relayerKeyId);s&&(a.relayerKeyId=s);let c=f(e.shareDerivation);(c===`prf_first_v1`||c===`derived_master_secret_v1`||c===`kv_random_v1`||c===`unknown`)&&(a.shareDerivation=c),t.push(a)}return t.length?t:null}function me(e){let t=f(e.relayerKeyId),n=f(e.relayerUrl),r=y(e.clientParticipantId)??1,i=y(e.relayerParticipantId)??2;return[{id:r,role:`client`,shareDerivation:e.clientShareDerivation||`prf_first_v1`},{id:i,role:`relayer`,...n?{relayerUrl:n}:{},...t?{relayerKeyId:t}:{},...e.relayerShareDerivation?{shareDerivation:e.relayerShareDerivation}:{}}]}function b(e,t){let n=f(t);if(!n)throw Error(`${e} is required`);return n}function x(e){return`${b(`projectId`,e.projectId)}:${b(`envId`,e.envId)}`}function he(e){let t=ge(e);return{...t,signingRootVersion:b(`signingRootVersion`,t.signingRootVersion)}}function ge(e){if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`runtimePolicyScope must be an object`);let t=e;if(Object.prototype.hasOwnProperty.call(t,`environmentId`))throw Error(`runtimePolicyScope.environmentId is stale; use envId`);if(Object.prototype.hasOwnProperty.call(t,`runtimeSnapshotScope`))throw Error(`runtimePolicyScope.runtimeSnapshotScope is stale; use runtimePolicyScope`);return{orgId:b(`orgId`,t.orgId),projectId:b(`projectId`,t.projectId),envId:b(`envId`,t.envId),...f(t.signingRootVersion)?{signingRootVersion:f(t.signingRootVersion)}:{}}}function _e(e,t){return e.orgId===t.orgId&&e.projectId===t.projectId&&e.envId===t.envId&&e.signingRootVersion===t.signingRootVersion}function ve(e){return{signingRootId:x(e),signingRootVersion:b(`signingRootVersion`,e.signingRootVersion)}}const ye=[`prf`,`kek`,`seed`,`scalar`,`secretkey`,`privatekey`,`plaintext`,`recoverycode`,`clientroot`,`holdershare`];function S(e,t,n,r=[]){let i=new Set(t),a=new Set(r);for(let t of Object.keys(e)){if(i.has(t))continue;if(a.has(t))throw Error(`${n}.${t} is not part of ${n}`);let e=t.toLowerCase().replace(/_/g,``);throw!e.includes(`publickey`)&&ye.some(t=>e.includes(t))?Error(`${n}.${t} must never carry plaintext custody material`):Error(`${n}.${t} is not part of ${n}`)}}function C(e,t,n){let r=p(e,n);S(r,t,n);for(let e of t)if(!Object.prototype.hasOwnProperty.call(r,e)||r[e]===void 0)throw Error(`${n}.${e} is required`);return r}function w(...e){return Object.assign((t,n)=>{if(!e.includes(t))throw Error(`${n} is invalid`);return t},{literals:e})}function T(e,t){let n=Object.keys(e),r=[...n.filter(t=>`literals`in e[t]),...n.filter(t=>!(`literals`in e[t]))];return Object.assign((i,a)=>{let o=C(i,n,a),s=new Map;for(let t of r)s.set(t,e[t](o[t],`${a}.${t}`));let c=Object.fromEntries(n.map(e=>[e,s.get(e)]));return t?.(c,a),c},{shape:e})}function E(e,t){let n=new Map;for(let r of t)for(let t of r.shape[e].literals)n.set(t,r);return(t,r)=>{let i=p(t,r),a=n.get(i[e]);if(!a)throw Error(`${r}.${e} is invalid`);return a(i,r)}}function D(e){return(t,n)=>t===null?null:e(t,n)}function O(e){return(t,n)=>{let r=e(t);if(r.ok)return r.value;throw Error(`${n} ${r.error.message}`)}}function k(e){return(t,n)=>{try{return e(t)}catch(e){throw Error(`${n} ${e instanceof Error?e.message:`is invalid`}`)}}}const A=Object.freeze([`export_keys`,`link_devices`,`revoke_devices`,`sign`]);Object.freeze([`sign`]);const j=new Set([`export_keys`,`link_devices`,`revoke_devices`,`sign`]),M=Symbol(`canonicalPermissionSetBrand`);var N=class e extends Array{[M]=!0;constructor(e){super(...e),Object.freeze(this)}static create(t){return new e(t)}static get[Symbol.species](){return Array}};function P(e){return typeof e==`string`&&j.has(e)}function F(e){if(!Array.isArray(e))return L(e==null?`delegated wallet permissions are required`:`delegated wallet permissions must be an array`);if(e.length===0)return L(`delegated wallet permissions must be non-empty`);let t=[],n=new Set;for(let r of e){if(!P(r))return L(`delegated wallet permission is unsupported`);if(n.has(r))return L(`delegated wallet permission ${r} is duplicated`);n.add(r),t.push(r)}return t.sort(De),{ok:!0,value:N.create(Oe(t))}}function I(e){return{kind:`delegated_wallet_authority_v1`,permissions:e.permissions}}function be(e){if(!ke(e))return R(`delegated wallet authority must contain exactly kind and permissions`);if(e.kind!==`delegated_wallet_authority_v1`)return R(`delegated wallet authority kind is unsupported`);let t=F(e.permissions);return t.ok?{ok:!0,value:I({permissions:t.value})}:t}function xe(){return Ee(A)}function Se(){return I({permissions:xe()})}function Ce(e,t){return e.permissions.includes(t)}function we(e){return Object.freeze([...e.permissions])}function Te(e,t){if(e.kind!==t.kind||e.permissions.length!==t.permissions.length)return!1;for(let n=0;n<e.permissions.length;n+=1)if(e.permissions[n]!==t.permissions[n])return!1;return!0}function Ee(e){let t=F(e);if(!t.ok)throw Error(t.error.message);return t.value}function De(e,t){return e<t?-1:e>t?1:0}function Oe(e){let[t,...n]=e;if(!t)throw Error(`delegated wallet permissions must be non-empty`);return[t,...n]}function ke(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=Object.keys(e);return t.length===2&&t.includes(`kind`)&&t.includes(`permissions`)}function L(e){return{ok:!1,error:{code:`invalid`,message:e}}}function R(e){return{ok:!1,error:{code:`invalid`,message:e}}}const Ae=/^[A-Za-z0-9_-]+$/;function z(e,t){if(typeof e!=`string`||!Ae.test(e))throw Error(`${t} must be unpadded base64url`);let n;try{n=re(e)}catch{throw Error(`${t} must be valid base64url`)}if(ne(n)!==e)throw Error(`${t} must be canonical base64url`);return n}function je(e,t){if(e.ok)return e.value;throw Error(`${t} ${e.error.message}`)}function Me(e,t){try{return h(e)}catch(e){throw Error(`${t} ${e instanceof Error?e.message:`is not a digest`}`)}}function Ne(e,t=`nonceB64u`){if(z(e,t).length!==12)throw Error(`${t} must decode to a 12-byte ChaCha20Poly1305 nonce`);return e}function Pe(e,t=`ciphertextB64u`){if(z(e,t).length<17)throw Error(`${t} must decode to sealed ciphertext with an authentication tag`);return e}function Fe(e,t=`registeredPublicKeyB64u`){if(z(e,t).length!==32)throw Error(`${t} must decode to a 32-byte Ed25519 public key`);return e}function Ie(e,t=`publicKey33B64u`){let n=z(e,t);if(n.length!==33)throw Error(`${t} must decode to a 33-byte compressed secp256k1 point`);if(n[0]!==2&&n[0]!==3)throw Error(`${t} must be a compressed secp256k1 public key`);return e}function Le(e,t=`keyCreationSignerSlot`){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0||e>4294967295)throw Error(`${t} must be a positive u32`);return e}function Re(e,t=`envelopeRevision`){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive integer revision`);return e}function B(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<=0)throw Error(`${t} must be a positive unix-millisecond timestamp`);return e}const ze=O(l),V=O(n),Be=O(u),Ve=O(a),He=O(oe),Ue=O(c),H=O(ae),U=O(m),W=O(r),G=O(e),We=O(s),Ge=O(t),Ke=O(ie),qe=O(o),K=k(h),Je=D(Y);function q(e){return(t,n)=>e(t,n.slice(n.lastIndexOf(`.`)+1))}function J(e,t){try{return B(e,t)}catch(e){throw Error(e instanceof Error?e.message:`${t} is invalid`)}}function Y(e,t){if(typeof e!=`string`||e.length===0||e.trim()!==e)throw Error(`${t} must be a non-empty canonical string`);for(let n of e){let e=n.charCodeAt(0);if(/\s/.test(n)||e<=31||e===127)throw Error(`${t} must not contain whitespace or control characters`)}return e}function X(e,t){if(!Number.isSafeInteger(e)||Number(e)<0)throw Error(`${t} must be a non-negative safe integer`);return Number(e)}function Ye(e,t){let n=be(e);if(!n.ok)throw Error(`${t}: ${n.error.message}`);return n.value}function Xe(e,t){let n=d(e);if(!n.ok)throw Error(`${t} ${n.error.message}`);return n.value}function Ze(e,t){if(e.kind!==t.kind||e.walletId!==t.walletId||e.authorityId!==t.authorityId||e.authMethodId!==t.authMethodId||e.authorizationId!==t.authorizationId||e.quotaId!==t.quotaId||e.authorityDigestB64u!==t.authorityDigestB64u||e.authorityRevocationEpoch!==t.authorityRevocationEpoch||e.issuedAtMs!==t.issuedAtMs||e.expiresAtMs!==t.expiresAtMs||e.capabilitySubjects.length!==t.capabilitySubjects.length)return!1;for(let n=0;n<e.capabilitySubjects.length;n+=1){let r=e.capabilitySubjects[n],i=t.capabilitySubjects[n];if(!r||!i||!Z(r,i))return!1}return!0}function Z(e,t){switch(e.kind){case`link_devices`:case`revoke_devices`:return t.kind===e.kind;case`sign`:case`export_keys`:return t.kind===e.kind&&t.keyFamily===e.keyFamily&&ee(e.materialActivation,t.materialActivation);default:return!1}}function Qe(e,t){for(let n of e.capabilitySubjects){let e=!1;for(let r of t.capabilitySubjects)if(Z(n,r)){e=!0;break}if(!e)return!1}return!0}const Q=E(`kind`,[T({kind:w(`direct`)}),T({kind:w(`regional`),region:w(`US`,`WEUR`,`APAC`,`OC`)})]);function $(e){return Q(e,`Wallet Session home`)}function $e(){return T({kind:w(`opaque_wallet_session_operation_credential_v1`),ownershipGeneration:X,home:$,token:(e,t)=>{if(typeof e!=`string`||e.length>8192)throw Error(`${t} is invalid`);return e},walletSessionId:q(H)},(e,t)=>{if(e.ownershipGeneration===0)throw Error(`${t} ownership generation must be positive`);if(!/^wst_[A-Za-z0-9_-]{43}$/.test(e.token))throw Error(`${t} opaque token is invalid`)})}function et(e){return $e()(e,`WalletSessionOperationCredentialV1`)}function tt(e){return e.kind===`sign`||e.kind===`export_keys`?`${e.kind}:${e.keyFamily}:${e.materialActivation.activationId}`:e.kind}function nt(){return T({kind:w(`active_wallet_session_v1`),walletId:q(V),authorityId:q(G),authMethodId:q(W),authorizationId:q(U),quotaId:q(Ke),authorityDigestB64u:q(K),authorityRevocationEpoch:q(X),capabilitySubjects:(e,t)=>{if(!Array.isArray(e)||e.length===0)throw Error(`${t} must be non-empty`);let n=[];for(let[t,r]of e.entries())n.push(it(r,`capabilitySubjects[${t}]`));let r=n[0];if(!r)throw Error(`${t} must be non-empty`);return[r,...n.slice(1)]},issuedAtMs:q(J),expiresAtMs:q(J)},(e,t)=>{let n=e.capabilitySubjects.map(tt);if(new Set(n).size!==n.length)throw Error(`${t} capability subjects repeat`)})}function rt(e){return nt()(e,`ActiveWalletSessionV1`)}function it(e,t){let n=p(e,t);if(n.kind===`link_devices`||n.kind===`revoke_devices`)return S(n,[`kind`],t),{kind:n.kind};if(n.kind!==`sign`&&n.kind!==`export_keys`)throw Error(`${t}.kind is invalid`);if(S(n,[`kind`,`keyFamily`,`materialActivation`],t),n.keyFamily!==`ed25519`&&n.keyFamily!==`ecdsa_secp256k1`)throw Error(`${t}.keyFamily is invalid`);return{kind:n.kind,keyFamily:n.keyFamily,materialActivation:qe(n.materialActivation,`${t}.materialActivation`)}}export{fe as $,Re as A,w as B,Ue as C,Fe as D,Me as E,Se as F,C as G,T as H,we as I,he as J,S as K,Ce as L,Ie as M,B as N,Pe as O,je as P,me as Q,F as R,V as S,H as T,O as U,D as V,E as W,ve as X,_e as Y,de as Z,J as _,Qe as a,ue as at,W as b,K as c,Ve as d,pe as et,Je as f,Xe as g,X as h,et as i,le as it,Le as j,Ne as k,Be as l,Y as m,rt as n,se as nt,He as o,g as ot,Ye as p,x as q,$ as r,v as rt,We as s,ce as st,Ze as t,_ as tt,q as u,Ge as v,U as w,G as x,ze as y,Te as z};
|