@bsv/wallet-toolbox-mobile 2.3.2 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/out/src/WalletPermissionsManager.d.ts +19 -0
- package/out/src/WalletPermissionsManager.d.ts.map +1 -1
- package/out/src/WalletPermissionsManager.js +55 -0
- package/out/src/WalletPermissionsManager.js.map +1 -1
- package/out/src/monitor/Monitor.d.ts +3 -4
- package/out/src/monitor/Monitor.d.ts.map +1 -1
- package/out/src/monitor/Monitor.js +1 -1
- package/out/src/monitor/Monitor.js.map +1 -1
- package/out/src/monitor/tasks/TaskArcSSE.d.ts +5 -3
- package/out/src/monitor/tasks/TaskArcSSE.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskArcSSE.js +42 -55
- package/out/src/monitor/tasks/TaskArcSSE.js.map +1 -1
- package/out/src/sdk/WalletServices.interfaces.d.ts +23 -1
- package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
- package/out/src/services/Services.d.ts +3 -0
- package/out/src/services/Services.d.ts.map +1 -1
- package/out/src/services/Services.js +20 -1
- package/out/src/services/Services.js.map +1 -1
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +1 -0
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
- package/out/src/services/chaintracker/ChaintracksChainTracker.js +9 -6
- package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +2 -0
- package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.js +29 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts +52 -0
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js +228 -0
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts +24 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js +55 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts +13 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +45 -7
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts +2 -0
- package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.mobile.js +2 -0
- package/out/src/services/chaintracker/chaintracks/index.mobile.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts +8 -0
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js +53 -10
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +1 -1
- package/out/src/services/createDefaultWalletServicesOptions.d.ts +19 -1
- package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
- package/out/src/services/createDefaultWalletServicesOptions.js +49 -2
- package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
- package/out/src/services/providers/ARC.d.ts +4 -0
- package/out/src/services/providers/ARC.d.ts.map +1 -1
- package/out/src/services/providers/ARC.js +65 -4
- package/out/src/services/providers/ARC.js.map +1 -1
- package/out/src/services/providers/ArcSSEClient.d.ts +1 -0
- package/out/src/services/providers/ArcSSEClient.d.ts.map +1 -1
- package/out/src/services/providers/ArcSSEClient.js +12 -9
- package/out/src/services/providers/ArcSSEClient.js.map +1 -1
- package/out/src/services/providers/Arcade.d.ts +72 -0
- package/out/src/services/providers/Arcade.d.ts.map +1 -0
- package/out/src/services/providers/Arcade.js +299 -0
- package/out/src/services/providers/Arcade.js.map +1 -0
- package/out/src/signer/methods/buildSignableTransaction.d.ts +54 -0
- package/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -1
- package/out/src/signer/methods/buildSignableTransaction.js +118 -2
- package/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
- package/out/src/storage/methods/processAction.d.ts.map +1 -1
- package/out/src/storage/methods/processAction.js +38 -1
- package/out/src/storage/methods/processAction.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChaintracksFetch.js","sourceRoot":"","sources":["../../../../../../../src/services/chaintracker/chaintracks/util/ChaintracksFetch.ts"],"names":[],"mappings":";;;AAAA,kCAAwD;AAExD,uEAAyD;AAEzD
|
|
1
|
+
{"version":3,"file":"ChaintracksFetch.js","sourceRoot":"","sources":["../../../../../../../src/services/chaintracker/chaintracks/util/ChaintracksFetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,25 @@
|
|
|
1
1
|
import { Chain } from '../sdk/types';
|
|
2
2
|
import { WalletServicesOptions } from '../sdk/WalletServices.interfaces';
|
|
3
3
|
import { ChaintracksClientApi } from './chaintracker/chaintracks/Api/ChaintracksClientApi';
|
|
4
|
-
export declare function createDefaultWalletServicesOptions(chain: Chain, arcCallbackUrl?: string, arcCallbackToken?: string, taalArcApiKey?: string, gorillaPoolArcApiKey?: string, bitailsApiKey?: string, deploymentId?: string, chaintracks?: ChaintracksClientApi
|
|
4
|
+
export declare function createDefaultWalletServicesOptions(chain: Chain, arcCallbackUrl?: string, arcCallbackToken?: string, taalArcApiKey?: string, gorillaPoolArcApiKey?: string, bitailsApiKey?: string, deploymentId?: string, chaintracks?: ChaintracksClientApi,
|
|
5
|
+
/**
|
|
6
|
+
* Optional Arcade endpoint. When provided (or when a default exists for the chain via
|
|
7
|
+
* `arcadeDefaultUrl`), Arcade is registered as the primary broadcaster ahead of ARC.
|
|
8
|
+
* Pass an empty string to explicitly disable the per-chain default.
|
|
9
|
+
*/
|
|
10
|
+
arcadeUrl?: string,
|
|
11
|
+
/** Server-level API key (Bearer) for the Arcade endpoint, if it requires auth. */
|
|
12
|
+
arcadeApiKey?: string,
|
|
13
|
+
/**
|
|
14
|
+
* Stable SSE callback token. Must match the Monitor's `callbackToken` so Arcade routes
|
|
15
|
+
* each broadcast transaction's status events to this wallet's `/events` subscription.
|
|
16
|
+
*/
|
|
17
|
+
arcadeCallbackToken?: string): WalletServicesOptions;
|
|
18
|
+
/**
|
|
19
|
+
* Default Arcade (bsv-blockchain/arcade) endpoint per chain.
|
|
20
|
+
* Returns undefined when no public default is known for the chain (e.g. testnet not yet deployed).
|
|
21
|
+
*/
|
|
22
|
+
export declare function arcadeDefaultUrl(chain: Chain): string | undefined;
|
|
5
23
|
export declare function arcDefaultUrl(chain: Chain): string;
|
|
6
24
|
export declare function arcGorillaPoolUrl(chain: Chain): string | undefined;
|
|
7
25
|
//# sourceMappingURL=createDefaultWalletServicesOptions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createDefaultWalletServicesOptions.d.ts","sourceRoot":"","sources":["../../../../src/services/createDefaultWalletServicesOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAA;AAG1F,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,KAAK,EACZ,cAAc,CAAC,EAAE,MAAM,EACvB,gBAAgB,CAAC,EAAE,MAAM,EACzB,aAAa,CAAC,EAAE,MAAM,EACtB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,aAAa,CAAC,EAAE,MAAM,EACtB,YAAY,CAAC,EAAE,MAAM,EACrB,WAAW,CAAC,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"createDefaultWalletServicesOptions.d.ts","sourceRoot":"","sources":["../../../../src/services/createDefaultWalletServicesOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAA;AAG1F,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,KAAK,EACZ,cAAc,CAAC,EAAE,MAAM,EACvB,gBAAgB,CAAC,EAAE,MAAM,EACzB,aAAa,CAAC,EAAE,MAAM,EACtB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,aAAa,CAAC,EAAE,MAAM,EACtB,YAAY,CAAC,EAAE,MAAM,EACrB,WAAW,CAAC,EAAE,oBAAoB;AAClC;;;;GAIG;AACH,SAAS,CAAC,EAAE,MAAM;AAClB,kFAAkF;AAClF,YAAY,CAAC,EAAE,MAAM;AACrB;;;GAGG;AACH,mBAAmB,CAAC,EAAE,MAAM,GAC3B,qBAAqB,CAiFvB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAE,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAYlE;AAED,wBAAgB,aAAa,CAAE,KAAK,EAAE,KAAK,GAAG,MAAM,CAWnD;AAED,wBAAgB,iBAAiB,CAAE,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAEnE"}
|
|
@@ -1,18 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createDefaultWalletServicesOptions = createDefaultWalletServicesOptions;
|
|
4
|
+
exports.arcadeDefaultUrl = arcadeDefaultUrl;
|
|
4
5
|
exports.arcDefaultUrl = arcDefaultUrl;
|
|
5
6
|
exports.arcGorillaPoolUrl = arcGorillaPoolUrl;
|
|
6
7
|
const utilityHelpers_1 = require("../utility/utilityHelpers");
|
|
7
8
|
const ChaintracksServiceClient_1 = require("./chaintracker/chaintracks/ChaintracksServiceClient");
|
|
8
|
-
function createDefaultWalletServicesOptions(chain, arcCallbackUrl, arcCallbackToken, taalArcApiKey, gorillaPoolArcApiKey, bitailsApiKey, deploymentId, chaintracks
|
|
9
|
+
function createDefaultWalletServicesOptions(chain, arcCallbackUrl, arcCallbackToken, taalArcApiKey, gorillaPoolArcApiKey, bitailsApiKey, deploymentId, chaintracks,
|
|
10
|
+
/**
|
|
11
|
+
* Optional Arcade endpoint. When provided (or when a default exists for the chain via
|
|
12
|
+
* `arcadeDefaultUrl`), Arcade is registered as the primary broadcaster ahead of ARC.
|
|
13
|
+
* Pass an empty string to explicitly disable the per-chain default.
|
|
14
|
+
*/
|
|
15
|
+
arcadeUrl,
|
|
16
|
+
/** Server-level API key (Bearer) for the Arcade endpoint, if it requires auth. */
|
|
17
|
+
arcadeApiKey,
|
|
18
|
+
/**
|
|
19
|
+
* Stable SSE callback token. Must match the Monitor's `callbackToken` so Arcade routes
|
|
20
|
+
* each broadcast transaction's status events to this wallet's `/events` subscription.
|
|
21
|
+
*/
|
|
22
|
+
arcadeCallbackToken) {
|
|
9
23
|
if (chain === 'mock') {
|
|
10
24
|
throw new Error('createDefaultWalletServicesOptions does not support \'mock\' chain. Use MockServices directly.');
|
|
11
25
|
}
|
|
12
26
|
deploymentId ||= `wallet-toolbox-${(0, utilityHelpers_1.randomBytesHex)(16)}`;
|
|
13
27
|
// const chaintracksUrl = `https://npm-registry.babbage.systems:${chain === 'main' ? 8084 : 8083}`
|
|
14
28
|
const chaintracksUrl = chain === 'ttn'
|
|
15
|
-
? 'https://arcade-v2-ttn-us-1.bsvblockchain.tech/chaintracks/'
|
|
29
|
+
? 'https://arcade-v2-ttn-us-1.bsvblockchain.tech/chaintracks/v1'
|
|
16
30
|
: `https://${chain}net-chaintracks.babbage.systems`;
|
|
17
31
|
// The mainnet endpoint is always used since these are fiat exchange rates,
|
|
18
32
|
// independent of the chain being used.
|
|
@@ -62,8 +76,41 @@ function createDefaultWalletServicesOptions(chain, arcCallbackUrl, arcCallbackTo
|
|
|
62
76
|
},
|
|
63
77
|
bitailsApiKey
|
|
64
78
|
};
|
|
79
|
+
// Arcade (bsv-blockchain/arcade) primary broadcaster.
|
|
80
|
+
// Opt-in: enabled only when an explicit `arcadeUrl` is provided. Callers can pass
|
|
81
|
+
// `arcadeDefaultUrl(chain)` to use the known per-chain endpoint. Kept opt-in (rather
|
|
82
|
+
// than defaulted on) so existing consumers' broadcaster set is unchanged until the
|
|
83
|
+
// Arcade path has been validated end-to-end; flipping the default is a one-line change.
|
|
84
|
+
const resolvedArcadeUrl = arcadeUrl;
|
|
85
|
+
if (resolvedArcadeUrl != null && resolvedArcadeUrl !== '') {
|
|
86
|
+
o.arcadeUrl = resolvedArcadeUrl;
|
|
87
|
+
o.arcadeConfig = {
|
|
88
|
+
apiKey: arcadeApiKey ?? undefined,
|
|
89
|
+
deploymentId,
|
|
90
|
+
// SSE (pull) flow: token scopes the /events subscription; no webhook callbackUrl
|
|
91
|
+
// (Arcade rejects private/loopback URLs). Must match Monitor.options.callbackToken.
|
|
92
|
+
callbackToken: arcadeCallbackToken ?? arcCallbackToken ?? undefined
|
|
93
|
+
};
|
|
94
|
+
}
|
|
65
95
|
return o;
|
|
66
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Default Arcade (bsv-blockchain/arcade) endpoint per chain.
|
|
99
|
+
* Returns undefined when no public default is known for the chain (e.g. testnet not yet deployed).
|
|
100
|
+
*/
|
|
101
|
+
function arcadeDefaultUrl(chain) {
|
|
102
|
+
switch (chain) {
|
|
103
|
+
case 'main':
|
|
104
|
+
return 'https://arcade-v2-us-1.bsvblockchain.tech';
|
|
105
|
+
case 'ttn':
|
|
106
|
+
return 'https://arcade-v2-ttn-us-1.bsvblockchain.tech';
|
|
107
|
+
case 'test':
|
|
108
|
+
// No public testnet Arcade endpoint deployed yet.
|
|
109
|
+
return undefined;
|
|
110
|
+
case 'mock':
|
|
111
|
+
return undefined;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
67
114
|
function arcDefaultUrl(chain) {
|
|
68
115
|
switch (chain) {
|
|
69
116
|
case 'main':
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createDefaultWalletServicesOptions.js","sourceRoot":"","sources":["../../../../src/services/createDefaultWalletServicesOptions.ts"],"names":[],"mappings":";;AAMA,
|
|
1
|
+
{"version":3,"file":"createDefaultWalletServicesOptions.js","sourceRoot":"","sources":["../../../../src/services/createDefaultWalletServicesOptions.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,10 @@ export interface ArcConfig {
|
|
|
15
15
|
/** additional headers to be attached to all tx submissions. */
|
|
16
16
|
headers?: Record<string, string>;
|
|
17
17
|
}
|
|
18
|
+
export declare function isArcAcceptedTxStatus(txStatus: string | undefined): boolean;
|
|
19
|
+
export declare function isArcDoubleSpendTxStatus(txStatus: string | undefined): boolean;
|
|
20
|
+
export declare function isArcInvalidTxStatus(txStatus: string | undefined): boolean;
|
|
21
|
+
export declare function isArcServiceErrorStatus(status: number | undefined, detail?: string): boolean;
|
|
18
22
|
/**
|
|
19
23
|
* Represents an ARC transaction broadcaster.
|
|
20
24
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ARC.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/ARC.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAIJ,SAAS,EACT,UAAU,EAIX,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAA4B,MAAM,qCAAqC,CAAA;AAKnH,qDAAqD;AACrD,MAAM,WAAW,SAAS;IACxB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,4DAA4D;IAC5D,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,0HAA0H;IAC1H,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,+HAA+H;IAC/H,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACjC;
|
|
1
|
+
{"version":3,"file":"ARC.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/ARC.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAIJ,SAAS,EACT,UAAU,EAIX,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAA4B,MAAM,qCAAqC,CAAA;AAKnH,qDAAqD;AACrD,MAAM,WAAW,SAAS;IACxB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,4DAA4D;IAC5D,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,0HAA0H;IAC1H,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,+HAA+H;IAC/H,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACjC;AA4BD,wBAAgB,qBAAqB,CAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAE5E;AAED,wBAAgB,wBAAwB,CAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAE/E;AAED,wBAAgB,oBAAoB,CAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAE3E;AAED,wBAAgB,uBAAuB,CAAE,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAY7F;AAED;;GAEG;AACH,qBAAa,GAAG;IACd,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAA;IACpD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IAEvC;;;;;OAKG;gBACU,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM;IAC3D;;;;;OAKG;gBACU,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAuBxD;;OAEG;IACH,OAAO,CAAC,cAAc;IA2BtB;;;;;;;;;;;;OAYG;IACG,SAAS,CAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA4GlF;;;;;;;;;OASG;IACG,QAAQ,CAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAyErE;;;;OAIG;IACG,SAAS,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAU3D;AASD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,IAAI,GAAG,MAAM,EAAE,CAAA;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;CACjB"}
|
|
@@ -1,12 +1,60 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ARC = void 0;
|
|
4
|
+
exports.isArcAcceptedTxStatus = isArcAcceptedTxStatus;
|
|
5
|
+
exports.isArcDoubleSpendTxStatus = isArcDoubleSpendTxStatus;
|
|
6
|
+
exports.isArcInvalidTxStatus = isArcInvalidTxStatus;
|
|
7
|
+
exports.isArcServiceErrorStatus = isArcServiceErrorStatus;
|
|
4
8
|
const sdk_1 = require("@bsv/sdk");
|
|
5
9
|
const utilityHelpers_1 = require("../../utility/utilityHelpers");
|
|
6
10
|
const WalletError_1 = require("../../sdk/WalletError");
|
|
7
11
|
function defaultDeploymentId() {
|
|
8
12
|
return `ts-sdk-${sdk_1.Utils.toHex((0, sdk_1.Random)(16))}`;
|
|
9
13
|
}
|
|
14
|
+
const arcAcceptedTxStatuses = new Set([
|
|
15
|
+
'RECEIVED',
|
|
16
|
+
'SENT_TO_NETWORK',
|
|
17
|
+
'ANNOUNCED_TO_NETWORK',
|
|
18
|
+
'ACCEPTED_BY_NETWORK',
|
|
19
|
+
'SEEN_ON_NETWORK',
|
|
20
|
+
'STORED',
|
|
21
|
+
'MINED',
|
|
22
|
+
'IMMUTABLE'
|
|
23
|
+
]);
|
|
24
|
+
const arcDoubleSpendTxStatuses = new Set([
|
|
25
|
+
'DOUBLE_SPEND_ATTEMPTED',
|
|
26
|
+
'SEEN_IN_ORPHAN_MEMPOOL'
|
|
27
|
+
]);
|
|
28
|
+
const arcInvalidTxStatuses = new Set([
|
|
29
|
+
'INVALID',
|
|
30
|
+
'MALFORMED',
|
|
31
|
+
'REJECTED'
|
|
32
|
+
]);
|
|
33
|
+
function isArcAcceptedTxStatus(txStatus) {
|
|
34
|
+
return txStatus != null && arcAcceptedTxStatuses.has(txStatus);
|
|
35
|
+
}
|
|
36
|
+
function isArcDoubleSpendTxStatus(txStatus) {
|
|
37
|
+
return txStatus != null && arcDoubleSpendTxStatuses.has(txStatus);
|
|
38
|
+
}
|
|
39
|
+
function isArcInvalidTxStatus(txStatus) {
|
|
40
|
+
return txStatus != null && arcInvalidTxStatuses.has(txStatus);
|
|
41
|
+
}
|
|
42
|
+
function isArcServiceErrorStatus(status, detail) {
|
|
43
|
+
if (status == null)
|
|
44
|
+
return true;
|
|
45
|
+
if (status === 408 || status === 429 || status === 476 || status >= 500)
|
|
46
|
+
return true;
|
|
47
|
+
if (detail == null)
|
|
48
|
+
return false;
|
|
49
|
+
const d = detail.toLowerCase();
|
|
50
|
+
return d.includes('maximum batch size') ||
|
|
51
|
+
d.includes('too many requests') ||
|
|
52
|
+
d.includes('rate limit') ||
|
|
53
|
+
d.includes('timeout') ||
|
|
54
|
+
d.includes('temporarily') ||
|
|
55
|
+
d.includes('backpressure') ||
|
|
56
|
+
d.includes('unavailable');
|
|
57
|
+
}
|
|
10
58
|
/**
|
|
11
59
|
* Represents an ARC transaction broadcaster.
|
|
12
60
|
*/
|
|
@@ -113,7 +161,7 @@ class ARC {
|
|
|
113
161
|
if (r.txid !== txid)
|
|
114
162
|
r.data += ` txid altered from ${r.txid} to ${txid}`;
|
|
115
163
|
r.txid = txid;
|
|
116
|
-
if (txStatus
|
|
164
|
+
if (isArcDoubleSpendTxStatus(txStatus)) {
|
|
117
165
|
r.status = 'error';
|
|
118
166
|
r.doubleSpend = true;
|
|
119
167
|
r.competingTxs = competingTxs;
|
|
@@ -131,8 +179,6 @@ class ARC {
|
|
|
131
179
|
}
|
|
132
180
|
else {
|
|
133
181
|
r.status = 'error';
|
|
134
|
-
// Treat unknown errors as service errors
|
|
135
|
-
r.serviceError = true;
|
|
136
182
|
const n = {
|
|
137
183
|
...nn(),
|
|
138
184
|
...nne(),
|
|
@@ -142,9 +188,17 @@ class ARC {
|
|
|
142
188
|
const ed = {};
|
|
143
189
|
r.data = ed;
|
|
144
190
|
const st = typeof response.status;
|
|
191
|
+
let status;
|
|
145
192
|
if (st === 'number' || st === 'string') {
|
|
146
193
|
n.status = response.status;
|
|
147
194
|
ed.status = response.status.toString();
|
|
195
|
+
if (typeof response.status === 'number')
|
|
196
|
+
status = response.status;
|
|
197
|
+
else {
|
|
198
|
+
const parsed = Number(response.status);
|
|
199
|
+
if (Number.isFinite(parsed))
|
|
200
|
+
status = parsed;
|
|
201
|
+
}
|
|
148
202
|
}
|
|
149
203
|
else {
|
|
150
204
|
n.status = st;
|
|
@@ -163,6 +217,7 @@ class ARC {
|
|
|
163
217
|
n.detail = ed.detail;
|
|
164
218
|
}
|
|
165
219
|
}
|
|
220
|
+
r.serviceError = isArcServiceErrorStatus(status, ed.detail);
|
|
166
221
|
r.notes.push(n);
|
|
167
222
|
}
|
|
168
223
|
}
|
|
@@ -228,7 +283,7 @@ class ARC {
|
|
|
228
283
|
returnedTxid: dr.txid
|
|
229
284
|
});
|
|
230
285
|
}
|
|
231
|
-
else if (dr.txStatus
|
|
286
|
+
else if (isArcAcceptedTxStatus(dr.txStatus)) {
|
|
232
287
|
tr.data = dr.txStatus;
|
|
233
288
|
tr.notes.push({
|
|
234
289
|
...nn(),
|
|
@@ -240,6 +295,12 @@ class ARC {
|
|
|
240
295
|
else {
|
|
241
296
|
tr.status = 'error';
|
|
242
297
|
tr.data = dr;
|
|
298
|
+
tr.serviceError = !isArcInvalidTxStatus(dr.txStatus);
|
|
299
|
+
if (isArcDoubleSpendTxStatus(dr.txStatus)) {
|
|
300
|
+
tr.doubleSpend = true;
|
|
301
|
+
tr.competingTxs = dr.competingTxs ?? undefined;
|
|
302
|
+
tr.serviceError = undefined;
|
|
303
|
+
}
|
|
243
304
|
tr.notes.push({
|
|
244
305
|
...nn(),
|
|
245
306
|
what: 'postBeefGetTxDataError',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ARC.js","sourceRoot":"","sources":["../../../../../src/services/providers/ARC.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ARC.js","sourceRoot":"","sources":["../../../../../src/services/providers/ARC.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArcSSEClient.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/ArcSSEClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAA;IACf,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAA;IACrB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4CAA4C;IAC5C,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAA;IACrC,4CAA4C;IAC5C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IACpD,6FAA6F;IAC7F,gBAAgB,EAAE,GAAG,CAAA;CACtB;AAED,qBAAa,YAAY;
|
|
1
|
+
{"version":3,"file":"ArcSSEClient.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/ArcSSEClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAA;IACf,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAA;IACrB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4CAA4C;IAC5C,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAA;IACrC,4CAA4C;IAC5C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IACpD,6FAA6F;IAC7F,gBAAgB,EAAE,GAAG,CAAA;CACtB;AAED,qBAAa,YAAY;IAQV,OAAO,CAAC,QAAQ,CAAC,OAAO;IAPrC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,UAAU,CAAQ;gBAEI,OAAO,EAAE,mBAAmB;IAU1D,IAAI,WAAW,IAAK,MAAM,GAAG,SAAS,CAErC;IAED;;OAEG;IACH,OAAO,IAAK,IAAI;IAsDhB,wCAAwC;IACxC,KAAK,IAAK,IAAI;IAUd;;;;OAIG;IACG,WAAW,IAAK,OAAO,CAAC,MAAM,CAAC;CAWtC"}
|
|
@@ -18,6 +18,7 @@ class ArcSSEClient {
|
|
|
18
18
|
_lastEventId;
|
|
19
19
|
es = null;
|
|
20
20
|
url;
|
|
21
|
+
displayUrl;
|
|
21
22
|
connected = false;
|
|
22
23
|
connecting = false;
|
|
23
24
|
constructor(options) {
|
|
@@ -28,6 +29,7 @@ class ArcSSEClient {
|
|
|
28
29
|
base = base.slice(0, -1);
|
|
29
30
|
}
|
|
30
31
|
this.url = `${base}/events?callbackToken=${encodeURIComponent(options.callbackToken)}`;
|
|
32
|
+
this.displayUrl = `${base}/events?callbackToken=<redacted>`;
|
|
31
33
|
}
|
|
32
34
|
get lastEventId() {
|
|
33
35
|
return this._lastEventId;
|
|
@@ -36,19 +38,19 @@ class ArcSSEClient {
|
|
|
36
38
|
* Open the SSE connection. Events will be dispatched via onEvent as they arrive.
|
|
37
39
|
*/
|
|
38
40
|
connect() {
|
|
39
|
-
if (this.es) {
|
|
41
|
+
if (this.es != null) {
|
|
40
42
|
console.log(`${TAG} already connected`);
|
|
41
43
|
return;
|
|
42
44
|
}
|
|
43
45
|
this.connecting = true;
|
|
44
46
|
const ESClass = this.options.EventSourceClass;
|
|
45
47
|
const headers = {
|
|
46
|
-
'Last-Event-ID': this._lastEventId
|
|
48
|
+
'Last-Event-ID': this._lastEventId ?? '0'
|
|
47
49
|
};
|
|
48
|
-
if (this.options.arcApiKey) {
|
|
50
|
+
if (this.options.arcApiKey != null && this.options.arcApiKey !== '') {
|
|
49
51
|
headers.Authorization = `Bearer ${this.options.arcApiKey}`;
|
|
50
52
|
}
|
|
51
|
-
console.log(`${TAG} connecting to ${this.
|
|
53
|
+
console.log(`${TAG} connecting to ${this.displayUrl} (Last-Event-ID: ${headers['Last-Event-ID']})`);
|
|
52
54
|
this.es = new ESClass(this.url, {
|
|
53
55
|
headers,
|
|
54
56
|
debug: true,
|
|
@@ -63,7 +65,7 @@ class ArcSSEClient {
|
|
|
63
65
|
try {
|
|
64
66
|
const data = JSON.parse(event.data);
|
|
65
67
|
console.log(`${TAG} event: txid=${data.txid} status=${data.txStatus}`);
|
|
66
|
-
if (event.lastEventId) {
|
|
68
|
+
if (typeof event.lastEventId === 'string' && event.lastEventId !== '') {
|
|
67
69
|
this._lastEventId = event.lastEventId;
|
|
68
70
|
this.options.onLastEventIdChanged?.(event.lastEventId);
|
|
69
71
|
}
|
|
@@ -77,12 +79,13 @@ class ArcSSEClient {
|
|
|
77
79
|
console.log(`${TAG} error:`, JSON.stringify(event));
|
|
78
80
|
this.connected = false;
|
|
79
81
|
this.connecting = false;
|
|
80
|
-
|
|
82
|
+
const message = typeof event.message === 'string' && event.message !== '' ? event.message : 'SSE error';
|
|
83
|
+
this.options.onError?.(new Error(message));
|
|
81
84
|
});
|
|
82
85
|
}
|
|
83
86
|
/** Close the connection and clean up */
|
|
84
87
|
close() {
|
|
85
|
-
if (this.es) {
|
|
88
|
+
if (this.es != null) {
|
|
86
89
|
console.log(`${TAG} closing`);
|
|
87
90
|
this.es.close();
|
|
88
91
|
this.es = null;
|
|
@@ -96,10 +99,10 @@ class ArcSSEClient {
|
|
|
96
99
|
* Returns immediately — events arrive asynchronously via onEvent callback.
|
|
97
100
|
*/
|
|
98
101
|
async fetchEvents() {
|
|
99
|
-
if (
|
|
102
|
+
if (this.es == null && !this.connecting) {
|
|
100
103
|
this.connect();
|
|
101
104
|
}
|
|
102
|
-
else if (this.es && !this.connected && !this.connecting) {
|
|
105
|
+
else if (this.es != null && !this.connected && !this.connecting) {
|
|
103
106
|
// Connection exists but failed — reconnect
|
|
104
107
|
this.close();
|
|
105
108
|
this.connect();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArcSSEClient.js","sourceRoot":"","sources":["../../../../../src/services/providers/ArcSSEClient.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAEH,MAAM,GAAG,GAAG,UAAU,CAAA;AA2BtB,MAAa,YAAY;
|
|
1
|
+
{"version":3,"file":"ArcSSEClient.js","sourceRoot":"","sources":["../../../../../src/services/providers/ArcSSEClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Beef, HexString } from '@bsv/sdk';
|
|
2
|
+
import { GetMerklePathResult, PostBeefResult, PostTxResultForTxid, WalletServices } from '../../sdk/WalletServices.interfaces';
|
|
3
|
+
import { ArcConfig, ArcMinerGetTxData } from './ARC';
|
|
4
|
+
/**
|
|
5
|
+
* Broadcaster for bsv-blockchain/arcade — the Teranode-native, ARC-compatible broadcaster.
|
|
6
|
+
*
|
|
7
|
+
* Arcade is intentionally a separate, self-contained class (not a subclass of {@link ARC}) so
|
|
8
|
+
* the audited ARC transport is never altered. It is ARC-compatible on headers, configuration and
|
|
9
|
+
* the `getTxData` response shape — but differs where it must:
|
|
10
|
+
*
|
|
11
|
+
* - Endpoints are served at the root: `/tx` and `/tx/{txid}` (no `/v1` prefix).
|
|
12
|
+
* - A submit returns HTTP 202; HTTP 400 is a terminal validation failure (REJECTED) and is
|
|
13
|
+
* surfaced as an invalid-transaction status error rather than a transient service error.
|
|
14
|
+
* - Submission encoding is Extended Format (EF), not BEEF: Arcade's `/tx` parser rejects BEEF
|
|
15
|
+
* ("failed to parse transaction") and runs fee/script validation that needs per-input source
|
|
16
|
+
* data, which EF carries inline.
|
|
17
|
+
*/
|
|
18
|
+
export declare class Arcade {
|
|
19
|
+
readonly name: string;
|
|
20
|
+
readonly URL: string;
|
|
21
|
+
readonly apiKey: string | undefined;
|
|
22
|
+
readonly deploymentId: string;
|
|
23
|
+
readonly callbackUrl: string | undefined;
|
|
24
|
+
readonly callbackToken: string | undefined;
|
|
25
|
+
readonly headers: Record<string, string> | undefined;
|
|
26
|
+
private readonly httpClient;
|
|
27
|
+
/**
|
|
28
|
+
* @param URL - The Arcade endpoint base URL.
|
|
29
|
+
* @param config - Arcade configuration (shares ARC's {@link ArcConfig} shape).
|
|
30
|
+
*/
|
|
31
|
+
constructor(URL: string, config?: ArcConfig, name?: string);
|
|
32
|
+
constructor(URL: string, apiKey?: string, name?: string);
|
|
33
|
+
/** Constructs a dictionary of the default & supplied request headers. */
|
|
34
|
+
private requestHeaders;
|
|
35
|
+
/**
|
|
36
|
+
* Submit a single transaction to Arcade's `POST /tx` endpoint.
|
|
37
|
+
*
|
|
38
|
+
* `rawTx` must be a single (raw or Extended Format) transaction hex — NOT BEEF. The canonical
|
|
39
|
+
* txid is taken from `txids` when supplied (Arcade derives the same txid from the parsed tx).
|
|
40
|
+
*/
|
|
41
|
+
postRawTx(rawTx: HexString, txids?: string[]): Promise<PostTxResultForTxid>;
|
|
42
|
+
/**
|
|
43
|
+
* Post each tx of interest as Extended Format (EF).
|
|
44
|
+
*
|
|
45
|
+
* EF needs each input's source output (satoshis + locking script). For a BEEF that carries every
|
|
46
|
+
* direct parent transaction in full (e.g. the atomic BEEF produced by createAction), that data is
|
|
47
|
+
* present and {@link Transaction.fromBEEF} can reconstruct EF. A BEEF is NOT guaranteed to contain
|
|
48
|
+
* it, however: BEEF V2 `txidOnly` entries (or an otherwise pruned BEEF) can reference a direct
|
|
49
|
+
* parent without its bytes, leaving no source output to embed — so BEEF -> EF is not always
|
|
50
|
+
* possible. When EF cannot be built for a txid, it is recorded as a (non-terminal) service error
|
|
51
|
+
* so cross-provider aggregation falls through to a BEEF-capable broadcaster, which can still
|
|
52
|
+
* broadcast the (valid) transaction.
|
|
53
|
+
*/
|
|
54
|
+
postBeef(beef: Beef, txids: string[]): Promise<PostBeefResult>;
|
|
55
|
+
/** Look up a transaction's current status (and merkle path once mined) via `GET /tx/{txid}`. */
|
|
56
|
+
getTxData(txid: string): Promise<ArcMinerGetTxData>;
|
|
57
|
+
/**
|
|
58
|
+
* `getMerklePath` provider: obtain a BUMP merkle proof for a mined transaction from Arcade.
|
|
59
|
+
*
|
|
60
|
+
* Arcade only has a proof for transactions it tracked (i.e. broadcast through it) that have
|
|
61
|
+
* been mined while tracked; for anything else `GET /tx/{txid}` reports a non-mined status (or
|
|
62
|
+
* 404) and this returns no `merklePath`, so {@link Services.getMerklePath} falls through to the
|
|
63
|
+
* other providers (WhatsOnChain/Bitails).
|
|
64
|
+
*
|
|
65
|
+
* The proof is NOT trusted blindly: the canonical block header is resolved from the wallet's
|
|
66
|
+
* own chaintracker via `services.hashToHeader(blockHash)` (which only knows real, mined blocks),
|
|
67
|
+
* and the BUMP's computed merkle root must equal that header's `merkleRoot`. Only then is the
|
|
68
|
+
* proof returned, with the canonical `header` that downstream proof completion requires.
|
|
69
|
+
*/
|
|
70
|
+
getMerklePath(txid: string, services: WalletServices): Promise<GetMerklePathResult>;
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=Arcade.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Arcade.d.ts","sourceRoot":"","sources":["../../../../../src/services/providers/Arcade.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EAEJ,SAAS,EAOV,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EAEnB,cAAc,EACf,MAAM,qCAAqC,CAAA;AAM5C,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAqD,MAAM,OAAO,CAAA;AAMvG;;;;;;;;;;;;;GAaG;AACH,qBAAa,MAAM;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAA;IACpD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IAEvC;;;OAGG;gBACU,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM;gBAC9C,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAsBxD,yEAAyE;IACzE,OAAO,CAAC,cAAc;IA2BtB;;;;;OAKG;IACG,SAAS,CAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAgHlF;;;;;;;;;;;OAWG;IACG,QAAQ,CAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAmCrE,gGAAgG;IAC1F,SAAS,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAW1D;;;;;;;;;;;;OAYG;IACG,aAAa,CAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAkC3F"}
|