newsreader/gulp/sass.js

33 lines
991 B
JavaScript

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}` },
];
export const sassTask = done => {
const tasks = taskMappings.map(taskMapping => {
const name = taskMapping.name;
const destDir = taskMapping.destDir;
return () => {
return src(`${SRC_DIR}/pages/${name}/index.scss`)
.pipe(sass().on('error', sass.logError))
.pipe(concat(`${name}.css`))
.pipe(dest(destDir));
};
});
series(...tasks)(done);
};