accelerator-tool
Version:
The Accelerator devtool. Generally invoked with accelerator-tool, npx accelerator-tool, or xlr8r.
38 lines (31 loc) • 993 B
JavaScript
import * as fs from 'fs-extra';
import {
IFID,
} from 'ifid';
import {
makeTemplateReplacements,
} from '../functions/makeTemplateReplacements';
import * as path from 'path';
export async function rewriteConfig(directory, name, coreVersion) {
const toolPackageJson = require(path.join(__dirname, '..', 'package.json'));
const toolVersion = toolPackageJson.version;
const defPath = path.join(directory, 'src', 'configuration', 'configurationDefaults');
const { defaults } = require(defPath);
const ifid = new IFID().toString();
const config = {
...defaults,
coreVersion,
ifid,
name,
toolVersion,
};
const configPath = path.join(directory, 'accelerator.config.js');
const data = await fs.readFile(configPath, 'utf8');
const modified = makeTemplateReplacements({
config,
data,
name,
});
await fs.writeFile(configPath, modified);
return import(path.join(directory, 'accelerator.config'));
}