concat grabs all the htm pages and puts them into 1 which is /templates/min/production.htm
What I am trying to achieve is /templates/min/production.min.htm, I get no errors in terminal window.
module.exports = function (grunt) {
// 1. All configuration goes here
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
concat: {
controlCss: {
src: ['UI.controls/assets/css/*.css'],
dest: 'UI.controls/assets/css/min/production.css'
},
controlJs: {
src: ['UI.controls/assets/js/*.js'],
dest: 'UI.controls/assets/js/min/production.js'
},
coreJs: {
src: ['UI.core/assets/js/*.js'],
dest: 'UI.core/assets/js/min/production.js'
}
,
controlHtml: {
src: ['UI.controls/assets/templates/*.htm'],
dest: 'UI.controls/assets/templates/min/production.htm'
}
},
cssmin: {
controlCss: {
src: 'UI.controls/assets/css/min/production.css',
dest: 'UI.controls/assets/css/min/production.min.css'
}
},
uglify: {
controlJs: {
src: 'UI.controls/assets/js/min/production.js',
dest: 'UI.controls/assets/js/min/production.min.js'
},
coreJs: {
src: 'UI.core/assets/js/min/production.js',
dest: 'UI.core/assets/js/min/production.min.js'
}
},
htmlmin: {
controlHtml: {
options: {
removeComments: true,
collapseWhitespace: true
},
expand: true,
cwd: 'expand',
src: 'UI.controls/assets/templates/min/production.htm',
dest: 'UI.controls/assets/templates/min/production.min.htm'
}
}
});
// 2. Where we tell Grunt we plan to use this plug-in.
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-cssmin');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-htmlmin');
// 3. Where we tell Grunt what to do when we type "grunt" into the terminal.
grunt.registerTask('default', ['concat', 'cssmin', 'uglify', 'htmlmin']);
};

@mario this is running the code your way, and it seems to not find the source file... but I think it's supposed to be destination: source... not source: destination.. I'm going to post the response I get when doing destination: source too

This is the response I'm getting in my terminal window while running the code as I posted above.

@mario it seems to be freezing on reading the production.htm.

Is it anything to do with my grunt version? Must I have version 4.0? I have 4.5, should it still work? Also there are many other errors, any of them ring any bells into why my html is not minifying?
According to htmlmin documentation, you have to write the task like this:
Hope it helps.
Regards.