From 0fae3eef7106eb52020837b61d1914acd77e0c00 Mon Sep 17 00:00:00 2001 From: nshenderov Date: Mon, 21 Oct 2024 13:48:20 +0300 Subject: [PATCH] fix: correct config file reading logic to allow environment configurations --- server/src/services/config.js | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/server/src/services/config.js b/server/src/services/config.js index ce80349..415246e 100644 --- a/server/src/services/config.js +++ b/server/src/services/config.js @@ -6,20 +6,26 @@ module.exports = ({ strapi }) => { return { getConfig() { const appDir = process.cwd(); + const isTsProject = fs.existsSync(`${appDir}/dist`); - const fileName = 'ckeditor'; + const cfgDir = isTsProject ? `${appDir}/dist/config` : `${appDir}/config`; + const cfgFileName = 'ckeditor.js'; + const envName = process.env.NODE_ENV; - for (const ext of ['js', 'ts']) { - const filePath = `${appDir}/config/${fileName}.${ext}`; - if (fs.existsSync(filePath)) { - return ( - fs.readFileSync(filePath, 'utf8') + - `\nglobalThis.SH_CKE_CONFIG = CKEConfig()` - ); - } + const envFilePath = `${cfgDir}/env/${envName}/${cfgFileName}`; + const baseFilePath = `${cfgDir}/${cfgFileName}`; + let fileToRead; + + if (fs.existsSync(envFilePath)) { + fileToRead = envFilePath; + } else if (fs.existsSync(baseFilePath)) { + fileToRead = baseFilePath; } - return `globalThis.SH_CKE_CONFIG = null`; + return fileToRead ? + fs.readFileSync(fileToRead, 'utf8') + + `\nglobalThis.SH_CKE_CONFIG = CKEConfig()` + : `globalThis.SH_CKE_CONFIG = null`; }, }; };