xml-disassembler 1.10.11 → 1.10.12

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/parsers/stripWhitespace.ts","../src/parsers/parseXML.ts","../src/parsers/parseToXmlObject.ts","../src/builders/buildXMLString.ts","../src/transformers/transformers.ts","../src/parsers/strategies/uid/parseUniqueIdElements.ts","../src/builders/buildDisassembledFile.ts","../src/transformers/getTransformer.ts","../src/parsers/strategies/uid/parseElement.ts","../src/builders/extractRootAttributes.ts","../src/parsers/strategies/grouped-by-tag/parseElement.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/mergeXmlElements.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","filePath","xmlParser","XMLParser","xmlParsed","xmlContent","readFile","parse","err","logger","error","parseToXmlObject","endsWith","fileContent","parsed","parseYaml","parseJson5","JSON","parseToml","parseIni","buildXMLString","element","XMLBuilder","build","trimEnd","transformToYaml","parsedXml","stringifyYaml","stringify","transformToJson5","stringifyJson5","transformToJson","transformToToml","stringifyToml","transformToIni","stringifyIni","parseUniqueIdElement","uniqueIdElements","createShortHash","uniqueIdElementsArray","split","fieldName","childFieldName","hash","createHash","update","digest","slice","buildDisassembledFile","_a","content","disassembledPath","outputFileName","subdirectory","wrapKey","isGroupedArray","rootElementName","rootAttributes","xmlDeclaration","targetDirectory","join","fileName","outputPath","mkdir","recursive","wrappedXml","transformer","getTransformer","outputString","writeFile","debug","parseElement","params","leafCount","hasNestedElements","extractRootAttributes","rootElement","attributesOnly","attrKey","attrValue","entries","startsWith","nestedGroups","isNestedObject","some","k","leafContent","getLogger","configure","appenders","disassemble","type","filename","categories","default","level","constructor","this","ign","ignore","xmlAttributes","strategy","prePurge","postPurge","ignorePath","resolvedIgnorePath","existsSync","add","toString","fileStat","stat","relativePath","posixPath","relative","process","cwd","isFile","resolvedPath","ignores","warn","dirPath","dirname","processFile","isDirectory","subFiles","readdir","subFile","subFilePath","relativeSubFilePath","fullName","basename","extname","baseName","rm","rawDeclaration","find","keyOrder","elements","newContent","tag","push","orderedLeafContent","ordered","orderXmlElementKeys","unlink","buildDissassembledFilesTag","parsedLeafContent","updatedLeafCount","updatedHasNestedElements","buildDisassembledFilesUID","path","replace","processFilesInDirectory","parsedXmlObjects","files","sort","fileA","fileB","fullNameA","toLowerCase","fullNameB","localeCompare","file","test","parsedObject","subParsedObjects","reassemble","fileExtension","finalXml","first","rootKey","mergedContent","current","childKey","hasOwnProperty","declaration","mergeXmlElements","parentDirectory","subdirectoryBasename"],"mappings":"+zBAkHO,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,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,SAfoB,OAgBpBC,2BAA2B,EAC3BC,mBAAmB,IClBf,SAAUC,EAAyBC,GACvC,GAAIC,MAAMC,QAAQF,GAChB,OAAOA,EAAKG,IAAIJ,GAA0BK,QAAQC,KAEtB,iBAAVA,GAAoD,IAA9BZ,OAAOa,KAAKD,GAAOE,UAEtD,GAAoB,iBAATP,GAA8B,OAATA,EAAe,CACpD,MAAMvB,EAAc,CAAE,EACtB,IAAK,MAAM+B,KAAOR,EAAM,CACtB,MAAM5B,EAAQ4B,EAAKQ,GACnB,GAAY,UAARA,GAAoC,iBAAVpC,GAAuC,KAAjBA,EAAMqC,OACxD,SAEF,MAAMC,EAAUX,EAAyB3B,QACzBuC,IAAZD,IACFjC,EAAO+B,GAAOE,GAGlB,OAAOjC,EAEP,OAAOuB,CAEX,CCPM,SAAgBY,EACpBC,4CAEA,MAAMC,EAAY,IAAIC,EAASA,UAACjC,GAChC,IAAIkC,EACJ,IACE,MAAMC,QAAmBC,WAASL,EAAU,SAC5CG,EAAYF,EAAUK,MAAMF,GAAY,GAGxC,OADgBlB,EAAyBiB,GAEzC,MAAOI,GAIP,YAHAC,EAAOC,MACL,GAAGT,8FAIR,CCxBK,SAAgBU,EACpBV,4CAEA,GAAIA,EAASW,SAAS,QACpB,aAAaZ,EAASC,GAGxB,MAAMY,QAAoBP,WAASL,EAAU,SAC7C,IAAIa,EAcJ,OAZIb,EAASW,SAAS,UAAYX,EAASW,SAAS,QAClDE,EAASC,EAASR,MAACM,GACVZ,EAASW,SAAS,UAC3BE,EAASE,EAAUT,MAACM,GACXZ,EAASW,SAAS,SAC3BE,EAASG,KAAKV,MAAMM,GACXZ,EAASW,SAAS,SAC3BE,EAASI,EAASX,MAACM,GACVZ,EAASW,SAAS,UAC3BE,EAASK,EAAQZ,MAACM,IAGbC,IACR,CCzBK,SAAUM,EAAeC,GAE7B,OADmB,IAAIC,EAAUA,WAAC1C,GAChB2C,MAAMF,GAASG,SACnC,CCFM,SAAgBC,EAAgBC,4CAEpC,OADmBC,EAAaC,UAACF,KAElC,CAEK,SAAgBG,EAAiBH,4CAErC,OADmBI,EAAcF,UAACF,EAAW,KAAM,KAEpD,CAEK,SAAgBK,EAAgBL,4CAEpC,OADmBT,KAAKW,UAAUF,EAAW,KAAM,KAEpD,CAEK,SAAgBM,EAAgBN,4CAEpC,OADmBO,EAAaL,UAACF,KAElC,CAEK,SAAgBQ,EAAeR,4CAEnC,OADkBS,EAAYP,UAACF,KAEhC,CCxBe,SAAAU,EACdf,EACAgB,GAEA,QAAyBtC,IAArBsC,EACF,OAAOC,EAAgBjB,GAEzB,MAAMkB,EAAwBF,EAAiBG,MAAM,KAErD,IAAK,MAAMC,KAAaF,EAEtB,QAA2BxC,IAAvBsB,EAAQoB,IACwB,iBAAvBpB,EAAQoB,GACjB,OAAOpB,EAAQoB,GAMrB,IAAK,MAAM7C,KAAOyB,EAChB,GAA4B,iBAAjBA,EAAQzB,IAAsC,OAAjByB,EAAQzB,GAAe,CAC7D,MAAM8C,EAAiBN,EACrBf,EAAQzB,GACRyC,GAEF,QAAuBtC,IAAnB2C,EACF,OAAOA,EAMb,OAAOJ,EAAgBjB,EACzB,CAEA,SAASiB,EAAgBjB,GACvB,MAAMsB,EAAOC,EAAUA,WAAC,UACxBD,EAAKE,OAAO5B,KAAKW,UAAUP,IAE3B,OADiBsB,EAAKG,OAAO,OACbC,MAAM,EAAG,EAC3B,UCnCsBC,EAAqBC,8CAACC,QAC1CA,EAAOC,iBACPA,EAAgBC,eAChBA,EAAcC,aACdA,EAAYC,QACZA,EAAOC,eACPA,GAAiB,EAAKC,gBACtBA,EAAeC,eACfA,EAAcC,eACdA,EAAc3E,OACdA,EAAMsD,iBACNA,IAGA,MAAMsB,EAAkBN,EACpBO,EAAIA,KAACT,EAAkBE,GACvBF,EAGJ,IAAIU,EAAWT,EACf,IAAKS,GAAYP,IAAYC,GAAqC,iBAAZL,EAAsB,CAK1EW,EAAW,GAJOzB,EAChBc,EACAb,MAEyBiB,UAAgBvE,IAE7C,MAAM+E,EAAaF,EAAAA,KAAKD,EAAiBE,SAEnCE,EAAKA,MAACJ,EAAiB,CAAEK,WAAW,IAE1C,IAAIC,EAAyB,CAC3BT,CAACA,GAAgB3E,OAAAC,OAAAD,OAAAC,OAAA,CAAA,EACZ2E,GACCH,EACA,CAAEA,CAACA,GAA2BJ,GAC7BA,IAIqB,iBAAnBQ,GAAkD,OAAnBA,IACxCO,iBACE,OAAQP,GACLO,IAIP,MAAMC,ECjDF,SACJnF,GAEA,OAAQA,GACN,IAAK,OACH,OAAO0C,EACT,IAAK,QACH,OAAOI,EACT,IAAK,OACH,OAAOE,EACT,IAAK,OACH,OAAOC,EACT,IAAK,MACH,OAAOE,EACT,QACE,OAEN,CDgCsBiC,CAAepF,GAC7BqF,EAAeF,QACXA,EAAYD,GAClB7C,EAAe6C,SAEbI,EAASA,UAACP,EAAYM,GAC5B3D,EAAO6D,MAAM,8BAA8BR,OAC5C,CE5DK,SAAgBS,EACpBC,4CAEA,MAAMnD,QACJA,EAAO8B,iBACPA,EAAgBd,iBAChBA,EAAgBmB,gBAChBA,EAAeC,eACfA,EAAc7D,IACdA,EAAG6E,UACHA,EAASC,kBACTA,EAAiB3F,OACjBA,EAAM2E,eACNA,GACEc,EAGJ,GAAuB,iBAAZnD,GAAoC,OAAZA,EAYjC,aAXM2B,EAAsB,CAC1BE,QAAS7B,EACT8B,mBACAE,aAAczD,EACd0D,QAAS1D,EACT4D,kBACAC,iBACAC,iBACA3E,SACAsD,qBAEK,CAAC,CAAA,EAAIoC,GAAW,GAQzB,MAAO,CAJyB,CAC9B7E,CAACA,GAAM,CAACyB,IAGWoD,EAAY,EAAGC,KACrC,CCnCK,SAAUC,EAAsBC,GACpC,MAAMC,EAA6B,CAAE,EACrC,IAAK,MAAOC,EAASC,KAAclG,OAAOmG,QAAQJ,GAC5CE,EAAQG,WAAW,OACrBJ,EAAeC,GAAWC,GAG9B,OAAOF,CACT,CCRM,SAAgBN,EAAaC,4CAMjC,MAAMnD,QAAEA,EAAOzB,IAAEA,EAAG8E,kBAAEA,GAAsBF,EAEtCU,EAAmC,CAAE,EAErC5F,EAAUD,MAAMC,QAAQ+B,GACxB8D,EACe,iBAAZ9D,GACK,OAAZA,GACAxC,OAAOa,KAAK2B,GAAS+D,MAAMC,IAAOA,EAAEJ,WAAW,OAGjD,GADiB3F,GAAW6F,EAG1B,OADAD,EAAatF,GAAO,CAACyB,GACd,CACLiE,YAAa,CAAE,EACfb,UAAWD,EAAOC,UAClBC,mBAAmB,EACnBQ,gBASJ,MAAO,CACLI,YAL8B,CAC9B1F,CAACA,GAAM,CAACyB,IAKRoD,UAAWD,EAAOC,UAAY,EAC9BC,oBACAQ,kBAEH,CCzBY,MAAAzE,EAAS8E,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,MAAMnG,SACJA,EAAQoC,iBACRA,EAAgBgE,SAChBA,EAAW,YAAWC,SACtBA,GAAW,EAAKC,UAChBA,GAAY,EAAKC,WACjBA,EAAa,yBAAwBzH,OACrCA,EAAS,OACPqH,EACEK,EAAqBpJ,EAAOA,QAACmJ,GACnC,GAAIE,EAAAA,WAAWD,GAAqB,CAClC,MAAMvD,QAAgB5C,EAAQA,SAACmG,GAC/BR,KAAKC,IAAIS,IAAIzD,EAAQ0D,YAGvB,MAAMC,QAAiBC,EAAIA,KAAC7G,GACtB8G,EAAed,KAAKe,UAAUC,EAAAA,SAASC,QAAQC,MAAOlH,IAE5D,GAAI4G,EAASO,SAAU,CACrB,MAAMC,EAAehK,EAAOA,QAAC4C,GAC7B,IAAKoH,EAAazG,SAAS,QAIzB,YAHAH,EAAOC,MACL,8CAA8C2G,KAIlD,GAAIpB,KAAKC,IAAIoB,QAAQP,GAEnB,YADAtG,EAAO8G,KAAK,mBAAmBf,MAAea,KAGhD,MAAMG,EAAUC,EAAOA,QAACJ,SAClBpB,KAAKyB,YAAY,CACrBF,UACAnB,WACApG,SAAUoH,EACVhF,mBACAiE,WACAC,YACAxH,gBAEG,GAAI8H,EAASc,cAAe,CACjC,MAAMC,QAAiBC,EAAOA,QAAC5H,GAC/B,IAAK,MAAM6H,KAAWF,EAAU,CAC9B,MAAMG,EAAcnE,EAAAA,KAAK3D,EAAU6H,GAC7BE,EAAsB/B,KAAKe,UAC/BC,EAAAA,SAASC,QAAQC,MAAOY,IAGxBA,EAAYnH,SAAS,UACpBqF,KAAKC,IAAIoB,QAAQU,SAEZ/B,KAAKyB,YAAY,CACrBF,QAASvH,EACToG,WACApG,SAAU8H,EACV1F,mBACAiE,WACAC,YACAxH,WAEOkH,KAAKC,IAAIoB,QAAQU,IAC1BvH,EAAO8G,KAAK,mBAAmBf,MAAeuB,SAIrD,CAEK,WAAAL,CAAYtB,4CAShB,MAAMoB,QACJA,EAAOnB,SACPA,EAAQpG,SACRA,EAAQoC,iBACRA,EAAgBiE,SAChBA,EAAQC,UACRA,EAASxH,OACTA,GACEqH,EAEJ3F,EAAO6D,MAAM,gCAAgCrE,KAC7C,MAAMgI,EAAWC,EAAQA,SAACjI,EAAUkI,EAAOA,QAAClI,IACtCmI,EAAWH,EAASzF,MAAM,KAAK,GAErC,IAAIsB,EACJA,EAAaF,EAAAA,KAAK4D,EAASY,GAEvB9B,GAAYI,EAAUA,WAAC5C,WACnBuE,EAAEA,GAACvE,EAAY,CAAEE,WAAW,KAEnB,mBAAbqC,QCjGF,SACJpG,EACAkD,EACAiF,EACA7B,EACAxH,kDAEA,MAAM2C,QAAkB1B,EAASC,GACjC,QAAkBF,IAAd2B,EAAyB,OAG7B,MAAM4G,EAAiB5G,EAAU,QAC3BgC,EACsB,iBAAnB4E,GAAkD,OAAnBA,EACjCA,OACDvI,EAEAyD,EAAkB3E,OAAOa,KAAKgC,GAAW6G,MAAMlD,GAAY,SAANA,IACrDT,EAA0BlD,EAAU8B,GACpCC,EAAiBkB,EAAsBC,GAE7C,IAAIU,EAAkC,CAAE,EACpCb,EAAY,EACZC,GAAoB,EACxB,MAAMQ,EAAmC,CAAE,EACrCsD,EAAW3J,OAAOa,KAAKkF,GAAapF,QAAQ6F,IAAOA,EAAEJ,WAAW,OAEtE,IAAK,MAAMrF,KAAO4I,EAAU,CAC1B,MAAMC,EAAWpJ,MAAMC,QAAQsF,EAAYhF,IACtCgF,EAAYhF,GACb,CAACgF,EAAYhF,IAEjB,IAAK,MAAMyB,KAAWoH,EAAU,CAC9B,MAAM5K,QAAe0G,EAAa,CAChClD,UAIAzB,MAEA6E,YACAC,sBAKF,GAAI7F,OAAOa,KAAK7B,EAAOyH,aAAa3F,OAAS,EAAG,CAC9C,MAAM+I,EAAa7K,EAAOyH,YAAY1F,QAEnBG,IAAf2I,IACFpD,EAAY1F,GAAO,IACG,UAAhB0F,EAAY1F,UAAI,IAAAqD,EAAAA,EAAI,MACpByF,IAKVjE,EAAY5G,EAAO4G,UACnBC,EAAoB7G,EAAO6G,kBAE3B,IAAK,MAAMiE,KAAO9K,EAAOqH,aAClBA,EAAayD,KAAMzD,EAAayD,GAAO,IAC5CzD,EAAayD,GAAKC,QAAQ/K,EAAOqH,aAAayD,KAKpD,IAAKjE,GAAqBD,EAAY,EACpChE,EAAOC,MACL,gBAAgBT,qEAFpB,CAOA,IAAK,MAAM0I,KAAOzD,QACVlC,EAAsB,CAC1BE,QAASgC,EAAayD,GACtBxF,mBACAC,eAAgB,GAAGuF,KAAO5J,IAC1BuE,QAASqF,EACTpF,gBAAgB,EAChBC,kBACAC,iBACAC,iBACA3E,WAIJ,GAAI0F,EAAY,EAAG,CACjB,MAAMoE,EAtGV,SACE3F,EACAsF,GAEA,MAAMM,EAAsB,CAAE,EAC9B,IAAK,MAAMlJ,KAAO4I,OACKzI,IAAjBmD,EAAQtD,KACVkJ,EAAQlJ,GAAOsD,EAAQtD,IAG3B,OAAOkJ,CACT,CA2F+BC,CAAoBzD,EAAakD,SACtDxF,EAAsB,CAC1BE,QAAS2F,EACT1F,mBACAC,eAAgB,GAAGgF,KAAYrJ,IAC/ByE,kBACAC,iBACAC,iBACA3E,WAIAwH,UACIyC,EAAAA,OAAO/I,OAEhB,CDNWgJ,CACJhJ,EACA6D,EACAmE,EACA1B,EACAxH,SEnHc,SACpBkB,EACAkD,EACAd,EACA+F,EACA7B,EACAxH,kDAEA,MAAM2C,QAAkB1B,EAASC,GACjC,QAAkBF,IAAd2B,EAAyB,OAG7B,MAAM4G,EAAiB5G,EAAU,QAC3BgC,EACsB,iBAAnB4E,GAAkD,OAAnBA,EACjCA,OACDvI,EAEAyD,EAAkB3E,OAAOa,KAAKgC,GAAW6G,MAAMlD,GAAY,SAANA,IACrDT,EAA0BlD,EAAU8B,GACpCC,EAAiBkB,EAAsBC,GAE7C,IAAIU,EAAkC,CAAE,EACpCb,EAAY,EACZC,GAAoB,EAExB,IAAK,MAAM9E,KAAOf,OAAOa,KAAKkF,GAAapF,QACxC6F,IAAOA,EAAEJ,WAAW,OACpB,CACD,MAAMwD,EAAWpJ,MAAMC,QAAQsF,EAAYhF,IACtCgF,EAAYhF,GACb,CAACgF,EAAYhF,IAEjB,IAAK,MAAMyB,KAAWoH,EAAU,CAC9B,MAAOS,EAAmBC,EAAkBC,SACpC7E,EAAa,CACjBlD,UACA8B,mBACAd,mBACAmB,kBACAC,iBACA7D,MAEA6E,YACAC,oBACA3F,SACA2E,mBAGEgF,EAAaQ,EAAkBtJ,QAClBG,IAAf2I,IACFpD,EAAY1F,GAAO,IACG,UAAhB0F,EAAY1F,UAAI,IAAAqD,EAAAA,EAAI,MACpByF,IAIRjE,EAAY0E,EACZzE,EAAoB0E,GAInB1E,GAODD,EAAY,UACRzB,EAAsB,CAC1BE,QAASoC,EACTnC,mBACAC,eAAgB,GAAGgF,KAAYrJ,IAC/ByE,kBACAC,iBACAC,iBACA3E,YAIAwH,UACIyC,EAAAA,OAAO/I,KAnBbQ,EAAOC,MACL,gBAAgBT,mEAoBrB,CFkCWoJ,CACJpJ,EACA6D,EACAzB,EACA4F,EACA1B,EACAxH,KAGL,CAEO,SAAAiI,CAAUsC,GAEhB,OAAOA,EAAKC,QAAQ,OAAQ,wCGnIxB,uBAAAC,CAAwBhC,4CAC5B,MAAMiC,EAA0B,GAC1BC,QAAc7B,EAAOA,QAACL,GAE5BkC,EAAMC,MAAK,CAACC,EAAOC,KACjB,MAAMC,EAAYF,EAAMpH,MAAM,KAAK,GAAGuH,cAChCC,EAAYH,EAAMrH,MAAM,KAAK,GAAGuH,cACtC,OAAOD,EAAUG,cAAcD,EAAU,IAG3C,IAAK,MAAME,KAAQR,EAAO,CACxB,MAAMzJ,EAAW2D,EAAAA,KAAK4D,EAAS0C,GACzBrD,QAAiBC,EAAIA,KAAC7G,GAE5B,GAAI4G,EAASO,UACX,GAAI,qCAAqC+C,KAAKD,GAAO,CACnD,MAAME,QAAqBzJ,EAAiBV,GAC5C,QAAqBF,IAAjBqK,EAA4B,SAEhCX,EAAiBb,KAAKwB,SAEnB,GAAIvD,EAASc,cAAe,CACjC,MAAM0C,QAAyBpE,KAAKuD,wBAAwBvJ,GAC5DwJ,EAAiBb,QAAQyB,IAI7B,OAAOZ,IACR,CAEK,UAAAa,CAAWlE,4CAKf,MAAMnG,SAAEA,EAAQsK,cAAEA,EAAahE,UAAEA,GAAY,GAAUH,EAGvD,WAFuBU,EAAIA,KAAC7G,IAEd0H,cAIZ,YAHAlH,EAAOC,MACL,uDAAuDT,KAK3DQ,EAAO6D,MAAM,oCAAoCrE,KACjD,MAAMwJ,QAAyBxD,KAAKuD,wBAAwBvJ,GAE5D,IAAKwJ,EAAiB9J,OAIpB,YAHAc,EAAOC,MACL,kBAAkBT,uEAKtB,MAEMuK,EADapJ,EChEjB,SACJqH,GAEA,GAAwB,IAApBA,EAAS9I,OAEX,YADAc,EAAOC,MAAM,yBAGf,MAAM+J,EAAQhC,EAAS,GACjBiC,EAAU7L,OAAOa,KAAK+K,GAAOlC,MAAMlD,GAAY,SAANA,IACzCsF,EAAqC,CAAE,EAE7C,IAAK,MAAMtJ,KAAWoH,EAAU,CAC9B,MAAMmC,EAAUvJ,EAAQqJ,GAExB,IAAK,MAAOG,EAAUrN,KAAUqB,OAAOmG,QAAQ4F,GACzCvL,MAAMC,QAAQ9B,GAChBmN,EAAcE,GAAY,IAAIrN,GACJ,iBAAVA,EACZ6B,MAAMC,QAAQqL,EAAcE,IAC9BF,EAAcE,GAAUjC,KAAKpL,GACpBmN,EAAcE,GACvBF,EAAcE,GAAY,CAACF,EAAcE,GAAWrN,GAEpDmN,EAAcE,GAAYrN,EAGvBmN,EAAcG,eAAeD,KAChCF,EAAcE,GAAYrN,GAMlC,MAAMuN,EAAcN,EAAM,QAI1B,OAHgCM,EAC5B,CAAE,OAAQA,EAAaL,CAACA,GAAUC,GAClC,CAAED,CAACA,GAAUC,EAEnB,CDyBsBK,CAAiBvB,IAI7BwB,EAAkBxD,EAAOA,QAACxH,GAC1BiL,EAAuBhD,EAAQA,SAACjI,GAChC4D,EAAW0G,EACb,GAAGW,KAAwBX,IAC3B,GAAGW,QACDpH,EAAaF,EAAAA,KAAKqH,EAAiBpH,SAEnCQ,YAAUP,EAAY0G,EAAU,SAElCjE,UACI8B,EAAEA,GAACpI,EAAU,CAAE+D,WAAW,OAEnC,4DJlEG,SAAsB+B,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/parseToXmlObject.ts","../src/builders/buildXMLString.ts","../src/transformers/transformers.ts","../src/parsers/parseUniqueIdElements.ts","../src/builders/buildDisassembledFile.ts","../src/transformers/getTransformer.ts","../src/parsers/parseElement.ts","../src/builders/buildDisassembledFiles.ts","../src/builders/extractRootAttributes.ts","../src/index.ts","../src/handlers/disassembleXMLFileHandler.ts","../src/handlers/reassembleXMLFileHandler.ts","../src/builders/mergeXmlElements.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],"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","filePath","xmlParser","XMLParser","xmlParsed","xmlContent","readFile","parse","err","logger","error","parseToXmlObject","endsWith","fileContent","parsed","parseYaml","parseJson5","JSON","parseToml","parseIni","buildXMLString","element","XMLBuilder","build","trimEnd","transformToYaml","parsedXml","stringifyYaml","stringify","transformToJson5","stringifyJson5","transformToJson","transformToToml","stringifyToml","transformToIni","stringifyIni","parseUniqueIdElement","uniqueIdElements","createShortHash","_b","_a","fieldNames","name","findDirectFieldMatch","split","child","findNestedFieldMatch","createHash","update","digest","slice","buildDisassembledFile","content","disassembledPath","outputFileName","subdirectory","wrapKey","isGroupedArray","rootElementName","rootAttributes","xmlDeclaration","targetDirectory","join","fileName","outputPath","mkdir","recursive","wrappedXml","transformer","getTransformer","outputString","writeFile","debug","parseElementUnified","params","leafCount","hasNestedElements","strategy","isNestedObject","some","k","startsWith","leafContent","nestedGroups","buildDisassembledFilesUnified","this","arguments","baseName","postPurge","rootElement","rawDeclaration","find","getRootInfo","attributes","entries","extractRootAttributes","keyOrder","elements","tag","_c","disassembleElementKeys","options","writeNestedGroups","finalLeafContent","ordered","orderXmlElementKeys","unlink","getLogger","configure","appenders","disassemble","type","filename","categories","default","level","constructor","ign","ignore","xmlAttributes","prePurge","ignorePath","includes","warn","resolvedIgnorePath","existsSync","add","toString","fileStat","stat","relativePath","posixPath","relative","process","cwd","isFile","resolvedPath","ignores","dirPath","dirname","processFile","isDirectory","subFiles","readdir","subFile","subFilePath","relativeSubFilePath","fullName","basename","extname","rm","path","replace","processFilesInDirectory","parsedXmlObjects","files","sort","fileA","fileB","fullNameA","toLowerCase","fullNameB","localeCompare","file","test","parsedObject","push","subParsedObjects","reassemble","fileExtension","finalXml","first","rootKey","mergedContent","current","childKey","hasOwnProperty","declaration","mergeXmlElements","parentDirectory","subdirectoryBasename"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index.mjs CHANGED
@@ -279,32 +279,36 @@ function getTransformer(format) {
279
279
  }
