| 12345678910111213141516171819202122232425262728293031323334353637 |
- // Copyright (c) Microsoft Corporation. All rights reserved.
- // Licensed under the MIT License. See License.txt in the project root for license information.
- import * as xml2js from "xml2js";
- export function stringifyXML(obj: any, opts?: { rootName?: string }) {
- const builder = new xml2js.Builder({
- explicitArray: false,
- explicitCharkey: false,
- rootName: (opts || {}).rootName,
- renderOpts: {
- pretty: false
- }
- });
- return builder.buildObject(obj);
- }
- export function parseXML(str: string): Promise<any> {
- const xmlParser = new xml2js.Parser({
- explicitArray: false,
- explicitCharkey: false,
- explicitRoot: false
- });
- return new Promise((resolve, reject) => {
- if (!str) {
- reject(new Error("Document is empty"));
- } else {
- xmlParser.parseString(str, (err?: Error, res?: any) => {
- if (err) {
- reject(err);
- } else {
- resolve(res);
- }
- });
- }
- });
- }
|