let grunt = require('grunt'); let process = (src, filepath) => { return src.replace(/@import\s+"~\//g, '@import "'); }; grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), concat: { adminHomePageJs: { src: ['app/admin/homePage/**/*.js'], dest: '<%= pkg.bundleDest %>/adminHomePage.js' }, adminHomePageLess: { options: { process }, files: { '<%= pkg.bundleDest %>/less/adminHomePage.less': ['app/admin/homePage/**/*.less'] } }, basicDataJs: { src: ['app/admin/basicData/**/*.js'], dest: '<%= pkg.bundleDest %>/basicData.js' }, basicDataLess: { options: { process }, files: { '<%= pkg.bundleDest %>/less/basicData.less': ['app/admin/basicData/**/*.less'] } }, systemConfigurationJs: { src: ['app/admin/systemConfiguration/**/*.js'], dest: '<%= pkg.bundleDest %>/systemConfiguration.js' }, systemConfigurationLess: { options: { process }, files: { '<%= pkg.bundleDest %>/less/systemConfiguration.less': ['app/admin/systemConfiguration/**/*.less'] } }, basicDataCss: { src: ['app/admin/basicData/**/*.css'], dest: '<%= pkg.bundleDest %>/basicData.css' }, infrastructureJs: { src: ['app/admin/infrastructure/**/*.js'], dest: '<%= pkg.bundleDest %>/infrastructure.js' }, infrastructureLess: { options: { process }, files: { '<%= pkg.bundleDest %>/less/infrastructure.less': ['app/admin/infrastructure/**/*.less'] } }, contentCss: { src: ["Content/bootstrap.css", "Content/bootstrap-switch/bootstrap3/bootstrap-switch.css", "Content/dx.common.css", "Content/dx.light.css", "Content/animate.css", "Content/font-awesome.css", "Content/normalize.css", "Content/loading-bar.css", "Content/perfect-scrollbar.min.css", "Content/bootstrap-multiselect.css", "Content/bootstrap-datepicker/bootstrap-datepicker3.min.css", "Content/ui-grid.css", "Content/spreadjs/gcspread.sheets.excel.css", "Content/angular-ui-tree.css", "Content/sweetalert-new.css", "Content/isteven-multi-select.css", "Content/ivh-treeview/ivh-treeview.css", "Content/angular-inline-edit/ng-inline-edit.css", "Content/ivh-treeview/ivh-treeview-theme-basic.css", //"Content/bootflat.min.css", "Content/angular-notify/angular-notify.css", "Content/jquery.dataTables.css", "Content/ui-select/select.css", "Content/ui-select/select2.css", "Content/orgChart/jquery.orgchart.css", "Content/month-picker/picker.css", "Content/fancy-tree/ui.fancytree.css", "Content/angularjs-material/angular-material.css", "Content/daterangepicker.min.css", "Content/jquery-ui.css", "Content/jquery-ui.theme.css"], dest: 'Content/bundle_content.css' }, appresourcesCss: { src: ["app-resources/css/customer.css", //"app-resources/css/theme.css", "app-resources/css/nav.css", "app-resources/css/tree.css", "app-resources/css/icon.css", "app-resources/css/abn_tree.css", "app-resources/css/layout.css", "app-resources/css/toolbar.css", "app-resources/css/table.css"], dest: '<%= pkg.bundleDest %>/appresources.css' }, appresourcesLess: { options: { process }, files: { '<%= pkg.bundleDest %>/less/appresources.less': ["app-resources/css/**/*.less", "app-resources/less/**/*.less"] } }, commonCss: { src: ["app/common/**/*.css"], dest: '<%= pkg.bundleDest %>/common.css' }, commonLess: { options: { process }, files: { '<%= pkg.bundleDest %>/less/common.less': ["app/common/**/*.less"] } }, modernizr: { src: ["Scripts/modernizr-*"], dest: '<%= pkg.bundleDest %>/modernizr.js' }, jquery: { src: ["Scripts/jquery/jquery-3.1.0.js"], dest: '<%= pkg.bundleDest %>/jquery.js' }, jquerysignalR: { src: ["Scripts/jquery-signalr/jquery.signalR-2.2.1.js"], dest: '<%= pkg.bundleDest %>/jquerysignalR.js' }, angular: { src: ["Scripts/angular.js", "Scripts/angular-route.js", "Scripts/angular-translate.js", "Scripts/angular-translate-loader-partial.js", "Scripts/angular-route.js", "Scripts/angular-cookies.js", "Scripts/angular-sanitize.js", "Scripts/angular-messages.js", "Scripts/angular-animate.js", "Scripts/angular-aria.js", "Scripts/loading-bar.js", "Scripts/ngDraggable.js", "Scripts/ng-file-upload.js", "Scripts/ng-file-upload-shim.js", "Scripts/angular-local-storage.js", "Scripts/i18n/angular-locale_zh-cn.js", "Scripts/bindonce.js", "Scripts/angular-vs-repeat.js", "Scripts/sweetalert-new.min.js", "Scripts/abn-tree/abn_tree_directive.js", "Scripts/angular-perfect-scrollbar.min.js", "Scripts/angular-material/angular-material.js", "Scripts/ngRemoteValidate.0.6.1.js", "Scripts/fileSaver/FileSaver.js", "Scripts/fileSaver/angular-file-saver.js", "Scripts/moment.min.js", "Scripts/jquery-daterangepicker/jquery.daterangepicker.js"], dest: '<%= pkg.bundleDest %>/angular.js' }, angularui: { src: ["Scripts/angular-ui/ui-bootstrap-tpls.js", "Scripts/angular-ui/ui-bootstrap.js", "Scripts/angular-ui/ui-utils-ieshiv.js", "Scripts/angular-ui/ui-utils.js", "Scripts/angular-ui-router.js", "Scripts/ct-ui-router-extras.js", "Scripts/ui-grid.js", "Scripts/angular-ui-tree.js", "Scripts/isteven-multi-select.js", "Scripts/xlsx.full.min.js", "Scripts/Export2Excel.js", "Scripts/Blob.js", "Scripts/FileSaver.min.js", "Scripts/moment.min.js"], dest: '<%= pkg.bundleDest %>/angularui.js' }, bootstrap: { src: ["Scripts/bootstrap.js", "Scripts/bootstrap-switch.js", "Scripts/bootstrap-multiselect.js", "Scripts/bootstrap-datepicker/bootstrap-datepicker.js", "Scripts/locales/bootstrap-datepicker.zh-CN.min.js", "Scripts/respond.js"], dest: '<%= pkg.bundleDest %>/bootstrap.js' }, util: { src: ["Scripts/underscore.js", "Scripts/arrgh.js", "Scripts/jquery.page.js", "Scripts/jquery.floatThead.js", "Scripts/jquery.dataTables.js", "Scripts/perfect-scrollbar.jquery.min.js", "Scripts/jquery-ui.min.js", "Scripts/numeral.js", "Scripts/angular-numeraljs.js", "Scripts/split.min.js", "Scripts/fancy-tree/jquery.fancytree.js", "Scripts/fancy-tree/jquery.fancytree.dnd.js", "Scripts/fancy-tree/jquery.fancytree.edit.js", "Scripts/fancy-tree/jquery.fancytree.glyph.js", "Scripts/fancy-tree/jquery.fancytree.table.js", "Scripts/fancy-tree/jquery.fancytree.wide.js", "Scripts/fancy-tree/jquery.fancytree.filter.js", "Scripts/fancy-tree/jquery.fancytree-all-deps.min.js", "Scripts/position-calculator/position-calculator.min.js"], dest: '<%= pkg.bundleDest %>/util.js' }, jqueryval: { src: ["Scripts/jquery.validate*"], dest: '<%= pkg.bundleDest %>/jqueryval.js' }, exceptionless: { src: ["Scripts/exceptionless/exceptionless.js", "Scripts/exceptionless/integrations/angular.js"], dest: '<%= pkg.bundleDest %>/exceptionless.js' }, angularCache: { src: ["Scripts/angular-cache/angular-cache.js"], dest: '<%= pkg.bundleDest %>/angular-cache.js' }, echarts: { src: ["Scripts/echarts.min.js", "Scripts/orgChart/jquery.orgchart.js", "Scripts/orgChart/html2canvas.min.js"], dest: '<%= pkg.bundleDest %>/echarts.js' }, mentio: { src: ["Scripts/mentio.js"], dest: '<%= pkg.bundleDest %>/mentio.js' }, adminApp: { src: ["app/adminApp.js", "app/app.config.js", "app/adminModule.js"], dest: '<%= pkg.bundleDest %>/adminApp.js' }, commonJs: { src: ["app/common/**/*.js"], dest: '<%= pkg.bundleDest %>/common.js' }, frameworkJs: { src: ["app/framework/**/*.js"], dest: '<%= pkg.bundleDest %>/framework.js' }, cldr: { src: ["Scripts/cldr.js", "Scripts/cldr/event.js", "Scripts/cldr/supplemental.js", "Scripts/cldr/unresolved.js"], dest: '<%= pkg.bundleDest %>/cldr.js' }, globalize: { src: ["Scripts/globalize.js", "Scripts/globalize/number.js", "Scripts/globalize/date.js"], dest: '<%= pkg.bundleDest %>/globalize.js' }, dx: { src: ["Scripts/jquery.globalize/globalize.js", "Scripts/jszip.min.js", "Scripts/dx.all.js", "Scripts/devextreme-localization/dx.messages.cn.js"], dest: '<%= pkg.bundleDest %>/dx.js' }, spreadjs: { src: ["Scripts/spreadjs/gcspread.sheets.all.9.40.20161.0.min.js"], dest: '<%= pkg.bundleDest %>/spread.js' }, ivhTreeview: { src: ["Scripts/angular-ivh-treeview/ivh-treeview.js", "Scripts/angular-notify/angular-notify.js", "Scripts/angular-inline-edit/ng-inline-edit.js"], dest: '<%= pkg.bundleDest %>/ivh-treeview.js' }, uiSelect: { src: ["Scripts/ui-select/select.js"], dest: '<%= pkg.bundleDest %>/ui-select.js' }, accountLogin: { src: ["app-resources/css/customer.css"], dest: '<%= pkg.bundleDest %>/accountLogin.css' }, scriptsLogin: { src: ["Scripts/login.js", "Scripts/jquery.validate.js"], dest: '<%= pkg.bundleDest %>/scriptsLogin.js' } }, less: { adminHomePage: { files: { "<%= pkg.bundleDest %>/adminHomePage.less": "<%= pkg.bundleDest %>/less/adminHomePage.less" } }, basicData: { files: { "<%= pkg.bundleDest %>/basicData.less": "<%= pkg.bundleDest %>/less/basicData.less" } }, infrastructure: { files: { "<%= pkg.bundleDest %>/infrastructure.less": "<%= pkg.bundleDest %>/less/infrastructure.less" } }, appresources: { files: { '<%= pkg.bundleDest %>/appresources.less': '<%= pkg.bundleDest %>/less/appresources.less' } }, systemConfiguration: { files: { '<%= pkg.bundleDest %>/systemConfiguration.less': '<%= pkg.bundleDest %>/less/systemConfiguration.less' } }, common: { files: { '<%= pkg.bundleDest %>/common.less': '<%= pkg.bundleDest %>/less/common.less' } } } }); grunt.loadNpmTasks('grunt-contrib-concat'); grunt.loadNpmTasks('grunt-contrib-less'); //grunt.registerTask('lessDev', ['less:development']);