@seams/wallet 0.17.0 → 0.19.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 +4 -5
- package/dist/.build-inputs.sha256 +1 -1
- package/dist/esm/SeamsWeb/index.js +1 -1
- package/dist/esm/SeamsWeb/walletIframe/client/inboundMessages.js +1 -1
- package/dist/esm/SeamsWeb/walletIframe/client/router.js +10 -4
- package/dist/esm/SeamsWeb/walletIframe/coordinator.js +23 -1
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuFooter.js +5 -4
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.js +121 -246
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/icons.js +37 -1
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/mountAuthMenuSurface.js +4 -2
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/presentation.js +117 -0
- package/dist/esm/SeamsWeb/walletIframe/host/ui/auth-menu/recovery-code-input.js +60 -0
- package/dist/esm/SeamsWeb/walletIframe/shared/facadeBoundary.js +2 -0
- package/dist/esm/core/browser/walletIframe/events.js +6 -0
- package/dist/esm/core/config/configBuilder.js +2 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/appearance.js +27 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/export-private-key-reveal.js +155 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/export-viewer-host.js +209 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmContent.js +7 -4
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmHeader.js +10 -6
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationBody.js +9 -6
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.js +9 -6
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationDrawer.js +7 -4
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ConfirmationModal.js +4 -1
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/EmailOtpContent.js +4 -1
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/EmailOtpInput.js +5 -4
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ExportPrivateKeySurface.js +319 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationContent.js +10 -7
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationDetails.js +9 -5
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/RecoveryCodeBackupSurface.js +28 -22
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.js +2 -1
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionLabel.js +51 -26
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.js +42 -27
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionReview.js +25 -18
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/TransactionTree.js +8 -5
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/WalletLocale.js +24 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountConfirmationSurface.js +6 -4
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountExportPrivateKeySurface.js +92 -0
- package/dist/esm/core/signingEngine/uiConfirm/ui/preact/mountRecoveryCodeBackupSurface.js +4 -2
- package/dist/esm/core/signingEngine/uiConfirm/ui/surface-measurement-binding.js +12 -0
- package/dist/esm/core/ui/locale.js +10 -0
- package/dist/esm/core/ui/messages.js +698 -0
- package/dist/esm/index.js +3 -2
- package/dist/esm/react/components/AccountMenuButton/AccountMenuButtonMock.js +7 -3
- package/dist/esm/react/components/AccountMenuButton/AccountMenuButtonView.js +7 -4
- package/dist/esm/react/components/AccountMenuButton/AccountMenuDeviceDetails.js +4 -3
- package/dist/esm/react/components/AccountMenuButton/AccountMenuDialog.js +5 -2
- package/dist/esm/react/components/AccountMenuButton/AccountMenuMockScreens.js +31 -27
- package/dist/esm/react/components/AccountMenuButton/AccountMenuScreen.js +6 -3
- package/dist/esm/react/components/AccountMenuButton/AccountsSection.js +6 -3
- package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodRow.js +5 -4
- package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodsModal.js +33 -27
- package/dist/esm/react/components/AccountMenuButton/AuthenticationMethodsView.js +5 -2
- package/dist/esm/react/components/AccountMenuButton/ExportKeysScreen.js +5 -3
- package/dist/esm/react/components/AccountMenuButton/ExportKeysSection.css +20 -0
- package/dist/esm/react/components/AccountMenuButton/ExportKeysSection.js +4 -3
- package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.css +9 -3
- package/dist/esm/react/components/AccountMenuButton/LinkedDevicesModal.js +50 -41
- package/dist/esm/react/components/AccountMenuButton/LockMenuItem.js +2 -1
- package/dist/esm/react/components/AccountMenuButton/MenuItem.js +3 -2
- package/dist/esm/react/components/AccountMenuButton/ProfileDropdown.js +8 -4
- package/dist/esm/react/components/AccountMenuButton/RecoveryCodeAcknowledgement.js +3 -2
- package/dist/esm/react/components/AccountMenuButton/RecoveryCodeActions.js +4 -3
- package/dist/esm/react/components/AccountMenuButton/SegmentedControl.js +2 -1
- package/dist/esm/react/components/AccountMenuButton/TransactionSettingsSection.js +11 -10
- package/dist/esm/react/components/AccountMenuButton/UserAccountButton.css +1 -0
- package/dist/esm/react/components/AccountMenuButton/UserAccountButton.js +8 -4
- package/dist/esm/react/components/AccountMenuButton/WalletRegionSection.js +22 -15
- package/dist/esm/react/components/AccountMenuButton/WalletSettingsLayout.js +20 -16
- package/dist/esm/react/components/AccountMenuButton/Web3AuthProfileButton.css +15 -0
- package/dist/esm/react/components/AccountMenuButton/index.js +18 -15
- package/dist/esm/react/components/HostedSeamsAuthMenu/SeamsAuthMenuMock.js +30 -26
- package/dist/esm/react/components/QRCodeScanner.js +28 -23
- package/dist/esm/react/components/ShowQRCode.js +39 -31
- package/dist/esm/react/components/theme/ThemeProvider.js +3 -0
- package/dist/esm/react/context/WalletLocale.js +15 -0
- package/dist/esm/react/context/index.js +8 -3
- package/dist/esm/react/styles/styles.css +36 -0
- package/dist/esm/sdk/ConfirmationDrawer-DCw0m-Iv.js +1 -0
- package/dist/{public/sdk/NonceCoordinator-DuDKN-B8.js → esm/sdk/NonceCoordinator-Dq-FZpBz.js} +1 -1
- package/dist/{public/sdk/accountLifecycle-D61FIpFS.js → esm/sdk/accountLifecycle-fLNUdjct.js} +1 -1
- package/dist/{public/sdk/activeWalletSession-Ba6X4CUN.js → esm/sdk/activeWalletSession-BpbnpU9s.js} +1 -1
- package/dist/esm/sdk/adapters-BNmcyf9K.js +2 -0
- package/dist/esm/sdk/appearance-token-vars-DxBm_cKA.js +2 -0
- package/dist/esm/sdk/{canonicalPrimitives-BOzRXzfv.js → canonicalPrimitives-BMP5yILS.js} +1 -1
- package/dist/esm/sdk/{challengeDelivery-FD9GHK1T.js → challengeDelivery-CG2J5Qxs.js} +1 -1
- package/dist/{public/sdk/clientSessionPersistenceState-BHRUSWMt.js → esm/sdk/clientSessionPersistenceState-BgO4P6CZ.js} +1 -1
- package/dist/esm/sdk/{commitQueue-DOIaR0Hr.js → commitQueue-BW7BpYyA.js} +1 -1
- package/dist/esm/sdk/configBuilder-BMNShuOu.js +1 -0
- package/dist/esm/sdk/{configHelpers-BXdl5Mxs.js → configHelpers-D50F_Txb.js} +1 -1
- package/dist/esm/sdk/{digestEncoding-CbEFYvlJ.js → digestEncoding-aC4dSf_x.js} +1 -1
- package/dist/esm/sdk/{display-CY_aJEn6.js → display-WtILOPQR.js} +1 -1
- package/dist/{public/sdk/ecdsaCapabilityManifest-DzA996y9.js → esm/sdk/ecdsaCapabilityManifest-DRc423SV.js} +1 -1
- package/dist/{public/sdk/ecdsaDerivationClientWasm-DQlajPpE.js → esm/sdk/ecdsaDerivationClientWasm-DmwKWUEb.js} +1 -1
- package/dist/{public/sdk/ecdsaDerivationExport-DyugdheE.js → esm/sdk/ecdsaDerivationExport-DX89rq_u.js} +1 -1
- package/dist/esm/sdk/{ecdsaWalletRecords-C_v74n5X.js → ecdsaWalletRecords-CxxUt3fS.js} +1 -1
- package/dist/{public/sdk/emailOtpEcdsaDerivationIdentity-BDVjvnmO.js → esm/sdk/emailOtpEcdsaDerivationIdentity-CupWCKNg.js} +1 -1
- package/dist/esm/sdk/{export-viewer-host-DsRaS0UH.js → export-viewer-host-DsdzagKK.js} +1 -1
- package/dist/{public/sdk/exportKeypairOperation-SJPysnE1.js → esm/sdk/exportKeypairOperation-BwW_E4Lt.js} +1 -1
- package/dist/esm/sdk/{helpers-D3CUEdHI.js → helpers-DS0bksx9.js} +1 -1
- package/dist/esm/sdk/{host-GPb_mSAQ.js → host-DMR4KDy9.js} +1 -1
- package/dist/esm/sdk/{intentDigest-CGLrsMgj.js → intentDigest-Rh5Mg8X7.js} +1 -1
- package/dist/esm/sdk/{lanes-DJKIHJBm.js → lanes-BzU7cv2T.js} +1 -1
- package/dist/esm/sdk/localOnly-DO191vDh.js +1 -0
- package/dist/esm/sdk/mountExportPrivateKeySurface-DQzFzhNu.js +1 -0
- package/dist/esm/sdk/mountRecoveryCodeBackupSurface-B1D0ovqx.js +2 -0
- package/dist/{public/sdk/nearEd25519YaoMaterialActivation-J6EHFScV.js → esm/sdk/nearEd25519YaoMaterialActivation-DgWDGRI_.js} +1 -1
- package/dist/{public/sdk/nearEd25519YaoSigningPreparation-CqBNMG87.js → esm/sdk/nearEd25519YaoSigningPreparation-yKDLQXBS.js} +1 -1
- package/dist/esm/sdk/{nonceLaneKeys-D18nlLjh.js → nonceLaneKeys-BzMBVxMU.js} +1 -1
- package/dist/esm/sdk/{operationFingerprint-Boa9DQ51.js → operationFingerprint-C4VX-0NI.js} +1 -1
- package/dist/{public/sdk/passkey-custody-CBSal3E9.js → esm/sdk/passkey-custody-Ba-NQ_4C.js} +1 -1
- package/dist/esm/sdk/{pendingWalletRecoveryCodeBackup-CvsrXbzn.js → pendingWalletRecoveryCodeBackup-DOeIn_Qj.js} +1 -1
- package/dist/{public/sdk/presignaturePool-CQNt13kE.js → esm/sdk/presignaturePool-BHoxnbOA.js} +1 -1
- package/dist/esm/sdk/{prfCache-DJ93rtDv.js → prfCache-BAFh1skJ.js} +1 -1
- package/dist/esm/sdk/{primitives-cC0a9GRC.js → primitives-CTmDwMNc.js} +1 -1
- package/dist/esm/sdk/{recovery-entrypoint-nj7Zo3CR.js → recovery-entrypoint-DWghFZrZ.js} +1 -1
- package/dist/esm/sdk/{registration-49OGU_GZ.js → registration-DknFwoqn.js} +1 -1
- package/dist/esm/sdk/{registration-C7tywPXF.js → registration-sQndIWRF.js} +1 -1
- package/dist/esm/sdk/{registrationAccounts-9GFI0Ger.js → registrationAccounts-CD1u1ZqZ.js} +1 -1
- package/dist/esm/sdk/{registrationIds-Br-zI4_5.js → registrationIds-B1OpqRAt.js} +1 -1
- package/dist/{public/sdk/registrationIntent-PqmcTEE3.js → esm/sdk/registrationIntent-D4YDjf2U.js} +1 -1
- package/dist/esm/sdk/{requireStepUpAuth-C4PGTly-.js → requireStepUpAuth-CnSCFSOZ.js} +1 -1
- package/dist/{public/sdk/routerAbNormalSigning-xxATTIh5.js → esm/sdk/routerAbNormalSigning-BV1t27aB.js} +1 -1
- package/dist/esm/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/esm/sdk/runtime-auth-BxG-J-BB.js +1 -0
- package/dist/esm/sdk/runtime-device-link-Dn_5hPCq.js +1 -0
- package/dist/esm/sdk/runtime-ecdsa-tempo-lTFTb9Rh.js +1 -0
- package/dist/esm/sdk/runtime-email-otp-CPqTCH8Q.js +1 -0
- package/dist/esm/sdk/runtime-export-Brz53_oi.js +1 -0
- package/dist/esm/sdk/runtime-near-Da_xFUXx.js +1 -0
- package/dist/esm/sdk/runtime-preferences-riUZGaTs.js +1 -0
- package/dist/esm/sdk/runtime-recovery-CTj4nDAM.js +1 -0
- package/dist/esm/sdk/{runtime-recovery-codes-LR4mg7-k.js → runtime-recovery-codes-D8T9LQ7-.js} +1 -1
- package/dist/esm/sdk/{secp256k1-BldUPNQI.js → secp256k1-wOOHtPcK.js} +1 -1
- package/dist/esm/sdk/{secureRandomId-LwBFx84B.js → secureRandomId-8LSc91aN.js} +1 -1
- package/dist/esm/sdk/sessionObservationRevision-C7v-wN8_.js +1 -0
- package/dist/esm/sdk/shared-hx7KVyeq.js +6 -0
- package/dist/esm/sdk/{signEvmFamily-C_RvEnDB.js → signEvmFamily-DT34Vtpa.js} +1 -1
- package/dist/esm/sdk/{signEvmFamilyWithUiConfirmForTempo-CUKdq5dE.js → signEvmFamilyWithUiConfirmForTempo-NYCFU6Li.js} +1 -1
- package/dist/esm/sdk/{signEvmWithUiConfirm-CxXzcvj2.js → signEvmWithUiConfirm-D6nmJr_L.js} +1 -1
- package/dist/{public/sdk/signNear-Dno7NsP_.js → esm/sdk/signNear-B000QxBd.js} +1 -1
- package/dist/{public/sdk/signingFlow-DtugI_2z.js → esm/sdk/signingFlow-gl85GOW4.js} +1 -1
- package/dist/esm/sdk/{signingQueue-C1Pb07gm.js → signingQueue-gW7wmOuL.js} +1 -1
- package/dist/esm/sdk/{singletons-DxIyVhNb.js → singletons-CAsc9LvA.js} +1 -1
- package/dist/{public/sdk/thresholdEcdsa-murTq-xz.js → esm/sdk/thresholdEcdsa-Ci7yz395.js} +1 -1
- package/dist/{public/sdk/transactionState-XbZm9Zon.js → esm/sdk/transactionState-lB2qpkOm.js} +1 -1
- package/dist/esm/sdk/tx-confirm-ui.js +1799 -432
- 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-CVUalZ3p.js → wallet-recovery-DFaS3geI.js} +1 -1
- package/dist/esm/sdk/wallet-ui.css +1 -1
- package/dist/{public/sdk/walletAuthMethodRecord-Bv68Vq-g.js → esm/sdk/walletAuthMethodRecord-CWdqdY_s.js} +1 -1
- package/dist/{public/sdk/walletAuthority-v5wvv3IB.js → esm/sdk/walletAuthority-BY3kyKQ-.js} +1 -1
- package/dist/{public/sdk/walletCustodyEcdsaContinuity-rRHExT_R.js → esm/sdk/walletCustodyEcdsaContinuity-mGh1Ysko.js} +1 -1
- package/dist/esm/sdk/{walletDbName-DRzPv5Ir.js → walletDbName-BxWApBQF.js} +1 -1
- package/dist/{public/sdk/walletOwnershipGeneration-pMmmJ6XA.js → esm/sdk/walletOwnershipGeneration-DSGfjuV2.js} +1 -1
- package/dist/esm/sdk/{walletRecoveryCommit-DvC6WlGz.js → walletRecoveryCommit-DQA_wveK.js} +1 -1
- package/dist/esm/sdk/{walletRecoveryRotate-Dd3prJpr.js → walletRecoveryRotate-zvQThn37.js} +1 -1
- package/dist/esm/sdk/walletRegistrationSetupPrewarm-DdVpKccU.js +1 -0
- package/dist/{public/sdk/walletSessionAuthorizationStatus-DVV3xkAx.js → esm/sdk/walletSessionAuthorizationStatus-ONPRiEbK.js} +1 -1
- package/dist/{public/sdk/walletSessionAuthorizationStore-D-MhJ0PC.js → esm/sdk/walletSessionAuthorizationStore-DnUMtkev.js} +1 -1
- package/dist/esm/sdk/warmSessionHydration-D8Vdro9n.js +1 -0
- package/dist/{public/sdk/webauthnP256-XgYu-Y6E.js → esm/sdk/webauthnP256-_ajaNl90.js} +1 -1
- package/dist/esm/sdk/{webauthnPromptCoordinator-D5sP8Q7e.js → webauthnPromptCoordinator-9bVeHcTZ.js} +1 -1
- 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-DCw0m-Iv.js +1 -0
- package/dist/{esm/sdk/NonceCoordinator-DuDKN-B8.js → public/sdk/NonceCoordinator-Dq-FZpBz.js} +1 -1
- package/dist/{esm/sdk/accountLifecycle-D61FIpFS.js → public/sdk/accountLifecycle-fLNUdjct.js} +1 -1
- package/dist/{esm/sdk/activeWalletSession-Ba6X4CUN.js → public/sdk/activeWalletSession-BpbnpU9s.js} +1 -1
- package/dist/public/sdk/adapters-BNmcyf9K.js +2 -0
- package/dist/public/sdk/appearance-token-vars-DxBm_cKA.js +2 -0
- package/dist/public/sdk/{canonicalPrimitives-BOzRXzfv.js → canonicalPrimitives-BMP5yILS.js} +1 -1
- package/dist/public/sdk/{challengeDelivery-FD9GHK1T.js → challengeDelivery-CG2J5Qxs.js} +1 -1
- package/dist/{esm/sdk/clientSessionPersistenceState-BHRUSWMt.js → public/sdk/clientSessionPersistenceState-BgO4P6CZ.js} +1 -1
- package/dist/public/sdk/{commitQueue-DOIaR0Hr.js → commitQueue-BW7BpYyA.js} +1 -1
- package/dist/public/sdk/configBuilder-BMNShuOu.js +1 -0
- package/dist/public/sdk/{configHelpers-BXdl5Mxs.js → configHelpers-D50F_Txb.js} +1 -1
- package/dist/public/sdk/{digestEncoding-CbEFYvlJ.js → digestEncoding-aC4dSf_x.js} +1 -1
- package/dist/public/sdk/{display-CY_aJEn6.js → display-WtILOPQR.js} +1 -1
- package/dist/{esm/sdk/ecdsaCapabilityManifest-DzA996y9.js → public/sdk/ecdsaCapabilityManifest-DRc423SV.js} +1 -1
- package/dist/{esm/sdk/ecdsaDerivationClientWasm-DQlajPpE.js → public/sdk/ecdsaDerivationClientWasm-DmwKWUEb.js} +1 -1
- package/dist/{esm/sdk/ecdsaDerivationExport-DyugdheE.js → public/sdk/ecdsaDerivationExport-DX89rq_u.js} +1 -1
- package/dist/public/sdk/{ecdsaWalletRecords-C_v74n5X.js → ecdsaWalletRecords-CxxUt3fS.js} +1 -1
- package/dist/{esm/sdk/emailOtpEcdsaDerivationIdentity-BDVjvnmO.js → public/sdk/emailOtpEcdsaDerivationIdentity-CupWCKNg.js} +1 -1
- package/dist/public/sdk/{export-viewer-host-DsRaS0UH.js → export-viewer-host-DsdzagKK.js} +1 -1
- package/dist/{esm/sdk/exportKeypairOperation-SJPysnE1.js → public/sdk/exportKeypairOperation-BwW_E4Lt.js} +1 -1
- package/dist/public/sdk/{helpers-D3CUEdHI.js → helpers-DS0bksx9.js} +1 -1
- package/dist/public/sdk/{host-GPb_mSAQ.js → host-DMR4KDy9.js} +1 -1
- package/dist/public/sdk/{intentDigest-CGLrsMgj.js → intentDigest-Rh5Mg8X7.js} +1 -1
- package/dist/public/sdk/{lanes-DJKIHJBm.js → lanes-BzU7cv2T.js} +1 -1
- package/dist/public/sdk/localOnly-DO191vDh.js +1 -0
- package/dist/public/sdk/mountExportPrivateKeySurface-DQzFzhNu.js +1 -0
- package/dist/public/sdk/mountRecoveryCodeBackupSurface-B1D0ovqx.js +2 -0
- package/dist/{esm/sdk/nearEd25519YaoMaterialActivation-J6EHFScV.js → public/sdk/nearEd25519YaoMaterialActivation-DgWDGRI_.js} +1 -1
- package/dist/{esm/sdk/nearEd25519YaoSigningPreparation-CqBNMG87.js → public/sdk/nearEd25519YaoSigningPreparation-yKDLQXBS.js} +1 -1
- package/dist/public/sdk/{nonceLaneKeys-D18nlLjh.js → nonceLaneKeys-BzMBVxMU.js} +1 -1
- package/dist/public/sdk/{operationFingerprint-Boa9DQ51.js → operationFingerprint-C4VX-0NI.js} +1 -1
- package/dist/{esm/sdk/passkey-custody-CBSal3E9.js → public/sdk/passkey-custody-Ba-NQ_4C.js} +1 -1
- package/dist/public/sdk/{pendingWalletRecoveryCodeBackup-CvsrXbzn.js → pendingWalletRecoveryCodeBackup-DOeIn_Qj.js} +1 -1
- package/dist/{esm/sdk/presignaturePool-CQNt13kE.js → public/sdk/presignaturePool-BHoxnbOA.js} +1 -1
- package/dist/public/sdk/{prfCache-DJ93rtDv.js → prfCache-BAFh1skJ.js} +1 -1
- package/dist/public/sdk/{primitives-cC0a9GRC.js → primitives-CTmDwMNc.js} +1 -1
- package/dist/public/sdk/{recovery-entrypoint-nj7Zo3CR.js → recovery-entrypoint-DWghFZrZ.js} +1 -1
- package/dist/public/sdk/{registration-49OGU_GZ.js → registration-DknFwoqn.js} +1 -1
- package/dist/public/sdk/{registration-C7tywPXF.js → registration-sQndIWRF.js} +1 -1
- package/dist/public/sdk/{registrationAccounts-9GFI0Ger.js → registrationAccounts-CD1u1ZqZ.js} +1 -1
- package/dist/public/sdk/{registrationIds-Br-zI4_5.js → registrationIds-B1OpqRAt.js} +1 -1
- package/dist/{esm/sdk/registrationIntent-PqmcTEE3.js → public/sdk/registrationIntent-D4YDjf2U.js} +1 -1
- package/dist/public/sdk/{requireStepUpAuth-C4PGTly-.js → requireStepUpAuth-CnSCFSOZ.js} +1 -1
- package/dist/{esm/sdk/routerAbNormalSigning-xxATTIh5.js → public/sdk/routerAbNormalSigning-BV1t27aB.js} +1 -1
- package/dist/public/sdk/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/public/sdk/runtime-auth-BxG-J-BB.js +1 -0
- package/dist/public/sdk/runtime-device-link-Dn_5hPCq.js +1 -0
- package/dist/public/sdk/runtime-ecdsa-tempo-lTFTb9Rh.js +1 -0
- package/dist/public/sdk/runtime-email-otp-CPqTCH8Q.js +1 -0
- package/dist/public/sdk/runtime-export-Brz53_oi.js +1 -0
- package/dist/public/sdk/runtime-near-Da_xFUXx.js +1 -0
- package/dist/public/sdk/runtime-preferences-riUZGaTs.js +1 -0
- package/dist/public/sdk/runtime-recovery-CTj4nDAM.js +1 -0
- package/dist/public/sdk/{runtime-recovery-codes-LR4mg7-k.js → runtime-recovery-codes-D8T9LQ7-.js} +1 -1
- package/dist/public/sdk/{secp256k1-BldUPNQI.js → secp256k1-wOOHtPcK.js} +1 -1
- package/dist/public/sdk/{secureRandomId-LwBFx84B.js → secureRandomId-8LSc91aN.js} +1 -1
- package/dist/public/sdk/sessionObservationRevision-C7v-wN8_.js +1 -0
- package/dist/public/sdk/shared-hx7KVyeq.js +6 -0
- package/dist/public/sdk/{signEvmFamily-C_RvEnDB.js → signEvmFamily-DT34Vtpa.js} +1 -1
- package/dist/public/sdk/{signEvmFamilyWithUiConfirmForTempo-CUKdq5dE.js → signEvmFamilyWithUiConfirmForTempo-NYCFU6Li.js} +1 -1
- package/dist/public/sdk/{signEvmWithUiConfirm-CxXzcvj2.js → signEvmWithUiConfirm-D6nmJr_L.js} +1 -1
- package/dist/{esm/sdk/signNear-Dno7NsP_.js → public/sdk/signNear-B000QxBd.js} +1 -1
- package/dist/{esm/sdk/signingFlow-DtugI_2z.js → public/sdk/signingFlow-gl85GOW4.js} +1 -1
- package/dist/public/sdk/{signingQueue-C1Pb07gm.js → signingQueue-gW7wmOuL.js} +1 -1
- package/dist/public/sdk/{singletons-DxIyVhNb.js → singletons-CAsc9LvA.js} +1 -1
- package/dist/{esm/sdk/thresholdEcdsa-murTq-xz.js → public/sdk/thresholdEcdsa-Ci7yz395.js} +1 -1
- package/dist/{esm/sdk/transactionState-XbZm9Zon.js → public/sdk/transactionState-lB2qpkOm.js} +1 -1
- package/dist/public/sdk/tx-confirm-ui.js +1799 -432
- 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-CVUalZ3p.js → wallet-recovery-DFaS3geI.js} +1 -1
- package/dist/public/sdk/wallet-ui.css +1 -1
- package/dist/{esm/sdk/walletAuthMethodRecord-Bv68Vq-g.js → public/sdk/walletAuthMethodRecord-CWdqdY_s.js} +1 -1
- package/dist/{esm/sdk/walletAuthority-v5wvv3IB.js → public/sdk/walletAuthority-BY3kyKQ-.js} +1 -1
- package/dist/{esm/sdk/walletCustodyEcdsaContinuity-rRHExT_R.js → public/sdk/walletCustodyEcdsaContinuity-mGh1Ysko.js} +1 -1
- package/dist/public/sdk/{walletDbName-DRzPv5Ir.js → walletDbName-BxWApBQF.js} +1 -1
- package/dist/{esm/sdk/walletOwnershipGeneration-pMmmJ6XA.js → public/sdk/walletOwnershipGeneration-DSGfjuV2.js} +1 -1
- package/dist/public/sdk/{walletRecoveryCommit-DvC6WlGz.js → walletRecoveryCommit-DQA_wveK.js} +1 -1
- package/dist/public/sdk/{walletRecoveryRotate-Dd3prJpr.js → walletRecoveryRotate-zvQThn37.js} +1 -1
- package/dist/public/sdk/walletRegistrationSetupPrewarm-DdVpKccU.js +1 -0
- package/dist/{esm/sdk/walletSessionAuthorizationStatus-DVV3xkAx.js → public/sdk/walletSessionAuthorizationStatus-ONPRiEbK.js} +1 -1
- package/dist/{esm/sdk/walletSessionAuthorizationStore-D-MhJ0PC.js → public/sdk/walletSessionAuthorizationStore-DnUMtkev.js} +1 -1
- package/dist/public/sdk/warmSessionHydration-D8Vdro9n.js +1 -0
- package/dist/{esm/sdk/webauthnP256-XgYu-Y6E.js → public/sdk/webauthnP256-_ajaNl90.js} +1 -1
- package/dist/public/sdk/{webauthnPromptCoordinator-D5sP8Q7e.js → webauthnPromptCoordinator-9bVeHcTZ.js} +1 -1
- package/dist/public/sdk/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/public/sdk/workers/wallet_custody_ceremony_bg.wasm +0 -0
- package/dist/public/wallet-assets.manifest.json +192 -192
- package/dist/public/wallet-service/index.html +4 -4
- package/dist/types/wallet/src/SeamsWeb/walletIframe/coordinator.d.ts +2 -1
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/auth-menu/domain.d.ts +20 -3
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/auth-menu/session.d.ts +3 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuFooter.d.ts +0 -1
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/AuthMenuSurface.d.ts +5 -6
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/icons.d.ts +2 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/presentation.d.ts +35 -0
- package/dist/types/wallet/src/SeamsWeb/walletIframe/host/ui/auth-menu/recovery-code-input.d.ts +17 -0
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmContent.d.ts +3 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmHeader.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmationBody.d.ts +3 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmationContent.d.ts +3 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmationDrawer.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ConfirmationModal.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/EmailOtpInput.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ExportPrivateKeySurface.d.ts +1 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationContent.d.ts +3 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/PasskeyRegistrationDetails.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/RecoveryCodeBackupSurface.d.ts +3 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/ReviewDisclosure.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/TransactionLabel.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/TransactionReceipt.d.ts +3 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/TransactionReview.d.ts +3 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/TransactionTree.d.ts +0 -1
- package/dist/types/wallet/src/core/signingEngine/uiConfirm/ui/preact/WalletLocale.d.ts +18 -0
- package/dist/types/wallet/src/core/types/seams.d.ts +3 -0
- package/dist/types/wallet/src/core/ui/locale.d.ts +5 -0
- package/dist/types/wallet/src/core/ui/messages.d.ts +8 -0
- package/dist/types/wallet/src/index.d.ts +3 -1
- package/dist/types/wallet/src/react/components/AccountMenuButton/AccountMenuButtonMock.d.ts +1 -0
- package/dist/types/wallet/src/react/components/AccountMenuButton/WalletRegionSection.d.ts +3 -0
- package/dist/types/wallet/src/react/components/AccountMenuButton/WalletSettingsLayout.d.ts +4 -1
- package/dist/types/wallet/src/react/components/HostedSeamsAuthMenu/SeamsAuthMenuMock.d.ts +2 -1
- package/dist/types/wallet/src/react/context/WalletLocale.d.ts +16 -0
- package/dist/workers/router_ab_ed25519_yao_client_bg.wasm +0 -0
- package/dist/workers/wallet_custody_ceremony_bg.wasm +0 -0
- package/package.json +1 -1
- package/dist/esm/sdk/ConfirmationDrawer-CXVNmfTy.js +0 -1
- package/dist/esm/sdk/adapters-CTlDBRJy.js +0 -2
- package/dist/esm/sdk/configBuilder-BMawmNpz.js +0 -1
- package/dist/esm/sdk/jsxRuntime.module-DKsgiFjd.js +0 -2
- package/dist/esm/sdk/localOnly-CPmpw381.js +0 -1
- package/dist/esm/sdk/mountExportPrivateKeySurface-C8_tpDHF.js +0 -1
- package/dist/esm/sdk/mountRecoveryCodeBackupSurface-BtNFtmSj.js +0 -2
- package/dist/esm/sdk/runtime-auth-CpjGW90U.js +0 -1
- package/dist/esm/sdk/runtime-device-link-CKgfGi7D.js +0 -1
- package/dist/esm/sdk/runtime-ecdsa-tempo-5VV9xSEh.js +0 -1
- package/dist/esm/sdk/runtime-email-otp-D1hYZNn6.js +0 -1
- package/dist/esm/sdk/runtime-export-B92wQD25.js +0 -1
- package/dist/esm/sdk/runtime-near-CUuKg38M.js +0 -1
- package/dist/esm/sdk/runtime-preferences-EdL3G_MO.js +0 -1
- package/dist/esm/sdk/runtime-recovery-uyw8sywI.js +0 -1
- package/dist/esm/sdk/sessionObservationRevision-DmmNV25w.js +0 -1
- package/dist/esm/sdk/shared-ha31XIdc.js +0 -6
- package/dist/esm/sdk/walletRegistrationSetupPrewarm-DcbhVNMQ.js +0 -1
- package/dist/esm/sdk/warmSessionHydration-CsQpQVuy.js +0 -1
- package/dist/public/sdk/ConfirmationDrawer-CXVNmfTy.js +0 -1
- package/dist/public/sdk/adapters-CTlDBRJy.js +0 -2
- package/dist/public/sdk/configBuilder-BMawmNpz.js +0 -1
- package/dist/public/sdk/jsxRuntime.module-DKsgiFjd.js +0 -2
- package/dist/public/sdk/localOnly-CPmpw381.js +0 -1
- package/dist/public/sdk/mountExportPrivateKeySurface-C8_tpDHF.js +0 -1
- package/dist/public/sdk/mountRecoveryCodeBackupSurface-BtNFtmSj.js +0 -2
- package/dist/public/sdk/runtime-auth-CpjGW90U.js +0 -1
- package/dist/public/sdk/runtime-device-link-CKgfGi7D.js +0 -1
- package/dist/public/sdk/runtime-ecdsa-tempo-5VV9xSEh.js +0 -1
- package/dist/public/sdk/runtime-email-otp-D1hYZNn6.js +0 -1
- package/dist/public/sdk/runtime-export-B92wQD25.js +0 -1
- package/dist/public/sdk/runtime-near-CUuKg38M.js +0 -1
- package/dist/public/sdk/runtime-preferences-EdL3G_MO.js +0 -1
- package/dist/public/sdk/runtime-recovery-uyw8sywI.js +0 -1
- package/dist/public/sdk/sessionObservationRevision-DmmNV25w.js +0 -1
- package/dist/public/sdk/shared-ha31XIdc.js +0 -6
- package/dist/public/sdk/walletRegistrationSetupPrewarm-DcbhVNMQ.js +0 -1
- package/dist/public/sdk/warmSessionHydration-CsQpQVuy.js +0 -1
- /package/dist/esm/sdk/{base64-DW79QA0h.js → base64-BmKR3UqU.js} +0 -0
- /package/dist/esm/sdk/{signingSessionSeal-DX41aXUL.js → signingSessionSeal-DqbjG8c8.js} +0 -0
- /package/dist/esm/sdk/{theme-BKaFqCAj.js → theme-os0Salmo.js} +0 -0
- /package/dist/public/sdk/{base64-DW79QA0h.js → base64-BmKR3UqU.js} +0 -0
- /package/dist/public/sdk/{signingSessionSeal-DX41aXUL.js → signingSessionSeal-DqbjG8c8.js} +0 -0
- /package/dist/public/sdk/{theme-BKaFqCAj.js → theme-os0Salmo.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{D as e,M as t,O as n,T as r,j as i}from"./domainIds-C3fUa33Q.js";import{c as a}from"./chains-CPmd4s9f.js";import{o}from"./canonicalPrimitives-BOzRXzfv.js";import{i as s,t as c}from"./registrationAuthMethodInput-B23_HRil.js";async function l(e){return o(a({version:`wallet_auth_method_revoke_operation_v1`,walletId:String(e.walletId),targetWalletAuthMethodId:String(e.targetWalletAuthMethodId),requestedAtMs:e.requestedAtMs}))}function u(e,t){if(e.version!==t.version||e.walletAuthMethodId!==t.walletAuthMethodId||e.walletId!==t.walletId||e.walletAuthorityId!==t.walletAuthorityId||e.status!==t.status||e.createdAtMs!==t.createdAtMs||e.updatedAtMs!==t.updatedAtMs)return!1;switch(e.kind){case`passkey`:if(t.kind!==`passkey`)return!1;if(e.rpId===t.rpId&&e.credentialIdB64u===t.credentialIdB64u&&e.credentialPublicKeyB64u===t.credentialPublicKeyB64u&&e.counter===t.counter)break;return!1;case`email_otp`:if(t.kind!==`email_otp`)return!1;if(e.emailHashHex===t.emailHashHex&&e.registrationAuthorityId===t.registrationAuthorityId)break;return!1;default:return d(e,`wallet auth method kind`)}switch(e.status){case`pending_local_install`:return t.status===`pending_local_install`;case`active`:return t.status===`active`&&e.activatedAtMs===t.activatedAtMs;case`revoked`:return t.status===`revoked`&&e.activatedAtMs===t.activatedAtMs&&e.revokedAtMs===t.revokedAtMs;default:return d(e,`wallet auth method lifecycle`)}}function d(e,t){throw Error(`${t} branch is unsupported: ${String(e)}`)}function f(e){if(h(e),e.kind===`passkey`)switch(e.status){case`pending_local_install`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`passkey`,status:`pending_local_install`,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs};case`active`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`passkey`,status:`active`,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs,activatedAtMs:e.activatedAtMs};case`revoked`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`passkey`,status:`revoked`,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs,activatedAtMs:e.activatedAtMs,revokedAtMs:e.revokedAtMs}}switch(e.status){case`pending_local_install`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`email_otp`,status:`pending_local_install`,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs};case`active`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`email_otp`,status:`active`,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs,activatedAtMs:e.activatedAtMs};case`revoked`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`email_otp`,status:`revoked`,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs,activatedAtMs:e.activatedAtMs,revokedAtMs:e.revokedAtMs}}}function p(e){let n=c(e);if(!n||!(`version`in n)||!(`kind`in n)||!(`status`in n))return null;let r=s(n.version),a=s(n.kind),o=s(n.status);if(r!==`wallet_auth_method_v2`||a!==`passkey`&&a!==`email_otp`)return null;try{let e=m(n);if(a===`passkey`){if(!(`rpId`in n)||!(`credentialIdB64u`in n)||!(`credentialPublicKeyB64u`in n)||!(`counter`in n))return null;_(n,`passkey`,o);let r=t(n.rpId),a=i(n.credentialIdB64u);return!r.ok||!a.ok||typeof n.credentialPublicKeyB64u!=`string`||!n.credentialPublicKeyB64u.trim()||Object.prototype.hasOwnProperty.call(n,`emailHashHex`)||Object.prototype.hasOwnProperty.call(n,`registrationAuthorityId`)?null:v({common:e,lifecycle:g(n),rpId:r.value,credentialIdB64u:a.value,credentialPublicKeyB64u:n.credentialPublicKeyB64u,counter:C(n.counter)})}if(!(`emailHashHex`in n)||!(`registrationAuthorityId`in n))return null;_(n,`email_otp`,o);let r=s(n.emailHashHex),c=s(n.registrationAuthorityId);return!r||!c||Object.prototype.hasOwnProperty.call(n,`rpId`)||Object.prototype.hasOwnProperty.call(n,`credentialIdB64u`)||Object.prototype.hasOwnProperty.call(n,`credentialPublicKeyB64u`)||Object.prototype.hasOwnProperty.call(n,`counter`)?null:y({common:e,lifecycle:g(n),emailHashHex:r,registrationAuthorityId:c})}catch{return null}}function m(e){if(!(`walletAuthMethodId`in e)||!(`walletId`in e)||!(`walletAuthorityId`in e)||!(`createdAtMs`in e)||!(`updatedAtMs`in e))throw Error(`wallet auth method common fields are required`);return{version:`wallet_auth_method_v2`,walletAuthMethodId:b(e.walletAuthMethodId),walletId:x(e.walletId),walletAuthorityId:S(e.walletAuthorityId),createdAtMs:C(e.createdAtMs),updatedAtMs:C(e.updatedAtMs)}}function h(e){if(e.version!==`wallet_auth_method_v2`)throw Error(`wallet auth method record version is unsupported`);if(!e.walletAuthMethodId||!e.walletId||!e.walletAuthorityId)throw Error(`wallet auth method record identities are required`);if(!Number.isSafeInteger(e.createdAtMs)||e.createdAtMs<0)throw Error(`wallet auth method createdAtMs must be a non-negative safe integer`);if(!Number.isSafeInteger(e.updatedAtMs)||e.updatedAtMs<e.createdAtMs)throw Error(`wallet auth method updatedAtMs must follow createdAtMs`);if(e.kind===`passkey`){if(!e.rpId||!e.credentialIdB64u||!e.credentialPublicKeyB64u.trim())throw Error(`passkey wallet auth method fields are required`);if(!Number.isSafeInteger(e.counter)||e.counter<0)throw Error(`passkey authenticator counter must be non-negative`)}else if(!e.emailHashHex.trim()||!e.registrationAuthorityId.trim())throw Error(`email OTP wallet auth method fields are required`);switch(e.status){case`pending_local_install`:return;case`active`:w(e.activatedAtMs,`activatedAtMs`);return;case`revoked`:if(w(e.activatedAtMs,`activatedAtMs`),w(e.revokedAtMs,`revokedAtMs`),e.revokedAtMs<e.activatedAtMs)throw Error(`revokedAtMs cannot precede activatedAtMs`);return}}function g(e){if(!(`status`in e))throw Error(`wallet auth method status is required`);switch(e.status){case`pending_local_install`:return{status:`pending_local_install`};case`active`:if(!(`activatedAtMs`in e))throw Error(`wallet auth method activatedAtMs is required`);return{status:`active`,activatedAtMs:C(e.activatedAtMs)};case`revoked`:if(!(`activatedAtMs`in e)||!(`revokedAtMs`in e))throw Error(`wallet auth method revocation timestamps are required`);return{status:`revoked`,activatedAtMs:C(e.activatedAtMs),revokedAtMs:C(e.revokedAtMs)};default:throw Error(`wallet auth method status is unsupported`)}}function _(e,t,n){let r=[`version`,`walletAuthMethodId`,`walletId`,`walletAuthorityId`,`kind`,`status`,`createdAtMs`,`updatedAtMs`];if(t===`passkey`?r.push(`rpId`,`credentialIdB64u`,`credentialPublicKeyB64u`,`counter`):r.push(`emailHashHex`,`registrationAuthorityId`),n===`active`&&r.push(`activatedAtMs`),n===`revoked`&&r.push(`activatedAtMs`,`revokedAtMs`),n!==`pending_local_install`&&n!==`active`&&n!==`revoked`)throw Error(`wallet auth method status is unsupported`);let i=new Set(r),a=Object.keys(e);if(a.length!==r.length)throw Error(`wallet auth method record has invalid fields`);for(let e of a)if(!i.has(e))throw Error(`wallet auth method field ${e} is invalid`)}function v(e){switch(e.lifecycle.status){case`pending_local_install`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`passkey`,status:`pending_local_install`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter};case`active`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`passkey`,status:`active`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter,activatedAtMs:e.lifecycle.activatedAtMs};case`revoked`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`passkey`,status:`revoked`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter,activatedAtMs:e.lifecycle.activatedAtMs,revokedAtMs:e.lifecycle.revokedAtMs}}}function y(e){switch(e.lifecycle.status){case`pending_local_install`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`email_otp`,status:`pending_local_install`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId};case`active`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`email_otp`,status:`active`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId,activatedAtMs:e.lifecycle.activatedAtMs};case`revoked`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`email_otp`,status:`revoked`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId,activatedAtMs:e.lifecycle.activatedAtMs,revokedAtMs:e.lifecycle.revokedAtMs}}}function b(e){let t=r(e);if(!t.ok)throw Error(t.error.message);return t.value}function x(e){let t=n(e);if(!t.ok)throw Error(t.error.message);return t.value}function S(t){let n=e(t);if(!n.ok)throw Error(n.error.message);return n.value}function C(e){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<0)throw Error(`value must be a non-negative safe integer`);return e}function w(e,t){if(!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`)}export{u as i,l as n,p as r,f as t};
|
|
1
|
+
import{D as e,M as t,O as n,T as r,j as i}from"./domainIds-C3fUa33Q.js";import{c as a}from"./chains-CPmd4s9f.js";import{o}from"./canonicalPrimitives-BMP5yILS.js";import{i as s,t as c}from"./registrationAuthMethodInput-B23_HRil.js";async function l(e){return o(a({version:`wallet_auth_method_revoke_operation_v1`,walletId:String(e.walletId),targetWalletAuthMethodId:String(e.targetWalletAuthMethodId),requestedAtMs:e.requestedAtMs}))}function u(e,t){if(e.version!==t.version||e.walletAuthMethodId!==t.walletAuthMethodId||e.walletId!==t.walletId||e.walletAuthorityId!==t.walletAuthorityId||e.status!==t.status||e.createdAtMs!==t.createdAtMs||e.updatedAtMs!==t.updatedAtMs)return!1;switch(e.kind){case`passkey`:if(t.kind!==`passkey`)return!1;if(e.rpId===t.rpId&&e.credentialIdB64u===t.credentialIdB64u&&e.credentialPublicKeyB64u===t.credentialPublicKeyB64u&&e.counter===t.counter)break;return!1;case`email_otp`:if(t.kind!==`email_otp`)return!1;if(e.emailHashHex===t.emailHashHex&&e.registrationAuthorityId===t.registrationAuthorityId)break;return!1;default:return d(e,`wallet auth method kind`)}switch(e.status){case`pending_local_install`:return t.status===`pending_local_install`;case`active`:return t.status===`active`&&e.activatedAtMs===t.activatedAtMs;case`revoked`:return t.status===`revoked`&&e.activatedAtMs===t.activatedAtMs&&e.revokedAtMs===t.revokedAtMs;default:return d(e,`wallet auth method lifecycle`)}}function d(e,t){throw Error(`${t} branch is unsupported: ${String(e)}`)}function f(e){if(h(e),e.kind===`passkey`)switch(e.status){case`pending_local_install`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`passkey`,status:`pending_local_install`,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs};case`active`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`passkey`,status:`active`,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs,activatedAtMs:e.activatedAtMs};case`revoked`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`passkey`,status:`revoked`,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs,activatedAtMs:e.activatedAtMs,revokedAtMs:e.revokedAtMs}}switch(e.status){case`pending_local_install`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`email_otp`,status:`pending_local_install`,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs};case`active`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`email_otp`,status:`active`,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs,activatedAtMs:e.activatedAtMs};case`revoked`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.walletAuthMethodId,walletId:e.walletId,walletAuthorityId:e.walletAuthorityId,kind:`email_otp`,status:`revoked`,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs,activatedAtMs:e.activatedAtMs,revokedAtMs:e.revokedAtMs}}}function p(e){let n=c(e);if(!n||!(`version`in n)||!(`kind`in n)||!(`status`in n))return null;let r=s(n.version),a=s(n.kind),o=s(n.status);if(r!==`wallet_auth_method_v2`||a!==`passkey`&&a!==`email_otp`)return null;try{let e=m(n);if(a===`passkey`){if(!(`rpId`in n)||!(`credentialIdB64u`in n)||!(`credentialPublicKeyB64u`in n)||!(`counter`in n))return null;_(n,`passkey`,o);let r=t(n.rpId),a=i(n.credentialIdB64u);return!r.ok||!a.ok||typeof n.credentialPublicKeyB64u!=`string`||!n.credentialPublicKeyB64u.trim()||Object.prototype.hasOwnProperty.call(n,`emailHashHex`)||Object.prototype.hasOwnProperty.call(n,`registrationAuthorityId`)?null:v({common:e,lifecycle:g(n),rpId:r.value,credentialIdB64u:a.value,credentialPublicKeyB64u:n.credentialPublicKeyB64u,counter:C(n.counter)})}if(!(`emailHashHex`in n)||!(`registrationAuthorityId`in n))return null;_(n,`email_otp`,o);let r=s(n.emailHashHex),c=s(n.registrationAuthorityId);return!r||!c||Object.prototype.hasOwnProperty.call(n,`rpId`)||Object.prototype.hasOwnProperty.call(n,`credentialIdB64u`)||Object.prototype.hasOwnProperty.call(n,`credentialPublicKeyB64u`)||Object.prototype.hasOwnProperty.call(n,`counter`)?null:y({common:e,lifecycle:g(n),emailHashHex:r,registrationAuthorityId:c})}catch{return null}}function m(e){if(!(`walletAuthMethodId`in e)||!(`walletId`in e)||!(`walletAuthorityId`in e)||!(`createdAtMs`in e)||!(`updatedAtMs`in e))throw Error(`wallet auth method common fields are required`);return{version:`wallet_auth_method_v2`,walletAuthMethodId:b(e.walletAuthMethodId),walletId:x(e.walletId),walletAuthorityId:S(e.walletAuthorityId),createdAtMs:C(e.createdAtMs),updatedAtMs:C(e.updatedAtMs)}}function h(e){if(e.version!==`wallet_auth_method_v2`)throw Error(`wallet auth method record version is unsupported`);if(!e.walletAuthMethodId||!e.walletId||!e.walletAuthorityId)throw Error(`wallet auth method record identities are required`);if(!Number.isSafeInteger(e.createdAtMs)||e.createdAtMs<0)throw Error(`wallet auth method createdAtMs must be a non-negative safe integer`);if(!Number.isSafeInteger(e.updatedAtMs)||e.updatedAtMs<e.createdAtMs)throw Error(`wallet auth method updatedAtMs must follow createdAtMs`);if(e.kind===`passkey`){if(!e.rpId||!e.credentialIdB64u||!e.credentialPublicKeyB64u.trim())throw Error(`passkey wallet auth method fields are required`);if(!Number.isSafeInteger(e.counter)||e.counter<0)throw Error(`passkey authenticator counter must be non-negative`)}else if(!e.emailHashHex.trim()||!e.registrationAuthorityId.trim())throw Error(`email OTP wallet auth method fields are required`);switch(e.status){case`pending_local_install`:return;case`active`:w(e.activatedAtMs,`activatedAtMs`);return;case`revoked`:if(w(e.activatedAtMs,`activatedAtMs`),w(e.revokedAtMs,`revokedAtMs`),e.revokedAtMs<e.activatedAtMs)throw Error(`revokedAtMs cannot precede activatedAtMs`);return}}function g(e){if(!(`status`in e))throw Error(`wallet auth method status is required`);switch(e.status){case`pending_local_install`:return{status:`pending_local_install`};case`active`:if(!(`activatedAtMs`in e))throw Error(`wallet auth method activatedAtMs is required`);return{status:`active`,activatedAtMs:C(e.activatedAtMs)};case`revoked`:if(!(`activatedAtMs`in e)||!(`revokedAtMs`in e))throw Error(`wallet auth method revocation timestamps are required`);return{status:`revoked`,activatedAtMs:C(e.activatedAtMs),revokedAtMs:C(e.revokedAtMs)};default:throw Error(`wallet auth method status is unsupported`)}}function _(e,t,n){let r=[`version`,`walletAuthMethodId`,`walletId`,`walletAuthorityId`,`kind`,`status`,`createdAtMs`,`updatedAtMs`];if(t===`passkey`?r.push(`rpId`,`credentialIdB64u`,`credentialPublicKeyB64u`,`counter`):r.push(`emailHashHex`,`registrationAuthorityId`),n===`active`&&r.push(`activatedAtMs`),n===`revoked`&&r.push(`activatedAtMs`,`revokedAtMs`),n!==`pending_local_install`&&n!==`active`&&n!==`revoked`)throw Error(`wallet auth method status is unsupported`);let i=new Set(r),a=Object.keys(e);if(a.length!==r.length)throw Error(`wallet auth method record has invalid fields`);for(let e of a)if(!i.has(e))throw Error(`wallet auth method field ${e} is invalid`)}function v(e){switch(e.lifecycle.status){case`pending_local_install`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`passkey`,status:`pending_local_install`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter};case`active`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`passkey`,status:`active`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter,activatedAtMs:e.lifecycle.activatedAtMs};case`revoked`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`passkey`,status:`revoked`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,rpId:e.rpId,credentialIdB64u:e.credentialIdB64u,credentialPublicKeyB64u:e.credentialPublicKeyB64u,counter:e.counter,activatedAtMs:e.lifecycle.activatedAtMs,revokedAtMs:e.lifecycle.revokedAtMs}}}function y(e){switch(e.lifecycle.status){case`pending_local_install`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`email_otp`,status:`pending_local_install`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId};case`active`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`email_otp`,status:`active`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId,activatedAtMs:e.lifecycle.activatedAtMs};case`revoked`:return{version:`wallet_auth_method_v2`,walletAuthMethodId:e.common.walletAuthMethodId,walletId:e.common.walletId,walletAuthorityId:e.common.walletAuthorityId,kind:`email_otp`,status:`revoked`,createdAtMs:e.common.createdAtMs,updatedAtMs:e.common.updatedAtMs,emailHashHex:e.emailHashHex,registrationAuthorityId:e.registrationAuthorityId,activatedAtMs:e.lifecycle.activatedAtMs,revokedAtMs:e.lifecycle.revokedAtMs}}}function b(e){let t=r(e);if(!t.ok)throw Error(t.error.message);return t.value}function x(e){let t=n(e);if(!t.ok)throw Error(t.error.message);return t.value}function S(t){let n=e(t);if(!n.ok)throw Error(n.error.message);return n.value}function C(e){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<0)throw Error(`value must be a non-negative safe integer`);return e}function w(e,t){if(!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`)}export{u as i,l as n,p as r,f as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as e,D as t,O as n,h as r,k as i,l as a,u as o}from"./domainIds-C3fUa33Q.js";import{k as s,l as c}from"./chains-CPmd4s9f.js";import{_ as l,l as u,m as ee,n as te,s as ne}from"./primitives-cC0a9GRC.js";import{i as d}from"./base64-DW79QA0h.js";import{l as re}from"./capabilityKinds-D0Yrp9uf.js";import{r as f}from"./canonicalPrimitives-BOzRXzfv.js";import{a as p,i as ie,n as m,o as ae,r as oe,s as se,t as h}from"./digestEncoding-CbEFYvlJ.js";const ce=[`kind`,`keyFamilies`,`signers`],le=[`kind`,`keyFamily`,`walletId`,`walletKeyId`,`registeredPublicKeyB64u`],ue=[`kind`,`keyFamily`,`walletId`,`walletKeyId`,`thresholdPublicKey33B64u`,`evmAddress`];function g(e){if(e.length===0)throw Error(`exact administered signer manifest must contain at least one active family`);let t,n,r,i=new Set;for(let a of e){if(t!==void 0&&t!==a.walletId)throw Error(`exact administered signer manifest must use one wallet identity`);if(t=a.walletId,i.has(a.walletKeyId))throw Error(`exact administered signer manifest repeats wallet key ${a.walletKeyId}`);switch(i.add(a.walletKeyId),a.keyFamily){case`ed25519`:if(n!==void 0)throw Error(`exact administered signer manifest repeats the ed25519 family`);if(a.kind!==`exact_administered_ed25519_signer_v1`)throw Error(`exact administered signer manifest has an invalid Ed25519 signer`);n=a;break;case`ecdsa_secp256k1`:if(r!==void 0)throw Error(`exact administered signer manifest repeats the ecdsa family`);if(a.kind!==`exact_administered_ecdsa_signer_v1`)throw Error(`exact administered signer manifest has an invalid ECDSA signer`);r=a;break}}if(n!==void 0&&r!==void 0)return{kind:`exact_administered_signer_manifest_v1`,keyFamilies:[`ed25519`,`ecdsa_secp256k1`],signers:[n,r]};if(n!==void 0)return{kind:`exact_administered_signer_manifest_v1`,keyFamilies:[`ed25519`],signers:[n]};if(r!==void 0)return{kind:`exact_administered_signer_manifest_v1`,keyFamilies:[`ecdsa_secp256k1`],signers:[r]};throw Error(`exact administered signer manifest must contain a supported family`)}function _(e){let t=he(e,ce,`ExactAdministeredSignerManifestV1`);if(t.kind!==`exact_administered_signer_manifest_v1`)throw Error(`ExactAdministeredSignerManifestV1.kind is invalid`);let n=fe(t.keyFamilies);if(!Array.isArray(t.signers))throw Error(`ExactAdministeredSignerManifestV1.signers must be an array`);let r=[];for(let e=0;e<t.signers.length;e+=1)r.push(de(t.signers[e],`signers[${e}]`));let i=g(r);if(!pe(n,i.keyFamilies))throw Error(`ExactAdministeredSignerManifestV1.keyFamilies do not match signers`);return i}function de(e,t){let r=s(e,t);switch(r.keyFamily){case`ed25519`:if(l(r,le,t),r.kind!==`exact_administered_ed25519_signer_v1`)throw Error(`${t}.kind is invalid for Ed25519`);return{kind:`exact_administered_ed25519_signer_v1`,keyFamily:`ed25519`,walletId:u(n(r.walletId),`${t}.walletId`),walletKeyId:u(i(r.walletKeyId),`${t}.walletKeyId`),registeredPublicKeyB64u:te(r.registeredPublicKeyB64u,`${t}.registeredPublicKeyB64u`)};case`ecdsa_secp256k1`:if(l(r,ue,t),r.kind!==`exact_administered_ecdsa_signer_v1`)throw Error(`${t}.kind is invalid for ECDSA`);return{kind:`exact_administered_ecdsa_signer_v1`,keyFamily:`ecdsa_secp256k1`,walletId:u(n(r.walletId),`${t}.walletId`),walletKeyId:u(i(r.walletKeyId),`${t}.walletKeyId`),thresholdPublicKey33B64u:ne(r.thresholdPublicKey33B64u,`${t}.thresholdPublicKey33B64u`),evmAddress:me(r.evmAddress,`${t}.evmAddress`)};default:throw Error(`${t}.keyFamily is unsupported`)}}function fe(e){if(!Array.isArray(e)||e.length===0||e.length>2)throw Error(`ExactAdministeredSignerManifestV1.keyFamilies must be non-empty`);if(e.length===1&&e[0]===`ed25519`)return[`ed25519`];if(e.length===1&&e[0]===`ecdsa_secp256k1`)return[`ecdsa_secp256k1`];if(e.length===2&&e[0]===`ed25519`&&e[1]===`ecdsa_secp256k1`)return[`ed25519`,`ecdsa_secp256k1`];throw Error(`ExactAdministeredSignerManifestV1.keyFamilies must be canonical and duplicate-free`)}function pe(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function me(e,t){if(typeof e!=`string`||!/^0x[0-9a-fA-F]{40}$/.test(e))throw Error(`${t} must be a 20-byte hexadecimal EVM address`);return e}function he(e,t,n){let r=s(e,n);l(r,t,n);for(let e of t)if(!(e in r))throw Error(`${n}.${e} is required`);return r}function v(e){return K(e)}function y(e){return G(e.signerActivations)}function b(e){return W(e.signerActivations)}function ge(e){return e.provenance.kind===`wallet_recovery`}function x(e){return{kind:`wallet_ed25519_signer_activation_v1`,signer:e.signer,materialActivation:e.materialActivation}}function S(e){return{kind:`wallet_ecdsa_signer_activation_v1`,signer:e.signer,materialActivation:e.materialActivation}}function C(e){let t=_(e.manifest),n=ze(e.materialActivations);if(!Ne(t.keyFamilies,n.keyFamilies))throw Error(`wallet signer activation materials must match the signer manifest families`);if(U(t)){if(!Ie(n))throw Error(`Ed25519 signer activation requires one Ed25519 material activation`);return{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ed25519`],ed25519:x({signer:t.signers[0],materialActivation:n.ed25519})}}if(Pe(t)){if(!Le(n))throw Error(`ECDSA signer activation requires one ECDSA material activation`);return{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ecdsa_secp256k1`],ecdsa:S({signer:t.signers[0],materialActivation:n.ecdsa})}}if(!Fe(t)||!Re(n))throw Error(`wallet signer activation set has unsupported families`);if(n.ed25519.activationId===n.ecdsa.activationId)throw Error(`wallet signer activation references must be distinct`);return{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ed25519`,`ecdsa_secp256k1`],ed25519:x({signer:t.signers[0],materialActivation:n.ed25519}),ecdsa:S({signer:t.signers[1],materialActivation:n.ecdsa})}}function _e(e){try{let t=s(e,`WalletSignerActivationSetV1`);if(t.kind!==`wallet_signer_activation_set_v1`)return Z(`wallet signer activation set kind is unsupported`);if(!Object.prototype.hasOwnProperty.call(t,`keyFamilies`))return Z(`WalletSignerActivationSetV1.keyFamilies is required`);let n=Me(t.keyFamilies,`WalletSignerActivationSetV1.keyFamilies`);if(n.length===1&&n[0]===`ed25519`)return H(t,[`kind`,`keyFamilies`,`ed25519`],`WalletSignerActivationSetV1`),{ok:!0,value:{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ed25519`],ed25519:M(t.ed25519,`ed25519`)}};if(n.length===1&&n[0]===`ecdsa_secp256k1`)return H(t,[`kind`,`keyFamilies`,`ecdsa`],`WalletSignerActivationSetV1`),{ok:!0,value:{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ecdsa_secp256k1`],ecdsa:N(t.ecdsa,`ecdsa`)}};H(t,[`kind`,`keyFamilies`,`ed25519`,`ecdsa`],`WalletSignerActivationSetV1`);let r=M(t.ed25519,`ed25519`),i=N(t.ecdsa,`ecdsa`);return r.materialActivation.activationId===i.materialActivation.activationId?Z(`wallet signer activation references must be distinct`):{ok:!0,value:{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ed25519`,`ecdsa_secp256k1`],ed25519:r,ecdsa:i}}}catch(e){return Z(Q(e,`wallet signer activation set is invalid`))}}function ve(e){let t=[p(`seams/wallet-signer-activation-set/v1`,`domain`),p(e.kind,`kind`),ae(e.keyFamilies.length,`keyFamilies`)];for(let n of e.keyFamilies)t.push(p(n,`keyFamilies.item`));return(W(e)||K(e))&&t.push(m(F(e.ed25519),`ed25519`)),(G(e)||K(e))&&t.push(m(I(e.ecdsa),`ecdsa`)),h(t)}async function w(e){return f(d(await c(ve(e))))}function T(e){return{kind:`wallet_authority_v1`,authorityId:e.authorityId,walletId:e.walletId,principal:e.principal,provenance:e.provenance,permissions:e.permissions,signerActivations:e.signerActivations,signerActivationSetDigestB64u:e.signerActivationSetDigestB64u,authorityDigestB64u:e.authorityDigestB64u,revocationEpoch:e.revocationEpoch,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs}}function ye(e){return A(e),{...T(e),state:`pending_local_install`,localInstallPackageSetDigestB64u:e.localInstallPackageSetDigestB64u}}function E(e){return A(e),{...T(e),state:`active`,activatedAtMs:e.activatedAtMs}}async function be(e){let t=e.authority.signerActivations;if(!t.ed25519)throw Error(`active Wallet Authority has no Ed25519 material activation to replace`);let n=t.ecdsa?C({manifest:g([t.ed25519.signer,t.ecdsa.signer]),materialActivations:{keyFamilies:[`ed25519`,`ecdsa_secp256k1`],ed25519:e.materialActivation,ecdsa:t.ecdsa.materialActivation}}):C({manifest:g([t.ed25519.signer]),materialActivations:{keyFamilies:[`ed25519`],ed25519:e.materialActivation}}),r=await w(n),i={kind:e.authority.kind,authorityId:e.authority.authorityId,walletId:e.authority.walletId,principal:e.authority.principal,provenance:e.authority.provenance,permissions:e.authority.permissions,signerActivations:n,signerActivationSetDigestB64u:r,authorityDigestB64u:e.authority.authorityDigestB64u,revocationEpoch:e.authority.revocationEpoch,createdAtMs:e.authority.createdAtMs,updatedAtMs:Math.max(e.authority.updatedAtMs,e.updatedAtMs),state:`active`,activatedAtMs:e.authority.activatedAtMs};return E({...i,authorityDigestB64u:await O(i)})}function xe(e){return A(e),{...T(e),state:`active`,activatedAtMs:e.activatedAtMs}}function Se(e){return A(e),{...T(e),state:`revoked`,activatedAtMs:e.activatedAtMs,revokedAtMs:e.revokedAtMs}}const D=[`kind`,`authorityId`,`walletId`,`principal`,`provenance`,`permissions`,`signerActivations`,`signerActivationSetDigestB64u`,`authorityDigestB64u`,`revocationEpoch`,`createdAtMs`,`updatedAtMs`,`state`];function Ce(e){try{let t=s(e,`WalletAuthorityV1`),n=Ee(t);switch(t.state){case`pending_local_install`:return H(t,[...D,`localInstallPackageSetDigestB64u`],`WalletAuthorityV1`),{ok:!0,value:ye({kind:`wallet_authority_v1`,...n,state:`pending_local_install`,localInstallPackageSetDigestB64u:q(t.localInstallPackageSetDigestB64u,`localInstallPackageSetDigestB64u`)})};case`active`:return H(t,[...D,`activatedAtMs`],`WalletAuthorityV1`),{ok:!0,value:E({kind:`wallet_authority_v1`,...n,state:`active`,activatedAtMs:J(t.activatedAtMs,`activatedAtMs`)})};case`revoked`:return H(t,[...D,`activatedAtMs`,`revokedAtMs`],`WalletAuthorityV1`),{ok:!0,value:Se({kind:`wallet_authority_v1`,...n,state:`revoked`,activatedAtMs:J(t.activatedAtMs,`activatedAtMs`),revokedAtMs:J(t.revokedAtMs,`revokedAtMs`)})};default:return Z(`WalletAuthorityV1.state is unsupported`)}}catch(e){return Z(Q(e,`wallet authority is invalid`))}}function we(e){return h([p(`seams/wallet-authority/v1`,`domain`),p(e.kind,`kind`),p(e.authorityId,`authorityId`),p(e.walletId,`walletId`),m(R(e.principal),`principal`),m(z(e.provenance),`provenance`),m(B(e.permissions),`permissions`),oe(e.signerActivationSetDigestB64u,`signerActivationSetDigestB64u`),p(e.state,`state`),se(e.revocationEpoch,`revocationEpoch`)])}async function O(e){return f(d(await c(we(e))))}async function k(e){return await w(e.signerActivations)===e.signerActivationSetDigestB64u?await O(e)===e.authorityDigestB64u:!1}async function Te(e,t){let[n,r]=await Promise.all([k(e),k(t)]);return n&&r&&e.authorityDigestB64u===t.authorityDigestB64u&&e.signerActivationSetDigestB64u===t.signerActivationSetDigestB64u&&e.createdAtMs===t.createdAtMs&&e.updatedAtMs===t.updatedAtMs&&e.activatedAtMs===t.activatedAtMs}function Ee(e){if(e.kind!==`wallet_authority_v1`)throw Error(`WalletAuthorityV1.kind is unsupported`);let r=X(t(e.authorityId),`authorityId`),i=X(n(e.walletId),`walletId`),a=De(e.principal),o=Oe(e.provenance),s=X(ee(e.permissions),`permissions`),c=X(_e(e.signerActivations),`signerActivations`),l=q(e.signerActivationSetDigestB64u,`signerActivationSetDigestB64u`),u=q(e.authorityDigestB64u,`authorityDigestB64u`),te=J(e.revocationEpoch,`revocationEpoch`),ne=J(e.createdAtMs,`createdAtMs`),d=J(e.updatedAtMs,`updatedAtMs`);return j(c,i),{authorityId:r,walletId:i,principal:a,provenance:o,permissions:s,signerActivations:c,signerActivationSetDigestB64u:l,authorityDigestB64u:u,revocationEpoch:te,createdAtMs:ne,updatedAtMs:d}}function A(e){if(e.kind!==`wallet_authority_v1`)throw Error(`wallet authority kind is unsupported`);if(!Number.isSafeInteger(e.revocationEpoch)||e.revocationEpoch<0)throw Error(`wallet authority revocationEpoch must be a non-negative safe integer`);if(Y(e.createdAtMs,`createdAtMs`),Y(e.updatedAtMs,`updatedAtMs`),e.updatedAtMs<e.createdAtMs)throw Error(`wallet authority updatedAtMs cannot precede createdAtMs`);switch(q(e.signerActivationSetDigestB64u,`signerActivationSetDigestB64u`),q(e.authorityDigestB64u,`authorityDigestB64u`),j(e.signerActivations,e.walletId),ke(e.provenance),e.state){case`pending_local_install`:q(e.localInstallPackageSetDigestB64u,`localInstallPackageSetDigestB64u`);break;case`active`:Y(e.activatedAtMs,`activatedAtMs`);break;case`revoked`:if(Y(e.activatedAtMs,`activatedAtMs`),Y(e.revokedAtMs,`revokedAtMs`),e.revokedAtMs<e.activatedAtMs)throw Error(`revokedAtMs cannot precede activatedAtMs`);break}}function De(e){let t=V(e,[`kind`,`deviceId`],`WalletAuthorityPrincipalV1`);if(t.kind!==`owner_device`)throw Error(`wallet authority principal kind is unsupported`);return{kind:`owner_device`,deviceId:X(re(t.deviceId),`deviceId`)}}function Oe(n){let r=s(n,`WalletAuthorityProvenanceV1`);switch(r.kind){case`wallet_registration`:return H(r,[`kind`],`WalletAuthorityProvenanceV1`),{kind:`wallet_registration`};case`device_link`:return H(r,[`kind`,`enrollmentId`,`sourceAuthorityId`,`linkSessionId`],`WalletAuthorityProvenanceV1`),{kind:`device_link`,enrollmentId:X(o(r.enrollmentId),`enrollmentId`),sourceAuthorityId:X(t(r.sourceAuthorityId),`sourceAuthorityId`),linkSessionId:X(a(r.linkSessionId),`linkSessionId`)};case`wallet_recovery`:return H(r,[`kind`,`recoveryOperationId`,`continuityAuthorityId`],`WalletAuthorityProvenanceV1`),{kind:`wallet_recovery`,recoveryOperationId:X(e(r.recoveryOperationId),`recoveryOperationId`),continuityAuthorityId:X(t(r.continuityAuthorityId),`continuityAuthorityId`)};default:throw Error(`wallet authority provenance kind is unsupported`)}}function ke(e){switch(e.kind){case`wallet_registration`:return;case`device_link`:if(!e.enrollmentId||!e.sourceAuthorityId||!e.linkSessionId)throw Error(`device-link provenance requires every audit identity`);return;case`wallet_recovery`:if(!e.recoveryOperationId||!e.continuityAuthorityId)throw Error(`wallet-recovery provenance requires every audit identity`);return}Be(e,`wallet authority provenance`)}function j(e,t){if(W(e)){if(e.ed25519.signer.walletId!==t)throw Error(`Ed25519 signer activation uses a different wallet id`);return}if(G(e)){if(e.ecdsa.signer.walletId!==t)throw Error(`ECDSA signer activation uses a different wallet id`);return}if(K(e)){if(e.ed25519.signer.walletId!==t||e.ecdsa.signer.walletId!==t)throw Error(`signer activations must use the authority wallet id`);return}throw Error(`wallet signer activation families are unsupported`)}function M(e,t){let n=V(e,[`kind`,`signer`,`materialActivation`],t);if(n.kind!==`wallet_ed25519_signer_activation_v1`)throw Error(`${t}.kind is invalid`);let i=P(n.signer,`ed25519`,`${t}.signer`);if(!U(i))throw Error(`${t}.signer is not Ed25519`);return x({signer:i.signers[0],materialActivation:X(r(n.materialActivation),`${t}.materialActivation`)})}function N(e,t){let n=V(e,[`kind`,`signer`,`materialActivation`],t);if(n.kind!==`wallet_ecdsa_signer_activation_v1`)throw Error(`${t}.kind is invalid`);let i=P(n.signer,`ecdsa_secp256k1`,`${t}.signer`);if(!Pe(i))throw Error(`${t}.signer is not ECDSA`);return S({signer:i.signers[0],materialActivation:X(r(n.materialActivation),`${t}.materialActivation`)})}function P(e,t,n){return _({kind:`exact_administered_signer_manifest_v1`,keyFamilies:[t],signers:[e]})}function F(e){return h([p(e.kind,`ed25519.kind`),m(Ae(e.signer),`ed25519.signer`),m(L(e.materialActivation),`ed25519.materialActivation`)])}function I(e){return h([p(e.kind,`ecdsa.kind`),m(je(e.signer),`ecdsa.signer`),m(L(e.materialActivation),`ecdsa.materialActivation`)])}function Ae(e){return h([p(e.kind,`ed25519.signer.kind`),p(e.keyFamily,`ed25519.signer.keyFamily`),p(e.walletId,`ed25519.signer.walletId`),p(e.walletKeyId,`ed25519.signer.walletKeyId`),m(ie(e.registeredPublicKeyB64u,`ed25519.signer.registeredPublicKeyB64u`),`ed25519.signer.registeredPublicKeyB64u`)])}function je(e){return h([p(e.kind,`ecdsa.signer.kind`),p(e.keyFamily,`ecdsa.signer.keyFamily`),p(e.walletId,`ecdsa.signer.walletId`),p(e.walletKeyId,`ecdsa.signer.walletKeyId`),m(ie(e.thresholdPublicKey33B64u,`ecdsa.signer.thresholdPublicKey33B64u`),`ecdsa.signer.thresholdPublicKey33B64u`),p(e.evmAddress,`ecdsa.signer.evmAddress`)])}function L(e){return h([p(e.kind,`materialActivation.kind`),p(e.activationId,`materialActivation.activationId`),p(e.capability,`materialActivation.capability`),p(e.materialOwner,`materialActivation.materialOwner`),p(e.keyBinding,`materialActivation.keyBinding`),p(e.lifecycleBinding,`materialActivation.lifecycleBinding`),p(e.signingWorker,`materialActivation.signingWorker`)])}function R(e){return h([p(e.kind,`principal.kind`),p(e.deviceId,`principal.deviceId`)])}function z(e){switch(e.kind){case`wallet_registration`:return p(e.kind,`provenance.kind`);case`device_link`:return h([p(e.kind,`provenance.kind`),p(e.enrollmentId,`provenance.enrollmentId`),p(e.sourceAuthorityId,`provenance.sourceAuthorityId`),p(e.linkSessionId,`provenance.linkSessionId`)]);case`wallet_recovery`:return h([p(e.kind,`provenance.kind`),p(e.recoveryOperationId,`provenance.recoveryOperationId`),p(e.continuityAuthorityId,`provenance.continuityAuthorityId`)])}return Be(e,`wallet authority provenance`)}function B(e){let t=[ae(e.length,`permissions`)];for(let n of e)t.push(m(p(n,`permissions.item`),`permissions.item`));return h(t)}function V(e,t,n){let r=s(e,n);return H(r,t,n),r}function H(e,t,n){let r=new Set(t),i=Object.keys(e);if(i.length!==t.length)throw Error(`${n} contains unexpected fields`);for(let e of i)if(!r.has(e))throw Error(`${n}.${e} is not allowed`);for(let r of t)if(!Object.prototype.hasOwnProperty.call(e,r))throw Error(`${n}.${r} is required`)}function Me(e,t){if(!Array.isArray(e))throw Error(`${t} must be an array`);if(e.length===1&&e[0]===`ed25519`)return[`ed25519`];if(e.length===1&&e[0]===`ecdsa_secp256k1`)return[`ecdsa_secp256k1`];if(e.length===2&&e[0]===`ed25519`&&e[1]===`ecdsa_secp256k1`)return[`ed25519`,`ecdsa_secp256k1`];throw Error(`${t} must use canonical family order`)}function Ne(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function U(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ed25519`}function Pe(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ecdsa_secp256k1`}function Fe(e){return e.keyFamilies.length===2}function Ie(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ed25519`}function Le(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ecdsa_secp256k1`}function Re(e){return e.keyFamilies.length===2}function ze(e){if(Ie(e))return{keyFamilies:[`ed25519`],ed25519:X(r(e.ed25519),`materialActivations.ed25519`)};if(Le(e))return{keyFamilies:[`ecdsa_secp256k1`],ecdsa:X(r(e.ecdsa),`materialActivations.ecdsa`)};if(Re(e))return{keyFamilies:[`ed25519`,`ecdsa_secp256k1`],ed25519:X(r(e.ed25519),`materialActivations.ed25519`),ecdsa:X(r(e.ecdsa),`materialActivations.ecdsa`)};throw Error(`wallet signer activation materials are unsupported`)}function W(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ed25519`}function G(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ecdsa_secp256k1`}function K(e){return e.keyFamilies.length===2}function q(e,t){try{return f(e)}catch(e){throw Error(`${t} ${Q(e,`is invalid`)}`)}}function J(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`);return e}function Y(e,t){if(!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`)}function X(e,t){if(e.ok)return e.value;throw Error(`${t} ${e.error.message}`)}function Z(e){return{ok:!1,error:{code:`invalid`,message:e}}}function Q(e,t){return e instanceof Error?e.message:t}function Be(e,t){throw Error(`${t} branch is unsupported: ${String(e)}`)}async function Ve(e,t,n){let r=await w(t),i={kind:`wallet_authority_v1`,authorityId:e.authorityId,walletId:e.walletId,principal:e.principal,provenance:e.provenance,permissions:e.permissions,signerActivations:t,signerActivationSetDigestB64u:r,authorityDigestB64u:e.authorityDigestB64u,revocationEpoch:e.revocationEpoch,createdAtMs:e.createdAtMs,updatedAtMs:Math.max(e.updatedAtMs,n),state:`active`,activatedAtMs:e.activatedAtMs};return xe({...i,authorityDigestB64u:await O(i)})}async function He(e){if(e.ed25519.signer.walletId!==e.authority.walletId)throw Error(`NEAR signer belongs to a different wallet authority`);let t=e.authority.signerActivations.ecdsa,n=e.ed25519.signer,r=C({manifest:g([n,t.signer]),materialActivations:{keyFamilies:[`ed25519`,`ecdsa_secp256k1`],ed25519:e.ed25519.materialActivation,ecdsa:t.materialActivation}});if(!v(r))throw Error(`Deferred Ed25519 activation did not produce a combined signer activation set`);return Ve(e.authority,r,e.now)}function $(e,t){return e.authorityId===t.authorityId&&e.walletId===t.walletId&&e.revocationEpoch===t.revocationEpoch&&e.createdAtMs===t.createdAtMs&&e.activatedAtMs===t.activatedAtMs&&d(R(e.principal))===d(R(t.principal))&&d(z(e.provenance))===d(z(t.provenance))&&d(B(e.permissions))===d(B(t.permissions))}function Ue(e,t){return b(e)&&v(t.signerActivations)&&$(e,t)&&d(F(e.signerActivations.ed25519))===d(F(t.signerActivations.ed25519))}function We(e,t){return y(e)&&v(t.signerActivations)&&e.provenance.kind===`wallet_registration`&&$(e,t)&&d(I(e.signerActivations.ecdsa))===d(I(t.signerActivations.ecdsa))}export{y as a,v as c,Ce as d,_e as f,_ as g,k as h,He as i,Ue as l,Te as m,w as n,b as o,be as p,ve as r,ge as s,O as t,We as u};
|
|
1
|
+
import{A as e,D as t,O as n,h as r,k as i,l as a,u as o}from"./domainIds-C3fUa33Q.js";import{k as s,l as c}from"./chains-CPmd4s9f.js";import{_ as l,l as u,m as ee,n as te,s as ne}from"./primitives-CTmDwMNc.js";import{i as d}from"./base64-BmKR3UqU.js";import{l as re}from"./capabilityKinds-D0Yrp9uf.js";import{r as f}from"./canonicalPrimitives-BMP5yILS.js";import{a as p,i as ie,n as m,o as ae,r as oe,s as se,t as h}from"./digestEncoding-aC4dSf_x.js";const ce=[`kind`,`keyFamilies`,`signers`],le=[`kind`,`keyFamily`,`walletId`,`walletKeyId`,`registeredPublicKeyB64u`],ue=[`kind`,`keyFamily`,`walletId`,`walletKeyId`,`thresholdPublicKey33B64u`,`evmAddress`];function g(e){if(e.length===0)throw Error(`exact administered signer manifest must contain at least one active family`);let t,n,r,i=new Set;for(let a of e){if(t!==void 0&&t!==a.walletId)throw Error(`exact administered signer manifest must use one wallet identity`);if(t=a.walletId,i.has(a.walletKeyId))throw Error(`exact administered signer manifest repeats wallet key ${a.walletKeyId}`);switch(i.add(a.walletKeyId),a.keyFamily){case`ed25519`:if(n!==void 0)throw Error(`exact administered signer manifest repeats the ed25519 family`);if(a.kind!==`exact_administered_ed25519_signer_v1`)throw Error(`exact administered signer manifest has an invalid Ed25519 signer`);n=a;break;case`ecdsa_secp256k1`:if(r!==void 0)throw Error(`exact administered signer manifest repeats the ecdsa family`);if(a.kind!==`exact_administered_ecdsa_signer_v1`)throw Error(`exact administered signer manifest has an invalid ECDSA signer`);r=a;break}}if(n!==void 0&&r!==void 0)return{kind:`exact_administered_signer_manifest_v1`,keyFamilies:[`ed25519`,`ecdsa_secp256k1`],signers:[n,r]};if(n!==void 0)return{kind:`exact_administered_signer_manifest_v1`,keyFamilies:[`ed25519`],signers:[n]};if(r!==void 0)return{kind:`exact_administered_signer_manifest_v1`,keyFamilies:[`ecdsa_secp256k1`],signers:[r]};throw Error(`exact administered signer manifest must contain a supported family`)}function _(e){let t=he(e,ce,`ExactAdministeredSignerManifestV1`);if(t.kind!==`exact_administered_signer_manifest_v1`)throw Error(`ExactAdministeredSignerManifestV1.kind is invalid`);let n=fe(t.keyFamilies);if(!Array.isArray(t.signers))throw Error(`ExactAdministeredSignerManifestV1.signers must be an array`);let r=[];for(let e=0;e<t.signers.length;e+=1)r.push(de(t.signers[e],`signers[${e}]`));let i=g(r);if(!pe(n,i.keyFamilies))throw Error(`ExactAdministeredSignerManifestV1.keyFamilies do not match signers`);return i}function de(e,t){let r=s(e,t);switch(r.keyFamily){case`ed25519`:if(l(r,le,t),r.kind!==`exact_administered_ed25519_signer_v1`)throw Error(`${t}.kind is invalid for Ed25519`);return{kind:`exact_administered_ed25519_signer_v1`,keyFamily:`ed25519`,walletId:u(n(r.walletId),`${t}.walletId`),walletKeyId:u(i(r.walletKeyId),`${t}.walletKeyId`),registeredPublicKeyB64u:te(r.registeredPublicKeyB64u,`${t}.registeredPublicKeyB64u`)};case`ecdsa_secp256k1`:if(l(r,ue,t),r.kind!==`exact_administered_ecdsa_signer_v1`)throw Error(`${t}.kind is invalid for ECDSA`);return{kind:`exact_administered_ecdsa_signer_v1`,keyFamily:`ecdsa_secp256k1`,walletId:u(n(r.walletId),`${t}.walletId`),walletKeyId:u(i(r.walletKeyId),`${t}.walletKeyId`),thresholdPublicKey33B64u:ne(r.thresholdPublicKey33B64u,`${t}.thresholdPublicKey33B64u`),evmAddress:me(r.evmAddress,`${t}.evmAddress`)};default:throw Error(`${t}.keyFamily is unsupported`)}}function fe(e){if(!Array.isArray(e)||e.length===0||e.length>2)throw Error(`ExactAdministeredSignerManifestV1.keyFamilies must be non-empty`);if(e.length===1&&e[0]===`ed25519`)return[`ed25519`];if(e.length===1&&e[0]===`ecdsa_secp256k1`)return[`ecdsa_secp256k1`];if(e.length===2&&e[0]===`ed25519`&&e[1]===`ecdsa_secp256k1`)return[`ed25519`,`ecdsa_secp256k1`];throw Error(`ExactAdministeredSignerManifestV1.keyFamilies must be canonical and duplicate-free`)}function pe(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function me(e,t){if(typeof e!=`string`||!/^0x[0-9a-fA-F]{40}$/.test(e))throw Error(`${t} must be a 20-byte hexadecimal EVM address`);return e}function he(e,t,n){let r=s(e,n);l(r,t,n);for(let e of t)if(!(e in r))throw Error(`${n}.${e} is required`);return r}function v(e){return K(e)}function y(e){return G(e.signerActivations)}function b(e){return W(e.signerActivations)}function ge(e){return e.provenance.kind===`wallet_recovery`}function x(e){return{kind:`wallet_ed25519_signer_activation_v1`,signer:e.signer,materialActivation:e.materialActivation}}function S(e){return{kind:`wallet_ecdsa_signer_activation_v1`,signer:e.signer,materialActivation:e.materialActivation}}function C(e){let t=_(e.manifest),n=ze(e.materialActivations);if(!Ne(t.keyFamilies,n.keyFamilies))throw Error(`wallet signer activation materials must match the signer manifest families`);if(U(t)){if(!Ie(n))throw Error(`Ed25519 signer activation requires one Ed25519 material activation`);return{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ed25519`],ed25519:x({signer:t.signers[0],materialActivation:n.ed25519})}}if(Pe(t)){if(!Le(n))throw Error(`ECDSA signer activation requires one ECDSA material activation`);return{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ecdsa_secp256k1`],ecdsa:S({signer:t.signers[0],materialActivation:n.ecdsa})}}if(!Fe(t)||!Re(n))throw Error(`wallet signer activation set has unsupported families`);if(n.ed25519.activationId===n.ecdsa.activationId)throw Error(`wallet signer activation references must be distinct`);return{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ed25519`,`ecdsa_secp256k1`],ed25519:x({signer:t.signers[0],materialActivation:n.ed25519}),ecdsa:S({signer:t.signers[1],materialActivation:n.ecdsa})}}function _e(e){try{let t=s(e,`WalletSignerActivationSetV1`);if(t.kind!==`wallet_signer_activation_set_v1`)return Z(`wallet signer activation set kind is unsupported`);if(!Object.prototype.hasOwnProperty.call(t,`keyFamilies`))return Z(`WalletSignerActivationSetV1.keyFamilies is required`);let n=Me(t.keyFamilies,`WalletSignerActivationSetV1.keyFamilies`);if(n.length===1&&n[0]===`ed25519`)return H(t,[`kind`,`keyFamilies`,`ed25519`],`WalletSignerActivationSetV1`),{ok:!0,value:{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ed25519`],ed25519:M(t.ed25519,`ed25519`)}};if(n.length===1&&n[0]===`ecdsa_secp256k1`)return H(t,[`kind`,`keyFamilies`,`ecdsa`],`WalletSignerActivationSetV1`),{ok:!0,value:{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ecdsa_secp256k1`],ecdsa:N(t.ecdsa,`ecdsa`)}};H(t,[`kind`,`keyFamilies`,`ed25519`,`ecdsa`],`WalletSignerActivationSetV1`);let r=M(t.ed25519,`ed25519`),i=N(t.ecdsa,`ecdsa`);return r.materialActivation.activationId===i.materialActivation.activationId?Z(`wallet signer activation references must be distinct`):{ok:!0,value:{kind:`wallet_signer_activation_set_v1`,keyFamilies:[`ed25519`,`ecdsa_secp256k1`],ed25519:r,ecdsa:i}}}catch(e){return Z(Q(e,`wallet signer activation set is invalid`))}}function ve(e){let t=[p(`seams/wallet-signer-activation-set/v1`,`domain`),p(e.kind,`kind`),ae(e.keyFamilies.length,`keyFamilies`)];for(let n of e.keyFamilies)t.push(p(n,`keyFamilies.item`));return(W(e)||K(e))&&t.push(m(F(e.ed25519),`ed25519`)),(G(e)||K(e))&&t.push(m(I(e.ecdsa),`ecdsa`)),h(t)}async function w(e){return f(d(await c(ve(e))))}function T(e){return{kind:`wallet_authority_v1`,authorityId:e.authorityId,walletId:e.walletId,principal:e.principal,provenance:e.provenance,permissions:e.permissions,signerActivations:e.signerActivations,signerActivationSetDigestB64u:e.signerActivationSetDigestB64u,authorityDigestB64u:e.authorityDigestB64u,revocationEpoch:e.revocationEpoch,createdAtMs:e.createdAtMs,updatedAtMs:e.updatedAtMs}}function ye(e){return A(e),{...T(e),state:`pending_local_install`,localInstallPackageSetDigestB64u:e.localInstallPackageSetDigestB64u}}function E(e){return A(e),{...T(e),state:`active`,activatedAtMs:e.activatedAtMs}}async function be(e){let t=e.authority.signerActivations;if(!t.ed25519)throw Error(`active Wallet Authority has no Ed25519 material activation to replace`);let n=t.ecdsa?C({manifest:g([t.ed25519.signer,t.ecdsa.signer]),materialActivations:{keyFamilies:[`ed25519`,`ecdsa_secp256k1`],ed25519:e.materialActivation,ecdsa:t.ecdsa.materialActivation}}):C({manifest:g([t.ed25519.signer]),materialActivations:{keyFamilies:[`ed25519`],ed25519:e.materialActivation}}),r=await w(n),i={kind:e.authority.kind,authorityId:e.authority.authorityId,walletId:e.authority.walletId,principal:e.authority.principal,provenance:e.authority.provenance,permissions:e.authority.permissions,signerActivations:n,signerActivationSetDigestB64u:r,authorityDigestB64u:e.authority.authorityDigestB64u,revocationEpoch:e.authority.revocationEpoch,createdAtMs:e.authority.createdAtMs,updatedAtMs:Math.max(e.authority.updatedAtMs,e.updatedAtMs),state:`active`,activatedAtMs:e.authority.activatedAtMs};return E({...i,authorityDigestB64u:await O(i)})}function xe(e){return A(e),{...T(e),state:`active`,activatedAtMs:e.activatedAtMs}}function Se(e){return A(e),{...T(e),state:`revoked`,activatedAtMs:e.activatedAtMs,revokedAtMs:e.revokedAtMs}}const D=[`kind`,`authorityId`,`walletId`,`principal`,`provenance`,`permissions`,`signerActivations`,`signerActivationSetDigestB64u`,`authorityDigestB64u`,`revocationEpoch`,`createdAtMs`,`updatedAtMs`,`state`];function Ce(e){try{let t=s(e,`WalletAuthorityV1`),n=Ee(t);switch(t.state){case`pending_local_install`:return H(t,[...D,`localInstallPackageSetDigestB64u`],`WalletAuthorityV1`),{ok:!0,value:ye({kind:`wallet_authority_v1`,...n,state:`pending_local_install`,localInstallPackageSetDigestB64u:q(t.localInstallPackageSetDigestB64u,`localInstallPackageSetDigestB64u`)})};case`active`:return H(t,[...D,`activatedAtMs`],`WalletAuthorityV1`),{ok:!0,value:E({kind:`wallet_authority_v1`,...n,state:`active`,activatedAtMs:J(t.activatedAtMs,`activatedAtMs`)})};case`revoked`:return H(t,[...D,`activatedAtMs`,`revokedAtMs`],`WalletAuthorityV1`),{ok:!0,value:Se({kind:`wallet_authority_v1`,...n,state:`revoked`,activatedAtMs:J(t.activatedAtMs,`activatedAtMs`),revokedAtMs:J(t.revokedAtMs,`revokedAtMs`)})};default:return Z(`WalletAuthorityV1.state is unsupported`)}}catch(e){return Z(Q(e,`wallet authority is invalid`))}}function we(e){return h([p(`seams/wallet-authority/v1`,`domain`),p(e.kind,`kind`),p(e.authorityId,`authorityId`),p(e.walletId,`walletId`),m(R(e.principal),`principal`),m(z(e.provenance),`provenance`),m(B(e.permissions),`permissions`),oe(e.signerActivationSetDigestB64u,`signerActivationSetDigestB64u`),p(e.state,`state`),se(e.revocationEpoch,`revocationEpoch`)])}async function O(e){return f(d(await c(we(e))))}async function k(e){return await w(e.signerActivations)===e.signerActivationSetDigestB64u?await O(e)===e.authorityDigestB64u:!1}async function Te(e,t){let[n,r]=await Promise.all([k(e),k(t)]);return n&&r&&e.authorityDigestB64u===t.authorityDigestB64u&&e.signerActivationSetDigestB64u===t.signerActivationSetDigestB64u&&e.createdAtMs===t.createdAtMs&&e.updatedAtMs===t.updatedAtMs&&e.activatedAtMs===t.activatedAtMs}function Ee(e){if(e.kind!==`wallet_authority_v1`)throw Error(`WalletAuthorityV1.kind is unsupported`);let r=X(t(e.authorityId),`authorityId`),i=X(n(e.walletId),`walletId`),a=De(e.principal),o=Oe(e.provenance),s=X(ee(e.permissions),`permissions`),c=X(_e(e.signerActivations),`signerActivations`),l=q(e.signerActivationSetDigestB64u,`signerActivationSetDigestB64u`),u=q(e.authorityDigestB64u,`authorityDigestB64u`),te=J(e.revocationEpoch,`revocationEpoch`),ne=J(e.createdAtMs,`createdAtMs`),d=J(e.updatedAtMs,`updatedAtMs`);return j(c,i),{authorityId:r,walletId:i,principal:a,provenance:o,permissions:s,signerActivations:c,signerActivationSetDigestB64u:l,authorityDigestB64u:u,revocationEpoch:te,createdAtMs:ne,updatedAtMs:d}}function A(e){if(e.kind!==`wallet_authority_v1`)throw Error(`wallet authority kind is unsupported`);if(!Number.isSafeInteger(e.revocationEpoch)||e.revocationEpoch<0)throw Error(`wallet authority revocationEpoch must be a non-negative safe integer`);if(Y(e.createdAtMs,`createdAtMs`),Y(e.updatedAtMs,`updatedAtMs`),e.updatedAtMs<e.createdAtMs)throw Error(`wallet authority updatedAtMs cannot precede createdAtMs`);switch(q(e.signerActivationSetDigestB64u,`signerActivationSetDigestB64u`),q(e.authorityDigestB64u,`authorityDigestB64u`),j(e.signerActivations,e.walletId),ke(e.provenance),e.state){case`pending_local_install`:q(e.localInstallPackageSetDigestB64u,`localInstallPackageSetDigestB64u`);break;case`active`:Y(e.activatedAtMs,`activatedAtMs`);break;case`revoked`:if(Y(e.activatedAtMs,`activatedAtMs`),Y(e.revokedAtMs,`revokedAtMs`),e.revokedAtMs<e.activatedAtMs)throw Error(`revokedAtMs cannot precede activatedAtMs`);break}}function De(e){let t=V(e,[`kind`,`deviceId`],`WalletAuthorityPrincipalV1`);if(t.kind!==`owner_device`)throw Error(`wallet authority principal kind is unsupported`);return{kind:`owner_device`,deviceId:X(re(t.deviceId),`deviceId`)}}function Oe(n){let r=s(n,`WalletAuthorityProvenanceV1`);switch(r.kind){case`wallet_registration`:return H(r,[`kind`],`WalletAuthorityProvenanceV1`),{kind:`wallet_registration`};case`device_link`:return H(r,[`kind`,`enrollmentId`,`sourceAuthorityId`,`linkSessionId`],`WalletAuthorityProvenanceV1`),{kind:`device_link`,enrollmentId:X(o(r.enrollmentId),`enrollmentId`),sourceAuthorityId:X(t(r.sourceAuthorityId),`sourceAuthorityId`),linkSessionId:X(a(r.linkSessionId),`linkSessionId`)};case`wallet_recovery`:return H(r,[`kind`,`recoveryOperationId`,`continuityAuthorityId`],`WalletAuthorityProvenanceV1`),{kind:`wallet_recovery`,recoveryOperationId:X(e(r.recoveryOperationId),`recoveryOperationId`),continuityAuthorityId:X(t(r.continuityAuthorityId),`continuityAuthorityId`)};default:throw Error(`wallet authority provenance kind is unsupported`)}}function ke(e){switch(e.kind){case`wallet_registration`:return;case`device_link`:if(!e.enrollmentId||!e.sourceAuthorityId||!e.linkSessionId)throw Error(`device-link provenance requires every audit identity`);return;case`wallet_recovery`:if(!e.recoveryOperationId||!e.continuityAuthorityId)throw Error(`wallet-recovery provenance requires every audit identity`);return}Be(e,`wallet authority provenance`)}function j(e,t){if(W(e)){if(e.ed25519.signer.walletId!==t)throw Error(`Ed25519 signer activation uses a different wallet id`);return}if(G(e)){if(e.ecdsa.signer.walletId!==t)throw Error(`ECDSA signer activation uses a different wallet id`);return}if(K(e)){if(e.ed25519.signer.walletId!==t||e.ecdsa.signer.walletId!==t)throw Error(`signer activations must use the authority wallet id`);return}throw Error(`wallet signer activation families are unsupported`)}function M(e,t){let n=V(e,[`kind`,`signer`,`materialActivation`],t);if(n.kind!==`wallet_ed25519_signer_activation_v1`)throw Error(`${t}.kind is invalid`);let i=P(n.signer,`ed25519`,`${t}.signer`);if(!U(i))throw Error(`${t}.signer is not Ed25519`);return x({signer:i.signers[0],materialActivation:X(r(n.materialActivation),`${t}.materialActivation`)})}function N(e,t){let n=V(e,[`kind`,`signer`,`materialActivation`],t);if(n.kind!==`wallet_ecdsa_signer_activation_v1`)throw Error(`${t}.kind is invalid`);let i=P(n.signer,`ecdsa_secp256k1`,`${t}.signer`);if(!Pe(i))throw Error(`${t}.signer is not ECDSA`);return S({signer:i.signers[0],materialActivation:X(r(n.materialActivation),`${t}.materialActivation`)})}function P(e,t,n){return _({kind:`exact_administered_signer_manifest_v1`,keyFamilies:[t],signers:[e]})}function F(e){return h([p(e.kind,`ed25519.kind`),m(Ae(e.signer),`ed25519.signer`),m(L(e.materialActivation),`ed25519.materialActivation`)])}function I(e){return h([p(e.kind,`ecdsa.kind`),m(je(e.signer),`ecdsa.signer`),m(L(e.materialActivation),`ecdsa.materialActivation`)])}function Ae(e){return h([p(e.kind,`ed25519.signer.kind`),p(e.keyFamily,`ed25519.signer.keyFamily`),p(e.walletId,`ed25519.signer.walletId`),p(e.walletKeyId,`ed25519.signer.walletKeyId`),m(ie(e.registeredPublicKeyB64u,`ed25519.signer.registeredPublicKeyB64u`),`ed25519.signer.registeredPublicKeyB64u`)])}function je(e){return h([p(e.kind,`ecdsa.signer.kind`),p(e.keyFamily,`ecdsa.signer.keyFamily`),p(e.walletId,`ecdsa.signer.walletId`),p(e.walletKeyId,`ecdsa.signer.walletKeyId`),m(ie(e.thresholdPublicKey33B64u,`ecdsa.signer.thresholdPublicKey33B64u`),`ecdsa.signer.thresholdPublicKey33B64u`),p(e.evmAddress,`ecdsa.signer.evmAddress`)])}function L(e){return h([p(e.kind,`materialActivation.kind`),p(e.activationId,`materialActivation.activationId`),p(e.capability,`materialActivation.capability`),p(e.materialOwner,`materialActivation.materialOwner`),p(e.keyBinding,`materialActivation.keyBinding`),p(e.lifecycleBinding,`materialActivation.lifecycleBinding`),p(e.signingWorker,`materialActivation.signingWorker`)])}function R(e){return h([p(e.kind,`principal.kind`),p(e.deviceId,`principal.deviceId`)])}function z(e){switch(e.kind){case`wallet_registration`:return p(e.kind,`provenance.kind`);case`device_link`:return h([p(e.kind,`provenance.kind`),p(e.enrollmentId,`provenance.enrollmentId`),p(e.sourceAuthorityId,`provenance.sourceAuthorityId`),p(e.linkSessionId,`provenance.linkSessionId`)]);case`wallet_recovery`:return h([p(e.kind,`provenance.kind`),p(e.recoveryOperationId,`provenance.recoveryOperationId`),p(e.continuityAuthorityId,`provenance.continuityAuthorityId`)])}return Be(e,`wallet authority provenance`)}function B(e){let t=[ae(e.length,`permissions`)];for(let n of e)t.push(m(p(n,`permissions.item`),`permissions.item`));return h(t)}function V(e,t,n){let r=s(e,n);return H(r,t,n),r}function H(e,t,n){let r=new Set(t),i=Object.keys(e);if(i.length!==t.length)throw Error(`${n} contains unexpected fields`);for(let e of i)if(!r.has(e))throw Error(`${n}.${e} is not allowed`);for(let r of t)if(!Object.prototype.hasOwnProperty.call(e,r))throw Error(`${n}.${r} is required`)}function Me(e,t){if(!Array.isArray(e))throw Error(`${t} must be an array`);if(e.length===1&&e[0]===`ed25519`)return[`ed25519`];if(e.length===1&&e[0]===`ecdsa_secp256k1`)return[`ecdsa_secp256k1`];if(e.length===2&&e[0]===`ed25519`&&e[1]===`ecdsa_secp256k1`)return[`ed25519`,`ecdsa_secp256k1`];throw Error(`${t} must use canonical family order`)}function Ne(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function U(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ed25519`}function Pe(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ecdsa_secp256k1`}function Fe(e){return e.keyFamilies.length===2}function Ie(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ed25519`}function Le(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ecdsa_secp256k1`}function Re(e){return e.keyFamilies.length===2}function ze(e){if(Ie(e))return{keyFamilies:[`ed25519`],ed25519:X(r(e.ed25519),`materialActivations.ed25519`)};if(Le(e))return{keyFamilies:[`ecdsa_secp256k1`],ecdsa:X(r(e.ecdsa),`materialActivations.ecdsa`)};if(Re(e))return{keyFamilies:[`ed25519`,`ecdsa_secp256k1`],ed25519:X(r(e.ed25519),`materialActivations.ed25519`),ecdsa:X(r(e.ecdsa),`materialActivations.ecdsa`)};throw Error(`wallet signer activation materials are unsupported`)}function W(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ed25519`}function G(e){return e.keyFamilies.length===1&&e.keyFamilies[0]===`ecdsa_secp256k1`}function K(e){return e.keyFamilies.length===2}function q(e,t){try{return f(e)}catch(e){throw Error(`${t} ${Q(e,`is invalid`)}`)}}function J(e,t){if(typeof e!=`number`||!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`);return e}function Y(e,t){if(!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`)}function X(e,t){if(e.ok)return e.value;throw Error(`${t} ${e.error.message}`)}function Z(e){return{ok:!1,error:{code:`invalid`,message:e}}}function Q(e,t){return e instanceof Error?e.message:t}function Be(e,t){throw Error(`${t} branch is unsupported: ${String(e)}`)}async function Ve(e,t,n){let r=await w(t),i={kind:`wallet_authority_v1`,authorityId:e.authorityId,walletId:e.walletId,principal:e.principal,provenance:e.provenance,permissions:e.permissions,signerActivations:t,signerActivationSetDigestB64u:r,authorityDigestB64u:e.authorityDigestB64u,revocationEpoch:e.revocationEpoch,createdAtMs:e.createdAtMs,updatedAtMs:Math.max(e.updatedAtMs,n),state:`active`,activatedAtMs:e.activatedAtMs};return xe({...i,authorityDigestB64u:await O(i)})}async function He(e){if(e.ed25519.signer.walletId!==e.authority.walletId)throw Error(`NEAR signer belongs to a different wallet authority`);let t=e.authority.signerActivations.ecdsa,n=e.ed25519.signer,r=C({manifest:g([n,t.signer]),materialActivations:{keyFamilies:[`ed25519`,`ecdsa_secp256k1`],ed25519:e.ed25519.materialActivation,ecdsa:t.materialActivation}});if(!v(r))throw Error(`Deferred Ed25519 activation did not produce a combined signer activation set`);return Ve(e.authority,r,e.now)}function $(e,t){return e.authorityId===t.authorityId&&e.walletId===t.walletId&&e.revocationEpoch===t.revocationEpoch&&e.createdAtMs===t.createdAtMs&&e.activatedAtMs===t.activatedAtMs&&d(R(e.principal))===d(R(t.principal))&&d(z(e.provenance))===d(z(t.provenance))&&d(B(e.permissions))===d(B(t.permissions))}function Ue(e,t){return b(e)&&v(t.signerActivations)&&$(e,t)&&d(F(e.signerActivations.ed25519))===d(F(t.signerActivations.ed25519))}function We(e,t){return y(e)&&v(t.signerActivations)&&e.provenance.kind===`wallet_registration`&&$(e,t)&&d(I(e.signerActivations.ecdsa))===d(I(t.signerActivations.ecdsa))}export{y as a,v as c,Ce as d,_e as f,_ as g,k as h,He as i,Ue as l,Te as m,w as n,b as o,be as p,ve as r,ge as s,O as t,We as u};
|