xml-disassembler 1.10.3 → 1.10.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.min.umd.js","sources":["../node_modules/.pnpm/@rollup+plugin-typescript@12.1.2_rollup@4.40.2_tslib@2.8.1_typescript@5.8.3/node_modules/tslib/tslib.es6.js","../src/constants/constants.ts","../src/builders/buildXMLString.ts","../src/parsers/stripWhitespace.ts","../src/parsers/parseXML.ts","../src/builders/buildXmlDeclaration.ts","../src/parsers/parseRootElement.ts","../src/builders/buildRootElementHeader.ts","../src/parsers/strategies/uid/parseUniqueIdElements.ts","../src/transformers/transformers.ts","../src/transformers/getTransformer.ts","../src/builders/strategies/uid/buildNestedFiles.ts","../src/parsers/strategies/uid/parseElement.ts","../src/builders/buildLeafFile.ts","../src/builders/extractRootAttributes.ts","../src/parsers/strategies/grouped-by-tag/parseElement.ts","../src/builders/strategies/grouped-by-tag/buildGroupNestedFile.ts","../src/index.ts","../src/handlers/disassembleXMLFileHandler.ts","../src/builders/strategies/grouped-by-tag/buildDisassembledFiles.ts","../src/builders/strategies/uid/buildDisassembledFiles.ts","../src/handlers/reassembleXMLFileHandler.ts","../src/builders/buildReassembledFiles.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","SuppressedError","INDENT","XML_PARSER_OPTION","commentPropName","ignoreAttributes","ignoreNameSpace","parseTagValue","parseNodeValue","parseAttributeValue","trimValues","processEntities","cdataPropName","JSON_PARSER_OPTION","Object","assign","format","indentBy","suppressBooleanAttributes","suppressEmptyNode","buildXMLString","element","XMLBuilder","build","trimEnd","stripWhitespaceTextNodes","node","Array","isArray","map","filter","entry","keys","length","key","trim","cleaned","undefined","parseXML","input_1","input","isRawXml","xmlParser","XMLParser","xmlContent","readFile","readError","logger","error","xmlParsed","parse","err","buildXMLDeclaration","parsedXml","xmlDeclarationStr","xmlDeclaration","entries","replace","join","parseRootElement","rootElementName","rootElementHeader","rootElement","attrKey","attrValue","startsWith","slice","String","buildRootElementHeader","parseUniqueIdElement","uniqueIdElements","createShortHash","uniqueIdElementsArray","split","fieldName","childFieldName","hash","createHash","update","JSON","stringify","digest","transformToYaml","xmlPath","yamlString","stringifyYaml","yamlPath","writeFile","debug","transformToJson5","jsonString","stringifyJson5","jsonPath","transformToJson","transformToToml","stringifyToml","transformToIni","stringifyIni","getTransformer","buildNestedFile","disassembledPath","rootAttributes","parentKey","outputDirectory","outputFileName","outputPath","mkdir","recursive","finalXml","serialized","transformer","rm","parseElement","params","leafCount","hasNestedElements","buildLeafFile","leafContent","baseName","leafOutputPath","wrappedXml","extractRootAttributes","attributesOnly","nestedGroups","isObjectWithMultipleFields","buildGroupedNestedFile","tag","elements","getLogger","configure","appenders","disassemble","type","filename","categories","default","level","constructor","this","ign","ignore","xmlAttributes","filePath","strategy","prePurge","postPurge","ignorePath","resolvedIgnorePath","existsSync","content","add","toString","fileStat","stat","relativePath","posixPath","relative","process","cwd","isFile","resolvedPath","endsWith","ignores","warn","dirPath","dirname","processFile","isDirectory","subFiles","readdir","subFile","subFilePath","relativeSubFilePath","fullName","basename","extname","keyOrder","k","newContent","existing","existingArray","incomingArray","push","_a","orderedLeafContent","ordered","orderXmlElementKeys","unlink","buildDissassembledFilesTag","parsedLeafContent","updatedLeafCount","updatedHasNestedElements","buildDisassembledFilesUID","path","processFilesInDirectory","combinedXmlContents","rootResult","files","sort","fileA","fileB","fullNameA","toLowerCase","fullNameB","localeCompare","file","test","parsedObject","parseToXmlObject","combinedXmlString","subCombinedXmlContents","subRootResult","reassemble","fileExtension","parentDirectory","subdirectoryBasename","fileName","reassembledPath","xmlElement","xmlRootElementHeader","finalXmlContent","escapedXmlDeclaration","xmlDeclarationLineRegex","RegExp","_","cdataContent","indentedLines","line","closeTag","buildReassembledFile","fileContent","parsed","parseYaml","parseJson5","parseToml","parseIni"],"mappings":"2wBAkHO,SAASA,EAAUC,EAASC,EAAYC,EAAGC,GAE9C,OAAO,IAAKD,IAAMA,EAAIE,WAAU,SAAUC,EAASC,GAC/C,SAASC,EAAUC,GAAS,IAAMC,EAAKN,EAAUO,KAAKF,GAAQ,CAAG,MAAOG,GAAKL,EAAOK,GAAO,CAC3F,SAASC,EAASJ,GAAS,IAAMC,EAAKN,EAAiB,MAAEK,GAAU,CAAC,MAAOG,GAAKL,EAAOK,GAAO,CAC9F,SAASF,EAAKI,GAJlB,IAAeL,EAIaK,EAAOC,KAAOT,EAAQQ,EAAOL,QAJ1CA,EAIyDK,EAAOL,MAJhDA,aAAiBN,EAAIM,EAAQ,IAAIN,GAAE,SAAUG,GAAWA,EAAQG,EAAO,KAIhBO,KAAKR,EAAWK,EAAY,CAC9GH,GAAMN,EAAYA,EAAUa,MAAMhB,EAASC,GAAc,KAAKS,OACtE,GACA,CA8MkD,mBAApBO,iBAAiCA,gBCvUxD,MACMC,EAAS,OACTC,EAAoB,CAC/BC,gBAAiB,OACjBC,kBAAkB,EAClBC,iBAAiB,EACjBC,eAAe,EACfC,gBAAgB,EAChBC,qBAAqB,EACrBC,YAAY,EACZC,iBAAiB,EACjBC,cAAe,YAEJC,EAAkBC,OAAAC,OAAAD,OAAAC,OAAA,CAAA,EAC1BZ,GACH,CAAAa,QAAQ,EACRC,SAAUf,EACVgB,2BAA2B,EAC3BC,mBAAmB,ICbf,SAAUC,EAAeC,GAE7B,OADmB,IAAIC,EAAUA,WAACT,GAChBU,MAAMF,GAASG,SACnC,CCTM,SAAUC,EAAyBC,GACvC,GAAIC,MAAMC,QAAQF,GAChB,OAAOA,EAAKG,IAAIJ,GAA0BK,QAAQC,KAEtB,iBAAVA,GAAoD,IAA9BjB,OAAOkB,KAAKD,GAAOE,UAEtD,GAAoB,iBAATP,GAA8B,OAATA,EAAe,CACpD,MAAM7B,EAAc,CAAE,EACtB,IAAK,MAAMqC,KAAOR,EAAM,CACtB,MAAMlC,EAAQkC,EAAKQ,GACnB,GAAY,UAARA,GAAoC,iBAAV1C,GAAuC,KAAjBA,EAAM2C,OACxD,SAEF,MAAMC,EAAUX,EAAyBjC,QACzB6C,IAAZD,IACFvC,EAAOqC,GAAOE,GAGlB,OAAOvC,EAEP,OAAO6B,CAEX,UCNsBY,EAAQC,6CAC5BC,EACAC,GAAoB,GAEpB,MAAMC,EAAY,IAAIC,EAASA,UAACxC,GAEhC,IAAIyC,EACJ,GAAIH,EACFG,EAAaJ,OAEb,IACEI,QAAmBC,EAAAA,SAASL,EAAO,SACnC,MAAOM,GAIP,YAHAC,EAAOC,MACL,GAAGR,oEAMT,IACE,MAAMS,EAAYP,EAAUQ,MAAMN,GAAY,GAK9C,OADgBnB,EAAyBwB,GAEzC,MAAOE,GAIP,YAHAJ,EAAOC,MACL,GAAGP,EAAW,sBAAwBD,+DAI3C,CC5CK,SAAUY,EACdC,GAGA,IAAIC,EJRiC,yCISrC,GAAID,EAAU,QAAS,CACrB,MAAME,EAAiBF,EAAU,QAKjCC,EAAoB,SAHDxC,OAAO0C,QAAQD,GAC/B1B,KAAI,EAAEK,EAAK1C,KAAW,GAAG0C,EAAIuB,QAAQ,KAAM,QAAQjE,OACnDkE,KAAK,SAIV,OAAOJ,CACT,CCdM,SAAgBK,EACpBV,4CAEA,MAAMK,EAAoBF,EAAoBH,GACxCW,EAAkB9C,OAAOkB,KAAKiB,GAAW,GAEzCY,ECRQ,SACdC,EACAF,GAEA,IAAIC,EAAoB,IAAID,IAC5B,IAAK,MAAOG,EAASC,KAAclD,OAAO0C,QAAQM,GAC5CC,EAAQE,WAAW,OAErBJ,GAAqB,IADAE,EAAQG,MAAM,OACOC,OAAOH,OAIrD,OADAH,GAAqB,IACdA,CACT,CDL4BO,CADMnB,EAAUW,GAGxCA,GAEF,MAAO,CAACA,EAAiBC,EAAmBP,KAC7C,CEXe,SAAAe,EACdhD,EACAiD,GAEA,QAAyBjC,IAArBiC,EACF,OAAOC,EAAgBlD,GAEzB,MAAMmD,EAAwBF,EAAiBG,MAAM,KAErD,IAAK,MAAMC,KAAaF,EAEtB,QAA2BnC,IAAvBhB,EAAQqD,IACwB,iBAAvBrD,EAAQqD,GACjB,OAAOrD,EAAQqD,GAMrB,IAAK,MAAMxC,KAAOb,EAChB,GAA4B,iBAAjBA,EAAQa,IAAsC,OAAjBb,EAAQa,GAAe,CAC7D,MAAMyC,EAAiBN,EACrBhD,EAAQa,GACRoC,GAEF,QAAuBjC,IAAnBsC,EACF,OAAOA,EAMb,OAAOJ,EAAgBlD,EACzB,CAEA,SAASkD,EAAgBlD,GACvB,MAAMuD,EAAOC,EAAUA,WAAC,UACxBD,EAAKE,OAAOC,KAAKC,UAAU3D,IAE3B,OADiBuD,EAAKK,OAAO,OACbf,MAAM,EAAG,EAC3B,CCrCM,SAAgBgB,EAAgBC,4CACpC,MAAM9B,QAAkBf,EAAS6C,GAC3BC,EAAaC,EAAaL,UAAC3B,GAC3BiC,EAAWH,EAAQ1B,QAAQ,SAAU,eACrC8B,EAASA,UAACD,EAAUF,GAC1BrC,EAAOyC,MAAM,GAAGL,+BAAqCG,OACtD,CAEK,SAAgBG,EAAiBN,4CACrC,MAAM9B,QAAkBf,EAAS6C,GAC3BO,EAAaC,EAAcX,UAAC3B,EAAW,KAAM,GAC7CuC,EAAWT,EAAQ1B,QAAQ,SAAU,gBACrC8B,EAASA,UAACK,EAAUF,GAC1B3C,EAAOyC,MAAM,GAAGL,+BAAqCS,OACtD,CAEK,SAAgBC,EAAgBV,4CACpC,MAAM9B,QAAkBf,EAAS6C,GAC3BO,EAAaX,KAAKC,UAAU3B,EAAW,KAAM,GAC7CuC,EAAWT,EAAQ1B,QAAQ,SAAU,eACrC8B,EAASA,UAACK,EAAUF,GAC1B3C,EAAOyC,MAAM,GAAGL,+BAAqCS,OACtD,CAEK,SAAgBE,EAAgBX,4CACpC,MAAM9B,QAAkBf,EAAS6C,GAC3BO,EAAaK,EAAaf,UAAC3B,GAC3BuC,EAAWT,EAAQ1B,QAAQ,SAAU,eACrC8B,EAASA,UAACK,EAAUF,GAC1B3C,EAAOyC,MAAM,GAAGL,+BAAqCS,OACtD,CAEK,SAAgBI,EAAeb,4CACnC,MAAM9B,QAAkBf,EAAS6C,GAC3BO,EAAaO,EAAYjB,UAAC3B,GAC1BuC,EAAWT,EAAQ1B,QAAQ,SAAU,cACrC8B,EAASA,UAACK,EAAUF,GAC1B3C,EAAOyC,MAAM,GAAGL,+BAAqCS,OACtD,CCvCK,SAAUM,EACdlF,GAEA,OAAQA,GACN,IAAK,OACH,OAAOkE,EACT,IAAK,QACH,OAAOO,EACT,IAAK,OACH,OAAOI,EACT,IAAK,OACH,OAAOC,EACT,IAAK,MACH,OAAOE,EACT,QACE,OAEN,UCdsBG,EACpB9E,EACA+E,EACA9B,EACAV,EACAyC,EACAC,EACAhD,EACAtC,4CAEA,MAAM0D,EAAYL,EAAqBhD,EAASiD,GAE1CiC,EAAkB7C,EAAAA,KAAK0C,EAAkBE,GACzCE,EAAiB,GAAG9B,KAAa4B,aACjCG,EAAa/C,EAAAA,KAAK6C,EAAiBC,SAEnCE,EAAKA,MAACH,EAAiB,CAAEI,WAAW,IAG1C,MAAMC,EAAuB,CAC3BhD,CAACA,GAAgB9C,OAAAC,OAAAD,OAAAC,OAAA,GACZsF,GAAc,CACjBC,CAACA,GAAYjF,KAIXwF,EAAa,GAAGvD,MAAsBlC,EAAewF,WACrDrB,EAASA,UAACkB,EAAYI,GAE5B9D,EAAOyC,MAAM,8BAA8BiB,KAE3C,MAAMK,EAAcZ,EAAelF,GAC/B8F,UACIA,EAAYL,SACZM,EAAAA,GAAGN,MAEZ,CC1CK,SAAgBO,EACpBC,4CAEA,MAAM5F,QACJA,EAAO+E,iBACPA,EAAgB9B,iBAChBA,EAAgBV,gBAChBA,EAAeyC,eACfA,EAAcnE,IACdA,EAAGgF,UACHA,EAASC,kBACTA,EAAiB7D,kBACjBA,EAAiBtC,OACjBA,GACEiG,EAGJ,GAAuB,iBAAZ5F,GAAoC,OAAZA,EAWjC,aAVM8E,EACJ9E,EACA+E,EACA9B,EACAV,EACAyC,EACAnE,EACAoB,EACAtC,GAEK,CAAC,CAAA,EAAIkG,GAAW,GAQzB,MAAO,CAJyB,CAC9BhF,CAACA,GAAMb,GAGY6F,EAAY,EAAGC,KACrC,CChCqB,SAAAC,EACpBC,EACAjB,EACAkB,EACA1D,EACAyC,EACA/C,EACAtC,4CAEA,MAAMuG,EAAiB7D,EAAAA,KAAK0C,EAAkB,GAAGkB,eAC3CZ,EAAKA,MAACN,EAAkB,CAAEO,WAAW,IAE3C,MAAMa,EAAyB,CAC7B5D,CAACA,GAAgB9C,OAAAC,OAAAD,OAAAC,OAAA,CAAA,EACZsF,GACAgB,IAIDR,EAAa,GAAGvD,MAAsBlC,EAAeoG,WACrDjC,EAASA,UAACgC,EAAgBV,GAEhC9D,EAAOyC,MAAM,8BAA8B+B,KAE3C,MAAMT,EAAcZ,EAAelF,GAC/B8F,UACIA,EAAYS,SACZR,EAAAA,GAAGQ,MAEZ,CC/BK,SAAUE,EAAsB3D,GACpC,MAAM4D,EAA6B,CAAE,EACrC,IAAK,MAAO3D,EAASC,KAAclD,OAAO0C,QAAQM,GAC5CC,EAAQE,WAAW,OACrByD,EAAe3D,GAAWC,GAG9B,OAAO0D,CACT,CCZM,SAAgBV,EAAaC,4CAMjC,MAAM5F,QAAEA,EAAOa,IAAEA,EAAGiF,kBAAEA,GAAsBF,EAEtCU,EAA6C,CAAE,EAE/C/F,EAAUD,MAAMC,QAAQP,GACxBuG,EACe,iBAAZvG,GACK,OAAZA,GACAP,OAAOkB,KAAKX,GAASY,OAAS,EAKhC,GAFiBL,GAAWgG,EAI1B,OADAD,EAAazF,GAAO,CAACb,GACd,CACLgG,YAAa,CAAE,EACfH,UAAWD,EAAOC,UAClBC,mBAAmB,EACnBQ,gBASJ,MAAO,CACLN,YAL8B,CAC9BnF,CAACA,GAAMb,GAKP6F,UAAWD,EAAOC,UAAY,EAC9BC,oBACAQ,kBAEH,CClCqB,SAAAE,EACpBC,EACAC,EACA3B,EACAxC,EACAyC,EACA/C,EACAtC,4CAEA,MAAMyF,EAAa/C,EAAAA,KAAK0C,EAAkB,GAAG0B,eACvCpB,EAAKA,MAACN,EAAkB,CAAEO,WAAW,IAG3C,MAAM7C,EAA0B,CAC9BF,CAACA,GAAgB9C,OAAAC,OAAAD,OAAAC,OAAA,GACZsF,GAAc,CACjByB,CAACA,GAAMC,KAILlB,EAAa,GAAGvD,MAAsBlC,EAAe0C,WACrDyB,EAASA,UAACkB,EAAYI,GAC5B9D,EAAOyC,MAAM,gCAAgCiB,KAE7C,MAAMK,EAAcZ,EAAelF,GAC/B8F,UACIA,EAAYL,SACZM,EAAAA,GAAGN,MAEZ,CClBY,MAAA1D,EAASiF,EAASA,YAE/BC,EAAAA,UAAU,CACRC,UAAW,CAAEC,YAAa,CAAEC,KAAM,OAAQC,SAAU,oBACpDC,WAAY,CAAEC,QAAS,CAAEL,UAAW,CAAC,eAAgBM,MAAO,8CCb9D,WAAAC,GACmBC,KAAGC,IAAWC,IAEzB,WAAAT,CAAYU,4CAShB,MAAMC,SACJA,EAAQxE,iBACRA,EAAgByE,SAChBA,EAAW,YAAWC,SACtBA,GAAW,EAAKC,UAChBA,GAAY,EAAKC,WACjBA,EAAa,yBAAwBlI,OACrCA,EAAS,OACP6H,EACEM,EAAqB9J,EAAOA,QAAC6J,GACnC,GAAIE,EAAAA,WAAWD,GAAqB,CAClC,MAAME,QAAgBxG,EAAQA,SAACsG,GAC/BT,KAAKC,IAAIW,IAAID,EAAQE,YAGvB,MAAMC,QAAiBC,EAAIA,KAACX,GACtBY,EAAehB,KAAKiB,UAAUC,EAAAA,SAASC,QAAQC,MAAOhB,IAE5D,GAAIU,EAASO,SAAU,CACrB,MAAMC,EAAe3K,EAAOA,QAACyJ,GAC7B,IAAKkB,EAAaC,SAAS,QAIzB,YAHAlH,EAAOC,MACL,8CAA8CgH,KAIlD,GAAItB,KAAKC,IAAIuB,QAAQR,GAEnB,YADA3G,EAAOoH,KAAK,mBAAmBjB,MAAec,KAGhD,MAAMI,EAAUC,EAAOA,QAACL,SAClBtB,KAAK4B,YAAY,CACrBF,UACArB,WACAD,SAAUkB,EACV1F,mBACA0E,WACAC,YACAjI,gBAEG,GAAIwI,EAASe,cAAe,CACjC,MAAMC,QAAiBC,EAAOA,QAAC3B,GAC/B,IAAK,MAAM4B,KAAWF,EAAU,CAC9B,MAAMG,EAAcjH,EAAAA,KAAKoF,EAAU4B,GAC7BE,EAAsBlC,KAAKiB,UAC/BC,EAAAA,SAASC,QAAQC,MAAOa,IAGxBA,EAAYV,SAAS,UACpBvB,KAAKC,IAAIuB,QAAQU,SAEZlC,KAAK4B,YAAY,CACrBF,QAAStB,EACTC,WACAD,SAAU6B,EACVrG,mBACA0E,WACAC,YACAjI,WAEO0H,KAAKC,IAAIuB,QAAQU,IAC1B7H,EAAOoH,KAAK,mBAAmBjB,MAAeyB,SAIrD,CAEK,WAAAL,CAAYzB,4CAShB,MAAMuB,QACJA,EAAOrB,SACPA,EAAQD,SACRA,EAAQxE,iBACRA,EAAgB0E,SAChBA,EAAQC,UACRA,EAASjI,OACTA,GACE6H,EAEJ9F,EAAOyC,MAAM,gCAAgCsD,KAC7C,MAAM+B,EAAWC,EAAQA,SAAChC,EAAUiC,EAAOA,QAACjC,IACtCxB,EAAWuD,EAASpG,MAAM,KAAK,GAErC,IAAIgC,EACJA,EAAa/C,EAAAA,KAAK0G,EAAS9C,GAEvB0B,GAAYI,EAAUA,WAAC3C,WACnBM,EAAEA,GAACN,EAAY,CAAEE,WAAW,KAEnB,mBAAboC,QC/FF,SACJD,EACA1C,EACAkB,EACA2B,EACAjI,kDAEA,MAAMqC,QAAkBf,EAASwG,GACjC,QAAkBzG,IAAdgB,EAAyB,OAE7B,MAAMO,EAAkB9C,OAAOkB,KAAKqB,GAAW,GACzCC,EAAoBF,EAAoBC,GACxCS,EAA0BT,EAAUO,GACpCyC,EAAiBoB,EAAsB3D,GAE7C,IAAIuD,EAA0B,CAAE,EAC5BH,EAAY,EACZC,GAAoB,EACxB,MAAMQ,EAA6C,CAAE,EAC/CqD,EAAWlK,OAAOkB,KAAKqB,EAAUO,IAAkB9B,QACtDmJ,IAAOA,EAAEhH,WAAW,OAGvB,IAAK,MAAM/B,KAAO8I,EAAU,CAC1B,MAAMjD,EAAWpG,MAAMC,QAAQkC,EAAY5B,IACtC4B,EAAY5B,GACb,CAAC4B,EAAY5B,IAEjB,IAAK,MAAMb,KAAW0G,EAAU,CAC9B,MAAMlI,QAAemH,EAAa,CAChC3F,UAIAa,MAEAgF,YACAC,sBAKF,GAAIrG,OAAOkB,KAAKnC,EAAOwH,aAAapF,OAAS,EAAG,CAC9C,MAAMiJ,EAAarL,EAAOwH,YAAYnF,GACtC,QAAmBG,IAAf6I,EAA0B,CAC5B,MAAMC,EAAW9D,EAAYnF,GACvBkJ,EAAgBzJ,MAAMC,QAAQuJ,GAC/BA,OACY9I,IAAb8I,EACE,CAACA,GACD,GAEAE,EAAgB1J,MAAMC,QAAQsJ,GAC/BA,EACD,CAACA,GAEL7D,EAAYnF,GAAO,IAAIkJ,KAAkBC,IAI7CnE,EAAYrH,EAAOqH,UACnBC,EAAoBtH,EAAOsH,kBAE3B,IAAK,MAAMW,KAAOjI,EAAO8H,aAClBA,EAAaG,KAAMH,EAAaG,GAAO,IAC5CH,EAAaG,GAAKwD,gBAASC,EAAA1L,EAAO8H,aAAaG,kBAAQ,KAK7D,IAAKX,GAAqBD,EAAY,EACpCnE,EAAOC,MACL,gBAAgB8F,qEAFpB,CAOA,IAAK,MAAMhB,KAAOH,QACVE,EACJC,EACAH,EAAaG,GACb1B,EACAxC,EACAyC,EACA/C,EACAtC,GAIJ,GAAIkG,EAAY,EAAG,CACjB,MAAMsE,EAvGV,SACEnC,EACA2B,GAEA,MAAMS,EAAsB,CAAE,EAC9B,IAAK,MAAMvJ,KAAO8I,OACK3I,IAAjBgH,EAAQnH,KACVuJ,EAAQvJ,GAAOmH,EAAQnH,IAG3B,OAAOuJ,CACT,CA4F+BC,CAAoBrE,EAAa2D,SACtD5D,EACJoE,EACApF,EACAkB,EACA1D,EACAyC,EACA/C,EACAtC,GAIAiI,UACI0C,EAAAA,OAAO7C,OAEhB,CDTW8C,CACJ9C,EACArC,EACAoE,EACA5B,EACAjI,SElHc,SACpB8H,EACA1C,EACA9B,EACAgD,EACA2B,EACAjI,4CAEA,MAAMqC,QAAkBf,EAASwG,GACjC,QAAkBzG,IAAdgB,EAAyB,OAE7B,MAAMO,EAAkB9C,OAAOkB,KAAKqB,GAAW,GACzCC,EAAoBF,EAAoBC,GACxCS,EAA0BT,EAAUO,GACpCyC,EAAiBoB,EAAsB3D,GAE7C,IAAIuD,EAA0B,CAAE,EAC5BH,EAAY,EACZC,GAAoB,EAExB,IAAK,MAAMjF,KAAOpB,OAAOkB,KAAK8B,GAAahC,QACxCmJ,IAAOA,EAAEhH,WAAW,OACpB,CACD,MAAM8D,EAAWpG,MAAMC,QAAQkC,EAAY5B,IACtC4B,EAAY5B,GACb,CAAC4B,EAAY5B,IAEjB,IAAK,MAAMb,KAAW0G,EAAU,CAC9B,MAAO8D,EAAmBC,EAAkBC,SACpC/E,EAAa,CACjB3F,UACA+E,mBACA9B,mBACAV,kBACAyC,iBACAnE,MAEAgF,YACAC,oBACA7D,oBACAtC,WAGEkK,EAAaW,EAAkB3J,GACrC,QAAmBG,IAAf6I,EAA0B,CAC5B,MAAMC,EAAW9D,EAAYnF,GAEvBkJ,EAAgBzJ,MAAMC,QAAQuJ,GAC/BA,OACY9I,IAAb8I,EACE,CAACA,GACD,GAEAE,EAAgB1J,MAAMC,QAAQsJ,GAC/BA,EACD,CAACA,GAEL7D,EAAYnF,GAAO,IAAIkJ,KAAkBC,GAG3CnE,EAAY4E,EACZ3E,EAAoB4E,GAInB5E,GAODD,EAAY,UACRE,EACJC,EACAjB,EACAkB,EACA1D,EACAyC,EACA/C,EACAtC,IAIAiI,UACI0C,EAAAA,OAAO7C,KAnBb/F,EAAOC,MACL,gBAAgB8F,mEAoBrB,CF8BWkD,CACJlD,EACArC,EACAnC,EACAuG,EACA5B,EACAjI,KAGL,CAEO,SAAA2I,CAAUsC,GAEhB,OAAOA,EAAKxI,QAAQ,OAAQ,wCG9HxB,uBAAAyI,CACJ9B,4CAEA,MAAM+B,EAAgC,GACtC,IAAIC,EAEJ,MAAMC,QAAc5B,EAAOA,QAACL,GAG5BiC,EAAMC,MAAK,CAACC,EAAOC,KACjB,MAAMC,EAAYF,EAAM9H,MAAM,KAAK,GAAGiI,cAChCC,EAAYH,EAAM/H,MAAM,KAAK,GAAGiI,cACtC,OAAOD,EAAUG,cAAcD,EAAU,IAG3C,IAAK,MAAME,KAAQR,EAAO,CACxB,MAAMvD,EAAWpF,EAAAA,KAAK0G,EAASyC,GACzBrD,QAAiBC,EAAIA,KAACX,GAE5B,GAAIU,EAASO,UACX,GAAI,qCAAqC+C,KAAKD,GAAO,CACnD,MAAME,QAAqBrE,KAAKsE,iBAAiBlE,GACjD,QAAqBzG,IAAjB0K,EAA4B,SAGhCX,QADiCzI,EAAiBoJ,GAGlD,MAAME,EAAoB7L,EAAe2L,GACzCZ,EAAoBb,KAAK2B,SAEtB,GAAIzD,EAASe,cAAe,CACjC,MAAO2C,EAAwBC,SACvBzE,KAAKwD,wBAAwBpD,GACrCqD,EAAoBb,QAAQ4B,GAC5Bd,EAAae,GAIjB,MAAO,CAAChB,EAAqBC,KAC9B,CAEK,UAAAgB,CAAWvE,4CAKf,MAAMC,SAAEA,EAAQuE,cAAEA,EAAapE,UAAEA,GAAY,GAAUJ,EACvD,IAAIsD,EAAgC,GAGpC,WAFuB1C,EAAIA,KAACX,IAEdyB,cAIZ,YAHAxH,EAAOC,MACL,uDAAuD8F,KAI3D/F,EAAOyC,MAAM,oCAAoCsD,KACjD,MAAOoE,EAAwBd,SACvB1D,KAAKwD,wBAAwBpD,GACrCqD,EAAsBe,EAEtB,MAAMI,EAAkBjD,EAAOA,QAACvB,GAC1ByE,EAAuBzC,EAAQA,SAAChC,GAChC0E,EAAWH,EACb,GAAGE,KAAwBF,IAC3B,GAAGE,QACD9G,EAAa/C,EAAAA,KAAK4J,EAAiBE,GAEzC,QAAmBnL,IAAf+J,EAA0B,CAC5B,MAAOxI,EAAiBC,EAAmBP,GACzC8I,QC/EF,SACJD,EACAsB,EACAC,EACAC,EACArK,4CAGA,IAAIsK,EAAkBzB,EAAoBzI,KAAK,MAG/C,MAAMmK,EAAwBvK,EAAkBG,QAC9C,sBACA,QAIIqK,EAA0B,IAAIC,OAClC,QAAQF,SACR,MAGFD,EAAkBA,EAAgBnK,QAAQqK,EAAyB,IAGnEF,EAAkBA,EAAgBnK,QAChC,IAAIsK,OAAO,IAAIL,cAAwB,KACvC,IAEFE,EAAkBA,EAAgBnK,QAChC,IAAIsK,OAAO,KAAKL,KAAe,KAC/B,IAIFE,EAAkBA,EAAgBnK,QAChC,mCACA,SAAUuK,EAAGC,GACX,MAEMC,EAFiBD,EAAa9L,OACPsC,MAAM,MACP5C,KAAI,SAAUsM,GACxC,OAAOA,EAAK1K,QAAQ,OAAQ,GAC9B,IACA,MACE,cAAgBvD,EAASgO,EAAcxK,KAAK,KAAOxD,GAAU,OAEjE,IAIF0N,EAAkBA,EAAgBnK,QAAQ,eAAgB,KAAKvD,KAE/D,MAAMkO,EAAW,KAAKV,WAEhBnI,YACJkI,EACA,GAAGnK,MAAsBqK,IAAuBC,IAAkBQ,KAEpErL,EAAOyC,MAAM,6BAA6BiI,OAC3C,CDqBWY,CACJlC,EACA1F,EACA7C,EACAC,EACAP,GAEE2F,UAAiBlC,EAAEA,GAAC+B,EAAU,CAAEnC,WAAW,UAE/C5D,EAAOC,MACL,kBAAkB8F,yEAGvB,CACa,gBAAAkE,CAAiBlE,4CAC7B,GAAIA,EAASmB,SAAS,QACpB,aAAa3H,EAASwG,GAGxB,MAAMwF,QAAoBzL,WAASiG,EAAU,SAC7C,IAAIyF,EAcJ,OAZIzF,EAASmB,SAAS,UAAYnB,EAASmB,SAAS,QAClDsE,EAASC,EAAStL,MAACoL,GACVxF,EAASmB,SAAS,UAC3BsE,EAASE,EAAUvL,MAACoL,GACXxF,EAASmB,SAAS,SAC3BsE,EAASxJ,KAAK7B,MAAMoL,GACXxF,EAASmB,SAAS,SAC3BsE,EAASG,EAASxL,MAACoL,GACVxF,EAASmB,SAAS,UAC3BsE,EAASI,EAAQzL,MAACoL,IAGbC,IACR,4DJ1GG,SAAsB/F,GAC1BR,EAASA,YAAGQ,MAAQA,CACtB","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.min.umd.js","sources":["../node_modules/.pnpm/@rollup+plugin-typescript@12.1.2_rollup@4.40.2_tslib@2.8.1_typescript@5.8.3/node_modules/tslib/tslib.es6.js","../src/constants/constants.ts","../src/parsers/stripWhitespace.ts","../src/parsers/parseXML.ts","../src/parsers/strategies/uid/parseUniqueIdElements.ts","../src/builders/buildXMLString.ts","../src/transformers/transformers.ts","../src/transformers/getTransformer.ts","../src/builders/strategies/uid/buildNestedFiles.ts","../src/parsers/strategies/uid/parseElement.ts","../src/builders/buildLeafFile.ts","../src/builders/extractRootAttributes.ts","../src/parsers/strategies/grouped-by-tag/parseElement.ts","../src/builders/strategies/grouped-by-tag/buildGroupNestedFile.ts","../src/index.ts","../src/handlers/disassembleXMLFileHandler.ts","../src/builders/strategies/grouped-by-tag/buildDisassembledFiles.ts","../src/builders/strategies/uid/buildDisassembledFiles.ts","../src/handlers/reassembleXMLFileHandler.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nvar ownKeys = function(o) {\r\n ownKeys = Object.getOwnPropertyNames || function (o) {\r\n var ar = [];\r\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\r\n return ar;\r\n };\r\n return ownKeys(o);\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\r\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\r\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\r\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\r\n });\r\n }\r\n return path;\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __esDecorate: __esDecorate,\r\n __runInitializers: __runInitializers,\r\n __propKey: __propKey,\r\n __setFunctionName: __setFunctionName,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n __rewriteRelativeImportExtension: __rewriteRelativeImportExtension,\r\n};\r\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","SuppressedError","XML_PARSER_OPTION","commentPropName","ignoreAttributes","ignoreNameSpace","parseTagValue","parseNodeValue","parseAttributeValue","trimValues","processEntities","cdataPropName","JSON_PARSER_OPTION","Object","assign","format","indentBy","suppressBooleanAttributes","suppressEmptyNode","stripWhitespaceTextNodes","node","Array","isArray","map","filter","entry","keys","length","key","trim","cleaned","undefined","parseXML","input_1","input","isRawXml","xmlParser","XMLParser","xmlContent","readFile","readError","logger","error","xmlParsed","parse","err","parseUniqueIdElement","element","uniqueIdElements","createShortHash","uniqueIdElementsArray","split","fieldName","childFieldName","hash","createHash","update","JSON","stringify","digest","slice","buildXMLString","XMLBuilder","build","trimEnd","transformToYaml","xmlPath","parsedXml","yamlString","stringifyYaml","yamlPath","replace","writeFile","debug","transformToJson5","jsonString","stringifyJson5","jsonPath","transformToJson","transformToToml","stringifyToml","transformToIni","stringifyIni","getTransformer","buildNestedFile","disassembledPath","rootElementName","rootAttributes","parentKey","xmlDeclaration","outputDirectory","join","outputFileName","outputPath","mkdir","recursive","serialized","transformer","rm","parseElement","params","leafCount","hasNestedElements","buildLeafFile","leafContent","baseName","leafOutputPath","extractRootAttributes","rootElement","attributesOnly","attrKey","attrValue","entries","startsWith","nestedGroups","isObjectWithMultipleFields","buildGroupedNestedFile","tag","elements","getLogger","configure","appenders","disassemble","type","filename","categories","default","level","constructor","this","ign","ignore","xmlAttributes","filePath","strategy","prePurge","postPurge","ignorePath","resolvedIgnorePath","existsSync","content","add","toString","fileStat","stat","relativePath","posixPath","relative","process","cwd","isFile","resolvedPath","endsWith","ignores","warn","dirPath","dirname","processFile","isDirectory","subFiles","readdir","subFile","subFilePath","relativeSubFilePath","fullName","basename","extname","rawDeclaration","find","k","keyOrder","newContent","existing","existingArray","incomingArray","push","_a","orderedLeafContent","ordered","orderXmlElementKeys","unlink","buildDissassembledFilesTag","parsedLeafContent","updatedLeafCount","updatedHasNestedElements","buildDisassembledFilesUID","path","processFilesInDirectory","parsedXmlObjects","files","sort","fileA","fileB","fullNameA","toLowerCase","fullNameB","localeCompare","file","test","parsedObject","parseToXmlObject","subParsedObjects","reassemble","fileExtension","finalXml","Error","first","rootKey","mergedContent","current","childKey","concat","hasOwnProperty","declaration","mergeXmlElements","parentDirectory","subdirectoryBasename","fileName","fileContent","parsed","parseYaml","parseJson5","parseToml","parseIni"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { getLogger, configure } from 'log4js';
2
- import { writeFile, readFile, readdir, stat, rm, mkdir, unlink } from 'node:fs/promises';
2
+ import { readFile, readdir, stat, writeFile, rm, mkdir, unlink } from 'node:fs/promises';
3
3
  import { join, dirname, basename } from 'node:path/posix';
