tasks/joosy.coffee in joosy-1.2.0.alpha.20 vs tasks/joosy.coffee in joosy-1.2.0.alpha.21
- old
+ new
@@ -1,9 +1,7 @@
module.exports = (grunt) ->
- Path = require('path')
-
grunt.loadNpmTasks 'grunt-mincer'
grunt.loadNpmTasks 'grunt-contrib-connect'
grunt.loadNpmTasks 'grunt-contrib-uglify'
grunt.loadNpmTasks 'grunt-contrib-cssmin'
grunt.loadNpmTasks 'grunt-bower-task'
@@ -12,20 +10,24 @@
grunt.registerTask 'joosy:compile:code', ['mince:code', 'uglify:application']
grunt.registerTask 'joosy:compile:styles', ['mince:styles', 'cssmin:application']
grunt.registerTask 'joosy:compile:playground', ->
hamlc = require 'haml-coffee'
- grunt.file.write 'public/index.html', hamlc.compile(grunt.file.read 'source/index.haml')(environment: 'production')
+ grunt.file.write 'public/index.html', hamlc.compile(grunt.file.read 'source/index.haml')(
+ environment: 'production'
+ config: grunt.config.get('joosy.config') || {}
+ )
grunt.registerTask 'joosy:server', ->
@async()
- connect = require('connect')
- mincer = require('mincer')
- hamlc = require('haml-coffee')
+ connect = require 'connect'
+ mincer = require 'mincer'
+ hamlc = require 'haml-coffee'
+ path = require 'path'
mincer.StylusEngine.registerConfigurator (stylus) ->
- stylus.options.paths.push Path.join(process.cwd(), 'public')
+ stylus.options.paths.push path.join(process.cwd(), 'public')
stylus.use require('nib')()
server = connect()
assets = new mincer.Environment(process.cwd())
assets.appendPath 'source',
@@ -36,15 +38,27 @@
server.use '/assets', mincer.createServer(assets)
server.use '/', (req, res, next) ->
if req.url == '/'
- res.end hamlc.compile(grunt.file.read 'source/index.haml')(environment: 'development')
+ res.end hamlc.compile(grunt.file.read 'source/index.haml')(
+ environment: 'development'
+ config: grunt.config.get('joosy.config') || {}
+ )
else
next()
-
+
+ if grunt.config.get('joosy.proxy')
+ proxy = require 'proxy-middleware'
+ url = require 'url'
+
+ for from, to of grunt.config.get('joosy.proxy')
+ console.log "-> Proxying #{from} to #{to}"
+ server.use from, proxy(url.parse to)
+
server.use connect.static('public')
server.listen 4000
+ console.log "-> Started on 4000\n"
grunt.registerTask 'joosy:server:production', ->
@async()
connect = require('connect')
server = connect()