mirror of
https://github.com/sismics/docs.git
synced 2024-09-30 07:08:39 +02:00
166 lines
4.6 KiB
JavaScript
166 lines
4.6 KiB
JavaScript
module.exports = function(grunt) {
|
|
|
|
// Project configuration.
|
|
grunt.initConfig({
|
|
pkg: grunt.file.readJSON('package.json'),
|
|
clean: {
|
|
init: ['dist'],
|
|
after: ['dist/style.css', 'dist/docs.js', 'dist/share.js', 'dist/less.css', 'dist/app', 'dist/partial']
|
|
},
|
|
ngAnnotate: {
|
|
options: {
|
|
singleQuotes: true
|
|
},
|
|
dist: {
|
|
files: [{
|
|
expand: true,
|
|
cwd: 'src',
|
|
src: ['app/**/*.js'],
|
|
dest: 'dist'
|
|
}]
|
|
}
|
|
},
|
|
concat: {
|
|
docs: {
|
|
options: {
|
|
separator: ';'
|
|
},
|
|
src: ['src/lib/jquery.js','src/lib/jquery.ui.js','src/lib/underscore.js','src/lib/colorpicker.js', 'src/lib/angular.js', 'src/lib/angular.*.js',
|
|
'dist/app/docs/app.js', 'dist/app/docs/controller/**/*.js', 'dist/app/docs/directive/*.js', 'dist/app/docs/filter/*.js', 'dist/app/docs/service/*.js'],
|
|
dest: 'dist/docs.js'
|
|
},
|
|
share: {
|
|
options: {
|
|
separator: ';'
|
|
},
|
|
src: ['src/lib/jquery.js','src/lib/jquery.ui.js','src/lib/underscore.js','src/lib/colorpicker.js', 'src/lib/angular.js', 'src/lib/angular.*.js',
|
|
'dist/app/share/app.js', 'dist/app/share/controller/*.js', 'dist/app/share/directive/*.js', 'dist/app/share/filter/*.js', 'dist/app/share/service/*.js'],
|
|
dest: 'dist/share.js'
|
|
},
|
|
css: {
|
|
src: ['src/style/*.css', 'dist/less.css'],
|
|
dest: 'dist/style.css'
|
|
}
|
|
},
|
|
less: {
|
|
dist: {
|
|
src: ['src/style/*.less'],
|
|
dest: 'dist/less.css'
|
|
}
|
|
},
|
|
cssmin: {
|
|
dist: {
|
|
src: 'dist/style.css',
|
|
dest: 'dist/style/style.min.css'
|
|
}
|
|
},
|
|
uglify: {
|
|
docs: {
|
|
src: 'dist/docs.js',
|
|
dest: 'dist/docs.min.js'
|
|
},
|
|
share: {
|
|
src: 'dist/share.js',
|
|
dest: 'dist/share.min.js'
|
|
}
|
|
},
|
|
ngtemplates: {
|
|
docs: {
|
|
cwd: 'src',
|
|
src: 'partial/docs/*.html',
|
|
dest: 'dist/docs.min.js',
|
|
options: {
|
|
append: true,
|
|
htmlmin: {
|
|
collapseBooleanAttributes: false,
|
|
collapseWhitespace: true,
|
|
removeAttributeQuotes: false,
|
|
removeComments: true,
|
|
removeEmptyAttributes: false,
|
|
removeRedundantAttributes: false,
|
|
removeScriptTypeAttributes: true,
|
|
removeStyleLinkTypeAttributes: true
|
|
}
|
|
}
|
|
},
|
|
share: {
|
|
cwd: 'src',
|
|
src: 'partial/share/*.html',
|
|
dest: 'dist/share.min.js',
|
|
options: {
|
|
append: true,
|
|
htmlmin: {
|
|
collapseBooleanAttributes: false,
|
|
collapseWhitespace: true,
|
|
removeAttributeQuotes: false,
|
|
removeComments: true,
|
|
removeEmptyAttributes: false,
|
|
removeRedundantAttributes: false,
|
|
removeScriptTypeAttributes: true,
|
|
removeStyleLinkTypeAttributes: true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
copy: {
|
|
dist: {
|
|
expand: true,
|
|
cwd: 'src/',
|
|
src: ['**', '!**/*.js', '!*.html', '!**/*.less', '!**/*.css', 'locale/**'],
|
|
dest: 'dist/'
|
|
}
|
|
},
|
|
htmlrefs: {
|
|
index: {
|
|
src: 'src/index.html',
|
|
dest: 'dist/index.html'
|
|
},
|
|
share: {
|
|
src: 'src/share.html',
|
|
dest: 'dist/share.html'
|
|
}
|
|
},
|
|
cleanempty: {
|
|
options: {
|
|
files: false,
|
|
folders: true
|
|
},
|
|
src: ['dist/**']
|
|
},
|
|
replace: {
|
|
dist: {
|
|
src: ['dist/docs.min.js', 'dist/share.min.js', 'dist/**/*.html', 'dist/style/style.min.css'],
|
|
overwrite: true,
|
|
replacements: [{
|
|
from: '../api',
|
|
to: grunt.option('apiurl') || '../api'
|
|
}]
|
|
}
|
|
},
|
|
apidoc: {
|
|
generate: {
|
|
src: '../java/',
|
|
dest: 'dist/apidoc/'
|
|
}
|
|
}
|
|
});
|
|
|
|
grunt.loadNpmTasks('grunt-contrib-clean');
|
|
grunt.loadNpmTasks('grunt-contrib-concat');
|
|
grunt.loadNpmTasks('grunt-contrib-uglify');
|
|
grunt.loadNpmTasks('grunt-contrib-copy');
|
|
grunt.loadNpmTasks('grunt-cleanempty');
|
|
grunt.loadNpmTasks('grunt-htmlrefs');
|
|
grunt.loadNpmTasks('grunt-css');
|
|
grunt.loadNpmTasks('grunt-contrib-less');
|
|
grunt.loadNpmTasks('grunt-ng-annotate');
|
|
grunt.loadNpmTasks('grunt-text-replace');
|
|
grunt.loadNpmTasks('grunt-apidoc');
|
|
grunt.loadNpmTasks('grunt-angular-templates');
|
|
|
|
// Default tasks.
|
|
grunt.registerTask('default', ['clean:init', 'ngAnnotate', 'concat:docs', 'concat:share', 'less', 'concat:css',
|
|
'cssmin', 'uglify:docs', 'uglify:share', 'ngtemplates:docs', 'ngtemplates:share', 'copy', 'clean:after',
|
|
'cleanempty', 'htmlrefs:index', 'htmlrefs:share', 'replace', 'apidoc']);
|
|
|
|
}; |