@ledgerhq/revault-api 1.84.0 → 1.86.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/lib/{app-lib-Dp0IWsmF.d.mts → app-lib-CdmEGeOS.d.mts} +8211 -10292
- package/lib/{internal → entrypoints/internal-api}/app-lib.d.mts +1528 -1488
- package/lib/fakes.d.mts +1 -1
- package/lib/index.d.mts +2 -2
- package/lib/index.mjs +73 -55
- package/lib/index.mjs.map +1 -1
- package/package.json +4 -4
- /package/lib/{internal → entrypoints/internal-api}/app-lib.mjs +0 -0
package/lib/fakes.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { $ as RequestDataOf, Er as TransactionDataOf, Mo as MessageType, g as UserResponse, l as WhitelistResponse, mo as AccountType, nt as VaultRequestCreateInput, rt as VaultRequestResponse, ur as WebhookResponse, wn as GroupResponse, xr as AccountStakingFields, zn as AccountResponse } from "./app-lib-CdmEGeOS.mjs";
|
|
2
2
|
//#region src/__fakes__/trpc/inputs.d.ts
|
|
3
3
|
type RequestInputDataOf<T extends VaultRequestCreateInput["request"]["type"]> = Extract<VaultRequestCreateInput["request"], {
|
|
4
4
|
type: T;
|
package/lib/index.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as
|
|
2
|
-
export { type AccountAllowedActionsResponse, type AccountLiveDataResponse, type AccountNetworkInfoFields, type AccountResponse, type AccountSortBy, type AccountStakingFields, type AccountType, type ActivationStatus, type AdminPermission, type AdminResponse, type AllAssetsResponse, type AllowedAction, type AllowedActionsResponse, type AllowedResourcesResponse, type ApiChallenge, type AppRouter, type ApproveVaultRequestInput, type AssetResponse, type AuditLogResponse, type AuditLogSortBy, type AuditLogType, type AuthResponse, type BITCOIN_SPEC, type BitcoinLikeBalance, type CANTON_SPEC, type CARDANO_SPEC, type CantonTransferProposal, type Challenge, type ChallengeResponse, type ChallengeType, type ClaimedRole, type CreateTradelinkOrgEntityInput as CreateTradelinkExchangeInput, type CreateWebhookPayload, type CurrencyResponse, type CursorPaginated, type DEFAULT_PAGE_SIZE, type DeleteTradelinkExchangeInput, type DeleteWebhookResponse, type DeviceClaim, type ETHEREUM_SPEC, type EnsureNameAvailableInput, type EnsureNameAvailableOutput, type EntityResponse, type EntitySortBy, type EstimatedFees, type EthereumLikeEip1559FeeStrategy, type FreshReceiveAddress, type GENERIC_SPEC, type GetObjectsInfoResponse, type GroupResponse, type GroupSortBy, type HEDERA_SPEC, HSM_COMPARATORS, HSM_COMPARE_REASONS, HSM_OBJECT_TYPES, type HsmCertificate, type HsmComparator, type HsmCompareAnomaly, type HsmCompareDetail, type HsmCompareReason, type HsmHostingMode, type HsmObjectType, type HsmWorkspaceComparison, type IndexedReceiveAddressInput, type IndexedReceiveAddressSelection, type IndexedSelectionCapability, type LegalContentBlock, type LegalInline, type LegalInlineContent, type MaintenanceMode, type MessageType, type NetworkFamily, type ObjectsContentResponse, type ObjectsVersionResponse, type OidcConfig, type OnboardedUserRole, type OnboardingFullState as OnboardingFullStateResponse, type OnboardingOpts, type OnboardingSeedChallenge, type OnboardingSeedFragment, type OnboardingStep, type OutgoingTransactionStatus, type POLKADOT_SPEC, type PORTFOLIO_NAME_MAX_LENGTH, type PageQuery, type Paginated, type PledgeResponse, type PolicyResponse, type PolicySortBy, type PortfolioAdminResponse, type PortfolioAppliedState, type PortfolioCreateInput, type PortfolioCurrentUserAccessResponse, type PortfolioHistoryAction, type PortfolioHistoryEntryResponse, type PortfolioSortBy, type PortfolioStatusFilter, type PortfolioSummary, type PortfolioUpdateInput, type PortfoliosByAccountIdsResponse, type PrivacyNoticeResponse, type PrivacyNoticeSection, type PsdAuthChallengeData as PsdAuthChallengeResponse, type PsdChallenge, type PsdModel, type PsdPairingData, type PsdPairingInputData, type PsdSignature, type PubKey, type RIPPLE_SPEC, type ReceiveAddressSelection, type RefreshPskData, type RefreshPskInputData, type ReportDownloadUrlResponse, type ReportInput, type ReportResponse, type ReportStatus, type RequestDataOf, type RequestReview, type RequestReviewStatus, type RequestSortBy, type RequestState, type RequestType, type ResourceType, type RevaultMode, type ReviewConfigType, type ReviewStepWithUsers, type RiskLevel, type RootWorkspaceRuleResponse, type SOLANA_SPEC, type STELLAR_SPEC, type SUI_SPEC, type SendOnlyTransactionData, type SoftChallenge, type SortOrder, type StakingDataOf, type StakingProvisioning, type SubProcessorRow, type SubProcessorsResponse, type TEZOS_SPEC, type TRON_SPEC, type TokenResponse, type TradelinkCustodianResponse, type TradelinkEntityResponse, type TradelinkNetworkBlueprintResponse, type TradelinkNetworkResponse, type TradelinkOrgEntityResponse, type TradelinkSettlementWithAccountAndExchangeInfoResponse, type TransactionData, type TransactionDataOf, type TransactionResponse, type TransactionType, type TransactionTypeOf, type TransactionWithMetaResponse, type UpdateWebhookPayload, type UserDeviceType, type UserRegistrationChallenge, type UserRegistrationChallengeResponse, type UserRegistrationCreateInput, type UserRegistrationDeviceData, type UserRegistrationResponse, type UserResponse, type UserRole, type UserSortBy, type Validator, type VaultRequestCreateInput, type VaultRequestResponse, type VaultRequestResponseBase, type VersionedObjectInfo, type WebVaultRequestResponse, type WebhookDetailResponse, type WebhookResponse, type WhitelistAddressResponse, type WhitelistAddressSortBy, type WhitelistResponse, type WhitelistSortBy, type WhitelistType, type WorkspaceResponse, type WorkspaceRuleResponse, type WorkspaceRulesResponse, type
|
|
1
|
+
import { $ as RequestDataOf, $i as zOnboardingFullState, $n as CurrencyResponse, $r as ETHEREUM_SPEC, $t as zPortfolioAppliedState, A as zTradelinkEntityResponse, Aa as zStakingValidatorSortBy, Ai as PsdSignature, An as WorkspaceRulesResponse, Ao as HsmHostingMode, Ar as convertTxToGovernableIntent, At as PortfolioAdminResponse, B as TradelinkOrgEntityResponse, Ba as paginate, Bi as zPubKey, Bn as AccountSortBy, Bo as RequestReviewStatus, Br as zTransactionType, Bt as zPortfolioCreateInput, C as zUserRegistrationCreateInput, Ca as zIndexedReceiveAddressSelection, Ci as ObjectsVersionResponse, Cn as zSubProcessorsResponse, Cr as SendOnlyTransactionData, Ct as ReportDownloadUrlResponse, D as TradelinkNetworkResponse, Da as zStakeState, Di as PsdChallenge, Dn as zGroupSortBy, Dr as TransactionResponse, Dt as zReportInput, E as TradelinkEntityResponse, Ea as zStakeSortBy, Ei as HsmCertificate, En as zGroupResponse, Er as TransactionDataOf, Et as zReportDownloadUrlResponse, Fa as Paginated, Fi as UserRegistrationChallengeResponse, Fn as EntitySortBy, Fo as OutgoingTransactionStatus, Fr as zEstimatedFees, Ft as PortfolioStatusFilter, G as zTradelinkNetworkBlueprintResponse, Ga as zPageQuery, Gi as zUserRegistrationDeviceData, Gn as zAccountSortBy, Go as ReviewConfigType, Gr as SOLANA_SPEC, Gt as zPortfolioStatusFilter, H as zCreateTradelinkOrgEntityInput, Ha as stableOrdering, Hi as zRefreshPskInputData, Hn as zAccountAllowedActionsResponse, Ho as RequestType, Hr as TEZOS_SPEC, Ht as zPortfolioHistoryEntryResponse, I as CreateTradelinkOrgEntityInput, Ia as SortOrder, Ii as UserRegistrationDeviceData, In as zEntityResponse, Io as PortfolioHistoryAction, Ir as zNetworkAssetFields, It as PortfolioSummary, Ji as OnboardingOpts, Jn as zCantonTransferProposalResponse, Jo as UserRole, Jr as zRippleDestinationTag, Jt as zPortfoliosByAccountIdsInput, K as zTradelinkOrgEntityResponse, Ka as zPaginated, Ki as DeviceClaim, Kn as zBitcoinUtxoResponse, Ko as UserDeviceType, Kr as isSplTokenTransaction, Kt as zPortfolioSummary, L as DeleteTradelinkExchangeInput, La as emptyPage, Li as zPsdPairingData, Ln as zEntitySortBy, Lo as PsdModel, Lr as zSendOnlyTransactionData, Lt as PortfolioUpdateInput, M as zTradelinkSettlementWithAccountAndExchangeInfoResponse, Ma as DEFAULT_PAGE_SIZE, Mi as RefreshPskData, Mn as zWorkspaceRuleResponse, Mo as MessageType, Mr as zAccountLiveData, Mt as PortfolioCurrentUserAccessResponse, N as AppRouter, Na as MAX_PAGE_SIZE, Ni as RefreshPskInputData, Nn as zWorkspaceRulesResponse, No as OnboardedUserRole, Nr as zAccountNetworkInfoFields, Nt as PortfolioHistoryEntryResponse, O as TradelinkSettlementWithAccountAndExchangeInfoResponse, Oa as zStakesPage, Oi as PsdPairingData, On as RootWorkspaceRuleResponse, Or as TransactionType, Ot as zReportResponse, Pa as PageQuery, Pi as UserRegistrationChallenge, Pn as EntityResponse, Po as OnboardingStep, Pr as zAccountStakingFields, Pt as PortfolioSortBy, Q as EnsureNameAvailableInput, Qi as zDeviceClaim, Qn as AssetResponse, Qr as GENERIC_SPEC, Qt as normalizePortfolioName, R as PledgeResponse, Ra as fetchAllCursorPages, Ri as zPsdPairingInputData, Rn as AccountAllowedActionsResponse, Ro as ReportStatus, Rr as zTransactionData, Rt as PortfoliosByAccountIdsResponse, S as UserRegistrationResponse, Sa as zIndexedReceiveAddressInput, Si as ObjectsContentResponse, Sn as zSubProcessorRow, Sr as EstimatedFees, St as zEnsureNameAvailableOutput, T as TradelinkCustodianResponse, Ta as zStake, Ti as ApiChallenge, Tn as GroupSortBy, Tr as TransactionData, Tt as ReportResponse, U as zDeleteTradelinkOrgEntityInput, Ua as zCursorPaginated, Ui as zUserRegistrationChallenge, Un as zAccountCommonFields, Uo as ResourceType, Ur as SUI_SPEC, Ut as zPortfolioName, V as zCreateTradelinkNetworkBlueprintInput, Va as serializePage, Vi as zRefreshPskData, Vn as TransactionWithMetaResponse, Vo as RequestState, Vr as TRON_SPEC, Vt as zPortfolioCurrentUserAccessResponse, W as zPledgeResponse, Wa as zCursorQuery, Wi as zUserRegistrationChallengeResponse, Wn as zAccountResponse, Wo as RevaultMode, Wr as STELLAR_SPEC, Wt as zPortfolioSortBy, X as ApproveVaultRequestInput, Xa as zTransactionScanSummary, Xi as OnboardingSeedFragment, Xn as zSignedMessageResponse, Xr as HEDERA_SPEC, Xt as PORTFOLIO_NAME_MAX_LENGTH, Y as isTransactionCheckPreviewSupportedType, Yi as OnboardingSeedChallenge, Yn as zTransactionWithMetaResponse, Yr as POLKADOT_SPEC, Yt as zPortfoliosByAccountIdsResponse, Z as ChallengeResponse, Za as RiskLevel, Zi as WrappingKeyResponse, Zn as AllAssetsResponse, Zo as WhitelistType, Zr as isErc20Address, Zt as PortfolioAppliedState, _ as UserSortBy, _a as ReceiveAddressSelection, _n as zLegalInline, _o as AdminPermission, _r as zWebhookDeliveryResponse, _t as ReviewStepWithUsers, a as WorkspaceResponse, aa as HsmComparator, ai as BitcoinLikeBalance, an as AllowedResourcesResponse, ao as OidcConfig, ar as zTokenResponse, at as WebVaultRequestResponse, b as zUserSortBy, ba as zBalance, bi as HSM_OBJECT_TYPES, bn as zPrivacyNoticeSection, bo as ChallengeType, br as AccountNetworkInfoFields, bt as EnsureNameAvailableOutput, c as WhitelistAddressSortBy, ca as HsmCompareReason, ci as Validator, cn as zOpenApiResourceType, cr as UpdateWebhookPayload, ct as zChallengeResponse, d as zWhitelistAddressResponse, di as NetworkFamily, dn as LegalInlineContent, do as zApiUserCredentialsResponse, dr as zCreateWebhookPayload, dt as zRequestSortBy, ea as zOnboardingId, ei as CARDANO_SPEC, en as PolicyResponse, eo as LesWalletRegistrationResult, er as TokenResponse, et as RequestReview, f as zWhitelistAddressSortBy, fa as AccountLiveDataResponse, fi as zCommonLiveData, fn as PrivacyNoticeResponse, fo as zAuthResponse, fr as zCreateWebhookResponse, ft as zSignDigestsRequestInput, g as UserResponse, ga as IndexedSelectionCapability, gn as zLegalContentBlock, gr as zUpdateWebhookPayload, gt as zWebVaultRequestResponse, h as AdminResponse, ha as IndexedReceiveAddressSelection, hn as SubProcessorsResponse, ho as ActivationStatus, hr as zRotateWebhookSecretResponse, ht as zVaultRequestResponse, i as zAuditLogSortBy, ia as HSM_COMPARE_REASONS, ii as BITCOIN_SPEC, in as AllowedActionsResponse, io as zPsdAuthChallengeData, ir as zCurrencyResponse, it as VaultRequestResponseBase, j as zTradelinkNetworkResponse, ja as CursorPaginated, ji as PubKey, jn as zRootWorkspaceRuleResponse, jo as MaintenanceMode, jr as getTxHsmProps, jt as PortfolioCreateInput, k as zTradelinkCustodianResponse, ka as zStakingValidator, ki as PsdPairingInputData, kn as WorkspaceRuleResponse, kr as TransactionTypeOf, kt as zVisibleReportStatus, l as WhitelistResponse, la as HsmWorkspaceComparison, li as zEthereumLikeEip1559FeeStrategy, ln as LegalContentBlock, lr as WebhookDetailResponse, lt as zCreateClassicAccountWithPolicyIdInput, m as zWhitelistSortBy, ma as IndexedReceiveAddressInput, mi as zGovernableAction, mn as SubProcessorRow, mo as AccountType, mr as zReplayFailedResponse, mt as zVaultRequestCreateInput, n as AuditLogSortBy, na as zOnboardingSeedFragment, ni as CantonTransferProposal, nn as zPolicyResponse, nr as zAssetCapabilitiesResponse, nt as VaultRequestCreateInput, o as zWorkspaceResponse, oa as HsmCompareAnomaly, oi as EthereumLikeEip1559FeeStrategy, on as zAllowedActionsResponse, oo as zExchangeCredentialsResponse, or as CreateWebhookPayload, ot as genTransactionSchemas, p as zWhitelistResponse, pa as FreshReceiveAddress, pi as zTransactionStatus, pn as PrivacyNoticeSection, pr as zDeleteWebhookResponse, pt as zSignMessageRequestInput, q as zTradelinkWhitelist, qa as zSortOrder, qi as OnboardingFullState, qn as zCantonPreApprovalStateResponse, qr as RIPPLE_SPEC, qt as zPortfolioUpdateInput, r as zAuditLogResponse, ra as HSM_COMPARATORS, ri as zCantonTransferProposal, rn as zPolicySortBy, ro as PsdAuthChallengeData, rr as zAssetResponse, rt as VaultRequestResponse, s as WhitelistAddressResponse, sa as HsmCompareDetail, si as StakingProvisioning, sn as zAllowedResourcesResponse, so as zOidcConfig, sr as DeleteWebhookResponse, st as zApproveVaultRequestInput, t as AuditLogResponse, ta as zOnboardingOpts, ti as CANTON_SPEC, tn as PolicySortBy, tr as zAllAssetsResponse, tt as RequestSortBy, u as WhitelistSortBy, ui as zStakingProvisioning, un as LegalInline, uo as AuthResponse, ur as WebhookResponse, ut as zEnsureNameAvailableInput, v as zAdminResponse, va as zAccountLiveDataResponse, vn as zLegalInlineContent, vo as AllowedAction, vr as zWebhookDetailResponse, vt as zReviewStepsArray, w as zUserRegistrationResponse, wa as zIndexedSelectionCapability, wi as VersionedObjectInfo, wn as GroupResponse, wr as StakingDataOf, wt as ReportInput, x as UserRegistrationCreateInput, xa as zFreshReceiveAddress, xi as HsmObjectType, xn as zPrivacyNoticeSectionId, xo as ClaimedRole, xr as AccountStakingFields, xt as SoftChallenge, y as zUserResponse, ya as zAddressIndex, yi as GetObjectsInfoResponse, yn as zPrivacyNoticeResponse, yo as AuditLogType, yr as zWebhookResponse, yt as Challenge, z as TradelinkNetworkBlueprintResponse, za as fetchAllPages, zi as zPsdSignature, zn as AccountResponse, zr as zTransactionResponse, zt as zPortfolioAdminResponse } from "./app-lib-CdmEGeOS.mjs";
|
|
2
|
+
export { type AccountAllowedActionsResponse, type AccountLiveDataResponse, type AccountNetworkInfoFields, type AccountResponse, type AccountSortBy, type AccountStakingFields, type AccountType, type ActivationStatus, type AdminPermission, type AdminResponse, type AllAssetsResponse, type AllowedAction, type AllowedActionsResponse, type AllowedResourcesResponse, type ApiChallenge, type AppRouter, type ApproveVaultRequestInput, type AssetResponse, type AuditLogResponse, type AuditLogSortBy, type AuditLogType, type AuthResponse, type BITCOIN_SPEC, type BitcoinLikeBalance, type CANTON_SPEC, type CARDANO_SPEC, type CantonTransferProposal, type Challenge, type ChallengeResponse, type ChallengeType, type ClaimedRole, type CreateTradelinkOrgEntityInput as CreateTradelinkExchangeInput, type CreateWebhookPayload, type CurrencyResponse, type CursorPaginated, type DEFAULT_PAGE_SIZE, type DeleteTradelinkExchangeInput, type DeleteWebhookResponse, type DeviceClaim, type ETHEREUM_SPEC, type EnsureNameAvailableInput, type EnsureNameAvailableOutput, type EntityResponse, type EntitySortBy, type EstimatedFees, type EthereumLikeEip1559FeeStrategy, type FreshReceiveAddress, type GENERIC_SPEC, type GetObjectsInfoResponse, type GroupResponse, type GroupSortBy, type HEDERA_SPEC, HSM_COMPARATORS, HSM_COMPARE_REASONS, HSM_OBJECT_TYPES, type HsmCertificate, type HsmComparator, type HsmCompareAnomaly, type HsmCompareDetail, type HsmCompareReason, type HsmHostingMode, type HsmObjectType, type HsmWorkspaceComparison, type IndexedReceiveAddressInput, type IndexedReceiveAddressSelection, type IndexedSelectionCapability, type LegalContentBlock, type LegalInline, type LegalInlineContent, type LesWalletRegistrationResult, type MAX_PAGE_SIZE, type MaintenanceMode, type MessageType, type NetworkFamily, type ObjectsContentResponse, type ObjectsVersionResponse, type OidcConfig, type OnboardedUserRole, type OnboardingFullState as OnboardingFullStateResponse, type OnboardingOpts, type OnboardingSeedChallenge, type OnboardingSeedFragment, type OnboardingStep, type OutgoingTransactionStatus, type POLKADOT_SPEC, type PORTFOLIO_NAME_MAX_LENGTH, type PageQuery, type Paginated, type PledgeResponse, type PolicyResponse, type PolicySortBy, type PortfolioAdminResponse, type PortfolioAppliedState, type PortfolioCreateInput, type PortfolioCurrentUserAccessResponse, type PortfolioHistoryAction, type PortfolioHistoryEntryResponse, type PortfolioSortBy, type PortfolioStatusFilter, type PortfolioSummary, type PortfolioUpdateInput, type PortfoliosByAccountIdsResponse, type PrivacyNoticeResponse, type PrivacyNoticeSection, type PsdAuthChallengeData as PsdAuthChallengeResponse, type PsdChallenge, type PsdModel, type PsdPairingData, type PsdPairingInputData, type PsdSignature, type PubKey, type RIPPLE_SPEC, type ReceiveAddressSelection, type RefreshPskData, type RefreshPskInputData, type ReportDownloadUrlResponse, type ReportInput, type ReportResponse, type ReportStatus, type RequestDataOf, type RequestReview, type RequestReviewStatus, type RequestSortBy, type RequestState, type RequestType, type ResourceType, type RevaultMode, type ReviewConfigType, type ReviewStepWithUsers, type RiskLevel, type RootWorkspaceRuleResponse, type SOLANA_SPEC, type STELLAR_SPEC, type SUI_SPEC, type SendOnlyTransactionData, type SoftChallenge, type SortOrder, type StakingDataOf, type StakingProvisioning, type SubProcessorRow, type SubProcessorsResponse, type TEZOS_SPEC, type TRON_SPEC, type TokenResponse, type TradelinkCustodianResponse, type TradelinkEntityResponse, type TradelinkNetworkBlueprintResponse, type TradelinkNetworkResponse, type TradelinkOrgEntityResponse, type TradelinkSettlementWithAccountAndExchangeInfoResponse, type TransactionData, type TransactionDataOf, type TransactionResponse, type TransactionType, type TransactionTypeOf, type TransactionWithMetaResponse, type UpdateWebhookPayload, type UserDeviceType, type UserRegistrationChallenge, type UserRegistrationChallengeResponse, type UserRegistrationCreateInput, type UserRegistrationDeviceData, type UserRegistrationResponse, type UserResponse, type UserRole, type UserSortBy, type Validator, type VaultRequestCreateInput, type VaultRequestResponse, type VaultRequestResponseBase, type VersionedObjectInfo, type WebVaultRequestResponse, type WebhookDetailResponse, type WebhookResponse, type WhitelistAddressResponse, type WhitelistAddressSortBy, type WhitelistResponse, type WhitelistSortBy, type WhitelistType, type WorkspaceResponse, type WorkspaceRuleResponse, type WorkspaceRulesResponse, type WrappingKeyResponse, type convertTxToGovernableIntent, type emptyPage, type fetchAllCursorPages, type fetchAllPages, type genTransactionSchemas, type getTxHsmProps, type isErc20Address, type isSplTokenTransaction, isTransactionCheckPreviewSupportedType, type normalizePortfolioName, type paginate, type serializePage, type stableOrdering, type zAccountAllowedActionsResponse, type zAccountCommonFields, type zAccountLiveData, type zAccountLiveDataResponse, type zAccountNetworkInfoFields, type zAccountResponse, type zAccountSortBy, type zAccountStakingFields, type zAddressIndex, type zAdminResponse, type zAllAssetsResponse, type zAllowedActionsResponse, type zAllowedResourcesResponse, type zApiUserCredentialsResponse, type zApproveVaultRequestInput, type zAssetCapabilitiesResponse, type zAssetResponse, type zAuditLogResponse, type zAuditLogSortBy, type zAuthResponse, type zBalance, type zBitcoinUtxoResponse, type zCantonPreApprovalStateResponse, type zCantonTransferProposal, type zCantonTransferProposalResponse, type zChallengeResponse, type zCommonLiveData, type zCreateClassicAccountWithPolicyIdInput, type zCreateTradelinkNetworkBlueprintInput, type zCreateTradelinkOrgEntityInput, type zCreateWebhookPayload, type zCreateWebhookResponse, type zCurrencyResponse, type zCursorPaginated, type zCursorQuery, type zDeleteTradelinkOrgEntityInput, type zDeleteWebhookResponse, type zDeviceClaim, type zEnsureNameAvailableInput, type zEnsureNameAvailableOutput, type zEntityResponse, type zEntitySortBy, type zEstimatedFees as zEstimateFeesResponse, type zEstimatedFees, zEthereumLikeEip1559FeeStrategy, type zExchangeCredentialsResponse, type zFreshReceiveAddress, type zGovernableAction, type zGroupResponse, type zGroupSortBy, type zIndexedReceiveAddressInput, type zIndexedReceiveAddressSelection, type zIndexedSelectionCapability, type zLegalContentBlock, type zLegalInline, type zLegalInlineContent, type zNetworkAssetFields, type zOidcConfig, type zOnboardingFullState as zOnboardingFullStateResponse, type zOnboardingId, type zOnboardingOpts, type zOnboardingSeedFragment, type zOpenApiResourceType, type zPageQuery, type zPaginated, type zPledgeResponse, type zPolicyResponse, type zPolicySortBy, type zPortfolioAdminResponse, type zPortfolioAppliedState, type zPortfolioCreateInput, type zPortfolioCurrentUserAccessResponse, type zPortfolioHistoryEntryResponse, type zPortfolioName, type zPortfolioSortBy, type zPortfolioStatusFilter, type zPortfolioSummary, type zPortfolioUpdateInput, type zPortfoliosByAccountIdsInput, type zPortfoliosByAccountIdsResponse, type zPrivacyNoticeResponse, type zPrivacyNoticeSection, type zPrivacyNoticeSectionId, type zPsdAuthChallengeData as zPsdAuthChallengeResponse, type zPsdPairingData, type zPsdPairingInputData, type zPsdSignature, type zPubKey, type zRefreshPskData, type zRefreshPskInputData, type zReplayFailedResponse, type zReportDownloadUrlResponse, type zReportInput, type zReportResponse, type zRequestSortBy, type zReviewStepsArray, type zRippleDestinationTag, type zRootWorkspaceRuleResponse, type zRotateWebhookSecretResponse, type zSendOnlyTransactionData, type zSignDigestsRequestInput, type zSignMessageRequestInput, type zSignedMessageResponse, type zSortOrder, type zStake, type zStakeSortBy, type zStakeState, type zStakesPage, type zStakingProvisioning, type zStakingValidator, type zStakingValidatorSortBy, type zSubProcessorRow, type zSubProcessorsResponse, type zTokenResponse, type zTradelinkCustodianResponse, type zTradelinkEntityResponse, type zTradelinkNetworkBlueprintResponse, type zTradelinkNetworkResponse, type zTradelinkOrgEntityResponse, type zTradelinkSettlementWithAccountAndExchangeInfoResponse, type zTradelinkWhitelist, type zTransactionData, type zTransactionResponse, type zTransactionScanSummary, type zTransactionStatus, type zTransactionType, type zTransactionWithMetaResponse, type zUpdateWebhookPayload, type zUserRegistrationChallenge, type zUserRegistrationChallengeResponse, type zUserRegistrationCreateInput, type zUserRegistrationDeviceData, type zUserRegistrationResponse, type zUserResponse, type zUserSortBy, type zVaultRequestCreateInput, type zVaultRequestResponse, type zVisibleReportStatus, type zWebVaultRequestResponse, type zWebhookDeliveryResponse, type zWebhookDetailResponse, type zWebhookResponse, type zWhitelistAddressResponse, type zWhitelistAddressSortBy, type zWhitelistResponse, type zWhitelistSortBy, type zWorkspaceResponse, type zWorkspaceRuleResponse, type zWorkspaceRulesResponse };
|
package/lib/index.mjs
CHANGED
|
@@ -15,58 +15,6 @@ const HSM_COMPARE_REASONS = [
|
|
|
15
15
|
"no-partition-found",
|
|
16
16
|
"multiple-partitions-found"
|
|
17
17
|
];
|
|
18
|
-
//#endregion
|
|
19
|
-
//#region src/services/hsm/hsm-requests-types.ts
|
|
20
|
-
const HSM_OBJECT_TYPES = [
|
|
21
|
-
"Account",
|
|
22
|
-
"AdminGroup",
|
|
23
|
-
"AssetManager",
|
|
24
|
-
"Exchange",
|
|
25
|
-
"Group",
|
|
26
|
-
"Partition",
|
|
27
|
-
"PledgeState",
|
|
28
|
-
"Policy",
|
|
29
|
-
"AccountRuleSet",
|
|
30
|
-
"Tradelink",
|
|
31
|
-
"User",
|
|
32
|
-
"WalletAccountList",
|
|
33
|
-
"Whitelist"
|
|
34
|
-
];
|
|
35
|
-
z.object({
|
|
36
|
-
cid: z.coerce.string(),
|
|
37
|
-
total_accounts: z.number(),
|
|
38
|
-
accounts_report: z.record(z.string(), z.number()),
|
|
39
|
-
total_objects: z.number(),
|
|
40
|
-
objects_report: z.record(z.string(), z.number())
|
|
41
|
-
});
|
|
42
|
-
const zVersionedObjectInfo = z.object({
|
|
43
|
-
uid: z.string(),
|
|
44
|
-
object_type: z.string(),
|
|
45
|
-
index: z.number(),
|
|
46
|
-
hsm_object_type_id: z.number(),
|
|
47
|
-
anti_replay_value: z.number(),
|
|
48
|
-
expected_anti_replay_value: z.number(),
|
|
49
|
-
schema_version: z.number()
|
|
50
|
-
});
|
|
51
|
-
z.object({
|
|
52
|
-
cid: z.coerce.string(),
|
|
53
|
-
uid: z.string().nullable(),
|
|
54
|
-
objects_count: z.number(),
|
|
55
|
-
hsm_requests_count: z.number(),
|
|
56
|
-
status: z.string(),
|
|
57
|
-
valid_objects: z.array(zVersionedObjectInfo),
|
|
58
|
-
invalid_objects: z.array(zVersionedObjectInfo),
|
|
59
|
-
objects_missing_merkle_tree_id: z.array(z.string())
|
|
60
|
-
});
|
|
61
|
-
z.object({
|
|
62
|
-
cid: z.coerce.string(),
|
|
63
|
-
uid: z.string().nullable(),
|
|
64
|
-
objects_count: z.number(),
|
|
65
|
-
hsm_requests_count: z.number(),
|
|
66
|
-
status: z.string(),
|
|
67
|
-
object_contents: z.array(z.unknown()),
|
|
68
|
-
objects_missing_merkle_tree_id: z.array(z.string())
|
|
69
|
-
});
|
|
70
18
|
z$1.string().regex(/^[0-9a-fA-F]+$/);
|
|
71
19
|
const zIntString = z$1.string().nonempty().regex(/^(-?[1-9]\d*|0)$/);
|
|
72
20
|
const zUnsignedIntString = z$1.string().nonempty().regex(/^([1-9]\d*|0)$/);
|
|
@@ -86,7 +34,7 @@ z$1.codec(z$1.iso.datetime(), z$1.date(), {
|
|
|
86
34
|
encode: (date) => date.toISOString()
|
|
87
35
|
});
|
|
88
36
|
//#endregion
|
|
89
|
-
//#region src/networks/common.ts
|
|
37
|
+
//#region src/core/networks/common.ts
|
|
90
38
|
const NetworkFamily = {
|
|
91
39
|
BITCOIN_LIKE: "BITCOIN_LIKE",
|
|
92
40
|
CANTON_LIKE: "CANTON_LIKE",
|
|
@@ -163,11 +111,16 @@ z.object({
|
|
|
163
111
|
type: z.literal(NetworkFamily.ETHEREUM_LIKE).meta({ description: "Account type" }),
|
|
164
112
|
address: z.string().nullable().meta({ description: "Account address" })
|
|
165
113
|
}).meta({ description: "Ethereum-like" });
|
|
114
|
+
const zEthereumLikeConsolidationTarget = z.object({
|
|
115
|
+
id: z.string().nonempty().meta({ description: "Staking position ID" }),
|
|
116
|
+
staked: z.string().meta({ description: "Staked amount of that position" })
|
|
117
|
+
});
|
|
166
118
|
const zEthereumLikeStakingData = z.object({
|
|
167
119
|
totalStaking: z.string().meta({ description: "Total staked amount" }),
|
|
168
120
|
totalRewards: z.string().meta({ description: "Total of rewards" }),
|
|
169
121
|
availableRewards: z.string().meta({ description: "Available rewards" }).optional(),
|
|
170
|
-
networkApy: z.number().meta({ description: "Network APY" }).optional()
|
|
122
|
+
networkApy: z.number().meta({ description: "Network APY" }).optional(),
|
|
123
|
+
consolidationTargets: z.array(zEthereumLikeConsolidationTarget).max(2).optional().meta({ description: "The smallest positions a stake can be consolidated into, ascending. Only the smallest target can have room for a given source, so these are enough to decide any position's eligibility without listing the account. Two entries rather than one because a position is never its own target. Absent on accounts whose staking data does not come from position listing." })
|
|
171
124
|
}).nullable().meta({ description: "Ethereum-like staking data" });
|
|
172
125
|
const zEthereumLikeStakingFields = z.object({
|
|
173
126
|
type: z.literal(NetworkFamily.ETHEREUM_LIKE).meta({ description: "Account type" }),
|
|
@@ -381,6 +334,71 @@ z.discriminatedUnion("type", [
|
|
|
381
334
|
zCommonTransactionResponse.extend(zEthereumLikeStakeUpgradeResponseFields.shape).meta({ description: "Ethereum validator credential upgrade transaction" })
|
|
382
335
|
]).meta({ description: "Ethereum-like transaction" });
|
|
383
336
|
//#endregion
|
|
384
|
-
|
|
337
|
+
//#region src/services/hsm/hsm-requests-types.ts
|
|
338
|
+
const HSM_OBJECT_TYPES = [
|
|
339
|
+
"Account",
|
|
340
|
+
"AdminGroup",
|
|
341
|
+
"AssetManager",
|
|
342
|
+
"Exchange",
|
|
343
|
+
"Group",
|
|
344
|
+
"Partition",
|
|
345
|
+
"PledgeState",
|
|
346
|
+
"Policy",
|
|
347
|
+
"AccountRuleSet",
|
|
348
|
+
"Tradelink",
|
|
349
|
+
"User",
|
|
350
|
+
"WalletAccountList",
|
|
351
|
+
"Whitelist"
|
|
352
|
+
];
|
|
353
|
+
z.object({
|
|
354
|
+
cid: z.coerce.string(),
|
|
355
|
+
total_accounts: z.number(),
|
|
356
|
+
accounts_report: z.record(z.string(), z.number()),
|
|
357
|
+
total_objects: z.number(),
|
|
358
|
+
objects_report: z.record(z.string(), z.number())
|
|
359
|
+
});
|
|
360
|
+
const zVersionedObjectInfo = z.object({
|
|
361
|
+
uid: z.string(),
|
|
362
|
+
object_type: z.string(),
|
|
363
|
+
index: z.number(),
|
|
364
|
+
hsm_object_type_id: z.number(),
|
|
365
|
+
anti_replay_value: z.number(),
|
|
366
|
+
expected_anti_replay_value: z.number(),
|
|
367
|
+
schema_version: z.number()
|
|
368
|
+
});
|
|
369
|
+
z.object({
|
|
370
|
+
cid: z.coerce.string(),
|
|
371
|
+
uid: z.string().nullable(),
|
|
372
|
+
objects_count: z.number(),
|
|
373
|
+
hsm_requests_count: z.number(),
|
|
374
|
+
status: z.string(),
|
|
375
|
+
valid_objects: z.array(zVersionedObjectInfo),
|
|
376
|
+
invalid_objects: z.array(zVersionedObjectInfo),
|
|
377
|
+
objects_missing_merkle_tree_id: z.array(z.string())
|
|
378
|
+
});
|
|
379
|
+
z.object({
|
|
380
|
+
cid: z.coerce.string(),
|
|
381
|
+
uid: z.string().nullable(),
|
|
382
|
+
objects_count: z.number(),
|
|
383
|
+
hsm_requests_count: z.number(),
|
|
384
|
+
status: z.string(),
|
|
385
|
+
object_contents: z.array(z.unknown()),
|
|
386
|
+
objects_missing_merkle_tree_id: z.array(z.string())
|
|
387
|
+
});
|
|
388
|
+
//#endregion
|
|
389
|
+
//#region src/entrypoints/api/requests/transaction-check-preview/public.ts
|
|
390
|
+
const TRANSACTION_CHECK_PREVIEW_SUPPORTED_TYPES = [
|
|
391
|
+
"ETHEREUM_LIKE_SEND",
|
|
392
|
+
"ETHEREUM_LIKE_EXECUTE_CONTRACT",
|
|
393
|
+
"ETHEREUM_LIKE_STAKE_DEPOSIT",
|
|
394
|
+
"ETHEREUM_LIKE_STAKE_TOP_UP",
|
|
395
|
+
"ETHEREUM_LIKE_STAKE_WITHDRAW",
|
|
396
|
+
"ETHEREUM_LIKE_STAKE_CONSOLIDATE",
|
|
397
|
+
"ETHEREUM_LIKE_STAKE_UPGRADE"
|
|
398
|
+
];
|
|
399
|
+
/** Whether Transaction Check can preview this exact transaction type. */
|
|
400
|
+
const isTransactionCheckPreviewSupportedType = (type) => TRANSACTION_CHECK_PREVIEW_SUPPORTED_TYPES.some((supportedType) => supportedType === type);
|
|
401
|
+
//#endregion
|
|
402
|
+
export { HSM_COMPARATORS, HSM_COMPARE_REASONS, HSM_OBJECT_TYPES, isTransactionCheckPreviewSupportedType, zEthereumLikeEip1559FeeStrategy };
|
|
385
403
|
|
|
386
404
|
//# sourceMappingURL=index.mjs.map
|
package/lib/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":["z"],"sources":["../src/core/hsm-comparison.ts","../src/services/hsm/hsm-requests-types.ts","../src/zod-utils.ts","../src/networks/common.ts","../src/networks/ethereum/schemas.ts"],"sourcesContent":["/** Comparators offered by the backoffice \"Compare with HSM\" diagnostic, one run at a time. */\nexport const HSM_COMPARATORS = [\"whitelists\", \"workspace-name\"] as const;\n\nexport type HsmComparator = (typeof HSM_COMPARATORS)[number];\n\n/**\n * Why a compared object diverges. Reasons are comparator-specific, but they share a single enum so\n * the backoffice can count and group anomalies without knowing which comparator produced them.\n */\nexport const HSM_COMPARE_REASONS = [\n \"has-diffs\",\n \"missing-in-hsm\",\n \"missing-in-revault\",\n \"fetch-failed\",\n \"name-mismatch\",\n \"no-partition-found\",\n \"multiple-partitions-found\",\n] as const;\n\nexport type HsmCompareReason = (typeof HSM_COMPARE_REASONS)[number];\n\n/**\n * One line of evidence under an anomaly. Values are stringified here rather than formatted, so the\n * backoffice owns how a divergence reads on screen.\n */\nexport type HsmCompareDetail =\n | {\n kind: \"field-diff\";\n /** Entry the field belongs to, or null when the field is on the object itself. */\n scope: string | null;\n field: string;\n revault: string;\n hsm: string;\n }\n | { kind: \"only-in-revault\"; entry: string }\n | { kind: \"only-in-hsm\"; entry: string };\n\nexport type HsmCompareAnomaly = {\n reason: HsmCompareReason;\n /** HSM object id, null for anomalies that are not about a single identified object. */\n hsmId: string | null;\n /** Revault-side name, null when only the HSM knows the object. */\n name: string | null;\n details: HsmCompareDetail[];\n};\n\nexport type HsmWorkspaceComparison = {\n workspaceName: string;\n /** Objects actually compared on both sides. Zero means there was nothing to compare. */\n checked: number;\n anomalies: HsmCompareAnomaly[];\n};\n","import z from \"zod\";\n\nexport const HSM_OBJECT_TYPES = [\n \"Account\",\n \"AdminGroup\",\n \"AssetManager\",\n \"Exchange\",\n \"Group\",\n \"Partition\",\n \"PledgeState\",\n \"Policy\",\n \"AccountRuleSet\",\n \"Tradelink\",\n \"User\",\n \"WalletAccountList\",\n \"Whitelist\",\n] as const;\n\nexport type HsmObjectType = (typeof HSM_OBJECT_TYPES)[number];\n\nexport const zObjectsVersionResponse = z.object({\n cid: z.coerce.string(),\n total_accounts: z.number(),\n accounts_report: z.record(z.string(), z.number()),\n total_objects: z.number(),\n objects_report: z.record(z.string(), z.number()),\n});\n\nexport type ObjectsVersionResponse = z.infer<typeof zObjectsVersionResponse>;\n\nconst zVersionedObjectInfo = z.object({\n uid: z.string(),\n object_type: z.string(),\n index: z.number(),\n hsm_object_type_id: z.number(),\n anti_replay_value: z.number(),\n expected_anti_replay_value: z.number(),\n schema_version: z.number(),\n});\n\nexport type VersionedObjectInfo = z.infer<typeof zVersionedObjectInfo>;\n\nexport const zGetObjectsInfoResponse = z.object({\n cid: z.coerce.string(),\n uid: z.string().nullable(),\n objects_count: z.number(),\n hsm_requests_count: z.number(),\n status: z.string(),\n valid_objects: z.array(zVersionedObjectInfo),\n invalid_objects: z.array(zVersionedObjectInfo),\n objects_missing_merkle_tree_id: z.array(z.string()),\n});\n\nexport type GetObjectsInfoResponse = z.infer<typeof zGetObjectsInfoResponse>;\n\nexport const zObjectsContentResponse = z.object({\n cid: z.coerce.string(),\n uid: z.string().nullable(),\n objects_count: z.number(),\n hsm_requests_count: z.number(),\n status: z.string(),\n // Structure varies by object type; intentionally untyped for raw dump display.\n object_contents: z.array(z.unknown()),\n objects_missing_merkle_tree_id: z.array(z.string()),\n});\n\nexport type ObjectsContentResponse = z.infer<typeof zObjectsContentResponse>;\n","import { z } from \"zod\";\n\nexport const zHexString = z.string().regex(/^[0-9a-fA-F]+$/);\n\nexport const zIntString = z\n .string()\n .nonempty()\n .regex(/^(-?[1-9]\\d*|0)$/);\n\nexport const zUnsignedIntString = z\n .string()\n .nonempty()\n .regex(/^([1-9]\\d*|0)$/);\n\nexport const zCurrencyString = z\n .string()\n .nonempty()\n .max(40)\n .regex(/^\\w+$/)\n .meta({ description: \"Will be deprecated soon, use network instead. Currency\" });\n\nexport const zNetwork = z\n .string()\n .nonempty()\n .max(40)\n .regex(/^\\w+$/)\n .meta({ description: \"Network identifier\" });\n\nexport const zCurrency = z.object({\n network: zNetwork,\n contractAddress: z.string().nonempty().nullable().meta({ description: \"Token issuer\" }),\n tokenIdentifier: z.string().nonempty().nullable().meta({ description: \"Token identifier\" }),\n});\n\nexport const zObjectId = z\n .string()\n .regex(/^[\\w-]+$/) // UUID, GUID, NanoID, CUID... or just a slug\n .nonempty();\n\nexport type ObjectId = z.infer<typeof zObjectId>;\n\nexport const zHsmObjectId = z\n .string()\n .regex(/^[\\w-]+$/) // TODO: what is the exact format of an HSM ID?\n .nonempty();\n\nexport type HsmObjectId = z.infer<typeof zHsmObjectId>;\n\nexport const zHsmObjectName = z.string().min(1).max(45).meta({ description: \"HSM object name\" });\n\n/** DNS hostname or label conforming to RFC 1123. */\nexport const zDns1123Label = z\n .string()\n .min(1)\n .max(63)\n .regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/);\n\n/* v8 ignore next -- @preserve */\nexport const zDateCodec = z.codec(z.iso.datetime(), z.date(), {\n decode: (isoString) => new Date(isoString), // ISO string → Date\n encode: (date) => date.toISOString(), // Date → ISO string\n});\n","import z from \"zod\";\n\nimport type { AccountType } from \"@/generated/prisma/client\";\nimport { zCurrencyString, zUnsignedIntString } from \"@/zod-utils\";\n\n// #region ---------- Utils -----------------------------------------------------------------------\n\nexport type NetworkFamily = Exclude<AccountType, \"RAW_SIGNING\">;\n\nexport const NetworkFamily = {\n BITCOIN_LIKE: \"BITCOIN_LIKE\",\n CANTON_LIKE: \"CANTON_LIKE\",\n CARDANO_LIKE: \"CARDANO_LIKE\",\n ETHEREUM_LIKE: \"ETHEREUM_LIKE\",\n GENERIC_LIKE: \"GENERIC_LIKE\",\n HEDERA_LIKE: \"HEDERA_LIKE\",\n POLKADOT_LIKE: \"POLKADOT_LIKE\",\n RIPPLE_LIKE: \"RIPPLE_LIKE\",\n SOLANA_LIKE: \"SOLANA_LIKE\",\n STELLAR_LIKE: \"STELLAR_LIKE\",\n SUI_LIKE: \"SUI_LIKE\",\n TEZOS_LIKE: \"TEZOS_LIKE\",\n TRON_LIKE: \"TRON_LIKE\",\n} satisfies Record<NetworkFamily, NetworkFamily>;\n\n/**\n * Ensure that this is a hex string and transform it to lowercase with 0x prefix.\n * Not to be used for EIP-55 addresses or other attributes where letter casing is important!\n */\n/* v8 ignore next -- @preserve */\nexport const zHexDataString = z.codec(z.string().regex(/^(?:0x|0X)?[a-fA-F0-9]+$/), z.string(), {\n decode: (hex) => `0x${hex.toLowerCase().replace(\"0x\", \"\")}`,\n encode: (hex) => hex,\n});\n\n// #endregion\n\n// #region ---------- Live Data -------------------------------------------------------------------\n\nexport const zCommonLiveData = z.object({\n id: z.string().meta({ description: \"Account internal unique identifier\" }),\n balance: z\n .object({\n total: z.string().meta({ description: \"Total balance\" }),\n pending: z.string().meta({ description: \"Pending balance\" }),\n reserved: z\n .string()\n .meta({ description: \"Minimum balance the account must always keep (0 if none)\" }),\n })\n .meta({ description: \"Balance fields\" }),\n});\n\n// #endregion\n\n// #region ---------- Transaction Data ------------------------------------------------------------\n\n/**\n * Schema of `Request.data.transaction`\n */\nexport const zCommonTransactionData = z.object({\n amount: zUnsignedIntString.meta({ description: \"Transaction amount\" }),\n currency: zCurrencyString.meta({\n description: \"Will be deprecated soon, use Account.network. Transaction currency\",\n }), // TODO: to remove, use account.network instead\n maxFee: zUnsignedIntString.nullable().meta({ description: \"Transaction max fee\" }),\n recipient: z.string().nonempty().meta({ description: \"Transaction recipient\" }),\n});\n\nexport const zFeeStrategyCustom = z.object({\n type: z.enum([\"SLOW\", \"NORMAL\", \"FAST\", \"CUSTOM\"]),\n});\n\nexport const zFeeStrategy = z.object({\n type: z.enum([\"SLOW\", \"NORMAL\", \"FAST\"]),\n});\n\n// #endregion\n\n// #region ---------- Transaction Response --------------------------------------------------------\n\nexport const zTransactionStatus = z.enum([\"SUCCESSFUL\", \"FAILED\", \"PENDING\", \"UNKNOWN\"]);\n\nexport type TransactionStatus = z.infer<typeof zTransactionStatus>;\n\nexport const zCommonTransactionResponse = z.object({\n id: z.string().meta({ description: \"Internal unique identifier\" }),\n hash: z.string().meta({ description: \"Transaction hash\" }),\n block: z.object({\n height: z.string().nullable().meta({ description: \"Transaction block height\" }),\n time: z.string().nullable().meta({ description: \"Transaction block time\" }),\n }),\n status: zTransactionStatus.meta({ description: \"Transaction status\" }),\n confirmations: z.string().meta({ description: \"Block confirmations\" }),\n amount: z.string().meta({ description: \"Transaction amount\" }),\n fee: z.string().meta({ description: \"Transaction fee\" }),\n senders: z\n .array(z.string())\n .meta({ description: \"Senders (can be multiple for UTXOs-based accounts)\" }),\n recipients: z\n .array(z.string())\n .meta({ description: \"Recipients (can be multiple for multi-output transactions)\" }),\n});\n\n// #endregion\n","import z from \"zod\";\n\nimport { zIntString, zUnsignedIntString } from \"@/zod-utils\";\n\nimport {\n NetworkFamily,\n zCommonLiveData,\n zCommonTransactionData,\n zCommonTransactionResponse,\n zFeeStrategyCustom,\n zHexDataString,\n} from \"../common\";\n\n// #region ---------- Asset Fields ----------------------------------------------------------------\n\nexport const zEthereumLikeAssetFields = z\n .object({\n type: z.literal(NetworkFamily.ETHEREUM_LIKE).meta({ description: \"Account type\" }),\n address: z.string().nullable().meta({ description: \"Account address\" }),\n })\n .meta({ description: \"Ethereum-like\" });\n\n// #endregion\n\n// #region ---------- Live Data -------------------------------------------------------------------\n\nconst zEthereumLikeStakingData = z\n .object({\n totalStaking: z.string().meta({ description: \"Total staked amount\" }),\n totalRewards: z.string().meta({ description: \"Total of rewards\" }),\n availableRewards: z.string().meta({ description: \"Available rewards\" }).optional(),\n networkApy: z.number().meta({ description: \"Network APY\" }).optional(),\n })\n .nullable()\n .meta({ description: \"Ethereum-like staking data\" });\n\nexport const zEthereumLikeStakingFields = z.object({\n type: z.literal(NetworkFamily.ETHEREUM_LIKE).meta({ description: \"Account type\" }),\n staking: zEthereumLikeStakingData.optional(),\n});\n\nexport const zEthereumLikeLiveData = zCommonLiveData\n .extend(zEthereumLikeStakingFields.shape)\n .meta({ description: \"Ethereum-like\" });\n\n// #endregion\n\n// #region ---------- Estimated Fee ---------------------------------------------------------------\n\nexport const zEthereumLikeEstimatedFees = z\n .object({\n type: z.literal(NetworkFamily.ETHEREUM_LIKE),\n baseFees: zIntString,\n gasLimit: zIntString,\n nonce: z.string(),\n priorityFees: zIntString,\n executionFees: zIntString.nullish(),\n maxExecutionFees: zIntString.nullish(),\n })\n .meta({ description: \"Ethereum-like fees\" });\n\n// #endregion\n\n// #region ---------- Transaction Type ------------------------------------------------------------\n\nconst zEthereumLikeTransferTransactionType = z\n .enum([\"ETHEREUM_LIKE_SEND\", \"ETHEREUM_LIKE_RECEIVE\"])\n .meta({ description: \"Ethereum-like transaction type\" });\n\nconst zEthereumLikeContractTransactionType = z\n .enum([\"ETHEREUM_LIKE_EXECUTE_CONTRACT\", \"ETHEREUM_LIKE_DEPLOY_CONTRACT\"])\n .meta({ description: \"Ethereum-like transaction type\" });\n\nconst zEthereumLikeStakingTransactionType = z\n .enum([\n \"ETHEREUM_LIKE_STAKE_DEPOSIT\",\n \"ETHEREUM_LIKE_STAKE_TOP_UP\",\n \"ETHEREUM_LIKE_STAKE_WITHDRAW\",\n \"ETHEREUM_LIKE_STAKE_CONSOLIDATE\",\n \"ETHEREUM_LIKE_STAKE_UPGRADE\",\n ])\n .meta({ description: \"Ethereum-like staking transaction type\" });\n\nexport const zEthereumLikeTransactionType = z\n .enum([\n ...zEthereumLikeTransferTransactionType.options,\n ...zEthereumLikeContractTransactionType.options,\n ...zEthereumLikeStakingTransactionType.options,\n ])\n .meta({\n description: \"Ethereum-like transaction type\",\n });\n\nexport type EthereumLikeTransactionType = z.infer<typeof zEthereumLikeTransactionType>;\n\n// #endregion\n\n// #region ---------- Transaction Data ------------------------------------------------------------\n\nconst zEthereumLikeLegacyFeeStrategy = zFeeStrategyCustom\n .extend({\n gasPrice: zUnsignedIntString.meta({ description: \"Gas price\" }),\n gasLimit: zUnsignedIntString.meta({ description: \"Gas limit\" }),\n })\n .meta({ description: \"Ethereum-like legacy fee strategy\" });\n\nexport const zEthereumLikeEip1559FeeStrategy = zFeeStrategyCustom\n .extend({\n maxPriorityFeePerGas: zUnsignedIntString.meta({ description: \"Maximum priority fee per gas\" }),\n maxFeePerGas: zUnsignedIntString.meta({ description: \"Maximum fee per gas (base + priority)\" }),\n gasLimit: zUnsignedIntString.meta({ description: \"Gas limit\" }),\n })\n .meta({ description: \"Ethereum-like EIP-1559 fee strategy\" });\n\nexport type EthereumLikeEip1559FeeStrategy = z.infer<typeof zEthereumLikeEip1559FeeStrategy>;\n\nconst zEthereumLikeFeeStrategy = z\n .union([zEthereumLikeLegacyFeeStrategy, zEthereumLikeEip1559FeeStrategy])\n .meta({\n description: \"Ethereum-like fee strategy\",\n id: \"EthereumLikeFeeStrategy\",\n });\n\nconst zEthereumCommonTransactionData = zCommonTransactionData.extend({\n replacingTxHash: z.string().optional().meta({\n description:\n \"Hash of the original transaction to replace. If provided, the new transaction will replace the one matching this hash.\",\n }),\n});\n\nconst zEthereumLikeDeployContractData = zEthereumCommonTransactionData\n .extend({\n type: z.literal(zEthereumLikeContractTransactionType.enum.ETHEREUM_LIKE_DEPLOY_CONTRACT),\n recipient: z.literal(\"\"), // force an empty string\n contractData: zHexDataString.meta({ description: \"Contract data in hexadecimal format\" }),\n feeStrategy: zEthereumLikeFeeStrategy,\n })\n .meta({\n description: \"Ethereum-like deploy contract data\",\n id: \"EthereumLikeDeployContractData\",\n });\n\nconst zEthereumLikeExecuteContractData = zEthereumCommonTransactionData\n .extend({\n type: z.literal(zEthereumLikeContractTransactionType.enum.ETHEREUM_LIKE_EXECUTE_CONTRACT),\n contractData: zHexDataString.meta({ description: \"Contract call data in hexadecimal format\" }),\n feeStrategy: zEthereumLikeFeeStrategy,\n })\n .meta({\n description: \"Ethereum-like execute contract data\",\n id: \"EthereumLikeExecuteContractData\",\n });\n\nexport const zEthereumLikeSendData = zEthereumCommonTransactionData\n .extend({\n type: z.literal(zEthereumLikeTransferTransactionType.enum.ETHEREUM_LIKE_SEND),\n feeStrategy: zEthereumLikeFeeStrategy,\n })\n .meta({\n description: \"Ethereum-like send data\",\n id: \"EthereumLikeSendData\",\n });\n\n// Upper bound enforced by les-wallet batch provisioning (Kiln caps at 150 validators per request).\nconst MAX_VALIDATORS_PER_BATCH = 150;\n\nconst zEthereumLikeStakingProvider = z.string().nonempty().meta({\n description: \"Staking provider to use, as identified by the staking validators endpoint\",\n});\n\nexport const zEthereumLikeStakingDepositData = zEthereumCommonTransactionData\n .omit({ recipient: true, amount: true })\n .extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_DEPOSIT),\n feeStrategy: zEthereumLikeFeeStrategy,\n amountPerValidator: zUnsignedIntString.meta({ description: \"Amount to stake per validator\" }),\n numberOfValidators: zUnsignedIntString\n .refine(\n (v) => {\n const n = BigInt(v);\n return n >= 1n && n <= BigInt(MAX_VALIDATORS_PER_BATCH);\n },\n { message: `Number of validators must be between 1 and ${MAX_VALIDATORS_PER_BATCH}` },\n )\n .meta({\n description: \"Number of validators to stake with\",\n }),\n stakingProvider: zEthereumLikeStakingProvider,\n withdrawalAddress: z\n .string()\n .regex(/^0x[a-fA-F0-9]{40}$/, { message: \"Withdrawal address must be 20 bytes\" })\n .meta({ description: \"Execution-layer withdrawal address in hexadecimal format (20 bytes)\" }),\n })\n .meta({\n description: \"Ethereum-like staking deposit data\",\n id: \"EthereumLikeStakingDepositData\",\n });\n\nexport const zEthereumLikeStakingTopUpData = zEthereumCommonTransactionData\n .omit({ recipient: true, amount: true })\n .extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_TOP_UP),\n feeStrategy: zEthereumLikeFeeStrategy,\n validators: z\n .array(\n z.object({\n validatorPubKey: zHexDataString\n .refine((v) => v.length === 2 + 2 * 48, {\n message: \"Validator public key must be 48 bytes\",\n })\n .meta({ description: \"Validator public key in hexadecimal format (48 bytes)\" }),\n amount: zUnsignedIntString.meta({ description: \"Amount to stake per validator\" }),\n }),\n )\n .min(1, { message: \"A top-up must include at least one validator\" }),\n })\n .meta({\n description: \"Ethereum-like staking top-up deposit data\",\n id: \"EthereumLikeStakingTopUpData\",\n });\n\nexport const zEthereumLikeStakingWithdrawData = zEthereumCommonTransactionData\n .omit({ recipient: true })\n .extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_WITHDRAW),\n feeStrategy: zEthereumLikeFeeStrategy,\n validatorPubKey: zHexDataString\n .refine((v) => v.length === 2 + 2 * 48, {\n message: \"Validator public key must be 48 bytes\",\n })\n .meta({ description: \"Validator public key in hexadecimal format (48 bytes)\" }),\n maxExecutionFees: zUnsignedIntString\n .meta({\n description: \"Max execution fee for the withdrawal transaction (in wei)\",\n })\n .optional(),\n })\n .meta({\n description: \"Ethereum-like staking withdraw data\",\n id: \"EthereumLikeStakingWithdrawData\",\n });\n\nexport const zEthereumLikeStakingConsolidateData = zEthereumCommonTransactionData\n .omit({ recipient: true })\n .extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_CONSOLIDATE),\n feeStrategy: zEthereumLikeFeeStrategy,\n sourcePubKey: zHexDataString\n .refine((v) => v.length === 2 + 2 * 48, {\n message: \"Source validator public key must be 48 bytes\",\n })\n .meta({ description: \"Source validator public key in hexadecimal format (48 bytes)\" }),\n targetPubKey: zHexDataString\n .refine((v) => v.length === 2 + 2 * 48, {\n message: \"Target validator public key must be 48 bytes\",\n })\n .meta({ description: \"Target validator public key in hexadecimal format (48 bytes)\" }),\n maxExecutionFees: zUnsignedIntString\n .meta({\n description: \"Max execution fee for the consolidation transaction (in wei)\",\n })\n .optional(),\n })\n .meta({\n description: \"Ethereum-like staking consolidate data\",\n id: \"EthereumLikeStakingConsolidateData\",\n });\n\nexport const zEthereumLikeStakingUpgradeData = zEthereumCommonTransactionData\n .omit({ recipient: true })\n .extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_UPGRADE),\n feeStrategy: zEthereumLikeFeeStrategy,\n validatorPubKey: zHexDataString\n .refine((v) => v.length === 2 + 2 * 48, {\n message: \"Validator public key must be 48 bytes\",\n })\n .meta({ description: \"Validator public key in hexadecimal format (48 bytes)\" }),\n maxExecutionFees: zUnsignedIntString\n .meta({\n description: \"Max execution fee for the upgrade transaction (in wei)\",\n })\n .optional(),\n })\n .meta({\n description: \"Ethereum-like staking upgrade data\",\n id: \"EthereumLikeStakingUpgradeData\",\n });\n\nexport const zEthereumLikeTransactionData = z.discriminatedUnion(\"type\", [\n zEthereumLikeDeployContractData,\n zEthereumLikeExecuteContractData,\n zEthereumLikeSendData,\n zEthereumLikeStakingDepositData,\n zEthereumLikeStakingTopUpData,\n zEthereumLikeStakingWithdrawData,\n zEthereumLikeStakingConsolidateData,\n zEthereumLikeStakingUpgradeData,\n]);\n\nexport type EthereumLikeTransactionData = z.infer<typeof zEthereumLikeTransactionData>;\n\n// #endregion\n\n// #region ---------- Staking Provisioning --------------------------------------------------------\n\nexport const zValidator = z.object({\n pubkey: z.string(),\n depositAmount: zUnsignedIntString,\n signature: z.string(),\n depositDataRoot: z.string(),\n});\n\nexport type Validator = z.infer<typeof zValidator>;\n\nexport const zStakingProvisioning = z.object({\n contractAddress: z.string(),\n validators: z.array(zValidator),\n});\n\nexport type StakingProvisioning = z.infer<typeof zStakingProvisioning>;\n\n// #endregion\n\n// #region ---------- Transaction Response --------------------------------------------------------\n\nconst zEthereumLikeTransferCoinFields = z.object({\n type: zEthereumLikeTransferTransactionType,\n gasPrice: z.string(),\n gasLimit: z.string(),\n nonce: z.string(),\n});\n\nconst zEthereumLikeContractCoinFields = zEthereumLikeTransferCoinFields.extend({\n type: zEthereumLikeContractTransactionType,\n contractData: z.string().meta({ description: \"Contract deployment or contract execution data\" }),\n});\n\nconst zEthereumLikeStakingCoinFields = zEthereumLikeContractCoinFields.extend({\n type: zEthereumLikeStakingTransactionType,\n});\n\nconst zEthereumLikeStakeDepositValidatorResponse = z.object({\n validatorPubKey: zHexDataString.meta({ description: \"Validator public key\" }),\n stakingProvider: zEthereumLikeStakingProvider\n .nullable()\n .meta({ description: \"Staking provider inferred from the validator public key, when known\" }),\n withdrawalCredentials: zHexDataString.meta({ description: \"Validator withdrawal credentials\" }),\n withdrawalAddress: z\n .string()\n .nullable()\n .meta({ description: \"Execution withdrawal address, when encoded by the credentials\" }),\n signature: zHexDataString.meta({ description: \"BLS deposit signature\" }),\n depositDataRoot: zHexDataString.meta({ description: \"Beacon deposit data root\" }),\n amount: zUnsignedIntString.meta({ description: \"Validator deposit amount in wei\" }),\n});\n\nconst zEthereumLikeStakeTopUpValidatorResponse = z.object({\n validatorPubKey: zHexDataString.meta({ description: \"Validator public key\" }),\n stakingProvider: zEthereumLikeStakingProvider\n .nullable()\n .meta({ description: \"Staking provider inferred from the validator public key, when known\" }),\n amount: zUnsignedIntString.meta({ description: \"Validator top-up amount in wei\" }),\n});\n\nconst zEthereumLikeStakeDepositResponseFields = zEthereumLikeStakingCoinFields.extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_DEPOSIT),\n validators: z.array(zEthereumLikeStakeDepositValidatorResponse),\n});\n\nconst zEthereumLikeStakeTopUpResponseFields = zEthereumLikeStakingCoinFields.extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_TOP_UP),\n validators: z.array(zEthereumLikeStakeTopUpValidatorResponse),\n});\n\nconst zEthereumLikeStakeWithdrawResponseFields = zEthereumLikeStakingCoinFields.extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_WITHDRAW),\n validatorPubKey: zHexDataString.meta({ description: \"Validator public key\" }),\n stakingProvider: zEthereumLikeStakingProvider\n .nullable()\n .meta({ description: \"Staking provider inferred from the validator public key, when known\" }),\n withdrawalAmount: zUnsignedIntString.meta({ description: \"Requested withdrawal amount in wei\" }),\n isFullExit: z.boolean().meta({ description: \"Whether the zero amount requests a full exit\" }),\n executionFee: zUnsignedIntString.meta({ description: \"EIP-7002 request fee in wei\" }),\n});\n\nconst zEthereumLikeStakeConsolidateResponseFields = zEthereumLikeStakingCoinFields.extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_CONSOLIDATE),\n sourcePubKey: zHexDataString.meta({ description: \"Source validator public key\" }),\n sourceStakingProvider: zEthereumLikeStakingProvider.nullable().meta({\n description: \"Staking provider inferred from the source validator public key, when known\",\n }),\n targetPubKey: zHexDataString.meta({ description: \"Target validator public key\" }),\n targetStakingProvider: zEthereumLikeStakingProvider.nullable().meta({\n description: \"Staking provider inferred from the target validator public key, when known\",\n }),\n executionFee: zUnsignedIntString.meta({ description: \"EIP-7251 request fee in wei\" }),\n});\n\nconst zEthereumLikeStakeUpgradeResponseFields = zEthereumLikeStakingCoinFields.extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_UPGRADE),\n validatorPubKey: zHexDataString.meta({ description: \"Validator public key\" }),\n stakingProvider: zEthereumLikeStakingProvider\n .nullable()\n .meta({ description: \"Staking provider inferred from the validator public key, when known\" }),\n executionFee: zUnsignedIntString.meta({ description: \"EIP-7251 request fee in wei\" }),\n});\n\nexport const zEthereumLikeTransactionResponse = z\n .discriminatedUnion(\"type\", [\n zCommonTransactionResponse\n .extend(zEthereumLikeTransferCoinFields.shape)\n .meta({ description: \"Ethereum-like transfer transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeContractCoinFields.shape)\n .meta({ description: \"Ethereum-like contract transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeStakeDepositResponseFields.shape)\n .meta({ description: \"Ethereum validator deposit transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeStakeTopUpResponseFields.shape)\n .meta({ description: \"Ethereum validator top-up transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeStakeWithdrawResponseFields.shape)\n .meta({ description: \"Ethereum validator withdrawal request transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeStakeConsolidateResponseFields.shape)\n .meta({ description: \"Ethereum validator consolidation request transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeStakeUpgradeResponseFields.shape)\n .meta({ description: \"Ethereum validator credential upgrade transaction\" }),\n ])\n .meta({ description: \"Ethereum-like transaction\" });\n\n// #endregion\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["z"],"sources":["../src/core/hsm-comparison.ts","../src/shared/zod-utils.ts","../src/core/networks/common.ts","../src/core/networks/ethereum/schemas.ts","../src/services/hsm/hsm-requests-types.ts","../src/entrypoints/api/requests/transaction-check-preview/public.ts"],"sourcesContent":["/** Comparators offered by the backoffice \"Compare with HSM\" diagnostic, one run at a time. */\nexport const HSM_COMPARATORS = [\"whitelists\", \"workspace-name\"] as const;\n\nexport type HsmComparator = (typeof HSM_COMPARATORS)[number];\n\n/**\n * Why a compared object diverges. Reasons are comparator-specific, but they share a single enum so\n * the backoffice can count and group anomalies without knowing which comparator produced them.\n */\nexport const HSM_COMPARE_REASONS = [\n \"has-diffs\",\n \"missing-in-hsm\",\n \"missing-in-revault\",\n \"fetch-failed\",\n \"name-mismatch\",\n \"no-partition-found\",\n \"multiple-partitions-found\",\n] as const;\n\nexport type HsmCompareReason = (typeof HSM_COMPARE_REASONS)[number];\n\n/**\n * One line of evidence under an anomaly. Values are stringified here rather than formatted, so the\n * backoffice owns how a divergence reads on screen.\n */\nexport type HsmCompareDetail =\n | {\n kind: \"field-diff\";\n /** Entry the field belongs to, or null when the field is on the object itself. */\n scope: string | null;\n field: string;\n revault: string;\n hsm: string;\n }\n | { kind: \"only-in-revault\"; entry: string }\n | { kind: \"only-in-hsm\"; entry: string };\n\nexport type HsmCompareAnomaly = {\n reason: HsmCompareReason;\n /** HSM object id, null for anomalies that are not about a single identified object. */\n hsmId: string | null;\n /** Revault-side name, null when only the HSM knows the object. */\n name: string | null;\n details: HsmCompareDetail[];\n};\n\nexport type HsmWorkspaceComparison = {\n workspaceName: string;\n /** Objects actually compared on both sides. Zero means there was nothing to compare. */\n checked: number;\n anomalies: HsmCompareAnomaly[];\n};\n","import { z } from \"zod\";\n\nexport const zHexString = z.string().regex(/^[0-9a-fA-F]+$/);\n\nexport const zIntString = z\n .string()\n .nonempty()\n .regex(/^(-?[1-9]\\d*|0)$/);\n\nexport const zUnsignedIntString = z\n .string()\n .nonempty()\n .regex(/^([1-9]\\d*|0)$/);\n\nexport const zCurrencyString = z\n .string()\n .nonempty()\n .max(40)\n .regex(/^\\w+$/)\n .meta({ description: \"Will be deprecated soon, use network instead. Currency\" });\n\nexport const zNetwork = z\n .string()\n .nonempty()\n .max(40)\n .regex(/^\\w+$/)\n .meta({ description: \"Network identifier\" });\n\nexport const zCurrency = z.object({\n network: zNetwork,\n contractAddress: z.string().nonempty().nullable().meta({ description: \"Token issuer\" }),\n tokenIdentifier: z.string().nonempty().nullable().meta({ description: \"Token identifier\" }),\n});\n\nexport const zObjectId = z\n .string()\n .regex(/^[\\w-]+$/) // UUID, GUID, NanoID, CUID... or just a slug\n .nonempty();\n\nexport type ObjectId = z.infer<typeof zObjectId>;\n\nexport const zHsmObjectId = z\n .string()\n .regex(/^[\\w-]+$/) // TODO: what is the exact format of an HSM ID?\n .nonempty();\n\nexport type HsmObjectId = z.infer<typeof zHsmObjectId>;\n\nexport const zHsmObjectName = z.string().min(1).max(45).meta({ description: \"HSM object name\" });\n\n/** DNS hostname or label conforming to RFC 1123. */\nexport const zDns1123Label = z\n .string()\n .min(1)\n .max(63)\n .regex(/^[a-z0-9]([-a-z0-9]*[a-z0-9])?$/);\n\n/* v8 ignore next -- @preserve */\nexport const zDateCodec = z.codec(z.iso.datetime(), z.date(), {\n decode: (isoString) => new Date(isoString), // ISO string → Date\n encode: (date) => date.toISOString(), // Date → ISO string\n});\n","import z from \"zod\";\n\nimport type { AccountType } from \"@/generated/prisma/client\";\nimport { zCurrencyString, zUnsignedIntString } from \"@/shared/zod-utils\";\n\n// #region ---------- Utils -----------------------------------------------------------------------\n\nexport type NetworkFamily = Exclude<AccountType, \"RAW_SIGNING\">;\n\nexport const NetworkFamily = {\n BITCOIN_LIKE: \"BITCOIN_LIKE\",\n CANTON_LIKE: \"CANTON_LIKE\",\n CARDANO_LIKE: \"CARDANO_LIKE\",\n ETHEREUM_LIKE: \"ETHEREUM_LIKE\",\n GENERIC_LIKE: \"GENERIC_LIKE\",\n HEDERA_LIKE: \"HEDERA_LIKE\",\n POLKADOT_LIKE: \"POLKADOT_LIKE\",\n RIPPLE_LIKE: \"RIPPLE_LIKE\",\n SOLANA_LIKE: \"SOLANA_LIKE\",\n STELLAR_LIKE: \"STELLAR_LIKE\",\n SUI_LIKE: \"SUI_LIKE\",\n TEZOS_LIKE: \"TEZOS_LIKE\",\n TRON_LIKE: \"TRON_LIKE\",\n} satisfies Record<NetworkFamily, NetworkFamily>;\n\n/**\n * Ensure that this is a hex string and transform it to lowercase with 0x prefix.\n * Not to be used for EIP-55 addresses or other attributes where letter casing is important!\n */\n/* v8 ignore next -- @preserve */\nexport const zHexDataString = z.codec(z.string().regex(/^(?:0x|0X)?[a-fA-F0-9]+$/), z.string(), {\n decode: (hex) => `0x${hex.toLowerCase().replace(\"0x\", \"\")}`,\n encode: (hex) => hex,\n});\n\n// #endregion\n\n// #region ---------- Live Data -------------------------------------------------------------------\n\nexport const zCommonLiveData = z.object({\n id: z.string().meta({ description: \"Account internal unique identifier\" }),\n balance: z\n .object({\n total: z.string().meta({ description: \"Total balance\" }),\n pending: z.string().meta({ description: \"Pending balance\" }),\n reserved: z\n .string()\n .meta({ description: \"Minimum balance the account must always keep (0 if none)\" }),\n })\n .meta({ description: \"Balance fields\" }),\n});\n\n// #endregion\n\n// #region ---------- Transaction Data ------------------------------------------------------------\n\n/**\n * Schema of `Request.data.transaction`\n */\nexport const zCommonTransactionData = z.object({\n amount: zUnsignedIntString.meta({ description: \"Transaction amount\" }),\n currency: zCurrencyString.meta({\n description: \"Will be deprecated soon, use Account.network. Transaction currency\",\n }), // TODO: to remove, use account.network instead\n maxFee: zUnsignedIntString.nullable().meta({ description: \"Transaction max fee\" }),\n recipient: z.string().nonempty().meta({ description: \"Transaction recipient\" }),\n});\n\nexport const zFeeStrategyCustom = z.object({\n type: z.enum([\"SLOW\", \"NORMAL\", \"FAST\", \"CUSTOM\"]),\n});\n\nexport const zFeeStrategy = z.object({\n type: z.enum([\"SLOW\", \"NORMAL\", \"FAST\"]),\n});\n\n// #endregion\n\n// #region ---------- Transaction Response --------------------------------------------------------\n\nexport const zTransactionStatus = z.enum([\"SUCCESSFUL\", \"FAILED\", \"PENDING\", \"UNKNOWN\"]);\n\nexport type TransactionStatus = z.infer<typeof zTransactionStatus>;\n\nexport const zCommonTransactionResponse = z.object({\n id: z.string().meta({ description: \"Internal unique identifier\" }),\n hash: z.string().meta({ description: \"Transaction hash\" }),\n block: z.object({\n height: z.string().nullable().meta({ description: \"Transaction block height\" }),\n time: z.string().nullable().meta({ description: \"Transaction block time\" }),\n }),\n status: zTransactionStatus.meta({ description: \"Transaction status\" }),\n confirmations: z.string().meta({ description: \"Block confirmations\" }),\n amount: z.string().meta({ description: \"Transaction amount\" }),\n fee: z.string().meta({ description: \"Transaction fee\" }),\n senders: z\n .array(z.string())\n .meta({ description: \"Senders (can be multiple for UTXOs-based accounts)\" }),\n recipients: z\n .array(z.string())\n .meta({ description: \"Recipients (can be multiple for multi-output transactions)\" }),\n});\n\n// #endregion\n","import z from \"zod\";\n\nimport { zIntString, zUnsignedIntString } from \"@/shared/zod-utils\";\n\nimport {\n NetworkFamily,\n zCommonLiveData,\n zCommonTransactionData,\n zCommonTransactionResponse,\n zFeeStrategyCustom,\n zHexDataString,\n} from \"../common\";\n\n// #region ---------- Asset Fields ----------------------------------------------------------------\n\nexport const zEthereumLikeAssetFields = z\n .object({\n type: z.literal(NetworkFamily.ETHEREUM_LIKE).meta({ description: \"Account type\" }),\n address: z.string().nullable().meta({ description: \"Account address\" }),\n })\n .meta({ description: \"Ethereum-like\" });\n\n// #endregion\n\n// #region ---------- Live Data -------------------------------------------------------------------\n\nconst zEthereumLikeConsolidationTarget = z.object({\n id: z.string().nonempty().meta({ description: \"Staking position ID\" }),\n staked: z.string().meta({ description: \"Staked amount of that position\" }),\n});\n\nconst zEthereumLikeStakingData = z\n .object({\n totalStaking: z.string().meta({ description: \"Total staked amount\" }),\n totalRewards: z.string().meta({ description: \"Total of rewards\" }),\n availableRewards: z.string().meta({ description: \"Available rewards\" }).optional(),\n networkApy: z.number().meta({ description: \"Network APY\" }).optional(),\n consolidationTargets: z\n .array(zEthereumLikeConsolidationTarget)\n .max(2)\n .optional()\n .meta({\n description:\n \"The smallest positions a stake can be consolidated into, ascending. Only the \" +\n \"smallest target can have room for a given source, so these are enough to decide \" +\n \"any position's eligibility without listing the account. Two entries rather than \" +\n \"one because a position is never its own target. Absent on accounts whose staking \" +\n \"data does not come from position listing.\",\n }),\n })\n .nullable()\n .meta({ description: \"Ethereum-like staking data\" });\n\nexport const zEthereumLikeStakingFields = z.object({\n type: z.literal(NetworkFamily.ETHEREUM_LIKE).meta({ description: \"Account type\" }),\n staking: zEthereumLikeStakingData.optional(),\n});\n\nexport const zEthereumLikeLiveData = zCommonLiveData\n .extend(zEthereumLikeStakingFields.shape)\n .meta({ description: \"Ethereum-like\" });\n\n// #endregion\n\n// #region ---------- Estimated Fee ---------------------------------------------------------------\n\nexport const zEthereumLikeEstimatedFees = z\n .object({\n type: z.literal(NetworkFamily.ETHEREUM_LIKE),\n baseFees: zIntString,\n gasLimit: zIntString,\n nonce: z.string(),\n priorityFees: zIntString,\n executionFees: zIntString.nullish(),\n maxExecutionFees: zIntString.nullish(),\n })\n .meta({ description: \"Ethereum-like fees\" });\n\n// #endregion\n\n// #region ---------- Transaction Type ------------------------------------------------------------\n\nconst zEthereumLikeTransferTransactionType = z\n .enum([\"ETHEREUM_LIKE_SEND\", \"ETHEREUM_LIKE_RECEIVE\"])\n .meta({ description: \"Ethereum-like transaction type\" });\n\nconst zEthereumLikeContractTransactionType = z\n .enum([\"ETHEREUM_LIKE_EXECUTE_CONTRACT\", \"ETHEREUM_LIKE_DEPLOY_CONTRACT\"])\n .meta({ description: \"Ethereum-like transaction type\" });\n\nconst zEthereumLikeStakingTransactionType = z\n .enum([\n \"ETHEREUM_LIKE_STAKE_DEPOSIT\",\n \"ETHEREUM_LIKE_STAKE_TOP_UP\",\n \"ETHEREUM_LIKE_STAKE_WITHDRAW\",\n \"ETHEREUM_LIKE_STAKE_CONSOLIDATE\",\n \"ETHEREUM_LIKE_STAKE_UPGRADE\",\n ])\n .meta({ description: \"Ethereum-like staking transaction type\" });\n\nexport const zEthereumLikeTransactionType = z\n .enum([\n ...zEthereumLikeTransferTransactionType.options,\n ...zEthereumLikeContractTransactionType.options,\n ...zEthereumLikeStakingTransactionType.options,\n ])\n .meta({\n description: \"Ethereum-like transaction type\",\n });\n\nexport type EthereumLikeTransactionType = z.infer<typeof zEthereumLikeTransactionType>;\n\n// #endregion\n\n// #region ---------- Transaction Data ------------------------------------------------------------\n\nconst zEthereumLikeLegacyFeeStrategy = zFeeStrategyCustom\n .extend({\n gasPrice: zUnsignedIntString.meta({ description: \"Gas price\" }),\n gasLimit: zUnsignedIntString.meta({ description: \"Gas limit\" }),\n })\n .meta({ description: \"Ethereum-like legacy fee strategy\" });\n\nexport const zEthereumLikeEip1559FeeStrategy = zFeeStrategyCustom\n .extend({\n maxPriorityFeePerGas: zUnsignedIntString.meta({ description: \"Maximum priority fee per gas\" }),\n maxFeePerGas: zUnsignedIntString.meta({ description: \"Maximum fee per gas (base + priority)\" }),\n gasLimit: zUnsignedIntString.meta({ description: \"Gas limit\" }),\n })\n .meta({ description: \"Ethereum-like EIP-1559 fee strategy\" });\n\nexport type EthereumLikeEip1559FeeStrategy = z.infer<typeof zEthereumLikeEip1559FeeStrategy>;\n\nconst zEthereumLikeFeeStrategy = z\n .union([zEthereumLikeLegacyFeeStrategy, zEthereumLikeEip1559FeeStrategy])\n .meta({\n description: \"Ethereum-like fee strategy\",\n id: \"EthereumLikeFeeStrategy\",\n });\n\nconst zEthereumCommonTransactionData = zCommonTransactionData.extend({\n replacingTxHash: z.string().optional().meta({\n description:\n \"Hash of the original transaction to replace. If provided, the new transaction will replace the one matching this hash.\",\n }),\n});\n\nconst zEthereumLikeDeployContractData = zEthereumCommonTransactionData\n .extend({\n type: z.literal(zEthereumLikeContractTransactionType.enum.ETHEREUM_LIKE_DEPLOY_CONTRACT),\n recipient: z.literal(\"\"), // force an empty string\n contractData: zHexDataString.meta({ description: \"Contract data in hexadecimal format\" }),\n feeStrategy: zEthereumLikeFeeStrategy,\n })\n .meta({\n description: \"Ethereum-like deploy contract data\",\n id: \"EthereumLikeDeployContractData\",\n });\n\nconst zEthereumLikeExecuteContractData = zEthereumCommonTransactionData\n .extend({\n type: z.literal(zEthereumLikeContractTransactionType.enum.ETHEREUM_LIKE_EXECUTE_CONTRACT),\n contractData: zHexDataString.meta({ description: \"Contract call data in hexadecimal format\" }),\n feeStrategy: zEthereumLikeFeeStrategy,\n })\n .meta({\n description: \"Ethereum-like execute contract data\",\n id: \"EthereumLikeExecuteContractData\",\n });\n\nexport const zEthereumLikeSendData = zEthereumCommonTransactionData\n .extend({\n type: z.literal(zEthereumLikeTransferTransactionType.enum.ETHEREUM_LIKE_SEND),\n feeStrategy: zEthereumLikeFeeStrategy,\n })\n .meta({\n description: \"Ethereum-like send data\",\n id: \"EthereumLikeSendData\",\n });\n\n// Upper bound enforced by les-wallet batch provisioning (Kiln caps at 150 validators per request).\nconst MAX_VALIDATORS_PER_BATCH = 150;\n\nconst zEthereumLikeStakingProvider = z.string().nonempty().meta({\n description: \"Staking provider to use, as identified by the staking validators endpoint\",\n});\n\nexport const zEthereumLikeStakingDepositData = zEthereumCommonTransactionData\n .omit({ recipient: true, amount: true })\n .extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_DEPOSIT),\n feeStrategy: zEthereumLikeFeeStrategy,\n amountPerValidator: zUnsignedIntString.meta({ description: \"Amount to stake per validator\" }),\n numberOfValidators: zUnsignedIntString\n .refine(\n (v) => {\n const n = BigInt(v);\n return n >= 1n && n <= BigInt(MAX_VALIDATORS_PER_BATCH);\n },\n { message: `Number of validators must be between 1 and ${MAX_VALIDATORS_PER_BATCH}` },\n )\n .meta({\n description: \"Number of validators to stake with\",\n }),\n stakingProvider: zEthereumLikeStakingProvider,\n withdrawalAddress: z\n .string()\n .regex(/^0x[a-fA-F0-9]{40}$/, { message: \"Withdrawal address must be 20 bytes\" })\n .meta({ description: \"Execution-layer withdrawal address in hexadecimal format (20 bytes)\" }),\n })\n .meta({\n description: \"Ethereum-like staking deposit data\",\n id: \"EthereumLikeStakingDepositData\",\n });\n\nexport const zEthereumLikeStakingTopUpData = zEthereumCommonTransactionData\n .omit({ recipient: true, amount: true })\n .extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_TOP_UP),\n feeStrategy: zEthereumLikeFeeStrategy,\n validators: z\n .array(\n z.object({\n validatorPubKey: zHexDataString\n .refine((v) => v.length === 2 + 2 * 48, {\n message: \"Validator public key must be 48 bytes\",\n })\n .meta({ description: \"Validator public key in hexadecimal format (48 bytes)\" }),\n amount: zUnsignedIntString.meta({ description: \"Amount to stake per validator\" }),\n }),\n )\n .min(1, { message: \"A top-up must include at least one validator\" }),\n })\n .meta({\n description: \"Ethereum-like staking top-up deposit data\",\n id: \"EthereumLikeStakingTopUpData\",\n });\n\nexport const zEthereumLikeStakingWithdrawData = zEthereumCommonTransactionData\n .omit({ recipient: true })\n .extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_WITHDRAW),\n feeStrategy: zEthereumLikeFeeStrategy,\n validatorPubKey: zHexDataString\n .refine((v) => v.length === 2 + 2 * 48, {\n message: \"Validator public key must be 48 bytes\",\n })\n .meta({ description: \"Validator public key in hexadecimal format (48 bytes)\" }),\n maxExecutionFees: zUnsignedIntString\n .meta({\n description: \"Max execution fee for the withdrawal transaction (in wei)\",\n })\n .optional(),\n })\n .meta({\n description: \"Ethereum-like staking withdraw data\",\n id: \"EthereumLikeStakingWithdrawData\",\n });\n\nexport const zEthereumLikeStakingConsolidateData = zEthereumCommonTransactionData\n .omit({ recipient: true })\n .extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_CONSOLIDATE),\n feeStrategy: zEthereumLikeFeeStrategy,\n sourcePubKey: zHexDataString\n .refine((v) => v.length === 2 + 2 * 48, {\n message: \"Source validator public key must be 48 bytes\",\n })\n .meta({ description: \"Source validator public key in hexadecimal format (48 bytes)\" }),\n targetPubKey: zHexDataString\n .refine((v) => v.length === 2 + 2 * 48, {\n message: \"Target validator public key must be 48 bytes\",\n })\n .meta({ description: \"Target validator public key in hexadecimal format (48 bytes)\" }),\n maxExecutionFees: zUnsignedIntString\n .meta({\n description: \"Max execution fee for the consolidation transaction (in wei)\",\n })\n .optional(),\n })\n .meta({\n description: \"Ethereum-like staking consolidate data\",\n id: \"EthereumLikeStakingConsolidateData\",\n });\n\nexport const zEthereumLikeStakingUpgradeData = zEthereumCommonTransactionData\n .omit({ recipient: true })\n .extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_UPGRADE),\n feeStrategy: zEthereumLikeFeeStrategy,\n validatorPubKey: zHexDataString\n .refine((v) => v.length === 2 + 2 * 48, {\n message: \"Validator public key must be 48 bytes\",\n })\n .meta({ description: \"Validator public key in hexadecimal format (48 bytes)\" }),\n maxExecutionFees: zUnsignedIntString\n .meta({\n description: \"Max execution fee for the upgrade transaction (in wei)\",\n })\n .optional(),\n })\n .meta({\n description: \"Ethereum-like staking upgrade data\",\n id: \"EthereumLikeStakingUpgradeData\",\n });\n\nexport const zEthereumLikeTransactionData = z.discriminatedUnion(\"type\", [\n zEthereumLikeDeployContractData,\n zEthereumLikeExecuteContractData,\n zEthereumLikeSendData,\n zEthereumLikeStakingDepositData,\n zEthereumLikeStakingTopUpData,\n zEthereumLikeStakingWithdrawData,\n zEthereumLikeStakingConsolidateData,\n zEthereumLikeStakingUpgradeData,\n]);\n\nexport type EthereumLikeTransactionData = z.infer<typeof zEthereumLikeTransactionData>;\n\n// #endregion\n\n// #region ---------- Staking Provisioning --------------------------------------------------------\n\nexport const zValidator = z.object({\n pubkey: z.string(),\n depositAmount: zUnsignedIntString,\n signature: z.string(),\n depositDataRoot: z.string(),\n});\n\nexport type Validator = z.infer<typeof zValidator>;\n\nexport const zStakingProvisioning = z.object({\n contractAddress: z.string(),\n validators: z.array(zValidator),\n});\n\nexport type StakingProvisioning = z.infer<typeof zStakingProvisioning>;\n\n// #endregion\n\n// #region ---------- Transaction Response --------------------------------------------------------\n\nconst zEthereumLikeTransferCoinFields = z.object({\n type: zEthereumLikeTransferTransactionType,\n gasPrice: z.string(),\n gasLimit: z.string(),\n nonce: z.string(),\n});\n\nconst zEthereumLikeContractCoinFields = zEthereumLikeTransferCoinFields.extend({\n type: zEthereumLikeContractTransactionType,\n contractData: z.string().meta({ description: \"Contract deployment or contract execution data\" }),\n});\n\nconst zEthereumLikeStakingCoinFields = zEthereumLikeContractCoinFields.extend({\n type: zEthereumLikeStakingTransactionType,\n});\n\nconst zEthereumLikeStakeDepositValidatorResponse = z.object({\n validatorPubKey: zHexDataString.meta({ description: \"Validator public key\" }),\n stakingProvider: zEthereumLikeStakingProvider\n .nullable()\n .meta({ description: \"Staking provider inferred from the validator public key, when known\" }),\n withdrawalCredentials: zHexDataString.meta({ description: \"Validator withdrawal credentials\" }),\n withdrawalAddress: z\n .string()\n .nullable()\n .meta({ description: \"Execution withdrawal address, when encoded by the credentials\" }),\n signature: zHexDataString.meta({ description: \"BLS deposit signature\" }),\n depositDataRoot: zHexDataString.meta({ description: \"Beacon deposit data root\" }),\n amount: zUnsignedIntString.meta({ description: \"Validator deposit amount in wei\" }),\n});\n\nconst zEthereumLikeStakeTopUpValidatorResponse = z.object({\n validatorPubKey: zHexDataString.meta({ description: \"Validator public key\" }),\n stakingProvider: zEthereumLikeStakingProvider\n .nullable()\n .meta({ description: \"Staking provider inferred from the validator public key, when known\" }),\n amount: zUnsignedIntString.meta({ description: \"Validator top-up amount in wei\" }),\n});\n\nconst zEthereumLikeStakeDepositResponseFields = zEthereumLikeStakingCoinFields.extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_DEPOSIT),\n validators: z.array(zEthereumLikeStakeDepositValidatorResponse),\n});\n\nconst zEthereumLikeStakeTopUpResponseFields = zEthereumLikeStakingCoinFields.extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_TOP_UP),\n validators: z.array(zEthereumLikeStakeTopUpValidatorResponse),\n});\n\nconst zEthereumLikeStakeWithdrawResponseFields = zEthereumLikeStakingCoinFields.extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_WITHDRAW),\n validatorPubKey: zHexDataString.meta({ description: \"Validator public key\" }),\n stakingProvider: zEthereumLikeStakingProvider\n .nullable()\n .meta({ description: \"Staking provider inferred from the validator public key, when known\" }),\n withdrawalAmount: zUnsignedIntString.meta({ description: \"Requested withdrawal amount in wei\" }),\n isFullExit: z.boolean().meta({ description: \"Whether the zero amount requests a full exit\" }),\n executionFee: zUnsignedIntString.meta({ description: \"EIP-7002 request fee in wei\" }),\n});\n\nconst zEthereumLikeStakeConsolidateResponseFields = zEthereumLikeStakingCoinFields.extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_CONSOLIDATE),\n sourcePubKey: zHexDataString.meta({ description: \"Source validator public key\" }),\n sourceStakingProvider: zEthereumLikeStakingProvider.nullable().meta({\n description: \"Staking provider inferred from the source validator public key, when known\",\n }),\n targetPubKey: zHexDataString.meta({ description: \"Target validator public key\" }),\n targetStakingProvider: zEthereumLikeStakingProvider.nullable().meta({\n description: \"Staking provider inferred from the target validator public key, when known\",\n }),\n executionFee: zUnsignedIntString.meta({ description: \"EIP-7251 request fee in wei\" }),\n});\n\nconst zEthereumLikeStakeUpgradeResponseFields = zEthereumLikeStakingCoinFields.extend({\n type: z.literal(zEthereumLikeStakingTransactionType.enum.ETHEREUM_LIKE_STAKE_UPGRADE),\n validatorPubKey: zHexDataString.meta({ description: \"Validator public key\" }),\n stakingProvider: zEthereumLikeStakingProvider\n .nullable()\n .meta({ description: \"Staking provider inferred from the validator public key, when known\" }),\n executionFee: zUnsignedIntString.meta({ description: \"EIP-7251 request fee in wei\" }),\n});\n\nexport const zEthereumLikeTransactionResponse = z\n .discriminatedUnion(\"type\", [\n zCommonTransactionResponse\n .extend(zEthereumLikeTransferCoinFields.shape)\n .meta({ description: \"Ethereum-like transfer transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeContractCoinFields.shape)\n .meta({ description: \"Ethereum-like contract transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeStakeDepositResponseFields.shape)\n .meta({ description: \"Ethereum validator deposit transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeStakeTopUpResponseFields.shape)\n .meta({ description: \"Ethereum validator top-up transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeStakeWithdrawResponseFields.shape)\n .meta({ description: \"Ethereum validator withdrawal request transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeStakeConsolidateResponseFields.shape)\n .meta({ description: \"Ethereum validator consolidation request transaction\" }),\n zCommonTransactionResponse\n .extend(zEthereumLikeStakeUpgradeResponseFields.shape)\n .meta({ description: \"Ethereum validator credential upgrade transaction\" }),\n ])\n .meta({ description: \"Ethereum-like transaction\" });\n\n// #endregion\n","import z from \"zod\";\n\nexport const HSM_OBJECT_TYPES = [\n \"Account\",\n \"AdminGroup\",\n \"AssetManager\",\n \"Exchange\",\n \"Group\",\n \"Partition\",\n \"PledgeState\",\n \"Policy\",\n \"AccountRuleSet\",\n \"Tradelink\",\n \"User\",\n \"WalletAccountList\",\n \"Whitelist\",\n] as const;\n\nexport type HsmObjectType = (typeof HSM_OBJECT_TYPES)[number];\n\nexport const zObjectsVersionResponse = z.object({\n cid: z.coerce.string(),\n total_accounts: z.number(),\n accounts_report: z.record(z.string(), z.number()),\n total_objects: z.number(),\n objects_report: z.record(z.string(), z.number()),\n});\n\nexport type ObjectsVersionResponse = z.infer<typeof zObjectsVersionResponse>;\n\nconst zVersionedObjectInfo = z.object({\n uid: z.string(),\n object_type: z.string(),\n index: z.number(),\n hsm_object_type_id: z.number(),\n anti_replay_value: z.number(),\n expected_anti_replay_value: z.number(),\n schema_version: z.number(),\n});\n\nexport type VersionedObjectInfo = z.infer<typeof zVersionedObjectInfo>;\n\nexport const zGetObjectsInfoResponse = z.object({\n cid: z.coerce.string(),\n uid: z.string().nullable(),\n objects_count: z.number(),\n hsm_requests_count: z.number(),\n status: z.string(),\n valid_objects: z.array(zVersionedObjectInfo),\n invalid_objects: z.array(zVersionedObjectInfo),\n objects_missing_merkle_tree_id: z.array(z.string()),\n});\n\nexport type GetObjectsInfoResponse = z.infer<typeof zGetObjectsInfoResponse>;\n\nexport const zObjectsContentResponse = z.object({\n cid: z.coerce.string(),\n uid: z.string().nullable(),\n objects_count: z.number(),\n hsm_requests_count: z.number(),\n status: z.string(),\n // Structure varies by object type; intentionally untyped for raw dump display.\n object_contents: z.array(z.unknown()),\n objects_missing_merkle_tree_id: z.array(z.string()),\n});\n\nexport type ObjectsContentResponse = z.infer<typeof zObjectsContentResponse>;\n","import type { TransactionType } from \"@/core/networks\";\n\nconst TRANSACTION_CHECK_PREVIEW_SUPPORTED_TYPES = [\n \"ETHEREUM_LIKE_SEND\",\n \"ETHEREUM_LIKE_EXECUTE_CONTRACT\",\n \"ETHEREUM_LIKE_STAKE_DEPOSIT\",\n \"ETHEREUM_LIKE_STAKE_TOP_UP\",\n \"ETHEREUM_LIKE_STAKE_WITHDRAW\",\n \"ETHEREUM_LIKE_STAKE_CONSOLIDATE\",\n \"ETHEREUM_LIKE_STAKE_UPGRADE\",\n] as const satisfies readonly TransactionType[];\n\n/** Whether Transaction Check can preview this exact transaction type. */\nexport const isTransactionCheckPreviewSupportedType = (type: TransactionType): boolean =>\n TRANSACTION_CHECK_PREVIEW_SUPPORTED_TYPES.some((supportedType) => supportedType === type);\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ledgerhq/revault-api",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.86.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"files": [
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
"require": "./lib/index.mjs"
|
|
15
15
|
},
|
|
16
16
|
"./internal": {
|
|
17
|
-
"types": "./lib/internal/app-lib.d.mts",
|
|
18
|
-
"import": "./lib/internal/app-lib.mjs",
|
|
19
|
-
"require": "./lib/internal/app-lib.mjs"
|
|
17
|
+
"types": "./lib/entrypoints/internal-api/app-lib.d.mts",
|
|
18
|
+
"import": "./lib/entrypoints/internal-api/app-lib.mjs",
|
|
19
|
+
"require": "./lib/entrypoints/internal-api/app-lib.mjs"
|
|
20
20
|
},
|
|
21
21
|
"./fakes": {
|
|
22
22
|
"types": "./lib/fakes.d.mts",
|
|
File without changes
|