@plumix/core 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/dist/auth/bootstrap.d.ts.map +1 -1
  2. package/dist/auth/bootstrap.js +39 -22
  3. package/dist/auth/bootstrap.js.map +1 -1
  4. package/dist/cache/tags.d.ts.map +1 -1
  5. package/dist/cache/tags.js +9 -0
  6. package/dist/cache/tags.js.map +1 -1
  7. package/dist/db/errors.d.ts +8 -0
  8. package/dist/db/errors.d.ts.map +1 -1
  9. package/dist/db/errors.js +22 -0
  10. package/dist/db/errors.js.map +1 -1
  11. package/dist/db/index.d.ts +1 -1
  12. package/dist/db/index.d.ts.map +1 -1
  13. package/dist/db/index.js +1 -1
  14. package/dist/db/index.js.map +1 -1
  15. package/dist/db/schema/users.d.ts +57 -0
  16. package/dist/db/schema/users.d.ts.map +1 -1
  17. package/dist/db/schema/users.js +10 -2
  18. package/dist/db/schema/users.js.map +1 -1
  19. package/dist/debug-bar/panels/template.d.ts +5 -8
  20. package/dist/debug-bar/panels/template.d.ts.map +1 -1
  21. package/dist/debug-bar/panels/template.js +22 -8
  22. package/dist/debug-bar/panels/template.js.map +1 -1
  23. package/dist/debug-bar/primitives.d.ts +1 -1
  24. package/dist/debug-bar/primitives.d.ts.map +1 -1
  25. package/dist/debug-bar/primitives.js +1 -1
  26. package/dist/debug-bar/primitives.js.map +1 -1
  27. package/dist/debug-bar/styles.d.ts.map +1 -1
  28. package/dist/debug-bar/styles.js +9 -14
  29. package/dist/debug-bar/styles.js.map +1 -1
  30. package/dist/debug-bar/template-node-label.d.ts.map +1 -1
  31. package/dist/debug-bar/template-node-label.js +8 -2
  32. package/dist/debug-bar/template-node-label.js.map +1 -1
  33. package/dist/index.d.ts +7 -6
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +4 -3
  36. package/dist/index.js.map +1 -1
  37. package/dist/plugin/manifest.d.ts +34 -0
  38. package/dist/plugin/manifest.d.ts.map +1 -1
  39. package/dist/plugin/manifest.js +1 -0
  40. package/dist/plugin/manifest.js.map +1 -1
  41. package/dist/plugin/setup-context.d.ts +10 -1
  42. package/dist/plugin/setup-context.d.ts.map +1 -1
  43. package/dist/plugin/setup-context.js +12 -0
  44. package/dist/plugin/setup-context.js.map +1 -1
  45. package/dist/route/compile.d.ts +21 -0
  46. package/dist/route/compile.d.ts.map +1 -1
  47. package/dist/route/compile.js +63 -1
  48. package/dist/route/compile.js.map +1 -1
  49. package/dist/route/current.d.ts +5 -3
  50. package/dist/route/current.d.ts.map +1 -1
  51. package/dist/route/date-range.d.ts +12 -0
  52. package/dist/route/date-range.d.ts.map +1 -0
  53. package/dist/route/date-range.js +39 -0
  54. package/dist/route/date-range.js.map +1 -0
  55. package/dist/route/intent.d.ts +7 -3
  56. package/dist/route/intent.d.ts.map +1 -1
  57. package/dist/route/match.d.ts +1 -0
  58. package/dist/route/match.d.ts.map +1 -1
  59. package/dist/route/match.js +1 -1
  60. package/dist/route/match.js.map +1 -1
  61. package/dist/route/render/build-resolved-entries.d.ts.map +1 -1
  62. package/dist/route/render/build-resolved-entries.js +6 -1
  63. package/dist/route/render/build-resolved-entries.js.map +1 -1
  64. package/dist/route/render/render-template.d.ts +6 -4
  65. package/dist/route/render/render-template.d.ts.map +1 -1
  66. package/dist/route/render/render-template.js +36 -48
  67. package/dist/route/render/render-template.js.map +1 -1
  68. package/dist/route/render/resolved-entry.d.ts +46 -5
  69. package/dist/route/render/resolved-entry.d.ts.map +1 -1
  70. package/dist/route/render/template-builders.d.ts +124 -0
  71. package/dist/route/render/template-builders.d.ts.map +1 -0
  72. package/dist/route/render/template-builders.js +172 -0
  73. package/dist/route/render/template-builders.js.map +1 -0
  74. package/dist/route/render/template-hierarchy.d.ts +69 -38
  75. package/dist/route/render/template-hierarchy.d.ts.map +1 -1
  76. package/dist/route/render/template-hierarchy.js +150 -74
  77. package/dist/route/render/template-hierarchy.js.map +1 -1
  78. package/dist/route/resolve.d.ts +5 -3
  79. package/dist/route/resolve.d.ts.map +1 -1
  80. package/dist/route/resolve.js +177 -35
  81. package/dist/route/resolve.js.map +1 -1
  82. package/dist/rpc/procedures/entry/create.d.ts +2 -2
  83. package/dist/rpc/procedures/entry/delete-permanent.d.ts +2 -2
  84. package/dist/rpc/procedures/entry/duplicate.d.ts +2 -2
  85. package/dist/rpc/procedures/entry/get.d.ts +2 -2
  86. package/dist/rpc/procedures/entry/index.d.ts +22 -22
  87. package/dist/rpc/procedures/entry/list.d.ts +2 -2
  88. package/dist/rpc/procedures/entry/publish.d.ts +2 -2
  89. package/dist/rpc/procedures/entry/restore.d.ts +2 -2
  90. package/dist/rpc/procedures/entry/revisions.d.ts +8 -8
  91. package/dist/rpc/procedures/entry/trash.d.ts +2 -2
  92. package/dist/rpc/procedures/entry/update.d.ts +2 -2
  93. package/dist/rpc/procedures/term/create.d.ts +2 -2
  94. package/dist/rpc/procedures/term/delete.d.ts +2 -2
  95. package/dist/rpc/procedures/term/get.d.ts +2 -2
  96. package/dist/rpc/procedures/term/index.d.ts +10 -10
  97. package/dist/rpc/procedures/term/list.d.ts +2 -2
  98. package/dist/rpc/procedures/term/update.d.ts +2 -2
  99. package/dist/rpc/procedures/user/delete.d.ts +2 -0
  100. package/dist/rpc/procedures/user/delete.d.ts.map +1 -1
  101. package/dist/rpc/procedures/user/disable.d.ts +2 -0
  102. package/dist/rpc/procedures/user/disable.d.ts.map +1 -1
  103. package/dist/rpc/procedures/user/enable.d.ts +2 -0
  104. package/dist/rpc/procedures/user/enable.d.ts.map +1 -1
  105. package/dist/rpc/procedures/user/get.d.ts +2 -0
  106. package/dist/rpc/procedures/user/get.d.ts.map +1 -1
  107. package/dist/rpc/procedures/user/index.d.ts +12 -0
  108. package/dist/rpc/procedures/user/index.d.ts.map +1 -1
  109. package/dist/rpc/procedures/user/invite.d.ts.map +1 -1
  110. package/dist/rpc/procedures/user/invite.js +28 -15
  111. package/dist/rpc/procedures/user/invite.js.map +1 -1
  112. package/dist/rpc/procedures/user/list.d.ts +2 -0
  113. package/dist/rpc/procedures/user/list.d.ts.map +1 -1
  114. package/dist/rpc/procedures/user/list.js +1 -0
  115. package/dist/rpc/procedures/user/list.js.map +1 -1
  116. package/dist/rpc/procedures/user/update.d.ts +2 -0
  117. package/dist/rpc/procedures/user/update.d.ts.map +1 -1
  118. package/dist/rpc/router.d.ts +44 -32
  119. package/dist/rpc/router.d.ts.map +1 -1
  120. package/dist/runtime/app.d.ts +0 -8
  121. package/dist/runtime/app.d.ts.map +1 -1
  122. package/dist/runtime/app.js +0 -38
  123. package/dist/runtime/app.js.map +1 -1
  124. package/dist/runtime/dispatcher.d.ts.map +1 -1
  125. package/dist/runtime/dispatcher.js +74 -13
  126. package/dist/runtime/dispatcher.js.map +1 -1
  127. package/dist/seo/feed.d.ts +19 -4
  128. package/dist/seo/feed.d.ts.map +1 -1
  129. package/dist/seo/feed.js +49 -12
  130. package/dist/seo/feed.js.map +1 -1
  131. package/dist/seo/head-defaults.d.ts.map +1 -1
  132. package/dist/seo/head-defaults.js +6 -3
  133. package/dist/seo/head-defaults.js.map +1 -1
  134. package/dist/template-deps.js +1 -1
  135. package/dist/template-registry.d.ts +87 -0
  136. package/dist/template-registry.d.ts.map +1 -0
  137. package/dist/template-registry.js +1 -0
  138. package/dist/template-registry.js.map +1 -0
  139. package/dist/template.d.ts +2 -2
  140. package/dist/test/default-theme.d.ts.map +1 -1
  141. package/dist/test/default-theme.js +10 -6
  142. package/dist/test/default-theme.js.map +1 -1
  143. package/dist/test/factories.d.ts +39 -21
  144. package/dist/test/factories.d.ts.map +1 -1
  145. package/dist/test/factories.js +1 -0
  146. package/dist/test/factories.js.map +1 -1
  147. package/dist/theme-errors.d.ts +0 -3
  148. package/dist/theme-errors.d.ts.map +1 -1
  149. package/dist/theme-errors.js +7 -18
  150. package/dist/theme-errors.js.map +1 -1
  151. package/dist/theme.d.ts +67 -23
  152. package/dist/theme.d.ts.map +1 -1
  153. package/dist/theme.js +30 -10
  154. package/dist/theme.js.map +1 -1
  155. package/dist/users/slug.d.ts +12 -0
  156. package/dist/users/slug.d.ts.map +1 -0
  157. package/dist/users/slug.js +32 -0
  158. package/dist/users/slug.js.map +1 -0
  159. package/dist/welcome-theme.d.ts +2 -2
  160. package/dist/welcome-theme.d.ts.map +1 -1
  161. package/dist/welcome-theme.js +7 -6
  162. package/dist/welcome-theme.js.map +1 -1
  163. package/package.json +7 -7
  164. package/dist/route/render/archive-props.d.ts +0 -39
  165. package/dist/route/render/archive-props.d.ts.map +0 -1
  166. package/dist/route/render/archive-props.js +0 -32
  167. package/dist/route/render/archive-props.js.map +0 -1
