@pythnetwork/pyth-solana-receiver 0.12.0 → 0.14.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.
Files changed (51) hide show
  1. package/README.md +0 -44
  2. package/dist/cjs/PythSolanaReceiver.cjs +442 -0
  3. package/{lib → dist/cjs}/PythSolanaReceiver.d.ts +10 -86
  4. package/dist/cjs/address.cjs +63 -0
  5. package/{lib → dist/cjs}/address.d.ts +0 -1
  6. package/dist/cjs/compute_budget.cjs +42 -0
  7. package/{lib → dist/cjs}/compute_budget.d.ts +0 -5
  8. package/dist/cjs/idl/pyth_push_oracle.cjs +132 -0
  9. package/{lib → dist/cjs}/idl/pyth_push_oracle.d.ts +0 -1
  10. package/dist/cjs/idl/pyth_solana_receiver.cjs +858 -0
  11. package/{lib → dist/cjs}/idl/pyth_solana_receiver.d.ts +0 -1
  12. package/dist/cjs/idl/wormhole_core_bridge_solana.cjs +1751 -0
  13. package/{lib → dist/cjs}/idl/wormhole_core_bridge_solana.d.ts +0 -1
  14. package/dist/cjs/index.cjs +44 -0
  15. package/dist/cjs/index.d.ts +5 -0
  16. package/dist/cjs/package.json +1 -0
  17. package/dist/cjs/vaa.cjs +192 -0
  18. package/{lib → dist/cjs}/vaa.d.ts +4 -30
  19. package/dist/esm/PythSolanaReceiver.d.ts +318 -0
  20. package/dist/esm/PythSolanaReceiver.mjs +462 -0
  21. package/dist/esm/address.d.ts +29 -0
  22. package/dist/esm/address.mjs +45 -0
  23. package/dist/esm/compute_budget.d.ts +28 -0
  24. package/dist/esm/compute_budget.mjs +21 -0
  25. package/dist/esm/idl/pyth_push_oracle.d.ts +117 -0
  26. package/{lib/idl/pyth_push_oracle.js → dist/esm/idl/pyth_push_oracle.mjs} +41 -38
  27. package/dist/esm/idl/pyth_solana_receiver.d.ts +840 -0
  28. package/{lib/idl/pyth_solana_receiver.js → dist/esm/idl/pyth_solana_receiver.mjs} +237 -231
  29. package/dist/esm/idl/wormhole_core_bridge_solana.d.ts +1606 -0
  30. package/{lib/idl/wormhole_core_bridge_solana.js → dist/esm/idl/wormhole_core_bridge_solana.mjs} +598 -465
  31. package/dist/esm/index.d.ts +5 -0
  32. package/dist/esm/index.mjs +5 -0
  33. package/dist/esm/package.json +1 -0
  34. package/dist/esm/vaa.d.ts +75 -0
  35. package/dist/esm/vaa.mjs +197 -0
  36. package/package.json +101 -13
  37. package/lib/PythSolanaReceiver.d.ts.map +0 -1
  38. package/lib/PythSolanaReceiver.js +0 -633
  39. package/lib/address.d.ts.map +0 -1
  40. package/lib/address.js +0 -46
  41. package/lib/compute_budget.d.ts.map +0 -1
  42. package/lib/compute_budget.js +0 -35
  43. package/lib/idl/pyth_push_oracle.d.ts.map +0 -1
  44. package/lib/idl/pyth_solana_receiver.d.ts.map +0 -1
  45. package/lib/idl/pyth_solana_receiver.json +0 -839
  46. package/lib/idl/wormhole_core_bridge_solana.d.ts.map +0 -1
  47. package/lib/index.d.ts +0 -6
  48. package/lib/index.d.ts.map +0 -1
  49. package/lib/index.js +0 -17
  50. package/lib/vaa.d.ts.map +0 -1
  51. package/lib/vaa.js +0 -270
