From 5bae9c74311fb6d17b0035888ebf4387f5d1130f Mon Sep 17 00:00:00 2001 From: Michael Chappell <7581002+mchappell@users.noreply.github.com> Date: Wed, 10 Apr 2024 12:25:24 +0100 Subject: [PATCH] feat: sign new certificate types --- packages/hardware-ledger/package.json | 2 +- .../src/transformers/certificates.ts | 268 ++++++++++++------ .../hardware-ledger/src/transformers/index.ts | 1 + .../hardware-ledger/src/transformers/tx.ts | 4 + .../src/transformers/votingProcedures.ts | 83 ++++++ .../src/transformers/withdrawals.ts | 12 +- .../test/LedgerKeyAgent.test.ts | 2 +- packages/hardware-ledger/test/testData.ts | 67 +++++ .../test/transformers/certificates.test.ts | 12 +- .../test/transformers/tx.test.ts | 2 +- .../transformers/votingProcedures.test.ts | 22 ++ .../test/transformers/withdrawals.test.ts | 6 +- yarn-project.nix | 30 +- yarn.lock | 258 +++++++++++++---- 14 files changed, 614 insertions(+), 155 deletions(-) create mode 100644 packages/hardware-ledger/src/transformers/votingProcedures.ts create mode 100644 packages/hardware-ledger/test/transformers/votingProcedures.test.ts diff --git a/packages/hardware-ledger/package.json b/packages/hardware-ledger/package.json index b9f896fee02..ae280ad7f8d 100644 --- a/packages/hardware-ledger/package.json +++ b/packages/hardware-ledger/package.json @@ -49,7 +49,7 @@ "typescript": "^4.7.4" }, "dependencies": { - "@cardano-foundation/ledgerjs-hw-app-cardano": "^6.0.0", + "@cardano-foundation/ledgerjs-hw-app-cardano": "^7.0.0", "@cardano-sdk/core": "workspace:~", "@cardano-sdk/crypto": "workspace:~", "@cardano-sdk/key-management": "workspace:~", diff --git a/packages/hardware-ledger/src/transformers/certificates.ts b/packages/hardware-ledger/src/transformers/certificates.ts index c9993839a6a..22b6148f1c7 100644 --- a/packages/hardware-ledger/src/transformers/certificates.ts +++ b/packages/hardware-ledger/src/transformers/certificates.ts @@ -1,3 +1,4 @@ +/* eslint-disable complexity */ import * as Crypto from '@cardano-sdk/crypto'; import * as Ledger from '@cardano-foundation/ledgerjs-hw-app-cardano'; import { Cardano } from '@cardano-sdk/core'; @@ -5,115 +6,117 @@ import { InvalidArgumentError, Transform } from '@cardano-sdk/util'; import { LedgerTxTransformerContext } from '../types'; import { util } from '@cardano-sdk/key-management'; -type StakeKeyCertificateType = Ledger.CertificateType.STAKE_REGISTRATION | Ledger.CertificateType.STAKE_DEREGISTRATION; - -type StakeKeyCertificate = { - params: { - stakeCredential: Ledger.StakeCredentialParams; - }; - type: StakeKeyCertificateType; -}; - -const getStakeAddressCertificate = ( - certificate: Cardano.StakeAddressCertificate, - context: LedgerTxTransformerContext, - type: StakeKeyCertificateType -): StakeKeyCertificate => { - const knownAddress = context?.knownAddresses.find( - (address) => - Cardano.RewardAccount.toHash(address.rewardAccount) === - (certificate.stakeCredential.hash as unknown as Crypto.Ed25519KeyHashHex) - ); - - const rewardAddress = knownAddress ? Cardano.Address.fromBech32(knownAddress.rewardAccount)?.asReward() : null; - const path = util.stakeKeyPathFromGroupedAddress(knownAddress); - const credentialType = rewardAddress - ? rewardAddress.getPaymentCredential().type - : Ledger.StakeCredentialParamsType.SCRIPT_HASH; +const mapAnchorToParams = (certificate: Cardano.Certificate) => ({ + ...('anchor' in certificate && + certificate?.anchor && { anchor: { hashHex: certificate.anchor.dataHash, url: certificate.anchor.url } }) +}); - let credential: Ledger.StakeCredentialParams; +const credentialMapper = ( + credential: Cardano.Credential, + credentialType: Cardano.CredentialType | Ledger.CredentialParamsType.SCRIPT_HASH, + path: Crypto.BIP32Path | null +): Ledger.CredentialParams => { + let credentialParams: Ledger.CredentialParams; switch (credentialType) { case Cardano.CredentialType.KeyHash: { - credential = path + credentialParams = path ? { keyPath: path, - type: Ledger.StakeCredentialParamsType.KEY_PATH + type: Ledger.CredentialParamsType.KEY_PATH } : { - keyHashHex: certificate.stakeCredential.hash, - type: Ledger.StakeCredentialParamsType.KEY_HASH + keyHashHex: credential.hash, + type: Ledger.CredentialParamsType.KEY_HASH }; break; } case Cardano.CredentialType.ScriptHash: default: { - credential = { - scriptHashHex: certificate.stakeCredential.hash, - type: Ledger.StakeCredentialParamsType.SCRIPT_HASH + credentialParams = { + scriptHashHex: credential.hash, + type: Ledger.CredentialParamsType.SCRIPT_HASH }; } } - return { - params: { - stakeCredential: credential - }, - type - }; + return credentialParams; }; -export const stakeDelegationCertificate: Transform< - Cardano.StakeDelegationCertificate, - Ledger.Certificate, - LedgerTxTransformerContext -> = (certificate, context): Ledger.Certificate => { - const poolIdKeyHash = Cardano.PoolId.toKeyHash(certificate.poolId); +const stakeCredentialMapper = ( + credential: Cardano.Credential, + context: LedgerTxTransformerContext +): Ledger.CredentialParams => { const knownAddress = context?.knownAddresses.find( (address) => - Cardano.RewardAccount.toHash(address.rewardAccount) === - (certificate.stakeCredential.hash as unknown as Crypto.Ed25519KeyHashHex) + Cardano.RewardAccount.toHash(address.rewardAccount) === (credential.hash as unknown as Crypto.Ed25519KeyHashHex) ); - const rewardAddress = knownAddress ? Cardano.Address.fromBech32(knownAddress.rewardAccount)?.asReward() : null; + const rewardAddress = knownAddress ? Cardano.Address.fromBech32(knownAddress.rewardAccount)?.asReward() : null; + const path = util.stakeKeyPathFromGroupedAddress(knownAddress); const credentialType = rewardAddress ? rewardAddress.getPaymentCredential().type - : Ledger.StakeCredentialParamsType.SCRIPT_HASH; + : Ledger.CredentialParamsType.SCRIPT_HASH; - const path = util.stakeKeyPathFromGroupedAddress(knownAddress); + return credentialMapper(credential, credentialType, path); +}; - let credential: Ledger.StakeCredentialParams; +const getStakeAddressCertificate = ( + certificate: Cardano.StakeAddressCertificate, + context: LedgerTxTransformerContext, + type: Ledger.CertificateType.STAKE_REGISTRATION | Ledger.CertificateType.STAKE_DEREGISTRATION +): Ledger.Certificate => ({ + params: { + stakeCredential: stakeCredentialMapper(certificate.stakeCredential, context) + }, + type +}); - switch (credentialType) { - case Cardano.CredentialType.KeyHash: { - credential = path - ? { - keyPath: path, - type: Ledger.StakeCredentialParamsType.KEY_PATH - } - : { - keyHashHex: certificate.stakeCredential.hash, - type: Ledger.StakeCredentialParamsType.KEY_HASH - }; - break; - } - case Cardano.CredentialType.ScriptHash: - default: { - credential = { - scriptHashHex: certificate.stakeCredential.hash, - type: Ledger.StakeCredentialParamsType.SCRIPT_HASH - }; - } - } +const getNewStakeAddressCertificate = ( + certificate: Cardano.NewStakeAddressCertificate, + context: LedgerTxTransformerContext, + type: Ledger.CertificateType.STAKE_REGISTRATION_CONWAY | Ledger.CertificateType.STAKE_DEREGISTRATION_CONWAY +): Ledger.Certificate => ({ + params: { + deposit: certificate.deposit, + stakeCredential: stakeCredentialMapper(certificate.stakeCredential, context) + }, + type +}); - return { - params: { - poolKeyHashHex: poolIdKeyHash, - stakeCredential: credential - }, - type: Ledger.CertificateType.STAKE_DELEGATION - }; -}; +const getAuthorizeCommitteeHotCertificate = ( + certificate: Cardano.AuthorizeCommitteeHotCertificate, + context: LedgerTxTransformerContext +): Ledger.Certificate => ({ + params: { + coldCredential: stakeCredentialMapper(certificate.coldCredential, context), + hotCredential: stakeCredentialMapper(certificate.hotCredential, context) + }, + type: Ledger.CertificateType.AUTHORIZE_COMMITTEE_HOT +}); + +const getResignCommitteeColdCertificate = ( + certificate: Cardano.ResignCommitteeColdCertificate, + context: LedgerTxTransformerContext +): Ledger.Certificate => ({ + params: { + ...mapAnchorToParams(certificate), + coldCredential: stakeCredentialMapper(certificate.coldCredential, context) + }, + type: Ledger.CertificateType.RESIGN_COMMITTEE_COLD +}); + +export const stakeDelegationCertificate: Transform< + Cardano.StakeDelegationCertificate, + Ledger.Certificate, + LedgerTxTransformerContext +> = (certificate, context): Ledger.Certificate => ({ + params: { + poolKeyHashHex: Cardano.PoolId.toKeyHash(certificate.poolId), + stakeCredential: stakeCredentialMapper(certificate.stakeCredential, context!) + }, + type: Ledger.CertificateType.STAKE_DELEGATION +}); const toPoolMetadata: Transform = (metadataJson) => ({ metadataHashHex: metadataJson.hash, @@ -245,7 +248,86 @@ const poolRetirementCertificate: Transform< }; }; -const toCert = (cert: Cardano.Certificate, context: LedgerTxTransformerContext) => { +const checkDrepPublicKeyAgainstCredential = ( + dRepPublicKey: Crypto.Ed25519PublicKeyHex | undefined, + hash: Crypto.Hash28ByteBase16 +) => { + if (!dRepPublicKey || dRepPublicKey !== Crypto.Ed25519PublicKeyHex(hash)) { + throw new InvalidArgumentError('certificate', 'dRepPublicKey does not match certificate drep credential.'); + } +}; + +const drepRegistrationCertificate = ( + certificate: Cardano.RegisterDelegateRepresentativeCertificate | Cardano.UnRegisterDelegateRepresentativeCertificate, + context: LedgerTxTransformerContext, + type: Extract< + Ledger.CertificateType, + Ledger.CertificateType.DREP_REGISTRATION | Ledger.CertificateType.DREP_DEREGISTRATION + > +): Ledger.Certificate => { + checkDrepPublicKeyAgainstCredential(context?.dRepPublicKey, certificate.dRepCredential.hash); + + const params: Ledger.DRepRegistrationParams = { + ...mapAnchorToParams(certificate), + dRepCredential: credentialMapper(certificate.dRepCredential, certificate.dRepCredential.type, null), + deposit: certificate.deposit + }; + + return { + params, + type + }; +}; + +const drepParamsMapper = ( + drep: Cardano.Credential, + path: Crypto.BIP32Path | null +): Ledger.KeyPathDRepParams | Ledger.KeyHashDRepParams | Ledger.ScriptHashDRepParams => { + let dRepParams: Ledger.DRepParams; + + switch (drep.type) { + case Cardano.CredentialType.KeyHash: { + dRepParams = path + ? { + keyPath: path, + type: Ledger.DRepParamsType.KEY_PATH + } + : { + keyHashHex: drep.hash, + type: Ledger.DRepParamsType.KEY_HASH + }; + break; + } + case Cardano.CredentialType.ScriptHash: + default: { + dRepParams = { + scriptHashHex: drep.hash, + type: Ledger.DRepParamsType.SCRIPT_HASH + }; + } + } + + return dRepParams; +}; + +// TODO: do we need to do the same as in stakeCredentialMapper? +const drepMapper = (drep: Cardano.DelegateRepresentative): Ledger.DRepParams => { + if (Cardano.isDRepAlwaysAbstain(drep)) { + return { + type: Ledger.DRepParamsType.ABSTAIN + }; + } else if (Cardano.isDRepAlwaysNoConfidence(drep)) { + return { + type: Ledger.DRepParamsType.NO_CONFIDENCE + }; + } else if (Cardano.isDRepCredential(drep)) { + // TODO: review + return drepParamsMapper(drep, null); + } + throw new Error('incorrect drep supplied'); +}; + +const toCert = (cert: Cardano.Certificate, context: LedgerTxTransformerContext): Ledger.Certificate => { switch (cert.__typename) { case Cardano.CertificateType.StakeRegistration: return getStakeAddressCertificate(cert, context, Ledger.CertificateType.STAKE_REGISTRATION); @@ -257,6 +339,30 @@ const toCert = (cert: Cardano.Certificate, context: LedgerTxTransformerContext) return poolRegistrationCertificate(cert, context); case Cardano.CertificateType.PoolRetirement: return poolRetirementCertificate(cert, context); + + // Conway Era Certs + case Cardano.CertificateType.Registration: + return getNewStakeAddressCertificate(cert, context, Ledger.CertificateType.STAKE_DEREGISTRATION_CONWAY); + case Cardano.CertificateType.Unregistration: + return getNewStakeAddressCertificate(cert, context, Ledger.CertificateType.STAKE_DEREGISTRATION_CONWAY); + case Cardano.CertificateType.VoteDelegation: + return { + params: { + // TODO: review + dRep: drepMapper(cert.dRep), + stakeCredential: stakeCredentialMapper(cert.stakeCredential, context) + }, + type: Ledger.CertificateType.VOTE_DELEGATION + }; + case Cardano.CertificateType.AuthorizeCommitteeHot: + return getAuthorizeCommitteeHotCertificate(cert, context); + case Cardano.CertificateType.ResignCommitteeCold: + return getResignCommitteeColdCertificate(cert, context); + case Cardano.CertificateType.RegisterDelegateRepresentative: + return drepRegistrationCertificate(cert, context, Ledger.CertificateType.DREP_REGISTRATION); + case Cardano.CertificateType.UnregisterDelegateRepresentative: + return drepRegistrationCertificate(cert, context, Ledger.CertificateType.DREP_DEREGISTRATION); + case Cardano.CertificateType.UpdateDelegateRepresentative: default: throw new InvalidArgumentError('cert', `Certificate ${cert.__typename} not supported.`); } diff --git a/packages/hardware-ledger/src/transformers/index.ts b/packages/hardware-ledger/src/transformers/index.ts index 701ffa23c56..f4a0ed30745 100644 --- a/packages/hardware-ledger/src/transformers/index.ts +++ b/packages/hardware-ledger/src/transformers/index.ts @@ -9,3 +9,4 @@ export * from './tx'; export * from './txIn'; export * from './txOut'; export * from './withdrawals'; +export * from './votingProcedures'; diff --git a/packages/hardware-ledger/src/transformers/tx.ts b/packages/hardware-ledger/src/transformers/tx.ts index ea93117e976..7861b2aaad7 100644 --- a/packages/hardware-ledger/src/transformers/tx.ts +++ b/packages/hardware-ledger/src/transformers/tx.ts @@ -12,12 +12,14 @@ import { mapTokenMap } from './assets'; import { mapTxIns } from './txIn'; import { mapTxOuts } from './txOut'; import { mapWithdrawals } from './withdrawals'; +import { mapVotingProcedures } from './votingProcedures'; export const LedgerTxTransformer: Transformer = { auxiliaryData: ({ auxiliaryDataHash }) => mapAuxiliaryData(auxiliaryDataHash), certificates: ({ certificates }, context) => mapCerts(certificates, context!), collateralInputs: ({ collaterals }, context) => mapCollateralTxIns(collaterals, context!), collateralOutput: ({ collateralReturn }, context) => mapCollateralTxOut(collateralReturn, context!), + donation: ({ donation }) => donation, fee: ({ fee }) => fee, includeNetworkId: ({ networkId }) => !!networkId, inputs: ({ inputs }, context) => mapTxIns(inputs, context!), @@ -31,8 +33,10 @@ export const LedgerTxTransformer: Transformer mapRequiredSigners(requiredExtraSignatures, context!), scriptDataHashHex: ({ scriptIntegrityHash }) => scriptIntegrityHash?.toString(), totalCollateral: ({ totalCollateral }) => totalCollateral, + treasury: ({ treasuryValue }) => treasuryValue, ttl: ({ validityInterval }) => validityInterval?.invalidHereafter, validityIntervalStart: ({ validityInterval }) => validityInterval?.invalidBefore, + votingProcedures: ({ votingProcedures }) => mapVotingProcedures(votingProcedures), withdrawals: ({ withdrawals }, context) => mapWithdrawals(withdrawals, context!) }; diff --git a/packages/hardware-ledger/src/transformers/votingProcedures.ts b/packages/hardware-ledger/src/transformers/votingProcedures.ts new file mode 100644 index 00000000000..d8243dc2e55 --- /dev/null +++ b/packages/hardware-ledger/src/transformers/votingProcedures.ts @@ -0,0 +1,83 @@ +import { + Voter as LedgerVoter, + VoterVotes, + VoterType as LedgerVoterType, + Vote as LedgerVote, + VoteOption +} from '@cardano-foundation/ledgerjs-hw-app-cardano'; +// import { LedgerTxTransformerContext } from '../types'; +import { Cardano } from '@cardano-sdk/core'; + +const mapVoter = (voter: Cardano.Voter): LedgerVoter => { + switch (voter.__typename) { + case Cardano.VoterType.dRepKeyHash: { + return { + type: LedgerVoterType.DREP_KEY_HASH, + keyHashHex: voter.credential.hash + }; + } + case Cardano.VoterType.dRepScriptHash: { + return { + type: LedgerVoterType.DREP_SCRIPT_HASH, + scriptHashHex: voter.credential.hash + }; + } + case Cardano.VoterType.stakePoolKeyHash: { + return { + type: LedgerVoterType.STAKE_POOL_KEY_HASH, + keyHashHex: voter.credential.hash + }; + } + + case Cardano.VoterType.ccHotKeyHash: + case Cardano.VoterType.ccHotScriptHash: + default: + throw new Error('unknown voter type'); + } +}; + +const mapVote = (vote: Cardano.Vote): VoteOption => { + switch (vote) { + case Cardano.Vote.yes: + return VoteOption.YES; + case Cardano.Vote.abstain: + return VoteOption.ABSTAIN; + case Cardano.Vote.no: + return VoteOption.NO; + default: + throw new Error('unknown vote option'); + } +}; + +const mapVotes = ( + votes: Array<{ + actionId: Cardano.GovernanceActionId; + votingProcedure: Cardano.VotingProcedure; + }> +): Array => { + return votes.map((vote) => ({ + govActionId: { + txHashHex: vote.actionId.id, + govActionIndex: vote.actionId.actionIndex + }, + votingProcedure: { + vote: mapVote(vote.votingProcedure.vote), + ...(vote.votingProcedure.anchor && { + anchor: { + url: vote.votingProcedure.anchor.url, + hashHex: vote.votingProcedure.anchor.dataHash + } + }) + } + })); +}; + +export const mapVotingProcedures = ( + votingProcedures: Cardano.VotingProcedures | undefined +): Array | null => { + if (!votingProcedures || votingProcedures.length === 0) return null; + return votingProcedures.map((votingProcedure) => ({ + voter: mapVoter(votingProcedure.voter), + votes: mapVotes(votingProcedure.votes) + })); +}; diff --git a/packages/hardware-ledger/src/transformers/withdrawals.ts b/packages/hardware-ledger/src/transformers/withdrawals.ts index b307cfb18c2..74952347bc7 100644 --- a/packages/hardware-ledger/src/transformers/withdrawals.ts +++ b/packages/hardware-ledger/src/transformers/withdrawals.ts @@ -45,23 +45,23 @@ export const toWithdrawal: Transform { params: { stakeCredential: { scriptHashHex: 'cb0ec2692497b458e46812c8a5bfa2931d1a2d965a99893828ec810f', - type: Ledger.StakeCredentialParamsType.SCRIPT_HASH + type: Ledger.CredentialParamsType.SCRIPT_HASH } }, type: Ledger.CertificateType.STAKE_DEREGISTRATION diff --git a/packages/hardware-ledger/test/testData.ts b/packages/hardware-ledger/test/testData.ts index 40f59485037..f24b64fc67b 100644 --- a/packages/hardware-ledger/test/testData.ts +++ b/packages/hardware-ledger/test/testData.ts @@ -363,3 +363,70 @@ export const CONTEXT_WITHOUT_KNOWN_ADDRESSES: LedgerTxTransformerContext = { knownAddresses: [], txInKeyPathMap: {} }; + +export const singleVotingProcedure: Cardano.VotingProcedures = [ + { + voter: { + __typename: Cardano.VoterType.dRepKeyHash, + credential: { + type: Cardano.CredentialType.KeyHash, + hash: stakeCredential.hash + } + }, + votes: [ + { + actionId: { + actionIndex: 1, + id: Cardano.TransactionId('8d2feeab1087e0aa4ad06e878c5269eaa2edcef5264bcc97542a28c189b2cbc5') + }, + votingProcedure: { + vote: Cardano.Vote.yes, + anchor: { + url: metadataJson.url, + dataHash: metadataJson.hash + } + } + } + ] + } +]; + +export const singleVotingProcedureMultipleVotes: Cardano.VotingProcedures = [ + { + voter: { + __typename: Cardano.VoterType.dRepKeyHash, + credential: { + type: Cardano.CredentialType.KeyHash, + hash: stakeCredential.hash + } + }, + votes: [ + { + actionId: { + actionIndex: 1, + id: Cardano.TransactionId('8d2feeab1087e0aa4ad06e878c5269eaa2edcef5264bcc97542a28c189b2cbc5') + }, + votingProcedure: { + vote: Cardano.Vote.yes, + anchor: { + url: metadataJson.url, + dataHash: metadataJson.hash + } + } + }, + { + actionId: { + actionIndex: 2, + id: Cardano.TransactionId('8d2feeab1087e0aa4ad06e878c5269eaa2edcef5264bcc97542a28c189b2cbc6') + }, + votingProcedure: { + vote: Cardano.Vote.no, + anchor: { + url: metadataJson.url, + dataHash: metadataJson.hash + } + } + } + ] + } +]; diff --git a/packages/hardware-ledger/test/transformers/certificates.test.ts b/packages/hardware-ledger/test/transformers/certificates.test.ts index e639f4e34f4..341668c18a8 100644 --- a/packages/hardware-ledger/test/transformers/certificates.test.ts +++ b/packages/hardware-ledger/test/transformers/certificates.test.ts @@ -38,7 +38,7 @@ describe('certificates', () => { params: { stakeCredential: { scriptHashHex: 'cb0ec2692497b458e46812c8a5bfa2931d1a2d965a99893828ec810f', - type: Ledger.StakeCredentialParamsType.SCRIPT_HASH + type: Ledger.CredentialParamsType.SCRIPT_HASH } }, type: Ledger.CertificateType.STAKE_REGISTRATION @@ -68,7 +68,7 @@ describe('certificates', () => { KeyRole.Stake, 0 ], - type: Ledger.StakeCredentialParamsType.KEY_PATH + type: Ledger.CredentialParamsType.KEY_PATH } }, type: Ledger.CertificateType.STAKE_REGISTRATION @@ -92,7 +92,7 @@ describe('certificates', () => { params: { stakeCredential: { scriptHashHex: 'cb0ec2692497b458e46812c8a5bfa2931d1a2d965a99893828ec810f', - type: Ledger.StakeCredentialParamsType.SCRIPT_HASH + type: Ledger.CredentialParamsType.SCRIPT_HASH } }, type: Ledger.CertificateType.STAKE_DEREGISTRATION @@ -122,7 +122,7 @@ describe('certificates', () => { KeyRole.Stake, 0 ], - type: Ledger.StakeCredentialParamsType.KEY_PATH + type: Ledger.CredentialParamsType.KEY_PATH } }, type: Ledger.CertificateType.STAKE_DEREGISTRATION @@ -356,7 +356,7 @@ describe('certificates', () => { poolKeyHashHex: '153806dbcd134ddee69a8c5204e38ac80448f62342f8c23cfe4b7edf', stakeCredential: { scriptHashHex: 'cb0ec2692497b458e46812c8a5bfa2931d1a2d965a99893828ec810f', - type: Ledger.StakeCredentialParamsType.SCRIPT_HASH + type: Ledger.CredentialParamsType.SCRIPT_HASH } }, type: Ledger.CertificateType.STAKE_DELEGATION @@ -388,7 +388,7 @@ describe('certificates', () => { 2, 0 ], - type: Ledger.StakeCredentialParamsType.KEY_PATH + type: Ledger.CredentialParamsType.KEY_PATH } }, type: Ledger.CertificateType.STAKE_DELEGATION diff --git a/packages/hardware-ledger/test/transformers/tx.test.ts b/packages/hardware-ledger/test/transformers/tx.test.ts index 1fa3eb7e25a..882eae8e21e 100644 --- a/packages/hardware-ledger/test/transformers/tx.test.ts +++ b/packages/hardware-ledger/test/transformers/tx.test.ts @@ -166,7 +166,7 @@ describe('tx', () => { amount: 5n, stakeCredential: { keyHashHex: '13cf55d175ea848b87deb3e914febd7e028e2bf6534475d52fb9c3d0', - type: Ledger.StakeCredentialParamsType.KEY_HASH + type: Ledger.CredentialParamsType.KEY_HASH } } ] diff --git a/packages/hardware-ledger/test/transformers/votingProcedures.test.ts b/packages/hardware-ledger/test/transformers/votingProcedures.test.ts new file mode 100644 index 00000000000..3252ce7adf0 --- /dev/null +++ b/packages/hardware-ledger/test/transformers/votingProcedures.test.ts @@ -0,0 +1,22 @@ +import { Cardano } from '@cardano-sdk/core'; +import { mapVotingProcedures } from '../../src/transformers/votingProcedures'; + + + + +describe('votingProcedures', () => { + describe('mapVotingProcedures', () => { + it.each([undefined, []])( + 'returns null if there are no votingProcedures to map', + (t: Cardano.VotingProcedures | undefined) => { + const votingProcedures = t; + const ledgerVotingProcedures = mapVotingProcedures(votingProcedures); + + expect(ledgerVotingProcedures).toBe(null); + } + ); + + it('should throw for constitutional committee votes', ()=> + ) + }); +}); diff --git a/packages/hardware-ledger/test/transformers/withdrawals.test.ts b/packages/hardware-ledger/test/transformers/withdrawals.test.ts index 7a79b914ca2..46d9654faa2 100644 --- a/packages/hardware-ledger/test/transformers/withdrawals.test.ts +++ b/packages/hardware-ledger/test/transformers/withdrawals.test.ts @@ -41,7 +41,7 @@ describe('withdrawals', () => { 2, 0 ], - type: Ledger.StakeCredentialParamsType.KEY_PATH + type: Ledger.CredentialParamsType.KEY_PATH } }); } @@ -63,7 +63,7 @@ describe('withdrawals', () => { amount: 5n, stakeCredential: { keyPath: [util.harden(CardanoKeyConst.PURPOSE), util.harden(CardanoKeyConst.COIN_TYPE), util.harden(0), 2, 0], - type: Ledger.StakeCredentialParamsType.KEY_PATH + type: Ledger.CredentialParamsType.KEY_PATH } }); }); @@ -81,7 +81,7 @@ describe('withdrawals', () => { amount: 5n, stakeCredential: { keyHashHex: stakeKeyHash, - type: Ledger.StakeCredentialParamsType.KEY_HASH + type: Ledger.CredentialParamsType.KEY_HASH } }); }); diff --git a/yarn-project.nix b/yarn-project.nix index d6edd5efaa7..e64e812e15f 100644 --- a/yarn-project.nix +++ b/yarn-project.nix @@ -371,6 +371,7 @@ cacheEntries = { "@babel/runtime@npm:7.20.0" = { filename = "@babel-runtime-npm-7.20.0-722de6c8f0-637fca51db.zip"; sha512 = "637fca51db34f3a59d329b7e0d01163769fe94915fdb04e4ac4ba62de9f1ca637ce3a564fe3b0166ccdd7f02f14b6a5707ee3e550b3e01c72327c6620d8e6a8b"; }; "@babel/runtime@npm:7.22.6" = { filename = "@babel-runtime-npm-7.22.6-493f6b7ad0-e585338287.zip"; sha512 = "e585338287c4514a713babf4fdb8fc2a67adcebab3e7723a739fc62c79cfda875b314c90fd25f827afb150d781af97bc16c85bfdbfa2889f06053879a1ddb597"; }; "@babel/runtime@npm:7.23.5" = { filename = "@babel-runtime-npm-7.23.5-6e68b78aa3-164d980242.zip"; sha512 = "164d9802424f06908e62d29b8fd3a87db55accf82f46f964ac481dcead11ff7df8391e3696e5fa91a8ca10ea8845bf650acd730fa88cf13f8026cd8d5eec6936"; }; +"@babel/runtime@npm:7.24.4" = { filename = "@babel-runtime-npm-7.24.4-1a974e2dd0-2f27d4c0ff.zip"; sha512 = "2f27d4c0ffac7ae7999ac0385e1106f2a06992a8bdcbf3da06adcac7413863cd08c198c2e4e970041bbea849e17f02e1df18875539b6afba76c781b6b59a07c3"; }; "@babel/template@npm:7.18.10" = { filename = "@babel-template-npm-7.18.10-b6d6fdbaf8-93a6aa094a.zip"; sha512 = "93a6aa094af5f355a72bd55f67fa1828a046c70e46f01b1606e6118fa1802b6df535ca06be83cc5a5e834022be95c7b714f0a268b5f20af984465a71e28f1473"; }; "@babel/template@npm:7.22.15" = { filename = "@babel-template-npm-7.22.15-0b464facb4-1f3e7dcd6c.zip"; sha512 = "1f3e7dcd6c44f5904c184b3f7fe280394b191f2fed819919ffa1e529c259d5b197da8981b6ca491c235aee8dbad4a50b7e31304aa531271cb823a4a24a0dd8fd"; }; "@babel/traverse@npm:7.23.2" = { filename = "@babel-traverse-npm-7.23.2-4758feee42-26a1eea0dd.zip"; sha512 = "26a1eea0dde41ab99dde8b9773a013a0dc50324e5110a049f5d634e721ff08afffd54940b3974a20308d7952085ac769689369e9127dea655f868c0f6e1ab35d"; }; @@ -383,6 +384,7 @@ cacheEntries = { "@blockfrost/blockfrost-utils@npm:2.0.0" = { filename = "@blockfrost-blockfrost-utils-npm-2.0.0-d53fbe4bc6-51e613d14e.zip"; sha512 = "51e613d14e792a957e339bfcf0e428127e659a199a4a6a3deff41751155befb1869c3d6da29afab11a2bd431dfa4839b0e812e8c38eb89b1584661a092bf8885"; }; "@blockfrost/openapi@npm:0.1.49" = { filename = "@blockfrost-openapi-npm-0.1.49-88a1c99db2-cab0b3ec06.zip"; sha512 = "cab0b3ec0677d9a82e0cb0a6b02b5e7a4d5b0ad7ba5e6bf969142e6262eacf947f94c4d0bed397fb38e9983c20b78ed66b4b1dfab7bab7d19b38605156ee693d"; }; "@cardano-foundation/ledgerjs-hw-app-cardano@npm:6.0.0" = { filename = "@cardano-foundation-ledgerjs-hw-app-cardano-npm-6.0.0-615cff0cfb-6767792e68.zip"; sha512 = "6767792e68bd72333423eda25203b69a9686ee12602503e98037c68fc95abb74ceefc4cc1661579720fa3ecb822c4d30e0f0979fee9c8ef476668d4ee99df561"; }; +"@cardano-foundation/ledgerjs-hw-app-cardano@npm:7.0.1" = { filename = "@cardano-foundation-ledgerjs-hw-app-cardano-npm-7.0.1-77358e2504-6ed9ae6804.zip"; sha512 = "6ed9ae68049a45b7175d027bb76c02f67dde10d454b35b1f34960195c90d99a867b5ec2dc2ff8dc5c54f0da9df5c2da33c6e2dcf491ab1fce284f4f74d89fd7a"; }; "@cardano-ogmios/client@npm:5.6.0" = { filename = "@cardano-ogmios-client-npm-5.6.0-e3f0ec5f2b-4d15f7a1c6.zip"; sha512 = "4d15f7a1c6178d3f83d13a8fc9af8fc054d552a5db322ff2ec952d4876f131a0d2940a4ecd9663d4497e00392743f5a04867654984ca8f466b2253cd76d09d05"; }; "@cardano-ogmios/schema@npm:5.6.0" = { filename = "@cardano-ogmios-schema-npm-5.6.0-6e5d8ece12-82d9ba119f.zip"; sha512 = "82d9ba119fd0bb54e1857bc436778f9677c99bb1ca2fe213567b05758e2fbd6bbef540c83bce53850db1f16a50c62e6522b7d792e7bd85f058a835399520b70a"; }; "@cardanosolutions/json-bigint@npm:1.0.0" = { filename = "@cardanosolutions-json-bigint-npm-1.0.0-1a4f51f9ee-5df5986de7.zip"; sha512 = "5df5986de7135e8da55cf5012ebe7d0fb9f57d139ae9aa1cb11e584d0b6c70c60e55fa1994a4e5fde5787285dfef3c252319accb0a93e8ccc6ad2f577ec66931"; }; @@ -482,10 +484,12 @@ cacheEntries = { "@lerna-lite/version@npm:2.1.0" = { filename = "@lerna-lite-version-npm-2.1.0-22d59e801d-54429a2b89.zip"; sha512 = "54429a2b89b532aae6fb3f217dcad22184d0df44a39fe6ad3168a823c353f042c0510eb3f46d8399458b0a43f27040d8a7121f3e9579a321622c7e6c3181996e"; }; "@mobily/ts-belt@npm:3.13.1" = { filename = "@mobily-ts-belt-npm-3.13.1-914abb9789-507417608d.zip"; sha512 = "507417608ddf4ecadf6f4f5dbdc32083000727d1a7a3604dc22670861f617d8bbb53622348649eab36d4d5c81b4331da7c4a3707b610866ebfadea3af27c60de"; }; "@nicolo-ribaudo/eslint-scope-5-internals@npm:5.1.1-v1" = { filename = "@nicolo-ribaudo-eslint-scope-5-internals-npm-5.1.1-v1-87df86be4b-f2e3b2d6a6.zip"; sha512 = "f2e3b2d6a6e2d9f163ca22105910c9f850dc4897af0aea3ef0a5886b63d8e1ba6505b71c99cb78a3bba24a09557d601eb21c8dede3f3213753fcfef364eb0e57"; }; -"@noble/curves@npm:1.1.0" = { filename = "@noble-curves-npm-1.1.0-dccaf3c158-2658cdd3f8.zip"; sha512 = "2658cdd3f84f71079b4e3516c47559d22cf4b55c23ac8ee9d2b1f8e5b72916d9689e59820e0f9d9cb4a46a8423af5b56dc6bb7782405c88be06a015180508db5"; }; "@noble/curves@npm:1.2.0" = { filename = "@noble-curves-npm-1.2.0-9b40ee1239-bb798d7a66.zip"; sha512 = "bb798d7a66d8e43789e93bc3c2ddff91a1e19fdb79a99b86cd98f1e5eff0ee2024a2672902c2576ef3577b6f282f3b5c778bebd55761ddbb30e36bf275e83dd0"; }; +"@noble/curves@npm:1.3.0" = { filename = "@noble-curves-npm-1.3.0-e6ed020ee6-b65342ee66.zip"; sha512 = "b65342ee66c4a440eee2978524412eabba9a9efdd16d6370e15218c6a7d80bddf35e66bb57ed52c0dfd32cb9a717b439ab3a72db618f1a0066dfebe3fd12a421"; }; "@noble/hashes@npm:1.3.1" = { filename = "@noble-hashes-npm-1.3.1-64a92c8445-7fdefc0f7a.zip"; sha512 = "7fdefc0f7a0c1ec27acc6ff88841793e3f93ec4ce6b8a6a12bfc0dd70ae6b7c4c82fe305fdfeda1735d5ad4a9eebe761e6693b3d355689c559e91242f4bc95b1"; }; "@noble/hashes@npm:1.3.2" = { filename = "@noble-hashes-npm-1.3.2-1e619f9da0-fe23536b43.zip"; sha512 = "fe23536b436539d13f90e4b9be843cc63b1b17666a07634a2b1259dded6f490be3d050249e6af98076ea8f2ea0d56f578773c2197f2aa0eeaa5fba5bc18ba474"; }; +"@noble/hashes@npm:1.3.3" = { filename = "@noble-hashes-npm-1.3.3-f7374e6cdf-8a6496d1c0.zip"; sha512 = "8a6496d1c0c64797339bc694ad06cdfaa0f9e56cd0c3f68ae3666cfb153a791a55deb0af9c653c7ed2db64d537aa3e3054629740d2f2338bb1dcb7ab60cd205b"; }; +"@noble/hashes@npm:1.4.0" = { filename = "@noble-hashes-npm-1.4.0-9389282fd6-8ba816ae26.zip"; sha512 = "8ba816ae26c90764b8c42493eea383716396096c5f7ba6bea559993194f49d80a73c081f315f4c367e51bd2d5891700bcdfa816b421d24ab45b41cb03e4f3342"; }; "@nodelib/fs.scandir@npm:2.1.5" = { filename = "@nodelib-fs.scandir-npm-2.1.5-89c67370dd-a970d595bd.zip"; sha512 = "a970d595bd23c66c880e0ef1817791432dbb7acbb8d44b7e7d0e7a22f4521260d4a83f7f9fd61d44fda4610105577f8f58a60718105fb38352baed612fd79e59"; }; "@nodelib/fs.stat@npm:2.0.5" = { filename = "@nodelib-fs.stat-npm-2.0.5-01f4dd3030-012480b5ca.zip"; sha512 = "012480b5ca9d97bff9261571dbbec7bbc6033f69cc92908bc1ecfad0792361a5a1994bc48674b9ef76419d056a03efadfce5a6cf6dbc0a36559571a7a483f6f0"; }; "@nodelib/fs.walk@npm:1.2.8" = { filename = "@nodelib-fs.walk-npm-1.2.8-b4a89da548-190c643f15.zip"; sha512 = "190c643f156d8f8f277bf2a6078af1ffde1fd43f498f187c2db24d35b4b4b5785c02c7dc52e356497b9a1b65b13edc996de08de0b961c32844364da02986dc53"; }; @@ -541,9 +545,9 @@ cacheEntries = { "@redocly/openapi-cli@npm:1.0.0-beta.95" = { filename = "@redocly-openapi-cli-npm-1.0.0-beta.95-25a0855ec8-9f096facef.zip"; sha512 = "9f096facef1e8d96b6b07d76ca085debe8690f3eeaaba5d59abc7db5c247f72294bdfab14f323e881a08ddf41ac19c3b858ef5f331a12d39224a01d244810c9e"; }; "@redocly/openapi-core@npm:1.0.0-beta.95" = { filename = "@redocly-openapi-core-npm-1.0.0-beta.95-203970b096-4862afda66.zip"; sha512 = "4862afda66d80c5aeb20cf7c3cb4554baf9fdd4eb95c848a6a5ca57a80263f5f5d483552dbc2f7b7fdfcfc4f5da1d697030d30566aa3bdc3bf4315f560fcfa5f"; }; "@scure/base@npm:1.1.1" = { filename = "@scure-base-npm-1.1.1-67ec4c3f95-b4fc810b49.zip"; sha512 = "b4fc810b492693e7e8d0107313ac74c3646970c198bbe26d7332820886fa4f09441991023ec9aa3a2a51246b74409ab5ebae2e8ef148bbc253da79ac49130309"; }; -"@scure/base@npm:1.1.3" = { filename = "@scure-base-npm-1.1.3-4126a221a4-1606ab8a4d.zip"; sha512 = "1606ab8a4db898cb3a1ada16c15437c3bce4e25854fadc8eb03ae93cbbbac1ed90655af4b0be3da37e12056fef11c0374499f69b9e658c9e5b7b3e06353c630c"; }; -"@scure/bip32@npm:1.3.1" = { filename = "@scure-bip32-npm-1.3.1-3af4429c8d-394d65f77a.zip"; sha512 = "394d65f77a40651eba21a5096da0f4233c3b50d422864751d373fcf142eeedb94a1149f9ab1dbb078086dab2d0bc27e2b1afec8321bf22d4403c7df2fea5bfe2"; }; -"@scure/bip39@npm:1.2.1" = { filename = "@scure-bip39-npm-1.2.1-f930930e61-c5bd6f1328.zip"; sha512 = "c5bd6f1328fdbeae2dcdd891825b1610225310e5e62a4942714db51066866e4f7bef242c7b06a1b9dcc8043a4a13412cf5c5df76d3b10aa9e36b82e9b6e3eeaa"; }; +"@scure/base@npm:1.1.6" = { filename = "@scure-base-npm-1.1.6-a937639d90-d6deaae91d.zip"; sha512 = "d6deaae91deba99e87939af9e55d80edba302674983f32bba57f942e22b1726a83c62dc50d8f4370a5d5d35a212dda167fb169f4b0d0c297488d8604608fc3d3"; }; +"@scure/bip32@npm:1.3.3" = { filename = "@scure-bip32-npm-1.3.3-3bddda01e8-f939ca7339.zip"; sha512 = "f939ca733972622fcc1e61d4fdf170a0ad294b24ddb7ed7cdd4c467e1ef283b970154cb101cf5f1a7b64cf5337e917ad31135911dfc36b1d76625320167df2fa"; }; +"@scure/bip39@npm:1.2.2" = { filename = "@scure-bip39-npm-1.2.2-958e4465a8-cb99505e6d.zip"; sha512 = "cb99505e6d2deef8e55e81df8c563ce8dbfdf1595596dc912bceadcf366c91b05a98130e928ecb090df74efdb20150b64acc4be55bc42768cab4d39a2833d234"; }; "@sideway/address@npm:4.1.4" = { filename = "@sideway-address-npm-4.1.4-32f94bc9f5-b9fca2a93a.zip"; sha512 = "b9fca2a93ac2c975ba12e0a6d97853832fb1f4fb02393015e012b47fa916a75ca95102d77214b2a29a2784740df2407951af8c5dde054824c65577fd293c4cdb"; }; "@sideway/formula@npm:3.0.1" = { filename = "@sideway-formula-npm-3.0.1-ee371b2ddf-e4beeebc9d.zip"; sha512 = "e4beeebc9dbe2ff4ef0def15cec0165e00d1612e3d7cea0bc9ce5175c3263fc2c818b679bd558957f49400ee7be9d4e5ac90487e1625b4932e15c4aa7919c57a"; }; "@sideway/pinpoint@npm:2.0.0" = { filename = "@sideway-pinpoint-npm-2.0.0-66d94e687e-0f4491e589.zip"; sha512 = "0f4491e5897fcf5bf02c46f5c359c56a314e90ba243f42f0c100437935daa2488f20482f0f77186bd6bf43345095a95d8143ecf8b1f4d876a7bc0806aba9c3d2"; }; @@ -593,7 +597,7 @@ cacheEntries = { "@smithy/util-waiter@npm:1.1.0" = { filename = "@smithy-util-waiter-npm-1.1.0-1a19c81ecb-3c1eeecb15.zip"; sha512 = "3c1eeecb15370c2fd223021f8ac6715d489e40c5976cab349ef174d5fb7ce9ff5e3d549b73fcb52f5e8178af0f3d9cef161525dad7329003a9abaa9753ccaeb6"; }; "@socket.io/component-emitter@npm:3.1.0" = { filename = "@socket.io-component-emitter-npm-3.1.0-3f778351c2-db069d9542.zip"; sha512 = "db069d95425b419de1514dffe945cc439795f6a8ef5b9465715acf5b8b50798e2c91b8719cbf5434b3fe7de179d6cdcd503c277b7871cb3dd03febb69bdd50fa"; }; "@solana/buffer-layout@npm:4.0.1" = { filename = "@solana-buffer-layout-npm-4.0.1-4100001d9d-bf846888e8.zip"; sha512 = "bf846888e813187243d4008a7a9f58b49d16cbd995b9d7f1b72898aa510ed77b1ce5e8468e7b2fd26dd81e557a4e74a666e21fccb95f123c1f740d41138bbacd"; }; -"@solana/web3.js@npm:1.87.6" = { filename = "@solana-web3.js-npm-1.87.6-d45f1f2982-182eb2a953.zip"; sha512 = "182eb2a953f6ebebdfbc7dfda031d1985fb1591a2aa38b388d5dfb9fd3df0fb53a3962373384dbd91df343e148ec3d42a579324effab9ca86f0560c4f6f08481"; }; +"@solana/web3.js@npm:1.91.4" = { filename = "@solana-web3.js-npm-1.91.4-9ff0439664-9f6ac2f64a.zip"; sha512 = "9f6ac2f64ac05043cb367c09d5b4f4b859060618dbffc7a27da35fccdac0be9bd84b83899c9547efedc061fa7e20af283a9bacff01972bd047089809facfbdfe"; }; "@sqltools/formatter@npm:1.2.5" = { filename = "@sqltools-formatter-npm-1.2.5-709e7c0ab8-9b8354e715.zip"; sha512 = "9b8354e715467d660daa5afe044860b5686bbb1a5cb67a60866b932effafbf5e8b429f19a8ae67cd412065a4f067161f227e182f3664a0245339d5eb1e26e355"; }; "@supercharge/promise-pool@npm:2.4.0" = { filename = "@supercharge-promise-pool-npm-2.4.0-cb9749bb15-d21223256b.zip"; sha512 = "d21223256ba05c34a29742172e2b625627038e731f511de0b728c638531096ce12d1a4156fd04e3b34eec980ce8445a66a9d8d070fde7886c9b33a0d759ab2e9"; }; "@szmarczak/http-timer@npm:4.0.6" = { filename = "@szmarczak-http-timer-npm-4.0.6-6ace00d82d-c29df3bcec.zip"; sha512 = "c29df3bcec6fc3bdec2b17981d89d9c9fc9bd7d0c9bcfe92821dc533f4440bc890ccde79971838b4ceed1921d456973c4180d7175ee1d0023ad0562240a58d95"; }; @@ -997,6 +1001,7 @@ cacheEntries = { "cacheable-lookup@npm:5.0.4" = { filename = "cacheable-lookup-npm-5.0.4-8f13e8b44b-763e02cf91.zip"; sha512 = "763e02cf9196bc9afccacd8c418d942fc2677f22261969a4c2c2e760fa44a2351a81557bd908291c3921fe9beb10b976ba8fa50c5ca837c5a0dd945f16468f2d"; }; "cacheable-request@npm:7.0.2" = { filename = "cacheable-request-npm-7.0.2-e64cc641fc-6152813982.zip"; sha512 = "6152813982945a5c9989cb457a6c499f12edcc7ade323d2fbfd759abc860bdbd1306e08096916bb413c3c47e812f8e4c0a0cc1e112c8ce94381a960f115bc77f"; }; "call-bind@npm:1.0.2" = { filename = "call-bind-npm-1.0.2-c957124861-f8e31de9d1.zip"; sha512 = "f8e31de9d19988a4b80f3e704788c4a2d6b6f3d17cfec4f57dc29ced450c53a49270dc66bf0fbd693329ee948dd33e6c90a329519aef17474a4d961e8d6426b0"; }; +"call-bind@npm:1.0.7" = { filename = "call-bind-npm-1.0.7-762763ef96-295c0c62b9.zip"; sha512 = "295c0c62b90dd6522e6db3b0ab1ce26bdf9e7404215bda13cfee25b626b5ff1a7761324d58d38b1ef1607fc65aca2d06e44d2e18d0dfc6c14b465b00d8660029"; }; "call-me-maybe@npm:1.0.2" = { filename = "call-me-maybe-npm-1.0.2-a465269a37-42ff2d0bed.zip"; sha512 = "42ff2d0bed5b207e3f0122589162eaaa47ba618f79ad2382fe0ba14d9e49fbf901099a6227440acc5946f86a4953e8aa2d242b330b0a5de4d090bb18f8935cae"; }; "callsites@npm:3.1.0" = { filename = "callsites-npm-3.1.0-268f989910-072d17b6ab.zip"; sha512 = "072d17b6abb459c2ba96598918b55868af677154bec7e73d222ef95a8fdb9bbf7dae96a8421085cdad8cd190d86653b5b6dc55a4484f2e5b2e27d5e0c3fc15b3"; }; "camelcase-keys@npm:3.0.0" = { filename = "camelcase-keys-npm-3.0.0-6367c91446-8fa4b45465.zip"; sha512 = "8fa4b4546556cbe2bd933f4283dbd0c806d20b5db6711b73c0efbfcb12976d6f04febb1b7640898af7a2cfb7f099a7d02b34d635461dcc2900569eb78570292f"; }; @@ -1177,6 +1182,7 @@ cacheEntries = { "defaults@npm:1.0.4" = { filename = "defaults-npm-1.0.4-f3fbaf2528-3a88b7a587.zip"; sha512 = "3a88b7a587fc076b84e60affad8b85245c01f60f38fc1d259e7ac1d89eb9ce6abb19e27215de46b98568dd5bc48471730b327637e6f20b0f1bc85cf00440c80a"; }; "defer-to-connect@npm:2.0.1" = { filename = "defer-to-connect-npm-2.0.1-9005cc8c60-8a9b50d2f2.zip"; sha512 = "8a9b50d2f25446c0bfefb55a48e90afd58f85b21bcf78e9207cd7b804354f6409032a1705c2491686e202e64fc05f147aa5aa45f9aa82627563f045937f5791b"; }; "deferred-leveldown@npm:5.3.0" = { filename = "deferred-leveldown-npm-5.3.0-01247ab5af-5631e15352.zip"; sha512 = "5631e153528bb9de1aa60d59a5065d1a519374c5e4c1d486f2190dba4008dcf5c2ee8dd7f2f81396fc4d5a6bb6e7d0055e3dfe68afe00da02adaa3bf329addf7"; }; +"define-data-property@npm:1.1.4" = { filename = "define-data-property-npm-1.1.4-4cbd8efc51-8068ee6cab.zip"; sha512 = "8068ee6cab694d409ac25936eb861eea704b7763f7f342adbdfe337fc27c78d7ae0eff2364b2917b58c508d723c7a074326d068eef2e45c4edcd85cf94d0313b"; }; "define-properties@npm:1.1.4" = { filename = "define-properties-npm-1.1.4-85ee575655-ce0aef3f9e.zip"; sha512 = "ce0aef3f9eb193562b5cfb79b2d2c86b6a109dfc9fdcb5f45d680631a1a908c06824ddcdb72b7573b54e26ace07f0a23420aaba0d5c627b34d2c1de8ef527e2b"; }; "defined@npm:1.0.1" = { filename = "defined-npm-1.0.1-7471d27847-b1a852300b.zip"; sha512 = "b1a852300bdb57f297289b55eafdd0c517afaa3ec8190e78fce91b9d8d0c0369d4505ecbdacfd3d98372e664f4a267d9bd793938d4a8c76209c9d9516fbe2101"; }; "degenerator@npm:3.0.2" = { filename = "degenerator-npm-3.0.2-3b38df9d12-6a8fffe1dd.zip"; sha512 = "6a8fffe1ddde692931a1d74c0636d9e6963f2aa16748d4b95f4833cdcbe8df571e5c127e4f1d625a4c340cc60f5a969ac9e5aa14baecfb6f69b85638e180cd97"; }; @@ -1277,6 +1283,8 @@ cacheEntries = { "errno@npm:0.1.8" = { filename = "errno-npm-0.1.8-10ebc185bf-1271f7b9fb.zip"; sha512 = "1271f7b9fbb3bcbec76ffde932485d1e3561856d21d847ec613a9722ee924cdd4e523a62dc71a44174d91e898fe21fdc8d5b50823f4b5e0ce8c35c8271e6ef4a"; }; "error-ex@npm:1.3.2" = { filename = "error-ex-npm-1.3.2-5654f80c0f-c1c2b8b65f.zip"; sha512 = "c1c2b8b65f9c91b0f9d75f0debaa7ec5b35c266c2cac5de412c1a6de86d4cbae04ae44e510378cb14d032d0645a36925d0186f8bb7367bcc629db256b743a001"; }; "es-abstract@npm:1.20.4" = { filename = "es-abstract-npm-1.20.4-543318afab-89297cc785.zip"; sha512 = "89297cc785c31aedf961a603d5a07ed16471e435d3a1b6d070b54f157cf48454b95cda2ac55e4b86ff4fe3276e835fcffd2771578e6fa634337da49b26826141"; }; +"es-define-property@npm:1.0.0" = { filename = "es-define-property-npm-1.0.0-e23aa9b242-f66ece0a88.zip"; sha512 = "f66ece0a887b6dca71848fa71f70461357c0e4e7249696f81bad0a1f347eed7b31262af4a29f5d726dc026426f085483b6b90301855e647aa8e21936f07293c6"; }; +"es-errors@npm:1.3.0" = { filename = "es-errors-npm-1.3.0-fda0c9b8a8-ec1414527a.zip"; sha512 = "ec1414527a0ccacd7f15f4a3bc66e215f04f595ba23ca75cdae0927af099b5ec865f9f4d33e9d7e86f512f252876ac77d4281a7871531a50678132429b1271b5"; }; "es-get-iterator@npm:1.1.2" = { filename = "es-get-iterator-npm-1.1.2-e8db4dc1b9-f75e66acb6.zip"; sha512 = "f75e66acb6a45686fa08b3ade9c9421a70d36a0c43ed4363e67f4d7aab2226cb73dd977cb48abbaf75721b946d3cd810682fcf310c7ad0867802fbf929b17dcf"; }; "es-module-lexer@npm:0.9.3" = { filename = "es-module-lexer-npm-0.9.3-ff6236dadb-84bbab23c3.zip"; sha512 = "84bbab23c396281db2c906c766af58b1ae2a1a2599844a504df10b9e8dc77ec800b3211fdaa133ff700f5703d791198807bba25d9667392d27a5e9feda344da8"; }; "es-shim-unscopables@npm:1.0.0" = { filename = "es-shim-unscopables-npm-1.0.0-06186593f1-83e95cadbb.zip"; sha512 = "83e95cadbb6ee44d3644dfad60dcad7929edbc42c85e66c3e99aefd68a3a5c5665f2686885cddb47dfeabfd77bd5ea5a7060f2092a955a729bbd8834f0d86fa1"; }; @@ -1326,7 +1334,7 @@ cacheEntries = { "estraverse@npm:5.3.0" = { filename = "estraverse-npm-5.3.0-03284f8f63-072780882d.zip"; sha512 = "072780882dc8416ad144f8fe199628d2b3e7bbc9989d9ed43795d2c90309a2047e6bc5979d7e2322a341163d22cfad9e21f4110597fe487519697389497e4e2b"; }; "esutils@npm:2.0.3" = { filename = "esutils-npm-2.0.3-f865beafd5-22b5b08f74.zip"; sha512 = "22b5b08f74737379a840b8ed2036a5fb35826c709ab000683b092d9054e5c2a82c27818f12604bfc2a9a76b90b6834ef081edbc1c7ae30d1627012e067c6ec87"; }; "etag@npm:1.8.1" = { filename = "etag-npm-1.8.1-54a3b989d9-571aeb3dbe.zip"; sha512 = "571aeb3dbe0f2bbd4e4fadbdb44f325fc75335cd5f6f6b6a091e6a06a9f25ed5392f0863c5442acb0646787446e816f13cbfc6edce5b07658541dff573cab1ff"; }; -"ethereum-cryptography@npm:2.1.2" = { filename = "ethereum-cryptography-npm-2.1.2-dde1258735-2e8f7b8cc9.zip"; sha512 = "2e8f7b8cc90232ae838ab6a8167708e8362621404d26e79b5d9e762c7b53d699f7520aff358d9254de658fcd54d2d0af168ff909943259ed27dc4cef2736410c"; }; +"ethereum-cryptography@npm:2.1.3" = { filename = "ethereum-cryptography-npm-2.1.3-b42d3b0b51-7f9c14f868.zip"; sha512 = "7f9c14f868a588641179cace3eb86c332c4743290865db699870710253cabc4dc74bd4bce5e7bc6db667482e032e94d6f79521219eb6be5dc422059d279a27b7"; }; "event-target-shim@npm:5.0.1" = { filename = "event-target-shim-npm-5.0.1-cb48709025-1ffe3bb22a.zip"; sha512 = "1ffe3bb22a6d51bdeb6bf6f7cf97d2ff4a74b017ad12284cc9e6a279e727dc30a5de6bb613e5596ff4dc3e517841339ad09a7eec44266eccb1aa201a30448166"; }; "eventemitter3@npm:1.1.1" = { filename = "eventemitter3-npm-1.1.1-d08a8a198c-fbab15f99a.zip"; sha512 = "fbab15f99a70238966d8327c33a526bd0c4ebe38f4a963d1fc2bb341228edd6769fcf07bcdf1c3165abc45000865a9e26eaf66b257b0a1ba70ef54387c3acc0a"; }; "eventemitter3@npm:4.0.7" = { filename = "eventemitter3-npm-4.0.7-7afcdd74ae-1875311c42.zip"; sha512 = "1875311c42fcfe9c707b2712c32664a245629b42bb0a5a84439762dd0fd637fc54d078155ea83c2af9e0323c9ac13687e03cfba79b03af9f40c89b4960099374"; }; @@ -1423,6 +1431,7 @@ cacheEntries = { "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=18f3a7" = { filename = "fsevents-patch-3340e2eb10-8.zip"; sha512 = "edbd0fd80be379c14409605f77e52fdc78a119e17f875e8b90a220c3e5b29e54a1477c21d91fd30b957ea4866406dc3ff87b61432d2840ff8866b309e5866140"; }; "ftp@npm:0.3.10" = { filename = "ftp-npm-0.3.10-348fb9ac23-ddd313c1d4.zip"; sha512 = "ddd313c1d44eb7429f3a7d77a0155dc8fe86a4c64dca58f395632333ce4b4e74c61413c6e0ef66ea3f3d32d905952fbb6d028c7117d522f793eb1fa282e17357"; }; "function-bind@npm:1.1.1" = { filename = "function-bind-npm-1.1.1-b56b322ae9-b32fbaebb3.zip"; sha512 = "b32fbaebb3f8ec4969f033073b43f5c8befbb58f1a79e12f1d7490358150359ebd92f49e72ff0144f65f2c48ea2a605bff2d07965f548f6474fd8efd95bf361a"; }; +"function-bind@npm:1.1.2" = { filename = "function-bind-npm-1.1.2-7a55be9b03-2b0ff4ce70.zip"; sha512 = "2b0ff4ce708d99715ad14a6d1f894e2a83242e4a52ccfcefaee5e40050562e5f6dafc1adbb4ce2d4ab47279a45dc736ab91ea5042d843c3c092820dfe032efb1"; }; "function.prototype.name@npm:1.1.5" = { filename = "function.prototype.name-npm-1.1.5-e776a642bb-acd21d733a.zip"; sha512 = "acd21d733a9b649c2c442f067567743214af5fa248dbeee69d8278ce7df3329ea5abac572be9f7470b4ec1cd4d8f1040e3c5caccf98ebf2bf861a0deab735c27"; }; "functional-red-black-tree@npm:1.0.1" = { filename = "functional-red-black-tree-npm-1.0.1-ccfe924dcd-ca6c170f37.zip"; sha512 = "ca6c170f37640e2d94297da8bb4bf27a1d12bea3e00e6a3e007fd7aa32e37e000f5772acf941b4e4f3cf1c95c3752033d0c509af157ad8f526e7f00723b9eb9f"; }; "functions-have-names@npm:1.2.3" = { filename = "functions-have-names-npm-1.2.3-e5cf1e2208-c3f1f5ba20.zip"; sha512 = "c3f1f5ba20f4e962efb71344ce0a40722163e85bee2101ce25f88214e78182d2d2476aa85ef37950c579eb6cf6ee811c17b3101bb84004bb75655f3e33f3fdb5"; }; @@ -1435,6 +1444,7 @@ cacheEntries = { "get-amd-module-type@npm:3.0.2" = { filename = "get-amd-module-type-npm-3.0.2-466fbb8aa0-d16fac5037.zip"; sha512 = "d16fac5037f63027992e6ebd2d642e6d4feef2f8fa71ff3da6aa76006e05b3dcd4aa6044b4c5966f13ba5d412fd7c1367d910df86b58f9c13f53cbb35d2e4b72"; }; "get-caller-file@npm:2.0.5" = { filename = "get-caller-file-npm-2.0.5-80e8a86305-b9769a836d.zip"; sha512 = "b9769a836d2a98c3ee734a88ba712e62703f1df31b94b784762c433c27a386dd6029ff55c2a920c392e33657d80191edbf18c61487e198844844516f843496b9"; }; "get-intrinsic@npm:1.1.3" = { filename = "get-intrinsic-npm-1.1.3-b6c7bd1010-152d79e872.zip"; sha512 = "152d79e87251d536cf880ba75cfc3d6c6c50e12b3a64e1ea960e73a3752b47c69f46034456eae1b0894359ce3bc64c55c186f2811f8a788b75b638b06fab228a"; }; +"get-intrinsic@npm:1.2.4" = { filename = "get-intrinsic-npm-1.2.4-1dad3427b2-414e3cdf2c.zip"; sha512 = "414e3cdf2c203d1b9d7d33111df746a4512a1aa622770b361dadddf8ed0b5aeb26c560f49ca077e24bfafb0acb55ca908d1f709216ccba33ffc548ec8a79a951"; }; "get-own-enumerable-property-symbols@npm:3.0.2" = { filename = "get-own-enumerable-property-symbols-npm-3.0.2-f143f9e8d3-8f0331f141.zip"; sha512 = "8f0331f14159f939830884799f937343c8c0a2c330506094bc12cbee3665d88337fe97a4ea35c002cc2bdba0f5d9975ad7ec3abb925015cdf2a93e76d4759ede"; }; "get-package-type@npm:0.1.0" = { filename = "get-package-type-npm-0.1.0-6c70cdc8ab-bba0811116.zip"; sha512 = "bba0811116d11e56d702682ddef7c73ba3481f114590e705fc549f4d868972263896af313c57a25c076e3c0d567e11d919a64ba1b30c879be985fc9d44f96148"; }; "get-pkg-repo@npm:4.2.1" = { filename = "get-pkg-repo-npm-4.2.1-b1cd052cb4-5abf169137.zip"; sha512 = "5abf169137665e45b09a857b33ad2fdcf2f4a09f0ecbd0ebdd789a7ce78c39186a21f58621127eb724d2d4a3a7ee8e6bd4ac7715efda01ad5200665afc218e0d"; }; @@ -1477,6 +1487,7 @@ cacheEntries = { "globule@npm:1.3.4" = { filename = "globule-npm-1.3.4-b973c73701-258b6865c7.zip"; sha512 = "258b6865c77d54fbd4c91dd6931d99baf81b1485fdf4bd2c053b1a10eab015163cb646e6c96812d5c8b027fb07adfc0b7c7fb13bbbb571f3c12ea60bd7fda2f5"; }; "gonzales-pe@npm:4.3.0" = { filename = "gonzales-pe-npm-4.3.0-82921c6976-49d60fc49a.zip"; sha512 = "49d60fc49ad35639e5d55923c1516d3ec2e4de5e6e5913ec3458a479b66623e54a060d568295349b0bb9f96ee970c473ff984d4b82a5cfeaf736c55f0d6dc3b7"; }; "google-protobuf@npm:3.6.1" = { filename = "google-protobuf-npm-3.6.1-d7d324a989-80802bbb29.zip"; sha512 = "80802bbb29e6d9883dbcbf6fe2b835e98d13a2887863b432884b71c9bd8833b799af914e7321914e04934ee3c08ff76d3cceca9d15672986f01121080c01c227"; }; +"gopd@npm:1.0.1" = { filename = "gopd-npm-1.0.1-10c1d0b534-a5ccfb8806.zip"; sha512 = "a5ccfb8806e0917a94e0b3de2af2ea4979c1da920bc381667c260e00e7cafdbe844e2cb9c5bcfef4e5412e8bf73bab837285bc35c7ba73aaaf0134d4583393a6"; }; "got@npm:11.8.5" = { filename = "got-npm-11.8.5-787b5e3116-2de8a1bbda.zip"; sha512 = "2de8a1bbda4e9b6b2b72b2d2100bc055a59adc1740529e631f61feb44a8b9a1f9f8590941ed9da9df0090b6d6d0ed8ffee94cd9ac086ec3409b392b33440f7d2"; }; "graceful-fs@npm:4.2.10" = { filename = "graceful-fs-npm-4.2.10-79c70989ca-3f109d70ae.zip"; sha512 = "3f109d70ae123951905d85032ebeae3c2a5a7a997430df00ea30df0e3a6c60cf6689b109654d6fdacd28810a053348c4d14642da1d075049e6be1ba5216218da"; }; "graceful-fs@npm:4.2.11" = { filename = "graceful-fs-npm-4.2.11-24bb648a68-ac85f94da9.zip"; sha512 = "ac85f94da92d8eb6b7f5a8b20ce65e43d66761c55ce85ac96df6865308390da45a8d3f0296dd3a663de65d30ba497bd46c696cc1e248c72b13d6d567138a4fc7"; }; @@ -1491,12 +1502,15 @@ cacheEntries = { "has-flag@npm:3.0.0" = { filename = "has-flag-npm-3.0.0-16ac11fe05-4a15638b45.zip"; sha512 = "4a15638b454bf086c8148979aae044dd6e39d63904cd452d970374fa6a87623423da485dfb814e7be882e05c096a7ccf1ebd48e7e7501d0208d8384ff4dea73b"; }; "has-flag@npm:4.0.0" = { filename = "has-flag-npm-4.0.0-32af9f0536-261a135703.zip"; sha512 = "261a1357037ead75e338156b1f9452c016a37dcd3283a972a30d9e4a87441ba372c8b81f818cd0fbcd9c0354b4ae7e18b9e1afa1971164aef6d18c2b6095a8ad"; }; "has-property-descriptors@npm:1.0.0" = { filename = "has-property-descriptors-npm-1.0.0-56289b918d-a6d3f0a266.zip"; sha512 = "a6d3f0a266d0294d972e354782e872e2fe1b6495b321e6ef678c9b7a06a40408a6891817350c62e752adced73a94ac903c54734fee05bf65b1905ee1368194bb"; }; +"has-property-descriptors@npm:1.0.2" = { filename = "has-property-descriptors-npm-1.0.2-d7077d09f1-fcbb246ea2.zip"; sha512 = "fcbb246ea2838058be39887935231c6d5788babed499d0e9d0cc5737494c48aba4fe17ba1449e0d0fbbb1e36175442faa37f9c427ae357d6ccb1d895fbcd3de3"; }; +"has-proto@npm:1.0.3" = { filename = "has-proto-npm-1.0.3-b598da2961-fe7c3d50b3.zip"; sha512 = "fe7c3d50b33f50f3933a04413ed1f69441d21d2d2944f81036276d30635cad9279f6b43bc8f32036c31ebdfcf6e731150f46c1907ad90c669ffe9b066c3ba5c4"; }; "has-symbols@npm:1.0.3" = { filename = "has-symbols-npm-1.0.3-1986bff2c4-a054c40c63.zip"; sha512 = "a054c40c631c0d5741a8285010a0777ea0c068f99ed43e5d6eb12972da223f8af553a455132fdb0801bdcfa0e0f443c0c03a68d8555aa529b3144b446c3f2410"; }; "has-tostringtag@npm:1.0.0" = { filename = "has-tostringtag-npm-1.0.0-b1fcf3ab55-cc12eb28cb.zip"; sha512 = "cc12eb28cb6ae22369ebaad3a8ab0799ed61270991be88f208d508076a1e99abe4198c965935ce85ea90b60c94ddda73693b0920b58e7ead048b4a391b502c1c"; }; "has-unicode@npm:2.0.1" = { filename = "has-unicode-npm-2.0.1-893adb4747-1eab07a743.zip"; sha512 = "1eab07a7436512db0be40a710b29b5dc21fa04880b7f63c9980b706683127e3c1b57cb80ea96d47991bdae2dfe479604f6a1ba410106ee1046a41d1bd0814400"; }; "has@npm:1.0.3" = { filename = "has-npm-1.0.3-b7f00631c1-b9ad53d53b.zip"; sha512 = "b9ad53d53be4af90ce5d1c38331e712522417d017d5ef1ebd0507e07c2fbad8686fffb8e12ddecd4c39ca9b9b47431afbb975b8abf7f3c3b82c98e9aad052792"; }; "hash-base@npm:3.1.0" = { filename = "hash-base-npm-3.1.0-26fc5711dd-26b7e97ac3.zip"; sha512 = "26b7e97ac3de13cb23fc3145e7e3450b0530274a9562144fc2bf5c1e2983afd0e09ed7cc3b20974ba66039fad316db463da80eb452e7373e780cbee9a0d2f2dc"; }; "hash.js@npm:1.1.7" = { filename = "hash.js-npm-1.1.7-f1ad187358-e350096e65.zip"; sha512 = "e350096e659c62422b85fa508e4b3669017311aa4c49b74f19f8e1bc7f3a54a584fdfd45326d4964d6011f2b2d882e38bea775a96046f2a61b7779a979629d8f"; }; +"hasown@npm:2.0.2" = { filename = "hasown-npm-2.0.2-80fe6c9901-e8516f776a.zip"; sha512 = "e8516f776a15149ca6c6ed2ae3110c417a00b62260e222590e54aa367cbcd6ed99122020b37b7fbdf05748df57b265e70095d7bf35a47660587619b15ffb93db"; }; "hdr-histogram-js@npm:1.2.0" = { filename = "hdr-histogram-js-npm-1.2.0-dedc114db1-2d871a2d78.zip"; sha512 = "2d871a2d78b96b6d228ae4e760ca059962a700356172fc25bf8c7c9643693dfa665eae4c3144dc15429aa182302247d269b68c48b61f050a0c8b6560c7c6da76"; }; "he@npm:1.2.0" = { filename = "he-npm-1.2.0-3b73a2ff07-3d4d6babcc.zip"; sha512 = "3d4d6babccccd79c5c5a3f929a68af33360d6445587d628087f39a965079d84f18ce9c3d3f917ee1e3978916fc833bb8b29377c3b403f919426f91bc6965e7a7"; }; "hex2dec@npm:1.0.1" = { filename = "hex2dec-npm-1.0.1-2d5881bd54-7e83a37f36.zip"; sha512 = "7e83a37f36ef815c2a6ff7cae27680255ad5670ce41edc74a9e2eaaec716fd0ef9a452105ce814c628225b1795813cd7a2c92df70e381797e12403d65a1c9adc"; }; @@ -1705,7 +1719,7 @@ cacheEntries = { "json-schema@npm:0.4.0" = { filename = "json-schema-npm-0.4.0-e776313070-66389434c3.zip"; sha512 = "66389434c3469e698da0df2e7ac5a3281bcff75e797a5c127db7c5b56270e01ae13d9afa3c03344f76e32e81678337a8c912bdbb75101c62e487dc3778461d72"; }; "json-stable-stringify-without-jsonify@npm:1.0.1" = { filename = "json-stable-stringify-without-jsonify-npm-1.0.1-b65772b28b-cff44156dd.zip"; sha512 = "cff44156ddce9c67c44386ad5cddf91925fe06b1d217f2da9c4910d01f358c6e3989c4d5a02683c7a5667f9727ff05831f7aa8ae66c8ff691c556f0884d49215"; }; "json-stable-stringify@npm:1.0.1" = { filename = "json-stable-stringify-npm-1.0.1-65df019fbd-65d6cbf0fc.zip"; sha512 = "65d6cbf0fca72a4136999f65f4401cf39a129f7aeff0fdd987ac3d3423a2113659294045fb8377e6e20d865cac32b1b8d70f3d87346c9786adcee60661d96ca5"; }; -"json-stable-stringify@npm:1.0.2" = { filename = "json-stable-stringify-npm-1.0.2-214b247c1e-ec10863493.zip"; sha512 = "ec10863493fb728481ed7576551382768a173d5b884758db530def00523b862083a3fd70fee24b39e2f47f5f502e22f9a1489dd66da3535b63bf6241dbfca800"; }; +"json-stable-stringify@npm:1.1.1" = { filename = "json-stable-stringify-npm-1.1.1-ce64cfe309-e1ba06600f.zip"; sha512 = "e1ba06600fd278767eeff53f28e408e29c867e79abf564e7aadc3ce8f31f667258f8db278ef28831e45884dd687388fa1910f46e599fc19fb94c9afbbe3a4de8"; }; "json-stringify-nice@npm:1.1.4" = { filename = "json-stringify-nice-npm-1.1.4-0b0ddb188b-6ddf781148.zip"; sha512 = "6ddf781148b46857ab04e97f47be05f14c4304b86eb5478369edbeacd070c21c697269964b982fc977e8989d4c59091103b1d9dc291aba40096d6cbb9a392b72"; }; "json-stringify-safe@npm:5.0.1" = { filename = "json-stringify-safe-npm-5.0.1-064ddd6ab4-48ec0adad5.zip"; sha512 = "48ec0adad5280b8a96bb93f4563aa1667fd7a36334f79149abd42446d0989f2ddc58274b479f4819f1f00617957e6344c886c55d05a4e15ebb4ab931e4a6a8ee"; }; "json5@npm:1.0.2" = { filename = "json5-npm-1.0.2-9607f93e30-866458a8c5.zip"; sha512 = "866458a8c58a95a49bef3adba929c625e82532bcff1fe93f01d29cb02cac7c3fe1f4b79951b7792c2da9de0b32871a8401a6e3c5b36778ad852bf5b8a61165d7"; }; @@ -1939,6 +1953,7 @@ cacheEntries = { "node-domexception@npm:1.0.0" = { filename = "node-domexception-npm-1.0.0-e1e813b76f-ee1d37dd2a.zip"; sha512 = "ee1d37dd2a4eb26a8a92cd6b64dfc29caec72bff5e1ed9aba80c294f57a31ba4895a60fd48347cf17dd6e766da0ae87d75657dfd1f384ebfa60462c2283f5c7f"; }; "node-fetch@npm:2.6.12" = { filename = "node-fetch-npm-2.6.12-48619ce9d6-3bc1655203.zip"; sha512 = "3bc1655203d47ee8e313c0d96664b9673a3d4dd8002740318e9d27d14ef306693a4b2ef8d6525775056fd912a19e23f3ac0d7111ad8925877b7567b29a625592"; }; "node-fetch@npm:2.6.7" = { filename = "node-fetch-npm-2.6.7-777aa2a6df-8d816ffd1e.zip"; sha512 = "8d816ffd1ee22cab8301c7756ef04f3437f18dace86a1dae22cf81db8ef29c0bf6655f3215cb0cdb22b420b6fe141e64b26905e7f33f9377a7fa59135ea3e10b"; }; +"node-fetch@npm:2.7.0" = { filename = "node-fetch-npm-2.7.0-587d57004e-d76d2f5edb.zip"; sha512 = "d76d2f5edb451a3f05b15115ec89fc6be39de37c6089f1b6368df03b91e1633fd379a7e01b7ab05089a25034b2023d959b47e59759cb38d88341b2459e89d6e5"; }; "node-fetch@npm:3.3.1" = { filename = "node-fetch-npm-3.3.1-576511fc5a-62145fd3ba.zip"; sha512 = "62145fd3ba4770a76110bc31fdc0054ab2f5442b5ce96e9c4b39fc9e94a3d305560eec76e1165d9259eab866e02a8eecf9301062bb5dfc9f08a4d08b69d223dd"; }; "node-gyp-build@npm:4.1.1" = { filename = "node-gyp-build-npm-4.1.1-4743409fa0-959d42221c.zip"; sha512 = "959d42221cc44b92700003efae741652bc4e379e4cf375830ddde03ba43c89f99694bf0883078ed0d4e03ffe2f85decab0572e04068d3900b8538d165dbc17df"; }; "node-gyp-build@npm:4.5.0" = { filename = "node-gyp-build-npm-4.5.0-2538da6152-d888bae0fb.zip"; sha512 = "d888bae0fb88335f69af1b57a2294a931c5042f36e413d8d364c992c9ebfa0b96ffe773179a5a2c8f04b73856e8634e09cce108dbb9804396d3cc8c5455ff2db"; }; @@ -2290,6 +2305,7 @@ cacheEntries = { "serialize-javascript@npm:6.0.0" = { filename = "serialize-javascript-npm-6.0.0-0bb8a3c88d-56f90b562a.zip"; sha512 = "56f90b562a1bdc92e55afb3e657c6397c01a902c588c0fe3d4c490efdcc97dcd2a3074ba12df9e94630f33a5ce5b76a74784a7041294628a6f4306e0ec84bf93"; }; "serve-static@npm:1.15.0" = { filename = "serve-static-npm-1.15.0-86c81879f5-af57fc13be.zip"; sha512 = "af57fc13be40d90a12562e98c0b7855cf6e8bd4c107fe9a45c212bf023058d54a1871b1c89511c3958f70626fff47faeb795f5d83f8cf88514dbaeb2b724464d"; }; "set-blocking@npm:2.0.0" = { filename = "set-blocking-npm-2.0.0-49e2cffa24-6e65a05f7c.zip"; sha512 = "6e65a05f7cf7ebdf8b7c75b101e18c0b7e3dff4940d480efed8aad3a36a4005140b660fa1d804cb8bce911cac290441dc728084a30504d3516ac2ff7ad607b02"; }; +"set-function-length@npm:1.2.2" = { filename = "set-function-length-npm-1.2.2-243073748b-a8248bdacd.zip"; sha512 = "a8248bdacdf84cb0fab4637774d9fb3c7a8e6089866d04c817583ff48e14149c87044ce683d7f50759a8c50fb87c7a7e173535b06169c87ef76f5fb276dfff72"; }; "setprototypeof@npm:1.2.0" = { filename = "setprototypeof-npm-1.2.0-0fedbdcd3a-be18cbbf70.zip"; sha512 = "be18cbbf70e7d8097c97f713a2e76edf84e87299b40d085c6bf8b65314e994cc15e2e317727342fa6996e38e1f52c59720b53fe621e2eb593a6847bf0356db89"; }; "sha.js@npm:2.4.11" = { filename = "sha.js-npm-2.4.11-14868df4ca-ebd3f59d4b.zip"; sha512 = "ebd3f59d4b799000699097dadb831c8e3da3eb579144fd7eb7a19484cbcbb7aca3c68ba2bb362242eb09e33217de3b4ea56e4678184c334323eca24a58e3ad07"; }; "shallow-clone@npm:3.0.1" = { filename = "shallow-clone-npm-3.0.1-dab5873d0d-39b3dd9630.zip"; sha512 = "39b3dd9630a774aba288a680e7d2901f5c0eae7b8387fc5c8ea559918b29b3da144b7bdb990d7ccd9e11be05508ac9e459ce51d01fd65e583282f6ffafcba2e7"; }; diff --git a/yarn.lock b/yarn.lock index 38f248b2e73..432c4d6731e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2914,7 +2914,7 @@ __metadata: languageName: node linkType: hard -"@babel/runtime@npm:^7.17.2, @babel/runtime@npm:^7.23.2": +"@babel/runtime@npm:^7.17.2": version: 7.23.5 resolution: "@babel/runtime@npm:7.23.5" dependencies: @@ -2932,6 +2932,15 @@ __metadata: languageName: node linkType: hard +"@babel/runtime@npm:^7.23.4": + version: 7.24.4 + resolution: "@babel/runtime@npm:7.24.4" + dependencies: + regenerator-runtime: ^0.14.0 + checksum: 2f27d4c0ffac7ae7999ac0385e1106f2a06992a8bdcbf3da06adcac7413863cd08c198c2e4e970041bbea849e17f02e1df18875539b6afba76c781b6b59a07c3 + languageName: node + linkType: hard + "@babel/runtime@npm:^7.8.4": version: 7.20.0 resolution: "@babel/runtime@npm:7.20.0" @@ -3075,6 +3084,18 @@ __metadata: languageName: node linkType: hard +"@cardano-foundation/ledgerjs-hw-app-cardano@npm:^7.0.0": + version: 7.0.1 + resolution: "@cardano-foundation/ledgerjs-hw-app-cardano@npm:7.0.1" + dependencies: + "@ledgerhq/hw-transport": ^6.27.10 + base-x: ^3.0.5 + bech32: ^1.1.4 + int64-buffer: ^1.0.1 + checksum: 6ed9ae68049a45b7175d027bb76c02f67dde10d454b35b1f34960195c90d99a867b5ec2dc2ff8dc5c54f0da9df5c2da33c6e2dcf491ab1fce284f4f74d89fd7a + languageName: node + linkType: hard + "@cardano-ogmios/client@npm:5.6.0": version: 5.6.0 resolution: "@cardano-ogmios/client@npm:5.6.0" @@ -3453,7 +3474,7 @@ __metadata: version: 0.0.0-use.local resolution: "@cardano-sdk/hardware-ledger@workspace:packages/hardware-ledger" dependencies: - "@cardano-foundation/ledgerjs-hw-app-cardano": ^6.0.0 + "@cardano-foundation/ledgerjs-hw-app-cardano": ^7.0.0 "@cardano-sdk/core": "workspace:~" "@cardano-sdk/crypto": "workspace:~" "@cardano-sdk/key-management": "workspace:~" @@ -4925,12 +4946,12 @@ __metadata: languageName: node linkType: hard -"@noble/curves@npm:1.1.0, @noble/curves@npm:~1.1.0": - version: 1.1.0 - resolution: "@noble/curves@npm:1.1.0" +"@noble/curves@npm:1.3.0, @noble/curves@npm:~1.3.0": + version: 1.3.0 + resolution: "@noble/curves@npm:1.3.0" dependencies: - "@noble/hashes": 1.3.1 - checksum: 2658cdd3f84f71079b4e3516c47559d22cf4b55c23ac8ee9d2b1f8e5b72916d9689e59820e0f9d9cb4a46a8423af5b56dc6bb7782405c88be06a015180508db5 + "@noble/hashes": 1.3.3 + checksum: b65342ee66c4a440eee2978524412eabba9a9efdd16d6370e15218c6a7d80bddf35e66bb57ed52c0dfd32cb9a717b439ab3a72db618f1a0066dfebe3fd12a421 languageName: node linkType: hard @@ -4943,17 +4964,31 @@ __metadata: languageName: node linkType: hard -"@noble/hashes@npm:1.3.1, @noble/hashes@npm:^1.2.0": +"@noble/hashes@npm:1.3.2": + version: 1.3.2 + resolution: "@noble/hashes@npm:1.3.2" + checksum: fe23536b436539d13f90e4b9be843cc63b1b17666a07634a2b1259dded6f490be3d050249e6af98076ea8f2ea0d56f578773c2197f2aa0eeaa5fba5bc18ba474 + languageName: node + linkType: hard + +"@noble/hashes@npm:1.3.3, @noble/hashes@npm:~1.3.2": + version: 1.3.3 + resolution: "@noble/hashes@npm:1.3.3" + checksum: 8a6496d1c0c64797339bc694ad06cdfaa0f9e56cd0c3f68ae3666cfb153a791a55deb0af9c653c7ed2db64d537aa3e3054629740d2f2338bb1dcb7ab60cd205b + languageName: node + linkType: hard + +"@noble/hashes@npm:^1.2.0": version: 1.3.1 resolution: "@noble/hashes@npm:1.3.1" checksum: 7fdefc0f7a0c1ec27acc6ff88841793e3f93ec4ce6b8a6a12bfc0dd70ae6b7c4c82fe305fdfeda1735d5ad4a9eebe761e6693b3d355689c559e91242f4bc95b1 languageName: node linkType: hard -"@noble/hashes@npm:1.3.2, @noble/hashes@npm:^1.3.1, @noble/hashes@npm:~1.3.0, @noble/hashes@npm:~1.3.1": - version: 1.3.2 - resolution: "@noble/hashes@npm:1.3.2" - checksum: fe23536b436539d13f90e4b9be843cc63b1b17666a07634a2b1259dded6f490be3d050249e6af98076ea8f2ea0d56f578773c2197f2aa0eeaa5fba5bc18ba474 +"@noble/hashes@npm:^1.3.3": + version: 1.4.0 + resolution: "@noble/hashes@npm:1.4.0" + checksum: 8ba816ae26c90764b8c42493eea383716396096c5f7ba6bea559993194f49d80a73c081f315f4c367e51bd2d5891700bcdfa816b421d24ab45b41cb03e4f3342 languageName: node linkType: hard @@ -5608,31 +5643,31 @@ __metadata: languageName: node linkType: hard -"@scure/base@npm:~1.1.0": - version: 1.1.3 - resolution: "@scure/base@npm:1.1.3" - checksum: 1606ab8a4db898cb3a1ada16c15437c3bce4e25854fadc8eb03ae93cbbbac1ed90655af4b0be3da37e12056fef11c0374499f69b9e658c9e5b7b3e06353c630c +"@scure/base@npm:~1.1.4": + version: 1.1.6 + resolution: "@scure/base@npm:1.1.6" + checksum: d6deaae91deba99e87939af9e55d80edba302674983f32bba57f942e22b1726a83c62dc50d8f4370a5d5d35a212dda167fb169f4b0d0c297488d8604608fc3d3 languageName: node linkType: hard -"@scure/bip32@npm:1.3.1": - version: 1.3.1 - resolution: "@scure/bip32@npm:1.3.1" +"@scure/bip32@npm:1.3.3": + version: 1.3.3 + resolution: "@scure/bip32@npm:1.3.3" dependencies: - "@noble/curves": ~1.1.0 - "@noble/hashes": ~1.3.1 - "@scure/base": ~1.1.0 - checksum: 394d65f77a40651eba21a5096da0f4233c3b50d422864751d373fcf142eeedb94a1149f9ab1dbb078086dab2d0bc27e2b1afec8321bf22d4403c7df2fea5bfe2 + "@noble/curves": ~1.3.0 + "@noble/hashes": ~1.3.2 + "@scure/base": ~1.1.4 + checksum: f939ca733972622fcc1e61d4fdf170a0ad294b24ddb7ed7cdd4c467e1ef283b970154cb101cf5f1a7b64cf5337e917ad31135911dfc36b1d76625320167df2fa languageName: node linkType: hard -"@scure/bip39@npm:1.2.1": - version: 1.2.1 - resolution: "@scure/bip39@npm:1.2.1" +"@scure/bip39@npm:1.2.2": + version: 1.2.2 + resolution: "@scure/bip39@npm:1.2.2" dependencies: - "@noble/hashes": ~1.3.0 - "@scure/base": ~1.1.0 - checksum: c5bd6f1328fdbeae2dcdd891825b1610225310e5e62a4942714db51066866e4f7bef242c7b06a1b9dcc8043a4a13412cf5c5df76d3b10aa9e36b82e9b6e3eeaa + "@noble/hashes": ~1.3.2 + "@scure/base": ~1.1.4 + checksum: cb99505e6d2deef8e55e81df8c563ce8dbfdf1595596dc912bceadcf366c91b05a98130e928ecb090df74efdb20150b64acc4be55bc42768cab4d39a2833d234 languageName: node linkType: hard @@ -6132,7 +6167,7 @@ __metadata: languageName: node linkType: hard -"@solana/buffer-layout@npm:^4.0.0, @solana/buffer-layout@npm:^4.0.1": +"@solana/buffer-layout@npm:^4.0.1": version: 4.0.1 resolution: "@solana/buffer-layout@npm:4.0.1" dependencies: @@ -6142,14 +6177,14 @@ __metadata: linkType: hard "@solana/web3.js@npm:^1.87.6": - version: 1.87.6 - resolution: "@solana/web3.js@npm:1.87.6" + version: 1.91.4 + resolution: "@solana/web3.js@npm:1.91.4" dependencies: - "@babel/runtime": ^7.23.2 + "@babel/runtime": ^7.23.4 "@noble/curves": ^1.2.0 - "@noble/hashes": ^1.3.1 - "@solana/buffer-layout": ^4.0.0 - agentkeepalive: ^4.3.0 + "@noble/hashes": ^1.3.3 + "@solana/buffer-layout": ^4.0.1 + agentkeepalive: ^4.5.0 bigint-buffer: ^1.1.5 bn.js: ^5.2.1 borsh: ^0.7.0 @@ -6157,10 +6192,10 @@ __metadata: buffer: 6.0.3 fast-stable-stringify: ^1.0.0 jayson: ^4.1.0 - node-fetch: ^2.6.12 + node-fetch: ^2.7.0 rpc-websockets: ^7.5.1 superstruct: ^0.14.2 - checksum: 182eb2a953f6ebebdfbc7dfda031d1985fb1591a2aa38b388d5dfb9fd3df0fb53a3962373384dbd91df343e148ec3d42a579324effab9ca86f0560c4f6f08481 + checksum: 9f6ac2f64ac05043cb367c09d5b4f4b859060618dbffc7a27da35fccdac0be9bd84b83899c9547efedc061fa7e20af283a9bacff01972bd047089809facfbdfe languageName: node linkType: hard @@ -8317,7 +8352,7 @@ __metadata: languageName: node linkType: hard -"agentkeepalive@npm:^4.3.0": +"agentkeepalive@npm:^4.5.0": version: 4.5.0 resolution: "agentkeepalive@npm:4.5.0" dependencies: @@ -10126,6 +10161,19 @@ __metadata: languageName: node linkType: hard +"call-bind@npm:^1.0.5": + version: 1.0.7 + resolution: "call-bind@npm:1.0.7" + dependencies: + es-define-property: ^1.0.0 + es-errors: ^1.3.0 + function-bind: ^1.1.2 + get-intrinsic: ^1.2.4 + set-function-length: ^1.2.1 + checksum: 295c0c62b90dd6522e6db3b0ab1ce26bdf9e7404215bda13cfee25b626b5ff1a7761324d58d38b1ef1607fc65aca2d06e44d2e18d0dfc6c14b465b00d8660029 + languageName: node + linkType: hard + "call-me-maybe@npm:^1.0.1": version: 1.0.2 resolution: "call-me-maybe@npm:1.0.2" @@ -11834,6 +11882,17 @@ __metadata: languageName: node linkType: hard +"define-data-property@npm:^1.1.4": + version: 1.1.4 + resolution: "define-data-property@npm:1.1.4" + dependencies: + es-define-property: ^1.0.0 + es-errors: ^1.3.0 + gopd: ^1.0.1 + checksum: 8068ee6cab694d409ac25936eb861eea704b7763f7f342adbdfe337fc27c78d7ae0eff2364b2917b58c508d723c7a074326d068eef2e45c4edcd85cf94d0313b + languageName: node + linkType: hard + "define-properties@npm:^1.1.3, define-properties@npm:^1.1.4": version: 1.1.4 resolution: "define-properties@npm:1.1.4" @@ -12772,6 +12831,22 @@ __metadata: languageName: node linkType: hard +"es-define-property@npm:^1.0.0": + version: 1.0.0 + resolution: "es-define-property@npm:1.0.0" + dependencies: + get-intrinsic: ^1.2.4 + checksum: f66ece0a887b6dca71848fa71f70461357c0e4e7249696f81bad0a1f347eed7b31262af4a29f5d726dc026426f085483b6b90301855e647aa8e21936f07293c6 + languageName: node + linkType: hard + +"es-errors@npm:^1.3.0": + version: 1.3.0 + resolution: "es-errors@npm:1.3.0" + checksum: ec1414527a0ccacd7f15f4a3bc66e215f04f595ba23ca75cdae0927af099b5ec865f9f4d33e9d7e86f512f252876ac77d4281a7871531a50678132429b1271b5 + languageName: node + linkType: hard + "es-get-iterator@npm:^1.1.1": version: 1.1.2 resolution: "es-get-iterator@npm:1.1.2" @@ -13347,14 +13422,14 @@ __metadata: linkType: hard "ethereum-cryptography@npm:^2.0.0": - version: 2.1.2 - resolution: "ethereum-cryptography@npm:2.1.2" + version: 2.1.3 + resolution: "ethereum-cryptography@npm:2.1.3" dependencies: - "@noble/curves": 1.1.0 - "@noble/hashes": 1.3.1 - "@scure/bip32": 1.3.1 - "@scure/bip39": 1.2.1 - checksum: 2e8f7b8cc90232ae838ab6a8167708e8362621404d26e79b5d9e762c7b53d699f7520aff358d9254de658fcd54d2d0af168ff909943259ed27dc4cef2736410c + "@noble/curves": 1.3.0 + "@noble/hashes": 1.3.3 + "@scure/bip32": 1.3.3 + "@scure/bip39": 1.2.2 + checksum: 7f9c14f868a588641179cace3eb86c332c4743290865db699870710253cabc4dc74bd4bce5e7bc6db667482e032e94d6f79521219eb6be5dc422059d279a27b7 languageName: node linkType: hard @@ -14323,6 +14398,13 @@ __metadata: languageName: node linkType: hard +"function-bind@npm:^1.1.2": + version: 1.1.2 + resolution: "function-bind@npm:1.1.2" + checksum: 2b0ff4ce708d99715ad14a6d1f894e2a83242e4a52ccfcefaee5e40050562e5f6dafc1adbb4ce2d4ab47279a45dc736ab91ea5042d843c3c092820dfe032efb1 + languageName: node + linkType: hard + "function.prototype.name@npm:^1.1.5": version: 1.1.5 resolution: "function.prototype.name@npm:1.1.5" @@ -14448,6 +14530,19 @@ __metadata: languageName: node linkType: hard +"get-intrinsic@npm:^1.2.4": + version: 1.2.4 + resolution: "get-intrinsic@npm:1.2.4" + dependencies: + es-errors: ^1.3.0 + function-bind: ^1.1.2 + has-proto: ^1.0.1 + has-symbols: ^1.0.3 + hasown: ^2.0.0 + checksum: 414e3cdf2c203d1b9d7d33111df746a4512a1aa622770b361dadddf8ed0b5aeb26c560f49ca077e24bfafb0acb55ca908d1f709216ccba33ffc548ec8a79a951 + languageName: node + linkType: hard + "get-own-enumerable-property-symbols@npm:^3.0.0": version: 3.0.2 resolution: "get-own-enumerable-property-symbols@npm:3.0.2" @@ -14887,6 +14982,15 @@ __metadata: languageName: node linkType: hard +"gopd@npm:^1.0.1": + version: 1.0.1 + resolution: "gopd@npm:1.0.1" + dependencies: + get-intrinsic: ^1.1.3 + checksum: a5ccfb8806e0917a94e0b3de2af2ea4979c1da920bc381667c260e00e7cafdbe844e2cb9c5bcfef4e5412e8bf73bab837285bc35c7ba73aaaf0134d4583393a6 + languageName: node + linkType: hard + "got@npm:11.8.5, got@npm:^11.0.2, got@npm:^11.8.1, got@npm:^11.8.5": version: 11.8.5 resolution: "got@npm:11.8.5" @@ -15017,6 +15121,22 @@ __metadata: languageName: node linkType: hard +"has-property-descriptors@npm:^1.0.2": + version: 1.0.2 + resolution: "has-property-descriptors@npm:1.0.2" + dependencies: + es-define-property: ^1.0.0 + checksum: fcbb246ea2838058be39887935231c6d5788babed499d0e9d0cc5737494c48aba4fe17ba1449e0d0fbbb1e36175442faa37f9c427ae357d6ccb1d895fbcd3de3 + languageName: node + linkType: hard + +"has-proto@npm:^1.0.1": + version: 1.0.3 + resolution: "has-proto@npm:1.0.3" + checksum: fe7c3d50b33f50f3933a04413ed1f69441d21d2d2944f81036276d30635cad9279f6b43bc8f32036c31ebdfcf6e731150f46c1907ad90c669ffe9b066c3ba5c4 + languageName: node + linkType: hard + "has-symbols@npm:^1.0.1, has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": version: 1.0.3 resolution: "has-symbols@npm:1.0.3" @@ -15070,6 +15190,15 @@ __metadata: languageName: node linkType: hard +"hasown@npm:^2.0.0": + version: 2.0.2 + resolution: "hasown@npm:2.0.2" + dependencies: + function-bind: ^1.1.2 + checksum: e8516f776a15149ca6c6ed2ae3110c417a00b62260e222590e54aa367cbcd6ed99122020b37b7fbdf05748df57b265e70095d7bf35a47660587619b15ffb93db + languageName: node + linkType: hard + "hdr-histogram-js@npm:^1.0.0": version: 1.2.0 resolution: "hdr-histogram-js@npm:1.2.0" @@ -17157,11 +17286,14 @@ __metadata: linkType: hard "json-stable-stringify@npm:^1.0.2": - version: 1.0.2 - resolution: "json-stable-stringify@npm:1.0.2" + version: 1.1.1 + resolution: "json-stable-stringify@npm:1.1.1" dependencies: + call-bind: ^1.0.5 + isarray: ^2.0.5 jsonify: ^0.0.1 - checksum: ec10863493fb728481ed7576551382768a173d5b884758db530def00523b862083a3fd70fee24b39e2f47f5f502e22f9a1489dd66da3535b63bf6241dbfca800 + object-keys: ^1.1.1 + checksum: e1ba06600fd278767eeff53f28e408e29c867e79abf564e7aadc3ce8f31f667258f8db278ef28831e45884dd687388fa1910f46e599fc19fb94c9afbbe3a4de8 languageName: node linkType: hard @@ -19344,6 +19476,20 @@ __metadata: languageName: node linkType: hard +"node-fetch@npm:^2.7.0": + version: 2.7.0 + resolution: "node-fetch@npm:2.7.0" + dependencies: + whatwg-url: ^5.0.0 + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + checksum: d76d2f5edb451a3f05b15115ec89fc6be39de37c6089f1b6368df03b91e1633fd379a7e01b7ab05089a25034b2023d959b47e59759cb38d88341b2459e89d6e5 + languageName: node + linkType: hard + "node-fetch@npm:^3.3.1": version: 3.3.1 resolution: "node-fetch@npm:3.3.1" @@ -22919,6 +23065,20 @@ __metadata: languageName: node linkType: hard +"set-function-length@npm:^1.2.1": + version: 1.2.2 + resolution: "set-function-length@npm:1.2.2" + dependencies: + define-data-property: ^1.1.4 + es-errors: ^1.3.0 + function-bind: ^1.1.2 + get-intrinsic: ^1.2.4 + gopd: ^1.0.1 + has-property-descriptors: ^1.0.2 + checksum: a8248bdacdf84cb0fab4637774d9fb3c7a8e6089866d04c817583ff48e14149c87044ce683d7f50759a8c50fb87c7a7e173535b06169c87ef76f5fb276dfff72 + languageName: node + linkType: hard + "setprototypeof@npm:1.2.0": version: 1.2.0 resolution: "setprototypeof@npm:1.2.0"