##// END OF EJS Templates
dependencies: Adding Bower out of nixpkgs...
dependencies: Adding Bower out of nixpkgs Usually bower would be installed globally, so it seems to be appropriate to use the one out of the nixpkgs so that we don't have to pin a specific version ourselves.

File last commit:

r703:1eda65ea default
r709:a198b78f default
Show More
Gruntfile.js
187 lines | 6.4 KiB | application/javascript | JavascriptLexer
project: added all source files and assets
r1 module.exports = function(grunt) {
grunt.initConfig({
dirs: {
css: "rhodecode/public/css",
js: {
"src": "rhodecode/public/js/src",
"dest": "rhodecode/public/js"
}
},
polymer: introduce webcomponents to rhodecode
r689 copy: {
main: {
expand: true,
cwd: 'bower_components',
src: 'webcomponentsjs/**',
dest: '<%= dirs.js.dest %>/vendors',
},
},
project: added all source files and assets
r1 concat: {
notifications: use rhodecode-toast for notifications instead of toastr jquery plugin
r699 polymercss:{
src: [
// Base libraries
'<%= dirs.js.src %>/components/shared-styles-prefix.html',
'<%= dirs.css %>/style-polymer.css',
'<%= dirs.js.src %>/components/shared-styles-suffix.html'
],
dest: '<%= dirs.js.dest %>/src/components/shared-styles.html',
nonull: true
},
project: added all source files and assets
r1 dist: {
src: [
// Base libraries
'<%= dirs.js.src %>/jquery-1.11.1.min.js',
'<%= dirs.js.src %>/logging.js',
'<%= dirs.js.src %>/bootstrap.js',
'<%= dirs.js.src %>/mousetrap.js',
'<%= dirs.js.src %>/moment.js',
'<%= dirs.js.src %>/appenlight-client-0.4.1.min.js',
i18n: added JS utils for translation.
r324 '<%= dirs.js.src %>/i18n_utils.js',
dan
deform: add deform.js to compiled scripts.js
r524 '<%= dirs.js.src %>/deform.js',
project: added all source files and assets
r1
// Plugins
'<%= dirs.js.src %>/plugins/jquery.pjax.js',
'<%= dirs.js.src %>/plugins/jquery.dataTables.js',
'<%= dirs.js.src %>/plugins/flavoured_checkbox.js',
'<%= dirs.js.src %>/plugins/jquery.auto-grow-input.js',
'<%= dirs.js.src %>/plugins/jquery.autocomplete.js',
'<%= dirs.js.src %>/plugins/jquery.debounce.js',
dan
search: add syntax highlighting, line numbers and line context...
r48 '<%= dirs.js.src %>/plugins/jquery.mark.js',
project: added all source files and assets
r1 '<%= dirs.js.src %>/plugins/jquery.timeago.js',
'<%= dirs.js.src %>/plugins/jquery.timeago-extension.js',
// Select2
'<%= dirs.js.src %>/select2/select2.js',
dan
search: add syntax highlighting, line numbers and line context...
r48
project: added all source files and assets
r1 // Code-mirror
'<%= dirs.js.src %>/codemirror/codemirror.js',
'<%= dirs.js.src %>/codemirror/codemirror_loadmode.js',
'<%= dirs.js.src %>/codemirror/codemirror_hint.js',
'<%= dirs.js.src %>/codemirror/codemirror_overlay.js',
'<%= dirs.js.src %>/codemirror/codemirror_placeholder.js',
// TODO: mikhail: this is an exception. Since the code mirror modes
// are loaded "on the fly", we need to keep them in a public folder
'<%= dirs.js.dest %>/mode/meta.js',
'<%= dirs.js.dest %>/mode/meta_ext.js',
'<%= dirs.js.dest %>/rhodecode/i18n/select2/translations.js',
// Rhodecode utilities
'<%= dirs.js.src %>/rhodecode/utils/array.js',
'<%= dirs.js.src %>/rhodecode/utils/string.js',
'<%= dirs.js.src %>/rhodecode/utils/pyroutes.js',
'<%= dirs.js.src %>/rhodecode/utils/ajax.js',
'<%= dirs.js.src %>/rhodecode/utils/autocomplete.js',
'<%= dirs.js.src %>/rhodecode/utils/colorgenerator.js',
'<%= dirs.js.src %>/rhodecode/utils/ie.js',
'<%= dirs.js.src %>/rhodecode/utils/os.js',
frontend: topics implementation needs to live in CE edition
r340 '<%= dirs.js.src %>/rhodecode/utils/topics.js',
project: added all source files and assets
r1
// Rhodecode widgets
'<%= dirs.js.src %>/rhodecode/widgets/multiselect.js',
// Rhodecode components
dan
refactor: made javascript routes autogenerate based on python routes
r94 '<%= dirs.js.src %>/rhodecode/init.js',
notifications: support real-time notifications with websockets via channelstream
r526 '<%= dirs.js.src %>/rhodecode/connection_controller.js',
project: added all source files and assets
r1 '<%= dirs.js.src %>/rhodecode/codemirror.js',
'<%= dirs.js.src %>/rhodecode/comments.js',
'<%= dirs.js.src %>/rhodecode/constants.js',
'<%= dirs.js.src %>/rhodecode/files.js',
'<%= dirs.js.src %>/rhodecode/followers.js',
'<%= dirs.js.src %>/rhodecode/menus.js',
'<%= dirs.js.src %>/rhodecode/notifications.js',
'<%= dirs.js.src %>/rhodecode/permissions.js',
'<%= dirs.js.src %>/rhodecode/pjax.js',
'<%= dirs.js.src %>/rhodecode/pullrequests.js',
'<%= dirs.js.src %>/rhodecode/settings.js',
'<%= dirs.js.src %>/rhodecode/select2_widgets.js',
'<%= dirs.js.src %>/rhodecode/tooltips.js',
'<%= dirs.js.src %>/rhodecode/users.js',
notifications: support real-time notifications with websockets via channelstream
r526 '<%= dirs.js.src %>/rhodecode/utils/notifications.js',
project: added all source files and assets
r1 '<%= dirs.js.src %>/rhodecode/appenlight.js',
// Rhodecode main module
'<%= dirs.js.src %>/rhodecode.js'
],
dest: '<%= dirs.js.dest %>/scripts.js',
nonull: true
}
},
less: {
development: {
options: {
compress: false,
yuicompress: false,
optimization: 0
},
files: {
notifications: use rhodecode-toast for notifications instead of toastr jquery plugin
r699 "<%= dirs.css %>/style.css": "<%= dirs.css %>/main.less",
"<%= dirs.css %>/style-polymer.css": "<%= dirs.css %>/polymer.less"
project: added all source files and assets
r1 }
},
production: {
options: {
compress: true,
yuicompress: true,
optimization: 2
},
files: {
notifications: use rhodecode-toast for notifications instead of toastr jquery plugin
r699 "<%= dirs.css %>/style.css": "<%= dirs.css %>/main.less",
"<%= dirs.css %>/style-polymer.css": "<%= dirs.css %>/polymer.less"
project: added all source files and assets
r1 }
components: reorganize build pipeline to have nice separation of html/js/css
r703 },
components: {
files: [{
cwd: '<%= dirs.js.src %>/components/',
dest: '<%= dirs.js.src %>/components/',
src: ['**/*.less'],
expand: true,
ext: '.css'
}]
project: added all source files and assets
r1 }
},
watch: {
less: {
files: ["<%= dirs.css %>/*.less"],
components: reorganize build pipeline to have nice separation of html/js/css
r703 tasks: ["less:development", 'less:components', 'concat:polymercss', "vulcanize"]
project: added all source files and assets
r1 },
js: {
polymer: introduce webcomponents to rhodecode
r689 files: ["<%= dirs.js.src %>/**/*.js", "<%= dirs.js.src %>/components/*.*"],
notifications: use rhodecode-toast for notifications instead of toastr jquery plugin
r699 tasks: ["vulcanize", "concat:dist"]
project: added all source files and assets
r1 }
},
jshint: {
rhodecode: {
src: '<%= dirs.js.src %>/rhodecode/**/*.js',
options: {
jshintrc: '.jshintrc'
}
}
polymer: introduce webcomponents to rhodecode
r689 },
vulcanize: {
default: {
options: {
abspath: '',
inlineScripts: true,
inlineCss: true,
stripComments: true
},
files: {
'<%= dirs.js.dest %>/rhodecode-components.html': '<%= dirs.js.src %>/components/shared-components.html'
}
}
project: added all source files and assets
r1 }
});
grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-jshint');
polymer: introduce webcomponents to rhodecode
r689 grunt.loadNpmTasks('grunt-vulcanize');
grunt.loadNpmTasks('grunt-crisper');
grunt.loadNpmTasks('grunt-contrib-copy');
project: added all source files and assets
r1
components: reorganize build pipeline to have nice separation of html/js/css
r703 grunt.registerTask('default', ['less:production', 'less:components', 'concat:polymercss', 'copy','vulcanize', 'concat:dist']);
project: added all source files and assets
r1 };