280
280
 
281
281
  function parseUniqueIdElement(element, uniqueIdElements) {
282
- if (uniqueIdElements === undefined) {
282
+ var _a, _b;
283
+ if (!uniqueIdElements) {
283
284
  return createShortHash(element);
284
285
  }
285
- const uniqueIdElementsArray = uniqueIdElements.split(",");
286
- for (const fieldName of uniqueIdElementsArray) {
287
- if (element[fieldName] !== undefined) {
288
- if (typeof element[fieldName] === "string") {
289
- return element[fieldName];
290
- }
286
+ const id = (_b = (_a = findDirectFieldMatch(element, uniqueIdElements.split(","))) !== null && _a !== void 0 ? _a : findNestedFieldMatch(element, uniqueIdElements)) !== null && _b !== void 0 ? _b : createShortHash(element);
287
+ return id;
288
+ }
289
+ function findDirectFieldMatch(element, fieldNames) {
290
+ for (const name of fieldNames) {
291
+ const value = element[name];
292
+ if (typeof value === "string") {
293
+ return value;
291
294
  }
292
295
  }
296
+ }
297
+ function findNestedFieldMatch(element, uniqueIdElements) {
293
298
  for (const key in element) {
294
- if (typeof element[key] === "object" && element[key] !== null) {
295
- const childFieldName = parseUniqueIdElement(element[key], uniqueIdElements);
296
- if (childFieldName !== undefined) {
297
- return childFieldName;
298
- }
299
+ const child = element[key];
300
+ if (typeof child === "object" && child !== null) {
301
+ const result = parseUniqueIdElement(child, uniqueIdElements);
302
+ if (result)
303
+ return result;
299
304
  }
300
305
  }
301
- return createShortHash(element);
302
306
  }
303
307
  function createShortHash(element) {
304
- const hash = createHash("sha256");
305
- hash.update(JSON.stringify(element));
306
- const fullHash = hash.digest("hex");
307
- return fullHash.slice(0, 8);
308
+ const hash = createHash("sha256")
309
+ .update(JSON.stringify(element))
310
+ .digest("hex");
311
+ return hash.slice(0, 8);
308
312
  }
309
313
 
310
314
  function buildDisassembledFile(_a) {
@@ -336,91 +340,98 @@ function buildDisassembledFile(_a) {
336
340
  });
337
341
  }
338
342
 
339
- function parseElement$1(params) {
340
- return __awaiter(this, void 0, void 0, function* () {
341
- const { element, disassembledPath, uniqueIdElements, rootElementName, rootAttributes, key, leafCount, hasNestedElements, format, xmlDeclaration, } = params;
342
- if (typeof element === "object" && element !== null) {
343
- yield buildDisassembledFile({
344
- content: element,
345
- disassembledPath,
346
- subdirectory: key,
347
- wrapKey: key,
348
- rootElementName,
349
- rootAttributes,
350
- xmlDeclaration,
351
- format,
352
- uniqueIdElements,
353
- });
354
- return [{}, leafCount, true];
355
- }
356
- const leafContent = {
357
- [key]: [element],
358
- };
359
- return [leafContent, leafCount + 1, hasNestedElements];
360
- });
361
- }
362
-
363
- function extractRootAttributes(rootElement) {
364
- const attributesOnly = {};
365
- for (const [attrKey, attrValue] of Object.entries(rootElement)) {
366
- if (attrKey.startsWith("@")) {
367
- attributesOnly[attrKey] = attrValue;
343
+ function extractRootAttributes(element) {
344
+ const attributes = {};
345
+ for (const [key, value] of Object.entries(element)) {
346
+ if (key.startsWith("@") && typeof value === "string") {
347
+ attributes[key] = value;
368
348
  }
369
349
  }
370
- return attributesOnly;
350
+ return attributes;
371
351
  }
372
352
 
373
- function buildDisassembledFiles$1(filePath, disassembledPath, uniqueIdElements, baseName, postPurge, format) {
353
+ function parseElementUnified(params) {
374
354
  return __awaiter(this, void 0, void 0, function* () {
375
- var _a;
376
- const parsedXml = yield parseXML(filePath);
377
- if (parsedXml === undefined)
378
- return;
379
- const rawDeclaration = parsedXml["?xml"];
380
- const xmlDeclaration = typeof rawDeclaration === "object" && rawDeclaration !== null
381
- ? rawDeclaration
382
- : undefined;
383
- const rootElementName = Object.keys(parsedXml).find((k) => k !== "?xml");
384
- const rootElement = parsedXml[rootElementName];
385
- const rootAttributes = extractRootAttributes(rootElement);
386
- let leafContent = {};
387
- let leafCount = 0;
388
- let hasNestedElements = false;
389
- for (const key of Object.keys(rootElement).filter((k) => !k.startsWith("@"))) {
390
- const elements = Array.isArray(rootElement[key])
391
- ? rootElement[key]
392
- : [rootElement[key]];
393
- for (const element of elements) {
394
- const [parsedLeafContent, updatedLeafCount, updatedHasNestedElements] = yield parseElement$1({
395
- element,
355
+ const { element, disassembledPath, uniqueIdElements, rootElementName, rootAttributes, key, leafCount, hasNestedElements, format, xmlDeclaration, strategy, } = params;
356
+ const isArray = Array.isArray(element);
357
+ const isNestedObject = typeof element === "object" &&
358
+ element !== null &&
359
+ Object.keys(element).some((k) => !k.startsWith("#"));
360
+ const isNested = isArray || isNestedObject;
361
+ if (isNested) {
362
+ if (strategy === "grouped-by-tag") {
363
+ return {
364
+ leafContent: {},
365
+ leafCount,
366
+ hasNestedElements: true,
367
+ nestedGroups: { [key]: [element] },
368
+ };
369
+ }
370
+ else {
371
+ yield buildDisassembledFile({
372
+ content: element,
396
373
  disassembledPath,
397
- uniqueIdElements,
374
+ subdirectory: key,
375
+ wrapKey: key,
398
376
  rootElementName,
399
377
  rootAttributes,
400
- key,
401
- leafCount,
402
- hasNestedElements,
403
- format,
404
378
  xmlDeclaration,
379
+ format,
380
+ uniqueIdElements,
405
381
  });
406
- const newContent = parsedLeafContent[key];
407
- if (newContent !== undefined) {
408
- leafContent[key] = [
409
- ...((_a = leafContent[key]) !== null && _a !== void 0 ? _a : []),
410
- ...newContent,
411
- ];
412
- }
413
- leafCount = updatedLeafCount;
414
- hasNestedElements = updatedHasNestedElements;
382
+ return {
383
+ leafContent: {},
384
+ leafCount,
385
+ hasNestedElements: true,
386
+ };
415
387
  }
416
388
  }
417
- if (!hasNestedElements) {
389
+ return {
390
+ leafContent: {
391
+ [key]: [element],
392
+ },
393
+ leafCount: leafCount + 1,
394
+ hasNestedElements,
395
+ };
396
+ });
397
+ }
398
+
399
+ function buildDisassembledFilesUnified(_a) {
400
+ return __awaiter(this, arguments, void 0, function* ({ filePath, disassembledPath, baseName, postPurge, format, uniqueIdElements, strategy, }) {
401
+ const parsedXml = yield parseXML(filePath);
402
+ if (!parsedXml)
403
+ return;
404
+ const { rootElementName, rootElement, xmlDeclaration } = getRootInfo(parsedXml);
405
+ const rootAttributes = extractRootAttributes(rootElement);
406
+ const keyOrder = Object.keys(rootElement).filter((k) => !k.startsWith("@"));
407
+ const { leafContent, nestedGroups, leafCount, hasNestedElements } = yield disassembleElementKeys({
408
+ rootElement,
409
+ keyOrder,
410
+ disassembledPath,
411
+ rootElementName,
412
+ rootAttributes,
413
+ xmlDeclaration,
414
+ uniqueIdElements,
415
+ strategy,
416
+ format,
417
+ });
418
+ if (!hasNestedElements && leafCount > 0) {
418
419
  logger.error(`The XML file ${filePath} only has leaf elements. This file will not be disassembled.`);
419
420
  return;
420
421
  }
422
+ yield writeNestedGroups(nestedGroups, strategy, {
423
+ disassembledPath,
424
+ rootElementName,
425
+ rootAttributes,
426
+ xmlDeclaration,
427
+ format,
428
+ });
421
429
  if (leafCount > 0) {
430
+ const finalLeafContent = strategy === "grouped-by-tag"
431
+ ? orderXmlElementKeys(leafContent, keyOrder)
432
+ : leafContent;
422
433
  yield buildDisassembledFile({
423
- content: leafContent,
434
+ content: finalLeafContent,
424
435
  disassembledPath,
425
436
  outputFileName: `${baseName}.${format}`,
426
437
  rootElementName,
@@ -434,37 +445,15 @@ function buildDisassembledFiles$1(filePath, disassembledPath, uniqueIdElements,
434
445
  }
435
446
  });
436
447
  }
437
-
438
- function parseElement(params) {
439
- return __awaiter(this, void 0, void 0, function* () {
440
- const { element, key, hasNestedElements } = params;
441
- const nestedGroups = {};
442
- const isArray = Array.isArray(element);
443
- const isNestedObject = typeof element === "object" &&
444
- element !== null &&
445
- Object.keys(element).some((k) => !k.startsWith("#"));
446
- const isNested = isArray || isNestedObject;
447
- if (isNested) {
448
- nestedGroups[key] = [element];
449
- return {
450
- leafContent: {},
451
- leafCount: params.leafCount,
452
- hasNestedElements: true,
453
- nestedGroups,
454
- };
455
- }
456
- const leafContent = {
457
- [key]: [element],
458
- };
459
- return {
460
- leafContent,
461
- leafCount: params.leafCount + 1,
462
- hasNestedElements,
463
- nestedGroups,
464
- };
465
- });
448
+ function getRootInfo(parsedXml) {
449
+ const rawDeclaration = parsedXml["?xml"];
450
+ const xmlDeclaration = typeof rawDeclaration === "object" && rawDeclaration !== null
451
+ ? rawDeclaration
452
+ : undefined;
453
+ const rootElementName = Object.keys(parsedXml).find((k) => k !== "?xml");
454
+ const rootElement = parsedXml[rootElementName];
455
+ return { rootElementName, rootElement, xmlDeclaration };
466
456
  }
467
-
468
457
  function orderXmlElementKeys(content, keyOrder) {
469
458
  const ordered = {};
470
459
  for (const key of keyOrder) {
@@ -474,84 +463,69 @@ function orderXmlElementKeys(content, keyOrder) {
474
463
  }
475
464
  return ordered;
476
465
  }
477
- function buildDisassembledFiles(filePath, disassembledPath, baseName, postPurge, format) {
478
- return __awaiter(this, void 0, void 0, function* () {
479
- var _a;
480
- const parsedXml = yield parseXML(filePath);
481
- if (parsedXml === undefined)
482
- return;
483
- const rawDeclaration = parsedXml["?xml"];
484
- const xmlDeclaration = typeof rawDeclaration === "object" && rawDeclaration !== null
485
- ? rawDeclaration
486
- : undefined;
487
- const rootElementName = Object.keys(parsedXml).find((k) => k !== "?xml");
488
- const rootElement = parsedXml[rootElementName];
489
- const rootAttributes = extractRootAttributes(rootElement);
466
+ function disassembleElementKeys(_a) {
467
+ return __awaiter(this, arguments, void 0, function* ({ rootElement, keyOrder, disassembledPath, rootElementName, rootAttributes, xmlDeclaration, uniqueIdElements, strategy, format, }) {
468
+ var _b, _c;
490
469
  let leafContent = {};
470
+ let nestedGroups = {};
491
471
  let leafCount = 0;
492
472
  let hasNestedElements = false;
493
- const nestedGroups = {};
494
- const keyOrder = Object.keys(rootElement).filter((k) => !k.startsWith("@"));
495
473
  for (const key of keyOrder) {
496
474
  const elements = Array.isArray(rootElement[key])
497
475
  ? rootElement[key]
498
476
  : [rootElement[key]];
499
477
  for (const element of elements) {
500
- const result = yield parseElement({
478
+ const result = yield parseElementUnified({
501
479
  element,
480
+ disassembledPath,
481
+ uniqueIdElements,
482
+ rootElementName,
483
+ rootAttributes,
502
484
  key,
503
485
  leafCount,
504
- hasNestedElements});
505
- if (Object.keys(result.leafContent).length > 0) {
506
- const newContent = result.leafContent[key];
507
- if (newContent !== undefined) {
508
- leafContent[key] = [
509
- ...((_a = leafContent[key]) !== null && _a !== void 0 ? _a : []),
510
- ...newContent,
486
+ hasNestedElements,
487
+ format,
488
+ xmlDeclaration,
489
+ strategy,
490
+ });
491
+ if (result.leafContent[key]) {
492
+ leafContent[key] = [
493
+ ...((_b = leafContent[key]) !== null && _b !== void 0 ? _b : []),
494
+ ...result.leafContent[key],
495
+ ];
496
+ }
497
+ if (strategy === "grouped-by-tag" && result.nestedGroups) {
498
+ for (const tag in result.nestedGroups) {
499
+ nestedGroups[tag] = [
500
+ ...((_c = nestedGroups[tag]) !== null && _c !== void 0 ? _c : []),
501
+ ...result.nestedGroups[tag],
511
502
  ];
512
503
  }
513
504
  }
514
505
  leafCount = result.leafCount;
515
506
  hasNestedElements = result.hasNestedElements;
516
- for (const tag in result.nestedGroups) {
517
- if (!nestedGroups[tag])
518
- nestedGroups[tag] = [];
519
- nestedGroups[tag].push(...result.nestedGroups[tag]);
520
- }
521
507
  }
522
508
  }
523
- if (!hasNestedElements && leafCount > 0) {
524
- logger.error(`The XML file ${filePath} only has leaf elements. This file will not be disassembled.`);
509
+ return { leafContent, nestedGroups, leafCount, hasNestedElements };
510
+ });
511
+ }
512
+ function writeNestedGroups(nestedGroups, strategy, options) {
513
+ return __awaiter(this, void 0, void 0, function* () {
514
+ if (strategy !== "grouped-by-tag")
525
515
  return;
526
- }
527
516
  for (const tag in nestedGroups) {
528
517
  yield buildDisassembledFile({
529
518
  content: nestedGroups[tag],
530
- disassembledPath,
531
- outputFileName: `${tag}.${format}`,
519
+ disassembledPath: options.disassembledPath,
520
+ outputFileName: `${tag}.${options.format}`,
532
521
  wrapKey: tag,
533
522
  isGroupedArray: true,
534
- rootElementName,
535
- rootAttributes,
536
- xmlDeclaration,
537
- format,
538
- });
539
- }
540
- if (leafCount > 0) {
541
- const orderedLeafContent = orderXmlElementKeys(leafContent, keyOrder);
542
- yield buildDisassembledFile({
543
- content: orderedLeafContent,
544
- disassembledPath,
545
- outputFileName: `${baseName}.${format}`,
546
- rootElementName,
547
- rootAttributes,
548
- xmlDeclaration,
549
- format,
523
+ rootElementName: options.rootElementName,
524
+ rootAttributes: options.rootAttributes,
525
+ xmlDeclaration: options.xmlDeclaration,
526
+ format: options.format,
550
527
  });
551
528
  }
552
- if (postPurge) {
553
- yield unlink(filePath);
554
- }
555
529
  });
556
530
  }
557
531
 
@@ -561,7 +535,11 @@ class DisassembleXMLFileHandler {
561
535
  }
562
536
  disassemble(xmlAttributes) {
563
537
  return __awaiter(this, void 0, void 0, function* () {
564
- const { filePath, uniqueIdElements, strategy = "unique-id", prePurge = false, postPurge = false, ignorePath = ".xmldisassemblerignore", format = "xml", } = xmlAttributes;
538
+ let { filePath, uniqueIdElements, strategy = "unique-id", prePurge = false, postPurge = false, ignorePath = ".xmldisassemblerignore", format = "xml", } = xmlAttributes;
539
+ if (!["unique-id", "grouped-by-tag"].includes(strategy)) {
540
+ logger.warn(`Unsupported strategy "${strategy}", defaulting to "unique-id".`);
541
+ strategy = "unique-id";
542
+ }
565
543
  const resolvedIgnorePath = resolve(ignorePath);
566
544
  if (existsSync(resolvedIgnorePath)) {
567
545
  const content = yield readFile(resolvedIgnorePath);
@@ -624,12 +602,15 @@ class DisassembleXMLFileHandler {
624
602
  outputPath = join$1(dirPath, baseName);
625
603
  if (prePurge && existsSync(outputPath))
626
604
  yield rm(outputPath, { recursive: true });
627
- if (strategy === "grouped-by-tag") {
628
- yield buildDisassembledFiles(filePath, outputPath, fullName, postPurge, format);
629
- }
630
- else {
631
- yield buildDisassembledFiles$1(filePath, outputPath, uniqueIdElements, fullName, postPurge, format);
632
- }
605
+ yield buildDisassembledFilesUnified({
606
+ filePath,
607
+ disassembledPath: outputPath,
608
+ uniqueIdElements,
609
+ baseName: fullName,
610
+ postPurge,
611
+ format,
612
+ strategy,
613
+ });
633
614
  });
634
615
  }
635
616
  posixPath(path) {