UNPKG

@salesforce/core

Version:

Core libraries to interact with SFDX projects, orgs, and APIs.

39 lines 1.46 kB
"use strict"; /* * Copyright (c) 2021, salesforce.com, inc. * All rights reserved. * Licensed under the BSD 3-Clause license. * For full license text, see LICENSE.txt file in the repo root or https://opensource.org/licenses/BSD-3-Clause */ Object.defineProperty(exports, "__esModule", { value: true }); exports.fixExistingDollarSign = exports.JsonAsXml = exports.writeJSONasXML = exports.standardOptions = void 0; const fs_1 = require("fs"); const jsToXml = require("js2xmlparser"); exports.standardOptions = { declaration: { include: true, encoding: 'UTF-8', version: '1.0', }, format: { doubleQuotes: true, }, }; const writeJSONasXML = async ({ path, json, type, options = exports.standardOptions, }) => { const xml = jsToXml.parse(type, (0, exports.fixExistingDollarSign)(json), options); return fs_1.promises.writeFile(path, xml); }; exports.writeJSONasXML = writeJSONasXML; const JsonAsXml = ({ json, type, options = exports.standardOptions }) => jsToXml.parse(type, (0, exports.fixExistingDollarSign)(json), options); exports.JsonAsXml = JsonAsXml; const fixExistingDollarSign = (existing) => { const existingCopy = { ...existing }; if (existingCopy.$) { const temp = existingCopy.$; delete existingCopy.$; existingCopy['@'] = temp; } return existingCopy; }; exports.fixExistingDollarSign = fixExistingDollarSign; //# sourceMappingURL=jsonXmlTools.js.map