UNPKG

glass-build

Version:

Contains scripts for building glass based projects.

38 lines (34 loc) 1.58 kB
{watcher,utility} = browserBuild = require 'browser-build' np = require 'path' cb = require 'coffeebars' coffeePageInputExt = ".page" coffeePageOutputExt = ".coffee" exports.buildCoffeePages = buildCoffeePages = (config) -> return unless config? config.input.extension ?= coffeePageInputExt config.output.extension ?= coffeePageOutputExt for inputFile in utility.list config.input.directory, {include:config.input.extension} buildCoffeePage config, inputFile # finally, build coffeescript utility.buildCoffee config.output.directory, config.output.directory exports.watchCoffeePages = watchCoffeePages = (config) -> return unless config? config.input.extension ?= coffeePageInputExt config.output.extension ?= coffeePageOutputExt watcher.watchDirectory config.input.directory, {include:config.input.extension}, (file) -> console.log "Compiling #{file}" buildCoffeePage config, file # finally, build coffeescript utility.watchCoffee config.output.directory, config.output.directory exports.buildCoffeePage = buildCoffeePage = (config, inputFile) -> input = config.input.directory output = config.output.directory inputExt = config.input.extension outputExt = config.output.extension outputFile = np.join(output, np.relative(input, inputFile)).slice(0, -inputExt.length) + outputExt source = utility.read inputFile try compiled = cb.toCoffeeScript source utility.write outputFile, compiled catch e console.log e