put all js libs for bootstrap view into one copy task

This commit is contained in:
Uwe Steinmann 2020-08-31 09:50:51 +02:00
parent 52f6d0a803
commit ee87a6a384

View File

@ -1,205 +1,191 @@
module.exports = function (grunt) { module.exports = function (grunt) {
'use strict'; 'use strict';
var vendorDir = 'views/bootstrap/vendors', var bootstrapDir = 'views/bootstrap/vendors',
tdkDir = 'views/tdk/vendors',
nodeDir = 'node_modules'; nodeDir = 'node_modules';
grunt.initConfig({ grunt.initConfig({
clean: { clean: {
vendors: [ vendorDir ] vendors: [ bootstrapDir ]
}, },
copy: { copy: {
'jquery': { 'bootstrap': {
files: [{ files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/jquery/dist/*' nodeDir + '/jquery/dist/*'
], ],
dest: vendorDir + '/jquery', dest: bootstrapDir + '/jquery',
flatten: true flatten: true
}] }, {
},
'chartjs': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/chartjs/chart.js', nodeDir + '/chartjs/chart.js',
nodeDir + '/chartjs/README.md', nodeDir + '/chartjs/README.md',
nodeDir + '/chartjs/LICENSE' nodeDir + '/chartjs/LICENSE'
], ],
dest: vendorDir + '/chartjs', dest: bootstrapDir + '/chartjs',
flatten: true flatten: true
}] },{
},
'cytoscape': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/cytoscape/dist/*', nodeDir + '/cytoscape/dist/*',
nodeDir + '/cytoscape-grid-guide/cytoscape-grid-guide.js' nodeDir + '/cytoscape-grid-guide/cytoscape-grid-guide.js'
], ],
dest: vendorDir + '/cytoscape', dest: bootstrapDir + '/cytoscape',
flatten: true flatten: true
}] },{
},
'jqtree': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/jqtree/tree.jquery.js', nodeDir + '/jqtree/tree.jquery.js',
nodeDir + '/jqtree/jqtree.css' nodeDir + '/jqtree/jqtree.css'
], ],
dest: vendorDir + '/jqtree', dest: bootstrapDir + '/jqtree',
flatten: true flatten: true
}] },{
},
'noty': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/noty/js/noty/jquery.noty.js' nodeDir + '/noty/js/noty/jquery.noty.js'
], ],
dest: vendorDir + '/noty', dest: bootstrapDir + '/noty',
flatten: true flatten: true
},{ },{
expand: true, expand: true,
src: [ src: [
nodeDir + '/noty/js/noty/themes/*' nodeDir + '/noty/js/noty/themes/*'
], ],
dest: vendorDir + '/noty/themes', dest: bootstrapDir + '/noty/themes',
flatten: true flatten: true
},{ },{
expand: true, expand: true,
src: [ src: [
nodeDir + '/noty/js/noty/layouts/*' nodeDir + '/noty/js/noty/layouts/*'
], ],
dest: vendorDir + '/noty/layouts', dest: bootstrapDir + '/noty/layouts',
flatten: true flatten: true
}] },{
},
'select2': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/select2/dist/js/*' nodeDir + '/select2/dist/js/*'
], ],
dest: vendorDir + '/select2/js', dest: bootstrapDir + '/select2/js',
flatten: true flatten: true
},{ },{
expand: true, expand: true,
src: [ src: [
nodeDir + '/select2/dist/css/*' nodeDir + '/select2/dist/css/*'
], ],
dest: vendorDir + '/select2/css', dest: bootstrapDir + '/select2/css',
flatten: true flatten: true
}] },{
},
'fine-uploader': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/fine-uploader/jquery.fine-uploader/*' nodeDir + '/fine-uploader/jquery.fine-uploader/*'
], ],
dest: vendorDir + '/fine-uploader', dest: bootstrapDir + '/fine-uploader',
flatten: true flatten: true
}] },{
},
'jquery-validation': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/jquery-validation/dist/*' nodeDir + '/jquery-validation/dist/*'
], ],
dest: vendorDir + '/jquery-validation', dest: bootstrapDir + '/jquery-validation',
flatten: true flatten: true
}] },{
},
'flot': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/flot/source/jquery.canvaswrapper.js', nodeDir + '/flot/source/jquery.canvaswrapper.js',
nodeDir + '/flot/source/jquery.colorhelpers.js', nodeDir + '/flot/source/jquery.colorhelpers.js',
nodeDir + '/flot/source/jquery.flot.*' nodeDir + '/flot/source/jquery.flot.*'
], ],
dest: vendorDir + '/flot', dest: bootstrapDir + '/flot',
flatten: true flatten: true
}] },{
},
'font-awesome': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/font-awesome/fonts/*' nodeDir + '/font-awesome/fonts/*'
], ],
dest: vendorDir + '/font-awesome/fonts', dest: bootstrapDir + '/font-awesome/fonts',
flatten: true flatten: true
},{ },{
expand: true, expand: true,
src: [ src: [
nodeDir + '/font-awesome/css/*' nodeDir + '/font-awesome/css/*'
], ],
dest: vendorDir + '/font-awesome/css', dest: bootstrapDir + '/font-awesome/css',
flatten: true flatten: true
}] },{
},
'fullcalendar': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/fullcalendar/LICENSE.txt', nodeDir + '/fullcalendar/LICENSE.txt',
nodeDir + '/fullcalendar/dist/*' nodeDir + '/fullcalendar/dist/*'
], ],
dest: vendorDir + '/fullcalendar', dest: bootstrapDir + '/fullcalendar',
flatten: true flatten: true
},{ },{
expand: true, expand: true,
src: [ src: [
nodeDir + '/fullcalendar/dist/locale/*' nodeDir + '/fullcalendar/dist/locale/*'
], ],
dest: vendorDir + '/fullcalendar/locale', dest: bootstrapDir + '/fullcalendar/locale',
flatten: true flatten: true
}] },{
},
'moment': {
files: [{
expand: true, expand: true,
src: [ src: [
nodeDir + '/moment/LICENSE.txt', nodeDir + '/moment/LICENSE.txt',
nodeDir + '/moment/min/*' nodeDir + '/moment/min/*'
], ],
dest: vendorDir + '/moment', dest: bootstrapDir + '/moment',
flatten: true flatten: true
},{ },{
expand: true, expand: true,
src: [ src: [
nodeDir + '/moment/dist/locale/*' nodeDir + '/moment/dist/locale/*'
], ],
dest: vendorDir + '/moment/locale', dest: bootstrapDir + '/moment/locale',
flatten: true flatten: true
}] },{
}, expand: true,
'bootstrap-datepicker': { src: [
files: [{ nodeDir + '/perfect-scrollbar/dist/*'
],
dest: bootstrapDir + '/perfect-scrollbar',
flatten: true
},{
expand: true, expand: true,
src: [ src: [
nodeDir + '/bootstrap-datepicker/dist/js/*' nodeDir + '/bootstrap-datepicker/dist/js/*'
], ],
dest: vendorDir + '/bootstrap-datepicker/js', dest: bootstrapDir + '/bootstrap-datepicker/js',
flatten: true flatten: true
},{ },{
expand: true, expand: true,
src: [ src: [
nodeDir + '/bootstrap-datepicker/dist/css/*' nodeDir + '/bootstrap-datepicker/dist/css/*'
], ],
dest: vendorDir + '/bootstrap-datepicker/css', dest: bootstrapDir + '/bootstrap-datepicker/css',
flatten: true flatten: true
},{ },{
expand: true, expand: true,
src: [ src: [
nodeDir + '/bootstrap-datepicker/dist/locales/*' nodeDir + '/bootstrap-datepicker/dist/locales/*'
], ],
dest: vendorDir + '/bootstrap-datepicker/locales', dest: bootstrapDir + '/bootstrap-datepicker/locales',
flatten: true
},{
expand: true,
src: [
nodeDir + '/@coreui/coreui/dist/js/*'
],
dest: bootstrapDir + '/coreui/js',
flatten: true
},{
expand: true,
src: [
nodeDir + '/@coreui/coreui/dist/css/*'
],
dest: bootstrapDir + '/coreui/css',
flatten: true flatten: true
}] }]
}, },
@ -209,29 +195,64 @@ module.exports = function (grunt) {
src: [ src: [
nodeDir + '/@coreui/coreui/dist/js/*' nodeDir + '/@coreui/coreui/dist/js/*'
], ],
dest: vendorDir + '/coreui/js', dest: tdkDir + '/coreui/js',
flatten: true flatten: true
},{ },{
expand: true, expand: true,
src: [ src: [
nodeDir + '/@coreui/coreui/dist/css/*' nodeDir + '/@coreui/coreui/dist/css/*'
], ],
dest: vendorDir + '/coreui/css', dest: tdkDir + '/coreui/css',
flatten: true
},{
expand: true,
src: [
nodeDir + '/perfect-scrollbar/dist/*'
],
dest: tdkDir + '/perfect-scrollbar',
flatten: true
},{
expand: true,
src: [
nodeDir + '/bootstrap/dist/js/*'
],
dest: tdkDir + '/bootstrap/js',
flatten: true
},{
expand: true,
src: [
nodeDir + '/bootstrap/dist/css/*'
],
dest: tdkDir + '/bootstrap/css',
flatten: true
},{
expand: true,
src: [
nodeDir + '/font-awesome/fonts/*'
],
dest: tdkDir + '/font-awesome/fonts',
flatten: true
},{
expand: true,
src: [
nodeDir + '/font-awesome/css/*'
],
dest: tdkDir + '/font-awesome/css',
flatten: true flatten: true
}] }]
} },
} }
}); });
grunt.registerTask('createVendorDir', 'Creates the necessary vendor directory', function() { grunt.registerTask('createVendorDir', 'Creates the necessary vendor directory', function() {
// Create the vendorDir when it doesn't exists. // Create the bootstrapDir when it doesn't exists.
if (!grunt.file.isDir(vendorDir)) { if (!grunt.file.isDir(bootstrapDir)) {
grunt.file.mkdir(vendorDir); grunt.file.mkdir(bootstrapDir);
// Output a success message // Output a success message
grunt.log.oklns(grunt.template.process( grunt.log.oklns(grunt.template.process(
'Directory "<%= directory %>" was created successfully.', 'Directory "<%= directory %>" was created successfully.',
{ data: { directory: vendorDir } } { data: { directory: bootstrapDir } }
)); ));
} }
}); });