@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,15 +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
- // import * as util from 'node:util'
13
1
  import assert from 'node:assert';
14
2
  import path from 'node:path';
15
3
  import { CompoundBase } from './compound-base-vm.js';
@@ -17,49 +5,11 @@ import { CollectionBase } from './collection-base.js';
17
5
  import { flattenPath, sanitizeAnonymousNamespace, sanitizeHierarchicalPath, } from '../utils.js';
18
6
  import { NamespaceTreeEntry } from './tree-entries-vm.js';
19
7
  import { Class } from './classes-vm.js';
20
- // ----------------------------------------------------------------------------
21
- /**
22
- * Manages the collection of namespace documentation compounds.
23
- *
24
- * @remarks
25
- * Handles the organisation and generation of namespace-based documentation,
26
- * including nested namespace hierarchies, sidebar generation, and comprehensive
27
- * index file creation. Namespaces provide logical code organisation beyond
28
- * file boundaries, supporting complex software architectures.
29
- *
30
- * @public
31
- */
8
+ import { Concept } from './concepts-vm.js';
32
9
  export class Namespaces extends CollectionBase {
33
- /**
34
- * Array of top-level namespaces without parent namespaces.
35
- *
36
- * @remarks
37
- * Contains namespaces that are not nested within other namespaces,
38
- * used for organising hierarchical displays and namespace trees.
39
- */
40
10
  topLevelNamespaces = [];
41
- // --------------------------------------------------------------------------
42
- // constructor (workspace: Workspace) {
43
- // super(workspace)
44
- // // this.compoundsById = new Map()
45
- // }
46
- // --------------------------------------------------------------------------
47
- /**
48
- * Adds a namespace compound to the collection.
49
- *
50
- * @remarks
51
- * Creates a new Namespace instance from the compound definition and registers
52
- * it in the collection for later processing. Anonymous namespaces with empty
53
- * names are skipped unless they contain child namespaces.
54
- *
55
- * @param compoundDef - The compound definition for the namespace
56
- * @returns The created Namespace instance
57
- *
58
- * @public
59
- */
60
11
  addChild(compoundDef) {
61
12
  const namespace = new Namespace(this, compoundDef);
62
- // Skip
63
13
  if (namespace.compoundName.length === 0) {
64
14
  if (namespace.children.length > 0) {
65
15
  console.error('Anonymous namespace', namespace.id, ' with children?');
@@ -70,65 +20,43 @@ export class Namespaces extends CollectionBase {
70
20
  }
71
21
  return namespace;
72
22
  }
73
- // --------------------------------------------------------------------------
74
- /**
75
- * Creates hierarchical relationships between namespace compounds.
76
- *
77
- * @remarks
78
- * Establishes parent-child relationships based on namespace nesting data,
79
- * building the namespace hierarchy tree and identifying top-level namespaces
80
- * that have no parent. This enables proper nested namespace navigation
81
- * and documentation organisation.
82
- *
83
- * @public
84
- */
85
23
  createCompoundsHierarchies() {
86
- // Recreate namespaces hierarchies.
87
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
88
- for (const [namespaceId, namespace] of this.collectionCompoundsById) {
24
+ for (const [, namespace] of this.collectionCompoundsById) {
89
25
  for (const childNamespaceId of namespace.childrenIds) {
90
26
  const childNamespace = this.collectionCompoundsById.get(childNamespaceId);
91
27
  assert(childNamespace !== undefined);
92
- // console.log('namespaceId', childNamespaceId,'has parent',
93
- // namespaceId)
28
+ if (this.workspace.options.debug) {
29
+ console.log('namespaceId:', childNamespaceId, childNamespace.compoundName, 'has parent', namespace.compoundName);
30
+ }
94
31
  childNamespace.parent = namespace;
95
32
  namespace.children.push(childNamespace);
96
33
  }
97
34
  }
98
- // Create the top level namespace list.
99
35
  for (const [namespaceId, namespace] of this.collectionCompoundsById) {
100
36
  if (namespace.parent === undefined) {
101
37
  if (namespace instanceof Namespace) {
102
38
  if (this.workspace.options.debug) {
103
- console.log('topLevelNamespaces:', namespaceId);
39
+ console.log('topLevelNamespaceId:', namespaceId, namespace.compoundName);
104
40
  }
105
41
  this.topLevelNamespaces.push(namespace);
106
42
  }
107
43
  }
108
44
  }
109
45
  }
110
- // --------------------------------------------------------------------------
111
- /**
112
- * Adds namespace sidebar items to the provided sidebar category.
113
- *
114
- * @remarks
115
- * Creates comprehensive namespace navigation including hierarchical namespace
116
- * trees and specialised indices for classes, functions, variables, typedefs,
117
- * enums, and enum values. The structure provides multiple access paths to
118
- * namespace content for improved user navigation.
119
- *
120
- * @param sidebarCategory - The sidebar category to populate with namespace
121
- * items
122
- *
123
- * @public
124
- */
46
+ findNamespaceByCompoundName(compoundName) {
47
+ for (const namespace of this.collectionCompoundsById.values()) {
48
+ assert(namespace instanceof Namespace);
49
+ if (namespace.compoundName === compoundName) {
50
+ return namespace;
51
+ }
52
+ }
53
+ return undefined;
54
+ }
125
55
  addSidebarItems(sidebarCategory) {
126
56
  const indicesSet = this.workspace.indicesMaps.get('namespaces');
127
57
  if (indicesSet === undefined) {
128
58
  return;
129
59
  }
130
- // Add namespaces to the sidebar.
131
- // Top level namespaces are added below a Namespaces category.
132
60
  const namespacesCategory = {
133
61
  type: 'category',
134
62
  label: 'Namespaces',
@@ -141,6 +69,10 @@ export class Namespaces extends CollectionBase {
141
69
  {
142
70
  type: 'category',
143
71
  label: 'Hierarchy',
72
+ link: {
73
+ type: 'doc',
74
+ id: `${this.workspace.sidebarBaseId}indices/namespaces/index`,
75
+ },
144
76
  collapsed: true,
145
77
  items: [],
146
78
  },
@@ -160,6 +92,13 @@ export class Namespaces extends CollectionBase {
160
92
  id: `${this.workspace.sidebarBaseId}indices/namespaces/all`,
161
93
  });
162
94
  }
95
+ if (indicesSet.has('concepts')) {
96
+ namespacesCategory.items.push({
97
+ type: 'doc',
98
+ label: 'Concepts',
99
+ id: `${this.workspace.sidebarBaseId}indices/namespaces/concepts`,
100
+ });
101
+ }
163
102
  if (indicesSet.has('classes')) {
164
103
  namespacesCategory.items.push({
165
104
  type: 'doc',
@@ -204,21 +143,6 @@ export class Namespaces extends CollectionBase {
204
143
  }
205
144
  sidebarCategory.items.push(namespacesCategory);
206
145
  }
207
- /**
208
- * Creates sidebar items recursively for namespace hierarchies.
209
- *
210
- * @remarks
211
- * Generates appropriate sidebar structure based on namespace nesting,
212
- * creating document items for leaf namespaces and category items for
213
- * namespaces with children. This method builds the hierarchical navigation
214
- * structure with proper ellipsis styling for nested content.
215
- *
216
- * @param namespace - The namespace to create a sidebar item for
217
- * @returns The created sidebar item, or undefined if the namespace is not
218
- * displayable
219
- *
220
- * @private
221
- */
222
146
  createNamespaceItemRecursively(namespace) {
223
147
  if (namespace.sidebarLabel === undefined ||
224
148
  namespace.sidebarId === undefined) {
@@ -255,19 +179,6 @@ export class Namespaces extends CollectionBase {
255
179
  return categoryItem;
256
180
  }
257
181
  }
258
- // --------------------------------------------------------------------------
259
- /**
260
- * Creates navbar items for namespace navigation.
261
- *
262
- * @remarks
263
- * Generates a navigation bar item that provides access to the main
264
- * namespaces index page, enabling users to explore namespace hierarchies
265
- * and specialised namespace indices from the top-level navigation.
266
- *
267
- * @returns Array containing the namespaces navbar item
268
- *
269
- * @public
270
- */
271
182
  createNavbarItems() {
272
183
  const navbarItem = {
273
184
  label: 'Namespaces',
@@ -275,18 +186,6 @@ export class Namespaces extends CollectionBase {
275
186
  };
276
187
  return [navbarItem];
277
188
  }
278
- // --------------------------------------------------------------------------
279
- /**
280
- * Generates the main namespaces index Markdown file.
281
- *
282
- * @remarks
283
- * Creates a comprehensive index file for namespaces when top-level namespaces
284
- * exist. The index includes a hierarchical tree table showing all namespaces
285
- * with their descriptions and navigation links, providing a complete overview
286
- * of the project's namespace organisation.
287
- *
288
- * @public
289
- */
290
189
  async generateIndexDotMdFile() {
291
190
  if (this.topLevelNamespaces.length === 0) {
292
191
  return;
@@ -296,7 +195,7 @@ export class Namespaces extends CollectionBase {
296
195
  const frontMatter = {
297
196
  title: 'Namespaces',
298
197
  slug: `${this.workspace.slugBaseUrl}${permalink}`,
299
- // description: '...', // TODO
198
+ description: 'The namespaces used by this project',
300
199
  custom_edit_url: null,
301
200
  keywords: ['doxygen', 'namespaces', 'reference'],
302
201
  };
@@ -311,7 +210,7 @@ export class Namespaces extends CollectionBase {
311
210
  lines.push('The namespaces used by this project are:');
312
211
  lines.push(...this.workspace.renderTreeTableToHtmlLines({ contentLines }));
313
212
  if (this.workspace.options.verbose) {
314
- console.log(`Writing namespaces index file ${filePath}...`);
213
+ console.log(`Writing namespaces index file '${filePath}'...`);
315
214
  }
316
215
  await this.workspace.writeOutputMdFile({
317
216
  filePath,
@@ -319,31 +218,13 @@ export class Namespaces extends CollectionBase {
319
218
  bodyLines: lines,
320
219
  });
321
220
  }
322
- /**
323
- * Recursively generates index content for namespace hierarchies.
324
- *
325
- * @remarks
326
- * Creates hierarchical HTML tree table rows for namespaces and their
327
- * children, including appropriate indentation, icons, and navigation links.
328
- * This method builds the complete nested structure for namespace
329
- * documentation indices with proper depth handling.
330
- *
331
- * @param namespace - The namespace to generate index content for
332
- * @param depth - The current nesting depth for indentation
333
- * @returns Array of HTML lines representing the namespace hierarchy
334
- *
335
- * @private
336
- */
337
221
  generateIndexMdFileRecursively(namespace, depth) {
338
- // console.log(util.inspect(namespace, { compact: false, depth: 999 }))
339
222
  const lines = [];
340
223
  const label = this.workspace.renderString(namespace.treeEntryName, 'html');
341
224
  const permalink = this.workspace.getPagePermalink(namespace.id);
342
225
  if (permalink === undefined || permalink.length === 0) {
343
- // console.log(namespace)
344
226
  return [];
345
227
  }
346
- // assert(permalink !== undefined && permalink.length > 1)
347
228
  let description = '';
348
229
  if (namespace.briefDescriptionHtmlString !== undefined &&
349
230
  namespace.briefDescriptionHtmlString.length > 0) {
@@ -366,18 +247,6 @@ export class Namespaces extends CollectionBase {
366
247
  }
367
248
  return lines;
368
249
  }
369
- // --------------------------------------------------------------------------
370
- /**
371
- * Generates specialised namespace index files by content type.
372
- *
373
- * @remarks
374
- * Creates comprehensive index files for different types of namespace content
375
- * including all definitions, classes, functions, variables, typedefs, enums,
376
- * and enum values. Each index provides filtered views of namespace content
377
- * for targeted exploration and documentation access.
378
- *
379
- * @public
380
- */
381
250
  async generatePerInitialsIndexMdFiles() {
382
251
  if (this.topLevelNamespaces.length === 0) {
383
252
  return;
@@ -389,14 +258,23 @@ export class Namespaces extends CollectionBase {
389
258
  }
390
259
  const compoundEntry = new NamespaceTreeEntry(compound, compound);
391
260
  allUnorderedEntriesMap.set(compoundEntry.id, compoundEntry);
392
- // console.log(compound.indexName)
393
261
  if (compound.innerCompounds !== undefined) {
394
- // console.log(compound.indexName,
395
- // Array.from(compound.innerCompounds.keys()))
262
+ if (this.workspace.options.debug) {
263
+ console.log(compound.indexName, Array.from(compound.innerCompounds.keys()));
264
+ }
265
+ const conceptCompoundDef = compound.innerCompounds.get('innerConcepts');
266
+ if (conceptCompoundDef?.innerConcepts !== undefined) {
267
+ for (const innerConcept of conceptCompoundDef.innerConcepts) {
268
+ const compoundConcept = this.workspace.viewModel.compoundsById.get(innerConcept.refid);
269
+ if (compoundConcept instanceof Concept) {
270
+ const conceptEntry = new NamespaceTreeEntry(compoundConcept, compound);
271
+ allUnorderedEntriesMap.set(conceptEntry.id, conceptEntry);
272
+ }
273
+ }
274
+ }
396
275
  const classCompoundDef = compound.innerCompounds.get('innerClasses');
397
276
  if (classCompoundDef?.innerClasses !== undefined) {
398
277
  for (const innerClass of classCompoundDef.innerClasses) {
399
- // console.log(innerClass.refid)
400
278
  const compoundClass = this.workspace.viewModel.compoundsById.get(innerClass.refid);
401
279
  if (compoundClass instanceof Class) {
402
280
  const classEntry = new NamespaceTreeEntry(compoundClass, compound);
@@ -418,16 +296,22 @@ export class Namespaces extends CollectionBase {
418
296
  }
419
297
  }
420
298
  }
421
- // ------------------------------------------------------------------------
422
299
  await this.generateIndexFile({
423
300
  group: 'namespaces',
424
301
  fileKind: 'all',
425
302
  title: 'Namespaces Definitions Index',
426
303
  description: 'The definitions part of the namespaces are:',
427
304
  map: allUnorderedEntriesMap,
428
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
429
305
  filter: (kind) => true,
430
306
  });
307
+ await this.generateIndexFile({
308
+ group: 'namespaces',
309
+ fileKind: 'concepts',
310
+ title: 'Namespaces Concepts Index',
311
+ description: 'The concepts defined in the namespaces are:',
312
+ map: allUnorderedEntriesMap,
313
+ filter: (kind) => kind === 'concept',
314
+ });
431
315
  await this.generateIndexFile({
432
316
  group: 'namespaces',
433
317
  fileKind: 'classes',
@@ -476,66 +360,19 @@ export class Namespaces extends CollectionBase {
476
360
  map: allUnorderedEntriesMap,
477
361
  filter: (kind) => kind === 'enumvalue',
478
362
  });
479
- // ------------------------------------------------------------------------
480
363
  }
481
364
  }
482
- // ============================================================================
483
- /**
484
- * Represents a namespace compound for code organisation documentation.
485
- *
486
- * @remarks
487
- * Namespaces provide logical code organisation beyond file boundaries,
488
- * supporting complex software architectures with hierarchical structure.
489
- * Handles both named and anonymous namespaces with appropriate documentation
490
- * generation, including special handling for compiler-generated anonymous
491
- * namespaces.
492
- *
493
- * @public
494
- */
495
365
  export class Namespace extends CompoundBase {
496
- /**
497
- * The unqualified namespace name without scope.
498
- *
499
- * @remarks
500
- * Contains the simple name of the namespace without parent scope
501
- * qualifiers, used for display and navigation purposes.
502
- */
503
366
  unqualifiedName = '???';
504
- /**
505
- * Indicates if this is an anonymous namespace.
506
- *
507
- * @remarks
508
- * True for anonymous namespaces that don't have explicit names,
509
- * affecting how the namespace is displayed and documented.
510
- */
511
367
  isAnonymous = false;
512
- /**
513
- * Initialises a new Namespace instance from compound definition data.
514
- *
515
- * @remarks
516
- * Processes namespace metadata including nested namespace relationships,
517
- * name extraction, and permalink generation. Handles special cases for
518
- * anonymous namespaces and compiler-generated namespace structures.
519
- * Sets up the namespace for integration into the documentation hierarchy.
520
- *
521
- * @param collection - The parent Namespaces collection
522
- * @param compoundDef - The compound definition containing namespace metadata
523
- *
524
- * @public
525
- */
368
+ concepts = [];
526
369
  constructor(collection, compoundDef) {
527
370
  super(collection, compoundDef);
528
- // console.log('Namespace.constructor', util.inspect(compoundDef))
529
371
  if (Array.isArray(compoundDef.innerNamespaces)) {
530
372
  for (const ref of compoundDef.innerNamespaces) {
531
- // console.log('component', compoundDef.id, 'has child', ref.refid)
532
373
  this.childrenIds.push(ref.refid);
533
374
  }
534
375
  }
535
- // Tricky case: namespace { namespace CU { ... }}
536
- // id: "namespace_0d341223050020306256025223146376054302122106363020_1_1CU"
537
- // compoundname: "::CU"
538
- // location: "[generated]"
539
376
  if (/^namespace.*_0d\d{48}/.test(this.id)) {
540
377
  let fileName = '';
541
378
  if (compoundDef.location?.file !== undefined) {
@@ -562,10 +399,6 @@ export class Namespace extends CompoundBase {
562
399
  this.indexName = unqualifiedName;
563
400
  }
564
401
  const sanitizedPath = sanitizeHierarchicalPath(this.indexName.replaceAll('::', '/'));
565
- // if (compoundDef.location?.file !== undefined) {
566
- // sanitizedPath +=
567
- // `-${crypto.hash('md5', compoundDef.location?.file)}`
568
- // }
569
402
  this.pageTitle = `\`${this.indexName}\` Namespace`;
570
403
  this.relativePermalink = `namespaces/${sanitizedPath}`;
571
404
  this.sidebarId = `namespaces/${flattenPath(sanitizedPath)}`;
@@ -574,15 +407,11 @@ export class Namespace extends CompoundBase {
574
407
  }
575
408
  }
576
409
  else {
577
- // The compoundName is the fully qualified namespace name.
578
- // Keep only the last name.
579
410
  this.unqualifiedName = sanitizeAnonymousNamespace(compoundDef.compoundName.replace(/.*::/, ''));
580
411
  this.indexName = sanitizeAnonymousNamespace(this.compoundName.replace(/.*::/, ''));
581
412
  this.pageTitle = `\`${this.unqualifiedName}\` Namespace`;
582
413
  const sanitizedPath = sanitizeHierarchicalPath(sanitizeAnonymousNamespace(this.compoundName.replaceAll('::', '/')));
583
414
  if (compoundDef.compoundName.length > 0) {
584
- // Skip un-named namespaces, and generated ones,
585
- // since they can be duplicate.
586
415
  this.relativePermalink = `namespaces/${sanitizedPath}`;
587
416
  this.sidebarId = `namespaces/${flattenPath(sanitizedPath)}`;
588
417
  const { unqualifiedName } = this;
@@ -595,94 +424,63 @@ export class Namespace extends CompoundBase {
595
424
  const { indexName } = this;
596
425
  this.treeEntryName = indexName;
597
426
  this.createSections();
598
- // console.log('0 id', this.id)
599
- // console.log('1 nm', this.compoundName)
600
- // console.log('2 pl', this.relativePermalink)
601
- // console.log('3 di', this.docusaurusId)
602
- // console.log('4 sb', this.sidebarLabel)
603
- // console.log('5 ix', this.indexName)
604
- // console.log()
605
427
  }
606
- /**
607
- * Performs late initialisation for namespaces with content validation.
608
- *
609
- * @remarks
610
- * Validates namespace content and conditionally disables sidebar generation
611
- * for empty namespaces. This ensures that namespaces without meaningful
612
- * documentation do not appear in the generated sidebar navigation.
613
- *
614
- * @public
615
- */
616
428
  initializeLate() {
617
429
  super.initializeLate();
618
- // console.log(this)
430
+ const { workspace } = this.collection;
619
431
  if (!this.hasAnyContent()) {
620
- if (this.collection.workspace.options.debug) {
432
+ if (!workspace.options.suggestToDoDescriptions) {
621
433
  console.log(this.kind, this.compoundName, 'has no content, not shown');
434
+ this.sidebarId = undefined;
435
+ this.sidebarLabel = undefined;
436
+ this.relativePermalink = undefined;
437
+ return;
438
+ }
439
+ else {
440
+ if (workspace.options.verbose) {
441
+ console.log(this.kind, this.compoundName, 'has no content, see the TODO description');
442
+ }
622
443
  }
623
- this.sidebarId = undefined;
624
- this.sidebarLabel = undefined;
625
- this.relativePermalink = undefined;
626
444
  }
627
445
  }
628
- /**
629
- * Determines if the namespace has any documentable content.
630
- *
631
- * @remarks
632
- * Checks for child namespaces with content, inner compounds beyond just
633
- * nested namespaces, and base class content to determine if the namespace
634
- * should be included in documentation. This method helps filter empty
635
- * namespaces from the generated output.
636
- *
637
- * @returns True if the namespace contains documentable content, false
638
- * otherwise
639
- *
640
- * @public
641
- */
642
446
  hasAnyContent() {
643
- // console.log('checking', this.compoundName)
644
447
  for (const childNamespace of this.children) {
645
448
  if (childNamespace.hasAnyContent()) {
646
- // console.log('has content', this)
647
449
  return true;
648
450
  }
649
451
  }
650
452
  if (this.innerCompounds !== undefined) {
651
453
  if (this.innerCompounds.has('innerNamespaces')) {
652
454
  if (this.innerCompounds.size > 1) {
653
- // console.log('has content innerCompounds 1', this)
654
455
  return true;
655
456
  }
656
457
  }
657
458
  else {
658
459
  if (this.innerCompounds.size > 0) {
659
- // console.log('has content innerCompounds 2', this)
660
460
  return true;
661
461
  }
662
462
  }
663
463
  }
664
- // if (!super.hasAnyContent()) {
665
- // console.log('has no content', this)
666
- // }
667
464
  return super.hasAnyContent();
668
465
  }
669
- // --------------------------------------------------------------------------
670
- /**
671
- * Renders the namespace documentation to Markdown lines.
672
- *
673
- * @remarks
674
- * Generates comprehensive namespace documentation including brief
675
- * description, namespace definition syntax, inner compound indices, section
676
- * indices, detailed description, and sections. The output follows Docusaurus
677
- * conventions for namespace pages with proper navigation and content
678
- * organisation.
679
- *
680
- * @param frontMatter - The front matter configuration for the page
681
- * @returns Array of Markdown lines representing the namespace documentation
682
- *
683
- * @public
684
- */
685
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
466
+ hasConceptsRecursively() {
467
+ if (this.concepts.length > 0) {
468
+ return true;
469
+ }
470
+ for (const child of this.children) {
471
+ assert(child instanceof Namespace);
472
+ if (child.hasConceptsRecursively()) {
473
+ return true;
474
+ }
475
+ }
476
+ return false;
477
+ }
478
+ hasConcepts() {
479
+ if (this.concepts.length > 0) {
480
+ return true;
481
+ }
482
+ return false;
483
+ }
686
484
  renderToLines(frontMatter) {
687
485
  const lines = [];
688
486
  const { workspace } = this.collection;
@@ -702,12 +500,16 @@ export class Namespace extends CompoundBase {
702
500
  lines.push(`namespace ${dots}`);
703
501
  }
704
502
  else {
705
- lines.push(`namespace ${workspace.renderString(this.compoundName, 'html')} ${dots}`);
503
+ const compoundName = workspace.renderString(this.compoundName, 'html');
504
+ lines.push(`namespace ${compoundName} ${dots}`);
706
505
  }
707
506
  lines.push('</div>');
708
507
  lines.push(...this.renderInnerIndicesToLines({
709
- suffixes: ['Namespaces', 'Classes'],
508
+ suffixes: ['Namespaces', 'Classes', 'Concepts'],
710
509
  }));
510
+ if (this.hasConcepts() && !this.innerCompounds?.has('innerConcepts')) {
511
+ lines.push(...this.renderConceptsIndexToLines(this.concepts));
512
+ }
711
513
  lines.push(...this.renderSectionIndicesToLines());
712
514
  lines.push(...this.renderDetailedDescriptionToHtmlLines({
713
515
  briefDescriptionHtmlString: this.briefDescriptionHtmlString,
@@ -721,5 +523,4 @@ export class Namespace extends CompoundBase {
721
523
  return lines;
722
524
  }
723
525
  }
724
- // ----------------------------------------------------------------------------
725
526
  //# sourceMappingURL=namespaces-vm.js.map