2015-08-19 00:31:03 +03:00
|
|
|
fs = require 'fs'
|
|
|
|
|
|
|
|
BABEL_PREFIXES = [
|
2015-08-19 00:51:15 +03:00
|
|
|
"'use babel'"
|
|
|
|
'"use babel"'
|
2015-08-20 21:25:38 +03:00
|
|
|
'/** @babel */'
|
2016-02-06 00:15:48 +03:00
|
|
|
'/* @flow */'
|
2015-08-19 02:17:27 +03:00
|
|
|
]
|
2015-08-19 00:31:03 +03:00
|
|
|
|
|
|
|
PREFIX_LENGTH = Math.max(BABEL_PREFIXES.map((prefix) -> prefix.length)...)
|
|
|
|
|
|
|
|
buffer = Buffer(PREFIX_LENGTH)
|
|
|
|
|
|
|
|
module.exports = (filename) ->
|
|
|
|
file = fs.openSync(filename, 'r')
|
|
|
|
fs.readSync(file, buffer, 0, PREFIX_LENGTH)
|
|
|
|
fs.closeSync(file)
|
|
|
|
BABEL_PREFIXES.some (prefix) ->
|
2015-08-19 02:17:27 +03:00
|
|
|
prefix is buffer.toString('utf8', 0, prefix.length)
|