@xpack/doxygen2docusaurus 2.0.0 → 2.2.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 (365) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +3 -1
  3. package/bin/doxygen2docusaurus.js +5 -5
  4. package/dist/cli/main.d.ts +0 -14
  5. package/dist/cli/main.d.ts.map +1 -1
  6. package/dist/cli/main.js +0 -34
  7. package/dist/cli/main.js.map +1 -1
  8. package/dist/docusaurus/cli-options.d.ts +3 -292
  9. package/dist/docusaurus/cli-options.d.ts.map +1 -1
  10. package/dist/docusaurus/cli-options.js +6 -290
  11. package/dist/docusaurus/cli-options.js.map +1 -1
  12. package/dist/docusaurus/generator.d.ts +0 -172
  13. package/dist/docusaurus/generator.d.ts.map +1 -1
  14. package/dist/docusaurus/generator.js +20 -280
  15. package/dist/docusaurus/generator.js.map +1 -1
  16. package/dist/docusaurus/renderers/conceptparts.d.ts +9 -0
  17. package/dist/docusaurus/renderers/conceptparts.d.ts.map +1 -0
  18. package/dist/docusaurus/renderers/conceptparts.js +21 -0
  19. package/dist/docusaurus/renderers/conceptparts.js.map +1 -0
  20. package/dist/docusaurus/renderers/descriptiontype.d.ts +0 -417
  21. package/dist/docusaurus/renderers/descriptiontype.d.ts.map +1 -1
  22. package/dist/docusaurus/renderers/descriptiontype.js +11 -555
  23. package/dist/docusaurus/renderers/descriptiontype.js.map +1 -1
  24. package/dist/docusaurus/renderers/docinternalstype.d.ts +0 -132
  25. package/dist/docusaurus/renderers/docinternalstype.d.ts.map +1 -1
  26. package/dist/docusaurus/renderers/docinternalstype.js +0 -156
  27. package/dist/docusaurus/renderers/docinternalstype.js.map +1 -1
  28. package/dist/docusaurus/renderers/doclisttype.d.ts +0 -22
  29. package/dist/docusaurus/renderers/doclisttype.d.ts.map +1 -1
  30. package/dist/docusaurus/renderers/doclisttype.js +0 -42
  31. package/dist/docusaurus/renderers/doclisttype.js.map +1 -1
  32. package/dist/docusaurus/renderers/doctabletype.d.ts +0 -88
  33. package/dist/docusaurus/renderers/doctabletype.d.ts.map +1 -1
  34. package/dist/docusaurus/renderers/doctabletype.js +1 -113
  35. package/dist/docusaurus/renderers/doctabletype.js.map +1 -1
  36. package/dist/docusaurus/renderers/doctitletype.d.ts +0 -22
  37. package/dist/docusaurus/renderers/doctitletype.d.ts.map +1 -1
  38. package/dist/docusaurus/renderers/doctitletype.js +0 -42
  39. package/dist/docusaurus/renderers/doctitletype.js.map +1 -1
  40. package/dist/docusaurus/renderers/docvariablelisttype.d.ts +0 -44
  41. package/dist/docusaurus/renderers/docvariablelisttype.d.ts.map +1 -1
  42. package/dist/docusaurus/renderers/docvariablelisttype.js +1 -69
  43. package/dist/docusaurus/renderers/docvariablelisttype.js.map +1 -1
  44. package/dist/docusaurus/renderers/docxrefsecttype.d.ts +0 -22
  45. package/dist/docusaurus/renderers/docxrefsecttype.d.ts.map +1 -1
  46. package/dist/docusaurus/renderers/docxrefsecttype.js +0 -38
  47. package/dist/docusaurus/renderers/docxrefsecttype.js.map +1 -1
  48. package/dist/docusaurus/renderers/element-renderer-base.d.ts +0 -74
  49. package/dist/docusaurus/renderers/element-renderer-base.d.ts.map +1 -1
  50. package/dist/docusaurus/renderers/element-renderer-base.js +0 -64
  51. package/dist/docusaurus/renderers/element-renderer-base.js.map +1 -1
  52. package/dist/docusaurus/renderers/inctype.d.ts +0 -23
  53. package/dist/docusaurus/renderers/inctype.d.ts.map +1 -1
  54. package/dist/docusaurus/renderers/inctype.js +0 -41
  55. package/dist/docusaurus/renderers/inctype.js.map +1 -1
  56. package/dist/docusaurus/renderers/linkedtexttype.d.ts +0 -22
  57. package/dist/docusaurus/renderers/linkedtexttype.d.ts.map +1 -1
  58. package/dist/docusaurus/renderers/linkedtexttype.js +0 -45
  59. package/dist/docusaurus/renderers/linkedtexttype.js.map +1 -1
  60. package/dist/docusaurus/renderers/listingtype.d.ts +0 -52
  61. package/dist/docusaurus/renderers/listingtype.d.ts.map +1 -1
  62. package/dist/docusaurus/renderers/listingtype.js +1 -88
  63. package/dist/docusaurus/renderers/listingtype.js.map +1 -1
  64. package/dist/docusaurus/renderers/paramtype.d.ts +0 -22
  65. package/dist/docusaurus/renderers/paramtype.d.ts.map +1 -1
  66. package/dist/docusaurus/renderers/paramtype.js +2 -51
  67. package/dist/docusaurus/renderers/paramtype.js.map +1 -1
  68. package/dist/docusaurus/renderers/referencetype.d.ts +0 -23
  69. package/dist/docusaurus/renderers/referencetype.d.ts.map +1 -1
  70. package/dist/docusaurus/renderers/referencetype.js +0 -38
  71. package/dist/docusaurus/renderers/referencetype.js.map +1 -1
  72. package/dist/docusaurus/renderers/reftexttype.d.ts +0 -22
  73. package/dist/docusaurus/renderers/reftexttype.d.ts.map +1 -1
  74. package/dist/docusaurus/renderers/reftexttype.js +0 -38
  75. package/dist/docusaurus/renderers/reftexttype.js.map +1 -1
  76. package/dist/docusaurus/renderers/reftype.d.ts +0 -22
  77. package/dist/docusaurus/renderers/reftype.d.ts.map +1 -1
  78. package/dist/docusaurus/renderers/reftype.js +0 -38
  79. package/dist/docusaurus/renderers/reftype.js.map +1 -1
  80. package/dist/docusaurus/renderers/renderers.d.ts +0 -151
  81. package/dist/docusaurus/renderers/renderers.d.ts.map +1 -1
  82. package/dist/docusaurus/renderers/renderers.js +15 -186
  83. package/dist/docusaurus/renderers/renderers.js.map +1 -1
  84. package/dist/docusaurus/renderers/substringtype.d.ts +0 -22
  85. package/dist/docusaurus/renderers/substringtype.d.ts.map +1 -1
  86. package/dist/docusaurus/renderers/substringtype.js +0 -39
  87. package/dist/docusaurus/renderers/substringtype.js.map +1 -1
  88. package/dist/docusaurus/renderers/tableofcontentstype.d.ts +0 -22
  89. package/dist/docusaurus/renderers/tableofcontentstype.d.ts.map +1 -1
  90. package/dist/docusaurus/renderers/tableofcontentstype.js +0 -39
  91. package/dist/docusaurus/renderers/tableofcontentstype.js.map +1 -1
  92. package/dist/docusaurus/types.d.ts +0 -110
  93. package/dist/docusaurus/types.d.ts.map +1 -1
  94. package/dist/docusaurus/types.js +0 -11
  95. package/dist/docusaurus/types.js.map +1 -1
  96. package/dist/docusaurus/utils.d.ts +0 -214
  97. package/dist/docusaurus/utils.d.ts.map +1 -1
  98. package/dist/docusaurus/utils.js +0 -296
  99. package/dist/docusaurus/utils.js.map +1 -1
  100. package/dist/docusaurus/view-model/classes-vm.d.ts +0 -137
  101. package/dist/docusaurus/view-model/classes-vm.d.ts.map +1 -1
  102. package/dist/docusaurus/view-model/classes-vm.js +9 -225
  103. package/dist/docusaurus/view-model/classes-vm.js.map +1 -1
  104. package/dist/docusaurus/view-model/collection-base.d.ts +0 -120
  105. package/dist/docusaurus/view-model/collection-base.d.ts.map +1 -1
  106. package/dist/docusaurus/view-model/collection-base.js +11 -101
  107. package/dist/docusaurus/view-model/collection-base.js.map +1 -1
  108. package/dist/docusaurus/view-model/compound-base-vm.d.ts +2 -147
  109. package/dist/docusaurus/view-model/compound-base-vm.d.ts.map +1 -1
  110. package/dist/docusaurus/view-model/compound-base-vm.js +47 -225
  111. package/dist/docusaurus/view-model/compound-base-vm.js.map +1 -1
  112. package/dist/docusaurus/view-model/concepts-vm.d.ts +27 -0
  113. package/dist/docusaurus/view-model/concepts-vm.d.ts.map +1 -0
  114. package/dist/docusaurus/view-model/concepts-vm.js +337 -0
  115. package/dist/docusaurus/view-model/concepts-vm.js.map +1 -0
  116. package/dist/docusaurus/view-model/description-anchors.d.ts +0 -58
  117. package/dist/docusaurus/view-model/description-anchors.d.ts.map +1 -1
  118. package/dist/docusaurus/view-model/description-anchors.js +0 -71
  119. package/dist/docusaurus/view-model/description-anchors.js.map +1 -1
  120. package/dist/docusaurus/view-model/files-and-folders-vm.d.ts +0 -247
  121. package/dist/docusaurus/view-model/files-and-folders-vm.d.ts.map +1 -1
  122. package/dist/docusaurus/view-model/files-and-folders-vm.js +61 -353
  123. package/dist/docusaurus/view-model/files-and-folders-vm.js.map +1 -1
  124. package/dist/docusaurus/view-model/groups-vm.d.ts +0 -148
  125. package/dist/docusaurus/view-model/groups-vm.d.ts.map +1 -1
  126. package/dist/docusaurus/view-model/groups-vm.js +2 -223
  127. package/dist/docusaurus/view-model/groups-vm.js.map +1 -1
  128. package/dist/docusaurus/view-model/members-vm.d.ts +0 -552
  129. package/dist/docusaurus/view-model/members-vm.d.ts.map +1 -1
  130. package/dist/docusaurus/view-model/members-vm.js +17 -702
  131. package/dist/docusaurus/view-model/members-vm.js.map +1 -1
  132. package/dist/docusaurus/view-model/namespaces-vm.d.ts +5 -199
  133. package/dist/docusaurus/view-model/namespaces-vm.d.ts.map +1 -1
  134. package/dist/docusaurus/view-model/namespaces-vm.js +85 -284
  135. package/dist/docusaurus/view-model/namespaces-vm.js.map +1 -1
  136. package/dist/docusaurus/view-model/options.d.ts +0 -43
  137. package/dist/docusaurus/view-model/options.d.ts.map +1 -1
  138. package/dist/docusaurus/view-model/options.js +0 -57
  139. package/dist/docusaurus/view-model/options.js.map +1 -1
  140. package/dist/docusaurus/view-model/pages-vm.d.ts +0 -115
  141. package/dist/docusaurus/view-model/pages-vm.d.ts.map +1 -1
  142. package/dist/docusaurus/view-model/pages-vm.js +39 -162
  143. package/dist/docusaurus/view-model/pages-vm.js.map +1 -1
  144. package/dist/docusaurus/view-model/tree-entries-vm.d.ts +8 -142
  145. package/dist/docusaurus/view-model/tree-entries-vm.d.ts.map +1 -1
  146. package/dist/docusaurus/view-model/tree-entries-vm.js +54 -174
  147. package/dist/docusaurus/view-model/tree-entries-vm.js.map +1 -1
  148. package/dist/docusaurus/view-model/view-model.d.ts +0 -125
  149. package/dist/docusaurus/view-model/view-model.d.ts.map +1 -1
  150. package/dist/docusaurus/view-model/view-model.js +20 -182
  151. package/dist/docusaurus/view-model/view-model.js.map +1 -1
  152. package/dist/docusaurus/workspace.d.ts +1 -126
  153. package/dist/docusaurus/workspace.d.ts.map +1 -1
  154. package/dist/docusaurus/workspace.js +8 -221
  155. package/dist/docusaurus/workspace.js.map +1 -1
  156. package/dist/doxygen/data-model/compounds/compounddef-dm.d.ts +7 -492
  157. package/dist/doxygen/data-model/compounds/compounddef-dm.d.ts.map +1 -1
  158. package/dist/doxygen/data-model/compounds/compounddef-dm.js +28 -672
  159. package/dist/doxygen/data-model/compounds/compounddef-dm.js.map +1 -1
  160. package/dist/doxygen/data-model/compounds/compoundreftype-dm.d.ts +0 -129
  161. package/dist/doxygen/data-model/compounds/compoundreftype-dm.d.ts.map +1 -1
  162. package/dist/doxygen/data-model/compounds/compoundreftype-dm.js +1 -145
  163. package/dist/doxygen/data-model/compounds/compoundreftype-dm.js.map +1 -1
  164. package/dist/doxygen/data-model/compounds/concepts-dm.d.ts +23 -0
  165. package/dist/doxygen/data-model/compounds/concepts-dm.d.ts.map +1 -0
  166. package/dist/doxygen/data-model/compounds/concepts-dm.js +94 -0
  167. package/dist/doxygen/data-model/compounds/concepts-dm.js.map +1 -0
  168. package/dist/doxygen/data-model/compounds/descriptiontype-dm.d.ts +104 -2848
  169. package/dist/doxygen/data-model/compounds/descriptiontype-dm.d.ts.map +1 -1
  170. package/dist/doxygen/data-model/compounds/descriptiontype-dm.js +73 -3975
  171. package/dist/doxygen/data-model/compounds/descriptiontype-dm.js.map +1 -1
  172. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.d.ts +0 -165
  173. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.d.ts.map +1 -1
  174. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.js +0 -229
  175. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.js.map +1 -1
  176. package/dist/doxygen/data-model/compounds/doxygentype-dm.d.ts +0 -70
  177. package/dist/doxygen/data-model/compounds/doxygentype-dm.d.ts.map +1 -1
  178. package/dist/doxygen/data-model/compounds/doxygentype-dm.js +0 -105
  179. package/dist/doxygen/data-model/compounds/doxygentype-dm.js.map +1 -1
  180. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.d.ts +0 -84
  181. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.d.ts.map +1 -1
  182. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.js +1 -122
  183. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.js.map +1 -1
  184. package/dist/doxygen/data-model/compounds/inctype-dm.d.ts +0 -116
  185. package/dist/doxygen/data-model/compounds/inctype-dm.d.ts.map +1 -1
  186. package/dist/doxygen/data-model/compounds/inctype-dm.js +3 -155
  187. package/dist/doxygen/data-model/compounds/inctype-dm.js.map +1 -1
  188. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.d.ts +3 -138
  189. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.d.ts.map +1 -1
  190. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.js +5 -180
  191. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.js.map +1 -1
  192. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.d.ts +0 -76
  193. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.d.ts.map +1 -1
  194. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.js +0 -107
  195. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.js.map +1 -1
  196. package/dist/doxygen/data-model/compounds/locationtype-dm.d.ts +0 -162
  197. package/dist/doxygen/data-model/compounds/locationtype-dm.d.ts.map +1 -1
  198. package/dist/doxygen/data-model/compounds/locationtype-dm.js +4 -203
  199. package/dist/doxygen/data-model/compounds/locationtype-dm.js.map +1 -1
  200. package/dist/doxygen/data-model/compounds/memberdeftype-dm.d.ts +2 -443
  201. package/dist/doxygen/data-model/compounds/memberdeftype-dm.d.ts.map +1 -1
  202. package/dist/doxygen/data-model/compounds/memberdeftype-dm.js +19 -475
  203. package/dist/doxygen/data-model/compounds/memberdeftype-dm.js.map +1 -1
  204. package/dist/doxygen/data-model/compounds/memberreftype-dm.d.ts +0 -141
  205. package/dist/doxygen/data-model/compounds/memberreftype-dm.d.ts.map +1 -1
  206. package/dist/doxygen/data-model/compounds/memberreftype-dm.js +0 -176
  207. package/dist/doxygen/data-model/compounds/memberreftype-dm.js.map +1 -1
  208. package/dist/doxygen/data-model/compounds/membertype-dm.d.ts +0 -101
  209. package/dist/doxygen/data-model/compounds/membertype-dm.d.ts.map +1 -1
  210. package/dist/doxygen/data-model/compounds/membertype-dm.js +0 -115
  211. package/dist/doxygen/data-model/compounds/membertype-dm.js.map +1 -1
  212. package/dist/doxygen/data-model/compounds/paramtype-dm.d.ts +0 -164
  213. package/dist/doxygen/data-model/compounds/paramtype-dm.d.ts.map +1 -1
  214. package/dist/doxygen/data-model/compounds/paramtype-dm.js +0 -208
  215. package/dist/doxygen/data-model/compounds/paramtype-dm.js.map +1 -1
  216. package/dist/doxygen/data-model/compounds/referencetype-dm.d.ts +0 -139
  217. package/dist/doxygen/data-model/compounds/referencetype-dm.d.ts.map +1 -1
  218. package/dist/doxygen/data-model/compounds/referencetype-dm.js +2 -175
  219. package/dist/doxygen/data-model/compounds/referencetype-dm.js.map +1 -1
  220. package/dist/doxygen/data-model/compounds/reftexttype-dm.d.ts +0 -120
  221. package/dist/doxygen/data-model/compounds/reftexttype-dm.d.ts.map +1 -1
  222. package/dist/doxygen/data-model/compounds/reftexttype-dm.js +2 -141
  223. package/dist/doxygen/data-model/compounds/reftexttype-dm.js.map +1 -1
  224. package/dist/doxygen/data-model/compounds/reftype-dm.d.ts +0 -268
  225. package/dist/doxygen/data-model/compounds/reftype-dm.d.ts.map +1 -1
  226. package/dist/doxygen/data-model/compounds/reftype-dm.js +4 -326
  227. package/dist/doxygen/data-model/compounds/reftype-dm.js.map +1 -1
  228. package/dist/doxygen/data-model/compounds/reimplementtype-dm.d.ts +0 -105
  229. package/dist/doxygen/data-model/compounds/reimplementtype-dm.d.ts.map +1 -1
  230. package/dist/doxygen/data-model/compounds/reimplementtype-dm.js +1 -139
  231. package/dist/doxygen/data-model/compounds/reimplementtype-dm.js.map +1 -1
  232. package/dist/doxygen/data-model/compounds/requirements-dm.d.ts +2 -0
  233. package/dist/doxygen/data-model/compounds/requirements-dm.d.ts.map +1 -0
  234. package/dist/doxygen/data-model/compounds/requirements-dm.js +2 -0
  235. package/dist/doxygen/data-model/compounds/requirements-dm.js.map +1 -0
  236. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.d.ts +0 -168
  237. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.d.ts.map +1 -1
  238. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.js +0 -209
  239. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.js.map +1 -1
  240. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.d.ts +0 -267
  241. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.d.ts.map +1 -1
  242. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.js +0 -354
  243. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.js.map +1 -1
  244. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.d.ts +0 -66
  245. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.d.ts.map +1 -1
  246. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.js +0 -97
  247. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.js.map +1 -1
  248. package/dist/doxygen/data-model/data-model.d.ts +0 -149
  249. package/dist/doxygen/data-model/data-model.d.ts.map +1 -1
  250. package/dist/doxygen/data-model/data-model.js +8 -200
  251. package/dist/doxygen/data-model/data-model.js.map +1 -1
  252. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.d.ts +0 -115
  253. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.d.ts.map +1 -1
  254. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.js +4 -129
  255. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.js.map +1 -1
  256. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.d.ts +0 -87
  257. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.d.ts.map +1 -1
  258. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.js +0 -118
  259. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.js.map +1 -1
  260. package/dist/doxygen/data-model/doxygen-xml-parser.d.ts +0 -253
  261. package/dist/doxygen/data-model/doxygen-xml-parser.d.ts.map +1 -1
  262. package/dist/doxygen/data-model/doxygen-xml-parser.js +0 -291
  263. package/dist/doxygen/data-model/doxygen-xml-parser.js.map +1 -1
  264. package/dist/doxygen/data-model/index/indexcompoundtype-dm.d.ts +0 -98
  265. package/dist/doxygen/data-model/index/indexcompoundtype-dm.d.ts.map +1 -1
  266. package/dist/doxygen/data-model/index/indexcompoundtype-dm.js +2 -122
  267. package/dist/doxygen/data-model/index/indexcompoundtype-dm.js.map +1 -1
  268. package/dist/doxygen/data-model/index/indexdoxygentype-dm.d.ts +0 -82
  269. package/dist/doxygen/data-model/index/indexdoxygentype-dm.d.ts.map +1 -1
  270. package/dist/doxygen/data-model/index/indexdoxygentype-dm.js +0 -114
  271. package/dist/doxygen/data-model/index/indexdoxygentype-dm.js.map +1 -1
  272. package/dist/doxygen/data-model/index/indexmembertype-dm.d.ts +0 -85
  273. package/dist/doxygen/data-model/index/indexmembertype-dm.d.ts.map +1 -1
  274. package/dist/doxygen/data-model/index/indexmembertype-dm.js +1 -107
  275. package/dist/doxygen/data-model/index/indexmembertype-dm.js.map +1 -1
  276. package/dist/doxygen/data-model/types.d.ts +0 -104
  277. package/dist/doxygen/data-model/types.d.ts.map +1 -1
  278. package/dist/doxygen/data-model/types.js +0 -52
  279. package/dist/doxygen/data-model/types.js.map +1 -1
  280. package/dist/index.d.ts +5 -16
  281. package/dist/index.d.ts.map +1 -1
  282. package/dist/index.js +5 -42
  283. package/dist/index.js.map +1 -1
  284. package/package.json +49 -52
  285. package/src/cli/main.ts +122 -0
  286. package/src/docusaurus/cli-options.ts +560 -0
  287. package/src/docusaurus/generator.ts +788 -0
  288. package/src/docusaurus/renderers/conceptparts.ts +119 -0
  289. package/src/docusaurus/renderers/descriptiontype.ts +1299 -0
  290. package/src/docusaurus/renderers/docinternalstype.ts +354 -0
  291. package/src/docusaurus/renderers/doclisttype.ts +134 -0
  292. package/src/docusaurus/renderers/doctabletype.ts +220 -0
  293. package/src/docusaurus/renderers/doctitletype.ts +77 -0
  294. package/src/docusaurus/renderers/docvariablelisttype.ts +123 -0
  295. package/src/docusaurus/renderers/docxrefsecttype.ts +84 -0
  296. package/src/docusaurus/renderers/element-renderer-base.ts +112 -0
  297. package/src/docusaurus/renderers/inctype.ts +75 -0
  298. package/src/docusaurus/renderers/linkedtexttype.ts +64 -0
  299. package/src/docusaurus/renderers/listingtype.ts +235 -0
  300. package/src/docusaurus/renderers/paramtype.ts +116 -0
  301. package/src/docusaurus/renderers/referencetype.ts +83 -0
  302. package/src/docusaurus/renderers/reftexttype.ts +81 -0
  303. package/src/docusaurus/renderers/reftype.ts +77 -0
  304. package/src/docusaurus/renderers/renderers.ts +812 -0
  305. package/src/docusaurus/renderers/substringtype.ts +53 -0
  306. package/src/docusaurus/renderers/tableofcontentstype.ts +74 -0
  307. package/src/docusaurus/types.ts +187 -0
  308. package/src/docusaurus/utils.ts +409 -0
  309. package/src/docusaurus/view-model/README.md +12 -0
  310. package/src/docusaurus/view-model/classes-vm.ts +1088 -0
  311. package/src/docusaurus/view-model/collection-base.ts +352 -0
  312. package/src/docusaurus/view-model/compound-base-vm.ts +1340 -0
  313. package/src/docusaurus/view-model/concepts-vm.ts +749 -0
  314. package/src/docusaurus/view-model/description-anchors.ts +107 -0
  315. package/src/docusaurus/view-model/files-and-folders-vm.ts +1293 -0
  316. package/src/docusaurus/view-model/groups-vm.ts +548 -0
  317. package/src/docusaurus/view-model/members-vm.ts +1943 -0
  318. package/src/docusaurus/view-model/namespaces-vm.ts +1037 -0
  319. package/src/docusaurus/view-model/options.ts +95 -0
  320. package/src/docusaurus/view-model/pages-vm.ts +389 -0
  321. package/src/docusaurus/view-model/tree-entries-vm.ts +376 -0
  322. package/src/docusaurus/view-model/view-model.ts +513 -0
  323. package/src/docusaurus/workspace.ts +588 -0
  324. package/src/doxygen/data-model/README.md +13 -0
  325. package/src/doxygen/data-model/compounds/compounddef-dm.ts +1230 -0
  326. package/src/doxygen/data-model/compounds/compoundreftype-dm.ts +266 -0
  327. package/src/doxygen/data-model/compounds/concepts-dm.ts +362 -0
  328. package/src/doxygen/data-model/compounds/descriptiontype-dm.ts +10114 -0
  329. package/src/doxygen/data-model/compounds/docvarlistentrytype-dm.ts +354 -0
  330. package/src/doxygen/data-model/compounds/doxygentype-dm.ts +187 -0
  331. package/src/doxygen/data-model/compounds/enumvaluetype-dm.ts +218 -0
  332. package/src/doxygen/data-model/compounds/inctype-dm.ts +217 -0
  333. package/src/doxygen/data-model/compounds/linkedtexttype-dm.ts +288 -0
  334. package/src/doxygen/data-model/compounds/listofallmemberstype-dm.ts +160 -0
  335. package/src/doxygen/data-model/compounds/locationtype-dm.ts +284 -0
  336. package/src/doxygen/data-model/compounds/memberdeftype-dm.ts +881 -0
  337. package/src/doxygen/data-model/compounds/memberreftype-dm.ts +270 -0
  338. package/src/doxygen/data-model/compounds/membertype-dm.ts +239 -0
  339. package/src/doxygen/data-model/compounds/paramtype-dm.ts +302 -0
  340. package/src/doxygen/data-model/compounds/referencetype-dm.ts +248 -0
  341. package/src/doxygen/data-model/compounds/reftexttype-dm.ts +234 -0
  342. package/src/doxygen/data-model/compounds/reftype-dm.ts +430 -0
  343. package/src/doxygen/data-model/compounds/reimplementtype-dm.ts +201 -0
  344. package/src/doxygen/data-model/compounds/requirements-dm.ts +50 -0
  345. package/src/doxygen/data-model/compounds/sectiondeftype-dm.ts +330 -0
  346. package/src/doxygen/data-model/compounds/tableofcontentstype-dm.ts +564 -0
  347. package/src/doxygen/data-model/compounds/templateparamlisttype-dm.ts +150 -0
  348. package/src/doxygen/data-model/data-model.ts +378 -0
  349. package/src/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.ts +271 -0
  350. package/src/doxygen/data-model/doxyfile/doxyfiletype-dm.ts +200 -0
  351. package/src/doxygen/data-model/doxygen-xml-parser.ts +522 -0
  352. package/src/doxygen/data-model/index/indexcompoundtype-dm.ts +256 -0
  353. package/src/doxygen/data-model/index/indexdoxygentype-dm.ts +196 -0
  354. package/src/doxygen/data-model/index/indexmembertype-dm.ts +230 -0
  355. package/src/doxygen/data-model/types.ts +175 -0
  356. package/src/doxygen/data-model/xsds/README.md +6 -0
  357. package/src/doxygen/data-model/xsds/compound.xsd +1788 -0
  358. package/src/doxygen/data-model/xsds/doxyfile.xsd +365 -0
  359. package/src/doxygen/data-model/xsds/index.xsd +74 -0
  360. package/src/doxygen/data-model/xsds/xml.xsd +23 -0
  361. package/src/index.ts +267 -0
  362. package/src/tsconfig.json +12 -0
  363. package/dist/doxygen2docusaurus.d.ts +0 -4774
  364. package/dist/tsconfig.tsbuildinfo +0 -1
  365. package/dist/tsdoc-metadata.json +0 -11
