@aeternity/aepp-sdk 9.0.1 → 11.0.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 (284) hide show
  1. package/README.md +15 -14
  2. package/dist/aepp-sdk.browser-script.js +1 -1
  3. package/dist/aepp-sdk.browser-script.js.LICENSE.txt +7 -36
  4. package/dist/aepp-sdk.browser-script.js.map +1 -1
  5. package/dist/aepp-sdk.browser.js +1 -1
  6. package/dist/aepp-sdk.browser.js.map +1 -1
  7. package/dist/aepp-sdk.js +1 -1
  8. package/dist/aepp-sdk.js.map +1 -1
  9. package/es/account/base.mjs +179 -0
  10. package/es/account/base.mjs.map +1 -0
  11. package/es/account/memory.mjs +99 -0
  12. package/es/account/memory.mjs.map +1 -0
  13. package/es/account/multiple.mjs +179 -0
  14. package/es/account/multiple.mjs.map +1 -0
  15. package/es/ae/aens.mjs +404 -0
  16. package/es/ae/aens.mjs.map +1 -0
  17. package/es/ae/{aepp.js → aepp.mjs} +9 -9
  18. package/es/ae/aepp.mjs.map +1 -0
  19. package/es/ae/contract.mjs +159 -0
  20. package/es/ae/contract.mjs.map +1 -0
  21. package/es/ae/index.mjs +207 -0
  22. package/es/ae/index.mjs.map +1 -0
  23. package/es/ae/oracle.mjs +339 -0
  24. package/es/ae/oracle.mjs.map +1 -0
  25. package/es/ae/{universal.js → universal.mjs} +10 -10
  26. package/es/ae/universal.mjs.map +1 -0
  27. package/es/ae/{wallet.js → wallet.mjs} +10 -10
  28. package/es/ae/wallet.mjs.map +1 -0
  29. package/es/aepp-wallet-communication/schema.d.ts +74 -0
  30. package/es/bignumber.d.ts +1 -7
  31. package/es/chain/{index.js → index.mjs} +29 -9
  32. package/es/chain/index.mjs.map +1 -0
  33. package/es/chain/node.mjs +442 -0
  34. package/es/chain/node.mjs.map +1 -0
  35. package/es/channel/handlers.mjs +1110 -0
  36. package/es/channel/handlers.mjs.map +1 -0
  37. package/es/channel/{index.js → index.mjs} +245 -472
  38. package/es/channel/index.mjs.map +1 -0
  39. package/es/channel/internal.mjs +283 -0
  40. package/es/channel/internal.mjs.map +1 -0
  41. package/es/contract/aci.mjs +477 -0
  42. package/es/contract/aci.mjs.map +1 -0
  43. package/es/contract/compiler.mjs +115 -0
  44. package/es/contract/compiler.mjs.map +1 -0
  45. package/es/contract/ga/helpers.mjs +30 -0
  46. package/es/contract/ga/helpers.mjs.map +1 -0
  47. package/es/contract/ga/index.mjs +178 -0
  48. package/es/contract/ga/index.mjs.map +1 -0
  49. package/es/errors.d.ts +284 -0
  50. package/es/index.mjs +57 -0
  51. package/es/index.mjs.map +1 -0
  52. package/es/node-pool/index.mjs +188 -0
  53. package/es/node-pool/index.mjs.map +1 -0
  54. package/es/node.mjs +133 -0
  55. package/es/node.mjs.map +1 -0
  56. package/es/other.d.ts +1 -1
  57. package/es/tx/builder/field-types.mjs +74 -0
  58. package/es/tx/builder/field-types.mjs.map +1 -0
  59. package/es/tx/builder/helpers.mjs +363 -0
  60. package/es/tx/builder/helpers.mjs.map +1 -0
  61. package/es/tx/builder/index.mjs +606 -0
  62. package/es/tx/builder/index.mjs.map +1 -0
  63. package/es/tx/builder/schema.mjs +760 -0
  64. package/es/tx/builder/schema.mjs.map +1 -0
  65. package/es/tx/{index.js → index.mjs} +107 -15
  66. package/es/tx/index.mjs.map +1 -0
  67. package/es/tx/tx-object.mjs +283 -0
  68. package/es/tx/tx-object.mjs.map +1 -0
  69. package/es/tx/tx.mjs +938 -0
  70. package/es/tx/tx.mjs.map +1 -0
  71. package/es/tx/validator.mjs +247 -0
  72. package/es/tx/validator.mjs.map +1 -0
  73. package/es/typings/blakejs/index.d.mjs +2 -0
  74. package/es/typings/blakejs/{index.d.js.map → index.d.mjs.map} +1 -1
  75. package/es/utils/aepp-wallet-communication/connection/{browser-runtime.js → browser-runtime.mjs} +27 -29
  76. package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs.map +1 -0
  77. package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs +183 -0
  78. package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs.map +1 -0
  79. package/es/utils/aepp-wallet-communication/connection/{index.js → index.mjs} +7 -3
  80. package/es/utils/aepp-wallet-communication/connection/index.mjs.map +1 -0
  81. package/es/utils/aepp-wallet-communication/{content-script-bridge.js → content-script-bridge.mjs} +29 -23
  82. package/es/utils/aepp-wallet-communication/content-script-bridge.mjs.map +1 -0
  83. package/es/utils/aepp-wallet-communication/helpers.mjs +92 -0
  84. package/es/utils/aepp-wallet-communication/helpers.mjs.map +1 -0
  85. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs +375 -0
  86. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs.map +1 -0
  87. package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs +275 -0
  88. package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs.map +1 -0
  89. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs +541 -0
  90. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs.map +1 -0
  91. package/es/utils/aepp-wallet-communication/schema.mjs +102 -0
  92. package/es/utils/aepp-wallet-communication/schema.mjs.map +1 -0
  93. package/es/utils/aepp-wallet-communication/wallet-detector.mjs +110 -0
  94. package/es/utils/aepp-wallet-communication/wallet-detector.mjs.map +1 -0
  95. package/es/utils/amount-formatter.mjs +139 -0
  96. package/es/utils/amount-formatter.mjs.map +1 -0
  97. package/es/utils/async-init.mjs +64 -0
  98. package/es/utils/async-init.mjs.map +1 -0
  99. package/es/utils/bignumber.mjs +21 -0
  100. package/es/utils/bignumber.mjs.map +1 -0
  101. package/es/utils/{bytes.js → bytes.mjs} +16 -12
  102. package/es/utils/bytes.mjs.map +1 -0
  103. package/es/utils/{crypto-ts.js → crypto-ts.mjs} +11 -3
  104. package/es/utils/crypto-ts.mjs.map +1 -0
  105. package/es/utils/crypto.mjs +239 -0
  106. package/es/utils/crypto.mjs.map +1 -0
  107. package/es/utils/errors.mjs +689 -0
  108. package/es/utils/errors.mjs.map +1 -0
  109. package/es/utils/hd-wallet.mjs +111 -0
  110. package/es/utils/hd-wallet.mjs.map +1 -0
  111. package/es/utils/json-big.mjs +45 -0
  112. package/es/utils/json-big.mjs.map +1 -0
  113. package/es/utils/keystore.mjs +240 -0
  114. package/es/utils/keystore.mjs.map +1 -0
  115. package/es/utils/mptree.mjs +161 -0
  116. package/es/utils/mptree.mjs.map +1 -0
  117. package/es/utils/other.mjs +43 -0
  118. package/es/utils/other.mjs.map +1 -0
  119. package/es/utils/semver-satisfies.mjs +16 -0
  120. package/es/utils/semver-satisfies.mjs.map +1 -0
  121. package/es/utils/{string.js → string.mjs} +5 -14
  122. package/es/utils/string.mjs.map +1 -0
  123. package/es/utils/swagger.mjs +164 -0
  124. package/es/utils/swagger.mjs.map +1 -0
  125. package/package.json +55 -62
  126. package/src/account/base.js +3 -1
  127. package/src/account/memory.js +13 -8
  128. package/src/account/multiple.js +31 -22
  129. package/src/ae/aens.js +75 -77
  130. package/src/ae/aepp.js +2 -2
  131. package/src/ae/contract.js +27 -291
  132. package/src/ae/index.js +9 -7
  133. package/src/ae/oracle.js +51 -28
  134. package/src/ae/universal.js +4 -2
  135. package/src/ae/wallet.js +2 -2
  136. package/src/chain/index.js +29 -6
  137. package/src/chain/node.js +95 -67
  138. package/src/channel/handlers.js +30 -21
  139. package/src/channel/index.js +44 -20
  140. package/src/channel/internal.js +30 -24
  141. package/src/contract/aci.js +376 -0
  142. package/src/contract/compiler.js +41 -91
  143. package/src/contract/ga/helpers.js +10 -13
  144. package/src/contract/ga/index.js +42 -33
  145. package/src/index.js +9 -10
  146. package/src/node-pool/index.js +29 -17
  147. package/src/node.js +33 -36
  148. package/src/tx/builder/field-types.js +61 -0
  149. package/src/tx/builder/helpers.js +126 -84
  150. package/src/tx/builder/index.js +83 -41
  151. package/src/tx/builder/schema.js +50 -40
  152. package/src/tx/index.js +101 -12
  153. package/src/tx/tx-object.js +35 -15
  154. package/src/tx/tx.js +232 -153
  155. package/src/tx/validator.js +34 -12
  156. package/src/utils/aepp-wallet-communication/connection/browser-runtime.js +11 -5
  157. package/src/utils/aepp-wallet-communication/connection/browser-window-message.js +35 -13
  158. package/src/utils/aepp-wallet-communication/connection/index.js +2 -1
  159. package/src/utils/aepp-wallet-communication/content-script-bridge.js +14 -7
  160. package/src/utils/aepp-wallet-communication/helpers.js +6 -14
  161. package/src/utils/aepp-wallet-communication/rpc/aepp-rpc.js +107 -60
  162. package/src/utils/aepp-wallet-communication/rpc/rpc-client.js +24 -11
  163. package/src/utils/aepp-wallet-communication/rpc/wallet-rpc.js +98 -56
  164. package/src/utils/aepp-wallet-communication/schema.ts +80 -0
  165. package/src/utils/aepp-wallet-communication/wallet-detector.js +6 -2
  166. package/src/utils/amount-formatter.ts +4 -3
  167. package/src/utils/async-init.js +10 -6
  168. package/src/utils/bignumber.ts +3 -10
  169. package/src/utils/bytes.ts +3 -2
  170. package/src/utils/crypto-ts.ts +2 -2
  171. package/src/utils/crypto.js +10 -144
  172. package/src/utils/errors.ts +683 -0
  173. package/src/utils/hd-wallet.js +11 -26
  174. package/src/utils/keystore.js +57 -53
  175. package/src/utils/mptree.ts +12 -6
  176. package/src/utils/other.ts +1 -1
  177. package/src/utils/semver-satisfies.ts +1 -1
  178. package/src/utils/swagger.js +75 -45
  179. package/es/account/base.js +0 -259
  180. package/es/account/base.js.map +0 -1
  181. package/es/account/memory.js +0 -86
  182. package/es/account/memory.js.map +0 -1
  183. package/es/account/multiple.js +0 -267
  184. package/es/account/multiple.js.map +0 -1
  185. package/es/ae/aens.js +0 -829
  186. package/es/ae/aens.js.map +0 -1
  187. package/es/ae/aepp.js.map +0 -1
  188. package/es/ae/contract.js +0 -985
  189. package/es/ae/contract.js.map +0 -1
  190. package/es/ae/index.js +0 -442
  191. package/es/ae/index.js.map +0 -1
  192. package/es/ae/oracle.js +0 -690
  193. package/es/ae/oracle.js.map +0 -1
  194. package/es/ae/universal.js.map +0 -1
  195. package/es/ae/wallet.js.map +0 -1
  196. package/es/chain/index.js.map +0 -1
  197. package/es/chain/node.js +0 -1119
  198. package/es/chain/node.js.map +0 -1
  199. package/es/channel/handlers.js +0 -1601
  200. package/es/channel/handlers.js.map +0 -1
  201. package/es/channel/index.js.map +0 -1
  202. package/es/channel/internal.js +0 -438
  203. package/es/channel/internal.js.map +0 -1
  204. package/es/contract/aci/helpers.js +0 -298
  205. package/es/contract/aci/helpers.js.map +0 -1
  206. package/es/contract/aci/index.js +0 -517
  207. package/es/contract/aci/index.js.map +0 -1
  208. package/es/contract/aci/transformation.js +0 -742
  209. package/es/contract/aci/transformation.js.map +0 -1
  210. package/es/contract/compiler.js +0 -316
  211. package/es/contract/compiler.js.map +0 -1
  212. package/es/contract/ga/helpers.js +0 -120
  213. package/es/contract/ga/helpers.js.map +0 -1
  214. package/es/contract/ga/index.js +0 -307
  215. package/es/contract/ga/index.js.map +0 -1
  216. package/es/contract/index.js +0 -158
  217. package/es/contract/index.js.map +0 -1
  218. package/es/index.js +0 -57
  219. package/es/index.js.map +0 -1
  220. package/es/node-pool/index.js +0 -204
  221. package/es/node-pool/index.js.map +0 -1
  222. package/es/node.js +0 -228
  223. package/es/node.js.map +0 -1
  224. package/es/tx/builder/helpers.js +0 -355
  225. package/es/tx/builder/helpers.js.map +0 -1
  226. package/es/tx/builder/index.js +0 -686
  227. package/es/tx/builder/index.js.map +0 -1
  228. package/es/tx/builder/schema.js +0 -695
  229. package/es/tx/builder/schema.js.map +0 -1
  230. package/es/tx/index.js.map +0 -1
  231. package/es/tx/tx-object.js +0 -297
  232. package/es/tx/tx-object.js.map +0 -1
  233. package/es/tx/tx.js +0 -1757
  234. package/es/tx/tx.js.map +0 -1
  235. package/es/tx/validator.js +0 -344
  236. package/es/tx/validator.js.map +0 -1
  237. package/es/typings/blakejs/index.d.js +0 -2
  238. package/es/utils/aepp-wallet-communication/connection/browser-runtime.js.map +0 -1
  239. package/es/utils/aepp-wallet-communication/connection/browser-window-message.js +0 -211
  240. package/es/utils/aepp-wallet-communication/connection/browser-window-message.js.map +0 -1
  241. package/es/utils/aepp-wallet-communication/connection/index.js.map +0 -1
  242. package/es/utils/aepp-wallet-communication/content-script-bridge.js.map +0 -1
  243. package/es/utils/aepp-wallet-communication/helpers.js +0 -148
  244. package/es/utils/aepp-wallet-communication/helpers.js.map +0 -1
  245. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.js +0 -652
  246. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.js.map +0 -1
  247. package/es/utils/aepp-wallet-communication/rpc/rpc-client.js +0 -285
  248. package/es/utils/aepp-wallet-communication/rpc/rpc-client.js.map +0 -1
  249. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.js +0 -763
  250. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.js.map +0 -1
  251. package/es/utils/aepp-wallet-communication/schema.js +0 -103
  252. package/es/utils/aepp-wallet-communication/schema.js.map +0 -1
  253. package/es/utils/aepp-wallet-communication/wallet-detector.js +0 -135
  254. package/es/utils/aepp-wallet-communication/wallet-detector.js.map +0 -1
  255. package/es/utils/amount-formatter.js +0 -152
  256. package/es/utils/amount-formatter.js.map +0 -1
  257. package/es/utils/async-init.js +0 -103
  258. package/es/utils/async-init.js.map +0 -1
  259. package/es/utils/bignumber.js +0 -36
  260. package/es/utils/bignumber.js.map +0 -1
  261. package/es/utils/bytes.js.map +0 -1
  262. package/es/utils/crypto-ts.js.map +0 -1
  263. package/es/utils/crypto.js +0 -358
  264. package/es/utils/crypto.js.map +0 -1
  265. package/es/utils/hd-wallet.js +0 -148
  266. package/es/utils/hd-wallet.js.map +0 -1
  267. package/es/utils/json-big.js +0 -78
  268. package/es/utils/json-big.js.map +0 -1
  269. package/es/utils/keystore.js +0 -393
  270. package/es/utils/keystore.js.map +0 -1
  271. package/es/utils/mptree.js +0 -198
  272. package/es/utils/mptree.js.map +0 -1
  273. package/es/utils/other.js +0 -93
  274. package/es/utils/other.js.map +0 -1
  275. package/es/utils/semver-satisfies.js +0 -35
  276. package/es/utils/semver-satisfies.js.map +0 -1
  277. package/es/utils/string.js.map +0 -1
  278. package/es/utils/swagger.js +0 -269
  279. package/es/utils/swagger.js.map +0 -1
  280. package/src/contract/aci/helpers.js +0 -140
  281. package/src/contract/aci/index.js +0 -191
  282. package/src/contract/aci/transformation.js +0 -464
  283. package/src/contract/index.js +0 -159
  284. package/src/utils/aepp-wallet-communication/schema.js +0 -110
