14 lines
389 B
JavaScript
14 lines
389 B
JavaScript
var crypto = require('crypto')
|
|
var path = require('path')
|
|
var cwd = process.cwd()
|
|
|
|
module.exports = (code, fileName, compiledDir) => {
|
|
var hash = crypto
|
|
.createHash('sha256')
|
|
.update(fileName + code, 'utf8')
|
|
.digest('hex')
|
|
fileName = path.relative(cwd, fileName)
|
|
var hashed = fileName.replace(/[^\w]/g, '_') + '_' + hash + '.js'
|
|
return path.join(compiledDir, hashed)
|
|
}
|