@@ -0,0 +1,63 @@
1
+ // eslint-disable-next-line unicorn/prefer-node-protocol
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ function _export(target, all) {
7
+ for(var name in all)Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: Object.getOwnPropertyDescriptor(all, name).get
10
+ });
11
+ }
12
+ _export(exports, {
13
+ get DEFAULT_PUSH_ORACLE_PROGRAM_ID () {
14
+ return DEFAULT_PUSH_ORACLE_PROGRAM_ID;
15
+ },
16
+ get DEFAULT_RECEIVER_PROGRAM_ID () {
17
+ return DEFAULT_RECEIVER_PROGRAM_ID;
18
+ },
19
+ get DEFAULT_WORMHOLE_PROGRAM_ID () {
20
+ return DEFAULT_WORMHOLE_PROGRAM_ID;
21
+ },
22
+ get getConfigPda () {
23
+ return getConfigPda;
24
+ },
25
+ get getGuardianSetPda () {
26
+ return getGuardianSetPda;
27
+ },
28
+ get getRandomTreasuryId () {
29
+ return getRandomTreasuryId;
30
+ },
31
+ get getTreasuryPda () {
32
+ return getTreasuryPda;
33
+ }
34
+ });
35
+ const _buffer = require("buffer");
36
+ const _web3 = require("@solana/web3.js");
37
+ const DEFAULT_RECEIVER_PROGRAM_ID = new _web3.PublicKey("rec5EKMGg6MxZYaMdyBfgwp4d5rB9T1VQH5pJv5LtFJ");
38
+ const DEFAULT_WORMHOLE_PROGRAM_ID = new _web3.PublicKey("HDwcJBJXjL9FpJ7UBsYBtaDjsBUhuLCUYoz3zr8SWWaQ");
39
+ const DEFAULT_PUSH_ORACLE_PROGRAM_ID = new _web3.PublicKey("pythWSnswVUd12oZpeFP8e9CVaEqJg25g1Vtc2biRsT");
40
+ const getGuardianSetPda = (guardianSetIndex, wormholeProgramId)=>{
41
+ const guardianSetIndexBuf = _buffer.Buffer.alloc(4);
42
+ guardianSetIndexBuf.writeUInt32BE(guardianSetIndex, 0);
43
+ return _web3.PublicKey.findProgramAddressSync([
44
+ _buffer.Buffer.from("GuardianSet"),
45
+ guardianSetIndexBuf
46
+ ], wormholeProgramId)[0];
47
+ };
48
+ function getRandomTreasuryId() {
49
+ return Math.floor(Math.random() * 256);
50
+ }
51
+ const getTreasuryPda = (treasuryId, receiverProgramId)=>{
52
+ return _web3.PublicKey.findProgramAddressSync([
53
+ _buffer.Buffer.from("treasury"),
54
+ _buffer.Buffer.from([
55
+ treasuryId
56
+ ])
57
+ ], receiverProgramId)[0];
58
+ };
59
+ const getConfigPda = (receiverProgramId)=>{
60
+ return _web3.PublicKey.findProgramAddressSync([
61
+ _buffer.Buffer.from("config")
62
+ ], receiverProgramId)[0];
63
+ };
@@ -27,4 +27,3 @@ export declare const getTreasuryPda: (treasuryId: number, receiverProgramId: Pub
27
27
  * Returns the address of the config account from the Pyth Solana Receiver program.
28
28
  */
29
29
  export declare const getConfigPda: (receiverProgramId: PublicKey) => PublicKey;
30
- //# sourceMappingURL=address.d.ts.map
@@ -0,0 +1,42 @@
1
+ /**
2
+ * A hard-coded budget for the compute units required for the `verifyEncodedVaa` instruction in the Wormhole program.
3
+ */ "use strict";
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ function _export(target, all) {
8
+ for(var name in all)Object.defineProperty(target, name, {
9
+ enumerable: true,
10
+ get: Object.getOwnPropertyDescriptor(all, name).get
11
+ });
12
+ }
13
+ _export(exports, {
14
+ get CLOSE_ENCODED_VAA_COMPUTE_BUDGET () {
15
+ return CLOSE_ENCODED_VAA_COMPUTE_BUDGET;
16
+ },
17
+ get INIT_ENCODED_VAA_COMPUTE_BUDGET () {
18
+ return INIT_ENCODED_VAA_COMPUTE_BUDGET;
19
+ },
20
+ get POST_UPDATE_ATOMIC_COMPUTE_BUDGET () {
21
+ return POST_UPDATE_ATOMIC_COMPUTE_BUDGET;
22
+ },
23
+ get POST_UPDATE_COMPUTE_BUDGET () {
24
+ return POST_UPDATE_COMPUTE_BUDGET;
25
+ },
26
+ get UPDATE_PRICE_FEED_COMPUTE_BUDGET () {
27
+ return UPDATE_PRICE_FEED_COMPUTE_BUDGET;
28
+ },
29
+ get VERIFY_ENCODED_VAA_COMPUTE_BUDGET () {
30
+ return VERIFY_ENCODED_VAA_COMPUTE_BUDGET;
31
+ },
32
+ get WRITE_ENCODED_VAA_COMPUTE_BUDGET () {
33
+ return WRITE_ENCODED_VAA_COMPUTE_BUDGET;
34
+ }
35
+ });
36
+ const VERIFY_ENCODED_VAA_COMPUTE_BUDGET = 350_000;
37
+ const POST_UPDATE_ATOMIC_COMPUTE_BUDGET = 170_000;
38
+ const POST_UPDATE_COMPUTE_BUDGET = 35_000;
39
+ const UPDATE_PRICE_FEED_COMPUTE_BUDGET = 55_000;
40
+ const INIT_ENCODED_VAA_COMPUTE_BUDGET = 3000;
41
+ const WRITE_ENCODED_VAA_COMPUTE_BUDGET = 3000;
42
+ const CLOSE_ENCODED_VAA_COMPUTE_BUDGET = 30_000;
@@ -10,10 +10,6 @@ export declare const POST_UPDATE_ATOMIC_COMPUTE_BUDGET = 170000;
10
10
  * A hard-coded budget for the compute units required for the `postUpdate` instruction in the Pyth Solana Receiver program.
11
11
  */
12
12
  export declare const POST_UPDATE_COMPUTE_BUDGET = 35000;
13
- /**
14
- * A hard-coded budget for the compute units required for the `postTwapUpdate` instruction in the Pyth Solana Receiver program.
15
- */
16
- export declare const POST_TWAP_UPDATE_COMPUTE_BUDGET = 50000;
17
13
  /**
18
14
  * A hard-coded budget for the compute units required for the `updatePriceFeed` instruction in the Pyth Push Oracle program.
19
15
  */
@@ -30,4 +26,3 @@ export declare const WRITE_ENCODED_VAA_COMPUTE_BUDGET = 3000;
30
26
  * A hard-coded budget for the compute units required for the `closeEncodedVaa` instruction in the Wormhole program.
31
27
  */
32
28
  export declare const CLOSE_ENCODED_VAA_COMPUTE_BUDGET = 30000;
33
- //# sourceMappingURL=compute_budget.d.ts.map
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "IDL", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return IDL;
9
+ }
10
+ });
11
+ const IDL = {
12
+ version: "0.1.0",
13
+ name: "pyth_push_oracle",
14
+ instructions: [
15
+ {
16
+ name: "updatePriceFeed",
17
+ accounts: [
18
+ {
19
+ name: "payer",
20
+ isMut: true,
21
+ isSigner: true
22
+ },
23
+ {
24
+ name: "pythSolanaReceiver",
25
+ isMut: false,
26
+ isSigner: false
27
+ },
28
+ {
29
+ name: "encodedVaa",
30
+ isMut: false,
31
+ isSigner: false
32
+ },
33
+ {
34
+ name: "config",
35
+ isMut: false,
36
+ isSigner: false
37
+ },
38
+ {
39
+ name: "treasury",
40
+ isMut: true,
41
+ isSigner: false
42
+ },
43
+ {
44
+ name: "priceFeedAccount",
45
+ isMut: true,
46
+ isSigner: false
47
+ },
48
+ {
49
+ name: "systemProgram",
50
+ isMut: false,
51
+ isSigner: false
52
+ }
53
+ ],
54
+ args: [
55
+ {
56
+ name: "params",
57
+ type: {
58
+ defined: "PostUpdateParams"
59
+ }
60
+ },
61
+ {
62
+ name: "shardId",
63
+ type: "u16"
64
+ },
65
+ {
66
+ name: "feedId",
67
+ type: {
68
+ array: [
69
+ "u8",
70
+ 32
71
+ ]
72
+ }
73
+ }
74
+ ]
75
+ }
76
+ ],
77
+ types: [
78
+ {
79
+ name: "PostUpdateParams",
80
+ type: {
81
+ kind: "struct",
82
+ fields: [
83
+ {
84
+ name: "merklePriceUpdate",
85
+ type: {
86
+ defined: "MerklePriceUpdate"
87
+ }
88
+ },
89
+ {
90
+ name: "treasuryId",
91
+ type: "u8"
92
+ }
93
+ ]
94
+ }
95
+ },
96
+ {
97
+ name: "MerklePriceUpdate",
98
+ type: {
99
+ kind: "struct",
100
+ fields: [
101
+ {
102
+ name: "message",
103
+ type: "bytes"
104
+ },
105
+ {
106
+ name: "proof",
107
+ type: {
108
+ vec: {
109
+ array: [
110
+ "u8",
111
+ 20
112
+ ]
113
+ }
114
+ }
115
+ }
116
+ ]
117
+ }
118
+ }
119
+ ],
120
+ errors: [
121
+ {
122
+ code: 6000,
123
+ name: "UpdatesNotMonotonic",
124
+ msg: "Updates must be monotonically increasing"
125
+ },
126
+ {
127
+ code: 6001,
128
+ name: "PriceFeedMessageMismatch",
129
+ msg: "Trying to update price feed with the wrong feed id"
130
+ }
131
+ ]
132
+ };
@@ -115,4 +115,3 @@ export type PythPushOracle = {
115
115
  ];
116
116
  };
117
117
  export declare const IDL: PythPushOracle;
118
- //# sourceMappingURL=pyth_push_oracle.d.ts.map