@bsv/wallet-toolbox 1.6.2 → 1.6.4
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/CHANGELOG.md +8 -0
- package/docs/client.md +315 -2500
- package/docs/services.md +15 -4
- package/docs/wallet.md +315 -2500
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +1 -2
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.js +0 -3
- package/mobile/out/src/services/chaintracker/chaintracks/index.client.js.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +2 -3
- package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
- package/mobile/package-lock.json +2 -2
- package/mobile/package.json +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +1 -2
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.all.d.ts +3 -0
- package/out/src/services/chaintracker/chaintracks/index.all.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.all.js +3 -0
- package/out/src/services/chaintracker/chaintracks/index.all.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.client.d.ts +0 -3
- package/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.client.js +0 -3
- package/out/src/services/chaintracker/chaintracks/index.client.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +2 -3
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
- package/out/src/storage/__test/getBeefForTransaction.test.js.map +1 -1
- package/out/test/storage/idb/update.test.js +1 -1
- package/out/test/storage/idb/update.test.js.map +1 -1
- package/out/tsconfig.all.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.ts +1 -2
- package/src/services/chaintracker/chaintracks/index.all.ts +4 -0
- package/src/services/chaintracker/chaintracks/index.client.ts +0 -3
- package/src/services/chaintracker/chaintracks/util/BulkFileDataManager.ts +2 -3
- package/src/storage/__test/getBeefForTransaction.test.ts +2 -5
- package/test/storage/idb/update.test.ts +1 -1
- package/mobile/out/src/Setup.d.ts +0 -267
- package/mobile/out/src/Setup.d.ts.map +0 -1
- package/mobile/out/src/Setup.js +0 -408
- package/mobile/out/src/Setup.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts +0 -30
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.js +0 -149
- package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts +0 -23
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +0 -57
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts +0 -16
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +0 -1
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +0 -53
- package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +0 -1
- package/mobile/out/src/storage/StorageKnex.d.ts +0 -179
- package/mobile/out/src/storage/StorageKnex.d.ts.map +0 -1
- package/mobile/out/src/storage/StorageKnex.js +0 -1215
- package/mobile/out/src/storage/StorageKnex.js.map +0 -1
- package/mobile/out/src/storage/methods/listActionsKnex.d.ts +0 -6
- package/mobile/out/src/storage/methods/listActionsKnex.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/listActionsKnex.js +0 -198
- package/mobile/out/src/storage/methods/listActionsKnex.js.map +0 -1
- package/mobile/out/src/storage/methods/listOutputsKnex.d.ts +0 -6
- package/mobile/out/src/storage/methods/listOutputsKnex.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/listOutputsKnex.js +0 -241
- package/mobile/out/src/storage/methods/listOutputsKnex.js.map +0 -1
- package/mobile/out/src/storage/methods/purgeData.d.ts +0 -4
- package/mobile/out/src/storage/methods/purgeData.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/purgeData.js +0 -207
- package/mobile/out/src/storage/methods/purgeData.js.map +0 -1
- package/mobile/out/src/storage/methods/reviewStatus.d.ts +0 -20
- package/mobile/out/src/storage/methods/reviewStatus.d.ts.map +0 -1
- package/mobile/out/src/storage/methods/reviewStatus.js +0 -84
- package/mobile/out/src/storage/methods/reviewStatus.js.map +0 -1
- package/mobile/out/src/storage/schema/KnexMigrations.d.ts +0 -39
- package/mobile/out/src/storage/schema/KnexMigrations.d.ts.map +0 -1
- package/mobile/out/src/storage/schema/KnexMigrations.js +0 -410
- package/mobile/out/src/storage/schema/KnexMigrations.js.map +0 -1
- package/mobile/out/test/utils/TestUtilsWalletStorage.d.ts +0 -522
- package/mobile/out/test/utils/TestUtilsWalletStorage.d.ts.map +0 -1
- package/mobile/out/test/utils/TestUtilsWalletStorage.js +0 -1956
- package/mobile/out/test/utils/TestUtilsWalletStorage.js.map +0 -1
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BulkIngestorWhatsOnChainWs = void 0;
|
|
4
|
-
const utilityHelpers_1 = require("../../../../utility/utilityHelpers");
|
|
5
|
-
const BulkIngestorBase_1 = require("./BulkIngestorBase");
|
|
6
|
-
const WhatsOnChainIngestorWs_1 = require("./WhatsOnChainIngestorWs");
|
|
7
|
-
const WhatsOnChainServices_1 = require("./WhatsOnChainServices");
|
|
8
|
-
class BulkIngestorWhatsOnChainWs extends BulkIngestorBase_1.BulkIngestorBase {
|
|
9
|
-
/**
|
|
10
|
-
*
|
|
11
|
-
* @param chain
|
|
12
|
-
* @param localCachePath defaults to './data/ingest_whatsonchain_headers'
|
|
13
|
-
* @returns
|
|
14
|
-
*/
|
|
15
|
-
static createBulkIngestorWhatsOnChainOptions(chain) {
|
|
16
|
-
const options = {
|
|
17
|
-
...WhatsOnChainServices_1.WhatsOnChainServices.createWhatsOnChainServicesOptions(chain),
|
|
18
|
-
...BulkIngestorBase_1.BulkIngestorBase.createBulkIngestorBaseOptions(chain),
|
|
19
|
-
idleWait: 5000
|
|
20
|
-
};
|
|
21
|
-
return options;
|
|
22
|
-
}
|
|
23
|
-
constructor(options) {
|
|
24
|
-
super(options);
|
|
25
|
-
this.stopOldListenersToken = { stop: undefined };
|
|
26
|
-
this.idleWait = options.idleWait || 5000;
|
|
27
|
-
this.woc = new WhatsOnChainServices_1.WhatsOnChainServices(options);
|
|
28
|
-
}
|
|
29
|
-
async getPresentHeight() {
|
|
30
|
-
const presentHeight = await this.woc.getChainTipHeight();
|
|
31
|
-
(0, utilityHelpers_1.logger)(`presentHeight=${presentHeight}`);
|
|
32
|
-
return presentHeight;
|
|
33
|
-
}
|
|
34
|
-
async fetchHeaders(before, fetchRange, bulkRange, priorLiveHeaders) {
|
|
35
|
-
const oldHeaders = [];
|
|
36
|
-
const errors = [];
|
|
37
|
-
const enqueue = header => {
|
|
38
|
-
oldHeaders.push(header);
|
|
39
|
-
};
|
|
40
|
-
const error = (code, message) => {
|
|
41
|
-
errors.push({ code, message, count: errors.length });
|
|
42
|
-
return false;
|
|
43
|
-
};
|
|
44
|
-
const ok = await (0, WhatsOnChainIngestorWs_1.WocHeadersBulkListener)(fetchRange.minHeight, fetchRange.maxHeight, enqueue, error, this.stopOldListenersToken, this.chain, this.idleWait);
|
|
45
|
-
let liveHeaders = [];
|
|
46
|
-
if (ok) {
|
|
47
|
-
liveHeaders = await this.storage().addBulkHeaders(oldHeaders, bulkRange, priorLiveHeaders);
|
|
48
|
-
}
|
|
49
|
-
if (errors.length > 0) {
|
|
50
|
-
const errorMessages = errors.map(e => `(${e.code}) ${e.message} (${e.count})`).join('\n');
|
|
51
|
-
(0, utilityHelpers_1.logger)(`Errors during WhatsOnChain ingestion:\n${errorMessages}`);
|
|
52
|
-
}
|
|
53
|
-
return liveHeaders;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
exports.BulkIngestorWhatsOnChainWs = BulkIngestorWhatsOnChainWs;
|
|
57
|
-
//# sourceMappingURL=BulkIngestorWhatsOnChainWs.js.map
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BulkIngestorWhatsOnChainWs.js","sourceRoot":"","sources":["../../../../../../../src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.ts"],"names":[],"mappings":";;;AACA,uEAA2D;AAE3D,yDAAqD;AAGrD,qEAAoF;AACpF,iEAA2F;AAE3F,MAAa,0BAA2B,SAAQ,mCAAgB;IAC9D;;;;;OAKG;IACH,MAAM,CAAC,qCAAqC,CAAC,KAAY;QACvD,MAAM,OAAO,GAAoC;YAC/C,GAAG,2CAAoB,CAAC,iCAAiC,CAAC,KAAK,CAAC;YAChE,GAAG,mCAAgB,CAAC,6BAA6B,CAAC,KAAK,CAAC;YACxD,QAAQ,EAAE,IAAI;SACf,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAMD,YAAY,OAAwC;QAClD,KAAK,CAAC,OAAO,CAAC,CAAA;QAHhB,0BAAqB,GAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;QAI5D,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAA;QACxC,IAAI,CAAC,GAAG,GAAG,IAAI,2CAAoB,CAAC,OAAO,CAAC,CAAA;IAC9C,CAAC;IAEQ,KAAK,CAAC,gBAAgB;QAC7B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAA;QACxD,IAAA,uBAAM,EAAC,iBAAiB,aAAa,EAAE,CAAC,CAAA;QACxC,OAAO,aAAa,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,MAAoB,EACpB,UAAuB,EACvB,SAAsB,EACtB,gBAA+B;QAE/B,MAAM,UAAU,GAAkB,EAAE,CAAA;QACpC,MAAM,MAAM,GAAuD,EAAE,CAAA;QACrE,MAAM,OAAO,GAAmB,MAAM,CAAC,EAAE;YACvC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACzB,CAAC,CAAA;QACD,MAAM,KAAK,GAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;YAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;YACpD,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;QAED,MAAM,EAAE,GAAG,MAAM,IAAA,+CAAsB,EACrC,UAAU,CAAC,SAAS,EACpB,UAAU,CAAC,SAAS,EACpB,OAAO,EACP,KAAK,EACL,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,QAAQ,CACd,CAAA;QAED,IAAI,WAAW,GAAkB,EAAE,CAAA;QACnC,IAAI,EAAE,EAAE,CAAC;YACP,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAA;QAC5F,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACzF,IAAA,uBAAM,EAAC,0CAA0C,aAAa,EAAE,CAAC,CAAA;QACnE,CAAC;QAED,OAAO,WAAW,CAAA;IACpB,CAAC;CACF;AAtED,gEAsEC"}
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { BlockHeader, Chain } from '../../../../sdk';
|
|
2
|
-
import { LiveIngestorBase } from './LiveIngestorBase';
|
|
3
|
-
import { LiveIngestorWhatsOnChainOptions } from './LiveIngestorWhatsOnChainPoll';
|
|
4
|
-
import { StopListenerToken } from './WhatsOnChainIngestorWs';
|
|
5
|
-
import { WhatsOnChainServices } from './WhatsOnChainServices';
|
|
6
|
-
export declare class LiveIngestorWhatsOnChainWs extends LiveIngestorBase {
|
|
7
|
-
static createLiveIngestorWhatsOnChainOptions(chain: Chain): LiveIngestorWhatsOnChainOptions;
|
|
8
|
-
idleWait: number;
|
|
9
|
-
woc: WhatsOnChainServices;
|
|
10
|
-
stopNewListenersToken: StopListenerToken;
|
|
11
|
-
constructor(options: LiveIngestorWhatsOnChainOptions);
|
|
12
|
-
getHeaderByHash(hash: string): Promise<BlockHeader | undefined>;
|
|
13
|
-
startListening(liveHeaders: BlockHeader[]): Promise<void>;
|
|
14
|
-
stopListening(): void;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=LiveIngestorWhatsOnChainWs.d.ts.map
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LiveIngestorWhatsOnChainWs.d.ts","sourceRoot":"","sources":["../../../../../../../src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,+BAA+B,EAAE,MAAM,gCAAgC,CAAA;AAChF,OAAO,EAAE,iBAAiB,EAA0B,MAAM,0BAA0B,CAAA;AACpF,OAAO,EAAgC,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE3F,qBAAa,0BAA2B,SAAQ,gBAAgB;IAC9D,MAAM,CAAC,qCAAqC,CAAC,KAAK,EAAE,KAAK,GAAG,+BAA+B;IAS3F,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,oBAAoB,CAAA;IACzB,qBAAqB,EAAE,iBAAiB,CAAsB;gBAElD,OAAO,EAAE,+BAA+B;IAM9C,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAK/D,cAAc,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB/D,aAAa,IAAI,IAAI;CAGtB"}
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LiveIngestorWhatsOnChainWs = void 0;
|
|
4
|
-
const LiveIngestorBase_1 = require("./LiveIngestorBase");
|
|
5
|
-
const WhatsOnChainIngestorWs_1 = require("./WhatsOnChainIngestorWs");
|
|
6
|
-
const WhatsOnChainServices_1 = require("./WhatsOnChainServices");
|
|
7
|
-
class LiveIngestorWhatsOnChainWs extends LiveIngestorBase_1.LiveIngestorBase {
|
|
8
|
-
static createLiveIngestorWhatsOnChainOptions(chain) {
|
|
9
|
-
const options = {
|
|
10
|
-
...WhatsOnChainServices_1.WhatsOnChainServices.createWhatsOnChainServicesOptions(chain),
|
|
11
|
-
...LiveIngestorBase_1.LiveIngestorBase.createLiveIngestorBaseOptions(chain),
|
|
12
|
-
idleWait: 100000
|
|
13
|
-
};
|
|
14
|
-
return options;
|
|
15
|
-
}
|
|
16
|
-
constructor(options) {
|
|
17
|
-
super(options);
|
|
18
|
-
this.stopNewListenersToken = { stop: undefined };
|
|
19
|
-
this.idleWait = options.idleWait || 100000;
|
|
20
|
-
this.woc = new WhatsOnChainServices_1.WhatsOnChainServices(options);
|
|
21
|
-
}
|
|
22
|
-
async getHeaderByHash(hash) {
|
|
23
|
-
const header = await this.woc.getHeaderByHash(hash);
|
|
24
|
-
return header;
|
|
25
|
-
}
|
|
26
|
-
async startListening(liveHeaders) {
|
|
27
|
-
const errors = [];
|
|
28
|
-
const enqueue = header => {
|
|
29
|
-
liveHeaders.push(header);
|
|
30
|
-
};
|
|
31
|
-
const error = (code, message) => {
|
|
32
|
-
errors.push({ code, message, count: errors.length });
|
|
33
|
-
return false;
|
|
34
|
-
};
|
|
35
|
-
for (;;) {
|
|
36
|
-
const ok = await (0, WhatsOnChainIngestorWs_1.WocHeadersLiveListener)(enqueue, error, this.stopNewListenersToken, this.chain, this.idleWait);
|
|
37
|
-
if (!ok || errors.length > 0) {
|
|
38
|
-
console.log(`WhatsOnChain live ingestor ok=${ok} error count=${errors.length}`);
|
|
39
|
-
for (const e of errors)
|
|
40
|
-
console.log(`WhatsOnChain error code=${e.code} count=${e.count} message=${e.message}`);
|
|
41
|
-
}
|
|
42
|
-
if (ok)
|
|
43
|
-
break;
|
|
44
|
-
errors.length = 0;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
stopListening() {
|
|
48
|
-
var _a, _b;
|
|
49
|
-
(_b = (_a = this.stopNewListenersToken).stop) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
exports.LiveIngestorWhatsOnChainWs = LiveIngestorWhatsOnChainWs;
|
|
53
|
-
//# sourceMappingURL=LiveIngestorWhatsOnChainWs.js.map
|
package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LiveIngestorWhatsOnChainWs.js","sourceRoot":"","sources":["../../../../../../../src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.ts"],"names":[],"mappings":";;;AACA,yDAAqD;AAErD,qEAAoF;AACpF,iEAA2F;AAE3F,MAAa,0BAA2B,SAAQ,mCAAgB;IAC9D,MAAM,CAAC,qCAAqC,CAAC,KAAY;QACvD,MAAM,OAAO,GAAoC;YAC/C,GAAG,2CAAoB,CAAC,iCAAiC,CAAC,KAAK,CAAC;YAChE,GAAG,mCAAgB,CAAC,6BAA6B,CAAC,KAAK,CAAC;YACxD,QAAQ,EAAE,MAAM;SACjB,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAMD,YAAY,OAAwC;QAClD,KAAK,CAAC,OAAO,CAAC,CAAA;QAHhB,0BAAqB,GAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;QAI5D,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAA;QAC1C,IAAI,CAAC,GAAG,GAAG,IAAI,2CAAoB,CAAC,OAAO,CAAC,CAAA;IAC9C,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAAY;QAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;QACnD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,WAA0B;QAC7C,MAAM,MAAM,GAAuD,EAAE,CAAA;QACrE,MAAM,OAAO,GAAmB,MAAM,CAAC,EAAE;YACvC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC1B,CAAC,CAAA;QACD,MAAM,KAAK,GAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;YAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;YACpD,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;QAED,SAAS,CAAC;YACR,MAAM,EAAE,GAAG,MAAM,IAAA,+CAAsB,EAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;YAE9G,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,gBAAgB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;gBAC/E,KAAK,MAAM,CAAC,IAAI,MAAM;oBAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;YAChH,CAAC;YAED,IAAI,EAAE;gBAAE,MAAK;YAEb,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED,aAAa;;QACX,MAAA,MAAA,IAAI,CAAC,qBAAqB,EAAC,IAAI,kDAAI,CAAA;IACrC,CAAC;CACF;AApDD,gEAoDC"}
|
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
import { ListActionsResult, ListOutputsResult } from '@bsv/sdk';
|
|
2
|
-
import { TableCertificate, TableCertificateField, TableCertificateX, TableCommission, TableMonitorEvent, TableOutput, TableOutputBasket, TableOutputTag, TableOutputTagMap, TableProvenTx, TableProvenTxReq, TableSettings, TableSyncState, TableTransaction, TableTxLabel, TableTxLabelMap, TableUser } from './schema/tables';
|
|
3
|
-
import { Knex } from 'knex';
|
|
4
|
-
import { AdminStatsResult, StorageProvider, StorageProviderOptions } from './StorageProvider';
|
|
5
|
-
import { DBType } from './StorageReader';
|
|
6
|
-
import { AuthId, FindCertificateFieldsArgs, FindCertificatesArgs, FindCommissionsArgs, FindForUserSincePagedArgs, FindMonitorEventsArgs, FindOutputBasketsArgs, FindOutputsArgs, FindOutputTagMapsArgs, FindOutputTagsArgs, FindPartialSincePagedArgs, FindProvenTxReqsArgs, FindProvenTxsArgs, FindSyncStatesArgs, FindTransactionsArgs, FindTxLabelMapsArgs, FindTxLabelsArgs, FindUsersArgs, ProvenOrRawTx, PurgeParams, PurgeResults, TrxToken, WalletStorageProvider } from '../sdk/WalletStorage.interfaces';
|
|
7
|
-
import { ValidListActionsArgs, ValidListOutputsArgs } from '../sdk/validationHelpers';
|
|
8
|
-
import { EntityTimeStamp } from '../sdk/types';
|
|
9
|
-
export interface StorageKnexOptions extends StorageProviderOptions {
|
|
10
|
-
/**
|
|
11
|
-
* Knex database interface initialized with valid connection configuration.
|
|
12
|
-
*/
|
|
13
|
-
knex: Knex;
|
|
14
|
-
}
|
|
15
|
-
export declare class StorageKnex extends StorageProvider implements WalletStorageProvider {
|
|
16
|
-
knex: Knex;
|
|
17
|
-
constructor(options: StorageKnexOptions);
|
|
18
|
-
readSettings(): Promise<TableSettings>;
|
|
19
|
-
getProvenOrRawTx(txid: string, trx?: TrxToken): Promise<ProvenOrRawTx>;
|
|
20
|
-
dbTypeSubstring(source: string, fromOffset: number, forLength?: number): string;
|
|
21
|
-
getRawTxOfKnownValidTransaction(txid?: string, offset?: number, length?: number, trx?: TrxToken): Promise<number[] | undefined>;
|
|
22
|
-
getProvenTxsForUserQuery(args: FindForUserSincePagedArgs): Knex.QueryBuilder;
|
|
23
|
-
getProvenTxsForUser(args: FindForUserSincePagedArgs): Promise<TableProvenTx[]>;
|
|
24
|
-
getProvenTxReqsForUserQuery(args: FindForUserSincePagedArgs): Knex.QueryBuilder;
|
|
25
|
-
getProvenTxReqsForUser(args: FindForUserSincePagedArgs): Promise<TableProvenTxReq[]>;
|
|
26
|
-
getTxLabelMapsForUserQuery(args: FindForUserSincePagedArgs): Knex.QueryBuilder;
|
|
27
|
-
getTxLabelMapsForUser(args: FindForUserSincePagedArgs): Promise<TableTxLabelMap[]>;
|
|
28
|
-
getOutputTagMapsForUserQuery(args: FindForUserSincePagedArgs): Knex.QueryBuilder;
|
|
29
|
-
getOutputTagMapsForUser(args: FindForUserSincePagedArgs): Promise<TableOutputTagMap[]>;
|
|
30
|
-
listActions(auth: AuthId, vargs: ValidListActionsArgs): Promise<ListActionsResult>;
|
|
31
|
-
listOutputs(auth: AuthId, vargs: ValidListOutputsArgs): Promise<ListOutputsResult>;
|
|
32
|
-
insertProvenTx(tx: TableProvenTx, trx?: TrxToken): Promise<number>;
|
|
33
|
-
insertProvenTxReq(tx: TableProvenTxReq, trx?: TrxToken): Promise<number>;
|
|
34
|
-
insertUser(user: TableUser, trx?: TrxToken): Promise<number>;
|
|
35
|
-
insertCertificateAuth(auth: AuthId, certificate: TableCertificateX): Promise<number>;
|
|
36
|
-
insertCertificate(certificate: TableCertificateX, trx?: TrxToken): Promise<number>;
|
|
37
|
-
insertCertificateField(certificateField: TableCertificateField, trx?: TrxToken): Promise<void>;
|
|
38
|
-
insertOutputBasket(basket: TableOutputBasket, trx?: TrxToken): Promise<number>;
|
|
39
|
-
insertTransaction(tx: TableTransaction, trx?: TrxToken): Promise<number>;
|
|
40
|
-
insertCommission(commission: TableCommission, trx?: TrxToken): Promise<number>;
|
|
41
|
-
insertOutput(output: TableOutput, trx?: TrxToken): Promise<number>;
|
|
42
|
-
insertOutputTag(tag: TableOutputTag, trx?: TrxToken): Promise<number>;
|
|
43
|
-
insertOutputTagMap(tagMap: TableOutputTagMap, trx?: TrxToken): Promise<void>;
|
|
44
|
-
insertTxLabel(label: TableTxLabel, trx?: TrxToken): Promise<number>;
|
|
45
|
-
insertTxLabelMap(labelMap: TableTxLabelMap, trx?: TrxToken): Promise<void>;
|
|
46
|
-
insertMonitorEvent(event: TableMonitorEvent, trx?: TrxToken): Promise<number>;
|
|
47
|
-
insertSyncState(syncState: TableSyncState, trx?: TrxToken): Promise<number>;
|
|
48
|
-
updateCertificateField(certificateId: number, fieldName: string, update: Partial<TableCertificateField>, trx?: TrxToken): Promise<number>;
|
|
49
|
-
updateCertificate(id: number, update: Partial<TableCertificate>, trx?: TrxToken): Promise<number>;
|
|
50
|
-
updateCommission(id: number, update: Partial<TableCommission>, trx?: TrxToken): Promise<number>;
|
|
51
|
-
updateOutputBasket(id: number, update: Partial<TableOutputBasket>, trx?: TrxToken): Promise<number>;
|
|
52
|
-
updateOutput(id: number, update: Partial<TableOutput>, trx?: TrxToken): Promise<number>;
|
|
53
|
-
updateOutputTagMap(outputId: number, tagId: number, update: Partial<TableOutputTagMap>, trx?: TrxToken): Promise<number>;
|
|
54
|
-
updateOutputTag(id: number, update: Partial<TableOutputTag>, trx?: TrxToken): Promise<number>;
|
|
55
|
-
updateProvenTxReq(id: number | number[], update: Partial<TableProvenTxReq>, trx?: TrxToken): Promise<number>;
|
|
56
|
-
updateProvenTx(id: number, update: Partial<TableProvenTx>, trx?: TrxToken): Promise<number>;
|
|
57
|
-
updateSyncState(id: number, update: Partial<TableSyncState>, trx?: TrxToken): Promise<number>;
|
|
58
|
-
updateTransaction(id: number | number[], update: Partial<TableTransaction>, trx?: TrxToken): Promise<number>;
|
|
59
|
-
updateTxLabelMap(transactionId: number, txLabelId: number, update: Partial<TableTxLabelMap>, trx?: TrxToken): Promise<number>;
|
|
60
|
-
updateTxLabel(id: number, update: Partial<TableTxLabel>, trx?: TrxToken): Promise<number>;
|
|
61
|
-
updateUser(id: number, update: Partial<TableUser>, trx?: TrxToken): Promise<number>;
|
|
62
|
-
updateMonitorEvent(id: number, update: Partial<TableMonitorEvent>, trx?: TrxToken): Promise<number>;
|
|
63
|
-
setupQuery<T extends object>(table: string, args: FindPartialSincePagedArgs<T>): Knex.QueryBuilder;
|
|
64
|
-
findCertificateFieldsQuery(args: FindCertificateFieldsArgs): Knex.QueryBuilder;
|
|
65
|
-
findCertificatesQuery(args: FindCertificatesArgs): Knex.QueryBuilder;
|
|
66
|
-
findCommissionsQuery(args: FindCommissionsArgs): Knex.QueryBuilder;
|
|
67
|
-
findOutputBasketsQuery(args: FindOutputBasketsArgs): Knex.QueryBuilder;
|
|
68
|
-
findOutputsQuery(args: FindOutputsArgs, count?: boolean): Knex.QueryBuilder;
|
|
69
|
-
findOutputTagMapsQuery(args: FindOutputTagMapsArgs): Knex.QueryBuilder;
|
|
70
|
-
findOutputTagsQuery(args: FindOutputTagsArgs): Knex.QueryBuilder;
|
|
71
|
-
findProvenTxReqsQuery(args: FindProvenTxReqsArgs): Knex.QueryBuilder;
|
|
72
|
-
findProvenTxsQuery(args: FindProvenTxsArgs): Knex.QueryBuilder;
|
|
73
|
-
findSyncStatesQuery(args: FindSyncStatesArgs): Knex.QueryBuilder;
|
|
74
|
-
findTransactionsQuery(args: FindTransactionsArgs, count?: boolean): Knex.QueryBuilder;
|
|
75
|
-
findTxLabelMapsQuery(args: FindTxLabelMapsArgs): Knex.QueryBuilder;
|
|
76
|
-
findTxLabelsQuery(args: FindTxLabelsArgs): Knex.QueryBuilder;
|
|
77
|
-
findUsersQuery(args: FindUsersArgs): Knex.QueryBuilder;
|
|
78
|
-
findMonitorEventsQuery(args: FindMonitorEventsArgs): Knex.QueryBuilder;
|
|
79
|
-
findCertificatesAuth(auth: AuthId, args: FindCertificatesArgs): Promise<TableCertificateX[]>;
|
|
80
|
-
findOutputBasketsAuth(auth: AuthId, args: FindOutputBasketsArgs): Promise<TableOutputBasket[]>;
|
|
81
|
-
findOutputsAuth(auth: AuthId, args: FindOutputsArgs): Promise<TableOutput[]>;
|
|
82
|
-
findCertificateFields(args: FindCertificateFieldsArgs): Promise<TableCertificateField[]>;
|
|
83
|
-
findCertificates(args: FindCertificatesArgs): Promise<TableCertificateX[]>;
|
|
84
|
-
findCommissions(args: FindCommissionsArgs): Promise<TableCommission[]>;
|
|
85
|
-
findOutputBaskets(args: FindOutputBasketsArgs): Promise<TableOutputBasket[]>;
|
|
86
|
-
findOutputs(args: FindOutputsArgs): Promise<TableOutput[]>;
|
|
87
|
-
findOutputTagMaps(args: FindOutputTagMapsArgs): Promise<TableOutputTagMap[]>;
|
|
88
|
-
findOutputTags(args: FindOutputTagsArgs): Promise<TableOutputTag[]>;
|
|
89
|
-
findProvenTxReqs(args: FindProvenTxReqsArgs): Promise<TableProvenTxReq[]>;
|
|
90
|
-
findProvenTxs(args: FindProvenTxsArgs): Promise<TableProvenTx[]>;
|
|
91
|
-
findSyncStates(args: FindSyncStatesArgs): Promise<TableSyncState[]>;
|
|
92
|
-
findTransactions(args: FindTransactionsArgs): Promise<TableTransaction[]>;
|
|
93
|
-
findTxLabelMaps(args: FindTxLabelMapsArgs): Promise<TableTxLabelMap[]>;
|
|
94
|
-
findTxLabels(args: FindTxLabelsArgs): Promise<TableTxLabel[]>;
|
|
95
|
-
findUsers(args: FindUsersArgs): Promise<TableUser[]>;
|
|
96
|
-
findMonitorEvents(args: FindMonitorEventsArgs): Promise<TableMonitorEvent[]>;
|
|
97
|
-
getCount<T extends object>(q: Knex.QueryBuilder<T, T[]>): Promise<number>;
|
|
98
|
-
countCertificateFields(args: FindCertificateFieldsArgs): Promise<number>;
|
|
99
|
-
countCertificates(args: FindCertificatesArgs): Promise<number>;
|
|
100
|
-
countCommissions(args: FindCommissionsArgs): Promise<number>;
|
|
101
|
-
countOutputBaskets(args: FindOutputBasketsArgs): Promise<number>;
|
|
102
|
-
countOutputs(args: FindOutputsArgs): Promise<number>;
|
|
103
|
-
countOutputTagMaps(args: FindOutputTagMapsArgs): Promise<number>;
|
|
104
|
-
countOutputTags(args: FindOutputTagsArgs): Promise<number>;
|
|
105
|
-
countProvenTxReqs(args: FindProvenTxReqsArgs): Promise<number>;
|
|
106
|
-
countProvenTxs(args: FindProvenTxsArgs): Promise<number>;
|
|
107
|
-
countSyncStates(args: FindSyncStatesArgs): Promise<number>;
|
|
108
|
-
countTransactions(args: FindTransactionsArgs): Promise<number>;
|
|
109
|
-
countTxLabelMaps(args: FindTxLabelMapsArgs): Promise<number>;
|
|
110
|
-
countTxLabels(args: FindTxLabelsArgs): Promise<number>;
|
|
111
|
-
countUsers(args: FindUsersArgs): Promise<number>;
|
|
112
|
-
countMonitorEvents(args: FindMonitorEventsArgs): Promise<number>;
|
|
113
|
-
destroy(): Promise<void>;
|
|
114
|
-
migrate(storageName: string, storageIdentityKey: string): Promise<string>;
|
|
115
|
-
dropAllData(): Promise<void>;
|
|
116
|
-
transaction<T>(scope: (trx: TrxToken) => Promise<T>, trx?: TrxToken): Promise<T>;
|
|
117
|
-
/**
|
|
118
|
-
* Convert the standard optional `TrxToken` parameter into either a direct knex database instance,
|
|
119
|
-
* or a Knex.Transaction as appropriate.
|
|
120
|
-
*/
|
|
121
|
-
toDb(trx?: TrxToken): Knex<any, any[]>;
|
|
122
|
-
validateRawTransaction(t: TableTransaction, trx?: TrxToken): Promise<void>;
|
|
123
|
-
_verifiedReadyForDatabaseAccess: boolean;
|
|
124
|
-
/**
|
|
125
|
-
* Make sure database is ready for access:
|
|
126
|
-
*
|
|
127
|
-
* - dateScheme is known
|
|
128
|
-
* - foreign key constraints are enabled
|
|
129
|
-
*
|
|
130
|
-
* @param trx
|
|
131
|
-
*/
|
|
132
|
-
verifyReadyForDatabaseAccess(trx?: TrxToken): Promise<DBType>;
|
|
133
|
-
/**
|
|
134
|
-
* Helper to force uniform behavior across database engines.
|
|
135
|
-
* Use to process the update template for entities being updated.
|
|
136
|
-
*/
|
|
137
|
-
validatePartialForUpdate<T extends EntityTimeStamp>(update: Partial<T>, dateFields?: string[], booleanFields?: string[]): Partial<T>;
|
|
138
|
-
/**
|
|
139
|
-
* Helper to force uniform behavior across database engines.
|
|
140
|
-
* Use to process new entities being inserted into the database.
|
|
141
|
-
*/
|
|
142
|
-
validateEntityForInsert<T extends EntityTimeStamp>(entity: T, trx?: TrxToken, dateFields?: string[], booleanFields?: string[]): Promise<any>;
|
|
143
|
-
getLabelsForTransactionId(transactionId?: number, trx?: TrxToken): Promise<TableTxLabel[]>;
|
|
144
|
-
getTagsForOutputId(outputId: number, trx?: TrxToken): Promise<TableOutputTag[]>;
|
|
145
|
-
purgeData(params: PurgeParams, trx?: TrxToken): Promise<PurgeResults>;
|
|
146
|
-
reviewStatus(args: {
|
|
147
|
-
agedLimit: Date;
|
|
148
|
-
trx?: TrxToken;
|
|
149
|
-
}): Promise<{
|
|
150
|
-
log: string;
|
|
151
|
-
}>;
|
|
152
|
-
/**
|
|
153
|
-
* Counts the outputs for userId in basketId that are spendable: true
|
|
154
|
-
* AND whose transaction status is one of:
|
|
155
|
-
* - completed
|
|
156
|
-
* - unproven
|
|
157
|
-
* - sending (if excludeSending is false)
|
|
158
|
-
*/
|
|
159
|
-
countChangeInputs(userId: number, basketId: number, excludeSending: boolean): Promise<number>;
|
|
160
|
-
/**
|
|
161
|
-
* Finds closest matching available change output to use as input for new transaction.
|
|
162
|
-
*
|
|
163
|
-
* Transactionally allocate the output such that
|
|
164
|
-
*/
|
|
165
|
-
allocateChangeInput(userId: number, basketId: number, targetSatoshis: number, exactSatoshis: number | undefined, excludeSending: boolean, transactionId: number): Promise<TableOutput | undefined>;
|
|
166
|
-
/**
|
|
167
|
-
* Helper to force uniform behavior across database engines.
|
|
168
|
-
* Use to process all individual records with time stamps retreived from database.
|
|
169
|
-
*/
|
|
170
|
-
validateEntity<T extends EntityTimeStamp>(entity: T, dateFields?: string[], booleanFields?: string[]): T;
|
|
171
|
-
/**
|
|
172
|
-
* Helper to force uniform behavior across database engines.
|
|
173
|
-
* Use to process all arrays of records with time stamps retreived from database.
|
|
174
|
-
* @returns input `entities` array with contained values validated.
|
|
175
|
-
*/
|
|
176
|
-
validateEntities<T extends EntityTimeStamp>(entities: T[], dateFields?: string[], booleanFields?: string[]): T[];
|
|
177
|
-
adminStats(adminIdentityKey: string): Promise<AdminStatsResult>;
|
|
178
|
-
}
|
|
179
|
-
//# sourceMappingURL=StorageKnex.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StorageKnex.d.ts","sourceRoot":"","sources":["../../../../src/storage/StorageKnex.ts"],"names":[],"mappings":"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"}
|