@@ -1,14 +1,3 @@
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
1
  import * as util from 'node:util';
13
2
  import assert from 'node:assert';
14
3
  import { IncludedByDataModel, IncludesDataModel } from './inctype-dm.js';
@@ -17,77 +6,37 @@ import { TemplateParamListDataModel } from './templateparamlisttype-dm.js';
17
6
  import { SectionDefDataModel } from './sectiondeftype-dm.js';
18
7
  import { ListOfAllMembersDataModel } from './listofallmemberstype-dm.js';
19
8
  import { AbstractStringType, BriefDescriptionDataModel, DetailedDescriptionDataModel, ParaDataModel, ProgramListingDataModel, Sect5DataModel, } from './descriptiontype-dm.js';
20
- import { InnerClassDataModel, InnerDirDataModel, InnerFileDataModel, InnerGroupDataModel, InnerNamespaceDataModel, InnerPageDataModel, } from './reftype-dm.js';
9
+ import { InnerClassDataModel, InnerConceptDataModel, InnerDirDataModel, InnerFileDataModel, InnerGroupDataModel, InnerNamespaceDataModel, InnerPageDataModel, } from './reftype-dm.js';
21
10
  import { LocationDataModel } from './locationtype-dm.js';
22
11
  import { AbstractDataModelBase } from '../types.js';
