From 7817878719ce128f54fc3d370828df3eb716b09f Mon Sep 17 00:00:00 2001 From: filip mertens Date: Tue, 12 Dec 2023 11:56:09 +0100 Subject: [PATCH] fix config --- .../src/plugins/compilerLoader.ts | 12 +++---- apps/remixdesktop/src/plugins/configPlugin.ts | 11 ------- apps/remixdesktop/src/utils/config.ts | 31 ++++++++++++------- 3 files changed, 25 insertions(+), 29 deletions(-) diff --git a/apps/remixdesktop/src/plugins/compilerLoader.ts b/apps/remixdesktop/src/plugins/compilerLoader.ts index 182e7373c7..a385fdb9c9 100644 --- a/apps/remixdesktop/src/plugins/compilerLoader.ts +++ b/apps/remixdesktop/src/plugins/compilerLoader.ts @@ -133,19 +133,19 @@ class CompilerLoaderPluginClient extends ElectronBasePluginClient { this.solJsonBinData = { baseURLWasm: 'http://localhost:' + (server.address() as any).port + '/compilers', baseURLBin: 'http://localhost:' + (server.address() as any).port + '/compilers', - wasmList: lists.wasmData, - binList: lists.binData, + wasmList: lists.wasmData || [], + binList: lists.binData || [], } console.log('emit', Date.now()) const localCompilers = await this.listCompilers() - this.solJsonBinData.wasmList = this.solJsonBinData.wasmList.map((item) => { + this.solJsonBinData.wasmList && (this.solJsonBinData.wasmList = this.solJsonBinData.wasmList.map((item) => { localCompilers.includes(item.path) ? (item.wasmURL = 'http://localhost:' + (server.address() as any).port + '/compilers/') && (item.isDownloaded=true) : (item.wasmURL = baseURLWasm) && (item.isDownloaded = false) return item - }) - this.solJsonBinData.binList = this.solJsonBinData.binList.map((item) => { + })) + this.solJsonBinData.binList && (this.solJsonBinData.binList = this.solJsonBinData.binList.map((item) => { localCompilers.includes(item.path) ? (item.binURL = 'http://localhost:' + (server.address() as any).port + '/compilers/') && (item.isDownloaded=true) : (item.binURL = baseURLBin) && (item.isDownloaded = false) return item - }) + })) this.emit('jsonBinDataLoaded', this.solJsonBinData) } diff --git a/apps/remixdesktop/src/plugins/configPlugin.ts b/apps/remixdesktop/src/plugins/configPlugin.ts index 197fa15b12..15a8646c5f 100644 --- a/apps/remixdesktop/src/plugins/configPlugin.ts +++ b/apps/remixdesktop/src/plugins/configPlugin.ts @@ -42,17 +42,6 @@ class ConfigPluginClient extends ElectronBasePluginClient { } - async onActivation(): Promise { - //utilityProcess.fork('/Users/filipmertens/Documents/GitHub/remix-project/apps/remixdesktop/node_modules/yarn/bin/yarn.js') - /*const child = utilityProcess.fork(path.join(__dirname, 'utility.js'), [app.getPath('userData')]) - this.call('terminal' as any, 'log', JSON.stringify(process.env)) - child.on('message', (data) => { - console.log('message from child', data) - this.call('terminal', 'log', data) - }) - */ - } - async writeConfig(data: any): Promise { writeConfig(data) } diff --git a/apps/remixdesktop/src/utils/config.ts b/apps/remixdesktop/src/utils/config.ts index 1513be58dd..fe65a4e392 100644 --- a/apps/remixdesktop/src/utils/config.ts +++ b/apps/remixdesktop/src/utils/config.ts @@ -6,19 +6,25 @@ export const cacheDir = path.join(os.homedir(), '.cache_remix_ide') console.log('cacheDir', cacheDir) -try { - if (!fs.existsSync(cacheDir)) { - fs.mkdirSync(cacheDir) - } - if (!fs.existsSync(cacheDir + '/compilers')) { - fs.mkdirSync(cacheDir + '/compilers') - } - if(!fs.existsSync(cacheDir + '/remixdesktop.json')) { - fs.writeFileSync(cacheDir + '/remixdesktop.json', JSON.stringify({})) +export const createDefaultConfigLocations = async() => { + try { + console.log('mdkir', cacheDir, fs.existsSync(cacheDir)) + if (!fs.existsSync(cacheDir)) { + fs.mkdirSync(cacheDir) + } + if (!fs.existsSync(cacheDir + '/compilers')) { + fs.mkdirSync(cacheDir + '/compilers') + } + if (!fs.existsSync(cacheDir + '/remixdesktop.json')) { + fs.writeFileSync(cacheDir + '/remixdesktop.json', JSON.stringify({})) + } + } catch (e) { + console.log(e) } -} catch (e) { } -export const writeConfig = (data: any) => { + +export const writeConfig = async (data: any) => { + await createDefaultConfigLocations() const cache = readConfig() try { fs.writeFileSync(cacheDir + '/remixdesktop.json', JSON.stringify({ ...cache, ...data })) @@ -27,7 +33,8 @@ export const writeConfig = (data: any) => { } } -export const readConfig = () => { +export const readConfig = async () => { + await createDefaultConfigLocations() if (fs.existsSync(cacheDir + '/remixdesktop.json')) { try { // read the cache file