@atxp/client 0.9.0 → 0.9.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/dist/types.d.ts CHANGED
@@ -12,6 +12,23 @@ export type ProspectivePayment = {
12
12
  amount: BigNumber;
13
13
  iss: string;
14
14
  };
15
+ /**
16
+ * Rich context provided when a payment fails
17
+ */
18
+ export interface PaymentFailureContext {
19
+ /** The payment that failed */
20
+ payment: ProspectivePayment;
21
+ /** The error that caused the failure */
22
+ error: Error;
23
+ /** Networks that were attempted for payment */
24
+ attemptedNetworks: string[];
25
+ /** Map of network to error for each failed attempt */
26
+ failureReasons: Map<string, Error>;
27
+ /** Whether the payment can be retried */
28
+ retryable: boolean;
29
+ /** Timestamp when the failure occurred */
30
+ timestamp: Date;
31
+ }
15
32
  export type ClientConfig = {
16
33
  mcpServer: string;
17
34
  account: Account;
@@ -37,10 +54,15 @@ export type ClientConfig = {
37
54
  }) => Promise<void>;
38
55
  onPayment: (args: {
39
56
  payment: ProspectivePayment;
57
+ transactionHash: string;
58
+ network: string;
40
59
  }) => Promise<void>;
41
- onPaymentFailure: (args: {
42
- payment: ProspectivePayment;
60
+ onPaymentFailure: (context: PaymentFailureContext) => Promise<void>;
61
+ /** Optional callback when a single payment attempt fails (before trying other networks) */
62
+ onPaymentAttemptFailed?: (args: {
63
+ network: string;
43
64
  error: Error;
65
+ remainingNetworks: string[];
44
66
  }) => Promise<void>;
45
67
  };
46
68
  type RequiredClientConfigFields = 'mcpServer' | 'account';
@@ -48,16 +70,6 @@ type RequiredClientConfig = Pick<ClientConfig, RequiredClientConfigFields>;
48
70
  type OptionalClientConfig = Omit<ClientConfig, RequiredClientConfigFields>;
49
71
  export type ClientArgs = RequiredClientConfig & Partial<OptionalClientConfig>;
50
72
  export type FetchWrapper = (config: ClientArgs) => FetchLike;
51
- export declare class InsufficientFundsError extends Error {
52
- readonly currency: Currency;
53
- readonly required: BigNumber;
54
- readonly available?: BigNumber | undefined;
55
- readonly network?: string | undefined;
56
- constructor(currency: Currency, required: BigNumber, available?: BigNumber | undefined, network?: string | undefined);
57
- }
58
- export declare class PaymentNetworkError extends Error {
59
- readonly originalError?: Error | undefined;
60
- constructor(message: string, originalError?: Error | undefined);
61
- }
73
+ export { ATXPPaymentError, InsufficientFundsError, TransactionRevertedError, UnsupportedCurrencyError, GasEstimationError, RpcError, UserRejectedError, PaymentServerError, PaymentExpiredError, PaymentNetworkError } from './errors.js';
62
74
  export type { Account, PaymentMaker };
63
75
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACzJ,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAGpE,MAAM,MAAM,GAAG,GAAG,KAAK,MAAM,EAAE,CAAC;AAEhC,KAAK,aAAa,GAAG,OAAO,CAAC;AAC7B,MAAM,MAAM,eAAe,GAAG,GAAG,aAAa,GAAG,MAAM,EAAE,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACb,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,GAAG,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAClD,2BAA2B,EAAE,sBAAsB,EAAE,CAAC;IACtD,cAAc,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,SAAS,CAAC;IACnB,iBAAiB,EAAE,SAAS,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,cAAc,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,CAAC,IAAI,EAAE;QAAE,mBAAmB,EAAE,sBAAsB,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtG,kBAAkB,EAAE,CAAC,IAAI,EAAE;QAAE,mBAAmB,EAAE,sBAAsB,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3H,SAAS,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,kBAAkB,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,gBAAgB,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,kBAAkB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1F,CAAA;AAGD,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;AAG9E,MAAM,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,SAAS,CAAC;AAE7D,qBAAa,sBAAuB,SAAQ,KAAK;aAE7B,QAAQ,EAAE,QAAQ;aAClB,QAAQ,EAAE,SAAS;aACnB,SAAS,CAAC,EAAE,SAAS;aACrB,OAAO,CAAC,EAAE,MAAM;gBAHhB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,SAAS,EACnB,SAAS,CAAC,EAAE,SAAS,YAAA,EACrB,OAAO,CAAC,EAAE,MAAM,YAAA;CAWnC;AAED,qBAAa,mBAAoB,SAAQ,KAAK;aACC,aAAa,CAAC,EAAE,KAAK;gBAAtD,OAAO,EAAE,MAAM,EAAkB,aAAa,CAAC,EAAE,KAAK,YAAA;CAInE;AAGD,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.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.9.0",
3
+ "version": "0.9.2",
4
4
  "description": "ATXP Client - MCP client with OAuth authentication and payment processing",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -33,7 +33,7 @@
33
33
  "pack:dry": "npm pack --dry-run"
34
34
  },
