@xpack/doxygen2docusaurus 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +25 -0
  3. package/bin/doxygen2docusaurus.js +45 -0
  4. package/dist/cli/main.d.ts +10 -0
  5. package/dist/cli/main.d.ts.map +1 -0
  6. package/dist/cli/main.js +66 -0
  7. package/dist/cli/main.js.map +1 -0
  8. package/dist/docusaurus/cli-options.d.ts +98 -0
  9. package/dist/docusaurus/cli-options.d.ts.map +1 -0
  10. package/dist/docusaurus/cli-options.js +212 -0
  11. package/dist/docusaurus/cli-options.js.map +1 -0
  12. package/dist/docusaurus/generator.d.ts +22 -0
  13. package/dist/docusaurus/generator.d.ts.map +1 -0
  14. package/dist/docusaurus/generator.js +461 -0
  15. package/dist/docusaurus/generator.js.map +1 -0
  16. package/dist/docusaurus/renderers/descriptiontype.d.ts +63 -0
  17. package/dist/docusaurus/renderers/descriptiontype.d.ts.map +1 -0
  18. package/dist/docusaurus/renderers/descriptiontype.js +674 -0
  19. package/dist/docusaurus/renderers/descriptiontype.js.map +1 -0
  20. package/dist/docusaurus/renderers/docinternalstype.d.ts +21 -0
  21. package/dist/docusaurus/renderers/docinternalstype.d.ts.map +1 -0
  22. package/dist/docusaurus/renderers/docinternalstype.js +159 -0
  23. package/dist/docusaurus/renderers/docinternalstype.js.map +1 -0
  24. package/dist/docusaurus/renderers/doclisttype.d.ts +6 -0
  25. package/dist/docusaurus/renderers/doclisttype.d.ts.map +1 -0
  26. package/dist/docusaurus/renderers/doclisttype.js +86 -0
  27. package/dist/docusaurus/renderers/doclisttype.js.map +1 -0
  28. package/dist/docusaurus/renderers/doctabletype.d.ts +15 -0
  29. package/dist/docusaurus/renderers/doctabletype.d.ts.map +1 -0
  30. package/dist/docusaurus/renderers/doctabletype.js +98 -0
  31. package/dist/docusaurus/renderers/doctabletype.js.map +1 -0
  32. package/dist/docusaurus/renderers/doctitletype.d.ts +6 -0
  33. package/dist/docusaurus/renderers/doctitletype.d.ts.map +1 -0
  34. package/dist/docusaurus/renderers/doctitletype.js +38 -0
  35. package/dist/docusaurus/renderers/doctitletype.js.map +1 -0
  36. package/dist/docusaurus/renderers/docvariablelisttype.d.ts +9 -0
  37. package/dist/docusaurus/renderers/docvariablelisttype.d.ts.map +1 -0
  38. package/dist/docusaurus/renderers/docvariablelisttype.js +57 -0
  39. package/dist/docusaurus/renderers/docvariablelisttype.js.map +1 -0
  40. package/dist/docusaurus/renderers/docxrefsecttype.d.ts +6 -0
  41. package/dist/docusaurus/renderers/docxrefsecttype.d.ts.map +1 -0
  42. package/dist/docusaurus/renderers/docxrefsecttype.js +44 -0
  43. package/dist/docusaurus/renderers/docxrefsecttype.js.map +1 -0
  44. package/dist/docusaurus/renderers/element-renderer-base.d.ts +12 -0
  45. package/dist/docusaurus/renderers/element-renderer-base.d.ts.map +1 -0
  46. package/dist/docusaurus/renderers/element-renderer-base.js +25 -0
  47. package/dist/docusaurus/renderers/element-renderer-base.js.map +1 -0
  48. package/dist/docusaurus/renderers/inctype.d.ts +6 -0
  49. package/dist/docusaurus/renderers/inctype.d.ts.map +1 -0
  50. package/dist/docusaurus/renderers/inctype.js +42 -0
  51. package/dist/docusaurus/renderers/inctype.js.map +1 -0
  52. package/dist/docusaurus/renderers/linkedtexttype.d.ts +6 -0
  53. package/dist/docusaurus/renderers/linkedtexttype.d.ts.map +1 -0
  54. package/dist/docusaurus/renderers/linkedtexttype.js +32 -0
  55. package/dist/docusaurus/renderers/linkedtexttype.js.map +1 -0
  56. package/dist/docusaurus/renderers/listingtype.d.ts +10 -0
  57. package/dist/docusaurus/renderers/listingtype.d.ts.map +1 -0
  58. package/dist/docusaurus/renderers/listingtype.js +121 -0
  59. package/dist/docusaurus/renderers/listingtype.js.map +1 -0
  60. package/dist/docusaurus/renderers/paramtype.d.ts +6 -0
  61. package/dist/docusaurus/renderers/paramtype.d.ts.map +1 -0
  62. package/dist/docusaurus/renderers/paramtype.js +63 -0
  63. package/dist/docusaurus/renderers/paramtype.js.map +1 -0
  64. package/dist/docusaurus/renderers/referencetype.d.ts +6 -0
  65. package/dist/docusaurus/renderers/referencetype.d.ts.map +1 -0
  66. package/dist/docusaurus/renderers/referencetype.js +42 -0
  67. package/dist/docusaurus/renderers/referencetype.js.map +1 -0
  68. package/dist/docusaurus/renderers/reftexttype.d.ts +6 -0
  69. package/dist/docusaurus/renderers/reftexttype.d.ts.map +1 -0
  70. package/dist/docusaurus/renderers/reftexttype.js +41 -0
  71. package/dist/docusaurus/renderers/reftexttype.js.map +1 -0
  72. package/dist/docusaurus/renderers/reftype.d.ts +6 -0
  73. package/dist/docusaurus/renderers/reftype.d.ts.map +1 -0
  74. package/dist/docusaurus/renderers/reftype.js +38 -0
  75. package/dist/docusaurus/renderers/reftype.js.map +1 -0
  76. package/dist/docusaurus/renderers/renderers.d.ts +33 -0
  77. package/dist/docusaurus/renderers/renderers.d.ts.map +1 -0
  78. package/dist/docusaurus/renderers/renderers.js +303 -0
  79. package/dist/docusaurus/renderers/renderers.js.map +1 -0
  80. package/dist/docusaurus/renderers/substringtype.d.ts +6 -0
  81. package/dist/docusaurus/renderers/substringtype.d.ts.map +1 -0
  82. package/dist/docusaurus/renderers/substringtype.js +24 -0
  83. package/dist/docusaurus/renderers/substringtype.js.map +1 -0
  84. package/dist/docusaurus/renderers/tableofcontentstype.d.ts +6 -0
  85. package/dist/docusaurus/renderers/tableofcontentstype.d.ts.map +1 -0
  86. package/dist/docusaurus/renderers/tableofcontentstype.js +41 -0
  87. package/dist/docusaurus/renderers/tableofcontentstype.js.map +1 -0
  88. package/dist/docusaurus/types.d.ts +53 -0
  89. package/dist/docusaurus/types.d.ts.map +1 -0
  90. package/dist/docusaurus/types.js +13 -0
  91. package/dist/docusaurus/types.js.map +1 -0
  92. package/dist/docusaurus/utils.d.ts +16 -0
  93. package/dist/docusaurus/utils.d.ts.map +1 -0
  94. package/dist/docusaurus/utils.js +169 -0
  95. package/dist/docusaurus/utils.js.map +1 -0
  96. package/dist/docusaurus/view-model/classes-vm.d.ts +35 -0
  97. package/dist/docusaurus/view-model/classes-vm.d.ts.map +1 -0
  98. package/dist/docusaurus/view-model/classes-vm.js +707 -0
  99. package/dist/docusaurus/view-model/classes-vm.js.map +1 -0
  100. package/dist/docusaurus/view-model/collection-base.d.ts +28 -0
  101. package/dist/docusaurus/view-model/collection-base.d.ts.map +1 -0
  102. package/dist/docusaurus/view-model/collection-base.js +155 -0
  103. package/dist/docusaurus/view-model/collection-base.js.map +1 -0
  104. package/dist/docusaurus/view-model/compound-base-vm.d.ts +112 -0
  105. package/dist/docusaurus/view-model/compound-base-vm.d.ts.map +1 -0
  106. package/dist/docusaurus/view-model/compound-base-vm.js +829 -0
  107. package/dist/docusaurus/view-model/compound-base-vm.js.map +1 -0
  108. package/dist/docusaurus/view-model/description-anchors.d.ts +17 -0
  109. package/dist/docusaurus/view-model/description-anchors.d.ts.map +1 -0
  110. package/dist/docusaurus/view-model/description-anchors.js +37 -0
  111. package/dist/docusaurus/view-model/description-anchors.js.map +1 -0
  112. package/dist/docusaurus/view-model/files-and-folders-vm.d.ts +45 -0
  113. package/dist/docusaurus/view-model/files-and-folders-vm.d.ts.map +1 -0
  114. package/dist/docusaurus/view-model/files-and-folders-vm.js +749 -0
  115. package/dist/docusaurus/view-model/files-and-folders-vm.js.map +1 -0
  116. package/dist/docusaurus/view-model/groups-vm.d.ts +20 -0
  117. package/dist/docusaurus/view-model/groups-vm.d.ts.map +1 -0
  118. package/dist/docusaurus/view-model/groups-vm.js +297 -0
  119. package/dist/docusaurus/view-model/groups-vm.js.map +1 -0
  120. package/dist/docusaurus/view-model/members-vm.d.ts +81 -0
  121. package/dist/docusaurus/view-model/members-vm.d.ts.map +1 -0
  122. package/dist/docusaurus/view-model/members-vm.js +1017 -0
  123. package/dist/docusaurus/view-model/members-vm.js.map +1 -0
  124. package/dist/docusaurus/view-model/namespaces-vm.d.ts +24 -0
  125. package/dist/docusaurus/view-model/namespaces-vm.d.ts.map +1 -0
  126. package/dist/docusaurus/view-model/namespaces-vm.js +527 -0
  127. package/dist/docusaurus/view-model/namespaces-vm.js.map +1 -0
  128. package/dist/docusaurus/view-model/options.d.ts +8 -0
  129. package/dist/docusaurus/view-model/options.d.ts.map +1 -0
  130. package/dist/docusaurus/view-model/options.js +42 -0
  131. package/dist/docusaurus/view-model/options.js.map +1 -0
  132. package/dist/docusaurus/view-model/pages-vm.d.ts +18 -0
  133. package/dist/docusaurus/view-model/pages-vm.d.ts.map +1 -0
  134. package/dist/docusaurus/view-model/pages-vm.js +160 -0
  135. package/dist/docusaurus/view-model/pages-vm.js.map +1 -0
  136. package/dist/docusaurus/view-model/tree-entries-vm.d.ts +44 -0
  137. package/dist/docusaurus/view-model/tree-entries-vm.d.ts.map +1 -0
  138. package/dist/docusaurus/view-model/tree-entries-vm.js +139 -0
  139. package/dist/docusaurus/view-model/tree-entries-vm.js.map +1 -0
  140. package/dist/docusaurus/view-model/view-model.d.ts +34 -0
  141. package/dist/docusaurus/view-model/view-model.d.ts.map +1 -0
  142. package/dist/docusaurus/view-model/view-model.js +284 -0
  143. package/dist/docusaurus/view-model/view-model.js.map +1 -0
  144. package/dist/docusaurus/workspace.d.ts +65 -0
  145. package/dist/docusaurus/workspace.d.ts.map +1 -0
  146. package/dist/docusaurus/workspace.js +350 -0
  147. package/dist/docusaurus/workspace.js.map +1 -0
  148. package/dist/doxygen/data-model/compounds/compounddef-dm.d.ts +97 -0
  149. package/dist/doxygen/data-model/compounds/compounddef-dm.d.ts.map +1 -0
  150. package/dist/doxygen/data-model/compounds/compounddef-dm.js +498 -0
  151. package/dist/doxygen/data-model/compounds/compounddef-dm.js.map +1 -0
  152. package/dist/doxygen/data-model/compounds/compoundreftype-dm.d.ts +27 -0
  153. package/dist/doxygen/data-model/compounds/compoundreftype-dm.d.ts.map +1 -0
  154. package/dist/doxygen/data-model/compounds/compoundreftype-dm.js +91 -0
  155. package/dist/doxygen/data-model/compounds/compoundreftype-dm.js.map +1 -0
  156. package/dist/doxygen/data-model/compounds/descriptiontype-dm.d.ts +1214 -0
  157. package/dist/doxygen/data-model/compounds/descriptiontype-dm.d.ts.map +1 -0
  158. package/dist/doxygen/data-model/compounds/descriptiontype-dm.js +5995 -0
  159. package/dist/doxygen/data-model/compounds/descriptiontype-dm.js.map +1 -0
  160. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.d.ts +22 -0
  161. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.d.ts.map +1 -0
  162. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.js +136 -0
  163. package/dist/doxygen/data-model/compounds/docvarlistentrytype-dm.js.map +1 -0
  164. package/dist/doxygen/data-model/compounds/doxygentype-dm.d.ts +14 -0
  165. package/dist/doxygen/data-model/compounds/doxygentype-dm.d.ts.map +1 -0
  166. package/dist/doxygen/data-model/compounds/doxygentype-dm.js +87 -0
  167. package/dist/doxygen/data-model/compounds/doxygentype-dm.js.map +1 -0
  168. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.d.ts +23 -0
  169. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.d.ts.map +1 -0
  170. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.js +104 -0
  171. package/dist/doxygen/data-model/compounds/enumvaluetype-dm.js.map +1 -0
  172. package/dist/doxygen/data-model/compounds/inctype-dm.d.ts +24 -0
  173. package/dist/doxygen/data-model/compounds/inctype-dm.d.ts.map +1 -0
  174. package/dist/doxygen/data-model/compounds/inctype-dm.js +84 -0
  175. package/dist/doxygen/data-model/compounds/inctype-dm.js.map +1 -0
  176. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.d.ts +33 -0
  177. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.d.ts.map +1 -0
  178. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.js +102 -0
  179. package/dist/doxygen/data-model/compounds/linkedtexttype-dm.js.map +1 -0
  180. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.d.ts +17 -0
  181. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.d.ts.map +1 -0
  182. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.js +69 -0
  183. package/dist/doxygen/data-model/compounds/listofallmemberstype-dm.js.map +1 -0
  184. package/dist/doxygen/data-model/compounds/locationtype-dm.d.ts +24 -0
  185. package/dist/doxygen/data-model/compounds/locationtype-dm.d.ts.map +1 -0
  186. package/dist/doxygen/data-model/compounds/locationtype-dm.js +109 -0
  187. package/dist/doxygen/data-model/compounds/locationtype-dm.js.map +1 -0
  188. package/dist/doxygen/data-model/compounds/memberdeftype-dm.d.ts +67 -0
  189. package/dist/doxygen/data-model/compounds/memberdeftype-dm.d.ts.map +1 -0
  190. package/dist/doxygen/data-model/compounds/memberdeftype-dm.js +253 -0
  191. package/dist/doxygen/data-model/compounds/memberdeftype-dm.js.map +1 -0
  192. package/dist/doxygen/data-model/compounds/memberreftype-dm.d.ts +21 -0
  193. package/dist/doxygen/data-model/compounds/memberreftype-dm.d.ts.map +1 -0
  194. package/dist/doxygen/data-model/compounds/memberreftype-dm.js +105 -0
  195. package/dist/doxygen/data-model/compounds/memberreftype-dm.js.map +1 -0
  196. package/dist/doxygen/data-model/compounds/membertype-dm.d.ts +17 -0
  197. package/dist/doxygen/data-model/compounds/membertype-dm.d.ts.map +1 -0
  198. package/dist/doxygen/data-model/compounds/membertype-dm.js +87 -0
  199. package/dist/doxygen/data-model/compounds/membertype-dm.js.map +1 -0
  200. package/dist/doxygen/data-model/compounds/paramtype-dm.d.ts +25 -0
  201. package/dist/doxygen/data-model/compounds/paramtype-dm.d.ts.map +1 -0
  202. package/dist/doxygen/data-model/compounds/paramtype-dm.js +115 -0
  203. package/dist/doxygen/data-model/compounds/paramtype-dm.js.map +1 -0
  204. package/dist/doxygen/data-model/compounds/referencetype-dm.d.ts +26 -0
  205. package/dist/doxygen/data-model/compounds/referencetype-dm.d.ts.map +1 -0
  206. package/dist/doxygen/data-model/compounds/referencetype-dm.js +93 -0
  207. package/dist/doxygen/data-model/compounds/referencetype-dm.js.map +1 -0
  208. package/dist/doxygen/data-model/compounds/reftexttype-dm.d.ts +15 -0
  209. package/dist/doxygen/data-model/compounds/reftexttype-dm.d.ts.map +1 -0
  210. package/dist/doxygen/data-model/compounds/reftexttype-dm.js +80 -0
  211. package/dist/doxygen/data-model/compounds/reftexttype-dm.js.map +1 -0
  212. package/dist/doxygen/data-model/compounds/reftype-dm.d.ts +55 -0
  213. package/dist/doxygen/data-model/compounds/reftype-dm.d.ts.map +1 -0
  214. package/dist/doxygen/data-model/compounds/reftype-dm.js +152 -0
  215. package/dist/doxygen/data-model/compounds/reftype-dm.js.map +1 -0
  216. package/dist/doxygen/data-model/compounds/reimplementtype-dm.d.ts +20 -0
  217. package/dist/doxygen/data-model/compounds/reimplementtype-dm.d.ts.map +1 -0
  218. package/dist/doxygen/data-model/compounds/reimplementtype-dm.js +77 -0
  219. package/dist/doxygen/data-model/compounds/reimplementtype-dm.js.map +1 -0
  220. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.d.ts +34 -0
  221. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.d.ts.map +1 -0
  222. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.js +139 -0
  223. package/dist/doxygen/data-model/compounds/sectiondeftype-dm.js.map +1 -0
  224. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.d.ts +46 -0
  225. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.d.ts.map +1 -0
  226. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.js +235 -0
  227. package/dist/doxygen/data-model/compounds/tableofcontentstype-dm.js.map +1 -0
  228. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.d.ts +17 -0
  229. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.d.ts.map +1 -0
  230. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.js +69 -0
  231. package/dist/doxygen/data-model/compounds/templateparamlisttype-dm.js.map +1 -0
  232. package/dist/doxygen/data-model/data-model.d.ts +91 -0
  233. package/dist/doxygen/data-model/data-model.d.ts.map +1 -0
  234. package/dist/doxygen/data-model/data-model.js +245 -0
  235. package/dist/doxygen/data-model/data-model.js.map +1 -0
  236. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.d.ts +21 -0
  237. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.d.ts.map +1 -0
  238. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.js +95 -0
  239. package/dist/doxygen/data-model/doxyfile/doxyfileoptiontype-dm.js.map +1 -0
  240. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.d.ts +20 -0
  241. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.d.ts.map +1 -0
  242. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.js +92 -0
  243. package/dist/doxygen/data-model/doxyfile/doxyfiletype-dm.js.map +1 -0
  244. package/dist/doxygen/data-model/doxygen-xml-parser.d.ts +261 -0
  245. package/dist/doxygen/data-model/doxygen-xml-parser.d.ts.map +1 -0
  246. package/dist/doxygen/data-model/doxygen-xml-parser.js +459 -0
  247. package/dist/doxygen/data-model/doxygen-xml-parser.js.map +1 -0
  248. package/dist/doxygen/data-model/index/indexcompoundtype-dm.d.ts +21 -0
  249. package/dist/doxygen/data-model/index/indexcompoundtype-dm.d.ts.map +1 -0
  250. package/dist/doxygen/data-model/index/indexcompoundtype-dm.js +96 -0
  251. package/dist/doxygen/data-model/index/indexcompoundtype-dm.js.map +1 -0
  252. package/dist/doxygen/data-model/index/indexdoxygentype-dm.d.ts +20 -0
  253. package/dist/doxygen/data-model/index/indexdoxygentype-dm.d.ts.map +1 -0
  254. package/dist/doxygen/data-model/index/indexdoxygentype-dm.js +93 -0
  255. package/dist/doxygen/data-model/index/indexdoxygentype-dm.js.map +1 -0
  256. package/dist/doxygen/data-model/index/indexmembertype-dm.d.ts +19 -0
  257. package/dist/doxygen/data-model/index/indexmembertype-dm.d.ts.map +1 -0
  258. package/dist/doxygen/data-model/index/indexmembertype-dm.js +89 -0
  259. package/dist/doxygen/data-model/index/indexmembertype-dm.js.map +1 -0
  260. package/dist/doxygen/data-model/types.d.ts +44 -0
  261. package/dist/doxygen/data-model/types.d.ts.map +1 -0
  262. package/dist/doxygen/data-model/types.js +24 -0
  263. package/dist/doxygen/data-model/types.js.map +1 -0
  264. package/dist/index.d.ts +43 -0
  265. package/dist/index.d.ts.map +1 -0
  266. package/dist/index.js +69 -0
  267. package/dist/index.js.map +1 -0
  268. package/dist/tsconfig.tsbuildinfo +1 -0
  269. package/package.json +99 -0
  270. package/template/css/custom.css +908 -0
  271. package/template/img/README.md +3 -0
  272. package/template/img/document-svgrepo-com.svg +5 -0
  273. package/template/img/folder-svgrepo-com.svg +5 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"members-vm.js","sourceRoot":"","sources":["../../../src/docusaurus/view-model/members-vm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { CompoundBase } from './compound-base-vm.js';
2
+ import type { CompoundDefDataModel } from '../../doxygen/data-model/compounds/compounddef-dm.js';
3
+ import { CollectionBase } from './collection-base.js';
4
+ import type { MenuItem, SidebarCategory, FrontMatter } from '../types.js';
5
+ export declare class Namespaces extends CollectionBase {
6
+ topLevelNamespaces: Namespace[];
7
+ addChild(compoundDef: CompoundDefDataModel): CompoundBase;
8
+ createCompoundsHierarchies(): void;
9
+ addSidebarItems(sidebarCategory: SidebarCategory): void;
10
+ private createNamespaceItemRecursively;
11
+ createMenuItems(): MenuItem[];
12
+ generateIndexDotMdFile(): Promise<void>;
13
+ private generateIndexMdFileRecursively;
14
+ generatePerInitialsIndexMdFiles(): Promise<void>;
15
+ }
16
+ export declare class Namespace extends CompoundBase {
17
+ unqualifiedName: string;
18
+ isAnonymous: boolean;
19
+ constructor(collection: Namespaces, compoundDef: CompoundDefDataModel);
20
+ initializeLate(): void;
21
+ hasAnyContent(): boolean;
22
+ renderToLines(frontMatter: FrontMatter): string[];
23
+ }
24
+ //# sourceMappingURL=namespaces-vm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespaces-vm.d.ts","sourceRoot":"","sources":["../../../src/docusaurus/view-model/namespaces-vm.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAA;AAChG,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,EACV,QAAQ,EACR,eAAe,EAIf,WAAW,EACZ,MAAM,aAAa,CAAA;AAYpB,qBAAa,UAAW,SAAQ,cAAc;IAE5C,kBAAkB,EAAE,SAAS,EAAE,CAAK;IAY3B,QAAQ,CAAC,WAAW,EAAE,oBAAoB,GAAG,YAAY;IAgBzD,0BAA0B,IAAI,IAAI;IA8BlC,eAAe,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IA4FhE,OAAO,CAAC,8BAA8B;IA6C7B,eAAe,IAAI,QAAQ,EAAE;IAUvB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IA4CtD,OAAO,CAAC,8BAA8B;IAmDvB,+BAA+B,IAAI,OAAO,CAAC,IAAI,CAAC;CAsHhE;AAID,qBAAa,SAAU,SAAQ,YAAY;IACzC,eAAe,SAAQ;IACvB,WAAW,UAAQ;gBAEP,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,oBAAoB;IAgH5D,cAAc,IAAI,IAAI;IAetB,aAAa,IAAI,OAAO;IAgCxB,aAAa,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,EAAE;CA4D3D"}
@@ -0,0 +1,527 @@
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
+ import assert from 'node:assert';
14
+ import path from 'node:path';
15
+ import { CompoundBase } from './compound-base-vm.js';
16
+ import { CollectionBase } from './collection-base.js';
17
+ import { flattenPath, sanitizeAnonymousNamespace, sanitizeHierarchicalPath, } from '../utils.js';
18
+ import { NamespaceTreeEntry } from './tree-entries-vm.js';
19
+ import { Class } from './classes-vm.js';
20
+ // ----------------------------------------------------------------------------
21
+ export class Namespaces extends CollectionBase {
22
+ // compoundsById: Map<string, Namespace>
23
+ topLevelNamespaces = [];
24
+ // --------------------------------------------------------------------------
25
+ // constructor (workspace: Workspace) {
26
+ // super(workspace)
27
+ // // this.compoundsById = new Map()
28
+ // }
29
+ // --------------------------------------------------------------------------
30
+ addChild(compoundDef) {
31
+ const namespace = new Namespace(this, compoundDef);
32
+ // Skip
33
+ if (namespace.compoundName.length === 0) {
34
+ if (namespace.children.length > 0) {
35
+ console.error('Anonymous namespace', namespace.id, ' with children?');
36
+ }
37
+ }
38
+ else {
39
+ this.collectionCompoundsById.set(namespace.id, namespace);
40
+ }
41
+ return namespace;
42
+ }
43
+ // --------------------------------------------------------------------------
44
+ createCompoundsHierarchies() {
45
+ // Recreate namespaces hierarchies.
46
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
47
+ for (const [namespaceId, namespace] of this.collectionCompoundsById) {
48
+ for (const childNamespaceId of namespace.childrenIds) {
49
+ const childNamespace = this.collectionCompoundsById.get(childNamespaceId);
50
+ assert(childNamespace !== undefined);
51
+ // console.log('namespaceId', childNamespaceId,'has parent',
52
+ // namespaceId)
53
+ childNamespace.parent = namespace;
54
+ namespace.children.push(childNamespace);
55
+ }
56
+ }
57
+ // Create the top level namespace list.
58
+ for (const [namespaceId, namespace] of this.collectionCompoundsById) {
59
+ if (namespace.parent === undefined) {
60
+ if (namespace instanceof Namespace) {
61
+ if (this.workspace.options.debug) {
62
+ console.log('topLevelNamespaces:', namespaceId);
63
+ }
64
+ this.topLevelNamespaces.push(namespace);
65
+ }
66
+ }
67
+ }
68
+ }
69
+ // --------------------------------------------------------------------------
70
+ addSidebarItems(sidebarCategory) {
71
+ const indicesSet = this.workspace.indicesMaps.get('namespaces');
72
+ if (indicesSet === undefined) {
73
+ return;
74
+ }
75
+ // Add namespaces to the sidebar.
76
+ // Top level namespaces are added below a Namespaces category.
77
+ const namespacesCategory = {
78
+ type: 'category',
79
+ label: 'Namespaces',
80
+ link: {
81
+ type: 'doc',
82
+ id: `${this.workspace.sidebarBaseId}indices/namespaces/index`,
83
+ },
84
+ collapsed: true,
85
+ items: [
86
+ {
87
+ type: 'category',
88
+ label: 'Hierarchy',
89
+ collapsed: true,
90
+ items: [],
91
+ },
92
+ ],
93
+ };
94
+ for (const namespace of this.topLevelNamespaces) {
95
+ const item = this.createNamespaceItemRecursively(namespace);
96
+ if (item !== undefined) {
97
+ ;
98
+ namespacesCategory.items[0].items.push(item);
99
+ }
100
+ }
101
+ if (indicesSet.has('all')) {
102
+ namespacesCategory.items.push({
103
+ type: 'doc',
104
+ label: 'All',
105
+ id: `${this.workspace.sidebarBaseId}indices/namespaces/all`,
106
+ });
107
+ }
108
+ if (indicesSet.has('classes')) {
109
+ namespacesCategory.items.push({
110
+ type: 'doc',
111
+ label: 'Classes',
112
+ id: `${this.workspace.sidebarBaseId}indices/namespaces/classes`,
113
+ });
114
+ }
115
+ if (indicesSet.has('functions')) {
116
+ namespacesCategory.items.push({
117
+ type: 'doc',
118
+ label: 'Functions',
119
+ id: `${this.workspace.sidebarBaseId}indices/namespaces/functions`,
120
+ });
121
+ }
122
+ if (indicesSet.has('variables')) {
123
+ namespacesCategory.items.push({
124
+ type: 'doc',
125
+ label: 'Variables',
126
+ id: `${this.workspace.sidebarBaseId}indices/namespaces/variables`,
127
+ });
128
+ }
129
+ if (indicesSet.has('typedefs')) {
130
+ namespacesCategory.items.push({
131
+ type: 'doc',
132
+ label: 'Typedefs',
133
+ id: `${this.workspace.sidebarBaseId}indices/namespaces/typedefs`,
134
+ });
135
+ }
136
+ if (indicesSet.has('enums')) {
137
+ namespacesCategory.items.push({
138
+ type: 'doc',
139
+ label: 'Enums',
140
+ id: `${this.workspace.sidebarBaseId}indices/namespaces/enums`,
141
+ });
142
+ }
143
+ if (indicesSet.has('enumvalues')) {
144
+ namespacesCategory.items.push({
145
+ type: 'doc',
146
+ label: 'Enum Values',
147
+ id: `${this.workspace.sidebarBaseId}indices/namespaces/enumvalues`,
148
+ });
149
+ }
150
+ sidebarCategory.items.push(namespacesCategory);
151
+ }
152
+ createNamespaceItemRecursively(namespace) {
153
+ if (namespace.sidebarLabel === undefined ||
154
+ namespace.sidebarId === undefined) {
155
+ return undefined;
156
+ }
157
+ if (namespace.children.length === 0) {
158
+ const docItem = {
159
+ type: 'doc',
160
+ label: namespace.sidebarLabel,
161
+ id: `${this.workspace.sidebarBaseId}${namespace.sidebarId}`,
162
+ };
163
+ return docItem;
164
+ }
165
+ else {
166
+ const categoryItem = {
167
+ type: 'category',
168
+ label: namespace.sidebarLabel,
169
+ link: {
170
+ type: 'doc',
171
+ id: `${this.workspace.sidebarBaseId}${namespace.sidebarId}`,
172
+ },
173
+ className: 'doxyEllipsis',
174
+ collapsed: true,
175
+ items: [],
176
+ };
177
+ for (const childNamespace of namespace.children) {
178
+ if (childNamespace instanceof Namespace) {
179
+ const item = this.createNamespaceItemRecursively(childNamespace);
180
+ if (item !== undefined) {
181
+ categoryItem.items.push(item);
182
+ }
183
+ }
184
+ }
185
+ return categoryItem;
186
+ }
187
+ }
188
+ // --------------------------------------------------------------------------
189
+ createMenuItems() {
190
+ const menuItem = {
191
+ label: 'Namespaces',
192
+ to: `${this.workspace.menuBaseUrl}namespaces/`,
193
+ };
194
+ return [menuItem];
195
+ }
196
+ // --------------------------------------------------------------------------
197
+ async generateIndexDotMdFile() {
198
+ if (this.topLevelNamespaces.length === 0) {
199
+ return;
200
+ }
201
+ const filePath = this.workspace.outputFolderPath + 'indices/namespaces/index.md';
202
+ const permalink = 'namespaces';
203
+ const frontMatter = {
204
+ title: 'Namespaces',
205
+ slug: `${this.workspace.slugBaseUrl}${permalink}`,
206
+ // description: '...', // TODO
207
+ custom_edit_url: null,
208
+ keywords: ['doxygen', 'namespaces', 'reference'],
209
+ };
210
+ const contentLines = [];
211
+ for (const namespace of this.topLevelNamespaces) {
212
+ contentLines.push(...this.generateIndexMdFileRecursively(namespace, 1));
213
+ }
214
+ if (contentLines.length === 0) {
215
+ return;
216
+ }
217
+ const lines = [];
218
+ lines.push('The namespaces used by this project are:');
219
+ lines.push(...this.workspace.renderTreeTableToHtmlLines({ contentLines }));
220
+ if (this.workspace.options.verbose) {
221
+ console.log(`Writing namespaces index file ${filePath}...`);
222
+ }
223
+ await this.workspace.writeOutputMdFile({
224
+ filePath,
225
+ frontMatter,
226
+ bodyLines: lines,
227
+ });
228
+ }
229
+ generateIndexMdFileRecursively(namespace, depth) {
230
+ // console.log(util.inspect(namespace, { compact: false, depth: 999 }))
231
+ const lines = [];
232
+ const label = this.workspace.renderString(namespace.treeEntryName, 'html');
233
+ const permalink = this.workspace.getPagePermalink(namespace.id);
234
+ if (permalink === undefined || permalink.length === 0) {
235
+ // console.log(namespace)
236
+ return [];
237
+ }
238
+ // assert(permalink !== undefined && permalink.length > 1)
239
+ let description = '';
240
+ if (namespace.briefDescriptionHtmlString !== undefined &&
241
+ namespace.briefDescriptionHtmlString.length > 0) {
242
+ description = namespace.briefDescriptionHtmlString.replace(/[.]$/, '');
243
+ }
244
+ lines.push('');
245
+ lines.push(...this.workspace.renderTreeTableRowToHtmlLines({
246
+ itemIconLetter: 'N',
247
+ itemLabel: label,
248
+ itemLink: permalink,
249
+ depth,
250
+ description,
251
+ }));
252
+ if (namespace.children.length > 0) {
253
+ for (const childNamespace of namespace.children) {
254
+ if (childNamespace instanceof Namespace) {
255
+ lines.push(...this.generateIndexMdFileRecursively(childNamespace, depth + 1));
256
+ }
257
+ }
258
+ }
259
+ return lines;
260
+ }
261
+ // --------------------------------------------------------------------------
262
+ async generatePerInitialsIndexMdFiles() {
263
+ if (this.topLevelNamespaces.length === 0) {
264
+ return;
265
+ }
266
+ const allUnorderedEntriesMap = new Map();
267
+ for (const [, compound] of this.collectionCompoundsById) {
268
+ if (!(compound instanceof Namespace)) {
269
+ continue;
270
+ }
271
+ const compoundEntry = new NamespaceTreeEntry(compound, compound);
272
+ allUnorderedEntriesMap.set(compoundEntry.id, compoundEntry);
273
+ // console.log(compound.indexName)
274
+ if (compound.innerCompounds !== undefined) {
275
+ // console.log(compound.indexName,
276
+ // Array.from(compound.innerCompounds.keys()))
277
+ const classCompoundDef = compound.innerCompounds.get('innerClasses');
278
+ if (classCompoundDef?.innerClasses !== undefined) {
279
+ for (const innerClass of classCompoundDef.innerClasses) {
280
+ // console.log(innerClass.refid)
281
+ const compoundClass = this.workspace.viewModel.compoundsById.get(innerClass.refid);
282
+ if (compoundClass instanceof Class) {
283
+ const classEntry = new NamespaceTreeEntry(compoundClass, compound);
284
+ allUnorderedEntriesMap.set(classEntry.id, classEntry);
285
+ }
286
+ }
287
+ }
288
+ }
289
+ for (const section of compound.sections) {
290
+ for (const member of section.definitionMembers) {
291
+ const memberEntry = new NamespaceTreeEntry(member, compound);
292
+ allUnorderedEntriesMap.set(memberEntry.id, memberEntry);
293
+ if (member.enumValues !== undefined) {
294
+ for (const enumValue of member.enumValues) {
295
+ const enumValueEntry = new NamespaceTreeEntry(enumValue, compound);
296
+ allUnorderedEntriesMap.set(enumValueEntry.id, enumValueEntry);
297
+ }
298
+ }
299
+ }
300
+ }
301
+ }
302
+ // ------------------------------------------------------------------------
303
+ await this.generateIndexFile({
304
+ group: 'namespaces',
305
+ fileKind: 'all',
306
+ title: 'Namespaces Definitions Index',
307
+ description: 'The definitions part of the namespaces are:',
308
+ map: allUnorderedEntriesMap,
309
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
310
+ filter: (kind) => true,
311
+ });
312
+ await this.generateIndexFile({
313
+ group: 'namespaces',
314
+ fileKind: 'classes',
315
+ title: 'Namespaces Classes Index',
316
+ description: 'The classes, structs, unions defined in the namespaces are:',
317
+ map: allUnorderedEntriesMap,
318
+ filter: (kind) => kind === 'class' || kind === 'struct' || kind === 'union',
319
+ });
320
+ await this.generateIndexFile({
321
+ group: 'namespaces',
322
+ fileKind: 'functions',
323
+ title: 'Namespaces Functions Index',
324
+ description: 'The functions defined in the namespaces are:',
325
+ map: allUnorderedEntriesMap,
326
+ filter: (kind) => kind === 'function',
327
+ });
328
+ await this.generateIndexFile({
329
+ group: 'namespaces',
330
+ fileKind: 'variables',
331
+ title: 'Namespaces Variables Index',
332
+ description: 'The variables defined in the namespaces are:',
333
+ map: allUnorderedEntriesMap,
334
+ filter: (kind) => kind === 'variable',
335
+ });
336
+ await this.generateIndexFile({
337
+ group: 'namespaces',
338
+ fileKind: 'typedefs',
339
+ title: 'Namespaces Type Definitions Index',
340
+ description: 'The typedefs defined in the namespaces are:',
341
+ map: allUnorderedEntriesMap,
342
+ filter: (kind) => kind === 'typedef',
343
+ });
344
+ await this.generateIndexFile({
345
+ group: 'namespaces',
346
+ fileKind: 'enums',
347
+ title: 'Namespaces Enums Index',
348
+ description: 'The enums defined in the namespaces are:',
349
+ map: allUnorderedEntriesMap,
350
+ filter: (kind) => kind === 'enum',
351
+ });
352
+ await this.generateIndexFile({
353
+ group: 'namespaces',
354
+ fileKind: 'enumvalues',
355
+ title: 'Namespaces Enum Values Index',
356
+ description: 'The enum values defined in the namespaces are:',
357
+ map: allUnorderedEntriesMap,
358
+ filter: (kind) => kind === 'enumvalue',
359
+ });
360
+ // ------------------------------------------------------------------------
361
+ }
362
+ }
363
+ // ============================================================================
364
+ export class Namespace extends CompoundBase {
365
+ unqualifiedName = '???';
366
+ isAnonymous = false;
367
+ constructor(collection, compoundDef) {
368
+ super(collection, compoundDef);
369
+ // console.log('Namespace.constructor', util.inspect(compoundDef))
370
+ if (Array.isArray(compoundDef.innerNamespaces)) {
371
+ for (const ref of compoundDef.innerNamespaces) {
372
+ // console.log('component', compoundDef.id, 'has child', ref.refid)
373
+ this.childrenIds.push(ref.refid);
374
+ }
375
+ }
376
+ // Tricky case: namespace { namespace CU { ... }}
377
+ // id: "namespace_0d341223050020306256025223146376054302122106363020_1_1CU"
378
+ // compoundname: "::CU"
379
+ // location: "[generated]"
380
+ if (/^namespace.*_0d\d{48}/.test(this.id)) {
381
+ let fileName = '';
382
+ if (compoundDef.location?.file !== undefined) {
383
+ fileName = path.basename(compoundDef.location.file);
384
+ }
385
+ if (this.compoundName.startsWith('::')) {
386
+ this.unqualifiedName = compoundDef.compoundName.replace(/.*::/, '');
387
+ this.indexName = `anonymous{${fileName}}${this.compoundName}`;
388
+ const sanitizedPath = sanitizeHierarchicalPath(this.indexName.replaceAll('::', '/'));
389
+ this.pageTitle = `\`${this.indexName}\` Namespace`;
390
+ this.relativePermalink = `namespaces/${sanitizedPath}`;
391
+ this.sidebarId = `namespaces/${flattenPath(sanitizedPath)}`;
392
+ const { unqualifiedName } = this;
393
+ this.sidebarLabel = unqualifiedName;
394
+ }
395
+ else {
396
+ this.unqualifiedName = `anonymous{${fileName}}`;
397
+ this.isAnonymous = true;
398
+ if (this.compoundName.length > 0) {
399
+ this.indexName = `${this.compoundName}::${this.unqualifiedName}`;
400
+ }
401
+ else {
402
+ const { unqualifiedName } = this;
403
+ this.indexName = unqualifiedName;
404
+ }
405
+ const sanitizedPath = sanitizeHierarchicalPath(this.indexName.replaceAll('::', '/'));
406
+ // if (compoundDef.location?.file !== undefined) {
407
+ // sanitizedPath +=
408
+ // `-${crypto.hash('md5', compoundDef.location?.file)}`
409
+ // }
410
+ this.pageTitle = `\`${this.indexName}\` Namespace`;
411
+ this.relativePermalink = `namespaces/${sanitizedPath}`;
412
+ this.sidebarId = `namespaces/${flattenPath(sanitizedPath)}`;
413
+ const { unqualifiedName } = this;
414
+ this.sidebarLabel = unqualifiedName;
415
+ }
416
+ }
417
+ else {
418
+ // The compoundName is the fully qualified namespace name.
419
+ // Keep only the last name.
420
+ this.unqualifiedName = sanitizeAnonymousNamespace(compoundDef.compoundName.replace(/.*::/, ''));
421
+ this.indexName = sanitizeAnonymousNamespace(this.compoundName.replace(/.*::/, ''));
422
+ this.pageTitle = `\`${this.unqualifiedName}\` Namespace`;
423
+ const sanitizedPath = sanitizeHierarchicalPath(sanitizeAnonymousNamespace(this.compoundName.replaceAll('::', '/')));
424
+ if (compoundDef.compoundName.length > 0) {
425
+ // Skip un-named namespaces, and generated ones,
426
+ // since they can be duplicate.
427
+ this.relativePermalink = `namespaces/${sanitizedPath}`;
428
+ this.sidebarId = `namespaces/${flattenPath(sanitizedPath)}`;
429
+ const { unqualifiedName } = this;
430
+ this.sidebarLabel = unqualifiedName;
431
+ }
432
+ else {
433
+ console.warn('Skipping unnamed namespace', compoundDef.id, compoundDef.location?.file);
434
+ }
435
+ }
436
+ const { indexName } = this;
437
+ this.treeEntryName = indexName;
438
+ this.createSections();
439
+ // console.log('0 id', this.id)
440
+ // console.log('1 nm', this.compoundName)
441
+ // console.log('2 pl', this.relativePermalink)
442
+ // console.log('3 di', this.docusaurusId)
443
+ // console.log('4 sb', this.sidebarLabel)
444
+ // console.log('5 ix', this.indexName)
445
+ // console.log()
446
+ }
447
+ initializeLate() {
448
+ super.initializeLate();
449
+ // console.log(this)
450
+ if (!this.hasAnyContent()) {
451
+ if (this.collection.workspace.options.debug) {
452
+ console.log(this.kind, this.compoundName, 'has no content, not shown');
453
+ }
454
+ this.sidebarId = undefined;
455
+ this.sidebarLabel = undefined;
456
+ this.relativePermalink = undefined;
457
+ }
458
+ }
459
+ hasAnyContent() {
460
+ // console.log('checking', this.compoundName)
461
+ for (const childNamespace of this.children) {
462
+ if (childNamespace.hasAnyContent()) {
463
+ // console.log('has content', this)
464
+ return true;
465
+ }
466
+ }
467
+ if (this.innerCompounds !== undefined) {
468
+ if (this.innerCompounds.has('innerNamespaces')) {
469
+ if (this.innerCompounds.size > 1) {
470
+ // console.log('has content innerCompounds 1', this)
471
+ return true;
472
+ }
473
+ }
474
+ else {
475
+ if (this.innerCompounds.size > 0) {
476
+ // console.log('has content innerCompounds 2', this)
477
+ return true;
478
+ }
479
+ }
480
+ }
481
+ // if (!super.hasAnyContent()) {
482
+ // console.log('has no content', this)
483
+ // }
484
+ return super.hasAnyContent();
485
+ }
486
+ // --------------------------------------------------------------------------
487
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
488
+ renderToLines(frontMatter) {
489
+ const lines = [];
490
+ const { workspace } = this.collection;
491
+ const descriptionTodo = `@namespace ${workspace.renderString(this.compoundName, 'html')}`;
492
+ const morePermalink = this.detailedDescriptionHtmlLines !== undefined ? '#details' : undefined;
493
+ lines.push(this.renderBriefDescriptionToHtmlString({
494
+ briefDescriptionHtmlString: this.briefDescriptionHtmlString,
495
+ todo: descriptionTodo,
496
+ morePermalink,
497
+ }));
498
+ lines.push('');
499
+ lines.push('## Definition');
500
+ lines.push('');
501
+ lines.push('<div class="doxyDefinition">');
502
+ const dots = workspace.renderString('{ ... }', 'html');
503
+ if (this.compoundName.startsWith('anonymous_namespace{')) {
504
+ lines.push(`namespace ${dots}`);
505
+ }
506
+ else {
507
+ lines.push(`namespace ${workspace.renderString(this.compoundName, 'html')} ${dots}`);
508
+ }
509
+ lines.push('</div>');
510
+ lines.push(...this.renderInnerIndicesToLines({
511
+ suffixes: ['Namespaces', 'Classes'],
512
+ }));
513
+ lines.push(...this.renderSectionIndicesToLines());
514
+ lines.push(...this.renderDetailedDescriptionToHtmlLines({
515
+ briefDescriptionHtmlString: this.briefDescriptionHtmlString,
516
+ detailedDescriptionHtmlLines: this.detailedDescriptionHtmlLines,
517
+ todo: descriptionTodo,
518
+ showHeader: true,
519
+ showBrief: !this.hasSect1InDescription,
520
+ }));
521
+ lines.push(...this.renderSectionsToLines());
522
+ lines.push(...this.renderGeneratedFromToLines());
523
+ return lines;
524
+ }
525
+ }
526
+ // ----------------------------------------------------------------------------
527
+ //# sourceMappingURL=namespaces-vm.js.map