@wormhole-foundation/sdk-solana-tokenbridge 3.9.0 → 3.10.0-beta.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 (63) hide show
  1. package/dist/cjs/tokenBridge.d.ts.map +1 -1
  2. package/dist/cjs/tokenBridge.js +83 -18
  3. package/dist/cjs/tokenBridge.js.map +1 -1
  4. package/dist/cjs/utils/tokenBridge/instructions/approve.d.ts +1 -1
  5. package/dist/cjs/utils/tokenBridge/instructions/approve.d.ts.map +1 -1
  6. package/dist/cjs/utils/tokenBridge/instructions/approve.js +2 -2
  7. package/dist/cjs/utils/tokenBridge/instructions/approve.js.map +1 -1
  8. package/dist/cjs/utils/tokenBridge/instructions/attestToken.d.ts +2 -2
  9. package/dist/cjs/utils/tokenBridge/instructions/attestToken.d.ts.map +1 -1
  10. package/dist/cjs/utils/tokenBridge/instructions/attestToken.js +7 -5
  11. package/dist/cjs/utils/tokenBridge/instructions/attestToken.js.map +1 -1
  12. package/dist/cjs/utils/tokenBridge/instructions/completeNative.d.ts +2 -2
  13. package/dist/cjs/utils/tokenBridge/instructions/completeNative.d.ts.map +1 -1
  14. package/dist/cjs/utils/tokenBridge/instructions/completeNative.js +6 -4
  15. package/dist/cjs/utils/tokenBridge/instructions/completeNative.js.map +1 -1
  16. package/dist/cjs/utils/tokenBridge/instructions/transferNative.d.ts +2 -2
  17. package/dist/cjs/utils/tokenBridge/instructions/transferNative.d.ts.map +1 -1
  18. package/dist/cjs/utils/tokenBridge/instructions/transferNative.js +4 -5
  19. package/dist/cjs/utils/tokenBridge/instructions/transferNative.js.map +1 -1
  20. package/dist/cjs/utils/tokenBridge/instructions/transferNativeWithPayload.d.ts +2 -2
  21. package/dist/cjs/utils/tokenBridge/instructions/transferNativeWithPayload.d.ts.map +1 -1
  22. package/dist/cjs/utils/tokenBridge/instructions/transferNativeWithPayload.js +6 -4
  23. package/dist/cjs/utils/tokenBridge/instructions/transferNativeWithPayload.js.map +1 -1
  24. package/dist/cjs/utils/tokenBridge/instructions/transferWrapped.d.ts +2 -2
  25. package/dist/cjs/utils/tokenBridge/instructions/transferWrapped.d.ts.map +1 -1
  26. package/dist/cjs/utils/tokenBridge/instructions/transferWrapped.js +4 -5
  27. package/dist/cjs/utils/tokenBridge/instructions/transferWrapped.js.map +1 -1
  28. package/dist/cjs/utils/tokenBridge/instructions/transferWrappedWithPayload.d.ts +2 -2
  29. package/dist/cjs/utils/tokenBridge/instructions/transferWrappedWithPayload.d.ts.map +1 -1
  30. package/dist/cjs/utils/tokenBridge/instructions/transferWrappedWithPayload.js +4 -4
  31. package/dist/cjs/utils/tokenBridge/instructions/transferWrappedWithPayload.js.map +1 -1
  32. package/dist/esm/tokenBridge.d.ts.map +1 -1
  33. package/dist/esm/tokenBridge.js +84 -19
  34. package/dist/esm/tokenBridge.js.map +1 -1
  35. package/dist/esm/utils/tokenBridge/instructions/approve.d.ts +1 -1
  36. package/dist/esm/utils/tokenBridge/instructions/approve.d.ts.map +1 -1
  37. package/dist/esm/utils/tokenBridge/instructions/approve.js +2 -2
  38. package/dist/esm/utils/tokenBridge/instructions/approve.js.map +1 -1
  39. package/dist/esm/utils/tokenBridge/instructions/attestToken.d.ts +2 -2
  40. package/dist/esm/utils/tokenBridge/instructions/attestToken.d.ts.map +1 -1
  41. package/dist/esm/utils/tokenBridge/instructions/attestToken.js +7 -5
  42. package/dist/esm/utils/tokenBridge/instructions/attestToken.js.map +1 -1
  43. package/dist/esm/utils/tokenBridge/instructions/completeNative.d.ts +2 -2
  44. package/dist/esm/utils/tokenBridge/instructions/completeNative.d.ts.map +1 -1
  45. package/dist/esm/utils/tokenBridge/instructions/completeNative.js +6 -4
  46. package/dist/esm/utils/tokenBridge/instructions/completeNative.js.map +1 -1
  47. package/dist/esm/utils/tokenBridge/instructions/transferNative.d.ts +2 -2
  48. package/dist/esm/utils/tokenBridge/instructions/transferNative.d.ts.map +1 -1
  49. package/dist/esm/utils/tokenBridge/instructions/transferNative.js +4 -5
  50. package/dist/esm/utils/tokenBridge/instructions/transferNative.js.map +1 -1
  51. package/dist/esm/utils/tokenBridge/instructions/transferNativeWithPayload.d.ts +2 -2
  52. package/dist/esm/utils/tokenBridge/instructions/transferNativeWithPayload.d.ts.map +1 -1
  53. package/dist/esm/utils/tokenBridge/instructions/transferNativeWithPayload.js +6 -4
  54. package/dist/esm/utils/tokenBridge/instructions/transferNativeWithPayload.js.map +1 -1
  55. package/dist/esm/utils/tokenBridge/instructions/transferWrapped.d.ts +2 -2
  56. package/dist/esm/utils/tokenBridge/instructions/transferWrapped.d.ts.map +1 -1
  57. package/dist/esm/utils/tokenBridge/instructions/transferWrapped.js +4 -5
  58. package/dist/esm/utils/tokenBridge/instructions/transferWrapped.js.map +1 -1
  59. package/dist/esm/utils/tokenBridge/instructions/transferWrappedWithPayload.d.ts +2 -2
  60. package/dist/esm/utils/tokenBridge/instructions/transferWrappedWithPayload.d.ts.map +1 -1
  61. package/dist/esm/utils/tokenBridge/instructions/transferWrappedWithPayload.js +4 -4
  62. package/dist/esm/utils/tokenBridge/instructions/transferWrappedWithPayload.js.map +1 -1
  63. package/package.json +4 -4
@@ -2,7 +2,7 @@
2
2
  /// <reference types="node" />
3
3
  import type { Connection, PublicKeyInitData, TransactionInstruction } from '@solana/web3.js';
4
4
  import { PublicKey } from '@solana/web3.js';
