@aeternity/aepp-sdk 10.0.0 → 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.
- package/README.md +15 -14
- package/dist/aepp-sdk.browser-script.js +1 -1
- package/dist/aepp-sdk.browser-script.js.LICENSE.txt +7 -27
- package/dist/aepp-sdk.browser-script.js.map +1 -1
- package/dist/aepp-sdk.browser.js +1 -1
- package/dist/aepp-sdk.browser.js.map +1 -1
- package/dist/aepp-sdk.js +1 -1
- package/dist/aepp-sdk.js.map +1 -1
- package/es/account/{base.js → base.mjs} +20 -10
- package/es/account/base.mjs.map +1 -0
- package/es/account/{memory.js → memory.mjs} +29 -14
- package/es/account/memory.mjs.map +1 -0
- package/es/account/{multiple.js → multiple.mjs} +10 -9
- package/es/account/multiple.mjs.map +1 -0
- package/es/ae/{aens.js → aens.mjs} +18 -22
- package/es/ae/aens.mjs.map +1 -0
- package/es/ae/{aepp.js → aepp.mjs} +9 -9
- package/es/ae/aepp.mjs.map +1 -0
- package/es/ae/contract.mjs +159 -0
- package/es/ae/contract.mjs.map +1 -0
- package/es/ae/{index.js → index.mjs} +8 -7
- package/es/ae/index.mjs.map +1 -0
- package/es/ae/{oracle.js → oracle.mjs} +33 -16
- package/es/ae/oracle.mjs.map +1 -0
- package/es/ae/{universal.js → universal.mjs} +10 -10
- package/es/ae/universal.mjs.map +1 -0
- package/es/ae/{wallet.js → wallet.mjs} +10 -10
- package/es/ae/wallet.mjs.map +1 -0
- package/es/aepp-wallet-communication/schema.d.ts +74 -0
- package/es/bignumber.d.ts +1 -7
- package/es/chain/{index.js → index.mjs} +20 -4
- package/es/chain/index.mjs.map +1 -0
- package/es/chain/{node.js → node.mjs} +121 -73
- package/es/chain/node.mjs.map +1 -0
- package/es/channel/{handlers.js → handlers.mjs} +18 -20
- package/es/channel/handlers.mjs.map +1 -0
- package/es/channel/{index.js → index.mjs} +7 -7
- package/es/channel/index.mjs.map +1 -0
- package/es/channel/{internal.js → internal.mjs} +49 -32
- package/es/channel/internal.mjs.map +1 -0
- package/es/contract/aci.mjs +477 -0
- package/es/contract/aci.mjs.map +1 -0
- package/es/contract/compiler.mjs +115 -0
- package/es/contract/compiler.mjs.map +1 -0
- package/es/contract/ga/helpers.mjs +30 -0
- package/es/contract/ga/helpers.mjs.map +1 -0
- package/es/contract/ga/{index.js → index.mjs} +36 -28
- package/es/contract/ga/index.mjs.map +1 -0
- package/es/errors.d.ts +284 -0
- package/es/index.mjs +57 -0
- package/es/index.mjs.map +1 -0
- package/es/node-pool/{index.js → index.mjs} +11 -10
- package/es/node-pool/index.mjs.map +1 -0
- package/es/{node.js → node.mjs} +9 -8
- package/es/node.mjs.map +1 -0
- package/es/tx/builder/field-types.mjs +74 -0
- package/es/tx/builder/field-types.mjs.map +1 -0
- package/es/tx/builder/{helpers.js → helpers.mjs} +114 -56
- package/es/tx/builder/helpers.mjs.map +1 -0
- package/es/tx/builder/{index.js → index.mjs} +79 -68
- package/es/tx/builder/index.mjs.map +1 -0
- package/es/tx/builder/{schema.js → schema.mjs} +11 -65
- package/es/tx/builder/schema.mjs.map +1 -0
- package/es/tx/{index.js → index.mjs} +5 -2
- package/es/tx/index.mjs.map +1 -0
- package/es/tx/{tx-object.js → tx-object.mjs} +22 -15
- package/es/tx/tx-object.mjs.map +1 -0
- package/es/tx/{tx.js → tx.mjs} +15 -14
- package/es/tx/tx.mjs.map +1 -0
- package/es/tx/{validator.js → validator.mjs} +72 -33
- package/es/tx/validator.mjs.map +1 -0
- package/es/typings/blakejs/index.d.mjs +2 -0
- package/es/typings/blakejs/{index.d.js.map → index.d.mjs.map} +1 -1
- package/es/utils/aepp-wallet-communication/connection/{browser-runtime.js → browser-runtime.mjs} +7 -6
- package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/connection/{browser-window-message.js → browser-window-message.mjs} +10 -11
- package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/connection/{index.js → index.mjs} +5 -2
- package/es/utils/aepp-wallet-communication/connection/index.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/{content-script-bridge.js → content-script-bridge.mjs} +6 -5
- package/es/utils/aepp-wallet-communication/content-script-bridge.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/{helpers.js → helpers.mjs} +3 -14
- package/es/utils/aepp-wallet-communication/helpers.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/rpc/{aepp-rpc.js → aepp-rpc.mjs} +113 -67
- package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/rpc/{rpc-client.js → rpc-client.mjs} +14 -9
- package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/rpc/{wallet-rpc.js → wallet-rpc.mjs} +71 -63
- package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/schema.mjs +102 -0
- package/es/utils/aepp-wallet-communication/schema.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/{wallet-detector.js → wallet-detector.mjs} +6 -5
- package/es/utils/aepp-wallet-communication/wallet-detector.mjs.map +1 -0
- package/es/utils/{amount-formatter.js → amount-formatter.mjs} +14 -7
- package/es/utils/amount-formatter.mjs.map +1 -0
- package/es/utils/{async-init.js → async-init.mjs} +8 -11
- package/es/utils/async-init.mjs.map +1 -0
- package/es/utils/{bignumber.js → bignumber.mjs} +2 -9
- package/es/utils/bignumber.mjs.map +1 -0
- package/es/utils/{bytes.js → bytes.mjs} +16 -8
- package/es/utils/bytes.mjs.map +1 -0
- package/es/utils/{crypto-ts.js → crypto-ts.mjs} +11 -3
- package/es/utils/crypto-ts.mjs.map +1 -0
- package/es/utils/{crypto.js → crypto.mjs} +40 -105
- package/es/utils/crypto.mjs.map +1 -0
- package/es/utils/errors.mjs +689 -0
- package/es/utils/errors.mjs.map +1 -0
- package/es/utils/{hd-wallet.js → hd-wallet.mjs} +33 -34
- package/es/utils/hd-wallet.mjs.map +1 -0
- package/es/utils/{json-big.js → json-big.mjs} +1 -1
- package/es/utils/{json-big.js.map → json-big.mjs.map} +1 -1
- package/es/utils/{keystore.js → keystore.mjs} +63 -51
- package/es/utils/keystore.mjs.map +1 -0
- package/es/utils/{mptree.js → mptree.mjs} +21 -12
- package/es/utils/mptree.mjs.map +1 -0
- package/es/utils/{other.js → other.mjs} +2 -2
- package/es/utils/other.mjs.map +1 -0
- package/es/utils/{semver-satisfies.js → semver-satisfies.mjs} +1 -1
- package/es/utils/{semver-satisfies.js.map → semver-satisfies.mjs.map} +1 -1
- package/es/utils/{string.js → string.mjs} +1 -1
- package/es/utils/{string.js.map → string.mjs.map} +1 -1
- package/es/utils/{swagger.js → swagger.mjs} +46 -14
- package/es/utils/swagger.mjs.map +1 -0
- package/package.json +46 -55
- package/src/account/memory.js +13 -8
- package/src/account/multiple.js +12 -4
- package/src/ae/aens.js +12 -17
- package/src/ae/aepp.js +2 -2
- package/src/ae/contract.js +15 -152
- package/src/ae/index.js +2 -1
- package/src/ae/oracle.js +25 -10
- package/src/ae/universal.js +2 -2
- package/src/ae/wallet.js +2 -2
- package/src/chain/index.js +21 -2
- package/src/chain/node.js +80 -53
- package/src/channel/handlers.js +20 -17
- package/src/channel/internal.js +30 -24
- package/src/contract/{aci/index.js → aci.js} +152 -93
- package/src/contract/compiler.js +22 -117
- package/src/contract/ga/helpers.js +7 -5
- package/src/contract/ga/index.js +27 -24
- package/src/index.js +7 -8
- package/src/node-pool/index.js +9 -8
- package/src/node.js +5 -7
- package/src/tx/builder/field-types.js +61 -0
- package/src/tx/builder/helpers.js +113 -58
- package/src/tx/builder/index.js +39 -34
- package/src/tx/builder/schema.js +11 -25
- package/src/tx/tx-object.js +10 -9
- package/src/tx/tx.js +17 -8
- package/src/tx/validator.js +25 -5
- package/src/utils/aepp-wallet-communication/connection/browser-runtime.js +8 -3
- package/src/utils/aepp-wallet-communication/connection/browser-window-message.js +10 -6
- package/src/utils/aepp-wallet-communication/content-script-bridge.js +5 -4
- package/src/utils/aepp-wallet-communication/helpers.js +2 -12
- package/src/utils/aepp-wallet-communication/rpc/aepp-rpc.js +81 -55
- package/src/utils/aepp-wallet-communication/rpc/rpc-client.js +15 -6
- package/src/utils/aepp-wallet-communication/rpc/wallet-rpc.js +60 -49
- package/src/utils/aepp-wallet-communication/schema.ts +80 -0
- package/src/utils/aepp-wallet-communication/wallet-detector.js +3 -2
- package/src/utils/amount-formatter.ts +4 -3
- package/src/utils/async-init.js +10 -6
- package/src/utils/bignumber.ts +1 -9
- package/src/utils/bytes.ts +3 -2
- package/src/utils/crypto-ts.ts +2 -2
- package/src/utils/crypto.js +9 -92
- package/src/utils/errors.ts +683 -0
- package/src/utils/hd-wallet.js +11 -26
- package/src/utils/keystore.js +47 -51
- package/src/utils/mptree.ts +12 -6
- package/src/utils/swagger.js +67 -44
- package/CHANGELOG.md +0 -1603
- package/es/account/base.js.map +0 -1
- package/es/account/memory.js.map +0 -1
- package/es/account/multiple.js.map +0 -1
- package/es/ae/aens.js.map +0 -1
- package/es/ae/aepp.js.map +0 -1
- package/es/ae/contract.js +0 -312
- package/es/ae/contract.js.map +0 -1
- package/es/ae/index.js.map +0 -1
- package/es/ae/oracle.js.map +0 -1
- package/es/ae/universal.js.map +0 -1
- package/es/ae/wallet.js.map +0 -1
- package/es/chain/index.js.map +0 -1
- package/es/chain/node.js.map +0 -1
- package/es/channel/handlers.js.map +0 -1
- package/es/channel/index.js.map +0 -1
- package/es/channel/internal.js.map +0 -1
- package/es/contract/aci/helpers.js +0 -298
- package/es/contract/aci/helpers.js.map +0 -1
- package/es/contract/aci/index.js +0 -361
- package/es/contract/aci/index.js.map +0 -1
- package/es/contract/aci/transformation.js +0 -66
- package/es/contract/aci/transformation.js.map +0 -1
- package/es/contract/compiler.js +0 -244
- package/es/contract/compiler.js.map +0 -1
- package/es/contract/ga/helpers.js +0 -22
- package/es/contract/ga/helpers.js.map +0 -1
- package/es/contract/ga/index.js.map +0 -1
- package/es/contract/index.js +0 -162
- package/es/contract/index.js.map +0 -1
- package/es/index.js +0 -57
- package/es/index.js.map +0 -1
- package/es/node-pool/index.js.map +0 -1
- package/es/node.js.map +0 -1
- package/es/tx/builder/helpers.js.map +0 -1
- package/es/tx/builder/index.js.map +0 -1
- package/es/tx/builder/schema.js.map +0 -1
- package/es/tx/index.js.map +0 -1
- package/es/tx/tx-object.js.map +0 -1
- package/es/tx/tx.js.map +0 -1
- package/es/tx/validator.js.map +0 -1
- package/es/typings/blakejs/index.d.js +0 -2
- package/es/utils/aepp-wallet-communication/connection/browser-runtime.js.map +0 -1
- package/es/utils/aepp-wallet-communication/connection/browser-window-message.js.map +0 -1
- package/es/utils/aepp-wallet-communication/connection/index.js.map +0 -1
- package/es/utils/aepp-wallet-communication/content-script-bridge.js.map +0 -1
- package/es/utils/aepp-wallet-communication/helpers.js.map +0 -1
- package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.js.map +0 -1
- package/es/utils/aepp-wallet-communication/rpc/rpc-client.js.map +0 -1
- package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.js.map +0 -1
- package/es/utils/aepp-wallet-communication/schema.js +0 -107
- package/es/utils/aepp-wallet-communication/schema.js.map +0 -1
- package/es/utils/aepp-wallet-communication/wallet-detector.js.map +0 -1
- package/es/utils/amount-formatter.js.map +0 -1
- package/es/utils/async-init.js.map +0 -1
- package/es/utils/bignumber.js.map +0 -1
- package/es/utils/bytes.js.map +0 -1
- package/es/utils/crypto-ts.js.map +0 -1
- package/es/utils/crypto.js.map +0 -1
- package/es/utils/hd-wallet.js.map +0 -1
- package/es/utils/keystore.js.map +0 -1
- package/es/utils/mptree.js.map +0 -1
- package/es/utils/other.js.map +0 -1
- package/es/utils/swagger.js.map +0 -1
- package/src/contract/aci/transformation.js +0 -72
- package/src/contract/index.js +0 -163
- package/src/utils/aepp-wallet-communication/schema.js +0 -108
|
@@ -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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* ISC License (ISC)
|
|
3
|
-
* Copyright (c)
|
|
3
|
+
* Copyright (c) 2021 aeternity developers
|
|
4
4
|
*
|
|
5
5
|
* Permission to use, copy, modify, and/or distribute this software for any
|
|
6
6
|
* purpose with or without fee is hereby granted, provided that the above
|
|
@@ -16,51 +16,52 @@
|
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
19
|
+
* Generalized Account module - routines to use generalized account
|
|
20
20
|
*
|
|
21
21
|
* @module @aeternity/aepp-sdk/es/contract/ga
|
|
22
|
-
* @export
|
|
23
|
-
* @example import {
|
|
22
|
+
* @export GeneralizedAccount
|
|
23
|
+
* @example import { GeneralizedAccount } from '@aeternity/aepp-sdk'
|
|
24
24
|
*/
|
|
25
|
-
import
|
|
26
|
-
import { TX_TYPE } from
|
|
27
|
-
import { buildTx, unpackTx } from
|
|
28
|
-
import { prepareGaParams } from
|
|
29
|
-
import { hash } from
|
|
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";
|
|
30
31
|
/**
|
|
31
|
-
*
|
|
32
|
+
* GeneralizedAccount Stamp
|
|
32
33
|
*
|
|
33
|
-
* Provide
|
|
34
|
+
* Provide Generalized Account implementation
|
|
34
35
|
* {@link module:@aeternity/aepp-sdk/es/contract/ga} clients.
|
|
35
36
|
* @function
|
|
36
37
|
* @alias module:@aeternity/aepp-sdk/es/contract/ga
|
|
37
38
|
* @rtype Stamp
|
|
38
39
|
* @param {Object} [options={}] - Initializer object
|
|
39
|
-
* @return {Object}
|
|
40
|
+
* @return {Object} GeneralizedAccount instance
|
|
40
41
|
* @example
|
|
41
42
|
* const authContract = ``
|
|
42
|
-
* await
|
|
43
|
+
* await aeSdk.createGeneralizedAccount(authFnName, authContract, [...authFnArguments]
|
|
43
44
|
* // Make spend using GA
|
|
44
45
|
* const callData = 'cb_...' // encoded call data for auth contract
|
|
45
|
-
* await
|
|
46
|
+
* await aeSdk.spend(10000, receiverPub, { authData: { callData } })
|
|
46
47
|
* // or
|
|
47
|
-
* await
|
|
48
|
+
* await aeSdk.spend(10000, receiverPub, {
|
|
48
49
|
* authData: { source: authContract, args: [...authContractArgs] }
|
|
49
50
|
* }) // sdk will prepare callData itself
|
|
50
51
|
*/
|
|
51
52
|
|
|
52
|
-
export const
|
|
53
|
+
export const GeneralizedAccount = Contract.compose({
|
|
53
54
|
methods: {
|
|
54
|
-
|
|
55
|
+
createGeneralizedAccount,
|
|
55
56
|
createMetaTx,
|
|
56
57
|
isGA
|
|
57
58
|
}
|
|
58
59
|
});
|
|
59
|
-
export default
|
|
60
|
+
export default GeneralizedAccount;
|
|
60
61
|
/**
|
|
61
62
|
* @alias module:@aeternity/aepp-sdk/es/contract/ga
|
|
62
63
|
* @function
|
|
63
|
-
* Check if account is GA
|
|
64
|
+
* Check if account is GA
|
|
64
65
|
* @param {String} address - Account address
|
|
65
66
|
* @return {Boolean}
|
|
66
67
|
*/
|
|
@@ -72,7 +73,7 @@ async function isGA(address) {
|
|
|
72
73
|
return !!contractId;
|
|
73
74
|
}
|
|
74
75
|
/**
|
|
75
|
-
* Convert current account to GA
|
|
76
|
+
* Convert current account to GA
|
|
76
77
|
* @alias module:@aeternity/aepp-sdk/es/contract/ga
|
|
77
78
|
* @function
|
|
78
79
|
* @param {String} authFnName - Authorization function name
|
|
@@ -80,26 +81,33 @@ async function isGA(address) {
|
|
|
80
81
|
* @param {Array} [args] - init arguments
|
|
81
82
|
* @param {Object} [options] - Options
|
|
82
83
|
* @return {Promise<Readonly<{
|
|
83
|
-
* result: *, owner: *,
|
|
84
|
+
* result: *, owner: *, address, rawTx: *, transaction: *
|
|
84
85
|
* }>>}
|
|
85
86
|
*/
|
|
86
87
|
|
|
87
88
|
|
|
88
|
-
async function
|
|
89
|
+
async function createGeneralizedAccount(authFnName, source) {
|
|
90
|
+
var _opt$gas;
|
|
91
|
+
|
|
89
92
|
let args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
90
93
|
let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
91
94
|
const opt = { ...this.Ae.defaults,
|
|
92
95
|
...options
|
|
93
96
|
};
|
|
94
97
|
const ownerId = await this.address(opt);
|
|
95
|
-
if (await this.isGA(ownerId)) throw new
|
|
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();
|
|
96
103
|
const {
|
|
97
104
|
tx,
|
|
98
105
|
contractId
|
|
99
106
|
} = await this.gaAttachTx({ ...opt,
|
|
107
|
+
gas: (_opt$gas = opt.gas) !== null && _opt$gas !== void 0 ? _opt$gas : await contract._estimateGas('init', args, opt),
|
|
100
108
|
ownerId,
|
|
101
|
-
code:
|
|
102
|
-
callData:
|
|
109
|
+
code: contract.bytecode,
|
|
110
|
+
callData: contract.calldata.encode(contract._name, 'init', args),
|
|
103
111
|
authFun: hash(authFnName)
|
|
104
112
|
});
|
|
105
113
|
const {
|
|
@@ -132,7 +140,7 @@ const wrapInEmptySignedTx = tx => buildTx({
|
|
|
132
140
|
|
|
133
141
|
async function createMetaTx(rawTransaction, authData, authFnName) {
|
|
134
142
|
let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
135
|
-
if (!authData) throw new
|
|
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
|
|
136
144
|
|
|
137
145
|
const {
|
|
138
146
|
authCallData,
|
|
@@ -150,7 +158,7 @@ async function createMetaTx(rawTransaction, authData, authFnName) {
|
|
|
150
158
|
tx: wrappedTx.txObject
|
|
151
159
|
},
|
|
152
160
|
gaId: await this.address(opt),
|
|
153
|
-
abiVersion
|
|
161
|
+
abiVersion,
|
|
154
162
|
authData: authCallData,
|
|
155
163
|
gas,
|
|
156
164
|
vsn: 2
|
|
@@ -167,4 +175,4 @@ async function createMetaTx(rawTransaction, authData, authFnName) {
|
|
|
167
175
|
});
|
|
168
176
|
return wrapInEmptySignedTx(metaTxRlp).tx;
|
|
169
177
|
}
|
|
170
|
-
//# sourceMappingURL=index.
|
|
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
|
package/es/index.mjs.map
ADDED
|
@@ -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"}
|
|
@@ -5,7 +5,8 @@
|
|
|
5
5
|
* @example import { NodePool } from '@aeternity/aepp-sdk'
|
|
6
6
|
*/
|
|
7
7
|
import stampit from '@stamp/it';
|
|
8
|
-
import { getNetworkId } from
|
|
8
|
+
import { getNetworkId } from "../node.mjs";
|
|
9
|
+
import { DisconnectedError, DuplicateNodeError, NodeNotFoundError, TypeError } from "../utils/errors.mjs";
|
|
9
10
|
/**
|
|
10
11
|
* Node Pool Stamp
|
|
11
12
|
* This stamp allow you to make basic manipulation(add, remove, select) on list of nodes
|
|
@@ -41,7 +42,7 @@ export default stampit({
|
|
|
41
42
|
|
|
42
43
|
get() {
|
|
43
44
|
if (!this.selectedNode || !this.selectedNode.instance) {
|
|
44
|
-
throw new
|
|
45
|
+
throw new NodeNotFoundError('You can\'t use Node API. Node is not connected or not defined!');
|
|
45
46
|
}
|
|
46
47
|
|
|
47
48
|
return this.selectedNode.instance.api;
|
|
@@ -65,7 +66,7 @@ export default stampit({
|
|
|
65
66
|
*/
|
|
66
67
|
addNode(name, node) {
|
|
67
68
|
let select = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
68
|
-
if (this.pool.has(name)) throw new
|
|
69
|
+
if (this.pool.has(name)) throw new DuplicateNodeError(name);
|
|
69
70
|
this.validateNodes([{
|
|
70
71
|
name,
|
|
71
72
|
instance: node
|
|
@@ -96,7 +97,7 @@ export default stampit({
|
|
|
96
97
|
* nodePool.selectNode('testNode')
|
|
97
98
|
*/
|
|
98
99
|
selectNode(name) {
|
|
99
|
-
if (!this.pool.has(name)) throw new
|
|
100
|
+
if (!this.pool.has(name)) throw new NodeNotFoundError(`Node with name ${name} not in pool`);
|
|
100
101
|
this.selectedNode = this.pool.get(name);
|
|
101
102
|
},
|
|
102
103
|
|
|
@@ -134,7 +135,7 @@ export default stampit({
|
|
|
134
135
|
* nodePool.getNodeInfo() // { name, version, networkId, protocol, ... }
|
|
135
136
|
*/
|
|
136
137
|
getNodeInfo() {
|
|
137
|
-
if (!this.isNodeConnected()) throw new
|
|
138
|
+
if (!this.isNodeConnected()) throw new DisconnectedError();
|
|
138
139
|
return {
|
|
139
140
|
name: this.selectedNode.name,
|
|
140
141
|
...this.selectedNode.instance.getNodeInfo()
|
|
@@ -163,19 +164,19 @@ export default stampit({
|
|
|
163
164
|
validateNodes(nodes) {
|
|
164
165
|
// TODO: validate it on TypeScript level instead
|
|
165
166
|
// (to speedup development, save runtime resources)
|
|
166
|
-
if (!Array.isArray(nodes)) throw new
|
|
167
|
+
if (!Array.isArray(nodes)) throw new TypeError('"nodes" should be an array');
|
|
167
168
|
const notObject = nodes.map(n => typeof n).find(t => t !== 'object');
|
|
168
|
-
if (notObject) throw new
|
|
169
|
+
if (notObject) throw new TypeError(`Each node should be an object, got ${notObject} instead`);
|
|
169
170
|
const wrongFields = nodes.find(n => typeof n.name !== 'string' || typeof n.instance !== 'object');
|
|
170
171
|
|
|
171
172
|
if (notObject) {
|
|
172
|
-
throw new
|
|
173
|
+
throw new TypeError('Each node should have name (string), instance (object) ' + `fields, got ${JSON.stringify(wrongFields)} instead`);
|
|
173
174
|
}
|
|
174
175
|
|
|
175
176
|
const wrongInstanceFields = nodes.map(n => n.instance).find(i => typeof i.api !== 'object' || typeof i.genesisHash !== 'string' || typeof i.consensusProtocolVersion !== 'number');
|
|
176
177
|
|
|
177
178
|
if (wrongInstanceFields) {
|
|
178
|
-
throw new
|
|
179
|
+
throw new TypeError('Each node instance should have api (object), consensusProtocolVersion (number), ' + `genesisHash (string) fields, got ${JSON.stringify(wrongInstanceFields)} instead`);
|
|
179
180
|
}
|
|
180
181
|
}
|
|
181
182
|
|
|
@@ -184,4 +185,4 @@ export default stampit({
|
|
|
184
185
|
selectedNode: {}
|
|
185
186
|
}
|
|
186
187
|
});
|
|
187
|
-
//# sourceMappingURL=index.
|
|
188
|
+
//# sourceMappingURL=index.mjs.map
|