UNPKG

nightsteed-ads-admob

Version:
50 lines (41 loc) 1.12 kB
(function() { // properties const fs = require("fs"); const xml2js = require("xml2js"); // entry module.exports = { readXmlAsJson: readXmlAsJson, writeJsonAsXml: writeJsonAsXml }; // read from xml file function readXmlAsJson(file) { let xmlData; let xmlParser; let parsedData; try { xmlData = fs.readFileSync(file); xmlParser = new xml2js.Parser(); xmlParser.parseString(xmlData, (err, data) => { if (!err && data) { parsedData = data; } }); } catch (err) { throw new Error(`NightSteed: Cannot write file ${file}`); } return parsedData; } // write to xml file function writeJsonAsXml(file, content, options) { const xmlBuilder = new xml2js.Builder(options); const changedXmlData = xmlBuilder.buildObject(content); let isSaved = true; try { fs.writeFileSync(file, changedXmlData); } catch (err) { isSaved = false; throw new Error(`NightSteed: Cannot write file ${file}`); } return isSaved; } })();