@aotter/mantle-runtime 0.1.0-alpha.1 → 0.1.0-alpha.10

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 (298) 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/EntryReader.d.ts +1 -1
  22. package/dist/domain/port/EntryReader.d.ts.map +1 -1
  23. package/dist/domain/port/EntryRepository.d.ts +19 -4
  24. package/dist/domain/port/EntryRepository.d.ts.map +1 -1
  25. package/dist/domain/port/HandlerRegistry.d.ts +1 -1
  26. package/dist/domain/port/IdGenerator.d.ts +3 -4
  27. package/dist/domain/port/IdGenerator.d.ts.map +1 -1
  28. package/dist/domain/port/IdGenerator.js.map +1 -1
  29. package/dist/domain/port/MantleStorageAdapter.d.ts +23 -0
  30. package/dist/domain/port/MantleStorageAdapter.d.ts.map +1 -0
  31. package/dist/domain/port/MantleStorageAdapter.js +2 -0
  32. package/dist/domain/port/MantleStorageAdapter.js.map +1 -0
  33. package/dist/domain/port/SiteConfigRepository.d.ts +12 -10
  34. package/dist/domain/port/SiteConfigRepository.d.ts.map +1 -1
  35. package/dist/domain/port/ViewQueryExecutor.d.ts +29 -0
  36. package/dist/domain/port/ViewQueryExecutor.d.ts.map +1 -0
  37. package/dist/domain/port/ViewQueryExecutor.js +2 -0
  38. package/dist/domain/port/ViewQueryExecutor.js.map +1 -0
  39. package/dist/domain/port/index.d.ts +5 -2
  40. package/dist/domain/port/index.d.ts.map +1 -1
  41. package/dist/domain/port/index.js.map +1 -1
  42. package/dist/domain/service/LocaleNegotiator.d.ts.map +1 -1
  43. package/dist/domain/service/LocaleNegotiator.js +2 -2
  44. package/dist/domain/service/LocaleNegotiator.js.map +1 -1
  45. package/dist/domain/service/RuntimePlanCompiler.d.ts +89 -0
  46. package/dist/domain/service/RuntimePlanCompiler.d.ts.map +1 -0
  47. package/dist/domain/service/RuntimePlanCompiler.js +230 -0
  48. package/dist/domain/service/RuntimePlanCompiler.js.map +1 -0
  49. package/dist/domain/service/TriggerIndex.d.ts +5 -3
  50. package/dist/domain/service/TriggerIndex.d.ts.map +1 -1
  51. package/dist/domain/service/TriggerIndex.js +16 -4
  52. package/dist/domain/service/TriggerIndex.js.map +1 -1
  53. package/dist/domain/service/ViewParamCoercer.d.ts +1 -1
  54. package/dist/domain/service/ViewParamCoercer.js +1 -1
  55. package/dist/domain/service/index.d.ts +1 -9
  56. package/dist/domain/service/index.d.ts.map +1 -1
  57. package/dist/domain/service/index.js +1 -9
  58. package/dist/domain/service/index.js.map +1 -1
  59. package/dist/domain/service/io/EntryDeleteGuard.js +1 -1
  60. package/dist/domain/service/io/EntryDeleteGuard.js.map +1 -1
  61. package/dist/domain/service/io/EntryWriteGuard.d.ts +2 -2
  62. package/dist/domain/service/io/EntryWriteGuard.d.ts.map +1 -1
  63. package/dist/domain/service/io/EntryWriteGuard.js +1 -3
  64. package/dist/domain/service/io/EntryWriteGuard.js.map +1 -1
  65. package/dist/index.d.ts +17 -12
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +10 -11
  68. package/dist/index.js.map +1 -1
  69. package/dist/infrastructure/boot/SqliteMigrationRunner.d.ts +10 -0
  70. package/dist/infrastructure/boot/SqliteMigrationRunner.d.ts.map +1 -0
  71. package/dist/infrastructure/boot/SqliteMigrationRunner.js +41 -0
  72. package/dist/infrastructure/boot/SqliteMigrationRunner.js.map +1 -0
  73. package/dist/infrastructure/boot/bootState.d.ts +9 -0
  74. package/dist/infrastructure/boot/bootState.d.ts.map +1 -0
  75. package/dist/infrastructure/boot/bootState.js +32 -0
  76. package/dist/infrastructure/boot/bootState.js.map +1 -0
  77. package/dist/infrastructure/boot/canonicalMigrations.d.ts +2 -0
  78. package/dist/infrastructure/boot/canonicalMigrations.d.ts.map +1 -1
  79. package/dist/infrastructure/boot/canonicalMigrations.js +166 -87
  80. package/dist/infrastructure/boot/canonicalMigrations.js.map +1 -1
  81. package/dist/infrastructure/boot/index.d.ts +3 -1
  82. package/dist/infrastructure/boot/index.d.ts.map +1 -1
  83. package/dist/infrastructure/boot/index.js +3 -1
  84. package/dist/infrastructure/boot/index.js.map +1 -1
  85. package/dist/infrastructure/http/createMantleRequestHandler.d.ts +12 -0
  86. package/dist/infrastructure/http/createMantleRequestHandler.d.ts.map +1 -0
  87. package/dist/infrastructure/http/createMantleRequestHandler.js +127 -0
  88. package/dist/infrastructure/http/createMantleRequestHandler.js.map +1 -0
  89. package/dist/infrastructure/mcp/McpJsonRpcDispatcher.d.ts +18 -23
  90. package/dist/infrastructure/mcp/McpJsonRpcDispatcher.d.ts.map +1 -1
  91. package/dist/infrastructure/mcp/McpJsonRpcDispatcher.js +64 -39
  92. package/dist/infrastructure/mcp/McpJsonRpcDispatcher.js.map +1 -1
  93. package/dist/infrastructure/mcp/McpToolCatalog.d.ts.map +1 -1
  94. package/dist/infrastructure/mcp/McpToolCatalog.js +84 -19
  95. package/dist/infrastructure/mcp/McpToolCatalog.js.map +1 -1
  96. package/dist/infrastructure/mcp/index.d.ts +1 -1
  97. package/dist/infrastructure/mcp/index.d.ts.map +1 -1
  98. package/dist/infrastructure/mcp/index.js.map +1 -1
  99. package/dist/infrastructure/persistence/DatabaseEntryRepository.d.ts +4 -8
  100. package/dist/infrastructure/persistence/DatabaseEntryRepository.d.ts.map +1 -1
  101. package/dist/infrastructure/persistence/DatabaseEntryRepository.js +75 -36
  102. package/dist/infrastructure/persistence/DatabaseEntryRepository.js.map +1 -1
  103. package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.d.ts.map +1 -1
  104. package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.js +39 -31
  105. package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.js.map +1 -1
  106. package/dist/infrastructure/persistence/Pagination.d.ts +3 -0
  107. package/dist/infrastructure/persistence/Pagination.d.ts.map +1 -1
  108. package/dist/infrastructure/persistence/Pagination.js +28 -0
  109. package/dist/infrastructure/persistence/Pagination.js.map +1 -1
  110. package/dist/infrastructure/storage/SqliteMantleStorageAdapter.d.ts +22 -0
  111. package/dist/infrastructure/storage/SqliteMantleStorageAdapter.d.ts.map +1 -0
  112. package/dist/infrastructure/storage/SqliteMantleStorageAdapter.js +86 -0
  113. package/dist/infrastructure/storage/SqliteMantleStorageAdapter.js.map +1 -0
  114. package/dist/{domain/service/ViewSqlCompiler.d.ts → infrastructure/storage/SqliteViewCompiler.d.ts} +9 -10
  115. package/dist/infrastructure/storage/SqliteViewCompiler.d.ts.map +1 -0
  116. package/dist/infrastructure/storage/SqliteViewCompiler.js +307 -0
  117. package/dist/infrastructure/storage/SqliteViewCompiler.js.map +1 -0
  118. package/dist/infrastructure/testing/IndexCoverageHarness.d.ts +2 -2
  119. package/dist/infrastructure/testing/IndexCoverageHarness.d.ts.map +1 -1
  120. package/dist/infrastructure/testing/IndexCoverageHarness.js +9 -8
  121. package/dist/infrastructure/testing/IndexCoverageHarness.js.map +1 -1
  122. package/dist/usecase/boot/ValidateBootUseCase.d.ts +16 -35
  123. package/dist/usecase/boot/ValidateBootUseCase.d.ts.map +1 -1
  124. package/dist/usecase/boot/ValidateBootUseCase.js +79 -254
  125. package/dist/usecase/boot/ValidateBootUseCase.js.map +1 -1
  126. package/dist/usecase/boot/index.d.ts +1 -1
  127. package/dist/usecase/boot/index.d.ts.map +1 -1
  128. package/dist/usecase/boot/index.js +1 -1
  129. package/dist/usecase/boot/index.js.map +1 -1
  130. package/dist/usecase/content/ArchiveUseCase.d.ts +1 -1
  131. package/dist/usecase/content/ArchiveUseCase.js +1 -1
  132. package/dist/usecase/content/CreateDraftUseCase.d.ts +3 -3
  133. package/dist/usecase/content/CreateDraftUseCase.d.ts.map +1 -1
  134. package/dist/usecase/content/CreateDraftUseCase.js +5 -5
  135. package/dist/usecase/content/CreateDraftUseCase.js.map +1 -1
  136. package/dist/usecase/content/DeleteEntryUseCase.d.ts +3 -5
  137. package/dist/usecase/content/DeleteEntryUseCase.d.ts.map +1 -1
  138. package/dist/usecase/content/DeleteEntryUseCase.js +3 -5
  139. package/dist/usecase/content/DeleteEntryUseCase.js.map +1 -1
  140. package/dist/usecase/content/ListEntriesUseCase.d.ts.map +1 -1
  141. package/dist/usecase/content/ListEntriesUseCase.js +30 -3
  142. package/dist/usecase/content/ListEntriesUseCase.js.map +1 -1
  143. package/dist/usecase/content/RequestPublishUseCase.d.ts +4 -12
  144. package/dist/usecase/content/RequestPublishUseCase.d.ts.map +1 -1
  145. package/dist/usecase/content/RequestPublishUseCase.js +3 -21
  146. package/dist/usecase/content/RequestPublishUseCase.js.map +1 -1
  147. package/dist/usecase/content/UpdateDraftUseCase.d.ts +2 -2
  148. package/dist/usecase/content/UpdateDraftUseCase.d.ts.map +1 -1
  149. package/dist/usecase/content/UpdateDraftUseCase.js +4 -4
  150. package/dist/usecase/content/UpdateDraftUseCase.js.map +1 -1
  151. package/dist/usecase/content/diagnostics.d.ts +1 -0
  152. package/dist/usecase/content/diagnostics.d.ts.map +1 -1
  153. package/dist/usecase/content/diagnostics.js +10 -0
  154. package/dist/usecase/content/diagnostics.js.map +1 -1
  155. package/dist/usecase/dto/content/index.d.ts +10 -1
  156. package/dist/usecase/dto/content/index.d.ts.map +1 -1
  157. package/dist/usecase/dto/index.d.ts +0 -1
  158. package/dist/usecase/dto/index.d.ts.map +1 -1
  159. package/dist/usecase/dto/index.js +0 -1
  160. package/dist/usecase/dto/index.js.map +1 -1
  161. package/dist/usecase/dto/view/ExecuteViewRequest.d.ts +2 -2
  162. package/dist/usecase/dto/view/ExecuteViewRequest.d.ts.map +1 -1
  163. package/dist/usecase/index.d.ts +0 -1
  164. package/dist/usecase/index.d.ts.map +1 -1
  165. package/dist/usecase/index.js +0 -1
  166. package/dist/usecase/index.js.map +1 -1
  167. package/dist/usecase/media/diagnostics.js +1 -1
  168. package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts +3 -3
  169. package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts.map +1 -1
  170. package/dist/usecase/procedure/InvokeBuiltinUseCase.js +2 -2
  171. package/dist/usecase/procedure/InvokeBuiltinUseCase.js.map +1 -1
  172. package/dist/usecase/site/UpdateSiteSettingsUseCase.d.ts +3 -2
  173. package/dist/usecase/site/UpdateSiteSettingsUseCase.d.ts.map +1 -1
  174. package/dist/usecase/site/UpdateSiteSettingsUseCase.js +35 -2
  175. package/dist/usecase/site/UpdateSiteSettingsUseCase.js.map +1 -1
  176. package/dist/usecase/view/ExecuteViewUseCase.d.ts +8 -16
  177. package/dist/usecase/view/ExecuteViewUseCase.d.ts.map +1 -1
  178. package/dist/usecase/view/ExecuteViewUseCase.js +23 -94
  179. package/dist/usecase/view/ExecuteViewUseCase.js.map +1 -1
  180. package/dist/usecase/view/index.d.ts +2 -1
  181. package/dist/usecase/view/index.d.ts.map +1 -1
  182. package/dist/usecase/view/index.js.map +1 -1
  183. package/package.json +4 -4
  184. package/dist/domain/model/SeoMeta.d.ts +0 -47
  185. package/dist/domain/model/SeoMeta.d.ts.map +0 -1
  186. package/dist/domain/model/SeoMeta.js +0 -2
  187. package/dist/domain/model/SeoMeta.js.map +0 -1
  188. package/dist/domain/model/TemplateRegistry.d.ts +0 -50
  189. package/dist/domain/model/TemplateRegistry.d.ts.map +0 -1
  190. package/dist/domain/model/TemplateRegistry.js +0 -17
  191. package/dist/domain/model/TemplateRegistry.js.map +0 -1
  192. package/dist/domain/port/AssetServer.d.ts +0 -21
  193. package/dist/domain/port/AssetServer.d.ts.map +0 -1
  194. package/dist/domain/port/AssetServer.js +0 -2
  195. package/dist/domain/port/AssetServer.js.map +0 -1
  196. package/dist/domain/service/AbsoluteUrl.d.ts +0 -6
  197. package/dist/domain/service/AbsoluteUrl.d.ts.map +0 -1
  198. package/dist/domain/service/AbsoluteUrl.js +0 -33
  199. package/dist/domain/service/AbsoluteUrl.js.map +0 -1
  200. package/dist/domain/service/HtmlEscaping.d.ts +0 -2
  201. package/dist/domain/service/HtmlEscaping.d.ts.map +0 -1
  202. package/dist/domain/service/HtmlEscaping.js +0 -9
  203. package/dist/domain/service/HtmlEscaping.js.map +0 -1
  204. package/dist/domain/service/HtmlRenderer.d.ts +0 -36
  205. package/dist/domain/service/HtmlRenderer.d.ts.map +0 -1
  206. package/dist/domain/service/HtmlRenderer.js +0 -73
  207. package/dist/domain/service/HtmlRenderer.js.map +0 -1
  208. package/dist/domain/service/MarkdownSerializer.d.ts +0 -48
  209. package/dist/domain/service/MarkdownSerializer.d.ts.map +0 -1
  210. package/dist/domain/service/MarkdownSerializer.js +0 -109
  211. package/dist/domain/service/MarkdownSerializer.js.map +0 -1
  212. package/dist/domain/service/McpToolNaming.d.ts +0 -31
  213. package/dist/domain/service/McpToolNaming.d.ts.map +0 -1
  214. package/dist/domain/service/McpToolNaming.js +0 -48
  215. package/dist/domain/service/McpToolNaming.js.map +0 -1
  216. package/dist/domain/service/PreviewBanner.d.ts +0 -10
  217. package/dist/domain/service/PreviewBanner.d.ts.map +0 -1
  218. package/dist/domain/service/PreviewBanner.js +0 -30
  219. package/dist/domain/service/PreviewBanner.js.map +0 -1
  220. package/dist/domain/service/PublicPathResolver.d.ts +0 -46
  221. package/dist/domain/service/PublicPathResolver.d.ts.map +0 -1
  222. package/dist/domain/service/PublicPathResolver.js +0 -36
  223. package/dist/domain/service/PublicPathResolver.js.map +0 -1
  224. package/dist/domain/service/SeoMetaComposer.d.ts +0 -47
  225. package/dist/domain/service/SeoMetaComposer.d.ts.map +0 -1
  226. package/dist/domain/service/SeoMetaComposer.js +0 -164
  227. package/dist/domain/service/SeoMetaComposer.js.map +0 -1
  228. package/dist/domain/service/SitemapSerializer.d.ts +0 -19
  229. package/dist/domain/service/SitemapSerializer.d.ts.map +0 -1
  230. package/dist/domain/service/SitemapSerializer.js +0 -27
  231. package/dist/domain/service/SitemapSerializer.js.map +0 -1
  232. package/dist/domain/service/ViewSqlCompiler.d.ts.map +0 -1
  233. package/dist/domain/service/ViewSqlCompiler.js +0 -198
  234. package/dist/domain/service/ViewSqlCompiler.js.map +0 -1
  235. package/dist/domain/service/io/MediaAssetReferences.d.ts +0 -13
  236. package/dist/domain/service/io/MediaAssetReferences.d.ts.map +0 -1
  237. package/dist/domain/service/io/MediaAssetReferences.js +0 -48
  238. package/dist/domain/service/io/MediaAssetReferences.js.map +0 -1
  239. package/dist/runtime.d.ts +0 -141
  240. package/dist/runtime.d.ts.map +0 -1
  241. package/dist/runtime.js +0 -177
  242. package/dist/runtime.js.map +0 -1
  243. package/dist/usecase/dto/render/ComposeEntrySeoMetaRequest.d.ts +0 -14
  244. package/dist/usecase/dto/render/ComposeEntrySeoMetaRequest.d.ts.map +0 -1
  245. package/dist/usecase/dto/render/ComposeEntrySeoMetaRequest.js +0 -2
  246. package/dist/usecase/dto/render/ComposeEntrySeoMetaRequest.js.map +0 -1
  247. package/dist/usecase/dto/render/ComposeLlmsTxtRequest.d.ts +0 -8
  248. package/dist/usecase/dto/render/ComposeLlmsTxtRequest.d.ts.map +0 -1
  249. package/dist/usecase/dto/render/ComposeLlmsTxtRequest.js +0 -2
  250. package/dist/usecase/dto/render/ComposeLlmsTxtRequest.js.map +0 -1
  251. package/dist/usecase/dto/render/ComposeSitemapRequest.d.ts +0 -11
  252. package/dist/usecase/dto/render/ComposeSitemapRequest.d.ts.map +0 -1
  253. package/dist/usecase/dto/render/ComposeSitemapRequest.js +0 -2
  254. package/dist/usecase/dto/render/ComposeSitemapRequest.js.map +0 -1
  255. package/dist/usecase/dto/render/PreviewEntryRequest.d.ts +0 -13
  256. package/dist/usecase/dto/render/PreviewEntryRequest.d.ts.map +0 -1
  257. package/dist/usecase/dto/render/PreviewEntryRequest.js +0 -2
  258. package/dist/usecase/dto/render/PreviewEntryRequest.js.map +0 -1
  259. package/dist/usecase/dto/render/RenderEntryLiveRequest.d.ts +0 -14
  260. package/dist/usecase/dto/render/RenderEntryLiveRequest.d.ts.map +0 -1
  261. package/dist/usecase/dto/render/RenderEntryLiveRequest.js +0 -2
  262. package/dist/usecase/dto/render/RenderEntryLiveRequest.js.map +0 -1
  263. package/dist/usecase/dto/render/RenderListLiveRequest.d.ts +0 -11
  264. package/dist/usecase/dto/render/RenderListLiveRequest.d.ts.map +0 -1
  265. package/dist/usecase/dto/render/RenderListLiveRequest.js +0 -2
  266. package/dist/usecase/dto/render/RenderListLiveRequest.js.map +0 -1
  267. package/dist/usecase/dto/render/index.d.ts +0 -7
  268. package/dist/usecase/dto/render/index.d.ts.map +0 -1
  269. package/dist/usecase/dto/render/index.js +0 -7
  270. package/dist/usecase/dto/render/index.js.map +0 -1
  271. package/dist/usecase/render/ComposeEntrySeoMetaUseCase.d.ts +0 -28
  272. package/dist/usecase/render/ComposeEntrySeoMetaUseCase.d.ts.map +0 -1
  273. package/dist/usecase/render/ComposeEntrySeoMetaUseCase.js +0 -59
  274. package/dist/usecase/render/ComposeEntrySeoMetaUseCase.js.map +0 -1
  275. package/dist/usecase/render/ComposeLlmsTxtUseCase.d.ts +0 -16
  276. package/dist/usecase/render/ComposeLlmsTxtUseCase.d.ts.map +0 -1
  277. package/dist/usecase/render/ComposeLlmsTxtUseCase.js +0 -36
  278. package/dist/usecase/render/ComposeLlmsTxtUseCase.js.map +0 -1
  279. package/dist/usecase/render/ComposeSitemapUseCase.d.ts +0 -15
  280. package/dist/usecase/render/ComposeSitemapUseCase.d.ts.map +0 -1
  281. package/dist/usecase/render/ComposeSitemapUseCase.js +0 -28
  282. package/dist/usecase/render/ComposeSitemapUseCase.js.map +0 -1
  283. package/dist/usecase/render/PreviewEntryUseCase.d.ts +0 -28
  284. package/dist/usecase/render/PreviewEntryUseCase.d.ts.map +0 -1
  285. package/dist/usecase/render/PreviewEntryUseCase.js +0 -72
  286. package/dist/usecase/render/PreviewEntryUseCase.js.map +0 -1
  287. package/dist/usecase/render/RenderEntryLiveUseCase.d.ts +0 -36
  288. package/dist/usecase/render/RenderEntryLiveUseCase.d.ts.map +0 -1
  289. package/dist/usecase/render/RenderEntryLiveUseCase.js +0 -62
  290. package/dist/usecase/render/RenderEntryLiveUseCase.js.map +0 -1
  291. package/dist/usecase/render/RenderListLiveUseCase.d.ts +0 -25
  292. package/dist/usecase/render/RenderListLiveUseCase.d.ts.map +0 -1
  293. package/dist/usecase/render/RenderListLiveUseCase.js +0 -45
  294. package/dist/usecase/render/RenderListLiveUseCase.js.map +0 -1
  295. package/dist/usecase/render/index.d.ts +0 -7
  296. package/dist/usecase/render/index.d.ts.map +0 -1
  297. package/dist/usecase/render/index.js +0 -7
  298. package/dist/usecase/render/index.js.map +0 -1
