Skip to content

Commit

Permalink
Fixed vulnerability gulp
Browse files Browse the repository at this point in the history
  • Loading branch information
ourwarmhouse committed Oct 5, 2020
1 parent 0035b9f commit 9fd839d
Show file tree
Hide file tree
Showing 4 changed files with 2,104 additions and 5,562 deletions.
83 changes: 83 additions & 0 deletions deploy.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
const { minify } = require('uglify-es');
const cleanCss = require('clean-css');
const globby = require('globby');
const colors = require('colors');
const { render } = require('less');
const fs = require('fs');
const path = require('path');

const compressJS = async () => {
const publicFiles = globby.sync([
'public/javascripts/*.js',
'!public/javascripts/*.min.js'
], { nosort: true });

// Public JS
publicFiles.forEach(async(file) => {
const minified = await minify(fs.readFileSync(file, 'utf-8'));
const parseFilePath = path.parse(file);
fs.writeFileSync(`${parseFilePath.dir}/${parseFilePath.name}.min.js`, minified.code);
});

const themeFiles = globby.sync([
'views/themes/**/*.js',
'!views/themes/**/*.min.js'
], { nosort: true });

// Theme JS
themeFiles.forEach(async(file) => {
const minified = await minify(fs.readFileSync(file, 'utf-8'));
const parseFilePath = path.parse(file);
fs.writeFileSync(`${parseFilePath.dir}/${parseFilePath.name}.min.js`, minified.code);
});
};

const compressCss = async () => {
const publicOutputPath = path.join('public', 'stylesheets');
const themeOutputPath = path.join('views', 'themes');
const publicFiles = globby.sync([
'public/stylesheets/less/*.less'
], { nosort: true });

publicFiles.forEach(async(file) => {
const parseFilePath = path.parse(file);
// Process the less
const less = await render(fs.readFileSync(file, 'utf-8'), {});

// Write less style
fs.writeFileSync(`${publicOutputPath}/${parseFilePath.name}.css`, less.css);

// Minify css
const minified = await new cleanCss({}).minify(less.css).styles;

// Write minified css
fs.writeFileSync(`${publicOutputPath}/${parseFilePath.name}.min.css`, minified);
});

const themeFiles = globby.sync([
'views/themes/*.less'
], { nosort: true });
themeFiles.forEach(async(file) => {
const parseFilePath = path.parse(file);
// Process the less
const less = await render(fs.readFileSync(file, 'utf-8'), {});

// Write less style
fs.writeFileSync(`${themeOutputPath}/${parseFilePath.name}.css`, less.css);

// Minify css
const minified = await new cleanCss({}).minify(less.css).styles;

// Write minified css
fs.writeFileSync(`${themeOutputPath}/${parseFilePath.name}.min.css`, minified);
});
};

const run = async () => {
await compressJS();
await compressCss();
console.log(colors.green('Complete!'));
};

// Run the deploy tasks
run();
Loading

0 comments on commit 9fd839d

Please sign in to comment.