@@ -2,15 +2,17 @@ import { count } from "drizzle-orm";
2
2
  import { expandShortcodes } from "@plumix/blocks";
3
3
  import { verifyPreviewGrant } from "../auth/preview-token.js";
4
4
  import { withBasePath } from "../base-path.js";
5
- import { and, desc, eq, inArray, isNotNull, sql } from "../db/index.js";
5
+ import { and, desc, eq, gte, inArray, isNotNull, lt, sql, } from "../db/index.js";
6
6
  import { entries } from "../db/schema/entries.js";
7
7
  import { entryTerm } from "../db/schema/entry_term.js";
8
8
  import { terms } from "../db/schema/terms.js";
9
+ import { users } from "../db/schema/users.js";
9
10
  import { labelSourceText } from "../i18n/label.js";
10
11
  import { getAutosave } from "../revisions/repository.js";
11
12
  import { stripReservedMeta } from "../revisions/snapshot-envelope.js";
12
13
  import { entryCapability } from "../rpc/procedures/entry/lifecycle.js";
13
14
  import { notFound, permanentRedirect } from "../runtime/http.js";
15
+ import { dateRange } from "./date-range.js";
14
16
  import { resolveEditMode } from "./edit-mode.js";
15
17
  import { paginate } from "./paginate.js";
