@metaobjectsdev/codegen-ts 0.9.0 → 0.10.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 (323) hide show
  1. package/README.md +1 -1
  2. package/dist/column-mapper.d.ts.map +1 -1
  3. package/dist/column-mapper.js +24 -8
  4. package/dist/column-mapper.js.map +1 -1
  5. package/dist/constants.d.ts +8 -0
  6. package/dist/constants.d.ts.map +1 -1
  7. package/dist/constants.js +16 -0
  8. package/dist/constants.js.map +1 -1
  9. package/dist/docs-paths.d.ts +58 -0
  10. package/dist/docs-paths.d.ts.map +1 -0
  11. package/dist/docs-paths.js +89 -0
  12. package/dist/docs-paths.js.map +1 -0
  13. package/dist/enum-import.d.ts +14 -0
  14. package/dist/enum-import.d.ts.map +1 -0
  15. package/dist/enum-import.js +35 -0
  16. package/dist/enum-import.js.map +1 -0
  17. package/dist/enum-shared.d.ts +32 -0
  18. package/dist/enum-shared.d.ts.map +1 -0
  19. package/dist/enum-shared.js +83 -0
  20. package/dist/enum-shared.js.map +1 -0
  21. package/dist/generator-registry.d.ts +22 -0
  22. package/dist/generator-registry.d.ts.map +1 -0
  23. package/dist/generator-registry.js +161 -0
  24. package/dist/generator-registry.js.map +1 -0
  25. package/dist/generator.d.ts +6 -0
  26. package/dist/generator.d.ts.map +1 -1
  27. package/dist/generator.js.map +1 -1
  28. package/dist/generators/api-doc-render.d.ts +17 -0
  29. package/dist/generators/api-doc-render.d.ts.map +1 -0
  30. package/dist/generators/api-doc-render.js +431 -0
  31. package/dist/generators/api-doc-render.js.map +1 -0
  32. package/dist/generators/api-docs-file.d.ts +21 -0
  33. package/dist/generators/api-docs-file.d.ts.map +1 -0
  34. package/dist/generators/api-docs-file.js +112 -0
  35. package/dist/generators/api-docs-file.js.map +1 -0
  36. package/dist/generators/api-field-shape.d.ts +39 -0
  37. package/dist/generators/api-field-shape.d.ts.map +1 -0
  38. package/dist/generators/api-field-shape.js +92 -0
  39. package/dist/generators/api-field-shape.js.map +1 -0
  40. package/dist/generators/api-label.d.ts +3 -0
  41. package/dist/generators/api-label.d.ts.map +1 -0
  42. package/dist/generators/api-label.js +8 -0
  43. package/dist/generators/api-label.js.map +1 -0
  44. package/dist/generators/api-model.d.ts +122 -0
  45. package/dist/generators/api-model.d.ts.map +1 -0
  46. package/dist/generators/api-model.js +809 -0
  47. package/dist/generators/api-model.js.map +1 -0
  48. package/dist/generators/docs-data-builder.d.ts +26 -4
  49. package/dist/generators/docs-data-builder.d.ts.map +1 -1
  50. package/dist/generators/docs-data-builder.js +436 -164
  51. package/dist/generators/docs-data-builder.js.map +1 -1
  52. package/dist/generators/docs-data.d.ts +136 -27
  53. package/dist/generators/docs-data.d.ts.map +1 -1
  54. package/dist/generators/docs-data.js +1 -1
  55. package/dist/generators/docs-data.js.map +1 -1
  56. package/dist/generators/docs-file.d.ts +19 -0
  57. package/dist/generators/docs-file.d.ts.map +1 -1
  58. package/dist/generators/docs-file.js +154 -27
  59. package/dist/generators/docs-file.js.map +1 -1
  60. package/dist/generators/entity-file.d.ts.map +1 -1
  61. package/dist/generators/entity-file.js +29 -14
  62. package/dist/generators/entity-file.js.map +1 -1
  63. package/dist/generators/extractor-file.d.ts.map +1 -1
  64. package/dist/generators/extractor-file.js +2 -1
  65. package/dist/generators/extractor-file.js.map +1 -1
  66. package/dist/generators/field-anchor.d.ts +7 -0
  67. package/dist/generators/field-anchor.d.ts.map +1 -0
  68. package/dist/generators/field-anchor.js +23 -0
  69. package/dist/generators/field-anchor.js.map +1 -0
  70. package/dist/generators/index.d.ts +8 -1
  71. package/dist/generators/index.d.ts.map +1 -1
  72. package/dist/generators/index.js +6 -0
  73. package/dist/generators/index.js.map +1 -1
  74. package/dist/generators/mermaid-er.d.ts +14 -0
  75. package/dist/generators/mermaid-er.d.ts.map +1 -1
  76. package/dist/generators/mermaid-er.js +14 -0
  77. package/dist/generators/mermaid-er.js.map +1 -1
  78. package/dist/generators/output-parser-file.d.ts.map +1 -1
  79. package/dist/generators/output-parser-file.js +3 -4
  80. package/dist/generators/output-parser-file.js.map +1 -1
  81. package/dist/generators/output-prompt-file.d.ts.map +1 -1
  82. package/dist/generators/output-prompt-file.js +2 -2
  83. package/dist/generators/output-prompt-file.js.map +1 -1
  84. package/dist/generators/prompt-render-file.d.ts.map +1 -1
  85. package/dist/generators/prompt-render-file.js +3 -4
  86. package/dist/generators/prompt-render-file.js.map +1 -1
  87. package/dist/generators/queries-file.d.ts.map +1 -1
  88. package/dist/generators/queries-file.js +8 -3
  89. package/dist/generators/queries-file.js.map +1 -1
  90. package/dist/generators/render-helper-file.d.ts.map +1 -1
  91. package/dist/generators/render-helper-file.js +2 -2
  92. package/dist/generators/render-helper-file.js.map +1 -1
  93. package/dist/generators/routes-file-hono.d.ts.map +1 -1
  94. package/dist/generators/routes-file-hono.js +5 -1
  95. package/dist/generators/routes-file-hono.js.map +1 -1
  96. package/dist/generators/routes-file.d.ts +3 -0
  97. package/dist/generators/routes-file.d.ts.map +1 -1
  98. package/dist/generators/routes-file.js +6 -1
  99. package/dist/generators/routes-file.js.map +1 -1
  100. package/dist/generators/template-doc-builder.d.ts +19 -0
  101. package/dist/generators/template-doc-builder.d.ts.map +1 -0
  102. package/dist/generators/template-doc-builder.js +220 -0
  103. package/dist/generators/template-doc-builder.js.map +1 -0
  104. package/dist/generators/template-doc-data.d.ts +62 -0
  105. package/dist/generators/template-doc-data.d.ts.map +1 -0
  106. package/dist/generators/template-doc-data.js +16 -0
  107. package/dist/generators/template-doc-data.js.map +1 -0
  108. package/dist/generators/template-payload-tree.d.ts +15 -0
  109. package/dist/generators/template-payload-tree.d.ts.map +1 -0
  110. package/dist/generators/template-payload-tree.js +61 -0
  111. package/dist/generators/template-payload-tree.js.map +1 -0
  112. package/dist/generators/template-source-annotate.d.ts +74 -0
  113. package/dist/generators/template-source-annotate.d.ts.map +1 -0
  114. package/dist/generators/template-source-annotate.js +184 -0
  115. package/dist/generators/template-source-annotate.js.map +1 -0
  116. package/dist/generators/template-source-render.d.ts +24 -0
  117. package/dist/generators/template-source-render.d.ts.map +1 -0
  118. package/dist/generators/template-source-render.js +175 -0
  119. package/dist/generators/template-source-render.js.map +1 -0
  120. package/dist/generators/trace-helper-file.d.ts +9 -0
  121. package/dist/generators/trace-helper-file.d.ts.map +1 -0
  122. package/dist/generators/trace-helper-file.js +196 -0
  123. package/dist/generators/trace-helper-file.js.map +1 -0
  124. package/dist/index.d.ts +29 -4
  125. package/dist/index.d.ts.map +1 -1
  126. package/dist/index.js +28 -2
  127. package/dist/index.js.map +1 -1
  128. package/dist/metaobjects-config.d.ts +75 -2
  129. package/dist/metaobjects-config.d.ts.map +1 -1
  130. package/dist/metaobjects-config.js +43 -0
  131. package/dist/metaobjects-config.js.map +1 -1
  132. package/dist/naming.d.ts +19 -0
  133. package/dist/naming.d.ts.map +1 -1
  134. package/dist/naming.js +41 -0
  135. package/dist/naming.js.map +1 -1
  136. package/dist/payload-codegen.d.ts.map +1 -1
  137. package/dist/payload-codegen.js +12 -4
  138. package/dist/payload-codegen.js.map +1 -1
  139. package/dist/projection/extract-view-spec.d.ts.map +1 -1
  140. package/dist/projection/extract-view-spec.js +51 -25
  141. package/dist/projection/extract-view-spec.js.map +1 -1
  142. package/dist/relation-resolver.d.ts +16 -0
  143. package/dist/relation-resolver.d.ts.map +1 -1
  144. package/dist/relation-resolver.js +82 -1
  145. package/dist/relation-resolver.js.map +1 -1
  146. package/dist/render-context.d.ts +4 -0
  147. package/dist/render-context.d.ts.map +1 -1
  148. package/dist/render-context.js.map +1 -1
  149. package/dist/render-engine/embedded-templates.generated.d.ts +2 -0
  150. package/dist/render-engine/embedded-templates.generated.d.ts.map +1 -0
  151. package/dist/render-engine/embedded-templates.generated.js +15 -0
  152. package/dist/render-engine/embedded-templates.generated.js.map +1 -0
  153. package/dist/render-engine/framework-provider.d.ts.map +1 -1
  154. package/dist/render-engine/framework-provider.js +26 -13
  155. package/dist/render-engine/framework-provider.js.map +1 -1
  156. package/dist/runner.d.ts.map +1 -1
  157. package/dist/runner.js +17 -0
  158. package/dist/runner.js.map +1 -1
  159. package/dist/templates/docs-file.d.ts +2 -6
  160. package/dist/templates/docs-file.d.ts.map +1 -1
  161. package/dist/templates/docs-file.js +2 -5
  162. package/dist/templates/docs-file.js.map +1 -1
  163. package/dist/templates/drizzle-schema.d.ts.map +1 -1
  164. package/dist/templates/drizzle-schema.js +30 -2
  165. package/dist/templates/drizzle-schema.js.map +1 -1
  166. package/dist/templates/entity-constants.d.ts +7 -0
  167. package/dist/templates/entity-constants.d.ts.map +1 -1
  168. package/dist/templates/entity-constants.js +1 -1
  169. package/dist/templates/entity-constants.js.map +1 -1
  170. package/dist/templates/entity-file.d.ts.map +1 -1
  171. package/dist/templates/entity-file.js +16 -5
  172. package/dist/templates/entity-file.js.map +1 -1
  173. package/dist/templates/enums-file.d.ts +11 -0
  174. package/dist/templates/enums-file.d.ts.map +1 -0
  175. package/dist/templates/enums-file.js +44 -0
  176. package/dist/templates/enums-file.js.map +1 -0
  177. package/dist/templates/extract-delegate-emitter.d.ts.map +1 -1
  178. package/dist/templates/extract-delegate-emitter.js +5 -7
  179. package/dist/templates/extract-delegate-emitter.js.map +1 -1
  180. package/dist/templates/extract-schema-emitter.d.ts.map +1 -1
  181. package/dist/templates/extract-schema-emitter.js +5 -1
  182. package/dist/templates/extract-schema-emitter.js.map +1 -1
  183. package/dist/templates/extractor.d.ts.map +1 -1
  184. package/dist/templates/extractor.js +56 -39
  185. package/dist/templates/extractor.js.map +1 -1
  186. package/dist/templates/field-meta.d.ts.map +1 -1
  187. package/dist/templates/field-meta.js +1 -5
  188. package/dist/templates/field-meta.js.map +1 -1
  189. package/dist/templates/filter-allowlist.d.ts +7 -2
  190. package/dist/templates/filter-allowlist.d.ts.map +1 -1
  191. package/dist/templates/filter-allowlist.js +17 -9
  192. package/dist/templates/filter-allowlist.js.map +1 -1
  193. package/dist/templates/filter-type.d.ts +7 -1
  194. package/dist/templates/filter-type.d.ts.map +1 -1
  195. package/dist/templates/filter-type.js +9 -5
  196. package/dist/templates/filter-type.js.map +1 -1
  197. package/dist/templates/find-templates.d.ts +4 -0
  198. package/dist/templates/find-templates.d.ts.map +1 -0
  199. package/dist/templates/find-templates.js +15 -0
  200. package/dist/templates/find-templates.js.map +1 -0
  201. package/dist/templates/fr010-field-mapping.d.ts +2 -0
  202. package/dist/templates/fr010-field-mapping.d.ts.map +1 -1
  203. package/dist/templates/fr010-field-mapping.js +10 -6
  204. package/dist/templates/fr010-field-mapping.js.map +1 -1
  205. package/dist/templates/inferred-types.d.ts +44 -7
  206. package/dist/templates/inferred-types.d.ts.map +1 -1
  207. package/dist/templates/inferred-types.js +107 -16
  208. package/dist/templates/inferred-types.js.map +1 -1
  209. package/dist/templates/mermaid-er.d.ts +35 -2
  210. package/dist/templates/mermaid-er.d.ts.map +1 -1
  211. package/dist/templates/mermaid-er.js +174 -7
  212. package/dist/templates/mermaid-er.js.map +1 -1
  213. package/dist/templates/output-parser.d.ts.map +1 -1
  214. package/dist/templates/output-parser.js +30 -79
  215. package/dist/templates/output-parser.js.map +1 -1
  216. package/dist/templates/output-prompt.d.ts.map +1 -1
  217. package/dist/templates/output-prompt.js +2 -2
  218. package/dist/templates/output-prompt.js.map +1 -1
  219. package/dist/templates/queries-file.d.ts.map +1 -1
  220. package/dist/templates/queries-file.js +112 -4
  221. package/dist/templates/queries-file.js.map +1 -1
  222. package/dist/templates/queries.d.ts +5 -0
  223. package/dist/templates/queries.d.ts.map +1 -1
  224. package/dist/templates/queries.js +7 -7
  225. package/dist/templates/queries.js.map +1 -1
  226. package/dist/templates/recover-schema-emitter.d.ts +8 -0
  227. package/dist/templates/recover-schema-emitter.d.ts.map +1 -0
  228. package/dist/templates/recover-schema-emitter.js +64 -0
  229. package/dist/templates/recover-schema-emitter.js.map +1 -0
  230. package/dist/templates/relations-block.js +10 -0
  231. package/dist/templates/relations-block.js.map +1 -1
  232. package/dist/templates/render-helper.d.ts.map +1 -1
  233. package/dist/templates/render-helper.js +4 -4
  234. package/dist/templates/render-helper.js.map +1 -1
  235. package/dist/templates/routes-file.d.ts.map +1 -1
  236. package/dist/templates/routes-file.js +183 -6
  237. package/dist/templates/routes-file.js.map +1 -1
  238. package/dist/templates/tph-discriminator.d.ts +56 -0
  239. package/dist/templates/tph-discriminator.d.ts.map +1 -0
  240. package/dist/templates/tph-discriminator.js +180 -0
  241. package/dist/templates/tph-discriminator.js.map +1 -0
  242. package/dist/templates/value-object-file.d.ts +2 -1
  243. package/dist/templates/value-object-file.d.ts.map +1 -1
  244. package/dist/templates/value-object-file.js +32 -4
  245. package/dist/templates/value-object-file.js.map +1 -1
  246. package/dist/templates/zod-validators.d.ts +64 -1
  247. package/dist/templates/zod-validators.d.ts.map +1 -1
  248. package/dist/templates/zod-validators.js +181 -8
  249. package/dist/templates/zod-validators.js.map +1 -1
  250. package/package.json +103 -34
  251. package/src/column-mapper.ts +25 -8
  252. package/src/constants.ts +18 -0
  253. package/src/docs-paths.ts +128 -0
  254. package/src/enum-import.ts +43 -0
  255. package/src/enum-shared.ts +95 -0
  256. package/src/generator-registry.ts +204 -0
  257. package/src/generator.ts +6 -0
  258. package/src/generators/api-doc-render.ts +572 -0
  259. package/src/generators/api-docs-file.ts +146 -0
  260. package/src/generators/api-field-shape.ts +114 -0
  261. package/src/generators/api-label.ts +7 -0
  262. package/src/generators/api-model.ts +1067 -0
  263. package/src/generators/docs-data-builder.ts +479 -185
  264. package/src/generators/docs-data.ts +139 -28
  265. package/src/generators/docs-file.ts +205 -39
  266. package/src/generators/entity-file.ts +31 -15
  267. package/src/generators/extractor-file.ts +2 -1
  268. package/src/generators/field-anchor.ts +24 -0
  269. package/src/generators/index.ts +8 -1
  270. package/src/generators/mermaid-er.ts +14 -0
  271. package/src/generators/output-parser-file.ts +3 -4
  272. package/src/generators/output-prompt-file.ts +2 -1
  273. package/src/generators/prompt-render-file.ts +3 -4
  274. package/src/generators/queries-file.ts +9 -3
  275. package/src/generators/render-helper-file.ts +2 -1
  276. package/src/generators/routes-file-hono.ts +5 -1
  277. package/src/generators/routes-file.ts +7 -1
  278. package/src/generators/template-doc-builder.ts +306 -0
  279. package/src/generators/template-doc-data.ts +85 -0
  280. package/src/generators/template-payload-tree.ts +71 -0
  281. package/src/generators/template-source-annotate.ts +290 -0
  282. package/src/generators/template-source-render.ts +203 -0
  283. package/src/generators/trace-helper-file.ts +301 -0
  284. package/src/index.ts +55 -4
  285. package/src/metaobjects-config.ts +117 -2
  286. package/src/naming.ts +48 -0
  287. package/src/payload-codegen.ts +14 -3
  288. package/src/projection/extract-view-spec.ts +49 -30
  289. package/src/relation-resolver.ts +103 -1
  290. package/src/render-context.ts +4 -0
  291. package/src/render-engine/embedded-templates.generated.ts +14 -0
  292. package/src/render-engine/framework-provider.ts +25 -11
  293. package/src/runner.ts +21 -0
  294. package/src/templates/docs-file.ts +2 -9
  295. package/src/templates/drizzle-schema.ts +31 -1
  296. package/src/templates/entity-constants.ts +1 -1
  297. package/src/templates/entity-file.ts +16 -5
  298. package/src/templates/enums-file.ts +50 -0
  299. package/src/templates/extract-delegate-emitter.ts +5 -6
  300. package/src/templates/extractor.ts +68 -38
  301. package/src/templates/field-meta.ts +0 -6
  302. package/src/templates/filter-allowlist.ts +17 -10
  303. package/src/templates/filter-type.ts +8 -6
  304. package/src/templates/find-templates.ts +15 -0
  305. package/src/templates/fr010-field-mapping.ts +10 -8
  306. package/src/templates/inferred-types.ts +108 -18
  307. package/src/templates/mermaid-er.ts +176 -8
  308. package/src/templates/output-parser.ts +30 -79
  309. package/src/templates/output-prompt.ts +2 -1
  310. package/src/templates/queries-file.ts +132 -3
  311. package/src/templates/queries.ts +15 -7
  312. package/src/templates/relations-block.ts +17 -0
  313. package/src/templates/render-helper.ts +4 -3
  314. package/src/templates/routes-file.ts +233 -6
  315. package/src/templates/tph-discriminator.ts +232 -0
  316. package/src/templates/value-object-file.ts +38 -4
  317. package/src/templates/zod-validators.ts +204 -7
  318. package/templates/api/agent-api.md.mustache +30 -0
  319. package/templates/api/entity-api.md.mustache +69 -0
  320. package/templates/api/index.md.mustache +21 -0
  321. package/templates/docs/entity-page.md.mustache +33 -21
  322. package/templates/docs/template-page.md.mustache +56 -0
  323. package/src/templates/extract-schema-emitter.ts +0 -111
