Browse Source

Support work without DevConfigs.

wordpress-build
Roman Axelrod 2 years ago
parent
commit
f4474fb7e4
  1. 6
      helpers.js
  2. 6
      package.json
  3. 19
      server.js

6
helpers.js

@ -29,6 +29,7 @@ export async function readJSONFile(jsonFile) {
let data = {};
try {
await fs.access(jsonFile, fs.constants.F_OK | fs.constants.R_OK);
data = await fsExtra.readJson(jsonFile);
} catch (e) {
return {
@ -47,9 +48,10 @@ function getErrorHtml(message = '', errorMessage = '') {
}
export async function getBlockData(jsonFileName = 'default', {projectPath} = {jsonFileName: 'default'}) {
let data = await readJSONFile(path.join(projectPath, 'data', `${jsonFileName}.json`));
const data = await readJSONFile(path.join(projectPath, 'data', `${jsonFileName}.json`));
if (data.error) {
return data;
return {};
}
return data;

6
package.json

@ -7,9 +7,9 @@
"url": "https://axe-web.com/"
},
"scripts": {
"info": "NODE_ENV=development BLOCK_NAME=buttons MODULE_PATH= node debug.js",
"dev": "NODE_ENV=development BLOCK_NAME=buttons MODULE_PATH= node server.js",
"build-platform": "NODE_ENV=development BLOCK_NAME=buttons MODULE_PATH= node ./build.js",
"info": "NODE_ENV=development BLOCK_NAME=colors MODULE_PATH= node debug.js",
"dev": "NODE_ENV=development BLOCK_NAME=colors MODULE_PATH= node server.js",
"build-platform": "NODE_ENV=development BLOCK_NAME=colors MODULE_PATH= node ./build.js",
"dev-dev-tool": "NODE_ENV=development rollup --config rollup.config.js --watch",
"build-dev-tool": "rollup --config rollup.config.js"
},

19
server.js

@ -46,7 +46,7 @@ const {isDev, modulesPath, projectPath, developmentBlockName} = getConfigs();
const blocksRegistry = isDev ? 'http://localhost:3020' : PRODUCTION_REGISTRY_URL;
const DevToolToken = 'D9lgz0TvzXCnp0xnwVBL109DaAR6Puk6F7YewDhgmP8='; // Temporary token for development purposes.
const dataFiles = prepareListOfDataFiles(await fs.readdir(path.join(projectPath, 'data')));
const dataFiles = await getDataFiles(projectPath);
/**
* State
@ -248,7 +248,7 @@ app.get('/publish', async (req, res) => {
app.get('/data', async (req, res) => {
let jsonDataFileName = req.query.name ? req.query.name : 'default';
const dataFiles = prepareListOfDataFiles(await fs.readdir(path.join(projectPath, 'data')));
const dataFiles = await getDataFiles(projectPath);
const data = await getBlockData(jsonDataFileName, {projectPath});
let designPreviewFiles = [];
@ -528,3 +528,18 @@ async function triggerGlobalProjectFilesBuild(project) {
return response.json();
}
async function getDataFiles(projectPath) {
const dataFiles = [];
try {
await fs.access(path.join(projectPath, 'data'));
const files = prepareListOfDataFiles(await fs.readdir(path.join(projectPath, 'data')));
dataFiles.push(...files);
} catch (e) {
console.log('Warning: data folder not found.');
}
return dataFiles;
}

Loading…
Cancel
Save