@argent/x-shared 1.30.1 → 1.31.1

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,11 +1,11 @@
1
1
  import { Address } from '../chains/starknet/address';
2
- import { OnchainRecovery } from './schema';
2
+ import { OnchainRecovery, StartOnchainRecovery } from './schema';
3
3
 
4
4
  /**
5
5
  * IOnchainRecoveryService interface
6
6
  */
7
7
  export interface IOnchainRecoveryService {
8
- startRecovery(address: Address, feeToken: Address, publicKey: string, privateKey: string): Promise<OnchainRecovery>;
8
+ startRecovery(address: Address, feeToken: Address, publicKey: string, privateKey: string): Promise<StartOnchainRecovery>;
9
9
  getRecovery(address: Address, recoveryId?: number): Promise<OnchainRecovery>;
10
10
  cancelRecovery(address: Address, feeToken: Address, publicKey: string, privateKey: string): Promise<void>;
11
11
  }
@@ -1,7 +1,7 @@
1
1
  import { Address } from '../chains/starknet/address';
2
2
  import { IHttpService } from '../http';
3
3
  import { IOnchainRecoveryService } from './IOnchainRecoveryService';
4
- import { OnchainRecovery } from './schema';
4
+ import { OnchainRecovery, StartOnchainRecovery } from './schema';
5
5
 
6
6
  /**
7
7
  * RecoveryService class implements IRecoveryService interface.
@@ -10,7 +10,29 @@ export declare class OnchainRecoveryService implements IOnchainRecoveryService {
10
10
  protected readonly apiBase: string;
11
11
  private readonly httpService;
12
12
  constructor(apiBase: string, httpService: IHttpService);
13
- startRecovery(address: Address, feeToken: Address, publicKey: string, privateKey: string): Promise<OnchainRecovery>;
13
+ /**
14
+ * Starts the recovery process for a given address.
15
+ * @param address - The address to recover.
16
+ * @param feeToken - The token to be used for the recovery fee.
17
+ * @param publicKey - The public key of the signer.
18
+ * @param privateKey - The private key of the signer.
19
+ * @returns A promise that resolves to the recovery details.
20
+ */
21
+ startRecovery(address: Address, feeToken: Address, publicKey: string, privateKey: string): Promise<StartOnchainRecovery>;
22
+ /**
23
+ * Retrieves the on-chain recovery details for a given address and recovery ID.
24
+ * If no recovery ID is provided, it retrieves the latest recovery details.
25
+ * @param address - The address to retrieve the recovery details for.
26
+ * @param recoveryId - (Optional) The recovery ID to retrieve the details for. If not provided, retrieves the latest recovery details.
27
+ * @returns A promise that resolves to the on-chain recovery details.
28
+ */
14
29
  getRecovery(address: Address, recoveryId?: number): Promise<OnchainRecovery>;
15
- cancelRecovery(address: Address, feeToken: Address, publicKey: string, privateKey: string): Promise<void>;
30
+ /**
31
+ * Cancels the on-chain recovery process for a given address.
32
+ * @param address - The address for which to cancel the recovery process.
33
+ * @param publicKey - The public key of the signer.
34
+ * @param privateKey - The private key of the signer.
35
+ * @returns A promise that resolves when the recovery process is successfully canceled.
36
+ */
37
+ cancelRecovery(address: Address, publicKey: string, privateKey: string): Promise<void>;
16
38
  }
@@ -1,5 +1,12 @@
1
1
  import { z } from 'zod';
2
2
 