23
12
  import { TableOfContentsDataModel } from './tableofcontentstype-dm.js';
24
- // ----------------------------------------------------------------------------
25
- /**
26
- * Abstract template class for creating new data model objects.
27
- *
28
- * @remarks
29
- * This template provides a standardised structure for implementing new
30
- * data model types with common properties and processing patterns. It
31
- * demonstrates the typical XML parsing approach used throughout the
32
- * Doxygen data model implementation, including element and attribute
33
- * processing workflows.
34
- *
35
- * @public
36
- */
37
- // Template, to be used for creating new objects.
13
+ import { InitializerDataModel, RequiresClauseDataModel, } from './linkedtexttype-dm.js';
14
+ import { ConceptPartsDataModel } from './concepts-dm.js';
38
15
  export class AbstractXyzType extends AbstractDataModelBase {
39
- // If the object has a text.
40
16
  text = '';
41
- // Mandatory elements.
42
17
  compoundName = '';
43
18
  colsCount = NaN;
44
19
  elm12 = false;
45
- // elm13: BriefDescriptionDataModel
46
- // Optional elements.
47
20
  elm20;
48
21
  elm21;
49
22
  elm22;
50
23
  briefDescription;
51
24
  includes;
52
- // Mandatory attributes.
53
25
  id = '';
54
26
  rowsCount = NaN;
55
27
  thead = false;
56
- // Optional attributes.
57
28
  language;
58
29
  final;
59
30
  lineno;
60
31
  attr23;
61
- // ------------------------------------------
62
- // children: Array<string | ParaDataModel | Sect5DataModel> = []
63
- /**
64
- * Constructs a new template data model instance.
65
- *
66
- * @remarks
67
- * Demonstrates the standard XML parsing workflow used throughout the
68
- * data model implementation. This includes processing inner elements,
69
- * handling mixed content with ordered children, and extracting attributes
70
- * with appropriate type conversion and validation.
71
- *
72
- * @param xml - The XML parser instance for processing elements
73
- * @param element - The XML element object to parse
74
- * @param elementName - The name of the XML element being processed
75
- */
76
32
  constructor(xml, element, elementName) {
77
33
  super(elementName);
78
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
79
- // ------------------------------------------------------------------------
80
- // Process elements.
81
- // If the object has only a text.
82
34
  assert(xml.isInnerElementText(element, elementName));
83
35
  this.text = xml.getInnerElementText(element, elementName);
84
- // ------------------------------------------
85
- // If the object has sub-elements.
86
36
  const innerElements = xml.getInnerElements(element, elementName);
87
37
  assert(innerElements.length > 0);
88
38
  for (const innerElement of innerElements) {
89
39
  if (xml.hasInnerText(innerElement)) {
90
- // Ignore texts.
91
40
  }
92
41
  else if (xml.isInnerElementText(innerElement, 'compoundname')) {
93
42
  this.compoundName = xml.getInnerElementText(innerElement, 'compoundname');
@@ -96,7 +45,6 @@ export class AbstractXyzType extends AbstractDataModelBase {
96
45
  this.briefDescription = new BriefDescriptionDataModel(xml, innerElement);
97
46
  }
98
47
  else if (xml.hasInnerElement(innerElement, 'includes')) {
99
- // console.log(util.inspect(item))
100
48
  this.includes ??= [];
101
49
  this.includes.push(new IncludesDataModel(xml, innerElement));
102
50
  }
@@ -104,10 +52,6 @@ export class AbstractXyzType extends AbstractDataModelBase {
104
52
  console.error(`${elementName} element:`, Object.keys(innerElement), 'not implemented yet in', this.constructor.name);
105
53
  }
106
54
  }
107
- // ------------------------------------------
108
- // If the object has to keep trak of the order of mixed type children.
109
- // const innerElements = xml.getInnerElements(element, elementName)
110
- // assert(innerElements.length > 0)
111
55
  this.children = [];
112
56
  for (const innerElement of innerElements) {
113
57
  if (xml.hasInnerText(innerElement)) {
@@ -124,16 +68,10 @@ export class AbstractXyzType extends AbstractDataModelBase {
124
68
  console.error(`${elementName} element:`, Object.keys(innerElement), 'not implemented yet in', this.constructor.name);
125
69
  }
126
70
  }
127
- // ------------------------------------------------------------------------
128
- // Process attributes.
129
- // If the object has no attributes.
130
71
  assert(!xml.hasAttributes(element));
131
- // ------------------------------------------
132
72
  assert(xml.hasAttributes(element));
133
73
  const attributesNames = xml.getAttributesNames(element);
134
- // console.log(attributesNames)
135
74
  for (const attributeName of attributesNames) {
136
- // console.log(attributeName)
137
75
  if (attributeName === '@_id') {
138
76
  this.id = xml.getAttributeStringValue(element, '@_id');
139
77
  }
@@ -148,10 +86,10 @@ export class AbstractXyzType extends AbstractDataModelBase {
148
86
  this.language = xml.getAttributeStringValue(element, '@_language');
149
87
  }
150
88
  else if (attributeName === '@_final') {
151
- this.final = Boolean(xml.getAttributeBooleanValue(element, '@_final'));
89
+ this.final = xml.getAttributeBooleanValue(element, '@_final');
152
90
  }
153
91
  else if (attributeName === '@_lineno') {
154
- this.lineno = Number(xml.getAttributeNumberValue(element, '@_lineno'));
92
+ this.lineno = xml.getAttributeNumberValue(element, '@_lineno');
155
93
  }
156
94
  else {
157
95
  console.error(util.inspect(element, { compact: false, depth: 999 }));
@@ -159,428 +97,52 @@ export class AbstractXyzType extends AbstractDataModelBase {
159
97
  }
160
98
  }
161
99
  assert(this.id.length > 0);
162
- // ------------------------------------------------------------------------
163
- // console.log(util.inspect(this, { compact: false, depth: 999 }))
164
100
  }
165
101
  }
166
- /**
167
- * Concrete implementation of the template data model.
168
- *
169
- * @remarks
170
- * Provides a specific implementation of the abstract template class,
171
- * demonstrating how to create concrete data model objects for particular
172
- * XML element types. This pattern is used throughout the data model
173
- * for creating type-specific implementations.
174
- *
175
- * @public
176
- */
177
102
  export class XyzDataModel extends AbstractXyzType {
178
- /**
179
- * Constructs a new XyzDataModel instance.
180
- *
181
- * @remarks
182
- * Creates a data model object for 'xyz' XML elements by delegating
183
- * to the parent constructor with the appropriate element name.
184
- *
185
- * @param xml - The XML parser instance for processing elements
186
- * @param element - The XML element object to parse
187
- */
188
103
  constructor(xml, element) {
189
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
190
104
  super(xml, element, 'xyz');
191
105
  }
192
106
  }
193
- // ----------------------------------------------------------------------------
194
- // <xsd:complexType name="compounddefType">
195
- // <xsd:sequence>
196
- // <xsd:element name="compoundname" type="xsd:string"/>
197
- // <xsd:element name="title" type="xsd:string" minOccurs="0" />
198
- // <xsd:element name="basecompoundref" type="compoundRefType" minOccurs="0" maxOccurs="unbounded" />
199
- // <xsd:element name="derivedcompoundref" type="compoundRefType" minOccurs="0" maxOccurs="unbounded" />
200
- // <xsd:element name="includes" type="incType" minOccurs="0" maxOccurs="unbounded" />
201
- // <xsd:element name="includedby" type="incType" minOccurs="0" maxOccurs="unbounded" />
202
- // <xsd:element name="incdepgraph" type="graphType" minOccurs="0" />
203
- // <xsd:element name="invincdepgraph" type="graphType" minOccurs="0" />
204
- // <xsd:element name="innermodule" type="refType" minOccurs="0" maxOccurs="unbounded" />
205
- // <xsd:element name="innerdir" type="refType" minOccurs="0" maxOccurs="unbounded" />
206
- // <xsd:element name="innerfile" type="refType" minOccurs="0" maxOccurs="unbounded" />
207
- // <xsd:element name="innerclass" type="refType" minOccurs="0" maxOccurs="unbounded" />
208
- // <xsd:element name="innerconcept" type="refType" minOccurs="0" maxOccurs="unbounded" />
209
- // <xsd:element name="innernamespace" type="refType" minOccurs="0" maxOccurs="unbounded" />
210
- // <xsd:element name="innerpage" type="refType" minOccurs="0" maxOccurs="unbounded" />
211
- // <xsd:element name="innergroup" type="refType" minOccurs="0" maxOccurs="unbounded" />
212
- // <xsd:element name="qualifier" type="xsd:string" minOccurs="0" maxOccurs="unbounded" />
213
- // <xsd:element name="templateparamlist" type="templateparamlistType" minOccurs="0" />
214
- // <xsd:element name="sectiondef" type="sectiondefType" minOccurs="0" maxOccurs="unbounded" />
215
- // <xsd:element name="tableofcontents" type="tableofcontentsType" minOccurs="0" maxOccurs="1" />
216
- // <xsd:element name="requiresclause" type="linkedTextType" minOccurs="0" />
217
- // <xsd:element name="initializer" type="linkedTextType" minOccurs="0" />
218
- // <xsd:element name="briefdescription" type="descriptionType" minOccurs="0" />
219
- // <xsd:element name="detaileddescription" type="descriptionType" minOccurs="0" />
220
- // <xsd:element name="exports" type="exportsType" minOccurs="0" maxOccurs="1"/>
221
- // <xsd:element name="inheritancegraph" type="graphType" minOccurs="0" />
222
- // <xsd:element name="collaborationgraph" type="graphType" minOccurs="0" />
223
- // <xsd:element name="programlisting" type="listingType" minOccurs="0" />
224
- // <xsd:element name="location" type="locationType" minOccurs="0" />
225
- // <xsd:element name="listofallmembers" type="listofallmembersType" minOccurs="0" />
226
- // </xsd:sequence>
227
- // <xsd:attribute name="id" type="xsd:string" />
228
- // <xsd:attribute name="kind" type="DoxCompoundKind" />
229
- // <xsd:attribute name="language" type="DoxLanguage" use="optional"/>
230
- // <xsd:attribute name="prot" type="DoxProtectionKind" />
231
- // <xsd:attribute name="final" type="DoxBool" use="optional"/>
232
- // <xsd:attribute name="inline" type="DoxBool" use="optional"/>
233
- // <xsd:attribute name="sealed" type="DoxBool" use="optional"/>
234
- // <xsd:attribute name="abstract" type="DoxBool" use="optional"/>
235
- // </xsd:complexType>
236
- // <xsd:simpleType name="DoxCompoundKind">
237
- // <xsd:restriction base="xsd:string">
238
- // <xsd:enumeration value="class" />
239
- // <xsd:enumeration value="struct" />
240
- // <xsd:enumeration value="union" />
241
- // <xsd:enumeration value="interface" />
242
- // <xsd:enumeration value="protocol" />
243
- // <xsd:enumeration value="category" />
244
- // <xsd:enumeration value="exception" />
245
- // <xsd:enumeration value="service" />
246
- // <xsd:enumeration value="singleton" />
247
- // <xsd:enumeration value="module" />
248
- // <xsd:enumeration value="type" />
249
- // <xsd:enumeration value="file" />
250
- // <xsd:enumeration value="namespace" />
251
- // <xsd:enumeration value="group" />
252
- // <xsd:enumeration value="page" />
253
- // <xsd:enumeration value="example" />
254
- // <xsd:enumeration value="dir" />
255
- // <xsd:enumeration value="concept" />
256
- // </xsd:restriction>
257
- // </xsd:simpleType>
258
- /**
259
- * Abstract base class for Doxygen compound definition data models.
260
- *
261
- * @remarks
262
- * Represents the core structure of compound definitions in Doxygen XML output,
263
- * including classes, structures, files, namespaces, and other compound types.
264
- * This class handles the complete XML schema for compound definitions with
265
- * comprehensive element and attribute processing to capture all aspects of
266
- * the documented code structures.
267
- *
268
- * @public
269
- */
270
107
  export class AbstractCompoundDefType extends AbstractDataModelBase {
271
- // Mandatory elements.
272
- /**
273
- * The name of the compound element.
274
- *
275
- * @remarks
276
- * Contains the fully qualified name of the compound (class, namespace,
277
- * file, etc.) as extracted from the 'compoundname' XML element. This
278
- * represents the primary identifier for the compound in the documentation
279
- * hierarchy and is mandatory for all compound types except namespaces.
280
- */
281
108
  compoundName = '';
282
- // Optional elements.
283
- /**
284
- * Optional title for the compound.
285
- *
286
- * @remarks
287
- * Provides a human-readable title for the compound that may differ from
288
- * the compound name. This is typically used for pages and groups where
289
- * a descriptive title is more appropriate than the technical identifier.
290
- */
291
109
  title;
292
- /**
293
- * Brief description of the compound.
294
- *
295
- * @remarks
296
- * Contains a concise summary description of the compound extracted from
297
- * the 'briefdescription' XML element. This provides a short overview
298
- * suitable for listings and summary views of the documented entity.
299
- */
300
110
  briefDescription;
301
- /**
302
- * Detailed description of the compound.
303
- *
304
- * @remarks
305
- * Contains comprehensive documentation for the compound extracted from
306
- * the 'detaileddescription' XML element. This includes full description
307
- * text with formatting, examples, and other detailed documentation
308
- * content.
309
- */
310
111
  detailedDescription;
311
- /**
312
- * Base compound references for inheritance relationships.
313
- *
314
- * @remarks
315
- * Contains references to base classes or parent compounds from which
316
- * this compound inherits. This property captures the inheritance
317
- * hierarchy information extracted from 'basecompoundref' XML elements
318
- * for object-oriented documentation structures.
319
- */
320
112
  baseCompoundRefs;
321
- /**
322
- * Derived compound references for inheritance relationships.
323
- *
324
- * @remarks
325
- * Contains references to derived classes or child compounds that inherit
326
- * from this compound. This property captures the inheritance hierarchy
327
- * information extracted from 'derivedcompoundref' XML elements for
328
- * complete inheritance documentation.
329
- */
330
113
  derivedCompoundRefs;
331
- /**
332
- * Include file references for this compound.
333
- *
334
- * @remarks
335
- * Contains information about header files or modules that this compound
336
- * includes or depends upon. This property captures dependency
337
- * relationships extracted from 'includes' XML elements, providing
338
- * visibility into the file inclusion structure.
339
- */
340
114
  includes;
341
- /**
342
- * Reverse include file references for this compound.
343
- *
344
- * @remarks
345
- * Contains information about other files or compounds that include this
346
- * compound. This property captures reverse dependency relationships
347
- * extracted from 'includedby' XML elements, showing which entities
348
- * depend on this compound.
349
- */
350
115
  includedBy;
351
- /**
352
- * Template parameter list for templated compounds.
353
- *
354
- * @remarks
355
- * Contains the template parameter definitions for templated classes,
356
- * functions, or other templated entities. This property captures
357
- * template information extracted from 'templateparamlist' XML elements,
358
- * providing details about generic programming constructs.
359
- */
360
116
  templateParamList;
361
- /**
362
- * Section definitions within the compound.
363
- *
364
- * @remarks
365
- * Contains organised sections of members and documentation within the
366
- * compound. This property captures structured content extracted from
367
- * 'sectiondef' XML elements, providing hierarchical organisation of
368
- * compound members by type and visibility.
369
- */
370
117
  sectionDefs;
371
- /**
372
- * Table of contents for the compound documentation.
373
- *
374
- * @remarks
375
- * Contains the navigation structure for complex compound documentation.
376
- * This property captures hierarchical content organisation extracted
377
- * from 'tableofcontents' XML elements, providing structured navigation
378
- * for large documentation entities.
379
- */
380
118
  tableOfContents;
381
- // innerModules
382
- /**
383
- * Inner folder references contained within this compound.
384
- *
385
- * @remarks
386
- * Contains references to subdirectories or folders that are logically
387
- * contained within this compound. This property captures hierarchical
388
- * folder structure extracted from 'innerdir' XML elements, typically
389
- * used for directory-based documentation organisation.
390
- */
119
+ requiresClause;
120
+ initializer;
121
+ conceptParts;
391
122
  innerDirs;
392
- /**
393
- * Inner file references contained within this compound.
394
- *
395
- * @remarks
396
- * Contains references to files that are logically contained within this
397
- * compound. This property captures file relationships extracted from
398
- * 'innerfile' XML elements, providing visibility into compound-to-file
399
- * associations in the documentation structure.
400
- */
401
123
  innerFiles;
402
- /**
403
- * Inner class references contained within this compound.
404
- *
405
- * @remarks
406
- * Contains references to classes, structures, or other class-like
407
- * entities that are defined within this compound. This property captures
408
- * nested type relationships extracted from 'innerclass' XML elements,
409
- * supporting hierarchical type documentation.
410
- */
411
124
  innerClasses;
412
- // innerConcepts
413
- /**
414
- * Inner namespace references contained within this compound.
415
- *
416
- * @remarks
417
- * Contains references to namespaces that are nested within this compound.
418
- * This property captures namespace hierarchy relationships extracted from
419
- * 'innernamespace' XML elements, supporting multi-level namespace
420
- * documentation organisation.
421
- */
125
+ innerConcepts;
422
126
  innerNamespaces;
423
- /**
424
- * Inner page references contained within this compound.
425
- *
426
- * @remarks
427
- * Contains references to documentation pages that are logically
428
- * associated with this compound. This property captures page
429
- * relationships extracted from 'innerpage' XML elements, supporting
430
- * structured documentation navigation.
431
- */
432
127
  innerPages;
433
- /**
434
- * Inner group references contained within this compound.
435
- *
436
- * @remarks
437
- * Contains references to documentation groups that are associated with
438
- * this compound. This property captures group relationships extracted
439
- * from 'innergroup' XML elements, supporting thematic organisation of
440
- * related documentation elements.
441
- */
442
128
  innerGroups;
443
- /**
444
- * Program listing or source code for the compound.
445
- *
446
- * @remarks
447
- * Contains the actual source code implementation or listing for the
448
- * compound when available. This property captures code content extracted
449
- * from 'programlisting' XML elements, providing syntax-highlighted
450
- * source code display in the documentation.
451
- */
452
129
  programListing;
453
- /**
454
- * Location information for the compound definition.
455
- *
456
- * @remarks
457
- * Contains file path, line number, and other location details for where
458
- * the compound is defined in the source code. This property captures
459
- * location metadata extracted from 'location' XML elements, enabling
460
- * source code navigation and reference linking.
461
- */
462
130
  location;
463
- /**
464
- * Complete list of all members contained in the compound.
465
- *
466
- * @remarks
467
- * Contains a comprehensive list of all members (methods, properties,
468
- * etc.) that belong to this compound, including inherited members.
469
- * This property captures member information extracted from
470
- * 'listofallmembers' XML elements for complete API documentation.
471
- */
472
131
  listOfAllMembers;
473
- // Mandatory attributes.
474
- /**
475
- * Unique identifier for the compound.
476
- *
477
- * @remarks
478
- * Contains the unique ID assigned to this compound by Doxygen for
479
- * cross-referencing and linking purposes. This identifier is mandatory
480
- * and serves as the primary key for compound identification throughout
481
- * the documentation system.
482
- */
483
132
  id = '';
484
- /**
485
- * The kind or type of compound.
486
- *
487
- * @remarks
488
- * Specifies the compound type using DoxCompoundKind enumeration values
489
- * such as 'class', 'struct', 'file', 'namespace', 'page', etc. This
490
- * mandatory attribute determines how the compound should be processed
491
- * and displayed in the documentation output.
492
- */
493
- kind = ''; // DoxCompoundKind
494
- // Optional attributes.
495
- /**
496
- * Programming language of the compound.
497
- *
498
- * @remarks
499
- * Specifies the programming language using DoxLanguage enumeration
500
- * values when the compound is language-specific. This optional attribute
501
- * enables language-aware processing and appropriate syntax highlighting
502
- * in the generated documentation.
503
- */
504
- language; // DoxLanguage
505
- // WARNING: This attribute is not marked as optional, but is not present.
506
- /**
507
- * Protection level of the compound.
508
- *
509
- * @remarks
510
- * Specifies the access protection level (public, private, protected)
511
- * for the compound using DoxProtectionKind enumeration values. Note
512
- * that whilst this attribute is not marked as optional in the XML
513
- * schema, it may not be present in all compound definitions.
514
- */
133
+ kind = '';
134
+ language;
515
135
  prot;
516
- /**
517
- * Indicates whether the compound is marked as final.
518
- *
519
- * @remarks
520
- * Specifies that the compound cannot be inherited from or extended,
521
- * typically used in object-oriented programming languages that support
522
- * final classes or sealed types. This boolean attribute reflects the
523
- * final modifier in the source code.
524
- */
525
136
  final;
526
- /**
527
- * Indicates whether the compound is inline.
528
- *
529
- * @remarks
530
- * Specifies that the compound is defined inline, typically used for
531
- * functions, methods, or other constructs that are implemented directly
532
- * in header files. This boolean attribute reflects inline declarations
533
- * in the source code.
534
- */
535
137
  inline;
536
- /**
537
- * Indicates whether the compound is sealed.
538
- *
539
- * @remarks
540
- * Specifies that the compound is sealed and cannot be inherited from,
541
- * similar to final but using different language-specific terminology.
542
- * This boolean attribute reflects sealed modifiers found in languages
543
- * like C# or other object-oriented programming environments.
544
- */
545
138
  sealed;
546
- /**
547
- * Indicates whether the compound is abstract.
548
- *
549
- * @remarks
550
- * Specifies that the compound is abstract and cannot be instantiated
551
- * directly, typically requiring concrete implementations of abstract
552
- * methods or properties. This boolean attribute reflects abstract
553
- * modifiers in object-oriented programming languages.
554
- */
555
139
  abstract;
556
- // Not in xsd.
557
- // parentId: string = ''
558
- // permalink: string = ''
559
- /**
560
- * Constructs a new compound definition data model instance.
561
- *
562
- * @remarks
563
- * Parses the complete XML structure for compound definitions, processing
564
- * all elements and attributes according to the Doxygen XML schema. This
565
- * includes handling optional and mandatory elements, complex nested
566
- * structures, and comprehensive attribute validation to ensure data
567
- * integrity throughout the parsing process.
568
- *
569
- * @param xml - The XML parser instance for processing elements
570
- * @param element - The XML element object to parse
571
- * @param elementName - The name of the XML element being processed
572
- */
573
140
  constructor(xml, element, elementName) {
574
141
  super(elementName);
575
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
576
- // ------------------------------------------------------------------------
577
- // Process elements.
578
- // console.log(util.inspect(element, { compact: false, depth: 999 })
579
142
  const innerElements = xml.getInnerElements(element, elementName);
580
143
  assert(innerElements.length > 0);
581
144
  for (const innerElement of innerElements) {
582
145
  if (xml.hasInnerText(innerElement)) {
583
- // Ignore texts.
584
146
  }
585
147
  else if (xml.isInnerElementText(innerElement, 'compoundname')) {
586
148
  this.compoundName = xml.getInnerElementText(innerElement, 'compoundname');
@@ -603,20 +165,16 @@ export class AbstractCompoundDefType extends AbstractDataModelBase {
603
165
  this.derivedCompoundRefs.push(new DerivedCompoundRefDataModel(xml, innerElement));
604
166
  }
605
167
  else if (xml.hasInnerElement(innerElement, 'includes')) {
606
- // console.log(util.inspect(item))
607
168
  this.includes ??= [];
608
169
  this.includes.push(new IncludesDataModel(xml, innerElement));
609
170
  }
610
171
  else if (xml.hasInnerElement(innerElement, 'includedby')) {
611
- // console.log(util.inspect(item))
612
172
  this.includedBy ??= [];
613
173
  this.includedBy.push(new IncludedByDataModel(xml, innerElement));
614
174
  }
615
175
  else if (xml.hasInnerElement(innerElement, 'incdepgraph')) {
616
- // TODO: Ignored, not used for now.
617
176
  }
618
177
  else if (xml.hasInnerElement(innerElement, 'invincdepgraph')) {
619
- // TODO: Ignored, not used for now.
620
178
  }
621
179
  else if (xml.hasInnerElement(innerElement, 'innerdir')) {
622
180
  this.innerDirs ??= [];
@@ -630,6 +188,10 @@ export class AbstractCompoundDefType extends AbstractDataModelBase {
630
188
  this.innerClasses ??= [];
631
189
  this.innerClasses.push(new InnerClassDataModel(xml, innerElement));
632
190
  }
191
+ else if (xml.hasInnerElement(innerElement, 'innerconcept')) {
192
+ this.innerConcepts ??= [];
193
+ this.innerConcepts.push(new InnerConceptDataModel(xml, innerElement));
194
+ }
633
195
  else if (xml.hasInnerElement(innerElement, 'innernamespace')) {
634
196
  this.innerNamespaces ??= [];
635
197
  this.innerNamespaces.push(new InnerNamespaceDataModel(xml, innerElement));
@@ -652,11 +214,18 @@ export class AbstractCompoundDefType extends AbstractDataModelBase {
652
214
  else if (xml.hasInnerElement(innerElement, 'tableofcontents')) {
653
215
  this.tableOfContents = new TableOfContentsDataModel(xml, innerElement);
654
216
  }
217
+ else if (xml.hasInnerElement(innerElement, 'requiresclause')) {
218
+ this.requiresClause = new RequiresClauseDataModel(xml, innerElement);
219
+ }
220
+ else if (xml.hasInnerElement(innerElement, 'initializer')) {
221
+ this.initializer = new InitializerDataModel(xml, innerElement);
222
+ }
223
+ else if (xml.hasInnerElement(innerElement, 'conceptparts')) {
224
+ this.conceptParts = new ConceptPartsDataModel(xml, innerElement);
225
+ }
655
226
  else if (xml.hasInnerElement(innerElement, 'inheritancegraph')) {
656
- // TODO: Ignored, not used for now.
657
227
  }
658
228
  else if (xml.hasInnerElement(innerElement, 'collaborationgraph')) {
659
- // TODO: Ignored, not used for now.
660
229
  }
661
230
  else if (xml.hasInnerElement(innerElement, 'programlisting')) {
662
231
  assert(this.programListing === undefined);
@@ -672,15 +241,9 @@ export class AbstractCompoundDefType extends AbstractDataModelBase {
672
241
  console.error(`${elementName} element:`, Object.keys(innerElement), 'not implemented yet in', this.constructor.name);
673
242
  }
674
243
  }
675
- // Moved down, depends on kind.
676
- // assert(this.compoundName.length > 0)
677
- // ------------------------------------------------------------------------
678
- // Process attributes.
679
244
  assert(xml.hasAttributes(element));
680
245
  const attributesNames = xml.getAttributesNames(element);
681
- // console.log(attributesNames)
682
246
  for (const attributeName of attributesNames) {
683
- // console.log(attributeName)
684
247
  if (attributeName === '@_id') {
685
248
  this.id = xml.getAttributeStringValue(element, '@_id');
686
249
  }
@@ -694,16 +257,16 @@ export class AbstractCompoundDefType extends AbstractDataModelBase {
694
257
  this.prot = xml.getAttributeStringValue(element, '@_prot');
695
258
  }
696
259
  else if (attributeName === '@_final') {
697
- this.final = Boolean(xml.getAttributeBooleanValue(element, '@_final'));
260
+ this.final = xml.getAttributeBooleanValue(element, '@_final');
698
261
  }
699
262
  else if (attributeName === '@_inline') {
700
- this.inline = Boolean(xml.getAttributeBooleanValue(element, '@_inline'));
263
+ this.inline = xml.getAttributeBooleanValue(element, '@_inline');
701
264
  }
702
265
  else if (attributeName === '@_sealed') {
703
- this.sealed = Boolean(xml.getAttributeBooleanValue(element, '@_sealed'));
266
+ this.sealed = xml.getAttributeBooleanValue(element, '@_sealed');
704
267
  }
705
268
  else if (attributeName === '@_abstract') {
706
- this.abstract = Boolean(xml.getAttributeBooleanValue(element, '@_abstract'));
269
+ this.abstract = xml.getAttributeBooleanValue(element, '@_abstract');
707
270
  }
708
271
  else {
709
272
  console.error(util.inspect(element, { compact: false, depth: 999 }));
@@ -712,90 +275,23 @@ export class AbstractCompoundDefType extends AbstractDataModelBase {
712
275
  }
713
276
  assert(this.id.length > 0);
714
277
  assert(this.kind.length > 0);
715
- // WARNING: The attribute is not marked as optional, but is not present.
716
- // assert(this.prot.length > 0)
717
278
  if (this.kind !== 'namespace') {
718
279
  assert(this.compoundName.length > 0);
719
280
  }
720
- // ------------------------------------------------------------------------
721
- // console.log(util.inspect(this, { compact: false, depth: 999 }))
722
281
  }
723
282
  }
724
- // ----------------------------------------------------------------------------
725
- // <xsd:element name="compounddef" type="compounddefType" minOccurs="0" />
726
- /**
727
- * Concrete implementation of compound definition data model.
728
- *
729
- * @remarks
730
- * Provides the primary data model implementation for Doxygen compound
731
- * definitions, handling all types of compounds including classes, structures,
732
- * files, namespaces, and pages. This class serves as the main entry point
733
- * for processing compound definition XML elements in the Doxygen output.
734
- *
735
- * @public
736
- */
737
283
  export class CompoundDefDataModel extends AbstractCompoundDefType {
738
- /**
739
- * Constructs a new CompoundDefDataModel instance.
740
- *
741
- * @remarks
742
- * Creates a data model object for 'compounddef' XML elements by delegating
743
- * to the parent constructor with the appropriate element name. This
744
- * represents the root element for all compound definitions in Doxygen XML
745
- * output.
746
- *
747
- * @param xml - The XML parser instance for processing elements
748
- * @param element - The XML element object to parse
749
- */
750
284
  constructor(xml, element) {
751
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
752
285
  super(xml, element, 'compounddef');
753
286
  }
754
287
  }
755
- // ----------------------------------------------------------------------------
756
- // <xsd:complexType name="docHtmlOnlyType">
757
- // <xsd:simpleContent>
758
- // <xsd:extension base="xsd:string">
759
- // <xsd:attribute name="block" type="xsd:string" />
760
- // </xsd:extension>
761
- // </xsd:simpleContent>
762
- // </xsd:complexType>
763
- /**
764
- * Abstract base class for HTML-only documentation content.
765
- *
766
- * @remarks
767
- * Represents content that should only be rendered in HTML output formats,
768
- * providing a mechanism for format-specific content inclusion in Doxygen
769
- * documentation. This class handles the 'docHtmlOnlyType' XML schema
770
- * structure with text content and optional block attributes.
771
- *
772
- * @public
773
- */
774
288
  export class AbstractDocHtmlOnlyType extends AbstractDataModelBase {
775
289
  text = '';
776
290
  block;
777
- /**
778
- * Constructs a new HTML-only content data model instance.
779
- *
780
- * @remarks
781
- * Parses HTML-only content elements from Doxygen XML output, extracting
782
- * the text content and any optional block attributes. This content is
783
- * intended for rendering only in HTML-based output formats whilst being
784
- * excluded from other documentation formats.
785
- *
786
- * @param xml - The XML parser instance for processing elements
787
- * @param element - The XML element object to parse
788
- * @param elementName - The name of the XML element being processed
789
- */
790
291
  constructor(xml, element, elementName) {
791
292
  super(elementName);
792
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
793
- // ------------------------------------------------------------------------
794
- // Process elements.
795
293
  assert(xml.isInnerElementText(element, elementName));
796
294
  this.text = xml.getInnerElementText(element, elementName);
797
- // ------------------------------------------------------------------------
798
- // Process attributes.
799
295
  if (xml.hasAttributes(element)) {
800
296
  const attributesNames = xml.getAttributesNames(element);
801
297
  for (const attributeName of attributesNames) {
@@ -808,176 +304,36 @@ export class AbstractDocHtmlOnlyType extends AbstractDataModelBase {
808
304
  }
809
305
  }
810
306
  }
811
- // ------------------------------------------------------------------------
812
- // console.log(util.inspect(this, { compact: false, depth: 999 }))
813
307
  }
814
308
  }
815
- // ----------------------------------------------------------------------------
816
- // <xsd:element name="htmlonly" type="docHtmlOnlyType" />
817
- /**
818
- * Data model for HTML-only content elements.
819
- *
820
- * @remarks
821
- * Represents content that should only be included in HTML output formats,
822
- * typically used for web-specific markup or styling that is not appropriate
823
- * for other documentation formats. This implementation handles the 'htmlonly'
824
- * XML element from Doxygen output.
825
- *
826
- * @public
827
- */
828
309
  export class HtmlOnlyDataModel extends AbstractDocHtmlOnlyType {
829
- /**
830
- * Constructs a new HtmlOnlyDataModel instance.
831
- *
832
- * @remarks
833
- * Creates a data model object for 'htmlonly' XML elements, which contain
834
- * content specifically intended for HTML output rendering only.
835
- *
836
- * @param xml - The XML parser instance for processing elements
837
- * @param element - The XML element object to parse
838
- */
839
310
  constructor(xml, element) {
840
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
841
311
  super(xml, element, 'htmlonly');
842
312
  }
843
313
  }
844
- // Normally strings are properties, but these are unusual, so we keep them
845
- // as objects.
846
- // <xsd:element name="manonly" type="xsd:string" />
847
- // <xsd:element name="xmlonly" type="xsd:string" />
848
- // <xsd:element name="rtfonly" type="xsd:string" />
849
- // <xsd:element name="latexonly" type="xsd:string" />
850
- // <xsd:element name="docbookonly" type="xsd:string" />
851
- /**
852
- * Data model for manual-only content elements.
853
- *
854
- * @remarks
855
- * Represents content that should only be included in manual page output
856
- * formats. This class handles string content specifically intended for
857
- * Unix manual page generation whilst excluding it from other documentation
858
- * formats.
859
- *
860
- * @public
861
- */
862
314
  export class ManOnlyDataModel extends AbstractStringType {
863
- /**
864
- * Constructs a new ManOnlyDataModel instance.
865
- *
866
- * @remarks
867
- * Creates a data model object for 'manonly' XML elements containing
868
- * content specifically intended for manual page output rendering.
869
- *
870
- * @param xml - The XML parser instance for processing elements
871
- * @param element - The XML element object to parse
872
- */
873
315
  constructor(xml, element) {
874
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
875
316
  super(xml, element, 'manonly');
876
317
  }
877
318
  }
878
- /**
879
- * Data model for XML-only content elements.
880
- *
881
- * @remarks
882
- * Represents content that should only be included in XML output formats.
883
- * This class handles string content specifically intended for XML-based
884
- * documentation generation whilst excluding it from other output formats.
885
- *
886
- * @public
887
- */
888
319
  export class XmlOnlyDataModel extends AbstractStringType {
889
- /**
890
- * Constructs a new XmlOnlyDataModel instance.
891
- *
892
- * @remarks
893
- * Creates a data model object for 'xmlonly' XML elements containing
894
- * content specifically intended for XML output rendering.
895
- *
896
- * @param xml - The XML parser instance for processing elements
897
- * @param element - The XML element object to parse
898
- */
899
320
  constructor(xml, element) {
900
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
901
321
  super(xml, element, 'xmlonly');
902
322
  }
903
323
  }
904
- /**
905
- * Data model for RTF-only content elements.
906
- *
907
- * @remarks
908
- * Represents content that should only be included in Rich Text Format (RTF)
909
- * output. This class handles string content specifically intended for RTF
910
- * document generation whilst excluding it from other documentation formats.
911
- *
912
- * @public
913
- */
914
324
  export class RtfOnlyDataModel extends AbstractStringType {
915
- /**
916
- * Constructs a new RtfOnlyDataModel instance.
917
- *
918
- * @remarks
919
- * Creates a data model object for 'rtfonly' XML elements containing
920
- * content specifically intended for RTF output rendering.
921
- *
922
- * @param xml - The XML parser instance for processing elements
923
- * @param element - The XML element object to parse
924
- */
925
325
  constructor(xml, element) {
926
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
927
326
  super(xml, element, 'rtfonly');
928
327
  }
929
328
  }
930
- /**
931
- * Data model for LaTeX-only content elements.
932
- *
933
- * @remarks
934
- * Represents content that should only be included in LaTeX output formats.
935
- * This class handles string content specifically intended for LaTeX document
936
- * generation whilst excluding it from other documentation formats.
937
- *
938
- * @public
939
- */
940
329
  export class LatexOnlyDataModel extends AbstractStringType {
941
- /**
942
- * Constructs a new LatexOnlyDataModel instance.
943
- *
944
- * @remarks
945
- * Creates a data model object for 'latexonly' XML elements containing
946
- * content specifically intended for LaTeX output rendering.
947
- *
948
- * @param xml - The XML parser instance for processing elements
949
- * @param element - The XML element object to parse
950
- */
951
330
  constructor(xml, element) {
952
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
953
331
  super(xml, element, 'latexonly');
954
332
  }
955
333
  }
956
- /**
957
- * Data model for DocBook-only content elements.
958
- *
959
- * @remarks
960
- * Represents content that should only be included in DocBook output formats.
961
- * This class handles string content specifically intended for DocBook XML
962
- * document generation whilst excluding it from other documentation formats.
963
- *
964
- * @public
965
- */
966
334
  export class DocBookOnlyDataModel extends AbstractStringType {
967
- /**
968
- * Constructs a new DocBookOnlyDataModel instance.
969
- *
970
- * @remarks
971
- * Creates a data model object for 'docbookonly' XML elements containing
972
- * content specifically intended for DocBook output rendering.
973
- *
974
- * @param xml - The XML parser instance for processing elements
975
- * @param element - The XML element object to parse
976
- */
977
335
  constructor(xml, element) {
978
- // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
979
336
  super(xml, element, 'docbookonly');
980
337
  }
981
338
  }
982
- // ----------------------------------------------------------------------------
983
339
  //# sourceMappingURL=compounddef-dm.js.map