Version 5.2.9

This commit is contained in:
Chrystian Huot 2021-08-27 08:33:04 -04:00
parent 8421a81f12
commit 3f2b184558
9 changed files with 62 additions and 31 deletions

View file

@ -48,6 +48,11 @@ _V5.2.8_
- Fix SQLite does not support TEXT with options. - Fix SQLite does not support TEXT with options.
_V5.2.9_
- Fix bad code for server options parsing.
- Increase dirwatch polling interval from 1000ms to 2500ms.
# Version 5.1 # Version 5.1
This one is a big one... **Be sure to backup your config.json and your database.sqlite before updating.** This one is a big one... **Be sure to backup your config.json and your database.sqlite before updating.**

View file

@ -1,6 +1,6 @@
{ {
"name": "rdio-scanner-client", "name": "rdio-scanner-client",
"version": "5.2.7", "version": "5.2.9",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {

View file

@ -37,5 +37,5 @@
"build": "ng build --base-href ./ --configuration production", "build": "ng build --base-href ./ --configuration production",
"start": "ng serve" "start": "ng serve"
}, },
"version": "5.2.8" "version": "5.2.9"
} }

View file

@ -14,5 +14,5 @@
"update": "node update" "update": "node update"
}, },
"type": "module", "type": "module",
"version": "5.2.8" "version": "5.2.9"
} }

View file

@ -157,35 +157,61 @@ export class Config extends EventEmitter {
get options() { get options() {
return { return {
autoPopulate: this._options.autoPopulate ?? defaults.options.autoPopulate, autoPopulate: typeof this._options.autoPopulate === 'boolean'
dimmerDelay: this._options.dimmerDelay ?? defaults.options.dimmerDelay, ? this._options.autoPopulate
disableAudioConversion: this._options.disableAudioConversion ?? defaults.options.disableAudioConversion, : defaults.options.autoPopulate,
disableDuplicateDetection: this._options.disableDuplicateDetection ?? defaults.options.disableDuplicateDetection, dimmerDelay: typeof this._options.dimmerDelay === 'number'
duplicateDetectionTimeFrame: this._options.duplicateDetectionTimeFrame ?? defaults.options.duplicateDetectionTimeFrame, ? this._options.dimmerDelay
keypadBeeps: this._options.keypadBeeps ?? defaults.options.keypadBeeps, : defaults.options.dimmerDelay,
pruneDays: this._options.pruneDays ?? defaults.options.pruneDays, disableAudioConversion: typeof this._options.disableAudioConversion === 'boolean'
sortTalkgroups: this._options.sortTalkgroups ?? defaults.options.sortTalkgroups, ? this._options.disableAudioConversion
: defaults.options.disableAudioConversion,
disableDuplicateDetection: typeof this._options.disableDuplicateDetection === 'boolean'
? this._options.disableDuplicateDetection
: defaults.options.disableDuplicateDetection,
duplicateDetectionTimeFrame: typeof this._options.duplicateDetectionTimeFrame === 'number'
? this._options.duplicateDetectionTimeFrame
: defaults.options.duplicateDetectionTimeFrame,
keypadBeeps: typeof this._options.keypadBeeps === 'string'
? this._options.keypadBeeps
: defaults.options.keypadBeeps,
pruneDays: typeof this._options.pruneDays === 'number'
? this._options.pruneDays
: defaults.options.pruneDays,
sortTalkgroups: typeof this._options.sortTalkgroups === 'boolean'
? this._options.sortTalkgroups
: defaults.options.sortTalkgroups,
}; };
} }
set options(options) { set options(options) {
if (options !== null && !Array.isArray(options) && typeof options === 'object') { if (options !== null && !Array.isArray(options) && typeof options === 'object') {
this._options = Object.keys(options).reduce((o, k) => { this._options = {
if ([ autoPopulate: typeof options.autoPopulate === 'boolean'
'autoPopulate', ? options.autoPopulate
'dimmerDelay', : defaults.options.autoPopulate,
'disableAudioConversion', dimmerDelay: typeof options.dimmerDelay === 'number'
'disableDuplicateDetection', ? options.dimmerDelay
'duplicateDetectionTimeFrame', : defaults.options.dimmerDelay,
'keypadBeeps', disableAudioConversion: typeof options.disableAudioConversion === 'boolean'
'pruneDays', ? options.disableAudioConversion
'sortTalkgroups', : defaults.options.disableAudioConversion,
].includes(k)) { disableDuplicateDetection: typeof options.disableDuplicateDetection === 'boolean'
o[k] = options[k] ?? defaults.options[k]; ? options.disableDuplicateDetection
} : defaults.options.disableDuplicateDetection,
duplicateDetectionTimeFrame: typeof options.duplicateDetectionTimeFrame === 'number'
return o; ? options.duplicateDetectionTimeFrame
}, {}); : defaults.options.duplicateDetectionTimeFrame,
keypadBeeps: typeof options.keypadBeeps === 'string'
? options.keypadBeeps
: defaults.options.keypadBeeps,
pruneDays: typeof options.pruneDays === 'number'
? options.pruneDays
: defaults.options.pruneDays,
sortTalkgroups: typeof options.sortTalkgroups === 'boolean'
? options.sortTalkgroups
: defaults.options.sortTalkgroups,
};
this.emit('changes'); this.emit('changes');
} }

View file

@ -451,7 +451,7 @@ export class DirWatch {
}; };
if (options.usePolling) { if (options.usePolling) {
options.binaryInterval = options.interval = dirWatch.usePolling === true ? 1000 : dirWatch.usePolling; options.binaryInterval = options.interval = dirWatch.usePolling === true ? 2500 : dirWatch.usePolling;
} }
const watcher = chokidar.watch(path.resolve(dirname, '../../..', dirWatch.directory), options); const watcher = chokidar.watch(path.resolve(dirname, '../../..', dirWatch.directory), options);

View file

@ -19,6 +19,6 @@
'use strict'; 'use strict';
export const version = '5.2.7'; export const version = '5.2.9';
export default version; export default version;

View file

@ -1,6 +1,6 @@
{ {
"name": "rdio-scanner-server", "name": "rdio-scanner-server",
"version": "5.2.7", "version": "5.2.9",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
"dependencies": { "dependencies": {

View file

@ -46,5 +46,5 @@
"start": "nodemon" "start": "nodemon"
}, },
"type": "module", "type": "module",
"version": "5.2.7" "version": "5.2.9"
} }