@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.
@@ -1 +1 @@
1
- {"version":3,"file":"atxpClient.d.ts","sourceRoot":"","sources":["../src/atxpClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGtD,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAInG,KAAK,0BAA0B,GAAG,WAAW,GAAG,SAAS,CAAC;AAC1D,KAAK,oBAAoB,GAAG,IAAI,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;AAC3E,KAAK,2BAA2B,GAAG,SAAS,GAAG,QAAQ,GAAG,mBAAmB,CAAC;AAY9E,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,2BAA2B,CAAC,CAkBnG,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,YAAY,CA8BhE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,UAAU,GAAG,6BAA6B,CAQxF;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlE"}
1
+ {"version":3,"file":"atxpClient.d.ts","sourceRoot":"","sources":["../src/atxpClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAGtD,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAInG,KAAK,0BAA0B,GAAG,WAAW,GAAG,SAAS,CAAC;AAC1D,KAAK,oBAAoB,GAAG,IAAI,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;AAC3E,KAAK,2BAA2B,GAAG,SAAS,GAAG,QAAQ,GAAG,mBAAmB,CAAC;AAY9E,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,2BAA2B,CAAC,CAmBnG,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,YAAY,CA8BhE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,UAAU,GAAG,6BAA6B,CAQxF;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlE"}
@@ -30,7 +30,8 @@ const DEFAULT_CLIENT_CONFIG = {
30
30
  onAuthorize: async () => { },
31
31
  onAuthorizeFailure: async () => { },
32
32
  onPayment: async () => { },
33
- onPaymentFailure: async () => { }
33
+ onPaymentFailure: async () => { },
34
+ onPaymentAttemptFailed: async () => { }
34
35
  };
35
36
  function buildClientConfig(args) {
36
37
  // Use fetchFn for oAuthChannelFetch if the latter isn't explicitly set
@@ -1 +1 @@
1
- {"version":3,"file":"atxpClient.js","sources":["../src/atxpClient.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atxpClient.js","sources":["../src/atxpClient.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { OAuthAuthenticationRequiredError, OAuthClient } from './oAuth.js';
2
2
  import { AccessToken, AuthorizationServerUrl, FetchLike, OAuthDb, PaymentRequest, Logger, Network, DestinationMaker, Account } from '@atxp/common';
3
- import type { PaymentMaker, ProspectivePayment, ClientConfig } from './types.js';
3
+ import type { PaymentMaker, ProspectivePayment, ClientConfig, PaymentFailureContext } from './types.js';
4
4
  import { McpError } from '@modelcontextprotocol/sdk/types.js';
5
5
  /**
6
6
  * Creates an ATXP fetch wrapper that handles OAuth authentication and payments.
@@ -30,10 +30,14 @@ export declare class ATXPFetcher {
30
30
  }) => Promise<void>;
31
31
  protected onPayment: (args: {
32
32
  payment: ProspectivePayment;
33
+ transactionHash: string;
34
+ network: string;
33
35
  }) => Promise<void>;
34
- protected onPaymentFailure: (args: {
35
- payment: ProspectivePayment;
36
+ protected onPaymentFailure: (context: PaymentFailureContext) => Promise<void>;
37
+ protected onPaymentAttemptFailed?: (args: {
38
+ network: string;
36
39
  error: Error;
40
+ remainingNetworks: string[];
37
41
  }) => Promise<void>;
38
42
  constructor(config: {
39
43
  account: Account;
@@ -57,10 +61,14 @@ export declare class ATXPFetcher {
57
61
  }) => Promise<void>;
58
62
  onPayment?: (args: {
59
63
  payment: ProspectivePayment;
64
+ transactionHash: string;
65
+ network: string;
60
66
  }) => Promise<void>;
61
- onPaymentFailure?: (args: {
62
- payment: ProspectivePayment;
67
+ onPaymentFailure?: (context: PaymentFailureContext) => Promise<void>;
68
+ onPaymentAttemptFailed?: (args: {
69
+ network: string;
63
70
  error: Error;
71
+ remainingNetworks: string[];
64
72
  }) => Promise<void>;
65
73
  });
66
74
  private defaultPaymentFailureHandler;
@@ -1 +1 @@
1
- {"version":3,"file":"atxpFetcher.d.ts","sourceRoot":"","sources":["../src/atxpFetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atxpFetcher.d.ts","sourceRoot":"","sources":["../src/atxpFetcher.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { OAuthAuthenticationRequiredError, OAuthClient } from './oAuth.js';
2
- import { PAYMENT_REQUIRED_ERROR_CODE, isSSEResponse, parseMcpMessages, parsePaymentRequests, paymentRequiredError, DEFAULT_AUTHORIZATION_SERVER, ConsoleLogger, getIsReactNative, createReactNativeSafeFetch } from '@atxp/common';
3
- import { InsufficientFundsError, PaymentNetworkError } from './types.js';
2
+ import { getErrorRecoveryHint, PAYMENT_REQUIRED_ERROR_CODE, isSSEResponse, parseMcpMessages, parsePaymentRequests, paymentRequiredError, DEFAULT_AUTHORIZATION_SERVER, ConsoleLogger, getIsReactNative, createReactNativeSafeFetch } from '@atxp/common';
3
+ import { InsufficientFundsError, ATXPPaymentError } from './errors.js';
4
4
  import { BigNumber } from 'bignumber.js';
5
5
 
6
6
  /**
@@ -24,27 +24,41 @@ function atxpFetch(config) {
24
24
  onAuthorize: config.onAuthorize,
25
25
  onAuthorizeFailure: config.onAuthorizeFailure,
26
26
  onPayment: config.onPayment,
27
- onPaymentFailure: config.onPaymentFailure
27
+ onPaymentFailure: config.onPaymentFailure,
28
+ onPaymentAttemptFailed: config.onPaymentAttemptFailed
28
29
  });
29
30
  return fetcher.fetch;
30
31
  }
31
32
  class ATXPFetcher {
32
33
  constructor(config) {
33
- this.defaultPaymentFailureHandler = async ({ payment, error }) => {
34
+ this.defaultPaymentFailureHandler = async (context) => {
35
+ const { payment, error, attemptedNetworks, retryable } = context;
36
+ const recoveryHint = getErrorRecoveryHint(error);
37
+ this.logger.info(`PAYMENT FAILED: ${recoveryHint.title}`);
38
+ this.logger.info(`Description: ${recoveryHint.description}`);
39
+ if (attemptedNetworks.length > 0) {
40
+ this.logger.info(`Attempted networks: ${attemptedNetworks.join(', ')}`);
41
+ }
42
+ this.logger.info(`Account: ${payment.accountId}`);
43
+ // Log actionable guidance
44
+ if (recoveryHint.actions.length > 0) {
45
+ this.logger.info(`What to do:`);
46
+ recoveryHint.actions.forEach((action, index) => {
47
+ this.logger.info(` ${index + 1}. ${action}`);
48
+ });
49
+ }
50
+ if (retryable) {
51
+ this.logger.info(`This payment can be retried.`);
52
+ }
53
+ // Log additional context for specific error types
34
54
  if (error instanceof InsufficientFundsError) {
35
- const networkText = error.network ? ` on ${error.network}` : '';
36
- this.logger.info(`PAYMENT FAILED: Insufficient ${error.currency} funds${networkText}`);
37
55
  this.logger.info(`Required: ${error.required} ${error.currency}`);
38
56
  if (error.available) {
39
57
  this.logger.info(`Available: ${error.available} ${error.currency}`);
40
58
  }
41
- this.logger.info(`Account: ${payment.accountId}`);
42
59
  }
43
- else if (error instanceof PaymentNetworkError) {
44
- this.logger.info(`PAYMENT FAILED: Network error: ${error.message}`);
45
- }
46
- else {
47
- this.logger.info(`PAYMENT FAILED: ${error.message}`);
60
+ else if (error instanceof ATXPPaymentError && error.context) {
61
+ this.logger.debug(`Error context: ${JSON.stringify(error.context)}`);
48
62
  }
49
63
  };
50
64
  this.handleMultiDestinationPayment = async (paymentRequest, paymentRequestUrl, paymentRequestId) => {
@@ -89,9 +103,11 @@ class ATXPFetcher {
89
103
  this.logger.info(`ATXP: payment request denied by callback function`);
90
104
  return false;
91
105
  }
92
- // Try each payment maker in order
106
+ // Try each payment maker in order, tracking attempts
93
107
  let lastPaymentError = null;
94
108
  let paymentAttempted = false;
109
+ const attemptedNetworks = [];
110
+ const failureReasons = new Map();
95
111
  for (const paymentMaker of this.account.paymentMakers) {
96
112
  try {
97
113
  // Pass all destinations to payment maker - it will filter and pick the one it can handle
@@ -103,7 +119,11 @@ class ATXPFetcher {
103
119
  paymentAttempted = true;
104
120
  // Payment was successful
105
121
  this.logger.info(`ATXP: made payment of ${firstDest.amount.toString()} ${firstDest.currency} on ${result.chain}: ${result.transactionId}`);
106
- await this.onPayment({ payment: prospectivePayment });
122
+ await this.onPayment({
123
+ payment: prospectivePayment,
124
+ transactionHash: result.transactionId,
125
+ network: result.chain
126
+ });
107
127
  // Submit payment to the server
108
128
  const jwt = await paymentMaker.generateJWT({ paymentRequestId, codeChallenge: '', accountId: this.account.accountId });
109
129
  const response = await this.sideChannelFetch(paymentRequestUrl.toString(), {
@@ -131,13 +151,41 @@ class ATXPFetcher {
131
151
  const typedError = error;
132
152
  paymentAttempted = true;
133
153
  lastPaymentError = typedError;
134
- this.logger.warn(`ATXP: payment maker failed: ${typedError.message}`);
135
- await this.onPaymentFailure({ payment: prospectivePayment, error: typedError });
154
+ // Extract network from error context if available
155
+ let network = 'unknown';
156
+ if (typedError instanceof ATXPPaymentError && typedError.context?.network) {
157
+ network = typeof typedError.context.network === 'string' ? typedError.context.network : 'unknown';
158
+ }
159
+ attemptedNetworks.push(network);
160
+ failureReasons.set(network, typedError);
161
+ this.logger.warn(`ATXP: payment maker failed on ${network}: ${typedError.message}`);
162
+ // Call optional per-attempt failure callback
163
+ if (this.onPaymentAttemptFailed) {
164
+ const remainingMakers = this.account.paymentMakers.length - (attemptedNetworks.length);
165
+ const remainingNetworks = remainingMakers > 0 ? ['next available'] : [];
166
+ await this.onPaymentAttemptFailed({
167
+ network,
168
+ error: typedError,
169
+ remainingNetworks
170
+ });
171
+ }
136
172
  // Continue to next payment maker
137
173
  }
138
174
  }
139
- // If payment was attempted but all failed, rethrow the last error
175
+ // If payment was attempted but all failed, create full context and call onPaymentFailure
140
176
  if (paymentAttempted && lastPaymentError) {
177
+ const isRetryable = lastPaymentError instanceof ATXPPaymentError
178
+ ? lastPaymentError.retryable
179
+ : true; // Default to retryable for unknown errors
180
+ const failureContext = {
181
+ payment: prospectivePayment,
182
+ error: lastPaymentError,
183
+ attemptedNetworks,
184
+ failureReasons,
185
+ retryable: isRetryable,
186
+ timestamp: new Date()
187
+ };
188
+ await this.onPaymentFailure(failureContext);
141
189
  throw lastPaymentError;
142
190
  }
143
191
  this.logger.info(`ATXP: no payment maker could handle these destinations`);
@@ -385,7 +433,7 @@ class ATXPFetcher {
385
433
  throw error;
386
434
  }
387
435
  };
388
- const { account, db, destinationMakers, fetchFn = fetch, sideChannelFetch = fetchFn, strict = true, allowInsecureRequests = process.env.NODE_ENV === 'development', allowedAuthorizationServers = [DEFAULT_AUTHORIZATION_SERVER], approvePayment = async () => true, logger = new ConsoleLogger(), onAuthorize = async () => { }, onAuthorizeFailure = async () => { }, onPayment = async () => { }, onPaymentFailure = async () => { } } = config;
436
+ const { account, db, destinationMakers, fetchFn = fetch, sideChannelFetch = fetchFn, strict = true, allowInsecureRequests = process.env.NODE_ENV === 'development', allowedAuthorizationServers = [DEFAULT_AUTHORIZATION_SERVER], approvePayment = async () => true, logger = new ConsoleLogger(), onAuthorize = async () => { }, onAuthorizeFailure = async () => { }, onPayment = async () => { }, onPaymentFailure, onPaymentAttemptFailed } = config;
389
437
  // Use React Native safe fetch if in React Native environment
390
438
  const safeFetchFn = getIsReactNative() ? createReactNativeSafeFetch(fetchFn) : fetchFn;
391
439
  const safeSideChannelFetch = getIsReactNative() ? createReactNativeSafeFetch(sideChannelFetch) : sideChannelFetch;
@@ -414,6 +462,7 @@ class ATXPFetcher {
414
462
  this.onAuthorizeFailure = onAuthorizeFailure;
415
463
  this.onPayment = onPayment;
416
464
  this.onPaymentFailure = onPaymentFailure || this.defaultPaymentFailureHandler;
465
+ this.onPaymentAttemptFailed = onPaymentAttemptFailed;
417
466
  }
418
467
  }
419
468
 
@@ -1 +1 @@
1
- {"version":3,"file":"atxpFetcher.js","sources":["../src/atxpFetcher.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atxpFetcher.js","sources":["../src/atxpFetcher.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AA0BA;;;;;;AAMG;AACG,SAAU,SAAS,CAAC,MAAoB,EAAA;AAC5C,IAAA,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC;QAC9B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,EAAE,EAAE,MAAM,CAAC,OAAO;QAClB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,gBAAgB,EAAE,MAAM,CAAC,iBAAiB;QAC1C,qBAAqB,EAAE,MAAM,CAAC,SAAS;QACvC,2BAA2B,EAAE,MAAM,CAAC,2BAA2B;QAC/D,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;QAC7C,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,sBAAsB,EAAE,MAAM,CAAC;AAChC,KAAA,CAAC;IACF,OAAO,OAAO,CAAC,KAAK;AACtB;MAEa,WAAW,CAAA;AActB,IAAA,WAAA,CAAY,MAgBX,EAAA;AAkDO,QAAA,IAAA,CAAA,4BAA4B,GAAG,OAAO,OAA8B,KAAI;YAC9E,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,OAAO;AAChE,YAAA,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC;YAEhD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,gBAAA,EAAmB,YAAY,CAAC,KAAK,CAAA,CAAE,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,aAAA,EAAgB,YAAY,CAAC,WAAW,CAAA,CAAE,CAAC;AAE5D,YAAA,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;AAChC,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,oBAAA,EAAuB,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAE,CAAC;YACzE;YAEA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,SAAA,EAAY,OAAO,CAAC,SAAS,CAAA,CAAE,CAAC;;YAGjD,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;AACnC,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,WAAA,CAAa,CAAC;gBAC/B,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,KAAI;AAC7C,oBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,EAAA,EAAK,KAAK,GAAG,CAAC,CAAA,EAAA,EAAK,MAAM,CAAA,CAAE,CAAC;AAC/C,gBAAA,CAAC,CAAC;YACJ;YAEA,IAAI,SAAS,EAAE;AACb,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,4BAAA,CAA8B,CAAC;YAClD;;AAGA,YAAA,IAAI,KAAK,YAAY,sBAAsB,EAAE;AAC3C,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,UAAA,EAAa,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAA,CAAE,CAAC;AACjE,gBAAA,IAAI,KAAK,CAAC,SAAS,EAAE;AACnB,oBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,WAAA,EAAc,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAA,CAAE,CAAC;gBACrE;YACF;iBAAO,IAAI,KAAK,YAAY,gBAAgB,IAAI,KAAK,CAAC,OAAO,EAAE;AAC7D,gBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA,CAAE,CAAC;YACtE;AACF,QAAA,CAAC;QAGS,IAAA,CAAA,6BAA6B,GAAG,OACxC,cAA8B,EAC9B,iBAAyB,EACzB,gBAAwB,KACJ;AACpB,YAAA,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;AAClE,gBAAA,OAAO,KAAK;YACd;;YAGA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;;;YAI/C,MAAM,kBAAkB,GAAkB,EAAE;AAC5C,YAAA,KAAK,MAAM,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE;AAC3C,gBAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;gBACnE,IAAI,CAAC,gBAAgB,EAAE;oBACrB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,qCAAA,EAAwC,MAAM,CAAC,OAAO,CAAA,wCAAA,CAA0C,CAAC;oBACnH;gBACF;gBACA,kBAAkB,CAAC,IAAI,CAAC,IAAI,MAAM,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC;YACvH;AAEA,YAAA,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;AACnC,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,yCAAA,CAA2C,CAAC;AAC7D,gBAAA,OAAO,KAAK;YACd;;AAGA,YAAA,KAAK,MAAM,IAAI,IAAI,kBAAkB,EAAE;gBACrC,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;AAC7B,oBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,yCAAA,EAA4C,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAA,CAAE,CAAC;gBACxG;YACF;;AAGA,YAAA,MAAM,SAAS,GAAG,kBAAkB,CAAC,CAAC,CAAC;AACvC,YAAA,MAAM,kBAAkB,GAAuB;AAC7C,gBAAA,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;gBACjC,WAAW,EAAE,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;AACtD,gBAAA,YAAY,EAAE,cAAc,CAAC,SAAS,IAAI,EAAE;gBAC5C,QAAQ,EAAE,SAAS,CAAC,QAAQ;gBAC5B,MAAM,EAAE,SAAS,CAAC,MAAM;AACxB,gBAAA,GAAG,EAAE,cAAc,CAAC,SAAS,IAAI,EAAE;aACpC;;YAGD,IAAI,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE;AAClD,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,iDAAA,CAAmD,CAAC;AACrE,gBAAA,OAAO,KAAK;YACd;;YAGA,IAAI,gBAAgB,GAAiB,IAAI;YACzC,IAAI,gBAAgB,GAAG,KAAK;YAC5B,MAAM,iBAAiB,GAAa,EAAE;AACtC,YAAA,MAAM,cAAc,GAAG,IAAI,GAAG,EAAiB;YAE/C,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;AACrD,gBAAA,IAAI;;AAEF,oBAAA,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,kBAAkB,EAAE,cAAc,CAAC,SAAS,IAAI,EAAE,EAAE,gBAAgB,CAAC;AAEnH,oBAAA,IAAI,MAAM,KAAK,IAAI,EAAE;AACnB,wBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,iEAAA,CAAmE,CAAC;AACtF,wBAAA,SAAS;oBACX;oBAEA,gBAAgB,GAAG,IAAI;;oBAGvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sBAAA,EAAyB,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA,CAAA,EAAI,SAAS,CAAC,QAAQ,CAAA,IAAA,EAAO,MAAM,CAAC,KAAK,CAAA,EAAA,EAAK,MAAM,CAAC,aAAa,CAAA,CAAE,CAAC;oBAE1I,MAAM,IAAI,CAAC,SAAS,CAAC;AACnB,wBAAA,OAAO,EAAE,kBAAkB;wBAC3B,eAAe,EAAE,MAAM,CAAC,aAAa;wBACrC,OAAO,EAAE,MAAM,CAAC;AACjB,qBAAA,CAAC;;oBAGF,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,EAAC,gBAAgB,EAAE,aAAa,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAC,CAAC;oBACpH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,QAAQ,EAAE,EAAE;AACzE,wBAAA,MAAM,EAAE,KAAK;AACb,wBAAA,OAAO,EAAE;4BACP,eAAe,EAAE,CAAA,OAAA,EAAU,GAAG,CAAA,CAAE;AAChC,4BAAA,cAAc,EAAE;AACjB,yBAAA;AACD,wBAAA,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;4BACnB,aAAa,EAAE,MAAM,CAAC,aAAa;AACnC,4BAAA,IAAI,MAAM,CAAC,gBAAgB,GAAG,EAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC;4BACjF,KAAK,EAAE,MAAM,CAAC,KAAK;4BACnB,QAAQ,EAAE,MAAM,CAAC;yBAClB;AACF,qBAAA,CAAC;AAEF,oBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,kBAAA,EAAqB,QAAQ,CAAC,EAAE,GAAG,cAAc,GAAG,kBAAkB,CAAA,QAAA,EAAW,iBAAiB,CAAA,UAAA,EAAa,QAAQ,CAAC,MAAM,CAAA,CAAA,EAAI,QAAQ,CAAC,UAAU,CAAA,CAAE,CAAC;AAE1K,oBAAA,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;AAChB,wBAAA,MAAM,GAAG,GAAG,CAAA,iBAAA,EAAoB,iBAAiB,iBAAiB,QAAQ,CAAC,MAAM,CAAA,CAAA,EAAI,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE;AAC5G,wBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;AACrB,wBAAA,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC;oBACtB;AAEA,oBAAA,OAAO,IAAI;gBACb;gBAAE,OAAO,KAAc,EAAE;oBACvB,MAAM,UAAU,GAAG,KAAc;oBACjC,gBAAgB,GAAG,IAAI;oBACvB,gBAAgB,GAAG,UAAU;;oBAG7B,IAAI,OAAO,GAAG,SAAS;oBACvB,IAAI,UAAU,YAAY,gBAAgB,IAAI,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE;wBACzE,OAAO,GAAG,OAAO,UAAU,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,GAAG,SAAS;oBACnG;AAEA,oBAAA,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;AAC/B,oBAAA,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC;AAEvC,oBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,8BAAA,EAAiC,OAAO,CAAA,EAAA,EAAK,UAAU,CAAC,OAAO,CAAA,CAAE,CAAC;;AAGnF,oBAAA,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC/B,wBAAA,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,IAAI,iBAAiB,CAAC,MAAM,CAAC;AACtF,wBAAA,MAAM,iBAAiB,GAAG,eAAe,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,EAAE;wBACvE,MAAM,IAAI,CAAC,sBAAsB,CAAC;4BAChC,OAAO;AACP,4BAAA,KAAK,EAAE,UAAU;4BACjB;AACD,yBAAA,CAAC;oBACJ;;gBAGF;YACF;;AAGA,YAAA,IAAI,gBAAgB,IAAI,gBAAgB,EAAE;AACxC,gBAAA,MAAM,WAAW,GAAG,gBAAgB,YAAY;sBAC5C,gBAAgB,CAAC;AACnB,sBAAE,IAAI,CAAC;AAET,gBAAA,MAAM,cAAc,GAA0B;AAC5C,oBAAA,OAAO,EAAE,kBAAkB;AAC3B,oBAAA,KAAK,EAAE,gBAAgB;oBACvB,iBAAiB;oBACjB,cAAc;AACd,oBAAA,SAAS,EAAE,WAAW;oBACtB,SAAS,EAAE,IAAI,IAAI;iBACpB;AAED,gBAAA,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC;AAC3C,gBAAA,MAAM,gBAAgB;YACxB;AAEA,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sDAAA,CAAwD,CAAC;AAC1E,YAAA,OAAO,KAAK;AACd,QAAA,CAAC;AAES,QAAA,IAAA,CAAA,yBAAyB,GAAG,OAAO,mBAA6B,KAAsB;AAC9F,YAAA,IAAI,mBAAmB,CAAC,IAAI,KAAK,2BAA2B,EAAE;gBAC5D,MAAM,IAAI,KAAK,CAAC,CAAA,4CAAA,EAA+C,2BAA2B,CAAA,YAAA,EAAe,mBAAmB,CAAC,IAAI,CAAA,CAAE,CAAC;YACtI;AACA,YAAA,MAAM,iBAAiB,GAAI,mBAAmB,CAAC,IAA8C,EAAE,iBAAiB;YAChH,IAAI,CAAC,iBAAiB,EAAE;AACtB,gBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,0EAAA,CAA4E,CAAC;YAC/F;AACA,YAAA,MAAM,gBAAgB,GAAI,mBAAmB,CAAC,IAA6C,EAAE,gBAAgB;YAC7G,IAAI,CAAC,gBAAgB,EAAE;AACrB,gBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,qEAAA,CAAuE,CAAC;YAC1F;YACA,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,EAAE;AAChD,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,uDAAA,CAAyD,CAAC;AAC3E,gBAAA,OAAO,KAAK;YACd;YAEA,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC;YACtE,IAAI,CAAC,cAAc,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,CAAA,sBAAA,EAAyB,gBAAgB,CAAA,qBAAA,EAAwB,iBAAiB,CAAA,CAAE,CAAC;YACvG;;AAGA,YAAA,IAAI,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC/D,OAAO,IAAI,CAAC,6BAA6B,CAAC,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,CAAC;YAChG;;AAGA,YAAA,MAAM,IAAI,KAAK,CAAC,CAAA,oDAAA,CAAsD,CAAC;AACzE,QAAA,CAAC;AAES,QAAA,IAAA,CAAA,iBAAiB,GAAG,OAAO,iBAAyB,KAAoC;YAChG,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;AAChE,YAAA,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE;AACjB,gBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,UAAA,EAAa,iBAAiB,CAAA,SAAA,EAAY,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,UAAU,CAAA,CAAE,CAAC;YACvG;AACA,YAAA,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,IAAI,EAAoB;;AAG/D,YAAA,IAAI,cAAc,CAAC,OAAO,EAAE;AAC1B,gBAAA,KAAK,MAAM,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE;AAC3C,oBAAA,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE;wBAC1E,MAAM,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;oBAC9C;gBACF;YACF;AAEA,YAAA,OAAO,cAAc;AACvB,QAAA,CAAC;AAES,QAAA,IAAA,CAAA,mBAAmB,GAAG,CAAC,GAAiB,KAAa;AAC7D,YAAA,MAAM,MAAM,GAAG,OAAO,GAAG,KAAK,QAAQ,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG;AAC3D,YAAA,MAAM,OAAO,GAAG,MAAM,CAAC,MAAgC;YACvD,OAAO,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,OAAO,CAAC;AAC3D,QAAA,CAAC;AAES,QAAA,IAAA,CAAA,+BAA+B,GAAG,OAAO,gBAAqB,EAAE,YAA0B,KAAqB;YACvH,MAAM,aAAa,GAAG,gBAAgB,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACzE,IAAI,CAAC,aAAa,EAAE;AAClB,gBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,2BAAA,CAA6B,CAAC;YAChD;YAEA,IAAI,CAAC,YAAY,EAAE;gBACjB,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM;AAC3D,gBAAA,MAAM,IAAI,KAAK,CAAC,mEAAmE,iBAAiB,CAAA,8EAAA,CAAgF,CAAC;YACvL;;AAGA,YAAA,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE;gBAC7B,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM;AAC3D,gBAAA,MAAM,IAAI,KAAK,CAAC,+EAA+E,iBAAiB,CAAA,uLAAA,CAAyL,CAAC;YAC5S;YAEA,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,EAAC,gBAAgB,EAAE,EAAE,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAC,CAAC;;;;;;;;;;AAWzI,YAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAC,iBAAiB,EAAE;AAC1F,gBAAA,MAAM,EAAE,KAAK;AACb,gBAAA,QAAQ,EAAE,QAAQ;AAClB,gBAAA,OAAO,EAAE;oBACP,eAAe,EAAE,CAAA,OAAA,EAAU,SAAS,CAAA;AACrC;AACF,aAAA,CAAC;;;AAGF,YAAA,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG,EAAE;gBACnD,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;gBACjD,IAAI,QAAQ,EAAE;oBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,6DAAA,EAAgE,QAAQ,CAAA,CAAE,CAAC;AAC7F,oBAAA,OAAO,QAAQ;gBACjB;qBAAO;AACL,oBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sFAAA,CAAwF,CAAC;gBAC5G;YACF;;AAEA,YAAA,IAAI,QAAQ,CAAC,EAAE,EAAE;;AAEf,gBAAA,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE;AAClC,gBAAA,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ;gBACjC,IAAI,WAAW,EAAE;oBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,gEAAA,EAAmE,WAAW,CAAA,CAAE,CAAC;AACnG,oBAAA,OAAO,WAAW;gBACpB;qBAAO;AACL,oBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,mFAAA,CAAqF,CAAC;gBACzG;YACF;;YAGA,MAAM,IAAI,KAAK,CAAC,CAAA,uDAAA,EAA0D,QAAQ,CAAC,MAAM,CAAA,CAAE,CAAC;AAC9F,QAAA,CAAC;AAES,QAAA,IAAA,CAAA,aAAa,GAAG,OAAO,KAAuC,KAAmB;;YAEzF,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;AACzC,gBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,gFAAA,CAAkF,CAAC;YACrG;YAEA,MAAM,YAAY,GAA6B,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;YAC5E,IAAI,YAAY,EAAE;;;AAGhB,gBAAA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAClE,KAAK,CAAC,GAAG,EACT,KAAK,CAAC,iBAAiB,CACxB;gBAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE;oBAC/C,MAAM,IAAI,KAAK,CAAC,CAAA,sBAAA,EAAyB,KAAK,CAAC,GAAG,yBAAyB,gBAAgB,CAAA,2DAAA,EAA8D,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAE,CAAC;gBACzM;AAEA,gBAAA,IAAI;oBACF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,gBAAgB,EAAE,YAAY,CAAC;;oBAE9F,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,WAAW,CAAC;;oBAGlD,MAAM,IAAI,CAAC,WAAW,CAAC;wBACrB,mBAAmB,EAAE,gBAAgB,CAAC,MAAgC;AACtE,wBAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;AACtB,qBAAA,CAAC;gBACJ;gBAAE,OAAO,SAAS,EAAE;;oBAElB,MAAM,IAAI,CAAC,kBAAkB,CAAC;wBAC5B,mBAAmB,EAAE,gBAAgB,CAAC,MAAgC;AACtE,wBAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;AAC9B,wBAAA,KAAK,EAAE;AACR,qBAAA,CAAC;AACF,oBAAA,MAAM,SAAS;gBACjB;YACF;iBAAO;;;;;AAKL,gBAAA,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;gBAC9E,IAAI,CAAC,aAAa,EAAE;AAClB,oBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,4FAAA,CAA8F,CAAC;AAChH,oBAAA,MAAM,KAAK;gBACb;AACA,gBAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,iBAAiB,CAAC;AACjF,gBAAA,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,iBAAiB,EAAE,QAAQ,CAAC;YACpF;AACF,QAAA,CAAC;AAES,QAAA,IAAA,CAAA,aAAa,GAAG,OAAO,OAAoB,EAAE,cAAsB,KAA0B;;YAErG,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC;AACxC,YAAA,KAAK,CAAC,WAAW,GAAG,cAAc;AAClC,YAAA,OAAO,KAAK;AACd,QAAA,CAAC;AAES,QAAA,IAAA,CAAA,oBAAoB,GAAG,OAAO,QAAkB,KAAmB;AAC3E,YAAA,MAAM,cAAc,GAAG,QAAQ,CAAC,KAAK,EAAE;AACvC,YAAA,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE;AACxC,YAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;gBACrB;YACF;YAEA,IAAI,eAAe,GAAgD,EAAE;AACrE,YAAA,IAAI;;AAEF,gBAAA,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE;AACvB,oBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gFAAgF,CAAC;AACnG,oBAAA,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC;oBAC7C,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;gBACxG;qBAAO;oBACL,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAC7B,oBAAA,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC;oBAC7C,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;gBACxG;YACF;YAAE,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,+DAAA,EAAkE,KAAK,CAAA,CAAE,CAAC;AAC5F,gBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;YACzB;AAEA,YAAA,IAAG,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,CAAA,sHAAA,EAAyH,eAAe,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAE,CAAC;YAC1L;YACA,KAAK,MAAM,EAAC,GAAG,EAAE,EAAE,EAAC,IAAI,eAAe,EAAE;gBACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,kDAAA,EAAqD,GAAG,CAAA,kCAAA,CAAoC,CAAC;AAC9G,gBAAA,MAAM,oBAAoB,CAAC,GAAG,EAAE,EAAE,CAAC;YACrC;AACF,QAAA,CAAC;AAED,QAAA,IAAA,CAAA,KAAK,GAAc,OAAO,GAAG,EAAE,IAAI,KAAI;YACrC,IAAI,QAAQ,GAAoB,IAAI;YACpC,IAAI,UAAU,GAAiB,IAAI;AACnC,YAAA,IAAI;;AAEF,gBAAA,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;AAClD,gBAAA,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC;AACzC,gBAAA,OAAO,QAAQ;YACjB;YAAE,OAAO,KAAc,EAAE;gBACvB,UAAU,GAAG,KAAc;;AAG3B,gBAAA,IAAI,KAAK,YAAY,gCAAgC,EAAE;oBACrD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,sFAAA,EAAyF,KAAK,CAAC,iBAAiB,CAAA,CAAE,CAAC;AACpI,oBAAA,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;AAE/B,oBAAA,IAAI;;AAEF,wBAAA,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;AAClD,wBAAA,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC;AACzC,wBAAA,OAAO,QAAQ;oBACjB;oBAAE,OAAO,IAAI,EAAE;;;wBAGb,UAAU,GAAG,IAAa;oBAC5B;gBACF;;AAGA,gBAAA,MAAM,QAAQ,GAAI,UAAwC,EAAE,IAAI,KAAK,2BAA2B,GAAG,UAAsB,GAAG,IAAI;gBAEhI,IAAI,QAAQ,EAAE;AACZ,oBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,qDAAA,EAAyD,QAAQ,EAAE,IAA8C,EAAE,iBAAiB,CAAA,CAAE,CAAC;oBACxJ,IAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,EAAE;;AAEjD,wBAAA,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;AAClD,wBAAA,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC;oBAC3C;yBAAO;AACL,wBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,oDAAA,CAAsD,CAAC;oBAC1E;oBACA,IAAG,QAAQ,EAAE;AACX,wBAAA,OAAO,QAAQ;oBACjB;yBAAO;AACL,wBAAA,MAAM,IAAI,KAAK,CAAC,CAAA,4CAAA,CAA8C,CAAC;oBACjE;gBACF;;AAGA,gBAAA,MAAM,KAAK;YACb;AACF,QAAA,CAAC;AA3fC,QAAA,MAAM,EACJ,OAAO,EACP,EAAE,EACF,iBAAiB,EACjB,OAAO,GAAG,KAAK,EACf,gBAAgB,GAAG,OAAO,EAC1B,MAAM,GAAG,IAAI,EACb,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAC9D,2BAA2B,GAAG,CAAC,4BAA4B,CAAC,EAC5D,cAAc,GAAG,YAA8B,IAAI,EACnD,MAAM,GAAG,IAAI,aAAa,EAAE,EAC5B,WAAW,GAAG,cAAa,CAAC,EAC5B,kBAAkB,GAAG,cAAa,CAAC,EACnC,SAAS,GAAG,YAAW,EAAE,CAAC,EAC1B,gBAAgB,EAChB,sBAAsB,EACvB,GAAG,MAAM;;AAEV,QAAA,MAAM,WAAW,GAAG,gBAAgB,EAAE,GAAG,0BAA0B,CAAC,OAAO,CAAC,GAAG,OAAO;AACtF,QAAA,MAAM,oBAAoB,GAAG,gBAAgB,EAAE,GAAG,0BAA0B,CAAC,gBAAgB,CAAC,GAAG,gBAAgB;;;;AAKjH,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC;YACjC,MAAM,EAAE,OAAO,CAAC,SAAS;YACzB,EAAE;AACF,YAAA,WAAW,EAAE,kDAAkD;AAC/D,YAAA,QAAQ,EAAE,KAAK;AACf,YAAA,OAAO,EAAE,WAAW;AACpB,YAAA,gBAAgB,EAAE,oBAAoB;YACtC,MAAM;YACN,qBAAqB;AACrB,YAAA,MAAM,EAAE;AACT,SAAA,CAAC;AACF,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,QAAA,IAAI,CAAC,iBAAiB,GAAG,iBAAiB;AAC1C,QAAA,IAAI,CAAC,gBAAgB,GAAG,oBAAoB;AAC5C,QAAA,IAAI,CAAC,EAAE,GAAG,EAAE;AACZ,QAAA,IAAI,CAAC,2BAA2B,GAAG,2BAA2B;AAC9D,QAAA,IAAI,CAAC,cAAc,GAAG,cAAc;AACpC,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;AACpB,QAAA,IAAI,CAAC,WAAW,GAAG,WAAW;AAC9B,QAAA,IAAI,CAAC,kBAAkB,GAAG,kBAAkB;AAC5C,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS;QAC1B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,IAAI,IAAI,CAAC,4BAA4B;AAC7E,QAAA,IAAI,CAAC,sBAAsB,GAAG,sBAAsB;IACtD;AA6cD;;;;"}
@@ -0,0 +1,117 @@
1
+ import { Currency } from "@atxp/common";
2
+ /**
3
+ * Base class for all ATXP payment errors with structured error codes and actionable guidance
4
+ */
5
+ export declare abstract class ATXPPaymentError extends Error {
6
+ readonly context?: Record<string, unknown> | undefined;
7
+ abstract readonly code: string;
8
+ abstract readonly retryable: boolean;
9
+ abstract readonly actionableMessage: string;
10
+ constructor(message: string, context?: Record<string, unknown> | undefined);
11
+ }
12
+ /**
13
+ * Thrown when the user's wallet has insufficient funds for a payment
14
+ */
15
+ export declare class InsufficientFundsError extends ATXPPaymentError {
16
+ readonly currency: Currency;
17
+ readonly required: BigNumber;
18
+ readonly available?: BigNumber | undefined;
19
+ readonly network?: string | undefined;
20
+ readonly code = "INSUFFICIENT_FUNDS";
21
+ readonly retryable = true;
22
+ readonly actionableMessage: string;
23
+ constructor(currency: Currency, required: BigNumber, available?: BigNumber | undefined, network?: string | undefined);
24
+ }
25
+ /**
26
+ * Thrown when a blockchain transaction is reverted
27
+ */
28
+ export declare class TransactionRevertedError extends ATXPPaymentError {
29
+ readonly transactionHash: string;
30
+ readonly network: string;
31
+ readonly revertReason?: string | undefined;
32
+ readonly code = "TRANSACTION_REVERTED";
33
+ readonly retryable = false;
34
+ readonly actionableMessage: string;
35
+ constructor(transactionHash: string, network: string, revertReason?: string | undefined);
36
+ }
37
+ /**
38
+ * Thrown when an unsupported currency is requested
39
+ */
40
+ export declare class UnsupportedCurrencyError extends ATXPPaymentError {
41
+ readonly currency: string;
42
+ readonly network: string;
43
+ readonly supportedCurrencies: string[];
44
+ readonly code = "UNSUPPORTED_CURRENCY";
45
+ readonly retryable = false;
46
+ readonly actionableMessage: string;
47
+ constructor(currency: string, network: string, supportedCurrencies: string[]);
48
+ }
49
+ /**
50
+ * Thrown when gas estimation fails for a transaction
51
+ */
52
+ export declare class GasEstimationError extends ATXPPaymentError {
53
+ readonly network: string;
54
+ readonly reason?: string | undefined;
55
+ readonly code = "GAS_ESTIMATION_FAILED";
56
+ readonly retryable = true;
57
+ readonly actionableMessage = "Unable to estimate gas for this transaction. Ensure you have sufficient funds for both the payment amount and gas fees, then try again.";
58
+ constructor(network: string, reason?: string | undefined);
59
+ }
60
+ /**
61
+ * Thrown when RPC/network connectivity fails
62
+ */
63
+ export declare class RpcError extends ATXPPaymentError {
64
+ readonly network: string;
65
+ readonly rpcUrl?: string | undefined;
66
+ readonly originalError?: Error | undefined;
67
+ readonly code = "RPC_ERROR";
68
+ readonly retryable = true;
69
+ readonly actionableMessage = "Unable to connect to the blockchain network. Please check your internet connection and try again.";
70
+ constructor(network: string, rpcUrl?: string | undefined, originalError?: Error | undefined);
71
+ }
72
+ /**
73
+ * Thrown when the user rejects a transaction in their wallet
74
+ */
75
+ export declare class UserRejectedError extends ATXPPaymentError {
76
+ readonly network: string;
77
+ readonly code = "USER_REJECTED";
78
+ readonly retryable = true;
79
+ readonly actionableMessage = "You cancelled the transaction. To complete the payment, please approve the transaction in your wallet.";
80
+ constructor(network: string);
81
+ }
82
+ /**
83
+ * Thrown when the payment server returns an error
84
+ */
85
+ export declare class PaymentServerError extends ATXPPaymentError {
86
+ readonly statusCode: number;
87
+ readonly endpoint: string;
88
+ readonly serverMessage?: string | undefined;
89
+ readonly details?: unknown | undefined;
90
+ readonly code: string;
91
+ readonly retryable = true;
92
+ readonly actionableMessage = "The payment server encountered an error. Please try again in a few moments.";
93
+ constructor(statusCode: number, endpoint: string, serverMessage?: string | undefined, errorCode?: string, details?: unknown | undefined);
94
+ }
95
+ /**
96
+ * Thrown when a payment request has expired
97
+ */
98
+ export declare class PaymentExpiredError extends ATXPPaymentError {
99
+ readonly paymentRequestId: string;
100
+ readonly expiresAt?: Date | undefined;
101
+ readonly code = "PAYMENT_EXPIRED";
102
+ readonly retryable = false;
103
+ readonly actionableMessage = "This payment request has expired. Please make a new request to the service.";
104
+ constructor(paymentRequestId: string, expiresAt?: Date | undefined);
105
+ }
106
+ /**
107
+ * Generic network error for backward compatibility and uncategorized errors
108
+ */
109
+ export declare class PaymentNetworkError extends ATXPPaymentError {
110
+ readonly network: string;
111
+ readonly originalError?: Error | undefined;
112
+ readonly code = "NETWORK_ERROR";
113
+ readonly retryable = true;
114
+ readonly actionableMessage = "A network error occurred during payment processing. Please try again.";
115
+ constructor(network: string, message: string, originalError?: Error | undefined);
116
+ }
117
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
package/dist/errors.js ADDED
@@ -0,0 +1,152 @@
1
+ /**
2
+ * Base class for all ATXP payment errors with structured error codes and actionable guidance
3
+ */
4
+ class ATXPPaymentError extends Error {
5
+ constructor(message, context) {
6
+ super(message);
7
+ this.context = context;
8
+ this.name = this.constructor.name;
9
+ }
10
+ }
11
+ /**
12
+ * Thrown when the user's wallet has insufficient funds for a payment
13
+ */
14
+ class InsufficientFundsError extends ATXPPaymentError {
15
+ constructor(currency, required, available, network) {
16
+ const shortfall = available ? required.minus(available).toString() : required.toString();
17
+ const availableText = available ? `, Available: ${available}` : '';
18
+ const networkText = network ? ` on ${network}` : '';
19
+ super(`Payment failed due to insufficient ${currency} funds${networkText}. ` +
20
+ `Required: ${required}${availableText}. ` +
21
+ `Please ensure your account has adequate balance before retrying.`, { currency, required: required.toString(), available: available?.toString(), network, shortfall });
22
+ this.currency = currency;
23
+ this.required = required;
24
+ this.available = available;
25
+ this.network = network;
26
+ this.code = 'INSUFFICIENT_FUNDS';
27
+ this.retryable = true;
28
+ this.actionableMessage = available
29
+ ? `Add at least ${shortfall} ${currency} to your ${network} wallet and try again.`
30
+ : `Ensure your ${network} wallet has at least ${required} ${currency} and try again.`;
31
+ }
32
+ }
33
+ /**
34
+ * Thrown when a blockchain transaction is reverted
35
+ */
36
+ class TransactionRevertedError extends ATXPPaymentError {
37
+ constructor(transactionHash, network, revertReason) {
38
+ super(`Transaction ${transactionHash} reverted on ${network}${revertReason ? `: ${revertReason}` : ''}`, { transactionHash, network, revertReason });
39
+ this.transactionHash = transactionHash;
40
+ this.network = network;
41
+ this.revertReason = revertReason;
42
+ this.code = 'TRANSACTION_REVERTED';
43
+ this.retryable = false;
44
+ // Provide specific guidance based on revert reason
45
+ if (revertReason?.toLowerCase().includes('allowance')) {
46
+ this.actionableMessage = 'Approve token spending before making the payment. You may need to increase the token allowance.';
47
+ }
48
+ else if (revertReason?.toLowerCase().includes('balance')) {
49
+ this.actionableMessage = 'Ensure your wallet has sufficient token balance and native token for gas fees.';
50
+ }
51
+ else {
52
+ this.actionableMessage = 'The transaction was rejected by the blockchain. Check the transaction details on a block explorer and verify your wallet settings.';
53
+ }
54
+ }
55
+ }
56
+ /**
57
+ * Thrown when an unsupported currency is requested
58
+ */
59
+ class UnsupportedCurrencyError extends ATXPPaymentError {
60
+ constructor(currency, network, supportedCurrencies) {
61
+ super(`Currency ${currency} is not supported on ${network}`, { currency, network, supportedCurrencies });
62
+ this.currency = currency;
63
+ this.network = network;
64
+ this.supportedCurrencies = supportedCurrencies;
65
+ this.code = 'UNSUPPORTED_CURRENCY';
66
+ this.retryable = false;
67
+ this.actionableMessage = `Please use one of the supported currencies: ${supportedCurrencies.join(', ')}`;
68
+ }
69
+ }
70
+ /**
71
+ * Thrown when gas estimation fails for a transaction
72
+ */
73
+ class GasEstimationError extends ATXPPaymentError {
74
+ constructor(network, reason) {
75
+ super(`Failed to estimate gas on ${network}${reason ? `: ${reason}` : ''}`, { network, reason });
76
+ this.network = network;
77
+ this.reason = reason;
78
+ this.code = 'GAS_ESTIMATION_FAILED';
79
+ this.retryable = true;
80
+ this.actionableMessage = 'Unable to estimate gas for this transaction. Ensure you have sufficient funds for both the payment amount and gas fees, then try again.';
81
+ }
82
+ }
83
+ /**
84
+ * Thrown when RPC/network connectivity fails
85
+ */
86
+ class RpcError extends ATXPPaymentError {
87
+ constructor(network, rpcUrl, originalError) {
88
+ super(`RPC call failed on ${network}${rpcUrl ? ` (${rpcUrl})` : ''}`, { network, rpcUrl, originalError: originalError?.message });
89
+ this.network = network;
90
+ this.rpcUrl = rpcUrl;
91
+ this.originalError = originalError;
92
+ this.code = 'RPC_ERROR';
93
+ this.retryable = true;
94
+ this.actionableMessage = 'Unable to connect to the blockchain network. Please check your internet connection and try again.';
95
+ }
96
+ }
97
+ /**
98
+ * Thrown when the user rejects a transaction in their wallet
99
+ */
100
+ class UserRejectedError extends ATXPPaymentError {
101
+ constructor(network) {
102
+ super(`User rejected transaction on ${network}`, { network });
103
+ this.network = network;
104
+ this.code = 'USER_REJECTED';
105
+ this.retryable = true;
106
+ this.actionableMessage = 'You cancelled the transaction. To complete the payment, please approve the transaction in your wallet.';
107
+ }
108
+ }
109
+ /**
110
+ * Thrown when the payment server returns an error
111
+ */
112
+ class PaymentServerError extends ATXPPaymentError {
113
+ constructor(statusCode, endpoint, serverMessage, errorCode, details) {
114
+ super(`Payment server returned ${statusCode} from ${endpoint}${serverMessage ? `: ${serverMessage}` : ''}`, { statusCode, endpoint, serverMessage, errorCode, details });
115
+ this.statusCode = statusCode;
116
+ this.endpoint = endpoint;
117
+ this.serverMessage = serverMessage;
118
+ this.details = details;
119
+ this.retryable = true;
120
+ this.actionableMessage = 'The payment server encountered an error. Please try again in a few moments.';
121
+ this.code = errorCode || 'PAYMENT_SERVER_ERROR';
122
+ }
123
+ }
124
+ /**
125
+ * Thrown when a payment request has expired
126
+ */
127
+ class PaymentExpiredError extends ATXPPaymentError {
128
+ constructor(paymentRequestId, expiresAt) {
129
+ super(`Payment request ${paymentRequestId} has expired`, { paymentRequestId, expiresAt: expiresAt?.toISOString() });
130
+ this.paymentRequestId = paymentRequestId;
131
+ this.expiresAt = expiresAt;
132
+ this.code = 'PAYMENT_EXPIRED';
133
+ this.retryable = false;
134
+ this.actionableMessage = 'This payment request has expired. Please make a new request to the service.';
135
+ }
136
+ }
137
+ /**
138
+ * Generic network error for backward compatibility and uncategorized errors
139
+ */
140
+ class PaymentNetworkError extends ATXPPaymentError {
141
+ constructor(network, message, originalError) {
142
+ super(`Payment failed on ${network} network: ${message}`, { network, originalError: originalError?.message });
143
+ this.network = network;
144
+ this.originalError = originalError;
145
+ this.code = 'NETWORK_ERROR';
146
+ this.retryable = true;
147
+ this.actionableMessage = 'A network error occurred during payment processing. Please try again.';
148
+ }
149
+ }
150
+
151
+ export { ATXPPaymentError, GasEstimationError, InsufficientFundsError, PaymentExpiredError, PaymentNetworkError, PaymentServerError, RpcError, TransactionRevertedError, UnsupportedCurrencyError, UserRejectedError };
152
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sources":["../src/errors.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}