@toon-protocol/connector 2.0.0 → 2.2.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/dist/btp/btp-claim-types.d.ts +24 -2
- package/dist/btp/btp-claim-types.d.ts.map +1 -1
- package/dist/btp/btp-claim-types.js +115 -9
- package/dist/btp/btp-claim-types.js.map +1 -1
- package/dist/btp/inbound-claim-validator.d.ts +5 -1
- package/dist/btp/inbound-claim-validator.d.ts.map +1 -1
- package/dist/btp/inbound-claim-validator.js +52 -10
- package/dist/btp/inbound-claim-validator.js.map +1 -1
- package/dist/config/config-loader.d.ts.map +1 -1
- package/dist/config/config-loader.js +3 -0
- package/dist/config/config-loader.js.map +1 -1
- package/dist/config/types.d.ts +15 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +45 -0
- package/dist/config/types.js.map +1 -1
- package/dist/core/connector-node.d.ts.map +1 -1
- package/dist/core/connector-node.js +57 -12
- package/dist/core/connector-node.js.map +1 -1
- package/dist/core/packet-handler.d.ts +10 -1
- package/dist/core/packet-handler.d.ts.map +1 -1
- package/dist/core/packet-handler.js +67 -2
- package/dist/core/packet-handler.js.map +1 -1
- package/dist/settlement/channel-manager.d.ts +3 -2
- package/dist/settlement/channel-manager.d.ts.map +1 -1
- package/dist/settlement/channel-manager.js +18 -6
- package/dist/settlement/channel-manager.js.map +1 -1
- package/dist/settlement/claim-receiver.d.ts +16 -3
- package/dist/settlement/claim-receiver.d.ts.map +1 -1
- package/dist/settlement/claim-receiver.js +434 -117
- package/dist/settlement/claim-receiver.js.map +1 -1
- package/dist/settlement/claim-sender.d.ts +4 -2
- package/dist/settlement/claim-sender.d.ts.map +1 -1
- package/dist/settlement/claim-sender.js +38 -0
- package/dist/settlement/claim-sender.js.map +1 -1
- package/dist/settlement/mina-payment-channel-sdk.d.ts +73 -0
- package/dist/settlement/mina-payment-channel-sdk.d.ts.map +1 -0
- package/dist/settlement/mina-payment-channel-sdk.js +538 -0
- package/dist/settlement/mina-payment-channel-sdk.js.map +1 -0
- package/dist/settlement/per-packet-claim-service.d.ts +12 -6
- package/dist/settlement/per-packet-claim-service.d.ts.map +1 -1
- package/dist/settlement/per-packet-claim-service.js +205 -40
- package/dist/settlement/per-packet-claim-service.js.map +1 -1
- package/dist/settlement/privacy/index.d.ts +3 -0
- package/dist/settlement/privacy/index.d.ts.map +1 -0
- package/dist/settlement/privacy/index.js +11 -0
- package/dist/settlement/privacy/index.js.map +1 -0
- package/dist/settlement/privacy/nip59-claim-wrapper.d.ts +60 -0
- package/dist/settlement/privacy/nip59-claim-wrapper.d.ts.map +1 -0
- package/dist/settlement/privacy/nip59-claim-wrapper.js +361 -0
- package/dist/settlement/privacy/nip59-claim-wrapper.js.map +1 -0
- package/dist/settlement/provider/chain-provider-registry.d.ts +20 -0
- package/dist/settlement/provider/chain-provider-registry.d.ts.map +1 -0
- package/dist/settlement/provider/chain-provider-registry.js +53 -0
- package/dist/settlement/provider/chain-provider-registry.js.map +1 -0
- package/dist/settlement/provider/evm-payment-channel-provider.d.ts +31 -0
- package/dist/settlement/provider/evm-payment-channel-provider.d.ts.map +1 -0
- package/dist/settlement/provider/evm-payment-channel-provider.js +207 -0
- package/dist/settlement/provider/evm-payment-channel-provider.js.map +1 -0
- package/dist/settlement/provider/index.d.ts +6 -0
- package/dist/settlement/provider/index.d.ts.map +1 -0
- package/dist/settlement/provider/index.js +16 -0
- package/dist/settlement/provider/index.js.map +1 -0
- package/dist/settlement/provider/mina-payment-channel-provider.d.ts +43 -0
- package/dist/settlement/provider/mina-payment-channel-provider.d.ts.map +1 -0
- package/dist/settlement/provider/mina-payment-channel-provider.js +330 -0
- package/dist/settlement/provider/mina-payment-channel-provider.js.map +1 -0
- package/dist/settlement/provider/payment-channel-provider.d.ts +79 -0
- package/dist/settlement/provider/payment-channel-provider.d.ts.map +1 -0
- package/dist/settlement/provider/payment-channel-provider.js +3 -0
- package/dist/settlement/provider/payment-channel-provider.js.map +1 -0
- package/dist/settlement/provider/solana-payment-channel-provider.d.ts +38 -0
- package/dist/settlement/provider/solana-payment-channel-provider.d.ts.map +1 -0
- package/dist/settlement/provider/solana-payment-channel-provider.js +262 -0
- package/dist/settlement/provider/solana-payment-channel-provider.js.map +1 -0
- package/dist/settlement/settlement-executor.d.ts +11 -7
- package/dist/settlement/settlement-executor.d.ts.map +1 -1
- package/dist/settlement/settlement-executor.js +74 -65
- package/dist/settlement/settlement-executor.js.map +1 -1
- package/dist/settlement/settlement-monitor.d.ts.map +1 -1
- package/dist/settlement/settlement-monitor.js.map +1 -1
- package/dist/settlement/solana-payment-channel-sdk.d.ts +75 -0
- package/dist/settlement/solana-payment-channel-sdk.d.ts.map +1 -0
- package/dist/settlement/solana-payment-channel-sdk.js +600 -0
- package/dist/settlement/solana-payment-channel-sdk.js.map +1 -0
- package/dist/settlement/types.d.ts +1 -1
- package/dist/settlement/types.d.ts.map +1 -1
- package/dist/settlement/types.js.map +1 -1
- package/package.json +12 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type BlockchainType = 'evm';
|
|
1
|
+
export type BlockchainType = 'evm' | 'solana' | 'mina';
|
|
2
2
|
export interface BaseClaimMessage {
|
|
3
3
|
version: '1.0';
|
|
4
4
|
blockchain: BlockchainType;
|
|
@@ -19,12 +19,34 @@ export interface EVMClaimMessage extends BaseClaimMessage {
|
|
|
19
19
|
tokenNetworkAddress?: string;
|
|
20
20
|
tokenAddress?: string;
|
|
21
21
|
}
|
|
22
|
-
export
|
|
22
|
+
export interface SolanaClaimMessage extends BaseClaimMessage {
|
|
23
|
+
blockchain: 'solana';
|
|
24
|
+
programId: string;
|
|
25
|
+
channelAccount: string;
|
|
26
|
+
nonce: number;
|
|
27
|
+
transferredAmount: string;
|
|
28
|
+
signature: string;
|
|
29
|
+
signerPublicKey: string;
|
|
30
|
+
cluster?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface MinaClaimMessage extends BaseClaimMessage {
|
|
33
|
+
blockchain: 'mina';
|
|
34
|
+
zkAppAddress: string;
|
|
35
|
+
tokenId: string;
|
|
36
|
+
balanceCommitment: string;
|
|
37
|
+
nonce: number;
|
|
38
|
+
proof: string;
|
|
39
|
+
salt: string;
|
|
40
|
+
network?: string;
|
|
41
|
+
}
|
|
42
|
+
export type BTPClaimMessage = EVMClaimMessage | SolanaClaimMessage | MinaClaimMessage;
|
|
23
43
|
export declare const BTP_CLAIM_PROTOCOL: {
|
|
24
44
|
readonly NAME: "payment-channel-claim";
|
|
25
45
|
readonly CONTENT_TYPE: 1;
|
|
26
46
|
readonly VERSION: "1.0";
|
|
27
47
|
};
|
|
28
48
|
export declare function isEVMClaim(msg: BTPClaimMessage): msg is EVMClaimMessage;
|
|
49
|
+
export declare function isSolanaClaim(msg: BTPClaimMessage): msg is SolanaClaimMessage;
|
|
50
|
+
export declare function isMinaClaim(msg: BTPClaimMessage): msg is MinaClaimMessage;
|
|
29
51
|
export declare function validateClaimMessage(msg: unknown): asserts msg is BTPClaimMessage;
|
|
30
52
|
//# sourceMappingURL=btp-claim-types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"btp-claim-types.d.ts","sourceRoot":"","sources":["../../src/btp/btp-claim-types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"btp-claim-types.d.ts","sourceRoot":"","sources":["../../src/btp/btp-claim-types.ts"],"names":[],"mappings":"AAmBA,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAYvD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,KAAK,CAAC;IACf,UAAU,EAAE,cAAc,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AA0CD,MAAM,WAAW,eAAgB,SAAQ,gBAAgB;IACvD,UAAU,EAAE,KAAK,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAiBD,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB;IAC1D,UAAU,EAAE,QAAQ,CAAC;IAErB,SAAS,EAAE,MAAM,CAAC;IAElB,cAAc,EAAE,MAAM,CAAC;IAEvB,KAAK,EAAE,MAAM,CAAC;IAEd,iBAAiB,EAAE,MAAM,CAAC;IAE1B,SAAS,EAAE,MAAM,CAAC;IAElB,eAAe,EAAE,MAAM,CAAC;IAExB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAiBD,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,UAAU,EAAE,MAAM,CAAC;IAEnB,YAAY,EAAE,MAAM,CAAC;IAErB,OAAO,EAAE,MAAM,CAAC;IAUhB,iBAAiB,EAAE,MAAM,CAAC;IAE1B,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,EAAE,MAAM,CAAC;IAEd,IAAI,EAAE,MAAM,CAAC;IAEb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAMD,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG,kBAAkB,GAAG,gBAAgB,CAAC;AAUtF,eAAO,MAAM,kBAAkB;;;;CAIrB,CAAC;AAaX,wBAAgB,UAAU,CAAC,GAAG,EAAE,eAAe,GAAG,GAAG,IAAI,eAAe,CAEvE;AAaD,wBAAgB,aAAa,CAAC,GAAG,EAAE,eAAe,GAAG,GAAG,IAAI,kBAAkB,CAE7E;AAaD,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,GAAG,IAAI,gBAAgB,CAEzE;AA4OD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,IAAI,eAAe,CAoDjF"}
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BTP_CLAIM_PROTOCOL = void 0;
|
|
4
4
|
exports.isEVMClaim = isEVMClaim;
|
|
5
|
+
exports.isSolanaClaim = isSolanaClaim;
|
|
6
|
+
exports.isMinaClaim = isMinaClaim;
|
|
5
7
|
exports.validateClaimMessage = validateClaimMessage;
|
|
6
8
|
exports.BTP_CLAIM_PROTOCOL = {
|
|
7
9
|
NAME: 'payment-channel-claim',
|
|
@@ -11,12 +13,106 @@ exports.BTP_CLAIM_PROTOCOL = {
|
|
|
11
13
|
function isEVMClaim(msg) {
|
|
12
14
|
return msg.blockchain === 'evm';
|
|
13
15
|
}
|
|
16
|
+
function isSolanaClaim(msg) {
|
|
17
|
+
return msg.blockchain === 'solana';
|
|
18
|
+
}
|
|
19
|
+
function isMinaClaim(msg) {
|
|
20
|
+
return msg.blockchain === 'mina';
|
|
21
|
+
}
|
|
22
|
+
function validateSolanaClaim(claim) {
|
|
23
|
+
if (!claim.programId || typeof claim.programId !== 'string') {
|
|
24
|
+
throw new Error('Missing or invalid programId (expected non-empty string)');
|
|
25
|
+
}
|
|
26
|
+
if (!claim.channelAccount || typeof claim.channelAccount !== 'string') {
|
|
27
|
+
throw new Error('Missing or invalid channelAccount (expected non-empty string)');
|
|
28
|
+
}
|
|
29
|
+
if (claim.nonce === undefined ||
|
|
30
|
+
typeof claim.nonce !== 'number' ||
|
|
31
|
+
!Number.isInteger(claim.nonce) ||
|
|
32
|
+
claim.nonce < 0) {
|
|
33
|
+
throw new Error('Missing or invalid nonce (expected non-negative integer)');
|
|
34
|
+
}
|
|
35
|
+
if (!claim.transferredAmount || typeof claim.transferredAmount !== 'string') {
|
|
36
|
+
throw new Error('Missing or invalid transferredAmount (expected non-empty string)');
|
|
37
|
+
}
|
|
38
|
+
if (!claim.signature || typeof claim.signature !== 'string') {
|
|
39
|
+
throw new Error('Missing or invalid signature (expected non-empty string)');
|
|
40
|
+
}
|
|
41
|
+
if (!claim.signerPublicKey || typeof claim.signerPublicKey !== 'string') {
|
|
42
|
+
throw new Error('Missing or invalid signerPublicKey (expected non-empty string)');
|
|
43
|
+
}
|
|
44
|
+
const base58Regex = /^[1-9A-HJ-NP-Za-km-z]{32,44}$/;
|
|
45
|
+
if (!base58Regex.test(claim.programId)) {
|
|
46
|
+
throw new Error('Invalid programId format (expected base58-encoded Solana address)');
|
|
47
|
+
}
|
|
48
|
+
if (!base58Regex.test(claim.channelAccount)) {
|
|
49
|
+
throw new Error('Invalid channelAccount format (expected base58-encoded Solana address)');
|
|
50
|
+
}
|
|
51
|
+
if (!base58Regex.test(claim.signerPublicKey)) {
|
|
52
|
+
throw new Error('Invalid signerPublicKey format (expected base58-encoded Solana public key)');
|
|
53
|
+
}
|
|
54
|
+
if (!/^\d+$/.test(claim.transferredAmount)) {
|
|
55
|
+
throw new Error('Invalid transferredAmount (expected non-negative integer string)');
|
|
56
|
+
}
|
|
57
|
+
if (claim.cluster !== undefined) {
|
|
58
|
+
if (typeof claim.cluster !== 'string') {
|
|
59
|
+
throw new Error('Invalid cluster (expected string)');
|
|
60
|
+
}
|
|
61
|
+
const validClusters = ['mainnet-beta', 'devnet', 'testnet', 'localnet'];
|
|
62
|
+
if (!validClusters.includes(claim.cluster)) {
|
|
63
|
+
throw new Error(`Invalid cluster (expected one of: ${validClusters.join(', ')})`);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
function validateMinaClaim(claim) {
|
|
68
|
+
const minaAddressRegex = /^B62[1-9A-HJ-NP-Za-km-z]{52}$/;
|
|
69
|
+
if (!claim.zkAppAddress || typeof claim.zkAppAddress !== 'string') {
|
|
70
|
+
throw new Error('Missing or invalid zkAppAddress (expected non-empty string)');
|
|
71
|
+
}
|
|
72
|
+
if (!minaAddressRegex.test(claim.zkAppAddress)) {
|
|
73
|
+
throw new Error('Invalid zkAppAddress format (expected B62-prefixed base58 Mina address, 55 chars)');
|
|
74
|
+
}
|
|
75
|
+
if (!claim.tokenId || typeof claim.tokenId !== 'string') {
|
|
76
|
+
throw new Error('Missing or invalid tokenId (expected non-empty string)');
|
|
77
|
+
}
|
|
78
|
+
if (!claim.balanceCommitment || typeof claim.balanceCommitment !== 'string') {
|
|
79
|
+
throw new Error('Missing or invalid balanceCommitment (expected non-empty string)');
|
|
80
|
+
}
|
|
81
|
+
if (claim.nonce === undefined ||
|
|
82
|
+
typeof claim.nonce !== 'number' ||
|
|
83
|
+
!Number.isInteger(claim.nonce) ||
|
|
84
|
+
claim.nonce < 0) {
|
|
85
|
+
throw new Error('Missing or invalid nonce (expected non-negative integer)');
|
|
86
|
+
}
|
|
87
|
+
if (!claim.proof || typeof claim.proof !== 'string') {
|
|
88
|
+
throw new Error('Missing or invalid proof (expected non-empty string)');
|
|
89
|
+
}
|
|
90
|
+
const base64Regex = /^[A-Za-z0-9+/]+=*$/;
|
|
91
|
+
if (!base64Regex.test(claim.proof)) {
|
|
92
|
+
throw new Error('Invalid proof format (expected base64-encoded zk-SNARK proof)');
|
|
93
|
+
}
|
|
94
|
+
if (!claim.salt || typeof claim.salt !== 'string') {
|
|
95
|
+
throw new Error('Missing or invalid salt (expected non-empty string)');
|
|
96
|
+
}
|
|
97
|
+
if (claim.network !== undefined) {
|
|
98
|
+
if (typeof claim.network !== 'string') {
|
|
99
|
+
throw new Error('Invalid network (expected string)');
|
|
100
|
+
}
|
|
101
|
+
const validNetworks = ['mainnet', 'devnet', 'berkeley', 'lightnet'];
|
|
102
|
+
if (!validNetworks.includes(claim.network)) {
|
|
103
|
+
throw new Error(`Invalid network (expected one of: ${validNetworks.join(', ')})`);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
14
107
|
function validateEVMClaim(claim) {
|
|
15
108
|
if (!claim.channelId || typeof claim.channelId !== 'string') {
|
|
16
109
|
throw new Error('Missing or invalid channelId (expected non-empty string)');
|
|
17
110
|
}
|
|
18
|
-
if (claim.nonce === undefined ||
|
|
19
|
-
|
|
111
|
+
if (claim.nonce === undefined ||
|
|
112
|
+
typeof claim.nonce !== 'number' ||
|
|
113
|
+
!Number.isInteger(claim.nonce) ||
|
|
114
|
+
claim.nonce < 0) {
|
|
115
|
+
throw new Error('Missing or invalid nonce (expected non-negative integer)');
|
|
20
116
|
}
|
|
21
117
|
if (!claim.transferredAmount || typeof claim.transferredAmount !== 'string') {
|
|
22
118
|
throw new Error('Missing or invalid transferredAmount (expected non-empty string)');
|
|
@@ -78,13 +174,11 @@ function validateClaimMessage(msg) {
|
|
|
78
174
|
}
|
|
79
175
|
const claim = msg;
|
|
80
176
|
if (claim.version !== '1.0') {
|
|
81
|
-
|
|
177
|
+
const sanitizedVersion = String(claim.version ?? '').slice(0, 20);
|
|
178
|
+
throw new Error(`Invalid version (expected '1.0', got '${sanitizedVersion}')`);
|
|
82
179
|
}
|
|
83
|
-
if (!claim.blockchain) {
|
|
84
|
-
throw new Error('Missing blockchain field');
|
|
85
|
-
}
|
|
86
|
-
if (claim.blockchain !== 'evm') {
|
|
87
|
-
throw new Error(`Unsupported blockchain type: ${claim.blockchain}`);
|
|
180
|
+
if (!claim.blockchain || typeof claim.blockchain !== 'string') {
|
|
181
|
+
throw new Error('Missing or invalid blockchain field (expected non-empty string)');
|
|
88
182
|
}
|
|
89
183
|
if (!claim.messageId || typeof claim.messageId !== 'string') {
|
|
90
184
|
throw new Error('Missing or invalid messageId (expected non-empty string)');
|
|
@@ -98,6 +192,18 @@ function validateClaimMessage(msg) {
|
|
|
98
192
|
if (!claim.senderId || typeof claim.senderId !== 'string') {
|
|
99
193
|
throw new Error('Missing or invalid senderId (expected non-empty string)');
|
|
100
194
|
}
|
|
101
|
-
|
|
195
|
+
switch (claim.blockchain) {
|
|
196
|
+
case 'evm':
|
|
197
|
+
validateEVMClaim(claim);
|
|
198
|
+
break;
|
|
199
|
+
case 'solana':
|
|
200
|
+
validateSolanaClaim(claim);
|
|
201
|
+
break;
|
|
202
|
+
case 'mina':
|
|
203
|
+
validateMinaClaim(claim);
|
|
204
|
+
break;
|
|
205
|
+
default:
|
|
206
|
+
throw new Error(`Unsupported blockchain type: ${String(claim.blockchain).slice(0, 30)}`);
|
|
207
|
+
}
|
|
102
208
|
}
|
|
103
209
|
//# sourceMappingURL=btp-claim-types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"btp-claim-types.js","sourceRoot":"","sources":["../../src/btp/btp-claim-types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"btp-claim-types.js","sourceRoot":"","sources":["../../src/btp/btp-claim-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { BTPProtocolData } from './btp-types';
|
|
2
|
+
import { type NIP59ClaimWrapper } from '../settlement/privacy/nip59-claim-wrapper';
|
|
2
3
|
import type { ILPPreparePacket, ILPRejectPacket } from '@toon-protocol/shared';
|
|
3
4
|
import type { PaymentChannelSDK } from '../settlement/payment-channel-sdk';
|
|
4
5
|
import type { ChannelManager } from '../settlement/channel-manager';
|
|
@@ -9,8 +10,11 @@ export declare class InboundClaimValidator {
|
|
|
9
10
|
private readonly paymentChannelSDK;
|
|
10
11
|
private readonly channelManager?;
|
|
11
12
|
private readonly nodeId;
|
|
12
|
-
|
|
13
|
+
private readonly nip59Wrapper?;
|
|
14
|
+
private readonly nip59PrivateKey?;
|
|
15
|
+
constructor(paymentChannelSDK: PaymentChannelSDK, nodeId: string, logger: Logger, channelManager?: ChannelManager, nip59Wrapper?: NIP59ClaimWrapper, nip59PrivateKey?: Uint8Array);
|
|
13
16
|
validate(protocolData: BTPProtocolData[], ilpPacket: ILPPreparePacket, peerId: string): Promise<ILPRejectPacket | null>;
|
|
17
|
+
private verifyEVMClaim;
|
|
14
18
|
private createReject;
|
|
15
19
|
}
|
|
16
20
|
//# sourceMappingURL=inbound-claim-validator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbound-claim-validator.d.ts","sourceRoot":"","sources":["../../src/btp/inbound-claim-validator.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAM9C,MAAM,MAAM,uBAAuB,GAAG,CACpC,YAAY,EAAE,eAAe,EAAE,EAC/B,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,MAAM,KACX,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;AASrC,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IACtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;
|
|
1
|
+
{"version":3,"file":"inbound-claim-validator.d.ts","sourceRoot":"","sources":["../../src/btp/inbound-claim-validator.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EACL,KAAK,iBAAiB,EAGvB,MAAM,2CAA2C,CAAC;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAM9C,MAAM,MAAM,uBAAuB,GAAG,CACpC,YAAY,EAAE,eAAe,EAAE,EAC/B,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,MAAM,KACX,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;AASrC,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IACtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAoB;IAClD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAa;gBAG5C,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,cAAc,EAC/B,YAAY,CAAC,EAAE,iBAAiB,EAChC,eAAe,CAAC,EAAE,UAAU;IAkBxB,QAAQ,CACZ,YAAY,EAAE,eAAe,EAAE,EAC/B,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;YAuFpB,cAAc;IAqG5B,OAAO,CAAC,YAAY;CASrB"}
|
|
@@ -2,24 +2,34 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.InboundClaimValidator = void 0;
|
|
4
4
|
const btp_claim_types_1 = require("./btp-claim-types");
|
|
5
|
+
const nip59_claim_wrapper_1 = require("../settlement/privacy/nip59-claim-wrapper");
|
|
5
6
|
const shared_1 = require("@toon-protocol/shared");
|
|
6
7
|
class InboundClaimValidator {
|
|
7
8
|
logger;
|
|
8
9
|
paymentChannelSDK;
|
|
9
10
|
channelManager;
|
|
10
11
|
nodeId;
|
|
11
|
-
|
|
12
|
+
nip59Wrapper;
|
|
13
|
+
nip59PrivateKey;
|
|
14
|
+
constructor(paymentChannelSDK, nodeId, logger, channelManager, nip59Wrapper, nip59PrivateKey) {
|
|
12
15
|
this.paymentChannelSDK = paymentChannelSDK;
|
|
13
16
|
this.nodeId = nodeId;
|
|
14
17
|
this.logger = logger.child({ component: 'InboundClaimValidator' });
|
|
15
18
|
this.channelManager = channelManager;
|
|
19
|
+
this.nip59Wrapper = nip59Wrapper;
|
|
20
|
+
this.nip59PrivateKey = nip59PrivateKey;
|
|
16
21
|
}
|
|
17
22
|
async validate(protocolData, ilpPacket, peerId) {
|
|
18
23
|
if (ilpPacket.amount === 0n) {
|
|
19
24
|
this.logger.debug({ event: 'inbound_claim_skip_zero', peerId, destination: ilpPacket.destination }, 'Skipping claim validation for zero-amount packet');
|
|
20
25
|
return null;
|
|
21
26
|
}
|
|
22
|
-
|
|
27
|
+
let claimData = protocolData.find((pd) => pd.protocolName === btp_claim_types_1.BTP_CLAIM_PROTOCOL.NAME);
|
|
28
|
+
let isWrapped = false;
|
|
29
|
+
if (!claimData) {
|
|
30
|
+
claimData = protocolData.find((pd) => pd.protocolName === nip59_claim_wrapper_1.BTP_WRAPPED_CLAIM_PROTOCOL.NAME);
|
|
31
|
+
isWrapped = !!claimData;
|
|
32
|
+
}
|
|
23
33
|
if (!claimData) {
|
|
24
34
|
this.logger.warn({
|
|
25
35
|
event: 'inbound_claim_missing',
|
|
@@ -30,7 +40,17 @@ class InboundClaimValidator {
|
|
|
30
40
|
}
|
|
31
41
|
let claim;
|
|
32
42
|
try {
|
|
33
|
-
|
|
43
|
+
let parsed;
|
|
44
|
+
if (isWrapped && this.nip59Wrapper && this.nip59PrivateKey) {
|
|
45
|
+
const wrapped = (0, nip59_claim_wrapper_1.deserializeWrappedClaim)(claimData.data);
|
|
46
|
+
parsed = this.nip59Wrapper.unwrapClaim(wrapped, this.nip59PrivateKey);
|
|
47
|
+
}
|
|
48
|
+
else if (isWrapped) {
|
|
49
|
+
return this.createReject('Received NIP-59 wrapped claim but unwrapping not configured');
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
parsed = JSON.parse(claimData.data.toString('utf8'));
|
|
53
|
+
}
|
|
34
54
|
(0, btp_claim_types_1.validateClaimMessage)(parsed);
|
|
35
55
|
claim = parsed;
|
|
36
56
|
}
|
|
@@ -42,13 +62,35 @@ class InboundClaimValidator {
|
|
|
42
62
|
}, 'Rejecting ILP PREPARE: invalid claim structure');
|
|
43
63
|
return this.createReject(`Invalid claim structure: ${error instanceof Error ? error.message : String(error)}`);
|
|
44
64
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
65
|
+
if ((0, btp_claim_types_1.isEVMClaim)(claim)) {
|
|
66
|
+
return this.verifyEVMClaim(claim, peerId);
|
|
67
|
+
}
|
|
68
|
+
this.logger.warn({
|
|
69
|
+
event: 'inbound_claim_unsupported_chain',
|
|
70
|
+
peerId,
|
|
71
|
+
blockchain: claim.blockchain,
|
|
72
|
+
}, 'Rejecting ILP PREPARE: signature verification not yet supported for this blockchain');
|
|
73
|
+
return this.createReject(`Signature verification not yet supported for blockchain: ${claim.blockchain}`);
|
|
74
|
+
}
|
|
75
|
+
async verifyEVMClaim(claim, peerId) {
|
|
76
|
+
let balanceProof;
|
|
77
|
+
try {
|
|
78
|
+
balanceProof = {
|
|
79
|
+
channelId: claim.channelId,
|
|
80
|
+
nonce: claim.nonce,
|
|
81
|
+
transferredAmount: BigInt(claim.transferredAmount),
|
|
82
|
+
lockedAmount: BigInt(claim.lockedAmount),
|
|
83
|
+
locksRoot: claim.locksRoot,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
this.logger.warn({
|
|
88
|
+
event: 'inbound_claim_invalid_amount',
|
|
89
|
+
peerId,
|
|
90
|
+
channelId: claim.channelId,
|
|
91
|
+
}, 'Rejecting ILP PREPARE: invalid transferredAmount or lockedAmount for BigInt conversion');
|
|
92
|
+
return this.createReject('Invalid claim amounts');
|
|
93
|
+
}
|
|
52
94
|
let signatureValid;
|
|
53
95
|
try {
|
|
54
96
|
if (claim.chainId !== undefined && claim.tokenNetworkAddress) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inbound-claim-validator.js","sourceRoot":"","sources":["../../src/btp/inbound-claim-validator.ts"],"names":[],"mappings":";;;AAeA,
|
|
1
|
+
{"version":3,"file":"inbound-claim-validator.js","sourceRoot":"","sources":["../../src/btp/inbound-claim-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/config/config-loader.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,eAAe,
|
|
1
|
+
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/config/config-loader.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,eAAe,EAYhB,MAAM,SAAS,CAAC;AAejB,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAQ5B;AAKD,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,OAAO,GAAE,MAAsE;CAI5F;AAuBD,qBAAa,YAAY;IAiBvB,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe;IA2DpD,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe;IA+DpD,OAAO,CAAC,MAAM,CAAC,eAAe;IAuB9B,OAAO,CAAC,MAAM,CAAC,oBAAoB;IA8CnC,OAAO,CAAC,MAAM,CAAC,wBAAwB;IAqDvC,OAAO,CAAC,MAAM,CAAC,4BAA4B;IA4C3C,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAiErC,OAAO,CAAC,MAAM,CAAC,aAAa;IA4D5B,OAAO,CAAC,MAAM,CAAC,cAAc;IA2D7B,OAAO,CAAC,MAAM,CAAC,aAAa;CA2B7B"}
|
|
@@ -76,6 +76,9 @@ class ConfigLoader {
|
|
|
76
76
|
mode: rawConfig.mode,
|
|
77
77
|
firstHopUrl: rawConfig.firstHopUrl,
|
|
78
78
|
btpAuthToken: rawConfig.btpAuthToken,
|
|
79
|
+
chainProviders: rawConfig.chainProviders,
|
|
80
|
+
deploymentMode: rawConfig.deploymentMode,
|
|
81
|
+
nip59: rawConfig.nip59,
|
|
79
82
|
};
|
|
80
83
|
(0, environment_validator_1.validateEnvironment)(connectorConfig);
|
|
81
84
|
return connectorConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/config/config-loader.ts"],"names":[],"mappings":";;;;AAUA,+CAAyB;AACzB,sDAAgC;
|
|
1
|
+
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/config/config-loader.ts"],"names":[],"mappings":"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"}
|
package/dist/config/types.d.ts
CHANGED
|
@@ -1,8 +1,14 @@
|
|
|
1
|
+
import type { ProviderConfig } from '../settlement/provider/payment-channel-provider';
|
|
2
|
+
export type ChainProviderConfigEntry = ProviderConfig & {
|
|
3
|
+
chainId: string;
|
|
4
|
+
};
|
|
1
5
|
export interface PeerConfig {
|
|
2
6
|
id: string;
|
|
3
7
|
url: string;
|
|
4
8
|
authToken: string;
|
|
5
9
|
evmAddress?: string;
|
|
10
|
+
chain?: string;
|
|
11
|
+
nip59PublicKey?: string;
|
|
6
12
|
}
|
|
7
13
|
export interface RouteConfig {
|
|
8
14
|
prefix: string;
|
|
@@ -18,9 +24,13 @@ export interface ConnectorConfig {
|
|
|
18
24
|
routes: RouteConfig[];
|
|
19
25
|
settlement?: SettlementConfig;
|
|
20
26
|
settlementInfra?: SettlementInfraConfig;
|
|
27
|
+
chainProviders?: ChainProviderConfigEntry[];
|
|
21
28
|
environment: Environment;
|
|
22
29
|
deploymentMode?: DeploymentMode;
|
|
23
30
|
blockchain?: BlockchainConfig;
|
|
31
|
+
nip59?: {
|
|
32
|
+
enabled: boolean;
|
|
33
|
+
};
|
|
24
34
|
security?: SecurityConfig;
|
|
25
35
|
mode?: 'connector' | 'gateway';
|
|
26
36
|
adminApi?: AdminApiConfig;
|
|
@@ -202,4 +212,9 @@ export interface AdminApiConfig {
|
|
|
202
212
|
allowedIPs?: string[];
|
|
203
213
|
trustProxy?: boolean;
|
|
204
214
|
}
|
|
215
|
+
interface ValidationLogger {
|
|
216
|
+
warn(obj: Record<string, unknown>, msg: string): void;
|
|
217
|
+
}
|
|
218
|
+
export declare function validateChainProviders(config: ConnectorConfig, logger?: ValidationLogger): void;
|
|
219
|
+
export {};
|
|
205
220
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
|
package/dist/config/types.js
CHANGED
|
@@ -1,10 +1,55 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SettlementState = void 0;
|
|
4
|
+
exports.validateChainProviders = validateChainProviders;
|
|
4
5
|
var SettlementState;
|
|
5
6
|
(function (SettlementState) {
|
|
6
7
|
SettlementState["IDLE"] = "IDLE";
|
|
7
8
|
SettlementState["SETTLEMENT_PENDING"] = "SETTLEMENT_PENDING";
|
|
8
9
|
SettlementState["SETTLEMENT_IN_PROGRESS"] = "SETTLEMENT_IN_PROGRESS";
|
|
9
10
|
})(SettlementState || (exports.SettlementState = SettlementState = {}));
|
|
11
|
+
const KNOWN_CHAIN_TYPES = new Set(['evm', 'solana', 'mina']);
|
|
12
|
+
const REQUIRED_FIELDS_BY_CHAIN_TYPE = {
|
|
13
|
+
evm: ['rpcUrl', 'registryAddress', 'keyId'],
|
|
14
|
+
solana: ['rpcUrl', 'programId', 'keyId'],
|
|
15
|
+
mina: ['graphqlUrl', 'zkAppAddress'],
|
|
16
|
+
};
|
|
17
|
+
function validateChainProviders(config, logger) {
|
|
18
|
+
const entries = config.chainProviders;
|
|
19
|
+
if (!entries || entries.length === 0) {
|
|
20
|
+
if (config.settlementInfra && logger) {
|
|
21
|
+
logger.warn({ event: 'config_deprecation' }, 'settlementInfra is deprecated. Migrate to chainProviders configuration.');
|
|
22
|
+
}
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
const seenChainIds = new Set();
|
|
26
|
+
for (const entry of entries) {
|
|
27
|
+
const rec = entry;
|
|
28
|
+
const chainType = rec.chainType;
|
|
29
|
+
if (!KNOWN_CHAIN_TYPES.has(chainType)) {
|
|
30
|
+
throw new Error(`Unknown chain type: ${chainType}`);
|
|
31
|
+
}
|
|
32
|
+
const chainId = rec.chainId;
|
|
33
|
+
if (!chainId) {
|
|
34
|
+
throw new Error(`Missing required field 'chainId' for chain type '${chainType}'`);
|
|
35
|
+
}
|
|
36
|
+
if (seenChainIds.has(chainId)) {
|
|
37
|
+
throw new Error(`Duplicate chainId: ${chainId}`);
|
|
38
|
+
}
|
|
39
|
+
seenChainIds.add(chainId);
|
|
40
|
+
const requiredFields = REQUIRED_FIELDS_BY_CHAIN_TYPE[chainType];
|
|
41
|
+
if (requiredFields) {
|
|
42
|
+
for (const field of requiredFields) {
|
|
43
|
+
if (!rec[field]) {
|
|
44
|
+
throw new Error(`Missing required field '${field}' for chain type '${chainType}' (chainId: ${chainId})`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
for (const peer of config.peers) {
|
|
50
|
+
if (peer.chain && !seenChainIds.has(peer.chain)) {
|
|
51
|
+
throw new Error(`Peer '${peer.id}' references unregistered chain: ${peer.chain}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
10
55
|
//# sourceMappingURL=types.js.map
|
package/dist/config/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":";;;AAovDA,wDA0DC;AAjvBD,IAAY,eAsBX;AAtBD,WAAY,eAAe;IAMzB,gCAAa,CAAA;IAOb,4DAAyC,CAAA;IAQzC,oEAAiD,CAAA;AACnD,CAAC,EAtBW,eAAe,+BAAf,eAAe,QAsB1B;AA+nBD,MAAM,iBAAiB,GAAwB,IAAI,GAAG,CAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AAG1F,MAAM,6BAA6B,GAAsC;IACvE,GAAG,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,OAAO,CAAC;IAC3C,MAAM,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC;IACxC,IAAI,EAAE,CAAC,YAAY,EAAE,cAAc,CAAC;CACrC,CAAC;AA2BF,SAAgB,sBAAsB,CAAC,MAAuB,EAAE,MAAyB;IACvF,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC;IAGtC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,MAAM,CAAC,eAAe,IAAI,MAAM,EAAE,CAAC;YACrC,MAAM,CAAC,IAAI,CACT,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAC/B,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QAED,OAAO;IACT,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IAEvC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAG5B,MAAM,GAAG,GAAG,KAA2C,CAAC;QACxD,MAAM,SAAS,GAAG,GAAG,CAAC,SAAmB,CAAC;QAE1C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,EAAE,CAAC,CAAC;QACtD,CAAC;QAGD,MAAM,OAAO,GAAG,GAAG,CAAC,OAA6B,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,oDAAoD,SAAS,GAAG,CAAC,CAAC;QACpF,CAAC;QAGD,IAAI,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,sBAAsB,OAAO,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAG1B,MAAM,cAAc,GAAG,6BAA6B,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,cAAc,EAAE,CAAC;YACnB,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;gBACnC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChB,MAAM,IAAI,KAAK,CACb,2BAA2B,KAAK,qBAAqB,SAAS,eAAe,OAAO,GAAG,CACxF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAGD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,EAAE,oCAAoC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connector-node.d.ts","sourceRoot":"","sources":["../../src/core/connector-node.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAI7D,OAAO,EACL,iBAAiB,EAIjB,gBAAgB,EAChB,eAAe,EAGhB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,eAAe,EAEf,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,EACR,kBAAkB,EAClB,SAAS,EACT,gBAAgB,EAChB,cAAc,
|
|
1
|
+
{"version":3,"file":"connector-node.d.ts","sourceRoot":"","sources":["../../src/core/connector-node.ts"],"names":[],"mappings":"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"}
|