@xpack/doxygen2docusaurus 1.0.2

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 (273) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +25 -0
  3. package/bin/doxygen2docusaurus.js +45 -0
  4. package/dist/cli/main.d.ts +10 -0
  5. package/dist/cli/main.d.ts.map +1 -0
  6. package/dist/cli/main.js +66 -0
  7. package/dist/cli/main.js.map +1 -0
  8. package/dist/docusaurus/cli-options.d.ts +98 -0
  9. package/dist/docusaurus/cli-options.d.ts.map +1 -0
  10. package/dist/docusaurus/cli-options.js +212 -0
  11. package/dist/docusaurus/cli-options.js.map +1 -0
  12. package/dist/docusaurus/generator.d.ts +22 -0
  13. package/dist/docusaurus/generator.d.ts.map +1 -0
  14. package/dist/docusaurus/generator.js +461 -0
  15. package/dist/docusaurus/generator.js.map +1 -0
  16. package/dist/docusaurus/renderers/descriptiontype.d.ts +63 -0
  17. package/dist/docusaurus/renderers/descriptiontype.d.ts.map +1 -0
  18. package/dist/docusaurus/renderers/descriptiontype.js +674 -0
  19. package/dist/docusaurus/renderers/descriptiontype.js.map +1 -0
  20. package/dist/docusaurus/renderers/docinternalstype.d.ts +21 -0
  21. package/dist/docusaurus/renderers/docinternalstype.d.ts.map +1 -0
  22. package/dist/docusaurus/renderers/docinternalstype.js +159 -0
  23. package/dist/docusaurus/renderers/docinternalstype.js.map +1 -0
  24. package/dist/docusaurus/renderers/doclisttype.d.ts +6 -0
  25. package/dist/docusaurus/renderers/doclisttype.d.ts.map +1 -0
  26. package/dist/docusaurus/renderers/doclisttype.js +86 -0
  27. package/dist/docusaurus/renderers/doclisttype.js.map +1 -0
  28. package/dist/docusaurus/renderers/doctabletype.d.ts +15 -0
  29. package/dist/docusaurus/renderers/doctabletype.d.ts.map +1 -0
  30. package/dist/docusaurus/renderers/doctabletype.js +98 -0
  31. package/dist/docusaurus/renderers/doctabletype.js.map +1 -0
  32. package/dist/docusaurus/renderers/doctitletype.d.ts +6 -0
  33. package/dist/docusaurus/renderers/doctitletype.d.ts.map +1 -0
  34. package/dist/docusaurus/renderers/doctitletype.js +38 -0
  35. package/dist/docusaurus/renderers/doctitletype.js.map +1 -0
  36. package/dist/docusaurus/renderers/docvariablelisttype.d.ts +9 -0
  37. package/dist/docusaurus/renderers/docvariablelisttype.d.ts.map +1 -0
  38. package/dist/docusaurus/renderers/docvariablelisttype.js +57 -0
  39. package/dist/docusaurus/renderers/docvariablelisttype.js.map +1 -0
  40. package/dist/docusaurus/renderers/docxrefsecttype.d.ts +6 -0
  41. package/dist/docusaurus/renderers/docxrefsecttype.d.ts.map +1 -0
  42. package/dist/docusaurus/renderers/docxrefsecttype.js +44 -0
  43. package/dist/docusaurus/renderers/docxrefsecttype.js.map +1 -0
  44. package/dist/docusaurus/renderers/element-renderer-base.d.ts +12 -0
  45. package/dist/docusaurus/renderers/element-renderer-base.d.ts.map +1 -0
  46. package/dist/docusaurus/renderers/element-renderer-base.js +25 -0
  47. package/dist/docusaurus/renderers/element-renderer-base.js.map +1 -0
  48. package/dist/docusaurus/renderers/inctype.d.ts +6 -0
  49. package/dist/docusaurus/renderers/inctype.d.ts.map +1 -0
  50. package/dist/docusaurus/renderers/inctype.js +42 -0
  51. package/dist/docusaurus/renderers/inctype.js.map +1 -0
  52. package/dist/docusaurus/renderers/linkedtexttype.d.ts +6 -0
  53. package/dist/docusaurus/renderers/linkedtexttype.d.ts.map +1 -0
  54. package/dist/docusaurus/renderers/linkedtexttype.js +32 -0
  55. package/dist/docusaurus/renderers/linkedtexttype.js.map +1 -0
  56. package/dist/docusaurus/renderers/listingtype.d.ts +10 -0
  57. package/dist/docusaurus/renderers/listingtype.d.ts.map +1 -0
  58. package/dist/docusaurus/renderers/listingtype.js +121 -0
  59. package/dist/docusaurus/renderers/listingtype.js.map +1 -0
  60. package/dist/docusaurus/renderers/paramtype.d.ts +6 -0
  61. package/dist/docusaurus/renderers/paramtype.d.ts.map +1 -0
  62. package/dist/docusaurus/renderers/paramtype.js +63 -0
  63. package/dist/docusaurus/renderers/paramtype.js.map +1 -0
  64. package/dist/docusaurus/renderers/referencetype.d.ts +6 -0
  65. package/dist/docusaurus/renderers/referencetype.d.ts.map +1 -0
  66. package/dist/docusaurus/renderers/referencetype.js +42 -0
  67. package/dist/docusaurus/renderers/referencetype.js.map +1 -0
  68. package/dist/docusaurus/renderers/reftexttype.d.ts +6 -0
  69. package/dist/docusaurus/renderers/reftexttype.d.ts.map +1 -0
  70. package/dist/docusaurus/renderers/reftexttype.js +41 -0
  71. package/dist/docusaurus/renderers/reftexttype.js.map +1 -0
  72. package/dist/docusaurus/renderers/reftype.d.ts +6 -0
  73. package/dist/docusaurus/renderers/reftype.d.ts.map +1 -0
  74. package/dist/docusaurus/renderers/reftype.js +38 -0
  75. package/dist/docusaurus/renderers/reftype.js.map +1 -0
  76. package/dist/docusaurus/renderers/renderers.d.ts +33 -0
  77. package/dist/docusaurus/renderers/renderers.d.ts.map +1 -0
  78. package/dist/docusaurus/renderers/renderers.js +303 -0
  79. package/dist/docusaurus/renderers/renderers.js.map +1 -0
  80. package/dist/docusaurus/renderers/substringtype.d.ts +6 -0
  81. package/dist/docusaurus/renderers/substringtype.d.ts.map +1 -0
  82. package/dist/docusaurus/renderers/substringtype.js +24 -0
  83. package/dist/docusaurus/renderers/substringtype.js.map +1 -0
  84. package/dist/docusaurus/renderers/tableofcontentstype.d.ts +6 -0
  85. package/dist/docusaurus/renderers/tableofcontentstype.d.ts.map +1 -0
  86. package/dist/docusaurus/renderers/tableofcontentstype.js +41 -0
  87. package/dist/docusaurus/renderers/tableofcontentstype.js.map +1 -0
  88. package/dist/docusaurus/types.d.ts +53 -0
  89. package/dist/docusaurus/types.d.ts.map +1 -0
  90. package/dist/docusaurus/types.js +13 -0
  91. package/dist/docusaurus/types.js.map +1 -0
  92. package/dist/docusaurus/utils.d.ts +16 -0
  93. package/dist/docusaurus/utils.d.ts.map +1 -0
  94. package/dist/docusaurus/utils.js +169 -0
  95. package/dist/docusaurus/utils.js.map +1 -0
  96. package/dist/docusaurus/view-model/classes-vm.d.ts +35 -0
  97. package/dist/docusaurus/view-model/classes-vm.d.ts.map +1 -0
  98. package/dist/docusaurus/view-model/classes-vm.js +707 -0
  99. package/dist/docusaurus/view-model/classes-vm.js.map +1 -0
  100. package/dist/docusaurus/view-model/collection-base.d.ts +28 -0
  101. package/dist/docusaurus/view-model/collection-base.d.ts.map +1 -0
  102. package/dist/docusaurus/view-model/collection-base.js +155 -0
  103. package/dist/docusaurus/view-model/collection-base.js.map +1 -0
  104. package/dist/docusaurus/view-model/compound-base-vm.d.ts +112 -0
  105. package/dist/docusaurus/view-model/compound-base-vm.d.ts.map +1 -0
  106. package/dist/docusaurus/view-model/compound-base-vm.js +829 -0
  107. package/dist/docusaurus/view-model/compound-base-vm.js.map +1 -0
  108. package/dist/docusaurus/view-model/description-anchors.d.ts +17 -0
  109. package/dist/docusaurus/view-model/description-anchors.d.ts.map +1 -0
  110. package/dist/docusaurus/view-model/description-anchors.js +37 -0
  111. package/dist/docusaurus/view-model/description-anchors.js.map +1 -0
  112. package/dist/docusaurus/view-model/files-and-folders-vm.d.ts +45 -0
  113. package/dist/docusaurus/view-model/files-and-folders-vm.d.ts.map +1 -0
  114. package/dist/docusaurus/view-model/files-and-folders-vm.js +749 -0
  115. package/dist/docusaurus/view-model/files-and-folders-vm.js.map +1 -0
  116. package/dist/docusaurus/view-model/groups-vm.d.ts +20 -0
  117. package/dist/docusaurus/view-model/groups-vm.d.ts.map +1 -0
  118. package/dist/docusaurus/view-model/groups-vm.js +297 -0
  119. package/dist/docusaurus/view-model/groups-vm.js.map +1 -0
  120. package/dist/docusaurus/view-model/members-vm.d.ts +81 -0
  121. package/dist/docusaurus/view-model/members-vm.d.ts.map +1 -0
  122. package/dist/docusaurus/view-model/members-vm.js +1017 -0
  123. package/dist/docusaurus/view-model/members-vm.js.map +1 -0
  124. package/dist/docusaurus/view-model/namespaces-vm.d.ts +24 -0
  125. package/dist/docusaurus/view-model/namespaces-vm.d.ts.map +1 -0
  126. package/dist/docusaurus/view-model/namespaces-vm.js +527 -0
  127. package/dist/docusaurus/view-model/namespaces-vm.js.map +1 -0
  128. package/dist/docusaurus/view-model/options.d.ts +8 -0
  129. package/dist/docusaurus/view-model/options.d.ts.map +1 -0
  130. package/dist/docusaurus/view-model/options.js +42 -0
  131. package/dist/docusaurus/view-model/options.js.map +1 -0
  132. package/dist/docusaurus/view-model/pages-vm.d.ts +18 -0
  133. package/dist/docusaurus/view-model/pages-vm.d.ts.map +1 -0
  134. package/dist/docusaurus/view-model/pages-vm.js +160 -0
  135. package/dist/docusaurus/view-model/pages-vm.js.map +1 -0
  136. package/dist/docusaurus/view-model/tree-entries-vm.d.ts +44 -0
  137. package/dist/docusaurus/view-model/tree-entries-vm.d.ts.map +1 -0
  138. package/dist/docusaurus/view-model/tree-entries-vm.js +139 -0
  139. package/dist/docusaurus/view-model/tree-entries-vm.js.map +1 -0
  140. package/dist/docusaurus/view-model/view-model.d.ts +34 -0
  141. package/dist/docusaurus/view-model/view-model.d.ts.map +1 -0
  142. package/dist/docusaurus/view-model/view-model.js +284 -0
  143. package/dist/docusaurus/view-model/view-model.js.map +1 -0
  144. package/dist/docusaurus/workspace.d.ts +65 -0
  145. package/dist/docusaurus/workspace.d.ts.map +1 -0
  146. package/dist/docusaurus/workspace.js +350 -0
  147. package/dist/docusaurus/workspace.js.map +1 -0
  148. package/dist/doxygen/data-model/compounds/compounddef-dm.d.ts +97 -0
  149. package/dist/doxygen/data-model/compounds/compounddef-dm.d.ts.map +1 -0
  150. package/dist/doxygen/data-model/compounds/compounddef-dm.js +498 -0
  151. package/dist/doxygen/data-model/compounds/compounddef-dm.js.map +1 -0
  152. package/dist/doxygen/data-model/compounds/compoundreftype-dm.d.ts +27 -0
  153. package/dist/doxygen/data-model/compounds/compoundreftype-dm.d.ts.map +1 -0
  154. package/dist/doxygen/data-model/compounds/compoundreftype-dm.js +91 -0
  155. package/dist/doxygen/data-model/compounds/compoundreftype-dm.js.map +1 -0
  156. package/dist/doxygen/data-model/compounds/descriptiontype-dm.d.ts +1214 -0
  157. package/dist/doxygen/data-model/compounds/descriptiontype-dm.d.ts.map +1 -0
  158. package/dist/doxygen/data-model/compounds/descriptiontype-dm.js +5995 -0
  159. package/dist/doxygen/data-model/compounds/descriptiontype-dm.js.map +1 -0
  160. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.d.ts +22 -0
  161. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.d.ts.map +1 -0
  162. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.js +136 -0
  163. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.js.map +1 -0
  164. package/dist/doxygen/data-model/compounds/doxygentype-dm.d.ts +14 -0
  165. package/dist/doxygen/data-model/compounds/doxygentype-dm.d.ts.map +1 -0
  166. package/dist/doxygen/data-model/compounds/doxygentype-dm.js +87 -0
  167. package/dist/doxygen/data-model/compounds/doxygentype-dm.js.map +1 -0
  168. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.d.ts +23 -0
  169. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.d.ts.map +1 -0
  170. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.js +104 -0
  171. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.js.map +1 -0
  172. package/dist/doxygen/data-model/compounds/inctype-dm.d.ts +24 -0
  173. package/dist/doxygen/data-model/compounds/inctype-dm.d.ts.map +1 -0
  174. package/dist/doxygen/data-model/compounds/inctype-dm.js +84 -0
  175. package/dist/doxygen/data-model/compounds/inctype-dm.js.map +1 -0
  176. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.d.ts +33 -0
  177. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.d.ts.map +1 -0
  178. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.js +102 -0
  179. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.js.map +1 -0
  180. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.d.ts +17 -0
  181. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.d.ts.map +1 -0
  182. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.js +69 -0
  183. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.js.map +1 -0
  184. package/dist/doxygen/data-model/compounds/locationtype-dm.d.ts +24 -0
  185. package/dist/doxygen/data-model/compounds/locationtype-dm.d.ts.map +1 -0
  186. package/dist/doxygen/data-model/compounds/locationtype-dm.js +109 -0
  187. package/dist/doxygen/data-model/compounds/locationtype-dm.js.map +1 -0
  188. package/dist/doxygen/data-model/compounds/memberdeftype-dm.d.ts +67 -0
  189. package/dist/doxygen/data-model/compounds/memberdeftype-dm.d.ts.map +1 -0
  190. package/dist/doxygen/data-model/compounds/memberdeftype-dm.js +253 -0
  191. package/dist/doxygen/data-model/compounds/memberdeftype-dm.js.map +1 -0
  192. package/dist/doxygen/data-model/compounds/memberreftype-dm.d.ts +21 -0
  193. package/dist/doxygen/data-model/compounds/memberreftype-dm.d.ts.map +1 -0
  194. package/dist/doxygen/data-model/compounds/memberreftype-dm.js +105 -0
  195. package/dist/doxygen/data-model/compounds/memberreftype-dm.js.map +1 -0
  196. package/dist/doxygen/data-model/compounds/membertype-dm.d.ts +17 -0
  197. package/dist/doxygen/data-model/compounds/membertype-dm.d.ts.map +1 -0
  198. package/dist/doxygen/data-model/compounds/membertype-dm.js +87 -0
  199. package/dist/doxygen/data-model/compounds/membertype-dm.js.map +1 -0
  200. package/dist/doxygen/data-model/compounds/paramtype-dm.d.ts +25 -0
  201. package/dist/doxygen/data-model/compounds/paramtype-dm.d.ts.map +1 -0
  202. package/dist/doxygen/data-model/compounds/paramtype-dm.js +115 -0
  203. package/dist/doxygen/data-model/compounds/paramtype-dm.js.map +1 -0
  204. package/dist/doxygen/data-model/compounds/referencetype-dm.d.ts +26 -0
  205. package/dist/doxygen/data-model/compounds/referencetype-dm.d.ts.map +1 -0
  206. package/dist/doxygen/data-model/compounds/referencetype-dm.js +93 -0
  207. package/dist/doxygen/data-model/compounds/referencetype-dm.js.map +1 -0
  208. package/dist/doxygen/data-model/compounds/reftexttype-dm.d.ts +15 -0
  209. package/dist/doxygen/data-model/compounds/reftexttype-dm.d.ts.map +1 -0
  210. package/dist/doxygen/data-model/compounds/reftexttype-dm.js +80 -0
  211. package/dist/doxygen/data-model/compounds/reftexttype-dm.js.map +1 -0
  212. package/dist/doxygen/data-model/compounds/reftype-dm.d.ts +55 -0
  213. package/dist/doxygen/data-model/compounds/reftype-dm.d.ts.map +1 -0
  214. package/dist/doxygen/data-model/compounds/reftype-dm.js +152 -0
  215. package/dist/doxygen/data-model/compounds/reftype-dm.js.map +1 -0
  216. package/dist/doxygen/data-model/compounds/reimplementtype-dm.d.ts +20 -0
  217. package/dist/doxygen/data-model/compounds/reimplementtype-dm.d.ts.map +1 -0
  218. package/dist/doxygen/data-model/compounds/reimplementtype-dm.js +77 -0
  219. package/dist/doxygen/data-model/compounds/reimplementtype-dm.js.map +1 -0
  220. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.d.ts +34 -0
  221. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.d.ts.map +1 -0
  222. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.js +139 -0
  223. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.js.map +1 -0
  224. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.d.ts +46 -0
  225. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.d.ts.map +1 -0
  226. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.js +235 -0
  227. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.js.map +1 -0
  228. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.d.ts +17 -0
  229. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.d.ts.map +1 -0
  230. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.js +69 -0
  231. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.js.map +1 -0
  232. package/dist/doxygen/data-model/data-model.d.ts +91 -0
  233. package/dist/doxygen/data-model/data-model.d.ts.map +1 -0
  234. package/dist/doxygen/data-model/data-model.js +245 -0
  235. package/dist/doxygen/data-model/data-model.js.map +1 -0
  236. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.d.ts +21 -0
  237. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.d.ts.map +1 -0
  238. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.js +95 -0
  239. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.js.map +1 -0
  240. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.d.ts +20 -0
  241. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.d.ts.map +1 -0
  242. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.js +92 -0
  243. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.js.map +1 -0
  244. package/dist/doxygen/data-model/doxygen-xml-parser.d.ts +261 -0
  245. package/dist/doxygen/data-model/doxygen-xml-parser.d.ts.map +1 -0
  246. package/dist/doxygen/data-model/doxygen-xml-parser.js +459 -0
  247. package/dist/doxygen/data-model/doxygen-xml-parser.js.map +1 -0
  248. package/dist/doxygen/data-model/index/indexcompoundtype-dm.d.ts +21 -0
  249. package/dist/doxygen/data-model/index/indexcompoundtype-dm.d.ts.map +1 -0
  250. package/dist/doxygen/data-model/index/indexcompoundtype-dm.js +96 -0
  251. package/dist/doxygen/data-model/index/indexcompoundtype-dm.js.map +1 -0
  252. package/dist/doxygen/data-model/index/indexdoxygentype-dm.d.ts +20 -0
  253. package/dist/doxygen/data-model/index/indexdoxygentype-dm.d.ts.map +1 -0
  254. package/dist/doxygen/data-model/index/indexdoxygentype-dm.js +93 -0
  255. package/dist/doxygen/data-model/index/indexdoxygentype-dm.js.map +1 -0
  256. package/dist/doxygen/data-model/index/indexmembertype-dm.d.ts +19 -0
  257. package/dist/doxygen/data-model/index/indexmembertype-dm.d.ts.map +1 -0
  258. package/dist/doxygen/data-model/index/indexmembertype-dm.js +89 -0
  259. package/dist/doxygen/data-model/index/indexmembertype-dm.js.map +1 -0
  260. package/dist/doxygen/data-model/types.d.ts +44 -0
  261. package/dist/doxygen/data-model/types.d.ts.map +1 -0
  262. package/dist/doxygen/data-model/types.js +24 -0
  263. package/dist/doxygen/data-model/types.js.map +1 -0
  264. package/dist/index.d.ts +43 -0
  265. package/dist/index.d.ts.map +1 -0
  266. package/dist/index.js +69 -0
  267. package/dist/index.js.map +1 -0
  268. package/dist/tsconfig.tsbuildinfo +1 -0
  269. package/package.json +99 -0
  270. package/template/css/custom.css +908 -0
  271. package/template/img/README.md +3 -0
  272. package/template/img/document-svgrepo-com.svg +5 -0
  273. package/template/img/folder-svgrepo-com.svg +5 -0
