Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@helium/currency-utils

Package Overview
Dependencies
Maintainers
0
Versions
199
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@helium/currency-utils - npm Package Compare versions

Comparing version 0.8.4 to 0.8.5

617

lib/cjs/pyth.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.IDL = void 0;
exports.IDL = {
version: "0.1.0",
name: "pyth_solana_receiver",
instructions: [
{
name: "initialize",
accounts: [
{
name: "payer",
isMut: true,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
{
name: "systemProgram",
isMut: false,
isSigner: false,
},
],
args: [
{
name: "initialConfig",
type: {
defined: "Config",
},
},
],
},
{
name: "requestGovernanceAuthorityTransfer",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [
{
name: "targetGovernanceAuthority",
type: "publicKey",
},
],
},
{
name: "acceptGovernanceAuthorityTransfer",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [],
},
{
name: "setDataSources",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [
{
name: "validDataSources",
type: {
vec: {
defined: "DataSource",
},
},
},
],
},
{
name: "setFee",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [
{
name: "singleUpdateFeeInLamports",
type: "u64",
},
],
},
{
name: "setWormholeAddress",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [
{
name: "wormhole",
type: "publicKey",
},
],
},
{
name: "setMinimumSignatures",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [
{
name: "minimumSignatures",
type: "u8",
},
],
},
{
name: "postUpdateAtomic",
docs: [
"Post a price update using a VAA and a MerklePriceUpdate.",
"This function allows you to post a price update in a single transaction.",
"Compared to post_update, it is less secure since you won't be able to verify all guardian signatures if you use this function because of transaction size limitations.",
"Typically, you can fit 5 guardian signatures in a transaction that uses this.",
],
accounts: [
{
name: "payer",
isMut: true,
isSigner: true,
},
{
name: "guardianSet",
isMut: false,
isSigner: false,
docs: [
"Instead we do the same steps in deserialize_guardian_set_checked.",
],
},
{
name: "config",
isMut: false,
isSigner: false,
},
{
name: "treasury",
isMut: true,
isSigner: false,
},
{
name: "priceUpdateAccount",
isMut: true,
isSigner: true,
docs: [
"The contraint is such that either the price_update_account is uninitialized or the payer is the write_authority.",
"Pubkey::default() is the SystemProgram on Solana and it can't sign so it's impossible that price_update_account.write_authority == Pubkey::default() once the account is initialized",
],
},
{
name: "systemProgram",
isMut: false,
isSigner: false,
},
{
name: "writeAuthority",
isMut: false,
isSigner: true,
},
],
args: [
{
name: "params",
type: {
defined: "PostUpdateAtomicParams",
},
},
],
},
{
name: "postUpdate",
docs: [
"Post a price update using an encoded_vaa account and a MerklePriceUpdate calldata.",
"This should be called after the client has already verified the Vaa via the Wormhole contract.",
"Check out target_chains/solana/cli/src/main.rs for an example of how to do this.",
],
accounts: [
{
name: "payer",
isMut: true,
isSigner: true,
},
{
name: "encodedVaa",
isMut: false,
isSigner: false,
},
{
name: "config",
isMut: false,
isSigner: false,
},
{
name: "treasury",
isMut: true,
isSigner: false,
},
{
name: "priceUpdateAccount",
isMut: true,
isSigner: true,
docs: [
"The contraint is such that either the price_update_account is uninitialized or the payer is the write_authority.",
"Pubkey::default() is the SystemProgram on Solana and it can't sign so it's impossible that price_update_account.write_authority == Pubkey::default() once the account is initialized",
],
},
{
name: "systemProgram",
isMut: false,
isSigner: false,
},
{
name: "writeAuthority",
isMut: false,
isSigner: true,
},
],
args: [
{
name: "params",
type: {
defined: "PostUpdateParams",
},
},
],
},
{
name: "reclaimRent",
accounts: [
{
name: "payer",
isMut: true,
isSigner: true,
},
{
name: "priceUpdateAccount",
isMut: true,
isSigner: false,
},
],
args: [],
},
],
accounts: [
{
name: "Config",
type: {
kind: "struct",
fields: [
{
name: "governanceAuthority",
type: "publicKey",
},
{
name: "targetGovernanceAuthority",
type: {
option: "publicKey",
},
},
{
name: "wormhole",
type: "publicKey",
},
{
name: "validDataSources",
type: {
vec: {
defined: "DataSource",
},
},
},
{
name: "singleUpdateFeeInLamports",
type: "u64",
},
{
name: "minimumSignatures",
type: "u8",
},
],
},
},
{
name: "priceUpdateV2",
type: {
kind: "struct",
fields: [
{
name: "writeAuthority",
type: "publicKey",
},
{
name: "verificationLevel",
type: {
defined: "VerificationLevel",
},
},
{
name: "priceMessage",
type: {
defined: "PriceFeedMessage",
},
},
{
name: "postedSlot",
type: "u64",
},
],
},
},
],
types: [
{
name: "PriceFeedMessage",
type: {
kind: "struct",
fields: [
{
name: "feedId",
type: {
array: ["u8", 32],
},
},
{
name: "price",
type: "i64",
},
{
name: "conf",
type: "u64",
},
{
name: "exponent",
type: "i32",
},
{
name: "publishTime",
type: "i64",
},
{
name: "prevPublishTime",
type: "i64",
},
{
name: "emaPrice",
type: "i64",
},
{
name: "emaConf",
type: "u64",
},
],
},
},
{
name: "MerklePriceUpdate",
type: {
kind: "struct",
fields: [
{
name: "message",
type: "bytes",
},
{
name: "proof",
type: {
vec: {
array: ["u8", 20],
},
},
},
],
},
},
{
name: "DataSource",
type: {
kind: "struct",
fields: [
{
name: "chain",
type: "u16",
},
{
name: "emitter",
type: "publicKey",
},
],
},
},
{
name: "PostUpdateAtomicParams",
type: {
kind: "struct",
fields: [
{
name: "vaa",
type: "bytes",
},
{
name: "merklePriceUpdate",
type: {
defined: "MerklePriceUpdate",
},
},
{
name: "treasuryId",
type: "u8",
},
],
},
},
{
name: "PostUpdateParams",
type: {
kind: "struct",
fields: [
{
name: "merklePriceUpdate",
type: {
defined: "MerklePriceUpdate",
},
},
{
name: "treasuryId",
type: "u8",
},
],
},
},
{
name: "VerificationLevel",
docs: [
"* This enum represents how many guardian signatures were checked for a Pythnet price update\n * If full, guardian quorum has been attained\n * If partial, at least config.minimum signatures have been verified, but in the case config.minimum_signatures changes in the future we also include the number of signatures that were checked",
],
type: {
kind: "enum",
variants: [
{
name: "Partial",
fields: [
{
name: "numSignatures",
type: "u8",
},
],
},
{
name: "Full",
},
],
},
},
],
errors: [
{
code: 6000,
name: "InvalidWormholeMessage",
msg: "Received an invalid wormhole message",
},
{
code: 6001,
name: "DeserializeMessageFailed",
msg: "An error occurred when deserializing the message",
},
{
code: 6002,
name: "InvalidPriceUpdate",
msg: "Received an invalid price update",
},
{
code: 6003,
name: "UnsupportedMessageType",
msg: "This type of message is not supported currently",
},
{
code: 6004,
name: "InvalidDataSource",
msg: "The tuple emitter chain, emitter doesn't match one of the valid data sources.",
},
{
code: 6005,
name: "InsufficientFunds",
msg: "Funds are insufficient to pay the receiving fee",
},
{
code: 6006,
name: "WrongWriteAuthority",
msg: "This signer can't write to price update account",
},
{
code: 6007,
name: "WrongVaaOwner",
msg: "The posted VAA account has the wrong owner.",
},
{
code: 6008,
name: "DeserializeVaaFailed",
msg: "An error occurred when deserializing the VAA.",
},
{
code: 6009,
name: "InsufficientGuardianSignatures",
msg: "The number of guardian signatures is below the minimum",
},
{
code: 6010,
name: "InvalidVaaVersion",
msg: "Invalid VAA version",
},
{
code: 6011,
name: "GuardianSetMismatch",
msg: "Guardian set version in the VAA doesn't match the guardian set passed",
},
{
code: 6012,
name: "InvalidGuardianOrder",
msg: "Guardian signature indices must be increasing",
},
{
code: 6013,
name: "InvalidGuardianIndex",
msg: "Guardian index exceeds the number of guardians in the set",
},
{
code: 6014,
name: "InvalidSignature",
msg: "A VAA signature is invalid",
},
{
code: 6015,
name: "InvalidGuardianKeyRecovery",
msg: "The recovered guardian public key doesn't match the guardian set",
},
{
code: 6016,
name: "WrongGuardianSetOwner",
msg: "The guardian set account is owned by the wrong program",
},
{
code: 6017,
name: "InvalidGuardianSetPda",
msg: "The Guardian Set account doesn't match the PDA derivation",
},
{
code: 6018,
name: "GuardianSetExpired",
msg: "The Guardian Set is expired",
},
{
code: 6019,
name: "GovernanceAuthorityMismatch",
msg: "The signer is not authorized to perform this governance action",
},
{
code: 6020,
name: "TargetGovernanceAuthorityMismatch",
msg: "The signer is not authorized to accept the governance authority",
},
{
code: 6021,
name: "NonexistentGovernanceAuthorityTransferRequest",
msg: "The governance authority needs to request a transfer first",
},
],
};
//# sourceMappingURL=pyth.js.map

617

lib/esm/src/pyth.js

@@ -1,2 +0,617 @@

export {};
export const IDL = {
version: "0.1.0",
name: "pyth_solana_receiver",
instructions: [
{
name: "initialize",
accounts: [
{
name: "payer",
isMut: true,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
{
name: "systemProgram",
isMut: false,
isSigner: false,
},
],
args: [
{
name: "initialConfig",
type: {
defined: "Config",
},
},
],
},
{
name: "requestGovernanceAuthorityTransfer",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [
{
name: "targetGovernanceAuthority",
type: "publicKey",
},
],
},
{
name: "acceptGovernanceAuthorityTransfer",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [],
},
{
name: "setDataSources",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [
{
name: "validDataSources",
type: {
vec: {
defined: "DataSource",
},
},
},
],
},
{
name: "setFee",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [
{
name: "singleUpdateFeeInLamports",
type: "u64",
},
],
},
{
name: "setWormholeAddress",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [
{
name: "wormhole",
type: "publicKey",
},
],
},
{
name: "setMinimumSignatures",
accounts: [
{
name: "payer",
isMut: false,
isSigner: true,
},
{
name: "config",
isMut: true,
isSigner: false,
},
],
args: [
{
name: "minimumSignatures",
type: "u8",
},
],
},
{
name: "postUpdateAtomic",
docs: [
"Post a price update using a VAA and a MerklePriceUpdate.",
"This function allows you to post a price update in a single transaction.",
"Compared to post_update, it is less secure since you won't be able to verify all guardian signatures if you use this function because of transaction size limitations.",
"Typically, you can fit 5 guardian signatures in a transaction that uses this.",
],
accounts: [
{
name: "payer",
isMut: true,
isSigner: true,
},
{
name: "guardianSet",
isMut: false,
isSigner: false,
docs: [
"Instead we do the same steps in deserialize_guardian_set_checked.",
],
},
{
name: "config",
isMut: false,
isSigner: false,
},
{
name: "treasury",
isMut: true,
isSigner: false,
},
{
name: "priceUpdateAccount",
isMut: true,
isSigner: true,
docs: [
"The contraint is such that either the price_update_account is uninitialized or the payer is the write_authority.",
"Pubkey::default() is the SystemProgram on Solana and it can't sign so it's impossible that price_update_account.write_authority == Pubkey::default() once the account is initialized",
],
},
{
name: "systemProgram",
isMut: false,
isSigner: false,
},
{
name: "writeAuthority",
isMut: false,
isSigner: true,
},
],
args: [
{
name: "params",
type: {
defined: "PostUpdateAtomicParams",
},
},
],
},
{
name: "postUpdate",
docs: [
"Post a price update using an encoded_vaa account and a MerklePriceUpdate calldata.",
"This should be called after the client has already verified the Vaa via the Wormhole contract.",
"Check out target_chains/solana/cli/src/main.rs for an example of how to do this.",
],
accounts: [
{
name: "payer",
isMut: true,
isSigner: true,
},
{
name: "encodedVaa",
isMut: false,
isSigner: false,
},
{
name: "config",
isMut: false,
isSigner: false,
},
{
name: "treasury",
isMut: true,
isSigner: false,
},
{
name: "priceUpdateAccount",
isMut: true,
isSigner: true,
docs: [
"The contraint is such that either the price_update_account is uninitialized or the payer is the write_authority.",
"Pubkey::default() is the SystemProgram on Solana and it can't sign so it's impossible that price_update_account.write_authority == Pubkey::default() once the account is initialized",
],
},
{
name: "systemProgram",
isMut: false,
isSigner: false,
},
{
name: "writeAuthority",
isMut: false,
isSigner: true,
},
],
args: [
{
name: "params",
type: {
defined: "PostUpdateParams",
},
},
],
},
{
name: "reclaimRent",
accounts: [
{
name: "payer",
isMut: true,
isSigner: true,
},
{
name: "priceUpdateAccount",
isMut: true,
isSigner: false,
},
],
args: [],
},
],
accounts: [
{
name: "Config",
type: {
kind: "struct",
fields: [
{
name: "governanceAuthority",
type: "publicKey",
},
{
name: "targetGovernanceAuthority",
type: {
option: "publicKey",
},
},
{
name: "wormhole",
type: "publicKey",
},
{
name: "validDataSources",
type: {
vec: {
defined: "DataSource",
},
},
},
{
name: "singleUpdateFeeInLamports",
type: "u64",
},
{
name: "minimumSignatures",
type: "u8",
},
],
},
},
{
name: "priceUpdateV2",
type: {
kind: "struct",
fields: [
{
name: "writeAuthority",
type: "publicKey",
},
{
name: "verificationLevel",
type: {
defined: "VerificationLevel",
},
},
{
name: "priceMessage",
type: {
defined: "PriceFeedMessage",
},
},
{
name: "postedSlot",
type: "u64",
},
],
},
},
],
types: [
{
name: "PriceFeedMessage",
type: {
kind: "struct",
fields: [
{
name: "feedId",
type: {
array: ["u8", 32],
},
},
{
name: "price",
type: "i64",
},
{
name: "conf",
type: "u64",
},
{
name: "exponent",
type: "i32",
},
{
name: "publishTime",
type: "i64",
},
{
name: "prevPublishTime",
type: "i64",
},
{
name: "emaPrice",
type: "i64",
},
{
name: "emaConf",
type: "u64",
},
],
},
},
{
name: "MerklePriceUpdate",
type: {
kind: "struct",
fields: [
{
name: "message",
type: "bytes",
},
{
name: "proof",
type: {
vec: {
array: ["u8", 20],
},
},
},
],
},
},
{
name: "DataSource",
type: {
kind: "struct",
fields: [
{
name: "chain",
type: "u16",
},
{
name: "emitter",
type: "publicKey",
},
],
},
},
{
name: "PostUpdateAtomicParams",
type: {
kind: "struct",
fields: [
{
name: "vaa",
type: "bytes",
},
{
name: "merklePriceUpdate",
type: {
defined: "MerklePriceUpdate",
},
},
{
name: "treasuryId",
type: "u8",
},
],
},
},
{
name: "PostUpdateParams",
type: {
kind: "struct",
fields: [
{
name: "merklePriceUpdate",
type: {
defined: "MerklePriceUpdate",
},
},
{
name: "treasuryId",
type: "u8",
},
],
},
},
{
name: "VerificationLevel",
docs: [
"* This enum represents how many guardian signatures were checked for a Pythnet price update\n * If full, guardian quorum has been attained\n * If partial, at least config.minimum signatures have been verified, but in the case config.minimum_signatures changes in the future we also include the number of signatures that were checked",
],
type: {
kind: "enum",
variants: [
{
name: "Partial",
fields: [
{
name: "numSignatures",
type: "u8",
},
],
},
{
name: "Full",
},
],
},
},
],
errors: [
{
code: 6000,
name: "InvalidWormholeMessage",
msg: "Received an invalid wormhole message",
},
{
code: 6001,
name: "DeserializeMessageFailed",
msg: "An error occurred when deserializing the message",
},
{
code: 6002,
name: "InvalidPriceUpdate",
msg: "Received an invalid price update",
},
{
code: 6003,
name: "UnsupportedMessageType",
msg: "This type of message is not supported currently",
},
{
code: 6004,
name: "InvalidDataSource",
msg: "The tuple emitter chain, emitter doesn't match one of the valid data sources.",
},
{
code: 6005,
name: "InsufficientFunds",
msg: "Funds are insufficient to pay the receiving fee",
},
{
code: 6006,
name: "WrongWriteAuthority",
msg: "This signer can't write to price update account",
},
{
code: 6007,
name: "WrongVaaOwner",
msg: "The posted VAA account has the wrong owner.",
},
{
code: 6008,
name: "DeserializeVaaFailed",
msg: "An error occurred when deserializing the VAA.",
},
{
code: 6009,
name: "InsufficientGuardianSignatures",
msg: "The number of guardian signatures is below the minimum",
},
{
code: 6010,
name: "InvalidVaaVersion",
msg: "Invalid VAA version",
},
{
code: 6011,
name: "GuardianSetMismatch",
msg: "Guardian set version in the VAA doesn't match the guardian set passed",
},
{
code: 6012,
name: "InvalidGuardianOrder",
msg: "Guardian signature indices must be increasing",
},
{
code: 6013,
name: "InvalidGuardianIndex",
msg: "Guardian index exceeds the number of guardians in the set",
},
{
code: 6014,
name: "InvalidSignature",
msg: "A VAA signature is invalid",
},
{
code: 6015,
name: "InvalidGuardianKeyRecovery",
msg: "The recovered guardian public key doesn't match the guardian set",
},
{
code: 6016,
name: "WrongGuardianSetOwner",
msg: "The guardian set account is owned by the wrong program",
},
{
code: 6017,
name: "InvalidGuardianSetPda",
msg: "The Guardian Set account doesn't match the PDA derivation",
},
{
code: 6018,
name: "GuardianSetExpired",
msg: "The Guardian Set is expired",
},
{
code: 6019,
name: "GovernanceAuthorityMismatch",
msg: "The signer is not authorized to perform this governance action",
},
{
code: 6020,
name: "TargetGovernanceAuthorityMismatch",
msg: "The signer is not authorized to accept the governance authority",
},
{
code: 6021,
name: "NonexistentGovernanceAuthorityTransferRequest",
msg: "The governance authority needs to request a transfer first",
},
],
};
//# sourceMappingURL=pyth.js.map

4

package.json
{
"name": "@helium/currency-utils",
"version": "0.8.4",
"version": "0.8.5",
"description": "Currency utilities",

@@ -34,3 +34,3 @@ "homepage": "https://github.com/helium/helium-program-library#readme",

},
"gitHead": "a2490e09125064e86d717ca9098a1eabc06bf290"
"gitHead": "09013f30ed8725d41a22d57f97056726bb37ee86"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc