@hyperledger/cactus-common
Version:
Universal library used by both front end and back end components of Cactus. Aims to be a developer swiss army knife.
35 lines • 2.45 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Checks = void 0;
const error_utils_1 = require("./error-utils");
class Checks {
/**
* Verifies that a boolean condition is met or throws an Error if it is not.
*
* @param checkResult Determines the outcome of the check via it's truthyness.
* @param subjectOfCheck The error message if `checkResult` is falsy.
* @param code The code of the error if `checkResult is falsy.
*/
static truthy(checkResult, subjectOfCheck = "variable", code = "-1") {
if (!checkResult) {
const message = `"${subjectOfCheck}" is falsy, need a truthy value.`;
throw new error_utils_1.CodedError(message, code);
}
}
/**
* Verifies that a string is indeed not a blank string.
* Blank string can be one that only has whitespace characters for example.
*
* @param value The value that will be asserted for being a non-blank string.
* @param subject The error message if `value` is a blank string.
* @param code The code of the error if `checkResult is falsy.
*/
static nonBlankString(value, subject = "variable", code = "-1") {
if (typeof value !== "string" || value.trim().length === 0) {
const message = `"${subject}" is a blank string. Need non-blank.`;
throw new error_utils_1.CodedError(message, code);
}
}
}
exports.Checks = Checks;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21haW4vdHlwZXNjcmlwdC9jaGVja3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0NBQTJDO0FBRTNDLE1BQWEsTUFBTTtJQUNqQjs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMsTUFBTSxDQUNsQixXQUFvQixFQUNwQixjQUFjLEdBQUcsVUFBVSxFQUMzQixJQUFJLEdBQUcsSUFBSTtRQUVYLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNqQixNQUFNLE9BQU8sR0FBRyxJQUFJLGNBQWMsa0NBQWtDLENBQUM7WUFDckUsTUFBTSxJQUFJLHdCQUFVLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLE1BQU0sQ0FBQyxjQUFjLENBQzFCLEtBQWMsRUFDZCxPQUFPLEdBQUcsVUFBVSxFQUNwQixJQUFJLEdBQUcsSUFBSTtRQUVYLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDM0QsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLHNDQUFzQyxDQUFDO1lBQ2xFLE1BQU0sSUFBSSx3QkFBVSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN0QyxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBckNELHdCQXFDQyJ9