@atxp/client 0.2.12 → 0.2.14
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/atxpClient.d.ts.map +1 -1
- package/dist/atxpClient.js +11 -2
- package/dist/atxpClient.js.map +1 -1
- package/dist/baseAccount.d.ts +1 -0
- package/dist/baseAccount.d.ts.map +1 -1
- package/dist/baseAccount.js +9 -1
- package/dist/baseAccount.js.map +1 -1
- package/dist/basePaymentMaker.d.ts +10 -8
- package/dist/basePaymentMaker.d.ts.map +1 -1
- package/dist/basePaymentMaker.js +100 -90
- package/dist/basePaymentMaker.js.map +1 -1
- package/dist/solanaPaymentMaker.js +1 -1
- package/dist/solanaPaymentMaker.js.map +1 -1
- package/package.json +2 -2
package/dist/atxpClient.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atxpClient.d.ts","sourceRoot":"","sources":["../src/atxpClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAEnG,KAAK,0BAA0B,GAAG,WAAW,GAAG,SAAS,CAAC;AAC1D,KAAK,oBAAoB,GAAG,IAAI,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;AAC3E,KAAK,oBAAoB,GAAG,IAAI,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;AAC3E,MAAM,MAAM,UAAU,GAAG,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC9E,KAAK,2BAA2B,GAAG,SAAS,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"atxpClient.d.ts","sourceRoot":"","sources":["../src/atxpClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAEnG,KAAK,0BAA0B,GAAG,WAAW,GAAG,SAAS,CAAC;AAC1D,KAAK,oBAAoB,GAAG,IAAI,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;AAC3E,KAAK,oBAAoB,GAAG,IAAI,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;AAC3E,MAAM,MAAM,UAAU,GAAG,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC9E,KAAK,2BAA2B,GAAG,SAAS,GAAG,QAAQ,CAAC;AAYxD,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,2BAA2B,CAAC,CAiBnG,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,YAAY,CAehE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,UAAU,GAAG,6BAA6B,CAoBxF;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlE"}
|
package/dist/atxpClient.js
CHANGED
|
@@ -2,11 +2,20 @@ import { MemoryOAuthDb, ConsoleLogger, DEFAULT_AUTHORIZATION_SERVER } from "@atx
|
|
|
2
2
|
import { ATXPFetcher } from "./atxpFetcher.js";
|
|
3
3
|
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
|
|
4
4
|
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
|
5
|
+
// Detect if we're in a browser environment and bind fetch appropriately
|
|
6
|
+
const getFetch = () => {
|
|
7
|
+
if (typeof window !== 'undefined' && typeof window.fetch === 'function') {
|
|
8
|
+
// In browser, bind fetch to window to avoid "Illegal invocation" errors
|
|
9
|
+
return fetch.bind(window);
|
|
10
|
+
}
|
|
11
|
+
// In Node.js or other environments, use fetch as-is
|
|
12
|
+
return fetch;
|
|
13
|
+
};
|
|
5
14
|
export const DEFAULT_CLIENT_CONFIG = {
|
|
6
15
|
allowedAuthorizationServers: [DEFAULT_AUTHORIZATION_SERVER],
|
|
7
16
|
approvePayment: async (_p) => true,
|
|
8
|
-
fetchFn:
|
|
9
|
-
oAuthChannelFetch:
|
|
17
|
+
fetchFn: getFetch(),
|
|
18
|
+
oAuthChannelFetch: getFetch(),
|
|
10
19
|
allowHttp: false, // may be overridden in buildClientConfig by process.env.NODE_ENV
|
|
11
20
|
clientInfo: {
|
|
12
21
|
name: 'ATXPClient',
|
package/dist/atxpClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atxpClient.js","sourceRoot":"","sources":["../src/atxpClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAQnG,MAAM,CAAC,MAAM,qBAAqB,GAAsE;IACtG,2BAA2B,EAAE,CAAC,4BAA4B,CAAC;IAC3D,cAAc,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI;IAClC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"atxpClient.js","sourceRoot":"","sources":["../src/atxpClient.ts"],"names":[],"mappings":"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"}
|
package/dist/baseAccount.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseAccount.d.ts","sourceRoot":"","sources":["../src/baseAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"baseAccount.d.ts","sourceRoot":"","sources":["../src/baseAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAM7D,eAAO,MAAM,0BAA0B,+CAA+C,CAAC;AAEvF,qBAAa,WAAY,YAAW,OAAO;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE,CAAC;gBAEnC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG;CAoBrD"}
|
package/dist/baseAccount.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { privateKeyToAccount } from 'viem/accounts';
|
|
2
2
|
import { BasePaymentMaker } from './basePaymentMaker.js';
|
|
3
|
+
import { createWalletClient, http } from 'viem';
|
|
4
|
+
import { base } from 'viem/chains';
|
|
5
|
+
export const USDC_CONTRACT_ADDRESS_BASE = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"; // USDC on Base mainnet
|
|
3
6
|
export class BaseAccount {
|
|
4
7
|
constructor(baseRPCUrl, sourceSecretKey) {
|
|
5
8
|
if (!baseRPCUrl) {
|
|
@@ -10,8 +13,13 @@ export class BaseAccount {
|
|
|
10
13
|
}
|
|
11
14
|
const account = privateKeyToAccount(sourceSecretKey);
|
|
12
15
|
this.accountId = account.address;
|
|
16
|
+
const walletClient = createWalletClient({
|
|
17
|
+
account: account,
|
|
18
|
+
chain: base,
|
|
19
|
+
transport: http(baseRPCUrl),
|
|
20
|
+
});
|
|
13
21
|
this.paymentMakers = {
|
|
14
|
-
'base': new BasePaymentMaker(baseRPCUrl,
|
|
22
|
+
'base': new BasePaymentMaker(baseRPCUrl, walletClient),
|
|
15
23
|
};
|
|
16
24
|
}
|
|
17
25
|
}
|
package/dist/baseAccount.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseAccount.js","sourceRoot":"","sources":["../src/baseAccount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"baseAccount.js","sourceRoot":"","sources":["../src/baseAccount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC,MAAM,CAAC,MAAM,0BAA0B,GAAG,4CAA4C,CAAC,CAAC,uBAAuB;AAE/G,MAAM,OAAO,WAAW;IAItB,YAAY,UAAkB,EAAE,eAAoB;QAClD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,OAAO,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;QAErD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;QACjC,MAAM,YAAY,GAAG,kBAAkB,CAAC;YACtC,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC;SAC5B,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG;YACnB,MAAM,EAAE,IAAI,gBAAgB,CAAC,UAAU,EAAE,YAAY,CAAC;SACvD,CAAA;IACH,CAAC;CACF"}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
import type { PaymentMaker
|
|
1
|
+
import type { PaymentMaker } from './types.js';
|
|
2
2
|
import { Logger, Currency } from '@atxp/common';
|
|
3
|
+
import { WalletClient, PublicActions } from "viem";
|
|
4
|
+
type ExtendedWalletClient = WalletClient & PublicActions;
|
|
3
5
|
export declare class BasePaymentMaker implements PaymentMaker {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
generateJWT: ({ paymentRequestId, codeChallenge }: {
|
|
6
|
+
protected signingClient: ExtendedWalletClient;
|
|
7
|
+
protected logger: Logger;
|
|
8
|
+
constructor(baseRPCUrl: string, walletClient: WalletClient, logger?: Logger);
|
|
9
|
+
generateJWT({ paymentRequestId, codeChallenge }: {
|
|
9
10
|
paymentRequestId: string;
|
|
10
11
|
codeChallenge: string;
|
|
11
|
-
})
|
|
12
|
-
makePayment
|
|
12
|
+
}): Promise<string>;
|
|
13
|
+
makePayment(amount: BigNumber, currency: Currency, receiver: string): Promise<string>;
|
|
13
14
|
}
|
|
15
|
+
export {};
|
|
14
16
|
//# sourceMappingURL=basePaymentMaker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basePaymentMaker.d.ts","sourceRoot":"","sources":["../src/basePaymentMaker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"basePaymentMaker.d.ts","sourceRoot":"","sources":["../src/basePaymentMaker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAO,MAAM,YAAY,CAAC;AAEpD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAKL,YAAY,EACZ,aAAa,EACd,MAAM,MAAM,CAAC;AAMd,KAAK,oBAAoB,GAAG,YAAY,GAAG,aAAa,CAAC;AA6CzD,qBAAa,gBAAiB,YAAW,YAAY;IACnD,SAAS,CAAC,aAAa,EAAE,oBAAoB,CAAC;IAC9C,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEb,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM;IAerE,WAAW,CAAC,EAAC,gBAAgB,EAAE,aAAa,EAAC,EAAE;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAqClH,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA8D5F"}
|
package/dist/basePaymentMaker.js
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
import { InsufficientFundsError as InsufficientFundsErrorClass, PaymentNetworkError as PaymentNetworkErrorClass } from './types.js';
|
|
2
2
|
import { ConsoleLogger } from '@atxp/common';
|
|
3
|
-
import {
|
|
4
|
-
import { privateKeyToAccount } from "viem/accounts";
|
|
3
|
+
import { parseEther, publicActions, encodeFunctionData, } from "viem";
|
|
5
4
|
import { base } from "viem/chains";
|
|
6
5
|
import { BigNumber } from "bignumber.js";
|
|
7
|
-
|
|
6
|
+
import { USDC_CONTRACT_ADDRESS_BASE } from './baseAccount.js';
|
|
7
|
+
// Helper function to convert to base64url that works in both Node.js and browsers
|
|
8
|
+
function toBase64Url(data) {
|
|
9
|
+
// Convert string to base64
|
|
10
|
+
const base64 = typeof Buffer !== 'undefined'
|
|
11
|
+
? Buffer.from(data).toString('base64')
|
|
12
|
+
: btoa(data);
|
|
13
|
+
// Convert base64 to base64url
|
|
14
|
+
return base64.replace(/\+/g, '-').replace(/\//g, '_').replace(/=/g, '');
|
|
15
|
+
}
|
|
8
16
|
const USDC_DECIMALS = 6;
|
|
9
17
|
const ERC20_ABI = [
|
|
10
18
|
{
|
|
@@ -38,98 +46,100 @@ const ERC20_ABI = [
|
|
|
38
46
|
}
|
|
39
47
|
];
|
|
40
48
|
export class BasePaymentMaker {
|
|
41
|
-
constructor(baseRPCUrl,
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
// We encode the hex string itself (including 0x) as base64url
|
|
65
|
-
const signature = Buffer.from(signResult, 'utf8').toString('base64url');
|
|
66
|
-
return `${header}.${payload}.${signature}`;
|
|
49
|
+
constructor(baseRPCUrl, walletClient, logger) {
|
|
50
|
+
if (!baseRPCUrl) {
|
|
51
|
+
throw new Error('baseRPCUrl was empty');
|
|
52
|
+
}
|
|
53
|
+
if (!walletClient) {
|
|
54
|
+
throw new Error('walletClient was empty');
|
|
55
|
+
}
|
|
56
|
+
if (!walletClient.account) {
|
|
57
|
+
throw new Error('walletClient.account was empty');
|
|
58
|
+
}
|
|
59
|
+
this.signingClient = walletClient.extend(publicActions);
|
|
60
|
+
this.logger = logger ?? new ConsoleLogger();
|
|
61
|
+
}
|
|
62
|
+
async generateJWT({ paymentRequestId, codeChallenge }) {
|
|
63
|
+
const headerObj = { alg: 'ES256K' };
|
|
64
|
+
const payloadObj = {
|
|
65
|
+
sub: this.signingClient.account.address,
|
|
66
|
+
iss: 'accounts.atxp.ai',
|
|
67
|
+
aud: 'https://auth.atxp.ai',
|
|
68
|
+
iat: Math.floor(Date.now() / 1000),
|
|
69
|
+
exp: Math.floor(Date.now() / 1000) + 60 * 60,
|
|
70
|
+
...(codeChallenge ? { code_challenge: codeChallenge } : {}),
|
|
71
|
+
...(paymentRequestId ? { payment_request_id: paymentRequestId } : {}),
|
|
67
72
|
};
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
confirmations: 3 // Wait for 3 confirmations to ensure better propagation
|
|
105
|
-
});
|
|
106
|
-
if (receipt.status === 'reverted') {
|
|
107
|
-
throw new PaymentNetworkErrorClass(`Transaction reverted: ${hash}`, new Error('Transaction reverted on chain'));
|
|
108
|
-
}
|
|
109
|
-
this.logger.info(`Transaction confirmed: ${hash} in block ${receipt.blockNumber}`);
|
|
110
|
-
return hash;
|
|
73
|
+
const header = toBase64Url(JSON.stringify(headerObj));
|
|
74
|
+
const payload = toBase64Url(JSON.stringify(payloadObj));
|
|
75
|
+
const message = `${header}.${payload}`;
|
|
76
|
+
const messageBytes = typeof Buffer !== 'undefined'
|
|
77
|
+
? Buffer.from(message, 'utf8')
|
|
78
|
+
: new TextEncoder().encode(message);
|
|
79
|
+
const signResult = await this.signingClient.signMessage({
|
|
80
|
+
account: this.signingClient.account,
|
|
81
|
+
message: { raw: messageBytes },
|
|
82
|
+
});
|
|
83
|
+
// For ES256K, signature is typically 65 bytes (r,s,v)
|
|
84
|
+
// Server expects the hex signature string (with 0x prefix) to be base64url encoded
|
|
85
|
+
// This creates: base64url("0x6eb2565...") not base64url(rawBytes)
|
|
86
|
+
// Pass the hex string directly to toBase64Url which will UTF-8 encode and base64url it
|
|
87
|
+
const signature = toBase64Url(signResult);
|
|
88
|
+
const jwt = `${header}.${payload}.${signature}`;
|
|
89
|
+
this.logger.info(`Generated ES256K JWT: ${jwt}`);
|
|
90
|
+
return jwt;
|
|
91
|
+
}
|
|
92
|
+
async makePayment(amount, currency, receiver) {
|
|
93
|
+
if (currency.toUpperCase() !== 'USDC') {
|
|
94
|
+
throw new PaymentNetworkErrorClass('Only USDC currency is supported; received ' + currency);
|
|
95
|
+
}
|
|
96
|
+
this.logger.info(`Making payment of ${amount} ${currency} to ${receiver} on Base from ${this.signingClient.account.address}`);
|
|
97
|
+
try {
|
|
98
|
+
// Check balance before attempting payment
|
|
99
|
+
const balanceRaw = await this.signingClient.readContract({
|
|
100
|
+
address: USDC_CONTRACT_ADDRESS_BASE,
|
|
101
|
+
abi: ERC20_ABI,
|
|
102
|
+
functionName: 'balanceOf',
|
|
103
|
+
args: [this.signingClient.account.address],
|
|
104
|
+
});
|
|
105
|
+
const balance = new BigNumber(balanceRaw.toString()).dividedBy(10 ** USDC_DECIMALS);
|
|
106
|
+
if (balance.lt(amount)) {
|
|
107
|
+
this.logger.warn(`Insufficient ${currency} balance for payment. Required: ${amount}, Available: ${balance}`);
|
|
108
|
+
throw new InsufficientFundsErrorClass(currency, amount, balance, 'base');
|
|
111
109
|
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
110
|
+
// Convert amount to USDC units (6 decimals) as BigInt
|
|
111
|
+
const amountInUSDCUnits = BigInt(amount.multipliedBy(10 ** USDC_DECIMALS).toFixed(0));
|
|
112
|
+
const data = encodeFunctionData({
|
|
113
|
+
abi: ERC20_ABI,
|
|
114
|
+
functionName: "transfer",
|
|
115
|
+
args: [receiver, amountInUSDCUnits],
|
|
116
|
+
});
|
|
117
|
+
const hash = await this.signingClient.sendTransaction({
|
|
118
|
+
chain: base,
|
|
119
|
+
account: this.signingClient.account,
|
|
120
|
+
to: USDC_CONTRACT_ADDRESS_BASE,
|
|
121
|
+
data: data,
|
|
122
|
+
value: parseEther('0'),
|
|
123
|
+
});
|
|
124
|
+
// Wait for transaction confirmation with more blocks to ensure propagation
|
|
125
|
+
this.logger.info(`Waiting for transaction confirmation: ${hash}`);
|
|
126
|
+
const receipt = await this.signingClient.waitForTransactionReceipt({
|
|
127
|
+
hash: hash,
|
|
128
|
+
confirmations: 3 // Wait for 3 confirmations to ensure better propagation
|
|
129
|
+
});
|
|
130
|
+
if (receipt.status === 'reverted') {
|
|
131
|
+
throw new PaymentNetworkErrorClass(`Transaction reverted: ${hash}`, new Error('Transaction reverted on chain'));
|
|
118
132
|
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
throw new Error('Base RPC URL is required');
|
|
133
|
+
this.logger.info(`Transaction confirmed: ${hash} in block ${receipt.blockNumber}`);
|
|
134
|
+
return hash;
|
|
122
135
|
}
|
|
123
|
-
|
|
124
|
-
|
|
136
|
+
catch (error) {
|
|
137
|
+
if (error instanceof InsufficientFundsErrorClass || error instanceof PaymentNetworkErrorClass) {
|
|
138
|
+
throw error;
|
|
139
|
+
}
|
|
140
|
+
// Wrap other errors in PaymentNetworkError
|
|
141
|
+
throw new PaymentNetworkErrorClass(`Payment failed on Base network: ${error.message}`, error);
|
|
125
142
|
}
|
|
126
|
-
this.account = privateKeyToAccount(sourceSecretKey);
|
|
127
|
-
this.signingClient = createWalletClient({
|
|
128
|
-
account: this.account,
|
|
129
|
-
chain: base,
|
|
130
|
-
transport: http(baseRPCUrl),
|
|
131
|
-
}).extend(publicActions);
|
|
132
|
-
this.logger = logger ?? new ConsoleLogger();
|
|
133
143
|
}
|
|
134
144
|
}
|
|
135
145
|
//# sourceMappingURL=basePaymentMaker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basePaymentMaker.js","sourceRoot":"","sources":["../src/basePaymentMaker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,IAAI,2BAA2B,EAAE,mBAAmB,IAAI,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEpI,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAEL,
|
|
1
|
+
{"version":3,"file":"basePaymentMaker.js","sourceRoot":"","sources":["../src/basePaymentMaker.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,7 @@ export class SolanaPaymentMaker {
|
|
|
33
33
|
throw new PaymentNetworkError('Only USDC currency is supported; received ' + currency);
|
|
34
34
|
}
|
|
35
35
|
const receiverKey = new PublicKey(receiver);
|
|
36
|
-
this.logger.info(`Making payment of ${amount} ${currency} to ${receiver} on Solana`);
|
|
36
|
+
this.logger.info(`Making payment of ${amount} ${currency} to ${receiver} on Solana from ${this.source.publicKey.toBase58()}`);
|
|
37
37
|
try {
|
|
38
38
|
// Check balance before attempting payment
|
|
39
39
|
const tokenAccountAddress = await getAssociatedTokenAddress(USDC_MINT, this.source.publicKey);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solanaPaymentMaker.js","sourceRoot":"","sources":["../src/solanaPaymentMaker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAClH,OAAO,EAAE,cAAc,EAAE,qBAAqB,IAAI,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAC9F,OAAO,EAAE,UAAU,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,WAAW,EAAY,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,6DAA6D;AAC7D,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;AAEhF,MAAM,CAAC,MAAM,qBAAqB,GAAG,sBAAsB,CAAC;AAE5D,MAAM,OAAO,kBAAkB;IAK7B,YAAY,cAAsB,EAAE,eAAuB,EAAE,MAAe;QAY5E,gBAAW,GAAG,KAAK,EAAC,EAAC,gBAAgB,EAAE,aAAa,EAAoD,EAAmB,EAAE;YAC3H,yCAAyC;YACzC,qEAAqE;YACrE,sDAAsD;YACtD,MAAM,GAAG,GAAG;gBACV,GAAG,EAAE,KAAK;gBACV,GAAG,EAAE,SAAS;gBACd,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;gBACxE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;aACtE,CAAC;YACF,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACjD,IAAI,CAAC,CAAC,UAAU,YAAY,SAAS,CAAC,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,gBAAgB,IAAI,EAAE,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC;QAChH,CAAC,CAAA;QAED,gBAAW,GAAG,KAAK,EAAE,MAAiB,EAAE,QAAkB,EAAE,QAAgB,EAAmB,EAAE;YAC/F,IAAI,QAAQ,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;gBACtC,MAAM,IAAI,mBAAmB,CAAC,4CAA4C,GAAG,QAAQ,CAAC,CAAC;YACzF,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC;YAE5C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,MAAM,IAAI,QAAQ,OAAO,QAAQ,
|
|
1
|
+
{"version":3,"file":"solanaPaymentMaker.js","sourceRoot":"","sources":["../src/solanaPaymentMaker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atxp/client",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.14",
|
|
4
4
|
"description": "ATXP Client - MCP client with OAuth authentication and payment processing",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"test": "vitest run"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@atxp/common": "0.2.
|
|
25
|
+
"@atxp/common": "0.2.14",
|
|
26
26
|
"@modelcontextprotocol/sdk": "^1.15.0",
|
|
27
27
|
"@solana/pay": "^0.2.5",
|
|
28
28
|
"@solana/web3.js": "^1.98.1",
|