4
4
  import { parse, stringify } from 'yaml';
5
5
  import { parse as parse$1, stringify as stringify$1 } from 'json5';
@@ -9,7 +9,7 @@ import { existsSync } from 'node:fs';
9
9
  import { resolve, relative, dirname as dirname$1, join as join$1, basename as basename$1, extname } from 'node:path';
10
10
  import ignore from 'ignore';
11
11
  import { createHash } from 'node:crypto';
12
- import { XMLBuilder, XMLParser } from 'fast-xml-parser';
12
+ import { XMLParser, XMLBuilder } from 'fast-xml-parser';
13
13
 
14
14
  /******************************************************************************
15
15
  Copyright (c) Microsoft Corporation.
@@ -43,7 +43,6 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
43
43
  return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
44
44
  };
45
45
 
46
- const XML_DEFAULT_DECLARATION = '<?xml version="1.0" encoding="UTF-8"?>';
47
46
  const INDENT = " ";
48
47
  const XML_PARSER_OPTION = {
49
48
  commentPropName: "!---",
@@ -58,34 +57,6 @@ const XML_PARSER_OPTION = {
58
57
  };
59
58
  const JSON_PARSER_OPTION = Object.assign(Object.assign({}, XML_PARSER_OPTION), { format: true, indentBy: INDENT, suppressBooleanAttributes: false, suppressEmptyNode: false });
60
59
 
61
- function buildReassembledFile(combinedXmlContents, reassembledPath, xmlElement, xmlRootElementHeader, xmlDeclarationStr) {
62
- return __awaiter(this, void 0, void 0, function* () {
63
- let finalXmlContent = combinedXmlContents.join("\n");
64
- const escapedXmlDeclaration = xmlDeclarationStr.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
65
- const xmlDeclarationLineRegex = new RegExp(`^\\s*${escapedXmlDeclaration}\\s*$`, "gm");
66
- finalXmlContent = finalXmlContent.replace(xmlDeclarationLineRegex, "");
67
- finalXmlContent = finalXmlContent.replace(new RegExp(`<${xmlElement}\\s*[^>]*>`, "g"), "");
68
- finalXmlContent = finalXmlContent.replace(new RegExp(`</${xmlElement}>`, "g"), "");
69
- finalXmlContent = finalXmlContent.replace(/<!\[CDATA\[\s*([\s\S]*?)\s*]]>/g, function (_, cdataContent) {
70
- const trimmedContent = cdataContent.trim();
71
- const lines = trimmedContent.split("\n");
72
- const indentedLines = lines.map(function (line) {
73
- return line.replace(/^\s*/, "");
74
- });
75
- return ("<![CDATA[\n" + INDENT + indentedLines.join("\n" + INDENT) + "\n]]>");
76
- });
77
- finalXmlContent = finalXmlContent.replace(/(\n\s*){2,}/g, `\n${INDENT}`);
78
- const closeTag = `</${xmlElement}>`;
79
- yield writeFile(reassembledPath, `${xmlDeclarationStr}\n${xmlRootElementHeader}${finalXmlContent}${closeTag}`);
80
- logger.debug(`Created reassembled file: ${reassembledPath}`);
81
- });
82
- }
83
-
84
- function buildXMLString(element) {
85
- const xmlBuilder = new XMLBuilder(JSON_PARSER_OPTION);
86
- return xmlBuilder.build(element).trimEnd();
87
- }
88
-
89
60
  function stripWhitespaceTextNodes(node) {
90
61
  if (Array.isArray(node)) {
91
62
  return node.map(stripWhitespaceTextNodes).filter((entry) => {
@@ -139,45 +110,10 @@ function parseXML(input_1) {
139
110
  });
140
111
  }
141
112
 
142
- function buildRootElementHeader(rootElement, rootElementName) {
143
- let rootElementHeader = `<${rootElementName}`;
144
- for (const [attrKey, attrValue] of Object.entries(rootElement)) {
145
- if (attrKey.startsWith("@")) {
146
- const cleanAttrKey = attrKey.slice(2);
147
- rootElementHeader += ` ${cleanAttrKey}="${String(attrValue)}"`;
148
- }
149
- }
150
- rootElementHeader += ">";
151
- return rootElementHeader;
152
- }
153
-
154
- function buildXMLDeclaration(parsedXml) {
155
- let xmlDeclarationStr = XML_DEFAULT_DECLARATION;
156
- if (parsedXml["?xml"]) {
157
- const xmlDeclaration = parsedXml["?xml"];
158
- const attributes = Object.entries(xmlDeclaration)
159
- .map(([key, value]) => `${key.replace("@_", "")}="${value}"`)
160
- .join(" ");
161
- xmlDeclarationStr = `<?xml ${attributes}?>`;
162
- }
163
- return xmlDeclarationStr;
164
- }
165
-
166
- function parseRootElement(xmlParsed) {
167
- return __awaiter(this, void 0, void 0, function* () {
168
- const xmlDeclarationStr = buildXMLDeclaration(xmlParsed);
169
- const rootElementName = Object.keys(xmlParsed)[1];
170
- const rootElement = xmlParsed[rootElementName];
171
- const rootElementHeader = buildRootElementHeader(rootElement, rootElementName);
172
- return [rootElementName, rootElementHeader, xmlDeclarationStr];
173
- });
174
- }
175
-
176
113
  class ReassembleXMLFileHandler {
177
114
  processFilesInDirectory(dirPath) {
178
115
  return __awaiter(this, void 0, void 0, function* () {
179
- const combinedXmlContents = [];
180
- let rootResult = undefined;
116
+ const parsedXmlObjects = [];
181
117
  const files = yield readdir(dirPath);
182
118
  files.sort((fileA, fileB) => {
183
119
  const fullNameA = fileA.split(".")[0].toLowerCase();
@@ -192,47 +128,43 @@ class ReassembleXMLFileHandler {
192
128
  const parsedObject = yield this.parseToXmlObject(filePath);
193
129
  if (parsedObject === undefined)
194
130
  continue;
195
- const rootResultFromFile = yield parseRootElement(parsedObject);
196
- rootResult = rootResultFromFile;
197
- const combinedXmlString = buildXMLString(parsedObject);
198
- combinedXmlContents.push(combinedXmlString);
131
+ parsedXmlObjects.push(parsedObject);
199
132
  }
200
133
  }
201
134
  else if (fileStat.isDirectory()) {
202
- const [subCombinedXmlContents, subRootResult] = yield this.processFilesInDirectory(filePath);
203
- combinedXmlContents.push(...subCombinedXmlContents);
204
- rootResult = subRootResult;
135
+ const subParsedObjects = yield this.processFilesInDirectory(filePath);
136
+ parsedXmlObjects.push(...subParsedObjects);
205
137
  }
206
138
  }
207
- return [combinedXmlContents, rootResult];
139
+ return parsedXmlObjects;
208
140
  });
209
141
  }
210
142
  reassemble(xmlAttributes) {
211
143
  return __awaiter(this, void 0, void 0, function* () {
212
144
  const { filePath, fileExtension, postPurge = false } = xmlAttributes;
213
- let combinedXmlContents = [];
214
145
  const fileStat = yield stat(filePath);
215
146
  if (!fileStat.isDirectory()) {
216
147
  logger.error(`The provided path to reassemble is not a directory: ${filePath}`);
217
148
  return;
218
149
  }
219
150
  logger.debug(`Parsing directory to reassemble: ${filePath}`);
220
- const [subCombinedXmlContents, rootResult] = yield this.processFilesInDirectory(filePath);
221
- combinedXmlContents = subCombinedXmlContents;
151
+ const parsedXmlObjects = yield this.processFilesInDirectory(filePath);
152
+ if (!parsedXmlObjects.length) {
153
+ logger.error(`No files under ${filePath} were parsed successfully. A reassembled XML file was not created.`);
154
+ return;
155
+ }
156
+ const mergedXml = mergeXmlElements(parsedXmlObjects);
157
+ const xmlContent = buildXMLString(mergedXml);
158
+ const finalXml = xmlContent;
222
159
  const parentDirectory = dirname(filePath);
223
160
  const subdirectoryBasename = basename(filePath);
224
161
  const fileName = fileExtension
225
162
  ? `${subdirectoryBasename}.${fileExtension}`
226
163
  : `${subdirectoryBasename}.xml`;
227
164
  const outputPath = join(parentDirectory, fileName);
228
- if (rootResult !== undefined) {
229
- const [rootElementName, rootElementHeader, xmlDeclarationStr] = rootResult;
230
- yield buildReassembledFile(combinedXmlContents, outputPath, rootElementName, rootElementHeader, xmlDeclarationStr);
231
- if (postPurge)
232
- yield rm(filePath, { recursive: true });
233
- }
234
- else {
235
- logger.error(`No files under ${filePath} were parsed successfully. A reassembled XML file was not created.`);
165
+ yield writeFile(outputPath, finalXml, "utf-8");
166
+ if (postPurge) {
167
+ yield rm(filePath, { recursive: true });
236
168
  }
237
169
  });
238
170
  }
@@ -262,6 +194,41 @@ class ReassembleXMLFileHandler {
262
194
  });
263
195
  }
264
196
  }
197
+ function mergeXmlElements(elements) {
198
+ if (elements.length === 0)
199
+ throw new Error("No elements to merge.");
200
+ const first = elements[0];
201
+ const rootKey = Object.keys(first).find((k) => k !== "?xml");
202
+ if (!rootKey) {
203
+ throw new Error("No root element found in the provided XML elements.");
204
+ }
205
+ const mergedContent = {};
206
+ for (const element of elements) {
207
+ const current = element[rootKey];
208
+ for (const [childKey, value] of Object.entries(current)) {
209
+ if (Array.isArray(value)) {
210
+ mergedContent[childKey] = mergedContent[childKey]
211
+ ? mergedContent[childKey].concat(value)
212
+ : [...value];
213
+ }
214
+ else if (typeof value === "object") {
215
+ mergedContent[childKey] = mergedContent[childKey]
216
+ ? [].concat(mergedContent[childKey], value)
217
+ : [value];
218
+ }
219
+ else {
220
+ if (!mergedContent.hasOwnProperty(childKey)) {
221
+ mergedContent[childKey] = value;
222
+ }
223
+ }
224
+ }
225
+ }
226
+ const declaration = first["?xml"];
227
+ const finalMerged = declaration
228
+ ? { "?xml": declaration, [rootKey]: mergedContent }
229
+ : { [rootKey]: mergedContent };
230
+ return finalMerged;
231
+ }
265
232
 
266
233
  function parseUniqueIdElement(element, uniqueIdElements) {
267
234
  if (uniqueIdElements === undefined) {
@@ -292,6 +259,11 @@ function createShortHash(element) {
292
259
  return fullHash.slice(0, 8);
293
260
  }
294
261
 
262
+ function buildXMLString(element) {
263
+ const xmlBuilder = new XMLBuilder(JSON_PARSER_OPTION);
264
+ return xmlBuilder.build(element).trimEnd();
265
+ }
266
+
295
267
  function transformToYaml(xmlPath) {
296
268
  return __awaiter(this, void 0, void 0, function* () {
297
269
  const parsedXml = yield parseXML(xmlPath);
@@ -355,7 +327,7 @@ function getTransformer(format) {
355
327
  }
356
328
  }
357
329
 
358
- function buildNestedFile(element, disassembledPath, uniqueIdElements, rootElementName, rootAttributes, parentKey, xmlDeclarationStr, format) {
330
+ function buildNestedFile(element, disassembledPath, uniqueIdElements, rootElementName, rootAttributes, parentKey, xmlDeclaration, format) {
359
331
  return __awaiter(this, void 0, void 0, function* () {
360
332
  const fieldName = parseUniqueIdElement(element, uniqueIdElements);
361
333
  const outputDirectory = join(disassembledPath, parentKey);
@@ -363,9 +335,10 @@ function buildNestedFile(element, disassembledPath, uniqueIdElements, rootElemen
363
335
  const outputPath = join(outputDirectory, outputFileName);
364
336
  yield mkdir(outputDirectory, { recursive: true });
365
337
  const finalXml = {
338
+ "?xml": xmlDeclaration,
366
339
  [rootElementName]: Object.assign(Object.assign({}, rootAttributes), { [parentKey]: element }),
367
340
  };
368
- const serialized = `${xmlDeclarationStr}\n${buildXMLString(finalXml)}`;
341
+ const serialized = `${buildXMLString(finalXml)}`;
369
342
  yield writeFile(outputPath, serialized);
370
343
  logger.debug(`Created disassembled file: ${outputPath}`);
371
344
  const transformer = getTransformer(format);
@@ -378,9 +351,9 @@ function buildNestedFile(element, disassembledPath, uniqueIdElements, rootElemen
378
351
 
379
352
  function parseElement$1(params) {
380
353
  return __awaiter(this, void 0, void 0, function* () {
381
- const { element, disassembledPath, uniqueIdElements, rootElementName, rootAttributes, key, leafCount, hasNestedElements, xmlDeclarationStr, format, } = params;
354
+ const { element, disassembledPath, uniqueIdElements, rootElementName, rootAttributes, key, leafCount, hasNestedElements, xmlDeclaration, format, } = params;
382
355
  if (typeof element === "object" && element !== null) {
383
- yield buildNestedFile(element, disassembledPath, uniqueIdElements, rootElementName, rootAttributes, key, xmlDeclarationStr, format);
356
+ yield buildNestedFile(element, disassembledPath, uniqueIdElements, rootElementName, rootAttributes, key, xmlDeclaration, format);
384
357
  return [{}, leafCount, true];
385
358
  }
386
359
  const leafContent = {
@@ -390,14 +363,15 @@ function parseElement$1(params) {
390
363
  });
391
364
  }
392
365
 
393
- function buildLeafFile(leafContent, disassembledPath, baseName, rootElementName, rootAttributes, xmlDeclarationStr, format) {
366
+ function buildLeafFile(leafContent, disassembledPath, baseName, rootElementName, rootAttributes, xmlDeclaration, format) {
394
367
  return __awaiter(this, void 0, void 0, function* () {
395
368
  const leafOutputPath = join(disassembledPath, `${baseName}.xml`);
396
369
  yield mkdir(disassembledPath, { recursive: true });
397
370
  const wrappedXml = {
371
+ "?xml": xmlDeclaration,
398
372
  [rootElementName]: Object.assign(Object.assign({}, rootAttributes), leafContent),
399
373
  };
400
- const serialized = `${xmlDeclarationStr}\n${buildXMLString(wrappedXml)}`;
374
+ const serialized = `${buildXMLString(wrappedXml)}`;
401
375
  yield writeFile(leafOutputPath, serialized);
402
376
  logger.debug(`Created disassembled file: ${leafOutputPath}`);
403
377
  const transformer = getTransformer(format);
@@ -423,8 +397,18 @@ function buildDisassembledFiles$1(filePath, disassembledPath, uniqueIdElements,
423
397
  const parsedXml = yield parseXML(filePath);
424
398
  if (parsedXml === undefined)
425
399
  return;
426
- const rootElementName = Object.keys(parsedXml)[1];
427
- const xmlDeclarationStr = buildXMLDeclaration(parsedXml);
400
+ const rawDeclaration = parsedXml["?xml"];
401
+ const xmlDeclaration = typeof rawDeclaration === "object" && rawDeclaration !== null
402
+ ? rawDeclaration
403
+ : {
404
+ "@_version": "1.0",
405
+ "@_encoding": "UTF-8",
406
+ };
407
+ const rootElementName = Object.keys(parsedXml).find((k) => k !== "?xml");
408
+ if (!rootElementName) {
409
+ logger.error(`Failed to identify root element in ${filePath}`);
410
+ return;
411
+ }
428
412
  const rootElement = parsedXml[rootElementName];
429
413
  const rootAttributes = extractRootAttributes(rootElement);
430
414
  let leafContent = {};
@@ -444,7 +428,7 @@ function buildDisassembledFiles$1(filePath, disassembledPath, uniqueIdElements,
444
428
  key,
445
429
  leafCount,
446
430
  hasNestedElements,
447
- xmlDeclarationStr,
431
+ xmlDeclaration,
448
432
  format,
449
433
  });
450
434
  const newContent = parsedLeafContent[key];
@@ -469,7 +453,7 @@ function buildDisassembledFiles$1(filePath, disassembledPath, uniqueIdElements,
469
453
  return;
470
454
  }
471
455
  if (leafCount > 0) {
472
- yield buildLeafFile(leafContent, disassembledPath, baseName, rootElementName, rootAttributes, xmlDeclarationStr, format);
456
+ yield buildLeafFile(leafContent, disassembledPath, baseName, rootElementName, rootAttributes, xmlDeclaration, format);
473
457
  }
474
458
  if (postPurge) {
475
459
  yield unlink(filePath);
@@ -507,14 +491,15 @@ function parseElement(params) {
507
491
  });
508
492
  }
509
493
 
510
- function buildGroupedNestedFile(tag, elements, disassembledPath, rootElementName, rootAttributes, xmlDeclarationStr, format) {
494
+ function buildGroupedNestedFile(tag, elements, disassembledPath, rootElementName, rootAttributes, xmlDeclaration, format) {
511
495
  return __awaiter(this, void 0, void 0, function* () {
512
496
  const outputPath = join(disassembledPath, `${tag}.xml`);
513
497
  yield mkdir(disassembledPath, { recursive: true });
514
498
  const rootElement = {
499
+ "?xml": xmlDeclaration,
515
500
  [rootElementName]: Object.assign(Object.assign({}, rootAttributes), { [tag]: elements }),
516
501
  };
517
- const serialized = `${xmlDeclarationStr}\n${buildXMLString(rootElement)}`;
502
+ const serialized = `${buildXMLString(rootElement)}`;
518
503
  yield writeFile(outputPath, serialized);
519
504
  logger.debug(`Created grouped nested file: ${outputPath}`);
520
505
  const transformer = getTransformer(format);
@@ -540,15 +525,25 @@ function buildDisassembledFiles(filePath, disassembledPath, baseName, postPurge,
540
525
  const parsedXml = yield parseXML(filePath);
541
526
  if (parsedXml === undefined)
542
527
  return;
543
- const rootElementName = Object.keys(parsedXml)[1];
544
- const xmlDeclarationStr = buildXMLDeclaration(parsedXml);
528
+ const rawDeclaration = parsedXml["?xml"];
529
+ const xmlDeclaration = typeof rawDeclaration === "object" && rawDeclaration !== null
530
+ ? rawDeclaration
531
+ : {
532
+ "@_version": "1.0",
533
+ "@_encoding": "UTF-8",
534
+ };
535
+ const rootElementName = Object.keys(parsedXml).find((k) => k !== "?xml");
536
+ if (!rootElementName) {
537
+ logger.error(`Failed to identify root element in ${filePath}`);
538
+ return;
539
+ }
545
540
  const rootElement = parsedXml[rootElementName];
546
541
  const rootAttributes = extractRootAttributes(rootElement);
547
542
  let leafContent = {};
548
543
  let leafCount = 0;
549
544
  let hasNestedElements = false;
550
545
  const nestedGroups = {};
551
- const keyOrder = Object.keys(parsedXml[rootElementName]).filter((k) => !k.startsWith("@"));
546
+ const keyOrder = Object.keys(rootElement).filter((k) => !k.startsWith("@"));
552
547
  for (const key of keyOrder) {
553
548
  const elements = Array.isArray(rootElement[key])
554
549
  ? rootElement[key]
@@ -588,11 +583,11 @@ function buildDisassembledFiles(filePath, disassembledPath, baseName, postPurge,
588
583
  return;
589
584
  }
590
585
  for (const tag in nestedGroups) {
591
- yield buildGroupedNestedFile(tag, nestedGroups[tag], disassembledPath, rootElementName, rootAttributes, xmlDeclarationStr, format);
586
+ yield buildGroupedNestedFile(tag, nestedGroups[tag], disassembledPath, rootElementName, rootAttributes, xmlDeclaration, format);
592
587
  }
593
588
  if (leafCount > 0) {
594
589
  const orderedLeafContent = orderXmlElementKeys(leafContent, keyOrder);
595
- yield buildLeafFile(orderedLeafContent, disassembledPath, baseName, rootElementName, rootAttributes, xmlDeclarationStr, format);
590
+ yield buildLeafFile(orderedLeafContent, disassembledPath, baseName, rootElementName, rootAttributes, xmlDeclaration, format);
596
591
  }
597
592
  if (postPurge) {
598
593
  yield unlink(filePath);