securewalletbundle
Version:
Un wallet 100% sécurisé, sécurisé par vous. Pour XRP et XLM pour l'instant. Vous pouvez télécharger et vérifier/valider le code grâce à ce package.
42 lines (39 loc) • 1.79 kB
JavaScript
const UglifyJS = require("uglify-js");
const getSRI = require('get-sri');
const fs = require("fs");
//check params
if (process.argv.length < 3){
console.error("Le fichier js non minifié est manquant");
process.exit();
}
if (process.argv.length < 4){
console.error("Veuillez spécifier un fichier js de sortie pour la minification");
process.exit();
}
//minify, solve dead code, and remove breaklines
console.log(" ");
console.log("Fichier '"+process.argv[2]+"' en cours de minification... veuillez patienter...");
var code = fs.readFileSync(process.argv[2], "utf8");
var result = UglifyJS.minify(code);
if (!result.error){
result.code = result.code.replaceAll(/;return}|\n|\r|\r\n/g,";}")//remove dead code
.replaceAll(/\r\n|\r|\n/g," ");//remove break lines to go one line
fs.writeFileSync(process.argv[3], result.code, "utf8");
console.log("--- Minification terminée avec succès dans '"+process.argv[3]+"'");
} else {
console.log(" ");
console.error("Erreur lors de la minification...");
console.error(result.error);
}
//now create sha256 SRI integrity tag
if (!result.error){
console.log(" ");
console.log("Calcul du SRI en cours sur '"+process.argv[3]+"'... veuillez patienter...");
var jquerySourceCode = fs.readFileSync(process.argv[3], { encoding: "utf8" });
var integrity = getSRI(jquerySourceCode, getSRI.SHA256, true);
console.log("--- SRI terminé avec succès !");
console.log(" ");
console.log("----- Fichiers OFFLINE : Copier/coller le contenu de ce fichier entre 2 balises <script>...</script>");
console.log("----- Fichiers ONLINE : Ajouter cette balise script au code HTML :");
console.log('----- <script src="'+process.argv[3]+'" integrity="'+integrity+'" crossorigin="anonymous"></script>');
}