@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