@sequence0/sdk 2.0.1 → 2.1.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 (72) hide show
  1. package/README.md +10 -10
  2. package/dist/chains/casper.d.ts +74 -0
  3. package/dist/chains/casper.d.ts.map +1 -0
  4. package/dist/chains/casper.js +512 -0
  5. package/dist/chains/casper.js.map +1 -0
  6. package/dist/chains/cosmos.d.ts +22 -0
  7. package/dist/chains/cosmos.d.ts.map +1 -1
  8. package/dist/chains/cosmos.js +113 -12
  9. package/dist/chains/cosmos.js.map +1 -1
  10. package/dist/chains/ethereum.d.ts.map +1 -1
  11. package/dist/chains/ethereum.js +14 -2
  12. package/dist/chains/ethereum.js.map +1 -1
  13. package/dist/chains/flow.d.ts +57 -0
  14. package/dist/chains/flow.d.ts.map +1 -0
  15. package/dist/chains/flow.js +435 -0
  16. package/dist/chains/flow.js.map +1 -0
  17. package/dist/chains/icp.d.ts.map +1 -1
  18. package/dist/chains/icp.js +483 -67
  19. package/dist/chains/icp.js.map +1 -1
  20. package/dist/chains/iota.d.ts +80 -0
  21. package/dist/chains/iota.d.ts.map +1 -0
  22. package/dist/chains/iota.js +502 -0
  23. package/dist/chains/iota.js.map +1 -0
  24. package/dist/chains/kadena.d.ts +81 -0
  25. package/dist/chains/kadena.d.ts.map +1 -0
  26. package/dist/chains/kadena.js +356 -0
  27. package/dist/chains/kadena.js.map +1 -0
  28. package/dist/chains/near.d.ts +4 -1
  29. package/dist/chains/near.d.ts.map +1 -1
  30. package/dist/chains/near.js +58 -15
  31. package/dist/chains/near.js.map +1 -1
  32. package/dist/chains/nervos.d.ts +148 -0
  33. package/dist/chains/nervos.d.ts.map +1 -0
  34. package/dist/chains/nervos.js +913 -0
  35. package/dist/chains/nervos.js.map +1 -0
  36. package/dist/chains/radix.d.ts +81 -0
  37. package/dist/chains/radix.d.ts.map +1 -0
  38. package/dist/chains/radix.js +289 -0
  39. package/dist/chains/radix.js.map +1 -0
  40. package/dist/chains/solana.d.ts +4 -0
  41. package/dist/chains/solana.d.ts.map +1 -1
  42. package/dist/chains/solana.js +47 -13
  43. package/dist/chains/solana.js.map +1 -1
  44. package/dist/chains/stacks.d.ts +113 -0
  45. package/dist/chains/stacks.d.ts.map +1 -0
  46. package/dist/chains/stacks.js +576 -0
  47. package/dist/chains/stacks.js.map +1 -0
  48. package/dist/chains/sui.d.ts +11 -0
  49. package/dist/chains/sui.d.ts.map +1 -1
  50. package/dist/chains/sui.js +49 -8
  51. package/dist/chains/sui.js.map +1 -1
  52. package/dist/core/client.js +1 -1
  53. package/dist/core/client.js.map +1 -1
  54. package/dist/core/solvency.d.ts +1 -1
  55. package/dist/core/solvency.js +1 -1
  56. package/dist/core/types.d.ts +94 -2
  57. package/dist/core/types.d.ts.map +1 -1
  58. package/dist/core/universal-account.d.ts +1 -1
  59. package/dist/core/universal-account.js +1 -1
  60. package/dist/core/witness.d.ts +1 -1
  61. package/dist/core/witness.js +1 -1
  62. package/dist/settlement/settlement.d.ts +1 -1
  63. package/dist/settlement/settlement.js +1 -1
  64. package/dist/utils/discovery.d.ts.map +1 -1
  65. package/dist/utils/discovery.js +19 -2
  66. package/dist/utils/discovery.js.map +1 -1
  67. package/dist/utils/http.d.ts +1 -1
  68. package/dist/utils/http.js +1 -1
  69. package/dist/wallet/wallet.d.ts.map +1 -1
  70. package/dist/wallet/wallet.js +45 -0
  71. package/dist/wallet/wallet.js.map +1 -1
  72. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"icp.js","sourceRoot":"","sources":["../../src/chains/icp.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;AAskBH,4CAEC;AAtkBD,mCAAoC;AAEpC,4CAA6C;AAE7C,6BAA6B;AAC7B,MAAM,kBAAkB,GAAG,6BAA6B,CAAC;AAEzD,4BAA4B;AAC5B,MAAM,YAAY,GAA2B;IACzC,OAAO,EAAE,iBAAiB;IAC1B,KAAK,EAAE,uBAAuB;CACjC,CAAC;AAEF,2DAA2D;AAC3D,MAAM,WAAW,GAAG,OAAO,CAAC;AAE5B,8CAA8C;AAC9C,MAAM,2BAA2B,GAAG,gBAAgB,CAAC;AAErD;;;GAGG;AACH,SAAS,YAAY,CAAC,KAAa;IAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,OAAO,KAAK,GAAG,IAAI,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACzC,KAAK,KAAK,EAAE,CAAC;IACjB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,WAAW,CAAC,KAA+B;IAChD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,SAAS,MAAM,CAAC,IAAY;IACxB,OAAO,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CAAC,MAA6C;IACnE,MAAM,WAAW,GAAkD,EAAE,CAAC;IAEtE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7C,WAAW,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,mDAAmD;IACnD,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAEjE,6CAA6C;IAC7C,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAC9B,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CACrD,CAAC;IAEF,OAAO,MAAM,CAAC,YAAY,CAAC,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,SAAiB;IACtC,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxE,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,kBAAkB,CACvB,EAAU,EACV,MAAc,EACd,GAAW,EACX,IAAY;IAEZ,uFAAuF;IACvF,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7B,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEvB,oCAAoC;IACpC,GAAG,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACjC,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC9B,GAAG,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAE/B,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,GAAW;IAMnC,OAAO;QACH,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,EAAE,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;QAC/B,GAAG,EAAE,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;QAC5B,IAAI,EAAE,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;KAChC,CAAC;AACN,CAAC;AAED,MAAa,UAAU;IAInB,YAAY,UAA+B,SAAS,EAAE,MAAe;QACjE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,gBAAgB,CAAC,EAAkB,EAAE,WAAmB;QAC1D,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,WAAW,CAAC,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAE1D,6BAA6B;YAC7B,IAAI,MAAM,IAAI,EAAE,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACxD,CAAC;YAED,8BAA8B;YAC9B,MAAM,WAAW,GAAG,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC3C,IAAI,WAAW,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,yDAAyD,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;YACnG,CAAC;YAED,gCAAgC;YAChC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YAEpE,8DAA8D;YAC9D,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAS,CAAC,GAAG,aAAgB,CAAC,CAAC,SAAS;YAEpF,wCAAwC;YACxC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAmC;gBACzD,CAAC,cAAc,EAAE,MAAM,CAAC;gBACxB,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,CAAC;gBAClE,CAAC,aAAa,EAAE,UAAU,CAAC;gBAC3B,CAAC,KAAK,EAAE,QAAQ,CAAC;gBACjB,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC;gBACtD,CAAC,gBAAgB,EAAE,eAAe,CAAC;aACtC,CAAC,CAAC;YAEH,yBAAyB;YACzB,MAAM,SAAS,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;YAE/C,+DAA+D;YAC/D,MAAM,cAAc,GAAG,MAAM,CACzB,MAAM,CAAC,MAAM,CAAC;gBACV,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,OAAO,CAAC;gBACjD,SAAS;aACZ,CAAC,CACL,CAAC;YAEF,MAAM,OAAO,GAAG;gBACZ,WAAW,EAAE,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAC3C,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACpC,MAAM,EAAE,WAAW;gBACnB,UAAU,EAAE,kBAAkB;gBAC9B,UAAU,EAAE,UAAU;gBACtB,GAAG,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAC7B,aAAa,EAAE,eAAe,CAAC,QAAQ,EAAE;gBACzC,EAAE,EAAE,EAAE,CAAC,EAAE;gBACT,MAAM,EAAE,EAAE,CAAC,MAAM;gBACjB,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE;gBACnB,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;aACxB,CAAC;YAEF,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,IAAI,CAAC,YAAY,mBAAU;gBAAE,MAAM,CAAC,CAAC;YACrC,MAAM,IAAI,mBAAU,CAChB,oCAAqC,CAAW,CAAC,OAAO,EAAE,EAC1D,KAAK,CACR,CAAC;QACN,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,UAAkB;QAChC,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YACtE,OAAO,OAAO,CAAC,WAAW,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,UAAU,CAAC;QACtB,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,CAAC,UAAkB,EAAE,SAAiB;QACvD,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YACtE,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAExE,MAAM,aAAa,GAAG;gBAClB,GAAG,OAAO;gBACV,SAAS,EAAE,GAAG,EAAE,kBAAkB;aACrC,CAAC;YAEF,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,IAAI,mBAAU,CAChB,mCAAoC,CAAW,CAAC,OAAO,EAAE,EACzD,KAAK,CACR,CAAC;QACN,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,SAAS,CAAC,QAAgB;QAC5B,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAEpE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YACjD,CAAC;YAED,mDAAmD;YACnD,uDAAuD;YACvD,8CAA8C;YAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAEvD,2DAA2D;YAC3D,MAAM,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnC,MAAM,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAEpC,8CAA8C;YAC9C,MAAM,MAAM,GAAG,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAExC,qBAAqB;YACrB,MAAM,QAAQ,GAAG;gBACb,OAAO,EAAE;oBACL,YAAY,EAAE,MAAM;oBACpB,WAAW,EAAE,gBAAgB,CAAC,OAAO,CAAC,UAAU,CAAC;oBACjD,WAAW,EAAE,OAAO,CAAC,UAAU;oBAC/B,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oBAChD,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC;oBACxC,cAAc,EAAE,OAAO,CAAC,aAAa;iBACxC;gBACD,aAAa,EAAE,EAAE,EAAE,kCAAkC;gBACrD,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;aACjC,CAAC;YAEF,mBAAmB;YACnB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,oBAAoB,OAAO,CAAC,UAAU,OAAO,CAAC;YACxE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;YAEnD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC9B,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACL,cAAc,EAAE,kBAAkB;iBACrC;gBACD,IAAI;aACP,CAAC,CAAC;YAEH,0DAA0D;YAC1D,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACrD,OAAO,OAAO,CAAC,SAAS,CAAC;YAC7B,CAAC;YAED,2BAA2B;YAC3B,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,IAAI,CAAC,YAAY,mBAAU;gBAAE,MAAM,CAAC,CAAC;YACrC,MAAM,IAAI,mBAAU,CAChB,+BAAgC,CAAW,CAAC,OAAO,EAAE,EACrD,KAAK,CACR,CAAC;QACN,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,UAAU,CAAC,OAAe;QAC5B,IAAI,CAAC;YACD,yCAAyC;YACzC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,oBAAoB,kBAAkB,QAAQ,CAAC;YAEzE,kCAAkC;YAClC,8CAA8C;YAC9C,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAClC,gDAAgD;YAChD,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM;YACpC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM;YACpC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM;YACpC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM;YACpC,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAE5B,MAAM,YAAY,GAAG;gBACjB,OAAO,EAAE;oBACL,YAAY,EAAE,OAAO;oBACrB,WAAW,EAAE,gBAAgB,CAAC,kBAAkB,CAAC;oBACjD,WAAW,EAAE,iBAAiB;oBAC9B,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACzB,MAAM,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,sBAAsB;oBAC7D,cAAc,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAS,CAAC,GAAG,aAAgB,CAAC,CAAC,QAAQ,EAAE;iBACjF;aACJ,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC9B,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACL,cAAc,EAAE,kBAAkB;iBACrC;gBACD,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;aAClD,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO,GAAG,CAAC;YACf,CAAC;YAED,4CAA4C;YAC5C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC1C,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEtC,oDAAoD;YACpD,iEAAiE;YACjE,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBAC1B,0CAA0C;gBAC1C,6DAA6D;gBAC7D,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC/D,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;gBAC7C,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC9B,CAAC;YAED,OAAO,GAAG,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,GAAG,CAAC;QACf,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,gBAAgB,CAAC,SAAiB;QACpC,IAAI,CAAC;YACD,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAErD,oDAAoD;YACpD,MAAM,KAAK,GAAG,CAAC;oBACX,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;oBAC7B,cAAc;oBACd,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACxB,CAAC,CAAC;YAEH,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,oBAAoB,kBAAkB,aAAa,CAAC;YAE9E,MAAM,gBAAgB,GAAG;gBACrB,OAAO,EAAE;oBACL,YAAY,EAAE,YAAY;oBAC1B,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;oBACpD,MAAM,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,YAAY;oBACnD,cAAc,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAS,CAAC,GAAG,aAAgB,CAAC,CAAC,QAAQ,EAAE;iBACjF;aACJ,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC9B,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACL,cAAc,EAAE,kBAAkB;iBACrC;gBACD,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;aACtD,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO,SAAS,CAAC;YACrB,CAAC;YAED,8CAA8C;YAC9C,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpC,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAE9C,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAO,SAAS,CAAC;YACpD,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,OAAO,UAAU,CAAC;YACtD,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,MAAM,CAAC;YAC9C,IAAI,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAAE,OAAO,YAAY,CAAC;YAC1D,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,OAAO,UAAU,CAAC;YAEtD,OAAO,SAAS,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;IAED;;OAEG;IACH,mBAAmB;QACf,OAAO,kBAAkB,CAAC;IAC9B,CAAC;CACJ;AAxVD,gCAwVC;AAED;;;;;;;;;GASG;AACH,SAAS,gBAAgB,CAAC,SAAiB;IACvC,sBAAsB;IACtB,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAED,iEAAiE;IACjE,yCAAyC;IACzC,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACxD,MAAM,WAAW,GAAG,kCAAkC,CAAC;IAEvD,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;YACb,sDAAsD;YACtD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC;IAED,wBAAwB;IACxB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,0DAA0D;IAC1D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CAAC,CAAS,EAAE,CAAS;IAC5C,gEAAgE;IAChE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAErC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC/F,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE/F,0DAA0D;IAC1D,MAAM,QAAQ,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IACzD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;IACvC,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,WAAW;IACjC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,QAAQ,CAAC;IACzB,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,UAAU;IAChC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC1B,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IACzB,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,UAAU;IAChC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAE1B,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,GAAW;IACjC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,CAAC,EAAE,CAAC;IACR,CAAC;IACD,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC3B,CAAC;AAED,mCAAmC;AACnC,SAAgB,gBAAgB,CAAC,MAAe;IAC5C,OAAO,IAAI,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"icp.js","sourceRoot":"","sources":["../../src/chains/icp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * IOTA (Stardust) Chain Adapter
3
+ *
4
+ * Builds IOTA Stardust transactions (BasicOutput transfers), attaches
5
+ * Ed25519 signatures from the FROST threshold signing network, and
6
+ * broadcasts via the IOTA Node REST API.
7
+ *
8
+ * IOTA Stardust uses Ed25519 for signing. The signing payload is the
9
+ * Blake2b-256 hash of the serialized transaction essence.
10
+ *
11
+ * No external dependencies — uses native fetch and crypto.
12
+ *
13
+ * Address format: iota1... (bech32, Stardust) or raw ed25519 address bytes.
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * import { IotaAdapter } from '@sequence0/sdk';
18
+ *
19
+ * const iota = new IotaAdapter('mainnet');
20
+ *
21
+ * const unsignedTx = await iota.buildTransaction(
22
+ * { to: 'iota1qp...', amount: '1000000', publicKey: 'abc...def' },
23
+ * 'iota1qp...'
24
+ * );
25
+ *
26
+ * // ... sign via FROST ed25519 ...
27
+ * const signedTx = await iota.attachSignature(unsignedTx, signatureHex);
28
+ * const blockId = await iota.broadcast(signedTx);
29
+ * ```
30
+ */
31
+ import { ChainAdapter, IotaTransaction } from '../core/types';
32
+ export declare class IotaAdapter implements ChainAdapter {
33
+ private nodeUrl;
34
+ private network;
35
+ private hrp;
36
+ constructor(network?: 'mainnet' | 'testnet', nodeUrl?: string);
37
+ getRpcUrl(): string;
38
+ /**
39
+ * Build an unsigned IOTA Stardust transaction for a BasicOutput transfer.
40
+ *
41
+ * Queries the indexer for spendable outputs, constructs a transaction
42
+ * essence with inputs and outputs, and returns the serialized essence
43
+ * along with its Blake2b-256 hash as the signing payload.
44
+ */
45
+ buildTransaction(tx: IotaTransaction, fromAddress: string): Promise<string>;
46
+ /**
47
+ * Extract the transaction essence hash (Blake2b-256) as the
48
+ * Ed25519 signing payload.
49
+ */
50
+ getSigningPayload(unsignedTx: string): string;
51
+ /**
52
+ * Attach an Ed25519 signature to the IOTA transaction.
53
+ *
54
+ * The signature is placed into an Ed25519 signature unlock block.
55
+ */
56
+ attachSignature(unsignedTx: string, signature: string): Promise<string>;
57
+ /**
58
+ * Broadcast a signed IOTA transaction by submitting a block.
59
+ *
60
+ * Constructs a block containing the transaction payload with
61
+ * Ed25519 signature unlock blocks, then POSTs it to the node.
62
+ */
63
+ broadcast(signedTx: string): Promise<string>;
64
+ /**
65
+ * Get balance in base units for an IOTA address.
66
+ *
67
+ * Queries the indexer for all basic outputs owned by the address
68
+ * and sums their amounts.
69
+ */
70
+ getBalance(address: string): Promise<string>;
71
+ /**
72
+ * Get node info (protocol parameters, network name, etc.).
73
+ */
74
+ getNodeInfo(): Promise<Record<string, unknown> | null>;
75
+ }
76
+ /** Create a mainnet IOTA adapter */
77
+ export declare function createIotaAdapter(nodeUrl?: string): IotaAdapter;
78
+ /** Create a testnet IOTA adapter */
79
+ export declare function createIotaTestnetAdapter(nodeUrl?: string): IotaAdapter;
80
+ //# sourceMappingURL=iota.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iota.d.ts","sourceRoot":"","sources":["../../src/chains/iota.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAGH,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AA8J9D,qBAAa,WAAY,YAAW,YAAY;IAC5C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,GAAG,CAAS;gBAER,OAAO,GAAE,SAAS,GAAG,SAAqB,EAAE,OAAO,CAAC,EAAE,MAAM;IAMxE,SAAS,IAAI,MAAM;IAInB;;;;;;OAMG;IACG,gBAAgB,CAAC,EAAE,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0KjF;;;OAGG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAS7C;;;;OAIG;IACG,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB7E;;;;;OAKG;IACG,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiFlD;;;;;OAKG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkClD;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAS/D;AAED,oCAAoC;AACpC,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,WAAW,CAE/D;AAED,oCAAoC;AACpC,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,WAAW,CAEtE"}
@@ -0,0 +1,502 @@
1
+ "use strict";
2
+ /**
3
+ * IOTA (Stardust) Chain Adapter
4
+ *
5
+ * Builds IOTA Stardust transactions (BasicOutput transfers), attaches
6
+ * Ed25519 signatures from the FROST threshold signing network, and
7
+ * broadcasts via the IOTA Node REST API.
8
+ *
9
+ * IOTA Stardust uses Ed25519 for signing. The signing payload is the
10
+ * Blake2b-256 hash of the serialized transaction essence.
11
+ *
12
+ * No external dependencies — uses native fetch and crypto.
13
+ *
14
+ * Address format: iota1... (bech32, Stardust) or raw ed25519 address bytes.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * import { IotaAdapter } from '@sequence0/sdk';
19
+ *
20
+ * const iota = new IotaAdapter('mainnet');
21
+ *
22
+ * const unsignedTx = await iota.buildTransaction(
23
+ * { to: 'iota1qp...', amount: '1000000', publicKey: 'abc...def' },
24
+ * 'iota1qp...'
25
+ * );
26
+ *
27
+ * // ... sign via FROST ed25519 ...
28
+ * const signedTx = await iota.attachSignature(unsignedTx, signatureHex);
29
+ * const blockId = await iota.broadcast(signedTx);
30
+ * ```
31
+ */
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.IotaAdapter = void 0;
34
+ exports.createIotaAdapter = createIotaAdapter;
35
+ exports.createIotaTestnetAdapter = createIotaTestnetAdapter;
36
+ const crypto_1 = require("crypto");
37
+ const errors_1 = require("../utils/errors");
38
+ // ── Network Configuration ──
39
+ const DEFAULT_NODE_URLS = {
40
+ 'mainnet': 'https://api.stardust-mainnet.iotaledger.net',
41
+ 'testnet': 'https://api.testnet.shimmer.network',
42
+ };
43
+ const BECH32_HRPS = {
44
+ 'mainnet': 'iota',
45
+ 'testnet': 'rms',
46
+ };
47
+ /** Protocol parameters endpoint */
48
+ const INFO_PATH = '/api/core/v2/info';
49
+ // ── Bech32 helpers (subset needed for IOTA addresses) ──
50
+ const BECH32_CHARSET = 'qpzry9x8gf2tvdw0s3jn54khce6mua7l';
51
+ function bech32Polymod(values) {
52
+ const GEN = [0x3b6a57b2, 0x26508e6d, 0x1ea119fa, 0x3d4233dd, 0x2a1462b3];
53
+ let chk = 1;
54
+ for (const v of values) {
55
+ const b = chk >> 25;
56
+ chk = ((chk & 0x1ffffff) << 5) ^ v;
57
+ for (let i = 0; i < 5; i++) {
58
+ if ((b >> i) & 1)
59
+ chk ^= GEN[i];
60
+ }
61
+ }
62
+ return chk;
63
+ }
64
+ function bech32HrpExpand(hrp) {
65
+ const ret = [];
66
+ for (let i = 0; i < hrp.length; i++)
67
+ ret.push(hrp.charCodeAt(i) >> 5);
68
+ ret.push(0);
69
+ for (let i = 0; i < hrp.length; i++)
70
+ ret.push(hrp.charCodeAt(i) & 31);
71
+ return ret;
72
+ }
73
+ function bech32Decode(str) {
74
+ const pos = str.lastIndexOf('1');
75
+ if (pos < 1 || pos + 7 > str.length)
76
+ return null;
77
+ const hrp = str.slice(0, pos).toLowerCase();
78
+ const dataChars = str.slice(pos + 1).toLowerCase();
79
+ const data = [];
80
+ for (const c of dataChars) {
81
+ const idx = BECH32_CHARSET.indexOf(c);
82
+ if (idx === -1)
83
+ return null;
84
+ data.push(idx);
85
+ }
86
+ if (bech32Polymod([...bech32HrpExpand(hrp), ...data]) !== 1)
87
+ return null;
88
+ return { hrp, data: data.slice(0, -6) };
89
+ }
90
+ function bech32Encode(hrp, data5bit) {
91
+ const values = [...bech32HrpExpand(hrp), ...data5bit];
92
+ const polymod = bech32Polymod([...values, 0, 0, 0, 0, 0, 0]) ^ 1;
93
+ const checksum = [];
94
+ for (let i = 0; i < 6; i++)
95
+ checksum.push((polymod >> (5 * (5 - i))) & 31);
96
+ return hrp + '1' + [...data5bit, ...checksum].map((d) => BECH32_CHARSET[d]).join('');
97
+ }
98
+ function convertBits(data, fromBits, toBits, pad) {
99
+ let acc = 0;
100
+ let bits = 0;
101
+ const ret = [];
102
+ const maxv = (1 << toBits) - 1;
103
+ for (const value of data) {
104
+ acc = (acc << fromBits) | value;
105
+ bits += fromBits;
106
+ while (bits >= toBits) {
107
+ bits -= toBits;
108
+ ret.push((acc >> bits) & maxv);
109
+ }
110
+ }
111
+ if (pad && bits > 0) {
112
+ ret.push((acc << (toBits - bits)) & maxv);
113
+ }
114
+ return ret;
115
+ }
116
+ /**
117
+ * Decode an IOTA bech32 address to raw bytes (type byte + ed25519 pubkey hash).
118
+ */
119
+ function decodeBech32Address(address) {
120
+ const decoded = bech32Decode(address);
121
+ if (!decoded)
122
+ return null;
123
+ const bytes = convertBits(decoded.data, 5, 8, false);
124
+ return new Uint8Array(bytes);
125
+ }
126
+ /**
127
+ * Encode raw address bytes to bech32 IOTA address.
128
+ */
129
+ function encodeBech32Address(hrp, addressBytes) {
130
+ const data5bit = convertBits(Array.from(addressBytes), 8, 5, true);
131
+ return bech32Encode(hrp, data5bit);
132
+ }
133
+ /**
134
+ * Derive an IOTA Ed25519 address from a public key.
135
+ * Address type 0x00 (Ed25519) + Blake2b-256(pubkey)
136
+ */
137
+ function ed25519AddressFromPubKey(pubKeyHex) {
138
+ const pubKey = Buffer.from(pubKeyHex, 'hex');
139
+ const hash = (0, crypto_1.createHash)('blake2b256').update(pubKey).digest();
140
+ const address = new Uint8Array(1 + hash.length);
141
+ address[0] = 0x00; // Ed25519 address type
142
+ address.set(hash, 1);
143
+ return address;
144
+ }
145
+ /**
146
+ * Blake2b-256 hash.
147
+ */
148
+ function blake2b256(data) {
149
+ return (0, crypto_1.createHash)('blake2b256').update(data).digest();
150
+ }
151
+ // ── Serialization helpers for Stardust transaction essence ──
152
+ function writeU8(buf, value) {
153
+ buf.push(value & 0xff);
154
+ }
155
+ function writeU16LE(buf, value) {
156
+ buf.push(value & 0xff);
157
+ buf.push((value >> 8) & 0xff);
158
+ }
159
+ function writeU32LE(buf, value) {
160
+ buf.push(value & 0xff);
161
+ buf.push((value >> 8) & 0xff);
162
+ buf.push((value >> 16) & 0xff);
163
+ buf.push((value >> 24) & 0xff);
164
+ }
165
+ function writeU64LE(buf, value) {
166
+ for (let i = 0; i < 8; i++) {
167
+ buf.push(Number((value >> BigInt(i * 8)) & 0xffn));
168
+ }
169
+ }
170
+ function writeBytes(buf, data) {
171
+ for (const b of data)
172
+ buf.push(b);
173
+ }
174
+ function writePrefixedBytes(buf, data) {
175
+ writeU16LE(buf, data.length);
176
+ writeBytes(buf, data);
177
+ }
178
+ // ── Adapter ──
179
+ class IotaAdapter {
180
+ constructor(network = 'mainnet', nodeUrl) {
181
+ this.network = network;
182
+ this.nodeUrl = nodeUrl || DEFAULT_NODE_URLS[network];
183
+ this.hrp = BECH32_HRPS[network];
184
+ }
185
+ getRpcUrl() {
186
+ return this.nodeUrl;
187
+ }
188
+ /**
189
+ * Build an unsigned IOTA Stardust transaction for a BasicOutput transfer.
190
+ *
191
+ * Queries the indexer for spendable outputs, constructs a transaction
192
+ * essence with inputs and outputs, and returns the serialized essence
193
+ * along with its Blake2b-256 hash as the signing payload.
194
+ */
195
+ async buildTransaction(tx, fromAddress) {
196
+ try {
197
+ const publicKey = tx.publicKey;
198
+ if (!publicKey || publicKey.length !== 64) {
199
+ throw new Error('IOTA requires a 32-byte ed25519 public key hex in tx.publicKey');
200
+ }
201
+ const amount = BigInt(tx.amount);
202
+ if (amount <= 0n) {
203
+ throw new Error('Amount must be positive');
204
+ }
205
+ // Resolve sender address bytes
206
+ const senderAddressBytes = ed25519AddressFromPubKey(publicKey);
207
+ const senderBech32 = encodeBech32Address(this.hrp, senderAddressBytes);
208
+ // Resolve recipient address bytes
209
+ let recipientAddressBytes;
210
+ if (tx.to.startsWith(this.hrp + '1') || tx.to.startsWith('iota1') || tx.to.startsWith('rms1')) {
211
+ const decoded = decodeBech32Address(tx.to);
212
+ if (!decoded)
213
+ throw new Error(`Invalid bech32 address: ${tx.to}`);
214
+ recipientAddressBytes = decoded;
215
+ }
216
+ else {
217
+ // Assume raw hex ed25519 public key
218
+ recipientAddressBytes = ed25519AddressFromPubKey(tx.to);
219
+ }
220
+ // Query spendable basic outputs for the sender
221
+ const indexerUrl = `${this.nodeUrl}/api/indexer/v2/outputs/basic?address=${senderBech32}&hasStorageDepositReturn=false&hasExpiration=false&hasTimelock=false`;
222
+ const indexerResponse = await fetch(indexerUrl);
223
+ if (!indexerResponse.ok) {
224
+ throw new Error(`IOTA indexer returned HTTP ${indexerResponse.status}`);
225
+ }
226
+ const indexerData = await indexerResponse.json();
227
+ const outputIds = indexerData.items || [];
228
+ if (outputIds.length === 0) {
229
+ throw new Error('No spendable outputs found for sender address');
230
+ }
231
+ // Fetch output details and collect inputs
232
+ let totalInput = 0n;
233
+ const inputs = [];
234
+ const inputOutputs = [];
235
+ for (const outputId of outputIds) {
236
+ if (totalInput >= amount)
237
+ break;
238
+ const outputUrl = `${this.nodeUrl}/api/core/v2/outputs/${outputId}`;
239
+ const outputResponse = await fetch(outputUrl);
240
+ if (!outputResponse.ok)
241
+ continue;
242
+ const outputData = await outputResponse.json();
243
+ const outputAmount = BigInt(outputData.output?.amount || '0');
244
+ if (outputAmount === 0n)
245
+ continue;
246
+ totalInput += outputAmount;
247
+ inputs.push({
248
+ transactionId: outputData.metadata?.transactionId || outputId.slice(0, 64),
249
+ outputIndex: outputData.metadata?.outputIndex ?? parseInt(outputId.slice(64), 16),
250
+ });
251
+ inputOutputs.push({ outputId, output: outputData.output || {} });
252
+ }
253
+ if (totalInput < amount) {
254
+ throw new Error(`Insufficient balance: have ${totalInput}, need ${amount}`);
255
+ }
256
+ // Build the transaction essence
257
+ const essenceBytes = [];
258
+ // Transaction Essence type (1 = Regular)
259
+ writeU8(essenceBytes, 1);
260
+ // Network ID (u64) — use 0 for auto
261
+ writeU64LE(essenceBytes, 0n);
262
+ // Inputs count (u16)
263
+ writeU16LE(essenceBytes, inputs.length);
264
+ // Inputs
265
+ for (const input of inputs) {
266
+ // Input type: UTXO (0)
267
+ writeU8(essenceBytes, 0);
268
+ // Transaction ID (32 bytes)
269
+ writeBytes(essenceBytes, Buffer.from(input.transactionId, 'hex'));
270
+ // Output Index (u16)
271
+ writeU16LE(essenceBytes, input.outputIndex);
272
+ }
273
+ // Inputs Commitment (Blake2b-256 of sorted serialized consumed outputs)
274
+ // Simplified: hash of concatenated output IDs
275
+ const commitmentData = [];
276
+ for (const io of inputOutputs) {
277
+ writeBytes(commitmentData, Buffer.from(io.outputId, 'hex'));
278
+ }
279
+ const inputsCommitment = blake2b256(new Uint8Array(commitmentData));
280
+ writeBytes(essenceBytes, inputsCommitment);
281
+ // Outputs
282
+ const change = totalInput - amount;
283
+ const outputCount = change > 0n ? 2 : 1;
284
+ writeU16LE(essenceBytes, outputCount);
285
+ // Output 1: recipient BasicOutput
286
+ // Output type: BasicOutput (3)
287
+ writeU8(essenceBytes, 3);
288
+ // Amount (u64)
289
+ writeU64LE(essenceBytes, amount);
290
+ // Native Tokens count (u8)
291
+ writeU8(essenceBytes, 0);
292
+ // Unlock Conditions count (u8)
293
+ writeU8(essenceBytes, 1);
294
+ // Address Unlock Condition (type 0)
295
+ writeU8(essenceBytes, 0);
296
+ // Address (type + data)
297
+ writeBytes(essenceBytes, recipientAddressBytes);
298
+ // Feature count (u8)
299
+ writeU8(essenceBytes, 0);
300
+ // Output 2: change (if any)
301
+ if (change > 0n) {
302
+ writeU8(essenceBytes, 3);
303
+ writeU64LE(essenceBytes, change);
304
+ writeU8(essenceBytes, 0); // no native tokens
305
+ writeU8(essenceBytes, 1); // 1 unlock condition
306
+ writeU8(essenceBytes, 0); // address unlock condition
307
+ writeBytes(essenceBytes, senderAddressBytes);
308
+ writeU8(essenceBytes, 0); // no features
309
+ }
310
+ // Optional Payload (none)
311
+ writeU32LE(essenceBytes, 0);
312
+ const essenceArray = new Uint8Array(essenceBytes);
313
+ const essenceHash = blake2b256(essenceArray);
314
+ const payload = {
315
+ signingHash: essenceHash.toString('hex'),
316
+ essence: Buffer.from(essenceArray).toString('hex'),
317
+ inputs: inputs.map((inp, idx) => ({
318
+ ...inp,
319
+ outputId: inputOutputs[idx].outputId,
320
+ })),
321
+ publicKey,
322
+ fromAddress,
323
+ toAddress: tx.to,
324
+ amount: tx.amount,
325
+ inputCount: inputs.length,
326
+ };
327
+ return Buffer.from(JSON.stringify(payload)).toString('hex');
328
+ }
329
+ catch (e) {
330
+ if (e instanceof errors_1.ChainError)
331
+ throw e;
332
+ throw new errors_1.ChainError(`Failed to build IOTA transaction: ${e.message}`, 'iota');
333
+ }
334
+ }
335
+ /**
336
+ * Extract the transaction essence hash (Blake2b-256) as the
337
+ * Ed25519 signing payload.
338
+ */
339
+ getSigningPayload(unsignedTx) {
340
+ try {
341
+ const payload = JSON.parse(Buffer.from(unsignedTx, 'hex').toString());
342
+ return payload.signingHash;
343
+ }
344
+ catch {
345
+ return unsignedTx;
346
+ }
347
+ }
348
+ /**
349
+ * Attach an Ed25519 signature to the IOTA transaction.
350
+ *
351
+ * The signature is placed into an Ed25519 signature unlock block.
352
+ */
353
+ async attachSignature(unsignedTx, signature) {
354
+ try {
355
+ const payload = JSON.parse(Buffer.from(unsignedTx, 'hex').toString());
356
+ const sig = signature.startsWith('0x') ? signature.slice(2) : signature;
357
+ const signedPayload = {
358
+ ...payload,
359
+ signature: sig, // 64-byte Ed25519 signature hex
360
+ };
361
+ return Buffer.from(JSON.stringify(signedPayload)).toString('hex');
362
+ }
363
+ catch (e) {
364
+ throw new errors_1.ChainError(`Failed to attach IOTA signature: ${e.message}`, 'iota');
365
+ }
366
+ }
367
+ /**
368
+ * Broadcast a signed IOTA transaction by submitting a block.
369
+ *
370
+ * Constructs a block containing the transaction payload with
371
+ * Ed25519 signature unlock blocks, then POSTs it to the node.
372
+ */
373
+ async broadcast(signedTx) {
374
+ try {
375
+ const payload = JSON.parse(Buffer.from(signedTx, 'hex').toString());
376
+ // Build the unlock blocks
377
+ const unlocks = [];
378
+ for (let i = 0; i < payload.inputCount; i++) {
379
+ if (i === 0) {
380
+ // First input: Ed25519 signature unlock
381
+ unlocks.push({
382
+ type: 0, // Signature Unlock
383
+ signature: {
384
+ type: 0, // Ed25519
385
+ publicKey: '0x' + payload.publicKey,
386
+ signature: '0x' + payload.signature,
387
+ },
388
+ });
389
+ }
390
+ else {
391
+ // Subsequent inputs from same address: Reference Unlock
392
+ unlocks.push({
393
+ type: 1, // Reference Unlock
394
+ reference: 0,
395
+ });
396
+ }
397
+ }
398
+ // Construct the transaction payload
399
+ const transactionPayload = {
400
+ type: 6, // Transaction Payload type
401
+ essence: {
402
+ type: 1, // Regular Transaction Essence
403
+ data: '0x' + payload.essence,
404
+ },
405
+ unlocks,
406
+ };
407
+ // Get tips for the block
408
+ const tipsResponse = await fetch(`${this.nodeUrl}/api/core/v2/tips`);
409
+ let parents = [];
410
+ if (tipsResponse.ok) {
411
+ const tipsData = await tipsResponse.json();
412
+ parents = (tipsData.tips || []).slice(0, 8);
413
+ }
414
+ if (parents.length === 0) {
415
+ throw new Error('Could not get tips from the IOTA node');
416
+ }
417
+ // Submit the block
418
+ const block = {
419
+ protocolVersion: 2,
420
+ parents,
421
+ payload: transactionPayload,
422
+ nonce: '0',
423
+ };
424
+ const submitResponse = await fetch(`${this.nodeUrl}/api/core/v2/blocks`, {
425
+ method: 'POST',
426
+ headers: { 'Content-Type': 'application/json' },
427
+ body: JSON.stringify(block),
428
+ });
429
+ if (!submitResponse.ok) {
430
+ const errorText = await submitResponse.text().catch(() => '');
431
+ throw new Error(`IOTA node returned HTTP ${submitResponse.status}: ${errorText}`);
432
+ }
433
+ const submitData = await submitResponse.json();
434
+ return submitData.blockId || '';
435
+ }
436
+ catch (e) {
437
+ if (e instanceof errors_1.ChainError)
438
+ throw e;
439
+ throw new errors_1.ChainError(`Failed to broadcast IOTA block: ${e.message}`, 'iota');
440
+ }
441
+ }
442
+ /**
443
+ * Get balance in base units for an IOTA address.
444
+ *
445
+ * Queries the indexer for all basic outputs owned by the address
446
+ * and sums their amounts.
447
+ */
448
+ async getBalance(address) {
449
+ try {
450
+ // Ensure bech32 format
451
+ let bech32Addr = address;
452
+ if (!address.includes('1')) {
453
+ // Raw hex — assume ed25519 public key, derive address
454
+ const addrBytes = ed25519AddressFromPubKey(address);
455
+ bech32Addr = encodeBech32Address(this.hrp, addrBytes);
456
+ }
457
+ const url = `${this.nodeUrl}/api/indexer/v2/outputs/basic?address=${bech32Addr}`;
458
+ const response = await fetch(url);
459
+ if (!response.ok)
460
+ return '0';
461
+ const data = await response.json();
462
+ const outputIds = data.items || [];
463
+ let total = 0n;
464
+ for (const outputId of outputIds) {
465
+ const outputUrl = `${this.nodeUrl}/api/core/v2/outputs/${outputId}`;
466
+ const outputResponse = await fetch(outputUrl);
467
+ if (!outputResponse.ok)
468
+ continue;
469
+ const outputData = await outputResponse.json();
470
+ total += BigInt(outputData.output?.amount || '0');
471
+ }
472
+ return total.toString();
473
+ }
474
+ catch {
475
+ return '0';
476
+ }
477
+ }
478
+ /**
479
+ * Get node info (protocol parameters, network name, etc.).
480
+ */
481
+ async getNodeInfo() {
482
+ try {
483
+ const response = await fetch(`${this.nodeUrl}${INFO_PATH}`);
484
+ if (!response.ok)
485
+ return null;
486
+ return await response.json();
487
+ }
488
+ catch {
489
+ return null;
490
+ }
491
+ }
492
+ }
493
+ exports.IotaAdapter = IotaAdapter;
494
+ /** Create a mainnet IOTA adapter */
495
+ function createIotaAdapter(nodeUrl) {
496
+ return new IotaAdapter('mainnet', nodeUrl);
497
+ }
498
+ /** Create a testnet IOTA adapter */
499
+ function createIotaTestnetAdapter(nodeUrl) {
500
+ return new IotaAdapter('testnet', nodeUrl);
501
+ }
502
+ //# sourceMappingURL=iota.js.map