@aotter/mantle-runtime 0.1.0-alpha.7 → 0.1.0-alpha.8

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 (257) hide show
  1. package/README.md +37 -4
  2. package/dist/MantleRuntime.d.ts +96 -0
  3. package/dist/MantleRuntime.d.ts.map +1 -0
  4. package/dist/MantleRuntime.js +197 -0
  5. package/dist/MantleRuntime.js.map +1 -0
  6. package/dist/domain/model/HandlerContext.d.ts +3 -4
  7. package/dist/domain/model/HandlerContext.d.ts.map +1 -1
  8. package/dist/domain/model/PreparedMantleRevision.d.ts +14 -0
  9. package/dist/domain/model/PreparedMantleRevision.d.ts.map +1 -0
  10. package/dist/domain/model/PreparedMantleRevision.js +8 -0
  11. package/dist/domain/model/PreparedMantleRevision.js.map +1 -0
  12. package/dist/domain/model/index.d.ts +1 -2
  13. package/dist/domain/model/index.d.ts.map +1 -1
  14. package/dist/domain/model/index.js +0 -1
  15. package/dist/domain/model/index.js.map +1 -1
  16. package/dist/domain/port/Clock.d.ts +1 -2
  17. package/dist/domain/port/Clock.d.ts.map +1 -1
  18. package/dist/domain/port/Clock.js.map +1 -1
  19. package/dist/domain/port/DatabaseDriver.d.ts +13 -21
  20. package/dist/domain/port/DatabaseDriver.d.ts.map +1 -1
  21. package/dist/domain/port/HandlerRegistry.d.ts +1 -1
  22. package/dist/domain/port/IdGenerator.d.ts +1 -2
  23. package/dist/domain/port/IdGenerator.d.ts.map +1 -1
  24. package/dist/domain/port/IdGenerator.js.map +1 -1
  25. package/dist/domain/port/MantleStorageAdapter.d.ts +23 -0
  26. package/dist/domain/port/MantleStorageAdapter.d.ts.map +1 -0
  27. package/dist/domain/port/MantleStorageAdapter.js +2 -0
  28. package/dist/domain/port/MantleStorageAdapter.js.map +1 -0
  29. package/dist/domain/port/SiteConfigRepository.d.ts +10 -8
  30. package/dist/domain/port/SiteConfigRepository.d.ts.map +1 -1
  31. package/dist/domain/port/ViewQueryExecutor.d.ts +29 -0
  32. package/dist/domain/port/ViewQueryExecutor.d.ts.map +1 -0
  33. package/dist/domain/port/ViewQueryExecutor.js +2 -0
  34. package/dist/domain/port/ViewQueryExecutor.js.map +1 -0
  35. package/dist/domain/port/index.d.ts +5 -2
  36. package/dist/domain/port/index.d.ts.map +1 -1
  37. package/dist/domain/port/index.js.map +1 -1
  38. package/dist/domain/service/RuntimePlanCompiler.d.ts +89 -0
  39. package/dist/domain/service/RuntimePlanCompiler.d.ts.map +1 -0
  40. package/dist/domain/service/RuntimePlanCompiler.js +230 -0
  41. package/dist/domain/service/RuntimePlanCompiler.js.map +1 -0
  42. package/dist/domain/service/TriggerIndex.d.ts +3 -0
  43. package/dist/domain/service/TriggerIndex.d.ts.map +1 -1
  44. package/dist/domain/service/TriggerIndex.js +14 -1
  45. package/dist/domain/service/TriggerIndex.js.map +1 -1
  46. package/dist/domain/service/index.d.ts +1 -9
  47. package/dist/domain/service/index.d.ts.map +1 -1
  48. package/dist/domain/service/index.js +1 -9
  49. package/dist/domain/service/index.js.map +1 -1
  50. package/dist/domain/service/io/EntryWriteGuard.d.ts +2 -2
  51. package/dist/domain/service/io/EntryWriteGuard.d.ts.map +1 -1
  52. package/dist/domain/service/io/EntryWriteGuard.js +1 -3
  53. package/dist/domain/service/io/EntryWriteGuard.js.map +1 -1
  54. package/dist/index.d.ts +15 -11
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +9 -11
  57. package/dist/index.js.map +1 -1
  58. package/dist/infrastructure/boot/SqliteMigrationRunner.d.ts +10 -0
  59. package/dist/infrastructure/boot/SqliteMigrationRunner.d.ts.map +1 -0
  60. package/dist/infrastructure/boot/SqliteMigrationRunner.js +41 -0
  61. package/dist/infrastructure/boot/SqliteMigrationRunner.js.map +1 -0
  62. package/dist/infrastructure/boot/bootState.d.ts +2 -4
  63. package/dist/infrastructure/boot/bootState.d.ts.map +1 -1
  64. package/dist/infrastructure/boot/bootState.js +1 -1
  65. package/dist/infrastructure/boot/bootState.js.map +1 -1
  66. package/dist/infrastructure/boot/canonicalMigrations.d.ts.map +1 -1
  67. package/dist/infrastructure/boot/canonicalMigrations.js +124 -60
  68. package/dist/infrastructure/boot/canonicalMigrations.js.map +1 -1
  69. package/dist/infrastructure/boot/index.d.ts +1 -0
  70. package/dist/infrastructure/boot/index.d.ts.map +1 -1
  71. package/dist/infrastructure/boot/index.js +1 -0
  72. package/dist/infrastructure/boot/index.js.map +1 -1
  73. package/dist/infrastructure/http/createMantleRequestHandler.d.ts +12 -0
  74. package/dist/infrastructure/http/createMantleRequestHandler.d.ts.map +1 -0
  75. package/dist/infrastructure/http/createMantleRequestHandler.js +127 -0
  76. package/dist/infrastructure/http/createMantleRequestHandler.js.map +1 -0
  77. package/dist/infrastructure/mcp/McpJsonRpcDispatcher.d.ts +2 -2
  78. package/dist/infrastructure/mcp/McpJsonRpcDispatcher.d.ts.map +1 -1
  79. package/dist/infrastructure/mcp/McpJsonRpcDispatcher.js +1 -1
  80. package/dist/infrastructure/mcp/McpJsonRpcDispatcher.js.map +1 -1
  81. package/dist/infrastructure/mcp/McpToolCatalog.d.ts.map +1 -1
  82. package/dist/infrastructure/mcp/McpToolCatalog.js +6 -7
  83. package/dist/infrastructure/mcp/McpToolCatalog.js.map +1 -1
  84. package/dist/infrastructure/persistence/DatabaseEntryRepository.d.ts +1 -1
  85. package/dist/infrastructure/persistence/DatabaseEntryRepository.d.ts.map +1 -1
  86. package/dist/infrastructure/persistence/DatabaseEntryRepository.js +1 -1
  87. package/dist/infrastructure/persistence/DatabaseEntryRepository.js.map +1 -1
  88. package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.js +3 -3
  89. package/dist/infrastructure/storage/SqliteMantleStorageAdapter.d.ts +22 -0
  90. package/dist/infrastructure/storage/SqliteMantleStorageAdapter.d.ts.map +1 -0
  91. package/dist/infrastructure/storage/SqliteMantleStorageAdapter.js +86 -0
  92. package/dist/infrastructure/storage/SqliteMantleStorageAdapter.js.map +1 -0
  93. package/dist/{domain/service/ViewSqlCompiler.d.ts → infrastructure/storage/SqliteViewCompiler.d.ts} +9 -20
  94. package/dist/infrastructure/storage/SqliteViewCompiler.d.ts.map +1 -0
  95. package/dist/infrastructure/storage/SqliteViewCompiler.js +307 -0
  96. package/dist/infrastructure/storage/SqliteViewCompiler.js.map +1 -0
  97. package/dist/infrastructure/testing/IndexCoverageHarness.d.ts +2 -2
  98. package/dist/infrastructure/testing/IndexCoverageHarness.d.ts.map +1 -1
  99. package/dist/infrastructure/testing/IndexCoverageHarness.js +4 -4
  100. package/dist/infrastructure/testing/IndexCoverageHarness.js.map +1 -1
  101. package/dist/usecase/boot/ValidateBootUseCase.d.ts +15 -38
  102. package/dist/usecase/boot/ValidateBootUseCase.d.ts.map +1 -1
  103. package/dist/usecase/boot/ValidateBootUseCase.js +79 -274
  104. package/dist/usecase/boot/ValidateBootUseCase.js.map +1 -1
  105. package/dist/usecase/boot/index.d.ts +1 -1
  106. package/dist/usecase/boot/index.d.ts.map +1 -1
  107. package/dist/usecase/boot/index.js +1 -1
  108. package/dist/usecase/boot/index.js.map +1 -1
  109. package/dist/usecase/content/CreateDraftUseCase.d.ts +2 -2
  110. package/dist/usecase/content/CreateDraftUseCase.d.ts.map +1 -1
  111. package/dist/usecase/content/CreateDraftUseCase.js.map +1 -1
  112. package/dist/usecase/content/RequestPublishUseCase.d.ts +2 -2
  113. package/dist/usecase/content/RequestPublishUseCase.d.ts.map +1 -1
  114. package/dist/usecase/content/RequestPublishUseCase.js.map +1 -1
  115. package/dist/usecase/content/UpdateDraftUseCase.d.ts +2 -2
  116. package/dist/usecase/content/UpdateDraftUseCase.d.ts.map +1 -1
  117. package/dist/usecase/content/UpdateDraftUseCase.js.map +1 -1
  118. package/dist/usecase/dto/index.d.ts +0 -1
  119. package/dist/usecase/dto/index.d.ts.map +1 -1
  120. package/dist/usecase/dto/index.js +0 -1
  121. package/dist/usecase/dto/index.js.map +1 -1
  122. package/dist/usecase/dto/view/ExecuteViewRequest.d.ts +2 -2
  123. package/dist/usecase/dto/view/ExecuteViewRequest.d.ts.map +1 -1
  124. package/dist/usecase/index.d.ts +0 -1
  125. package/dist/usecase/index.d.ts.map +1 -1
  126. package/dist/usecase/index.js +0 -1
  127. package/dist/usecase/index.js.map +1 -1
  128. package/dist/usecase/media/diagnostics.js +1 -1
  129. package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts +2 -2
  130. package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts.map +1 -1
  131. package/dist/usecase/procedure/InvokeBuiltinUseCase.js.map +1 -1
  132. package/dist/usecase/site/UpdateSiteSettingsUseCase.d.ts.map +1 -1
  133. package/dist/usecase/site/UpdateSiteSettingsUseCase.js +8 -1
  134. package/dist/usecase/site/UpdateSiteSettingsUseCase.js.map +1 -1
  135. package/dist/usecase/view/ExecuteViewUseCase.d.ts +8 -16
  136. package/dist/usecase/view/ExecuteViewUseCase.d.ts.map +1 -1
  137. package/dist/usecase/view/ExecuteViewUseCase.js +19 -95
  138. package/dist/usecase/view/ExecuteViewUseCase.js.map +1 -1
  139. package/dist/usecase/view/index.d.ts +2 -1
  140. package/dist/usecase/view/index.d.ts.map +1 -1
  141. package/dist/usecase/view/index.js.map +1 -1
  142. package/package.json +4 -4
  143. package/dist/domain/model/SeoMeta.d.ts +0 -47
  144. package/dist/domain/model/SeoMeta.d.ts.map +0 -1
  145. package/dist/domain/model/SeoMeta.js +0 -2
  146. package/dist/domain/model/SeoMeta.js.map +0 -1
  147. package/dist/domain/model/TemplateRegistry.d.ts +0 -49
  148. package/dist/domain/model/TemplateRegistry.d.ts.map +0 -1
  149. package/dist/domain/model/TemplateRegistry.js +0 -17
  150. package/dist/domain/model/TemplateRegistry.js.map +0 -1
  151. package/dist/domain/port/AssetServer.d.ts +0 -22
  152. package/dist/domain/port/AssetServer.d.ts.map +0 -1
  153. package/dist/domain/port/AssetServer.js +0 -2
  154. package/dist/domain/port/AssetServer.js.map +0 -1
  155. package/dist/domain/service/AbsoluteUrl.d.ts +0 -6
  156. package/dist/domain/service/AbsoluteUrl.d.ts.map +0 -1
  157. package/dist/domain/service/AbsoluteUrl.js +0 -33
  158. package/dist/domain/service/AbsoluteUrl.js.map +0 -1
  159. package/dist/domain/service/HtmlEscaping.d.ts +0 -2
  160. package/dist/domain/service/HtmlEscaping.d.ts.map +0 -1
  161. package/dist/domain/service/HtmlEscaping.js +0 -9
  162. package/dist/domain/service/HtmlEscaping.js.map +0 -1
  163. package/dist/domain/service/HtmlRenderer.d.ts +0 -38
  164. package/dist/domain/service/HtmlRenderer.d.ts.map +0 -1
  165. package/dist/domain/service/HtmlRenderer.js +0 -73
  166. package/dist/domain/service/HtmlRenderer.js.map +0 -1
  167. package/dist/domain/service/MarkdownSerializer.d.ts +0 -45
  168. package/dist/domain/service/MarkdownSerializer.d.ts.map +0 -1
  169. package/dist/domain/service/MarkdownSerializer.js +0 -154
  170. package/dist/domain/service/MarkdownSerializer.js.map +0 -1
  171. package/dist/domain/service/McpToolNaming.d.ts +0 -31
  172. package/dist/domain/service/McpToolNaming.d.ts.map +0 -1
  173. package/dist/domain/service/McpToolNaming.js +0 -48
  174. package/dist/domain/service/McpToolNaming.js.map +0 -1
  175. package/dist/domain/service/PreviewBanner.d.ts +0 -10
  176. package/dist/domain/service/PreviewBanner.d.ts.map +0 -1
  177. package/dist/domain/service/PreviewBanner.js +0 -30
  178. package/dist/domain/service/PreviewBanner.js.map +0 -1
  179. package/dist/domain/service/PublicPathResolver.d.ts +0 -46
  180. package/dist/domain/service/PublicPathResolver.d.ts.map +0 -1
  181. package/dist/domain/service/PublicPathResolver.js +0 -36
  182. package/dist/domain/service/PublicPathResolver.js.map +0 -1
  183. package/dist/domain/service/SeoMetaComposer.d.ts +0 -60
  184. package/dist/domain/service/SeoMetaComposer.d.ts.map +0 -1
  185. package/dist/domain/service/SeoMetaComposer.js +0 -213
  186. package/dist/domain/service/SeoMetaComposer.js.map +0 -1
  187. package/dist/domain/service/SitemapSerializer.d.ts +0 -19
  188. package/dist/domain/service/SitemapSerializer.d.ts.map +0 -1
  189. package/dist/domain/service/SitemapSerializer.js +0 -27
  190. package/dist/domain/service/SitemapSerializer.js.map +0 -1
  191. package/dist/domain/service/ViewSqlCompiler.d.ts.map +0 -1
  192. package/dist/domain/service/ViewSqlCompiler.js +0 -244
  193. package/dist/domain/service/ViewSqlCompiler.js.map +0 -1
  194. package/dist/domain/service/io/MediaAssetReferences.d.ts +0 -13
  195. package/dist/domain/service/io/MediaAssetReferences.d.ts.map +0 -1
  196. package/dist/domain/service/io/MediaAssetReferences.js +0 -48
  197. package/dist/domain/service/io/MediaAssetReferences.js.map +0 -1
  198. package/dist/runtime.d.ts +0 -145
  199. package/dist/runtime.d.ts.map +0 -1
  200. package/dist/runtime.js +0 -224
  201. package/dist/runtime.js.map +0 -1
  202. package/dist/usecase/dto/render/ComposeEntrySeoMetaRequest.d.ts +0 -18
  203. package/dist/usecase/dto/render/ComposeEntrySeoMetaRequest.d.ts.map +0 -1
  204. package/dist/usecase/dto/render/ComposeEntrySeoMetaRequest.js +0 -2
  205. package/dist/usecase/dto/render/ComposeEntrySeoMetaRequest.js.map +0 -1
  206. package/dist/usecase/dto/render/ComposeLlmsTxtRequest.d.ts +0 -13
  207. package/dist/usecase/dto/render/ComposeLlmsTxtRequest.d.ts.map +0 -1
  208. package/dist/usecase/dto/render/ComposeLlmsTxtRequest.js +0 -2
  209. package/dist/usecase/dto/render/ComposeLlmsTxtRequest.js.map +0 -1
  210. package/dist/usecase/dto/render/ComposeSitemapRequest.d.ts +0 -13
  211. package/dist/usecase/dto/render/ComposeSitemapRequest.d.ts.map +0 -1
  212. package/dist/usecase/dto/render/ComposeSitemapRequest.js +0 -2
  213. package/dist/usecase/dto/render/ComposeSitemapRequest.js.map +0 -1
  214. package/dist/usecase/dto/render/PreviewEntryRequest.d.ts +0 -18
  215. package/dist/usecase/dto/render/PreviewEntryRequest.d.ts.map +0 -1
  216. package/dist/usecase/dto/render/PreviewEntryRequest.js +0 -2
  217. package/dist/usecase/dto/render/PreviewEntryRequest.js.map +0 -1
  218. package/dist/usecase/dto/render/RenderEntryLiveRequest.d.ts +0 -19
  219. package/dist/usecase/dto/render/RenderEntryLiveRequest.d.ts.map +0 -1
  220. package/dist/usecase/dto/render/RenderEntryLiveRequest.js +0 -2
  221. package/dist/usecase/dto/render/RenderEntryLiveRequest.js.map +0 -1
  222. package/dist/usecase/dto/render/RenderListLiveRequest.d.ts +0 -15
  223. package/dist/usecase/dto/render/RenderListLiveRequest.d.ts.map +0 -1
  224. package/dist/usecase/dto/render/RenderListLiveRequest.js +0 -2
  225. package/dist/usecase/dto/render/RenderListLiveRequest.js.map +0 -1
  226. package/dist/usecase/dto/render/index.d.ts +0 -7
  227. package/dist/usecase/dto/render/index.d.ts.map +0 -1
  228. package/dist/usecase/dto/render/index.js +0 -7
  229. package/dist/usecase/dto/render/index.js.map +0 -1
  230. package/dist/usecase/render/ComposeEntrySeoMetaUseCase.d.ts +0 -28
  231. package/dist/usecase/render/ComposeEntrySeoMetaUseCase.d.ts.map +0 -1
  232. package/dist/usecase/render/ComposeEntrySeoMetaUseCase.js +0 -66
  233. package/dist/usecase/render/ComposeEntrySeoMetaUseCase.js.map +0 -1
  234. package/dist/usecase/render/ComposeLlmsTxtUseCase.d.ts +0 -18
  235. package/dist/usecase/render/ComposeLlmsTxtUseCase.d.ts.map +0 -1
  236. package/dist/usecase/render/ComposeLlmsTxtUseCase.js +0 -47
  237. package/dist/usecase/render/ComposeLlmsTxtUseCase.js.map +0 -1
  238. package/dist/usecase/render/ComposeSitemapUseCase.d.ts +0 -15
  239. package/dist/usecase/render/ComposeSitemapUseCase.d.ts.map +0 -1
  240. package/dist/usecase/render/ComposeSitemapUseCase.js +0 -38
  241. package/dist/usecase/render/ComposeSitemapUseCase.js.map +0 -1
  242. package/dist/usecase/render/PreviewEntryUseCase.d.ts +0 -28
  243. package/dist/usecase/render/PreviewEntryUseCase.d.ts.map +0 -1
  244. package/dist/usecase/render/PreviewEntryUseCase.js +0 -72
  245. package/dist/usecase/render/PreviewEntryUseCase.js.map +0 -1
  246. package/dist/usecase/render/RenderEntryLiveUseCase.d.ts +0 -36
  247. package/dist/usecase/render/RenderEntryLiveUseCase.d.ts.map +0 -1
  248. package/dist/usecase/render/RenderEntryLiveUseCase.js +0 -62
  249. package/dist/usecase/render/RenderEntryLiveUseCase.js.map +0 -1
  250. package/dist/usecase/render/RenderListLiveUseCase.d.ts +0 -25
  251. package/dist/usecase/render/RenderListLiveUseCase.d.ts.map +0 -1
  252. package/dist/usecase/render/RenderListLiveUseCase.js +0 -46
  253. package/dist/usecase/render/RenderListLiveUseCase.js.map +0 -1
  254. package/dist/usecase/render/index.d.ts +0 -7
  255. package/dist/usecase/render/index.d.ts.map +0 -1
  256. package/dist/usecase/render/index.js +0 -7
  257. package/dist/usecase/render/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ExecuteViewRequest.d.ts","sourceRoot":"","sources":["../../../../src/usecase/dto/view/ExecuteViewRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAErF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IACtC;;;0DAGsD;IACtD,QAAQ,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC;CAC/B"}
