bs-raw-files-generator.js 768 Bytes
Newer Older
1
2
/* jshint node: true */

Chris Rebert's avatar
Chris Rebert committed
3
var btoa = require('btoa') // jshint ignore:line
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var fs = require('fs')

function getFiles(type) {
  var files = {}
  fs.readdirSync(type)
    .filter(function (path) {
      return type == 'fonts' ? true : new RegExp('\\.' + type + '$').test(path)
    })
    .forEach(function (path) {
      var fullPath = type + '/' + path
      return files[path] = (type == 'fonts' ? btoa(fs.readFileSync(fullPath)) : fs.readFileSync(fullPath, 'utf8'))
    })
  return 'var __' + type + ' = ' + JSON.stringify(files) + '\n'
}

19
20
21
22
23
module.exports = function generateRawFilesJs(banner) {
  if (!banner) {
    banner = ''
  }
  var files = banner + getFiles('js') + getFiles('less') + getFiles('fonts')
24
25
  fs.writeFileSync('docs/assets/js/raw-files.js', files)
}