diff --git a/gulpfile.js b/gulpfile.js index 816ebcd09d..da08403ca3 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -3,47 +3,60 @@ *******************************/ var - gulp = require('gulp-help')(require('gulp')), + gulp = require('gulp-help')(require('gulp')), // read user config to know what task to load - config = require('./tasks/config/user'), + config = require('./tasks/config/user'), // import tasks - build = require('./tasks/build'), - clean = require('./tasks/clean'), - version = require('./tasks/version'), - watch = require('./tasks/watch'), - - // install tasks - checkInstall = require('./tasks/check-install'), - install = require('./tasks/install'), + build = require('./tasks/build'), + clean = require('./tasks/clean'), + version = require('./tasks/version'), + watch = require('./tasks/watch'), // docs tasks - serveDocs = require('./tasks/docs/serve'), - buildDocs = require('./tasks/docs/build') + serveDocs = require('./tasks/docs/serve'), + buildDocs = require('./tasks/docs/build'), + + // rtl + buildRTL = require('./tasks/rtl/build'), + watchRTL = require('./tasks/rtl/watch') ; /*-------------- - Tasks + Common ---------------*/ +gulp.task('default', false, [ + 'check install' +]); + gulp.task('watch', 'Watch for site/theme changes', watch); gulp.task('build', 'Builds all files from source', build); gulp.task('clean', 'Clean dist folder', clean); gulp.task('version', 'Displays current version of Semantic', version); -gulp.task('check install', 'Check if project is setup', checkInstall); -gulp.task('install', 'Set-up project for first time', install); + +/*-------------- + Docs +---------------*/ gulp.task('serve-docs', 'Serve file changes to SUI Docs', serveDocs); gulp.task('build-docs', 'Build all files and add to SUI Docs', buildDocs); -gulp.task('default', false, [ - 'check install' -]); +/*-------------- + RTL +---------------*/ + +if(config.rtl) { + + gulp.task('watch rtl', 'Build all files as RTL', watchRTL); + gulp.task('build rtl', 'Watch files as RTL ', buildRTL); + +} /*-------------- Admin diff --git a/tasks/config/npm/gulpfile.js b/tasks/config/npm/gulpfile.js index edf0422f58..da08403ca3 100644 --- a/tasks/config/npm/gulpfile.js +++ b/tasks/config/npm/gulpfile.js @@ -3,29 +3,65 @@ *******************************/ var - gulp = require('gulp-help')(require('gulp')), + gulp = require('gulp-help')(require('gulp')), // read user config to know what task to load - config = require('./tasks/config/user'), + config = require('./tasks/config/user'), // import tasks - build = require('./tasks/build'), - clean = require('./tasks/clean'), - version = require('./tasks/version'), - watch = require('./tasks/watch') + build = require('./tasks/build'), + clean = require('./tasks/clean'), + version = require('./tasks/version'), + watch = require('./tasks/watch'), + + // docs tasks + serveDocs = require('./tasks/docs/serve'), + buildDocs = require('./tasks/docs/build'), + + // rtl + buildRTL = require('./tasks/rtl/build'), + watchRTL = require('./tasks/rtl/watch') ; /*-------------- - Public + Common ---------------*/ +gulp.task('default', false, [ + 'check install' +]); + gulp.task('watch', 'Watch for site/theme changes', watch); gulp.task('build', 'Builds all files from source', build); gulp.task('clean', 'Clean dist folder', clean); gulp.task('version', 'Displays current version of Semantic', version); -gulp.task('default', false, [ - 'watch' -]); \ No newline at end of file + +/*-------------- + Docs +---------------*/ + +gulp.task('serve-docs', 'Serve file changes to SUI Docs', serveDocs); +gulp.task('build-docs', 'Build all files and add to SUI Docs', buildDocs); + + +/*-------------- + RTL +---------------*/ + +if(config.rtl) { + + gulp.task('watch rtl', 'Build all files as RTL', watchRTL); + gulp.task('build rtl', 'Watch files as RTL ', buildRTL); + +} + +/*-------------- + Admin +---------------*/ + +if(config.admin) { + +} \ No newline at end of file diff --git a/tasks/config/project/config.js b/tasks/config/project/config.js index 5066e57a41..876868d856 100644 --- a/tasks/config/project/config.js +++ b/tasks/config/project/config.js @@ -24,22 +24,33 @@ module.exports = { File Paths ---------------*/ + var + currentPath = process.cwd() + path.sep + '/tasks', + folder + ; + // resolve source paths - for(var folder in config.paths.source) { + for(folder in config.paths.source) { if(config.paths.source.hasOwnProperty(folder)) { - config.paths.source[folder] = path.normalize(config.base + config.paths.source[folder]); + // add base path + config.paths.source[folder] = path.join(config.base, config.paths.source[folder]); + // resolve relative path from cwd to output folder + config.paths.source[folder] = path.resolve( path.relative(currentPath, config.paths.source[folder]) ) + path.sep; } } // resolve output paths for(folder in config.paths.output) { if(config.paths.output.hasOwnProperty(folder)) { - config.paths.output[folder] = path.normalize(config.base + config.paths.output[folder]); + // add base path + config.paths.output[folder] = path.join(config.base, config.paths.output[folder]); + // resolve relative path from cwd to output folder + config.paths.output[folder] = path.resolve( path.relative(currentPath, config.paths.output[folder]) ) + path.sep; } } // resolve "clean" command path - config.paths.clean = config.base + config.paths.clean; + config.paths.clean = path.join(config.base, config.paths.clean); /*-------------- CSS URLs diff --git a/tasks/config/project/install.js b/tasks/config/project/install.js index 3aac84975d..11777f374f 100644 --- a/tasks/config/project/install.js +++ b/tasks/config/project/install.js @@ -416,7 +416,7 @@ module.exports = { name: 'permission', message: 'What octal file permission should outputted files receive?', default: defaults.permission, - when: when.setPermission + when: when.changePermission }, { type: 'list',