@bsv/wallet-toolbox 1.1.4 → 1.1.6
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/docs/README.md +1 -1
- package/docs/client.md +714 -470
- package/docs/monitor.md +54 -37
- package/docs/services.md +53 -34
- package/docs/setup.md +326 -53
- package/docs/storage.md +116 -104
- package/docs/wallet.md +713 -470
- package/license.md +28 -1
- package/out/src/Setup.d.ts +27 -3
- package/out/src/Setup.d.ts.map +1 -1
- package/out/src/Setup.js +17 -5
- package/out/src/Setup.js.map +1 -1
- package/out/src/SetupClient.d.ts +130 -15
- package/out/src/SetupClient.d.ts.map +1 -1
- package/out/src/SetupClient.js +29 -15
- package/out/src/SetupClient.js.map +1 -1
- package/out/src/Wallet.d.ts +4 -0
- package/out/src/Wallet.d.ts.map +1 -1
- package/out/src/Wallet.js +7 -0
- package/out/src/Wallet.js.map +1 -1
- package/out/src/sdk/WalletError.d.ts +0 -1
- package/out/src/sdk/WalletError.d.ts.map +1 -1
- package/out/src/sdk/WalletError.js +0 -1
- package/out/src/sdk/WalletError.js.map +1 -1
- package/out/src/sdk/validationHelpers.d.ts +1 -0
- package/out/src/sdk/validationHelpers.d.ts.map +1 -1
- package/out/src/sdk/validationHelpers.js +2 -1
- package/out/src/sdk/validationHelpers.js.map +1 -1
- package/out/src/storage/StorageProvider.d.ts +1 -4
- package/out/src/storage/StorageProvider.d.ts.map +1 -1
- package/out/src/storage/StorageProvider.js +1 -4
- package/out/src/storage/StorageProvider.js.map +1 -1
- package/out/src/storage/WalletStorageManager.d.ts +1 -1
- package/out/src/storage/WalletStorageManager.js +1 -1
- package/out/src/storage/methods/createAction.d.ts.map +1 -1
- package/out/src/storage/methods/createAction.js +42 -11
- package/out/src/storage/methods/createAction.js.map +1 -1
- package/out/src/storage/methods/generateChange.js +1 -1
- package/out/src/storage/methods/generateChange.js.map +1 -1
- package/out/src/storage/methods/listOutputs.d.ts.map +1 -1
- package/out/src/storage/methods/listOutputs.js +4 -2
- package/out/src/storage/methods/listOutputs.js.map +1 -1
- package/out/src/storage/schema/tables/ProvenTxReq.d.ts +4 -4
- package/out/src/utility/ScriptTemplateSABPPP.d.ts +4 -0
- package/out/src/utility/ScriptTemplateSABPPP.d.ts.map +1 -1
- package/out/src/utility/ScriptTemplateSABPPP.js +4 -0
- package/out/src/utility/ScriptTemplateSABPPP.js.map +1 -1
- package/out/test/examples/README.man.test.js +1 -1
- package/out/test/utils/TestUtilsWalletStorage.d.ts +2 -1
- package/out/test/utils/TestUtilsWalletStorage.d.ts.map +1 -1
- package/out/test/utils/TestUtilsWalletStorage.js +112 -27
- package/out/test/utils/TestUtilsWalletStorage.js.map +1 -1
- package/out/test/wallet/action/createAction.test.js +31 -5
- package/out/test/wallet/action/createAction.test.js.map +1 -1
- package/out/test/wallet/action/createAction2.test.d.ts +37 -0
- package/out/test/wallet/action/createAction2.test.d.ts.map +1 -0
- package/out/test/wallet/action/createAction2.test.js +1145 -0
- package/out/test/wallet/action/createAction2.test.js.map +1 -0
- package/out/test/wallet/list/listOutputs.test.js +8 -12
- package/out/test/wallet/list/listOutputs.test.js.map +1 -1
- package/out/tsconfig.all.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/Setup.ts +29 -5
- package/src/SetupClient.ts +136 -22
- package/src/Wallet.ts +9 -0
- package/src/sdk/WalletError.ts +0 -1
- package/src/sdk/validationHelpers.ts +3 -1
- package/src/storage/StorageProvider.ts +1 -4
- package/src/storage/WalletStorageManager.ts +1 -1
- package/src/storage/methods/createAction.ts +48 -12
- package/src/storage/methods/generateChange.ts +1 -1
- package/src/storage/methods/listOutputs.ts +4 -2
- package/src/storage/schema/tables/ProvenTxReq.ts +4 -4
- package/src/utility/ScriptTemplateSABPPP.ts +4 -0
- package/test/examples/README.man.test.ts +1 -1
- package/test/utils/TestUtilsWalletStorage.ts +131 -35
- package/test/wallet/action/createAction.test.ts +36 -5
- package/test/wallet/action/createAction2.test.ts +1400 -0
- package/test/wallet/list/listOutputs.test.ts +7 -13
- package/ts2md.json +6 -6
- package/tsconfig.all.json +1 -1
- package/LICENSE.txt +0 -28
- package/dev.sqlite3 +0 -0
- package/knexfile.js +0 -9
package/license.md
CHANGED
|
@@ -1 +1,28 @@
|
|
|
1
|
-
# Open BSV License
|
|
1
|
+
# Open BSV License version 4
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 BSV Blockchain Association ("Bitcoin Association")
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
1 - The above copyright notice and this permission notice shall be included in
|
|
13
|
+
all copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
2 - The Software, and any software that is derived from the Software or parts thereof,
|
|
16
|
+
can only be used on the Bitcoin SV blockchains. The Bitcoin SV blockchains are defined,
|
|
17
|
+
for purposes of this license, as the Bitcoin blockchain containing block height #556767
|
|
18
|
+
with the hash "000000000000000001d956714215d96ffc00e0afda4cd0a96c96f8d802b1662b" and
|
|
19
|
+
that contains the longest persistent chain of blocks accepted by this Software and which are valid under the rules set forth in the Bitcoin white paper (S. Nakamoto, Bitcoin: A Peer-to-Peer Electronic Cash System, posted online October 2008) and the latest version of this Software available in this repository or another repository designated by Bitcoin Association,
|
|
20
|
+
as well as the test blockchains that contain the longest persistent chains of blocks accepted by this Software and which are valid under the rules set forth in the Bitcoin whitepaper (S. Nakamoto, Bitcoin: A Peer-to-Peer Electronic Cash System, posted online October 2008) and the latest version of this Software available in this repository, or another repository designated by Bitcoin Association
|
|
21
|
+
|
|
22
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
23
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
24
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
25
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
26
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
27
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
28
|
+
THE SOFTWARE.
|
package/out/src/Setup.d.ts
CHANGED
|
@@ -25,23 +25,47 @@ export declare abstract class Setup extends SetupClient {
|
|
|
25
25
|
*
|
|
26
26
|
* @publicbody
|
|
27
27
|
*/
|
|
28
|
-
static
|
|
28
|
+
static createWalletKnex(args: SetupWalletKnexArgs): Promise<SetupWalletKnex>;
|
|
29
|
+
/**
|
|
30
|
+
* @publicbody
|
|
31
|
+
*/
|
|
29
32
|
static createSQLiteKnex(filename: string): Knex;
|
|
33
|
+
/**
|
|
34
|
+
* @publicbody
|
|
35
|
+
*/
|
|
30
36
|
static createMySQLKnex(connection: string, database?: string): Knex;
|
|
31
|
-
|
|
32
|
-
|
|
37
|
+
/**
|
|
38
|
+
* @publicbody
|
|
39
|
+
*/
|
|
40
|
+
static createWalletMySQL(args: SetupWalletMySQLArgs): Promise<SetupWalletKnex>;
|
|
41
|
+
/**
|
|
42
|
+
* @publicbody
|
|
43
|
+
*/
|
|
44
|
+
static createWalletSQLite(args: SetupWalletSQLiteArgs): Promise<SetupWalletKnex>;
|
|
33
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
*
|
|
48
|
+
*/
|
|
34
49
|
export interface SetupWalletKnexArgs extends SetupWalletArgs {
|
|
35
50
|
knex: Knex<any, any[]>;
|
|
36
51
|
databaseName: string;
|
|
37
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
*
|
|
55
|
+
*/
|
|
38
56
|
export interface SetupWalletMySQLArgs extends SetupWalletArgs {
|
|
39
57
|
databaseName: string;
|
|
40
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
*
|
|
61
|
+
*/
|
|
41
62
|
export interface SetupWalletSQLiteArgs extends SetupWalletArgs {
|
|
42
63
|
filePath: string;
|
|
43
64
|
databaseName: string;
|
|
44
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
*
|
|
68
|
+
*/
|
|
45
69
|
export interface SetupWalletKnex extends SetupWallet {
|
|
46
70
|
activeStorage: StorageKnex;
|
|
47
71
|
userId: number;
|
package/out/src/Setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Setup.d.ts","sourceRoot":"","sources":["../../src/Setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,EACL,OAAO,EACP,GAAG,EACH,QAAQ,EACR,WAAW,EACX,MAAM,EACN,oBAAoB,EACrB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,IAAI,EAAoB,MAAM,MAAM,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEvE;;;;;;;;;GASG;AACH,8BAAsB,KAAM,SAAQ,WAAW;IAC7C;;;;;;;;;;;OAWG;WACU,gBAAgB,CAC3B,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,eAAe,CAAC;IAsB3B,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAU/C,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"Setup.d.ts","sourceRoot":"","sources":["../../src/Setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,EACL,OAAO,EACP,GAAG,EACH,QAAQ,EACR,WAAW,EACX,MAAM,EACN,oBAAoB,EACrB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,IAAI,EAAoB,MAAM,MAAM,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEvE;;;;;;;;;GASG;AACH,8BAAsB,KAAM,SAAQ,WAAW;IAC7C;;;;;;;;;;;OAWG;WACU,gBAAgB,CAC3B,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,eAAe,CAAC;IAsB3B;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAU/C;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAenE;;OAEG;WACU,iBAAiB,CAC5B,IAAI,EAAE,oBAAoB,GACzB,OAAO,CAAC,eAAe,CAAC;IAO3B;;OAEG;WACU,kBAAkB,CAC7B,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,eAAe,CAAC;CAM5B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,eAAe;IAC1D,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,eAAe;IAC3D,YAAY,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC5D,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,aAAa,EAAE,WAAW,CAAA;IAC1B,MAAM,EAAE,MAAM,CAAA;IAEd,OAAO,EAAE,UAAU,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,EAAE,GAAG,CAAC,KAAK,CAAA;IAChB,OAAO,EAAE,oBAAoB,CAAA;IAC7B,QAAQ,EAAE,QAAQ,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;CACf"}
|
package/out/src/Setup.js
CHANGED
|
@@ -27,7 +27,7 @@ class Setup extends index_client_1.SetupClient {
|
|
|
27
27
|
*
|
|
28
28
|
* @publicbody
|
|
29
29
|
*/
|
|
30
|
-
static async
|
|
30
|
+
static async createWalletKnex(args) {
|
|
31
31
|
const wo = await Setup.createWallet(args);
|
|
32
32
|
const activeStorage = new index_all_1.StorageKnex({
|
|
33
33
|
chain: wo.chain,
|
|
@@ -48,6 +48,9 @@ class Setup extends index_client_1.SetupClient {
|
|
|
48
48
|
};
|
|
49
49
|
return r;
|
|
50
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* @publicbody
|
|
53
|
+
*/
|
|
51
54
|
static createSQLiteKnex(filename) {
|
|
52
55
|
const config = {
|
|
53
56
|
client: 'sqlite3',
|
|
@@ -57,6 +60,9 @@ class Setup extends index_client_1.SetupClient {
|
|
|
57
60
|
const knex = (0, knex_1.knex)(config);
|
|
58
61
|
return knex;
|
|
59
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* @publicbody
|
|
65
|
+
*/
|
|
60
66
|
static createMySQLKnex(connection, database) {
|
|
61
67
|
const c = JSON.parse(connection);
|
|
62
68
|
if (database) {
|
|
@@ -71,14 +77,20 @@ class Setup extends index_client_1.SetupClient {
|
|
|
71
77
|
const knex = (0, knex_1.knex)(config);
|
|
72
78
|
return knex;
|
|
73
79
|
}
|
|
74
|
-
|
|
75
|
-
|
|
80
|
+
/**
|
|
81
|
+
* @publicbody
|
|
82
|
+
*/
|
|
83
|
+
static async createWalletMySQL(args) {
|
|
84
|
+
return await this.createWalletKnex({
|
|
76
85
|
...args,
|
|
77
86
|
knex: Setup.createMySQLKnex(args.env.mySQLConnection, args.databaseName)
|
|
78
87
|
});
|
|
79
88
|
}
|
|
80
|
-
|
|
81
|
-
|
|
89
|
+
/**
|
|
90
|
+
* @publicbody
|
|
91
|
+
*/
|
|
92
|
+
static async createWalletSQLite(args) {
|
|
93
|
+
return await this.createWalletKnex({
|
|
82
94
|
...args,
|
|
83
95
|
knex: Setup.createSQLiteKnex(args.filePath)
|
|
84
96
|
});
|
package/out/src/Setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Setup.js","sourceRoot":"","sources":["../../src/Setup.ts"],"names":[],"mappings":";;;AACA,iDAOuB;AACvB,+BAA6C;AAC7C,2CAAuE;AAEvE;;;;;;;;;GASG;AACH,MAAsB,KAAM,SAAQ,0BAAW;IAC7C;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,IAAyB;QAEzB,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,aAAa,GAAG,IAAI,uBAAW,CAAC;YACpC,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,kBAAkB,EAAE,CAAC;YACrB,mBAAmB,EAAE,SAAS;YAC9B,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE;SACxC,CAAC,CAAA;QACF,MAAM,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,WAAW,CAAC,CAAA;QAC9D,MAAM,aAAa,CAAC,aAAa,EAAE,CAAA;QACnC,MAAM,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAA;QACxD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,gBAAgB,CAAC,EAAE,CAAC,WAAW,CAAC,CAAA;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC1B,MAAM,CAAC,GAAoB;YACzB,GAAG,EAAE;YACL,aAAa;YACb,MAAM;SACP,CAAA;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,QAAgB;QACtC,MAAM,MAAM,GAAgB;YAC1B,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,EAAE,QAAQ,EAAE;YACxB,gBAAgB,EAAE,IAAI;SACvB,CAAA;QACD,MAAM,IAAI,GAAG,IAAA,WAAQ,EAAC,MAAM,CAAC,CAAA;QAC7B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,UAAkB,EAAE,QAAiB;QAC1D,MAAM,CAAC,GAAgC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QAC7D,IAAI,QAAQ,EAAE,CAAC;YACb,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACvB,CAAC;QACD,MAAM,MAAM,GAAgB;YAC1B,MAAM,EAAE,QAAQ;YAChB,UAAU,EAAE,CAAC;YACb,gBAAgB,EAAE,IAAI;YACtB,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAE;SACnD,CAAA;QACD,MAAM,IAAI,GAAG,IAAA,WAAQ,EAAC,MAAM,CAAC,CAAA;QAC7B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAC5B,IAA0B;QAE1B,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC;YACjC,GAAG,IAAI;YACP,IAAI,EAAE,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,YAAY,CAAC;SACzE,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAC7B,IAA2B;QAE3B,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC;YACjC,GAAG,IAAI;YACP,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC;SAC5C,CAAC,CAAA;IACJ,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"Setup.js","sourceRoot":"","sources":["../../src/Setup.ts"],"names":[],"mappings":";;;AACA,iDAOuB;AACvB,+BAA6C;AAC7C,2CAAuE;AAEvE;;;;;;;;;GASG;AACH,MAAsB,KAAM,SAAQ,0BAAW;IAC7C;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAC3B,IAAyB;QAEzB,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,aAAa,GAAG,IAAI,uBAAW,CAAC;YACpC,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,kBAAkB,EAAE,CAAC;YACrB,mBAAmB,EAAE,SAAS;YAC9B,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE;SACxC,CAAC,CAAA;QACF,MAAM,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,WAAW,CAAC,CAAA;QAC9D,MAAM,aAAa,CAAC,aAAa,EAAE,CAAA;QACnC,MAAM,EAAE,CAAC,OAAO,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAA;QACxD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,aAAa,CAAC,gBAAgB,CAAC,EAAE,CAAC,WAAW,CAAC,CAAA;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC1B,MAAM,CAAC,GAAoB;YACzB,GAAG,EAAE;YACL,aAAa;YACb,MAAM;SACP,CAAA;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,QAAgB;QACtC,MAAM,MAAM,GAAgB;YAC1B,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,EAAE,QAAQ,EAAE;YACxB,gBAAgB,EAAE,IAAI;SACvB,CAAA;QACD,MAAM,IAAI,GAAG,IAAA,WAAQ,EAAC,MAAM,CAAC,CAAA;QAC7B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,UAAkB,EAAE,QAAiB;QAC1D,MAAM,CAAC,GAAgC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QAC7D,IAAI,QAAQ,EAAE,CAAC;YACb,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACvB,CAAC;QACD,MAAM,MAAM,GAAgB;YAC1B,MAAM,EAAE,QAAQ;YAChB,UAAU,EAAE,CAAC;YACb,gBAAgB,EAAE,IAAI;YACtB,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAE;SACnD,CAAA;QACD,MAAM,IAAI,GAAG,IAAA,WAAQ,EAAC,MAAM,CAAC,CAAA;QAC7B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAC5B,IAA0B;QAE1B,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC;YACjC,GAAG,IAAI;YACP,IAAI,EAAE,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,YAAY,CAAC;SACzE,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAC7B,IAA2B;QAE3B,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC;YACjC,GAAG,IAAI;YACP,IAAI,EAAE,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC;SAC5C,CAAC,CAAA;IACJ,CAAC;CACF;AA3FD,sBA2FC"}
|
package/out/src/SetupClient.d.ts
CHANGED
|
@@ -44,10 +44,25 @@ export declare abstract class SetupClient {
|
|
|
44
44
|
* @publicbody
|
|
45
45
|
*/
|
|
46
46
|
static createWallet(args: SetupWalletArgs): Promise<SetupWallet>;
|
|
47
|
-
|
|
47
|
+
/**
|
|
48
|
+
* @publicBody
|
|
49
|
+
*/
|
|
50
|
+
static createWalletClient(args: SetupWalletClientArgs): Promise<SetupWalletClient>;
|
|
51
|
+
/**
|
|
52
|
+
* @publicBody
|
|
53
|
+
*/
|
|
48
54
|
static getKeyPair(priv?: string | PrivateKey): KeyPairAddress;
|
|
55
|
+
/**
|
|
56
|
+
* @publicBody
|
|
57
|
+
*/
|
|
49
58
|
static getLockP2PKH(address: string): import("@bsv/sdk").LockingScript;
|
|
59
|
+
/**
|
|
60
|
+
* @publicBody
|
|
61
|
+
*/
|
|
50
62
|
static getUnlockP2PKH(priv: PrivateKey, satoshis: number): sdk.ScriptTemplateUnlock;
|
|
63
|
+
/**
|
|
64
|
+
* @publicBody
|
|
65
|
+
*/
|
|
51
66
|
static createP2PKHOutputs(outputs: {
|
|
52
67
|
address: string;
|
|
53
68
|
satoshis: number;
|
|
@@ -55,6 +70,9 @@ export declare abstract class SetupClient {
|
|
|
55
70
|
basket?: string;
|
|
56
71
|
tags?: string[];
|
|
57
72
|
}[]): CreateActionOutput[];
|
|
73
|
+
/**
|
|
74
|
+
* @publicBody
|
|
75
|
+
*/
|
|
58
76
|
static createP2PKHOutputsAction(wallet: WalletInterface, outputs: {
|
|
59
77
|
address: string;
|
|
60
78
|
satoshis: number;
|
|
@@ -65,61 +83,158 @@ export declare abstract class SetupClient {
|
|
|
65
83
|
cr: CreateActionResult;
|
|
66
84
|
outpoints: string[] | undefined;
|
|
67
85
|
}>;
|
|
86
|
+
/**
|
|
87
|
+
* @publicBody
|
|
88
|
+
*/
|
|
68
89
|
static fundWalletFromP2PKHOutpoints(wallet: WalletInterface, outpoints: string[], p2pkhKey: KeyPairAddress, inputBEEF?: BEEF): Promise<void>;
|
|
69
90
|
}
|
|
70
91
|
/**
|
|
71
|
-
*
|
|
92
|
+
*
|
|
72
93
|
*/
|
|
73
|
-
export declare class Setup extends SetupClient {
|
|
74
|
-
}
|
|
75
94
|
export type KeyPairAddress = {
|
|
76
95
|
privateKey: PrivateKey;
|
|
77
96
|
publicKey: PublicKey;
|
|
78
97
|
address: string;
|
|
79
98
|
};
|
|
99
|
+
/**
|
|
100
|
+
* `SetupEnv` provides a starting point for managing secrets that
|
|
101
|
+
* must not appear in source code.
|
|
102
|
+
*
|
|
103
|
+
* The `makeEnv` and `getEnv` functions of the `Setup` and `SetupClient` classes
|
|
104
|
+
* provide an easy way to create and import these secrets and related properties.
|
|
105
|
+
*/
|
|
80
106
|
export interface SetupEnv {
|
|
107
|
+
/**
|
|
108
|
+
* The chan being accessed: 'main' for mainnet, 'test' for 'testnet'.
|
|
109
|
+
*/
|
|
81
110
|
chain: sdk.Chain;
|
|
111
|
+
/**
|
|
112
|
+
* The user's primary identity key (public key).
|
|
113
|
+
*/
|
|
82
114
|
identityKey: string;
|
|
115
|
+
/**
|
|
116
|
+
* A secondary identity key (public key), used to test exchanges with other users.
|
|
117
|
+
*/
|
|
83
118
|
identityKey2: string;
|
|
119
|
+
/**
|
|
120
|
+
* A vaild TAAL API key for use by `Services`
|
|
121
|
+
*/
|
|
84
122
|
taalApiKey: string;
|
|
123
|
+
/**
|
|
124
|
+
* A map of public keys (identity keys, hex strings) to private keys (hex strings).
|
|
125
|
+
*/
|
|
85
126
|
devKeys: Record<string, string>;
|
|
127
|
+
/**
|
|
128
|
+
* A MySQL connection string including user and password properties.
|
|
129
|
+
* Must be valid to make use of MySQL `Setup` class support.
|
|
130
|
+
*/
|
|
86
131
|
mySQLConnection: string;
|
|
87
132
|
}
|
|
88
133
|
/**
|
|
89
|
-
* Arguments used to construct a `
|
|
134
|
+
* Arguments used by `createWallet` to construct a `SetupWallet`.
|
|
135
|
+
*
|
|
136
|
+
* Extension `SetupWalletClientArgs` used by `createWalletClient` to construct a `SetupWalletClient`.
|
|
137
|
+
*
|
|
138
|
+
* Extension `SetupWalletKnexArgs` used by `createWalletKnex` to construct a `SetupWalletKnex`.
|
|
90
139
|
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
*
|
|
94
|
-
* @param rootKeyHex Optional. The non-privileged private key used to initialize the `KeyDeriver` and determine the `identityKey`.
|
|
95
|
-
* Defaults to `env.devKeys[env.identityKey]
|
|
96
|
-
* @param privKeyHex Optional. The privileged private key used to initialize the `PrivilegedKeyManager`.
|
|
97
|
-
* Defaults to undefined.
|
|
98
|
-
* @param active. Optional. Active wallet storage. Can be added later.
|
|
99
|
-
* @param backups. Optional. One or more storage providers managed as backup destinations. Can be added later.
|
|
140
|
+
* Extension `SetupWalletMySQLArgs` used by `createWalletMySQL` to construct a `SetupWalletKnex`.
|
|
141
|
+
*
|
|
142
|
+
* Extension `SetupWalletSQLiteArgs` used by `createWalletSQLite` to construct a `SetupWalletKnex`.
|
|
100
143
|
*/
|
|
101
144
|
export interface SetupWalletArgs {
|
|
145
|
+
/**
|
|
146
|
+
* Configuration "secrets" typically obtained by `Setup.makeEnv` and `Setup.getEnv` functions.
|
|
147
|
+
*/
|
|
102
148
|
env: SetupEnv;
|
|
103
|
-
|
|
149
|
+
/**
|
|
150
|
+
* Optional. The non-privileged private key used to initialize the `KeyDeriver` and determine the `identityKey`.
|
|
151
|
+
* Defaults to `env.devKeys[env.identityKey]
|
|
152
|
+
*/
|
|
104
153
|
rootKeyHex?: string;
|
|
154
|
+
/**
|
|
155
|
+
* Optional. The privileged private key used to initialize the `PrivilegedKeyManager`.
|
|
156
|
+
* Defaults to undefined.
|
|
157
|
+
*/
|
|
105
158
|
privKeyHex?: string;
|
|
159
|
+
/**
|
|
160
|
+
* Optional. Active wallet storage. Can be added later.
|
|
161
|
+
*/
|
|
106
162
|
active?: sdk.WalletStorageProvider;
|
|
163
|
+
/**
|
|
164
|
+
* Optional. One or more storage providers managed as backup destinations. Can be added later.
|
|
165
|
+
*/
|
|
107
166
|
backups?: sdk.WalletStorageProvider[];
|
|
108
167
|
}
|
|
168
|
+
/**
|
|
169
|
+
* When creating a BRC-100 compatible `Wallet`, many components come into play.
|
|
170
|
+
*
|
|
171
|
+
* All of the `createWallet` functions in the `Setup` and `SetupClient` classes return
|
|
172
|
+
* an object with direct access to each component to facilitate experimentation, testing
|
|
173
|
+
* and customization.
|
|
174
|
+
*/
|
|
109
175
|
export interface SetupWallet {
|
|
176
|
+
/**
|
|
177
|
+
* The rootKey of the `KeyDeriver`. The private key from which other keys are derived.
|
|
178
|
+
*/
|
|
110
179
|
rootKey: PrivateKey;
|
|
180
|
+
/**
|
|
181
|
+
* The pubilc key associated with the `rootKey` which also serves as the wallet's identity.
|
|
182
|
+
*/
|
|
111
183
|
identityKey: string;
|
|
184
|
+
/**
|
|
185
|
+
* The `KeyDeriver` component used by the wallet for key derivation and cryptographic functions.
|
|
186
|
+
*/
|
|
112
187
|
keyDeriver: KeyDeriver;
|
|
188
|
+
/**
|
|
189
|
+
* The chain ('main' or 'test') which the wallet accesses.
|
|
190
|
+
*/
|
|
113
191
|
chain: sdk.Chain;
|
|
192
|
+
/**
|
|
193
|
+
* The `WalletStorageManager` that manages all the configured storage providers (active and backups)
|
|
194
|
+
* accessed by the wallet.
|
|
195
|
+
*/
|
|
114
196
|
storage: WalletStorageManager;
|
|
197
|
+
/**
|
|
198
|
+
* The network `Services` component which provides the wallet with access to external services hosted
|
|
199
|
+
* on the public network.
|
|
200
|
+
*/
|
|
115
201
|
services: Services;
|
|
202
|
+
/**
|
|
203
|
+
* The background task `Monitor` component available to the wallet to offload tasks
|
|
204
|
+
* that speed up wallet operations and maintain data integrity.
|
|
205
|
+
*/
|
|
116
206
|
monitor: Monitor;
|
|
207
|
+
/**
|
|
208
|
+
* The actual BRC-100 `Wallet` to which all the other properties and components contribute.
|
|
209
|
+
*
|
|
210
|
+
* Note that internally, the wallet is itself linked to all these properties and components.
|
|
211
|
+
* They are included in this interface to facilitate access after wallet construction for
|
|
212
|
+
* experimentation, testing and customization. Any changes made to the configuration of these
|
|
213
|
+
* components after construction may disrupt the normal operation of the wallet.
|
|
214
|
+
*/
|
|
117
215
|
wallet: Wallet;
|
|
118
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* Extension `SetupWalletClientArgs` of `SetupWalletArgs` is used by `createWalletClient`
|
|
219
|
+
* to construct a `SetupWalletClient`.
|
|
220
|
+
*/
|
|
119
221
|
export interface SetupWalletClientArgs extends SetupWalletArgs {
|
|
222
|
+
/**
|
|
223
|
+
* The endpoint URL of a service hosting the `StorageServer` JSON-RPC service to
|
|
224
|
+
* which a `StorageClient` instance should connect to function as
|
|
225
|
+
* the active storage provider of the newly created wallet.
|
|
226
|
+
*/
|
|
120
227
|
endpointUrl?: string;
|
|
121
228
|
}
|
|
229
|
+
/**
|
|
230
|
+
* Extension `SetupWalletClient` of `SetupWallet` is returned by `createWalletClient`
|
|
231
|
+
*/
|
|
122
232
|
export interface SetupWalletClient extends SetupWallet {
|
|
233
|
+
/**
|
|
234
|
+
* The endpoint URL of the service hosting the `StorageServer` JSON-RPC service to
|
|
235
|
+
* which a `StorageClient` instance is connected to function as
|
|
236
|
+
* the active storage provider of the wallet.
|
|
237
|
+
*/
|
|
123
238
|
endpointUrl: string;
|
|
124
239
|
}
|
|
125
240
|
//# sourceMappingURL=SetupClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SetupClient.d.ts","sourceRoot":"","sources":["../../src/SetupClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAGJ,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,UAAU,EAEV,UAAU,EACV,SAAS,EAKT,eAAe,EAChB,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,OAAO,EACP,GAAG,EACH,QAAQ,EAGR,MAAM,EACN,oBAAoB,EACrB,MAAM,gBAAgB,CAAA;AAEvB;;;;;;;;;GASG;AACH,8BAAsB,WAAW;IAC/B;;;;;;;;;OASG;IACH,MAAM,CAAC,OAAO,IAAI,MAAM;IA+BxB;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,QAAQ;IAkCzC;;;;;;;OAOG;WACU,YAAY,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"SetupClient.d.ts","sourceRoot":"","sources":["../../src/SetupClient.ts"],"names":[],"mappings":"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"}
|
package/out/src/SetupClient.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.SetupClient = void 0;
|
|
4
4
|
const sdk_1 = require("@bsv/sdk");
|
|
5
5
|
const index_client_1 = require("./index.client");
|
|
6
6
|
/**
|
|
@@ -97,18 +97,17 @@ class SetupClient {
|
|
|
97
97
|
* @publicbody
|
|
98
98
|
*/
|
|
99
99
|
static async createWallet(args) {
|
|
100
|
-
|
|
100
|
+
const chain = args.env.chain;
|
|
101
101
|
args.rootKeyHex || (args.rootKeyHex = args.env.devKeys[args.env.identityKey]);
|
|
102
102
|
const rootKey = sdk_1.PrivateKey.fromHex(args.rootKeyHex);
|
|
103
103
|
const identityKey = rootKey.toPublicKey().toString();
|
|
104
104
|
const keyDeriver = new sdk_1.KeyDeriver(rootKey);
|
|
105
|
-
const chain = args.chain;
|
|
106
105
|
const storage = new index_client_1.WalletStorageManager(identityKey, args.active, args.backups);
|
|
107
106
|
if (storage.stores.length > 0)
|
|
108
107
|
await storage.makeAvailable();
|
|
109
108
|
const serviceOptions = index_client_1.Services.createDefaultOptions(chain);
|
|
110
109
|
serviceOptions.taalApiKey = args.env.taalApiKey;
|
|
111
|
-
const services = new index_client_1.Services(
|
|
110
|
+
const services = new index_client_1.Services(chain);
|
|
112
111
|
const monopts = index_client_1.Monitor.createDefaultWalletMonitorOptions(chain, storage, services);
|
|
113
112
|
const monitor = new index_client_1.Monitor(monopts);
|
|
114
113
|
monitor.addDefaultTasks();
|
|
@@ -137,8 +136,11 @@ class SetupClient {
|
|
|
137
136
|
};
|
|
138
137
|
return r;
|
|
139
138
|
}
|
|
140
|
-
|
|
141
|
-
|
|
139
|
+
/**
|
|
140
|
+
* @publicBody
|
|
141
|
+
*/
|
|
142
|
+
static async createWalletClient(args) {
|
|
143
|
+
const wo = await SetupClient.createWallet(args);
|
|
142
144
|
if (wo.chain === 'main')
|
|
143
145
|
throw new index_client_1.sdk.WERR_INVALID_PARAMETER('chain', `'test' for now, 'main' is not yet supported.`);
|
|
144
146
|
const endpointUrl = args.endpointUrl || 'https://staging-dojo.babbage.systems';
|
|
@@ -150,6 +152,9 @@ class SetupClient {
|
|
|
150
152
|
endpointUrl
|
|
151
153
|
};
|
|
152
154
|
}
|
|
155
|
+
/**
|
|
156
|
+
* @publicBody
|
|
157
|
+
*/
|
|
153
158
|
static getKeyPair(priv) {
|
|
154
159
|
if (priv === undefined)
|
|
155
160
|
priv = sdk_1.PrivateKey.fromRandom();
|
|
@@ -159,14 +164,20 @@ class SetupClient {
|
|
|
159
164
|
const address = pub.toAddress();
|
|
160
165
|
return { privateKey: priv, publicKey: pub, address };
|
|
161
166
|
}
|
|
167
|
+
/**
|
|
168
|
+
* @publicBody
|
|
169
|
+
*/
|
|
162
170
|
static getLockP2PKH(address) {
|
|
163
171
|
const p2pkh = new sdk_1.P2PKH();
|
|
164
172
|
const lock = p2pkh.lock(address);
|
|
165
173
|
return lock;
|
|
166
174
|
}
|
|
175
|
+
/**
|
|
176
|
+
* @publicBody
|
|
177
|
+
*/
|
|
167
178
|
static getUnlockP2PKH(priv, satoshis) {
|
|
168
179
|
const p2pkh = new sdk_1.P2PKH();
|
|
169
|
-
const lock =
|
|
180
|
+
const lock = SetupClient.getLockP2PKH(SetupClient.getKeyPair(priv).address);
|
|
170
181
|
// Prepare to pay with SIGHASH_ALL and without ANYONE_CAN_PAY.
|
|
171
182
|
// In otherwords:
|
|
172
183
|
// - all outputs must remain in the current order, amount and locking scripts.
|
|
@@ -175,6 +186,9 @@ class SetupClient {
|
|
|
175
186
|
const unlock = p2pkh.unlock(priv, 'all', false, satoshis, lock);
|
|
176
187
|
return unlock;
|
|
177
188
|
}
|
|
189
|
+
/**
|
|
190
|
+
* @publicBody
|
|
191
|
+
*/
|
|
178
192
|
static createP2PKHOutputs(outputs) {
|
|
179
193
|
const os = [];
|
|
180
194
|
const count = outputs.length;
|
|
@@ -184,14 +198,17 @@ class SetupClient {
|
|
|
184
198
|
basket: o.basket,
|
|
185
199
|
tags: o.tags,
|
|
186
200
|
satoshis: o.satoshis,
|
|
187
|
-
lockingScript:
|
|
201
|
+
lockingScript: SetupClient.getLockP2PKH(o.address).toHex(),
|
|
188
202
|
outputDescription: o.outputDescription || `p2pkh ${i}`
|
|
189
203
|
});
|
|
190
204
|
}
|
|
191
205
|
return os;
|
|
192
206
|
}
|
|
207
|
+
/**
|
|
208
|
+
* @publicBody
|
|
209
|
+
*/
|
|
193
210
|
static async createP2PKHOutputsAction(wallet, outputs, options) {
|
|
194
|
-
const os =
|
|
211
|
+
const os = SetupClient.createP2PKHOutputs(outputs);
|
|
195
212
|
const createArgs = {
|
|
196
213
|
description: `createP2PKHOutputs`,
|
|
197
214
|
outputs: os,
|
|
@@ -208,15 +225,12 @@ class SetupClient {
|
|
|
208
225
|
}
|
|
209
226
|
return { cr, outpoints };
|
|
210
227
|
}
|
|
228
|
+
/**
|
|
229
|
+
* @publicBody
|
|
230
|
+
*/
|
|
211
231
|
static async fundWalletFromP2PKHOutpoints(wallet, outpoints, p2pkhKey, inputBEEF) {
|
|
212
232
|
// TODO
|
|
213
233
|
}
|
|
214
234
|
}
|
|
215
235
|
exports.SetupClient = SetupClient;
|
|
216
|
-
/**
|
|
217
|
-
* Enables code that imports only from `SetupClient` to still reference everything as just `Setup`
|
|
218
|
-
*/
|
|
219
|
-
class Setup extends SetupClient {
|
|
220
|
-
}
|
|
221
|
-
exports.Setup = Setup;
|
|
222
236
|
//# sourceMappingURL=SetupClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SetupClient.js","sourceRoot":"","sources":["../../src/SetupClient.ts"],"names":[],"mappings":";;;AAAA,kCAgBiB;AACjB,iDAQuB;AAEvB;;;;;;;;;GASG;AACH,MAAsB,WAAW;IAC/B;;;;;;;;;OASG;IACH,MAAM,CAAC,OAAO;QACZ,MAAM,YAAY,GAAG,gBAAU,CAAC,UAAU,EAAE,CAAA;QAC5C,MAAM,gBAAgB,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAA;QAC9D,MAAM,YAAY,GAAG,gBAAU,CAAC,UAAU,EAAE,CAAA;QAC5C,MAAM,gBAAgB,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAA;QAC9D,MAAM,YAAY,GAAG,gBAAU,CAAC,UAAU,EAAE,CAAA;QAC5C,MAAM,gBAAgB,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAA;QAC9D,MAAM,YAAY,GAAG,gBAAU,CAAC,UAAU,EAAE,CAAA;QAC5C,MAAM,gBAAgB,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAA;QAE9D,MAAM,GAAG,GAAG;;;;0BAIU,gBAAgB;2BACf,gBAAgB;0BACjB,gBAAgB;2BACf,gBAAgB;;WAEhC,gBAAgB,OAAO,YAAY,CAAC,QAAQ,EAAE;WAC9C,gBAAgB,OAAO,YAAY,CAAC,QAAQ,EAAE;WAC9C,gBAAgB,OAAO,YAAY,CAAC,QAAQ,EAAE;WAC9C,gBAAgB,OAAO,YAAY,CAAC,QAAQ,EAAE;;;KAGpD,CAAA;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAEhB,OAAO,GAAG,CAAA;IACZ,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,MAAM,CAAC,KAAgB;QAC5B,uDAAuD;QACvD,MAAM,WAAW,GACf,KAAK,KAAK,MAAM;YACd,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB;YAC9B,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAA;QAClC,MAAM,YAAY,GAChB,KAAK,KAAK,MAAM;YACd,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB;YAC/B,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAA;QACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAA;QAC7C,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAA;QAC5D,MAAM,UAAU,GAAG,IAAA,2BAAY,EAC7B,KAAK,KAAK,MAAM;YACd,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB;YAC/B,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,EACjC,mBAAmB,KAAK,CAAC,WAAW,EAAE,6BAA6B,CACpE,CAAA;QAED,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY;YAC/B,MAAM,IAAI,kBAAG,CAAC,sBAAsB,CAClC,6CAA6C,CAC9C,CAAA;QAEH,OAAO;YACL,KAAK;YACL,WAAW;YACX,YAAY;YACZ,UAAU;YACV,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAA2B;YACvD,eAAe;SAChB,CAAA;IACH,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,IAAqB;QAC7C,
|
|
1
|
+
{"version":3,"file":"SetupClient.js","sourceRoot":"","sources":["../../src/SetupClient.ts"],"names":[],"mappings":"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"}
|
package/out/src/Wallet.d.ts
CHANGED
|
@@ -31,6 +31,10 @@ export declare class Wallet implements WalletInterface, ProtoWallet {
|
|
|
31
31
|
proto: ProtoWallet;
|
|
32
32
|
privilegedKeyManager?: sdk.PrivilegedKeyManager;
|
|
33
33
|
pendingSignActions: Record<string, PendingSignAction>;
|
|
34
|
+
/**
|
|
35
|
+
* For repeatability testing, set to an array of random numbers from [0..1).
|
|
36
|
+
*/
|
|
37
|
+
randomVals?: number[];
|
|
34
38
|
constructor(argsOrSigner: WalletArgs | WalletSigner, services?: sdk.WalletServices, monitor?: Monitor, privilegedKeyManager?: sdk.PrivilegedKeyManager);
|
|
35
39
|
destroy(): Promise<void>;
|
|
36
40
|
getClientChangeKeyPair(): sdk.KeyPair;
|
package/out/src/Wallet.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Wallet.d.ts","sourceRoot":"","sources":["../../src/Wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,wBAAwB,EACxB,mBAAmB,EAEnB,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC1B,aAAa,EACb,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EACjB,uCAAuC,EACvC,WAAW,EACX,oBAAoB,EACpB,sBAAsB,EACtB,SAAS,EACT,yBAAyB,EACzB,2BAA2B,EAC3B,oBAAoB,EACpB,sBAAsB,EACtB,gCAAgC,EAChC,kCAAkC,EAClC,4BAA4B,EAC5B,8BAA8B,EAC9B,cAAc,EACd,gBAAgB,EAChB,WAAW,IAAI,cAAc,EAC7B,SAAS,EAET,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EAMhB,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,GAAG,EAEH,OAAO,EACP,oBAAoB,EACpB,YAAY,EACb,MAAM,gBAAgB,CAAA;AAQvB,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,GAAG,CAAC,KAAK,CAAA;IAChB,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,oBAAoB,CAAA;IAC7B,QAAQ,CAAC,EAAE,GAAG,CAAC,cAAc,CAAA;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,oBAAoB,CAAC,EAAE,GAAG,CAAC,oBAAoB,CAAA;CAChD;AAMD,qBAAa,MAAO,YAAW,eAAe,EAAE,WAAW;IACzD,KAAK,EAAE,GAAG,CAAC,KAAK,CAAA;IAChB,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,oBAAoB,CAAA;IAE7B,QAAQ,CAAC,EAAE,GAAG,CAAC,cAAc,CAAA;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB,WAAW,EAAE,MAAM,CAAA;IAEnB;;;;;;;;;OASG;IACH,IAAI,EAAE,SAAS,CAAA;IACf,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,WAAW,CAAA;IAClB,oBAAoB,CAAC,EAAE,GAAG,CAAC,oBAAoB,CAAA;IAE/C,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"Wallet.d.ts","sourceRoot":"","sources":["../../src/Wallet.ts"],"names":[],"mappings":"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"}
|
package/out/src/Wallet.js
CHANGED
|
@@ -13,6 +13,10 @@ function isWalletSigner(args) {
|
|
|
13
13
|
}
|
|
14
14
|
class Wallet {
|
|
15
15
|
constructor(argsOrSigner, services, monitor, privilegedKeyManager) {
|
|
16
|
+
/**
|
|
17
|
+
* For repeatability testing, set to an array of random numbers from [0..1).
|
|
18
|
+
*/
|
|
19
|
+
this.randomVals = undefined;
|
|
16
20
|
const args = !isWalletSigner(argsOrSigner)
|
|
17
21
|
? argsOrSigner
|
|
18
22
|
: {
|
|
@@ -340,6 +344,9 @@ class Wallet {
|
|
|
340
344
|
(_a = args.options).trustSelf || (_a.trustSelf = this.trustSelf);
|
|
341
345
|
args.options.knownTxids = this.getKnownTxids(args.options.knownTxids);
|
|
342
346
|
const { auth, vargs } = this.validateAuthAndArgs(args, index_client_1.sdk.validateCreateActionArgs);
|
|
347
|
+
if (this.randomVals && this.randomVals.length > 1) {
|
|
348
|
+
vargs.randomVals = [...this.randomVals];
|
|
349
|
+
}
|
|
343
350
|
const r = await (0, createAction_1.createAction)(this, auth, vargs);
|
|
344
351
|
if (r.signableTransaction) {
|
|
345
352
|
const st = r.signableTransaction;
|