@bsv/wallet-toolbox 2.4.0 → 2.4.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/CHANGELOG.md +42 -0
- package/README.md +45 -0
- package/docs/client.md +493 -168
- package/docs/managed-change-policy.md +79 -0
- package/docs/services.md +61 -26
- package/docs/storage.md +417 -69
- package/docs/wallet.md +465 -155
- package/out/src/Wallet.d.ts +5 -1
- package/out/src/Wallet.d.ts.map +1 -1
- package/out/src/Wallet.js +14 -8
- package/out/src/Wallet.js.map +1 -1
- package/out/src/WalletPermissionsManager.d.ts +18 -0
- package/out/src/WalletPermissionsManager.d.ts.map +1 -1
- package/out/src/WalletPermissionsManager.js +56 -9
- package/out/src/WalletPermissionsManager.js.map +1 -1
- package/out/src/monitor/tasks/TaskArcSSE.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskArcSSE.js +46 -18
- package/out/src/monitor/tasks/TaskArcSSE.js.map +1 -1
- package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskCheckForProofs.js +10 -10
- package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewStatus.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskReviewStatus.js +7 -2
- package/out/src/monitor/tasks/TaskReviewStatus.js.map +1 -1
- package/out/src/monitor/tasks/TaskUnFail.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskUnFail.js +2 -57
- package/out/src/monitor/tasks/TaskUnFail.js.map +1 -1
- package/out/src/sdk/WalletServices.interfaces.d.ts +1 -0
- package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
- package/out/src/sdk/WalletStorage.interfaces.d.ts +10 -4
- package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
- package/out/src/sdk/types.d.ts +10 -1
- package/out/src/sdk/types.d.ts.map +1 -1
- package/out/src/sdk/types.js +16 -2
- package/out/src/sdk/types.js.map +1 -1
- package/out/src/services/Services.d.ts.map +1 -1
- package/out/src/services/Services.js +39 -19
- package/out/src/services/Services.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +8 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js +4 -0
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +2 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +2 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +1 -0
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
- package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
- package/out/src/services/createDefaultWalletServicesOptions.js +17 -3
- package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
- package/out/src/services/networkConfig.d.ts +29 -0
- package/out/src/services/networkConfig.d.ts.map +1 -0
- package/out/src/services/networkConfig.js +54 -0
- package/out/src/services/networkConfig.js.map +1 -0
- package/out/src/services/providers/Arcade.d.ts +1 -0
- package/out/src/services/providers/Arcade.d.ts.map +1 -1
- package/out/src/services/providers/Arcade.js +45 -14
- package/out/src/services/providers/Arcade.js.map +1 -1
- package/out/src/services/providers/SdkWhatsOnChain.d.ts +1 -1
- package/out/src/services/providers/SdkWhatsOnChain.d.ts.map +1 -1
- package/out/src/services/providers/SdkWhatsOnChain.js +12 -4
- package/out/src/services/providers/SdkWhatsOnChain.js.map +1 -1
- package/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -1
- package/out/src/signer/methods/buildSignableTransaction.js +3 -1
- package/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
- package/out/src/signer/methods/completeSignedTransaction.d.ts.map +1 -1
- package/out/src/signer/methods/completeSignedTransaction.js +5 -3
- package/out/src/signer/methods/completeSignedTransaction.js.map +1 -1
- package/out/src/signer/methods/createAction.d.ts.map +1 -1
- package/out/src/signer/methods/createAction.js +12 -5
- package/out/src/signer/methods/createAction.js.map +1 -1
- package/out/src/signer/methods/internalizeAction.d.ts +6 -4
- package/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
- package/out/src/signer/methods/internalizeAction.js +12 -7
- package/out/src/signer/methods/internalizeAction.js.map +1 -1
- package/out/src/signer/methods/resultBeef.d.ts +4 -0
- package/out/src/signer/methods/resultBeef.d.ts.map +1 -0
- package/out/src/signer/methods/resultBeef.js +12 -0
- package/out/src/signer/methods/resultBeef.js.map +1 -0
- package/out/src/signer/methods/signAction.d.ts.map +1 -1
- package/out/src/signer/methods/signAction.js +6 -1
- package/out/src/signer/methods/signAction.js.map +1 -1
- package/out/src/storage/StorageIdb.d.ts +2 -1
- package/out/src/storage/StorageIdb.d.ts.map +1 -1
- package/out/src/storage/StorageIdb.js +12 -5
- package/out/src/storage/StorageIdb.js.map +1 -1
- package/out/src/storage/StorageKnex.d.ts +2 -1
- package/out/src/storage/StorageKnex.d.ts.map +1 -1
- package/out/src/storage/StorageKnex.js +27 -2
- package/out/src/storage/StorageKnex.js.map +1 -1
- package/out/src/storage/StorageProvider.d.ts +17 -0
- package/out/src/storage/StorageProvider.d.ts.map +1 -1
- package/out/src/storage/StorageProvider.js +206 -13
- package/out/src/storage/StorageProvider.js.map +1 -1
- package/out/src/storage/index.all.d.ts +2 -0
- package/out/src/storage/index.all.d.ts.map +1 -1
- package/out/src/storage/index.all.js +2 -0
- package/out/src/storage/index.all.js.map +1 -1
- package/out/src/storage/index.client.d.ts +1 -0
- package/out/src/storage/index.client.d.ts.map +1 -1
- package/out/src/storage/index.client.js +1 -0
- package/out/src/storage/index.client.js.map +1 -1
- package/out/src/storage/methods/ListOutputsSpecOp.d.ts +2 -0
- package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
- package/out/src/storage/methods/ListOutputsSpecOp.js +13 -1
- package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
- package/out/src/storage/methods/createAction.d.ts.map +1 -1
- package/out/src/storage/methods/createAction.js +23 -10
- package/out/src/storage/methods/createAction.js.map +1 -1
- package/out/src/storage/methods/getBeefForTransaction.d.ts.map +1 -1
- package/out/src/storage/methods/getBeefForTransaction.js +47 -24
- package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
- package/out/src/storage/methods/internalizeAction.d.ts +6 -4
- package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
- package/out/src/storage/methods/internalizeAction.js +26 -15
- package/out/src/storage/methods/internalizeAction.js.map +1 -1
- package/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
- package/out/src/storage/methods/listOutputsIdb.js +21 -3
- package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
- package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
- package/out/src/storage/methods/listOutputsKnex.js +14 -0
- package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
- package/out/src/storage/methods/managedChange.d.ts +26 -0
- package/out/src/storage/methods/managedChange.d.ts.map +1 -0
- package/out/src/storage/methods/managedChange.js +43 -0
- package/out/src/storage/methods/managedChange.js.map +1 -0
- package/out/src/storage/methods/processAction.d.ts.map +1 -1
- package/out/src/storage/methods/processAction.js +5 -4
- package/out/src/storage/methods/processAction.js.map +1 -1
- package/out/src/storage/remoting/BinaryJson.d.ts +10 -0
- package/out/src/storage/remoting/BinaryJson.d.ts.map +1 -0
- package/out/src/storage/remoting/BinaryJson.js +172 -0
- package/out/src/storage/remoting/BinaryJson.js.map +1 -0
- package/out/src/storage/remoting/KnexSessionManager.d.ts +37 -0
- package/out/src/storage/remoting/KnexSessionManager.d.ts.map +1 -0
- package/out/src/storage/remoting/KnexSessionManager.js +198 -0
- package/out/src/storage/remoting/KnexSessionManager.js.map +1 -0
- package/out/src/storage/remoting/StorageClient.d.ts +2 -2
- package/out/src/storage/remoting/StorageClient.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageClient.js +14 -5
- package/out/src/storage/remoting/StorageClient.js.map +1 -1
- package/out/src/storage/remoting/StorageClientBase.d.ts +11 -1
- package/out/src/storage/remoting/StorageClientBase.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageClientBase.js +4 -1
- package/out/src/storage/remoting/StorageClientBase.js.map +1 -1
- package/out/src/storage/remoting/StorageMobile.d.ts +2 -2
- package/out/src/storage/remoting/StorageMobile.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageMobile.js +14 -5
- package/out/src/storage/remoting/StorageMobile.js.map +1 -1
- package/out/src/storage/remoting/StorageServer.d.ts +10 -0
- package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageServer.js +48 -21
- package/out/src/storage/remoting/StorageServer.js.map +1 -1
- package/out/src/storage/schema/KnexMigrations.d.ts +2 -0
- package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
- package/out/src/storage/schema/KnexMigrations.js +34 -1
- package/out/src/storage/schema/KnexMigrations.js.map +1 -1
- package/out/src/storage/schema/tables/TableAuthSession.d.ts +20 -0
- package/out/src/storage/schema/tables/TableAuthSession.d.ts.map +1 -0
- package/out/src/storage/schema/tables/TableAuthSession.js +15 -0
- package/out/src/storage/schema/tables/TableAuthSession.js.map +1 -0
- package/out/src/storage/schema/tables/index.d.ts +1 -0
- package/out/src/storage/schema/tables/index.d.ts.map +1 -1
- package/out/src/storage/schema/tables/index.js +1 -0
- package/out/src/storage/schema/tables/index.js.map +1 -1
- package/out/src/storage/storageProviderHelpers.d.ts +5 -4
- package/out/src/storage/storageProviderHelpers.d.ts.map +1 -1
- package/out/src/storage/storageProviderHelpers.js +7 -6
- package/out/src/storage/storageProviderHelpers.js.map +1 -1
- package/out/src/utility/utilityHelpers.d.ts.map +1 -1
- package/out/src/utility/utilityHelpers.js +2 -0
- package/out/src/utility/utilityHelpers.js.map +1 -1
- package/package.json +6 -5
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# Managed change, sweeping, and recovery
|
|
2
|
+
|
|
3
|
+
The default basket is the wallet's funding pool. An output being physically
|
|
4
|
+
stored in that basket is not, by itself, proof that the wallet can spend it.
|
|
5
|
+
Automatic funding and wallet balance therefore use the managed-change policy
|
|
6
|
+
below instead of trusting basket membership or the locking script alone.
|
|
7
|
+
|
|
8
|
+
## Output classes
|
|
9
|
+
|
|
10
|
+
A **managed change output** has all of the following metadata:
|
|
11
|
+
|
|
12
|
+
- `type: 'P2PKH'`
|
|
13
|
+
- `change: true`
|
|
14
|
+
- `providedBy: 'storage'`
|
|
15
|
+
- `purpose: 'change'`
|
|
16
|
+
- non-empty `derivationPrefix` and `derivationSuffix`
|
|
17
|
+
|
|
18
|
+
Here, `type: 'P2PKH'` is an operational signer type, not merely a description
|
|
19
|
+
of the script. It selects the BRC-29 unlocking path. A raw P2PKH output without
|
|
20
|
+
matching derivation metadata is not managed change and must not be selected by
|
|
21
|
+
the wallet automatically.
|
|
22
|
+
|
|
23
|
+
A **custom output** belongs to an application-defined protocol. It is normally
|
|
24
|
+
stored outside the default basket with `type: 'custom'`, `change: false`, and
|
|
25
|
+
`providedBy: 'you'`. Custom outputs are discoverable and may be explicitly
|
|
26
|
+
spent by application logic, but are not wallet balance and are never automatic
|
|
27
|
+
fee inputs.
|
|
28
|
+
|
|
29
|
+
## Enforcement
|
|
30
|
+
|
|
31
|
+
The same managed-change predicate is applied to:
|
|
32
|
+
|
|
33
|
+
- change-input counting and allocation in Knex/SQLite/MySQL and IndexedDB;
|
|
34
|
+
- the default wallet balance and `balanceAndUtxos()` results; and
|
|
35
|
+
- validation of `noSendChange` inputs.
|
|
36
|
+
|
|
37
|
+
Raw administrative `listOutputs({ basket: 'default' })` remains unfiltered on
|
|
38
|
+
purpose. This makes incompatible legacy rows visible for diagnosis and recovery
|
|
39
|
+
without allowing them into balance or automatic funding.
|
|
40
|
+
|
|
41
|
+
## `internalizeAction` rules
|
|
42
|
+
|
|
43
|
+
| Request | New output | Existing custom output | Existing managed change |
|
|
44
|
+
| --- | --- | --- | --- |
|
|
45
|
+
| `wallet payment` | Store as managed change in `default` | Promote to managed change after BRC-29 script verification | Idempotent when already in `default` |
|
|
46
|
+
| `basket insertion` to a non-default basket | Store as custom | Move/update as custom; no wallet-balance adjustment | Reject; managed change cannot be reclassified |
|
|
47
|
+
| `basket insertion` to `default` | Reject | Reject | Reject |
|
|
48
|
+
|
|
49
|
+
The wallet signer verifies that `paymentRemittance` derives the transaction
|
|
50
|
+
output's locking script before storage can promote it. This is the supported
|
|
51
|
+
way to repair a genuine BRC-29 payment that was previously classified as
|
|
52
|
+
custom. Merely recognizing a P2PKH locking script is not enough.
|
|
53
|
+
|
|
54
|
+
## Sweeping and recovery
|
|
55
|
+
|
|
56
|
+
"Sweep" means moving an incompatible custom row out of the default basket with
|
|
57
|
+
a `basket insertion` into a named, non-default recovery basket. This is a
|
|
58
|
+
metadata repair: the output remains custom and wallet balance does not change.
|
|
59
|
+
|
|
60
|
+
There are two valid recovery choices for a legacy custom row in `default`:
|
|
61
|
+
|
|
62
|
+
1. If it is a genuine payment to this wallet under BRC-29, internalize it as a
|
|
63
|
+
`wallet payment` with the correct derivation prefix, derivation suffix, and
|
|
64
|
+
sender identity key. Successful verification promotes it to managed change
|
|
65
|
+
and adds its value to wallet balance.
|
|
66
|
+
2. Otherwise, sweep it to a non-default basket. The application can then apply
|
|
67
|
+
its own unlocking and lifecycle rules explicitly.
|
|
68
|
+
|
|
69
|
+
Do not repair rows by directly changing `type`, `change`, or derivation fields.
|
|
70
|
+
That bypasses the BRC-29 ownership check and can make balance appear spendable
|
|
71
|
+
when the wallet does not possess the required key path.
|
|
72
|
+
|
|
73
|
+
## BRC-29 remittance module
|
|
74
|
+
|
|
75
|
+
`Brc29RemittanceModule` always accepts settlements through the `wallet payment`
|
|
76
|
+
protocol. The deprecated `internalizeProtocol: 'basket insertion'` setting is
|
|
77
|
+
rejected because it supplied no insertion remittance and would classify a
|
|
78
|
+
recipient payment as a custom application output instead of spendable wallet
|
|
79
|
+
balance.
|
package/docs/services.md
CHANGED
|
@@ -4732,7 +4732,7 @@ export default class SdkWhatsOnChain implements ChainTracker {
|
|
|
4732
4732
|
readonly apiKey: string;
|
|
4733
4733
|
protected readonly URL: string;
|
|
4734
4734
|
protected readonly httpClient: HttpClient;
|
|
4735
|
-
constructor(network: "main" | "test" | "stn" | "ttn" = "main", config: WhatsOnChainConfig = {})
|
|
4735
|
+
constructor(network: "main" | "test" | "stn" | "ttn" | "tstn" = "main", config: WhatsOnChainConfig = {})
|
|
4736
4736
|
async isValidRootForHeight(root: string, height: number): Promise<boolean>
|
|
4737
4737
|
async currentHeight(): Promise<number>
|
|
4738
4738
|
protected getHttpHeaders(): Record<string, string>
|
|
@@ -4744,7 +4744,7 @@ export default class SdkWhatsOnChain implements ChainTracker {
|
|
|
4744
4744
|
Constructs an instance of the WhatsOnChain ChainTracker.
|
|
4745
4745
|
|
|
4746
4746
|
```ts
|
|
4747
|
-
constructor(network: "main" | "test" | "stn" | "ttn" = "main", config: WhatsOnChainConfig = {})
|
|
4747
|
+
constructor(network: "main" | "test" | "stn" | "ttn" | "tstn" = "main", config: WhatsOnChainConfig = {})
|
|
4748
4748
|
```
|
|
4749
4749
|
|
|
4750
4750
|
Argument Details
|
|
@@ -5135,30 +5135,31 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
5135
5135
|
|
|
5136
5136
|
| | | |
|
|
5137
5137
|
| --- | --- | --- |
|
|
5138
|
-
| [WocHeadersBulkListener](#function-wocheadersbulklistener) | [
|
|
5139
|
-
| [WocHeadersBulkListener_test](#function-wocheadersbulklistener_test) | [
|
|
5140
|
-
| [WocHeadersLiveListener](#function-wocheaderslivelistener) | [
|
|
5141
|
-
| [WocHeadersLiveListener_test](#function-wocheaderslivelistener_test) | [
|
|
5142
|
-
| [addWork](#function-addwork) | [
|
|
5143
|
-
| [arcDefaultUrl](#function-arcdefaulturl) | [
|
|
5144
|
-
| [arcGorillaPoolUrl](#function-arcgorillapoolurl) | [
|
|
5145
|
-
| [arcadeDefaultUrl](#function-arcadedefaulturl) | [
|
|
5146
|
-
| [blockHash](#function-blockhash) | [
|
|
5147
|
-
| [buildChaintracksOptionsWithIngestors](#function-buildchaintracksoptionswithingestors) | [
|
|
5148
|
-
| [classifyMerklePathResponse](#function-classifymerklepathresponse) | [
|
|
5149
|
-
| [convertBitsToTarget](#function-convertbitstotarget) | [
|
|
5150
|
-
| [convertBitsToWork](#function-convertbitstowork) | [
|
|
5151
|
-
| [convertBufferToUint32](#function-convertbuffertouint32) | [
|
|
5152
|
-
| [convertUint32ToBuffer](#function-convertuint32tobuffer) | [
|
|
5153
|
-
| [convertWocToBlockHeaderHex](#function-convertwoctoblockheaderhex) | [
|
|
5154
|
-
| [createDefaultIdbChaintracksOptions](#function-createdefaultidbchaintracksoptions) | [
|
|
5155
|
-
| [createDefaultKnexChaintracksOptions](#function-createdefaultknexchaintracksoptions) | [
|
|
5156
|
-
| [createDefaultNoDbChaintracksOptions](#function-createdefaultnodbchaintracksoptions) | [
|
|
5157
|
-
| [createDefaultWalletServicesOptions](#function-createdefaultwalletservicesoptions) | [
|
|
5158
|
-
| [createIdbChaintracks](#function-createidbchaintracks) | [
|
|
5159
|
-
| [createKnexChaintracks](#function-createknexchaintracks) | [
|
|
5160
|
-
| [createNoDbChaintracks](#function-createnodbchaintracks) | [
|
|
5161
|
-
| [deserializeBaseBlockHeader](#function-deserializebaseblockheader) | [
|
|
5138
|
+
| [WocHeadersBulkListener](#function-wocheadersbulklistener) | [deserializeBlockHeader](#function-deserializeblockheader) | [selectBulkHeaderFiles](#function-selectbulkheaderfiles) |
|
|
5139
|
+
| [WocHeadersBulkListener_test](#function-wocheadersbulklistener_test) | [deserializeBlockHeaders](#function-deserializeblockheaders) | [serializeBaseBlockHeader](#function-serializebaseblockheader) |
|
|
5140
|
+
| [WocHeadersLiveListener](#function-wocheaderslivelistener) | [genesisBuffer](#function-genesisbuffer) | [serializeBaseBlockHeaders](#function-serializebaseblockheaders) |
|
|
5141
|
+
| [WocHeadersLiveListener_test](#function-wocheaderslivelistener_test) | [genesisHeader](#function-genesisheader) | [sha256HashOfBinaryFile](#function-sha256hashofbinaryfile) |
|
|
5142
|
+
| [addWork](#function-addwork) | [getBeefForTxid](#function-getbeeffortxid) | [subWork](#function-subwork) |
|
|
5143
|
+
| [arcDefaultUrl](#function-arcdefaulturl) | [getExchangeRatesIo](#function-getexchangeratesio) | [swapByteOrder](#function-swapbyteorder) |
|
|
5144
|
+
| [arcGorillaPoolUrl](#function-arcgorillapoolurl) | [getWhatsOnChainBlockHeaderByHash](#function-getwhatsonchainblockheaderbyhash) | [toBinaryBaseBlockHeader](#function-tobinarybaseblockheader) |
|
|
5145
|
+
| [arcadeDefaultUrl](#function-arcadedefaulturl) | [handlePostRawTxErrorResponse](#function-handlepostrawtxerrorresponse) | [tstnArcadeUrl](#function-tstnarcadeurl) |
|
|
5146
|
+
| [blockHash](#function-blockhash) | [handleScriptHashHistoryCatch](#function-handlescripthashhistorycatch) | [tstnChaintracksUrl](#function-tstnchaintracksurl) |
|
|
5147
|
+
| [buildChaintracksOptionsWithIngestors](#function-buildchaintracksoptionswithingestors) | [handleScriptHashHistoryResponse](#function-handlescripthashhistoryresponse) | [updateChaintracksFiatExchangeRates](#function-updatechaintracksfiatexchangerates) |
|
|
5148
|
+
| [classifyMerklePathResponse](#function-classifymerklepathresponse) | [handleUtxoConnReset](#function-handleutxoconnreset) | [updateExchangeratesapi](#function-updateexchangeratesapi) |
|
|
5149
|
+
| [convertBitsToTarget](#function-convertbitstotarget) | [isArcAcceptedTxStatus](#function-isarcacceptedtxstatus) | [validBulkHeaderFilesByFileHash](#function-validbulkheaderfilesbyfilehash) |
|
|
5150
|
+
| [convertBitsToWork](#function-convertbitstowork) | [isArcDoubleSpendTxStatus](#function-isarcdoublespendtxstatus) | [validateAgainstDirtyHashes](#function-validateagainstdirtyhashes) |
|
|
5151
|
+
| [convertBufferToUint32](#function-convertbuffertouint32) | [isArcInvalidTxStatus](#function-isarcinvalidtxstatus) | [validateBufferOfHeaders](#function-validatebufferofheaders) |
|
|
5152
|
+
| [convertUint32ToBuffer](#function-convertuint32tobuffer) | [isArcServiceErrorStatus](#function-isarcserviceerrorstatus) | [validateBulkFileData](#function-validatebulkfiledata) |
|
|
5153
|
+
| [convertWocToBlockHeaderHex](#function-convertwoctoblockheaderhex) | [isBaseBlockHeader](#function-isbaseblockheader) | [validateGenesisHeader](#function-validategenesisheader) |
|
|
5154
|
+
| [createDefaultIdbChaintracksOptions](#function-createdefaultidbchaintracksoptions) | [isBlockHeader](#function-isblockheader) | [validateHeaderDifficulty](#function-validateheaderdifficulty) |
|
|
5155
|
+
| [createDefaultKnexChaintracksOptions](#function-createdefaultknexchaintracksoptions) | [isKnownValidBulkHeaderFile](#function-isknownvalidbulkheaderfile) | [validateHeaderFormat](#function-validateheaderformat) |
|
|
5156
|
+
| [createDefaultNoDbChaintracksOptions](#function-createdefaultnodbchaintracksoptions) | [isLive](#function-islive) | [validateScriptHash](#function-validatescripthash) |
|
|
5157
|
+
| [createDefaultWalletServicesOptions](#function-createdefaultwalletservicesoptions) | [isLiveBlockHeader](#function-isliveblockheader) | [wocGetHeadersHeaderToBlockHeader](#function-wocgetheadersheadertoblockheader) |
|
|
5158
|
+
| [createIdbChaintracks](#function-createidbchaintracks) | [isMoreWork](#function-ismorework) | [workBNtoBuffer](#function-workbntobuffer) |
|
|
5159
|
+
| [createKnexChaintracks](#function-createknexchaintracks) | [makeMerklePathNote](#function-makemerklepathnote) | [writeUInt32BE](#function-writeuint32be) |
|
|
5160
|
+
| [createNoDbChaintracks](#function-createnodbchaintracks) | [populateUtxoDetails](#function-populateutxodetails) | [writeUInt32LE](#function-writeuint32le) |
|
|
5161
|
+
| [deserializeBaseBlockHeader](#function-deserializebaseblockheader) | [readUInt32BE](#function-readuint32be) | |
|
|
5162
|
+
| [deserializeBaseBlockHeaders](#function-deserializebaseblockheaders) | [readUInt32LE](#function-readuint32le) | |
|
|
5162
5163
|
|
|
5163
5164
|
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
5164
5165
|
|
|
@@ -5663,6 +5664,7 @@ export function genesisHeader(chain: Chain): BlockHeader {
|
|
|
5663
5664
|
};
|
|
5664
5665
|
case "test":
|
|
5665
5666
|
case "ttn":
|
|
5667
|
+
case "tstn":
|
|
5666
5668
|
return {
|
|
5667
5669
|
version: 1,
|
|
5668
5670
|
previousHash: "0000000000000000000000000000000000000000000000000000000000000000",
|
|
@@ -6131,6 +6133,29 @@ Returns
|
|
|
6131
6133
|
|
|
6132
6134
|
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
6133
6135
|
|
|
6136
|
+
---
|
|
6137
|
+
##### Function: tstnArcadeUrl
|
|
6138
|
+
|
|
6139
|
+
Arcade broadcaster / ARC endpoint for tstn, or `undefined` when `TSTN_ARCADE_URL` is unset.
|
|
6140
|
+
|
|
6141
|
+
```ts
|
|
6142
|
+
export function tstnArcadeUrl(): string | undefined
|
|
6143
|
+
```
|
|
6144
|
+
|
|
6145
|
+
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
6146
|
+
|
|
6147
|
+
---
|
|
6148
|
+
##### Function: tstnChaintracksUrl
|
|
6149
|
+
|
|
6150
|
+
ChainTracks service URL for tstn. Falls back to `${TSTN_ARCADE_URL}/chaintracks/v1` when
|
|
6151
|
+
`TSTN_CHAINTRACKS_URL` is unset (mirrors the ttn layout). Throws when neither is configured.
|
|
6152
|
+
|
|
6153
|
+
```ts
|
|
6154
|
+
export function tstnChaintracksUrl(): string
|
|
6155
|
+
```
|
|
6156
|
+
|
|
6157
|
+
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
6158
|
+
|
|
6134
6159
|
---
|
|
6135
6160
|
##### Function: updateChaintracksFiatExchangeRates
|
|
6136
6161
|
|
|
@@ -6467,6 +6492,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
6467
6492
|
|
|
6468
6493
|
| |
|
|
6469
6494
|
| --- |
|
|
6495
|
+
| [ARCADE_POST_BEEF_CONCURRENCY](#variable-arcade_post_beef_concurrency) |
|
|
6470
6496
|
| [ChaintracksFs](#variable-chaintracksfs) |
|
|
6471
6497
|
| [dirtyHashes](#variable-dirtyhashes) |
|
|
6472
6498
|
| [validBulkHeaderFiles](#variable-validbulkheaderfiles) |
|
|
@@ -6475,6 +6501,15 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
6475
6501
|
|
|
6476
6502
|
---
|
|
6477
6503
|
|
|
6504
|
+
##### Variable: ARCADE_POST_BEEF_CONCURRENCY
|
|
6505
|
+
|
|
6506
|
+
```ts
|
|
6507
|
+
ARCADE_POST_BEEF_CONCURRENCY = 4
|
|
6508
|
+
```
|
|
6509
|
+
|
|
6510
|
+
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
6511
|
+
|
|
6512
|
+
---
|
|
6478
6513
|
##### Variable: ChaintracksFs
|
|
6479
6514
|
|
|
6480
6515
|
```ts
|