Skip to content

Commit

Permalink
Merge pull request #430 from maticnetwork/etrog-global-index
Browse files Browse the repository at this point in the history
fix: etrog old version
  • Loading branch information
nitinmittal23 committed Feb 15, 2024
2 parents 6d929d6 + 5a3b56b commit 9505e87
Show file tree
Hide file tree
Showing 5 changed files with 78 additions and 236 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@maticnetwork/maticjs",
"version": "3.7.9",
"version": "3.8.0",
"description": "Javascript developer library for interacting with Matic Network",
"main": "dist/npm.export.js",
"types": "dist/ts/index.d.ts",
Expand Down
1 change: 1 addition & 0 deletions src/constant.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ export const DAI_PERMIT_TYPEHASH = "0xea2aa0a1be11a07ed86d755c93467f4f82362b4523
export const EIP_2612_PERMIT_TYPEHASH = "0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9";
export const EIP_2612_DOMAIN_TYPEHASH = "0x8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f";
export const UNISWAP_DOMAIN_TYPEHASH = "0x8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a866";
export const _GLOBAL_INDEX_MAINNET_FLAG = BigInt(2 ** 64);
export enum Permit {
DAI = "DAI",
EIP_2612 = "EIP_2612",
Expand Down
16 changes: 12 additions & 4 deletions src/zkevm/bridge_util.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { Web3SideChainClient } from "../utils";
import { service } from "../services";
import { IBaseClientConfig } from "..";
import { IBaseClientConfig, _GLOBAL_INDEX_MAINNET_FLAG } from "..";
import { TYPE_AMOUNT } from '../types';

interface IBridgeEventInfo {
Expand All @@ -24,8 +24,8 @@ interface IMerkleProof {

interface IClaimPayload {
smtProof: string[];
smtProofRollup?: string[];
index: number;
smtProofRollup: string[];
globalIndex: string;
mainnetExitRoot: string;
rollupExitRoot: string;
originNetwork: number;
Expand Down Expand Up @@ -96,6 +96,14 @@ export class BridgeUtil {
return this.getBridgeLogData_(transactionHash, isParent);
}

computeGlobalIndex(indexLocal: number, indexRollup: number, sourceNetworkId: number) {
if (sourceNetworkId === 0) {
return BigInt(indexLocal) + _GLOBAL_INDEX_MAINNET_FLAG;
} else {
return BigInt(indexLocal) + BigInt(indexRollup) * BigInt(2 ** 32);
}
}

buildPayloadForClaim(transactionHash: string, isParent: boolean, networkId: number) {
return this.getBridgeLogData_(transactionHash, isParent).then(data => {
const {
Expand All @@ -110,7 +118,7 @@ export class BridgeUtil {
const payload = {} as IClaimPayload;
payload.smtProof = proof.merkle_proof;
payload.smtProofRollup = proof.rollup_merkle_proof;
payload.index = depositCount;
payload.globalIndex = this.computeGlobalIndex(depositCount, destinationNetwork, networkId).toString();
payload.mainnetExitRoot = proof.main_exit_root;
payload.rollupExitRoot = proof.rollup_exit_root;
payload.originNetwork = originNetwork;
Expand Down
177 changes: 56 additions & 121 deletions src/zkevm/erc20.ts
Original file line number Diff line number Diff line change
Expand Up @@ -326,36 +326,20 @@ export class ERC20 extends ZkEvmToken {
transactionHash, true, networkId
);
}).then(payload => {
if (payload.smtProofRollup) {
return this.childBridge.claimMessageNew(
payload.smtProof,
payload.smtProofRollup,
(BigInt(payload.index) + BigInt(2 ** 64)).toString(),
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
} else {
return this.childBridge.claimMessage(
payload.smtProof,
payload.index,
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
}
return this.childBridge.claimMessage(
payload.smtProof,
payload.smtProofRollup,
payload.globalIndex,
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
});
}

Expand All @@ -375,36 +359,20 @@ export class ERC20 extends ZkEvmToken {
transactionHash, true, networkId
);
}).then(payload => {
if (payload.smtProofRollup) {
return this.childBridge.claimAssetNew(
payload.smtProof,
payload.smtProofRollup,
(BigInt(payload.index) + BigInt(2 ** 64)).toString(),
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
} else {
return this.childBridge.claimAsset(
payload.smtProof,
payload.index,
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
}
return this.childBridge.claimAsset(
payload.smtProof,
payload.smtProofRollup,
payload.globalIndex,
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
});
}

Expand Down Expand Up @@ -475,37 +443,20 @@ export class ERC20 extends ZkEvmToken {
burnTransactionHash, false, networkId
);
}).then(payload => {
if (payload.smtProofRollup) {
return this.parentBridge.claimMessageNew(
payload.smtProof,
payload.smtProofRollup,
payload.index.toString(),
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
} else {
return this.parentBridge.claimMessage(
payload.smtProof,
payload.index,
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
}

return this.parentBridge.claimMessage(
payload.smtProof,
payload.smtProofRollup,
payload.globalIndex,
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
});
}

Expand Down Expand Up @@ -558,36 +509,20 @@ export class ERC20 extends ZkEvmToken {
burnTransactionHash, false, networkId
);
}).then(payload => {
if (payload.smtProofRollup) {
return this.parentBridge.claimAssetNew(
payload.smtProof,
payload.smtProofRollup,
payload.index.toString(),
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
} else {
return this.parentBridge.claimAsset(
payload.smtProof,
payload.index,
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
}
return this.parentBridge.claimAsset(
payload.smtProof,
payload.smtProofRollup,
payload.globalIndex,
payload.mainnetExitRoot,
payload.rollupExitRoot,
payload.originNetwork,
payload.originTokenAddress,
payload.destinationNetwork,
payload.destinationAddress,
payload.amount,
payload.metadata,
option
);
});
}

Expand Down
Loading

0 comments on commit 9505e87

Please sign in to comment.