-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbetter-output.js
31 lines (25 loc) · 972 Bytes
/
better-output.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
var fs = require('fs')
var path = require('path')
var sass = require('node-sass')
var express = require('express')
var outFile = 'dist/assets/app.css'
var result = sass.renderSync({
file: 'styles/app.scss',
includePaths: ['styles', 'vendor'],
sourceMap: true,
// HACK 1: Force all "sources" to be relative to project root
outFile: path.join(process.cwd(), path.basename(outFile)),
sourceMapContents: true,
})
// HACK 2: node-sass does not support sourceRoot, but we can add it
var map = JSON.parse(result.map)
map.sourceRoot = 'file://' + __dirname
result.map = JSON.stringify(map, null, '\t')
console.error(result.map)
fs.writeFileSync(outFile, result.css)
fs.writeFileSync(outFile + '.map', result.map)
fs.writeFileSync('dist/index.html', '<!DOCTYPE html><link rel="stylesheet" href="assets/app.css">')
var app = express()
app.use(express.static(__dirname + '/dist'))
app.listen(3000, '0.0.0.0')
console.error('Serving ./dist on http://0.0.0.0:3000/')