1
+ {"version":3,"file":"ExecuteViewRequest.d.ts","sourceRoot":"","sources":["../../../../src/usecase/dto/view/ExecuteViewRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAElF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,gBAAgB,CAAC;IACpC;;;0DAGsD;IACtD,QAAQ,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC;CAC/B"}
@@ -11,7 +11,6 @@ export * from "./procedure/index.js";
11
11
  export * from "./view/index.js";
12
12
  export * from "./boot/index.js";
13
13
  export * from "./lifecycle/index.js";
14
- export * from "./render/index.js";
15
14
  export * from "./media/index.js";
16
15
  export * from "./site/index.js";
17
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/usecase/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/usecase/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
@@ -11,7 +11,6 @@ export * from "./procedure/index.js";
11
11
  export * from "./view/index.js";
12
12
  export * from "./boot/index.js";
13
13
  export * from "./lifecycle/index.js";
14
- export * from "./render/index.js";
15
14
  export * from "./media/index.js";
16
15
  export * from "./site/index.js";
17
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/usecase/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/usecase/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
@@ -7,7 +7,7 @@ export function mediaNotConfiguredDiagnostic(opPath) {
7
7
  severity: "error",
8
8
  path: opPath,
9
9
  expected: "media storage adapter bound at runtime",
10
- message: "Media uploads are not enabled on this deployment. Bind a `mediaStorage` adapter in `createCmsRuntime` to enable.",
10
+ message: "Media uploads are not enabled on this deployment. Bind a `mediaStorage` port in `createMantleRuntime` to enable.",
11
11
  });
