Detects when user changes same config setting 3+ times within 24 hours. Shows non-intrusive prompt offering help with guided calibration flow. Guided calibration features: - Test for false positives (walk around room) - Test for missed motion (sit still) - Suggest optimal value based on diurnal baseline SNR and link health - Apply suggested value button Files: - dashboard/js/proactive.js: Complete implementation with localStorage tracking Acceptance: - Help prompt fires after 3+ changes in 24h - Calibration flow tests both directions - Suggests value based on system data - Apply button works |
||
|---|---|---|
| .. | ||
| test | ||
| .npmignore | ||
| index.js | ||
| LICENSE | ||
| mode.js | ||
| package.json | ||
| README.md | ||
| windows.js | ||
isexe
Minimal module to check if a file is executable, and a normal file.
Uses fs.stat and tests against the PATHEXT environment variable on
Windows.
USAGE
var isexe = require('isexe')
isexe('some-file-name', function (err, isExe) {
if (err) {
console.error('probably file does not exist or something', err)
} else if (isExe) {
console.error('this thing can be run')
} else {
console.error('cannot be run')
}
})
// same thing but synchronous, throws errors
var isExe = isexe.sync('some-file-name')
// treat errors as just "not executable"
isexe('maybe-missing-file', { ignoreErrors: true }, callback)
var isExe = isexe.sync('maybe-missing-file', { ignoreErrors: true })
API
isexe(path, [options], [callback])
Check if the path is executable. If no callback provided, and a
global Promise object is available, then a Promise will be returned.
Will raise whatever errors may be raised by fs.stat, unless
options.ignoreErrors is set to true.
isexe.sync(path, [options])
Same as isexe but returns the value and throws any errors raised.
Options
ignoreErrorsTreat all errors as "no, this is not executable", but don't raise them.uidNumber to use as the user idgidNumber to use as the group idpathExtList of path extensions to use instead ofPATHEXTenvironment variable on Windows.