Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@skava/graphql / dist / deps / fromPasswordToHashed.js
Size: Mime:
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
// @todo in another file
const crypto_1 = require("crypto");
const isValidPassword_1 = require("./isValidPassword");
const create = algorithm => async (buffer, opts = {}) => {
    const options = Object.assign({
        outputFormat: 'hex',
    }, opts);
    const hash = crypto_1.createHash(algorithm);
    hash.update(buffer, typeof buffer === 'string' ? 'utf8' : undefined);
    if (options.outputFormat === 'hex') {
        return hash.digest('hex');
    }
    return hash.digest().buffer;
};
// @todo use a better sha @@security
const sha512 = create('sha512');
async function toPassword(password) {
    if (process.env.SKAVA123) {
        return 'Skava@123';
    }
    else if (isValidPassword_1.isValidPassword(password)) {
        const hashed = await sha512(password || '@@empty');
        // @todo just check if it contains a number and aZ cool
        return hashed.slice(0, 27) + '@1aZ';
    }
    else {
        return password;
    }
}
exports.toPassword = toPassword;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbVBhc3N3b3JkVG9IYXNoZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVwcy9mcm9tUGFzc3dvcmRUb0hhc2hlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHdCQUF3QjtBQUN4QixtQ0FBbUM7QUFDbkMsdURBQW1EO0FBRW5ELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEdBQUcsRUFBRSxFQUFFLEVBQUU7SUFDdEQsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FDM0I7UUFDRSxZQUFZLEVBQUUsS0FBSztLQUNwQixFQUNELElBQUksQ0FDTCxDQUFBO0lBRUQsTUFBTSxJQUFJLEdBQUcsbUJBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUNsQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxPQUFPLE1BQU0sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUE7SUFFcEUsSUFBSSxPQUFPLENBQUMsWUFBWSxLQUFLLEtBQUssRUFBRTtRQUNsQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7S0FDMUI7SUFFRCxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUE7QUFDN0IsQ0FBQyxDQUFBO0FBRUQsb0NBQW9DO0FBQ3BDLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTtBQUUvQixLQUFLLFVBQVUsVUFBVSxDQUFDLFFBQWdCO0lBQ3hDLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUU7UUFDeEIsT0FBTyxXQUFXLENBQUE7S0FDbkI7U0FBTSxJQUFJLGlDQUFlLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDcEMsTUFBTSxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsUUFBUSxJQUFJLFNBQVMsQ0FBQyxDQUFBO1FBQ2xELHVEQUF1RDtRQUN2RCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQTtLQUNwQztTQUFNO1FBQ0wsT0FBTyxRQUFRLENBQUE7S0FDaEI7QUFDSCxDQUFDO0FBRVEsZ0NBQVUifQ==