mirror of
https://github.com/opensourcepos/opensourcepos.git
synced 2026-04-11 02:21:10 -04:00
204 lines
4.3 KiB
JavaScript
204 lines
4.3 KiB
JavaScript
module.exports = function(grunt) {
|
|
|
|
dist_files = [
|
|
{
|
|
src: [
|
|
'public/**',
|
|
'vendor/**',
|
|
'app/**',
|
|
'!/tests',
|
|
'!grunt045**',
|
|
'!/public/images/menubar/png/',
|
|
'!/public/dist/bootswatch/',
|
|
'/public/dist/bootswatch/*/*.css',
|
|
'!/public/dist/bootswatch-5/',
|
|
'/public/dist/bootswatch-5/*/*.css',
|
|
'app/Database/**',
|
|
'*.txt',
|
|
'*.md',
|
|
'LICENSE',
|
|
'docker*',
|
|
'docker/**',
|
|
'Dockerfile',
|
|
'**/.htaccess',
|
|
'*.csv'
|
|
]
|
|
}
|
|
];
|
|
|
|
ospos_css = ['public/css/*.css',
|
|
'!public/css/login.css',
|
|
'!public/css/login.min.css',
|
|
'!public/css/invoice_email.css',
|
|
'!public/css/barcode_font.css',
|
|
'!public/css/darkly.css'];
|
|
|
|
ospos_js = ['public/dist/bootstrap/js/*.min.js',
|
|
'public/js/jquery*',
|
|
'public/js/*.js'];
|
|
|
|
ospos_min_css = ['public/dist/jquery-ui/*.css',
|
|
'public/dist/*.css'];
|
|
|
|
ospos_min_js = ['public/dist/*min.js'];
|
|
|
|
|
|
grunt.initConfig({
|
|
pkg: grunt.file.readJSON('package.json'),
|
|
wiredep: {
|
|
task: {
|
|
ignorePath: '../../../public/',
|
|
src: ['app/Views/partial/header.php']
|
|
}
|
|
},
|
|
injector: {
|
|
options: {
|
|
lineEnding: '\n',
|
|
ignorePath: 'public/',
|
|
addRootSlash: false,
|
|
},
|
|
css_js_header: {
|
|
files: {
|
|
'app/Views/partial/header.php': [ospos_css, ospos_js]
|
|
},
|
|
},
|
|
mincss_header: {
|
|
options: {
|
|
starttag: '<!-- mincss injector:css -->',
|
|
},
|
|
files: {
|
|
'app/Views/partial/header.php': [ospos_min_css]
|
|
},
|
|
},
|
|
minjs: {
|
|
options: {
|
|
starttag: '<!-- minjs injector:js -->',
|
|
},
|
|
files: {
|
|
'app/Views/partial/header.php': [ospos_min_js]
|
|
},
|
|
},
|
|
css_login: {
|
|
files: {
|
|
'app/Views/login.php': ['public/css/login.min.css']
|
|
},
|
|
},
|
|
},
|
|
bowercopy: {
|
|
options: {
|
|
report: false
|
|
},
|
|
targetdistjqueryui: {
|
|
options: {
|
|
srcPrefix: 'public/resources/jquery-ui',
|
|
destPrefix: 'public/dist'
|
|
},
|
|
files: {
|
|
'jquery-ui': 'themes/base/jquery-ui.min.css'
|
|
}
|
|
},
|
|
targetdistbootswatch: {
|
|
options: {
|
|
srcPrefix: 'public/resources/bootswatch',
|
|
destPrefix: 'public/dist'
|
|
},
|
|
files: {
|
|
bootswatch: '*/'
|
|
}
|
|
},
|
|
targetlicense: {
|
|
options: {
|
|
srcPrefix: './'
|
|
},
|
|
files: {
|
|
'public/license': 'LICENSE'
|
|
}
|
|
}
|
|
},
|
|
cssmin: {
|
|
target: {
|
|
files: {
|
|
'public/dist/opensourcepos.min.css': ['tmp/opensourcepos_bower.css', 'public/css/*.css', '!public/css/login.css', '!public/css/login.min.css', '!public/css/invoice_email.css', '!public/css/barcode_font.css', '!public/css/darkly.css'],
|
|
'public/css/login.min.css': ['public/css/login.css']
|
|
}
|
|
}
|
|
},
|
|
concat: {
|
|
js: {
|
|
options: {
|
|
separator: '\n'
|
|
},
|
|
files: {
|
|
'tmp/opensourcepos.js': ['public/dist/jquery/jquery.js', 'tmp/opensourcepos_bower.js', 'public/js/*.js']
|
|
}
|
|
},
|
|
sql: {
|
|
options: {
|
|
banner: '-- >> This file is autogenerated from tables.sql and constraints.sql. Do not modify directly << --'
|
|
},
|
|
files: {
|
|
'app/Database/database.sql': ['app/Database/tables.sql', 'app/Database/constraints.sql'],
|
|
'app/Database/migrate_phppos_dist.sql': ['app/Database/tables.sql', 'app/Database/Migrations/sqlscripts/pre-3.0.2/phppos_migrate.sql', 'database/constraints.sql']
|
|
}
|
|
}
|
|
},
|
|
uglify: {
|
|
options: {
|
|
banner: '/*! opensourcepos <%= grunt.template.today("dd-mm-yyyy") %> */\n'
|
|
},
|
|
dist: {
|
|
files: {
|
|
'public/dist/opensourcepos.min.js': ['tmp/opensourcepos.js']
|
|
}
|
|
}
|
|
},
|
|
jshint: {
|
|
files: ['public/js/imgpreview.full.jquery.js',
|
|
'public/js/manage_tables.js',
|
|
'public/js/nominatim.autocomplete.js'],
|
|
options: {
|
|
esversion: 6,
|
|
globals: {
|
|
jQuery: true,
|
|
console: true,
|
|
module: true,
|
|
document: true
|
|
}
|
|
}
|
|
},
|
|
watch: {
|
|
files: ['<%= jshint.files %>'],
|
|
tasks: ['jshint']
|
|
},
|
|
compress: {
|
|
tar: {
|
|
options: {
|
|
mode: 'tar',
|
|
archive: 'dist/opensourcepos.tgz',
|
|
level: 2,
|
|
},
|
|
files: dist_files
|
|
},
|
|
zip: {
|
|
options: {
|
|
mode: 'zip',
|
|
archive: 'dist/opensourcepos.zip',
|
|
},
|
|
files: dist_files
|
|
}
|
|
}
|
|
});
|
|
|
|
require('load-grunt-tasks')(grunt);
|
|
|
|
grunt.loadNpmTasks('grunt-contrib-compress');
|
|
|
|
grunt.registerTask('task1', ['wiredep']);
|
|
grunt.registerTask('task3', ['bowercopy']);
|
|
grunt.registerTask('task5', ['concat','uglify','cssmin','injector','jshint']);
|
|
grunt.registerTask('task7', ['compress']);
|
|
|
|
grunt.registerTask('watch', ['watch']);
|
|
|
|
};
|