@xpack/doxygen2docusaurus 1.0.2 → 2.0.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 (267) hide show
  1. package/README.md +3 -4
  2. package/dist/cli/main.d.ts +6 -0
  3. package/dist/cli/main.d.ts.map +1 -1
  4. package/dist/cli/main.js +29 -2
  5. package/dist/cli/main.js.map +1 -1
  6. package/dist/docusaurus/cli-options.d.ts +268 -39
  7. package/dist/docusaurus/cli-options.d.ts.map +1 -1
  8. package/dist/docusaurus/cli-options.js +267 -53
  9. package/dist/docusaurus/cli-options.js.map +1 -1
  10. package/dist/docusaurus/generator.d.ts +179 -4
  11. package/dist/docusaurus/generator.d.ts.map +1 -1
  12. package/dist/docusaurus/generator.js +215 -45
  13. package/dist/docusaurus/generator.js.map +1 -1
  14. package/dist/docusaurus/renderers/descriptiontype.d.ts +417 -0
  15. package/dist/docusaurus/renderers/descriptiontype.d.ts.map +1 -1
  16. package/dist/docusaurus/renderers/descriptiontype.js +417 -0
  17. package/dist/docusaurus/renderers/descriptiontype.js.map +1 -1
  18. package/dist/docusaurus/renderers/docinternalstype.d.ts +132 -0
  19. package/dist/docusaurus/renderers/docinternalstype.d.ts.map +1 -1
  20. package/dist/docusaurus/renderers/docinternalstype.js +132 -0
  21. package/dist/docusaurus/renderers/docinternalstype.js.map +1 -1
  22. package/dist/docusaurus/renderers/doclisttype.d.ts +22 -0
  23. package/dist/docusaurus/renderers/doclisttype.d.ts.map +1 -1
  24. package/dist/docusaurus/renderers/doclisttype.js +22 -2
  25. package/dist/docusaurus/renderers/doclisttype.js.map +1 -1
  26. package/dist/docusaurus/renderers/doctabletype.d.ts +88 -0
  27. package/dist/docusaurus/renderers/doctabletype.d.ts.map +1 -1
  28. package/dist/docusaurus/renderers/doctabletype.js +88 -0
  29. package/dist/docusaurus/renderers/doctabletype.js.map +1 -1
  30. package/dist/docusaurus/renderers/doctitletype.d.ts +22 -0
  31. package/dist/docusaurus/renderers/doctitletype.d.ts.map +1 -1
  32. package/dist/docusaurus/renderers/doctitletype.js +22 -0
  33. package/dist/docusaurus/renderers/doctitletype.js.map +1 -1
  34. package/dist/docusaurus/renderers/docvariablelisttype.d.ts +44 -0
  35. package/dist/docusaurus/renderers/docvariablelisttype.d.ts.map +1 -1
  36. package/dist/docusaurus/renderers/docvariablelisttype.js +44 -0
  37. package/dist/docusaurus/renderers/docvariablelisttype.js.map +1 -1
  38. package/dist/docusaurus/renderers/docxrefsecttype.d.ts +22 -0
  39. package/dist/docusaurus/renderers/docxrefsecttype.d.ts.map +1 -1
  40. package/dist/docusaurus/renderers/docxrefsecttype.js +22 -0
  41. package/dist/docusaurus/renderers/docxrefsecttype.js.map +1 -1
  42. package/dist/docusaurus/renderers/element-renderer-base.d.ts +74 -0
  43. package/dist/docusaurus/renderers/element-renderer-base.d.ts.map +1 -1
  44. package/dist/docusaurus/renderers/element-renderer-base.js +52 -0
  45. package/dist/docusaurus/renderers/element-renderer-base.js.map +1 -1
  46. package/dist/docusaurus/renderers/inctype.d.ts +23 -0
  47. package/dist/docusaurus/renderers/inctype.d.ts.map +1 -1
  48. package/dist/docusaurus/renderers/inctype.js +23 -0
  49. package/dist/docusaurus/renderers/inctype.js.map +1 -1
  50. package/dist/docusaurus/renderers/linkedtexttype.d.ts +22 -0
  51. package/dist/docusaurus/renderers/linkedtexttype.d.ts.map +1 -1
  52. package/dist/docusaurus/renderers/linkedtexttype.js +22 -0
  53. package/dist/docusaurus/renderers/linkedtexttype.js.map +1 -1
  54. package/dist/docusaurus/renderers/listingtype.d.ts +52 -0
  55. package/dist/docusaurus/renderers/listingtype.d.ts.map +1 -1
  56. package/dist/docusaurus/renderers/listingtype.js +66 -2
  57. package/dist/docusaurus/renderers/listingtype.js.map +1 -1
  58. package/dist/docusaurus/renderers/paramtype.d.ts +22 -0
  59. package/dist/docusaurus/renderers/paramtype.d.ts.map +1 -1
  60. package/dist/docusaurus/renderers/paramtype.js +22 -0
  61. package/dist/docusaurus/renderers/paramtype.js.map +1 -1
  62. package/dist/docusaurus/renderers/referencetype.d.ts +23 -0
  63. package/dist/docusaurus/renderers/referencetype.d.ts.map +1 -1
  64. package/dist/docusaurus/renderers/referencetype.js +23 -2
  65. package/dist/docusaurus/renderers/referencetype.js.map +1 -1
  66. package/dist/docusaurus/renderers/reftexttype.d.ts +22 -0
  67. package/dist/docusaurus/renderers/reftexttype.d.ts.map +1 -1
  68. package/dist/docusaurus/renderers/reftexttype.js +22 -0
  69. package/dist/docusaurus/renderers/reftexttype.js.map +1 -1
  70. package/dist/docusaurus/renderers/reftype.d.ts +22 -0
  71. package/dist/docusaurus/renderers/reftype.d.ts.map +1 -1
  72. package/dist/docusaurus/renderers/reftype.js +22 -0
  73. package/dist/docusaurus/renderers/reftype.js.map +1 -1
  74. package/dist/docusaurus/renderers/renderers.d.ts +151 -0
  75. package/dist/docusaurus/renderers/renderers.d.ts.map +1 -1
  76. package/dist/docusaurus/renderers/renderers.js +151 -0
  77. package/dist/docusaurus/renderers/renderers.js.map +1 -1
  78. package/dist/docusaurus/renderers/substringtype.d.ts +22 -0
  79. package/dist/docusaurus/renderers/substringtype.d.ts.map +1 -1
  80. package/dist/docusaurus/renderers/substringtype.js +22 -0
  81. package/dist/docusaurus/renderers/substringtype.js.map +1 -1
  82. package/dist/docusaurus/renderers/tableofcontentstype.d.ts +22 -0
  83. package/dist/docusaurus/renderers/tableofcontentstype.d.ts.map +1 -1
  84. package/dist/docusaurus/renderers/tableofcontentstype.js +22 -0
  85. package/dist/docusaurus/renderers/tableofcontentstype.js.map +1 -1
  86. package/dist/docusaurus/types.d.ts +114 -8
  87. package/dist/docusaurus/types.d.ts.map +1 -1
  88. package/dist/docusaurus/types.js.map +1 -1
  89. package/dist/docusaurus/utils.d.ts +214 -0
  90. package/dist/docusaurus/utils.d.ts.map +1 -1
  91. package/dist/docusaurus/utils.js +214 -0
  92. package/dist/docusaurus/utils.js.map +1 -1
  93. package/dist/docusaurus/view-model/classes-vm.d.ts +139 -2
  94. package/dist/docusaurus/view-model/classes-vm.d.ts.map +1 -1
  95. package/dist/docusaurus/view-model/classes-vm.js +147 -6
  96. package/dist/docusaurus/view-model/classes-vm.js.map +1 -1
  97. package/dist/docusaurus/view-model/collection-base.d.ts +122 -2
  98. package/dist/docusaurus/view-model/collection-base.d.ts.map +1 -1
  99. package/dist/docusaurus/view-model/collection-base.js +78 -0
  100. package/dist/docusaurus/view-model/collection-base.js.map +1 -1
  101. package/dist/docusaurus/view-model/compound-base-vm.d.ts +134 -19
  102. package/dist/docusaurus/view-model/compound-base-vm.d.ts.map +1 -1
  103. package/dist/docusaurus/view-model/compound-base-vm.js +122 -26
  104. package/dist/docusaurus/view-model/compound-base-vm.js.map +1 -1
  105. package/dist/docusaurus/view-model/description-anchors.d.ts +58 -0
  106. package/dist/docusaurus/view-model/description-anchors.d.ts.map +1 -1
  107. package/dist/docusaurus/view-model/description-anchors.js +58 -0
  108. package/dist/docusaurus/view-model/description-anchors.js.map +1 -1
  109. package/dist/docusaurus/view-model/files-and-folders-vm.d.ts +249 -2
  110. package/dist/docusaurus/view-model/files-and-folders-vm.d.ts.map +1 -1
  111. package/dist/docusaurus/view-model/files-and-folders-vm.js +250 -4
  112. package/dist/docusaurus/view-model/files-and-folders-vm.js.map +1 -1
  113. package/dist/docusaurus/view-model/groups-vm.d.ts +150 -2
  114. package/dist/docusaurus/view-model/groups-vm.d.ts.map +1 -1
  115. package/dist/docusaurus/view-model/groups-vm.js +153 -5
  116. package/dist/docusaurus/view-model/groups-vm.js.map +1 -1
  117. package/dist/docusaurus/view-model/members-vm.d.ts +552 -0
  118. package/dist/docusaurus/view-model/members-vm.d.ts.map +1 -1
  119. package/dist/docusaurus/view-model/members-vm.js +552 -4
  120. package/dist/docusaurus/view-model/members-vm.js.map +1 -1
  121. package/dist/docusaurus/view-model/namespaces-vm.d.ts +201 -2
  122. package/dist/docusaurus/view-model/namespaces-vm.d.ts.map +1 -1
  123. package/dist/docusaurus/view-model/namespaces-vm.js +202 -4
  124. package/dist/docusaurus/view-model/namespaces-vm.js.map +1 -1
  125. package/dist/docusaurus/view-model/options.d.ts +43 -0
  126. package/dist/docusaurus/view-model/options.d.ts.map +1 -1
  127. package/dist/docusaurus/view-model/options.js +43 -0
  128. package/dist/docusaurus/view-model/options.js.map +1 -1
  129. package/dist/docusaurus/view-model/pages-vm.d.ts +117 -2
  130. package/dist/docusaurus/view-model/pages-vm.d.ts.map +1 -1
  131. package/dist/docusaurus/view-model/pages-vm.js +119 -4
  132. package/dist/docusaurus/view-model/pages-vm.js.map +1 -1
  133. package/dist/docusaurus/view-model/tree-entries-vm.d.ts +135 -15
  134. package/dist/docusaurus/view-model/tree-entries-vm.d.ts.map +1 -1
  135. package/dist/docusaurus/view-model/tree-entries-vm.js +136 -16
  136. package/dist/docusaurus/view-model/tree-entries-vm.js.map +1 -1
  137. package/dist/docusaurus/view-model/view-model.d.ts +119 -0
  138. package/dist/docusaurus/view-model/view-model.d.ts.map +1 -1
  139. package/dist/docusaurus/view-model/view-model.js +119 -0
  140. package/dist/docusaurus/view-model/view-model.js.map +1 -1
  141. package/dist/docusaurus/workspace.d.ts +106 -0
  142. package/dist/docusaurus/workspace.d.ts.map +1 -1
  143. package/dist/docusaurus/workspace.js +107 -1
  144. package/dist/docusaurus/workspace.js.map +1 -1
  145. package/dist/doxygen/data-model/compounds/compounddef-dm.d.ts +485 -0
  146. package/dist/doxygen/data-model/compounds/compounddef-dm.d.ts.map +1 -1
  147. package/dist/doxygen/data-model/compounds/compounddef-dm.js +485 -0
  148. package/dist/doxygen/data-model/compounds/compounddef-dm.js.map +1 -1
  149. package/dist/doxygen/data-model/compounds/compoundreftype-dm.d.ts +120 -0
  150. package/dist/doxygen/data-model/compounds/compoundreftype-dm.d.ts.map +1 -1
  151. package/dist/doxygen/data-model/compounds/compoundreftype-dm.js +98 -0
  152. package/dist/doxygen/data-model/compounds/compoundreftype-dm.js.map +1 -1
  153. package/dist/doxygen/data-model/compounds/descriptiontype-dm.d.ts +2705 -0
  154. package/dist/doxygen/data-model/compounds/descriptiontype-dm.d.ts.map +1 -1
  155. package/dist/doxygen/data-model/compounds/descriptiontype-dm.js +2677 -47
  156. package/dist/doxygen/data-model/compounds/descriptiontype-dm.js.map +1 -1
  157. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.d.ts +165 -0
  158. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.d.ts.map +1 -1
  159. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.js +165 -0
  160. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.js.map +1 -1
  161. package/dist/doxygen/data-model/compounds/doxygentype-dm.d.ts +70 -0
  162. package/dist/doxygen/data-model/compounds/doxygentype-dm.d.ts.map +1 -1
  163. package/dist/doxygen/data-model/compounds/doxygentype-dm.js +70 -0
  164. package/dist/doxygen/data-model/compounds/doxygentype-dm.js.map +1 -1
  165. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.d.ts +78 -0
  166. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.d.ts.map +1 -1
  167. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.js +78 -0
  168. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.js.map +1 -1
  169. package/dist/doxygen/data-model/compounds/inctype-dm.d.ts +107 -0
  170. package/dist/doxygen/data-model/compounds/inctype-dm.d.ts.map +1 -1
  171. package/dist/doxygen/data-model/compounds/inctype-dm.js +107 -0
  172. package/dist/doxygen/data-model/compounds/inctype-dm.js.map +1 -1
  173. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.d.ts +123 -0
  174. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.d.ts.map +1 -1
  175. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.js +123 -0
  176. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.js.map +1 -1
  177. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.d.ts +70 -0
  178. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.d.ts.map +1 -1
  179. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.js +70 -1
  180. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.js.map +1 -1
  181. package/dist/doxygen/data-model/compounds/locationtype-dm.d.ts +156 -0
  182. package/dist/doxygen/data-model/compounds/locationtype-dm.d.ts.map +1 -1
  183. package/dist/doxygen/data-model/compounds/locationtype-dm.js +156 -5
  184. package/dist/doxygen/data-model/compounds/locationtype-dm.js.map +1 -1
  185. package/dist/doxygen/data-model/compounds/memberdeftype-dm.d.ts +433 -0
  186. package/dist/doxygen/data-model/compounds/memberdeftype-dm.d.ts.map +1 -1
  187. package/dist/doxygen/data-model/compounds/memberdeftype-dm.js +417 -6
  188. package/dist/doxygen/data-model/compounds/memberdeftype-dm.js.map +1 -1
  189. package/dist/doxygen/data-model/compounds/memberreftype-dm.d.ts +135 -0
  190. package/dist/doxygen/data-model/compounds/memberreftype-dm.d.ts.map +1 -1
  191. package/dist/doxygen/data-model/compounds/memberreftype-dm.js +136 -4
  192. package/dist/doxygen/data-model/compounds/memberreftype-dm.js.map +1 -1
  193. package/dist/doxygen/data-model/compounds/membertype-dm.d.ts +95 -0
  194. package/dist/doxygen/data-model/compounds/membertype-dm.d.ts.map +1 -1
  195. package/dist/doxygen/data-model/compounds/membertype-dm.js +76 -4
  196. package/dist/doxygen/data-model/compounds/membertype-dm.js.map +1 -1
  197. package/dist/doxygen/data-model/compounds/paramtype-dm.d.ts +158 -0
  198. package/dist/doxygen/data-model/compounds/paramtype-dm.d.ts.map +1 -1
  199. package/dist/doxygen/data-model/compounds/paramtype-dm.js +158 -1
  200. package/dist/doxygen/data-model/compounds/paramtype-dm.js.map +1 -1
  201. package/dist/doxygen/data-model/compounds/referencetype-dm.d.ts +130 -0
  202. package/dist/doxygen/data-model/compounds/referencetype-dm.d.ts.map +1 -1
  203. package/dist/doxygen/data-model/compounds/referencetype-dm.js +130 -2
  204. package/dist/doxygen/data-model/compounds/referencetype-dm.js.map +1 -1
  205. package/dist/doxygen/data-model/compounds/reftexttype-dm.d.ts +120 -0
  206. package/dist/doxygen/data-model/compounds/reftexttype-dm.d.ts.map +1 -1
  207. package/dist/doxygen/data-model/compounds/reftexttype-dm.js +106 -3
  208. package/dist/doxygen/data-model/compounds/reftexttype-dm.js.map +1 -1
  209. package/dist/doxygen/data-model/compounds/reftype-dm.d.ts +247 -0
  210. package/dist/doxygen/data-model/compounds/reftype-dm.d.ts.map +1 -1
  211. package/dist/doxygen/data-model/compounds/reftype-dm.js +247 -3
  212. package/dist/doxygen/data-model/compounds/reftype-dm.js.map +1 -1
  213. package/dist/doxygen/data-model/compounds/reimplementtype-dm.d.ts +99 -0
  214. package/dist/doxygen/data-model/compounds/reimplementtype-dm.d.ts.map +1 -1
  215. package/dist/doxygen/data-model/compounds/reimplementtype-dm.js +99 -2
  216. package/dist/doxygen/data-model/compounds/reimplementtype-dm.js.map +1 -1
  217. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.d.ts +159 -0
  218. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.d.ts.map +1 -1
  219. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.js +159 -3
  220. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.js.map +1 -1
  221. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.d.ts +255 -0
  222. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.d.ts.map +1 -1
  223. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.js +255 -6
  224. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.js.map +1 -1
  225. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.d.ts +60 -0
  226. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.d.ts.map +1 -1
  227. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.js +60 -1
  228. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.js.map +1 -1
  229. package/dist/doxygen/data-model/data-model.d.ts +86 -2
  230. package/dist/doxygen/data-model/data-model.d.ts.map +1 -1
  231. package/dist/doxygen/data-model/data-model.js +86 -4
  232. package/dist/doxygen/data-model/data-model.js.map +1 -1
  233. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.d.ts +109 -0
  234. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.d.ts.map +1 -1
  235. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.js +84 -2
  236. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.js.map +1 -1
  237. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.d.ts +81 -0
  238. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.d.ts.map +1 -1
  239. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.js +81 -3
  240. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.js.map +1 -1
  241. package/dist/doxygen/data-model/doxygen-xml-parser.d.ts +24 -7
  242. package/dist/doxygen/data-model/doxygen-xml-parser.d.ts.map +1 -1
  243. package/dist/doxygen/data-model/doxygen-xml-parser.js +24 -22
  244. package/dist/doxygen/data-model/doxygen-xml-parser.js.map +1 -1
  245. package/dist/doxygen/data-model/index/indexcompoundtype-dm.d.ts +92 -0
  246. package/dist/doxygen/data-model/index/indexcompoundtype-dm.d.ts.map +1 -1
  247. package/dist/doxygen/data-model/index/indexcompoundtype-dm.js +79 -2
  248. package/dist/doxygen/data-model/index/indexcompoundtype-dm.js.map +1 -1
  249. package/dist/doxygen/data-model/index/indexdoxygentype-dm.d.ts +76 -0
  250. package/dist/doxygen/data-model/index/indexdoxygentype-dm.d.ts.map +1 -1
  251. package/dist/doxygen/data-model/index/indexdoxygentype-dm.js +76 -3
  252. package/dist/doxygen/data-model/index/indexdoxygentype-dm.js.map +1 -1
  253. package/dist/doxygen/data-model/index/indexmembertype-dm.d.ts +79 -0
  254. package/dist/doxygen/data-model/index/indexmembertype-dm.d.ts.map +1 -1
  255. package/dist/doxygen/data-model/index/indexmembertype-dm.js +66 -2
  256. package/dist/doxygen/data-model/index/indexmembertype-dm.js.map +1 -1
  257. package/dist/doxygen/data-model/types.d.ts +96 -1
  258. package/dist/doxygen/data-model/types.d.ts.map +1 -1
  259. package/dist/doxygen/data-model/types.js +37 -0
  260. package/dist/doxygen/data-model/types.js.map +1 -1
  261. package/dist/doxygen2docusaurus.d.ts +4774 -0
  262. package/dist/tsdoc-metadata.json +11 -0
  263. package/package.json +11 -7
  264. /package/{template → templates}/css/custom.css +0 -0
  265. /package/{template → templates}/img/README.md +0 -0
  266. /package/{template → templates}/img/document-svgrepo-com.svg +0 -0
  267. /package/{template → templates}/img/folder-svgrepo-com.svg +0 -0