16
18
  import { findEntryByPath, findTermByPath } from "./path-chain.js";
@@ -19,28 +21,50 @@ import { previewTokenGrantsEntry, readPreviewToken } from "./preview.js";
19
21
  import { buildResolvedEntries } from "./render/build-resolved-entries.js";
20
22
  import { renderThroughTheme } from "./render/render-template.js";
21
23
  const DEFAULT_ARCHIVE_PER_PAGE = 20;
22
- export async function resolvePublicRoute(ctx, match, theme, document, templateDocuments, templateDeps, assetManifest) {
24
+ /**
25
+ * The public, non-hierarchical entry types — a site's posts, not its standalone
26
+ * pages. The front page, author archives, and date archives all list this set.
27
+ */
28
+ function publicListingTypes(ctx) {
29
+ return Array.from(ctx.plugins.entryTypes.entries())
30
+ .filter(([, spec]) => spec.isPublic !== false && spec.isHierarchical !== true)
31
+ .map(([key]) => key);
32
+ }
33
+ // `renderThroughTheme` returns `null` when the theme has no rule for the node
34
+ // and no `fallback` — a 404, per the router-style resolution model.
35
+ function htmlResponseOrNotFound(html, reason) {
36
+ if (html === null)
37
+ return notFound(reason);
38
+ return new Response(html, {
39
+ headers: { "content-type": "text/html; charset=utf-8" },
40
+ });
41
+ }
42
+ export async function resolvePublicRoute(ctx, match, theme, document, templateDeps, assetManifest) {
23
43
  switch (match.intent.kind) {
24
44
  case "single":
25
- return resolveSingle(ctx, match.intent, match.params, theme, document, templateDocuments, templateDeps, assetManifest);
45
+ return resolveSingle(ctx, match.intent, match.params, theme, document, templateDeps, assetManifest);
26
46
  case "archive":
27
- return resolveArchive(ctx, match.intent, match.params, theme, document, templateDocuments, templateDeps, assetManifest);
47
+ return resolveArchive(ctx, match.intent, match.params, theme, document, templateDeps, assetManifest);
28
48
  case "taxonomy":
29
- return resolveTaxonomy(ctx, match.intent, match.params, theme, document, templateDocuments, templateDeps, assetManifest);
49
+ return resolveTaxonomy(ctx, match.intent, match.params, theme, document, templateDeps, assetManifest);
30
50
  case "front-page":
31
- return resolveFrontPage(ctx, match.params, theme, document, templateDocuments, templateDeps, assetManifest);
51
+ return resolveFrontPage(ctx, match.params, theme, document, templateDeps, assetManifest);
52
+ case "author":
53
+ return resolveAuthor(ctx, match.params, theme, document, templateDeps, assetManifest);
54
+ case "date":
55
+ return resolveDate(ctx, match.params, theme, document, templateDeps, assetManifest);
56
+ case "custom":
57
+ return resolveCustom(ctx, match.intent, match.params, theme, document, templateDeps, assetManifest);
32
58
  case "search":
33
- return resolveSearch(ctx, match.params, theme, document, templateDocuments, templateDeps, assetManifest);
59
+ return resolveSearch(ctx, match.params, theme, document, templateDeps, assetManifest);
34
60
  }
35
61
  }
36
- async function resolveFrontPage(ctx, params, theme, document, templateDocuments, templateDeps, assetManifest) {
62
+ async function resolveFrontPage(ctx, params, theme, document, templateDeps, assetManifest) {
37
63
  const page = parsePageParam(params.page);
38
64
  // The latest-posts front feed excludes hierarchical types (pages) — they
39
65
  // are standalone content, not blog entries. (A configurable front-page /
40
66
  // posts-page model is the larger follow-up.)
41
- const publicTypes = Array.from(ctx.plugins.entryTypes.entries())
42
- .filter(([, spec]) => spec.isPublic !== false && spec.isHierarchical !== true)
43
- .map(([key]) => key);
67
+ const publicTypes = publicListingTypes(ctx);
44
68
  const where = publicTypes.length === 0
45
69
  ? null
46
70
  : and(eq(entries.status, "published"), isNotNull(entries.publishedAt), inArray(entries.type, publicTypes));
@@ -48,6 +72,7 @@ async function resolveFrontPage(ctx, params, theme, document, templateDocuments,
48
72
  if (result.outOfRange)
49
73
  return notFound("public-front-page-page-out-of-range");
50
74
  const initial = {
75
+ kind: "frontPage",
51
76
  entries: await buildResolvedEntries(ctx, result.rows),
52
77
  pagination: {
53
78
  page,
@@ -61,7 +86,6 @@ async function resolveFrontPage(ctx, params, theme, document, templateDocuments,
61
86
  ctx,
62
87
  theme,
63
88
  document,
64
- templateDocuments,
65
89
  templateDeps,
66
90
  assetManifest,
67
91
  node: { kind: "front-page" },
@@ -70,9 +94,7 @@ async function resolveFrontPage(ctx, params, theme, document, templateDocuments,
70
94
  // (site root) stays English here.
71
95
  title: "Home",
72
96
  });
73
- return new Response(html, {
74
- headers: { "content-type": "text/html; charset=utf-8" },
75
- });
97
+ return htmlResponseOrNotFound(html, "public-front-page-no-template");
76
98
  }
77
99
  function decodeSearchQuery(raw) {
78
100
  if (raw === undefined || raw === "")
@@ -86,7 +108,7 @@ function decodeSearchQuery(raw) {
86
108
  return "";
87
109
  }
88
110
  }
89
- async function resolveSearch(ctx, params, theme, document, templateDocuments, templateDeps, assetManifest) {
111
+ async function resolveSearch(ctx, params, theme, document, templateDeps, assetManifest) {
90
112
  // Plain HTML search forms submit `GET /search?q=…`; 301 to the canonical
91
113
  // path form (`/search/<q>`) so the query renders and the URL is shareable.
92
114
  if (params.query === undefined) {
@@ -110,6 +132,7 @@ async function resolveSearch(ctx, params, theme, document, templateDocuments, te
110
132
  if (result.outOfRange)
111
133
  return notFound("public-search-page-out-of-range");
112
134
  const initial = {
135
+ kind: "search",
113
136
  query,
114
137
  entries: await buildResolvedEntries(ctx, result.rows),
115
138
  pagination: {
@@ -124,18 +147,15 @@ async function resolveSearch(ctx, params, theme, document, templateDocuments, te
124
147
  ctx,
125
148
  theme,
126
149
  document,
127
- templateDocuments,
128
150
  templateDeps,
129
151
  assetManifest,
130
152
  node: { kind: "search" },
131
153
  data,
132
154
  title: data.query ? `Search: ${data.query}` : "Search",
133
155
  });
134
- return new Response(html, {
135
- headers: { "content-type": "text/html; charset=utf-8" },
136
- });
156
+ return htmlResponseOrNotFound(html, "public-search-no-template");
137
157
  }
138
- async function resolveTaxonomy(ctx, intent, params, theme, document, templateDocuments, templateDeps, assetManifest) {
158
+ async function resolveTaxonomy(ctx, intent, params, theme, document, templateDeps, assetManifest) {
139
159
  const term = await findTermForTaxonomy(ctx, intent.taxonomy, params);
140
160
  if (!term)
141
161
  return notFound("public-term-not-found");
@@ -156,6 +176,7 @@ async function resolveTaxonomy(ctx, intent, params, theme, document, templateDoc
156
176
  if (result.outOfRange)
157
177
  return notFound("public-term-page-out-of-range");
158
178
  const initial = {
179
+ kind: "taxonomy",
159
180
  taxonomy: intent.taxonomy,
160
181
  // Single archive term: the async builder walks ancestors for the full
161
182
  // nested URL (one call — no N+1).
@@ -173,7 +194,6 @@ async function resolveTaxonomy(ctx, intent, params, theme, document, templateDoc
173
194
  ctx,
174
195
  theme,
175
196
  document,
176
- templateDocuments,
177
197
  templateDeps,
178
198
  assetManifest,
179
199
  node: {
@@ -187,11 +207,138 @@ async function resolveTaxonomy(ctx, intent, params, theme, document, templateDoc
187
207
  ? labelSourceText(taxonomy.labels?.singular ?? taxonomy.label)
188
208
  : term.name,
189
209
  });
190
- return new Response(html, {
191
- headers: { "content-type": "text/html; charset=utf-8" },
210
+ return htmlResponseOrNotFound(html, "public-taxonomy-no-template");
211
+ }
212
+ async function resolveAuthor(ctx, params, theme, document, templateDeps, assetManifest) {
213
+ const slug = params.slug;
214
+ if (typeof slug !== "string" || slug === "") {
215
+ return notFound("public-author-not-found");
216
+ }
217
+ const author = await ctx.db.query.users.findFirst({
218
+ where: eq(users.slug, slug),
219
+ });
220
+ if (!author)
221
+ return notFound("public-author-not-found");
222
+ ctx.resolvedEntity = { kind: "author", id: author.id };
223
+ const page = parsePageParam(params.page);
224
+ // Author archives list the same public, non-hierarchical type set as the
225
+ // front page — a person's posts, not their standalone pages.
226
+ const publicTypes = publicListingTypes(ctx);
227
+ const where = publicTypes.length === 0
228
+ ? null
229
+ : and(eq(entries.authorId, author.id), eq(entries.status, "published"), isNotNull(entries.publishedAt), inArray(entries.type, publicTypes));
230
+ const result = await paginatedEntries(ctx, where, page, DEFAULT_ARCHIVE_PER_PAGE);
231
+ if (result.outOfRange)
232
+ return notFound("public-author-page-out-of-range");
233
+ const initial = {
234
+ kind: "author",
235
+ // Explicit projection — never spread the full user row (it carries email
236
+ // and auth columns) into the public template payload.
237
+ author: {
238
+ id: author.id,
239
+ slug: author.slug,
240
+ name: author.name,
241
+ avatarUrl: author.avatarUrl,
242
+ },
243
+ entries: await buildResolvedEntries(ctx, result.rows),
244
+ pagination: {
245
+ page,
246
+ perPage: DEFAULT_ARCHIVE_PER_PAGE,
247
+ total: result.total,
248
+ pageCount: result.pageCount,
249
+ },
250
+ };
251
+ const data = await ctx.hooks.applyFilter("resolve:author:data", initial);
252
+ const html = await renderThroughTheme({
253
+ ctx,
254
+ theme,
255
+ document,
256
+ templateDeps,
257
+ assetManifest,
258
+ node: { kind: "author", slug: author.slug, databaseId: author.id },
259
+ data,
260
+ title: data.author.name ?? data.author.slug,
261
+ });
262
+ return htmlResponseOrNotFound(html, "public-author-no-template");
263
+ }
264
+ function pad2(value) {
265
+ return String(value).padStart(2, "0");
266
+ }
267
+ function dateTitle(year, month, day) {
268
+ if (month === null)
269
+ return String(year);
270
+ if (day === null)
271
+ return `${String(year)}-${pad2(month)}`;
272
+ return `${String(year)}-${pad2(month)}-${pad2(day)}`;
273
+ }
274
+ async function resolveDate(ctx, params, theme, document, templateDeps, assetManifest) {
275
+ const year = Number(params.year);
276
+ const month = params.month === undefined ? null : Number(params.month);
277
+ const day = params.day === undefined ? null : Number(params.day);
278
+ const range = dateRange(year, month, day);
279
+ if (range === null)
280
+ return notFound("public-date-invalid");
281
+ const page = parsePageParam(params.page);
282
+ // Date archives list the same public, non-hierarchical type set as the front
283
+ // page, filtered to a published-at window.
284
+ const publicTypes = publicListingTypes(ctx);
285
+ const where = publicTypes.length === 0
286
+ ? null
287
+ : and(eq(entries.status, "published"), isNotNull(entries.publishedAt), gte(entries.publishedAt, range.start), lt(entries.publishedAt, range.end), inArray(entries.type, publicTypes));
288
+ const result = await paginatedEntries(ctx, where, page, DEFAULT_ARCHIVE_PER_PAGE);
289
+ if (result.outOfRange)
290
+ return notFound("public-date-page-out-of-range");
291
+ const initial = {
292
+ kind: "date",
293
+ year,
294
+ month,
295
+ day,
296
+ entries: await buildResolvedEntries(ctx, result.rows),
297
+ pagination: {
298
+ page,
299
+ perPage: DEFAULT_ARCHIVE_PER_PAGE,
300
+ total: result.total,
301
+ pageCount: result.pageCount,
302
+ },
303
+ };
304
+ const data = await ctx.hooks.applyFilter("resolve:date:data", initial);
305
+ const html = await renderThroughTheme({
306
+ ctx,
307
+ theme,
308
+ document,
309
+ templateDeps,
310
+ assetManifest,
311
+ node: { kind: "date", year, month, day },
312
+ data,
313
+ title: dateTitle(year, month, day),
192
314
  });
315
+ return htmlResponseOrNotFound(html, "public-date-no-template");
193
316
  }
194
- async function resolveSingle(ctx, intent, params, theme, document, templateDocuments, templateDeps, assetManifest) {
317
+ // The open seam: a plugin-registered archive type (`registerArchiveType`). The
318
+ // resolver comes from the registry, produces the `{ data, title }` payload (or
319
+ // `null` → 404), and templates via a `forArchiveType(name)` rule or `fallback`.
320
+ async function resolveCustom(ctx, intent, params, theme, document, templateDeps, assetManifest) {
321
+ const archive = ctx.plugins.archiveTypes.get(intent.name);
322
+ // A compiled route always names a registered archive; the guard is a
323
+ // defensive 404 rather than a throw if the two ever drift.
324
+ if (!archive)
325
+ return notFound("public-custom-archive-not-registered");
326
+ const result = await archive.resolve(ctx, params);
327
+ if (result === null)
328
+ return notFound("public-custom-archive-not-found");
329
+ const html = await renderThroughTheme({
330
+ ctx,
331
+ theme,
332
+ document,
333
+ templateDeps,
334
+ assetManifest,
335
+ node: { kind: "custom", name: intent.name },
336
+ data: result.data,
337
+ title: result.title,
338
+ });
339
+ return htmlResponseOrNotFound(html, "public-custom-archive-no-template");
340
+ }
341
+ async function resolveSingle(ctx, intent, params, theme, document, templateDeps, assetManifest) {
195
342
  const baseRow = await findEntryForSingle(ctx, intent.entryType, params);
196
343
  if (!baseRow)
197
344
  return notFound("public-post-not-found");
@@ -211,7 +358,7 @@ async function resolveSingle(ctx, intent, params, theme, document, templateDocum
211
358
  // eslint-disable-next-line no-restricted-syntax -- diagnostic throw
212
359
  throw new Error("buildResolvedEntries: empty result for one row");
213
360
  }
214
- const initial = { entry };
361
+ const initial = { kind: "entry", entry };
215
362
  const data = await ctx.hooks.applyFilter("resolve:single:data", initial);
216
363
  // Expand shortcodes in the author-written entry title so both the
217
364
  // document `<title>` and the theme-rendered heading resolve `[year]` &c.
@@ -229,7 +376,6 @@ async function resolveSingle(ctx, intent, params, theme, document, templateDocum
229
376
  ctx,
230
377
  theme,
231
378
  document,
232
- templateDocuments,
233
379
  templateDeps,
234
380
  assetManifest,
235
381
  node: {
@@ -242,11 +388,9 @@ async function resolveSingle(ctx, intent, params, theme, document, templateDocum
242
388
  title,
243
389
  editMode,
244
390
  });
245
- return new Response(html, {
246
- headers: { "content-type": "text/html; charset=utf-8" },
247
- });
391
+ return htmlResponseOrNotFound(html, "public-single-no-template");
248
392
  }
249
- async function resolveArchive(ctx, intent, params, theme, document, templateDocuments, templateDeps, assetManifest) {
393
+ async function resolveArchive(ctx, intent, params, theme, document, templateDeps, assetManifest) {
250
394
  const page = parsePageParam(params.page);
251
395
  const where = and(eq(entries.type, intent.entryType), eq(entries.status, "published"), isNotNull(entries.publishedAt));
252
396
  const registered = ctx.plugins.entryTypes.get(intent.entryType);
@@ -265,6 +409,7 @@ async function resolveArchive(ctx, intent, params, theme, document, templateDocu
265
409
  ? labelSourceText(registered.labels?.plural ?? registered.label)
266
410
  : intent.entryType;
267
411
  const initial = {
412
+ kind: "archive",
268
413
  contentType: intent.entryType,
269
414
  entries: await buildResolvedEntries(ctx, result.rows),
270
415
  pagination: {
@@ -279,16 +424,13 @@ async function resolveArchive(ctx, intent, params, theme, document, templateDocu
279
424
  ctx,
280
425
  theme,
281
426
  document,
282
- templateDocuments,
283
427
  templateDeps,
284
428
  assetManifest,
285
429
  node: { kind: "content-type-archive", entryType: intent.entryType },
286
430
  data,
287
431
  title,
288
432
  });
289
- return new Response(html, {
290
- headers: { "content-type": "text/html; charset=utf-8" },
291
- });
433
+ return htmlResponseOrNotFound(html, "public-archive-no-template");
292
434
  }
293
435
  // URL :page captures are always strings; invalid input (non-numeric,
294
436
  // negative, zero) coerces to NaN/<1 and flows into paginate() which
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/route/resolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/route/resolve.ts"],"names":[],"mappings":"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"}
@@ -19,13 +19,13 @@ export declare const create: import("@orpc/server").DecoratedProcedure<import("@
19
19
  readonly publishedAt: import("valibot").OptionalSchema<import("valibot").DateSchema<undefined>, undefined>;
20
20
  }, undefined>, import("@orpc/server").Schema<{
21
21
  id: number;
22
+ slug: string;
22
23
  meta: Record<string, unknown>;
23
24
  createdAt: Date;
24
25
  updatedAt: Date;
25
26
  type: string;
26
27
  parentId: number | null;
27
28
  title: string;
28
- slug: string;
29
29
  content: import("../../../index.js").EntryContent | null;
30
30
  excerpt: string | null;
31
31
  status: "draft" | "published" | "scheduled" | "trash";
@@ -34,13 +34,13 @@ export declare const create: import("@orpc/server").DecoratedProcedure<import("@
34
34
  publishedAt: Date | null;
35
35
  }, {
36
36
  id: number;
37
+ slug: string;
37
38
  meta: Record<string, unknown>;
38
39
  createdAt: Date;
39
40
  updatedAt: Date;
40
41
  type: string;
41
42
  parentId: number | null;
42
43
  title: string;
43
- slug: string;
44
44
  content: import("../../../index.js").EntryContent | null;
45
45
  excerpt: string | null;
46
46
  status: "draft" | "published" | "scheduled" | "trash";
@@ -2,13 +2,13 @@ export declare const deletePermanent: import("@orpc/server").DecoratedProcedure<
2
2
  readonly id: import("valibot").SchemaWithPipe<readonly [import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>, import("valibot").MaxValueAction<number, number, undefined>]>;
3
3
  }, undefined>, import("@orpc/server").Schema<{
4
4
  id: number;
5
+ slug: string;
5
6
  meta: Record<string, unknown>;
6
7
  createdAt: Date;
7
8
  updatedAt: Date;
8
9
  type: string;
9
10
  parentId: number | null;
10
11
  title: string;
11
- slug: string;
12
12
  content: import("../../../index.js").EntryContent | null;
13
13
  excerpt: string | null;
14
14
  status: "draft" | "published" | "scheduled" | "trash";
@@ -17,13 +17,13 @@ export declare const deletePermanent: import("@orpc/server").DecoratedProcedure<
17
17
  publishedAt: Date | null;
18
18
  }, {
19
19
  id: number;
20
+ slug: string;
20
21
  meta: Record<string, unknown>;
21
22
  createdAt: Date;
22
23
  updatedAt: Date;
23
24
  type: string;
24
25
  parentId: number | null;
25
26
  title: string;
26
- slug: string;
27
27
  content: import("../../../index.js").EntryContent | null;
28
28
  excerpt: string | null;
29
29
  status: "draft" | "published" | "scheduled" | "trash";
@@ -2,13 +2,13 @@ export declare const duplicate: import("@orpc/server").DecoratedProcedure<import
2
2
  readonly id: import("valibot").SchemaWithPipe<readonly [import("valibot").NumberSchema<undefined>, import("valibot").IntegerAction<number, undefined>, import("valibot").MinValueAction<number, 1, undefined>, import("valibot").MaxValueAction<number, number, undefined>]>;
3
3
  }, undefined>, import("@orpc/server").Schema<{
4
4
  id: number;
5
+ slug: string;
5
6
  meta: Record<string, unknown>;
6
7
  createdAt: Date;
7
8
  updatedAt: Date;
8
9
  type: string;
9
10
  parentId: number | null;
10
11
  title: string;
11
- slug: string;
12
12
  content: import("../../../index.js").EntryContent | null;
13
13
  excerpt: string | null;
14
14
  status: "draft" | "published" | "scheduled" | "trash";
@@ -17,13 +17,13 @@ export declare const duplicate: import("@orpc/server").DecoratedProcedure<import
17
17
  publishedAt: Date | null;
18
18
  }, {
19
19
  id: number;
20
+ slug: string;
20
21
  meta: Record<string, unknown>;
21
22
  createdAt: Date;
22
23
  updatedAt: Date;
23
24
  type: string;
24
25
  parentId: number | null;
25
26
  title: string;
26
- slug: string;
27
27
  content: import("../../../index.js").EntryContent | null;
28
28
  excerpt: string | null;
29
29
  status: "draft" | "published" | "scheduled" | "trash";
@@ -3,13 +3,13 @@ export declare const get: import("@orpc/server").DecoratedProcedure<import("@orp
3
3
  readonly preview: import("valibot").OptionalSchema<import("valibot").BooleanSchema<undefined>, undefined>;
4
4
  }, undefined>, import("@orpc/server").Schema<{
5
5
  id: number;
6
+ slug: string;
6
7
  meta: Record<string, unknown>;
7
8
  createdAt: Date;
8
9
  updatedAt: Date;
9
10
  type: string;
10
11
  parentId: number | null;
11
12
  title: string;
12
- slug: string;
13
13
  content: import("../../../index.js").EntryContent | null;
14
14
  excerpt: string | null;
15
15
  status: "draft" | "published" | "scheduled" | "trash";
@@ -25,13 +25,13 @@ export declare const get: import("@orpc/server").DecoratedProcedure<import("@orp
25
25
  };
26
26
  }, {
27
27
  id: number;
28
+ slug: string;
28
29
  meta: Record<string, unknown>;
29
30
  createdAt: Date;
30
31
  updatedAt: Date;
31
32
  type: string;
32
33
  parentId: number | null;
33
34
  title: string;
34
- slug: string;
35
35
  content: import("../../../index.js").EntryContent | null;
36
36
  excerpt: string | null;
37
37
  status: "draft" | "published" | "scheduled" | "trash";