35
35
  "dependencies": {
36
- "@atxp/common": "0.9.0",
36
+ "@atxp/common": "0.9.2",
37
37
  "@modelcontextprotocol/sdk": "^1.15.0",
38
38
  "bignumber.js": "^9.3.0",
39
39
  "oauth4webapi": "^3.5.0"
@@ -49,7 +49,7 @@
49
49
  "@typescript-eslint/parser": "^8.38.0",
50
50
  "eslint": "^9.32.0",
51
51
  "fetch-mock": "^12.5.2",
52
- "happy-dom": "^15.11.6",
52
+ "happy-dom": "^20.0.11",
53
53
  "jsdom": "^25.0.1",
54
54
  "react-native-url-polyfill": "^2.0.0",
55
55
  "supertest": "^7.1.4",
package/dist/types.js DELETED
@@ -1,24 +0,0 @@
1
- class InsufficientFundsError extends Error {
2
- constructor(currency, required, available, network) {
3
- const availableText = available ? `, Available: ${available}` : '';
4
- const networkText = network ? ` on ${network}` : '';
5
- super(`Payment failed due to insufficient ${currency} funds${networkText}. ` +
6
- `Required: ${required}${availableText}. ` +
7
- `Please ensure your account has adequate balance before retrying.`);
8
- this.currency = currency;
9
- this.required = required;
10
- this.available = available;
11
- this.network = network;
12
- this.name = 'InsufficientFundsError';
13
- }
14
- }
15
- class PaymentNetworkError extends Error {
16
- constructor(message, originalError) {
17
- super(`Payment failed due to network error: ${message}`);
18
- this.originalError = originalError;
19
- this.name = 'PaymentNetworkError';
20
- }
21
- }
22
-
23
- export { InsufficientFundsError, PaymentNetworkError };
24
- //# sourceMappingURL=types.js.map
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sources":["../src/types.ts"],"sourcesContent":[null],"names":[],"mappings":"AAiDM,MAAO,sBAAuB,SAAQ,KAAK,CAAA;AAC/C,IAAA,WAAA,CACkB,QAAkB,EAClB,QAAmB,EACnB,SAAqB,EACrB,OAAgB,EAAA;AAEhC,QAAA,MAAM,aAAa,GAAG,SAAS,GAAG,CAAA,aAAA,EAAgB,SAAS,CAAA,CAAE,GAAG,EAAE;AAClE,QAAA,MAAM,WAAW,GAAG,OAAO,GAAG,CAAA,IAAA,EAAO,OAAO,CAAA,CAAE,GAAG,EAAE;AACnD,QAAA,KAAK,CACH,CAAA,mCAAA,EAAsC,QAAQ,CAAA,MAAA,EAAS,WAAW,CAAA,EAAA,CAAI;YACtE,CAAA,UAAA,EAAa,QAAQ,CAAA,EAAG,aAAa,CAAA,EAAA,CAAI;AACzC,YAAA,CAAA,gEAAA,CAAkE,CACnE;QAXe,IAAA,CAAA,QAAQ,GAAR,QAAQ;QACR,IAAA,CAAA,QAAQ,GAAR,QAAQ;QACR,IAAA,CAAA,SAAS,GAAT,SAAS;QACT,IAAA,CAAA,OAAO,GAAP,OAAO;AASvB,QAAA,IAAI,CAAC,IAAI,GAAG,wBAAwB;IACtC;AACD;AAEK,MAAO,mBAAoB,SAAQ,KAAK,CAAA;IAC5C,WAAA,CAAY,OAAe,EAAkB,aAAqB,EAAA;AAChE,QAAA,KAAK,CAAC,CAAA,qCAAA,EAAwC,OAAO,CAAA,CAAE,CAAC;QADb,IAAA,CAAA,aAAa,GAAb,aAAa;AAExD,QAAA,IAAI,CAAC,IAAI,GAAG,qBAAqB;IACnC;AACD;;;;"}