5
- export declare function createTransferWrappedInstruction(connection: Connection, tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, message: PublicKeyInitData, from: PublicKeyInitData, fromOwner: PublicKeyInitData, tokenChain: number, tokenAddress: Buffer | Uint8Array, nonce: number, amount: bigint, fee: bigint, targetAddress: Buffer | Uint8Array, targetChain: number): TransactionInstruction;
5
+ export declare function createTransferWrappedInstruction(connection: Connection, tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, message: PublicKeyInitData, from: PublicKeyInitData, fromOwner: PublicKeyInitData, tokenChain: number, tokenAddress: Buffer | Uint8Array, tokenProgram: PublicKeyInitData, nonce: number, amount: bigint, fee: bigint, targetAddress: Buffer | Uint8Array, targetChain: number): TransactionInstruction;
6
6
  export interface TransferWrappedAccounts {
7
7
  payer: PublicKey;
8
8
  config: PublicKey;
@@ -22,5 +22,5 @@ export interface TransferWrappedAccounts {
22
22
  wormholeProgram: PublicKey;
23
23
  tokenProgram: PublicKey;
24
24
  }
25
- export declare function getTransferWrappedAccounts(tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, message: PublicKeyInitData, from: PublicKeyInitData, fromOwner: PublicKeyInitData, tokenChain: number, tokenAddress: Buffer | Uint8Array): TransferWrappedAccounts;
25
+ export declare function getTransferWrappedAccounts(tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, message: PublicKeyInitData, from: PublicKeyInitData, fromOwner: PublicKeyInitData, tokenChain: number, tokenAddress: Buffer | Uint8Array, tokenProgram: PublicKeyInitData): TransferWrappedAccounts;
26
26
  //# sourceMappingURL=transferWrapped.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transferWrapped.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/transferWrapped.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAW5C,wBAAgB,gCAAgC,CAC9C,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GAAG,UAAU,EACjC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,GAAG,UAAU,EAClC,WAAW,EAAE,MAAM,GAClB,sBAAsB,CA6BxB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,SAAS,CAAC;IACvB,eAAe,EAAE,SAAS,CAAC;IAC3B,cAAc,EAAE,SAAS,CAAC;IAC1B,eAAe,EAAE,SAAS,CAAC;IAC3B,eAAe,EAAE,SAAS,CAAC;IAC3B,gBAAgB,EAAE,SAAS,CAAC;IAC5B,oBAAoB,EAAE,SAAS,CAAC;IAChC,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,SAAS,CAAC;IACzB,eAAe,EAAE,SAAS,CAAC;IAC3B,YAAY,EAAE,SAAS,CAAC;CACzB;AAED,wBAAgB,0BAA0B,CACxC,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GAAG,UAAU,GAChC,uBAAuB,CAwCzB"}
1
+ {"version":3,"file":"transferWrapped.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/transferWrapped.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAU5C,wBAAgB,gCAAgC,CAC9C,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GAAG,UAAU,EACjC,YAAY,EAAE,iBAAiB,EAC/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,GAAG,UAAU,EAClC,WAAW,EAAE,MAAM,GAClB,sBAAsB,CA8BxB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,SAAS,CAAC;IACvB,eAAe,EAAE,SAAS,CAAC;IAC3B,cAAc,EAAE,SAAS,CAAC;IAC1B,eAAe,EAAE,SAAS,CAAC;IAC3B,eAAe,EAAE,SAAS,CAAC;IAC3B,gBAAgB,EAAE,SAAS,CAAC;IAC5B,oBAAoB,EAAE,SAAS,CAAC;IAChC,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,SAAS,CAAC;IACzB,eAAe,EAAE,SAAS,CAAC;IAC3B,YAAY,EAAE,SAAS,CAAC;CACzB;AAED,wBAAgB,0BAA0B,CACxC,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GAAG,UAAU,EACjC,YAAY,EAAE,iBAAiB,GAC9B,uBAAuB,CAwCzB"}
@@ -2,15 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getTransferWrappedAccounts = exports.createTransferWrappedInstruction = void 0;
4
4
  const web3_js_1 = require("@solana/web3.js");
5
- const spl_token_1 = require("@solana/spl-token");
6
5
  const program_js_1 = require("../program.js");
7
6
  const sdk_solana_core_1 = require("@wormhole-foundation/sdk-solana-core");
8
7
  const index_js_1 = require("./../accounts/index.js");
9
- function createTransferWrappedInstruction(connection, tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress, nonce, amount, fee, targetAddress, targetChain) {
8
+ function createTransferWrappedInstruction(connection, tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress, tokenProgram, nonce, amount, fee, targetAddress, targetChain) {
10
9
  const methods = (0, program_js_1.createReadOnlyTokenBridgeProgramInterface)(tokenBridgeProgramId, connection).methods.transferWrapped(nonce, amount, fee, Buffer.from(targetAddress), targetChain);
11
10
  // @ts-ignore
12
11
  return methods._ixFn(...methods._args, {
13
- accounts: getTransferWrappedAccounts(tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress),
12
+ accounts: getTransferWrappedAccounts(tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress, tokenProgram),
14
13
  signers: undefined,
15
14
  remainingAccounts: undefined,
16
15
  preInstructions: undefined,
@@ -18,7 +17,7 @@ function createTransferWrappedInstruction(connection, tokenBridgeProgramId, worm
18
17
  });
19
18
  }
20
19
  exports.createTransferWrappedInstruction = createTransferWrappedInstruction;
21
- function getTransferWrappedAccounts(tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress) {
20
+ function getTransferWrappedAccounts(tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress, tokenProgram) {
22
21
  const mint = (0, index_js_1.deriveWrappedMintKey)(tokenBridgeProgramId, tokenChain, tokenAddress);
23
22
  const { wormholeBridge, wormholeMessage, wormholeEmitter, wormholeSequence, wormholeFeeCollector, clock, rent, systemProgram, } = sdk_solana_core_1.utils.getPostMessageCpiAccounts(tokenBridgeProgramId, wormholeProgramId, payer, message);
24
23
  return {
@@ -38,7 +37,7 @@ function getTransferWrappedAccounts(tokenBridgeProgramId, wormholeProgramId, pay
38
37
  rent,
39
38
  systemProgram,
40
39
  wormholeProgram: new web3_js_1.PublicKey(wormholeProgramId),
41
- tokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
40
+ tokenProgram: new web3_js_1.PublicKey(tokenProgram),
42
41
  };
43
42
  }
44
43
  exports.getTransferWrappedAccounts = getTransferWrappedAccounts;
@@ -1 +1 @@
1
- {"version":3,"file":"transferWrapped.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/transferWrapped.ts"],"names":[],"mappings":";;;AAKA,6CAA4C;AAC5C,iDAAqD;AACrD,8CAA0E;AAC1E,0EAA6D;AAC7D,qDAKgC;AAEhC,SAAgB,gCAAgC,CAC9C,UAAsB,EACtB,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,OAA0B,EAC1B,IAAuB,EACvB,SAA4B,EAC5B,UAAkB,EAClB,YAAiC,EACjC,KAAa,EACb,MAAc,EACd,GAAW,EACX,aAAkC,EAClC,WAAmB;IAEnB,MAAM,OAAO,GAAG,IAAA,sDAAyC,EACvD,oBAAoB,EACpB,UAAU,CACX,CAAC,OAAO,CAAC,eAAe,CACvB,KAAK,EACL,MAAa,EACb,GAAU,EACV,MAAM,CAAC,IAAI,CAAC,aAAa,CAAQ,EACjC,WAAW,CACZ,CAAC;IAEF,aAAa;IACb,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE;QACrC,QAAQ,EAAE,0BAA0B,CAClC,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,OAAO,EACP,IAAI,EACJ,SAAS,EACT,UAAU,EACV,YAAY,CACN;QACR,OAAO,EAAE,SAAS;QAClB,iBAAiB,EAAE,SAAS;QAC5B,eAAe,EAAE,SAAS;QAC1B,gBAAgB,EAAE,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AA5CD,4EA4CC;AAsBD,SAAgB,0BAA0B,CACxC,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,OAA0B,EAC1B,IAAuB,EACvB,SAA4B,EAC5B,UAAkB,EAClB,YAAiC;IAEjC,MAAM,IAAI,GAAG,IAAA,+BAAoB,EAC/B,oBAAoB,EACpB,UAAU,EACV,YAAY,CACb,CAAC;IACF,MAAM,EACJ,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,EACL,IAAI,EACJ,aAAa,GACd,GAAG,uBAAK,CAAC,yBAAyB,CACjC,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,OAAO,CACR,CAAC;IACF,OAAO;QACL,KAAK,EAAE,IAAI,mBAAS,CAAC,KAAK,CAAC;QAC3B,MAAM,EAAE,IAAA,qCAA0B,EAAC,oBAAoB,CAAC;QACxD,IAAI,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC;QACzB,SAAS,EAAE,IAAI,mBAAS,CAAC,SAAS,CAAC;QACnC,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,IAAA,+BAAoB,EAAC,oBAAoB,EAAE,IAAI,CAAC;QAC7D,eAAe,EAAE,IAAA,mCAAwB,EAAC,oBAAoB,CAAC;QAC/D,cAAc;QACd,eAAe,EAAE,eAAe;QAChC,eAAe;QACf,gBAAgB;QAChB,oBAAoB;QACpB,KAAK;QACL,IAAI;QACJ,aAAa;QACb,eAAe,EAAE,IAAI,mBAAS,CAAC,iBAAiB,CAAC;QACjD,YAAY,EAAE,4BAAgB;KAC/B,CAAC;AACJ,CAAC;AAjDD,gEAiDC"}
1
+ {"version":3,"file":"transferWrapped.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/transferWrapped.ts"],"names":[],"mappings":";;;AAKA,6CAA4C;AAC5C,8CAA0E;AAC1E,0EAA6D;AAC7D,qDAKgC;AAEhC,SAAgB,gCAAgC,CAC9C,UAAsB,EACtB,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,OAA0B,EAC1B,IAAuB,EACvB,SAA4B,EAC5B,UAAkB,EAClB,YAAiC,EACjC,YAA+B,EAC/B,KAAa,EACb,MAAc,EACd,GAAW,EACX,aAAkC,EAClC,WAAmB;IAEnB,MAAM,OAAO,GAAG,IAAA,sDAAyC,EACvD,oBAAoB,EACpB,UAAU,CACX,CAAC,OAAO,CAAC,eAAe,CACvB,KAAK,EACL,MAAa,EACb,GAAU,EACV,MAAM,CAAC,IAAI,CAAC,aAAa,CAAQ,EACjC,WAAW,CACZ,CAAC;IAEF,aAAa;IACb,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE;QACrC,QAAQ,EAAE,0BAA0B,CAClC,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,OAAO,EACP,IAAI,EACJ,SAAS,EACT,UAAU,EACV,YAAY,EACZ,YAAY,CACN;QACR,OAAO,EAAE,SAAS;QAClB,iBAAiB,EAAE,SAAS;QAC5B,eAAe,EAAE,SAAS;QAC1B,gBAAgB,EAAE,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AA9CD,4EA8CC;AAsBD,SAAgB,0BAA0B,CACxC,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,OAA0B,EAC1B,IAAuB,EACvB,SAA4B,EAC5B,UAAkB,EAClB,YAAiC,EACjC,YAA+B;IAE/B,MAAM,IAAI,GAAG,IAAA,+BAAoB,EAC/B,oBAAoB,EACpB,UAAU,EACV,YAAY,CACb,CAAC;IACF,MAAM,EACJ,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,EACL,IAAI,EACJ,aAAa,GACd,GAAG,uBAAK,CAAC,yBAAyB,CACjC,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,OAAO,CACR,CAAC;IACF,OAAO;QACL,KAAK,EAAE,IAAI,mBAAS,CAAC,KAAK,CAAC;QAC3B,MAAM,EAAE,IAAA,qCAA0B,EAAC,oBAAoB,CAAC;QACxD,IAAI,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC;QACzB,SAAS,EAAE,IAAI,mBAAS,CAAC,SAAS,CAAC;QACnC,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,IAAA,+BAAoB,EAAC,oBAAoB,EAAE,IAAI,CAAC;QAC7D,eAAe,EAAE,IAAA,mCAAwB,EAAC,oBAAoB,CAAC;QAC/D,cAAc;QACd,eAAe,EAAE,eAAe;QAChC,eAAe;QACf,gBAAgB;QAChB,oBAAoB;QACpB,KAAK;QACL,IAAI;QACJ,aAAa;QACb,eAAe,EAAE,IAAI,mBAAS,CAAC,iBAAiB,CAAC;QACjD,YAAY,EAAE,IAAI,mBAAS,CAAC,YAAY,CAAC;KAC1C,CAAC;AACJ,CAAC;AAlDD,gEAkDC"}
@@ -2,7 +2,7 @@
2
2
  /// <reference types="node" />
3
3
  import type { Connection, PublicKeyInitData, TransactionInstruction } from '@solana/web3.js';
4
4
  import { PublicKey } from '@solana/web3.js';
5
- export declare function createTransferWrappedWithPayloadInstruction(connection: Connection, tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, message: PublicKeyInitData, from: PublicKeyInitData, fromOwner: PublicKeyInitData, tokenChain: number, tokenAddress: Buffer | Uint8Array, nonce: number, amount: bigint, targetAddress: Buffer | Uint8Array, targetChain: number, payload: Buffer | Uint8Array): TransactionInstruction;
5
+ export declare function createTransferWrappedWithPayloadInstruction(connection: Connection, tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, message: PublicKeyInitData, from: PublicKeyInitData, fromOwner: PublicKeyInitData, tokenChain: number, tokenAddress: Buffer | Uint8Array, tokenProgram: PublicKeyInitData, nonce: number, amount: bigint, targetAddress: Buffer | Uint8Array, targetChain: number, payload: Buffer | Uint8Array): TransactionInstruction;
6
6
  export interface TransferWrappedWithPayloadAccounts {
7
7
  payer: PublicKey;
8
8
  config: PublicKey;
@@ -23,5 +23,5 @@ export interface TransferWrappedWithPayloadAccounts {
23
23
  tokenProgram: PublicKey;
24
24
  wormholeProgram: PublicKey;
25
25
  }
26
- export declare function getTransferWrappedWithPayloadAccounts(tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, message: PublicKeyInitData, from: PublicKeyInitData, fromOwner: PublicKeyInitData, tokenChain: number, tokenAddress: Buffer | Uint8Array, cpiProgramId?: PublicKeyInitData): TransferWrappedWithPayloadAccounts;
26
+ export declare function getTransferWrappedWithPayloadAccounts(tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, message: PublicKeyInitData, from: PublicKeyInitData, fromOwner: PublicKeyInitData, tokenChain: number, tokenAddress: Buffer | Uint8Array, cpiProgramId?: PublicKeyInitData, tokenProgram?: PublicKeyInitData): TransferWrappedWithPayloadAccounts;
27
27
  //# sourceMappingURL=transferWrappedWithPayload.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transferWrappedWithPayload.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/transferWrappedWithPayload.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAa5C,wBAAgB,2CAA2C,CACzD,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GAAG,UAAU,EACjC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GAAG,UAAU,EAClC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GAAG,UAAU,GAC3B,sBAAsB,CA8BxB;AAED,MAAM,WAAW,kCAAkC;IACjD,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,SAAS,CAAC;IACvB,eAAe,EAAE,SAAS,CAAC;IAC3B,cAAc,EAAE,SAAS,CAAC;IAC1B,eAAe,EAAE,SAAS,CAAC;IAC3B,eAAe,EAAE,SAAS,CAAC;IAC3B,gBAAgB,EAAE,SAAS,CAAC;IAC5B,oBAAoB,EAAE,SAAS,CAAC;IAChC,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,SAAS,CAAC;IACzB,YAAY,EAAE,SAAS,CAAC;IACxB,eAAe,EAAE,SAAS,CAAC;CAC5B;AAED,wBAAgB,qCAAqC,CACnD,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GAAG,UAAU,EACjC,YAAY,CAAC,EAAE,iBAAiB,GAC/B,kCAAkC,CA2CpC"}
1
+ {"version":3,"file":"transferWrappedWithPayload.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/transferWrappedWithPayload.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAa5C,wBAAgB,2CAA2C,CACzD,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GAAG,UAAU,EACjC,YAAY,EAAE,iBAAiB,EAC/B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GAAG,UAAU,EAClC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GAAG,UAAU,GAC3B,sBAAsB,CAgCxB;AAED,MAAM,WAAW,kCAAkC;IACjD,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,SAAS,CAAC;IACvB,eAAe,EAAE,SAAS,CAAC;IAC3B,cAAc,EAAE,SAAS,CAAC;IAC1B,eAAe,EAAE,SAAS,CAAC;IAC3B,eAAe,EAAE,SAAS,CAAC;IAC3B,gBAAgB,EAAE,SAAS,CAAC;IAC5B,oBAAoB,EAAE,SAAS,CAAC;IAChC,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,SAAS,CAAC;IACzB,YAAY,EAAE,SAAS,CAAC;IACxB,eAAe,EAAE,SAAS,CAAC;CAC5B;AAED,wBAAgB,qCAAqC,CACnD,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,iBAAiB,EAC5B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GAAG,UAAU,EACjC,YAAY,CAAC,EAAE,iBAAiB,EAChC,YAAY,CAAC,EAAE,iBAAiB,GAC/B,kCAAkC,CA2CpC"}
@@ -6,11 +6,11 @@ const spl_token_1 = require("@solana/spl-token");
6
6
  const program_js_1 = require("../program.js");
7
7
  const sdk_solana_core_1 = require("@wormhole-foundation/sdk-solana-core");
8
8
  const index_js_1 = require("./../accounts/index.js");
9
- function createTransferWrappedWithPayloadInstruction(connection, tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress, nonce, amount, targetAddress, targetChain, payload) {
9
+ function createTransferWrappedWithPayloadInstruction(connection, tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress, tokenProgram, nonce, amount, targetAddress, targetChain, payload) {
10
10
  const methods = (0, program_js_1.createReadOnlyTokenBridgeProgramInterface)(tokenBridgeProgramId, connection).methods.transferWrappedWithPayload(nonce, amount, Buffer.from(targetAddress), targetChain, Buffer.from(payload), null);
11
11
  // @ts-ignore
12
12
  return methods._ixFn(...methods._args, {
13
- accounts: getTransferWrappedWithPayloadAccounts(tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress),
13
+ accounts: getTransferWrappedWithPayloadAccounts(tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress, undefined, tokenProgram),
14
14
  signers: undefined,
15
15
  remainingAccounts: undefined,
16
16
  preInstructions: undefined,
@@ -18,7 +18,7 @@ function createTransferWrappedWithPayloadInstruction(connection, tokenBridgeProg
18
18
  });
19
19
  }
20
20
  exports.createTransferWrappedWithPayloadInstruction = createTransferWrappedWithPayloadInstruction;
21
- function getTransferWrappedWithPayloadAccounts(tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress, cpiProgramId) {
21
+ function getTransferWrappedWithPayloadAccounts(tokenBridgeProgramId, wormholeProgramId, payer, message, from, fromOwner, tokenChain, tokenAddress, cpiProgramId, tokenProgram) {
22
22
  const mint = (0, index_js_1.deriveWrappedMintKey)(tokenBridgeProgramId, tokenChain, tokenAddress);
23
23
  const { wormholeBridge, wormholeMessage, wormholeEmitter, wormholeSequence, wormholeFeeCollector, clock, rent, systemProgram, } = sdk_solana_core_1.utils.getPostMessageCpiAccounts(tokenBridgeProgramId, wormholeProgramId, payer, message);
24
24
  return {
@@ -39,7 +39,7 @@ function getTransferWrappedWithPayloadAccounts(tokenBridgeProgramId, wormholePro
39
39
  rent,
40
40
  systemProgram,
41
41
  wormholeProgram: new web3_js_1.PublicKey(wormholeProgramId),
42
- tokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
42
+ tokenProgram: tokenProgram ? new web3_js_1.PublicKey(tokenProgram) : spl_token_1.TOKEN_PROGRAM_ID,
43
43
  };
44
44
  }
45
45
  exports.getTransferWrappedWithPayloadAccounts = getTransferWrappedWithPayloadAccounts;
@@ -1 +1 @@
1
- {"version":3,"file":"transferWrappedWithPayload.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/transferWrappedWithPayload.ts"],"names":[],"mappings":";;;AAKA,6CAA4C;AAC5C,iDAAqD;AACrD,8CAA0E;AAE1E,0EAA6D;AAC7D,qDAMgC;AAEhC,SAAgB,2CAA2C,CACzD,UAAsB,EACtB,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,OAA0B,EAC1B,IAAuB,EACvB,SAA4B,EAC5B,UAAkB,EAClB,YAAiC,EACjC,KAAa,EACb,MAAc,EACd,aAAkC,EAClC,WAAmB,EACnB,OAA4B;IAE5B,MAAM,OAAO,GAAG,IAAA,sDAAyC,EACvD,oBAAoB,EACpB,UAAU,CACX,CAAC,OAAO,CAAC,0BAA0B,CAClC,KAAK,EACL,MAAa,EACb,MAAM,CAAC,IAAI,CAAC,aAAa,CAAQ,EACjC,WAAW,EACX,MAAM,CAAC,IAAI,CAAC,OAAO,CAAQ,EAC3B,IAAI,CACL,CAAC;IAEF,aAAa;IACb,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE;QACrC,QAAQ,EAAE,qCAAqC,CAC7C,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,OAAO,EACP,IAAI,EACJ,SAAS,EACT,UAAU,EACV,YAAY,CACN;QACR,OAAO,EAAE,SAAS;QAClB,iBAAiB,EAAE,SAAS;QAC5B,eAAe,EAAE,SAAS;QAC1B,gBAAgB,EAAE,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AA7CD,kGA6CC;AAuBD,SAAgB,qCAAqC,CACnD,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,OAA0B,EAC1B,IAAuB,EACvB,SAA4B,EAC5B,UAAkB,EAClB,YAAiC,EACjC,YAAgC;IAEhC,MAAM,IAAI,GAAG,IAAA,+BAAoB,EAC/B,oBAAoB,EACpB,UAAU,EACV,YAAY,CACb,CAAC;IACF,MAAM,EACJ,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,EACL,IAAI,EACJ,aAAa,GACd,GAAG,uBAAK,CAAC,yBAAyB,CACjC,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,OAAO,CACR,CAAC;IACF,OAAO;QACL,KAAK,EAAE,IAAI,mBAAS,CAAC,KAAK,CAAC;QAC3B,MAAM,EAAE,IAAA,qCAA0B,EAAC,oBAAoB,CAAC;QACxD,IAAI,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC;QACzB,SAAS,EAAE,IAAI,mBAAS,CAAC,SAAS,CAAC;QACnC,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,IAAA,+BAAoB,EAAC,oBAAoB,EAAE,IAAI,CAAC;QAC7D,eAAe,EAAE,IAAA,mCAAwB,EAAC,oBAAoB,CAAC;QAC/D,cAAc;QACd,eAAe,EAAE,eAAe;QAChC,eAAe;QACf,gBAAgB;QAChB,oBAAoB;QACpB,KAAK;QACL,MAAM,EAAE,IAAI,mBAAS,CACnB,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,iCAAsB,EAAC,YAAY,CAAC,CAC1E;QACD,IAAI;QACJ,aAAa;QACb,eAAe,EAAE,IAAI,mBAAS,CAAC,iBAAiB,CAAC;QACjD,YAAY,EAAE,4BAAgB;KAC/B,CAAC;AACJ,CAAC;AArDD,sFAqDC"}
1
+ {"version":3,"file":"transferWrappedWithPayload.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/transferWrappedWithPayload.ts"],"names":[],"mappings":";;;AAKA,6CAA4C;AAC5C,iDAAqD;AACrD,8CAA0E;AAE1E,0EAA6D;AAC7D,qDAMgC;AAEhC,SAAgB,2CAA2C,CACzD,UAAsB,EACtB,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,OAA0B,EAC1B,IAAuB,EACvB,SAA4B,EAC5B,UAAkB,EAClB,YAAiC,EACjC,YAA+B,EAC/B,KAAa,EACb,MAAc,EACd,aAAkC,EAClC,WAAmB,EACnB,OAA4B;IAE5B,MAAM,OAAO,GAAG,IAAA,sDAAyC,EACvD,oBAAoB,EACpB,UAAU,CACX,CAAC,OAAO,CAAC,0BAA0B,CAClC,KAAK,EACL,MAAa,EACb,MAAM,CAAC,IAAI,CAAC,aAAa,CAAQ,EACjC,WAAW,EACX,MAAM,CAAC,IAAI,CAAC,OAAO,CAAQ,EAC3B,IAAI,CACL,CAAC;IAEF,aAAa;IACb,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE;QACrC,QAAQ,EAAE,qCAAqC,CAC7C,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,OAAO,EACP,IAAI,EACJ,SAAS,EACT,UAAU,EACV,YAAY,EACZ,SAAS,EACT,YAAY,CACN;QACR,OAAO,EAAE,SAAS;QAClB,iBAAiB,EAAE,SAAS;QAC5B,eAAe,EAAE,SAAS;QAC1B,gBAAgB,EAAE,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AAhDD,kGAgDC;AAuBD,SAAgB,qCAAqC,CACnD,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,OAA0B,EAC1B,IAAuB,EACvB,SAA4B,EAC5B,UAAkB,EAClB,YAAiC,EACjC,YAAgC,EAChC,YAAgC;IAEhC,MAAM,IAAI,GAAG,IAAA,+BAAoB,EAC/B,oBAAoB,EACpB,UAAU,EACV,YAAY,CACb,CAAC;IACF,MAAM,EACJ,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,EACL,IAAI,EACJ,aAAa,GACd,GAAG,uBAAK,CAAC,yBAAyB,CACjC,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,OAAO,CACR,CAAC;IACF,OAAO;QACL,KAAK,EAAE,IAAI,mBAAS,CAAC,KAAK,CAAC;QAC3B,MAAM,EAAE,IAAA,qCAA0B,EAAC,oBAAoB,CAAC;QACxD,IAAI,EAAE,IAAI,mBAAS,CAAC,IAAI,CAAC;QACzB,SAAS,EAAE,IAAI,mBAAS,CAAC,SAAS,CAAC;QACnC,IAAI,EAAE,IAAI;QACV,WAAW,EAAE,IAAA,+BAAoB,EAAC,oBAAoB,EAAE,IAAI,CAAC;QAC7D,eAAe,EAAE,IAAA,mCAAwB,EAAC,oBAAoB,CAAC;QAC/D,cAAc;QACd,eAAe,EAAE,eAAe;QAChC,eAAe;QACf,gBAAgB;QAChB,oBAAoB;QACpB,KAAK;QACL,MAAM,EAAE,IAAI,mBAAS,CACnB,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,iCAAsB,EAAC,YAAY,CAAC,CAC1E;QACD,IAAI;QACJ,aAAa;QACb,eAAe,EAAE,IAAI,mBAAS,CAAC,iBAAiB,CAAC;QACjD,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,mBAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,4BAAgB;KAC5E,CAAC;AACJ,CAAC;AAtDD,sFAsDC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tokenBridge.d.ts","sourceRoot":"","sources":["../../src/tokenBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokenBridge.d.ts","sourceRoot":"","sources":["../../src/tokenBridge.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ErrNotWrapped, UniversalAddress, encoding, isNative, toChain, toChainId, toNative, } from '@wormhole-foundation/sdk-connect';
2
2
  import { SolanaAddress, SolanaPlatform, SolanaUnsignedTransaction, } from '@wormhole-foundation/sdk-solana';
3
3
  import { SolanaWormholeCore, utils as coreUtils, } from '@wormhole-foundation/sdk-solana-core';
4
- import { ACCOUNT_SIZE, NATIVE_MINT, TOKEN_PROGRAM_ID, createAssociatedTokenAccountInstruction, createCloseAccountInstruction, createInitializeAccountInstruction, createTransferInstruction, getAssociatedTokenAddress, getMinimumBalanceForRentExemptAccount, getMint, } from '@solana/spl-token';
4
+ import { ACCOUNT_SIZE, ExtensionType, NATIVE_MINT, TOKEN_2022_PROGRAM_ID, TOKEN_PROGRAM_ID, createAssociatedTokenAccountInstruction, createCloseAccountInstruction, createInitializeAccountInstruction, createTransferInstruction, getAccount, getAssociatedTokenAddress, getExtensionTypes, getMetadataPointerState, getMinimumBalanceForRentExemptAccount, getMint, } from '@solana/spl-token';
5
5
  import { Keypair, PublicKey, SystemProgram, Transaction, } from '@solana/web3.js';
6
6
  import { createApproveAuthoritySignerInstruction, createAttestTokenInstruction, createCompleteTransferNativeInstruction, createCompleteTransferWrappedInstruction, createCreateWrappedInstruction, createReadOnlyTokenBridgeProgramInterface, createTransferNativeInstruction, createTransferNativeWithPayloadInstruction, createTransferWrappedInstruction, createTransferWrappedWithPayloadInstruction, deriveWrappedMintKey, getWrappedMeta, } from './utils/index.js';
7
7
  import '@wormhole-foundation/sdk-solana-core';
@@ -104,8 +104,19 @@ export class SolanaTokenBridge {
104
104
  const nonce = 0;
105
105
  const msgFee = await this.coreBridge.getMessageFee();
106
106
  const transferIx = coreUtils.createBridgeFeeTransferInstruction(this.coreBridge.coreBridge.programId, senderAddress, msgFee);
107
+ const tokenAddress = new SolanaAddress(token).unwrap();
108
+ const tokenProgram = await SolanaPlatform.getTokenProgramId(this.connection, tokenAddress);
109
+ // Check if the token has a metadata pointer (only applies to token-2022)
110
+ let metadataAddress;
111
+ if (tokenProgram.equals(TOKEN_2022_PROGRAM_ID)) {
112
+ const mintInfo = await getMint(this.connection, tokenAddress, undefined, tokenProgram);
113
+ const metadataPointer = getMetadataPointerState(mintInfo);
114
+ if (metadataPointer?.metadataAddress) {
115
+ metadataAddress = metadataPointer?.metadataAddress;
116
+ }
117
+ }
107
118
  const messageKey = Keypair.generate();
108
- const attestIx = createAttestTokenInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, new SolanaAddress(token).unwrap(), messageKey.publicKey, nonce);
119
+ const attestIx = createAttestTokenInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, new SolanaAddress(token).unwrap(), messageKey.publicKey, nonce, metadataAddress);
109
120
  const transaction = new Transaction().add(transferIx, attestIx);
110
121
  transaction.feePayer = senderAddress;
111
122
  yield this.createUnsignedTx({ transaction, signers: [messageKey] }, 'Solana.AttestToken');
@@ -152,10 +163,10 @@ export class SolanaTokenBridge {
152
163
  //Initialize the account as a WSOL account, with the original payerAddress as owner
153
164
  const initAccountIx = createInitializeAccountInstruction(ancillaryKeypair.publicKey, NATIVE_MINT, payerPublicKey);
154
165
  //Normal approve & transfer instructions, except that the wSOL is sent from the ancillary account.
155
- const approvalIx = createApproveAuthoritySignerInstruction(this.tokenBridge.programId, ancillaryKeypair.publicKey, payerPublicKey, amount);
166
+ const approvalIx = createApproveAuthoritySignerInstruction(this.tokenBridge.programId, ancillaryKeypair.publicKey, payerPublicKey, amount, TOKEN_PROGRAM_ID);
156
167
  const tokenBridgeTransferIx = payload
157
- ? createTransferNativeWithPayloadInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, ancillaryKeypair.publicKey, NATIVE_MINT, nonce, amount, recipientAddress, recipientChainId, payload)
158
- : createTransferNativeInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, ancillaryKeypair.publicKey, NATIVE_MINT, nonce, amount, relayerFee, recipientAddress, recipientChainId);
168
+ ? createTransferNativeWithPayloadInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, ancillaryKeypair.publicKey, NATIVE_MINT, TOKEN_PROGRAM_ID, nonce, amount, recipientAddress, recipientChainId, payload)
169
+ : createTransferNativeInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, ancillaryKeypair.publicKey, NATIVE_MINT, TOKEN_PROGRAM_ID, nonce, amount, relayerFee, recipientAddress, recipientChainId);
159
170
  //Close the ancillary account for cleanup. Payer address receives any remaining funds
160
171
  const closeAccountIx = createCloseAccountInstruction(ancillaryKeypair.publicKey, //account to close
161
172
  payerPublicKey, //Remaining funds destination
@@ -173,33 +184,86 @@ export class SolanaTokenBridge {
173
184
  }
174
185
  const tokenAddress = new SolanaAddress(token).unwrap();
175
186
  const senderAddress = new SolanaAddress(sender).unwrap();
176
- const senderTokenAddress = await getAssociatedTokenAddress(tokenAddress, senderAddress);
187
+ const tokenProgram = await SolanaPlatform.getTokenProgramId(this.connection, tokenAddress);
188
+ // NOTE: The Solana TB `completeNative` instruction doesn't support Token-2022 tokens
189
+ // when the recipient associated token account has the immutable owner extension.
190
+ // Therefore, we throw an error here to prevent such transfers from being initiated.
191
+ // Use the executor route instead which creates a temporary account without extensions
192
+ // during redemption.
193
+ if (tokenProgram.equals(TOKEN_2022_PROGRAM_ID)) {
194
+ throw new Error('Transfers of Token-2022 assets are not supported via the Manual Token Bridge route. Please use the Executor Token Bridge route instead.');
195
+ }
196
+ let senderTokenAddress = await getAssociatedTokenAddress(tokenAddress, senderAddress, false, tokenProgram);
197
+ // Check if the source account has immutable owner extension
198
+ // If it does, we need to create a temporary account without the extension
199
+ // since the token bridge cannot transfer from an account with immutable owner
200
+ const isSolanaNative = !(await this.isWrappedAsset(token));
201
+ let tempAccountKeypair;
202
+ let hasImmutableOwner = false;
203
+ if (isSolanaNative && tokenProgram.equals(TOKEN_2022_PROGRAM_ID)) {
204
+ const sourceAccountInfo = await this.connection.getAccountInfo(senderTokenAddress);
205
+ if (sourceAccountInfo && sourceAccountInfo.data.length > ACCOUNT_SIZE) {
206
+ const account = await getAccount(this.connection, senderTokenAddress, undefined, tokenProgram);
207
+ if (account.tlvData) {
208
+ hasImmutableOwner = getExtensionTypes(account.tlvData).includes(ExtensionType.ImmutableOwner);
209
+ }
210
+ }
211
+ }
177
212
  const recipientAddress = recipient.address
178
213
  .toUniversalAddress()
179
214
  .toUint8Array();
180
215
  const recipientChainId = toChainId(recipient.chain);
181
216
  const nonce = 0;
182
217
  const relayerFee = 0n;
183
- const isSolanaNative = !(await this.isWrappedAsset(token));
184
218
  const message = Keypair.generate();
219
+ const instructions = [];
220
+ const signers = [message];
221
+ // If the account has immutable owner, create a temporary account and transfer to it first
222
+ if (hasImmutableOwner) {
223
+ tempAccountKeypair = Keypair.generate();
224
+ signers.push(tempAccountKeypair);
225
+ // Calculate rent for temporary account without extensions
226
+ const rentBalance = await getMinimumBalanceForRentExemptAccount(this.connection);
227
+ // Create temporary account without extensions
228
+ instructions.push(SystemProgram.createAccount({
229
+ fromPubkey: senderAddress,
230
+ newAccountPubkey: tempAccountKeypair.publicKey,
231
+ lamports: rentBalance,
232
+ space: ACCOUNT_SIZE,
233
+ programId: tokenProgram,
234
+ }));
235
+ // Initialize temporary account
236
+ instructions.push(createInitializeAccountInstruction(tempAccountKeypair.publicKey, tokenAddress, senderAddress, tokenProgram));
237
+ // Transfer tokens from ATA to temporary account
238
+ instructions.push(createTransferInstruction(senderTokenAddress, tempAccountKeypair.publicKey, senderAddress, amount, [], tokenProgram));
239
+ // Use the temporary account for the transfer
240
+ senderTokenAddress = tempAccountKeypair.publicKey;
241
+ }
185
242
  let tokenBridgeTransferIx;
186
243
  if (isSolanaNative) {
187
244
  tokenBridgeTransferIx = payload
188
- ? createTransferNativeWithPayloadInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, senderTokenAddress, tokenAddress, nonce, amount, recipientAddress, recipientChainId, payload)
189
- : createTransferNativeInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, senderTokenAddress, tokenAddress, nonce, amount, relayerFee, recipientAddress, recipientChainId);
245
+ ? createTransferNativeWithPayloadInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, senderTokenAddress, tokenAddress, tokenProgram, nonce, amount, recipientAddress, recipientChainId, payload)
246
+ : createTransferNativeInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, senderTokenAddress, tokenAddress, tokenProgram, nonce, amount, relayerFee, recipientAddress, recipientChainId);
190
247
  }
191
248
  else {
192
249
  const originAsset = await this.getOriginalAsset(token);
193
250
  if (isNative(originAsset.address))
194
251
  throw new Error('Native cannot be an original asset');
195
252
  tokenBridgeTransferIx = payload
196
- ? createTransferWrappedWithPayloadInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, senderTokenAddress, senderAddress, toChainId(originAsset.chain), originAsset.address.toUint8Array(), nonce, amount, recipientAddress, recipientChainId, payload)
197
- : createTransferWrappedInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, senderTokenAddress, senderAddress, toChainId(originAsset.chain), originAsset.address.toUint8Array(), nonce, amount, relayerFee, recipientAddress, recipientChainId);
253
+ ? createTransferWrappedWithPayloadInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, senderTokenAddress, senderAddress, toChainId(originAsset.chain), originAsset.address.toUint8Array(), tokenProgram, nonce, amount, recipientAddress, recipientChainId, payload)
254
+ : createTransferWrappedInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, message.publicKey, senderTokenAddress, senderAddress, toChainId(originAsset.chain), originAsset.address.toUint8Array(), tokenProgram, nonce, amount, relayerFee, recipientAddress, recipientChainId);
255
+ }
256
+ const approvalIx = createApproveAuthoritySignerInstruction(this.tokenBridge.programId, senderTokenAddress, senderAddress, amount, tokenProgram);
257
+ // Add the approval and transfer instructions
258
+ instructions.push(approvalIx);
259
+ instructions.push(tokenBridgeTransferIx);
260
+ // If we used a temporary account, add instruction to close it and recover rent
261
+ if (tempAccountKeypair) {
262
+ instructions.push(createCloseAccountInstruction(tempAccountKeypair.publicKey, senderAddress, senderAddress, [], tokenProgram));
198
263
  }
