UNPKG

web3x

Version:

Typescript port of web3.js

104 lines 7.69 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); // Unknown Error exports.UNKNOWN_ERROR = 'UNKNOWN_ERROR'; // Not implemented exports.NOT_IMPLEMENTED = 'NOT_IMPLEMENTED'; // Missing new operator to an object // - name: The name of the class exports.MISSING_NEW = 'MISSING_NEW'; // Call exception // - transaction: the transaction // - address?: the contract address // - args?: The arguments passed into the function // - method?: The Solidity method signature // - errorSignature?: The EIP848 error signature // - errorArgs?: The EIP848 error parameters // - reason: The reason (only for EIP848 "Error(string)") exports.CALL_EXCEPTION = 'CALL_EXCEPTION'; // Invalid argument (e.g. value is incompatible with type) to a function: // - arg: The argument name that was invalid // - value: The value of the argument exports.INVALID_ARGUMENT = 'INVALID_ARGUMENT'; // Missing argument to a function: // - count: The number of arguments received // - expectedCount: The number of arguments expected exports.MISSING_ARGUMENT = 'MISSING_ARGUMENT'; // Too many arguments // - count: The number of arguments received // - expectedCount: The number of arguments expected exports.UNEXPECTED_ARGUMENT = 'UNEXPECTED_ARGUMENT'; // Numeric Fault // - operation: the operation being executed // - fault: the reason this faulted exports.NUMERIC_FAULT = 'NUMERIC_FAULT'; // Insufficien funds (< value + gasLimit * gasPrice) // - transaction: the transaction attempted exports.INSUFFICIENT_FUNDS = 'INSUFFICIENT_FUNDS'; // Nonce has already been used // - transaction: the transaction attempted exports.NONCE_EXPIRED = 'NONCE_EXPIRED'; // The replacement fee for the transaction is too low // - transaction: the transaction attempted exports.REPLACEMENT_UNDERPRICED = 'REPLACEMENT_UNDERPRICED'; // Unsupported operation // - operation exports.UNSUPPORTED_OPERATION = 'UNSUPPORTED_OPERATION'; let _permanentCensorErrors = false; let _censorErrors = false; // @TODO: Enum function throwError(message, code = exports.UNKNOWN_ERROR, params = {}) { if (_censorErrors) { throw new Error('unknown error'); } let messageDetails = []; Object.keys(params).forEach(key => { try { messageDetails.push(key + '=' + JSON.stringify(params[key])); } catch (error) { messageDetails.push(key + '=' + JSON.stringify(params[key].toString())); } }); messageDetails.push('version=1'); let reason = message; if (messageDetails.length) { message += ' (' + messageDetails.join(', ') + ')'; } // @TODO: Any?? let error = new Error(message); error.reason = reason; error.code = code; Object.keys(params).forEach(function (key) { error[key] = params[key]; }); throw error; } exports.throwError = throwError; function checkNew(self, kind) { if (!(self instanceof kind)) { throwError('missing new', exports.MISSING_NEW, { name: kind.name }); } } exports.checkNew = checkNew; function checkArgumentCount(count, expectedCount, suffix) { if (!suffix) { suffix = ''; } if (count < expectedCount) { throwError('missing argument' + suffix, exports.MISSING_ARGUMENT, { count: count, expectedCount: expectedCount }); } if (count > expectedCount) { throwError('too many arguments' + suffix, exports.UNEXPECTED_ARGUMENT, { count: count, expectedCount: expectedCount }); } } exports.checkArgumentCount = checkArgumentCount; function setCensorship(censorship, permanent) { if (_permanentCensorErrors) { throwError('error censorship permanent', exports.UNSUPPORTED_OPERATION, { operation: 'setCersorship' }); } _censorErrors = !!censorship; _permanentCensorErrors = !!permanent; } exports.setCensorship = setCensorship; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V0aGVycy9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOztBQUViLGdCQUFnQjtBQUNILFFBQUEsYUFBYSxHQUFHLGVBQWUsQ0FBQztBQUU3QyxrQkFBa0I7QUFDTCxRQUFBLGVBQWUsR0FBRyxpQkFBaUIsQ0FBQztBQUVqRCxvQ0FBb0M7QUFDcEMsaUNBQWlDO0FBQ3BCLFFBQUEsV0FBVyxHQUFHLGFBQWEsQ0FBQztBQUV6QyxpQkFBaUI7QUFDakIsa0NBQWtDO0FBQ2xDLG9DQUFvQztBQUNwQyxtREFBbUQ7QUFDbkQsNENBQTRDO0FBQzVDLGlEQUFpRDtBQUNqRCw2Q0FBNkM7QUFDN0MsMERBQTBEO0FBQzdDLFFBQUEsY0FBYyxHQUFHLGdCQUFnQixDQUFDO0FBRS9DLHlFQUF5RTtBQUN6RSw4Q0FBOEM7QUFDOUMsdUNBQXVDO0FBQzFCLFFBQUEsZ0JBQWdCLEdBQUcsa0JBQWtCLENBQUM7QUFFbkQsa0NBQWtDO0FBQ2xDLDhDQUE4QztBQUM5QyxzREFBc0Q7QUFDekMsUUFBQSxnQkFBZ0IsR0FBRyxrQkFBa0IsQ0FBQztBQUVuRCxxQkFBcUI7QUFDckIsOENBQThDO0FBQzlDLHNEQUFzRDtBQUN6QyxRQUFBLG1CQUFtQixHQUFHLHFCQUFxQixDQUFDO0FBRXpELGdCQUFnQjtBQUNoQiw4Q0FBOEM7QUFDOUMscUNBQXFDO0FBQ3hCLFFBQUEsYUFBYSxHQUFHLGVBQWUsQ0FBQztBQUU3QyxvREFBb0Q7QUFDcEQsNkNBQTZDO0FBQ2hDLFFBQUEsa0JBQWtCLEdBQUcsb0JBQW9CLENBQUM7QUFFdkQsOEJBQThCO0FBQzlCLDZDQUE2QztBQUNoQyxRQUFBLGFBQWEsR0FBRyxlQUFlLENBQUM7QUFFN0MscURBQXFEO0FBQ3JELDZDQUE2QztBQUNoQyxRQUFBLHVCQUF1QixHQUFHLHlCQUF5QixDQUFDO0FBRWpFLHdCQUF3QjtBQUN4Qixn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