@algorandfoundation/algokit-utils 2.2.1 → 2.3.0-beta.2
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/account.d.ts +30 -1
- package/account.d.ts.map +1 -1
- package/account.js +11 -12
- package/account.js.map +1 -1
- package/network-client.d.ts +13 -1
- package/network-client.d.ts.map +1 -1
- package/network-client.js +44 -1
- package/network-client.js.map +1 -1
- package/package.json +4 -1
- package/testing/fixtures/algorand-fixture.d.ts +26 -2
- package/testing/fixtures/algorand-fixture.d.ts.map +1 -1
- package/testing/fixtures/algorand-fixture.js +8 -11
- package/testing/fixtures/algorand-fixture.js.map +1 -1
- package/types/app-spec.d.ts +1 -1
- package/types/app-spec.d.ts.map +1 -1
- package/types/network-client.d.ts +14 -0
- package/types/network-client.d.ts.map +1 -1
package/account.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import algosdk, { Account, Algodv2, Kmd, MultisigMetadata, TransactionSigner } from 'algosdk';
|
|
2
2
|
import { MultisigAccount, SigningAccount, TransactionSignerAccount } from './types/account';
|
|
3
3
|
import { AlgoAmount } from './types/amount';
|
|
4
|
+
import { AccountConfig } from './types/network-client';
|
|
4
5
|
import { SendTransactionFrom } from './types/transaction';
|
|
5
6
|
/**
|
|
6
7
|
* Returns an account wrapper that supports partial or full multisig signing.
|
|
@@ -37,7 +38,8 @@ export declare function mnemonicAccount(mnemonicSecret: string): Account;
|
|
|
37
38
|
*
|
|
38
39
|
*/
|
|
39
40
|
export declare function randomAccount(): Account;
|
|
40
|
-
/**
|
|
41
|
+
/** @deprecated use getAccount(account: { name: string; fundWith?: AlgoAmount } | string, algod: Algodv2, env: AlgoClientConfig, kmdClient?: Kmd) instead
|
|
42
|
+
*
|
|
41
43
|
* Returns an Algorand account with private key loaded by convention based on the given name identifier.
|
|
42
44
|
*
|
|
43
45
|
* Note: This function expects to run in a Node.js environment.
|
|
@@ -70,6 +72,33 @@ export declare function getAccount(account: {
|
|
|
70
72
|
name: string;
|
|
71
73
|
fundWith?: AlgoAmount;
|
|
72
74
|
} | string, algod: Algodv2, kmdClient?: Kmd): Promise<Account | SigningAccount>;
|
|
75
|
+
/**
|
|
76
|
+
* Returns an Algorand account with private key loaded by convention based on the given name identifier.
|
|
77
|
+
*
|
|
78
|
+
* Note: This function expects to run in a Node.js environment.
|
|
79
|
+
*
|
|
80
|
+
* @example Default
|
|
81
|
+
*
|
|
82
|
+
* If you have a mnemonic secret loaded into `process.env.ACCOUNT_MNEMONIC` then you can call the following to get that private key loaded into an account object:
|
|
83
|
+
* ```typescript
|
|
84
|
+
* const account = await getAccount('ACCOUNT', algod, undefined, getAccountConfigFromEnvironment(accountName))
|
|
85
|
+
* ```
|
|
86
|
+
*
|
|
87
|
+
* If that code runs against LocalNet then a wallet called `ACCOUNT` will automatically be created with an account that is automatically funded with 1000 (default) ALGOs from the default LocalNet dispenser.
|
|
88
|
+
*
|
|
89
|
+
* @param account The details of the account to get, wither the name identifier (string) or an object with:
|
|
90
|
+
* * `name`: The name identifier of the account
|
|
91
|
+
* * `fundWith`: The amount to fund the account with it it gets created (when targeting LocalNet), if not specified then 1000 Algos will be funded from the dispenser account
|
|
92
|
+
* @param algod An algod client
|
|
93
|
+
* @param kmdClient An optional KMD client to use to create an account (when targeting LocalNet), if not specified then a default KMD client will be loaded from environment variables
|
|
94
|
+
* @param config Enviroment settings use getAccountConfigFromEnvironment()
|
|
95
|
+
* @returns The requested account with private key loaded from the environment variables or when targeting LocalNet from KMD (idempotently creating and funding the account)
|
|
96
|
+
*/
|
|
97
|
+
export declare function getAccount(account: {
|
|
98
|
+
name: string;
|
|
99
|
+
fundWith?: AlgoAmount;
|
|
100
|
+
config: AccountConfig;
|
|
101
|
+
}, algod: Algodv2, kmdClient: Kmd | undefined): Promise<Account | SigningAccount>;
|
|
73
102
|
/** Returns an account's address as a byte array
|
|
74
103
|
*
|
|
75
104
|
* @param account Either an account (with private key loaded) or the string address of an account
|
package/account.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAK7F,OAAO,EAAqB,eAAe,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AAC9G,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAEzD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC,OAAO,GAAG,cAAc,CAAC,EAAE,mBAE9G;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAE7D;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,GAAG,wBAAwB,CAE5G;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAG/D;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAGvC;AAED
|
|
1
|
+
{"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAK7F,OAAO,EAAqB,eAAe,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AAC9G,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAEzD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC,OAAO,GAAG,cAAc,CAAC,EAAE,mBAE9G;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAE7D;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,GAAG,wBAAwB,CAE5G;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAG/D;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAGvC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,UAAU,CAAA;CAAE,GAAG,MAAM,EACzD,KAAK,EAAE,OAAO,EACd,SAAS,CAAC,EAAE,GAAG,GACd,OAAO,CAAC,OAAO,GAAG,cAAc,CAAC,CAAA;AAEpC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,aAAa,CAAA;CAAE,EACvE,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,GAAG,GAAG,SAAS,GACzB,OAAO,CAAC,OAAO,GAAG,cAAc,CAAC,CAAA;AAuEpC;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,cAElF;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAE7E;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,6CAIlE"}
|
package/account.js
CHANGED
|
@@ -87,6 +87,7 @@ exports.randomAccount = randomAccount;
|
|
|
87
87
|
* @param account The details of the account to get, wither the name identifier (string) or an object with:
|
|
88
88
|
* * `name`: The name identifier of the account
|
|
89
89
|
* * `fundWith`: The amount to fund the account with it it gets created (when targeting LocalNet), if not specified then 1000 Algos will be funded from the dispenser account
|
|
90
|
+
* * `config` Enviroment settings use getAccountConfigFromEnvironment()
|
|
90
91
|
* @param algod An algod client
|
|
91
92
|
* @param kmdClient An optional KMD client to use to create an account (when targeting LocalNet), if not specified then a default KMD client will be loaded from environment variables
|
|
92
93
|
* @returns The requested account with private key loaded from the environment variables or when targeting LocalNet from KMD (idempotently creating and funding the account)
|
|
@@ -94,25 +95,23 @@ exports.randomAccount = randomAccount;
|
|
|
94
95
|
async function getAccount(account, algod, kmdClient) {
|
|
95
96
|
let name;
|
|
96
97
|
let fundWith = undefined;
|
|
98
|
+
let config;
|
|
97
99
|
if (typeof account === 'string') {
|
|
98
100
|
name = account;
|
|
101
|
+
config = (0, network_client_1.getAccountConfigFromEnvironment)(name);
|
|
99
102
|
}
|
|
100
103
|
else {
|
|
101
104
|
name = account.name;
|
|
102
105
|
fundWith = account.fundWith;
|
|
106
|
+
config = account.config || (0, network_client_1.getAccountConfigFromEnvironment)(name);
|
|
103
107
|
}
|
|
104
|
-
if (
|
|
105
|
-
throw new Error('Attempt to get account with private key from a non Node.js context; not supported!');
|
|
106
|
-
}
|
|
107
|
-
const envKey = `${name.toUpperCase()}_MNEMONIC`;
|
|
108
|
-
if (process.env[envKey]) {
|
|
108
|
+
if (config.accountMnemonic) {
|
|
109
109
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
110
|
-
const signer = mnemonicAccount(
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
_1.Config.logger.debug(`Using rekeyed account ${signer.addr} for sender ${process.env[senderKey]} for ${name} account`);
|
|
110
|
+
const signer = mnemonicAccount(config.accountMnemonic);
|
|
111
|
+
if (config.senderMnemonic) {
|
|
112
|
+
_1.Config.logger.debug(`Using rekeyed account ${signer.addr} for sender ${config.senderMnemonic} for ${name} account`);
|
|
114
113
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
115
|
-
return new account_1.SigningAccount(signer,
|
|
114
|
+
return new account_1.SigningAccount(signer, config.senderMnemonic);
|
|
116
115
|
}
|
|
117
116
|
else {
|
|
118
117
|
return signer;
|
|
@@ -120,10 +119,10 @@ async function getAccount(account, algod, kmdClient) {
|
|
|
120
119
|
}
|
|
121
120
|
if (await (0, network_client_1.isLocalNet)(algod)) {
|
|
122
121
|
const account = await (0, localnet_1.getOrCreateKmdWalletAccount)({ name, fundWith }, algod, kmdClient);
|
|
123
|
-
|
|
122
|
+
config.accountMnemonic = algosdk_1.default.secretKeyToMnemonic(account.sk);
|
|
124
123
|
return account;
|
|
125
124
|
}
|
|
126
|
-
throw new Error(`Missing environment variable ${
|
|
125
|
+
throw new Error(`Missing environment variable ${config.senderMnemonic} when looking for account ${name}`);
|
|
127
126
|
}
|
|
128
127
|
exports.getAccount = getAccount;
|
|
129
128
|
/** Returns an account's address as a byte array
|
package/account.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.js","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA6F;AAC7F,yBAA2B;AAC3B,yCAAqF;AACrF,
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":"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"}
|
package/network-client.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { Algodv2, Indexer, Kmd } from 'algosdk';
|
|
2
|
-
import { AlgoClientConfig } from './types/network-client';
|
|
2
|
+
import { AccountConfig, AlgoClientConfig, AlgoConfig } from './types/network-client';
|
|
3
|
+
/** Retrieve configurations from environment variables when defined or get defaults (expects to be called from a Node.js environment not algod-side) */
|
|
4
|
+
export declare function getConfigFromEnvOrDefaults(): AlgoConfig;
|
|
3
5
|
/** Retrieve the algod configuration from environment variables (expects to be called from a Node.js environment not algod-side) */
|
|
4
6
|
export declare function getAlgodConfigFromEnvironment(): AlgoClientConfig;
|
|
5
7
|
/** Retrieve the indexer configuration from environment variables (expects to be called from a Node.js environment not algod-side) */
|
|
@@ -10,6 +12,16 @@ export declare function getIndexerConfigFromEnvironment(): AlgoClientConfig;
|
|
|
10
12
|
* @param config Which algod config to return - Algod or Indexer
|
|
11
13
|
*/
|
|
12
14
|
export declare function getAlgoNodeConfig(network: 'testnet' | 'mainnet', config: 'algod' | 'indexer'): AlgoClientConfig;
|
|
15
|
+
/** Returns the Account configuration from enviroment variables
|
|
16
|
+
*
|
|
17
|
+
* @param accountName account name
|
|
18
|
+
*
|
|
19
|
+
* @example enviroment variables
|
|
20
|
+
* {accountName}_MNEMONIC
|
|
21
|
+
* {accountName}_SENDER
|
|
22
|
+
*
|
|
23
|
+
*/
|
|
24
|
+
export declare function getAccountConfigFromEnvironment(accountName: string): AccountConfig;
|
|
13
25
|
/** Returns the Algorand configuration to point to the default LocalNet
|
|
14
26
|
*
|
|
15
27
|
* @param configOrPort Which algod config to return - algod, kmd, or indexer OR a port number
|
package/network-client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-client.d.ts","sourceRoot":"","sources":["../src/network-client.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAGxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"network-client.d.ts","sourceRoot":"","sources":["../src/network-client.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAGxD,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAEpF,uJAAuJ;AACvJ,wBAAgB,0BAA0B,IAAI,UAAU,CAwBvD;AAED,mIAAmI;AACnI,wBAAgB,6BAA6B,IAAI,gBAAgB,CAchE;AAED,qIAAqI;AACrI,wBAAgB,+BAA+B,IAAI,gBAAgB,CAclE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS,EAAE,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,gBAAgB,CAK/G;AAED;;;;;;;;GAQG;AACH,wBAAgB,+BAA+B,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa,CASlF;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,OAAO,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,gBAAgB,CAM7G;AAUD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,aAAa,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAIhE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAIvE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,GAAG,CAK/D;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAGhE;AACD,wBAAsB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAGhE;AAED,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA"}
|
package/network-client.js
CHANGED
|
@@ -23,9 +23,33 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.isLocalNet = exports.isMainNet = exports.isTestNet = exports.getAlgoKmdClient = exports.getAlgoIndexerClient = exports.getAlgoClient = exports.getDefaultLocalNetConfig = exports.getAlgoNodeConfig = exports.getIndexerConfigFromEnvironment = exports.getAlgodConfigFromEnvironment = void 0;
|
|
26
|
+
exports.isLocalNet = exports.isMainNet = exports.isTestNet = exports.getAlgoKmdClient = exports.getAlgoIndexerClient = exports.getAlgoClient = exports.getDefaultLocalNetConfig = exports.getAccountConfigFromEnvironment = exports.getAlgoNodeConfig = exports.getIndexerConfigFromEnvironment = exports.getAlgodConfigFromEnvironment = exports.getConfigFromEnvOrDefaults = void 0;
|
|
27
27
|
const algosdk_1 = __importStar(require("algosdk"));
|
|
28
28
|
const algo_http_client_with_retry_1 = require("./types/algo-http-client-with-retry");
|
|
29
|
+
/** Retrieve configurations from environment variables when defined or get defaults (expects to be called from a Node.js environment not algod-side) */
|
|
30
|
+
function getConfigFromEnvOrDefaults() {
|
|
31
|
+
if (!process || !process.env) {
|
|
32
|
+
throw new Error('Attempt to get default algod configuration from a non Node.js context; supply the config instead');
|
|
33
|
+
}
|
|
34
|
+
const algodConfig = !process.env.ALGOD_SERVER
|
|
35
|
+
? getDefaultLocalNetConfig('algod')
|
|
36
|
+
: { server: process.env.ALGOD_SERVER, port: process.env.ALGOD_PORT, token: process.env.ALGOD_TOKEN };
|
|
37
|
+
const indexerConfig = !process.env.INDEXER_SERVER
|
|
38
|
+
? getDefaultLocalNetConfig('indexer')
|
|
39
|
+
: {
|
|
40
|
+
server: process.env.INDEXER_SERVER,
|
|
41
|
+
port: process.env.INDEXER_PORT,
|
|
42
|
+
token: process.env.INDEXER_TOKEN,
|
|
43
|
+
};
|
|
44
|
+
return {
|
|
45
|
+
algodConfig,
|
|
46
|
+
indexerConfig,
|
|
47
|
+
kmdConfig: process && process.env && process.env.ALGOD_SERVER
|
|
48
|
+
? { ...algodConfig, port: process?.env?.KMD_PORT ?? '4002' }
|
|
49
|
+
: getDefaultLocalNetConfig('kmd'),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
exports.getConfigFromEnvOrDefaults = getConfigFromEnvOrDefaults;
|
|
29
53
|
/** Retrieve the algod configuration from environment variables (expects to be called from a Node.js environment not algod-side) */
|
|
30
54
|
function getAlgodConfigFromEnvironment() {
|
|
31
55
|
if (!process || !process.env) {
|
|
@@ -68,6 +92,25 @@ function getAlgoNodeConfig(network, config) {
|
|
|
68
92
|
};
|
|
69
93
|
}
|
|
70
94
|
exports.getAlgoNodeConfig = getAlgoNodeConfig;
|
|
95
|
+
/** Returns the Account configuration from enviroment variables
|
|
96
|
+
*
|
|
97
|
+
* @param accountName account name
|
|
98
|
+
*
|
|
99
|
+
* @example enviroment variables
|
|
100
|
+
* {accountName}_MNEMONIC
|
|
101
|
+
* {accountName}_SENDER
|
|
102
|
+
*
|
|
103
|
+
*/
|
|
104
|
+
function getAccountConfigFromEnvironment(accountName) {
|
|
105
|
+
if (!process || !process.env) {
|
|
106
|
+
throw new Error('Attempt to get account with private key from a non Node.js context; not supported!');
|
|
107
|
+
}
|
|
108
|
+
return {
|
|
109
|
+
accountMnemonic: process.env[`${accountName.toUpperCase()}_MNEMONIC`] || '',
|
|
110
|
+
senderMnemonic: process.env[`${accountName.toUpperCase()}_SENDER`] || '',
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
exports.getAccountConfigFromEnvironment = getAccountConfigFromEnvironment;
|
|
71
114
|
/** Returns the Algorand configuration to point to the default LocalNet
|
|
72
115
|
*
|
|
73
116
|
* @param configOrPort Which algod config to return - algod, kmd, or indexer OR a port number
|
package/network-client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-client.js","sourceRoot":"","sources":["../src/network-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"network-client.js","sourceRoot":"","sources":["../src/network-client.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"main": "index.js",
|
|
3
3
|
"types": "index.d.ts",
|
|
4
4
|
"name": "@algorandfoundation/algokit-utils",
|
|
5
|
-
"version": "2.2
|
|
5
|
+
"version": "2.3.0-beta.2",
|
|
6
6
|
"private": false,
|
|
7
7
|
"description": "A set of core Algorand utilities written in TypeScript and released via npm that make it easier to build solutions on Algorand.",
|
|
8
8
|
"author": "Algorand Foundation",
|
|
@@ -13,6 +13,9 @@
|
|
|
13
13
|
"files": [
|
|
14
14
|
"**/*"
|
|
15
15
|
],
|
|
16
|
+
"overrides": {
|
|
17
|
+
"semver": "7.5.2"
|
|
18
|
+
},
|
|
16
19
|
"dependencies": {
|
|
17
20
|
"algosdk": "^2.3.0",
|
|
18
21
|
"algosdk2-2": "npm:algosdk@2.2.0",
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { AlgoConfig } from '../../types/network-client';
|
|
1
2
|
import { AlgorandFixture, AlgorandFixtureConfig } from '../../types/testing';
|
|
2
|
-
/**
|
|
3
|
+
/** @deprecated use algorandFixture(fixtureConfig: AlgorandFixtureConfig | undefined, config: AlgoConfig) instead
|
|
3
4
|
* Creates a test fixture for automated testing against Algorand.
|
|
4
5
|
* By default it tests against an environment variable specified client
|
|
5
6
|
* if the standard environment variables are specified, otherwise against
|
|
@@ -20,5 +21,28 @@ import { AlgorandFixture, AlgorandFixtureConfig } from '../../types/testing';
|
|
|
20
21
|
* @param fixtureConfig The fixture configuration
|
|
21
22
|
* @returns The fixture
|
|
22
23
|
*/
|
|
23
|
-
export declare
|
|
24
|
+
export declare function algorandFixture(fixtureConfig?: AlgorandFixtureConfig): AlgorandFixture;
|
|
25
|
+
/**
|
|
26
|
+
* Creates a test fixture for automated testing against Algorand.
|
|
27
|
+
* By default it tests against an environment variable specified client
|
|
28
|
+
* if the standard environment variables are specified, otherwise against
|
|
29
|
+
* a default LocalNet instance, but you can pass in an algod, indexer
|
|
30
|
+
* and/or kmd if you want to test against an explicitly defined network.
|
|
31
|
+
*
|
|
32
|
+
* @example ```typescript
|
|
33
|
+
* const algorand = algorandFixture(undefined, getConfigFromEnvOrDefaults())
|
|
34
|
+
*
|
|
35
|
+
* beforeEach(algorand.beforeEach, 10_000)
|
|
36
|
+
*
|
|
37
|
+
* test('My test', async () => {
|
|
38
|
+
* const {algod, indexer, testAccount, ...} = algorand.context
|
|
39
|
+
* // test things...
|
|
40
|
+
* })
|
|
41
|
+
* ```
|
|
42
|
+
*
|
|
43
|
+
* @param fixtureConfig The fixture configuration
|
|
44
|
+
* @param config The algo configuration
|
|
45
|
+
* @returns The fixture
|
|
46
|
+
*/
|
|
47
|
+
export declare function algorandFixture(fixtureConfig: AlgorandFixtureConfig | undefined, config: AlgoConfig): AlgorandFixture;
|
|
24
48
|
//# sourceMappingURL=algorand-fixture.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"algorand-fixture.d.ts","sourceRoot":"","sources":["../../../src/testing/fixtures/algorand-fixture.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"algorand-fixture.d.ts","sourceRoot":"","sources":["../../../src/testing/fixtures/algorand-fixture.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAuD,MAAM,qBAAqB,CAAA;AAEjI;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,eAAe,CAAC,aAAa,CAAC,EAAE,qBAAqB,GAAG,eAAe,CAAA;AAEvF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,eAAe,CAAC,aAAa,EAAE,qBAAqB,GAAG,SAAS,EAAE,MAAM,EAAE,UAAU,GAAG,eAAe,CAAA"}
|
|
@@ -11,7 +11,7 @@ const __2 = require("../../");
|
|
|
11
11
|
* and/or kmd if you want to test against an explicitly defined network.
|
|
12
12
|
*
|
|
13
13
|
* @example ```typescript
|
|
14
|
-
* const algorand = algorandFixture()
|
|
14
|
+
* const algorand = algorandFixture(undefined, getConfigFromEnvOrDefaults())
|
|
15
15
|
*
|
|
16
16
|
* beforeEach(algorand.beforeEach, 10_000)
|
|
17
17
|
*
|
|
@@ -22,17 +22,14 @@ const __2 = require("../../");
|
|
|
22
22
|
* ```
|
|
23
23
|
*
|
|
24
24
|
* @param fixtureConfig The fixture configuration
|
|
25
|
+
* @param config The algo configuration
|
|
25
26
|
* @returns The fixture
|
|
26
27
|
*/
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
const
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
: (0, __2.getDefaultLocalNetConfig)('kmd');
|
|
33
|
-
const algod = fixtureConfig?.algod ?? (0, __2.getAlgoClient)(algodConfig);
|
|
34
|
-
const indexer = fixtureConfig?.indexer ?? (0, __2.getAlgoIndexerClient)(indexerConfig);
|
|
35
|
-
const kmd = fixtureConfig?.kmd ?? (0, __2.getAlgoKmdClient)(kmdConfig);
|
|
28
|
+
function algorandFixture(fixtureConfig, config) {
|
|
29
|
+
config = config || (0, __2.getConfigFromEnvOrDefaults)();
|
|
30
|
+
const algod = fixtureConfig?.algod ?? (0, __2.getAlgoClient)(config.algodConfig);
|
|
31
|
+
const indexer = fixtureConfig?.indexer ?? (0, __2.getAlgoIndexerClient)(config.indexerConfig);
|
|
32
|
+
const kmd = fixtureConfig?.kmd ?? (0, __2.getAlgoKmdClient)(config.kmdConfig);
|
|
36
33
|
let context;
|
|
37
34
|
const beforeEach = async () => {
|
|
38
35
|
__2.Config.configure({ debug: true });
|
|
@@ -55,6 +52,6 @@ const algorandFixture = (fixtureConfig) => {
|
|
|
55
52
|
},
|
|
56
53
|
beforeEach,
|
|
57
54
|
};
|
|
58
|
-
}
|
|
55
|
+
}
|
|
59
56
|
exports.algorandFixture = algorandFixture;
|
|
60
57
|
//# sourceMappingURL=algorand-fixture.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"algorand-fixture.js","sourceRoot":"","sources":["../../../src/testing/fixtures/algorand-fixture.ts"],"names":[],"mappings":";;;AAAA,2BAA+E;AAC/E,
|
|
1
|
+
{"version":3,"file":"algorand-fixture.js","sourceRoot":"","sources":["../../../src/testing/fixtures/algorand-fixture.ts"],"names":[],"mappings":";;;AAAA,2BAA+E;AAC/E,8BAQe;AAmDf;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,eAAe,CAAC,aAAqC,EAAE,MAAmB;IACxF,MAAM,GAAG,MAAM,IAAI,IAAA,8BAA0B,GAAE,CAAA;IAE/C,MAAM,KAAK,GAAG,aAAa,EAAE,KAAK,IAAI,IAAA,iBAAa,EAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IACvE,MAAM,OAAO,GAAG,aAAa,EAAE,OAAO,IAAI,IAAA,wBAAoB,EAAC,MAAM,CAAC,aAAa,CAAC,CAAA;IACpF,MAAM,GAAG,GAAG,aAAa,EAAE,GAAG,IAAI,IAAA,oBAAgB,EAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACpE,IAAI,OAAsC,CAAA;IAE1C,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;QAC5B,UAAM,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QACjC,MAAM,iBAAiB,GAAG,IAAI,qBAAiB,EAAE,CAAA;QACjD,MAAM,sBAAsB,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC/D,OAAO,GAAG;YACR,KAAK,EAAE,sBAAsB;YAC7B,OAAO,EAAE,OAAO;YAChB,GAAG,EAAE,GAAG;YACR,WAAW,EAAE,MAAM,IAAA,kBAAc,EAC/B,EAAE,YAAY,EAAE,aAAa,EAAE,kBAAkB,IAAI,IAAA,SAAK,EAAC,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,EACnF,sBAAsB,EACtB,GAAG,CACJ;YACD,eAAe,EAAE,CAAC,MAA4B,EAAE,EAAE,CAAC,IAAA,kBAAc,EAAC,MAAM,EAAE,sBAAsB,EAAE,GAAG,CAAC;YACtG,iBAAiB,EAAE,iBAAiB;YACpC,cAAc,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC;YAC/D,yBAAyB,EAAE,CAAC,aAAqB,EAAE,EAAE,CAAC,IAAA,0BAAsB,EAAC,GAAG,EAAE,CAAC,IAAA,yBAAqB,EAAC,aAAa,EAAE,OAAO,CAAC,CAAC;SAClI,CAAA;IACH,CAAC,CAAA;IAED,OAAO;QACL,IAAI,OAAO;YACT,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,UAAU;KACX,CAAA;AACH,CAAC;AAlCD,0CAkCC"}
|
package/types/app-spec.d.ts
CHANGED
|
@@ -119,7 +119,7 @@ export interface ReservedSchemaValueSpec {
|
|
|
119
119
|
/** The type of value */
|
|
120
120
|
type: AVMType;
|
|
121
121
|
/** The description of the reserved storage space */
|
|
122
|
-
|
|
122
|
+
descr: string;
|
|
123
123
|
/** The maximum number of slots to reserve */
|
|
124
124
|
max_keys: number;
|
|
125
125
|
}
|
package/types/app-spec.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-spec.d.ts","sourceRoot":"","sources":["../../src/types/app-spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE5D,oGAAoG;AACpG,MAAM,WAAW,OAAO;IACtB,wBAAwB;IACxB,KAAK,EAAE,QAAQ,CAAA;IACf,sBAAsB;IACtB,MAAM,EAAE,UAAU,CAAA;IAClB,iHAAiH;IACjH,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,yDAAyD;IACzD,MAAM,EAAE,UAAU,CAAA;IAClB,wEAAwE;IACxE,KAAK,EAAE,eAAe,CAAA;IACtB,qEAAqE;IACrE,gBAAgB,EAAE,UAAU,CAAA;CAC7B;AAED,mDAAmD;AACnD,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAE3C,oCAAoC;AACpC,MAAM,WAAW,UAAU;IACzB,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAA;IAChB,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;;;;IAKI;AACJ,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAA;AAEjE,sCAAsC;AACtC,MAAM,WAAW,UAAU;IACzB,uBAAuB;IACvB,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,yBAAyB;IACzB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,4BAA4B;IAC5B,SAAS,CAAC,EAAE,eAAe,CAAA;IAC3B,yBAAyB;IACzB,kBAAkB,CAAC,EAAE,eAAe,CAAA;IACpC,yBAAyB;IACzB,kBAAkB,CAAC,EAAE,eAAe,CAAA;CACrC;AAED,0EAA0E;AAC1E,MAAM,WAAW,IAAI;IACnB,uHAAuH;IACvH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACnD,WAAW,EAAE,UAAU,CAAA;CACxB;AAED,0BAA0B;AAC1B,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAE9B,qCAAqC;AACrC,MAAM,MAAM,OAAO,GAAG,MAAM,CAAA;AAE5B,+DAA+D;AAC/D,MAAM,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AAEhD,uCAAuC;AACvC,MAAM,WAAW,MAAM;IACrB,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,4DAA4D;IAC5D,QAAQ,EAAE,aAAa,EAAE,CAAA;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB;IACE;;OAEG;IACH,MAAM,EAAE,YAAY,CAAA;IACpB,IAAI,EAAE,eAAe,CAAA;CACtB,GACD;IACE;;OAEG;IACH,MAAM,EAAE,cAAc,CAAA;IACtB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE;;OAEG;IACH,MAAM,EAAE,aAAa,CAAA;IACrB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;CACb,GACD;IACE;;OAEG;IACH,MAAM,EAAE,UAAU,CAAA;IAClB;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CACtB,CAAA;AAEL,oBAAoB;AACpB,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;AAExC,0CAA0C;AAC1C,MAAM,WAAW,uBAAuB;IACtC,wBAAwB;IACxB,IAAI,EAAE,OAAO,CAAA;IACb,0BAA0B;IAC1B,GAAG,EAAE,MAAM,CAAA;IACX,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,sFAAsF;IACtF,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,0CAA0C;AAC1C,MAAM,WAAW,uBAAuB;IACtC,wBAAwB;IACxB,IAAI,EAAE,OAAO,CAAA;IACb,oDAAoD;IACpD,
|
|
1
|
+
{"version":3,"file":"app-spec.d.ts","sourceRoot":"","sources":["../../src/types/app-spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,4 +8,18 @@ export interface AlgoClientConfig {
|
|
|
8
8
|
/** The token to use for API authentication (or undefined if none needed) - can be a string, or an object with the header key => value */
|
|
9
9
|
token?: string | TokenHeader;
|
|
10
10
|
}
|
|
11
|
+
/** Config for an algo config */
|
|
12
|
+
export interface AlgoConfig {
|
|
13
|
+
/** Algo client configuration */
|
|
14
|
+
algodConfig: AlgoClientConfig;
|
|
15
|
+
/** Indexer client configuration */
|
|
16
|
+
indexerConfig: AlgoClientConfig;
|
|
17
|
+
/** Kmd configuration */
|
|
18
|
+
kmdConfig: AlgoClientConfig;
|
|
19
|
+
}
|
|
20
|
+
/** Config for an account config */
|
|
21
|
+
export interface AccountConfig {
|
|
22
|
+
accountMnemonic: string;
|
|
23
|
+
senderMnemonic: string;
|
|
24
|
+
}
|
|
11
25
|
//# sourceMappingURL=network-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-client.d.ts","sourceRoot":"","sources":["../../src/types/network-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAA;AAEnF,wCAAwC;AACxC,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,MAAM,EAAE,MAAM,CAAA;IACd,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,yIAAyI;IACzI,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAAA;CAC7B"}
|
|
1
|
+
{"version":3,"file":"network-client.d.ts","sourceRoot":"","sources":["../../src/types/network-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAA;AAEnF,wCAAwC;AACxC,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,MAAM,EAAE,MAAM,CAAA;IACd,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,yIAAyI;IACzI,KAAK,CAAC,EAAE,MAAM,GAAG,WAAW,CAAA;CAC7B;AAED,gCAAgC;AAChC,MAAM,WAAW,UAAU;IACzB,gCAAgC;IAChC,WAAW,EAAE,gBAAgB,CAAA;IAC7B,mCAAmC;IACnC,aAAa,EAAE,gBAAgB,CAAA;IAC/B,wBAAwB;IACxB,SAAS,EAAE,gBAAgB,CAAA;CAC5B;AAED,mCAAmC;AACnC,MAAM,WAAW,aAAa;IAC5B,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,MAAM,CAAA;CACvB"}
|