@@ -0,0 +1,69 @@
1
+ /*
2
+ * This file is part of the xPack project (http://xpack.github.io).
3
+ * Copyright (c) 2025 Liviu Ionescu. All rights reserved.
4
+ *
5
+ * Permission to use, copy, modify, and/or distribute this software
6
+ * for any purpose is hereby granted, under the terms of the MIT license.
7
+ *
8
+ * If a copy of the license was not distributed with this file, it can
9
+ * be obtained from https://opensource.org/licenses/MIT.
10
+ */
11
+ // ----------------------------------------------------------------------------
12
+ import assert from 'node:assert';
13
+ import * as util from 'node:util';
14
+ import { ParamDataModel } from './paramtype-dm.js';
15
+ import { AbstractDataModelBase } from '../types.js';
16
+ // ----------------------------------------------------------------------------
17
+ // <xsd:complexType name="templateparamlistType">
18
+ // <xsd:sequence>
19
+ // <xsd:element name="param" type="paramType" minOccurs="0" maxOccurs="unbounded" />
20
+ // </xsd:sequence>
21
+ // </xsd:complexType>
22
+ /**
23
+ * @public
24
+ */
25
+ // eslint-disable-next-line max-len
26
+ export class AbstractTemplateParamListType extends AbstractDataModelBase {
27
+ // Optional elements.
28
+ params;
29
+ constructor(xml, element, elementName) {
30
+ super(elementName);
31
+ // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
32
+ // ------------------------------------------------------------------------
33
+ // Process elements.
34
+ const innerElements = xml.getInnerElements(element, elementName);
35
+ assert(innerElements.length > 0);
36
+ // console.log(util.inspect(item))
37
+ for (const innerElement of innerElements) {
38
+ if (xml.hasInnerText(innerElement)) {
39
+ // Ignore texts
40
+ }
41
+ else if (xml.hasInnerElement(innerElement, 'param')) {
42
+ this.params ??= [];
43
+ this.params.push(new ParamDataModel(xml, innerElement));
44
+ }
45
+ else {
46
+ console.error(util.inspect(innerElement));
47
+ console.error(`${elementName} element:`, Object.keys(innerElement), 'not implemented yet in', this.constructor.name);
48
+ }
49
+ }
50
+ // ------------------------------------------------------------------------
51
+ // Process attributes.
52
+ assert(!xml.hasAttributes(element));
53
+ // ------------------------------------------------------------------------
54
+ // console.log(util.inspect(this, { compact: false, depth: 999 }))
55
+ }
56
+ }
57
+ // ----------------------------------------------------------------------------
58
+ // <xsd:element name="templateparamlist" type="templateparamlistType" minOccurs="0" />
59
+ /**
60
+ * @public
61
+ */
62
+ export class TemplateParamListDataModel extends AbstractTemplateParamListType {
63
+ constructor(xml, element) {
64
+ // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
65
+ super(xml, element, 'templateparamlist');
66
+ }
67
+ }
68
+ // ----------------------------------------------------------------------------
69
+ //# sourceMappingURL=templateparamlisttype-dm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templateparamlisttype-dm.js","sourceRoot":"","sources":["../../../../src/doxygen/data-model/compounds/templateparamlisttype-dm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,+EAA+E;AAE/E,OAAO,MAAM,MAAM,aAAa,CAAA;AAChC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAGjC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAEnD,+EAA+E;AAE/E,iDAAiD;AACjD,mBAAmB;AACnB,wFAAwF;AACxF,oBAAoB;AACpB,qBAAqB;AAErB;;GAEG;AACH,mCAAmC;AACnC,MAAM,OAAgB,6BAA8B,SAAQ,qBAAqB;IAC/E,qBAAqB;IACrB,MAAM,CAA+B;IAErC,YAAY,GAAqB,EAAE,OAAe,EAAE,WAAmB;QACrE,KAAK,CAAC,WAAW,CAAC,CAAA;QAElB,kFAAkF;QAElF,2EAA2E;QAC3E,oBAAoB;QAEpB,MAAM,aAAa,GAAG,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;QAChE,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAEhC,kCAAkC;QAClC,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACzC,IAAI,GAAG,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;gBACnC,eAAe;YACjB,CAAC;iBAAM,IAAI,GAAG,CAAC,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC;gBACtD,IAAI,CAAC,MAAM,KAAK,EAAE,CAAA;gBAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAA;YACzD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;gBACzC,OAAO,CAAC,KAAK,CACX,GAAG,WAAW,WAAW,EACzB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EACzB,wBAAwB,EACxB,IAAI,CAAC,WAAW,CAAC,IAAI,CACtB,CAAA;YACH,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,sBAAsB;QAEtB,MAAM,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAA;QAEnC,2EAA2E;QAE3E,kEAAkE;IACpE,CAAC;CACF;AAED,+EAA+E;AAE/E,sFAAsF;AAEtF;;GAEG;AACH,MAAM,OAAO,0BAA2B,SAAQ,6BAA6B;IAC3E,YAAY,GAAqB,EAAE,OAAe;QAChD,kFAAkF;QAClF,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAA;IAC1C,CAAC;CACF;AAED,+EAA+E"}
@@ -0,0 +1,91 @@
1
+ import { CliOptions } from '../../docusaurus/cli-options.js';
2
+ import { CompoundDefDataModel } from './compounds/compounddef-dm.js';
3
+ import { DoxygenFileDataModel } from './doxyfile/doxyfiletype-dm.js';
4
+ import { DoxygenIndexDataModel } from './index/indexdoxygentype-dm.js';
5
+ import { XmlElement } from './types.js';
6
+ import { IndexCompoundDataModel } from './index/indexcompoundtype-dm.js';
7
+ import { DoxygenXmlParser } from './doxygen-xml-parser.js';
8
+ /**
9
+ * @public
10
+ */
11
+ export declare class DataModel {
12
+ /**
13
+ * The global configuration options.
14
+ */
15
+ options: CliOptions;
16
+ xml: DoxygenXmlParser;
17
+ /**
18
+ * Keep track of the number of XML files parsed.
19
+ *
20
+ * @defaultValue 0
21
+ */
22
+ parsedFilesCounter: number;
23
+ doxygenindex?: DoxygenIndexDataModel;
24
+ compoundDefs: CompoundDefDataModel[];
25
+ doxyfile?: DoxygenFileDataModel;
26
+ projectVersion?: string;
27
+ constructor(options: CliOptions);
28
+ parse(): Promise<void>;
29
+ /**
30
+ * Parses the main Doxygen index XML file and initialises the index data
31
+ * model.
32
+ *
33
+ * @remarks
34
+ * This method reads and parses the `index.xml` file, ignoring the XML
35
+ * prologue and top-level text nodes. It extracts the `doxygenindex`
36
+ * element and constructs the corresponding data model. Any unrecognised
37
+ * elements are logged for diagnostic purposes.
38
+ */
39
+ parseDoxygenIndex(): Promise<void>;
40
+ /**
41
+ * Processes compound definitions from the parsed Doxygen XML elements.
42
+ *
43
+ * @param indexCompound - The compound index data model
44
+ * @param parsedDoxygenElements - The array of parsed XML elements for the
45
+ * compound
46
+ *
47
+ * @remarks
48
+ * This method iterates through the parsed XML elements, ignoring the XML
49
+ * prologue and top-level text nodes. For recognised `doxygen` elements, it
50
+ * constructs the compound definitions and appends them to the internal data
51
+ * model. Unrecognised elements are logged for further analysis.
52
+ */
53
+ processCompoundDefs(indexCompound: IndexCompoundDataModel, parsedDoxygenElements: XmlElement[]): void;
54
+ /**
55
+ * Processes member definitions and updates member kinds where necessary.
56
+ *
57
+ * @remarks
58
+ * This method traverses all compound definitions and their associated
59
+ * sections. It collects member definitions by their identifiers and, for
60
+ * each member with an empty kind, assigns the kind from the corresponding
61
+ * member definition. This ensures that all members are correctly classified
62
+ * within the internal data model.
63
+ */
64
+ processMemberdefs(): void;
65
+ /**
66
+ * Parses the Doxyfile XML and initialises the configuration data model.
67
+ *
68
+ * @remarks
69
+ * This method reads and parses the `Doxyfile.xml` file, ignoring the XML
70
+ * prologue and top-level text nodes. It extracts the `doxyfile` element and
71
+ * constructs the corresponding configuration data model. Any unrecognised
72
+ * elements are logged for diagnostic purposes.
73
+ */
74
+ parseDoxyfile(): Promise<void>;
75
+ /**
76
+ * Reads and parses the specified XML file, returning the parsed content.
77
+ *
78
+ * @param fileName - The name of the XML file to be parsed
79
+ * @returns A promise that resolves to the parsed XML content
80
+ *
81
+ * @remarks
82
+ * This method constructs the full file path using the configured input
83
+ * folder, reads the XML file as a UTF-8 string, and parses it using the
84
+ * configured XML parser. The method increments the internal counter for
85
+ * parsed files and, if verbose mode is enabled, logs the file being parsed.
86
+ */
87
+ parseFile({ fileName }: {
88
+ fileName: string;
89
+ }): Promise<any>;
90
+ }
91
+ //# sourceMappingURL=data-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-model.d.ts","sourceRoot":"","sources":["../../../src/doxygen/data-model/data-model.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAGxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAK1D;;GAEG;AAEH,qBAAa,SAAS;IACpB;;OAEG;IACH,OAAO,EAAE,UAAU,CAAA;IAEnB,GAAG,EAAE,gBAAgB,CAAA;IAErB;;;;OAIG;IACH,kBAAkB,SAAI;IAEtB,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,YAAY,EAAE,oBAAoB,EAAE,CAAA;IACpC,QAAQ,CAAC,EAAE,oBAAoB,CAAA;IAE/B,cAAc,CAAC,EAAE,MAAM,CAAA;gBAEX,OAAO,EAAE,UAAU;IAQzB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAoD5B;;;;;;;;;OASG;IACG,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BxC;;;;;;;;;;;;OAYG;IACH,mBAAmB,CACjB,aAAa,EAAE,sBAAsB,EACrC,qBAAqB,EAAE,UAAU,EAAE;IAwBrC;;;;;;;;;OASG;IACH,iBAAiB;IAwBjB;;;;;;;;OAQG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IA6BpC;;;;;;;;;;;OAWG;IAEG,SAAS,CAAC,EAAE,QAAQ,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC;CAYlE"}
@@ -0,0 +1,245 @@
1
+ /*
2
+ * This file is part of the xPack project (http://xpack.github.io).
3
+ * Copyright (c) 2025 Liviu Ionescu. All rights reserved.
4
+ *
5
+ * Permission to use, copy, modify, and/or distribute this software
6
+ * for any purpose is hereby granted, under the terms of the MIT license.
7
+ *
8
+ * If a copy of the license was not distributed with this file, it can
9
+ * be obtained from https://opensource.org/licenses/MIT.
10
+ */
11
+ // ----------------------------------------------------------------------------
12
+ import assert from 'node:assert';
13
+ import * as fs from 'node:fs/promises';
14
+ import * as path from 'node:path';
15
+ import * as util from 'node:util';
16
+ import { DoxygenFileDataModel } from './doxyfile/doxyfiletype-dm.js';
17
+ import { DoxygenIndexDataModel } from './index/indexdoxygentype-dm.js';
18
+ import { DoxygenDataModel } from './compounds/doxygentype-dm.js';
19
+ import { DoxygenXmlParser } from './doxygen-xml-parser.js';
20
+ // ----------------------------------------------------------------------------
21
+ // Top structure to hold the parsed Doxygen xml data as JS objects.
22
+ // All objects are defined in the `data-model` folder.
23
+ /**
24
+ * @public
25
+ */
26
+ export class DataModel {
27
+ /**
28
+ * The global configuration options.
29
+ */
30
+ options;
31
+ xml;
32
+ /**
33
+ * Keep track of the number of XML files parsed.
34
+ *
35
+ * @defaultValue 0
36
+ */
37
+ parsedFilesCounter = 0;
38
+ doxygenindex; // from index.xml
39
+ compoundDefs; // from `${'@_refid'}.xml`
40
+ doxyfile; // from Doxyfile.xml
41
+ projectVersion;
42
+ constructor(options) {
43
+ this.options = options;
44
+ this.xml = new DoxygenXmlParser(options);
45
+ this.compoundDefs = [];
46
+ }
47
+ async parse() {
48
+ // The parser is configured to preserve the original, non-trimmed content
49
+ // and the original elements order. The downsize
50
+ // Some details are from the schematic documentation:
51
+ // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/README.md#documents
52
+ // The defaults are in the project source:
53
+ // https://github.com/NaturalIntelligence/fast-xml-parser/blob/master/src/xmlparser/OptionsBuilder.js
54
+ // ------------------------------------------------------------------------
55
+ // Parse the top index.xml file.
56
+ if (!this.options.verbose) {
57
+ console.log('Parsing Doxygen generated .xml files...');
58
+ }
59
+ await this.parseDoxygenIndex();
60
+ assert(this.doxygenindex !== undefined);
61
+ // ------------------------------------------------------------------------
62
+ // Parse all compound *.xml files mentioned in the index.
63
+ if (Array.isArray(this.doxygenindex.compounds)) {
64
+ for (const indexCompound of this.doxygenindex.compounds) {
65
+ // Parallelise not possible, the order is relevant.
66
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
67
+ const parsedDoxygenElements = await this.parseFile({
68
+ fileName: `${indexCompound.refid}.xml`,
69
+ });
70
+ // console.log(util.inspect(parsedDoxygen))
71
+ // console.log(JSON.stringify(parsedDoxygen, null, ' '))
72
+ this.processCompoundDefs(indexCompound, parsedDoxygenElements);
73
+ }
74
+ this.processMemberdefs();
75
+ }
76
+ // ------------------------------------------------------------------------
77
+ // Parse the Doxyfile.xml with the options.
78
+ await this.parseDoxyfile();
79
+ assert(this.doxyfile);
80
+ console.log(this.parsedFilesCounter, 'xml files parsed');
81
+ if (this.options.verbose) {
82
+ if (this.xml.images.length > 0) {
83
+ console.log(this.xml.images.length, 'images identified');
84
+ }
85
+ }
86
+ }
87
+ /**
88
+ * Parses the main Doxygen index XML file and initialises the index data
89
+ * model.
90
+ *
91
+ * @remarks
92
+ * This method reads and parses the `index.xml` file, ignoring the XML
93
+ * prologue and top-level text nodes. It extracts the `doxygenindex`
94
+ * element and constructs the corresponding data model. Any unrecognised
95
+ * elements are logged for diagnostic purposes.
96
+ */
97
+ async parseDoxygenIndex() {
98
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
99
+ const parsedIndexElements = await this.parseFile({
100
+ fileName: 'index.xml',
101
+ });
102
+ // console.log(util.inspect(parsedIndex))
103
+ // console.log(util.inspect(parsedIndex[0]['?xml']))
104
+ // console.log(JSON.stringify(parsedIndex, null, ' '))
105
+ for (const element of parsedIndexElements) {
106
+ if (this.xml.hasInnerElement(element, '?xml')) {
107
+ // Ignore the top xml prologue.
108
+ }
109
+ else if (this.xml.hasInnerText(element)) {
110
+ // Ignore top texts.
111
+ }
112
+ else if (this.xml.hasInnerElement(element, 'doxygenindex')) {
113
+ this.doxygenindex = new DoxygenIndexDataModel(this.xml, element);
114
+ }
115
+ else {
116
+ console.error(util.inspect(element, { compact: false, depth: 999 }));
117
+ console.error('index.xml element:', Object.keys(element), 'not implemented yet in', this.constructor.name);
118
+ }
119
+ }
120
+ }
121
+ /**
122
+ * Processes compound definitions from the parsed Doxygen XML elements.
123
+ *
124
+ * @param indexCompound - The compound index data model
125
+ * @param parsedDoxygenElements - The array of parsed XML elements for the
126
+ * compound
127
+ *
128
+ * @remarks
129
+ * This method iterates through the parsed XML elements, ignoring the XML
130
+ * prologue and top-level text nodes. For recognised `doxygen` elements, it
131
+ * constructs the compound definitions and appends them to the internal data
132
+ * model. Unrecognised elements are logged for further analysis.
133
+ */
134
+ processCompoundDefs(indexCompound, parsedDoxygenElements) {
135
+ for (const element of parsedDoxygenElements) {
136
+ if (this.xml.hasInnerElement(element, '?xml')) {
137
+ // Ignore the top xml prologue.
138
+ }
139
+ else if (this.xml.hasInnerText(element)) {
140
+ // Ignore top texts.
141
+ }
142
+ else if (this.xml.hasInnerElement(element, 'doxygen')) {
143
+ const doxygen = new DoxygenDataModel(this.xml, element);
144
+ if (Array.isArray(doxygen.compoundDefs)) {
145
+ this.compoundDefs.push(...doxygen.compoundDefs);
146
+ }
147
+ }
148
+ else {
149
+ console.error(util.inspect(element, { compact: false, depth: 999 }));
150
+ console.error(`${indexCompound.refid}.xml element:`, Object.keys(element), 'not implemented yet in', this.constructor.name);
151
+ }
152
+ }
153
+ }
154
+ /**
155
+ * Processes member definitions and updates member kinds where necessary.
156
+ *
157
+ * @remarks
158
+ * This method traverses all compound definitions and their associated
159
+ * sections. It collects member definitions by their identifiers and, for
160
+ * each member with an empty kind, assigns the kind from the corresponding
161
+ * member definition. This ensures that all members are correctly classified
162
+ * within the internal data model.
163
+ */
164
+ processMemberdefs() {
165
+ const memberDefsById = new Map();
166
+ for (const compoundDef of this.compoundDefs) {
167
+ if (compoundDef.sectionDefs !== undefined) {
168
+ for (const sectionDef of compoundDef.sectionDefs) {
169
+ if (sectionDef.memberDefs !== undefined) {
170
+ for (const memberDef of sectionDef.memberDefs) {
171
+ memberDefsById.set(memberDef.id, memberDef);
172
+ }
173
+ }
174
+ if (sectionDef.members !== undefined) {
175
+ for (const member of sectionDef.members) {
176
+ if (member.kind.length === 0) {
177
+ const memberDef = memberDefsById.get(member.refid);
178
+ assert(memberDef !== undefined);
179
+ member.kind = memberDef.kind;
180
+ }
181
+ }
182
+ }
183
+ }
184
+ }
185
+ }
186
+ }
187
+ /**
188
+ * Parses the Doxyfile XML and initialises the configuration data model.
189
+ *
190
+ * @remarks
191
+ * This method reads and parses the `Doxyfile.xml` file, ignoring the XML
192
+ * prologue and top-level text nodes. It extracts the `doxyfile` element and
193
+ * constructs the corresponding configuration data model. Any unrecognised
194
+ * elements are logged for diagnostic purposes.
195
+ */
196
+ async parseDoxyfile() {
197
+ const parsedDoxyfileElements = (await this.parseFile({
198
+ fileName: 'Doxyfile.xml',
199
+ }));
200
+ // console.log(util.inspect(parsedDoxyfile))
201
+ // console.log(JSON.stringify(parsedDoxyfile, null, ' '))
202
+ for (const element of parsedDoxyfileElements) {
203
+ if (this.xml.hasInnerElement(element, '?xml')) {
204
+ // Ignore the top xml prologue.
205
+ }
206
+ else if (this.xml.hasInnerElement(element, '#text')) {
207
+ // Ignore top texts.
208
+ }
209
+ else if (this.xml.hasInnerElement(element, 'doxyfile')) {
210
+ this.doxyfile = new DoxygenFileDataModel(this.xml, element);
211
+ }
212
+ else {
213
+ console.error(util.inspect(element, { compact: false, depth: 999 }));
214
+ console.error('Doxyfile.xml element:', Object.keys(element), 'not implemented yet in', this.constructor.name);
215
+ }
216
+ }
217
+ }
218
+ // --------------------------------------------------------------------------
219
+ // Support methods.
220
+ /**
221
+ * Reads and parses the specified XML file, returning the parsed content.
222
+ *
223
+ * @param fileName - The name of the XML file to be parsed
224
+ * @returns A promise that resolves to the parsed XML content
225
+ *
226
+ * @remarks
227
+ * This method constructs the full file path using the configured input
228
+ * folder, reads the XML file as a UTF-8 string, and parses it using the
229
+ * configured XML parser. The method increments the internal counter for
230
+ * parsed files and, if verbose mode is enabled, logs the file being parsed.
231
+ */
232
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
233
+ async parseFile({ fileName }) {
234
+ const folderPath = this.options.doxygenXmlInputFolderPath;
235
+ const filePath = path.join(folderPath, fileName);
236
+ const xmlString = await fs.readFile(filePath, { encoding: 'utf8' });
237
+ if (this.options.verbose) {
238
+ console.log(`Parsing ${fileName}...`);
239
+ }
240
+ this.parsedFilesCounter += 1;
241
+ return this.xml.xmlParser.parse(xmlString);
242
+ }
243
+ }
244
+ // ----------------------------------------------------------------------------
245
+ //# sourceMappingURL=data-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-model.js","sourceRoot":"","sources":["../../../src/doxygen/data-model/data-model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { DoxygenXmlParser } from '../doxygen-xml-parser.js';
2
+ import { AbstractDataModelBase } from '../types.js';
3
+ /**
4
+ * @public
5
+ */
6
+ export declare abstract class AbstractDoxygenFileOptionType extends AbstractDataModelBase {
7
+ values: string[] | undefined;
8
+ id: string;
9
+ default: string;
10
+ type: string;
11
+ constructor(xml: DoxygenXmlParser, element: object, elementName: string);
12
+ }
13
+ export type DoxyfileDefaultType = 'yes' | 'no';
14
+ export type DoxyfileTypeType = 'int' | 'bool' | 'string' | 'stringlist';
15
+ /**
16
+ * @public
17
+ */
18
+ export declare class DoxygenFileOptionDataModel extends AbstractDoxygenFileOptionType {
19
+ constructor(xml: DoxygenXmlParser, element: object);
20
+ }
21
+ //# sourceMappingURL=doxyfileoptiontype-dm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doxyfileoptiontype-dm.d.ts","sourceRoot":"","sources":["../../../../src/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAanD;;GAEG;AAEH,8BAAsB,6BAA8B,SAAQ,qBAAqB;IAE/E,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;IAG5B,EAAE,SAAK;IACP,OAAO,SAAK;IACZ,IAAI,SAAK;gBAEG,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;CA8DxE;AA6BD,MAAM,MAAM,mBAAmB,GAAG,KAAK,GAAG,IAAI,CAAA;AAW9C,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,YAAY,CAAA;AAMvE;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,6BAA6B;gBAC/D,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM;CAInD"}
@@ -0,0 +1,95 @@
1
+ /*
2
+ * This file is part of the xPack project (http://xpack.github.io).
3
+ * Copyright (c) 2025 Liviu Ionescu. All rights reserved.
4
+ *
5
+ * Permission to use, copy, modify, and/or distribute this software
6
+ * for any purpose is hereby granted, under the terms of the MIT license.
7
+ *
8
+ * If a copy of the license was not distributed with this file, it can
9
+ * be obtained from https://opensource.org/licenses/MIT.
10
+ */
11
+ // ----------------------------------------------------------------------------
12
+ import assert from 'node:assert';
13
+ import * as util from 'node:util';
14
+ import { AbstractDataModelBase } from '../types.js';
15
+ // ----------------------------------------------------------------------------
16
+ // <xsd:complexType name="OptionType">
17
+ // <xsd:sequence>
18
+ // <xsd:element name="value" type="valueType" minOccurs="0" maxOccurs="unbounded"/>
19
+ // </xsd:sequence>
20
+ // <xsd:attribute name="id" type="idType" use="required"/>
21
+ // <xsd:attribute name="default" type="defaultType" use="required"/>
22
+ // <xsd:attribute name="type" type="typeType" use="required"/>
23
+ // </xsd:complexType>
24
+ /**
25
+ * @public
26
+ */
27
+ // eslint-disable-next-line max-len
28
+ export class AbstractDoxygenFileOptionType extends AbstractDataModelBase {
29
+ // Optional elements.
30
+ values; // [0-n] valueType
31
+ // Mandatory attributes.
32
+ id = ''; // idType
33
+ default = ''; // defaultType
34
+ type = ''; // typeType
35
+ constructor(xml, element, elementName) {
36
+ super(elementName);
37
+ // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
38
+ // ------------------------------------------------------------------------
39
+ // Process elements.
40
+ const innerElements = xml.getInnerElements(element, elementName);
41
+ assert(innerElements.length > 0);
42
+ for (const innerElement of innerElements) {
43
+ if (xml.hasInnerText(innerElement)) {
44
+ // Ignore texts.
45
+ }
46
+ else if (xml.isInnerElementText(innerElement, 'value')) {
47
+ this.values ??= [];
48
+ this.values.push(xml.getInnerElementText(innerElement, 'value'));
49
+ }
50
+ else {
51
+ console.error(util.inspect(innerElement));
52
+ console.error(`doxyfile ${elementName} element:`, Object.keys(innerElement), 'not implemented yet in', this.constructor.name);
53
+ }
54
+ }
55
+ // ------------------------------------------------------------------------
56
+ // Process attributes.
57
+ assert(xml.hasAttributes(element));
58
+ const attributesNames = xml.getAttributesNames(element);
59
+ // console.log(attributesNames)
60
+ for (const attributeName of attributesNames) {
61
+ // console.log(attributeName)
62
+ if (attributeName === '@_id') {
63
+ this.id = xml.getAttributeStringValue(element, '@_id');
64
+ }
65
+ else if (attributeName === '@_default') {
66
+ this.default = xml.getAttributeStringValue(element, '@_default');
67
+ }
68
+ else if (attributeName === '@_type') {
69
+ this.type = xml.getAttributeStringValue(element, '@_type');
70
+ }
71
+ else {
72
+ console.error(util.inspect(element, { compact: false, depth: 999 }));
73
+ console.error(`doxyfile ${elementName} attribute:`, attributeName, 'not implemented yet in', this.constructor.name);
74
+ }
75
+ }
76
+ assert(this.id.length > 0);
77
+ assert(this.default.length > 0);
78
+ assert(this.type.length > 0);
79
+ // ------------------------------------------------------------------------
80
+ // console.log(util.inspect(this, { compact: false, depth: 999 }))
81
+ }
82
+ }
83
+ // ----------------------------------------------------------------------------
84
+ // <xsd:element name="option" type="OptionType" minOccurs="0" maxOccurs="unbounded"/>
85
+ /**
86
+ * @public
87
+ */
88
+ export class DoxygenFileOptionDataModel extends AbstractDoxygenFileOptionType {
89
+ constructor(xml, element) {
90
+ // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
91
+ super(xml, element, 'option');
92
+ }
93
+ }
94
+ // ----------------------------------------------------------------------------
95
+ //# sourceMappingURL=doxyfileoptiontype-dm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doxyfileoptiontype-dm.js","sourceRoot":"","sources":["../../../../src/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { DoxygenXmlParser } from '../doxygen-xml-parser.js';
2
+ import { DoxygenFileOptionDataModel } from './doxyfileoptiontype-dm.js';
3
+ import { AbstractDataModelBase } from '../types.js';
4
+ /**
5
+ * @public
6
+ */
7
+ export declare abstract class AbstractDoxygenFileType extends AbstractDataModelBase {
8
+ version: string;
9
+ lang: string;
10
+ options?: DoxygenFileOptionDataModel[] | undefined;
11
+ noNamespaceSchemaLocation?: string | undefined;
12
+ constructor(xml: DoxygenXmlParser, element: object, elementName: string);
13
+ }
14
+ /**
15
+ * @public
16
+ */
17
+ export declare class DoxygenFileDataModel extends AbstractDoxygenFileType {
18
+ constructor(xml: DoxygenXmlParser, element: object);
19
+ }
20
+ //# sourceMappingURL=doxyfiletype-dm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doxyfiletype-dm.d.ts","sourceRoot":"","sources":["../../../../src/doxygen/data-model/doxyfile/doxyfiletype-dm.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAA;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAYnD;;GAEG;AACH,8BAAsB,uBAAwB,SAAQ,qBAAqB;IAEzE,OAAO,SAAK;IACZ,IAAI,SAAK;IAGT,OAAO,CAAC,EAAE,0BAA0B,EAAE,GAAG,SAAS,CAAA;IAGlD,yBAAyB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;gBAElC,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;CA4DxE;AAMD;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,uBAAuB;gBACnD,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM;CAInD"}