12
12
  }
13
13
  export function mediaMimeRejectedDiagnostic(opPath, mime) {
@@ -2,7 +2,7 @@ import { EntryDataValidator, type SchemaManifest } from "@aotter/mantle-spec";
2
2
  import type { Clock } from "../../domain/port/Clock.js";
3
3
  import type { EntryRepository } from "../../domain/port/EntryRepository.js";
4
4
  import type { IdGenerator } from "../../domain/port/IdGenerator.js";
5
- import type { SiteConfigRepository } from "../../domain/port/SiteConfigRepository.js";
5
+ import type { LocalePolicyReader } from "../../domain/port/SiteConfigRepository.js";
6
6
  import type { InvokeBuiltinRequest } from "../dto/procedure/index.js";
7
7
  /**
8
8
  * `InvokeBuiltinUseCase` — executes the `handler.kind: builtin` op
@@ -34,7 +34,7 @@ export declare class InvokeBuiltinUseCase {
34
34
  private readonly idgen;
35
35
  private readonly siteConfig?;
36
36
  private readonly validator;
37
- constructor(entries: EntryRepository, schemasByName: ReadonlyMap<string, SchemaManifest>, clock: Clock, idgen: IdGenerator, siteConfig?: SiteConfigRepository | undefined, validator?: EntryDataValidator);
37
+ constructor(entries: EntryRepository, schemasByName: ReadonlyMap<string, SchemaManifest>, clock: Clock, idgen: IdGenerator, siteConfig?: LocalePolicyReader | undefined, validator?: EntryDataValidator);
38
38
  run(request: InvokeBuiltinRequest): Promise<unknown>;
39
39
  private opCreate;
40
40
  private opUpdate;
@@ -1 +1 @@
1
- {"version":3,"file":"InvokeBuiltinUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/procedure/InvokeBuiltinUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,kBAAkB,EAGlB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAWtF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,oBAAoB;IAE7B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAC,SAAS;gBALT,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EAClD,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,oBAAoB,YAAA,EACjC,SAAS,qBAA2B;IAGjD,GAAG,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;YA4D5C,QAAQ;YA4BR,QAAQ;YAwDR,QAAQ;YAcR,QAAQ;YA6BR,SAAS;CA6CxB"}
1
+ {"version":3,"file":"InvokeBuiltinUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/procedure/InvokeBuiltinUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,kBAAkB,EAGlB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAWpF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,oBAAoB;IAE7B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;IAC5B,OAAO,CAAC,QAAQ,CAAC,SAAS;gBALT,OAAO,EAAE,eAAe,EACxB,aAAa,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EAClD,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,kBAAkB,YAAA,EAC/B,SAAS,qBAA2B;IAGjD,GAAG,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;YA4D5C,QAAQ;YA4BR,QAAQ;YAwDR,QAAQ;YAcR,QAAQ;YA6BR,SAAS;CA6CxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"InvokeBuiltinUseCase.js","sourceRoot":"","sources":["../../../src/usecase/procedure/InvokeBuiltinUseCase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InvokeBuiltinUseCase.js","sourceRoot":"","sources":["../../../src/usecase/procedure/InvokeBuiltinUseCase.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"UpdateSiteSettingsUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/site/UpdateSiteSettingsUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC1F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAKtF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,sCAAsC;AACtC,qBAAa,yBAAyB;IAElC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;gBADf,UAAU,EAAE,oBAAoB,EAChC,cAAc,CAAC,GAAE,MAAM,OAAO,CAAC,IAAI,CAAC,aAAA;IAGjD,OAAO,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;CAsBvE"}
1
+ {"version":3,"file":"UpdateSiteSettingsUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/site/UpdateSiteSettingsUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC1F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAEtE,sCAAsC;AACtC,qBAAa,yBAAyB;IAElC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;gBADf,UAAU,EAAE,oBAAoB,EAChC,cAAc,CAAC,GAAE,MAAM,OAAO,CAAC,IAAI,CAAC,aAAA;IAGjD,OAAO,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,UAAU,CAAC;CAsBvE"}
@@ -1,5 +1,4 @@
1
1
  import { DiagnosticError, runtimeDiagnostic } from "@aotter/mantle-spec";
2
- import { normalizeFacebookPixelId, normalizeGa4MeasurementId, } from "../../domain/service/HtmlRenderer.js";
3
2
  /** Persist editable site settings. */
4
3
  export class UpdateSiteSettingsUseCase {
5
4
  siteConfig;
@@ -21,6 +20,14 @@ export class UpdateSiteSettingsUseCase {
21
20
  return this.siteConfig.load();
22
21
  }
23
22
  }
23
+ function normalizeGa4MeasurementId(value) {
24
+ const trimmed = value?.trim().toUpperCase() ?? "";
25
+ return /^G-[A-Z0-9]{4,32}$/.test(trimmed) ? trimmed : null;
26
+ }
27
+ function normalizeFacebookPixelId(value) {
28
+ const trimmed = value?.trim() ?? "";
29
+ return /^[0-9]{5,32}$/.test(trimmed) ? trimmed : null;
30
+ }
24
31
  function normalizeOptionalId(value, normalize, field, expected) {
25
32
  if (value === undefined)
26
33
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"UpdateSiteSettingsUseCase.js","sourceRoot":"","sources":["../../../src/usecase/site/UpdateSiteSettingsUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAmB,MAAM,qBAAqB,CAAC;AAE1F,OAAO,EACL,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,sCAAsC,CAAC;AAG9C,sCAAsC;AACtC,MAAM,OAAO,yBAAyB;IAEjB;IACA;IAFnB,YACmB,UAAgC,EAChC,cAAoC;QADpC,eAAU,GAAV,UAAU,CAAsB;QAChC,mBAAc,GAAd,cAAc,CAAsB;IACpD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC9C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;YACnC,GAAG,OAAO;YACV,gBAAgB,EAAE,mBAAmB,CACnC,OAAO,CAAC,gBAAgB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,+DAA+D,CAChE;YACD,eAAe,EAAE,mBAAmB,CAClC,OAAO,CAAC,eAAe,EACvB,wBAAwB,EACxB,iBAAiB,EACjB,iDAAiD,CAClD;SACF,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IAChC,CAAC;CACF;AAED,SAAS,mBAAmB,CAC1B,KAAyB,EACzB,SAAuD,EACvD,KAAa,EACb,QAAgB;IAEhB,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IAClC,MAAM,IAAI,eAAe,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,yBAAyB;QAC/B,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,8BAA8B,KAAK,EAAE;QAC3C,KAAK;QACL,QAAQ;QACR,OAAO,EAAE,WAAW,KAAK,GAAG;KAC7B,CAAC,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"UpdateSiteSettingsUseCase.js","sourceRoot":"","sources":["../../../src/usecase/site/UpdateSiteSettingsUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAmB,MAAM,qBAAqB,CAAC;AAI1F,sCAAsC;AACtC,MAAM,OAAO,yBAAyB;IAEjB;IACA;IAFnB,YACmB,UAAgC,EAChC,cAAoC;QADpC,eAAU,GAAV,UAAU,CAAsB;QAChC,mBAAc,GAAd,cAAc,CAAsB;IACpD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAAkC;QAC9C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;YACnC,GAAG,OAAO;YACV,gBAAgB,EAAE,mBAAmB,CACnC,OAAO,CAAC,gBAAgB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,+DAA+D,CAChE;YACD,eAAe,EAAE,mBAAmB,CAClC,OAAO,CAAC,eAAe,EACvB,wBAAwB,EACxB,iBAAiB,EACjB,iDAAiD,CAClD;SACF,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IAChC,CAAC;CACF;AAED,SAAS,yBAAyB,CAAC,KAAyB;IAC1D,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;IAClD,OAAO,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAyB;IACzD,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACpC,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AACxD,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAyB,EACzB,SAAuD,EACvD,KAAa,EACb,QAAgB;IAEhB,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IAClC,MAAM,IAAI,eAAe,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,yBAAyB;QAC/B,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,8BAA8B,KAAK,EAAE;QAC3C,KAAK;QACL,QAAQ;QACR,OAAO,EAAE,WAAW,KAAK,GAAG;KAC7B,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -1,23 +1,15 @@
1
- import { type Diagnostic, type SchemaManifest } from "@aotter/mantle-spec";
2
- import type { DatabaseDriver } from "../../domain/port/DatabaseDriver.js";
1
+ import { type Diagnostic } from "@aotter/mantle-spec";
2
+ import type { ViewQueryExecutor, ViewQueryResult } from "../../domain/port/ViewQueryExecutor.js";
3
+ import type { RuntimeViewPlan } from "../../domain/service/RuntimePlanCompiler.js";
3
4
  import type { ExecuteViewRequest } from "../dto/view/ExecuteViewRequest.js";
4
5
  import type { InvokeProcedureResponse } from "../dto/procedure/index.js";
5
6
  import type { HandlerContext } from "../../domain/model/HandlerContext.js";
6
7
  /**
7
- * Compile a View manifest and run it against `DatabaseDriver`. The
8
- * REST adapters coerce query strings and MCP passes typed JSON; this use
8
+ * Authorize and bind request values to a prepared View query. REST
9
+ * adapters coerce query strings and MCP passes typed JSON; this use
9
10
  * case validates the converged param map against `View.spec.params` after
10
11
  * static auth and before an optional guard.
11
12
  */
12
- export interface ViewQueryResult<R = Record<string, unknown>> {
13
- readonly rows: readonly R[];
14
- readonly page: number;
15
- readonly show: number;
16
- /** True when `rows.length === show` — there *might* be more on the
17
- * next page. False guarantees no more. v0.1.0 takes the cheap
18
- * path: no count query, no limit+1 probe. ADR-0012. */
19
- readonly hasMore: boolean;
20
- }
21
13
  export type ExecuteViewResponse<R = Record<string, unknown>> = {
22
14
  readonly ok: true;
23
15
  readonly result: ViewQueryResult<R>;
@@ -32,11 +24,11 @@ export type InvokeViewGuard = (request: {
32
24
  readonly pathPrefix: string;
33
25
  }) => Promise<InvokeProcedureResponse>;
34
26
  export declare class ExecuteViewUseCase {
35
- private readonly db;
27
+ private readonly queries;
36
28
  private readonly invokeGuard?;
37
- private readonly schemasByName;
29
+ private readonly views;
38
30
  private readonly paramsCache;
39
- constructor(db: DatabaseDriver, invokeGuard?: InvokeViewGuard | undefined, schemasByName?: ReadonlyMap<string, SchemaManifest>);
31
+ constructor(queries: ViewQueryExecutor, invokeGuard?: InvokeViewGuard | undefined, views?: Readonly<Record<string, RuntimeViewPlan>>);
40
32
  execute<R = Record<string, unknown>>(request: ExecuteViewRequest): Promise<ExecuteViewResponse<R>>;
41
33
  }
42
34
  //# sourceMappingURL=ExecuteViewUseCase.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExecuteViewUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/view/ExecuteViewUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,UAAU,EACf,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAG1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAE3E;;;;;GAKG;AAEH,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1D,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;4DAEwD;IACxD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,MAAM,mBAAmB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACvD;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAA;CAAE,CAAC;AAE5D,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAEvC,qBAAa,kBAAkB;IAI3B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IALhC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;gBAGvC,EAAE,EAAE,cAAc,EAClB,WAAW,CAAC,EAAE,eAAe,YAAA,EAC7B,aAAa,GAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAa;IAG3E,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAoJnC"}
1
+ {"version":3,"file":"ExecuteViewUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/view/ExecuteViewUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EAChB,MAAM,wCAAwC,CAAC;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAE3E;;;;;GAKG;AAEH,MAAM,MAAM,mBAAmB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACvD;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAA;CAAE,CAAC;AAE5D,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAEvC,qBAAa,kBAAkB;IAI3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK;IALxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;gBAGvC,OAAO,EAAE,iBAAiB,EAC1B,WAAW,CAAC,EAAE,eAAe,YAAA,EAC7B,KAAK,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAuB;IAGnF,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAmHnC"}
@@ -1,21 +1,22 @@
1
1
  import { DiagnosticError, firstZodIssueAsJsonPointer, jsonSchemaToZod, makeDiagnostic, readJsonPointer, runtimeDiagnostic, } from "@aotter/mantle-spec";
2
2
  import { evaluateAuthAll } from "../../domain/service/AuthPredicateEvaluator.js";
3
- import { compileView } from "../../domain/service/ViewSqlCompiler.js";
4
3
  export class ExecuteViewUseCase {
5
- db;
4
+ queries;
6
5
  invokeGuard;
7
- schemasByName;
6
+ views;
8
7
  paramsCache = new Map();
9
- constructor(db, invokeGuard, schemasByName = new Map()) {
10
- this.db = db;
8
+ constructor(queries, invokeGuard, views = Object.create(null)) {
9
+ this.queries = queries;
11
10
  this.invokeGuard = invokeGuard;
12
- this.schemasByName = schemasByName;
11
+ this.views = views;
13
12
  }
14
13
  async execute(request) {
15
- const viewPath = request.pathPrefix ?? `manifest:View/${request.view.metadata.name}`;
14
+ const planned = this.views[request.view.metadata.name];
15
+ const view = planned?.manifest ?? request.view;
16
+ const viewPath = request.pathPrefix ?? `manifest:View/${view.metadata.name}`;
16
17
  // Auth — closed predicate vocabulary same as Procedure. When the
17
18
  // View has no `requires.auth.all`, evaluateAuthAll returns null.
18
- const requires = request.view.spec.requires;
19
+ const requires = view.spec.requires;
19
20
  if (requires?.auth?.all && requires.auth.all.length > 0) {
20
21
  if (!request.ctx) {
21
22
  return {
@@ -38,11 +39,11 @@ export class ExecuteViewUseCase {
38
39
  // callers. MCP sends already-typed JSON; REST passes coerced query
39
40
  // values. Both converge here before the dynamic guard.
40
41
  let validatedParams = request.options?.params ?? {};
41
- if (request.view.spec.params) {
42
- let validator = this.paramsCache.get(request.view.metadata.name);
42
+ if (view.spec.params) {
43
+ let validator = this.paramsCache.get(view.metadata.name);
43
44
  if (!validator) {
44
- validator = jsonSchemaToZod(request.view.spec.params);
45
- this.paramsCache.set(request.view.metadata.name, validator);
45
+ validator = jsonSchemaToZod(view.spec.params);
46
+ this.paramsCache.set(view.metadata.name, validator);
46
47
  }
47
48
  const parsed = validator.safeParse(validatedParams);
48
49
  if (!parsed.success) {
@@ -97,16 +98,14 @@ export class ExecuteViewUseCase {
97
98
  if (!guarded.ok)
98
99
  return guarded;
99
100
  }
100
- const schema = request.view.spec.from
101
- ? this.schemasByName.get(request.view.spec.from)
102
- : undefined;
103
- let compiled;
104
101
  try {
105
- compiled = compileView(request.view, {
102
+ const result = await this.queries.execute({
103
+ view: view.metadata.name,
106
104
  ...request.options,
107
105
  params: validatedParams,
108
106
  ctxUserId: request.ctx?.user?.id,
109
- }, schema);
107
+ });
108
+ return { ok: true, result };
110
109
  }
111
110
  catch (err) {
112
111
  if (err instanceof DiagnosticError) {
@@ -119,86 +118,11 @@ export class ExecuteViewUseCase {
119
118
  code: "INTERNAL_ERROR",
120
119
  severity: "error",
121
120
  path: viewPath,
122
- expected: "View compiles to valid SQL",
123
- message: `View compile failed: ${msg}`,
121
+ expected: "prepared View query executes successfully",
122
+ message: `View query failed: ${msg}`,
124
123
  }),
125
124
  };
126
125
  }
127
- try {
128
- const rows = await this.db
129
- .prepare(compiled.sql)
130
- .bind(...compiled.params)
131
- .all();
132
- const normalizedRows = normalizeProjectedFields(rows, request.view.spec.fields, schema);
133
- return {
134
- ok: true,
135
- result: {
136
- rows: normalizedRows,
137
- page: compiled.effectivePage,
138
- show: compiled.effectiveShow,
139
- hasMore: normalizedRows.length === compiled.effectiveShow,
140
- },
141
- };
142
- }
143
- catch (err) {
144
- const msg = err instanceof Error ? err.message : String(err);
145
- return {
146
- ok: false,
147
- diagnostic: runtimeDiagnostic({
148
- code: "INTERNAL_ERROR",
149
- severity: "error",
150
- path: viewPath,
151
- expected: "SQL executes without error",
152
- message: `View SQL execution failed: ${msg}`,
153
- }),
154
- };
155
- }
156
- }
157
- }
158
- function normalizeProjectedFields(rows, fields, schema) {
159
- const properties = schema?.spec.schema.properties;
160
- const projectedFields = fields?.flatMap((field) => {
161
- const property = properties?.[field];
162
- return property && isSqliteNormalizedProperty(property) ? [[field, property]] : [];
163
- }) ?? [];
164
- if (projectedFields.length === 0)
165
- return rows;
166
- return rows.map((row) => {
167
- if (!row || typeof row !== "object" || Array.isArray(row))
168
- return row;
169
- const normalized = { ...row };
170
- for (const [field, property] of projectedFields) {
171
- normalized[field] = normalizeProjectedValue(normalized[field], property);
172
- }
173
- return normalized;
174
- });
175
- }
176
- function isSqliteNormalizedProperty(property) {
177
- const types = Array.isArray(property.type) ? property.type : [property.type];
178
- return types.some((type) => type === "boolean" || type === "object" || type === "array");
179
- }
180
- function normalizeProjectedValue(value, property) {
181
- const types = Array.isArray(property.type) ? property.type : [property.type];
182
- if (types.includes("boolean")) {
183
- if (value === 0)
184
- return false;
185
- if (value === 1)
186
- return true;
187
- }
188
- if (typeof value !== "string" || (!types.includes("object") && !types.includes("array"))) {
189
- return value;
190
- }
191
- try {
192
- const parsed = JSON.parse(value);
193
- if (types.includes("array") && Array.isArray(parsed))
194
- return parsed;
195
- if (types.includes("object") && parsed !== null && typeof parsed === "object" && !Array.isArray(parsed)) {
196
- return parsed;
197
- }
198
- }
199
- catch {
200
- // Preserve malformed legacy values so callers can fail their own schema checks.
201
126
  }
202
- return value;
203
127
  }
204
128
  //# sourceMappingURL=ExecuteViewUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExecuteViewUseCase.js","sourceRoot":"","sources":["../../../src/usecase/view/ExecuteViewUseCase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExecuteViewUseCase.js","sourceRoot":"","sources":["../../../src/usecase/view/ExecuteViewUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,0BAA0B,EAC1B,eAAe,EACf,cAAc,EACd,eAAe,EACf,iBAAiB,GAElB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AAwBjF,MAAM,OAAO,kBAAkB;IAIV;IACA;IACA;IALF,WAAW,GAAG,IAAI,GAAG,EAAmB,CAAC;IAE1D,YACmB,OAA0B,EAC1B,WAA6B,EAC7B,QAAmD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QAFtE,YAAO,GAAP,OAAO,CAAmB;QAC1B,gBAAW,GAAX,WAAW,CAAkB;QAC7B,UAAK,GAAL,KAAK,CAAiE;IACtF,CAAC;IAEJ,KAAK,CAAC,OAAO,CACX,OAA2B;QAE3B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,OAAO,EAAE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;QAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,IAAI,iBAAiB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAE7E,iEAAiE;QACjE,iEAAiE;QACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QACpC,IAAI,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;gBACjB,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,UAAU,EAAE,cAAc,CAAC;wBACzB,IAAI,EAAE,iBAAiB;wBACvB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,IAAI,EAAE,GAAG,QAAQ,iBAAiB;wBAClC,QAAQ,EAAE,sEAAsE;qBACjF,CAAC;iBACH,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAG,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YAC3E,IAAI,MAAM;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QACvD,CAAC;QAED,kEAAkE;QAClE,+DAA+D;QAC/D,mEAAmE;QACnE,uDAAuD;QACvD,IAAI,eAAe,GAAG,OAAO,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC;QACpD,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACrB,IAAI,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC9C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACtD,CAAC;YACD,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YACpD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,0BAA0B,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC3E,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,UAAU,EAAE,cAAc,CAAC;wBACzB,IAAI,EAAE,yBAAyB;wBAC/B,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,IAAI,EAAE,GAAG,QAAQ,WAAW,YAAY,EAAE;wBAC1C,KAAK,EAAE,eAAe,CAAC,eAAe,EAAE,YAAY,CAAC;wBACrD,QAAQ,EAAE,OAAO;qBAClB,CAAC;iBACH,CAAC;YACJ,CAAC;YACD,eAAe,GAAG,MAAM,CAAC,IAA+B,CAAC;QAC3D,CAAC;QAED,MAAM,SAAS,GAAG,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC;QAC7C,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;gBACjB,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,UAAU,EAAE,cAAc,CAAC;wBACzB,IAAI,EAAE,iBAAiB;wBACvB,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,IAAI,EAAE,GAAG,QAAQ,kBAAkB;wBACnC,QAAQ,EAAE,2DAA2D;qBACtE,CAAC;iBACH,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtB,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,UAAU,EAAE,cAAc,CAAC;wBACzB,IAAI,EAAE,yBAAyB;wBAC/B,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,OAAO;wBACjB,IAAI,EAAE,GAAG,QAAQ,4BAA4B;wBAC7C,KAAK,EAAE,SAAS;wBAChB,QAAQ,EAAE,sCAAsC;qBACjD,CAAC;iBACH,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC;gBACrC,SAAS,EAAE,SAAS;gBACpB,KAAK,EAAE,eAAe;gBACtB,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,UAAU,EAAE,GAAG,QAAQ,oBAAoB,SAAS,EAAE;aACvD,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,EAAE;gBAAE,OAAO,OAAO,CAAC;QAClC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAI;gBAC3C,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;gBACxB,GAAG,OAAO,CAAC,OAAO;gBAClB,MAAM,EAAE,eAAe;gBACvB,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;aACjC,CAAC,CAAC;YACH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,eAAe,EAAE,CAAC;gBACnC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;YACnD,CAAC;YACD,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,UAAU,EAAE,iBAAiB,CAAC;oBAC5B,IAAI,EAAE,gBAAgB;oBACtB,QAAQ,EAAE,OAAO;oBACjB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,2CAA2C;oBACrD,OAAO,EAAE,sBAAsB,GAAG,EAAE;iBACrC,CAAC;aACH,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
@@ -1,2 +1,3 @@
1
- export { ExecuteViewUseCase, type ExecuteViewResponse, type ViewQueryResult, } from "./ExecuteViewUseCase.js";
1
+ export { ExecuteViewUseCase, type ExecuteViewResponse, } from "./ExecuteViewUseCase.js";
2
+ export type { ViewQueryResult } from "../../domain/port/ViewQueryExecutor.js";
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/usecase/view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,KAAK,eAAe,GACrB,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/usecase/view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,mBAAmB,GACzB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/usecase/view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAGnB,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/usecase/view/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,GAEnB,MAAM,yBAAyB,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aotter/mantle-runtime",
3
- "version": "0.1.0-alpha.7",
4
- "description": "Runtime engine for mantle: dispatcher + entry-writer + view executor + content-ops + render pipeline + auth + MCP. Defines adapter-agnostic ports. MUST NOT import D1Database / KVNamespace types.",
3
+ "version": "0.1.0-alpha.8",
4
+ "description": "Headless runtime engine for Mantle: entry operations, procedures, views, triggers, lifecycle, and adapter-agnostic ports.",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://mantle.tools/",
7
7
  "repository": {
@@ -33,7 +33,7 @@
33
33
  "README.md"
34
34
  ],
35
35
  "dependencies": {
36
- "@aotter/mantle-spec": "0.1.0-alpha.7"
36
+ "@aotter/mantle-spec": "0.1.0-alpha.8"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "zod": "^4.0.0"
@@ -42,7 +42,7 @@
42
42
  "@types/node": "^26",
43
43
  "typescript": "^6.0.3",
44
44
  "vitest": "^4.1.10",
45
- "zod": "^4.4.2"
45
+ "zod": "^4.4.3"
46
46
  },
47
47
  "scripts": {
48
48
  "prebuild": "rm -rf dist .tsbuildinfo",
@@ -1,47 +0,0 @@
1
- /**
2
- * Composed SEO + AEO meta block surfaced to entry / list templates
3
- * via `EntryContext.seo` / `ListContext.seo`. Built by
4
- * `composeEntrySeoMeta` (pure) — see `domain/service/SeoMetaComposer`.
5
- *
6
- * "AEO-friendly" means: in addition to the standard SEO tags, every
7
- * entry page carries a `<link rel="alternate" type="text/markdown"
8
- * href="...md">` pointing at the publish-pipeline-emitted markdown
9
- * mirror. LLM crawlers can grab the markdown directly — no HTML
10
- * scraping, no DOM parsing.
11
- */
12
- export interface SeoMeta {
13
- /** Absolute canonical URL — `<link rel="canonical">`. */
14
- readonly canonical: string;
15
- /** Absolute URL of the markdown mirror — `<link rel="alternate"
16
- * type="text/markdown">`. AEO-critical. */
17
- readonly alternateMarkdown: string | null;
18
- /** One per locale this entry has a translation in, plus an
19
- * `x-default` row when the site has multiple locales. */
20
- readonly hreflangs: ReadonlyArray<{
21
- readonly locale: string;
22
- readonly href: string;
23
- }>;
24
- /** `<meta name="description">`. `null` to skip. */
25
- readonly description: string | null;
26
- /** Open Graph block. */
27
- readonly og: {
28
- readonly type: "article" | "website";
29
- readonly url: string;
30
- readonly title: string;
31
- readonly siteName: string;
32
- readonly description: string | null;
33
- readonly image: string | null;
34
- readonly locale: string;
35
- };
36
- /** Twitter card block. */
37
- readonly twitter: {
38
- readonly card: "summary" | "summary_large_image";
39
- readonly title: string;
40
- readonly description: string | null;
41
- readonly image: string | null;
42
- };
43
- /** JSON-LD object — emitted as `<script type="application/ld+json">`.
44
- * `null` skips emission. */
45
- readonly jsonLd: object | null;
46
- }
47
- //# sourceMappingURL=SeoMeta.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SeoMeta.d.ts","sourceRoot":"","sources":["../../../src/domain/model/SeoMeta.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,WAAW,OAAO;IACtB,yDAAyD;IACzD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;gDAC4C;IAC5C,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C;8DAC0D;IAC1D,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtF,mDAAmD;IACnD,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,wBAAwB;IACxB,QAAQ,CAAC,EAAE,EAAE;QACX,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;QACrC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,0BAA0B;IAC1B,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,qBAAqB,CAAC;QACjD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;KAC/B,CAAC;IACF;iCAC6B;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=SeoMeta.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SeoMeta.js","sourceRoot":"","sources":["../../../src/domain/model/SeoMeta.ts"],"names":[],"mappings":""}
@@ -1,49 +0,0 @@
1
- import type { Entry, SiteConfig } from "@aotter/mantle-spec";
2
- import type { SeoMeta } from "./SeoMeta.js";
3
- import type { MediaAsset } from "../port/MediaStorage.js";
4
- /**
5
- * Render-pipeline types + consumer-supplied template registry.
6
- *
7
- * The runtime stays string-typed — templates return complete HTML
8
- * body strings (no doctype prefix; the HTML renderer adds it) so
9
- * the runtime carries no JSX dependency. Consumers using JSX in
10
- * their public surface (Hono + hono/jsx) call their JSX → string
11
- * function before the template returns.
12
- *
13
- * Schemas without a registered entry/list template skip HTML.
14
- * Their agent mirrors are emitted only when a public path resolves
15
- * and the entry has serializable content.
16
- *
17
- * `seo` is populated when the renderer is given a composed SeoMeta
18
- * block — templates render `<SeoTags seo={seo} />` (or read fields
19
- * directly) when present. Renderers that skip composition leave
20
- * `seo` undefined so opt-out templates don't break.
21
- *
22
- * Lives in `domain/model/` because runtime render use cases and
23
- * consumer-supplied templates both reference it.
24
- */
25
- export interface EntryContext {
26
- readonly entry: Entry;
27
- readonly site: SiteConfig;
28
- readonly mediaAssets?: ReadonlyMap<string, MediaAsset>;
29
- readonly seo?: SeoMeta;
30
- }
31
- export interface ListContext {
32
- readonly collection: string;
33
- readonly locale: string;
34
- readonly entries: readonly Entry[];
35
- readonly site: SiteConfig;
36
- readonly mediaAssets?: ReadonlyMap<string, MediaAsset>;
37
- readonly seo?: SeoMeta;
38
- }
39
- export type EntryTemplate = (ctx: EntryContext) => string;
40
- export type ListTemplate = (ctx: ListContext) => string;
41
- export declare class TemplateRegistry {
42
- private readonly entries;
43
- private readonly lists;
44
- registerEntryTemplate(collection: string, t: EntryTemplate): void;
45
- registerListTemplate(collection: string, t: ListTemplate): void;
46
- getEntryTemplate(collection: string): EntryTemplate | undefined;
47
- getListTemplate(collection: string): ListTemplate | undefined;
48
- }
49
- //# sourceMappingURL=TemplateRegistry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplateRegistry.d.ts","sourceRoot":"","sources":["../../../src/domain/model/TemplateRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,SAAS,KAAK,EAAE,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,YAAY,KAAK,MAAM,CAAC;AAC1D,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,WAAW,KAAK,MAAM,CAAC;AAExD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoC;IAC5D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmC;IAEzD,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,GAAG,IAAI;IAIjE,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,GAAG,IAAI;IAI/D,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAI/D,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;CAG9D"}
@@ -1,17 +0,0 @@
1
- export class TemplateRegistry {
2
- entries = new Map();
3
- lists = new Map();
4
- registerEntryTemplate(collection, t) {
5
- this.entries.set(collection, t);
6
- }
7
- registerListTemplate(collection, t) {
8
- this.lists.set(collection, t);
9
- }
10
- getEntryTemplate(collection) {
11
- return this.entries.get(collection);
12
- }
13
- getListTemplate(collection) {
14
- return this.lists.get(collection);
15
- }
16
- }
17
- //# sourceMappingURL=TemplateRegistry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplateRegistry.js","sourceRoot":"","sources":["../../../src/domain/model/TemplateRegistry.ts"],"names":[],"mappings":"AA4CA,MAAM,OAAO,gBAAgB;IACV,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC3C,KAAK,GAAG,IAAI,GAAG,EAAwB,CAAC;IAEzD,qBAAqB,CAAC,UAAkB,EAAE,CAAgB;QACxD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,oBAAoB,CAAC,UAAkB,EAAE,CAAe;QACtD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,gBAAgB,CAAC,UAAkB;QACjC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IAED,eAAe,CAAC,UAAkB;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;CACF"}
@@ -1,22 +0,0 @@
1
- /**
2
- * `AssetServer` — static-asset serving for the admin SPA. The admin
3
- * SPA itself lives in `@aotter/mantle-admin-ui` as a pre-built
4
- * `dist/`; `mantle generate` copies it into the consumer's static root.
5
- * The adapter binds `AssetServer` to whatever serves that directory.
6
- * The runtime knows nothing about MIME
7
- * types, caching headers, or compression — it just asks the port and
8
- * returns the response.
9
- *
10
- * CF adapter: wraps `env.ASSETS.fetch(req)`. Future: filesystem read,
11
- * S3+CDN, or another platform asset service.
12
- *
13
- * Returning `null` lets the runtime's HTTP layer fall back to the
14
- * SPA's `index.html` catchall — the React Router routing model.
15
- *
16
- * Renamed from `AssetsPort` per the clean-architecture naming
17
- * convention.
18
- */
19
- export interface AssetServer {
20
- fetch(req: Request): Promise<Response | null>;
21
- }
22
- //# sourceMappingURL=AssetServer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssetServer.d.ts","sourceRoot":"","sources":["../../../src/domain/port/AssetServer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;CAC/C"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=AssetServer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssetServer.js","sourceRoot":"","sources":["../../../src/domain/port/AssetServer.ts"],"names":[],"mappings":""}
@@ -1,6 +0,0 @@
1
- export declare function absoluteUrl(origin: string, path: string): string;
2
- /** Append `.md` before any query string / hash. Used by the SEO
3
- * composer + sitemap to derive markdown-mirror URLs without
4
- * mangling query params. */
5
- export declare function appendMarkdownExt(absoluteOrPath: string): string;
6
- //# sourceMappingURL=AbsoluteUrl.d.ts.map