@@ -1 +1 @@
1
- {"version":3,"file":"docs-data-builder.js","sourceRoot":"","sources":["../../src/generators/docs-data-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docs-data-builder.js","sourceRoot":"","sources":["../../src/generators/docs-data-builder.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,27 @@
1
- /** One row in the Storage table — fully-rendered as a single Markdown table
2
- * row. The escaping rules for pipe-inside-cell are non-trivial and live in
3
- * the data builder, not the template, so templates stay trivial and the
4
- * cross-port walk functions don't have to re-derive the rules. */
1
+ /** One row in the NEUTRAL Storage table — the physical persistence MAPPING,
2
+ * fully-rendered as a single Markdown table row. ADR-0020: the Storage
3
+ * section documents declared physical facts only (column name neutral
4
+ * physical type nullable key) and makes NO language assumption — it does
5
+ * NOT carry a TypeScript type or any ORM DDL. Its value-add over the
6
+ * Constraints table is the field→column name mapping + any physical
7
+ * `@dbColumnType` override + the key role. The pre-rendered `rowLine` keeps
8
+ * templates trivial and means cross-port walk functions don't re-derive the
9
+ * Markdown escaping. */
5
10
  export interface StorageFieldDoc {
6
11
  name: string;
7
- /** @markdown — already escaped TS type, with backticks. */
8
- tsTypeCell: string;
9
- /** @markdown — already escaped SQL expression, wrapped in backticks. */
10
- sqlExprCell: string;
11
- /** @markdown already-formatted constraints text. */
12
- constraintsCell: string;
12
+ /** @markdown — physical column name (field's `@column` if set, else the
13
+ * field name), wrapped in backticks. */
14
+ columnCell: string;
15
+ /** @markdown — neutral physical type (declared `@dbColumnType` override
16
+ * uppercased, else the field's logical type), wrapped in backticks. */
17
+ typeCell: string;
18
+ /** @markdown — "yes" if the field is nullable (not required, not a PK),
19
+ * else "no". */
20
+ nullableCell: string;
21
+ /** @markdown — key role: "primary key", "foreign key → `Target`", or "". */
22
+ keyCell: string;
13
23
  /** @markdown — pre-rendered full Markdown table row, e.g.
14
- * "| `id` | `number` | `integer(\"id\")` | primary key |"
24
+ * "| `id` | `long` | no | primary key |"
15
25
  * Templates emit this verbatim via `{{{rowLine}}}`. */
16
26
  rowLine: string;
17
27
  }
@@ -31,9 +41,72 @@ export interface UsedByDoc {
31
41
  /** @markdown — pre-formatted bullet text. */
32
42
  bullet: string;
33
43
  }
34
- export interface GeneratedFileDoc {
35
- filename: string;
36
- description: string;
44
+ /** One row in the unified Fields table — merges the old Storage + Constraints
45
+ * cells into a single per-field row. Cells are pre-rendered Markdown so
46
+ * templates stay trivial. An empty cell is "".
47
+ *
48
+ * Replaces the previous Storage + Constraints split which duplicated facts
49
+ * (field name, logical type, key role, required-vs-nullable). Following the
50
+ * research synthesis: domain-model docs (FHIR, GitHub GraphQL Objects,
51
+ * Schema.org) all surface one Fields/Properties table per resource. */
52
+ export interface FieldDoc {
53
+ field: string;
54
+ /** @markdown — anchored, badge-prefixed field cell:
55
+ * `<a id="field-id"></a>🔑 \`id\`` (PK)
56
+ * `<a id="field-userId"></a>🔗 \`userId\`` (FK)
57
+ * `<a id="field-name"></a>\`name\`` (plain) */
58
+ fieldCell: string;
59
+ /** @markdown — neutral logical type; for FK fields, suffixed with the
60
+ * cross-linked target — e.g. "`int` → [`User`](User.md)". */
61
+ typeCell: string;
62
+ /** @markdown — "yes" / "" — whether the field is required (or a PK). */
63
+ requiredCell: string;
64
+ /** @markdown — physical persistence info, ONLY when interesting:
65
+ * `@column` override that differs from the field name → "`UserId`"
66
+ * `@dbColumnType` set → "`UserId` `UUID`" (or "`Data` `JSONB`" when
67
+ * the field name happens to match the column)
68
+ * Empty when field name == column AND no @dbColumnType override. */
69
+ storageCell: string;
70
+ /** @markdown — all the rules: validators (regex/length/numeric), default,
71
+ * enum value set, extends EnumName, references, unique. Joined by " · ". */
72
+ rulesCell: string;
73
+ }
74
+ /** One expanded per-field detail entry — rendered as a sub-section below
75
+ * the at-a-glance Fields table. ONLY emitted for fields with non-trivial
76
+ * content (@description / @summary / validators / extends-enum / FK ref /
77
+ * default / column-override). Skipped for plain typed fields with nothing
78
+ * extra to surface — keeps the entity page from ballooning with empty
79
+ * stubs.
80
+ *
81
+ * The `block` is fully pre-rendered Markdown so the template is trivial
82
+ * (`{{{block}}}` per row) and cross-port walks emit consistent output
83
+ * without re-implementing the layout.
84
+ *
85
+ * Authoring path: any field that wants surface in this section just sets
86
+ * `@description` and/or `@summary` in the metadata YAML. Mirrors the
87
+ * per-entity pattern. */
88
+ export interface FieldDetailDoc {
89
+ field: string;
90
+ /** @markdown — the full per-field block, headed by `### \`fieldName\``
91
+ * and followed by italic summary, description paragraph, validator
92
+ * bullets, type/FK/extends/default lines. */
93
+ block: string;
94
+ }
95
+ /** Deprecated alias for {@link FieldDoc} — kept for back-compat in case any
96
+ * external template author destructured the old ConstraintRow shape.
97
+ * @deprecated use FieldDoc */
98
+ export interface ConstraintRow {
99
+ field: string;
100
+ /** @markdown — "yes" / "" — whether the field is required (or a PK). */
101
+ required: string;
102
+ /** @markdown — neutral logical type cell, e.g. "`string`", "`enum`",
103
+ * "`Address[]`". */
104
+ type: string;
105
+ /** @markdown — size/range limits, e.g. "maxLength: 200" — "" if none. */
106
+ limits: string;
107
+ /** @markdown — declared rules: enum value sets, patterns, validators,
108
+ * uniqueness, default — "" if none. */
109
+ rules: string;
37
110
  }
38
111
  export interface EntityDocData {
39
112
  /** @markdown — auto-emitted by the templateGenerator; templates may also
@@ -48,21 +121,51 @@ export interface EntityDocData {
48
121
  source?: string;
49
122
  package?: string;
50
123
  description?: string;
124
+ summary?: string;
51
125
  };
52
126
  /** @markdown — description as a blockquote (one `> ` per line). Present
53
127
  * iff `entity.description` is present. Pre-rendered so multi-line
54
128
  * descriptions don't have to be expressed as Mustache structural
55
129
  * constructs. */
56
130
  descriptionQuote?: string;
131
+ /** @markdown — `@summary` rendered as a one-line italic lead-in (e.g.
132
+ * `*Tracks ...*`). Present iff `entity.summary` is set. Distinct from
133
+ * `descriptionQuote` (a blockquote) so an entity that carries BOTH
134
+ * surfaces both — short headline above, expanded paragraph below. */
135
+ summaryLead?: string;
136
+ /** @markdown — fenced ```mermaid erDiagram block``` showing the focal
137
+ * entity plus its direct in/out FK neighbors (1-hop). Replaces the
138
+ * cognitive load of the whole-model graph with an in-context view.
139
+ * Mirrors the dbdocs pattern. Skipped when the entity has no neighbors. */
140
+ neighborhoodErBlock?: string;
141
+ /** Gate flag for Mustache — true iff `neighborhoodErBlock` is present.
142
+ * See the "Mustache idiom note" at the top of this file. */
143
+ hasNeighborhoodEr?: boolean;
57
144
  /** @markdown — multi-line preamble block: Type / Source? / Package?, one
58
145
  * per line, in the exact order matching the legacy emitter. Always
59
146
  * present. */
60
147
  preambleHeader: string;
61
- /** Storage section. Present iff the entity has a writable rdb source and
62
- * is NOT object.value. */
148
+ /** Unified Fields section one row per field, merging the per-field facts
149
+ * the old Storage + Constraints tables split between. Always emitted when
150
+ * the entity has any fields. */
151
+ fields: {
152
+ hasFields: boolean;
153
+ rows: FieldDoc[];
154
+ };
155
+ /** Expanded per-field details — emitted as a "## Field details" section
156
+ * AFTER the at-a-glance Fields table. Skips fields with nothing extra to
157
+ * say (no description, no summary, no validators, no extends, no default,
158
+ * no FK, no column override) so the section doesn't balloon the page. */
159
+ fieldDetails: {
160
+ hasDetails: boolean;
161
+ rows: FieldDetailDoc[];
162
+ };
163
+ /** @deprecated Storage section. The merged Fields table covers this now;
164
+ * the old shape is still populated for adopters with custom templates that
165
+ * reference it, but new templates should use `fields` instead. */
63
166
  storage?: {
64
- /** @markdown — pre-rendered "| Field | ... |\n|---|---|---|---|" header
65
- * pair. */
167
+ /** @markdown — pre-rendered "| Column | Type | Nullable | Key |\n|---|...|"
168
+ * header pair. */
66
169
  tableHeader: string;
67
170
  rows: StorageFieldDoc[];
68
171
  };
@@ -77,13 +180,14 @@ export interface EntityDocData {
77
180
  relationships?: RelationshipDoc[];
78
181
  /** Present-and-non-empty flag for the relationships section. */
79
182
  hasRelationships?: boolean;
80
- /** Validation section RAW (not Markdown-flavored). Always emitted.
81
- * Custom non-Markdown templates can rely on these fields. */
82
- validation: {
83
- insertSchema: string;
84
- updateSchema: string;
85
- entityFile: string;
86
- lower: string;
183
+ /** @deprecated Constraints section. The merged Fields table covers this
184
+ * now; the old shape is still populated for adopters with custom templates
185
+ * that reference it, but new templates should use `fields` instead. */
186
+ constraints: {
187
+ /** True iff there is at least one row to render (objects always have
188
+ * fields, so this is generally true; gates the section header). */
189
+ hasConstraints: boolean;
190
+ rows: ConstraintRow[];
87
191
  };
88
192
  /** "Used by" — present iff any templates declare `@payloadRef` → this
89
193
  * entity. Same list+flag pattern as identities. */
@@ -92,7 +196,12 @@ export interface EntityDocData {
92
196
  hasUsedBy?: boolean;
93
197
  /** Present flag for the storage section. */
94
198
  hasStorage?: boolean;
95
- /** Generated-code section always emitted (at minimum the entity file). */
96
- generated: GeneratedFileDoc[];
199
+ /** Cross-links to this entity's generated-SDK api page, one per api surface
200
+ * (per language). Present only when api surfaces are emitted with the model. */
201
+ apiRefs?: Array<{
202
+ label: string;
203
+ href: string;
204
+ last?: boolean;
205
+ }>;
97
206
  }
98
207
  //# sourceMappingURL=docs-data.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"docs-data.d.ts","sourceRoot":"","sources":["../../src/generators/docs-data.ts"],"names":[],"mappings":"AA0CA;;;mEAGmE;AACnE,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,eAAe,EAAE,MAAM,CAAC;IACxB;;4DAEwD;IACxD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B;;;6EAGyE;IACzE,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B;6DACyD;IACzD,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B;;0DAEsD;IACtD,eAAe,EAAE,MAAM,CAAC;IAExB;8CAC0C;IAC1C,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IAEF;;;sBAGkB;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;mBAEe;IACf,cAAc,EAAE,MAAM,CAAC;IAEvB;+BAC2B;IAC3B,OAAO,CAAC,EAAE;QACR;oBACY;QACZ,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,eAAe,EAAE,CAAC;KACzB,CAAC;IAEF;;8DAE0D;IAC1D,UAAU,CAAC,EAAE,WAAW,EAAE,CAAC;IAC3B;yDACqD;IACrD,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,oEAAoE;IACpE,aAAa,CAAC,EAAE,eAAe,EAAE,CAAC;IAClC,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;kEAC8D;IAC9D,UAAU,EAAE;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF;wDACoD;IACpD,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,yDAAyD;IACzD,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,4EAA4E;IAC5E,SAAS,EAAE,gBAAgB,EAAE,CAAC;CAC/B"}
1
+ {"version":3,"file":"docs-data.d.ts","sourceRoot":"","sources":["../../src/generators/docs-data.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@
8
8
  // for `docs/entity-page.md` (or any of the partials) reference these keys.
9
9
  //
10
10
  // `EntityDocData` is the **Markdown-flavored** data shape — it intentionally
11
- // mixes raw structural fields (entity, validation, generated) with
11
+ // mixes raw structural fields (entity, constraints) with
12
12
  // **pre-rendered Markdown fragments** so cross-port walk functions (TS,
13
13
  // Python, C#, Java, Kotlin) don't have to re-derive the same escaping rules
14
14
  // (pipe-inside-cell escapes, backtick wrapping, identity bullets,
@@ -1 +1 @@
1
- {"version":3,"file":"docs-data.js","sourceRoot":"","sources":["../../src/generators/docs-data.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,sEAAsE;AACtE,EAAE;AACF,6BAA6B;AAC7B,EAAE;AACF,4EAA4E;AAC5E,2EAA2E;AAC3E,2EAA2E;AAC3E,EAAE;AACF,6EAA6E;AAC7E,mEAAmE;AACnE,wEAAwE;AACxE,4EAA4E;AAC5E,kEAAkE;AAClE,yEAAyE;AACzE,sEAAsE;AACtE,2EAA2E;AAC3E,SAAS;AACT,EAAE;AACF,uEAAuE;AACvE,0EAA0E;AAC1E,mEAAmE;AACnE,yEAAyE;AACzE,wEAAwE;AACxE,6CAA6C;AAC7C,EAAE;AACF,4BAA4B;AAC5B,EAAE;AACF,4EAA4E;AAC5E,yEAAyE;AACzE,6EAA6E;AAC7E,iEAAiE;AACjE,EAAE;AACF,yBAAyB;AACzB,EAAE;AACF,6EAA6E;AAC7E,yEAAyE;AACzE,4EAA4E;AAC5E,gEAAgE;AAChE,0EAA0E;AAC1E,qBAAqB"}
1
+ {"version":3,"file":"docs-data.js","sourceRoot":"","sources":["../../src/generators/docs-data.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,sEAAsE;AACtE,EAAE;AACF,6BAA6B;AAC7B,EAAE;AACF,4EAA4E;AAC5E,2EAA2E;AAC3E,2EAA2E;AAC3E,EAAE;AACF,6EAA6E;AAC7E,yDAAyD;AACzD,wEAAwE;AACxE,4EAA4E;AAC5E,kEAAkE;AAClE,yEAAyE;AACzE,sEAAsE;AACtE,2EAA2E;AAC3E,SAAS;AACT,EAAE;AACF,uEAAuE;AACvE,0EAA0E;AAC1E,mEAAmE;AACnE,yEAAyE;AACzE,wEAAwE;AACxE,6CAA6C;AAC7C,EAAE;AACF,4BAA4B;AAC5B,EAAE;AACF,4EAA4E;AAC5E,yEAAyE;AACzE,6EAA6E;AAC7E,iEAAiE;AACjE,EAAE;AACF,yBAAyB;AACzB,EAAE;AACF,6EAA6E;AAC7E,yEAAyE;AACzE,4EAA4E;AAC5E,gEAAgE;AAChE,0EAA0E;AAC1E,qBAAqB"}
@@ -3,6 +3,25 @@ import type { GeneratorFactory } from "../generator.js";
3
3
  export interface DocsFileOpts {
4
4
  filter?: (entity: MetaObject) => boolean;
5
5
  target?: string;
6
+ /** When set, one or more api surfaces are emitted alongside the model surface,
7
+ * each under its own sub-directory (e.g. `"api/ts"`) with a per-language label.
8
+ * docsFile then cross-links each model entity page to ALL its api pages and
9
+ * adds an "API reference" section to the index, every href computed via the
10
+ * shared `apiSurfaceHref` so it resolves relative in BOTH layouts (or absolute
11
+ * when a `baseUrl` is given). ABSENT/empty ⇒ model-only output (byte-identical
12
+ * to historical behaviour). */
13
+ apiSurfaces?: Array<{
14
+ label: string;
15
+ subDir: string;
16
+ baseUrl?: string;
17
+ }>;
6
18
  }
19
+ /**
20
+ * @deprecated ADR-0021 D1: `meta docs` is the single door for documentation.
21
+ * `docsFile()` stays as the INTERNAL engine that `meta docs` calls — do NOT add
22
+ * it to a `meta gen` config / the public generator surface. It is flagged
23
+ * neutral in the generator registry (`--list`) and is not part of the
24
+ * recommended native `meta gen` suite. Use `meta docs` instead.
25
+ */
7
26
  export declare const docsFile: GeneratorFactory<DocsFileOpts>;
8
27
  //# sourceMappingURL=docs-file.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"docs-file.d.ts","sourceRoot":"","sources":["../../src/generators/docs-file.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,KAAK,EAAa,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKnE,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAcD,eAAO,MAAM,QAAQ,EA0ChB,gBAAgB,CAAC,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"docs-file.d.ts","sourceRoot":"","sources":["../../src/generators/docs-file.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,UAAU,EAAY,MAAM,0BAA0B,CAAC;AAIrE,OAAO,KAAK,EAAa,gBAAgB,EAAe,MAAM,iBAAiB,CAAC;AAuBhF,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;oCAMgC;IAChC,WAAW,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC1E;AAqBD;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,EAkGhB,gBAAgB,CAAC,YAAY,CAAC,CAAC"}
@@ -17,20 +17,44 @@
17
17
  // byte-identity — the codegen output must match the hand-coded rc.11
18
18
  // byte-for-byte. If you're hacking on this and the conformance test
19
19
  // breaks, the refactor is the bug, not the fixture.
20
+ import { TYPE_TEMPLATE, TEMPLATE_SUBTYPE_OUTPUT } from "@metaobjectsdev/metadata";
20
21
  import { render } from "@metaobjectsdev/render";
21
- import { entityOutputPath } from "../import-path.js";
22
+ import { docPageOutputPath, docPageHref, docPageNode, apiSurfaceHref, assertNoDuplicateDocPaths, } from "../docs-paths.js";
22
23
  import { projectProvider } from "../render-engine/framework-provider.js";
24
+ import { renderMermaidErBlock } from "../templates/mermaid-er.js";
23
25
  import { buildEntityDocData } from "./docs-data-builder.js";
24
- /** The names of the generators that may emit sibling files for an entity.
25
- * We always list them in the "Generated code" section adopters cross-
26
- * reference their own metaobjects.config.ts to confirm which are wired in.
27
- * Matches the rc.11 behavior. */
28
- const KNOWN_SIBLING_GENERATORS = new Set([
29
- "queries-file",
30
- "routes-file",
31
- "routes-file-hono",
32
- ]);
26
+ import { buildTemplateDocData } from "./template-doc-builder.js";
27
+ // The neutral OVERVIEW/index page. GitHub (and most doc-site renderers) treat a
28
+ // folder's README.md as its landing page, so the model overview lands here.
29
+ const INDEX_FILENAME = "README.md";
30
+ // The index lives at the docs ROOT (package-less) in BOTH layouts — links are
31
+ // computed relative to root via docPageHref.
32
+ const INDEX_NODE = { name: "README" };
33
33
  const TEMPLATE_REF = "docs/entity-page.md";
34
+ // The NEUTRAL render-contract page emitted per `template.output` node — a
35
+ // sibling artifact, distinct from the entity page (Task 3).
36
+ const TEMPLATE_PAGE_REF = "docs/template-page.md";
37
+ /** Render one docs page, wrapping any engine error with the page ref + output
38
+ * path so a template failure points at the exact page (shared by the entity
39
+ * and template.output emission paths — identical error contract). */
40
+ function renderDocPage(ref, payload, provider, path) {
41
+ try {
42
+ return render({ ref, payload, provider, format: "markdown" });
43
+ }
44
+ catch (err) {
45
+ const msg = err instanceof Error ? err.message : String(err);
46
+ throw new Error(`docs-file: failed rendering '${ref}' for '${path}': ${msg}`, {
47
+ cause: err instanceof Error ? err : undefined,
48
+ });
49
+ }
50
+ }
51
+ /**
52
+ * @deprecated ADR-0021 D1: `meta docs` is the single door for documentation.
53
+ * `docsFile()` stays as the INTERNAL engine that `meta docs` calls — do NOT add
54
+ * it to a `meta gen` config / the public generator surface. It is flagged
55
+ * neutral in the generator registry (`--list`) and is not part of the
56
+ * recommended native `meta gen` suite. Use `meta docs` instead.
57
+ */
34
58
  export const docsFile = function docsFile(opts) {
35
59
  const generator = {
36
60
  name: "docs-file",
@@ -41,31 +65,79 @@ export const docsFile = function docsFile(opts) {
41
65
  const rc = ctx.renderContext;
42
66
  const provider = projectProvider(ctx.projectRoot ?? process.cwd());
43
67
  const layout = ctx.config.outputLayout ?? "flat";
44
- return ctx.loadedRoot.objects().filter(ctx.matches).map((entity) => {
45
- const path = entityOutputPath(layout, entity.package, `${entity.name}.md`);
68
+ // One {label, href} per api surface, every href computed via the shared
69
+ // `apiSurfaceHref` from the FROM page's own output path (so it resolves
70
+ // relative in BOTH layouts, or absolute when the surface declares a
71
+ // baseUrl). The api page for a node lives at `<subDir>/<same placement>`,
72
+ // so the from-path doubles as the page placement. ABSENT/empty surfaces ⇒
73
+ // undefined → output byte-identical to historical model-only runs.
74
+ const apiRefsFor = (fromPath) => opts?.apiSurfaces?.map((s) => ({ label: s.label, href: apiSurfaceHref(fromPath, s, fromPath) }));
75
+ // Track every (path, fqn) so we can hard-error on a collision (defense
76
+ // against silent doc-page overwrite) AFTER all pages are placed.
77
+ const placements = [];
78
+ // Collect the placement nodes of each linkable page so the OVERVIEW/index
79
+ // (README.md) can link them via the SAME docPageHref used everywhere else
80
+ // (links resolve in flat AND package layout). Grouped entity vs template.
81
+ const entityNodes = [];
82
+ const templateNodes = [];
83
+ const files = ctx.loadedRoot
84
+ .objects()
85
+ .filter(ctx.matches)
86
+ .map((entity) => {
87
+ const node = docPageNode(entity);
88
+ entityNodes.push(node);
89
+ const path = docPageOutputPath(layout, node);
90
+ placements.push({ path, fqn: entity.resolutionKey() });
91
+ // Cross-link to the sibling api surfaces, when emitted (shared builder).
92
+ const apiRefs = apiRefsFor(path);
46
93
  const payload = buildEntityDocData(entity, {
47
94
  dialect: rc.dialect,
95
+ layout,
48
96
  ...(rc.columnNamingStrategy !== undefined && {
49
97
  columnNamingStrategy: rc.columnNamingStrategy,
50
98
  }),
51
99
  loadedRoot: rc.loadedRoot,
52
- generatorNames: KNOWN_SIBLING_GENERATORS,
100
+ ...(apiRefs !== undefined && { apiRefs }),
53
101
  });
54
- let content;
55
- try {
56
- content = render({
57
- ref: TEMPLATE_REF,
58
- payload,
59
- provider,
60
- format: "markdown",
61
- });
62
- }
63
- catch (err) {
64
- const msg = err instanceof Error ? err.message : String(err);
65
- throw new Error(`docs-file: failed rendering '${TEMPLATE_REF}' for '${path}': ${msg}`, { cause: err instanceof Error ? err : undefined });
66
- }
67
- return { path, content };
102
+ return { path, content: renderDocPage(TEMPLATE_REF, payload, provider, path) };
68
103
  });
104
+ // ALSO emit one NEUTRAL render-contract page per `template.output` node —
105
+ // a sibling artifact, distinct from the entity page. Raw node name → file
106
+ // (`<name>.md`), agreeing with the entity Used-by back-link target.
107
+ for (const child of ctx.loadedRoot.ownChildren()) {
108
+ if (child.type !== TYPE_TEMPLATE || child.subType !== TEMPLATE_SUBTYPE_OUTPUT)
109
+ continue;
110
+ const node = docPageNode(child);
111
+ templateNodes.push(node);
112
+ const path = docPageOutputPath(layout, node);
113
+ placements.push({ path, fqn: child.resolutionKey() });
114
+ const payload = buildTemplateDocData(child, {
115
+ layout,
116
+ loadedRoot: ctx.loadedRoot,
117
+ provider,
118
+ });
119
+ files.push({ path, content: renderDocPage(TEMPLATE_PAGE_REF, payload, provider, path) });
120
+ }
121
+ // Emit the neutral OVERVIEW/index page (README.md) at the docs root: the
122
+ // whole-model Mermaid ER diagram (reusing the single shared
123
+ // renderMermaidErBlock builder — no duplicated ER logic, ADR-0020) plus a
124
+ // navigable index linking every entity + template page. Prepended so it is
125
+ // the first file (and so README is included in the collision backstop).
126
+ // Only emitted when at least one page exists — an all-filtered/empty run
127
+ // produces nothing (no orphan landing page with an empty diagram).
128
+ if (files.length > 0) {
129
+ // The api index lives at `<subDir>/README.md` per surface; the model index
130
+ // lives at the docs root, so the from-path is the root-level index path
131
+ // (shared builder — same relative/absolute rule as the entity refs).
132
+ const apiIndexRefs = apiRefsFor(INDEX_FILENAME);
133
+ const indexContent = renderIndexPage(ctx.loadedRoot, layout, entityNodes, templateNodes, apiIndexRefs);
134
+ placements.push({ path: INDEX_FILENAME, fqn: "<the auto-generated overview/index page>" });
135
+ files.unshift({ path: INDEX_FILENAME, content: indexContent });
136
+ }
137
+ // Hard backstop against silent overwrite (ALL layouts): two nodes that
138
+ // resolve to the same output path → throw naming both FQNs + the path.
139
+ assertNoDuplicateDocPaths(placements);
140
+ return files;
69
141
  },
70
142
  };
71
143
  if (opts?.filter)
@@ -74,4 +146,59 @@ export const docsFile = function docsFile(opts) {
74
146
  generator.target = opts.target;
75
147
  return generator;
76
148
  };
149
+ /** Build the neutral OVERVIEW/index page (README.md) body: a title + one-line
150
+ * description, the whole-model Mermaid ER diagram (the shared
151
+ * renderMermaidErBlock — ONE builder, no duplication), and a navigable index
152
+ * grouping entity pages vs template pages. Every link is computed with
153
+ * docPageHref(layout, INDEX_NODE, target) so it resolves in BOTH flat and
154
+ * package layout (the index lives at the docs root). Fully neutral — Mermaid +
155
+ * entity/template names + relationships only. */
156
+ function renderIndexPage(root, layout, entityNodes, templateNodes, apiIndexRefs) {
157
+ const pkg = root.package;
158
+ const out = [];
159
+ out.push("# Data Model");
160
+ out.push("");
161
+ out.push(pkg !== undefined && pkg.length > 0
162
+ ? `Overview of the \`${pkg}\` metadata model — entities, their relationships, and output templates.`
163
+ : "Overview of the metadata model — entities, their relationships, and output templates.");
164
+ out.push("");
165
+ // The whole-model ER diagram (shared neutral builder). Per-entity prose stays
166
+ // on each entity page; only the fenced erDiagram block lives on the overview.
167
+ out.push("## Diagram");
168
+ out.push("");
169
+ out.push(renderMermaidErBlock(root));
170
+ out.push("");
171
+ // Navigable index — grouped, sorted by name for stable output. Links resolve
172
+ // in both layouts because docPageHref derives them from the same placement.
173
+ const byName = (a, b) => a.name.localeCompare(b.name);
174
+ if (entityNodes.length > 0) {
175
+ out.push("## Entities");
176
+ out.push("");
177
+ for (const node of [...entityNodes].sort(byName)) {
178
+ out.push(`- [${node.name}](${docPageHref(layout, INDEX_NODE, node)})`);
179
+ }
180
+ out.push("");
181
+ }
182
+ if (templateNodes.length > 0) {
183
+ out.push("## Templates");
184
+ out.push("");
185
+ for (const node of [...templateNodes].sort(byName)) {
186
+ out.push(`- [${node.name}](${docPageHref(layout, INDEX_NODE, node)})`);
187
+ }
188
+ out.push("");
189
+ }
190
+ // Cross-link to the GENERATED-SDK api reference indexes, when api surfaces are
191
+ // emitted alongside the model surface — one bullet per language surface. ABSENT
192
+ // or empty → no section (index byte-identical to model-only runs).
193
+ if (apiIndexRefs !== undefined && apiIndexRefs.length > 0) {
194
+ out.push("## API reference");
195
+ out.push("");
196
+ for (const ref of apiIndexRefs) {
197
+ out.push(`- [${ref.label}](${ref.href})`);
198
+ }
199
+ out.push("");
200
+ }
201
+ // Trailing newline (one), matching the per-page convention.
202
+ return out.join("\n").replace(/\n+$/, "\n");
203
+ }
77
204
  //# sourceMappingURL=docs-file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"docs-file.js","sourceRoot":"","sources":["../../src/generators/docs-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docs-file.js","sourceRoot":"","sources":["../../src/generators/docs-file.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity-file.d.ts","sourceRoot":"","sources":["../../src/generators/entity-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAA6B,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAMnF,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,UAAU,EA4BlB,gBAAgB,CAAC,cAAc,CAAC,CAAC"}
1
+ {"version":3,"file":"entity-file.d.ts","sourceRoot":"","sources":["../../src/generators/entity-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAgE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAOtH,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,UAAU,EA2ClB,gBAAgB,CAAC,cAAc,CAAC,CAAC"}