@@ -0,0 +1,30 @@
1
+ import BigNumber from 'bignumber.js';
2
+ import { MAX_AUTH_FUN_GAS } from "../../tx/builder/schema.mjs";
3
+ import { InvalidAuthDataError } from "../../utils/errors.mjs";
4
+ export const prepareGaParams = ins => async (authData, authFnName) => {
5
+ if (typeof authData !== 'object') throw new InvalidAuthDataError('AuthData must be an object');
6
+
7
+ if (authData.gas && BigNumber(authData.gas).gt(MAX_AUTH_FUN_GAS)) {
8
+ throw new InvalidAuthDataError(`the maximum gas value for ga authFun is ${MAX_AUTH_FUN_GAS}, got ${authData.gas}`);
9
+ }
10
+
11
+ const gas = authData.gas || MAX_AUTH_FUN_GAS;
12
+
13
+ if (authData.callData) {
14
+ if (authData.callData.split('_')[0] !== 'cb') throw new InvalidAuthDataError('Auth data must be a string with "cb" prefix.');
15
+ return {
16
+ authCallData: authData.callData,
17
+ gas
18
+ };
19
+ }
20
+
21
+ if (!authData.source || !authData.args) throw new InvalidAuthDataError('Auth data must contain source code and arguments.');
22
+ const contract = await ins.getContractInstance({
23
+ source: authData.source
24
+ });
25
+ return {
26
+ authCallData: contract.calldata.encode(contract._name, authFnName, authData.args),
27
+ gas
28
+ };
29
+ };
30
+ //# sourceMappingURL=helpers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/contract/ga/helpers.js"],"names":["BigNumber","MAX_AUTH_FUN_GAS","InvalidAuthDataError","prepareGaParams","ins","authData","authFnName","gas","gt","callData","split","authCallData","source","args","contract","getContractInstance","calldata","encode","_name"],"mappings":"AAAA,OAAOA,SAAP,MAAsB,cAAtB;SACSC,gB;SACAC,oB;AAET,OAAO,MAAMC,eAAe,GAAIC,GAAD,IAAS,OAAOC,QAAP,EAAiBC,UAAjB,KAAgC;AACtE,MAAI,OAAOD,QAAP,KAAoB,QAAxB,EAAkC,MAAM,IAAIH,oBAAJ,CAAyB,4BAAzB,CAAN;;AAClC,MAAIG,QAAQ,CAACE,GAAT,IAAgBP,SAAS,CAACK,QAAQ,CAACE,GAAV,CAAT,CAAwBC,EAAxB,CAA2BP,gBAA3B,CAApB,EAAkE;AAAE,UAAM,IAAIC,oBAAJ,CAA0B,2CAA0CD,gBAAiB,SAAQI,QAAQ,CAACE,GAAI,EAA1G,CAAN;AAAoH;;AACxL,QAAMA,GAAG,GAAGF,QAAQ,CAACE,GAAT,IAAgBN,gBAA5B;;AACA,MAAII,QAAQ,CAACI,QAAb,EAAuB;AACrB,QAAIJ,QAAQ,CAACI,QAAT,CAAkBC,KAAlB,CAAwB,GAAxB,EAA6B,CAA7B,MAAoC,IAAxC,EAA8C,MAAM,IAAIR,oBAAJ,CAAyB,8CAAzB,CAAN;AAC9C,WAAO;AAAES,MAAAA,YAAY,EAAEN,QAAQ,CAACI,QAAzB;AAAmCF,MAAAA;AAAnC,KAAP;AACD;;AACD,MAAI,CAACF,QAAQ,CAACO,MAAV,IAAoB,CAACP,QAAQ,CAACQ,IAAlC,EAAwC,MAAM,IAAIX,oBAAJ,CAAyB,mDAAzB,CAAN;AACxC,QAAMY,QAAQ,GAAG,MAAMV,GAAG,CAACW,mBAAJ,CAAwB;AAAEH,IAAAA,MAAM,EAAEP,QAAQ,CAACO;AAAnB,GAAxB,CAAvB;AACA,SAAO;AACLD,IAAAA,YAAY,EAAEG,QAAQ,CAACE,QAAT,CAAkBC,MAAlB,CAAyBH,QAAQ,CAACI,KAAlC,EAAyCZ,UAAzC,EAAqDD,QAAQ,CAACQ,IAA9D,CADT;AAELN,IAAAA;AAFK,GAAP;AAID,CAdM","sourcesContent":["import BigNumber from 'bignumber.js'\nimport { MAX_AUTH_FUN_GAS } from '../../tx/builder/schema'\nimport { InvalidAuthDataError } from '../../utils/errors'\n\nexport const prepareGaParams = (ins) => async (authData, authFnName) => {\n if (typeof authData !== 'object') throw new InvalidAuthDataError('AuthData must be an object')\n if (authData.gas && BigNumber(authData.gas).gt(MAX_AUTH_FUN_GAS)) { throw new InvalidAuthDataError(`the maximum gas value for ga authFun is ${MAX_AUTH_FUN_GAS}, got ${authData.gas}`) }\n const gas = authData.gas || MAX_AUTH_FUN_GAS\n if (authData.callData) {\n if (authData.callData.split('_')[0] !== 'cb') throw new InvalidAuthDataError('Auth data must be a string with \"cb\" prefix.')\n return { authCallData: authData.callData, gas }\n }\n if (!authData.source || !authData.args) throw new InvalidAuthDataError('Auth data must contain source code and arguments.')\n const contract = await ins.getContractInstance({ source: authData.source })\n return {\n authCallData: contract.calldata.encode(contract._name, authFnName, authData.args),\n gas\n }\n}\n"],"file":"helpers.mjs"}
@@ -0,0 +1,178 @@
1
+ /*
2
+ * ISC License (ISC)
3
+ * Copyright (c) 2021 aeternity developers
4
+ *
5
+ * Permission to use, copy, modify, and/or distribute this software for any
6
+ * purpose with or without fee is hereby granted, provided that the above
7
+ * copyright notice and this permission notice appear in all copies.
8
+ *
9
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
10
+ * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11
+ * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12
+ * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13
+ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
14
+ * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15
+ * PERFORMANCE OF THIS SOFTWARE.
16
+ */
17
+
18
+ /**
19
+ * Generalized Account module - routines to use generalized account
20
+ *
21
+ * @module @aeternity/aepp-sdk/es/contract/ga
22
+ * @export GeneralizedAccount
23
+ * @example import { GeneralizedAccount } from '@aeternity/aepp-sdk'
24
+ */
25
+ import Contract from "../../ae/contract.mjs";
26
+ import { TX_TYPE } from "../../tx/builder/schema.mjs";
27
+ import { buildTx, unpackTx } from "../../tx/builder/index.mjs";
28
+ import { prepareGaParams } from "./helpers.mjs";
29
+ import { hash } from "../../utils/crypto.mjs";
30
+ import { IllegalArgumentError, MissingParamError } from "../../utils/errors.mjs";
31
+ /**
32
+ * GeneralizedAccount Stamp
33
+ *
34
+ * Provide Generalized Account implementation
35
+ * {@link module:@aeternity/aepp-sdk/es/contract/ga} clients.
36
+ * @function
37
+ * @alias module:@aeternity/aepp-sdk/es/contract/ga
38
+ * @rtype Stamp
39
+ * @param {Object} [options={}] - Initializer object
40
+ * @return {Object} GeneralizedAccount instance
41
+ * @example
42
+ * const authContract = ``
43
+ * await aeSdk.createGeneralizedAccount(authFnName, authContract, [...authFnArguments]
44
+ * // Make spend using GA
45
+ * const callData = 'cb_...' // encoded call data for auth contract
46
+ * await aeSdk.spend(10000, receiverPub, { authData: { callData } })
47
+ * // or
48
+ * await aeSdk.spend(10000, receiverPub, {
49
+ * authData: { source: authContract, args: [...authContractArgs] }
50
+ * }) // sdk will prepare callData itself
51
+ */
52
+
53
+ export const GeneralizedAccount = Contract.compose({
54
+ methods: {
55
+ createGeneralizedAccount,
56
+ createMetaTx,
57
+ isGA
58
+ }
59
+ });
60
+ export default GeneralizedAccount;
61
+ /**
62
+ * @alias module:@aeternity/aepp-sdk/es/contract/ga
63
+ * @function
64
+ * Check if account is GA
65
+ * @param {String} address - Account address
66
+ * @return {Boolean}
67
+ */
68
+
69
+ async function isGA(address) {
70
+ const {
71
+ contractId
72
+ } = await this.getAccount(address);
73
+ return !!contractId;
74
+ }
75
+ /**
76
+ * Convert current account to GA
77
+ * @alias module:@aeternity/aepp-sdk/es/contract/ga
78
+ * @function
79
+ * @param {String} authFnName - Authorization function name
80
+ * @param {String} source - Auth contract source code
81
+ * @param {Array} [args] - init arguments
82
+ * @param {Object} [options] - Options
83
+ * @return {Promise<Readonly<{
84
+ * result: *, owner: *, address, rawTx: *, transaction: *
85
+ * }>>}
86
+ */
87
+
88
+
89
+ async function createGeneralizedAccount(authFnName, source) {
90
+ var _opt$gas;
91
+
92
+ let args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
93
+ let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
94
+ const opt = { ...this.Ae.defaults,
95
+ ...options
96
+ };
97
+ const ownerId = await this.address(opt);
98
+ if (await this.isGA(ownerId)) throw new IllegalArgumentError(`Account ${ownerId} is already GA`);
99
+ const contract = await this.getContractInstance({
100
+ source
101
+ });
102
+ await contract.compile();
103
+ const {
104
+ tx,
105
+ contractId
106
+ } = await this.gaAttachTx({ ...opt,
107
+ gas: (_opt$gas = opt.gas) !== null && _opt$gas !== void 0 ? _opt$gas : await contract._estimateGas('init', args, opt),
108
+ ownerId,
109
+ code: contract.bytecode,
110
+ callData: contract.calldata.encode(contract._name, 'init', args),
111
+ authFun: hash(authFnName)
112
+ });
113
+ const {
114
+ hash: transaction,
115
+ rawTx
116
+ } = await this.send(tx, opt);
117
+ return Object.freeze({
118
+ owner: ownerId,
119
+ transaction,
120
+ rawTx,
121
+ gaContractId: contractId
122
+ });
123
+ }
124
+
125
+ const wrapInEmptySignedTx = tx => buildTx({
126
+ encodedTx: tx,
127
+ signatures: []
128
+ }, TX_TYPE.signed);
129
+ /**
130
+ * Create a metaTx transaction
131
+ * @alias module:@aeternity/aepp-sdk/es/contract/ga
132
+ * @function
133
+ * @param {String} rawTransaction Inner transaction
134
+ * @param {Object} authData Object with gaMeta params
135
+ * @param {String} authFnName - Authorization function name
136
+ * @param {Object} options - Options
137
+ * @return {String}
138
+ */
139
+
140
+
141
+ async function createMetaTx(rawTransaction, authData, authFnName) {
142
+ let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
143
+ if (!authData) throw new MissingParamError('authData is required'); // Check if authData is callData or if it's an object prepare a callData from source and args
144
+
145
+ const {
146
+ authCallData,
147
+ gas
148
+ } = await prepareGaParams(this)(authData, authFnName);
149
+ const opt = { ...this.Ae.defaults,
150
+ ...options
151
+ };
152
+ const {
153
+ abiVersion
154
+ } = await this.getVmVersion(TX_TYPE.contractCall);
155
+ const wrappedTx = wrapInEmptySignedTx(unpackTx(rawTransaction));
156
+ const params = { ...opt,
157
+ tx: { ...wrappedTx,
158
+ tx: wrappedTx.txObject
159
+ },
160
+ gaId: await this.address(opt),
161
+ abiVersion,
162
+ authData: authCallData,
163
+ gas,
164
+ vsn: 2
165
+ };
166
+ const {
167
+ fee
168
+ } = await this.prepareTxParams(TX_TYPE.gaMeta, params);
169
+ const {
170
+ rlpEncoded: metaTxRlp
171
+ } = buildTx({ ...params,
172
+ fee: `${fee}`
173
+ }, TX_TYPE.gaMeta, {
174
+ vsn: 2
175
+ });
176
+ return wrapInEmptySignedTx(metaTxRlp).tx;
177
+ }
178
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/contract/ga/index.js"],"names":["Contract","TX_TYPE","buildTx","unpackTx","prepareGaParams","hash","IllegalArgumentError","MissingParamError","GeneralizedAccount","compose","methods","createGeneralizedAccount","createMetaTx","isGA","address","contractId","getAccount","authFnName","source","args","options","opt","Ae","defaults","ownerId","contract","getContractInstance","compile","tx","gaAttachTx","gas","_estimateGas","code","bytecode","callData","calldata","encode","_name","authFun","transaction","rawTx","send","Object","freeze","owner","gaContractId","wrapInEmptySignedTx","encodedTx","signatures","signed","rawTransaction","authData","authCallData","abiVersion","getVmVersion","contractCall","wrappedTx","params","txObject","gaId","vsn","fee","prepareTxParams","gaMeta","rlpEncoded","metaTxRlp"],"mappings":"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","sourcesContent":["/*\n * ISC License (ISC)\n * Copyright (c) 2021 aeternity developers\n *\n * Permission to use, copy, modify, and/or distribute this software for any\n * purpose with or without fee is hereby granted, provided that the above\n * copyright notice and this permission notice appear in all copies.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n * PERFORMANCE OF THIS SOFTWARE.\n */\n\n/**\n * Generalized Account module - routines to use generalized account\n *\n * @module @aeternity/aepp-sdk/es/contract/ga\n * @export GeneralizedAccount\n * @example import { GeneralizedAccount } from '@aeternity/aepp-sdk'\n */\nimport Contract from '../../ae/contract'\nimport { TX_TYPE } from '../../tx/builder/schema'\nimport { buildTx, unpackTx } from '../../tx/builder'\nimport { prepareGaParams } from './helpers'\nimport { hash } from '../../utils/crypto'\nimport { IllegalArgumentError, MissingParamError } from '../../utils/errors'\n\n/**\n * GeneralizedAccount Stamp\n *\n * Provide Generalized Account implementation\n * {@link module:@aeternity/aepp-sdk/es/contract/ga} clients.\n * @function\n * @alias module:@aeternity/aepp-sdk/es/contract/ga\n * @rtype Stamp\n * @param {Object} [options={}] - Initializer object\n * @return {Object} GeneralizedAccount instance\n * @example\n * const authContract = ``\n * await aeSdk.createGeneralizedAccount(authFnName, authContract, [...authFnArguments]\n * // Make spend using GA\n * const callData = 'cb_...' // encoded call data for auth contract\n * await aeSdk.spend(10000, receiverPub, { authData: { callData } })\n * // or\n * await aeSdk.spend(10000, receiverPub, {\n * authData: { source: authContract, args: [...authContractArgs] }\n * }) // sdk will prepare callData itself\n */\nexport const GeneralizedAccount = Contract.compose({\n methods: {\n createGeneralizedAccount,\n createMetaTx,\n isGA\n }\n})\nexport default GeneralizedAccount\n\n/**\n * @alias module:@aeternity/aepp-sdk/es/contract/ga\n * @function\n * Check if account is GA\n * @param {String} address - Account address\n * @return {Boolean}\n */\nasync function isGA (address) {\n const { contractId } = await this.getAccount(address)\n return !!contractId\n}\n\n/**\n * Convert current account to GA\n * @alias module:@aeternity/aepp-sdk/es/contract/ga\n * @function\n * @param {String} authFnName - Authorization function name\n * @param {String} source - Auth contract source code\n * @param {Array} [args] - init arguments\n * @param {Object} [options] - Options\n * @return {Promise<Readonly<{\n * result: *, owner: *, address, rawTx: *, transaction: *\n * }>>}\n */\nasync function createGeneralizedAccount (authFnName, source, args = [], options = {}) {\n const opt = { ...this.Ae.defaults, ...options }\n const ownerId = await this.address(opt)\n if (await this.isGA(ownerId)) throw new IllegalArgumentError(`Account ${ownerId} is already GA`)\n\n const contract = await this.getContractInstance({ source })\n await contract.compile()\n const { tx, contractId } = await this.gaAttachTx({\n ...opt,\n gas: opt.gas ?? await contract._estimateGas('init', args, opt),\n ownerId,\n code: contract.bytecode,\n callData: contract.calldata.encode(contract._name, 'init', args),\n authFun: hash(authFnName)\n })\n\n const { hash: transaction, rawTx } = await this.send(tx, opt)\n\n return Object.freeze({\n owner: ownerId,\n transaction,\n rawTx,\n gaContractId: contractId\n })\n}\n\nconst wrapInEmptySignedTx = (tx) => buildTx({ encodedTx: tx, signatures: [] }, TX_TYPE.signed)\n\n/**\n * Create a metaTx transaction\n * @alias module:@aeternity/aepp-sdk/es/contract/ga\n * @function\n * @param {String} rawTransaction Inner transaction\n * @param {Object} authData Object with gaMeta params\n * @param {String} authFnName - Authorization function name\n * @param {Object} options - Options\n * @return {String}\n */\nasync function createMetaTx (rawTransaction, authData, authFnName, options = {}) {\n if (!authData) throw new MissingParamError('authData is required')\n // Check if authData is callData or if it's an object prepare a callData from source and args\n const { authCallData, gas } = await prepareGaParams(this)(authData, authFnName)\n const opt = { ...this.Ae.defaults, ...options }\n const { abiVersion } = await this.getVmVersion(TX_TYPE.contractCall)\n const wrappedTx = wrapInEmptySignedTx(unpackTx(rawTransaction))\n const params = {\n ...opt,\n tx: {\n ...wrappedTx,\n tx: wrappedTx.txObject\n },\n gaId: await this.address(opt),\n abiVersion,\n authData: authCallData,\n gas,\n vsn: 2\n }\n const { fee } = await this.prepareTxParams(TX_TYPE.gaMeta, params)\n const { rlpEncoded: metaTxRlp } = buildTx(\n { ...params, fee: `${fee}` },\n TX_TYPE.gaMeta,\n { vsn: 2 }\n )\n return wrapInEmptySignedTx(metaTxRlp).tx\n}\n"],"file":"index.mjs"}
package/es/errors.d.ts ADDED
@@ -0,0 +1,284 @@
1
+ /**
2
+ * Error module
3
+ * @module @aeternity/aepp-sdk/es/utils/errors
4
+ * @example import { BytecodeMismatchError } from '@aeternity/aepp-sdk'
5
+ */
6
+ /**
7
+ * aepp-sdk originated error
8
+ */
9
+ export declare abstract class BaseError extends Error {
10
+ constructor(message: string);
11
+ }
12
+ export declare class AccountError extends BaseError {
13
+ constructor(message: string);
14
+ }
15
+ export declare class AensError extends BaseError {
16
+ constructor(message: string);
17
+ }
18
+ export declare class AeppError extends BaseError {
19
+ constructor(message: string);
20
+ }
21
+ export declare class ChannelError extends BaseError {
22
+ constructor(message: string);
23
+ }
24
+ export declare class CompilerError extends BaseError {
25
+ constructor(message: string);
26
+ }
27
+ export declare class ContractError extends BaseError {
28
+ constructor(message: string);
29
+ }
30
+ export declare class CryptographyError extends BaseError {
31
+ constructor(message: string);
32
+ }
33
+ export declare class NodeError extends BaseError {
34
+ constructor(message: string);
35
+ }
36
+ export declare class TransactionError extends BaseError {
37
+ constructor(message: string);
38
+ }
39
+ export declare class WalletError extends BaseError {
40
+ constructor(message: string);
41
+ }
42
+ export declare class ArgumentError extends BaseError {
43
+ constructor(argumentName: string, requirement: string, argumentValue: any);
44
+ }
45
+ export declare class IllegalArgumentError extends CryptographyError {
46
+ constructor(message: string);
47
+ }
48
+ export declare class ArgumentCountMismatchError extends BaseError {
49
+ constructor(functionName: string, requiredCount: number, providedCount: number);
50
+ }
51
+ export declare class InsufficientBalanceError extends BaseError {
52
+ constructor(message: string);
53
+ }
54
+ export declare class InvalidDenominationError extends BaseError {
55
+ constructor(message: string);
56
+ }
57
+ export declare class InvalidNameError extends BaseError {
58
+ constructor(message: string);
59
+ }
60
+ export declare class MissingParamError extends BaseError {
61
+ constructor(message: string);
62
+ }
63
+ export declare class NoBrowserFoundError extends BaseError {
64
+ constructor();
65
+ }
66
+ export declare class NoSerializerFoundError extends BaseError {
67
+ constructor();
68
+ }
69
+ export declare class RequestTimedOutError extends BaseError {
70
+ constructor(requestTime: number);
71
+ }
72
+ export declare class TxTimedOutError extends BaseError {
73
+ constructor(blocks: number, th: string, status?: string);
74
+ }
75
+ export declare class TypeError extends BaseError {
76
+ constructor(message: string);
77
+ }
78
+ export declare class UnsupportedPlatformError extends BaseError {
79
+ constructor(message: string);
80
+ }
81
+ export declare class UnsupportedProtocolError extends BaseError {
82
+ constructor(message: string);
83
+ }
84
+ export declare class NotImplementedError extends BaseError {
85
+ constructor(message: string);
86
+ }
87
+ export declare class UnsupportedVersionError extends BaseError {
88
+ constructor(dependency: string, version: string, geVersion: string, ltVersion: string);
89
+ }
90
+ export declare class InternalError extends BaseError {
91
+ constructor(message: string);
92
+ }
93
+ export declare class InvalidKeypairError extends AccountError {
94
+ constructor(message: string);
95
+ }
96
+ export declare class UnavailableAccountError extends AccountError {
97
+ constructor(address: string);
98
+ }
99
+ export declare class AensPointerContextError extends AensError {
100
+ constructor(nameOrId: string, prefix: string);
101
+ }
102
+ export declare class InsufficientNameFeeError extends AensError {
103
+ constructor(nameFee: number, minNameFee: number);
104
+ }
105
+ export declare class InvalidAensNameError extends AensError {
106
+ constructor(message: string);
107
+ }
108
+ export declare class DuplicateCallbackError extends AeppError {
109
+ constructor();
110
+ }
111
+ export declare class InvalidRpcMessageError extends AeppError {
112
+ constructor(message: string);
113
+ }
114
+ export declare class MissingCallbackError extends AeppError {
115
+ constructor(id: string);
116
+ }
117
+ export declare class UnAuthorizedAccountError extends AeppError {
118
+ constructor(onAccount: string);
119
+ }
120
+ export declare class UnknownRpcClientError extends AeppError {
121
+ constructor(id: string);
122
+ }
123
+ export declare class UnsubscribedAccountError extends AeppError {
124
+ constructor();
125
+ }
126
+ export declare class ChannelCallError extends ChannelError {
127
+ constructor(message: string);
128
+ }
129
+ export declare class ChannelConnectionError extends ChannelError {
130
+ constructor(message: string);
131
+ }
132
+ export declare class ChannelPingTimedOutError extends ChannelError {
133
+ constructor();
134
+ }
135
+ export declare class UnexpectedChannelMessageError extends ChannelError {
136
+ constructor(message: string);
137
+ }
138
+ export declare class UnknownChannelStateError extends ChannelError {
139
+ constructor();
140
+ }
141
+ export declare class InvalidAuthDataError extends CompilerError {
142
+ constructor(message: string);
143
+ }
144
+ export declare class BytecodeMismatchError extends ContractError {
145
+ constructor(source: string);
146
+ }
147
+ export declare class DuplicateContractError extends ContractError {
148
+ constructor();
149
+ }
150
+ export declare class InactiveContractError extends ContractError {
151
+ constructor(contractAddress: string);
152
+ }
153
+ export declare class InvalidMethodInvocationError extends ContractError {
154
+ constructor(message: string);
155
+ }
156
+ export declare class MissingContractAddressError extends ContractError {
157
+ constructor(message: string);
158
+ }
159
+ export declare class MissingContractDefError extends ContractError {
160
+ constructor();
161
+ }
162
+ export declare class MissingFunctionNameError extends ContractError {
163
+ constructor();
164
+ }
165
+ export declare class NodeInvocationError extends ContractError {
166
+ constructor(message?: string);
167
+ }
168
+ export declare class NoSuchContractFunctionError extends ContractError {
169
+ constructor(name: string);
170
+ }
171
+ export declare class NotPayableFunctionError extends ContractError {
172
+ constructor(amount: string, fn: string);
173
+ }
174
+ export declare class MissingEventDefinitionError extends ContractError {
175
+ constructor(eventNameHash: string, eventAddress: string);
176
+ }
177
+ export declare class AmbiguousEventDefinitionError extends ContractError {
178
+ constructor(eventAddress: string, matchedEvents: [string, string][]);
179
+ }
180
+ export declare class InvalidChecksumError extends CryptographyError {
181
+ constructor();
182
+ }
183
+ export declare class InvalidDerivationPathError extends CryptographyError {
184
+ constructor();
185
+ }
186
+ export declare class InvalidKeyError extends CryptographyError {
187
+ constructor(message: string);
188
+ }
189
+ export declare class InvalidPasswordError extends CryptographyError {
190
+ constructor(message: string);
191
+ }
192
+ export declare class MerkleTreeHashMismatchError extends CryptographyError {
193
+ constructor();
194
+ }
195
+ export declare class MissingNodeInTreeError extends CryptographyError {
196
+ constructor(message: string);
197
+ }
198
+ export declare class UnsupportedAlgorithmError extends CryptographyError {
199
+ constructor(algo: string);
200
+ }
201
+ export declare class NotHardenedSegmentError extends CryptographyError {
202
+ constructor(message: string);
203
+ }
204
+ export declare class UnknownNodeLengthError extends CryptographyError {
205
+ constructor(nodeLength: number);
206
+ }
207
+ export declare class UnknownPathNibbleError extends CryptographyError {
208
+ constructor(nibble: number);
209
+ }
210
+ export declare class UnsupportedChildIndexError extends CryptographyError {
211
+ constructor(index: string);
212
+ }
213
+ export declare class DisconnectedError extends NodeError {
214
+ constructor();
215
+ }
216
+ export declare class DuplicateNodeError extends NodeError {
217
+ constructor(name: string);
218
+ }
219
+ export declare class NodeNotFoundError extends NodeError {
220
+ constructor(message: string);
221
+ }
222
+ export declare class DecodeError extends TransactionError {
223
+ constructor(message: string);
224
+ }
225
+ export declare class EncodeError extends TransactionError {
226
+ constructor(message: string);
227
+ }
228
+ export declare class PayloadLengthError extends TransactionError {
229
+ constructor(message: string);
230
+ }
231
+ export declare class DryRunError extends TransactionError {
232
+ constructor(message: string);
233
+ }
234
+ export declare class IllegalBidFeeError extends TransactionError {
235
+ constructor(message: string);
236
+ }
237
+ export declare class InvalidSignatureError extends TransactionError {
238
+ constructor(message: string);
239
+ }
240
+ export declare class InvalidTxError extends TransactionError {
241
+ constructor(message: string);
242
+ }
243
+ export declare class InvalidTxParamsError extends TransactionError {
244
+ constructor(message: string);
245
+ }
246
+ export declare class NoDefaultAensPointerError extends TransactionError {
247
+ constructor(prefix: string);
248
+ }
249
+ export declare class PrefixMismatchError extends TransactionError {
250
+ constructor(prefix: string, requiredPrefix: string);
251
+ }
252
+ export declare class PrefixNotFoundError extends TransactionError {
253
+ constructor(tag: string);
254
+ }
255
+ export declare class SchemaNotFoundError extends TransactionError {
256
+ constructor(message: string);
257
+ }
258
+ export declare class TagNotFoundError extends TransactionError {
259
+ constructor(prefix: string);
260
+ }
261
+ export declare class TxNotInChainError extends TransactionError {
262
+ constructor(txHash: string);
263
+ }
264
+ export declare class UnknownTxError extends TransactionError {
265
+ constructor(message: string);
266
+ }
267
+ export declare class UnsupportedABIversionError extends TransactionError {
268
+ constructor(message: string);
269
+ }
270
+ export declare class UnsupportedVMversionError extends TransactionError {
271
+ constructor(message: string);
272
+ }
273
+ export declare class AlreadyConnectedError extends WalletError {
274
+ constructor(message: string);
275
+ }
276
+ export declare class MessageDirectionError extends WalletError {
277
+ constructor(message: string);
278
+ }
279
+ export declare class NoWalletConnectedError extends WalletError {
280
+ constructor(message: string);
281
+ }
282
+ export declare class RpcConnectionError extends WalletError {
283
+ constructor(message: string);
284
+ }
package/es/index.mjs ADDED
@@ -0,0 +1,57 @@
1
+ /*
2
+ * ISC License (ISC)
3
+ * Copyright (c) 2021 aeternity developers
4
+ *
5
+ * Permission to use, copy, modify, and/or distribute this software for any
6
+ * purpose with or without fee is hereby granted, provided that the above
7
+ * copyright notice and this permission notice appear in all copies.
8
+ *
9
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
10
+ * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11
+ * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12
+ * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13
+ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
14
+ * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15
+ * PERFORMANCE OF THIS SOFTWARE.
16
+ */
17
+ import * as Crypto from "./utils/crypto.mjs";
18
+ import * as Keystore from "./utils/keystore.mjs";
19
+ import * as Bytes from "./utils/bytes.mjs";
20
+ import * as TxBuilder from "./tx/builder/index.mjs";
21
+ import * as TxBuilderHelper from "./tx/builder/helpers.mjs";
22
+ import * as SCHEMA from "./tx/builder/schema.mjs";
23
+ import * as AmountFormatter from "./utils/amount-formatter.mjs";
24
+ import * as HdWallet from "./utils/hd-wallet.mjs";
25
+ import Ae from "./ae/index.mjs";
26
+ import Chain from "./chain/index.mjs";
27
+ import ChainNode from "./chain/node.mjs";
28
+ import Node from "./node.mjs";
29
+ import NodePool from "./node-pool/index.mjs";
30
+ import Tx from "./tx/index.mjs";
31
+ import Transaction from "./tx/tx.mjs";
32
+ import verifyTransaction from "./tx/validator.mjs";
33
+ import AccountBase from "./account/base.mjs";
34
+ import AccountMultiple from "./account/multiple.mjs";
35
+ import MemoryAccount from "./account/memory.mjs";
36
+ import Aens from "./ae/aens.mjs";
37
+ import Contract from "./ae/contract.mjs";
38
+ import GeneralizedAccount from "./contract/ga/index.mjs";
39
+ import ContractCompilerHttp from "./contract/compiler.mjs";
40
+ import RpcAepp from "./ae/aepp.mjs";
41
+ import RpcWallet from "./ae/wallet.mjs";
42
+ import Oracle from "./ae/oracle.mjs";
43
+ import genSwaggerClient from "./utils/swagger.mjs";
44
+ import Channel from "./channel/index.mjs";
45
+ import Universal from "./ae/universal.mjs";
46
+ export { default as ContentScriptBridge } from "./utils/aepp-wallet-communication/content-script-bridge.mjs";
47
+ import * as _AeppWalletHelpers from "./utils/aepp-wallet-communication/helpers.mjs";
48
+ export { _AeppWalletHelpers as AeppWalletHelpers };
49
+ import * as _AeppWalletSchema from "./utils/aepp-wallet-communication/schema.mjs";
50
+ export { _AeppWalletSchema as AeppWalletSchema };
51
+ export { default as WalletDetector } from "./utils/aepp-wallet-communication/wallet-detector.mjs";
52
+ export { default as BrowserRuntimeConnection } from "./utils/aepp-wallet-communication/connection/browser-runtime.mjs";
53
+ export { default as BrowserWindowMessageConnection } from "./utils/aepp-wallet-communication/connection/browser-window-message.mjs";
54
+ export * from "./utils/errors.mjs";
55
+ export const getDefaultPointerKey = TxBuilderHelper.getDefaultPointerKey;
56
+ export { AmountFormatter, AccountBase, AccountMultiple, Ae, Aens, Bytes, Contract, ContractCompilerHttp, ChainNode, RpcAepp, RpcWallet, Channel, Crypto, Keystore, Chain, GeneralizedAccount, HdWallet, MemoryAccount, Node, NodePool, Oracle, genSwaggerClient, Transaction, verifyTransaction, Tx, TxBuilder, TxBuilderHelper, Universal, SCHEMA };
57
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.js"],"names":["Crypto","Keystore","Bytes","TxBuilder","TxBuilderHelper","SCHEMA","AmountFormatter","HdWallet","Ae","Chain","ChainNode","Node","NodePool","Tx","Transaction","verifyTransaction","AccountBase","AccountMultiple","MemoryAccount","Aens","Contract","GeneralizedAccount","ContractCompilerHttp","RpcAepp","RpcWallet","Oracle","genSwaggerClient","Channel","Universal","default","ContentScriptBridge","AeppWalletHelpers","AeppWalletSchema","WalletDetector","BrowserRuntimeConnection","BrowserWindowMessageConnection","getDefaultPointerKey"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;OAEO,KAAKA,M;OACL,KAAKC,Q;OACL,KAAKC,K;OACL,KAAKC,S;OACL,KAAKC,e;OACL,KAAKC,M;OACL,KAAKC,e;OACL,KAAKC,Q;OAELC,E;OACAC,K;OACAC,S;OACAC,I;OACAC,Q;OACAC,E;OACAC,W;OACAC,iB;OACAC,W;OACAC,e;OACAC,a;OACAC,I;OACAC,Q;OACAC,kB;OACAC,oB;OACAC,O;OACAC,S;OACAC,M;OACAC,gB;OACAC,O;OACAC,S;SAEEC,OAAO,IAAIC,mB;;+BACRC,iB;;8BACAC,gB;SACHH,OAAO,IAAII,c;SACXJ,OAAO,IAAIK,wB;SACXL,OAAO,IAAIM,8B;;AAGpB,OAAO,MAAMC,oBAAoB,GAAGhC,eAAe,CAACgC,oBAA7C;AAEP,SACE9B,eADF,EAEEU,WAFF,EAGEC,eAHF,EAIET,EAJF,EAKEW,IALF,EAMEjB,KANF,EAOEkB,QAPF,EAQEE,oBARF,EASEZ,SATF,EAUEa,OAVF,EAWEC,SAXF,EAYEG,OAZF,EAaE3B,MAbF,EAcEC,QAdF,EAeEQ,KAfF,EAgBEY,kBAhBF,EAiBEd,QAjBF,EAkBEW,aAlBF,EAmBEP,IAnBF,EAoBEC,QApBF,EAqBEa,MArBF,EAsBEC,gBAtBF,EAuBEZ,WAvBF,EAwBEC,iBAxBF,EAyBEF,EAzBF,EA0BEV,SA1BF,EA2BEC,eA3BF,EA4BEwB,SA5BF,EA6BEvB,MA7BF","sourcesContent":["/*\n * ISC License (ISC)\n * Copyright (c) 2021 aeternity developers\n *\n * Permission to use, copy, modify, and/or distribute this software for any\n * purpose with or without fee is hereby granted, provided that the above\n * copyright notice and this permission notice appear in all copies.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n * PERFORMANCE OF THIS SOFTWARE.\n */\n\nimport * as Crypto from './utils/crypto'\nimport * as Keystore from './utils/keystore'\nimport * as Bytes from './utils/bytes'\nimport * as TxBuilder from './tx/builder'\nimport * as TxBuilderHelper from './tx/builder/helpers'\nimport * as SCHEMA from './tx/builder/schema'\nimport * as AmountFormatter from './utils/amount-formatter'\nimport * as HdWallet from './utils/hd-wallet'\n\nimport Ae from './ae'\nimport Chain from './chain'\nimport ChainNode from './chain/node'\nimport Node from './node'\nimport NodePool from './node-pool'\nimport Tx from './tx'\nimport Transaction from './tx/tx'\nimport verifyTransaction from './tx/validator'\nimport AccountBase from './account/base'\nimport AccountMultiple from './account/multiple'\nimport MemoryAccount from './account/memory'\nimport Aens from './ae/aens'\nimport Contract from './ae/contract'\nimport GeneralizedAccount from './contract/ga'\nimport ContractCompilerHttp from './contract/compiler'\nimport RpcAepp from './ae/aepp'\nimport RpcWallet from './ae/wallet'\nimport Oracle from './ae/oracle'\nimport genSwaggerClient from './utils/swagger'\nimport Channel from './channel'\nimport Universal from './ae/universal'\n\nexport { default as ContentScriptBridge } from './utils/aepp-wallet-communication/content-script-bridge'\nexport * as AeppWalletHelpers from './utils/aepp-wallet-communication/helpers'\nexport * as AeppWalletSchema from './utils/aepp-wallet-communication/schema'\nexport { default as WalletDetector } from './utils/aepp-wallet-communication/wallet-detector'\nexport { default as BrowserRuntimeConnection } from './utils/aepp-wallet-communication/connection/browser-runtime'\nexport { default as BrowserWindowMessageConnection } from './utils/aepp-wallet-communication/connection/browser-window-message'\nexport * from './utils/errors'\n\nexport const getDefaultPointerKey = TxBuilderHelper.getDefaultPointerKey\n\nexport {\n AmountFormatter,\n AccountBase,\n AccountMultiple,\n Ae,\n Aens,\n Bytes,\n Contract,\n ContractCompilerHttp,\n ChainNode,\n RpcAepp,\n RpcWallet,\n Channel,\n Crypto,\n Keystore,\n Chain,\n GeneralizedAccount,\n HdWallet,\n MemoryAccount,\n Node,\n NodePool,\n Oracle,\n genSwaggerClient,\n Transaction,\n verifyTransaction,\n Tx,\n TxBuilder,\n TxBuilderHelper,\n Universal,\n SCHEMA\n}\n"],"file":"index.mjs"}