@aotter/mantle-runtime 0.0.11-alpha.73 → 0.1.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/domain/model/EntryRow.d.ts +2 -2
- package/dist/domain/model/HandlerContext.d.ts +2 -2
- package/dist/domain/model/HandlerContext.d.ts.map +1 -1
- package/dist/domain/model/TemplateRegistry.d.ts +3 -3
- package/dist/domain/port/AssetServer.d.ts +1 -1
- package/dist/domain/port/DatabaseDriver.d.ts +1 -1
- package/dist/domain/port/EntryReader.d.ts +1 -1
- package/dist/domain/port/EntryReader.d.ts.map +1 -1
- package/dist/domain/port/EntryRepository.d.ts +19 -4
- package/dist/domain/port/EntryRepository.d.ts.map +1 -1
- package/dist/domain/port/IdGenerator.d.ts +2 -2
- package/dist/domain/port/SiteConfigRepository.d.ts +2 -2
- package/dist/domain/port/index.d.ts +1 -3
- package/dist/domain/port/index.d.ts.map +1 -1
- package/dist/domain/port/index.js.map +1 -1
- package/dist/domain/service/HtmlRenderer.d.ts +2 -0
- package/dist/domain/service/HtmlRenderer.d.ts.map +1 -1
- package/dist/domain/service/HtmlRenderer.js +4 -9
- package/dist/domain/service/HtmlRenderer.js.map +1 -1
- package/dist/domain/service/PublicPathResolver.d.ts +5 -0
- package/dist/domain/service/PublicPathResolver.d.ts.map +1 -1
- package/dist/domain/service/PublicPathResolver.js +13 -1
- package/dist/domain/service/PublicPathResolver.js.map +1 -1
- package/dist/domain/service/TriggerIndex.d.ts +2 -3
- package/dist/domain/service/TriggerIndex.d.ts.map +1 -1
- package/dist/domain/service/TriggerIndex.js +2 -3
- package/dist/domain/service/TriggerIndex.js.map +1 -1
- package/dist/domain/service/ViewParamCoercer.d.ts +1 -1
- package/dist/domain/service/ViewParamCoercer.js +1 -1
- package/dist/domain/service/ViewSqlCompiler.d.ts +5 -2
- package/dist/domain/service/ViewSqlCompiler.d.ts.map +1 -1
- package/dist/domain/service/ViewSqlCompiler.js +22 -25
- package/dist/domain/service/ViewSqlCompiler.js.map +1 -1
- package/dist/domain/service/index.d.ts +0 -1
- package/dist/domain/service/index.d.ts.map +1 -1
- package/dist/domain/service/index.js +0 -1
- package/dist/domain/service/index.js.map +1 -1
- package/dist/domain/service/io/EntryDeleteGuard.js +1 -1
- package/dist/domain/service/io/EntryDeleteGuard.js.map +1 -1
- package/dist/domain/service/io/EntryWriteGuard.d.ts +2 -1
- package/dist/domain/service/io/EntryWriteGuard.d.ts.map +1 -1
- package/dist/domain/service/io/EntryWriteGuard.js +2 -3
- package/dist/domain/service/io/EntryWriteGuard.js.map +1 -1
- package/dist/domain/service/io/JoinedEntryReader.d.ts +2 -3
- package/dist/domain/service/io/JoinedEntryReader.d.ts.map +1 -1
- package/dist/domain/service/io/JoinedEntryReader.js +2 -3
- package/dist/domain/service/io/JoinedEntryReader.js.map +1 -1
- package/dist/index.d.ts +2 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -2
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/boot/canonicalMigrations.d.ts.map +1 -1
- package/dist/infrastructure/boot/canonicalMigrations.js +16 -27
- package/dist/infrastructure/boot/canonicalMigrations.js.map +1 -1
- package/dist/infrastructure/index.d.ts +0 -1
- package/dist/infrastructure/index.d.ts.map +1 -1
- package/dist/infrastructure/index.js +0 -1
- package/dist/infrastructure/index.js.map +1 -1
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.d.ts +5 -21
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.d.ts.map +1 -1
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.js +24 -31
- package/dist/infrastructure/mcp/McpJsonRpcDispatcher.js.map +1 -1
- package/dist/infrastructure/mcp/McpToolCatalog.d.ts.map +1 -1
- package/dist/infrastructure/mcp/McpToolCatalog.js +13 -9
- package/dist/infrastructure/mcp/McpToolCatalog.js.map +1 -1
- package/dist/infrastructure/mcp/index.d.ts +1 -1
- package/dist/infrastructure/mcp/index.d.ts.map +1 -1
- package/dist/infrastructure/mcp/index.js.map +1 -1
- package/dist/infrastructure/persistence/DatabaseEntryRepository.d.ts +3 -7
- package/dist/infrastructure/persistence/DatabaseEntryRepository.d.ts.map +1 -1
- package/dist/infrastructure/persistence/DatabaseEntryRepository.js +79 -34
- package/dist/infrastructure/persistence/DatabaseEntryRepository.js.map +1 -1
- package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.d.ts.map +1 -1
- package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.js +20 -26
- package/dist/infrastructure/persistence/DatabaseSiteConfigRepository.js.map +1 -1
- package/dist/infrastructure/persistence/Pagination.d.ts +5 -0
- package/dist/infrastructure/persistence/Pagination.d.ts.map +1 -1
- package/dist/infrastructure/persistence/Pagination.js +49 -0
- package/dist/infrastructure/persistence/Pagination.js.map +1 -1
- package/dist/infrastructure/testing/IndexCoverageHarness.js +1 -1
- package/dist/infrastructure/testing/IndexCoverageHarness.js.map +1 -1
- package/dist/runtime.d.ts +5 -12
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +10 -13
- package/dist/runtime.js.map +1 -1
- package/dist/usecase/boot/ValidateBootUseCase.d.ts +5 -1
- package/dist/usecase/boot/ValidateBootUseCase.d.ts.map +1 -1
- package/dist/usecase/boot/ValidateBootUseCase.js +31 -11
- package/dist/usecase/boot/ValidateBootUseCase.js.map +1 -1
- package/dist/usecase/content/ArchiveUseCase.d.ts +2 -4
- package/dist/usecase/content/ArchiveUseCase.d.ts.map +1 -1
- package/dist/usecase/content/ArchiveUseCase.js +2 -6
- package/dist/usecase/content/ArchiveUseCase.js.map +1 -1
- package/dist/usecase/content/CreateDraftUseCase.d.ts +4 -3
- package/dist/usecase/content/CreateDraftUseCase.d.ts.map +1 -1
- package/dist/usecase/content/CreateDraftUseCase.js +10 -7
- package/dist/usecase/content/CreateDraftUseCase.js.map +1 -1
- package/dist/usecase/content/DeleteEntryUseCase.d.ts +3 -5
- package/dist/usecase/content/DeleteEntryUseCase.d.ts.map +1 -1
- package/dist/usecase/content/DeleteEntryUseCase.js +3 -5
- package/dist/usecase/content/DeleteEntryUseCase.js.map +1 -1
- package/dist/usecase/content/ListEntriesUseCase.d.ts.map +1 -1
- package/dist/usecase/content/ListEntriesUseCase.js +30 -3
- package/dist/usecase/content/ListEntriesUseCase.js.map +1 -1
- package/dist/usecase/content/RequestPublishUseCase.d.ts +5 -14
- package/dist/usecase/content/RequestPublishUseCase.d.ts.map +1 -1
- package/dist/usecase/content/RequestPublishUseCase.js +7 -26
- package/dist/usecase/content/RequestPublishUseCase.js.map +1 -1
- package/dist/usecase/content/UnpublishUseCase.d.ts +1 -3
- package/dist/usecase/content/UnpublishUseCase.d.ts.map +1 -1
- package/dist/usecase/content/UnpublishUseCase.js +1 -5
- package/dist/usecase/content/UnpublishUseCase.js.map +1 -1
- package/dist/usecase/content/UpdateDraftUseCase.d.ts +3 -2
- package/dist/usecase/content/UpdateDraftUseCase.d.ts.map +1 -1
- package/dist/usecase/content/UpdateDraftUseCase.js +9 -6
- package/dist/usecase/content/UpdateDraftUseCase.js.map +1 -1
- package/dist/usecase/content/diagnostics.d.ts +1 -0
- package/dist/usecase/content/diagnostics.d.ts.map +1 -1
- package/dist/usecase/content/diagnostics.js +10 -0
- package/dist/usecase/content/diagnostics.js.map +1 -1
- package/dist/usecase/dto/content/index.d.ts +10 -1
- package/dist/usecase/dto/content/index.d.ts.map +1 -1
- package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts +4 -3
- package/dist/usecase/procedure/InvokeBuiltinUseCase.d.ts.map +1 -1
- package/dist/usecase/procedure/InvokeBuiltinUseCase.js +8 -4
- package/dist/usecase/procedure/InvokeBuiltinUseCase.js.map +1 -1
- package/dist/usecase/render/ComposeLlmsTxtUseCase.d.ts +3 -6
- package/dist/usecase/render/ComposeLlmsTxtUseCase.d.ts.map +1 -1
- package/dist/usecase/render/ComposeLlmsTxtUseCase.js +3 -6
- package/dist/usecase/render/ComposeLlmsTxtUseCase.js.map +1 -1
- package/dist/usecase/render/ComposeSitemapUseCase.js +1 -1
- package/dist/usecase/render/ComposeSitemapUseCase.js.map +1 -1
- package/dist/usecase/render/RenderEntryLiveUseCase.d.ts +3 -4
- package/dist/usecase/render/RenderEntryLiveUseCase.d.ts.map +1 -1
- package/dist/usecase/render/RenderEntryLiveUseCase.js +3 -4
- package/dist/usecase/render/RenderEntryLiveUseCase.js.map +1 -1
- package/dist/usecase/site/UpdateSiteSettingsUseCase.d.ts +3 -5
- package/dist/usecase/site/UpdateSiteSettingsUseCase.d.ts.map +1 -1
- package/dist/usecase/site/UpdateSiteSettingsUseCase.js +26 -6
- package/dist/usecase/site/UpdateSiteSettingsUseCase.js.map +1 -1
- package/dist/usecase/view/ExecuteViewUseCase.d.ts.map +1 -1
- package/dist/usecase/view/ExecuteViewUseCase.js +5 -1
- package/dist/usecase/view/ExecuteViewUseCase.js.map +1 -1
- package/package.json +2 -2
- package/dist/domain/port/KvCache.d.ts +0 -34
- package/dist/domain/port/KvCache.d.ts.map +0 -1
- package/dist/domain/port/KvCache.js +0 -2
- package/dist/domain/port/KvCache.js.map +0 -1
- package/dist/domain/port/PublishOrchestrator.d.ts +0 -26
- package/dist/domain/port/PublishOrchestrator.d.ts.map +0 -1
- package/dist/domain/port/PublishOrchestrator.js +0 -2
- package/dist/domain/port/PublishOrchestrator.js.map +0 -1
- package/dist/domain/service/PublishKeys.d.ts +0 -42
- package/dist/domain/service/PublishKeys.d.ts.map +0 -1
- package/dist/domain/service/PublishKeys.js +0 -71
- package/dist/domain/service/PublishKeys.js.map +0 -1
- package/dist/infrastructure/render/HtmlPublishOrchestrator.d.ts +0 -38
- package/dist/infrastructure/render/HtmlPublishOrchestrator.d.ts.map +0 -1
- package/dist/infrastructure/render/HtmlPublishOrchestrator.js +0 -129
- package/dist/infrastructure/render/HtmlPublishOrchestrator.js.map +0 -1
- package/dist/infrastructure/render/index.d.ts +0 -2
- package/dist/infrastructure/render/index.d.ts.map +0 -1
- package/dist/infrastructure/render/index.js +0 -2
- package/dist/infrastructure/render/index.js.map +0 -1
- package/dist/usecase/content/ContentPublishEffects.d.ts +0 -11
- package/dist/usecase/content/ContentPublishEffects.d.ts.map +0 -1
- package/dist/usecase/content/ContentPublishEffects.js +0 -21
- package/dist/usecase/content/ContentPublishEffects.js.map +0 -1
|
@@ -10,8 +10,8 @@ import type { ContentState, Entry } from "@aotter/mantle-spec";
|
|
|
10
10
|
* `data.locale` (json_extract) so the lookup is uniform with every
|
|
11
11
|
* other Schema-property field. `EntryRow.locale?` is a hydrated
|
|
12
12
|
* convenience: every repository impl lifts `data.locale` onto the
|
|
13
|
-
* top-level field at read time so
|
|
14
|
-
*
|
|
13
|
+
* top-level field at read time so renderers, path resolvers, and MCP
|
|
14
|
+
* `get_entry` clients can branch on `row.locale`
|
|
15
15
|
* without drilling into `data`. Mirrors spec `Entry`'s `locale?`
|
|
16
16
|
* field for the same reason. The DB column shape stays unchanged;
|
|
17
17
|
* this is purely a read-side projection.
|
|
@@ -33,8 +33,8 @@ export interface HandlerContext<Env = unknown> {
|
|
|
33
33
|
readonly env: Env;
|
|
34
34
|
/** Cloudflare `ExecutionContext.waitUntil`-style fire-and-forget
|
|
35
35
|
* bridge. Adapter populates when running in a Worker; runtime uses
|
|
36
|
-
* it for
|
|
37
|
-
*
|
|
36
|
+
* it for deferred lifecycle-hook fallback. Optional so non-Worker
|
|
37
|
+
* adapters can leave it out. */
|
|
38
38
|
readonly waitUntil?: (p: Promise<unknown>) => void;
|
|
39
39
|
/** Lifecycle event metadata. Populated by `RunLifecycleHooksUseCase`
|
|
40
40
|
* when this ctx is passed to a Procedure invoked AS a lifecycle hook
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HandlerContext.d.ts","sourceRoot":"","sources":["../../../src/domain/model/HandlerContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,cAAc,CAAC,GAAG,GAAG,OAAO;IAC3C,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;KAAE,GAAG,IAAI,CAAC;IACzE;;gEAE4D;IAC5D,QAAQ,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IACnC;+EAC2E;IAC3E,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB;;;
|
|
1
|
+
{"version":3,"file":"HandlerContext.d.ts","sourceRoot":"","sources":["../../../src/domain/model/HandlerContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,cAAc,CAAC,GAAG,GAAG,OAAO;IAC3C,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;KAAE,GAAG,IAAI,CAAC;IACzE;;gEAE4D;IAC5D,QAAQ,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IACnC;+EAC2E;IAC3E,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB;;;qCAGiC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACnD;;;iCAG6B;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,qBAAqB,CAAC;CACxC;AAED,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,gBAAgB,CAAC;AAEhF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,mEAAmE;IACnE,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,qBAAqB;IACpC,sEAAsE;IACtE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB;iEAC6D;IAC7D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;yEACqE;IACrE,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;CACjC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,OAAO,EAAE,GAAG,GAAG,OAAO,IAAI,CAC/D,KAAK,EAAE,CAAC,EACR,GAAG,EAAE,cAAc,CAAC,GAAG,CAAC,KACrB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAEpB;;;;;GAKG;AAEH,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC"}
|
|
@@ -5,7 +5,7 @@ import type { MediaAsset } from "../port/MediaStorage.js";
|
|
|
5
5
|
* Render-pipeline types + consumer-supplied template registry.
|
|
6
6
|
*
|
|
7
7
|
* The runtime stays string-typed — templates return complete HTML
|
|
8
|
-
* body strings (no doctype prefix; the
|
|
8
|
+
* body strings (no doctype prefix; the HTML renderer adds it) so
|
|
9
9
|
* the runtime carries no JSX dependency. Consumers using JSX in
|
|
10
10
|
* their public surface (Hono + hono/jsx) call their JSX → string
|
|
11
11
|
* function before the template returns.
|
|
@@ -20,8 +20,8 @@ import type { MediaAsset } from "../port/MediaStorage.js";
|
|
|
20
20
|
* directly) when present. Renderers that skip composition leave
|
|
21
21
|
* `seo` undefined so opt-out templates don't break.
|
|
22
22
|
*
|
|
23
|
-
* Lives in `domain/model/` because
|
|
24
|
-
*
|
|
23
|
+
* Lives in `domain/model/` because runtime render use cases and
|
|
24
|
+
* consumer-supplied templates both reference it.
|
|
25
25
|
*/
|
|
26
26
|
export interface EntryContext {
|
|
27
27
|
readonly entry: Entry;
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* returns the response.
|
|
8
8
|
*
|
|
9
9
|
* CF adapter: wraps `env.ASSETS.fetch(req)`. Future: filesystem read,
|
|
10
|
-
* S3+CDN,
|
|
10
|
+
* S3+CDN, or another platform asset service.
|
|
11
11
|
*
|
|
12
12
|
* Returning `null` lets the runtime's HTTP layer fall back to the
|
|
13
13
|
* SPA's `index.html` catchall — the React Router routing model.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `DatabaseDriver` — runtime's adapter-agnostic interface to
|
|
3
|
-
* persistent relational state. Entries,
|
|
3
|
+
* persistent relational state. Entries, site config,
|
|
4
4
|
* auth support, and media tables declared by the canonical migrations live
|
|
5
5
|
* behind this surface; the runtime never sees `D1Database`, `Pool` (postgres),
|
|
6
6
|
* or any concrete driver.
|
|
@@ -17,7 +17,7 @@ export interface ReadEntryByDataFieldArgs {
|
|
|
17
17
|
export interface ReadEntriesByDataFieldInArgs {
|
|
18
18
|
readonly collection: string;
|
|
19
19
|
readonly field: string;
|
|
20
|
-
readonly values: readonly
|
|
20
|
+
readonly values: readonly EntryDataScalar[];
|
|
21
21
|
readonly locale?: string | null;
|
|
22
22
|
readonly status?: ContentState;
|
|
23
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntryReader.d.ts","sourceRoot":"","sources":["../../../src/domain/port/EntryReader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE/D,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAExD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"EntryReader.d.ts","sourceRoot":"","sources":["../../../src/domain/port/EntryReader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE/D,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAExD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC5C,UAAU,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC7D,eAAe,CAAC,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACvE,iBAAiB,CAAC,IAAI,EAAE,4BAA4B,GAAG,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;IACjF,aAAa,CAAC,IAAI,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;IAC1E,mBAAmB,CAAC,IAAI,EAAE,8BAA8B,GAAG,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;CACtF"}
|
|
@@ -20,7 +20,6 @@ export interface EntryRepository {
|
|
|
20
20
|
get(id: string): Promise<EntryRow | null>;
|
|
21
21
|
/** Throws `EntryVersionConflict` on OCC mismatch. */
|
|
22
22
|
update(args: UpdateEntryArgs): Promise<EntryRow>;
|
|
23
|
-
/** Cascades to revisions + approvals child rows for the entry id. */
|
|
24
23
|
delete(args: DeleteEntryArgs): Promise<{
|
|
25
24
|
readonly removed: boolean;
|
|
26
25
|
}>;
|
|
@@ -106,13 +105,29 @@ export interface ListEntriesArgs {
|
|
|
106
105
|
/** Opaque continuation token from a prior `ListEntriesResult.nextCursor`.
|
|
107
106
|
* Caller must round-trip without interpreting; format is impl-defined. */
|
|
108
107
|
readonly cursor?: string;
|
|
109
|
-
/**
|
|
110
|
-
|
|
111
|
-
|
|
108
|
+
/** Fetch the page before `cursor`; default is the page after it. */
|
|
109
|
+
readonly cursorDirection?: "forward" | "backward";
|
|
110
|
+
/** Free-text filter matched against `id` and `searchFields`
|
|
111
|
+
* (substring, case-insensitive for ASCII per SQLite `LIKE`). */
|
|
112
112
|
readonly search?: string;
|
|
113
|
+
/** Trusted top-level string fields resolved from Schema.searchableFields. */
|
|
114
|
+
readonly searchFields?: readonly string[];
|
|
115
|
+
/** Trusted exact enum filter resolved from the Schema's indexed fields. */
|
|
116
|
+
readonly filter?: {
|
|
117
|
+
readonly field: string;
|
|
118
|
+
readonly value: string;
|
|
119
|
+
};
|
|
120
|
+
/** Native fields or Schema-indexed scalar data fields only. */
|
|
121
|
+
readonly sort?: EntrySort;
|
|
122
|
+
}
|
|
123
|
+
export interface EntrySort {
|
|
124
|
+
readonly field: string;
|
|
125
|
+
readonly direction: "asc" | "desc";
|
|
113
126
|
}
|
|
114
127
|
export interface ListEntriesResult {
|
|
115
128
|
readonly rows: readonly EntryRow[];
|
|
129
|
+
/** Pass back with `cursorDirection: "backward"`. */
|
|
130
|
+
readonly previousCursor?: string;
|
|
116
131
|
/** Present when there may be more rows beyond this page. Undefined
|
|
117
132
|
* signals "this is the last page". Pass back as `cursor` to
|
|
118
133
|
* continue. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntryRepository.d.ts","sourceRoot":"","sources":["../../../src/domain/port/EntryRepository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjD,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAC1C,qDAAqD;IACrD,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjD,
|
|
1
|
+
{"version":3,"file":"EntryRepository.d.ts","sourceRoot":"","sources":["../../../src/domain/port/EntryRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* `IdGenerator` — abstracted id source for
|
|
3
|
-
*
|
|
2
|
+
* `IdGenerator` — abstracted id source for entries / lifecycle events /
|
|
3
|
+
* sessions / media bearer tokens / R2
|
|
4
4
|
* object keys.
|
|
5
5
|
*
|
|
6
6
|
* # Security invariant
|
|
@@ -7,7 +7,7 @@ import type { MediaPurposePolicy, SiteConfig, SiteDefaults } from "@aotter/mantl
|
|
|
7
7
|
* `siteDefaults`, but treats keys differently depending on ownership:
|
|
8
8
|
* UI-editable keys (brand/title/description/…) seed once (INSERT …
|
|
9
9
|
* ON CONFLICT DO NOTHING) so operator edits are preserved; keys with
|
|
10
|
-
* no admin-UI edit path (`locales`, `mediaPurposes`) are synced from
|
|
10
|
+
* no admin-UI edit path (`origin`, `locales`, `mediaPurposes`) are synced from
|
|
11
11
|
* config on every boot (upsert when the value differs) since code is
|
|
12
12
|
* their only source of truth. See `DatabaseSiteConfigRepository`'s
|
|
13
13
|
* header comment for the full rationale (#441).
|
|
@@ -24,7 +24,7 @@ export interface SiteConfigRepository {
|
|
|
24
24
|
load(): Promise<SiteConfig>;
|
|
25
25
|
/** Persist the operator-owned subset exposed by the Admin settings UI.
|
|
26
26
|
* Omitted fields are unchanged; an empty string intentionally clears a
|
|
27
|
-
* value. Code-canonical locales and media purposes are never writable
|
|
27
|
+
* value. Code-canonical origin, locales, and media purposes are never writable
|
|
28
28
|
* through this path. Optional during the `CmsRuntime.db` compatibility
|
|
29
29
|
* window; canonical Mantle runtimes always provide it. */
|
|
30
30
|
updateEditable?(args: UpdateEditableSiteConfigArgs): Promise<void>;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Concrete implementations live in `infrastructure/` (or in adapter
|
|
4
4
|
* packages like `@aotter/mantle-cloudflare`).
|
|
5
5
|
*
|
|
6
|
-
* Required adapter ports — `DatabaseDriver`, `
|
|
6
|
+
* Required adapter ports — `DatabaseDriver`, `AssetServer`.
|
|
7
7
|
* Optional feature ports — `MediaStorage` (public-bucket media
|
|
8
8
|
* uploads), `EmailSender` (transactional email — passwordless auth,
|
|
9
9
|
* receipts). Dispatcher-internal seams — `Clock`, `IdGenerator`,
|
|
@@ -14,12 +14,10 @@
|
|
|
14
14
|
* ports are discoverable by the package alone.
|
|
15
15
|
*/
|
|
16
16
|
export type { DatabaseDriver, PreparedStatement, RunResult, BatchResult, MigrationRunner, Migration, } from "./DatabaseDriver.js";
|
|
17
|
-
export type { KvCache, KvPutOptions, KvListResult } from "./KvCache.js";
|
|
18
17
|
export type { AssetServer } from "./AssetServer.js";
|
|
19
18
|
export type { EntryRepository, CreateEntryArgs, UpdateEntryArgs, DeleteEntryArgs, TransitionStatusArgs, ListEntriesArgs, ListEntriesResult, FindEntryByDataFieldArgs, FindEntryByDataFieldsArgs, MutationHookFields, } from "./EntryRepository.js";
|
|
20
19
|
export type { EntryReader, EntryDataScalar, ReadEntryBySlugArgs, ReadEntryByDataFieldArgs, ReadEntriesByDataFieldInArgs, ReadPublishedEntriesArgs, FindManyEntriesByDataFieldArgs, } from "./EntryReader.js";
|
|
21
20
|
export type { SiteConfigRepository, UpdateEditableSiteConfigArgs, } from "./SiteConfigRepository.js";
|
|
22
|
-
export type { PublishOrchestrator, PublishEntryRequest, } from "./PublishOrchestrator.js";
|
|
23
21
|
export type { MediaStorage, CreateUploadArgs, CreateUploadVariantSpec, CreateUploadResult, UploadCapability, CommitUploadArgs, CommitUploadVariantSpec, GetPublicUrlArgs, DeleteObjectArgs, MediaAsset, MediaVariant, MediaVariantRole, } from "./MediaStorage.js";
|
|
24
22
|
export { pickPrimaryVariant } from "./MediaStorage.js";
|
|
25
23
|
export type { MediaAssetRepository } from "./MediaAssetRepository.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/port/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,WAAW,EACX,eAAe,EACf,SAAS,GACV,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/port/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,WAAW,EACX,eAAe,EACf,SAAS,GACV,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,YAAY,EACV,eAAe,EACf,eAAe,EACf,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,YAAY,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,YAAY,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC5E,YAAY,EACV,WAAW,EACX,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,WAAW,GACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,8BAA8B,EAC9B,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,KAAK,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,KAAK,WAAW,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EACL,KAAK,eAAe,EACpB,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/port/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/port/index.ts"],"names":[],"mappings":"AA+DA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAavD,OAAO,EACL,8BAA8B,EAC9B,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAc,WAAW,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAoB,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAEL,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC"}
|
|
@@ -33,4 +33,6 @@ export interface RenderListArgs {
|
|
|
33
33
|
* registered for `collection`. */
|
|
34
34
|
export declare function renderListHtml(args: RenderListArgs): string | null;
|
|
35
35
|
export declare function renderTrackingTagsHtml(site: SiteConfig): string;
|
|
36
|
+
export declare function normalizeGa4MeasurementId(value: string | undefined): string | null;
|
|
37
|
+
export declare function normalizeFacebookPixelId(value: string | undefined): string | null;
|
|
36
38
|
//# sourceMappingURL=HtmlRenderer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlRenderer.d.ts","sourceRoot":"","sources":["../../../src/domain/service/HtmlRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAGV,gBAAgB,EACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"HtmlRenderer.d.ts","sourceRoot":"","sources":["../../../src/domain/service/HtmlRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAGV,gBAAgB,EACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAW1D,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC;mEAC+D;IAC/D,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACvD;;;+DAG2D;IAC3D,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;qDACqD;AACrD,wBAAgB,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,IAAI,CAepE;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;mCACmC;AACnC,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAelE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAa/D;AAYD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGlF;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGjF"}
|
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Pure render functions over the consumer-supplied template registry.
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* - request-time route handlers in adapters (live-render bypass,
|
|
6
|
-
* preview surface)
|
|
7
|
-
*
|
|
8
|
-
* Both call sites previously inlined the template-lookup + doctype
|
|
9
|
-
* concatenation. Extracting here keeps the contract single-sourced
|
|
3
|
+
* Request-time public and preview renderers share this template lookup
|
|
4
|
+
* and doctype concatenation so the contract stays single-sourced
|
|
10
5
|
* — adding a doctype mode, an OG-meta wrapper, or a per-collection
|
|
11
6
|
* pre/post hook is one edit. No I/O; no DB; no env access.
|
|
12
7
|
*/
|
|
@@ -67,11 +62,11 @@ function injectTrackingTags(html, site) {
|
|
|
67
62
|
return html.replace(bodyOpen, (match) => `${match}${tags}`);
|
|
68
63
|
return `${tags}${html}`;
|
|
69
64
|
}
|
|
70
|
-
function normalizeGa4MeasurementId(value) {
|
|
65
|
+
export function normalizeGa4MeasurementId(value) {
|
|
71
66
|
const trimmed = value?.trim().toUpperCase() ?? "";
|
|
72
67
|
return /^G-[A-Z0-9]{4,32}$/.test(trimmed) ? trimmed : null;
|
|
73
68
|
}
|
|
74
|
-
function normalizeFacebookPixelId(value) {
|
|
69
|
+
export function normalizeFacebookPixelId(value) {
|
|
75
70
|
const trimmed = value?.trim() ?? "";
|
|
76
71
|
return /^[0-9]{5,32}$/.test(trimmed) ? trimmed : null;
|
|
77
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HtmlRenderer.js","sourceRoot":"","sources":["../../../src/domain/service/HtmlRenderer.ts"],"names":[],"mappings":"AASA
|
|
1
|
+
{"version":3,"file":"HtmlRenderer.js","sourceRoot":"","sources":["../../../src/domain/service/HtmlRenderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { type Entry } from "@aotter/mantle-spec";
|
|
2
|
+
export declare function entrySlug(entry: {
|
|
3
|
+
id: string;
|
|
4
|
+
data: Record<string, unknown>;
|
|
5
|
+
}): string;
|
|
6
|
+
export declare function entryPublicPath(entry: Entry): string;
|
|
2
7
|
/**
|
|
3
8
|
* Resolves a public URL path for an entry, given the consumer's
|
|
4
9
|
* collection→URL configuration. One source of truth for both the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicPathResolver.d.ts","sourceRoot":"","sources":["../../../src/domain/service/PublicPathResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,KAAK,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"PublicPathResolver.d.ts","sourceRoot":"","sources":["../../../src/domain/service/PublicPathResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE9D,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,MAAM,CAMtF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAIpD;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC;;kDAE8C;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;CACtE;AAED,MAAM,WAAW,kBAAkB;IACjC;4DACwD;IACxD,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI,CAAC;IACtC;uCACmC;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAAC;CAC3D;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,wBAAwB,GAC/B,kBAAkB,CAmBpB"}
|
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
import { toUrlLocale } from "@aotter/mantle-spec";
|
|
2
|
-
|
|
2
|
+
export function entrySlug(entry) {
|
|
3
|
+
const fromData = entry.data["slug"];
|
|
4
|
+
if (typeof fromData === "string" && /^[a-z0-9][a-z0-9-]*$/.test(fromData)) {
|
|
5
|
+
return fromData;
|
|
6
|
+
}
|
|
7
|
+
return entry.id;
|
|
8
|
+
}
|
|
9
|
+
export function entryPublicPath(entry) {
|
|
10
|
+
const slug = entrySlug(entry);
|
|
11
|
+
if (entry.locale)
|
|
12
|
+
return `/${toUrlLocale(entry.locale)}/${entry.collection}/${slug}`;
|
|
13
|
+
return `/${entry.collection}/${slug}`;
|
|
14
|
+
}
|
|
3
15
|
export function createPublicPathResolver(config) {
|
|
4
16
|
const routes = config.collectionRoutes;
|
|
5
17
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PublicPathResolver.js","sourceRoot":"","sources":["../../../src/domain/service/PublicPathResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAc,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"PublicPathResolver.js","sourceRoot":"","sources":["../../../src/domain/service/PublicPathResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAc,MAAM,qBAAqB,CAAC;AAE9D,MAAM,UAAU,SAAS,CAAC,KAAoD;IAC5E,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1E,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,KAAK,CAAC,EAAE,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAY;IAC1C,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;IACrF,OAAO,IAAI,KAAK,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;AACxC,CAAC;AA2CD,MAAM,UAAU,wBAAwB,CACtC,MAAgC;IAEhC,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC;IACvC,OAAO;QACL,QAAQ,CAAC,KAAY;YACnB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACvC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC;YAClD,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChD,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC9C,OAAO,YAAY,IAAI,GAAG,CAAC;YAC7B,CAAC;YACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;YAC9B,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,IAAI,EAAE,CAAC;QACpF,CAAC;QACD,QAAQ,CAAC,UAAkB;YACzB,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -6,9 +6,8 @@ import type { LifecycleHook, TriggerManifest } from "@aotter/mantle-spec";
|
|
|
6
6
|
* mutation.
|
|
7
7
|
*
|
|
8
8
|
* Within a `(schema, hook)` group, Triggers fire in **alphabetical
|
|
9
|
-
* order by `Trigger.metadata.name
|
|
10
|
-
*
|
|
11
|
-
* correctly today (`010-bot-check`, `020-rate-limit`).
|
|
9
|
+
* order by `Trigger.metadata.name`**. Authors choose names that sort
|
|
10
|
+
* correctly (`010-bot-check`, `020-rate-limit`).
|
|
12
11
|
*
|
|
13
12
|
* Pure data-structure — no I/O, no manifest validation. Lives in
|
|
14
13
|
* `domain/service/`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriggerIndex.d.ts","sourceRoot":"","sources":["../../../src/domain/service/TriggerIndex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE1E
|
|
1
|
+
{"version":3,"file":"TriggerIndex.d.ts","sourceRoot":"","sources":["../../../src/domain/service/TriggerIndex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE1E;;;;;;;;;;;;GAYG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqD;gBAEzE,QAAQ,EAAE,SAAS,eAAe,EAAE;IAuBhD;kEAC8D;IAC9D,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,SAAS,eAAe,EAAE;CAGzE"}
|
|
@@ -5,9 +5,8 @@
|
|
|
5
5
|
* mutation.
|
|
6
6
|
*
|
|
7
7
|
* Within a `(schema, hook)` group, Triggers fire in **alphabetical
|
|
8
|
-
* order by `Trigger.metadata.name
|
|
9
|
-
*
|
|
10
|
-
* correctly today (`010-bot-check`, `020-rate-limit`).
|
|
8
|
+
* order by `Trigger.metadata.name`**. Authors choose names that sort
|
|
9
|
+
* correctly (`010-bot-check`, `020-rate-limit`).
|
|
11
10
|
*
|
|
12
11
|
* Pure data-structure — no I/O, no manifest validation. Lives in
|
|
13
12
|
* `domain/service/`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriggerIndex.js","sourceRoot":"","sources":["../../../src/domain/service/TriggerIndex.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"TriggerIndex.js","sourceRoot":"","sources":["../../../src/domain/service/TriggerIndex.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,YAAY;IACN,eAAe,CAAqD;IAErF,YAAY,QAAoC;QAC9C,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;QACjC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,WAAW;gBAAE,SAAS;YACjD,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACpC,IAAI,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;gBAClB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC1C,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACpC,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACnC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACb,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC;YAClD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;IACH,CAAC;IAED;kEAC8D;IAC9D,OAAO,CAAC,MAAc,EAAE,IAAmB;QACzC,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC3D,CAAC;CACF"}
|
|
@@ -6,7 +6,7 @@ import type { ViewManifest } from "@aotter/mantle-spec";
|
|
|
6
6
|
* unknown query keys are silently ignored (lenient v0.1.0).
|
|
7
7
|
*
|
|
8
8
|
* Lives in `mantle-runtime` (not the CF adapter) so future adapters
|
|
9
|
-
*
|
|
9
|
+
* share one coercion path. Throws a
|
|
10
10
|
* `ViewParamCoercionError` so the adapter can map the message into its
|
|
11
11
|
* own diagnostic envelope without parsing prose.
|
|
12
12
|
*/
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* unknown query keys are silently ignored (lenient v0.1.0).
|
|
6
6
|
*
|
|
7
7
|
* Lives in `mantle-runtime` (not the CF adapter) so future adapters
|
|
8
|
-
*
|
|
8
|
+
* share one coercion path. Throws a
|
|
9
9
|
* `ViewParamCoercionError` so the adapter can map the message into its
|
|
10
10
|
* own diagnostic envelope without parsing prose.
|
|
11
11
|
*/
|
|
@@ -9,8 +9,9 @@ import { type SchemaManifest, type ViewManifest } from "@aotter/mantle-spec";
|
|
|
9
9
|
*
|
|
10
10
|
* v0.1 filter AST supports comparison operators (`eq`, `gt`, `gte`,
|
|
11
11
|
* `lt`, `lte`) plus `and` / `or`; comparison values may be literals or
|
|
12
|
-
* `{ $param: <name> }` sentinels substituted from `options.params
|
|
13
|
-
*
|
|
12
|
+
* `{ $param: <name> }` sentinels substituted from `options.params`, plus
|
|
13
|
+
* `{ "$ctx.user": "id" }` bound from the normalized site caller. Pagination
|
|
14
|
+
* knobs `page` / `show` come in via
|
|
14
15
|
* `options`; the runtime owns the LIMIT/OFFSET emission.
|
|
15
16
|
*/
|
|
16
17
|
export interface CompiledView {
|
|
@@ -26,6 +27,8 @@ export interface CompileViewOptions {
|
|
|
26
27
|
readonly page?: number;
|
|
27
28
|
/** Caller's requested page size; clamped to View.spec.limit. */
|
|
28
29
|
readonly show?: number;
|
|
30
|
+
/** Site-local Better Auth user id for identity-bound filters. */
|
|
31
|
+
readonly ctxUserId?: string;
|
|
29
32
|
}
|
|
30
33
|
export declare function compileView(view: ViewManifest, options?: CompileViewOptions, schema?: SchemaManifest): CompiledView;
|
|
31
34
|
//# sourceMappingURL=ViewSqlCompiler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewSqlCompiler.d.ts","sourceRoot":"","sources":["../../../src/domain/service/ViewSqlCompiler.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ViewSqlCompiler.d.ts","sourceRoot":"","sources":["../../../src/domain/service/ViewSqlCompiler.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,qBAAqB,CAAC;AAG7B;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,mDAAmD;IACnD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,gEAAgE;IAChE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,iEAAiE;IACjE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAoCD,wBAAgB,WAAW,CACzB,IAAI,EAAE,YAAY,EAClB,OAAO,GAAE,kBAAuB,EAChC,MAAM,CAAC,EAAE,cAAc,GACtB,YAAY,CAsCd"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DiagnosticError, isParamRef, runtimeDiagnostic, schemaIndexedFieldSql, } from "@aotter/mantle-spec";
|
|
1
|
+
import { DiagnosticError, isCtxUserRef, isParamRef, runtimeDiagnostic, schemaIndexedFieldSql, } from "@aotter/mantle-spec";
|
|
2
2
|
import { clampPage, clampShow } from "./Pagination.js";
|
|
3
3
|
// alias → SQL column. Aliases mirror RESERVED_ENTRY_COLUMNS from
|
|
4
4
|
// spec; SQL column shape (snake_case) is local to the storage layout.
|
|
@@ -39,11 +39,9 @@ export function compileView(view, options = {}, schema) {
|
|
|
39
39
|
const selectExpr = buildSelect(view.spec.fields, schema);
|
|
40
40
|
const whereParts = ["collection = ?"];
|
|
41
41
|
if (view.spec.filter) {
|
|
42
|
-
const compiled = compileFilter(view.spec.filter, options.params ?? {}, schema);
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
sqlParams.push(...compiled.params);
|
|
46
|
-
}
|
|
42
|
+
const compiled = compileFilter(view.spec.filter, options.params ?? {}, options.ctxUserId, schema);
|
|
43
|
+
whereParts.push(`(${compiled.sql})`);
|
|
44
|
+
sqlParams.push(...compiled.params);
|
|
47
45
|
}
|
|
48
46
|
const where = `WHERE ${whereParts.join(" AND ")}`;
|
|
49
47
|
const orderBy = buildOrderBy(view.spec.orderBy, schema);
|
|
@@ -79,26 +77,28 @@ function fieldRefExpr(field, schema) {
|
|
|
79
77
|
return indexed;
|
|
80
78
|
return `json_extract(data, ${quotedJsonPath(field)})`;
|
|
81
79
|
}
|
|
82
|
-
|
|
83
|
-
* Returns `null` when the node has no constraint to emit: an `eq`
|
|
84
|
-
* whose `{ $param }` ref is unresolved, or an AND/OR whose children
|
|
85
|
-
* all dropped. v0.1.0 parser enforces required-only param refs so
|
|
86
|
-
* the drop path is dead today; kept so v0.1.x "optional param ref"
|
|
87
|
-
* promotion is a parser-only change.
|
|
88
|
-
*
|
|
89
|
-
* Each node returns its own `{ sql, params }` (vs. pushing into a
|
|
90
|
-
* shared array) so a dropped sub-tree can never leave orphan params
|
|
91
|
-
* bound to the parent's `?` placeholders.
|
|
92
|
-
*/
|
|
93
|
-
function compileFilter(node, paramValues, schema) {
|
|
80
|
+
function compileFilter(node, paramValues, ctxUserId, schema) {
|
|
94
81
|
const comparison = getFilterComparison(node);
|
|
95
82
|
if (comparison) {
|
|
96
83
|
const value = comparison.node.value;
|
|
97
84
|
let bound;
|
|
98
|
-
if (
|
|
85
|
+
if (isCtxUserRef(value)) {
|
|
86
|
+
if (!ctxUserId) {
|
|
87
|
+
throw new DiagnosticError(runtimeDiagnostic({
|
|
88
|
+
code: "UNAUTHENTICATED",
|
|
89
|
+
severity: "error",
|
|
90
|
+
path: "compileView/filter",
|
|
91
|
+
expected: "ctx.user.id for an identity-bound View filter",
|
|
92
|
+
message: "View filter requires ctx.user.id.",
|
|
93
|
+
}));
|
|
94
|
+
}
|
|
95
|
+
bound = ctxUserId;
|
|
96
|
+
}
|
|
97
|
+
else if (isParamRef(value)) {
|
|
99
98
|
const resolved = paramValues[value.$param];
|
|
100
|
-
if (resolved === undefined)
|
|
101
|
-
|
|
99
|
+
if (resolved === undefined) {
|
|
100
|
+
throw new Error(`View filter requires param '${value.$param}'.`);
|
|
101
|
+
}
|
|
102
102
|
bound = resolved;
|
|
103
103
|
}
|
|
104
104
|
else {
|
|
@@ -112,10 +112,7 @@ function compileFilter(node, paramValues, schema) {
|
|
|
112
112
|
const op = "and" in node ? "AND" : "OR";
|
|
113
113
|
const children = "and" in node ? node.and : "or" in node ? node.or : [];
|
|
114
114
|
const compiled = children
|
|
115
|
-
.map((c) => compileFilter(c, paramValues, schema))
|
|
116
|
-
.filter((c) => c !== null);
|
|
117
|
-
if (compiled.length === 0)
|
|
118
|
-
return null;
|
|
115
|
+
.map((c) => compileFilter(c, paramValues, ctxUserId, schema));
|
|
119
116
|
return {
|
|
120
117
|
sql: compiled.map((c) => `(${c.sql})`).join(` ${op} `),
|
|
121
118
|
params: compiled.flatMap((c) => c.params),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ViewSqlCompiler.js","sourceRoot":"","sources":["../../../src/domain/service/ViewSqlCompiler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEf,UAAU,EACV,iBAAiB,EACjB,qBAAqB,GAItB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"ViewSqlCompiler.js","sourceRoot":"","sources":["../../../src/domain/service/ViewSqlCompiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/service/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/domain/service/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/service/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/domain/service/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC"}
|
|
@@ -6,7 +6,7 @@ export function assertEntryDeletable(args) {
|
|
|
6
6
|
if (expectedCollection && entry.collection !== expectedCollection) {
|
|
7
7
|
throw new DiagnosticError(notFoundDiagnostic(opPath, expectedCollection, entry.id));
|
|
8
8
|
}
|
|
9
|
-
if (entry.status !== "published" || resolveLifecycle(args.schema) === "
|
|
9
|
+
if (entry.status !== "published" || resolveLifecycle(args.schema) === "operational")
|
|
10
10
|
return;
|
|
11
11
|
throw new DiagnosticError(runtimeDiagnostic({
|
|
12
12
|
code: "CONFLICT",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntryDeleteGuard.js","sourceRoot":"","sources":["../../../../src/domain/service/io/EntryDeleteGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,iBAAiB,GAElB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AASpE,+DAA+D;AAC/D,MAAM,UAAU,oBAAoB,CAAC,IAA8B;IACjE,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACnD,IAAI,kBAAkB,IAAI,KAAK,CAAC,UAAU,KAAK,kBAAkB,EAAE,CAAC;QAClE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"EntryDeleteGuard.js","sourceRoot":"","sources":["../../../../src/domain/service/io/EntryDeleteGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,iBAAiB,GAElB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AASpE,+DAA+D;AAC/D,MAAM,UAAU,oBAAoB,CAAC,IAA8B;IACjE,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACnD,IAAI,kBAAkB,IAAI,KAAK,CAAC,UAAU,KAAK,kBAAkB,EAAE,CAAC;QAClE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,aAAa;QAAE,OAAO;IAC5F,MAAM,IAAI,eAAe,CACvB,iBAAiB,CAAC;QAChB,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,KAAK,CAAC,MAAM;QACnB,QAAQ,EAAE,sBAAsB;QAChC,OAAO,EAAE,oBAAoB,KAAK,CAAC,EAAE,0CAA0C;KAChF,CAAC,CACH,CAAC;AACJ,CAAC"}
|