3
+ export declare const startOnchainRecoverySchema: z.ZodObject<{
4
+ recoveryId: z.ZodNumber;
5
+ }, "strip", z.ZodTypeAny, {
6
+ recoveryId: number;
7
+ }, {
8
+ recoveryId: number;
9
+ }>;
3
10
  export declare const recoveryBodySchema: z.ZodObject<{
4
11
  feeToken: z.ZodEffects<z.ZodPipeline<z.ZodString, z.ZodEffects<z.ZodString, string, string>>, `0x${string}`, string>;
5
12
  signerSignature: z.ZodObject<{
@@ -55,17 +62,28 @@ export declare const recoveryBodySchema: z.ZodObject<{
55
62
  }>;
56
63
  export declare const recoveryStatusSchema: z.ZodEnum<["ONGOING", "COMPLETED", "ERROR", "CANCELLED", "AWAITING_FUNDS"]>;
57
64
  export declare const onchainRecoverySchema: z.ZodObject<{
58
- status: z.ZodEnum<["ONGOING", "COMPLETED", "ERROR", "CANCELLED", "AWAITING_FUNDS"]>;
65
+ status: z.ZodOptional<z.ZodEnum<["ONGOING", "COMPLETED", "ERROR", "CANCELLED", "AWAITING_FUNDS"]>>;
59
66
  recoveryId: z.ZodOptional<z.ZodNumber>;
60
- completionTime: z.ZodArray<z.ZodNumber, "many">;
67
+ completionTime: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
61
68
  }, "strip", z.ZodTypeAny, {
62
- status: "ONGOING" | "COMPLETED" | "ERROR" | "CANCELLED" | "AWAITING_FUNDS";
63
- completionTime: number[];
69
+ status?: "ONGOING" | "COMPLETED" | "ERROR" | "CANCELLED" | "AWAITING_FUNDS" | undefined;
64
70
  recoveryId?: number | undefined;
71
+ completionTime?: number[] | undefined;
65
72
  }, {
66
- status: "ONGOING" | "COMPLETED" | "ERROR" | "CANCELLED" | "AWAITING_FUNDS";
67
- completionTime: number[];
73
+ status?: "ONGOING" | "COMPLETED" | "ERROR" | "CANCELLED" | "AWAITING_FUNDS" | undefined;
68
74
  recoveryId?: number | undefined;
75
+ completionTime?: number[] | undefined;
69
76
  }>;
70
- export type RecoveryStatus = z.infer<typeof recoveryStatusSchema>;
77
+ export declare const startOnchainRecoveryErrorStatusSchema: z.ZodEnum<["undeployedAccount", "notEnoughToPayFees"]>;
78
+ export declare const startOnchainRecoveryErrorSchema: z.ZodObject<{
79
+ status: z.ZodEnum<["undeployedAccount", "notEnoughToPayFees"]>;
80
+ }, "strip", z.ZodTypeAny, {
81
+ status: "undeployedAccount" | "notEnoughToPayFees";
82
+ }, {
83
+ status: "undeployedAccount" | "notEnoughToPayFees";
84
+ }>;
85
+ export type StartOnchainRecovery = z.infer<typeof startOnchainRecoverySchema>;
71
86
  export type OnchainRecovery = z.infer<typeof onchainRecoverySchema>;
87
+ export type RecoveryStatus = z.infer<typeof recoveryStatusSchema>;
88
+ export type StartOnchainRecoveryError = z.infer<typeof startOnchainRecoveryErrorSchema>;
89
+ export type StartOnchainRecoveryErrorStatus = z.infer<typeof startOnchainRecoveryErrorStatusSchema>;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./schema-C-_pmcO7.js"),S=require("lodash-es");require("starknet");require("zod");require("@scure/base");const u=e=>e.map(l),l=e=>{var a,s,r,d;if(t.isActivitySummary(e))return t.activitySummarySchema.parse(e);const n=!!e.sent;if(e.token.type!=="ERC20"){const c={asset:{type:"nft",tokenAddress:e.token.address,tokenId:e.tokenId?parseInt(e.tokenId):0,amount:e.value,collectionName:e.token.name,collectionPreviewImage:(a=e.token.imageUrls)==null?void 0:a.preview,nftName:(s=e.tokenIdDetails)==null?void 0:s.name,nftPreviewImage:(d=(r=e.tokenIdDetails)==null?void 0:r.imageUrls)==null?void 0:d.preview},sent:n};return t.activitySummarySchema.parse(c)}const i={asset:{type:"token",tokenAddress:e.token.address,amount:e.value,fiatAmount:{currency:"USD",currencyAmount:e.usdValue||"0"}},sent:n};return t.activitySummarySchema.parse(i)};function m(e){var a,s;const n=(s=(a=e.transactions)==null?void 0:a[0].reviewOfTransaction)==null?void 0:s.reviews;return n?n.map(r=>r.action):void 0}function h({simulateAndReview:e,...n}){var a,s;const i={type:t.NativeActivityTypeNative,...n};if(e&&!S.isEmpty(e.transactions)){const r=e.transactions[e.transactions.length-1],d=(a=r.simulation)==null?void 0:a.summary;if(d){const y=u(d);i.transferSummary=y}const c=(s=r.reviewOfTransaction)==null?void 0:s.targetedDapp;c&&(i.dapp=c);const o=m(e);o&&(i.actions=o)}return t.nativeActivitySchema.parse(i)}function f(e){const n=p(e),i=g(e);return n||i}const p=e=>{var d;if(!((d=e.actions)!=null&&d.length))return!1;const n=e.actions[0];if(n.name!=="ERC20_transfer")return!1;let i,a,s,r;return n.defaultProperties&&n.defaultProperties.forEach(c=>{c.type==="token_address"&&c.token.address===t.ETH_TOKEN_ADDRESS&&(a=!0),c.type==="calldata"&&(i=c.calldata[0])}),n.properties.length>1&&n.properties.forEach(c=>{c.type==="amount"&&c.label==="ERC20_transfer_amount"&&c.amount==="0"&&(s=!0),c.type==="address"&&c.label==="ERC20_transfer_recipient"&&t.isEqualAddress(c.address,i)&&(r=!0)}),a&&s&&r},g=e=>{var n,i;return!!("meta"in e&&(i=(n=e.meta)==null?void 0:n.title)!=null&&i.includes("On-chain rejection"))};function A(e,n=!1){var i,a;if(e.type===t.NativeActivityTypeNative){if(n&&((i=e.meta)!=null&&i.shortTitle))return e.meta.shortTitle;if((a=e.meta)!=null&&a.title)return e.meta.title}else{if(f(e))return"On-chain rejection";if(e.title)return e.title}return"Contract interaction"}function k(e){return A(e,!0)}function T(e){return e.map(a=>a.lastModified).sort().pop()}const E=e=>{var i,a;return!!((a=(i=e.details)==null?void 0:i.calls)==null?void 0:a.some(s=>{var r,d,c;return(d=(r=s==null?void 0:s.details)==null?void 0:r.function)!=null&&d.name?((c=s==null?void 0:s.details)==null?void 0:c.function.name)==="lock_and_delegate_by_sig":!1}))},v=e=>{var n;return e.type==="multicall"&&"calls"in e.details&&((n=e.details.calls)==null?void 0:n.some(i=>{var a;return((a=i==null?void 0:i.details)==null?void 0:a.type)==="deploy"&&t.isEqualAddress((i==null?void 0:i.details.contractAddress)||"",e.wallet)}))};function N(e){const n=D(e),i=O(e);return n||i}const D=e=>{var i;if(!((i=e.actions)!=null&&i.length))return!1;const n=e.actions[0];if(n.name!=="account_upgrade")return!1;n.defaultProperties&&n.defaultProperties.forEach(a=>{if(a.type==="calldata"&&a.entrypoint==="upgrade")return!0})},O=e=>{var n,i;return!!("meta"in e&&(i=(n=e.meta)==null?void 0:n.title)!=null&&i.includes("Upgrade account"))};function R({activities:e,accountAddressesOnNetwork:n}){const i={};return e.forEach(a=>{const s=a.wallet,r=a.type==="deploy"?a.type:a.details.type==="security"?a.details.action:void 0;a.group==="security"&&t.includesAddress(s,n)&&r&&(i[r]=i[r]||[],t.includesAddress(s,i[r])||(i[r]=t.ensureArray(i[r]).concat(s))),v(a)&&(i.deploy=t.ensureArray(i.deploy).concat(s))}),i}function w({activities:e,accountAddressesOnNetwork:n,tokenAddressesOnNetwork:i,nftAddressesOnNetwork:a}){const s={tokenActivity:{accountAddresses:[],tokenAddresses:[]},nftActivity:{accountAddresses:[],tokenAddresses:[]}};return e.forEach(r=>{if(r.group==="finance"&&r.relatedAddresses){const d=r.transfers.some(c=>c.asset.type==="token");r.relatedAddresses.forEach(({type:c,address:o})=>{c==="token"?(t.includesAddress(o,i)&&(t.includesAddress(o,s.tokenActivity.tokenAddresses)||s.tokenActivity.tokenAddresses.push(o)),t.includesAddress(o,a)&&(t.includesAddress(o,s.nftActivity.tokenAddresses)||s.nftActivity.tokenAddresses.push(o))):c==="wallet"&&t.includesAddress(o,n)&&(d?t.includesAddress(o,s.tokenActivity.accountAddresses)||s.tokenActivity.accountAddresses.push(o):t.includesAddress(o,s.nftActivity.accountAddresses)||s.nftActivity.accountAddresses.push(o))})}}),s}const M=e=>{if(e.length===0)return null;const n=["critical","high","caution","info"];return e.reduce((i,a)=>{const s=n.indexOf(a.severity),r=n.indexOf(i.severity);return s<r?a:i},e[0])};exports.NativeActivityStatusCancelled=t.NativeActivityStatusCancelled;exports.NativeActivityStatusQueued=t.NativeActivityStatusQueued;exports.NativeActivityStatusRejected=t.NativeActivityStatusRejected;exports.NativeActivityTypeNative=t.NativeActivityTypeNative;exports.actionSchema=t.actionSchema;exports.activitiesSchema=t.activitiesSchema;exports.activityDappSchema=t.activityDappSchema;exports.activityDetailsSchema=t.activityDetailsSchema;exports.activityResponseSchema=t.activityResponseSchema;exports.activitySchema=t.activitySchema;exports.activitySummarySchema=t.activitySummarySchema;exports.activityTransferSchema=t.activityTransferSchema;exports.assessmentSchema=t.assessmentSchema;exports.enrichedSimulateAndReviewSchema=t.enrichedSimulateAndReviewSchema;exports.estimatedFeeSchema=t.estimatedFeeSchema;exports.estimatedFeesSchema=t.estimatedFeesSchema;exports.feeEstimationSchema=t.feeEstimationSchema;exports.feeSchema=t.feeSchema;exports.getMessageFromSimulationError=t.getMessageFromSimulationError;exports.isActivityDetailsAction=t.isActivityDetailsAction;exports.isActivitySummary=t.isActivitySummary;exports.isNftActivitySummary=t.isNftActivitySummary;exports.isNotTransactionSimulationError=t.isNotTransactionSimulationError;exports.isTokenActivitySummary=t.isTokenActivitySummary;exports.isTransactionSimulationError=t.isTransactionSimulationError;exports.nativeActivityMetaSchema=t.nativeActivityMetaSchema;exports.nativeActivitySchema=t.nativeActivitySchema;exports.propertySchema=t.propertySchema;exports.reasonsSchema=t.reasonsSchema;exports.reviewSchema=t.reviewSchema;exports.severitySchema=t.severitySchema;exports.simulateAndReviewSchema=t.simulateAndReviewSchema;exports.targetedDappSchema=t.targetedDappSchema;exports.warningDetailsSchema=t.warningDetailsSchema;exports.warningSchema=t.warningSchema;exports.createNativeActivity=h;exports.getAnyActivityShortTitle=k;exports.getAnyActivityTitle=A;exports.getHighestSeverity=M;exports.getOverallLastModified=T;exports.hasDelegationActivity=E;exports.isMulticallWithDeploymentActivity=v;exports.isRejectOnChainActivity=f;exports.isUpgradeActivity=N;exports.normalizeActions=m;exports.normalizeActivitySummary=l;exports.normalizeActivitySummaryCollection=u;exports.parseAccountActivities=R;exports.parseFinanceActivities=w;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./transactionVersion-CnOPxZEg.js"),h=require("lodash-es");require("starknet");require("zod");require("@scure/base");require("react");require("object-hash");require("swr");function d(e){return e.error?e.error:e.message&&e.code?`${e.code}: ${e.message}`:"Unknown error"}function p(e){if(!e)return;const n=e.transactions.flatMap(o=>i.isTransactionSimulationError(o)?o.simulationError:!1),t=n==null?void 0:n[n.length-1];if(!t)return;const s=d(t),a=t.message||t.error,r=i.getPrettyRpcError(a),u=r||t.label;return{message:r?a:s,label:u}}const l=e=>e.map(f),f=e=>{var s,a,r,u;if(i.isActivitySummary(e))return i.activitySummarySchema.parse(e);const n=!!e.sent;if(e.token.type!=="ERC20"){const c={asset:{type:"nft",tokenAddress:e.token.address,tokenId:e.tokenId?parseInt(e.tokenId):0,amount:e.value,collectionName:e.token.name,collectionPreviewImage:(s=e.token.imageUrls)==null?void 0:s.preview,nftName:(a=e.tokenIdDetails)==null?void 0:a.name,nftPreviewImage:(u=(r=e.tokenIdDetails)==null?void 0:r.imageUrls)==null?void 0:u.preview},sent:n};return i.activitySummarySchema.parse(c)}const t={asset:{type:"token",tokenAddress:e.token.address,amount:e.value,fiatAmount:{currency:"USD",currencyAmount:e.usdValue||"0"}},sent:n};return i.activitySummarySchema.parse(t)};function m(e){var s,a;const n=(a=(s=e.transactions)==null?void 0:s[0].reviewOfTransaction)==null?void 0:a.reviews;return n?n.map(r=>r.action):void 0}function g({simulateAndReview:e,...n}){var s,a;const t={type:i.NativeActivityTypeNative,...n};if(e&&!h.isEmpty(e.transactions)){const r=e.transactions[e.transactions.length-1],u=(s=r.simulation)==null?void 0:s.summary;if(u){const S=l(u);t.transferSummary=S}const c=(a=r.reviewOfTransaction)==null?void 0:a.targetedDapp;c&&(t.dapp=c);const o=m(e);o&&(t.actions=o)}return i.nativeActivitySchema.parse(t)}function A(e){const n=k(e),t=T(e);return n||t}const k=e=>{var u;if(!((u=e.actions)!=null&&u.length))return!1;const n=e.actions[0];if(n.name!=="ERC20_transfer")return!1;let t,s,a,r;return n.defaultProperties&&n.defaultProperties.forEach(c=>{c.type==="token_address"&&c.token.address===i.ETH_TOKEN_ADDRESS&&(s=!0),c.type==="calldata"&&(t=c.calldata[0])}),n.properties.length>1&&n.properties.forEach(c=>{c.type==="amount"&&c.label==="ERC20_transfer_amount"&&c.amount==="0"&&(a=!0),c.type==="address"&&c.label==="ERC20_transfer_recipient"&&i.isEqualAddress(c.address,t)&&(r=!0)}),s&&a&&r},T=e=>{var n,t;return!!("meta"in e&&(t=(n=e.meta)==null?void 0:n.title)!=null&&t.includes("On-chain rejection"))};function v(e,n=!1){var t,s;if(e.type===i.NativeActivityTypeNative){if(n&&((t=e.meta)!=null&&t.shortTitle))return e.meta.shortTitle;if((s=e.meta)!=null&&s.title)return e.meta.title}else{if(A(e))return"On-chain rejection";if(e.title)return e.title}return"Contract interaction"}function E(e){return v(e,!0)}function N(e){return e.map(s=>s.lastModified).sort().pop()}const O=e=>{var t,s;return!!((s=(t=e.details)==null?void 0:t.calls)==null?void 0:s.some(a=>{var r,u,c;return(u=(r=a==null?void 0:a.details)==null?void 0:r.function)!=null&&u.name?((c=a==null?void 0:a.details)==null?void 0:c.function.name)==="lock_and_delegate_by_sig":!1}))},y=e=>{var n;return e.type==="multicall"&&"calls"in e.details&&((n=e.details.calls)==null?void 0:n.some(t=>{var s;return((s=t==null?void 0:t.details)==null?void 0:s.type)==="deploy"&&i.isEqualAddress((t==null?void 0:t.details.contractAddress)||"",e.wallet)}))};function D(e){const n=M(e),t=R(e);return n||t}const M=e=>{var t;if(!((t=e.actions)!=null&&t.length))return!1;const n=e.actions[0];if(n.name!=="account_upgrade")return!1;n.defaultProperties&&n.defaultProperties.forEach(s=>{if(s.type==="calldata"&&s.entrypoint==="upgrade")return!0})},R=e=>{var n,t;return!!("meta"in e&&(t=(n=e.meta)==null?void 0:n.title)!=null&&t.includes("Upgrade account"))};function w({activities:e,accountAddressesOnNetwork:n}){const t={};return e.forEach(s=>{const a=s.wallet,r=s.type==="deploy"?s.type:s.details.type==="security"?s.details.action:void 0;s.group==="security"&&i.includesAddress(a,n)&&r&&(t[r]=t[r]||[],i.includesAddress(a,t[r])||(t[r]=i.ensureArray(t[r]).concat(a))),y(s)&&(t.deploy=i.ensureArray(t.deploy).concat(a))}),t}function _({activities:e,accountAddressesOnNetwork:n,tokenAddressesOnNetwork:t,nftAddressesOnNetwork:s}){const a={tokenActivity:{accountAddresses:[],tokenAddresses:[]},nftActivity:{accountAddresses:[],tokenAddresses:[]}};return e.forEach(r=>{if(r.group==="finance"&&r.relatedAddresses){const u=r.transfers.some(c=>c.asset.type==="token");r.relatedAddresses.forEach(({type:c,address:o})=>{c==="token"?(i.includesAddress(o,t)&&(i.includesAddress(o,a.tokenActivity.tokenAddresses)||a.tokenActivity.tokenAddresses.push(o)),i.includesAddress(o,s)&&(i.includesAddress(o,a.nftActivity.tokenAddresses)||a.nftActivity.tokenAddresses.push(o))):c==="wallet"&&i.includesAddress(o,n)&&(u?i.includesAddress(o,a.tokenActivity.accountAddresses)||a.tokenActivity.accountAddresses.push(o):i.includesAddress(o,a.nftActivity.accountAddresses)||a.nftActivity.accountAddresses.push(o))})}}),a}const j=e=>{if(e.length===0)return null;const n=["critical","high","caution","info"];return e.reduce((t,s)=>{const a=n.indexOf(s.severity),r=n.indexOf(t.severity);return a<r?s:t},e[0])};exports.NativeActivityStatusCancelled=i.NativeActivityStatusCancelled;exports.NativeActivityStatusQueued=i.NativeActivityStatusQueued;exports.NativeActivityStatusRejected=i.NativeActivityStatusRejected;exports.NativeActivityTypeNative=i.NativeActivityTypeNative;exports.actionSchema=i.actionSchema;exports.activitiesSchema=i.activitiesSchema;exports.activityDappSchema=i.activityDappSchema;exports.activityDetailsSchema=i.activityDetailsSchema;exports.activityResponseSchema=i.activityResponseSchema;exports.activitySchema=i.activitySchema;exports.activitySummarySchema=i.activitySummarySchema;exports.activityTransferSchema=i.activityTransferSchema;exports.assessmentSchema=i.assessmentSchema;exports.enrichedSimulateAndReviewSchema=i.enrichedSimulateAndReviewSchema;exports.estimatedFeeSchema=i.estimatedFeeSchema;exports.estimatedFeesSchema=i.estimatedFeesSchema;exports.feeEstimationSchema=i.feeEstimationSchema;exports.feeSchema=i.feeSchema;exports.isActivityDetailsAction=i.isActivityDetailsAction;exports.isActivitySummary=i.isActivitySummary;exports.isNftActivitySummary=i.isNftActivitySummary;exports.isNotTransactionSimulationError=i.isNotTransactionSimulationError;exports.isTokenActivitySummary=i.isTokenActivitySummary;exports.isTransactionSimulationError=i.isTransactionSimulationError;exports.nativeActivityMetaSchema=i.nativeActivityMetaSchema;exports.nativeActivitySchema=i.nativeActivitySchema;exports.propertySchema=i.propertySchema;exports.reasonsSchema=i.reasonsSchema;exports.reviewSchema=i.reviewSchema;exports.severitySchema=i.severitySchema;exports.simulateAndReviewSchema=i.simulateAndReviewSchema;exports.targetedDappSchema=i.targetedDappSchema;exports.warningDetailsSchema=i.warningDetailsSchema;exports.warningSchema=i.warningSchema;exports.createNativeActivity=g;exports.getAnyActivityShortTitle=E;exports.getAnyActivityTitle=v;exports.getErrorMessageAndLabelFromSimulation=p;exports.getHighestSeverity=j;exports.getMessageFromSimulationError=d;exports.getOverallLastModified=N;exports.hasDelegationActivity=O;exports.isMulticallWithDeploymentActivity=y;exports.isRejectOnChainActivity=A;exports.isUpgradeActivity=D;exports.normalizeActions=m;exports.normalizeActivitySummary=f;exports.normalizeActivitySummaryCollection=l;exports.parseAccountActivities=w;exports.parseFinanceActivities=_;
@@ -1,14 +1,32 @@
1
- import { b1 as m, b2 as u, b3 as l, b4 as h, E as v, h as p, T as f, t as d } from "./schema-3qaq9ugL.mjs";
2
- import { bc as G, bd as K, bb as Q, bm as V, be as Z, b7 as J, b6 as X, bf as Y, b9 as $, b5 as I, bn as ee, bs as te, bj as ne, bk as se, D as ie, b8 as ae, bu as re, bg as oe, bi as ce, bt as fe, bh as ue, G as de, ba as le, bl as pe, bw as Ae, bq as me, bv as he, F as ve, br as Se, bo as ye, bp as be } from "./schema-3qaq9ugL.mjs";
3
- import { isEmpty as S } from "lodash-es";
1
+ import { Q as m, aZ as h, bR as v, bS as u, bT as l, bU as S, I as g, h as p, a0 as f, v as d } from "./transactionVersion-DpP30aO1.mjs";
2
+ import { c0 as G, c1 as J, b$ as I, ca as ee, c2 as te, bX as se, bW as ne, c3 as ie, bZ as ae, bV as re, cb as oe, cg as ce, c7 as fe, c8 as ue, K as de, bY as le, c4 as pe, c6 as Ae, ch as me, c5 as he, b_ as ve, c9 as Se, cj as ge, ce as ye, ci as ke, P as Ee, cf as Oe, cc as Te, cd as be } from "./transactionVersion-DpP30aO1.mjs";
3
+ import { isEmpty as y } from "lodash-es";
4
4
  import "starknet";
5
5
  import "zod";
6
6
  import "@scure/base";
7
- const y = (e) => e.map(b), b = (e) => {
8
- var s, i, a, c;
9
- if (m(e))
7
+ import "react";
8
+ import "object-hash";
9
+ import "swr";
10
+ function k(e) {
11
+ return e.error ? e.error : e.message && e.code ? `${e.code}: ${e.message}` : "Unknown error";
12
+ }
13
+ function P(e) {
14
+ if (!e)
15
+ return;
16
+ const s = e.transactions.flatMap((o) => m(o) ? o.simulationError : !1), t = s == null ? void 0 : s[s.length - 1];
17
+ if (!t)
18
+ return;
19
+ const n = k(t), i = t.message || t.error, a = h(i), c = a || t.label;
20
+ return {
21
+ message: a ? i : n,
22
+ label: c
23
+ };
24
+ }
25
+ const E = (e) => e.map(O), O = (e) => {
26
+ var n, i, a, c;
27
+ if (v(e))
10
28
  return u.parse(e);
11
- const n = !!e.sent;
29
+ const s = !!e.sent;
12
30
  if (e.token.type !== "ERC20") {
13
31
  const r = {
14
32
  asset: {
@@ -17,11 +35,11 @@ const y = (e) => e.map(b), b = (e) => {
17
35
  tokenId: e.tokenId ? parseInt(e.tokenId) : 0,
18
36
  amount: e.value,
19
37
  collectionName: e.token.name,
20
- collectionPreviewImage: (s = e.token.imageUrls) == null ? void 0 : s.preview,
38
+ collectionPreviewImage: (n = e.token.imageUrls) == null ? void 0 : n.preview,
21
39
  nftName: (i = e.tokenIdDetails) == null ? void 0 : i.name,
22
40
  nftPreviewImage: (c = (a = e.tokenIdDetails) == null ? void 0 : a.imageUrls) == null ? void 0 : c.preview
23
41
  },
24
- sent: n
42
+ sent: s
25
43
  };
26
44
  return u.parse(r);
27
45
  }
@@ -35,116 +53,116 @@ const y = (e) => e.map(b), b = (e) => {
35
53
  currencyAmount: e.usdValue || "0"
36
54
  }
37
55
  },
38
- sent: n
56
+ sent: s
39
57
  };
40
58
  return u.parse(t);
41
59
  };
42
- function g(e) {
43
- var s, i;
44
- const n = (i = (s = e.transactions) == null ? void 0 : s[0].reviewOfTransaction) == null ? void 0 : i.reviews;
45
- return n ? n.map((a) => a.action) : void 0;
60
+ function T(e) {
61
+ var n, i;
62
+ const s = (i = (n = e.transactions) == null ? void 0 : n[0].reviewOfTransaction) == null ? void 0 : i.reviews;
63
+ return s ? s.map((a) => a.action) : void 0;
46
64
  }
47
- function U({ simulateAndReview: e, ...n }) {
48
- var s, i;
65
+ function W({ simulateAndReview: e, ...s }) {
66
+ var n, i;
49
67
  const t = {
50
68
  type: l,
51
- ...n
69
+ ...s
52
70
  };
53
- if (e && !S(e.transactions)) {
54
- const a = e.transactions[e.transactions.length - 1], c = (s = a.simulation) == null ? void 0 : s.summary;
71
+ if (e && !y(e.transactions)) {
72
+ const a = e.transactions[e.transactions.length - 1], c = (n = a.simulation) == null ? void 0 : n.summary;
55
73
  if (c) {
56
- const A = y(c);
74
+ const A = E(c);
57
75
  t.transferSummary = A;
58
76
  }
59
77
  const r = (i = a.reviewOfTransaction) == null ? void 0 : i.targetedDapp;
60
78
  r && (t.dapp = r);
61
- const o = g(e);
79
+ const o = T(e);
62
80
  o && (t.actions = o);
63
81
  }
64
- return h.parse(t);
82
+ return S.parse(t);
65
83
  }
66
- function k(e) {
67
- const n = E(e), t = T(e);
68
- return n || t;
84
+ function b(e) {
85
+ const s = D(e), t = M(e);
86
+ return s || t;
69
87
  }
70
- const E = (e) => {
88
+ const D = (e) => {
71
89
  var c;
72
90
  if (!((c = e.actions) != null && c.length))
73
91
  return !1;
74
- const n = e.actions[0];
75
- if (n.name !== "ERC20_transfer")
92
+ const s = e.actions[0];
93
+ if (s.name !== "ERC20_transfer")
76
94
  return !1;
77
- let t, s, i, a;
78
- return n.defaultProperties && n.defaultProperties.forEach((r) => {
79
- r.type === "token_address" && r.token.address === v && (s = !0), r.type === "calldata" && (t = r.calldata[0]);
80
- }), n.properties.length > 1 && n.properties.forEach((r) => {
95
+ let t, n, i, a;
96
+ return s.defaultProperties && s.defaultProperties.forEach((r) => {
97
+ r.type === "token_address" && r.token.address === g && (n = !0), r.type === "calldata" && (t = r.calldata[0]);
98
+ }), s.properties.length > 1 && s.properties.forEach((r) => {
81
99
  r.type === "amount" && r.label === "ERC20_transfer_amount" && r.amount === "0" && (i = !0), r.type === "address" && r.label === "ERC20_transfer_recipient" && p(r.address, t) && (a = !0);
82
- }), s && i && a;
83
- }, T = (e) => {
84
- var n, t;
85
- return !!("meta" in e && (t = (n = e.meta) == null ? void 0 : n.title) != null && t.includes("On-chain rejection"));
100
+ }), n && i && a;
101
+ }, M = (e) => {
102
+ var s, t;
103
+ return !!("meta" in e && (t = (s = e.meta) == null ? void 0 : s.title) != null && t.includes("On-chain rejection"));
86
104
  };
87
- function O(e, n = !1) {
88
- var t, s;
105
+ function R(e, s = !1) {
106
+ var t, n;
89
107
  if (e.type === l) {
90
- if (n && ((t = e.meta) != null && t.shortTitle))
108
+ if (s && ((t = e.meta) != null && t.shortTitle))
91
109
  return e.meta.shortTitle;
92
- if ((s = e.meta) != null && s.title)
110
+ if ((n = e.meta) != null && n.title)
93
111
  return e.meta.title;
94
112
  } else {
95
- if (k(e))
113
+ if (b(e))
96
114
  return "On-chain rejection";
97
115
  if (e.title)
98
116
  return e.title;
99
117
  }
100
118
  return "Contract interaction";
101
119
  }
102
- function C(e) {
103
- return O(e, !0);
120
+ function Z(e) {
121
+ return R(e, !0);
104
122
  }
105
- function x(e) {
106
- return e.map((s) => s.lastModified).sort().pop();
123
+ function $(e) {
124
+ return e.map((n) => n.lastModified).sort().pop();
107
125
  }
108
- const z = (e) => {
109
- var t, s;
110
- return !!((s = (t = e.details) == null ? void 0 : t.calls) == null ? void 0 : s.some((i) => {
126
+ const H = (e) => {
127
+ var t, n;
128
+ return !!((n = (t = e.details) == null ? void 0 : t.calls) == null ? void 0 : n.some((i) => {
111
129
  var a, c, r;
112
130
  return (c = (a = i == null ? void 0 : i.details) == null ? void 0 : a.function) != null && c.name ? ((r = i == null ? void 0 : i.details) == null ? void 0 : r.function.name) === "lock_and_delegate_by_sig" : !1;
113
131
  }));
114
- }, D = (e) => {
115
- var n;
116
- return e.type === "multicall" && "calls" in e.details && ((n = e.details.calls) == null ? void 0 : n.some((t) => {
117
- var s;
118
- return ((s = t == null ? void 0 : t.details) == null ? void 0 : s.type) === "deploy" && p((t == null ? void 0 : t.details.contractAddress) || "", e.wallet);
132
+ }, _ = (e) => {
133
+ var s;
134
+ return e.type === "multicall" && "calls" in e.details && ((s = e.details.calls) == null ? void 0 : s.some((t) => {
135
+ var n;
136
+ return ((n = t == null ? void 0 : t.details) == null ? void 0 : n.type) === "deploy" && p((t == null ? void 0 : t.details.contractAddress) || "", e.wallet);
119
137
  }));
120
138
  };
121
- function F(e) {
122
- const n = R(e), t = _(e);
123
- return n || t;
139
+ function K(e) {
140
+ const s = w(e), t = B(e);
141
+ return s || t;
124
142
  }
125
- const R = (e) => {
143
+ const w = (e) => {
126
144
  var t;
127
145
  if (!((t = e.actions) != null && t.length))
128
146
  return !1;
129
- const n = e.actions[0];
130
- if (n.name !== "account_upgrade")
147
+ const s = e.actions[0];
148
+ if (s.name !== "account_upgrade")
131
149
  return !1;
132
- n.defaultProperties && n.defaultProperties.forEach((s) => {
133
- if (s.type === "calldata" && s.entrypoint === "upgrade")
150
+ s.defaultProperties && s.defaultProperties.forEach((n) => {
151
+ if (n.type === "calldata" && n.entrypoint === "upgrade")
134
152
  return !0;
135
153
  });
136
- }, _ = (e) => {
137
- var n, t;
138
- return !!("meta" in e && (t = (n = e.meta) == null ? void 0 : n.title) != null && t.includes("Upgrade account"));
154
+ }, B = (e) => {
155
+ var s, t;
156
+ return !!("meta" in e && (t = (s = e.meta) == null ? void 0 : s.title) != null && t.includes("Upgrade account"));
139
157
  };
140
- function L({ activities: e, accountAddressesOnNetwork: n }) {
158
+ function Q({ activities: e, accountAddressesOnNetwork: s }) {
141
159
  const t = {};
142
- return e.forEach((s) => {
143
- const i = s.wallet, a = s.type === "deploy" ? s.type : s.details.type === "security" ? s.details.action : void 0;
144
- s.group === "security" && f(i, n) && a && (t[a] = t[a] || [], f(i, t[a]) || (t[a] = d(t[a]).concat(i))), D(s) && (t.deploy = d(t.deploy).concat(i));
160
+ return e.forEach((n) => {
161
+ const i = n.wallet, a = n.type === "deploy" ? n.type : n.details.type === "security" ? n.details.action : void 0;
162
+ n.group === "security" && f(i, s) && a && (t[a] = t[a] || [], f(i, t[a]) || (t[a] = d(t[a]).concat(i))), _(n) && (t.deploy = d(t.deploy).concat(i));
145
163
  }), t;
146
164
  }
147
- function q({ activities: e, accountAddressesOnNetwork: n, tokenAddressesOnNetwork: t, nftAddressesOnNetwork: s }) {
165
+ function V({ activities: e, accountAddressesOnNetwork: s, tokenAddressesOnNetwork: t, nftAddressesOnNetwork: n }) {
148
166
  const i = {
149
167
  tokenActivity: {
150
168
  accountAddresses: [],
@@ -159,68 +177,69 @@ function q({ activities: e, accountAddressesOnNetwork: n, tokenAddressesOnNetwor
159
177
  if (a.group === "finance" && a.relatedAddresses) {
160
178
  const c = a.transfers.some((r) => r.asset.type === "token");
161
179
  a.relatedAddresses.forEach(({ type: r, address: o }) => {
162
- r === "token" ? (f(o, t) && (f(o, i.tokenActivity.tokenAddresses) || i.tokenActivity.tokenAddresses.push(o)), f(o, s) && (f(o, i.nftActivity.tokenAddresses) || i.nftActivity.tokenAddresses.push(o))) : r === "wallet" && f(o, n) && (c ? f(o, i.tokenActivity.accountAddresses) || i.tokenActivity.accountAddresses.push(o) : f(o, i.nftActivity.accountAddresses) || i.nftActivity.accountAddresses.push(o));
180
+ r === "token" ? (f(o, t) && (f(o, i.tokenActivity.tokenAddresses) || i.tokenActivity.tokenAddresses.push(o)), f(o, n) && (f(o, i.nftActivity.tokenAddresses) || i.nftActivity.tokenAddresses.push(o))) : r === "wallet" && f(o, s) && (c ? f(o, i.tokenActivity.accountAddresses) || i.tokenActivity.accountAddresses.push(o) : f(o, i.nftActivity.accountAddresses) || i.nftActivity.accountAddresses.push(o));
163
181
  });
164
182
  }
165
183
  }), i;
166
184
  }
167
- const H = (e) => {
185
+ const q = (e) => {
168
186
  if (e.length === 0)
169
187
  return null;
170
- const n = ["critical", "high", "caution", "info"];
171
- return e.reduce((t, s) => {
172
- const i = n.indexOf(s.severity), a = n.indexOf(t.severity);
173
- return i < a ? s : t;
188
+ const s = ["critical", "high", "caution", "info"];
189
+ return e.reduce((t, n) => {
190
+ const i = s.indexOf(n.severity), a = s.indexOf(t.severity);
191
+ return i < a ? n : t;
174
192
  }, e[0]);
175
193
  };
176
194
  export {
177
195
  G as NativeActivityStatusCancelled,
178
- K as NativeActivityStatusQueued,
179
- Q as NativeActivityStatusRejected,
196
+ J as NativeActivityStatusQueued,
197
+ I as NativeActivityStatusRejected,
180
198
  l as NativeActivityTypeNative,
181
- V as actionSchema,
182
- Z as activitiesSchema,
183
- J as activityDappSchema,
184
- X as activityDetailsSchema,
185
- Y as activityResponseSchema,
186
- $ as activitySchema,
199
+ ee as actionSchema,
200
+ te as activitiesSchema,
201
+ se as activityDappSchema,
202
+ ne as activityDetailsSchema,
203
+ ie as activityResponseSchema,
204
+ ae as activitySchema,
187
205
  u as activitySummarySchema,
188
- I as activityTransferSchema,
189
- ee as assessmentSchema,
190
- U as createNativeActivity,
191
- te as enrichedSimulateAndReviewSchema,
192
- ne as estimatedFeeSchema,
193
- se as estimatedFeesSchema,
194
- ie as feeEstimationSchema,
195
- ae as feeSchema,
196
- C as getAnyActivityShortTitle,
197
- O as getAnyActivityTitle,
198
- H as getHighestSeverity,
199
- re as getMessageFromSimulationError,
200
- x as getOverallLastModified,
201
- z as hasDelegationActivity,
202
- oe as isActivityDetailsAction,
203
- m as isActivitySummary,
204
- D as isMulticallWithDeploymentActivity,
205
- ce as isNftActivitySummary,
206
- fe as isNotTransactionSimulationError,
207
- k as isRejectOnChainActivity,
208
- ue as isTokenActivitySummary,
209
- de as isTransactionSimulationError,
210
- F as isUpgradeActivity,
211
- le as nativeActivityMetaSchema,
212
- h as nativeActivitySchema,
213
- g as normalizeActions,
214
- b as normalizeActivitySummary,
215
- y as normalizeActivitySummaryCollection,
216
- L as parseAccountActivities,
217
- q as parseFinanceActivities,
218
- pe as propertySchema,
219
- Ae as reasonsSchema,
220
- me as reviewSchema,
221
- he as severitySchema,
222
- ve as simulateAndReviewSchema,
223
- Se as targetedDappSchema,
224
- ye as warningDetailsSchema,
206
+ re as activityTransferSchema,
207
+ oe as assessmentSchema,
208
+ W as createNativeActivity,
209
+ ce as enrichedSimulateAndReviewSchema,
210
+ fe as estimatedFeeSchema,
211
+ ue as estimatedFeesSchema,
212
+ de as feeEstimationSchema,
213
+ le as feeSchema,
214
+ Z as getAnyActivityShortTitle,
215
+ R as getAnyActivityTitle,
216
+ P as getErrorMessageAndLabelFromSimulation,
217
+ q as getHighestSeverity,
218
+ k as getMessageFromSimulationError,
219
+ $ as getOverallLastModified,
220
+ H as hasDelegationActivity,
221
+ pe as isActivityDetailsAction,
222
+ v as isActivitySummary,
223
+ _ as isMulticallWithDeploymentActivity,
224
+ Ae as isNftActivitySummary,
225
+ me as isNotTransactionSimulationError,
226
+ b as isRejectOnChainActivity,
227
+ he as isTokenActivitySummary,
228
+ m as isTransactionSimulationError,
229
+ K as isUpgradeActivity,
230
+ ve as nativeActivityMetaSchema,
231
+ S as nativeActivitySchema,
232
+ T as normalizeActions,
233
+ O as normalizeActivitySummary,
234
+ E as normalizeActivitySummaryCollection,
235
+ Q as parseAccountActivities,
236
+ V as parseFinanceActivities,
237
+ Se as propertySchema,
238
+ ge as reasonsSchema,
239
+ ye as reviewSchema,
240
+ ke as severitySchema,
241
+ Ee as simulateAndReviewSchema,
242
+ Oe as targetedDappSchema,
243
+ Te as warningDetailsSchema,
225
244
  be as warningSchema
226
245
  };