devbrain-cli 0.2.0 → 0.3.0

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.
Files changed (740) hide show
  1. package/README.md +26 -26
  2. package/dist/bin.js +16 -3
  3. package/dist/commands/context.command.d.ts +2 -1
  4. package/dist/commands/context.command.js +42 -4
  5. package/dist/commands/learn.command.d.ts +3 -0
  6. package/dist/commands/learn.command.js +140 -23
  7. package/dist/commands/search.command.d.ts +14 -0
  8. package/dist/commands/search.command.js +90 -0
  9. package/dist/temp-prefix/devbrain +16 -0
  10. package/dist/temp-prefix/devbrain.cmd +17 -0
  11. package/dist/temp-prefix/devbrain.ps1 +28 -0
  12. package/dist/temp-prefix/node_modules/devbrain-cli/LICENSE +21 -0
  13. package/dist/temp-prefix/node_modules/devbrain-cli/README.md +26 -0
  14. package/dist/temp-prefix/node_modules/devbrain-cli/dist/bin.d.ts +2 -0
  15. package/dist/temp-prefix/node_modules/devbrain-cli/dist/bin.js +110 -0
  16. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/context.command.d.ts +17 -0
  17. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/context.command.js +74 -0
  18. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/history.command.d.ts +10 -0
  19. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/history.command.js +66 -0
  20. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/hook.command.d.ts +14 -0
  21. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/hook.command.js +40 -0
  22. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/init.command.d.ts +17 -0
  23. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/init.command.js +93 -0
  24. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/learn.command.d.ts +30 -0
  25. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/learn.command.js +294 -0
  26. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/search.command.d.ts +14 -0
  27. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/search.command.js +90 -0
  28. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/status.command.d.ts +12 -0
  29. package/dist/temp-prefix/node_modules/devbrain-cli/dist/commands/status.command.js +82 -0
  30. package/dist/temp-prefix/node_modules/devbrain-cli/dist/pipeline/command.pipeline.d.ts +28 -0
  31. package/dist/temp-prefix/node_modules/devbrain-cli/dist/pipeline/command.pipeline.js +65 -0
  32. package/dist/temp-prefix/node_modules/devbrain-cli/dist/ui/logger.d.ts +13 -0
  33. package/dist/temp-prefix/node_modules/devbrain-cli/dist/ui/logger.js +31 -0
  34. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/.bin/fxparser +16 -0
  35. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/.bin/fxparser.cmd +17 -0
  36. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/.bin/fxparser.ps1 +28 -0
  37. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzer.interface.d.ts +10 -0
  38. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzer.interface.js +2 -0
  39. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzer.registry.d.ts +20 -0
  40. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzer.registry.js +67 -0
  41. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/build-gradle.analyzer.d.ts +14 -0
  42. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/build-gradle.analyzer.js +53 -0
  43. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/docker.analyzer.d.ts +14 -0
  44. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/docker.analyzer.js +38 -0
  45. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/git.analyzer.d.ts +14 -0
  46. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/git.analyzer.js +54 -0
  47. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/package-json.analyzer.d.ts +14 -0
  48. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/package-json.analyzer.js +72 -0
  49. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/pom-xml.analyzer.d.ts +14 -0
  50. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/pom-xml.analyzer.js +70 -0
  51. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/readme.analyzer.d.ts +17 -0
  52. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/readme.analyzer.js +65 -0
  53. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/requirements-txt.analyzer.d.ts +14 -0
  54. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/requirements-txt.analyzer.js +62 -0
  55. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/source-code.analyzer.d.ts +24 -0
  56. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/source-code.analyzer.js +126 -0
  57. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/tsconfig.analyzer.d.ts +14 -0
  58. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/analyzers/tsconfig.analyzer.js +47 -0
  59. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/scanner.d.ts +21 -0
  60. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/analysis/scanner.js +81 -0
  61. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/context/context.service.d.ts +16 -0
  62. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/context/context.service.js +158 -0
  63. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/embeddings/EmbeddingProvider.d.ts +4 -0
  64. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/embeddings/EmbeddingProvider.js +2 -0
  65. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/embeddings/TransformersProvider.d.ts +9 -0
  66. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/embeddings/TransformersProvider.js +70 -0
  67. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/engine/dependency.resolver.d.ts +12 -0
  68. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/engine/dependency.resolver.js +101 -0
  69. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/engine/history.manager.d.ts +24 -0
  70. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/engine/history.manager.js +64 -0
  71. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/engine/lock.manager.d.ts +21 -0
  72. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/engine/lock.manager.js +89 -0
  73. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/engine/logger.service.d.ts +16 -0
  74. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/engine/logger.service.js +49 -0
  75. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/engine/memory.engine.d.ts +30 -0
  76. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/engine/memory.engine.js +200 -0
  77. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/filesystem/filesystem.service.d.ts +29 -0
  78. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/filesystem/filesystem.service.js +87 -0
  79. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/git/git.service.d.ts +42 -0
  80. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/git/git.service.js +192 -0
  81. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/index/SQLiteVectorStore.d.ts +19 -0
  82. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/index/SQLiteVectorStore.js +189 -0
  83. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/index/VectorIndexer.d.ts +20 -0
  84. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/index/VectorIndexer.js +169 -0
  85. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/index/VectorStore.d.ts +26 -0
  86. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/index/VectorStore.js +2 -0
  87. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/index.d.ts +29 -0
  88. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/index.js +29 -0
  89. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/memory/memory.service.d.ts +22 -0
  90. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/memory/memory.service.js +338 -0
  91. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/retrieval/ContextBuilder.d.ts +4 -0
  92. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/retrieval/ContextBuilder.js +107 -0
  93. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/retrieval/RankingEngine.d.ts +13 -0
  94. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/retrieval/RankingEngine.js +124 -0
  95. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/retrieval/SemanticRetriever.d.ts +17 -0
  96. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/dist/retrieval/SemanticRetriever.js +48 -0
  97. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/core/package.json +23 -0
  98. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/shared/dist/constants.d.ts +14 -0
  99. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/shared/dist/constants.js +24 -0
  100. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/shared/dist/errors.d.ts +38 -0
  101. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/shared/dist/errors.js +64 -0
  102. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/shared/dist/index.d.ts +3 -0
  103. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/shared/dist/index.js +4 -0
  104. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/shared/dist/types.d.ts +97 -0
  105. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/shared/dist/types.js +2 -0
  106. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@devbrain/shared/package.json +14 -0
  107. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/CHANGELOG.md +12 -0
  108. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/LICENSE +20 -0
  109. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/dist/index.d.ts +1 -0
  110. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/dist/index.js +7 -0
  111. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/dist/src/index.d.ts +19 -0
  112. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/dist/src/index.js +55 -0
  113. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/dist/test/__mocks__/fs.d.ts +7 -0
  114. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/dist/test/__mocks__/fs.js +26 -0
  115. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/dist/test/exists.spec.d.ts +1 -0
  116. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/dist/test/exists.spec.js +77 -0
  117. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/package.json +42 -0
  118. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/file-exists/readme.md +41 -0
  119. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/promise-deferred/LICENSE +21 -0
  120. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/promise-deferred/dist/index.d.ts +49 -0
  121. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/promise-deferred/dist/index.js +59 -0
  122. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@kwsites/promise-deferred/package.json +43 -0
  123. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodable/entities/README.md +41 -0
  124. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodable/entities/package.json +57 -0
  125. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodable/entities/src/EntityDecoder.js +644 -0
  126. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodable/entities/src/EntityEncoder.js +194 -0
  127. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodable/entities/src/entities.js +1159 -0
  128. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodable/entities/src/entityTries.js +49 -0
  129. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodable/entities/src/index.d.ts +341 -0
  130. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodable/entities/src/index.js +29 -0
  131. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/LICENSE +21 -0
  132. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/README.md +171 -0
  133. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts +20 -0
  134. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/adapters/fs.js +19 -0
  135. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/constants.d.ts +4 -0
  136. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/constants.js +17 -0
  137. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/index.d.ts +12 -0
  138. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/index.js +26 -0
  139. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/providers/async.d.ts +7 -0
  140. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/providers/async.js +104 -0
  141. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/providers/common.d.ts +1 -0
  142. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/providers/common.js +13 -0
  143. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/providers/sync.d.ts +5 -0
  144. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/providers/sync.js +54 -0
  145. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/settings.d.ts +20 -0
  146. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/settings.js +24 -0
  147. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/types/index.d.ts +20 -0
  148. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/types/index.js +2 -0
  149. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/utils/fs.d.ts +2 -0
  150. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/utils/fs.js +19 -0
  151. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/utils/index.d.ts +2 -0
  152. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/out/utils/index.js +5 -0
  153. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.scandir/package.json +44 -0
  154. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/LICENSE +21 -0
  155. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/README.md +126 -0
  156. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts +13 -0
  157. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/adapters/fs.js +17 -0
  158. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/index.d.ts +12 -0
  159. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/index.js +26 -0
  160. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/providers/async.d.ts +4 -0
  161. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/providers/async.js +36 -0
  162. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/providers/sync.d.ts +3 -0
  163. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/providers/sync.js +23 -0
  164. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/settings.d.ts +16 -0
  165. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/settings.js +16 -0
  166. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/types/index.d.ts +4 -0
  167. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/out/types/index.js +2 -0
  168. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.stat/package.json +37 -0
  169. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/LICENSE +21 -0
  170. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/README.md +215 -0
  171. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/index.d.ts +14 -0
  172. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/index.js +34 -0
  173. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/providers/async.d.ts +12 -0
  174. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/providers/async.js +30 -0
  175. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/providers/index.d.ts +4 -0
  176. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/providers/index.js +9 -0
  177. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/providers/stream.d.ts +12 -0
  178. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/providers/stream.js +34 -0
  179. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/providers/sync.d.ts +10 -0
  180. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/providers/sync.js +14 -0
  181. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/readers/async.d.ts +30 -0
  182. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/readers/async.js +97 -0
  183. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/readers/common.d.ts +7 -0
  184. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/readers/common.js +31 -0
  185. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/readers/reader.d.ts +6 -0
  186. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/readers/reader.js +11 -0
  187. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/readers/sync.d.ts +15 -0
  188. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/readers/sync.js +59 -0
  189. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/settings.d.ts +30 -0
  190. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/settings.js +26 -0
  191. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/types/index.d.ts +8 -0
  192. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/out/types/index.js +2 -0
  193. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@nodelib/fs.walk/package.json +44 -0
  194. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/args-pathspec/dist/index.cjs +2 -0
  195. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/args-pathspec/dist/index.d.ts +1 -0
  196. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/args-pathspec/dist/index.mjs +17 -0
  197. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/args-pathspec/dist/src/pathspec.d.ts +8 -0
  198. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/args-pathspec/package.json +32 -0
  199. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/index.cjs +2 -0
  200. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/index.d.ts +5 -0
  201. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/index.mjs +463 -0
  202. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/args/parse-argv.d.ts +6 -0
  203. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/args/parse-argv.types.d.ts +59 -0
  204. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/config/analyse-config.d.ts +3 -0
  205. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/config/config-operands.d.ts +4 -0
  206. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/config/config.types.d.ts +6 -0
  207. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/config/detect-config-action.d.ts +13 -0
  208. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/env/parse-env.d.ts +6 -0
  209. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/flags/flags.helpers.d.ts +9 -0
  210. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/flags/parse-global-flags.d.ts +6 -0
  211. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/flags/parse-task-flags.d.ts +8 -0
  212. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/tokens/flag-specs.d.ts +9 -0
  213. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/tokens/token-expander.d.ts +7 -0
  214. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/vulnerabilities/detect-vulnerable-config-writes.d.ts +3 -0
  215. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/vulnerabilities/detect-vulnerable-flags.d.ts +3 -0
  216. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/vulnerabilities/vulnerability-analysis.d.ts +4 -0
  217. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/vulnerabilities/vulnerability-check.d.ts +5 -0
  218. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/dist/src/vulnerabilities/vulnerability.types.d.ts +104 -0
  219. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/@simple-git/argv-parser/package.json +36 -0
  220. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ansi-regex/index.d.ts +33 -0
  221. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ansi-regex/index.js +14 -0
  222. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ansi-regex/license +9 -0
  223. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ansi-regex/package.json +61 -0
  224. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ansi-regex/readme.md +66 -0
  225. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/anynum/LICENSE +21 -0
  226. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/anynum/README.md +142 -0
  227. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/anynum/anynum.js +135 -0
  228. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/anynum/digitTable.js +116 -0
  229. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/anynum/package.json +42 -0
  230. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/braces/LICENSE +21 -0
  231. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/braces/README.md +586 -0
  232. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/braces/index.js +170 -0
  233. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/braces/lib/compile.js +60 -0
  234. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/braces/lib/constants.js +57 -0
  235. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/braces/lib/expand.js +113 -0
  236. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/braces/lib/parse.js +331 -0
  237. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/braces/lib/stringify.js +32 -0
  238. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/braces/lib/utils.js +122 -0
  239. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/braces/package.json +77 -0
  240. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/license +9 -0
  241. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/package.json +83 -0
  242. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/readme.md +297 -0
  243. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/source/index.d.ts +325 -0
  244. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/source/index.js +225 -0
  245. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/source/utilities.js +33 -0
  246. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +236 -0
  247. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/source/vendor/ansi-styles/index.js +223 -0
  248. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/source/vendor/supports-color/browser.d.ts +1 -0
  249. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/source/vendor/supports-color/browser.js +34 -0
  250. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/source/vendor/supports-color/index.d.ts +55 -0
  251. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/chalk/source/vendor/supports-color/index.js +190 -0
  252. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-cursor/index.d.ts +47 -0
  253. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-cursor/index.js +39 -0
  254. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-cursor/license +9 -0
  255. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-cursor/package.json +56 -0
  256. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-cursor/readme.md +39 -0
  257. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-spinners/index.d.ts +128 -0
  258. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-spinners/index.js +15 -0
  259. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-spinners/license +9 -0
  260. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-spinners/package.json +50 -0
  261. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-spinners/readme.md +54 -0
  262. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/cli-spinners/spinners.json +1622 -0
  263. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/LICENSE +22 -0
  264. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/Readme.md +1157 -0
  265. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/esm.mjs +16 -0
  266. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/index.js +24 -0
  267. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/lib/argument.js +149 -0
  268. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/lib/command.js +2509 -0
  269. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/lib/error.js +39 -0
  270. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/lib/help.js +520 -0
  271. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/lib/option.js +330 -0
  272. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/lib/suggestSimilar.js +101 -0
  273. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/package-support.json +16 -0
  274. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/package.json +84 -0
  275. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/typings/esm.d.mts +3 -0
  276. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/commander/typings/index.d.ts +969 -0
  277. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/debug/LICENSE +20 -0
  278. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/debug/README.md +481 -0
  279. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/debug/package.json +64 -0
  280. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/debug/src/browser.js +272 -0
  281. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/debug/src/common.js +292 -0
  282. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/debug/src/index.js +10 -0
  283. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/debug/src/node.js +263 -0
  284. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  285. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/emoji-regex/README.md +107 -0
  286. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/emoji-regex/index.d.ts +3 -0
  287. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/emoji-regex/index.js +4 -0
  288. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/emoji-regex/index.mjs +4 -0
  289. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/emoji-regex/package.json +45 -0
  290. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/LICENSE +21 -0
  291. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/README.md +830 -0
  292. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/index.d.ts +40 -0
  293. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/index.js +102 -0
  294. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/managers/tasks.d.ts +22 -0
  295. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/managers/tasks.js +110 -0
  296. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/async.d.ts +9 -0
  297. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/async.js +23 -0
  298. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/filters/deep.d.ts +16 -0
  299. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/filters/deep.js +62 -0
  300. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/filters/entry.d.ts +17 -0
  301. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/filters/entry.js +85 -0
  302. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/filters/error.d.ts +8 -0
  303. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/filters/error.js +15 -0
  304. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/matchers/matcher.d.ts +33 -0
  305. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/matchers/matcher.js +45 -0
  306. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/matchers/partial.d.ts +4 -0
  307. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/matchers/partial.js +38 -0
  308. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/provider.d.ts +19 -0
  309. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/provider.js +48 -0
  310. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/stream.d.ts +11 -0
  311. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/stream.js +31 -0
  312. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/sync.d.ts +9 -0
  313. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/sync.js +23 -0
  314. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/transformers/entry.d.ts +8 -0
  315. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/providers/transformers/entry.js +26 -0
  316. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/readers/async.d.ts +10 -0
  317. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/readers/async.js +35 -0
  318. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/readers/reader.d.ts +15 -0
  319. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/readers/reader.js +33 -0
  320. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/readers/stream.d.ts +14 -0
  321. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/readers/stream.js +55 -0
  322. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/readers/sync.d.ts +12 -0
  323. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/readers/sync.js +43 -0
  324. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/settings.d.ts +164 -0
  325. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/settings.js +59 -0
  326. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/types/index.d.ts +31 -0
  327. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/types/index.js +2 -0
  328. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/array.d.ts +2 -0
  329. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/array.js +22 -0
  330. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/errno.d.ts +2 -0
  331. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/errno.js +7 -0
  332. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/fs.d.ts +4 -0
  333. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/fs.js +19 -0
  334. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/index.d.ts +8 -0
  335. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/index.js +17 -0
  336. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/path.d.ts +13 -0
  337. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/path.js +68 -0
  338. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/pattern.d.ts +49 -0
  339. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/pattern.js +206 -0
  340. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/stream.d.ts +4 -0
  341. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/stream.js +17 -0
  342. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/string.d.ts +2 -0
  343. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/out/utils/string.js +11 -0
  344. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-glob/package.json +81 -0
  345. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/CHANGELOG.md +40 -0
  346. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/LICENSE +21 -0
  347. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/README.md +74 -0
  348. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/lib/fxb.cjs +1 -0
  349. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/lib/fxb.d.cts +270 -0
  350. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/lib/fxb.min.js +2 -0
  351. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/package.json +81 -0
  352. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/src/fxb.d.ts +270 -0
  353. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/src/fxb.js +599 -0
  354. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/src/ignoreAttributes.js +18 -0
  355. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/src/orderedJs2Xml.js +359 -0
  356. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/src/prettifyJs2Xml.js +0 -0
  357. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-builder/src/util.js +16 -0
  358. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/CHANGELOG.md +852 -0
  359. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/LICENSE +21 -0
  360. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/README.md +200 -0
  361. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/lib/fxbuilder.min.js +2 -0
  362. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/lib/fxp.cjs +1 -0
  363. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/lib/fxp.d.cts +772 -0
  364. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/lib/fxp.min.js +2 -0
  365. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/lib/fxparser.min.js +2 -0
  366. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/lib/fxvalidator.min.js +2 -0
  367. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/package.json +93 -0
  368. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/cli/cli.js +97 -0
  369. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/cli/man.js +17 -0
  370. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/cli/read.js +43 -0
  371. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/fxp.d.ts +752 -0
  372. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/fxp.js +14 -0
  373. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/ignoreAttributes.js +18 -0
  374. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/util.js +61 -0
  375. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/CharsSymbol.js +16 -0
  376. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/EntitiesParser.js +106 -0
  377. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/OptionsBuilder.js +61 -0
  378. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/OutputBuilders/BaseOutputBuilder.js +69 -0
  379. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/OutputBuilders/JsArrBuilder.js +103 -0
  380. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/OutputBuilders/JsMinArrBuilder.js +100 -0
  381. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/OutputBuilders/JsObjBuilder.js +154 -0
  382. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/OutputBuilders/ParserOptionsBuilder.js +94 -0
  383. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/Report.js +0 -0
  384. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/TagPath.js +81 -0
  385. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/TagPathMatcher.js +13 -0
  386. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/XMLParser.js +83 -0
  387. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/Xml2JsParser.js +235 -0
  388. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/XmlPartReader.js +210 -0
  389. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/XmlSpecialTagsReader.js +111 -0
  390. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/inputSource/BufferSource.js +116 -0
  391. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/inputSource/StringSource.js +121 -0
  392. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/valueParsers/EntitiesParser.js +105 -0
  393. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/valueParsers/booleanParser.js +22 -0
  394. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/valueParsers/booleanParserExt.js +19 -0
  395. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/valueParsers/currency.js +38 -0
  396. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/valueParsers/join.js +13 -0
  397. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/valueParsers/number.js +14 -0
  398. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/v6/valueParsers/trim.js +6 -0
  399. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/validator.js +425 -0
  400. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js +6 -0
  401. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js +411 -0
  402. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js +164 -0
  403. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js +846 -0
  404. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js +71 -0
  405. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/xmlparser/node2json.js +177 -0
  406. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fast-xml-parser/src/xmlparser/xmlNode.js +40 -0
  407. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/LICENSE +13 -0
  408. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/README.md +310 -0
  409. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/SECURITY.md +15 -0
  410. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/bench.js +66 -0
  411. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/eslint.config.js +11 -0
  412. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/example.js +14 -0
  413. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/example.mjs +9 -0
  414. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/index.d.ts +59 -0
  415. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/package.json +49 -0
  416. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/queue.js +346 -0
  417. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/test/example.ts +83 -0
  418. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/test/promise.js +325 -0
  419. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/test/test.js +733 -0
  420. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fastq/test/tsconfig.json +11 -0
  421. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fill-range/LICENSE +21 -0
  422. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fill-range/README.md +237 -0
  423. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fill-range/index.js +248 -0
  424. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/fill-range/package.json +74 -0
  425. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/get-east-asian-width/index.d.ts +60 -0
  426. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/get-east-asian-width/index.js +30 -0
  427. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/get-east-asian-width/license +9 -0
  428. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/get-east-asian-width/lookup-data.js +21 -0
  429. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/get-east-asian-width/lookup.js +138 -0
  430. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/get-east-asian-width/package.json +71 -0
  431. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/get-east-asian-width/readme.md +65 -0
  432. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/get-east-asian-width/utilities.js +24 -0
  433. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/glob-parent/CHANGELOG.md +110 -0
  434. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/glob-parent/LICENSE +15 -0
  435. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/glob-parent/README.md +137 -0
  436. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/glob-parent/index.js +42 -0
  437. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/glob-parent/package.json +48 -0
  438. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-extglob/LICENSE +21 -0
  439. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-extglob/README.md +107 -0
  440. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-extglob/index.js +20 -0
  441. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-extglob/package.json +69 -0
  442. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-glob/LICENSE +21 -0
  443. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-glob/README.md +206 -0
  444. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-glob/index.js +150 -0
  445. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-glob/package.json +81 -0
  446. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-interactive/index.d.ts +25 -0
  447. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-interactive/index.js +7 -0
  448. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-interactive/license +9 -0
  449. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-interactive/package.json +41 -0
  450. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-interactive/readme.md +52 -0
  451. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-number/LICENSE +21 -0
  452. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-number/README.md +187 -0
  453. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-number/index.js +18 -0
  454. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-number/package.json +82 -0
  455. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unicode-supported/index.d.ts +12 -0
  456. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unicode-supported/index.js +21 -0
  457. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unicode-supported/license +9 -0
  458. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unicode-supported/package.json +47 -0
  459. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unicode-supported/readme.md +35 -0
  460. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/LICENSE +21 -0
  461. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/README.md +528 -0
  462. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/package.json +48 -0
  463. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/contexts/html.js +102 -0
  464. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/contexts/log.js +98 -0
  465. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/contexts/nosql.js +114 -0
  466. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/contexts/redos.js +60 -0
  467. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/contexts/shell.js +105 -0
  468. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/contexts/sql-strict.js +47 -0
  469. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/contexts/sql.js +95 -0
  470. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/contexts/svg.js +81 -0
  471. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/contexts/xml.js +78 -0
  472. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/index.cjs +27 -0
  473. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/index.d.ts +28 -0
  474. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/index.js +204 -0
  475. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/is-unsafe/src/registry.js +45 -0
  476. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/browser.js +8 -0
  477. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/index.d.ts +22 -0
  478. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/index.js +20 -0
  479. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/license +9 -0
  480. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/node_modules/is-unicode-supported/index.d.ts +12 -0
  481. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/node_modules/is-unicode-supported/index.js +17 -0
  482. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/node_modules/is-unicode-supported/license +9 -0
  483. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/node_modules/is-unicode-supported/package.json +43 -0
  484. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/node_modules/is-unicode-supported/readme.md +35 -0
  485. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/package.json +57 -0
  486. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/log-symbols/readme.md +39 -0
  487. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/merge2/LICENSE +21 -0
  488. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/merge2/README.md +144 -0
  489. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/merge2/index.js +144 -0
  490. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/merge2/package.json +43 -0
  491. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/micromatch/LICENSE +21 -0
  492. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/micromatch/README.md +1024 -0
  493. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/micromatch/index.js +474 -0
  494. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/micromatch/package.json +119 -0
  495. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/mimic-function/index.d.ts +52 -0
  496. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/mimic-function/index.js +72 -0
  497. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/mimic-function/license +9 -0
  498. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/mimic-function/package.json +49 -0
  499. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/mimic-function/readme.md +80 -0
  500. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ms/index.js +162 -0
  501. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ms/license.md +21 -0
  502. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ms/package.json +38 -0
  503. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ms/readme.md +59 -0
  504. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/onetime/index.d.ts +59 -0
  505. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/onetime/index.js +41 -0
  506. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/onetime/license +9 -0
  507. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/onetime/package.json +49 -0
  508. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/onetime/readme.md +88 -0
  509. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ora/index.d.ts +332 -0
  510. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ora/index.js +424 -0
  511. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ora/license +9 -0
  512. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ora/package.json +64 -0
  513. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/ora/readme.md +329 -0
  514. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/LICENSE +21 -0
  515. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/README.md +947 -0
  516. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/lib/pem.cjs +1 -0
  517. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/lib/pem.d.cts +725 -0
  518. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/lib/pem.min.js +2 -0
  519. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/package.json +79 -0
  520. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/src/Expression.js +232 -0
  521. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/src/ExpressionSet.js +225 -0
  522. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/src/Matcher.js +660 -0
  523. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/src/index.d.ts +589 -0
  524. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/path-expression-matcher/src/index.js +30 -0
  525. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/picomatch/LICENSE +21 -0
  526. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/picomatch/README.md +716 -0
  527. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/picomatch/index.js +3 -0
  528. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/picomatch/lib/constants.js +184 -0
  529. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/picomatch/lib/parse.js +1392 -0
  530. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/picomatch/lib/picomatch.js +342 -0
  531. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/picomatch/lib/scan.js +391 -0
  532. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/picomatch/lib/utils.js +64 -0
  533. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/picomatch/package.json +81 -0
  534. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/queue-microtask/LICENSE +20 -0
  535. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/queue-microtask/README.md +90 -0
  536. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/queue-microtask/index.d.ts +2 -0
  537. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/queue-microtask/index.js +9 -0
  538. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/queue-microtask/package.json +55 -0
  539. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/restore-cursor/index.d.ts +15 -0
  540. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/restore-cursor/index.js +15 -0
  541. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/restore-cursor/license +9 -0
  542. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/restore-cursor/package.json +57 -0
  543. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/restore-cursor/readme.md +21 -0
  544. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/.github/dependabot.yml +7 -0
  545. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/.github/workflows/ci.yml +96 -0
  546. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/LICENSE +22 -0
  547. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/README.md +139 -0
  548. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/SECURITY.md +15 -0
  549. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/benchmarks/createNoCodeFunction.js +30 -0
  550. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/benchmarks/fib.js +13 -0
  551. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/benchmarks/reuseNoCodeFunction.js +38 -0
  552. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/eslint.config.js +14 -0
  553. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/package.json +50 -0
  554. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/reusify.d.ts +14 -0
  555. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/reusify.js +33 -0
  556. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/test.js +66 -0
  557. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/reusify/tsconfig.json +11 -0
  558. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/run-parallel/LICENSE +20 -0
  559. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/run-parallel/README.md +85 -0
  560. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/run-parallel/index.js +51 -0
  561. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/run-parallel/package.json +58 -0
  562. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/LICENSE.txt +16 -0
  563. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/README.md +74 -0
  564. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/cjs/browser.d.ts +12 -0
  565. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/cjs/browser.js +10 -0
  566. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/cjs/index.d.ts +48 -0
  567. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/cjs/index.js +279 -0
  568. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/cjs/package.json +3 -0
  569. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/cjs/signals.d.ts +29 -0
  570. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/cjs/signals.js +42 -0
  571. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/mjs/browser.d.ts +12 -0
  572. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/mjs/browser.js +4 -0
  573. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/mjs/index.d.ts +48 -0
  574. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/mjs/index.js +275 -0
  575. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/mjs/package.json +3 -0
  576. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/mjs/signals.d.ts +29 -0
  577. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/dist/mjs/signals.js +39 -0
  578. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/signal-exit/package.json +106 -0
  579. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/cjs/index.js +4898 -0
  580. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/esm/index.js +4745 -0
  581. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/esm/package.json +3 -0
  582. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/api.d.ts +13 -0
  583. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/args/log-format.d.ts +9 -0
  584. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/errors/git-construct-error.d.ts +15 -0
  585. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/errors/git-error.d.ts +30 -0
  586. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/errors/git-plugin-error.d.ts +7 -0
  587. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/errors/git-response-error.d.ts +32 -0
  588. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/errors/task-configuration-error.d.ts +12 -0
  589. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/git-factory.d.ts +15 -0
  590. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/git-logger.d.ts +21 -0
  591. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-branch-delete.d.ts +5 -0
  592. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-branch.d.ts +2 -0
  593. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-commit.d.ts +2 -0
  594. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-diff-summary.d.ts +3 -0
  595. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-fetch.d.ts +2 -0
  596. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-list-log-summary.d.ts +6 -0
  597. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-merge.d.ts +11 -0
  598. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-move.d.ts +2 -0
  599. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-pull.d.ts +6 -0
  600. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-push.d.ts +4 -0
  601. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-remote-messages.d.ts +5 -0
  602. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/parsers/parse-remote-objects.d.ts +3 -0
  603. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/abort-plugin.d.ts +3 -0
  604. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/block-unsafe-operations-plugin.d.ts +3 -0
  605. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/command-config-prefixing-plugin.d.ts +2 -0
  606. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/completion-detection.plugin.d.ts +3 -0
  607. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/custom-binary.plugin.d.ts +3 -0
  608. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/error-detection.plugin.d.ts +7 -0
  609. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/index.d.ts +11 -0
  610. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/plugin-store.d.ts +11 -0
  611. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/progress-monitor-plugin.d.ts +3 -0
  612. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/simple-git-plugin.d.ts +48 -0
  613. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/spawn-options-plugin.d.ts +3 -0
  614. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/suffix-paths.plugin.d.ts +2 -0
  615. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/plugins/timout-plugin.d.ts +3 -0
  616. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/BranchDeleteSummary.d.ts +12 -0
  617. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/BranchSummary.d.ts +14 -0
  618. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/CheckIgnore.d.ts +4 -0
  619. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/CleanSummary.d.ts +9 -0
  620. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/ConfigList.d.ts +13 -0
  621. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/DiffSummary.d.ts +10 -0
  622. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/FileStatusSummary.d.ts +9 -0
  623. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/GetRemoteSummary.d.ts +11 -0
  624. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/InitSummary.d.ts +9 -0
  625. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/MergeSummary.d.ts +16 -0
  626. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/PullSummary.d.ts +25 -0
  627. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/StatusSummary.d.ts +19 -0
  628. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/responses/TagList.d.ts +7 -0
  629. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/runners/git-executor-chain.d.ts +25 -0
  630. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/runners/git-executor.d.ts +14 -0
  631. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/runners/promise-wrapped.d.ts +2 -0
  632. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/runners/scheduler.d.ts +11 -0
  633. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/runners/tasks-pending-queue.d.ts +23 -0
  634. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/simple-git-api.d.ts +20 -0
  635. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/task-callback.d.ts +2 -0
  636. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/apply-patch.d.ts +3 -0
  637. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/branch.d.ts +7 -0
  638. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/change-working-directory.d.ts +2 -0
  639. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/check-ignore.d.ts +2 -0
  640. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/check-is-repo.d.ts +9 -0
  641. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/checkout.d.ts +2 -0
  642. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/clean.d.ts +25 -0
  643. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/clone.d.ts +9 -0
  644. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/commit.d.ts +4 -0
  645. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/config.d.ts +8 -0
  646. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/count-objects.d.ts +12 -0
  647. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/diff-name-status.d.ts +12 -0
  648. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/diff.d.ts +5 -0
  649. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/fetch.d.ts +4 -0
  650. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/first-commit.d.ts +2 -0
  651. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/grep.d.ts +12 -0
  652. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/hash-object.d.ts +5 -0
  653. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/init.d.ts +3 -0
  654. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/log.d.ts +32 -0
  655. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/merge.d.ts +4 -0
  656. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/move.d.ts +3 -0
  657. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/pull.d.ts +3 -0
  658. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/push.d.ts +9 -0
  659. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/remote.d.ts +8 -0
  660. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/reset.d.ts +11 -0
  661. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/show.d.ts +2 -0
  662. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/stash-list.d.ts +4 -0
  663. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/status.d.ts +3 -0
  664. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/sub-module.d.ts +5 -0
  665. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/tag.d.ts +18 -0
  666. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/task.d.ts +14 -0
  667. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/tasks/version.d.ts +9 -0
  668. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/types/handlers.d.ts +21 -0
  669. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/types/index.d.ts +136 -0
  670. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/types/tasks.d.ts +19 -0
  671. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/utils/argument-filters.d.ts +14 -0
  672. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/utils/exit-codes.d.ts +10 -0
  673. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/utils/git-output-streams.d.ts +7 -0
  674. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/utils/index.d.ts +8 -0
  675. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/utils/line-parser.d.ts +15 -0
  676. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/utils/simple-git-options.d.ts +2 -0
  677. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/utils/task-options.d.ts +13 -0
  678. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/utils/task-parser.d.ts +5 -0
  679. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/src/lib/utils/util.d.ts +47 -0
  680. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/typings/errors.d.ts +5 -0
  681. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/typings/index.d.ts +14 -0
  682. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/typings/response.d.ts +556 -0
  683. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/typings/simple-git.d.ts +1033 -0
  684. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/dist/typings/types.d.ts +22 -0
  685. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/package.json +51 -0
  686. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/promise.js +17 -0
  687. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/simple-git/readme.md +851 -0
  688. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/stdin-discarder/index.d.ts +13 -0
  689. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/stdin-discarder/index.js +59 -0
  690. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/stdin-discarder/license +9 -0
  691. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/stdin-discarder/package.json +42 -0
  692. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/stdin-discarder/readme.md +37 -0
  693. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/string-width/index.d.ts +39 -0
  694. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/string-width/index.js +82 -0
  695. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/string-width/license +9 -0
  696. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/string-width/package.json +64 -0
  697. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/string-width/readme.md +66 -0
  698. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/strip-ansi/index.d.ts +15 -0
  699. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/strip-ansi/index.js +19 -0
  700. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/strip-ansi/license +9 -0
  701. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/strip-ansi/package.json +59 -0
  702. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/strip-ansi/readme.md +37 -0
  703. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/strnum/CHANGELOG.md +51 -0
  704. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/strnum/LICENSE +21 -0
  705. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/strnum/README.md +113 -0
  706. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/strnum/package.json +36 -0
  707. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/strnum/strnum.js +171 -0
  708. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/to-regex-range/LICENSE +21 -0
  709. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/to-regex-range/README.md +305 -0
  710. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/to-regex-range/index.js +288 -0
  711. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/to-regex-range/package.json +88 -0
  712. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/xml-naming/README.md +189 -0
  713. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/xml-naming/package.json +54 -0
  714. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/xml-naming/src/index.d.ts +74 -0
  715. package/dist/temp-prefix/node_modules/devbrain-cli/node_modules/xml-naming/src/index.js +270 -0
  716. package/dist/temp-prefix/node_modules/devbrain-cli/package.json +66 -0
  717. package/node_modules/@devbrain/core/dist/embeddings/EmbeddingProvider.d.ts +4 -0
  718. package/node_modules/@devbrain/core/dist/embeddings/EmbeddingProvider.js +2 -0
  719. package/node_modules/@devbrain/core/dist/embeddings/TransformersProvider.d.ts +9 -0
  720. package/node_modules/@devbrain/core/dist/embeddings/TransformersProvider.js +70 -0
  721. package/node_modules/@devbrain/core/dist/index/SQLiteVectorStore.d.ts +19 -0
  722. package/node_modules/@devbrain/core/dist/index/SQLiteVectorStore.js +189 -0
  723. package/node_modules/@devbrain/core/dist/index/VectorIndexer.d.ts +20 -0
  724. package/node_modules/@devbrain/core/dist/index/VectorIndexer.js +169 -0
  725. package/node_modules/@devbrain/core/dist/index/VectorStore.d.ts +26 -0
  726. package/node_modules/@devbrain/core/dist/index/VectorStore.js +2 -0
  727. package/node_modules/@devbrain/core/dist/index.d.ts +8 -0
  728. package/node_modules/@devbrain/core/dist/index.js +6 -0
  729. package/node_modules/@devbrain/core/dist/retrieval/ContextBuilder.d.ts +4 -0
  730. package/node_modules/@devbrain/core/dist/retrieval/ContextBuilder.js +107 -0
  731. package/node_modules/@devbrain/core/dist/retrieval/RankingEngine.d.ts +13 -0
  732. package/node_modules/@devbrain/core/dist/retrieval/RankingEngine.js +124 -0
  733. package/node_modules/@devbrain/core/dist/retrieval/SemanticRetriever.d.ts +17 -0
  734. package/node_modules/@devbrain/core/dist/retrieval/SemanticRetriever.js +48 -0
  735. package/node_modules/@devbrain/core/package.json +23 -22
  736. package/node_modules/@devbrain/shared/dist/constants.d.ts +1 -1
  737. package/node_modules/@devbrain/shared/dist/constants.js +1 -1
  738. package/node_modules/@devbrain/shared/dist/types.d.ts +11 -0
  739. package/node_modules/@devbrain/shared/package.json +14 -14
  740. package/package.json +66 -65
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2017 Amit Kumar Gupta
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,200 @@
1
+ # [fast-xml-parser](https://www.npmjs.com/package/fast-xml-parser)
2
+
3
+ [![NPM total downloads](https://img.shields.io/npm/dt/fast-xml-parser.svg)](https://npm.im/fast-xml-parser)
4
+
5
+ Validate XML, Parse XML to JS Object, or Build XML from JS Object without C/C++ based libraries and no callback.
6
+
7
+ <img align="right" src="static/img/fxp_logo.png" width="180px" alt="FXP logo"/>
8
+
9
+ * Validate XML data syntactically. Use [detailed-xml-validator](https://github.com/NaturalIntelligence/detailed-xml-validator/) to verify business rules.
10
+ * Parse XML to JS Objects and vice versa
11
+ * Common JS, ESM, and browser compatible
12
+ * Faster than any other pure JS implementation.
13
+
14
+ It can handle big files (tested up to 100mb). XML Entities, HTML entities, and DOCTYPE entites are supported. Unpaired tags (Eg `<br>` in HTML), stop nodes (Eg `<script>` in HTML) are supported. It can also preserve Order of tags in JS object
15
+
16
+ > [Flexible-XML-Parser](https://github.com/nodable/flexible-xml-parser) is 2 times faster than this library and allows to deal with incomplete XML/HTML. Output is highly customizable. Build whatever you want. So if you're fine with some extra configuration then try it out.
17
+
18
+ ---
19
+ # Your Support, Our Motivation
20
+
21
+ Please join [Discord community](https://discord.gg/X4Qp9u6Vz) for pre release announcements and discussions. This will prevent us to release breaking changes.
22
+
23
+
24
+
25
+ <!-- ## Try out our New Thoughts
26
+
27
+ - WishIn - You need it if negative thoughts take over all the time <br>
28
+ <a href="https://play.google.com/store/apps/details?id=com.solothought.wishin"> <img src="https://solothought.com/products/assets/images/wishin/YouTubeThumbnail.png" width="500px"/> </a>
29
+ - **Flowgger**: 90% less logs size and 90% less debugging time<br>
30
+ <a href="https://github.com/solothought/flowgger"> <img src="static/img/flowgger_h.webp" alt="Flowgger Logging Framework" width="300px"/></a>
31
+ - [Text2Chart](https://solothought.com/text2chart/flow): interactive flow chart out of simple text. -->
32
+
33
+ ## Financial Support
34
+
35
+ Sponsor this project
36
+
37
+ <a href="https://github.com/sponsors/NaturalIntelligence">
38
+ <img src="https://raw.githubusercontent.com/NaturalIntelligence/ThankYouBackers/main/github_sponsor.png" width="180" />
39
+ </a>
40
+ <a href="https://opencollective.com/fast-xml-parser/donate" target="_blank">
41
+ <img src="https://opencollective.com/fast-xml-parser/donate/button@2x.png?color=blue" width=180 />
42
+ </a>
43
+ <br>
44
+ <br>
45
+ <br>
46
+
47
+ > This is a donation. No goods or services are expected in return. Any requests for refunds for those purposes will be rejected.
48
+
49
+ ## Users
50
+
51
+ <a href="https://github.com/renovatebot/renovate" title="renovate" ><img src="https://avatars1.githubusercontent.com/u/38656520" width="60px" ></a>
52
+ <a href="https://vmware.com/" title="vmware" > <img src="https://avatars0.githubusercontent.com/u/473334" width="60px" ></a>
53
+ <a href="https://opensource.microsoft.com/" title="microsoft" > <img src="https://avatars0.githubusercontent.com/u/6154722" width="60px" ></a>
54
+ <a href="http://ibm.github.io/" title="IBM" > <img src="https://avatars2.githubusercontent.com/u/1459110" width="60px" ></a>
55
+ <a href="http://www.smartbear.com" title="SmartBear Software" > <img src="https://avatars2.githubusercontent.com/u/1644671" width="60px" ></a>
56
+ <a href="http://nasa.github.io/" title="NASA" > <img src="https://avatars0.githubusercontent.com/u/848102" width="60px" ></a>
57
+ <a href="https://github.com/prettier" title="Prettier" > <img src="https://avatars0.githubusercontent.com/u/25822731" width="60px" ></a>
58
+ <a href="http://brain.js.org/" title="brain.js" > <img src="https://avatars2.githubusercontent.com/u/23732838" width="60px" ></a>
59
+ <a href="https://github.com/aws" title="AWS SDK" > <img src="https://avatars.githubusercontent.com/u/2232217" width="60px" ></a>
60
+ <a href="http://www.fda.gov/" title="Food and Drug Administration " > <img src="https://avatars2.githubusercontent.com/u/6471964" width="60px" ></a>
61
+ <a href="http://www.magento.com/" title="Magento" > <img src="https://avatars2.githubusercontent.com/u/168457" width="60px" ></a>
62
+ <a href="https://github.com/SAP" title="SAP" > <img src="https://user-images.githubusercontent.com/7692328/204835214-d9d25b58-e3df-408d-87a3-c7d36b578ee4.png" width="60px" ></a>
63
+ <a href="https://github.com/postmanlabs" title="postman" > <img src="https://user-images.githubusercontent.com/7692328/204835529-e9e290ad-696a-49ad-9d34-08e955704715.png" width="60px" ></a>
64
+ <a href="https://github.com/react-native-community" title="React Native Community" > <img src="https://avatars.githubusercontent.com/u/20269980?v=4" width="60px" ></a>
65
+ <a href="https://github.com/googleapis" title="Google APIs" > <img src="https://avatars.githubusercontent.com/u/16785467?v=4" width="60px" ></a>
66
+ <a href="https://github.com/langchain-ai" title="Langchain AI" > <img src="https://avatars.githubusercontent.com/u/126733545?v=4" width="60px" ></a>
67
+ <a href="https://github.com/withastro" title="Astro websie builder" > <img src="https://avatars.githubusercontent.com/u/44914786?v=4" width="60px" ></a>
68
+ <a href="https://github.com/baidu" title="Baidu" > <img src="https://avatars.githubusercontent.com/u/13245940?v=4" width="60px" ></a>
69
+ [more](./USERs.md)
70
+
71
+ <small>The list of users are mostly published by Github or communicated directly. Feel free to contact if you find any information wrong.</small>
72
+
73
+ ---
74
+
75
+ # More about this library
76
+
77
+ ## How to use
78
+
79
+ To use as package dependency
80
+ `$ npm install fast-xml-parser`
81
+ or
82
+ `$ yarn add fast-xml-parser`
83
+
84
+ To use as system command
85
+ `$ npm install fast-xml-parser -g`
86
+
87
+ To use it on a **webpage** include it from a [CDN](https://cdnjs.com/libraries/fast-xml-parser)
88
+
89
+ **Example**
90
+
91
+ As CLI command
92
+ ```bash
93
+ $ fxparser some.xml
94
+ ```
95
+
96
+ In a node js project
97
+ ```js
98
+ const { XMLParser, XMLBuilder, XMLValidator} = require("fast-xml-parser");
99
+
100
+ const parser = new XMLParser();
101
+ let jObj = parser.parse(XMLdata);
102
+
103
+ const builder = new XMLBuilder();
104
+ const xmlContent = builder.build(jObj);
105
+ ```
106
+
107
+ In a HTML page
108
+ ```html
109
+ <script src="path/to/fxp.min.js"></script>
110
+ :
111
+ <script>
112
+ const parser = new fxparser.XMLParser();
113
+ parser.parse(xmlContent);
114
+ </script>
115
+ ```
116
+
117
+ Bundle size
118
+
119
+ | Bundle Name | Size |
120
+ | ------------------ | ---- |
121
+ | fxbuilder.min.js | 6.5K |
122
+ | fxparser.min.js | 20K |
123
+ | fxp.min.js | 26K |
124
+ | fxvalidator.min.js | 5.7K |
125
+
126
+ ## Documents
127
+ <table>
128
+ <tr><td>v3</td><td>v4 and v5</td><td>v6</td></tr>
129
+ <tr>
130
+ <td>
131
+ <a href="./docs/v3/docs.md">documents</a>
132
+ </td>
133
+ <td><ol>
134
+ <li><a href="./docs/v4,v5/1.GettingStarted.md">Getting Started</a></li>
135
+ <li><a href="./docs/v4,v5/2.XMLparseOptions.md">XML Parser</a></li>
136
+ <li><a href="./docs/v4,v5/3.XMLBuilder.md">XML Builder</a></li>
137
+ <li><a href="./docs/v4,v5/4.XMLValidator.md">XML Validator</a></li>
138
+ <li><a href="./docs/v4,v5/5.Entities.md">Entities</a></li>
139
+ <li><a href="./docs/v4,v5/6.HTMLParsing.md">HTML Document Parsing</a></li>
140
+ <li><a href="./docs/v4,v5/7.PITags.md">PI Tag processing</a></li>
141
+ <li><a href="./docs/v4,v5/8.PathExpression.md">Path Expression</a></li>
142
+ </ol></td>
143
+ <td><ol>
144
+ <li></li><a href="./docs/v6/1.GettingStarted.md">Getting Started</a></li>
145
+ </ol></td>
146
+ </tr>
147
+ </table>
148
+
149
+ **note**:
150
+ - Version 6 is released with version 4 for experimental use. Based on its demand, it'll be developed and the features can be different in final release.
151
+ - Version 5 has the same functionalities as version 4.
152
+
153
+ ## Performance
154
+ <small>negative means error</small>
155
+
156
+ ### XML Parser
157
+
158
+ <img align="left" src="./docs/imgs/XMLParser_v4.png" width="45%" />
159
+ <img src="./docs/imgs/XMLParser_large_v4.png" width="47%" />
160
+
161
+ * Y-axis: requests per second
162
+ * X-axis: File size
163
+
164
+ ### XML Builder
165
+
166
+ <img src="./docs/imgs/XMLBuilder_v4.png" width="50%" />
167
+ * Y-axis: requests per second
168
+
169
+ <!-- [![](static/img/ni_ads_ads.gif)](https://github.com/NaturalIntelligence/ads/) -->
170
+
171
+ ---
172
+
173
+ ## Usage Trend
174
+
175
+ [Usage Trend of fast-xml-parser](https://npm-compare.com/fast-xml-parser#timeRange=THREE_YEARS)
176
+
177
+ <a href="https://npm-compare.com/fast-xml-parser#timeRange=THREE_YEARS" target="_blank">
178
+ <img src="https://npm-compare.com/img/npm-trend/THREE_YEARS/fast-xml-parser.png" width="50%" alt="NPM Usage Trend of fast-xml-parser" />
179
+ </a>
180
+
181
+ # Supporters
182
+ #### Contributors
183
+
184
+ This project exists thanks to [all](graphs/contributors) the people who contribute. [[Contribute](docs/CONTRIBUTING.md)].
185
+
186
+ <a href="graphs/contributors"><img src="https://opencollective.com/fast-xml-parser/contributors.svg?width=890&button=false" /></a>
187
+
188
+
189
+ #### Backers from Open collective
190
+
191
+ Thank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/fast-xml-parser#backer)]
192
+
193
+ <a href="https://opencollective.com/fast-xml-parser#backers" target="_blank"><img src="https://opencollective.com/fast-xml-parser/backers.svg?width=890"></a>
194
+
195
+
196
+
197
+ # License
198
+ * MIT License
199
+
200
+ ![Donate $5](static/img/donation_quote.png)
@@ -0,0 +1,2 @@
1
+ !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.XMLBuilder=e():t.XMLBuilder=e()}(this,()=>(()=>{"use strict";var t={d:(e,i)=>{for(var s in i)t.o(i,s)&&!t.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:i[s]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{default:()=>C});class i{constructor(t,e={},i){this.pattern=t,this.separator=e.separator||".",this.segments=this._parse(t),this.data=i,this._hasDeepWildcard=this.segments.some(t=>"deep-wildcard"===t.type),this._hasAttributeCondition=this.segments.some(t=>void 0!==t.attrName),this._hasPositionSelector=this.segments.some(t=>void 0!==t.position)}_parse(t){const e=[];let i=0,s="";for(;i<t.length;)t[i]===this.separator?i+1<t.length&&t[i+1]===this.separator?(s.trim()&&(e.push(this._parseSegment(s.trim())),s=""),e.push({type:"deep-wildcard"}),i+=2):(s.trim()&&e.push(this._parseSegment(s.trim())),s="",i++):(s+=t[i],i++);return s.trim()&&e.push(this._parseSegment(s.trim())),e}_parseSegment(t){const e={type:"tag"};let i=null,s=t;const n=t.match(/^([^\[]+)(\[[^\]]*\])(.*)$/);if(n&&(s=n[1]+n[3],n[2])){const t=n[2].slice(1,-1);t&&(i=t)}let r,o,a=s;if(s.includes("::")){const e=s.indexOf("::");if(r=s.substring(0,e).trim(),a=s.substring(e+2).trim(),!r)throw new Error(`Invalid namespace in pattern: ${t}`)}let h=null;if(a.includes(":")){const t=a.lastIndexOf(":"),e=a.substring(0,t).trim(),i=a.substring(t+1).trim();["first","last","odd","even"].includes(i)||/^nth\(\d+\)$/.test(i)?(o=e,h=i):o=a}else o=a;if(!o)throw new Error(`Invalid segment pattern: ${t}`);if(e.tag=o,r&&(e.namespace=r),i)if(i.includes("=")){const t=i.indexOf("=");e.attrName=i.substring(0,t).trim(),e.attrValue=i.substring(t+1).trim()}else e.attrName=i.trim();if(h){const t=h.match(/^nth\((\d+)\)$/);t?(e.position="nth",e.positionValue=parseInt(t[1],10)):e.position=h}return e}get length(){return this.segments.length}hasDeepWildcard(){return this._hasDeepWildcard}hasAttributeCondition(){return this._hasAttributeCondition}hasPositionSelector(){return this._hasPositionSelector}toString(){return this.pattern}}class s{constructor(t){this._matcher=t}get separator(){return this._matcher.separator}getCurrentTag(){const t=this._matcher.path;return t.length>0?t[t.length-1].tag:void 0}getCurrentNamespace(){const t=this._matcher.path;return t.length>0?t[t.length-1].namespace:void 0}getAttrValue(t){const e=this._matcher.path;if(0!==e.length)return e[e.length-1].values?.[t]}hasAttr(t){const e=this._matcher.path;if(0===e.length)return!1;const i=e[e.length-1];return void 0!==i.values&&t in i.values}getPosition(){const t=this._matcher.path;return 0===t.length?-1:t[t.length-1].position??0}getCounter(){const t=this._matcher.path;return 0===t.length?-1:t[t.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this._matcher.path.length}toString(t,e=!0){return this._matcher.toString(t,e)}toArray(){return this._matcher.path.map(t=>t.tag)}matches(t){return this._matcher.matches(t)}matchesAny(t){return t.matchesAny(this._matcher)}}class n{constructor(t={}){this.separator=t.separator||".",this.path=[],this.siblingStacks=[],this._pathStringCache=null,this._view=new s(this)}push(t,e=null,i=null){this._pathStringCache=null,this.path.length>0&&(this.path[this.path.length-1].values=void 0);const s=this.path.length;this.siblingStacks[s]||(this.siblingStacks[s]=new Map);const n=this.siblingStacks[s],r=i?`${i}:${t}`:t,o=n.get(r)||0;let a=0;for(const t of n.values())a+=t;n.set(r,o+1);const h={tag:t,position:a,counter:o};null!=i&&(h.namespace=i),null!=e&&(h.values=e),this.path.push(h)}pop(){if(0===this.path.length)return;this._pathStringCache=null;const t=this.path.pop();return this.siblingStacks.length>this.path.length+1&&(this.siblingStacks.length=this.path.length+1),t}updateCurrent(t){if(this.path.length>0){const e=this.path[this.path.length-1];null!=t&&(e.values=t)}}getCurrentTag(){return this.path.length>0?this.path[this.path.length-1].tag:void 0}getCurrentNamespace(){return this.path.length>0?this.path[this.path.length-1].namespace:void 0}getAttrValue(t){if(0!==this.path.length)return this.path[this.path.length-1].values?.[t]}hasAttr(t){if(0===this.path.length)return!1;const e=this.path[this.path.length-1];return void 0!==e.values&&t in e.values}getPosition(){return 0===this.path.length?-1:this.path[this.path.length-1].position??0}getCounter(){return 0===this.path.length?-1:this.path[this.path.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this.path.length}toString(t,e=!0){const i=t||this.separator;if(i===this.separator&&!0===e){if(null!==this._pathStringCache)return this._pathStringCache;const t=this.path.map(t=>t.namespace?`${t.namespace}:${t.tag}`:t.tag).join(i);return this._pathStringCache=t,t}return this.path.map(t=>e&&t.namespace?`${t.namespace}:${t.tag}`:t.tag).join(i)}toArray(){return this.path.map(t=>t.tag)}reset(){this._pathStringCache=null,this.path=[],this.siblingStacks=[]}matches(t){const e=t.segments;return 0!==e.length&&(t.hasDeepWildcard()?this._matchWithDeepWildcard(e):this._matchSimple(e))}_matchSimple(t){if(this.path.length!==t.length)return!1;for(let e=0;e<t.length;e++)if(!this._matchSegment(t[e],this.path[e],e===this.path.length-1))return!1;return!0}_matchWithDeepWildcard(t){let e=this.path.length-1,i=t.length-1;for(;i>=0&&e>=0;){const s=t[i];if("deep-wildcard"===s.type){if(i--,i<0)return!0;const s=t[i];let n=!1;for(let t=e;t>=0;t--)if(this._matchSegment(s,this.path[t],t===this.path.length-1)){e=t-1,i--,n=!0;break}if(!n)return!1}else{if(!this._matchSegment(s,this.path[e],e===this.path.length-1))return!1;e--,i--}}return i<0}_matchSegment(t,e,i){if("*"!==t.tag&&t.tag!==e.tag)return!1;if(void 0!==t.namespace&&"*"!==t.namespace&&t.namespace!==e.namespace)return!1;if(void 0!==t.attrName){if(!i)return!1;if(!e.values||!(t.attrName in e.values))return!1;if(void 0!==t.attrValue&&String(e.values[t.attrName])!==String(t.attrValue))return!1}if(void 0!==t.position){if(!i)return!1;const s=e.counter??0;if("first"===t.position&&0!==s)return!1;if("odd"===t.position&&s%2!=1)return!1;if("even"===t.position&&s%2!=0)return!1;if("nth"===t.position&&s!==t.positionValue)return!1}return!0}matchesAny(t){return t.matchesAny(this)}snapshot(){return{path:this.path.map(t=>({...t})),siblingStacks:this.siblingStacks.map(t=>new Map(t))}}restore(t){this._pathStringCache=null,this.path=t.path.map(t=>({...t})),this.siblingStacks=t.siblingStacks.map(t=>new Map(t))}readOnly(){return this._view}}function r(t){return String(t).replace(/--/g,"- -").replace(/--/g,"- -").replace(/-$/,"- ")}function o(t){return String(t).replace(/\]\]>/g,"]]]]><![CDATA[>")}function a(t){return String(t).replace(/"/g,"&quot;").replace(/'/g,"&apos;")}const h=":A-Za-z_À-ÖØ-öø-˿Ͱ-ͽͿ-҆҈-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�",p=":A-Za-z_À-˿Ͱ-ͽͿ-҆҈-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",u=p+"\\-\\.\\d·̀-ͯ҇‿-⁀",l=(t,e,i="")=>{const s=`[${t.replace(":","")}][${e.replace(":","")}]*`;return{name:new RegExp(`^[${t}][${e}]*$`,i),ncName:new RegExp(`^${s}$`,i),qName:new RegExp(`^${s}(?::${s})?$`,i),nmToken:new RegExp(`^[${e}]+$`,i),nmTokens:new RegExp(`^[${e}]+(?:\\s+[${e}]+)*$`,i)}},c=l(h,h+"\\-\\.\\d·̀-ͯ‿-⁀"),g=l(p,u,"u"),d=(t,{xmlVersion:e="1.0"}={})=>((t="1.0")=>"1.1"===t?g:c)(e).qName.test(t);function f(t,e,i,s,n){return i.sanitizeName?d(t,{xmlVersion:n})?t:i.sanitizeName(t,{isAttribute:e,matcher:s.readOnly()}):t}function m(t,e){let s="";e.format&&(s="\n");const r=[];if(e.stopNodes&&Array.isArray(e.stopNodes))for(let t=0;t<e.stopNodes.length;t++){const s=e.stopNodes[t];"string"==typeof s?r.push(new i(s)):s instanceof i&&r.push(s)}const o=function(t,e){if(!Array.isArray(t)||0===t.length)return"1.0";const i=t[0];if("?xml"===A(i)){const t=i[":@"];if(t){const i=e.attributeNamePrefix+"version";if(t[i])return t[i]}}return"1.0"}(t,e);return b(t,e,s,new n,r,o)}function b(t,e,i,s,n,a){let h="",p=!1;if(e.maxNestedTags&&s.getDepth()>e.maxNestedTags)throw new Error("Maximum nested tags exceeded");if(!Array.isArray(t)){if(null!=t){let i=t.toString();return i=S(i,e),i}return""}for(let u=0;u<t.length;u++){const l=t[u],c=A(l);if(void 0===c)continue;const g=c===e.textNodeName||c===e.cdataPropName||c===e.commentPropName||"?"===c[0]?c:f(c,!1,e,s,a),d=N(l[":@"],e);s.push(g,d);const m=P(s,n);if(g===e.textNodeName){let t=l[c];m||(t=e.tagValueProcessor(g,t),t=S(t,e)),p&&(h+=i),h+=t,p=!1,s.pop();continue}if(g===e.cdataPropName){p&&(h+=i),h+=`<![CDATA[${o(l[c][0][e.textNodeName])}]]>`,p=!1,s.pop();continue}if(g===e.commentPropName){h+=i+`\x3c!--${r(l[c][0][e.textNodeName])}--\x3e`,p=!0,s.pop();continue}if("?"===g[0]){h+=("?xml"===g?"":i)+`<${g}${$(l[":@"],e,m,s,a)}?>`,p=!0,s.pop();continue}let y=i;""!==y&&(y+=e.indentBy);const v=i+`<${g}${$(l[":@"],e,m,s,a)}`;let w;w=m?x(l[c],e):b(l[c],e,y,s,n,a),-1!==e.unpairedTags.indexOf(g)?e.suppressUnpairedNode?h+=v+">":h+=v+"/>":w&&0!==w.length||!e.suppressEmptyNode?w&&w.endsWith(">")?h+=v+`>${w}${i}</${g}>`:(h+=v+">",w&&""!==i&&(w.includes("/>")||w.includes("</"))?h+=i+e.indentBy+w+i:h+=w,h+=`</${g}>`):h+=v+"/>",p=!0,s.pop()}return h}function N(t,e){if(!t||e.ignoreAttributes)return null;const i={};let s=!1;for(let n in t)Object.prototype.hasOwnProperty.call(t,n)&&(i[n.startsWith(e.attributeNamePrefix)?n.substr(e.attributeNamePrefix.length):n]=a(t[n]),s=!0);return s?i:null}function x(t,e){if(!Array.isArray(t))return null!=t?t.toString():"";let i="";for(let s=0;s<t.length;s++){const n=t[s],r=A(n);if(r===e.textNodeName)i+=n[r];else if(r===e.cdataPropName)i+=n[r][0][e.textNodeName];else if(r===e.commentPropName)i+=n[r][0][e.textNodeName];else{if(r&&"?"===r[0])continue;if(r){const t=y(n[":@"],e),s=x(n[r],e);s&&0!==s.length?i+=`<${r}${t}>${s}</${r}>`:i+=`<${r}${t}/>`}}}return i}function y(t,e){let i="";if(t&&!e.ignoreAttributes)for(let s in t){if(!Object.prototype.hasOwnProperty.call(t,s))continue;let n=t[s];!0===n&&e.suppressBooleanAttributes?i+=` ${s.substr(e.attributeNamePrefix.length)}`:i+=` ${s.substr(e.attributeNamePrefix.length)}="${a(n)}"`}return i}function A(t){const e=Object.keys(t);for(let i=0;i<e.length;i++){const s=e[i];if(Object.prototype.hasOwnProperty.call(t,s)&&":@"!==s)return s}}function $(t,e,i,s,n){let r="";if(t&&!e.ignoreAttributes)for(let o in t){if(!Object.prototype.hasOwnProperty.call(t,o))continue;const h=o.substr(e.attributeNamePrefix.length),p=i?h:f(h,!0,e,s,n);let u;i?u=t[o]:(u=e.attributeValueProcessor(o,t[o]),u=S(u,e)),!0===u&&e.suppressBooleanAttributes?r+=` ${p}`:r+=` ${p}="${a(u)}"`}return r}function P(t,e){if(!e||0===e.length)return!1;for(let i=0;i<e.length;i++)if(t.matches(e[i]))return!0;return!1}function S(t,e){if(t&&t.length>0&&e.processEntities)for(let i=0;i<e.entities.length;i++){const s=e.entities[i];t=t.replace(s.regex,s.val)}return t}const v={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&amp;"},{regex:new RegExp(">","g"),val:"&gt;"},{regex:new RegExp("<","g"),val:"&lt;"},{regex:new RegExp("'","g"),val:"&apos;"},{regex:new RegExp('"',"g"),val:"&quot;"}],processEntities:!0,stopNodes:[],oneListGroup:!1,maxNestedTags:100,jPath:!0,sanitizeName:!1};function w(t){if(this.options=Object.assign({},v,t),this.options.stopNodes&&Array.isArray(this.options.stopNodes)&&(this.options.stopNodes=this.options.stopNodes.map(t=>"string"==typeof t&&t.startsWith("*.")?".."+t.substring(2):t)),this.stopNodeExpressions=[],this.options.stopNodes&&Array.isArray(this.options.stopNodes))for(let t=0;t<this.options.stopNodes.length;t++){const e=this.options.stopNodes[t];"string"==typeof e?this.stopNodeExpressions.push(new i(e)):e instanceof i&&this.stopNodeExpressions.push(e)}var e;!0===this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.ignoreAttributesFn="function"==typeof(e=this.options.ignoreAttributes)?e:Array.isArray(e)?t=>{for(const i of e){if("string"==typeof i&&t===i)return!0;if(i instanceof RegExp&&i.test(t))return!0}}:()=>!1,this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=j),this.processTextOrObjNode=O,this.options.format?(this.indentate=_,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function E(t,e,i,s,n){return i.sanitizeName?d(t,{xmlVersion:n})?t:i.sanitizeName(t,{isAttribute:e,matcher:s.readOnly()}):t}function O(t,e,i,s,n){const r=this.extractAttributes(t);if(s.push(e,r),this.checkStopNode(s)){const n=this.buildRawContent(t),r=this.buildAttributesForStopNode(t);return s.pop(),this.buildObjectNode(n,e,r,i)}const o=this.j2x(t,i+1,s,n);return s.pop(),"?"===e[0]?this.buildTextValNode("",e,o.attrStr,i,s):void 0!==t[this.options.textNodeName]&&1===Object.keys(t).length?this.buildTextValNode(t[this.options.textNodeName],e,o.attrStr,i,s):this.buildObjectNode(o.val,e,o.attrStr,i)}function _(t){return this.options.indentBy.repeat(t)}function j(t){return!(!t.startsWith(this.options.attributeNamePrefix)||t===this.options.textNodeName)&&t.substr(this.attrPrefixLen)}w.prototype.build=function(t){if(this.options.preserveOrder)return m(t,this.options);{Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t});const e=new n,i=function(t,e){const i=t["?xml"];if(i&&"object"==typeof i){if(e.attributesGroupName&&i[e.attributesGroupName]){const t=i[e.attributesGroupName][e.attributeNamePrefix+"version"];if(t)return t}const t=i[e.attributeNamePrefix+"version"];if(t)return t}return"1.0"}(t,this.options);return this.j2x(t,0,e,i).val}},w.prototype.j2x=function(t,e,i,s){let n="",r="";if(this.options.maxNestedTags&&i.getDepth()>=this.options.maxNestedTags)throw new Error("Maximum nested tags exceeded");const o=this.options.jPath?i.toString():i,a=this.checkStopNode(i);for(let h in t){if(!Object.prototype.hasOwnProperty.call(t,h))continue;const p=h===this.options.textNodeName||h===this.options.cdataPropName||h===this.options.commentPropName||this.options.attributesGroupName&&h===this.options.attributesGroupName||this.isAttribute(h)||"?"===h[0]?h:E(h,!1,this.options,i,s);if(void 0===t[h])this.isAttribute(h)&&(r+="");else if(null===t[h])this.isAttribute(h)||p===this.options.cdataPropName||p===this.options.commentPropName?r+="":"?"===p[0]?r+=this.indentate(e)+"<"+p+"?"+this.tagEndChar:r+=this.indentate(e)+"<"+p+"/"+this.tagEndChar;else if(t[h]instanceof Date)r+=this.buildTextValNode(t[h],p,"",e,i);else if("object"!=typeof t[h]){const u=this.isAttribute(h);if(u&&!this.ignoreAttributesFn(u,o)){const e=E(u,!0,this.options,i,s);n+=this.buildAttrPairStr(e,""+t[h],a)}else if(!u)if(h===this.options.textNodeName){let e=this.options.tagValueProcessor(h,""+t[h]);r+=this.replaceEntitiesValue(e)}else{i.push(p);const s=this.checkStopNode(i);if(i.pop(),s){const i=""+t[h];r+=""===i?this.indentate(e)+"<"+p+this.closeTag(p)+this.tagEndChar:this.indentate(e)+"<"+p+">"+i+"</"+p+this.tagEndChar}else r+=this.buildTextValNode(t[h],p,"",e,i)}}else if(Array.isArray(t[h])){const n=t[h].length;let o="",a="";for(let u=0;u<n;u++){const n=t[h][u];if(void 0===n);else if(null===n)"?"===p[0]?r+=this.indentate(e)+"<"+p+"?"+this.tagEndChar:r+=this.indentate(e)+"<"+p+"/"+this.tagEndChar;else if("object"==typeof n)if(this.options.oneListGroup){i.push(p);const t=this.j2x(n,e+1,i,s);i.pop(),o+=t.val,this.options.attributesGroupName&&n.hasOwnProperty(this.options.attributesGroupName)&&(a+=t.attrStr)}else o+=this.processTextOrObjNode(n,p,e,i,s);else if(this.options.oneListGroup){let t=this.options.tagValueProcessor(p,n);t=this.replaceEntitiesValue(t),o+=t}else{i.push(p);const t=this.checkStopNode(i);if(i.pop(),t){const t=""+n;o+=""===t?this.indentate(e)+"<"+p+this.closeTag(p)+this.tagEndChar:this.indentate(e)+"<"+p+">"+t+"</"+p+this.tagEndChar}else o+=this.buildTextValNode(n,p,"",e,i)}}this.options.oneListGroup&&(o=this.buildObjectNode(o,p,a,e)),r+=o}else if(this.options.attributesGroupName&&h===this.options.attributesGroupName){const e=Object.keys(t[h]),r=e.length;for(let o=0;o<r;o++){const r=E(e[o],!0,this.options,i,s);n+=this.buildAttrPairStr(r,""+t[h][e[o]],a)}}else r+=this.processTextOrObjNode(t[h],p,e,i,s)}return{attrStr:n,val:r}},w.prototype.buildAttrPairStr=function(t,e,i){return i||(e=this.options.attributeValueProcessor(t,""+e),e=this.replaceEntitiesValue(e)),this.options.suppressBooleanAttributes&&"true"===e?" "+t:" "+t+'="'+a(e)+'"'},w.prototype.extractAttributes=function(t){if(!t||"object"!=typeof t)return null;const e={};let i=!1;if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){const s=t[this.options.attributesGroupName];for(let t in s)Object.prototype.hasOwnProperty.call(s,t)&&(e[t.startsWith(this.options.attributeNamePrefix)?t.substring(this.options.attributeNamePrefix.length):t]=a(s[t]),i=!0)}else for(let s in t){if(!Object.prototype.hasOwnProperty.call(t,s))continue;const n=this.isAttribute(s);n&&(e[n]=a(t[s]),i=!0)}return i?e:null},w.prototype.buildRawContent=function(t){if("string"==typeof t)return t;if("object"!=typeof t||null===t)return String(t);if(void 0!==t[this.options.textNodeName])return t[this.options.textNodeName];let e="";for(let i in t){if(!Object.prototype.hasOwnProperty.call(t,i))continue;if(this.isAttribute(i))continue;if(this.options.attributesGroupName&&i===this.options.attributesGroupName)continue;const s=t[i];if(i===this.options.textNodeName)e+=s;else if(Array.isArray(s)){for(let t of s)if("string"==typeof t||"number"==typeof t)e+=`<${i}>${t}</${i}>`;else if("object"==typeof t&&null!==t){const s=this.buildRawContent(t),n=this.buildAttributesForStopNode(t);e+=""===s?`<${i}${n}/>`:`<${i}${n}>${s}</${i}>`}}else if("object"==typeof s&&null!==s){const t=this.buildRawContent(s),n=this.buildAttributesForStopNode(s);e+=""===t?`<${i}${n}/>`:`<${i}${n}>${t}</${i}>`}else e+=`<${i}>${s}</${i}>`}return e},w.prototype.buildAttributesForStopNode=function(t){if(!t||"object"!=typeof t)return"";let e="";if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){const i=t[this.options.attributesGroupName];for(let t in i){if(!Object.prototype.hasOwnProperty.call(i,t))continue;const s=t.startsWith(this.options.attributeNamePrefix)?t.substring(this.options.attributeNamePrefix.length):t,n=i[t];!0===n&&this.options.suppressBooleanAttributes?e+=" "+s:e+=" "+s+'="'+n+'"'}}else for(let i in t){if(!Object.prototype.hasOwnProperty.call(t,i))continue;const s=this.isAttribute(i);if(s){const n=t[i];!0===n&&this.options.suppressBooleanAttributes?e+=" "+s:e+=" "+s+'="'+n+'"'}}return e},w.prototype.buildObjectNode=function(t,e,i,s){if(""===t)return"?"===e[0]?this.indentate(s)+"<"+e+i+"?"+this.tagEndChar:this.indentate(s)+"<"+e+i+this.closeTag(e)+this.tagEndChar;if("?"===e[0])return this.indentate(s)+"<"+e+i+"?"+this.tagEndChar;{let n="</"+e+this.tagEndChar,r="";return"?"===e[0]&&(r="?",n=""),!i&&""!==i||-1!==t.indexOf("<")?!1!==this.options.commentPropName&&e===this.options.commentPropName&&0===r.length?this.indentate(s)+`\x3c!--${t}--\x3e`+this.newLine:this.indentate(s)+"<"+e+i+r+this.tagEndChar+t+this.indentate(s)+n:this.indentate(s)+"<"+e+i+r+">"+t+n}},w.prototype.closeTag=function(t){let e="";return-1!==this.options.unpairedTags.indexOf(t)?this.options.suppressUnpairedNode||(e="/"):e=this.options.suppressEmptyNode?"/":`></${t}`,e},w.prototype.checkStopNode=function(t){if(!this.stopNodeExpressions||0===this.stopNodeExpressions.length)return!1;for(let e=0;e<this.stopNodeExpressions.length;e++)if(t.matches(this.stopNodeExpressions[e]))return!0;return!1},w.prototype.buildTextValNode=function(t,e,i,s,n){if(!1!==this.options.cdataPropName&&e===this.options.cdataPropName){const e=o(t);return this.indentate(s)+`<![CDATA[${e}]]>`+this.newLine}if(!1!==this.options.commentPropName&&e===this.options.commentPropName){const e=r(t);return this.indentate(s)+`\x3c!--${e}--\x3e`+this.newLine}if("?"===e[0])return this.indentate(s)+"<"+e+i+"?"+this.tagEndChar;{let n=this.options.tagValueProcessor(e,t);return n=this.replaceEntitiesValue(n),""===n?this.indentate(s)+"<"+e+i+this.closeTag(e)+this.tagEndChar:this.indentate(s)+"<"+e+i+">"+n+"</"+e+this.tagEndChar}},w.prototype.replaceEntitiesValue=function(t){if(t&&t.length>0&&this.options.processEntities)for(let e=0;e<this.options.entities.length;e++){const i=this.options.entities[e];t=t.replace(i.regex,i.val)}return t};const C=w;return e})());
2
+ //# sourceMappingURL=fxbuilder.min.js.map
@@ -0,0 +1 @@
1
+ (()=>{"use strict";var t={d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{XMLBuilder:()=>xe,XMLParser:()=>Jt,XMLValidator:()=>be});const i=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",n=new RegExp("^["+i+"]["+i+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$");function r(t,e){const i=[];let n=e.exec(t);for(;n;){const r=[];r.startIndex=e.lastIndex-n[0].length;const s=n.length;for(let t=0;t<s;t++)r.push(n[t]);i.push(r),n=e.exec(t)}return i}const s=function(t){return!(null==n.exec(t))},o=["hasOwnProperty","toString","valueOf","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__"],a=["__proto__","constructor","prototype"],l={allowBooleanAttributes:!1,unpairedTags:[]};function p(t,e){e=Object.assign({},l,e);const i=[];let n=!1,r=!1;"\ufeff"===t[0]&&(t=t.substr(1));for(let s=0;s<t.length;s++)if("<"===t[s]&&"?"===t[s+1]){if(s+=2,s=h(t,s),s.err)return s}else{if("<"!==t[s]){if(c(t[s]))continue;return y("InvalidChar","char '"+t[s]+"' is not expected.",w(t,s))}{let o=s;if(s++,"!"===t[s]){s=d(t,s);continue}{let a=!1;"/"===t[s]&&(a=!0,s++);let l="";for(;s<t.length&&">"!==t[s]&&" "!==t[s]&&"\t"!==t[s]&&"\n"!==t[s]&&"\r"!==t[s];s++)l+=t[s];if(l=l.trim(),"/"===l[l.length-1]&&(l=l.substring(0,l.length-1),s--),!E(l)){let e;return e=0===l.trim().length?"Invalid space after '<'.":"Tag '"+l+"' is an invalid name.",y("InvalidTag",e,w(t,s))}const p=g(t,s);if(!1===p)return y("InvalidAttr","Attributes for '"+l+"' have open quote.",w(t,s));let u=p.value;if(s=p.index,"/"===u[u.length-1]){const i=s-u.length;u=u.substring(0,u.length-1);const r=x(u,e);if(!0!==r)return y(r.err.code,r.err.msg,w(t,i+r.err.line));n=!0}else if(a){if(!p.tagClosed)return y("InvalidTag","Closing tag '"+l+"' doesn't have proper closing.",w(t,s));if(u.trim().length>0)return y("InvalidTag","Closing tag '"+l+"' can't have attributes or invalid starting.",w(t,o));if(0===i.length)return y("InvalidTag","Closing tag '"+l+"' has not been opened.",w(t,o));{const e=i.pop();if(l!==e.tagName){let i=w(t,e.tagStartPos);return y("InvalidTag","Expected closing tag '"+e.tagName+"' (opened in line "+i.line+", col "+i.col+") instead of closing tag '"+l+"'.",w(t,o))}0==i.length&&(r=!0)}}else{const a=x(u,e);if(!0!==a)return y(a.err.code,a.err.msg,w(t,s-u.length+a.err.line));if(!0===r)return y("InvalidXml","Multiple possible root nodes found.",w(t,s));-1!==e.unpairedTags.indexOf(l)||i.push({tagName:l,tagStartPos:o}),n=!0}for(s++;s<t.length;s++)if("<"===t[s]){if("!"===t[s+1]){s++,s=d(t,s);continue}if("?"!==t[s+1])break;if(s=h(t,++s),s.err)return s}else if("&"===t[s]){const e=b(t,s);if(-1==e)return y("InvalidChar","char '&' is not expected.",w(t,s));s=e}else if(!0===r&&!c(t[s]))return y("InvalidXml","Extra text at the end",w(t,s));"<"===t[s]&&s--}}}return n?1==i.length?y("InvalidTag","Unclosed tag '"+i[0].tagName+"'.",w(t,i[0].tagStartPos)):!(i.length>0)||y("InvalidXml","Invalid '"+JSON.stringify(i.map(t=>t.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1}):y("InvalidXml","Start tag expected.",1)}function c(t){return" "===t||"\t"===t||"\n"===t||"\r"===t}function h(t,e){const i=e;for(;e<t.length;e++)if("?"==t[e]||" "==t[e]){const n=t.substr(i,e-i);if(e>5&&"xml"===n)return y("InvalidXml","XML declaration allowed only at the start of the document.",w(t,e));if("?"==t[e]&&">"==t[e+1]){e++;break}continue}return e}function d(t,e){if(t.length>e+5&&"-"===t[e+1]&&"-"===t[e+2]){for(e+=3;e<t.length;e++)if("-"===t[e]&&"-"===t[e+1]&&">"===t[e+2]){e+=2;break}}else if(t.length>e+8&&"D"===t[e+1]&&"O"===t[e+2]&&"C"===t[e+3]&&"T"===t[e+4]&&"Y"===t[e+5]&&"P"===t[e+6]&&"E"===t[e+7]){let i=1;for(e+=8;e<t.length;e++)if("<"===t[e])i++;else if(">"===t[e]&&(i--,0===i))break}else if(t.length>e+9&&"["===t[e+1]&&"C"===t[e+2]&&"D"===t[e+3]&&"A"===t[e+4]&&"T"===t[e+5]&&"A"===t[e+6]&&"["===t[e+7])for(e+=8;e<t.length;e++)if("]"===t[e]&&"]"===t[e+1]&&">"===t[e+2]){e+=2;break}return e}const u='"',f="'";function g(t,e){let i="",n="",r=!1;for(;e<t.length;e++){if(t[e]===u||t[e]===f)""===n?n=t[e]:n!==t[e]||(n="");else if(">"===t[e]&&""===n){r=!0;break}i+=t[e]}return""===n&&{value:i,index:e,tagClosed:r}}const m=new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");function x(t,e){const i=r(t,m),n={};for(let t=0;t<i.length;t++){if(0===i[t][1].length)return y("InvalidAttr","Attribute '"+i[t][2]+"' has no space in starting.",v(i[t]));if(void 0!==i[t][3]&&void 0===i[t][4])return y("InvalidAttr","Attribute '"+i[t][2]+"' is without value.",v(i[t]));if(void 0===i[t][3]&&!e.allowBooleanAttributes)return y("InvalidAttr","boolean attribute '"+i[t][2]+"' is not allowed.",v(i[t]));const r=i[t][2];if(!N(r))return y("InvalidAttr","Attribute '"+r+"' is an invalid name.",v(i[t]));if(Object.prototype.hasOwnProperty.call(n,r))return y("InvalidAttr","Attribute '"+r+"' is repeated.",v(i[t]));n[r]=1}return!0}function b(t,e){if(";"===t[++e])return-1;if("#"===t[e])return function(t,e){let i=/\d/;for("x"===t[e]&&(e++,i=/[\da-fA-F]/);e<t.length;e++){if(";"===t[e])return e;if(!t[e].match(i))break}return-1}(t,++e);let i=0;for(;e<t.length;e++,i++)if(!(t[e].match(/\w/)&&i<20)){if(";"===t[e])break;return-1}return e}function y(t,e,i){return{err:{code:t,msg:e,line:i.line||i,col:i.col}}}function N(t){return s(t)}function E(t){return s(t)}function w(t,e){const i=t.substring(0,e).split(/\r?\n/);return{line:i.length,col:i[i.length-1].length+1}}function v(t){return t.startIndex+t[1].length}const S=t=>o.includes(t)?"__"+t:t,A={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0,unicode:!1},tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,entityDecoder:null,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(t,e,i){return t},captureMetaData:!1,maxNestedTags:100,strictReservedNames:!0,jPath:!0,onDangerousProperty:S};function T(t,e){if("string"!=typeof t)return;const i=t.toLowerCase();if(o.some(t=>i===t.toLowerCase()))throw new Error(`[SECURITY] Invalid ${e}: "${t}" is a reserved JavaScript keyword that could cause prototype pollution`);if(a.some(t=>i===t.toLowerCase()))throw new Error(`[SECURITY] Invalid ${e}: "${t}" is a reserved JavaScript keyword that could cause prototype pollution`)}function _(t,e){return"boolean"==typeof t?{enabled:t,maxEntitySize:1e4,maxExpansionDepth:1e4,maxTotalExpansions:1/0,maxExpandedLength:1e5,maxEntityCount:1e3,allowedTags:null,tagFilter:null,appliesTo:"all"}:"object"==typeof t&&null!==t?{enabled:!1!==t.enabled,maxEntitySize:Math.max(1,t.maxEntitySize??1e4),maxExpansionDepth:Math.max(1,t.maxExpansionDepth??1e4),maxTotalExpansions:Math.max(1,t.maxTotalExpansions??1/0),maxExpandedLength:Math.max(1,t.maxExpandedLength??1e5),maxEntityCount:Math.max(1,t.maxEntityCount??1e3),allowedTags:t.allowedTags??null,tagFilter:t.tagFilter??null,appliesTo:t.appliesTo??"all"}:_(!0)}const C=function(t){const e=Object.assign({},A,t),i=[{value:e.attributeNamePrefix,name:"attributeNamePrefix"},{value:e.attributesGroupName,name:"attributesGroupName"},{value:e.textNodeName,name:"textNodeName"},{value:e.cdataPropName,name:"cdataPropName"},{value:e.commentPropName,name:"commentPropName"}];for(const{value:t,name:e}of i)t&&T(t,e);return null===e.onDangerousProperty&&(e.onDangerousProperty=S),e.processEntities=_(e.processEntities,e.htmlEntities),e.unpairedTagsSet=new Set(e.unpairedTags),e.stopNodes&&Array.isArray(e.stopNodes)&&(e.stopNodes=e.stopNodes.map(t=>"string"==typeof t&&t.startsWith("*.")?".."+t.substring(2):t)),e};let $;$="function"!=typeof Symbol?"@@xmlMetadata":Symbol("XML Node Metadata");class O{constructor(t){this.tagname=t,this.child=[],this[":@"]=Object.create(null)}add(t,e){"__proto__"===t&&(t="#__proto__"),this.child.push({[t]:e})}addChild(t,e){"__proto__"===t.tagname&&(t.tagname="#__proto__"),t[":@"]&&Object.keys(t[":@"]).length>0?this.child.push({[t.tagname]:t.child,":@":t[":@"]}):this.child.push({[t.tagname]:t.child}),void 0!==e&&(this.child[this.child.length-1][$]={startIndex:e})}static getMetaDataSymbol(){return $}}const P=":A-Za-z_À-ÖØ-öø-˿Ͱ-ͽͿ-҆҈-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�",j=":A-Za-z_À-˿Ͱ-ͽͿ-҆҈-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",I=j+"\\-\\.\\d·̀-ͯ҇‿-⁀",k=(t,e,i="")=>{const n=`[${t.replace(":","")}][${e.replace(":","")}]*`;return{name:new RegExp(`^[${t}][${e}]*$`,i),ncName:new RegExp(`^${n}$`,i),qName:new RegExp(`^${n}(?::${n})?$`,i),nmToken:new RegExp(`^[${e}]+$`,i),nmTokens:new RegExp(`^[${e}]+(?:\\s+[${e}]+)*$`,i)}},L=k(P,P+"\\-\\.\\d·̀-ͯ‿-⁀"),D=k(j,I,"u"),R=(t,{xmlVersion:e="1.0"}={})=>((t="1.0")=>"1.1"===t?D:L)(e).qName.test(t);class M{constructor(t,e){this.suppressValidationErr=!t,this.options=t,this.xmlVersion=e||1}setXmlVersion(t=1){this.xmlVersion=t}readDocType(t,e){const i=Object.create(null);let n=0;if("O"!==t[e+3]||"C"!==t[e+4]||"T"!==t[e+5]||"Y"!==t[e+6]||"P"!==t[e+7]||"E"!==t[e+8])throw new Error("Invalid Tag instead of DOCTYPE");{e+=9;let r=1,s=!1,o=!1,a="";for(;e<t.length;e++)if("<"!==t[e]||o)if(">"===t[e]){if(o?"-"===t[e-1]&&"-"===t[e-2]&&(o=!1,r--):r--,0===r)break}else"["===t[e]?s=!0:a+=t[e];else{if(s&&q(t,"!ENTITY",e)){let r,s;if(e+=7,[r,s,e]=this.readEntityExp(t,e+1,this.suppressValidationErr),-1===s.indexOf("&")){if(!1!==this.options.enabled&&null!=this.options.maxEntityCount&&n>=this.options.maxEntityCount)throw new Error(`Entity count (${n+1}) exceeds maximum allowed (${this.options.maxEntityCount})`);i[r]=s,n++}}else if(s&&q(t,"!ELEMENT",e)){e+=8;const{index:i}=this.readElementExp(t,e+1);e=i}else if(s&&q(t,"!ATTLIST",e))e+=8;else if(s&&q(t,"!NOTATION",e)){e+=9;const{index:i}=this.readNotationExp(t,e+1,this.suppressValidationErr);e=i}else{if(!q(t,"!--",e))throw new Error("Invalid DOCTYPE");o=!0}r++,a=""}if(0!==r)throw new Error("Unclosed DOCTYPE")}return{entities:i,i:e}}readEntityExp(t,e){const i=e=V(t,e);for(;e<t.length&&!/\s/.test(t[e])&&'"'!==t[e]&&"'"!==t[e];)e++;let n=t.substring(i,e);if(F(n,{xmlVersion:this.xmlVersion}),e=V(t,e),!this.suppressValidationErr){if("SYSTEM"===t.substring(e,e+6).toUpperCase())throw new Error("External entities are not supported");if("%"===t[e])throw new Error("Parameter entities are not supported")}let r="";if([e,r]=this.readIdentifierVal(t,e,"entity"),!1!==this.options.enabled&&null!=this.options.maxEntitySize&&r.length>this.options.maxEntitySize)throw new Error(`Entity "${n}" size (${r.length}) exceeds maximum allowed size (${this.options.maxEntitySize})`);return[n,r,--e]}readNotationExp(t,e){const i=e=V(t,e);for(;e<t.length&&!/\s/.test(t[e]);)e++;let n=t.substring(i,e);!this.suppressValidationErr&&F(n,{xmlVersion:this.xmlVersion}),e=V(t,e);const r=t.substring(e,e+6).toUpperCase();if(!this.suppressValidationErr&&"SYSTEM"!==r&&"PUBLIC"!==r)throw new Error(`Expected SYSTEM or PUBLIC, found "${r}"`);e+=r.length,e=V(t,e);let s=null,o=null;if("PUBLIC"===r)[e,s]=this.readIdentifierVal(t,e,"publicIdentifier"),'"'!==t[e=V(t,e)]&&"'"!==t[e]||([e,o]=this.readIdentifierVal(t,e,"systemIdentifier"));else if("SYSTEM"===r&&([e,o]=this.readIdentifierVal(t,e,"systemIdentifier"),!this.suppressValidationErr&&!o))throw new Error("Missing mandatory system identifier for SYSTEM notation");return{notationName:n,publicIdentifier:s,systemIdentifier:o,index:--e}}readIdentifierVal(t,e,i){let n="";const r=t[e];if('"'!==r&&"'"!==r)throw new Error(`Expected quoted string, found "${r}"`);const s=++e;for(;e<t.length&&t[e]!==r;)e++;if(n=t.substring(s,e),t[e]!==r)throw new Error(`Unterminated ${i} value`);return[++e,n]}readElementExp(t,e){const i=e=V(t,e);for(;e<t.length&&!/\s/.test(t[e]);)e++;let n=t.substring(i,e);if(!this.suppressValidationErr&&!R(n,{xmlVersion:this.xmlVersion}))throw new Error(`Invalid element name: "${n}"`);let r="";if("E"===t[e=V(t,e)]&&q(t,"MPTY",e))e+=4;else if("A"===t[e]&&q(t,"NY",e))e+=2;else if("("===t[e]){const i=++e;for(;e<t.length&&")"!==t[e];)e++;if(r=t.substring(i,e),")"!==t[e])throw new Error("Unterminated content model")}else if(!this.suppressValidationErr)throw new Error(`Invalid Element Expression, found "${t[e]}"`);return{elementName:n,contentModel:r.trim(),index:e}}readAttlistExp(t,e){let i=e=V(t,e);for(;e<t.length&&!/\s/.test(t[e]);)e++;let n=t.substring(i,e);for(F(n,{xmlVersion:this.xmlVersion}),i=e=V(t,e);e<t.length&&!/\s/.test(t[e]);)e++;let r=t.substring(i,e);if(!F(r,{xmlVersion:this.xmlVersion}))throw new Error(`Invalid attribute name: "${r}"`);e=V(t,e);let s="";if("NOTATION"===t.substring(e,e+8).toUpperCase()){if(s="NOTATION","("!==t[e=V(t,e+=8)])throw new Error(`Expected '(', found "${t[e]}"`);e++;let i=[];for(;e<t.length&&")"!==t[e];){const n=e;for(;e<t.length&&"|"!==t[e]&&")"!==t[e];)e++;let r=t.substring(n,e);if(r=r.trim(),!F(r,{xmlVersion:this.xmlVersion}))throw new Error(`Invalid notation name: "${r}"`);i.push(r),"|"===t[e]&&(e++,e=V(t,e))}if(")"!==t[e])throw new Error("Unterminated list of notations");e++,s+=" ("+i.join("|")+")"}else{const i=e;for(;e<t.length&&!/\s/.test(t[e]);)e++;s+=t.substring(i,e);const n=["CDATA","ID","IDREF","IDREFS","ENTITY","ENTITIES","NMTOKEN","NMTOKENS"];if(!this.suppressValidationErr&&!n.includes(s.toUpperCase()))throw new Error(`Invalid attribute type: "${s}"`)}e=V(t,e);let o="";return"#REQUIRED"===t.substring(e,e+8).toUpperCase()?(o="#REQUIRED",e+=8):"#IMPLIED"===t.substring(e,e+7).toUpperCase()?(o="#IMPLIED",e+=7):[e,o]=this.readIdentifierVal(t,e,"ATTLIST"),{elementName:n,attributeName:r,attributeType:s,defaultValue:o,index:e}}}const V=(t,e)=>{for(;e<t.length&&/\s/.test(t[e]);)e++;return e};function q(t,e,i){for(let n=0;n<e.length;n++)if(e[n]!==t[i+n+1])return!1;return!0}function F(t,e){if(R(t,{xmlVersion:e}))return t;throw new Error(`Invalid entity name ${t}`)}const U=[48,1632,1776,2406,2534,2662,2790,2918,3046,3174,3302,3430,3558,3664,3792,3872,4160,4240,6112,6160,6470,6608,6784,6800,6992,7088,7232,7248,65296,120782,120792,120802,120812,120822,66720,68912,69734,69872,69942,70096,70384,70736,70864,71248,71360,71472,71904,72016,72688,72784,73040,73120,73552,92768,92864,93008,123200,123632,124144,125264,130032],G=new Map,B=1632,W=new Uint8Array(63904).fill(255);for(const t of U)for(let e=0;e<10;e++){const i=t+e;i<=65535?W[i-B]=e:G.set(i,e)}const X=new Set([8722,65293,65123]),Y=/^[-+]?0x[a-fA-F0-9]+$/,z=/^0b[01]+$/,H=/^0o[0-7]+$/,Q=/^([\-\+])?(0*)([0-9]*(\.[0-9]*)?)$/,J={hex:!0,binary:!1,octal:!1,leadingZeros:!0,decimalPoint:".",eNotation:!0,infinity:"original",unicode:!1};function Z(t,e={}){if(e=Object.assign({},J,e),!t||"string"!=typeof t)return t;let i=t.trim();if(0===i.length)return t;if(void 0!==e.skipLike&&e.skipLike.test(i))return t;if("0"===i)return 0;if(e.unicode&&(i=function(t){if("string"!=typeof t)return t;const e=t.length;if(0===e)return t;let i=-1;for(let n=0;n<e;n++){const r=t.charCodeAt(n);if(!(r>=48&&r<=57||45===r))if(r<B){if(X.has(r)){i=n;break}}else if(r>=55296&&r<=56319){if(n+1<e){const e=t.charCodeAt(n+1);if(e>=56320&&e<=57343){const t=65536+(r-55296<<10)+(e-56320);if(G.has(t)){i=n;break}}}}else if(255!==W[r-B]||X.has(r)){i=n;break}}if(-1===i)return t;const n=[];i>0&&n.push(t.slice(0,i));for(let r=i;r<e;r++){const i=t.charCodeAt(r);if(i>=48&&i<=57||45===i){n.push(t[r]);continue}if(i<B){n.push(X.has(i)?"-":t[r]);continue}if(i>=55296&&i<=56319){if(r+1<e){const e=t.charCodeAt(r+1);if(e>=56320&&e<=57343){const t=65536+(i-55296<<10)+(e-56320),s=G.get(t);if(void 0!==s){n.push(String.fromCharCode(s+48)),r++;continue}}}n.push(t[r]);continue}if(X.has(i)){n.push("-");continue}const s=W[i-B];n.push(255!==s?String.fromCharCode(s+48):t[r])}return n.join("")}(i),"0"===i))return 0;if(e.hex&&Y.test(i))return tt(i,16);if(e.binary&&z.test(i))return tt(i,2);if(e.octal&&H.test(i))return tt(i,8);if(isFinite(i)){if(i.includes("e")||i.includes("E"))return function(t,e,i){if(!i.eNotation)return t;const n=e.match(K);if(n){let r=n[1]||"";const s=-1===n[3].indexOf("e")?"E":"e",o=n[2],a=r?t[o.length+1]===s:t[o.length]===s;return o.length>1&&a?t:(1!==o.length||!n[3].startsWith(`.${s}`)&&n[3][0]!==s)&&o.length>0?i.leadingZeros&&!a?(e=(n[1]||"")+n[3],Number(e)):t:Number(e)}return t}(t,i,e);{const r=Q.exec(i);if(r){const s=r[1]||"",o=r[2];let a=(n=r[3])&&-1!==n.indexOf(".")?("."===(n=n.replace(/0+$/,""))?n="0":"."===n[0]?n="0"+n:"."===n[n.length-1]&&(n=n.substring(0,n.length-1)),n):n;const l=s?"."===t[o.length+1]:"."===t[o.length];if(!e.leadingZeros&&(o.length>1||1===o.length&&!l))return t;{const n=Number(i),r=String(n);if(0===n)return n;if(-1!==r.search(/[eE]/))return e.eNotation?n:t;if(-1!==i.indexOf("."))return"0"===r||r===a||r===`${s}${a}`?n:t;let l=o?a:i;return o?l===r||s+l===r?n:t:l===r||l===s+r?n:t}}return t}}var n;return function(t,e,i){const n=e===1/0;switch(i.infinity.toLowerCase()){case"null":return null;case"infinity":return e;case"string":return n?"Infinity":"-Infinity";default:return t}}(t,Number(i),e)}const K=/^([-+])?(0*)(\d*(\.\d*)?[eE][-\+]?\d+)$/;function tt(t,e){const i=t.trim();if(2!==e&&8!==e||(t=i.substring(2)),parseInt)return parseInt(t,e);if(Number.parseInt)return Number.parseInt(t,e);if(window&&window.parseInt)return window.parseInt(t,e);throw new Error("parseInt, Number.parseInt, window.parseInt are not supported")}class et{constructor(t){this._matcher=t}get separator(){return this._matcher.separator}getCurrentTag(){const t=this._matcher.path;return t.length>0?t[t.length-1].tag:void 0}getCurrentNamespace(){const t=this._matcher.path;return t.length>0?t[t.length-1].namespace:void 0}getAttrValue(t){const e=this._matcher.path;if(0!==e.length)return e[e.length-1].values?.[t]}hasAttr(t){const e=this._matcher.path;if(0===e.length)return!1;const i=e[e.length-1];return void 0!==i.values&&t in i.values}getPosition(){const t=this._matcher.path;return 0===t.length?-1:t[t.length-1].position??0}getCounter(){const t=this._matcher.path;return 0===t.length?-1:t[t.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this._matcher.path.length}toString(t,e=!0){return this._matcher.toString(t,e)}toArray(){return this._matcher.path.map(t=>t.tag)}matches(t){return this._matcher.matches(t)}matchesAny(t){return t.matchesAny(this._matcher)}}class it{constructor(t={}){this.separator=t.separator||".",this.path=[],this.siblingStacks=[],this._pathStringCache=null,this._view=new et(this)}push(t,e=null,i=null){this._pathStringCache=null,this.path.length>0&&(this.path[this.path.length-1].values=void 0);const n=this.path.length;this.siblingStacks[n]||(this.siblingStacks[n]=new Map);const r=this.siblingStacks[n],s=i?`${i}:${t}`:t,o=r.get(s)||0;let a=0;for(const t of r.values())a+=t;r.set(s,o+1);const l={tag:t,position:a,counter:o};null!=i&&(l.namespace=i),null!=e&&(l.values=e),this.path.push(l)}pop(){if(0===this.path.length)return;this._pathStringCache=null;const t=this.path.pop();return this.siblingStacks.length>this.path.length+1&&(this.siblingStacks.length=this.path.length+1),t}updateCurrent(t){if(this.path.length>0){const e=this.path[this.path.length-1];null!=t&&(e.values=t)}}getCurrentTag(){return this.path.length>0?this.path[this.path.length-1].tag:void 0}getCurrentNamespace(){return this.path.length>0?this.path[this.path.length-1].namespace:void 0}getAttrValue(t){if(0!==this.path.length)return this.path[this.path.length-1].values?.[t]}hasAttr(t){if(0===this.path.length)return!1;const e=this.path[this.path.length-1];return void 0!==e.values&&t in e.values}getPosition(){return 0===this.path.length?-1:this.path[this.path.length-1].position??0}getCounter(){return 0===this.path.length?-1:this.path[this.path.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this.path.length}toString(t,e=!0){const i=t||this.separator;if(i===this.separator&&!0===e){if(null!==this._pathStringCache)return this._pathStringCache;const t=this.path.map(t=>t.namespace?`${t.namespace}:${t.tag}`:t.tag).join(i);return this._pathStringCache=t,t}return this.path.map(t=>e&&t.namespace?`${t.namespace}:${t.tag}`:t.tag).join(i)}toArray(){return this.path.map(t=>t.tag)}reset(){this._pathStringCache=null,this.path=[],this.siblingStacks=[]}matches(t){const e=t.segments;return 0!==e.length&&(t.hasDeepWildcard()?this._matchWithDeepWildcard(e):this._matchSimple(e))}_matchSimple(t){if(this.path.length!==t.length)return!1;for(let e=0;e<t.length;e++)if(!this._matchSegment(t[e],this.path[e],e===this.path.length-1))return!1;return!0}_matchWithDeepWildcard(t){let e=this.path.length-1,i=t.length-1;for(;i>=0&&e>=0;){const n=t[i];if("deep-wildcard"===n.type){if(i--,i<0)return!0;const n=t[i];let r=!1;for(let t=e;t>=0;t--)if(this._matchSegment(n,this.path[t],t===this.path.length-1)){e=t-1,i--,r=!0;break}if(!r)return!1}else{if(!this._matchSegment(n,this.path[e],e===this.path.length-1))return!1;e--,i--}}return i<0}_matchSegment(t,e,i){if("*"!==t.tag&&t.tag!==e.tag)return!1;if(void 0!==t.namespace&&"*"!==t.namespace&&t.namespace!==e.namespace)return!1;if(void 0!==t.attrName){if(!i)return!1;if(!e.values||!(t.attrName in e.values))return!1;if(void 0!==t.attrValue&&String(e.values[t.attrName])!==String(t.attrValue))return!1}if(void 0!==t.position){if(!i)return!1;const n=e.counter??0;if("first"===t.position&&0!==n)return!1;if("odd"===t.position&&n%2!=1)return!1;if("even"===t.position&&n%2!=0)return!1;if("nth"===t.position&&n!==t.positionValue)return!1}return!0}matchesAny(t){return t.matchesAny(this)}snapshot(){return{path:this.path.map(t=>({...t})),siblingStacks:this.siblingStacks.map(t=>new Map(t))}}restore(t){this._pathStringCache=null,this.path=t.path.map(t=>({...t})),this.siblingStacks=t.siblingStacks.map(t=>new Map(t))}readOnly(){return this._view}}class nt{constructor(t,e={},i){this.pattern=t,this.separator=e.separator||".",this.segments=this._parse(t),this.data=i,this._hasDeepWildcard=this.segments.some(t=>"deep-wildcard"===t.type),this._hasAttributeCondition=this.segments.some(t=>void 0!==t.attrName),this._hasPositionSelector=this.segments.some(t=>void 0!==t.position)}_parse(t){const e=[];let i=0,n="";for(;i<t.length;)t[i]===this.separator?i+1<t.length&&t[i+1]===this.separator?(n.trim()&&(e.push(this._parseSegment(n.trim())),n=""),e.push({type:"deep-wildcard"}),i+=2):(n.trim()&&e.push(this._parseSegment(n.trim())),n="",i++):(n+=t[i],i++);return n.trim()&&e.push(this._parseSegment(n.trim())),e}_parseSegment(t){const e={type:"tag"};let i=null,n=t;const r=t.match(/^([^\[]+)(\[[^\]]*\])(.*)$/);if(r&&(n=r[1]+r[3],r[2])){const t=r[2].slice(1,-1);t&&(i=t)}let s,o,a=n;if(n.includes("::")){const e=n.indexOf("::");if(s=n.substring(0,e).trim(),a=n.substring(e+2).trim(),!s)throw new Error(`Invalid namespace in pattern: ${t}`)}let l=null;if(a.includes(":")){const t=a.lastIndexOf(":"),e=a.substring(0,t).trim(),i=a.substring(t+1).trim();["first","last","odd","even"].includes(i)||/^nth\(\d+\)$/.test(i)?(o=e,l=i):o=a}else o=a;if(!o)throw new Error(`Invalid segment pattern: ${t}`);if(e.tag=o,s&&(e.namespace=s),i)if(i.includes("=")){const t=i.indexOf("=");e.attrName=i.substring(0,t).trim(),e.attrValue=i.substring(t+1).trim()}else e.attrName=i.trim();if(l){const t=l.match(/^nth\((\d+)\)$/);t?(e.position="nth",e.positionValue=parseInt(t[1],10)):e.position=l}return e}get length(){return this.segments.length}hasDeepWildcard(){return this._hasDeepWildcard}hasAttributeCondition(){return this._hasAttributeCondition}hasPositionSelector(){return this._hasPositionSelector}toString(){return this.pattern}}class rt{constructor(){this._byDepthAndTag=new Map,this._wildcardByDepth=new Map,this._deepWildcards=[],this._patterns=new Set,this._sealed=!1}add(t){if(this._sealed)throw new TypeError("ExpressionSet is sealed. Create a new ExpressionSet to add more expressions.");if(this._patterns.has(t.pattern))return this;if(this._patterns.add(t.pattern),t.hasDeepWildcard())return this._deepWildcards.push(t),this;const e=t.length,i=t.segments[t.segments.length-1],n=i?.tag;if(n&&"*"!==n){const i=`${e}:${n}`;this._byDepthAndTag.has(i)||this._byDepthAndTag.set(i,[]),this._byDepthAndTag.get(i).push(t)}else this._wildcardByDepth.has(e)||this._wildcardByDepth.set(e,[]),this._wildcardByDepth.get(e).push(t);return this}addAll(t){for(const e of t)this.add(e);return this}has(t){return this._patterns.has(t.pattern)}get size(){return this._patterns.size}seal(){return this._sealed=!0,this}get isSealed(){return this._sealed}matchesAny(t){return null!==this.findMatch(t)}findMatch(t){const e=t.getDepth(),i=`${e}:${t.getCurrentTag()}`,n=this._byDepthAndTag.get(i);if(n)for(let e=0;e<n.length;e++)if(t.matches(n[e]))return n[e];const r=this._wildcardByDepth.get(e);if(r)for(let e=0;e<r.length;e++)if(t.matches(r[e]))return r[e];for(let e=0;e<this._deepWildcards.length;e++)if(t.matches(this._deepWildcards[e]))return this._deepWildcards[e];return null}}const st={cent:"¢",pound:"£",curren:"¤",yen:"¥",euro:"€",dollar:"$",fnof:"ƒ",inr:"₹",af:"؋",birr:"ብር",peso:"₱",rub:"₽",won:"₩",yuan:"¥",cedil:"¸"},ot={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'},at={nbsp:" ",copy:"©",reg:"®",trade:"™",mdash:"—",ndash:"–",hellip:"…",laquo:"«",raquo:"»",lsquo:"‘",rsquo:"’",ldquo:"“",rdquo:"”",bull:"•",para:"¶",sect:"§",deg:"°",frac12:"½",frac14:"¼",frac34:"¾"},lt=Object.freeze({ALLOW:"allow",BLOCK:"block",THROW:"throw"}),pt=new Set("!?\\\\/[]$%{}^&*()<>|+");function ct(t){if("#"===t[0])throw new Error(`[EntityReplacer] Invalid character '#' in entity name: "${t}"`);for(const e of t)if(pt.has(e))throw new Error(`[EntityReplacer] Invalid character '${e}' in entity name: "${t}"`);return t}function ht(...t){const e=Object.create(null);for(const i of t)if(i)for(const t of Object.keys(i)){const n=i[t];if("string"==typeof n)e[t]=n;else if(n&&"object"==typeof n&&void 0!==n.val){const i=n.val;"string"==typeof i&&(e[t]=i)}}return e}const dt="external",ut="base",ft="all",gt=Object.freeze({allow:0,leave:1,remove:2,throw:3}),mt=new Set([9,10,13]);class xt{constructor(t={}){var e;this._limit=t.limit||{},this._maxTotalExpansions=this._limit.maxTotalExpansions||0,this._maxExpandedLength=this._limit.maxExpandedLength||0,this._postCheck="function"==typeof t.postCheck?t.postCheck:t=>t,this._limitTiers=(e=this._limit.applyLimitsTo??dt)&&e!==dt?e===ft?new Set([ft]):e===ut?new Set([ut]):Array.isArray(e)?new Set(e):new Set([dt]):new Set([dt]),this._numericAllowed=t.numericAllowed??!0,this._baseMap=ht(ot,t.namedEntities||null),this._externalMap=Object.create(null),this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this._removeSet=new Set(t.remove&&Array.isArray(t.remove)?t.remove:[]),this._leaveSet=new Set(t.leave&&Array.isArray(t.leave)?t.leave:[]);const i=function(t){if(!t)return{xmlVersion:1,onLevel:gt.allow,nullLevel:gt.remove};const e=1.1===t.xmlVersion?1.1:1,i=gt[t.onNCR]??gt.allow,n=gt[t.nullNCR]??gt.remove;return{xmlVersion:e,onLevel:i,nullLevel:Math.max(n,gt.remove)}}(t.ncr);this._ncrXmlVersion=i.xmlVersion,this._ncrOnLevel=i.onLevel,this._ncrNullLevel=i.nullLevel,this._onExternalEntity="function"==typeof t.onExternalEntity?t.onExternalEntity:null,this._onInputEntity="function"==typeof t.onInputEntity?t.onInputEntity:null}_applyRegistrationHook(t,e,i,n){if(!t)return!0;const r=t(e,i);if(r===lt.BLOCK)return!1;if(r===lt.THROW)throw new Error(`[EntityDecoder] Registration of ${n} entity "&${e};" was rejected by hook`);return!0}setExternalEntities(t){if(t)for(const e of Object.keys(t))ct(e);if(!this._onExternalEntity)return void(this._externalMap=ht(t));const e=ht(t),i=Object.create(null);for(const[t,n]of Object.entries(e))this._applyRegistrationHook(this._onExternalEntity,t,n,"external")&&(i[t]=n);this._externalMap=i}addExternalEntity(t,e){ct(t),"string"==typeof e&&-1===e.indexOf("&")&&this._applyRegistrationHook(this._onExternalEntity,t,e,"external")&&(this._externalMap[t]=e)}addInputEntities(t){if(this._totalExpansions=0,this._expandedLength=0,!this._onInputEntity)return void(this._inputMap=ht(t));const e=ht(t),i=Object.create(null);for(const[t,n]of Object.entries(e))this._applyRegistrationHook(this._onInputEntity,t,n,"input")&&(i[t]=n);this._inputMap=i}reset(){return this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this}setXmlVersion(t){this._ncrXmlVersion=1.1===t?1.1:1}decode(t){if("string"!=typeof t||0===t.length)return t;if(-1===t.indexOf("&"))return t;const e=t,i=[],n=t.length;let r=0,s=0;const o=this._maxTotalExpansions>0,a=this._maxExpandedLength>0,l=o||a;for(;s<n;){if(38!==t.charCodeAt(s)){s++;continue}let e=s+1;for(;e<n&&59!==t.charCodeAt(e)&&e-s<=32;)e++;if(e>=n||59!==t.charCodeAt(e)){s++;continue}const p=t.slice(s+1,e);if(0===p.length){s++;continue}let c,h;if(this._removeSet.has(p))c="",void 0===h&&(h=dt);else{if(this._leaveSet.has(p)){s++;continue}if(35===p.charCodeAt(0)){const t=this._resolveNCR(p);if(void 0===t){s++;continue}c=t,h=ut}else{const t=this._resolveName(p);c=t?.value,h=t?.tier}}if(void 0!==c){if(s>r&&i.push(t.slice(r,s)),i.push(c),r=e+1,s=r,l&&this._tierCounts(h)){if(o&&(this._totalExpansions++,this._totalExpansions>this._maxTotalExpansions))throw new Error(`[EntityReplacer] Entity expansion count limit exceeded: ${this._totalExpansions} > ${this._maxTotalExpansions}`);if(a){const t=c.length-(p.length+2);if(t>0&&(this._expandedLength+=t,this._expandedLength>this._maxExpandedLength))throw new Error(`[EntityReplacer] Expanded content length limit exceeded: ${this._expandedLength} > ${this._maxExpandedLength}`)}}}else s++}r<n&&i.push(t.slice(r));const p=0===i.length?t:i.join("");return this._postCheck(p,e)}_tierCounts(t){return!!this._limitTiers.has(ft)||this._limitTiers.has(t)}_resolveName(t){return t in this._inputMap?{value:this._inputMap[t],tier:dt}:t in this._externalMap?{value:this._externalMap[t],tier:dt}:t in this._baseMap?{value:this._baseMap[t],tier:ut}:void 0}_classifyNCR(t){return 0===t?this._ncrNullLevel:t>=55296&&t<=57343||1===this._ncrXmlVersion&&t>=1&&t<=31&&!mt.has(t)?gt.remove:-1}_applyNCRAction(t,e,i){switch(t){case gt.allow:return String.fromCodePoint(i);case gt.remove:return"";case gt.leave:return;case gt.throw:throw new Error(`[EntityDecoder] Prohibited numeric character reference &${e}; (U+${i.toString(16).toUpperCase().padStart(4,"0")})`);default:return String.fromCodePoint(i)}}_resolveNCR(t){const e=t.charCodeAt(1);let i;if(i=120===e||88===e?parseInt(t.slice(2),16):parseInt(t.slice(1),10),Number.isNaN(i)||i<0||i>1114111)return;const n=this._classifyNCR(i);if(!this._numericAllowed&&n<gt.remove)return;const r=-1===n?this._ncrOnLevel:Math.max(this._ncrOnLevel,n);return this._applyNCRAction(r,t,i)}}const bt=[{id:"sql-block-comment-open",description:"SQL block comment open: /* ... */ — unusual in legitimate user text",pattern:/\/\*/},{id:"sql-union-select",description:"UNION SELECT — most common SQL injection aggregation attack",pattern:/\bUNION\s{1,20}(?:ALL\s{1,20})?SELECT\b/i},{id:"sql-drop-table",description:"DROP TABLE — destructive DDL injection",pattern:/\bDROP\s{1,20}TABLE\b/i},{id:"sql-drop-database",description:"DROP DATABASE — destructive DDL injection",pattern:/\bDROP\s{1,20}DATABASE\b/i},{id:"sql-insert-into",description:"INSERT INTO — data injection",pattern:/\bINSERT\s{1,20}INTO\b/i},{id:"sql-delete-from",description:"DELETE FROM — data deletion injection",pattern:/\bDELETE\s{1,20}FROM\b/i},{id:"sql-update-set",description:"UPDATE ... SET — data modification injection",pattern:/\bUPDATE\b[\s\S]{1,60}\bSET\b/i},{id:"sql-exec-xp",description:"EXEC xp_ — MSSQL extended stored procedure execution",pattern:/\bEXEC(?:UTE)?\s{1,20}xp_/i},{id:"sql-tautology-string",description:'Classic string tautology: \' OR \'1\'=\'1 or " OR "1"="1"',pattern:/'\s{0,10}OR\s{0,10}'[^']{0,20}'\s*=\s*'[^']{0,20}/i},{id:"sql-tautology-numeric",description:"Numeric tautology: OR 1=1",pattern:/\bOR\s{1,10}1\s*=\s*1\b/i},{id:"sql-always-true-zero",description:"Numeric tautology: OR 0=0",pattern:/\bOR\s{1,10}0\s*=\s*0\b/i},{id:"sql-sleep-benchmark",description:"Time-based blind injection: SLEEP() or BENCHMARK()",pattern:/\b(?:SLEEP|BENCHMARK)\s*\(/i},{id:"sql-waitfor-delay",description:"MSSQL time-based blind injection: WAITFOR DELAY",pattern:/\bWAITFOR\s{1,20}DELAY\b/i},{id:"sql-char-function",description:"CHAR() function — used to obfuscate injected strings",pattern:/\bCHAR\s*\(\s*\d{1,3}/i},{id:"sql-information-schema",description:"INFORMATION_SCHEMA — reconnaissance query for table/column enumeration",pattern:/\bINFORMATION_SCHEMA\b/i}],yt="[\"'\\s]*:",Nt={HTML:[{id:"html-script-open",description:"<script opening tag",pattern:/<script[\s>/]/i},{id:"html-script-close",description:"<\/script closing tag",pattern:/<\/script[\s>]/i},{id:"html-javascript-protocol",description:"javascript: URI scheme (with optional whitespace/encoding)",pattern:/j[\t\n\r ]*a[\t\n\r ]*v[\t\n\r ]*a[\t\n\r ]*s[\t\n\r ]*c[\t\n\r ]*r[\t\n\r ]*i[\t\n\r ]*p[\t\n\r ]*t[\t\n\r ]*:/i},{id:"html-vbscript-protocol",description:"vbscript: URI scheme",pattern:/vbscript[\t\n\r ]*:/i},{id:"html-data-html",description:"data:text/html URI — can execute scripts in browsers",pattern:/data[\t\n\r ]*:[\t\n\r ]*text\/html/i},{id:"html-data-xhtml",description:"data:application/xhtml+xml URI",pattern:/data[\t\n\r ]*:[\t\n\r ]*application\/xhtml/i},{id:"html-data-svg",description:"data:image/svg+xml URI — can execute scripts",pattern:/data[\t\n\r ]*:[\t\n\r ]*image\/svg\+xml/i},{id:"html-inline-event-handler",description:"Inline event handler attributes: onclick=, onerror=, onload=, etc.",pattern:/\bon\w{1,30}\s*=/i},{id:"html-entity-obfuscated-script",description:"HTML-entity-encoded <script (e.g. &#x3C;script or &lt;script)",pattern:/(?:&#x0*3[Cc];?|&#0*60;?|&lt;)\s*script/i},{id:"html-entity-obfuscated-javascript",description:'HTML-entity-encoded javascript: (partial — catches common &#106; or &#x6a; for "j")',pattern:/(?:&#x0*6[Aa];?|&#0*106;?)\s*(?:&#x0*61;?|a)[\s\S]{0,80}script\s*:/i},{id:"html-style-expression",description:"CSS expression() — IE-era code execution in style attributes",pattern:/style[\s\S]{0,20}expression\s*\(/i},{id:"html-object-embed",description:"<object or <embed tags that can load active content",pattern:/<(?:object|embed)[\s>/]/i},{id:"html-base-tag",description:"<base href= — can hijack all relative URLs on a page",pattern:/<base[\s>]/i},{id:"html-meta-refresh",description:'<meta http-equiv="refresh" — can redirect users',pattern:/<meta[\s\S]{0,40}http-equiv[\s\S]{0,20}refresh/i},{id:"html-srcdoc",description:"srcdoc= attribute on iframes — embeds HTML that can run scripts",pattern:/srcdoc\s*=/i},{id:"html-iframe",description:"<iframe tag",pattern:/<iframe[\s>/]/i},{id:"html-form",description:"<form tag — can be used for phishing / credential harvesting injection",pattern:/<form[\s>/]/i}],XML:[{id:"xml-cdata-injection",description:"CDATA section injection: <![CDATA[ breaks out of text node context",pattern:/<!\[CDATA\[/i},{id:"xml-cdata-close",description:"CDATA close sequence: ]]> can terminate an enclosing CDATA section",pattern:/\]\]>/},{id:"xml-processing-instruction",description:"XML processing instruction: <?xml-stylesheet or <?php etc.",pattern:/<\?(?:xml[\- ]|php|asp)/i},{id:"xml-doctype-injection",description:"DOCTYPE declaration embedded in content — can define entities",pattern:/<!DOCTYPE(?:[\s[]|$)/i},{id:"xml-entity-system",description:"SYSTEM keyword — used in external entity declarations (XXE)",pattern:/\bSYSTEM\s+["']/i},{id:"xml-entity-public",description:"PUBLIC keyword — used in external entity declarations (XXE)",pattern:/\bPUBLIC\s+["']/i},{id:"xml-entity-declaration",description:"<!ENTITY declaration — defines entities, potential XXE or entity expansion",pattern:/<!ENTITY[\s%]/i},{id:"xml-billion-laughs",description:"Entity reference chaining / billion laughs: repeated &eX; style references",pattern:/(?:&\w{1,20};){3,}/},{id:"xml-namespace-confusion",description:"xmlns: attribute injection — can redefine namespaces to confuse parsers",pattern:/\bxmlns\s*(?::\w{1,40})?\s*=/i},{id:"xml-comment-injection",description:"\x3c!-- comment injection — can hide content from some parsers",pattern:/<!--/},{id:"xml-comment-close",description:"--\x3e closes an enclosing XML comment",pattern:/-->/},{id:"xml-pi-close",description:"?> closes an enclosing processing instruction",pattern:/\?>/}],SVG:[{id:"svg-script-element",description:"<script element inside SVG executes JavaScript",pattern:/<script[\s>/]/i},{id:"svg-xlink-href-javascript",description:"xlink:href with javascript: — classic SVG XSS via <a> or <use>",pattern:/xlink\s*:\s*href\s*=\s*["']?\s*javascript\s*:/i},{id:"svg-href-javascript",description:"href= with javascript: in SVG context (<a>, <animate>, etc.)",pattern:/href\s*=\s*["']?\s*javascript\s*:/i},{id:"svg-foreignobject",description:"<foreignObject embeds HTML inside SVG — can execute scripts",pattern:/<foreignObject[\s>/]/i},{id:"svg-use-external",description:"<use xlink:href or href pointing to external resource (non-fragment URL)",pattern:/<use[\s\S]{0,60}(?:xlink\s*:\s*)?href\s*=\s*(?:["'][^#]|[^"'#\s>])/i},{id:"svg-animate-href",description:'<animate attributeName="href" — can dynamically change href to javascript:',pattern:/<animate[\s\S]{0,80}attributeName\s*=\s*["'][\s]*href["']/i},{id:"svg-animate-xlinkhref",description:'<animate attributeName="xlink:href"',pattern:/<animate[\s\S]{0,80}attributeName\s*=\s*["'][\s]*xlink\s*:\s*href["']/i},{id:"svg-set-javascript",description:'<set to="javascript:..." — sets an attribute to a javascript: URI',pattern:/<set[\s\S]{0,80}to\s*=\s*["']?\s*javascript\s*:/i},{id:"svg-event-handler",description:"SVG-specific event handler attributes: onload=, onerror=, onactivate=, etc.",pattern:/\bon(?:load|error|activate|begin|end|repeat|focus|blur|click|mouse\w{1,20}|key\w{1,20})\s*=/i},{id:"svg-handler-generic",description:"Generic on* handler catch-all for SVG attributes",pattern:/\bon\w{1,30}\s*=/i},{id:"svg-filter-feimage",description:"<feImage href= — filter primitive that can load external resources",pattern:/<feImage[\s\S]{0,80}(?:xlink\s*:\s*)?href\s*=/i},{id:"svg-image-external",description:"<image xlink:href with http/https or javascript protocol",pattern:/<image[\s\S]{0,80}(?:xlink\s*:\s*)?href\s*=\s*["']?\s*(?:https?|javascript)\s*:/i},{id:"svg-style-javascript",description:"style= attribute containing javascript: (e.g. background:url(javascript:...))",pattern:/style\s*=[\s\S]{0,60}javascript\s*:/i}],SQL:bt,"SQL-STRICT":[...bt,{id:"sql-line-comment",description:"SQL line comment: -- followed by whitespace or end of string",pattern:/--(?:\s|$)/},{id:"sql-stacked-query",description:"Stacked queries: semicolon immediately followed by a SQL keyword",pattern:/;\s{0,10}(?:SELECT|INSERT|UPDATE|DELETE|DROP|CREATE|ALTER|EXEC)\b/i},{id:"sql-hex-encoding",description:"Hex-encoded string injection: 0x41414141 style (MySQL)",pattern:/\b0x[0-9a-f]{4,}/i}],SHELL:[{id:"shell-path-traversal-unix",description:"Unix path traversal: ../ — climbing the directory tree",pattern:/\.\.\//},{id:"shell-path-traversal-windows",description:"Windows path traversal: ..\\ — climbing the directory tree",pattern:/\.\.\\/},{id:"shell-path-traversal-encoded",description:"URL-encoded path traversal: %2e%2e or %2f variants",pattern:/%2e%2e|%2f\.\.|\.\.%2f/i},{id:"shell-null-byte",description:"Null byte injection: \\x00 or %00 — truncates strings in C-backed functions",pattern:/\x00|%00/},{id:"shell-semicolon",description:"Semicolon command separator: cmd1; cmd2",pattern:/;/},{id:"shell-pipe",description:"Pipe operator: cmd1 | cmd2",pattern:/\|/},{id:"shell-and-operator",description:"AND operator: cmd1 && cmd2",pattern:/&&/},{id:"shell-or-operator",description:"OR operator: cmd1 || cmd2",pattern:/\|\|/},{id:"shell-backtick",description:"Backtick command substitution: `cmd`",pattern:/`/},{id:"shell-dollar-paren",description:"Dollar-paren command substitution: $(cmd)",pattern:/\$\(/},{id:"shell-dollar-brace",description:"Dollar-brace variable expansion: ${var} — can be abused for injection",pattern:/\$\{/},{id:"shell-redirect-out",description:"Output redirection: cmd > file or cmd >> file",pattern:/>{1,2}/},{id:"shell-redirect-in",description:"Input redirection: cmd < file",pattern:/</},{id:"shell-newline-injection",description:"Newline injection: \\n or \\r — can inject new shell commands",pattern:/[\n\r]/},{id:"shell-glob-star",description:"Glob expansion: * or ? — can expand to unintended files",pattern:/[/\\][*?]/},{id:"shell-absolute-root",description:"Absolute root path injection: string starting with / or \\ (Windows UNC)",pattern:/^(?:\/|\\\\)/},{id:"shell-windows-drive",description:"Windows drive letter path injection: C:\\ or D:/",pattern:/^[a-zA-Z]:[/\\]/},{id:"shell-curl-wget",description:"curl/wget with URL or flags — can exfiltrate data or download payloads",pattern:/\b(?:curl|wget)\s+(?:https?:\/\/|ftp:\/\/|-)/i}],REDOS:[{id:"redos-nested-quantifier-plus",description:"Nested + quantifier inside a group with outer quantifier: (a+)+, (.+b)*, etc.",pattern:/\([^)]*\+[^)]*\)[+*]/},{id:"redos-nested-quantifier-star",description:"Nested * quantifier: (a*)* or (a*)+ — catastrophic backtracking",pattern:/\([^)]*\*[^)]*\)[*+]/},{id:"redos-nested-groups",description:"Doubly nested quantified groups: ((a+)+) — guaranteed catastrophic",pattern:/\(\([^)]{0,40}\)[+*]\)[+*]/},{id:"redos-alternation-overlap",description:"Overlapping alternation under quantifier: (a|a)+ — ambiguous NFA paths",pattern:/\(([^|()]{1,20})\|(?:\1)(?:\|[^|()]{1,20}){0,5}\)[+*?]{1,2}/},{id:"redos-star-plus-concat",description:"(x*x)+ pattern — triggers super-linear backtracking",pattern:/\([^)]{0,10}\*[^)]{0,10}\)[+*]/},{id:"redos-dot-star-greedy",description:"(.*){n,} or (.+){n,} — repeated greedy dot quantifiers",pattern:/\(\.[*+]\)\{?\d/},{id:"redos-large-repetition",description:"Very large fixed or range repetition count {1000,} or {1000,n} — denial of service via backtracking",pattern:/\{\d{4,}(?:,\d*)?\}/},{id:"redos-catastrophic-alternation",description:"Long alternation with many similar branches — polynomial backtracking risk",pattern:/\([^)]{0,200}(?:\|[^|)]{0,50}){9,}\)/}],NOSQL:[{id:"nosql-where-operator",description:"$where — executes arbitrary JavaScript server-side in MongoDB",pattern:new RegExp(`\\$where${yt}`,"i")},{id:"nosql-ne-operator",description:'$ne — "not equal" operator used to bypass equality checks',pattern:new RegExp(`\\$ne${yt}`,"i")},{id:"nosql-gt-operator",description:'$gt — "greater than" used to bypass password/value checks',pattern:new RegExp(`\\$gte?${yt}`,"i")},{id:"nosql-lt-operator",description:'$lt / $lte — "less than" bypass variants',pattern:new RegExp(`\\$lte?${yt}`,"i")},{id:"nosql-regex-operator",description:"$regex — can be used to extract data character by character (blind injection)",pattern:new RegExp(`\\$regex${yt}`,"i")},{id:"nosql-or-operator",description:"$or — logical OR; used to create always-true conditions",pattern:new RegExp(`\\$or${yt}\\s*\\[`,"i")},{id:"nosql-and-operator",description:"$and — logical AND operator injection",pattern:new RegExp(`\\$and${yt}\\s*\\[`,"i")},{id:"nosql-nor-operator",description:"$nor — logical NOR operator injection",pattern:new RegExp(`\\$nor${yt}\\s*\\[`,"i")},{id:"nosql-exists-operator",description:"$exists — can enumerate fields to determine schema",pattern:new RegExp(`\\$exists${yt}`,"i")},{id:"nosql-in-operator",description:"$in — matches any value in a list; can enumerate values",pattern:new RegExp(`\\$in${yt}\\s*\\[`,"i")},{id:"nosql-expr-operator",description:"$expr — allows aggregation expressions in queries (MongoDB 3.6+)",pattern:new RegExp(`\\$expr${yt}`,"i")},{id:"nosql-function-operator",description:"$function — executes arbitrary JavaScript in MongoDB 4.4+",pattern:new RegExp(`\\$function${yt}`,"i")},{id:"nosql-accumulator-operator",description:"$accumulator — custom aggregation with arbitrary JS execution",pattern:new RegExp(`\\$accumulator${yt}`,"i")},{id:"nosql-proto-pollution",description:"__proto__ — prototype pollution via object key injection",pattern:/__proto__/},{id:"nosql-constructor-prototype",description:"constructor.prototype — alternative prototype pollution vector (dot notation or JSON key)",pattern:/constructor[\s"':.,{\[]*prototype/i},{id:"nosql-proto-bracket",description:'["__proto__"] — bracket-notation prototype pollution',pattern:/\[["']__proto__["']\]/}],LOG:[{id:"log-crlf-injection",description:"CRLF injection: literal \\r or \\n embeds fake log lines",pattern:/[\r\n]/},{id:"log-url-encoded-crlf",description:"URL-encoded CRLF: %0d, %0a, %0D, %0A — decoded by some log parsers",pattern:/%0[dDaA]/},{id:"log-unicode-newline",description:"Unicode newline variants: U+2028 (line separator), U+2029 (paragraph separator)",pattern:/[\u2028\u2029]/},{id:"log-log4shell-jndi",description:"Log4Shell: ${jndi:...} triggers remote code execution in Apache Log4j",pattern:/\$\{jndi\s*:/i},{id:"log-log4shell-obfuscated",description:"Obfuscated Log4Shell: ${::-j}... lookup-bypass prefix used to evade WAF detection",pattern:/\$\{::-/},{id:"log-log4j-lookup",description:"Log4j lookup syntax: ${env:...}, ${sys:...}, ${ctx:...} — data exfiltration",pattern:/\$\{(?:env|sys|ctx|main|map|sd|web|docker|k8s|spring)\s*:/i},{id:"log-ssti-double-brace",description:"SSTI double-brace: {{expression}} — Jinja2, Twig, Handlebars, etc.",pattern:/\{\{[\s\S]{0,80}\}\}/},{id:"log-ssti-hash-brace",description:"SSTI hash-brace: #{expression} — Thymeleaf, Velocity, Ruby ERB",pattern:/#\{[\s\S]{0,80}\}/},{id:"log-ssti-dollar-brace",description:"SSTI/EL injection: ${expression with operators or method calls} — JSP EL, Freemarker, SpEL",pattern:/\$\{[^}]*(?:\.|\(|\*|\+|\bclass\b|\bruntime\b|\bprocess\b|\bexec\b)[^}]{0,80}\}/i},{id:"log-ssti-percent-tag",description:"SSTI ERB/ASP tag: <%= expression %> — Ruby ERB, ASP",pattern:/<%=[\s\S]{0,80}%>/},{id:"log-null-byte",description:"Null byte: \\x00 or %00 — can truncate log entries in C-backed loggers",pattern:/\x00|%00/},{id:"log-ansi-escape",description:"ANSI escape sequence: ESC[ — can manipulate terminal output when logs are tailed",pattern:/\x1b\[/}]},Et=Nt,wt=Object.freeze(Object.fromEntries(Object.keys(Nt).map(t=>[t,t])));function vt(t,e){const i=Et[e];for(const n of i)if(n.pattern.test(t))return{context:e,id:n.id,description:n.description,pattern:n.pattern};return null}function St(t,e){if(function(t){if("string"!=typeof t)throw new TypeError("is-unsafe: first argument must be a string, got "+typeof t)}(t),function(t){if(!(t instanceof RegExp))if("string"!=typeof t){if(!Array.isArray(t))throw new TypeError("is-unsafe: second argument must be a context string, array of context strings, or RegExp. Got: "+typeof t);if(0===t.length)throw new TypeError("is-unsafe: context array must not be empty");for(const e of t)if("string"!=typeof e||!Et[e])throw new TypeError(`is-unsafe: unknown context "${e}" in array. Valid contexts: ${Object.keys(wt).join(", ")}`)}else if(!Et[t])throw new TypeError(`is-unsafe: unknown context "${t}". Valid contexts: ${Object.keys(wt).join(", ")}`)}(e),e instanceof RegExp)return e.test(t);if("string"==typeof e)return null!==vt(t,e);for(const i of e)if(null!==vt(t,i))return!0;return!1}function At(t,e){if(!t)return{};const i=e.attributesGroupName?t[e.attributesGroupName]:t;if(!i)return{};const n={};for(const t in i)t.startsWith(e.attributeNamePrefix)?n[t.substring(e.attributeNamePrefix.length)]=i[t]:n[t]=i[t];return n}function Tt(t){if(!t||"string"!=typeof t)return;const e=t.indexOf(":");if(-1!==e&&e>0){const i=t.substring(0,e);if("xmlns"!==i)return i}}class _t{constructor(t,e){var i;this.options=t,this.currentNode=null,this.tagsNodeStack=[],this.parseXml=jt,this.parseTextData=Ct,this.resolveNameSpace=$t,this.buildAttributesMap=Pt,this.isItStopNode=Dt,this.replaceEntitiesValue=kt,this.readStopNodeData=qt,this.saveTextToParentTag=Lt,this.addChild=It,this.ignoreAttributesFn="function"==typeof(i=this.options.ignoreAttributes)?i:Array.isArray(i)?t=>{for(const e of i){if("string"==typeof e&&t===e)return!0;if(e instanceof RegExp&&e.test(t))return!0}}:()=>!1,this.entityExpansionCount=0,this.currentExpandedLength=0;let n={...ot};this.options.entityDecoder?this.entityDecoder=this.options.entityDecoder:("object"==typeof this.options.htmlEntities?n=this.options.htmlEntities:!0===this.options.htmlEntities&&(n={...at,...st}),this.entityDecoder=new xt({namedEntities:{...n,...e},numericAllowed:this.options.htmlEntities,limit:{maxTotalExpansions:this.options.processEntities.maxTotalExpansions,maxExpandedLength:this.options.processEntities.maxExpandedLength,applyLimitsTo:this.options.processEntities.appliesTo},onInputEntity:(t,e)=>St(e,[wt.HTML,wt.XML])?lt.BLOCK:lt.ALLOW})),this.matcher=new it,this.readonlyMatcher=this.matcher.readOnly(),this.isCurrentNodeStopNode=!1,this.stopNodeExpressionsSet=new rt;const r=this.options.stopNodes;if(r&&r.length>0){for(let t=0;t<r.length;t++){const e=r[t];"string"==typeof e?this.stopNodeExpressionsSet.add(new nt(e)):e instanceof nt&&this.stopNodeExpressionsSet.add(e)}this.stopNodeExpressionsSet.seal()}}}function Ct(t,e,i,n,r,s,o){const a=this.options;if(void 0!==t&&(a.trimValues&&!n&&(t=t.trim()),t.length>0)){o||(t=this.replaceEntitiesValue(t,e,i));const n=a.jPath?i.toString():i,l=a.tagValueProcessor(e,t,n,r,s);return null==l?t:typeof l!=typeof t||l!==t?l:a.trimValues||t.trim()===t?Ft(t,a.parseTagValue,a.numberParseOptions):t}}function $t(t){if(this.options.removeNSPrefix){const e=t.split(":"),i="/"===t.charAt(0)?"/":"";if("xmlns"===e[0])return"";2===e.length&&(t=i+e[1])}return t}const Ot=new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])([\\s\\S]*?)\\3)?","gm");function Pt(t,e,i,n=!1){const s=this.options;if(!0===n||!0!==s.ignoreAttributes&&"string"==typeof t){const n=r(t,Ot),o=n.length,a={},l=new Array(o);let p=!1;const c={};for(let t=0;t<o;t++){const e=this.resolveNameSpace(n[t][1]),r=n[t][4];if(e.length&&void 0!==r){let n=r;s.trimValues&&(n=n.trim()),n=this.replaceEntitiesValue(n,i,this.readonlyMatcher),l[t]=n,c[e]=n,p=!0}}p&&"object"==typeof e&&e.updateCurrent&&e.updateCurrent(c);const h=s.jPath?e.toString():this.readonlyMatcher;let d=!1;for(let t=0;t<o;t++){const e=this.resolveNameSpace(n[t][1]);if(this.ignoreAttributesFn(e,h))continue;let i=s.attributeNamePrefix+e;if(e.length)if(s.transformAttributeName&&(i=s.transformAttributeName(i)),i=Gt(i,s),void 0!==n[t][4]){const n=l[t],r=s.attributeValueProcessor(e,n,h);a[i]=null==r?n:typeof r!=typeof n||r!==n?r:Ft(n,s.parseAttributeValue,s.numberParseOptions),d=!0}else s.allowBooleanAttributes&&(a[i]=!0,d=!0)}if(!d)return;if(s.attributesGroupName&&!s.preserveOrder){const t={};return t[s.attributesGroupName]=a,t}return a}}const jt=function(t){t=t.replace(/\r\n?/g,"\n");const e=new O("!xml");let i=e,n="";this.matcher.reset(),this.entityDecoder.reset(),this.entityExpansionCount=0,this.currentExpandedLength=0;const r=this.options,s=new M(r.processEntities),o=t.length;for(let a=0;a<o;a++)if("<"===t[a]){const l=t.charCodeAt(a+1);if(47===l){const e=Rt(t,">",a,"Closing Tag is not closed.");let s=t.substring(a+2,e).trim();if(r.removeNSPrefix){const t=s.indexOf(":");-1!==t&&(s=s.substr(t+1))}s=Ut(r.transformTagName,s,"",r).tagName,i&&(n=this.saveTextToParentTag(n,i,this.readonlyMatcher));const o=this.matcher.getCurrentTag();if(s&&r.unpairedTagsSet.has(s))throw new Error(`Unpaired tag can not be used as closing tag: </${s}>`);o&&r.unpairedTagsSet.has(o)&&(this.matcher.pop(),this.tagsNodeStack.pop()),this.matcher.pop(),this.isCurrentNodeStopNode=!1,i=this.tagsNodeStack.pop(),n="",a=e}else if(63===l){let e=Vt(t,a,!1,"?>");if(!e)throw new Error("Pi Tag is not closed.");n=this.saveTextToParentTag(n,i,this.readonlyMatcher);const o=this.buildAttributesMap(e.tagExp,this.matcher,e.tagName,!0);if(o){const t=o[this.options.attributeNamePrefix+"version"];this.entityDecoder.setXmlVersion(Number(t)||1),s.setXmlVersion(Number(t)||1)}if(r.ignoreDeclaration&&"?xml"===e.tagName||r.ignorePiTags);else{const t=new O(e.tagName);t.add(r.textNodeName,""),e.tagName!==e.tagExp&&e.attrExpPresent&&!0!==r.ignoreAttributes&&(t[":@"]=o),this.addChild(i,t,this.readonlyMatcher,a)}a=e.closeIndex+1}else if(33===l&&45===t.charCodeAt(a+2)&&45===t.charCodeAt(a+3)){const e=Rt(t,"--\x3e",a+4,"Comment is not closed.");if(r.commentPropName){const s=t.substring(a+4,e-2);n=this.saveTextToParentTag(n,i,this.readonlyMatcher),i.add(r.commentPropName,[{[r.textNodeName]:s}])}a=e}else if(33===l&&68===t.charCodeAt(a+2)){const e=s.readDocType(t,a);this.entityDecoder.addInputEntities(e.entities),a=e.i}else if(33===l&&91===t.charCodeAt(a+2)){const e=Rt(t,"]]>",a,"CDATA is not closed.")-2,s=t.substring(a+9,e);n=this.saveTextToParentTag(n,i,this.readonlyMatcher);let o=this.parseTextData(s,i.tagname,this.readonlyMatcher,!0,!1,!0,!0);null==o&&(o=""),r.cdataPropName?i.add(r.cdataPropName,[{[r.textNodeName]:s}]):i.add(r.textNodeName,o),a=e+2}else{let s=Vt(t,a,r.removeNSPrefix);if(!s){const e=t.substring(Math.max(0,a-50),Math.min(o,a+50));throw new Error(`readTagExp returned undefined at position ${a}. Context: "${e}"`)}let l=s.tagName;const p=s.rawTagName;let c=s.tagExp,h=s.attrExpPresent,d=s.closeIndex;if(({tagName:l,tagExp:c}=Ut(r.transformTagName,l,c,r)),r.strictReservedNames&&(l===r.commentPropName||l===r.cdataPropName||l===r.textNodeName||l===r.attributesGroupName))throw new Error(`Invalid tag name: ${l}`);i&&n&&"!xml"!==i.tagname&&(n=this.saveTextToParentTag(n,i,this.readonlyMatcher,!1));const u=i;u&&r.unpairedTagsSet.has(u.tagname)&&(i=this.tagsNodeStack.pop(),this.matcher.pop());let f=!1;c.length>0&&c.lastIndexOf("/")===c.length-1&&(f=!0,"/"===l[l.length-1]?(l=l.substr(0,l.length-1),c=l):c=c.substr(0,c.length-1),h=l!==c);let g,m=null,x={};g=Tt(p),l!==e.tagname&&this.matcher.push(l,{},g),l!==c&&h&&(m=this.buildAttributesMap(c,this.matcher,l),m&&(x=At(m,r))),l!==e.tagname&&(this.isCurrentNodeStopNode=this.isItStopNode());const b=a;if(this.isCurrentNodeStopNode){let e="";if(f)a=s.closeIndex;else if(r.unpairedTagsSet.has(l))a=s.closeIndex;else{const i=this.readStopNodeData(t,p,d+1);if(!i)throw new Error(`Unexpected end of ${p}`);a=i.i,e=i.tagContent}const n=new O(l);m&&(n[":@"]=m),n.add(r.textNodeName,e),this.matcher.pop(),this.isCurrentNodeStopNode=!1,this.addChild(i,n,this.readonlyMatcher,b)}else{if(f){({tagName:l,tagExp:c}=Ut(r.transformTagName,l,c,r));const t=new O(l);m&&(t[":@"]=m),this.addChild(i,t,this.readonlyMatcher,b),this.matcher.pop(),this.isCurrentNodeStopNode=!1}else{if(r.unpairedTagsSet.has(l)){const t=new O(l);m&&(t[":@"]=m),this.addChild(i,t,this.readonlyMatcher,b),this.matcher.pop(),this.isCurrentNodeStopNode=!1,a=s.closeIndex;continue}{const t=new O(l);if(this.tagsNodeStack.length>r.maxNestedTags)throw new Error("Maximum nested tags exceeded");this.tagsNodeStack.push(i),m&&(t[":@"]=m),this.addChild(i,t,this.readonlyMatcher,b),i=t}}n="",a=d}}}else n+=t[a];return e.child};function It(t,e,i,n){this.options.captureMetaData||(n=void 0);const r=this.options.jPath?i.toString():i,s=this.options.updateTag(e.tagname,r,e[":@"]);!1===s||("string"==typeof s?(e.tagname=s,t.addChild(e,n)):t.addChild(e,n))}function kt(t,e,i){const n=this.options.processEntities;if(!n||!n.enabled)return t;if(n.allowedTags){const r=this.options.jPath?i.toString():i;if(!(Array.isArray(n.allowedTags)?n.allowedTags.includes(e):n.allowedTags(e,r)))return t}if(n.tagFilter){const r=this.options.jPath?i.toString():i;if(!n.tagFilter(e,r))return t}return this.entityDecoder.decode(t)}function Lt(t,e,i,n){return t&&(void 0===n&&(n=0===e.child.length),void 0!==(t=this.parseTextData(t,e.tagname,i,!1,!!e[":@"]&&0!==Object.keys(e[":@"]).length,n))&&""!==t&&e.add(this.options.textNodeName,t),t=""),t}function Dt(){return 0!==this.stopNodeExpressionsSet.size&&this.matcher.matchesAny(this.stopNodeExpressionsSet)}function Rt(t,e,i,n){const r=t.indexOf(e,i);if(-1===r)throw new Error(n);return r+e.length-1}function Mt(t,e,i,n){const r=t.indexOf(e,i);if(-1===r)throw new Error(n);return r}function Vt(t,e,i,n=">"){const r=function(t,e,i=">"){let n=0;const r=t.length,s=i.charCodeAt(0),o=i.length>1?i.charCodeAt(1):-1;let a="",l=e;for(let i=e;i<r;i++){const e=t.charCodeAt(i);if(n)e===n&&(n=0);else if(34===e||39===e)n=e;else if(e===s){if(-1===o)return a+=t.substring(l,i),{data:a,index:i};if(t.charCodeAt(i+1)===o)return a+=t.substring(l,i),{data:a,index:i}}else 9!==e||n||(a+=t.substring(l,i)+" ",l=i+1)}}(t,e+1,n);if(!r)return;let s=r.data;const o=r.index,a=s.search(/\s/);let l=s,p=!0;-1!==a&&(l=s.substring(0,a),s=s.substring(a+1).trimStart());const c=l;if(i){const t=l.indexOf(":");-1!==t&&(l=l.substr(t+1),p=l!==r.data.substr(t+1))}return{tagName:l,tagExp:s,closeIndex:o,attrExpPresent:p,rawTagName:c}}function qt(t,e,i){const n=i;let r=1;const s=t.length;for(;i<s;i++)if("<"===t[i]){const s=t.charCodeAt(i+1);if(47===s){const s=Mt(t,">",i,`${e} is not closed`);if(t.substring(i+2,s).trim()===e&&(r--,0===r))return{tagContent:t.substring(n,i),i:s};i=s}else if(63===s)i=Rt(t,"?>",i+1,"StopNode is not closed.");else if(33===s&&45===t.charCodeAt(i+2)&&45===t.charCodeAt(i+3))i=Rt(t,"--\x3e",i+3,"StopNode is not closed.");else if(33===s&&91===t.charCodeAt(i+2))i=Rt(t,"]]>",i,"StopNode is not closed.")-2;else{const n=Vt(t,i,!1);n&&((n&&n.tagName)===e&&"/"!==n.tagExp[n.tagExp.length-1]&&r++,i=n.closeIndex)}}}function Ft(t,e,i){if(e&&"string"==typeof t){const e=t.trim();return"true"===e||"false"!==e&&Z(t,i)}return void 0!==t?t:""}function Ut(t,e,i,n){if(t){const n=t(e);i===e&&(i=n),e=n}return{tagName:e=Gt(e,n),tagExp:i}}function Gt(t,e){if(a.includes(t))throw new Error(`[SECURITY] Invalid name: "${t}" is a reserved JavaScript keyword that could cause prototype pollution`);return o.includes(t)?e.onDangerousProperty(t):t}const Bt=O.getMetaDataSymbol();function Wt(t,e){if(!t||"object"!=typeof t)return{};if(!e)return t;const i={};for(const n in t)n.startsWith(e)?i[n.substring(e.length)]=t[n]:i[n]=t[n];return i}function Xt(t,e,i,n){return Yt(t,e,i,n)}function Yt(t,e,i,n){let r;const s={};for(let o=0;o<t.length;o++){const a=t[o],l=zt(a);if(void 0!==l&&l!==e.textNodeName){const t=Wt(a[":@"]||{},e.attributeNamePrefix);i.push(l,t)}if(l===e.textNodeName)void 0===r?r=a[l]:r+=""+a[l];else{if(void 0===l)continue;if(a[l]){let t=Yt(a[l],e,i,n);const r=Qt(t,e);if(0===Object.keys(t).length&&e.alwaysCreateTextNode&&(t[e.textNodeName]=""),a[":@"]?Ht(t,a[":@"],n,e):1!==Object.keys(t).length||void 0===t[e.textNodeName]||e.alwaysCreateTextNode?0===Object.keys(t).length&&(e.alwaysCreateTextNode?t[e.textNodeName]="":t=""):t=t[e.textNodeName],void 0!==a[Bt]&&"object"==typeof t&&null!==t&&(t[Bt]=a[Bt]),void 0!==s[l]&&Object.prototype.hasOwnProperty.call(s,l))Array.isArray(s[l])||(s[l]=[s[l]]),s[l].push(t);else{const i=e.jPath?n.toString():n;e.isArray(l,i,r)?s[l]=[t]:s[l]=t}void 0!==l&&l!==e.textNodeName&&i.pop()}}}return"string"==typeof r?r.length>0&&(s[e.textNodeName]=r):void 0!==r&&(s[e.textNodeName]=r),s}function zt(t){const e=Object.keys(t);for(let t=0;t<e.length;t++){const i=e[t];if(":@"!==i)return i}}function Ht(t,e,i,n){if(e){const r=Object.keys(e),s=r.length;for(let o=0;o<s;o++){const s=r[o],a=s.startsWith(n.attributeNamePrefix)?s.substring(n.attributeNamePrefix.length):s,l=n.jPath?i.toString()+"."+a:i;n.isArray(s,l,!0,!0)?t[s]=[e[s]]:t[s]=e[s]}}}function Qt(t,e){const{textNodeName:i}=e,n=Object.keys(t).length;return 0===n||!(1!==n||!t[i]&&"boolean"!=typeof t[i]&&0!==t[i])}class Jt{constructor(t){this.externalEntities={},this.options=C(t)}parse(t,e){if("string"!=typeof t&&t.toString)t=t.toString();else if("string"!=typeof t)throw new Error("XML data is accepted in String or Bytes[] form.");if(e){!0===e&&(e={});const i=p(t,e);if(!0!==i)throw Error(`${i.err.msg}:${i.err.line}:${i.err.col}`)}const i=new _t(this.options,this.externalEntities),n=i.parseXml(t);return this.options.preserveOrder||void 0===n?n:Xt(n,this.options,i.matcher,i.readonlyMatcher)}addEntity(t,e){if(-1!==e.indexOf("&"))throw new Error("Entity value can't have '&'");if(-1!==t.indexOf("&")||-1!==t.indexOf(";"))throw new Error("An entity must be set without '&' and ';'. Eg. use '#xD' for '&#xD;'");if("&"===e)throw new Error("An entity with value '&' is not permitted");this.externalEntities[t]=e}static getMetaDataSymbol(){return O.getMetaDataSymbol()}}function Zt(t){return String(t).replace(/--/g,"- -").replace(/--/g,"- -").replace(/-$/,"- ")}function Kt(t){return String(t).replace(/\]\]>/g,"]]]]><![CDATA[>")}function te(t){return String(t).replace(/"/g,"&quot;").replace(/'/g,"&apos;")}function ee(t,e,i,n,r){return i.sanitizeName?R(t,{xmlVersion:r})?t:i.sanitizeName(t,{isAttribute:e,matcher:n.readOnly()}):t}function ie(t,e){let i="";e.format&&(i="\n");const n=[];if(e.stopNodes&&Array.isArray(e.stopNodes))for(let t=0;t<e.stopNodes.length;t++){const i=e.stopNodes[t];"string"==typeof i?n.push(new nt(i)):i instanceof nt&&n.push(i)}const r=function(t,e){if(!Array.isArray(t)||0===t.length)return"1.0";const i=t[0];if("?xml"===ae(i)){const t=i[":@"];if(t){const i=e.attributeNamePrefix+"version";if(t[i])return t[i]}}return"1.0"}(t,e);return ne(t,e,i,new it,n,r)}function ne(t,e,i,n,r,s){let o="",a=!1;if(e.maxNestedTags&&n.getDepth()>e.maxNestedTags)throw new Error("Maximum nested tags exceeded");if(!Array.isArray(t)){if(null!=t){let i=t.toString();return i=ce(i,e),i}return""}for(let l=0;l<t.length;l++){const p=t[l],c=ae(p);if(void 0===c)continue;const h=c===e.textNodeName||c===e.cdataPropName||c===e.commentPropName||"?"===c[0]?c:ee(c,!1,e,n,s),d=re(p[":@"],e);n.push(h,d);const u=pe(n,r);if(h===e.textNodeName){let t=p[c];u||(t=e.tagValueProcessor(h,t),t=ce(t,e)),a&&(o+=i),o+=t,a=!1,n.pop();continue}if(h===e.cdataPropName){a&&(o+=i),o+=`<![CDATA[${Kt(p[c][0][e.textNodeName])}]]>`,a=!1,n.pop();continue}if(h===e.commentPropName){o+=i+`\x3c!--${Zt(p[c][0][e.textNodeName])}--\x3e`,a=!0,n.pop();continue}if("?"===h[0]){o+=("?xml"===h?"":i)+`<${h}${le(p[":@"],e,u,n,s)}?>`,a=!0,n.pop();continue}let f=i;""!==f&&(f+=e.indentBy);const g=i+`<${h}${le(p[":@"],e,u,n,s)}`;let m;m=u?se(p[c],e):ne(p[c],e,f,n,r,s),-1!==e.unpairedTags.indexOf(h)?e.suppressUnpairedNode?o+=g+">":o+=g+"/>":m&&0!==m.length||!e.suppressEmptyNode?m&&m.endsWith(">")?o+=g+`>${m}${i}</${h}>`:(o+=g+">",m&&""!==i&&(m.includes("/>")||m.includes("</"))?o+=i+e.indentBy+m+i:o+=m,o+=`</${h}>`):o+=g+"/>",a=!0,n.pop()}return o}function re(t,e){if(!t||e.ignoreAttributes)return null;const i={};let n=!1;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&(i[r.startsWith(e.attributeNamePrefix)?r.substr(e.attributeNamePrefix.length):r]=te(t[r]),n=!0);return n?i:null}function se(t,e){if(!Array.isArray(t))return null!=t?t.toString():"";let i="";for(let n=0;n<t.length;n++){const r=t[n],s=ae(r);if(s===e.textNodeName)i+=r[s];else if(s===e.cdataPropName)i+=r[s][0][e.textNodeName];else if(s===e.commentPropName)i+=r[s][0][e.textNodeName];else{if(s&&"?"===s[0])continue;if(s){const t=oe(r[":@"],e),n=se(r[s],e);n&&0!==n.length?i+=`<${s}${t}>${n}</${s}>`:i+=`<${s}${t}/>`}}}return i}function oe(t,e){let i="";if(t&&!e.ignoreAttributes)for(let n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;let r=t[n];!0===r&&e.suppressBooleanAttributes?i+=` ${n.substr(e.attributeNamePrefix.length)}`:i+=` ${n.substr(e.attributeNamePrefix.length)}="${te(r)}"`}return i}function ae(t){const e=Object.keys(t);for(let i=0;i<e.length;i++){const n=e[i];if(Object.prototype.hasOwnProperty.call(t,n)&&":@"!==n)return n}}function le(t,e,i,n,r){let s="";if(t&&!e.ignoreAttributes)for(let o in t){if(!Object.prototype.hasOwnProperty.call(t,o))continue;const a=o.substr(e.attributeNamePrefix.length),l=i?a:ee(a,!0,e,n,r);let p;i?p=t[o]:(p=e.attributeValueProcessor(o,t[o]),p=ce(p,e)),!0===p&&e.suppressBooleanAttributes?s+=` ${l}`:s+=` ${l}="${te(p)}"`}return s}function pe(t,e){if(!e||0===e.length)return!1;for(let i=0;i<e.length;i++)if(t.matches(e[i]))return!0;return!1}function ce(t,e){if(t&&t.length>0&&e.processEntities)for(let i=0;i<e.entities.length;i++){const n=e.entities[i];t=t.replace(n.regex,n.val)}return t}const he={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&amp;"},{regex:new RegExp(">","g"),val:"&gt;"},{regex:new RegExp("<","g"),val:"&lt;"},{regex:new RegExp("'","g"),val:"&apos;"},{regex:new RegExp('"',"g"),val:"&quot;"}],processEntities:!0,stopNodes:[],oneListGroup:!1,maxNestedTags:100,jPath:!0,sanitizeName:!1};function de(t){if(this.options=Object.assign({},he,t),this.options.stopNodes&&Array.isArray(this.options.stopNodes)&&(this.options.stopNodes=this.options.stopNodes.map(t=>"string"==typeof t&&t.startsWith("*.")?".."+t.substring(2):t)),this.stopNodeExpressions=[],this.options.stopNodes&&Array.isArray(this.options.stopNodes))for(let t=0;t<this.options.stopNodes.length;t++){const e=this.options.stopNodes[t];"string"==typeof e?this.stopNodeExpressions.push(new nt(e)):e instanceof nt&&this.stopNodeExpressions.push(e)}var e;!0===this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.ignoreAttributesFn="function"==typeof(e=this.options.ignoreAttributes)?e:Array.isArray(e)?t=>{for(const i of e){if("string"==typeof i&&t===i)return!0;if(i instanceof RegExp&&i.test(t))return!0}}:()=>!1,this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=me),this.processTextOrObjNode=fe,this.options.format?(this.indentate=ge,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function ue(t,e,i,n,r){return i.sanitizeName?R(t,{xmlVersion:r})?t:i.sanitizeName(t,{isAttribute:e,matcher:n.readOnly()}):t}function fe(t,e,i,n,r){const s=this.extractAttributes(t);if(n.push(e,s),this.checkStopNode(n)){const r=this.buildRawContent(t),s=this.buildAttributesForStopNode(t);return n.pop(),this.buildObjectNode(r,e,s,i)}const o=this.j2x(t,i+1,n,r);return n.pop(),"?"===e[0]?this.buildTextValNode("",e,o.attrStr,i,n):void 0!==t[this.options.textNodeName]&&1===Object.keys(t).length?this.buildTextValNode(t[this.options.textNodeName],e,o.attrStr,i,n):this.buildObjectNode(o.val,e,o.attrStr,i)}function ge(t){return this.options.indentBy.repeat(t)}function me(t){return!(!t.startsWith(this.options.attributeNamePrefix)||t===this.options.textNodeName)&&t.substr(this.attrPrefixLen)}de.prototype.build=function(t){if(this.options.preserveOrder)return ie(t,this.options);{Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t});const e=new it,i=function(t,e){const i=t["?xml"];if(i&&"object"==typeof i){if(e.attributesGroupName&&i[e.attributesGroupName]){const t=i[e.attributesGroupName][e.attributeNamePrefix+"version"];if(t)return t}const t=i[e.attributeNamePrefix+"version"];if(t)return t}return"1.0"}(t,this.options);return this.j2x(t,0,e,i).val}},de.prototype.j2x=function(t,e,i,n){let r="",s="";if(this.options.maxNestedTags&&i.getDepth()>=this.options.maxNestedTags)throw new Error("Maximum nested tags exceeded");const o=this.options.jPath?i.toString():i,a=this.checkStopNode(i);for(let l in t){if(!Object.prototype.hasOwnProperty.call(t,l))continue;const p=l===this.options.textNodeName||l===this.options.cdataPropName||l===this.options.commentPropName||this.options.attributesGroupName&&l===this.options.attributesGroupName||this.isAttribute(l)||"?"===l[0]?l:ue(l,!1,this.options,i,n);if(void 0===t[l])this.isAttribute(l)&&(s+="");else if(null===t[l])this.isAttribute(l)||p===this.options.cdataPropName||p===this.options.commentPropName?s+="":"?"===p[0]?s+=this.indentate(e)+"<"+p+"?"+this.tagEndChar:s+=this.indentate(e)+"<"+p+"/"+this.tagEndChar;else if(t[l]instanceof Date)s+=this.buildTextValNode(t[l],p,"",e,i);else if("object"!=typeof t[l]){const c=this.isAttribute(l);if(c&&!this.ignoreAttributesFn(c,o)){const e=ue(c,!0,this.options,i,n);r+=this.buildAttrPairStr(e,""+t[l],a)}else if(!c)if(l===this.options.textNodeName){let e=this.options.tagValueProcessor(l,""+t[l]);s+=this.replaceEntitiesValue(e)}else{i.push(p);const n=this.checkStopNode(i);if(i.pop(),n){const i=""+t[l];s+=""===i?this.indentate(e)+"<"+p+this.closeTag(p)+this.tagEndChar:this.indentate(e)+"<"+p+">"+i+"</"+p+this.tagEndChar}else s+=this.buildTextValNode(t[l],p,"",e,i)}}else if(Array.isArray(t[l])){const r=t[l].length;let o="",a="";for(let c=0;c<r;c++){const r=t[l][c];if(void 0===r);else if(null===r)"?"===p[0]?s+=this.indentate(e)+"<"+p+"?"+this.tagEndChar:s+=this.indentate(e)+"<"+p+"/"+this.tagEndChar;else if("object"==typeof r)if(this.options.oneListGroup){i.push(p);const t=this.j2x(r,e+1,i,n);i.pop(),o+=t.val,this.options.attributesGroupName&&r.hasOwnProperty(this.options.attributesGroupName)&&(a+=t.attrStr)}else o+=this.processTextOrObjNode(r,p,e,i,n);else if(this.options.oneListGroup){let t=this.options.tagValueProcessor(p,r);t=this.replaceEntitiesValue(t),o+=t}else{i.push(p);const t=this.checkStopNode(i);if(i.pop(),t){const t=""+r;o+=""===t?this.indentate(e)+"<"+p+this.closeTag(p)+this.tagEndChar:this.indentate(e)+"<"+p+">"+t+"</"+p+this.tagEndChar}else o+=this.buildTextValNode(r,p,"",e,i)}}this.options.oneListGroup&&(o=this.buildObjectNode(o,p,a,e)),s+=o}else if(this.options.attributesGroupName&&l===this.options.attributesGroupName){const e=Object.keys(t[l]),s=e.length;for(let o=0;o<s;o++){const s=ue(e[o],!0,this.options,i,n);r+=this.buildAttrPairStr(s,""+t[l][e[o]],a)}}else s+=this.processTextOrObjNode(t[l],p,e,i,n)}return{attrStr:r,val:s}},de.prototype.buildAttrPairStr=function(t,e,i){return i||(e=this.options.attributeValueProcessor(t,""+e),e=this.replaceEntitiesValue(e)),this.options.suppressBooleanAttributes&&"true"===e?" "+t:" "+t+'="'+te(e)+'"'},de.prototype.extractAttributes=function(t){if(!t||"object"!=typeof t)return null;const e={};let i=!1;if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){const n=t[this.options.attributesGroupName];for(let t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t.startsWith(this.options.attributeNamePrefix)?t.substring(this.options.attributeNamePrefix.length):t]=te(n[t]),i=!0)}else for(let n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;const r=this.isAttribute(n);r&&(e[r]=te(t[n]),i=!0)}return i?e:null},de.prototype.buildRawContent=function(t){if("string"==typeof t)return t;if("object"!=typeof t||null===t)return String(t);if(void 0!==t[this.options.textNodeName])return t[this.options.textNodeName];let e="";for(let i in t){if(!Object.prototype.hasOwnProperty.call(t,i))continue;if(this.isAttribute(i))continue;if(this.options.attributesGroupName&&i===this.options.attributesGroupName)continue;const n=t[i];if(i===this.options.textNodeName)e+=n;else if(Array.isArray(n)){for(let t of n)if("string"==typeof t||"number"==typeof t)e+=`<${i}>${t}</${i}>`;else if("object"==typeof t&&null!==t){const n=this.buildRawContent(t),r=this.buildAttributesForStopNode(t);e+=""===n?`<${i}${r}/>`:`<${i}${r}>${n}</${i}>`}}else if("object"==typeof n&&null!==n){const t=this.buildRawContent(n),r=this.buildAttributesForStopNode(n);e+=""===t?`<${i}${r}/>`:`<${i}${r}>${t}</${i}>`}else e+=`<${i}>${n}</${i}>`}return e},de.prototype.buildAttributesForStopNode=function(t){if(!t||"object"!=typeof t)return"";let e="";if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){const i=t[this.options.attributesGroupName];for(let t in i){if(!Object.prototype.hasOwnProperty.call(i,t))continue;const n=t.startsWith(this.options.attributeNamePrefix)?t.substring(this.options.attributeNamePrefix.length):t,r=i[t];!0===r&&this.options.suppressBooleanAttributes?e+=" "+n:e+=" "+n+'="'+r+'"'}}else for(let i in t){if(!Object.prototype.hasOwnProperty.call(t,i))continue;const n=this.isAttribute(i);if(n){const r=t[i];!0===r&&this.options.suppressBooleanAttributes?e+=" "+n:e+=" "+n+'="'+r+'"'}}return e},de.prototype.buildObjectNode=function(t,e,i,n){if(""===t)return"?"===e[0]?this.indentate(n)+"<"+e+i+"?"+this.tagEndChar:this.indentate(n)+"<"+e+i+this.closeTag(e)+this.tagEndChar;if("?"===e[0])return this.indentate(n)+"<"+e+i+"?"+this.tagEndChar;{let r="</"+e+this.tagEndChar,s="";return"?"===e[0]&&(s="?",r=""),!i&&""!==i||-1!==t.indexOf("<")?!1!==this.options.commentPropName&&e===this.options.commentPropName&&0===s.length?this.indentate(n)+`\x3c!--${t}--\x3e`+this.newLine:this.indentate(n)+"<"+e+i+s+this.tagEndChar+t+this.indentate(n)+r:this.indentate(n)+"<"+e+i+s+">"+t+r}},de.prototype.closeTag=function(t){let e="";return-1!==this.options.unpairedTags.indexOf(t)?this.options.suppressUnpairedNode||(e="/"):e=this.options.suppressEmptyNode?"/":`></${t}`,e},de.prototype.checkStopNode=function(t){if(!this.stopNodeExpressions||0===this.stopNodeExpressions.length)return!1;for(let e=0;e<this.stopNodeExpressions.length;e++)if(t.matches(this.stopNodeExpressions[e]))return!0;return!1},de.prototype.buildTextValNode=function(t,e,i,n,r){if(!1!==this.options.cdataPropName&&e===this.options.cdataPropName){const e=Kt(t);return this.indentate(n)+`<![CDATA[${e}]]>`+this.newLine}if(!1!==this.options.commentPropName&&e===this.options.commentPropName){const e=Zt(t);return this.indentate(n)+`\x3c!--${e}--\x3e`+this.newLine}if("?"===e[0])return this.indentate(n)+"<"+e+i+"?"+this.tagEndChar;{let r=this.options.tagValueProcessor(e,t);return r=this.replaceEntitiesValue(r),""===r?this.indentate(n)+"<"+e+i+this.closeTag(e)+this.tagEndChar:this.indentate(n)+"<"+e+i+">"+r+"</"+e+this.tagEndChar}},de.prototype.replaceEntitiesValue=function(t){if(t&&t.length>0&&this.options.processEntities)for(let e=0;e<this.options.entities.length;e++){const i=this.options.entities[e];t=t.replace(i.regex,i.val)}return t};const xe=de,be={validate:p};module.exports=e})();