@@ -1,285 +1,110 @@
1
- import { bootDiagnostic, checkLocaleAndTranslates, ValidateManifestsUseCase, } from "@aotter/mantle-spec";
2
- import { partitionManifests } from "@aotter/mantle-spec/partition";
3
- import { mcpToolNameSegment, RESERVED_MCP_GENERIC_TOOL_NAMES, RESERVED_MCP_TOOL_PREFIXES, } from "../../domain/service/McpToolNaming.js";
1
+ import { bootDiagnostic, checkSiteLocales, } from "@aotter/mantle-spec";
2
+ import { sealPreparedMantleRevision, } from "../../domain/model/PreparedMantleRevision.js";
3
+ export async function prepareDeployment(plan, storage, options = {}) {
4
+ const diagnostics = deploymentDiagnostics(plan, {
5
+ ...options,
6
+ nativeViewDialects: storage.nativeViewDialects ?? [],
7
+ });
8
+ if (diagnostics.length > 0)
9
+ throw new BootValidationError(diagnostics);
10
+ const prepared = await storage.prepare(plan);
11
+ return sealPreparedMantleRevision(plan, prepared, options.handlerNames);
12
+ }
13
+ export function assertDeploymentPlan(plan, options = {}) {
14
+ const diagnostics = deploymentDiagnostics(plan, options);
15
+ if (diagnostics.length > 0)
16
+ throw new BootValidationError(diagnostics);
17
+ }
18
+ /** Deployment checks only; all pure graph rules belong to `linkManifestSet`. */
4
19
  export class ValidateBootUseCase {
5
20
  execute(request) {
6
- const partitioned = partitionManifests([...request.manifests]);
7
- const proceduresByName = new Map();
8
- for (const p of partitioned.procedures)
9
- proceduresByName.set(p.metadata.name, p);
10
- const schemasByName = new Map();
11
- for (const s of partitioned.schemas)
12
- schemasByName.set(s.metadata.name, s);
13
- const diagnostics = [];
14
- const procedureCandidates = [...proceduresByName.keys()];
15
- const schemaCandidates = [...schemasByName.keys()];
16
- const handlerCandidates = request.registry.list();
17
- for (const diagnostic of ValidateManifestsUseCase.run({
18
- manifests: request.manifests,
19
- }).diagnostics) {
20
- if (isSchemaIndexDiagnostic(diagnostic)) {
21
- diagnostics.push({ ...diagnostic, phase: "boot" });
22
- }
23
- }
24
- // 1. Procedure handler refs + builtin schema cross-resolution.
25
- for (const p of partitioned.procedures) {
26
- const h = p.spec.handler;
27
- if (h.kind === "ref" && !request.registry.has(h.ref)) {
28
- diagnostics.push(bootDiagnostic({
29
- code: "HANDLER_NOT_REGISTERED",
30
- severity: "error",
31
- path: `manifest:Procedure/${p.metadata.name}#/spec/handler/ref`,
32
- value: h.ref,
33
- expected: `a function passed through the handlers option under key '${h.ref}'`,
34
- candidates: handlerCandidates,
35
- message: `Procedure '${p.metadata.name}' declares handler.ref '${h.ref}' but no handler is registered for that key. Wire it in your project's handlers map: { '${h.ref}': ... }.`,
36
- }));
37
- }
38
- if (h.kind === "builtin" && !schemasByName.has(h.schema)) {
39
- diagnostics.push(bootDiagnostic({
40
- code: "BUILTIN_HANDLER_SCHEMA_UNKNOWN",
41
- severity: "error",
42
- path: `manifest:Procedure/${p.metadata.name}#/spec/handler/schema`,
43
- value: h.schema,
44
- expected: "name of a declared Schema",
45
- candidates: schemaCandidates,
46
- message: `Procedure '${p.metadata.name}' (handler.kind: builtin) targets unknown Schema '${h.schema}'.`,
47
- }));
48
- }
49
- }
50
- // Guard Procedures are ordinary ref handlers, but the guard graph
51
- // is intentionally one level deep. Validate it again at boot so
52
- // programmatically-built manifests cannot bypass the spec CLI.
53
- for (const target of [...partitioned.procedures, ...partitioned.views]) {
54
- const guardName = target.spec.requires?.guard?.procedure;
55
- if (!guardName)
56
- continue;
57
- const path = `manifest:${target.kind}/${target.metadata.name}#/spec/requires/guard/procedure`;
58
- const guard = proceduresByName.get(guardName);
59
- if (!guard) {
60
- diagnostics.push(bootDiagnostic({
61
- code: "GUARD_PROCEDURE_UNKNOWN",
62
- severity: "error",
63
- path,
64
- value: guardName,
65
- expected: "name of a declared Procedure",
66
- candidates: procedureCandidates,
67
- message: `${target.kind} '${target.metadata.name}' references unknown guard Procedure '${guardName}'.`,
68
- }));
69
- continue;
70
- }
71
- if (target.kind === "Procedure" && target.metadata.name === guardName) {
72
- diagnostics.push(bootDiagnostic({
73
- code: "GUARD_SELF_REFERENCE",
74
- severity: "error",
75
- path,
76
- value: guardName,
77
- expected: "a different, unguarded Procedure",
78
- message: `Procedure '${target.metadata.name}' cannot guard itself.`,
79
- }));
80
- continue;
81
- }
82
- if (guard.spec.handler.kind !== "ref") {
83
- diagnostics.push(bootDiagnostic({
84
- code: "GUARD_PROCEDURE_BUILTIN",
85
- severity: "error",
86
- path,
87
- value: guardName,
88
- expected: "a Procedure with handler.kind: ref",
89
- message: `${target.kind} '${target.metadata.name}' uses '${guardName}' as a guard, but guard Procedures cannot use builtin handlers.`,
90
- }));
91
- }
92
- if (guard.spec.requires?.guard) {
93
- diagnostics.push(bootDiagnostic({
94
- code: "GUARD_CHAIN_NOT_ALLOWED",
95
- severity: "error",
96
- path,
97
- value: guardName,
98
- expected: "an unguarded Procedure",
99
- message: `${target.kind} '${target.metadata.name}' uses '${guardName}' as a guard, but guard chains are not allowed.`,
100
- }));
101
- }
102
- }
103
- // 2. Trigger.target.procedure resolves.
104
- for (const t of partitioned.triggers) {
105
- if (!proceduresByName.has(t.spec.target.procedure)) {
106
- diagnostics.push(bootDiagnostic({
107
- code: "TRIGGER_TARGET_PROCEDURE_UNKNOWN",
108
- severity: "error",
109
- path: `manifest:Trigger/${t.metadata.name}#/spec/target/procedure`,
110
- value: t.spec.target.procedure,
111
- expected: "name of a declared Procedure",
112
- candidates: procedureCandidates,
113
- message: `Trigger '${t.metadata.name}' targets unknown Procedure '${t.spec.target.procedure}'.`,
114
- }));
115
- }
116
- if (t.spec.source.kind === "lifecycle") {
117
- if (!schemasByName.has(t.spec.source.schema)) {
118
- diagnostics.push(bootDiagnostic({
119
- code: "LIFECYCLE_SCHEMA_UNKNOWN",
120
- severity: "error",
121
- path: `manifest:Trigger/${t.metadata.name}#/spec/source/schema`,
122
- value: t.spec.source.schema,
123
- expected: "name of a declared Schema",
124
- candidates: schemaCandidates,
125
- message: `Trigger '${t.metadata.name}' watches unknown Schema '${t.spec.source.schema}'.`,
126
- }));
127
- }
128
- }
129
- }
130
- // 3. HTTP trigger uniqueness + /api/ prefix.
131
- diagnostics.push(...checkHttpRouteCollisions(partitioned.triggers));
132
- diagnostics.push(...checkHttpRoutePrefix(partitioned.triggers));
133
- // 4. MCP tool-name collision (POC PR #48): per-collection tool
134
- // emission lowercases + kebab→snake the Schema name; two
135
- // Schemas that mangle to the same suffix would silently
136
- // overwrite each other in `tools/list`.
137
- diagnostics.push(...checkMcpToolNameCollisions(partitioned.schemas, partitioned.procedures));
138
- // 5. Locale + translates cross-Schema invariants.
139
- diagnostics.push(...checkLocaleAndTranslates({
140
- schemas: partitioned.schemas,
141
- phase: "boot",
21
+ const diagnostics = deploymentDiagnostics(request.plan, {
22
+ handlerNames: request.registry.list(),
23
+ reservedHttpPathPrefixes: request.reservedHttpPathPrefixes,
142
24
  siteLocales: request.siteLocales,
143
- }));
144
- if (diagnostics.length === 0)
145
- return { ok: true };
146
- return { ok: false, diagnostics };
25
+ });
26
+ return diagnostics.length === 0
27
+ ? { ok: true }
28
+ : { ok: false, diagnostics };
147
29
  }
148
- /** Validate; on failure, throw `BootValidationError`. */
149
30
  assert(request) {
150
31
  const result = this.execute(request);
151
32
  if (!result.ok)
152
33
  throw new BootValidationError(result.diagnostics);
153
34
  }
154
35
  }
