Refactor logger (use util.inspect) and fix CSS editor not awaiting settings saving

This commit is contained in:
Samuel Elliott 2018-03-25 02:18:40 +01:00
parent 9e229a1c0f
commit 545b72cc3e
No known key found for this signature in database
GPG Key ID: 8420C7CDE43DC4D6
4 changed files with 13 additions and 19 deletions

View File

@ -42,7 +42,7 @@ export default new class {
ClientIPC.on('bd-save-scss', async (e, scss) => {
await this.updateScss(scss);
await this.save();
});
}, true);
this.liveupdate = Settings.getSetting('css', 'default', 'live-update');
this.liveupdate.on('setting-updated', event => {
@ -98,18 +98,20 @@ export default new class {
/**
* Save css to file.
* @return {Promise}
*/
async save() {
Settings.saveSettings();
save() {
return Settings.saveSettings();
}
/**
* Save current editor bounds.
* @param {Rectangle} bounds Editor bounds
* @return {Promise}
*/
saveEditorBounds(bounds) {
this.editor_bounds = bounds;
Settings.saveSettings();
return Settings.saveSettings();
}
/**

View File

@ -34,6 +34,7 @@ module.exports = {
electron: 'window.require("electron")',
fs: 'window.require("fs")',
path: 'window.require("path")',
node_utils: 'window.require("util")',
sparkplug: 'require("../../core/dist/sparkplug")'
},
resolve: {

View File

@ -35,6 +35,7 @@ module.exports = {
electron: 'window.require("electron")',
fs: 'window.require("fs")',
path: 'window.require("path")',
node_utils: 'window.require("util")',
sparkplug: 'require("./sparkplug")'
},
resolve: {

View File

@ -10,6 +10,7 @@
import { Vendor } from 'modules';
import { FileUtils } from './utils';
import node_utils from 'node_utils';
export const logLevels = {
'log': 'log',
@ -35,26 +36,15 @@ export default class Logger {
log(module, message, level = 'log') {
level = Logger.parseLevel(level);
if (typeof message === 'object' && !(message instanceof Array)) {
console[level]('[%cBetter%cDiscord:%s]', 'color: #3E82E5', '', `${module}${level === 'debug' ? '|DBG' : ''}`, message);
let message_string = message.toString();
if (message_string === '[object Object]')
message_string += ' ' + JSON.stringify(message, null, 4);
this.logs.push(`${level.toUpperCase()} : [${Logger.timestamp}|${module}] ${message_string}${message_string === '[object Object]' ? ' ' + JSON.stringify(message, null, 4) : ''}`);
if (this.file)
FileUtils.appendToFile(this.file, `${level.toUpperCase()} : [${Logger.timestamp}|${module}] ${message_string}${message_string === '[object Object]' ? ' ' + JSON.stringify(message, null, 4) : ''}\n`);
return;
}
message = typeof message === 'object' && message instanceof Array ? message : [message];
console[level]('[%cBetter%cDiscord:%s]', 'color: #3E82E5', '', `${module}${level === 'debug' ? '|DBG' : ''}`, ...message);
this.logs.push(`${level.toUpperCase()} : [${Logger.timestamp}|${module}] ${message.join(' ')}`);
const message_string = message.map(m => typeof m === 'string' ? m : node_utils.inspect(m)).join(' ');
this.logs.push(`${level.toUpperCase()} : [${Logger.timestamp}|${module}] ${message_string}`);
if (this.file)
FileUtils.appendToFile(this.file, `${level.toUpperCase()} : [${Logger.timestamp}|${module}] ${message.join(' ')}\n`);
FileUtils.appendToFile(this.file, `${level.toUpperCase()} : [${Logger.timestamp}|${module}] ${message_string}\n`);
}
logError(err) {