mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-29 23:58:06 +01:00
14d85b1332
A few inconsistencies in JSDoc formatting have been fixed throughout the project. Many issues remain; these were just the few things that were easy to fix with a regular expression. The changes include: * Using lower-case for primitive types, but capitalizing non-primitive types * Separating the parameter identifier and the description with a dash * Omitting a dash between the return type and the return description * Ensuring the parameter type is first and the identifier is second (in a few places it was backwards) * Using square brackets to denote when a parameter is optional, rather than putting "(optional)" in the parameter description * Including a type and identifier with every parameter * Fixing inconsistent spacing, except where it's used for alignment * Remove incorrectly formatted `@deprecated` tags that reference non- existent properties * Remove lone comment block without accompanying function Additionally, one parameter was renamed for clarity.
27 lines
1.6 KiB
JavaScript
27 lines
1.6 KiB
JavaScript
const ethJsRpcSlug = 'Error: [ethjs-rpc] rpc error with payload '
|
|
const errorLabelPrefix = 'Error: '
|
|
|
|
/**
|
|
* Extracts the important part of an ethjs-rpc error message. If the passed error is not an isEthjsRpcError, the error
|
|
* is returned unchanged.
|
|
*
|
|
* @param {string} errorMessage - The error message to parse
|
|
* @returns {string} Returns an error message, either the same as was passed, or the ending message portion of an isEthjsRpcError
|
|
*
|
|
* @example
|
|
* // returns 'Transaction Failed: replacement transaction underpriced'
|
|
* extractEthjsErrorMessage(`Error: [ethjs-rpc] rpc error with payload {"id":3947817945380,"jsonrpc":"2.0","params":["0xf8eb8208708477359400830398539406012c8cf97bead5deae237070f9587f8e7a266d80b8843d7d3f5a0000000000000000000000000000000000000000000000000000000000081d1a000000000000000000000000000000000000000000000000001ff973cafa800000000000000000000000000000000000000000000000000000038d7ea4c68000000000000000000000000000000000000000000000000000000000000003f48025a04c32a9b630e0d9e7ff361562d850c86b7a884908135956a7e4a336fa0300d19ca06830776423f25218e8d19b267161db526e66895567147015b1f3fc47aef9a3c7"],"method":"eth_sendRawTransaction"} Error: replacement transaction underpriced`)
|
|
*
|
|
*/
|
|
export default function extractEthjsErrorMessage(errorMessage) {
|
|
const isEthjsRpcError = errorMessage.includes(ethJsRpcSlug)
|
|
if (isEthjsRpcError) {
|
|
const payloadAndError = errorMessage.slice(ethJsRpcSlug.length)
|
|
const originalError = payloadAndError.slice(
|
|
payloadAndError.indexOf(errorLabelPrefix) + errorLabelPrefix.length,
|
|
)
|
|
return originalError
|
|
}
|
|
return errorMessage
|
|
}
|