199
- const approvalIx = createApproveAuthoritySignerInstruction(this.tokenBridge.programId, senderTokenAddress, senderAddress, amount);
200
- const transaction = new Transaction().add(approvalIx, tokenBridgeTransferIx);
264
+ const transaction = new Transaction().add(...instructions);
201
265
  transaction.feePayer = senderAddress;
202
- yield this.createUnsignedTx({ transaction, signers: [message] }, 'TokenBridge.TransferTokens');
266
+ yield this.createUnsignedTx({ transaction, signers }, 'TokenBridge.TransferTokens');
203
267
  }
204
268
  async *redeemAndUnwrap(sender, vaa) {
205
269
  // sender, fee payer
@@ -231,14 +295,14 @@ export class SolanaTokenBridge {
231
295
  transaction.add(completeTransferIx, createAncillaryAccountIx, initAccountIx, balanceTransferIx, closeAccountIx);
232
296
  yield this.createUnsignedTx({ transaction, signers: [ancillaryKeypair] }, 'TokenBridge.RedeemAndUnwrap');
233
297
  }
234
- async *createAta(sender, token) {
298
+ async *createAta(sender, token, tokenProgram) {
235
299
  const senderAddress = new SolanaAddress(sender).unwrap();
236
300
  const tokenAddress = new SolanaAddress(token).unwrap();
237
- const ata = await getAssociatedTokenAddress(tokenAddress, senderAddress);
301
+ const ata = await getAssociatedTokenAddress(tokenAddress, senderAddress, false, tokenProgram);
238
302
  // If the ata doesn't exist yet, create it
239
303
  const acctInfo = await this.connection.getAccountInfo(ata);
240
304
  if (acctInfo === null) {
241
- const transaction = new Transaction().add(createAssociatedTokenAccountInstruction(senderAddress, ata, senderAddress, tokenAddress));
305
+ const transaction = new Transaction().add(createAssociatedTokenAccountInstruction(senderAddress, ata, senderAddress, tokenAddress, tokenProgram));
242
306
  transaction.feePayer = senderAddress;
243
307
  yield this.createUnsignedTx({ transaction }, 'Redeem.CreateATA');
244
308
  }
@@ -248,8 +312,9 @@ export class SolanaTokenBridge {
248
312
  const nativeAddress = vaa.payload.token.chain === this.chain
249
313
  ? vaa.payload.token.address
250
314
  : (await this.getWrappedAsset(vaa.payload.token)).toUniversalAddress();
315
+ const tokenProgram = await SolanaPlatform.getTokenProgramId(this.connection, new SolanaAddress(nativeAddress).unwrap());
251
316
  // Create an ATA if necessary
252
- yield* this.createAta(sender, nativeAddress);
317
+ yield* this.createAta(sender, nativeAddress, tokenProgram);
253
318
  // Post the VAA if necessary
254
319
  yield* this.coreBridge.postVaa(sender, vaa);
255
320
  // redeem vaa and unwrap to native sol from wrapped sol
@@ -265,7 +330,7 @@ export class SolanaTokenBridge {
265
330
  const createCompleteTransferInstruction = vaa.payload.token.chain == this.chain
266
331
  ? createCompleteTransferNativeInstruction
267
332
  : createCompleteTransferWrappedInstruction;
268
- const transaction = new Transaction().add(createCompleteTransferInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, vaa));
333
+ const transaction = new Transaction().add(createCompleteTransferInstruction(this.connection, this.tokenBridge.programId, this.coreBridge.address, senderAddress, vaa, undefined, tokenProgram));
269
334
  transaction.feePayer = senderAddress;
270
335
  yield this.createUnsignedTx({ transaction }, 'Solana.RedeemTransfer');
271
336
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tokenBridge.js","sourceRoot":"","sources":["../../src/tokenBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokenBridge.js","sourceRoot":"","sources":["../../src/tokenBridge.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import type { PublicKeyInitData } from '@solana/web3.js';
2
- export declare function createApproveAuthoritySignerInstruction(tokenBridgeProgramId: PublicKeyInitData, tokenAccount: PublicKeyInitData, owner: PublicKeyInitData, amount: number | bigint): import("@solana/web3.js").TransactionInstruction;
2
+ export declare function createApproveAuthoritySignerInstruction(tokenBridgeProgramId: PublicKeyInitData, tokenAccount: PublicKeyInitData, owner: PublicKeyInitData, amount: number | bigint, tokenProgram: PublicKeyInitData): import("@solana/web3.js").TransactionInstruction;
3
3
  //# sourceMappingURL=approve.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"approve.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/approve.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAIzD,wBAAgB,uCAAuC,CACrD,oBAAoB,EAAE,iBAAiB,EACvC,YAAY,EAAE,iBAAiB,EAC/B,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,MAAM,GAAG,MAAM,oDAQxB"}
1
+ {"version":3,"file":"approve.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/approve.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAIzD,wBAAgB,uCAAuC,CACrD,oBAAoB,EAAE,iBAAiB,EACvC,YAAY,EAAE,iBAAiB,EAC/B,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,YAAY,EAAE,iBAAiB,oDAUhC"}
@@ -1,7 +1,7 @@
1
1
  import { createApproveInstruction } from '@solana/spl-token';
2
2
  import { PublicKey } from '@solana/web3.js';
3
3
  import { deriveAuthoritySignerKey } from './../accounts/index.js';
4
- export function createApproveAuthoritySignerInstruction(tokenBridgeProgramId, tokenAccount, owner, amount) {
5
- return createApproveInstruction(new PublicKey(tokenAccount), deriveAuthoritySignerKey(tokenBridgeProgramId), new PublicKey(owner), amount);
4
+ export function createApproveAuthoritySignerInstruction(tokenBridgeProgramId, tokenAccount, owner, amount, tokenProgram) {
5
+ return createApproveInstruction(new PublicKey(tokenAccount), deriveAuthoritySignerKey(tokenBridgeProgramId), new PublicKey(owner), amount, undefined, new PublicKey(tokenProgram));
6
6
  }
7
7
  //# sourceMappingURL=approve.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"approve.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/approve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,UAAU,uCAAuC,CACrD,oBAAuC,EACvC,YAA+B,EAC/B,KAAwB,EACxB,MAAuB;IAEvB,OAAO,wBAAwB,CAC7B,IAAI,SAAS,CAAC,YAAY,CAAC,EAC3B,wBAAwB,CAAC,oBAAoB,CAAC,EAC9C,IAAI,SAAS,CAAC,KAAK,CAAC,EACpB,MAAM,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"approve.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/approve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,UAAU,uCAAuC,CACrD,oBAAuC,EACvC,YAA+B,EAC/B,KAAwB,EACxB,MAAuB,EACvB,YAA+B;IAE/B,OAAO,wBAAwB,CAC7B,IAAI,SAAS,CAAC,YAAY,CAAC,EAC3B,wBAAwB,CAAC,oBAAoB,CAAC,EAC9C,IAAI,SAAS,CAAC,KAAK,CAAC,EACpB,MAAM,EACN,SAAS,EACT,IAAI,SAAS,CAAC,YAAY,CAAC,CAC5B,CAAC;AACJ,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { Connection, PublicKeyInitData, TransactionInstruction } from '@solana/web3.js';
2
2
  import { PublicKey } from '@solana/web3.js';
3
- export declare function createAttestTokenInstruction(connection: Connection, tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, mint: PublicKeyInitData, message: PublicKeyInitData, nonce: number): TransactionInstruction;
3
+ export declare function createAttestTokenInstruction(connection: Connection, tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, mint: PublicKeyInitData, message: PublicKeyInitData, nonce: number, metadataAddress?: PublicKeyInitData): TransactionInstruction;
4
4
  export interface AttestTokenAccounts {
5
5
  payer: PublicKey;
6
6
  config: PublicKey;
@@ -17,5 +17,5 @@ export interface AttestTokenAccounts {
17
17
  systemProgram: PublicKey;
18
18
  wormholeProgram: PublicKey;
19
19
  }
20
- export declare function getAttestTokenAccounts(tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, mint: PublicKeyInitData, message: PublicKeyInitData): AttestTokenAccounts;
20
+ export declare function getAttestTokenAccounts(tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, mint: PublicKeyInitData, message: PublicKeyInitData, metadataAddress?: PublicKeyInitData): AttestTokenAccounts;
21
21
  //# sourceMappingURL=attestToken.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attestToken.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/attestToken.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAS5C,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,MAAM,GACZ,sBAAsB,CA6BxB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,SAAS,CAAC;IACvB,cAAc,EAAE,SAAS,CAAC;IAC1B,eAAe,EAAE,SAAS,CAAC;IAC3B,eAAe,EAAE,SAAS,CAAC;IAC3B,gBAAgB,EAAE,SAAS,CAAC;IAC5B,oBAAoB,EAAE,SAAS,CAAC;IAChC,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,SAAS,CAAC;IACzB,eAAe,EAAE,SAAS,CAAC;CAC5B;AAED,wBAAgB,sBAAsB,CACpC,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,iBAAiB,GACzB,mBAAmB,CA+BrB"}
1
+ {"version":3,"file":"attestToken.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/attestToken.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAS5C,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,MAAM,EACb,eAAe,CAAC,EAAE,iBAAiB,GAClC,sBAAsB,CA+BxB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,SAAS,CAAC;IACvB,cAAc,EAAE,SAAS,CAAC;IAC1B,eAAe,EAAE,SAAS,CAAC;IAC3B,eAAe,EAAE,SAAS,CAAC;IAC3B,gBAAgB,EAAE,SAAS,CAAC;IAC5B,oBAAoB,EAAE,SAAS,CAAC;IAChC,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,SAAS,CAAC;IACzB,eAAe,EAAE,SAAS,CAAC;CAC5B;AAED,wBAAgB,sBAAsB,CACpC,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,iBAAiB,EAC1B,eAAe,CAAC,EAAE,iBAAiB,GAClC,mBAAmB,CAiCrB"}
@@ -3,26 +3,28 @@ import { createReadOnlyTokenBridgeProgramInterface } from '../program.js';
3
3
  import { utils as coreUtils } from '@wormhole-foundation/sdk-solana-core';
4
4
  import { deriveSplTokenMetadataKey } from '../../splMetadata.js';
5
5
  import { deriveTokenBridgeConfigKey, deriveWrappedMetaKey, } from './../accounts/index.js';
6
- export function createAttestTokenInstruction(connection, tokenBridgeProgramId, wormholeProgramId, payer, mint, message, nonce) {
6
+ export function createAttestTokenInstruction(connection, tokenBridgeProgramId, wormholeProgramId, payer, mint, message, nonce, metadataAddress) {
7
7
  const methods = createReadOnlyTokenBridgeProgramInterface(tokenBridgeProgramId, connection).methods.attestToken(nonce);
8
- console.log(getAttestTokenAccounts(tokenBridgeProgramId, wormholeProgramId, payer, mint, message));
8
+ console.log(getAttestTokenAccounts(tokenBridgeProgramId, wormholeProgramId, payer, mint, message, metadataAddress));
9
9
  // @ts-ignore
10
10
  return methods._ixFn(...methods._args, {
11
- accounts: getAttestTokenAccounts(tokenBridgeProgramId, wormholeProgramId, payer, mint, message),
11
+ accounts: getAttestTokenAccounts(tokenBridgeProgramId, wormholeProgramId, payer, mint, message, metadataAddress),
12
12
  signers: undefined,
13
13
  remainingAccounts: undefined,
14
14
  preInstructions: undefined,
15
15
  postInstructions: undefined,
16
16
  });
17
17
  }
18
- export function getAttestTokenAccounts(tokenBridgeProgramId, wormholeProgramId, payer, mint, message) {
18
+ export function getAttestTokenAccounts(tokenBridgeProgramId, wormholeProgramId, payer, mint, message, metadataAddress) {
19
19
  const { bridge: wormholeBridge, emitter: wormholeEmitter, sequence: wormholeSequence, feeCollector: wormholeFeeCollector, clock, rent, systemProgram, } = coreUtils.getPostMessageAccounts(wormholeProgramId, payer, message, tokenBridgeProgramId);
20
20
  return {
21
21
  payer: new PublicKey(payer),
22
22
  config: deriveTokenBridgeConfigKey(tokenBridgeProgramId),
23
23
  mint: new PublicKey(mint),
24
24
  wrappedMeta: deriveWrappedMetaKey(tokenBridgeProgramId, mint),
25
- splMetadata: deriveSplTokenMetadataKey(mint),
25
+ splMetadata: metadataAddress
26
+ ? new PublicKey(metadataAddress)
27
+ : deriveSplTokenMetadataKey(mint),
26
28
  wormholeBridge,
27
29
  wormholeMessage: new PublicKey(message),
28
30
  wormholeEmitter,
@@ -1 +1 @@
1
- {"version":3,"file":"attestToken.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/attestToken.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,yCAAyC,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,UAAU,4BAA4B,CAC1C,UAAsB,EACtB,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,IAAuB,EACvB,OAA0B,EAC1B,KAAa;IAEb,MAAM,OAAO,GAAG,yCAAyC,CACvD,oBAAoB,EACpB,UAAU,CACX,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAE7B,OAAO,CAAC,GAAG,CACT,sBAAsB,CACpB,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,IAAI,EACJ,OAAO,CACR,CACF,CAAC;IACF,aAAa;IACb,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE;QACrC,QAAQ,EAAE,sBAAsB,CAC9B,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,IAAI,EACJ,OAAO,CACD;QACR,OAAO,EAAE,SAAS;QAClB,iBAAiB,EAAE,SAAS;QAC5B,eAAe,EAAE,SAAS;QAC1B,gBAAgB,EAAE,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AAmBD,MAAM,UAAU,sBAAsB,CACpC,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,IAAuB,EACvB,OAA0B;IAE1B,MAAM,EACJ,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,gBAAgB,EAC1B,YAAY,EAAE,oBAAoB,EAClC,KAAK,EACL,IAAI,EACJ,aAAa,GACd,GAAG,SAAS,CAAC,sBAAsB,CAClC,iBAAiB,EACjB,KAAK,EACL,OAAO,EACP,oBAAoB,CACrB,CAAC;IACF,OAAO;QACL,KAAK,EAAE,IAAI,SAAS,CAAC,KAAK,CAAC;QAC3B,MAAM,EAAE,0BAA0B,CAAC,oBAAoB,CAAC;QACxD,IAAI,EAAE,IAAI,SAAS,CAAC,IAAI,CAAC;QACzB,WAAW,EAAE,oBAAoB,CAAC,oBAAoB,EAAE,IAAI,CAAC;QAC7D,WAAW,EAAE,yBAAyB,CAAC,IAAI,CAAC;QAC5C,cAAc;QACd,eAAe,EAAE,IAAI,SAAS,CAAC,OAAO,CAAC;QACvC,eAAe;QACf,gBAAgB;QAChB,oBAAoB;QACpB,KAAK;QACL,IAAI;QACJ,aAAa;QACb,eAAe,EAAE,IAAI,SAAS,CAAC,iBAAiB,CAAC;KAClD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"attestToken.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/attestToken.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,yCAAyC,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,UAAU,4BAA4B,CAC1C,UAAsB,EACtB,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,IAAuB,EACvB,OAA0B,EAC1B,KAAa,EACb,eAAmC;IAEnC,MAAM,OAAO,GAAG,yCAAyC,CACvD,oBAAoB,EACpB,UAAU,CACX,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAE7B,OAAO,CAAC,GAAG,CACT,sBAAsB,CACpB,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,IAAI,EACJ,OAAO,EACP,eAAe,CAChB,CACF,CAAC;IACF,aAAa;IACb,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE;QACrC,QAAQ,EAAE,sBAAsB,CAC9B,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,EACL,IAAI,EACJ,OAAO,EACP,eAAe,CACT;QACR,OAAO,EAAE,SAAS;QAClB,iBAAiB,EAAE,SAAS;QAC5B,eAAe,EAAE,SAAS;QAC1B,gBAAgB,EAAE,SAAS;KAC5B,CAAC,CAAC;AACL,CAAC;AAmBD,MAAM,UAAU,sBAAsB,CACpC,oBAAuC,EACvC,iBAAoC,EACpC,KAAwB,EACxB,IAAuB,EACvB,OAA0B,EAC1B,eAAmC;IAEnC,MAAM,EACJ,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,gBAAgB,EAC1B,YAAY,EAAE,oBAAoB,EAClC,KAAK,EACL,IAAI,EACJ,aAAa,GACd,GAAG,SAAS,CAAC,sBAAsB,CAClC,iBAAiB,EACjB,KAAK,EACL,OAAO,EACP,oBAAoB,CACrB,CAAC;IACF,OAAO;QACL,KAAK,EAAE,IAAI,SAAS,CAAC,KAAK,CAAC;QAC3B,MAAM,EAAE,0BAA0B,CAAC,oBAAoB,CAAC;QACxD,IAAI,EAAE,IAAI,SAAS,CAAC,IAAI,CAAC;QACzB,WAAW,EAAE,oBAAoB,CAAC,oBAAoB,EAAE,IAAI,CAAC;QAC7D,WAAW,EAAE,eAAe;YAC1B,CAAC,CAAC,IAAI,SAAS,CAAC,eAAe,CAAC;YAChC,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC;QACnC,cAAc;QACd,eAAe,EAAE,IAAI,SAAS,CAAC,OAAO,CAAC;QACvC,eAAe;QACf,gBAAgB;QAChB,oBAAoB;QACpB,KAAK;QACL,IAAI;QACJ,aAAa;QACb,eAAe,EAAE,IAAI,SAAS,CAAC,iBAAiB,CAAC;KAClD,CAAC;AACJ,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { Connection, PublicKeyInitData, TransactionInstruction } from '@solana/web3.js';
2
2
  import { PublicKey } from '@solana/web3.js';
3
3
  import type { TokenBridge } from '@wormhole-foundation/sdk-connect';
4
- export declare function createCompleteTransferNativeInstruction(connection: Connection, tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, vaa: TokenBridge.TransferVAA, feeRecipient?: PublicKeyInitData): TransactionInstruction;
4
+ export declare function createCompleteTransferNativeInstruction(connection: Connection, tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, vaa: TokenBridge.TransferVAA, feeRecipient?: PublicKeyInitData, tokenProgramId?: PublicKeyInitData): TransactionInstruction;
5
5
  export interface CompleteTransferNativeAccounts {
6
6
  payer: PublicKey;
7
7
  config: PublicKey;
@@ -18,5 +18,5 @@ export interface CompleteTransferNativeAccounts {
18
18
  tokenProgram: PublicKey;
19
19
  wormholeProgram: PublicKey;
20
20
  }
21
- export declare function getCompleteTransferNativeAccounts(tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, vaa: TokenBridge.TransferVAA, feeRecipient?: PublicKeyInitData): CompleteTransferNativeAccounts;
21
+ export declare function getCompleteTransferNativeAccounts(tokenBridgeProgramId: PublicKeyInitData, wormholeProgramId: PublicKeyInitData, payer: PublicKeyInitData, vaa: TokenBridge.TransferVAA, feeRecipient?: PublicKeyInitData, tokenProgramId?: PublicKeyInitData): CompleteTransferNativeAccounts;
22
22
  //# sourceMappingURL=completeNative.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"completeNative.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/completeNative.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAqC,MAAM,iBAAiB,CAAC;AAU/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAGpE,wBAAgB,uCAAuC,CACrD,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,GAAG,EAAE,WAAW,CAAC,WAAW,EAC5B,YAAY,CAAC,EAAE,iBAAiB,GAC/B,sBAAsB,CAoBxB;AAED,MAAM,WAAW,8BAA8B;IAC7C,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,GAAG,EAAE,SAAS,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,SAAS,CAAC;IACpB,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,CAAC;IACnB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,SAAS,CAAC;IACzB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,SAAS,CAAC;IACzB,YAAY,EAAE,SAAS,CAAC;IACxB,eAAe,EAAE,SAAS,CAAC;CAC5B;AAED,wBAAgB,iCAAiC,CAC/C,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,GAAG,EAAE,WAAW,CAAC,WAAW,EAC5B,YAAY,CAAC,EAAE,iBAAiB,GAC/B,8BAA8B,CA+BhC"}
1
+ {"version":3,"file":"completeNative.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/instructions/completeNative.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,SAAS,EAAqC,MAAM,iBAAiB,CAAC;AAU/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAGpE,wBAAgB,uCAAuC,CACrD,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,GAAG,EAAE,WAAW,CAAC,WAAW,EAC5B,YAAY,CAAC,EAAE,iBAAiB,EAChC,cAAc,CAAC,EAAE,iBAAiB,GACjC,sBAAsB,CAqBxB;AAED,MAAM,WAAW,8BAA8B;IAC7C,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,GAAG,EAAE,SAAS,CAAC;IACf,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,SAAS,CAAC;IACpB,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,CAAC;IACnB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,SAAS,CAAC;IACzB,IAAI,EAAE,SAAS,CAAC;IAChB,aAAa,EAAE,SAAS,CAAC;IACzB,YAAY,EAAE,SAAS,CAAC;IACxB,eAAe,EAAE,SAAS,CAAC;CAC5B;AAED,wBAAgB,iCAAiC,CAC/C,oBAAoB,EAAE,iBAAiB,EACvC,iBAAiB,EAAE,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,EACxB,GAAG,EAAE,WAAW,CAAC,WAAW,EAC5B,YAAY,CAAC,EAAE,iBAAiB,EAChC,cAAc,CAAC,EAAE,iBAAiB,GACjC,8BAA8B,CAiChC"}
@@ -4,18 +4,18 @@ import { createReadOnlyTokenBridgeProgramInterface } from '../program.js';
4
4
  import { utils } from '@wormhole-foundation/sdk-solana-core';
5
5
  import { deriveEndpointKey, deriveTokenBridgeConfigKey, deriveCustodyKey, deriveCustodySignerKey, } from './../accounts/index.js';
6
6
  import { toChainId } from '@wormhole-foundation/sdk-connect';
7
- export function createCompleteTransferNativeInstruction(connection, tokenBridgeProgramId, wormholeProgramId, payer, vaa, feeRecipient) {
7
+ export function createCompleteTransferNativeInstruction(connection, tokenBridgeProgramId, wormholeProgramId, payer, vaa, feeRecipient, tokenProgramId) {
8
8
  const methods = createReadOnlyTokenBridgeProgramInterface(tokenBridgeProgramId, connection).methods.completeNative();
9
9
  // @ts-ignore
10
10
  return methods._ixFn(...methods._args, {
11
- accounts: getCompleteTransferNativeAccounts(tokenBridgeProgramId, wormholeProgramId, payer, vaa, feeRecipient),
11
+ accounts: getCompleteTransferNativeAccounts(tokenBridgeProgramId, wormholeProgramId, payer, vaa, feeRecipient, tokenProgramId),
12
12
  signers: undefined,
13
13
  remainingAccounts: undefined,
14
14
  preInstructions: undefined,
15
15
  postInstructions: undefined,
16
16
  });
17
17
  }
18
- export function getCompleteTransferNativeAccounts(tokenBridgeProgramId, wormholeProgramId, payer, vaa, feeRecipient) {
18
+ export function getCompleteTransferNativeAccounts(tokenBridgeProgramId, wormholeProgramId, payer, vaa, feeRecipient, tokenProgramId) {
19
19
  const mint = new PublicKey(vaa.payload.token.address.toUint8Array());
20
20
  return {
21
21
  payer: new PublicKey(payer),
@@ -32,7 +32,9 @@ export function getCompleteTransferNativeAccounts(tokenBridgeProgramId, wormhole
32
32
  custodySigner: deriveCustodySignerKey(tokenBridgeProgramId),
33
33
  rent: SYSVAR_RENT_PUBKEY,
34
34
  systemProgram: SystemProgram.programId,
35
- tokenProgram: TOKEN_PROGRAM_ID,
35
+ tokenProgram: tokenProgramId
36
+ ? new PublicKey(tokenProgramId)
37
+ : TOKEN_PROGRAM_ID,
36
38
  wormholeProgram: new PublicKey(wormholeProgramId),
37
39
  };
38
40
  }