@0x/utils: Add more revert errors to ZeroExRevertErrors
This commit is contained in:
committed by
Lawrence Forman
parent
829a353b14
commit
687c79ae81
@@ -29,6 +29,10 @@
|
||||
{
|
||||
"note": "Update `ZeroExRevertErrors`",
|
||||
"pr": 2597
|
||||
},
|
||||
{
|
||||
"note": "Add more revert errors to `ZeroExRevertErrors`",
|
||||
"pr": 2610
|
||||
}
|
||||
],
|
||||
"timestamp": 1592969527
|
||||
|
||||
@@ -52,4 +52,6 @@ export const ZeroExRevertErrors = {
|
||||
Spender: require('./revert_errors/zero-ex/spender_revert_errors'),
|
||||
TransformERC20: require('./revert_errors/zero-ex/transform_erc20_revert_errors'),
|
||||
Wallet: require('./revert_errors/zero-ex/wallet_revert_errors'),
|
||||
MetaTransactions: require('./revert_errors/zero-ex/meta_transaction_revert_errors'),
|
||||
SignatureValidator: require('./revert_errors/zero-ex/signature_validator_revert_errors'),
|
||||
};
|
||||
|
||||
@@ -0,0 +1,144 @@
|
||||
import { RevertError } from '../../revert_error';
|
||||
import { Numberish } from '../../types';
|
||||
|
||||
// tslint:disable:max-classes-per-file
|
||||
export class InvalidMetaTransactionsArrayLengthsError extends RevertError {
|
||||
constructor(mtxCount?: Numberish, signatureCount?: Numberish) {
|
||||
super(
|
||||
'InvalidMetaTransactionsArrayLengthsError',
|
||||
'InvalidMetaTransactionsArrayLengthsError(uint256 mtxCount, uint256 signatureCount)',
|
||||
{
|
||||
mtxCount,
|
||||
signatureCount,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export class MetaTransactionAlreadyExecutedError extends RevertError {
|
||||
constructor(mtxHash?: string, executedBlockNumber?: Numberish) {
|
||||
super(
|
||||
'MetaTransactionAlreadyExecutedError',
|
||||
'MetaTransactionAlreadyExecutedError(bytes32 mtxHash, uint256 executedBlockNumber)',
|
||||
{
|
||||
mtxHash,
|
||||
executedBlockNumber,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export class MetaTransactionUnsupportedFunctionError extends RevertError {
|
||||
constructor(mtxHash?: string, selector?: string) {
|
||||
super(
|
||||
'MetaTransactionUnsupportedFunctionError',
|
||||
'MetaTransactionUnsupportedFunctionError(bytes32 mtxHash, bytes4 selector)',
|
||||
{
|
||||
mtxHash,
|
||||
selector,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export class MetaTransactionWrongSenderError extends RevertError {
|
||||
constructor(mtxHash?: string, sender?: string, expectedSender?: string) {
|
||||
super(
|
||||
'MetaTransactionWrongSenderError',
|
||||
'MetaTransactionWrongSenderError(bytes32 mtxHash, address sender, address expectedSender)',
|
||||
{
|
||||
mtxHash,
|
||||
sender,
|
||||
expectedSender,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export class MetaTransactionExpiredError extends RevertError {
|
||||
constructor(mtxHash?: string, time?: Numberish, expirationTime?: Numberish) {
|
||||
super(
|
||||
'MetaTransactionExpiredError',
|
||||
'MetaTransactionExpiredError(bytes32 mtxHash, uint256 time, uint256 expirationTime)',
|
||||
{
|
||||
mtxHash,
|
||||
time,
|
||||
expirationTime,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export class MetaTransactionGasPriceError extends RevertError {
|
||||
constructor(mtxHash?: string, gasPrice?: Numberish, minGasPrice?: Numberish, maxGasPrice?: Numberish) {
|
||||
super(
|
||||
'MetaTransactionGasPriceError',
|
||||
'MetaTransactionGasPriceError(bytes32 mtxHash, uint256 gasPrice, uint256 minGasPrice, uint256 maxGasPrice)',
|
||||
{
|
||||
mtxHash,
|
||||
gasPrice,
|
||||
minGasPrice,
|
||||
maxGasPrice,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export class MetaTransactionInsufficientEthError extends RevertError {
|
||||
constructor(mtxHash?: string, ethBalance?: Numberish, ethRequired?: Numberish) {
|
||||
super(
|
||||
'MetaTransactionInsufficientEthError',
|
||||
'MetaTransactionInsufficientEthError(bytes32 mtxHash, uint256 ethBalance, uint256 ethRequired)',
|
||||
{
|
||||
mtxHash,
|
||||
ethBalance,
|
||||
ethRequired,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export class MetaTransactionInvalidSignatureError extends RevertError {
|
||||
constructor(mtxHash?: string, signature?: string, errData?: string) {
|
||||
super(
|
||||
'MetaTransactionInvalidSignatureError',
|
||||
'MetaTransactionInvalidSignatureError(bytes32 mtxHash, bytes signature, bytes errData)',
|
||||
{
|
||||
mtxHash,
|
||||
signature,
|
||||
errData,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export class MetaTransactionCallFailedError extends RevertError {
|
||||
constructor(mtxHash?: string, callData?: string, returnData?: string) {
|
||||
super(
|
||||
'MetaTransactionCallFailedError',
|
||||
'MetaTransactionCallFailedError(bytes32 mtxHash, bytes callData, bytes returnData)',
|
||||
{
|
||||
mtxHash,
|
||||
callData,
|
||||
returnData,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
const types = [
|
||||
InvalidMetaTransactionsArrayLengthsError,
|
||||
MetaTransactionAlreadyExecutedError,
|
||||
MetaTransactionUnsupportedFunctionError,
|
||||
MetaTransactionWrongSenderError,
|
||||
MetaTransactionExpiredError,
|
||||
MetaTransactionGasPriceError,
|
||||
MetaTransactionInsufficientEthError,
|
||||
MetaTransactionInvalidSignatureError,
|
||||
MetaTransactionCallFailedError,
|
||||
];
|
||||
|
||||
// Register the types we've defined.
|
||||
for (const type of types) {
|
||||
RevertError.registerType(type);
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
import { RevertError } from '../../revert_error';
|
||||
|
||||
// tslint:disable:max-classes-per-file
|
||||
|
||||
export enum SignatureValidationErrorCodes {
|
||||
AlwaysInvalid = 0,
|
||||
InvalidLength = 1,
|
||||
Unsupported = 2,
|
||||
Illegal = 3,
|
||||
WrongSigner = 4,
|
||||
}
|
||||
|
||||
export class SignatureValidationError extends RevertError {
|
||||
constructor(code?: SignatureValidationErrorCodes, hash?: string, signerAddress?: string, signature?: string) {
|
||||
super(
|
||||
'SignatureValidationError',
|
||||
'SignatureValidationError(uint8 code, bytes32 hash, address signerAddress, bytes signature)',
|
||||
{
|
||||
code,
|
||||
hash,
|
||||
signerAddress,
|
||||
signature,
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
const types = [SignatureValidationError];
|
||||
|
||||
// Register the types we've defined.
|
||||
for (const type of types) {
|
||||
RevertError.registerType(type);
|
||||
}
|
||||
Reference in New Issue
Block a user