import { dest, series, src } from 'gulp'; import concat from 'gulp-concat'; import path from 'path'; import sass from 'gulp-sass'; const PROJECT_DIR = path.join('src', 'newsreader'); const SRC_DIR = path.join(PROJECT_DIR, 'scss'); const STATIC_SUFFIX = 'dist/css/'; export const ACCOUNTS_DIR = path.join(PROJECT_DIR, 'accounts', 'static', 'accounts'); export const CORE_DIR = path.join(PROJECT_DIR, 'news', 'core', 'static', 'core'); const taskMappings = [ { name: 'login', destDir: `${ACCOUNTS_DIR}/${STATIC_SUFFIX}` }, { name: 'homepage', destDir: `${CORE_DIR}/${STATIC_SUFFIX}` }, { name: 'categories', destDir: `${CORE_DIR}/${STATIC_SUFFIX}` }, { name: 'category', destDir: `${CORE_DIR}/${STATIC_SUFFIX}` }, ]; export const sassTask = done => { const tasks = taskMappings.map(taskMapping => { const { name, destDir } = taskMapping; return () => src(`${SRC_DIR}/pages/${name}/index.scss`) .pipe(sass().on('error', sass.logError)) .pipe(concat(`${name}.css`)) .pipe(dest(destDir)); }); series(...tasks)(done); };