npmrcd
Version:
CLI that installs a daemon/agent that will automatically switch between npm registries on a developer machine.
33 lines (25 loc) • 885 B
JavaScript
const os = require('os')
const execa = require('execa')
const config = require('./config')
const log = require('barelog')
const getWirelessSSID = exports.getWirelessSSID = function () {
const platform = os.platform()
log('performing SSID lookup')
switch (platform) {
case 'darwin':
return osxGetNetworkSSID()
default:
throw new Error(`SSID lookup for platform ${platform} not implemented`)
}
}
function osxGetNetworkSSID () {
return execa('networksetup', ['-getairportnetwork', 'en0'])
// Split "Current Wi-Fi Network: mynetwork" and return "mynetwork"
.then(result => result.stdout.toString().split(': ')[1])
}
exports.isConnectdedToTriggerSSID = async () => {
const ssid = await getWirelessSSID()
const { triggerSSIDs } = config.getWorkSettings()
return triggerSSIDs.find(t => t.toLowerCase() === ssid.toLowerCase())
}