@viewdo/dxp-story-cli
Version:
README.md
32 lines (26 loc) • 1.05 kB
JavaScript
const IndexJsWriter = require('../common/index.js.js');
const SettingsJsWriter = require('../common/_settings.js.js');
const isEmpty = require('lodash/isEmpty');
const omit = require('lodash/omit');
const fs = require('fs');
class MetadataFileCreator {
constructor(_console = console) {
Object.assign(this, {
index_js_writer: new IndexJsWriter(_console),
settings_js_writer: new SettingsJsWriter(__dirname, _console),
omit,
isEmpty
});
}
create(metadata = {}, metadata_path) {
const { index_js_writer, settings_js_writer, isEmpty, omit } = this;
const { style = "" } = metadata;
const cleaned_metadata = omit(metadata, ['style']);
const style_file = "style.less";
cleaned_metadata.style_file = style_file;
fs.writeFileSync(`${metadata_path}/${style_file}`, style);
index_js_writer.write(metadata_path);
settings_js_writer.write(cleaned_metadata, metadata_path);
}
}
module.exports = MetadataFileCreator;