UNPKG

kounderscore

Version:
146 lines (127 loc) 4.33 kB
'use strict'; module.exports = function (grunt) { // Load grunt tasks automatically require("jit-grunt")(grunt, { nugetpack: "grunt-nuget", nugetpush: "grunt-nuget" }); require('time-grunt')(grunt); // Time how long tasks take. Can help when optimizing build times var options = { dev: grunt.option('dev') }; // Define the configuration for all the tasks grunt.initConfig({ pkg: grunt.file.readJSON("package.json"), paths: { src: 'src', build: 'dist', temp: '.temp', test: 'test' }, typescript: { options: { target: "es3", sourceMap: false, declaration: false, comments: false, disallowbool: true, disallowimportmodule: true }, dev: { src: ["_definitions.d.ts", "<%= paths.src %>/**/*.ts"], options: { sourceMap: true } }, test: { src: "<%= paths.test %>/**/*.ts", options: { module: "amd" } }, dist: { src: ["_definitions.d.ts", "<%= paths.src %>/**/*.ts"], dest: "<%= paths.build %>/", options: { basePath: "<%= paths.src %>" } } }, uglify: { options: {}, dist: { src: "<%= paths.build %>/kounderscore.js", dest: "<%= paths.build %>/kounderscore.min.js" } }, jshint: { options: { jshintrc: "jshint.json", }, base: ["*.js"], dev: ["<%= paths.src %>/**/*.js"], dist: ["<%= paths.build %>/**/*.js", "!**/*.min.js"], test: ["<%= paths.test %>/**/*.js"] }, tslint: { options: { configuration: grunt.file.readJSON("tslint.json") }, dev: { src: "<%= paths.src %>/**/*.ts" }, test: { src: "<%= paths.test %>/**/*.ts" } }, connect: { test: { options: { port: "8080", open: "http://localhost:8080/test/index.html", keepalive: true } } }, mocha: { test: ["<%= paths.test %>/index.html"] }, clean: { dev: [ "<%= paths.src %>/**/*.d.ts", "<%= paths.src %>/**/*.js", "<%= paths.src %>/**/*.js.map" ], test: [ "<%= paths.test %>/**/*.d.ts", "<%= paths.test %>/**/*.js", "<%= paths.test %>/**/*.js.map" ] }, nugetpack: { all: { src: "nuget/*.nuspec", dest: "nuget/", options: { version: "<%= pkg.version %>" } } }, nugetpush: { all: { src: "nuget/*.<%= pkg.version %>.nupkg" } } }); grunt.registerTask("createdecla", function () { var content = grunt.file.read("src/kounderscore.d.ts"); content = content.replace(/\.{2}\/typings/g, "../../../typings"); grunt.file.write("dist/kounderscore.d.ts", content); }); grunt.registerTask("dev", ["tslint:dev", "typescript:dev", "jshint:dev"]); grunt.registerTask("build", ["tslint:dev", "typescript:dist", "uglify:dist", "jshint:dist", "createdecla"]); grunt.registerTask("test", ["dev", "tslint:test", "typescript:test", "jshint:test", "mocha:test", "clean"]); grunt.registerTask("btest", ["dev", "tslint:test", "typescript:test", "jshint:test", "connect:test", "clean"]); grunt.registerTask("nuget", ["nugetpack", "nugetpush"]); grunt.registerTask("default", ["clean", "test", "build"]); };