@0xsequence/sessions
Advanced tools
Comparing version 0.0.0-20240807210827 to 0.0.0-20240812142652
@@ -57,3 +57,3 @@ import { commons } from '@0xsequence/core'; | ||
digest: string; | ||
chainId: ethers.BigNumber; | ||
chainId: bigint; | ||
signature: string; | ||
@@ -60,0 +60,0 @@ }; |
import { commons } from '@0xsequence/core'; | ||
import { migrator } from '@0xsequence/migration'; | ||
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from "../tracker.js"; | ||
import { ethers } from 'ethers'; | ||
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from "../tracker.js"; | ||
export declare class CachedTracker implements migrator.PresignedMigrationTracker, ConfigTracker { | ||
@@ -41,3 +41,3 @@ private readonly tracker; | ||
digest: string; | ||
chainId: ethers.BigNumber; | ||
chainId: bigint; | ||
signature: string; | ||
@@ -44,0 +44,0 @@ }; |
import { commons } from '@0xsequence/core'; | ||
import { migrator } from '@0xsequence/migration'; | ||
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from "../tracker.js"; | ||
import { ethers } from 'ethers'; | ||
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from "../tracker.js"; | ||
export declare class DebugConfigTracker implements ConfigTracker, migrator.PresignedMigrationTracker { | ||
@@ -42,3 +42,3 @@ private readonly tracker; | ||
digest: string; | ||
chainId: ethers.BigNumber; | ||
chainId: bigint; | ||
signature: string; | ||
@@ -45,0 +45,0 @@ }; |
import { commons } from '@0xsequence/core'; | ||
import { migrator } from '@0xsequence/migration'; | ||
import { BigNumber, BigNumberish, ethers } from 'ethers'; | ||
import { ethers } from 'ethers'; | ||
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from "../tracker.js"; | ||
@@ -16,3 +16,3 @@ export declare function isDedupedTracker(tracker: any): tracker is DedupedTracker; | ||
}): Promise<commons.config.Config | undefined>; | ||
getMigration(address: string, fromImageHash: string, fromVersion: number, chainId: BigNumberish): Promise<migrator.SignedMigration | undefined>; | ||
getMigration(address: string, fromImageHash: string, fromVersion: number, chainId: ethers.BigNumberish): Promise<migrator.SignedMigration | undefined>; | ||
saveMigration(address: string, signed: migrator.SignedMigration, contexts: commons.context.VersionedContext): Promise<void>; | ||
@@ -28,3 +28,3 @@ loadPresignedConfiguration(args: { | ||
digest: string; | ||
chainId: BigNumberish; | ||
chainId: ethers.BigNumberish; | ||
signatures: string[]; | ||
@@ -51,7 +51,7 @@ }): Promise<void>; | ||
digest: string; | ||
chainId: BigNumber; | ||
chainId: bigint; | ||
signature: string; | ||
}; | ||
}[]>; | ||
updateProvider(provider: ethers.providers.Provider): void; | ||
updateProvider(provider: ethers.Provider): void; | ||
} |
@@ -8,7 +8,7 @@ | ||
export declare class LocalConfigTracker implements ConfigTracker, migrator.PresignedMigrationTracker { | ||
provider: ethers.providers.Provider; | ||
provider: ethers.Provider; | ||
private store; | ||
useEIP5719: boolean; | ||
private cachedEIP5719; | ||
constructor(provider: ethers.providers.Provider, store?: TrackerStore, useEIP5719?: boolean); | ||
constructor(provider: ethers.Provider, store?: TrackerStore, useEIP5719?: boolean); | ||
private loadTopology; | ||
@@ -58,3 +58,3 @@ private saveTopology; | ||
digest: string; | ||
chainId: ethers.BigNumber; | ||
chainId: bigint; | ||
signature: string; | ||
@@ -65,3 +65,3 @@ }; | ||
getMigration(address: string, fromImageHash: string, fromVersion: number, chainId: ethers.BigNumberish): Promise<migrator.SignedMigration | undefined>; | ||
updateProvider(provider: ethers.providers.Provider): void; | ||
updateProvider(provider: ethers.Provider): void; | ||
} |
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from "../tracker.js"; | ||
import { migrator } from '@0xsequence/migration'; | ||
import { BigNumber, BigNumberish } from 'ethers'; | ||
import { commons } from '@0xsequence/core'; | ||
import { ethers } from 'ethers'; | ||
export declare function raceUntil<T>(promises: Promise<T>[], fallback: T, evalRes: (val: T) => boolean): Promise<T>; | ||
@@ -34,3 +34,3 @@ export declare function allSafe<T>(promises: Promise<T>[], fallback: T): Promise<T[]>; | ||
digest: string; | ||
chainId: BigNumber; | ||
chainId: bigint; | ||
signature: string; | ||
@@ -42,3 +42,3 @@ }; | ||
digest: string; | ||
chainId: BigNumberish; | ||
chainId: ethers.BigNumberish; | ||
signatures: string[]; | ||
@@ -52,4 +52,4 @@ }): Promise<void>; | ||
savePresignedConfiguration(args: PresignedConfig): Promise<void>; | ||
getMigration(address: string, fromImageHash: string, fromVersion: number, chainId: BigNumberish): Promise<migrator.SignedMigration | undefined>; | ||
getMigration(address: string, fromImageHash: string, fromVersion: number, chainId: ethers.BigNumberish): Promise<migrator.SignedMigration | undefined>; | ||
saveMigration(address: string, signed: migrator.SignedMigration, contexts: commons.context.VersionedContext): Promise<void>; | ||
} |
@@ -43,3 +43,3 @@ import { commons } from '@0xsequence/core'; | ||
digest: string; | ||
chainId: ethers.BigNumber; | ||
chainId: bigint; | ||
signature: string; | ||
@@ -46,0 +46,0 @@ }; |
{ | ||
"name": "@0xsequence/sessions", | ||
"version": "0.0.0-20240807210827", | ||
"version": "0.0.0-20240812142652", | ||
"description": "tools for migrating sequence wallets to new versions", | ||
@@ -12,7 +12,7 @@ "repository": "https://github.com/0xsequence/sequence.js/tree/master/packages/sessions", | ||
"dependencies": { | ||
"ethers": "^5.5.2", | ||
"ethers": "^6.13.0", | ||
"idb": "^7.1.1", | ||
"@0xsequence/core": "0.0.0-20240807210827", | ||
"@0xsequence/migration": "0.0.0-20240807210827", | ||
"@0xsequence/replacer": "0.0.0-20240807210827" | ||
"@0xsequence/core": "0.0.0-20240812142652", | ||
"@0xsequence/migration": "0.0.0-20240812142652", | ||
"@0xsequence/replacer": "0.0.0-20240812142652" | ||
}, | ||
@@ -23,4 +23,4 @@ "devDependencies": { | ||
"nyc": "^15.1.0", | ||
"@0xsequence/signhub": "0.0.0-20240807210827", | ||
"@0xsequence/tests": "0.0.0-20240807210827" | ||
"@0xsequence/signhub": "0.0.0-20240812142652", | ||
"@0xsequence/tests": "0.0.0-20240812142652" | ||
}, | ||
@@ -33,5 +33,5 @@ "files": [ | ||
"test": "pnpm test:file tests/**/*.spec.ts", | ||
"test:file": "TS_NODE_PROJECT=../../tsconfig.test.json mocha -r ts-node/register --timeout 30000", | ||
"test:file": "TS_NODE_PROJECT=../../tsconfig.test.json mocha -r ts-node/register --timeout 60000", | ||
"test:coverage": "nyc pnpm test" | ||
} | ||
} |
@@ -51,3 +51,3 @@ import { commons } from '@0xsequence/core' | ||
digest: string | ||
chainId: ethers.BigNumber | ||
chainId: bigint | ||
signature: string | ||
@@ -54,0 +54,0 @@ } |
import { commons, universal } from '@0xsequence/core' | ||
import { migrator } from '@0xsequence/migration' | ||
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from '../tracker' | ||
import { ethers } from 'ethers' | ||
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from '../tracker' | ||
@@ -61,3 +61,3 @@ export class CachedTracker implements migrator.PresignedMigrationTracker, ConfigTracker { | ||
if (!acc) return val | ||
if (val.checkpoint.gt(acc.checkpoint)) return val | ||
if (val.checkpoint > acc.checkpoint) return val | ||
return acc | ||
@@ -129,3 +129,3 @@ })?.result ?? [] | ||
noCache?: boolean | ||
}): Promise<{ wallet: string; proof: { digest: string; chainId: ethers.BigNumber; signature: string } }[]> { | ||
}): Promise<{ wallet: string; proof: { digest: string; chainId: bigint; signature: string } }[]> { | ||
if (args.noCache) { | ||
@@ -138,3 +138,3 @@ return this.tracker.walletsOfSigner(args) | ||
const results = await Promise.all([this.tracker.walletsOfSigner(args), this.cache.walletsOfSigner(args)]) | ||
const wallets = new Map<string, { wallet: string; proof: { digest: string; chainId: ethers.BigNumber; signature: string } }>() | ||
const wallets = new Map<string, { wallet: string; proof: { digest: string; chainId: bigint; signature: string } }>() | ||
@@ -141,0 +141,0 @@ for (const result of results) { |
import { commons } from '@0xsequence/core' | ||
import { migrator } from '@0xsequence/migration' | ||
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from '../tracker' | ||
import { ethers } from 'ethers' | ||
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from '../tracker' | ||
@@ -59,3 +59,3 @@ export class DebugConfigTracker implements ConfigTracker, migrator.PresignedMigrationTracker { | ||
signer: string | ||
}): Promise<{ wallet: string; proof: { digest: string; chainId: ethers.BigNumber; signature: string } }[]> { | ||
}): Promise<{ wallet: string; proof: { digest: string; chainId: bigint; signature: string } }[]> { | ||
console.debug('? walletsOfSigner') | ||
@@ -62,0 +62,0 @@ debug(args, '? ') |
import { commons } from '@0xsequence/core' | ||
import { migrator } from '@0xsequence/migration' | ||
import { BigNumber, BigNumberish, ethers } from 'ethers' | ||
import { ethers } from 'ethers' | ||
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from '../tracker' | ||
@@ -36,3 +37,3 @@ import { PromiseCache } from './promise-cache' | ||
fromVersion: number, | ||
chainId: BigNumberish | ||
chainId: ethers.BigNumberish | ||
): Promise<migrator.SignedMigration | undefined> { | ||
@@ -66,3 +67,3 @@ return this.cache.do( | ||
saveWitnesses(args: { wallet: string; digest: string; chainId: BigNumberish; signatures: string[] }): Promise<void> { | ||
saveWitnesses(args: { wallet: string; digest: string; chainId: ethers.BigNumberish; signatures: string[] }): Promise<void> { | ||
return this.cache.do('saveWitnesses', undefined, args => this.tracker.saveWitnesses(args), args) | ||
@@ -92,7 +93,7 @@ } | ||
signer: string | ||
}): Promise<{ wallet: string; proof: { digest: string; chainId: BigNumber; signature: string } }[]> { | ||
}): Promise<{ wallet: string; proof: { digest: string; chainId: bigint; signature: string } }[]> { | ||
return this.cache.do('walletsOfSigner', this.window, args => this.tracker.walletsOfSigner(args), args) | ||
} | ||
updateProvider(provider: ethers.providers.Provider) { | ||
updateProvider(provider: ethers.Provider) { | ||
if (this.tracker instanceof LocalConfigTracker) { | ||
@@ -99,0 +100,0 @@ this.tracker.updateProvider(provider) |
@@ -15,3 +15,3 @@ import { commons, universal, v1, v2 } from '@0xsequence/core' | ||
// For now, it's recommended to use Mainnet as the provider. | ||
public provider: ethers.providers.Provider, | ||
public provider: ethers.Provider, | ||
private store: TrackerStore = new MemoryTrackerStore(), | ||
@@ -34,4 +34,4 @@ public useEIP5719: boolean = false | ||
return { | ||
weight: ethers.BigNumber.from(node.weight), | ||
threshold: ethers.BigNumber.from(node.threshold), | ||
weight: BigInt(node.weight), | ||
threshold: BigInt(node.threshold), | ||
tree: await this.loadTopology(node.tree) | ||
@@ -67,4 +67,4 @@ } | ||
const saveThis = this.store.saveV2Node(hash, { | ||
weight: ethers.BigNumber.from(node.weight).toString(), | ||
threshold: ethers.BigNumber.from(node.threshold).toString(), | ||
weight: BigInt(node.weight).toString(), | ||
threshold: BigInt(node.threshold).toString(), | ||
tree: v2.config.hashNode(node.tree) | ||
@@ -121,4 +121,4 @@ } as PlainNested) | ||
// version: 2, | ||
// threshold: ethers.BigNumber.from(config.threshold).toString(), | ||
// checkpoint: ethers.BigNumber.from(config.checkpoint).toString(), | ||
// threshold: BigInt(config.threshold).toString(), | ||
// checkpoint: BigInt(config.checkpoint).toString(), | ||
// tree: v2.config.hashNode(config.tree) | ||
@@ -155,4 +155,4 @@ // }) | ||
version: 2, | ||
threshold: ethers.BigNumber.from(config.threshold), | ||
checkpoint: ethers.BigNumber.from(config.checkpoint), | ||
threshold: BigInt(config.threshold), | ||
checkpoint: BigInt(config.checkpoint), | ||
tree: await this.loadTopology(config.tree) | ||
@@ -232,3 +232,3 @@ } as v2.config.WalletConfig | ||
const message = v2.chained.messageSetImageHash(nextImageHash) | ||
const digest = ethers.utils.keccak256(message) | ||
const digest = ethers.keccak256(message) | ||
const payload = { | ||
@@ -292,3 +292,3 @@ message, | ||
nextImageHash: string | ||
checkpoint: ethers.BigNumber | ||
checkpoint: bigint | ||
signature: string | ||
@@ -302,3 +302,3 @@ } | ||
if (!nextConfig || !v2.config.isWalletConfig(nextConfig)) return undefined | ||
const nextCheckpoint = ethers.BigNumber.from(nextConfig.checkpoint) | ||
const nextCheckpoint = BigInt(nextConfig.checkpoint) | ||
return { nextConfig, nextCheckpoint, nextImageHash, payload } | ||
@@ -310,3 +310,3 @@ }) | ||
.filter(c => c !== undefined) | ||
.filter(c => c!.nextCheckpoint.gt(fromConfig.checkpoint)) | ||
.filter(c => c!.nextCheckpoint > BigInt(fromConfig.checkpoint)) | ||
.sort((a, b) => | ||
@@ -321,3 +321,3 @@ // If we are looking for the longest path, sort by ascending checkpoint | ||
// But we can try to optimize for the most common case. | ||
a!.nextCheckpoint.gt(b!.nextCheckpoint) ? (longestPath ? 1 : -1) : longestPath ? -1 : 1 | ||
a!.nextCheckpoint > b!.nextCheckpoint ? (longestPath ? 1 : -1) : longestPath ? -1 : 1 | ||
) | ||
@@ -332,6 +332,6 @@ | ||
// Only consider candidates earlier than our current best | ||
if (nextCheckpoint.gte(bestCheckpoint)) continue | ||
if (nextCheckpoint >= bestCheckpoint) continue | ||
} else { | ||
// Only consider candidates later than our current best | ||
if (nextCheckpoint.lte(bestCheckpoint)) continue | ||
if (nextCheckpoint <= bestCheckpoint) continue | ||
} | ||
@@ -350,3 +350,3 @@ } | ||
const replacedSignature = ethers.utils.hexlify( | ||
const replacedSignature = ethers.hexlify( | ||
this.useEIP5719 ? await this.cachedEIP5719.runByEIP5719(signer, payload.subdigest, signature) : signature | ||
@@ -368,3 +368,3 @@ ) | ||
const encoded = v2.signature.SignatureCoder.encodeSigners(fromConfig, signatures, [], 0) | ||
if (encoded.weight.lt(fromConfig.threshold)) continue | ||
if (encoded.weight < BigInt(fromConfig.threshold)) continue | ||
@@ -374,3 +374,3 @@ // Save the new best candidate | ||
nextImageHash, | ||
checkpoint: ethers.BigNumber.from(nextConfig.checkpoint), | ||
checkpoint: BigInt(nextConfig.checkpoint), | ||
signature: encoded.encoded | ||
@@ -437,3 +437,3 @@ } | ||
digest: string | ||
chainId: ethers.BigNumber | ||
chainId: bigint | ||
signature: string | ||
@@ -453,3 +453,3 @@ } | ||
digest: string | ||
chainId: ethers.BigNumber | ||
chainId: bigint | ||
signature: string | ||
@@ -471,4 +471,4 @@ } | ||
digest: payload.digest, | ||
chainId: ethers.BigNumber.from(payload.chainId), | ||
signature: ethers.utils.hexlify(signature) | ||
chainId: BigInt(payload.chainId), | ||
signature: ethers.hexlify(signature) | ||
} | ||
@@ -498,3 +498,3 @@ }) | ||
const message = commons.transaction.packMetaTransactionsData(signed.tx.nonce, signed.tx.transactions) | ||
const digest = ethers.utils.keccak256(message) | ||
const digest = ethers.keccak256(message) | ||
const payload = { chainId: signed.tx.chainId, message, address, digest } | ||
@@ -553,3 +553,3 @@ const subdigest = commons.signature.subdigestOf(payload) | ||
if (!payload || !payload.message) return undefined | ||
if (!ethers.BigNumber.from(chainId).eq(payload.chainId)) return undefined | ||
if (BigInt(chainId) !== BigInt(payload.chainId)) return undefined | ||
@@ -568,3 +568,3 @@ const signers = coder.config.signersOf(currentConfig as any).map(s => s.address) | ||
const replacedSignature = ethers.utils.hexlify( | ||
const replacedSignature = ethers.hexlify( | ||
this.useEIP5719 ? await this.cachedEIP5719.runByEIP5719(signer, subdigest, signature) : signature | ||
@@ -583,3 +583,3 @@ ) | ||
const encoded = coder.signature.encodeSigners(currentConfig as any, signatures, [], chainId) | ||
if (!encoded || encoded.weight < currentConfig.threshold) return undefined | ||
if (!encoded || encoded.weight < BigInt(currentConfig.threshold)) return undefined | ||
@@ -612,5 +612,5 @@ // Unpack payload (it should have transactions) | ||
updateProvider(provider: ethers.providers.Provider) { | ||
updateProvider(provider: ethers.Provider) { | ||
this.provider = provider | ||
} | ||
} |
import { ConfigTracker, PresignedConfig, PresignedConfigLink } from '../tracker' | ||
import { migrator } from '@0xsequence/migration' | ||
import { BigNumber, BigNumberish, ethers } from 'ethers' | ||
import { commons, universal } from '@0xsequence/core' | ||
import { LocalConfigTracker } from './local' | ||
import { ethers } from 'ethers' | ||
@@ -116,3 +117,3 @@ export function raceUntil<T>(promises: Promise<T>[], fallback: T, evalRes: (val: T) => boolean): Promise<T> { | ||
signer: string | ||
}): Promise<{ wallet: string; proof: { digest: string; chainId: BigNumber; signature: string } }[]> { | ||
}): Promise<{ wallet: string; proof: { digest: string; chainId: bigint; signature: string } }[]> { | ||
// We can't race here, because there is no "correct" response | ||
@@ -125,3 +126,3 @@ // we just return the union of all results, skipping duplicates | ||
const wallets: { [wallet: string]: { digest: string; chainId: BigNumber; signature: string } } = {} | ||
const wallets: { [wallet: string]: { digest: string; chainId: bigint; signature: string } } = {} | ||
for (const r of results) { | ||
@@ -136,3 +137,3 @@ wallets[r.wallet] = r.proof | ||
const witnesses = new Map<string, { wallet: string; digest: string; chainId: BigNumber; signatures: string[] }>() | ||
const witnesses = new Map<string, { wallet: string; digest: string; chainId: bigint; signatures: string[] }>() | ||
result.forEach(({ wallet, proof: { digest, chainId, signature } }) => { | ||
@@ -152,3 +153,8 @@ const key = `${wallet}-${digest}-${chainId}` | ||
async saveWitnesses(args: { wallet: string; digest: string; chainId: BigNumberish; signatures: string[] }): Promise<void> { | ||
async saveWitnesses(args: { | ||
wallet: string | ||
digest: string | ||
chainId: ethers.BigNumberish | ||
signatures: string[] | ||
}): Promise<void> { | ||
await Promise.all(this.trackers.map(t => t.saveWitnesses(args))) | ||
@@ -185,3 +191,3 @@ } | ||
if (!acc) return val | ||
if (val.checkpoint.gt(acc.checkpoint)) return val | ||
if (val.checkpoint > acc.checkpoint) return val | ||
return acc | ||
@@ -221,3 +227,3 @@ }) | ||
fromVersion: number, | ||
chainId: BigNumberish | ||
chainId: ethers.BigNumberish | ||
): Promise<migrator.SignedMigration | undefined> { | ||
@@ -224,0 +230,0 @@ // TODO: Backfeed migration results to other trackers |
@@ -16,3 +16,3 @@ import { ethers } from 'ethers' | ||
): Promise<T> { | ||
key = `${key}:${ethers.utils.keccak256(ethers.utils.toUtf8Bytes(JSON.stringify(args, deterministically)))}` | ||
key = `${key}:${ethers.id(JSON.stringify(args, deterministically))}` | ||
@@ -56,2 +56,4 @@ let entry = this.cache.get(key) | ||
return Object.fromEntries(Object.entries(value).sort()) | ||
} else if (typeof value === 'bigint') { | ||
return value.toString() | ||
} | ||
@@ -58,0 +60,0 @@ |
@@ -43,3 +43,3 @@ import { commons, universal, v1, v2 } from '@0xsequence/core' | ||
const message = v2.signature.setImageHashStruct(imageHash) | ||
const digest = ethers.utils.keccak256(message) | ||
const digest = ethers.keccak256(message) | ||
@@ -119,3 +119,3 @@ await this.sessions.saveSignature({ | ||
signer: string | ||
}): Promise<{ wallet: string; proof: { digest: string; chainId: ethers.BigNumber; signature: string } }[]> { | ||
}): Promise<{ wallet: string; proof: { digest: string; chainId: bigint; signature: string } }[]> { | ||
const { wallets } = await this.sessions.wallets(args) | ||
@@ -125,9 +125,9 @@ return Object.entries(wallets).map(([wallet, { digest, chainID, type, signature }]) => { | ||
case SignatureType.EIP712: | ||
signature += ethers.utils.hexlify(commons.signer.SigType.EIP712).slice(2) | ||
signature += ethers.toBeHex(commons.signer.SigType.EIP712).slice(2) | ||
break | ||
case SignatureType.EthSign: | ||
signature += ethers.utils.hexlify(commons.signer.SigType.ETH_SIGN).slice(2) | ||
signature += ethers.toBeHex(commons.signer.SigType.ETH_SIGN).slice(2) | ||
break | ||
case SignatureType.EIP1271: | ||
signature += ethers.utils.hexlify(commons.signer.SigType.WALLET_BYTES32).slice(2) | ||
signature += ethers.toBeHex(commons.signer.SigType.WALLET_BYTES32).slice(2) | ||
break | ||
@@ -141,3 +141,3 @@ } | ||
signature, | ||
chainId: ethers.BigNumber.from(chainID) | ||
chainId: BigInt(chainID) | ||
} | ||
@@ -346,3 +346,3 @@ } | ||
value: transaction.value !== undefined ? numberString(transaction.value) : undefined, | ||
data: transaction.data !== undefined ? ethers.utils.hexlify(transaction.data) : undefined, | ||
data: transaction.data !== undefined ? ethers.hexlify(transaction.data) : undefined, | ||
gasLimit: transaction.gasLimit !== undefined ? numberString(transaction.gasLimit) : undefined, | ||
@@ -355,7 +355,7 @@ delegateCall: transaction.delegateCall, | ||
function numberNumber(n: ethers.BigNumberish): number { | ||
return ethers.BigNumber.from(n).toNumber() | ||
return Number(n) | ||
} | ||
function numberString(n: ethers.BigNumberish): string { | ||
return ethers.BigNumber.from(n).toString() | ||
return BigInt(n).toString() | ||
} | ||
@@ -362,0 +362,0 @@ |
@@ -62,3 +62,3 @@ import { commons, v1, v2 } from '@0xsequence/core' | ||
// Entry is a big number | ||
result[key] = ethers.BigNumber.from(val) | ||
result[key] = BigInt(val) | ||
} else if (Array.isArray(val)) { | ||
@@ -65,0 +65,0 @@ // Entry is an array, recurse |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
8423
324127
+ Added@0xsequence/abi@0.0.0-20240812142652(transitive)
+ Added@0xsequence/core@0.0.0-20240812142652(transitive)
+ Added@0xsequence/indexer@0.0.0-20240812142652(transitive)
+ Added@0xsequence/migration@0.0.0-20240812142652(transitive)
+ Added@0xsequence/network@0.0.0-20240812142652(transitive)
+ Added@0xsequence/relayer@0.0.0-20240812142652(transitive)
+ Added@0xsequence/replacer@0.0.0-20240812142652(transitive)
+ Added@0xsequence/signhub@0.0.0-20240812142652(transitive)
+ Added@0xsequence/utils@0.0.0-20240812142652(transitive)
+ Added@0xsequence/wallet@0.0.0-20240812142652(transitive)
+ Added@adraffy/ens-normalize@1.10.1(transitive)
+ Added@noble/curves@1.2.0(transitive)
+ Added@noble/hashes@1.3.2(transitive)
+ Added@types/node@18.15.13(transitive)
+ Addedaes-js@4.0.0-beta.5(transitive)
+ Addedethers@6.13.2(transitive)
+ Addedtslib@2.4.0(transitive)
+ Addedws@8.17.1(transitive)
- Removed@0xsequence/abi@0.0.0-20240807210827(transitive)
- Removed@0xsequence/core@0.0.0-20240807210827(transitive)
- Removed@0xsequence/indexer@0.0.0-20240807210827(transitive)
- Removed@0xsequence/migration@0.0.0-20240807210827(transitive)
- Removed@0xsequence/network@0.0.0-20240807210827(transitive)
- Removed@0xsequence/relayer@0.0.0-20240807210827(transitive)
- Removed@0xsequence/replacer@0.0.0-20240807210827(transitive)
- Removed@0xsequence/signhub@0.0.0-20240807210827(transitive)
- Removed@0xsequence/utils@0.0.0-20240807210827(transitive)
- Removed@0xsequence/wallet@0.0.0-20240807210827(transitive)
- Removed@ethersproject/abi@5.7.0(transitive)
- Removed@ethersproject/abstract-provider@5.7.0(transitive)
- Removed@ethersproject/abstract-signer@5.7.0(transitive)
- Removed@ethersproject/address@5.7.0(transitive)
- Removed@ethersproject/base64@5.7.0(transitive)
- Removed@ethersproject/basex@5.7.0(transitive)
- Removed@ethersproject/bignumber@5.7.0(transitive)
- Removed@ethersproject/bytes@5.7.0(transitive)
- Removed@ethersproject/constants@5.7.0(transitive)
- Removed@ethersproject/contracts@5.7.0(transitive)
- Removed@ethersproject/hash@5.7.0(transitive)
- Removed@ethersproject/hdnode@5.7.0(transitive)
- Removed@ethersproject/json-wallets@5.7.0(transitive)
- Removed@ethersproject/keccak256@5.7.0(transitive)
- Removed@ethersproject/logger@5.7.0(transitive)
- Removed@ethersproject/networks@5.7.1(transitive)
- Removed@ethersproject/pbkdf2@5.7.0(transitive)
- Removed@ethersproject/properties@5.7.0(transitive)
- Removed@ethersproject/providers@5.7.2(transitive)
- Removed@ethersproject/random@5.7.0(transitive)
- Removed@ethersproject/rlp@5.7.0(transitive)
- Removed@ethersproject/sha2@5.7.0(transitive)
- Removed@ethersproject/signing-key@5.7.0(transitive)
- Removed@ethersproject/solidity@5.7.0(transitive)
- Removed@ethersproject/strings@5.7.0(transitive)
- Removed@ethersproject/transactions@5.7.0(transitive)
- Removed@ethersproject/units@5.7.0(transitive)
- Removed@ethersproject/wallet@5.7.0(transitive)
- Removed@ethersproject/web@5.7.1(transitive)
- Removed@ethersproject/wordlists@5.7.0(transitive)
- Removedaes-js@3.0.0(transitive)
- Removedbech32@1.1.4(transitive)
- Removedbn.js@4.12.05.2.1(transitive)
- Removedbrorand@1.1.0(transitive)
- Removedelliptic@6.5.4(transitive)
- Removedethers@5.7.2(transitive)
- Removedhash.js@1.1.7(transitive)
- Removedhmac-drbg@1.0.1(transitive)
- Removedinherits@2.0.4(transitive)
- Removedjs-sha3@0.8.0(transitive)
- Removedminimalistic-assert@1.0.1(transitive)
- Removedminimalistic-crypto-utils@1.0.1(transitive)
- Removedscrypt-js@3.0.1(transitive)
- Removedws@7.4.6(transitive)
Updatedethers@^6.13.0