// commencer par importer gulp // si on veux utiliser import il faut décalrer dans le package que l'on est en modules // => "type":"module", et pas "type":"commonjs", // dans le futur : // import * as gulp from gulp; // mais en version actuelle : const gulp = require('gulp'); const gsass = require('gulp-sass')(require('sass')); // on require gsass et lui assigne sass comme compilateur const gugly = require('gulp-uglify-es'); const sourcemaps = require('gulp-sourcemaps'); const { SourceMap } = require('module'); const {basename} = require('path'); // ceci permet de récupérer la fonction basename initialisée dans le module node "path" const {dirname:basedir,normalize:normalize_path} = require('path'); // ceci permet de récupérer la fonction dirname initialisée dans le module node "path" en la renommant en basedir // !! => cast en boolean const [un,deux,,quatre] = [!!1,2,gulp,"four"]; //assigne chaque case de tableau de droite à une const définie dans le tableau gauche en ignorant les éléments vide (ici le 3e element de gauche) const two = null; const undefined2 = two ?? 2; // defini undefined2 a two si elle est non "nullable", sinon assigne 2 const struct_of_twos = { two: { arab : 2, roman : 'II' }, deux : 2 } let redefine2 = deux?.arab; // redefine2 vaut ici 2 ça s'arrête à la première prop valide trouvée. // pour voir la console faire "node gulpfile.js" console.log(basedir(__filename)); // __dirname existe function sass() { return gulp.src(normalize_path(basedir(__filename)+'/style-main.scss')) .pipe(sourcemaps.init()) .pipe(gsass()) .pipe(sourcemaps.write(basedir(__filename))) .pipe(gulp.dest(basedir(__filename))); } function uglify() { var dest = normalize_path(basedir(__filename)+'/scripts/'); return gulp.src(normalize_path(basedir(__filename)+'/scripts-sources/**/*.js')) .pipe(sourcemaps.init()) .pipe(gugly.default()) .pipe(sourcemaps.write(dest)) .pipe(gulp.dest(dest)); } // à afficher avec gulp --tasks module.exports = { sass, uglify, 'default' : gulp.parallel(sass,uglify), }; // exports.sass = sass; // ou module.exports.sass = sass; // ou exports['default'] = // cwd à check pour gulp car il indique le "current working dir"