UNPKG

853 BJavaScriptView Raw
1var explain = require('explain-error')
2var findup = require('@choojs/findup')
3var path = require('path')
4var fs = require('fs')
5
6module.exports = isElectronProject
7
8function isElectronProject (dirname, cb) {
9 findup(dirname, 'package.json', function (err, dir) {
10 if (err) return cb(null, false)
11 fs.readFile(path.join(dir, 'package.json'), function (err, json) {
12 if (err) return cb(explain(err, 'bankai/lib/is-electron-project: error reading package.json'))
13
14 try {
15 var pkg = JSON.parse(json)
16 var hasElectronDep = Boolean((pkg.dependencies && pkg.dependencies.electron) ||
17 (pkg.devDependencies && pkg.devDependencies.electron))
18 cb(null, hasElectronDep)
19 } catch (err) {
20 if (err) return cb(explain(err, 'bankai/lib/is-electron-project: error parsing package.json'))
21 }
22 })
23 })
24}