@@ -22,16 +22,75 @@ import { AbstractDataModelBase } from '../types.js';
22
22
  // <xsd:attribute name="type" type="typeType" use="required"/>
23
23
  // </xsd:complexType>
24
24
  /**
25
+ * Abstract base class for Doxygen file option type data models.
26
+ *
27
+ * @remarks
28
+ * Represents configuration option elements within Doxyfile XML structures,
29
+ * corresponding to the OptionType complex type in the XML schema. This
30
+ * class handles the parsing of option values and mandatory attributes
31
+ * (id, default, and type). All concrete option data model classes should
32
+ * extend this abstract base to ensure consistent parsing and data
33
+ * representation of Doxygen configuration settings.
34
+ *
25
35
  * @public
26
36
  */
27
37
  // eslint-disable-next-line max-len
28
38
  export class AbstractDoxygenFileOptionType extends AbstractDataModelBase {
29
- // Optional elements.
39
+ /**
40
+ * Collection of value strings associated with this configuration option.
41
+ *
42
+ * @remarks
43
+ * Optional array containing value elements found within the option
44
+ * structure. Each value represents a specific setting or parameter
45
+ * for the configuration option. The array supports zero to many values
46
+ * as per the XML schema, allowing for both single and multi-value
47
+ * configuration settings.
48
+ */
30
49
  values; // [0-n] valueType
31
- // Mandatory attributes.
50
+ /**
51
+ * The unique identifier for this configuration option.
52
+ *
53
+ * @remarks
54
+ * Mandatory attribute that specifies the name or identifier of the
55
+ * Doxygen configuration option. This corresponds to the actual
56
+ * configuration parameter name used in Doxygen configuration files
57
+ * and determines the specific setting being configured.
58
+ */
32
59
  id = ''; // idType
60
+ /**
61
+ * The default value indicator for this configuration option.
62
+ *
63
+ * @remarks
64
+ * Mandatory attribute that indicates whether this option is set to
65
+ * its default value. Corresponds to the defaultType enumeration in
66
+ * the XML schema, typically having values of 'yes' or 'no'.
67
+ */
33
68
  default = ''; // defaultType
69
+ /**
70
+ * The data type classification for this configuration option.
71
+ *
72
+ * @remarks
73
+ * Mandatory attribute that specifies the expected data type for the
74
+ * option's values. Corresponds to the typeType enumeration in the
75
+ * XML schema, indicating whether the option expects integer, boolean,
76
+ * string, or string list values.
77
+ */
34
78
  type = ''; // typeType
79
+ /**
80
+ * Constructs a new AbstractDoxygenFileOptionType instance from XML data.
81
+ *
82
+ * @param xml - The Doxygen XML parser instance for processing XML elements
83
+ * @param element - The XML element containing the option data
84
+ * @param elementName - The name of the XML element being processed
85
+ *
86
+ * @remarks
87
+ * Parses the provided XML element to extract configuration option
88
+ * information including value collections and mandatory attributes
89
+ * (id, default, and type). The constructor validates that all required
90
+ * attributes are present and processes value elements into a string
91
+ * array when present. The parsing ensures compliance with the OptionType
92
+ * schema definition.
93
+ */
35
94
  constructor(xml, element, elementName) {
36
95
  super(elementName);
37
96
  // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
@@ -83,9 +142,32 @@ export class AbstractDoxygenFileOptionType extends AbstractDataModelBase {
83
142
  // ----------------------------------------------------------------------------
84
143
  // <xsd:element name="option" type="OptionType" minOccurs="0" maxOccurs="unbounded"/>
85
144
  /**
145
+ * Concrete data model class for Doxyfile option elements.
146
+ *
147
+ * @remarks
148
+ * Represents individual configuration option elements found within
149
+ * Doxyfile XML structures. This class extends the abstract base to
150
+ * provide specific handling for 'option' elements, which define
151
+ * individual Doxygen configuration settings including their identifiers,
152
+ * types, default status, and associated values. Each option corresponds
153
+ * to a specific configuration parameter that controls Doxygen's
154
+ * documentation generation behaviour.
155
+ *
86
156
  * @public
87
157
  */
88
158
  export class DoxygenFileOptionDataModel extends AbstractDoxygenFileOptionType {
159
+ /**
160
+ * Constructs a new DoxygenFileOptionDataModel instance from XML data.
161
+ *
162
+ * @param xml - The Doxygen XML parser instance for processing XML elements
163
+ * @param element - The XML element containing the option data
164
+ *
165
+ * @remarks
166
+ * Initialises the option data model by parsing the provided XML element
167
+ * as an 'option' element type. The constructor delegates to the parent
168
+ * class for common option processing whilst specifying the element name
169
+ * for proper XML structure handling.
170
+ */
89
171
  constructor(xml, element) {
90
172
  // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
91
173
  super(xml, element, 'option');
@@ -1 +1 @@
1
- {"version":3,"file":"doxyfileoptiontype-dm.js","sourceRoot":"","sources":["../../../../src/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doxyfileoptiontype-dm.js","sourceRoot":"","sources":["../../../../src/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.ts"],"names":[],"mappings":"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"}
@@ -2,19 +2,100 @@ import { DoxygenXmlParser } from '../doxygen-xml-parser.js';
2
2
  import { DoxygenFileOptionDataModel } from './doxyfileoptiontype-dm.js';
3
3
  import { AbstractDataModelBase } from '../types.js';
4
4
  /**
5
+ * Abstract base class for Doxygen file type data models.
6
+ *
7
+ * @remarks
8
+ * Represents the structure of Doxyfile XML configurations, corresponding
9
+ * to the DoxygenFileType complex type in the XML schema. This class handles
10
+ * the parsing of Doxygen configuration options and mandatory attributes
11
+ * (version and language). All concrete Doxyfile data model classes should
12
+ * extend this abstract base to ensure consistent parsing and data
13
+ * representation of configuration settings.
14
+ *
5
15
  * @public
6
16
  */
7
17
  export declare abstract class AbstractDoxygenFileType extends AbstractDataModelBase {
18
+ /**
19
+ * The version of the Doxygen tool that generated the configuration.
20
+ *
21
+ * @remarks
22
+ * Mandatory attribute extracted from the XML structure that identifies
23
+ * the version of Doxygen used to generate the configuration file. This
24
+ * information is essential for compatibility and configuration parsing
25
+ * decisions.
26
+ */
8
27
  version: string;
28
+ /**
29
+ * The language specification for the documentation configuration.
30
+ *
31
+ * @remarks
32
+ * Mandatory attribute corresponding to the xml:lang attribute in the
33
+ * XML structure. Specifies the primary language used in the configuration
34
+ * and documentation generation process for internationalisation purposes.
35
+ */
9
36
  lang: string;
37
+ /**
38
+ * Collection of configuration option data models.
39
+ *
40
+ * @remarks
41
+ * Optional array containing option elements found within the Doxyfile
42
+ * structure. Each option represents a specific configuration setting
43
+ * that controls the behaviour of Doxygen during documentation generation.
44
+ * The array supports zero to many options as per the XML schema.
45
+ */
10
46
  options?: DoxygenFileOptionDataModel[] | undefined;
47
+ /**
48
+ * The XML schema location reference for validation.
49
+ *
50
+ * @remarks
51
+ * Optional attribute that specifies the location of the XML schema
52
+ * definition used for validating the structure of the Doxyfile XML.
53
+ * This provides schema validation capabilities for the parsed
54
+ * configuration content.
55
+ */
11
56
  noNamespaceSchemaLocation?: string | undefined;
57
+ /**
58
+ * Constructs a new AbstractDoxygenFileType instance from XML data.
59
+ *
60
+ * @param xml - The Doxygen XML parser instance for processing XML elements
61
+ * @param element - The XML element containing the Doxyfile data
62
+ * @param elementName - The name of the XML element being processed
63
+ *
64
+ * @remarks
65
+ * Parses the provided XML element to extract Doxyfile configuration
66
+ * information including option collections and mandatory attributes
67
+ * (version and language). The constructor validates that all required
68
+ * attributes are present and processes option elements into the
69
+ * appropriate data models. Optional schema location attributes are
70
+ * also extracted when present.
71
+ */
12
72
  constructor(xml: DoxygenXmlParser, element: object, elementName: string);
13
73
  }
14
74
  /**
75
+ * Concrete data model class for doxyfile elements.
76
+ *
77
+ * @remarks
78
+ * Represents the root element of Doxyfile XML configuration files,
79
+ * extending the abstract base class to provide specific handling for
80
+ * 'doxyfile' elements. This class serves as the primary entry point
81
+ * for parsing Doxygen configuration files and provides access to all
82
+ * configuration options and metadata contained within the file structure.
83
+ *
15
84
  * @public
16
85
  */
17
86
  export declare class DoxygenFileDataModel extends AbstractDoxygenFileType {
87
+ /**
88
+ * Constructs a new DoxygenFileDataModel instance from XML data.
89
+ *
90
+ * @param xml - The Doxygen XML parser instance for processing XML elements
91
+ * @param element - The XML element containing the doxyfile data
92
+ *
93
+ * @remarks
94
+ * Initialises the Doxyfile data model by parsing the provided XML element
95
+ * as a 'doxyfile' element type. The constructor delegates to the parent
96
+ * class for common configuration processing whilst specifying the element
97
+ * name for proper XML structure handling.
98
+ */
18
99
  constructor(xml: DoxygenXmlParser, element: object);
19
100
  }
20
101
  //# sourceMappingURL=doxyfiletype-dm.d.ts.map
@@ -1 +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"}
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;;;;;;;;;;;;GAYG;AACH,8BAAsB,uBAAwB,SAAQ,qBAAqB;IACzE;;;;;;;;OAQG;IACH,OAAO,SAAK;IAEZ;;;;;;;OAOG;IACH,IAAI,SAAK;IAET;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,0BAA0B,EAAE,GAAG,SAAS,CAAA;IAElD;;;;;;;;OAQG;IACH,yBAAyB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAE9C;;;;;;;;;;;;;;OAcG;gBACS,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;CA4DxE;AAMD;;;;;;;;;;;GAWG;AACH,qBAAa,oBAAqB,SAAQ,uBAAuB;IAC/D;;;;;;;;;;;OAWG;gBACS,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM;CAInD"}
@@ -22,16 +22,73 @@ import { AbstractDataModelBase } from '../types.js';
22
22
  // <xsd:attribute ref="xml:lang" use="required"/>
23
23
  // </xsd:complexType>
24
24
  /**
25
+ * Abstract base class for Doxygen file type data models.
26
+ *
27
+ * @remarks
28
+ * Represents the structure of Doxyfile XML configurations, corresponding
29
+ * to the DoxygenFileType complex type in the XML schema. This class handles
30
+ * the parsing of Doxygen configuration options and mandatory attributes
31
+ * (version and language). All concrete Doxyfile data model classes should
32
+ * extend this abstract base to ensure consistent parsing and data
33
+ * representation of configuration settings.
34
+ *
25
35
  * @public
26
36
  */
27
37
  export class AbstractDoxygenFileType extends AbstractDataModelBase {
28
- // Mandatory attributes.
38
+ /**
39
+ * The version of the Doxygen tool that generated the configuration.
40
+ *
41
+ * @remarks
42
+ * Mandatory attribute extracted from the XML structure that identifies
43
+ * the version of Doxygen used to generate the configuration file. This
44
+ * information is essential for compatibility and configuration parsing
45
+ * decisions.
46
+ */
29
47
  version = '';
48
+ /**
49
+ * The language specification for the documentation configuration.
50
+ *
51
+ * @remarks
52
+ * Mandatory attribute corresponding to the xml:lang attribute in the
53
+ * XML structure. Specifies the primary language used in the configuration
54
+ * and documentation generation process for internationalisation purposes.
55
+ */
30
56
  lang = '';
31
- // Optional elements.
57
+ /**
58
+ * Collection of configuration option data models.
59
+ *
60
+ * @remarks
61
+ * Optional array containing option elements found within the Doxyfile
62
+ * structure. Each option represents a specific configuration setting
63
+ * that controls the behaviour of Doxygen during documentation generation.
64
+ * The array supports zero to many options as per the XML schema.
65
+ */
32
66
  options;
33
- // Optional attributes.
67
+ /**
68
+ * The XML schema location reference for validation.
69
+ *
70
+ * @remarks
71
+ * Optional attribute that specifies the location of the XML schema
72
+ * definition used for validating the structure of the Doxyfile XML.
73
+ * This provides schema validation capabilities for the parsed
74
+ * configuration content.
75
+ */
34
76
  noNamespaceSchemaLocation;
77
+ /**
78
+ * Constructs a new AbstractDoxygenFileType instance from XML data.
79
+ *
80
+ * @param xml - The Doxygen XML parser instance for processing XML elements
81
+ * @param element - The XML element containing the Doxyfile data
82
+ * @param elementName - The name of the XML element being processed
83
+ *
84
+ * @remarks
85
+ * Parses the provided XML element to extract Doxyfile configuration
86
+ * information including option collections and mandatory attributes
87
+ * (version and language). The constructor validates that all required
88
+ * attributes are present and processes option elements into the
89
+ * appropriate data models. Optional schema location attributes are
90
+ * also extracted when present.
91
+ */
35
92
  constructor(xml, element, elementName) {
36
93
  super(elementName);
37
94
  // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
@@ -80,9 +137,30 @@ export class AbstractDoxygenFileType extends AbstractDataModelBase {
80
137
  // ----------------------------------------------------------------------------
81
138
  // <xsd:element name="doxyfile" type="DoxygenFileType"/>
82
139
  /**
140
+ * Concrete data model class for doxyfile elements.
141
+ *
142
+ * @remarks
143
+ * Represents the root element of Doxyfile XML configuration files,
144
+ * extending the abstract base class to provide specific handling for
145
+ * 'doxyfile' elements. This class serves as the primary entry point
146
+ * for parsing Doxygen configuration files and provides access to all
147
+ * configuration options and metadata contained within the file structure.
148
+ *
83
149
  * @public
84
150
  */
85
151
  export class DoxygenFileDataModel extends AbstractDoxygenFileType {
152
+ /**
153
+ * Constructs a new DoxygenFileDataModel instance from XML data.
154
+ *
155
+ * @param xml - The Doxygen XML parser instance for processing XML elements
156
+ * @param element - The XML element containing the doxyfile data
157
+ *
158
+ * @remarks
159
+ * Initialises the Doxyfile data model by parsing the provided XML element
160
+ * as a 'doxyfile' element type. The constructor delegates to the parent
161
+ * class for common configuration processing whilst specifying the element
162
+ * name for proper XML structure handling.
163
+ */
86
164
  constructor(xml, element) {
87
165
  // console.log(elementName, util.inspect(element, { compact: false, depth: 999 }))
88
166
  super(xml, element, 'doxyfile');
@@ -1 +1 @@
1
- {"version":3,"file":"doxyfiletype-dm.js","sourceRoot":"","sources":["../../../../src/doxygen/data-model/doxyfile/doxyfiletype-dm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doxyfiletype-dm.js","sourceRoot":"","sources":["../../../../src/doxygen/data-model/doxyfile/doxyfiletype-dm.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,7 @@ import { XmlElement } from './types.js';
3
3
  import { CliOptions } from '../../docusaurus/cli-options.js';
4
4
  import { AbstractDocImageType } from './compounds/descriptiontype-dm.js';
5
5
  /**
6
- * The DoxygenXmlParser class is responsible for parsing
7
- * Doxygen-generated XML files and constructing the internal data model.
6
+ * XML parser for Doxygen-generated documentation files.
8
7
  *
9
8
  * @remarks
10
9
  * This class initialises the XML parser with options that preserve the order
@@ -12,6 +11,9 @@ import { AbstractDocImageType } from './compounds/descriptiontype-dm.js';
12
11
  * for documentation purposes. It maintains a counter for the number of files
13
12
  * parsed and stores the resulting data model.
14
13
  *
14
+ * The parser is configured to handle Doxygen's specific XML format whilst
15
+ * maintaining fidelity to the source structure and content organisation.
16
+ *
15
17
  * @example
16
18
  * ```typescript
17
19
  * const parser = new DoxygenXmlParser({ options });
@@ -22,13 +24,29 @@ import { AbstractDocImageType } from './compounds/descriptiontype-dm.js';
22
24
  */
23
25
  export declare class DoxygenXmlParser {
24
26
  /**
25
- * The global configuration options.
27
+ * The global configuration options for the parsing operation.
28
+ *
29
+ * @remarks
30
+ * Contains the command-line interface options that control the behaviour
31
+ * of the parser throughout the XML processing workflow.
26
32
  */
27
33
  options: CliOptions;
28
34
  /**
29
- * The XML parser instance configured for Doxygen XML.
35
+ * The XML parser instance configured specifically for Doxygen XML format.
36
+ *
37
+ * @remarks
38
+ * Configured with settings that preserve element order, remove namespace
39
+ * prefixes, and maintain fidelity to the original XML structure for
40
+ * accurate data model construction.
30
41
  */
31
42
  xmlParser: XMLParser;
43
+ /**
44
+ * Collection of image references extracted during XML parsing.
45
+ *
46
+ * @remarks
47
+ * Accumulates image elements found in the documentation content,
48
+ * allowing for centralised image processing and reference management.
49
+ */
32
50
  images: AbstractDocImageType[];
33
51
  /**
34
52
  * Constructs a new instance of the DoxygenXmlParser class.
@@ -39,9 +57,8 @@ export declare class DoxygenXmlParser {
39
57
  * This constructor initialises the XML parser with settings that preserve the
40
58
  * order and structure of the original XML content, remove namespace prefixes,
41
59
  * and ensure that both tag and attribute values are parsed. The values are
42
- * not
43
- * trimmed, maintaining fidelity to the source XML. The provided options are
44
- * stored for use throughout the parsing process.
60
+ * not trimmed, maintaining fidelity to the source XML. The provided options
61
+ * are stored for use throughout the parsing process.
45
62
  */
46
63
  constructor(options: CliOptions);
47
64
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"doxygen-xml-parser.d.ts","sourceRoot":"","sources":["../../../src/doxygen/data-model/doxygen-xml-parser.ts"],"names":[],"mappings":"AAgCA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAIxE;;;;;;;;;;;;;;;;;GAiBG;AAEH,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,OAAO,EAAE,UAAU,CAAA;IAEnB;;OAEG;IACH,SAAS,EAAE,SAAS,CAAA;IAEpB,MAAM,EAAE,oBAAoB,EAAE,CAAK;IAEnC;;;;;;;;;;;;OAYG;gBACS,OAAO,EAAE,UAAU;IAe/B;;;;;;;;;;;;;OAaG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIvC;;;;;;;;;;;;;OAaG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAK7C;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAUpD;;;;;;;;;;;;;;;OAeG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAoB9D;;;;;;;;;;;;;OAaG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAgB9D;;;;;;;;;;;;;;OAcG;IACH,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAgBhE;;;;;;;;;;;;;OAaG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAoBvD;;;;;;;;;;;;OAYG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IA6B1D;;;;;;;;;OASG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAetC;;;;;;;;;;;;;;OAcG;IAEH,gBAAgB,CAAC,CAAC,GAAG,UAAU,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;IAapE;;;;;;;;;;;;;;;OAeG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAoB1D;;;;;;;;;;;;;;OAcG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAoB5D;;;;;;;;;;;;;;;OAeG;IACH,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAqB9D;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAUtC"}
1
+ {"version":3,"file":"doxygen-xml-parser.d.ts","sourceRoot":"","sources":["../../../src/doxygen/data-model/doxygen-xml-parser.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAIxE;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,qBAAa,gBAAgB;IAC3B;;;;;;OAMG;IACH,OAAO,EAAE,UAAU,CAAA;IAEnB;;;;;;;OAOG;IACH,SAAS,EAAE,SAAS,CAAA;IAEpB;;;;;;OAMG;IACH,MAAM,EAAE,oBAAoB,EAAE,CAAK;IAEnC;;;;;;;;;;;OAWG;gBACS,OAAO,EAAE,UAAU;IAe/B;;;;;;;;;;;;;OAaG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIvC;;;;;;;;;;;;;OAaG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAK7C;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAUpD;;;;;;;;;;;;;;;OAeG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAoB9D;;;;;;;;;;;;;OAaG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAgB9D;;;;;;;;;;;;;;OAcG;IACH,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAgBhE;;;;;;;;;;;;;OAaG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAoBvD;;;;;;;;;;;;OAYG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IA6B1D;;;;;;;;;OASG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAetC;;;;;;;;;;;;;;OAcG;IAEH,gBAAgB,CAAC,CAAC,GAAG,UAAU,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;IAapE;;;;;;;;;;;;;;;OAeG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAoB1D;;;;;;;;;;;;;;OAcG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAoB5D;;;;;;;;;;;;;;;OAeG;IACH,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAqB9D;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAUtC"}
@@ -9,28 +9,12 @@
9
9
  * be obtained from https://opensource.org/licenses/MIT.
10
10
  */
11
11
  // ----------------------------------------------------------------------------
12
- /**
13
- * @file doxygen-xml-parser.ts
14
- * @brief Provides the DoxygenXmlParser class for parsing Doxygen-generated
15
- * XML files.
16
- *
17
- * This module defines the {@link DoxygenXmlParser} class, which is responsible
18
- * for parsing XML output produced by Doxygen and constructing the internal
19
- * data model used by doxygen2docusaurus. It supports parsing the main index,
20
- * compound files, and configuration files, and provides utility methods for
21
- * extracting attributes and inner elements from the XML structure.
22
- *
23
- * The parser is designed to preserve the original XML content and element
24
- * order, ensuring accurate conversion to the documentation model. It is
25
- * intended for use within the xPack doxygen2docusaurus CLI tool.
26
- */
27
12
  import assert from 'node:assert';
28
13
  import * as util from 'node:util';
29
14
  import { XMLParser } from 'fast-xml-parser';
30
15
  // ----------------------------------------------------------------------------
31
16
  /**
32
- * The DoxygenXmlParser class is responsible for parsing
33
- * Doxygen-generated XML files and constructing the internal data model.
17
+ * XML parser for Doxygen-generated documentation files.
34
18
  *
35
19
  * @remarks
36
20
  * This class initialises the XML parser with options that preserve the order
@@ -38,6 +22,9 @@ import { XMLParser } from 'fast-xml-parser';
38
22
  * for documentation purposes. It maintains a counter for the number of files
39
23
  * parsed and stores the resulting data model.
40
24
  *
25
+ * The parser is configured to handle Doxygen's specific XML format whilst
26
+ * maintaining fidelity to the source structure and content organisation.
27
+ *
41
28
  * @example
42
29
  * ```typescript
43
30
  * const parser = new DoxygenXmlParser({ options });
@@ -48,13 +35,29 @@ import { XMLParser } from 'fast-xml-parser';
48
35
  */
49
36
  export class DoxygenXmlParser {
50
37
  /**
51
- * The global configuration options.
38
+ * The global configuration options for the parsing operation.
39
+ *
40
+ * @remarks
41
+ * Contains the command-line interface options that control the behaviour
42
+ * of the parser throughout the XML processing workflow.
52
43
  */
53
44
  options;
54
45
  /**
55
- * The XML parser instance configured for Doxygen XML.
46
+ * The XML parser instance configured specifically for Doxygen XML format.
47
+ *
48
+ * @remarks
49
+ * Configured with settings that preserve element order, remove namespace
50
+ * prefixes, and maintain fidelity to the original XML structure for
51
+ * accurate data model construction.
56
52
  */
57
53
  xmlParser;
54
+ /**
55
+ * Collection of image references extracted during XML parsing.
56
+ *
57
+ * @remarks
58
+ * Accumulates image elements found in the documentation content,
59
+ * allowing for centralised image processing and reference management.
60
+ */
58
61
  images = [];
59
62
  /**
60
63
  * Constructs a new instance of the DoxygenXmlParser class.
@@ -65,9 +68,8 @@ export class DoxygenXmlParser {
65
68
  * This constructor initialises the XML parser with settings that preserve the
66
69
  * order and structure of the original XML content, remove namespace prefixes,
67
70
  * and ensure that both tag and attribute values are parsed. The values are
68
- * not
69
- * trimmed, maintaining fidelity to the source XML. The provided options are
70
- * stored for use throughout the parsing process.
71
+ * not trimmed, maintaining fidelity to the source XML. The provided options
72
+ * are stored for use throughout the parsing process.
71
73
  */
72
74
  constructor(options) {
73
75
  this.options = options;
@@ -1 +1 @@
1
- {"version":3,"file":"doxygen-xml-parser.js","sourceRoot":"","sources":["../../../src/doxygen/data-model/doxygen-xml-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doxygen-xml-parser.js","sourceRoot":"","sources":["../../../src/doxygen/data-model/doxygen-xml-parser.ts"],"names":[],"mappings":"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"}
@@ -2,20 +2,112 @@ import { DoxygenXmlParser } from '../doxygen-xml-parser.js';
2
2
  import { IndexMemberDataModel } from './indexmembertype-dm.js';
3
3
  import { AbstractDataModelBase } from '../types.js';
4
4
  /**
5
+ * Abstract base class for index compound type data models.
6
+ *
7
+ * @remarks
8
+ * Represents compound elements found within Doxygen index XML structures,
9
+ * corresponding to the CompoundType complex type in the XML schema. This
10
+ * class handles the parsing of compound names, member collections, and
11
+ * mandatory attributes (refid and kind). All concrete compound data model
12
+ * classes should extend this abstract base to ensure consistent parsing
13
+ * and data representation.
14
+ *
5
15
  * @public
6
16
  */
7
17
  export declare abstract class AbstractIndexCompoundType extends AbstractDataModelBase {
18
+ /**
19
+ * The name of the compound element.
20
+ *
21
+ * @remarks
22
+ * Extracted from the mandatory 'name' element within the compound XML
23
+ * structure. Represents the identifier or name of the documented compound
24
+ * such as a class name, namespace, or filename.
25
+ */
8
26
  name: string;
27
+ /**
28
+ * Collection of member data models associated with this compound.
29
+ *
30
+ * @remarks
31
+ * Optional array containing member elements found within the compound
32
+ * structure. Each member represents a documented entity that belongs
33
+ * to this compound, such as functions, variables, or other nested
34
+ * constructs. The array supports zero to many members as per the XML schema.
35
+ */
9
36
  members: IndexMemberDataModel[] | undefined;
37
+ /**
38
+ * The unique reference identifier for this compound.
39
+ *
40
+ * @remarks
41
+ * Mandatory attribute that provides a unique identifier for referencing
42
+ * this compound within the Doxygen documentation structure. Used to link
43
+ * index entries to their detailed definitions in separate XML files.
44
+ */
10
45
  refid: string;
46
+ /**
47
+ * The kind classification of this compound.
48
+ *
49
+ * @remarks
50
+ * Mandatory attribute specifying the type of compound (e.g., class, struct,
51
+ * namespace, file). Corresponds to the CompoundKind enumeration in the
52
+ * XML schema, determining how the compound should be processed and presented.
53
+ */
11
54
  kind: string;
55
+ /**
56
+ * Constructs a new AbstractIndexCompoundType instance from XML data.
57
+ *
58
+ * @param xml - The Doxygen XML parser instance for processing XML elements
59
+ * @param element - The XML element containing the compound data
60
+ * @param elementName - The name of the XML element being processed
61
+ *
62
+ * @remarks
63
+ * Parses the provided XML element to extract compound information including
64
+ * the name element, member collections, and mandatory attributes (refid and
65
+ * kind). The constructor validates that all required data is present and
66
+ * properly formatted according to the XML schema specifications. Member
67
+ * elements are processed into IndexMemberDataModel instances when present.
68
+ */
12
69
  constructor(xml: DoxygenXmlParser, element: object, elementName: string);
13
70
  }
71
+ /**
72
+ * Union type representing the various kinds of compounds in Doxygen
73
+ * documentation.
74
+ *
75
+ * @remarks
76
+ * Corresponds to the CompoundKind simple type in the Doxygen XML schema,
77
+ * which defines the allowable classifications for documented compounds.
78
+ * Each value represents a specific type of programming construct or
79
+ * documentation unit that can be indexed, ranging from code structures
80
+ * like classes and namespaces to documentation pages and examples.
81
+ *
82
+ * @public
83
+ */
14
84
  export type IndexCompoundKind = 'class' | 'struct' | 'union' | 'interface' | 'protocol' | 'category' | 'exception' | 'file' | 'namespace' | 'group' | 'page' | 'example' | 'dir' | 'type' | 'concept' | 'module';
15
85
  /**
86
+ * Concrete data model class for index compound elements.
87
+ *
88
+ * @remarks
89
+ * Represents individual compound elements found within Doxygen index XML
90
+ * structures. This class extends the abstract base to provide specific
91
+ * handling for 'compound' elements, which reference documented entities
92
+ * such as classes, namespaces, files, and other structural components
93
+ * within the indexed documentation. Each compound serves as an entry
94
+ * point for accessing detailed documentation in separate XML files.
95
+ *
16
96
  * @public
17
97
  */
18
98
  export declare class IndexCompoundDataModel extends AbstractIndexCompoundType {
99
+ /**
100
+ * Constructs a new IndexCompoundDataModel instance from XML data.
101
+ *
102
+ * @param xml - The Doxygen XML parser instance for processing XML elements
103
+ * @param element - The XML element containing the compound data
104
+ *
105
+ * @remarks
106
+ * Initialises the compound data model by parsing the provided XML element
107
+ * as a 'compound' element type. The constructor delegates to the parent
108
+ * class for common compound processing whilst specifying the element name
109
+ * for proper XML structure handling.
110
+ */
19
111
  constructor(xml: DoxygenXmlParser, element: object);
20
112
  }
21
113
  //# sourceMappingURL=indexcompoundtype-dm.d.ts.map