155
- function isSchemaIndexDiagnostic(diagnostic) {
156
- return diagnostic.code === "SCHEMA_INDEX_INVALID" ||
157
- diagnostic.code === "SCHEMA_INDEX_FIELD_UNKNOWN" ||
158
- diagnostic.code === "UNIQUE_INDEX_FIELD_UNKNOWN";
159
- }
160
- function checkHttpRouteCollisions(triggers) {
161
- const seen = new Map();
162
- const out = [];
163
- for (const t of triggers) {
164
- if (t.spec.source.kind !== "http")
165
- continue;
166
- const key = `${t.spec.source.method} ${t.spec.source.path}`;
167
- const prior = seen.get(key);
168
- if (prior) {
169
- out.push(bootDiagnostic({
170
- code: "TRIGGER_PATH_COLLISION",
36
+ function deploymentDiagnostics(plan, options) {
37
+ const diagnostics = [];
38
+ if (options.handlerNames) {
39
+ const candidates = [...new Set(options.handlerNames)].sort();
40
+ const handlerNames = new Set(candidates);
41
+ for (const procedure of Object.values(plan.procedures)) {
42
+ const handler = procedure.manifest.spec.handler;
43
+ if (handler.kind !== "ref" || handlerNames.has(handler.ref))
44
+ continue;
45
+ const path = `manifest:Procedure/${procedure.name}#/spec/handler/ref`;
46
+ diagnostics.push(bootDiagnostic({
47
+ code: "HANDLER_NOT_REGISTERED",
171
48
  severity: "error",
172
- path: `manifest:Trigger/${t.metadata.name}#/spec/source`,
173
- value: key,
174
- expected: `unique (method, path) across http Triggers (also declared by '${prior}')`,
175
- message: `Trigger '${t.metadata.name}' shares route ${key} with Trigger '${prior}'.`,
49
+ path,
50
+ value: handler.ref,
51
+ expected: `a function passed through the handlers option under key '${handler.ref}'`,
52
+ candidates,
53
+ message: `Procedure '${procedure.name}' declares handler.ref '${handler.ref}' but no handler is registered for that key.`,
176
54
  }));
177
55
  }
178
- else {
179
- seen.set(key, t.metadata.name);
180
- }
181
56
  }
182
- return out;
183
- }
184
- function checkHttpRoutePrefix(triggers) {
185
- const out = [];
186
- for (const t of triggers) {
187
- if (t.spec.source.kind !== "http")
57
+ const prefixes = [...new Set(options.reservedHttpPathPrefixes ?? [])].sort();
58
+ for (const route of plan.httpRoutes) {
59
+ const prefix = prefixes.find((candidate) => candidate.length > 0 && hasPathPrefix(route.path, candidate));
60
+ if (!prefix)
188
61
  continue;
189
- const path = t.spec.source.path;
190
- if (!path.startsWith("/api/")) {
191
- out.push(bootDiagnostic({
192
- code: "TRIGGER_PATH_INVALID",
193
- severity: "error",
194
- path: `manifest:Trigger/${t.metadata.name}#/spec/source/path`,
195
- value: path,
196
- expected: "path starting with '/api/'",
197
- message: `Trigger '${t.metadata.name}' has path '${path}' — http Trigger ` +
198
- `paths MUST start with '/api/' so adapters can route public ` +
199
- `pages and Procedure endpoints without ambiguity.`,
200
- }));
201
- }
62
+ const path = `manifest:Trigger/${route.trigger}#/spec/source/path`;
63
+ diagnostics.push(bootDiagnostic({
64
+ code: "TRIGGER_PATH_INVALID",
65
+ severity: "error",
66
+ path,
67
+ value: route.path,
68
+ expected: `path outside selected reserved prefix '${prefix}'`,
69
+ message: `Trigger '${route.trigger}' has path '${route.path}', which is reserved under '${prefix}'.`,
70
+ }));
202
71
  }
203
- return out;
204
- }
205
- function checkMcpToolNameCollisions(schemas, procedures) {
206
- const seen = new Map();
207
- const out = [];
208
- for (const s of schemas) {
209
- const segment = mcpToolNameSegment(s.metadata.name);
210
- const prior = seen.get(segment);
211
- if (prior && !sameOwner(prior, "Schema", s.metadata.name)) {
212
- out.push(bootDiagnostic({
213
- code: "MCP_TOOL_NAME_COLLISION",
214
- severity: "error",
215
- path: `manifest:Schema/${s.metadata.name}#/metadata/name`,
216
- value: segment,
217
- expected: `Schema name unique after kebab→snake mangling (collides with '${prior.name}')`,
218
- message: `Schema '${s.metadata.name}' mangles to MCP tool suffix '${segment}', ` +
219
- `which already comes from Schema '${prior.name}'. Rename one of the Schemas ` +
220
- `(e.g. avoid mixing '${prior.name}' and '${s.metadata.name}') so per-collection ` +
221
- `MCP tool emission stays unambiguous.`,
222
- }));
223
- }
224
- else if (!prior) {
225
- seen.set(segment, { kind: "Schema", name: s.metadata.name });
226
- }
72
+ if (options.siteLocales) {
73
+ diagnostics.push(...checkSiteLocales({
74
+ schemas: Object.values(plan.schemas).map((schema) => schema.manifest),
75
+ phase: "boot",
76
+ siteLocales: options.siteLocales,
77
+ }));
227
78
  }
228
- // Procedure tool names (#281) share the catalog namespace. Reject
229
- // anything that collides with a generic tool, a reserved
230
- // content/record authoring or query_view_ prefix, a schema-mangled
231
- // segment, or another procedure. We don't gate by whether the
232
- // Procedure has an `mcp` Trigger today — names must stay portable
233
- // so an adopter can add the Trigger later without renaming.
234
- for (const p of procedures) {
235
- const name = mcpToolNameSegment(p.metadata.name);
236
- let conflict = null;
237
- if (RESERVED_MCP_GENERIC_TOOL_NAMES.has(name)) {
238
- conflict = `built-in MCP tool '${name}'`;
239
- }
240
- else if (RESERVED_MCP_TOOL_PREFIXES.some((pfx) => name.startsWith(pfx))) {
241
- const prefix = RESERVED_MCP_TOOL_PREFIXES.find((pfx) => name.startsWith(pfx));
242
- conflict = `reserved tool-name prefix '${prefix}' (used by Schema / View tools)`;
243
- }
244
- else {
245
- const prior = seen.get(name);
246
- if (prior && !sameOwner(prior, "Procedure", p.metadata.name)) {
247
- conflict = `${prior.kind} '${prior.name}'`;
248
- }
249
- }
250
- if (conflict) {
251
- out.push(bootDiagnostic({
252
- code: "MCP_TOOL_NAME_COLLISION",
79
+ if (options.nativeViewDialects) {
80
+ const supported = new Set(options.nativeViewDialects);
81
+ for (const view of Object.values(plan.views)) {
82
+ if (view.query.kind !== "native" || supported.has(view.query.dialect))
83
+ continue;
84
+ diagnostics.push(bootDiagnostic({
85
+ code: "VIEW_DIALECT_UNSUPPORTED",
253
86
  severity: "error",
254
- path: `manifest:Procedure/${p.metadata.name}#/metadata/name`,
255
- value: name,
256
- expected: `Procedure name unique after kebab→snake mangling (collides with ${conflict})`,
257
- message: `Procedure '${p.metadata.name}' mangles to MCP tool name '${name}', ` +
258
- `which collides with ${conflict}. Rename the Procedure so its MCP tool ` +
259
- `name does not shadow the existing tool surface.`,
87
+ path: `manifest:View/${view.name}#/spec/sql`,
88
+ value: view.query.dialect,
89
+ expected: supported.size > 0
90
+ ? `one of: ${[...supported].sort().join(", ")}`
91
+ : "a declarative View",
92
+ message: `Storage adapter does not support native View dialect '${view.query.dialect}'.`,
260
93
  }));
261
- continue;
262
94
  }
263
- seen.set(name, { kind: "Procedure", name: p.metadata.name });
264
95
  }
265
- return out;
96
+ return diagnostics;
266
97
  }
267
- function sameOwner(prior, candidateKind, candidateName) {
268
- return prior.kind === candidateKind && prior.name === candidateName;
98
+ function hasPathPrefix(path, prefix) {
99
+ return path === prefix || path.startsWith(`${prefix}/`) || path.startsWith(`${prefix}{`);
269
100
  }
270
- /**
271
- * Single Error wrapping every boot diagnostic. The runtime throws this
272
- * during `bootInit`; adapters surface it in their init logs.
273
- */
274
101
  export class BootValidationError extends Error {
275
102
  diagnostics;
276
103
  constructor(diagnostics) {
277
104
  const summary = diagnostics
278
- .map((d) => ` - ${d.code} (phase: ${d.phase}) at ${d.path}: ${d.message}`)
105
+ .map((diagnostic) => ` - ${diagnostic.code} (phase: ${diagnostic.phase}) at ${diagnostic.path}: ${diagnostic.message}`)
279
106
  .join("\n");
280
- super(`Runtime boot validation failed (${diagnostics.length} error(s)):\n${summary}\n\n` +
281
- `See ADR-0007 (boot-time fail-fast) for context. Diagnostics also ` +
282
- `available on the .diagnostics field of this error for programmatic handling.`);
107
+ super(`Runtime boot validation failed (${diagnostics.length} error(s)):\n${summary}`);
283
108
  this.diagnostics = diagnostics;
284
109
  this.name = "BootValidationError";
285
110
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateBootUseCase.js","sourceRoot":"","sources":["../../../src/usecase/boot/ValidateBootUseCase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ValidateBootUseCase.js","sourceRoot":"","sources":["../../../src/usecase/boot/ValidateBootUseCase.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { ValidateBootUseCase, BootValidationError, type ValidateBootRequest, type ValidateBootResponse, } from "./ValidateBootUseCase.js";
1
+ export { ValidateBootUseCase, BootValidationError, prepareDeployment, type DeploymentPreparationOptions, type ValidateBootRequest, type ValidateBootResponse, } from "./ValidateBootUseCase.js";
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/usecase/boot/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/usecase/boot/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,4BAA4B,EACjC,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,0BAA0B,CAAC"}
@@ -1,2 +1,2 @@
1
- export { ValidateBootUseCase, BootValidationError, } from "./ValidateBootUseCase.js";
1
+ export { ValidateBootUseCase, BootValidationError, prepareDeployment, } from "./ValidateBootUseCase.js";
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/usecase/boot/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,GAGpB,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/usecase/boot/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,GAIlB,MAAM,0BAA0B,CAAC"}
@@ -4,7 +4,7 @@ import type { Clock } from "../../domain/port/Clock.js";
4
4
  import type { EntryRepository } from "../../domain/port/EntryRepository.js";
5
5
  import type { ArchiveRequest } from "../dto/content/index.js";
6
6
  /**
7
- * `ArchiveUseCase` — flip an entry to `'archived'`. Per the simple-
7
+ * `ArchiveUseCase` — flip an entry to `'archived'`. Per the publishing-
8
8
  * lifecycle state machine, draft and published rows can both be
9
9
  * archived; archived rows go back to draft via `Unpublish`.
10
10
  */
@@ -1,7 +1,7 @@
1
1
  import { canTransition, DiagnosticError, } from "@aotter/mantle-spec";
2
2
  import { illegalTransitionDiagnostic, notFoundDiagnostic, withConflictDiagnostic, } from "./diagnostics.js";
3
3
  /**
4
- * `ArchiveUseCase` — flip an entry to `'archived'`. Per the simple-
4
+ * `ArchiveUseCase` — flip an entry to `'archived'`. Per the publishing-
5
5
  * lifecycle state machine, draft and published rows can both be
6
6
  * archived; archived rows go back to draft via `Unpublish`.
7
7
  */
@@ -3,11 +3,11 @@ import type { EntryRow } from "../../domain/model/EntryRow.js";
3
3
  import type { Clock } from "../../domain/port/Clock.js";
4
4
  import type { EntryRepository } from "../../domain/port/EntryRepository.js";
5
5
  import type { IdGenerator } from "../../domain/port/IdGenerator.js";
6
- import type { SiteConfigRepository } from "../../domain/port/SiteConfigRepository.js";
6
+ import type { LocalePolicyReader } from "../../domain/port/SiteConfigRepository.js";
7
7
  import type { CreateDraftRequest } from "../dto/content/index.js";
8
8
  /**
9
9
  * `CreateDraftUseCase` — create a draft for content lifecycles, or a
10
- * live row for `lifecycle: none` operational records.
10
+ * live row for `lifecycle: operational` records.
11
11
  */
12
12
  export declare class CreateDraftUseCase {
13
13
  private readonly entries;
@@ -16,7 +16,7 @@ export declare class CreateDraftUseCase {
16
16
  private readonly idgen;
17
17
  private readonly siteConfig?;
18
18
  private readonly validator;
19
- constructor(entries: EntryRepository, schemas: ReadonlyMap<string, SchemaManifest>, clock: Clock, idgen: IdGenerator, siteConfig?: SiteConfigRepository | undefined, validator?: EntryDataValidator);
19
+ constructor(entries: EntryRepository, schemas: ReadonlyMap<string, SchemaManifest>, clock: Clock, idgen: IdGenerator, siteConfig?: LocalePolicyReader | undefined, validator?: EntryDataValidator);
20
20
  execute(request: CreateDraftRequest): Promise<EntryRow>;
21
21
  }
22
22
  //# sourceMappingURL=CreateDraftUseCase.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreateDraftUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/content/CreateDraftUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAElB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,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;AAEtF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAQlE;;;GAGG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,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,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EAC5C,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,oBAAoB,YAAA,EACjC,SAAS,qBAA2B;IAGjD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC;CAsC9D"}
1
+ {"version":3,"file":"CreateDraftUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/content/CreateDraftUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAElB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,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;AAEpF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAQlE;;;GAGG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,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,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EAC5C,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,WAAW,EAClB,UAAU,CAAC,EAAE,kBAAkB,YAAA,EAC/B,SAAS,qBAA2B;IAGjD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC;CAsC9D"}
@@ -5,7 +5,7 @@ import { assertEntryWritable } from "../../domain/service/io/EntryWriteGuard.js"
5
5
  import { authoringContext } from "./AuthoringContext.js";
6
6
  /**
7
7
  * `CreateDraftUseCase` — create a draft for content lifecycles, or a
8
- * live row for `lifecycle: none` operational records.
8
+ * live row for `lifecycle: operational` records.
9
9
  */
10
10
  export class CreateDraftUseCase {
11
11
  entries;
@@ -40,15 +40,15 @@ export class CreateDraftUseCase {
40
40
  data,
41
41
  validator: this.validator,
42
42
  siteConfig: this.siteConfig,
43
- // Real drafts save incomplete; lifecycle:none records are live immediately.
44
- partial: lifecycle !== "none",
43
+ // Real drafts save incomplete; operational records are live immediately.
44
+ partial: lifecycle !== "operational",
45
45
  });
46
46
  return withConflictDiagnostic(opPath, () => this.entries.create({
47
47
  id,
48
48
  collection: request.collection,
49
- // Operational records (lifecycle: none) have no publish step —
49
+ // Operational records have no publish step —
50
50
  // they are live the moment they exist.
51
- status: lifecycle === "none" ? "published" : "draft",
51
+ status: lifecycle === "operational" ? "published" : "draft",
52
52
  data,
53
53
  authorId: request.authorId,
54
54
  now,
@@ -1 +1 @@
1
- {"version":3,"file":"CreateDraftUseCase.js","sourceRoot":"","sources":["../../../src/usecase/content/CreateDraftUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GAEjB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAE3E,OAAO,EACL,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;;GAGG;AACH,MAAM,OAAO,kBAAkB;IAEV;IACA;IACA;IACA;IACA;IACA;IANnB,YACmB,OAAwB,EACxB,OAA4C,EAC5C,KAAY,EACZ,KAAkB,EAClB,UAAiC,EACjC,YAAY,IAAI,kBAAkB,EAAE;QALpC,YAAO,GAAP,OAAO,CAAiB;QACxB,YAAO,GAAP,OAAO,CAAqC;QAC5C,UAAK,GAAL,KAAK,CAAO;QACZ,UAAK,GAAL,KAAK,CAAa;QAClB,eAAU,GAAV,UAAU,CAAuB;QACjC,cAAS,GAAT,SAAS,CAA2B;IACpD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAA2B;QACvC,MAAM,MAAM,GAAG,uBAAuB,OAAO,CAAC,UAAU,EAAE,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,eAAe,CACvB,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAC9E,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,gBAAgB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;QAClF,MAAM,mBAAmB,CAAC;YACxB,MAAM;YACN,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,IAAI;YACJ,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,4EAA4E;YAC5E,OAAO,EAAE,SAAS,KAAK,MAAM;SAC9B,CAAC,CAAC;QACH,OAAO,sBAAsB,CAAC,MAAM,EAAE,GAAG,EAAE,CACzC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAClB,EAAE;YACF,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,+DAA+D;YAC/D,uCAAuC;YACvC,MAAM,EAAE,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO;YACpD,IAAI;YACJ,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,GAAG;YACH,WAAW,EAAE,GAAG;YAChB,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"CreateDraftUseCase.js","sourceRoot":"","sources":["../../../src/usecase/content/CreateDraftUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GAEjB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAE3E,OAAO,EACL,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;;GAGG;AACH,MAAM,OAAO,kBAAkB;IAEV;IACA;IACA;IACA;IACA;IACA;IANnB,YACmB,OAAwB,EACxB,OAA4C,EAC5C,KAAY,EACZ,KAAkB,EAClB,UAA+B,EAC/B,YAAY,IAAI,kBAAkB,EAAE;QALpC,YAAO,GAAP,OAAO,CAAiB;QACxB,YAAO,GAAP,OAAO,CAAqC;QAC5C,UAAK,GAAL,KAAK,CAAO;QACZ,UAAK,GAAL,KAAK,CAAa;QAClB,eAAU,GAAV,UAAU,CAAqB;QAC/B,cAAS,GAAT,SAAS,CAA2B;IACpD,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAA2B;QACvC,MAAM,MAAM,GAAG,uBAAuB,OAAO,CAAC,UAAU,EAAE,CAAC;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,eAAe,CACvB,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAC9E,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,gBAAgB,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;QAClF,MAAM,mBAAmB,CAAC;YACxB,MAAM;YACN,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,IAAI;YACJ,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,yEAAyE;YACzE,OAAO,EAAE,SAAS,KAAK,aAAa;SACrC,CAAC,CAAC;QACH,OAAO,sBAAsB,CAAC,MAAM,EAAE,GAAG,EAAE,CACzC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAClB,EAAE;YACF,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,6CAA6C;YAC7C,uCAAuC;YACvC,MAAM,EAAE,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO;YAC3D,IAAI;YACJ,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,GAAG;YACH,WAAW,EAAE,GAAG;YAChB,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
@@ -2,12 +2,10 @@ import { type SchemaManifest } from "@aotter/mantle-spec";
2
2
  import type { EntryRepository } from "../../domain/port/EntryRepository.js";
3
3
  import type { DeleteEntryRequest, DeleteEntryResponse } from "../dto/content/index.js";
4
4
  /**
5
- * `DeleteEntryUseCase` — permanently delete an entry + cascade
6
- * revisions / approvals. Distinct from `Archive` — archive is a
7
- * status flip, delete removes rows.
5
+ * `DeleteEntryUseCase` — permanently delete an entry. Distinct from
6
+ * `Archive`: archive is a status flip, delete removes the row.
8
7
  *
9
- * The chokepoint enforces the cascade via `DatabaseDriver.batch`. We
10
- * still read the row first so missing ids surface as a structured
8
+ * We read the row first so missing ids surface as a structured
11
9
  * `NOT_FOUND` (matching every other content-op use case) instead of
12
10
  * a silent `{ removed: false }` — callers building UIs need the
13
11
  * diagnostic to distinguish "you deleted nothing" from "you tried to
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteEntryUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/content/DeleteEntryUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AAGjC;;;;;;;;;;;GAWG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC;IAGzD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAyBzE"}
1
+ {"version":3,"file":"DeleteEntryUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/content/DeleteEntryUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,yBAAyB,CAAC;AAGjC;;;;;;;;;GASG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC;IAGzD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAyBzE"}
@@ -2,12 +2,10 @@ import { DiagnosticError } from "@aotter/mantle-spec";
2
2
  import { assertEntryDeletable } from "../../domain/service/io/EntryDeleteGuard.js";
3
3
  import { notFoundDiagnostic, withConflictDiagnostic } from "./diagnostics.js";
4
4
  /**
5
- * `DeleteEntryUseCase` — permanently delete an entry + cascade
6
- * revisions / approvals. Distinct from `Archive` — archive is a
7
- * status flip, delete removes rows.
5
+ * `DeleteEntryUseCase` — permanently delete an entry. Distinct from
6
+ * `Archive`: archive is a status flip, delete removes the row.
8
7
  *
9
- * The chokepoint enforces the cascade via `DatabaseDriver.batch`. We
10
- * still read the row first so missing ids surface as a structured
8
+ * We read the row first so missing ids surface as a structured
11
9
  * `NOT_FOUND` (matching every other content-op use case) instead of
12
10
  * a silent `{ removed: false }` — callers building UIs need the
13
11
  * diagnostic to distinguish "you deleted nothing" from "you tried to
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteEntryUseCase.js","sourceRoot":"","sources":["../../../src/usecase/content/DeleteEntryUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAuB,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAKnF,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,kBAAkB;IAEV;IACA;IAFnB,YACmB,OAAwB,EACxB,OAA4C;QAD5C,YAAO,GAAP,OAAO,CAAiB;QACxB,YAAO,GAAP,OAAO,CAAqC;IAC5D,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAA2B;QACvC,MAAM,MAAM,GAAG,uBAAuB,OAAO,CAAC,EAAE,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,eAAe,CACvB,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,IAAI,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC,CAC1E,CAAC;QACJ,CAAC;QACD,oBAAoB,CAAC;YACnB,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC7C,kBAAkB,EAAE,OAAO,CAAC,UAAU;YACtC,MAAM;SACP,CAAC,CAAC;QACH,OAAO,sBAAsB,CAAC,MAAM,EAAE,GAAG,EAAE,CACzC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAClB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,cAAc,EAAE,QAAQ,CAAC,MAAM;YAC/B,eAAe,EAAE,QAAQ,CAAC,OAAO;YACjC,WAAW,EAAE,OAAO,CAAC,GAAG;YACxB,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"DeleteEntryUseCase.js","sourceRoot":"","sources":["../../../src/usecase/content/DeleteEntryUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAuB,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAKnF,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE9E;;;;;;;;;GASG;AACH,MAAM,OAAO,kBAAkB;IAEV;IACA;IAFnB,YACmB,OAAwB,EACxB,OAA4C;QAD5C,YAAO,GAAP,OAAO,CAAiB;QACxB,YAAO,GAAP,OAAO,CAAqC;IAC5D,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAA2B;QACvC,MAAM,MAAM,GAAG,uBAAuB,OAAO,CAAC,EAAE,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,eAAe,CACvB,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,IAAI,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC,CAC1E,CAAC;QACJ,CAAC;QACD,oBAAoB,CAAC;YACnB,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC7C,kBAAkB,EAAE,OAAO,CAAC,UAAU;YACtC,MAAM;SACP,CAAC,CAAC;QACH,OAAO,sBAAsB,CAAC,MAAM,EAAE,GAAG,EAAE,CACzC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAClB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,cAAc,EAAE,QAAQ,CAAC,MAAM;YAC/B,eAAe,EAAE,QAAQ,CAAC,OAAO;YACjC,WAAW,EAAE,OAAO,CAAC,GAAG;YACxB,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CACH,CAAC;IACJ,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"ListEntriesUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/content/ListEntriesUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,OAAO,KAAK,EACV,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AAGjC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC;IAGzD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,QAAQ,EAAE,CAAC;IAKlE,WAAW,CACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC;CAe9B"}
1
+ {"version":3,"file":"ListEntriesUseCase.d.ts","sourceRoot":"","sources":["../../../src/usecase/content/ListEntriesUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,OAAO,KAAK,EACV,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AAMjC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC;IAGzD,OAAO,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,QAAQ,EAAE,CAAC;IAKlE,WAAW,CACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC;CA6B9B"}