@caelo-cms/shared 0.10.72 → 0.11.1
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/ai-tools.d.ts +103 -142
- package/dist/ai-tools.d.ts.map +1 -1
- package/dist/ai-tools.js +79 -167
- package/dist/ai-tools.js.map +1 -1
- package/dist/build-page.d.ts +115 -35
- package/dist/build-page.d.ts.map +1 -1
- package/dist/build-page.js +31 -12
- package/dist/build-page.js.map +1 -1
- package/dist/content.d.ts +214 -102
- package/dist/content.d.ts.map +1 -1
- package/dist/content.js +219 -84
- package/dist/content.js.map +1 -1
- package/dist/css-scope-scan.js +1 -1
- package/dist/css-var-aliases.d.ts +20 -0
- package/dist/css-var-aliases.d.ts.map +1 -0
- package/dist/css-var-aliases.js +95 -0
- package/dist/css-var-aliases.js.map +1 -0
- package/dist/css-var-scan.d.ts +0 -16
- package/dist/css-var-scan.d.ts.map +1 -1
- package/dist/css-var-scan.js +24 -0
- package/dist/css-var-scan.js.map +1 -1
- package/dist/edit-markers.d.ts +41 -5
- package/dist/edit-markers.d.ts.map +1 -1
- package/dist/edit-markers.js +47 -50
- package/dist/edit-markers.js.map +1 -1
- package/dist/escaped-line-breaks.d.ts +44 -0
- package/dist/escaped-line-breaks.d.ts.map +1 -0
- package/dist/escaped-line-breaks.js +203 -0
- package/dist/escaped-line-breaks.js.map +1 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/interactions.js +6 -6
- package/dist/interactions.js.map +1 -1
- package/dist/link-canonicalise.d.ts.map +1 -1
- package/dist/link-canonicalise.js +7 -1
- package/dist/link-canonicalise.js.map +1 -1
- package/dist/link-refs.d.ts +1 -1
- package/dist/link-refs.js +3 -3
- package/dist/lists/address.d.ts +34 -0
- package/dist/lists/address.d.ts.map +1 -0
- package/dist/lists/address.js +43 -0
- package/dist/lists/address.js.map +1 -0
- package/dist/lists/default-types.d.ts +22 -0
- package/dist/lists/default-types.d.ts.map +1 -0
- package/dist/lists/default-types.js +127 -0
- package/dist/lists/default-types.js.map +1 -0
- package/dist/lists/fields.d.ts +152 -0
- package/dist/lists/fields.d.ts.map +1 -0
- package/dist/lists/fields.js +259 -0
- package/dist/lists/fields.js.map +1 -0
- package/dist/lists/index.d.ts +14 -0
- package/dist/lists/index.d.ts.map +1 -0
- package/dist/lists/index.js +15 -0
- package/dist/lists/index.js.map +1 -0
- package/dist/lists/item-attr.d.ts +26 -0
- package/dist/lists/item-attr.d.ts.map +1 -0
- package/dist/lists/item-attr.js +31 -0
- package/dist/lists/item-attr.js.map +1 -0
- package/dist/lists/items.d.ts +105 -0
- package/dist/lists/items.d.ts.map +1 -0
- package/dist/lists/items.js +304 -0
- package/dist/lists/items.js.map +1 -0
- package/dist/lists/list-type.d.ts +401 -0
- package/dist/lists/list-type.d.ts.map +1 -0
- package/dist/lists/list-type.js +275 -0
- package/dist/lists/list-type.js.map +1 -0
- package/dist/lists/model.d.ts +14 -0
- package/dist/lists/model.d.ts.map +1 -0
- package/dist/lists/model.js +15 -0
- package/dist/lists/model.js.map +1 -0
- package/dist/lists/page-type.d.ts +115 -0
- package/dist/lists/page-type.d.ts.map +1 -0
- package/dist/lists/page-type.js +66 -0
- package/dist/lists/page-type.js.map +1 -0
- package/dist/lists/refs.d.ts +13 -0
- package/dist/lists/refs.d.ts.map +1 -0
- package/dist/lists/refs.js +18 -0
- package/dist/lists/refs.js.map +1 -0
- package/dist/lists/render-data.d.ts +123 -0
- package/dist/lists/render-data.d.ts.map +1 -0
- package/dist/lists/render-data.js +3 -0
- package/dist/lists/render-data.js.map +1 -0
- package/dist/lists/render-deps.d.ts +69 -0
- package/dist/lists/render-deps.d.ts.map +1 -0
- package/dist/lists/render-deps.js +93 -0
- package/dist/lists/render-deps.js.map +1 -0
- package/dist/lists/resolve-values.d.ts +63 -0
- package/dist/lists/resolve-values.d.ts.map +1 -0
- package/dist/lists/resolve-values.js +181 -0
- package/dist/lists/resolve-values.js.map +1 -0
- package/dist/lists/resolve.d.ts +119 -0
- package/dist/lists/resolve.d.ts.map +1 -0
- package/dist/lists/resolve.js +970 -0
- package/dist/lists/resolve.js.map +1 -0
- package/dist/lists/scope.d.ts +81 -0
- package/dist/lists/scope.d.ts.map +1 -0
- package/dist/lists/scope.js +3 -0
- package/dist/lists/scope.js.map +1 -0
- package/dist/markup-structure.d.ts +8 -0
- package/dist/markup-structure.d.ts.map +1 -1
- package/dist/markup-structure.js +2 -0
- package/dist/markup-structure.js.map +1 -1
- package/dist/media.d.ts +1 -1
- package/dist/nested-module-render.d.ts +38 -20
- package/dist/nested-module-render.d.ts.map +1 -1
- package/dist/nested-module-render.js +156 -31
- package/dist/nested-module-render.js.map +1 -1
- package/dist/page-log.d.ts +1 -1
- package/dist/preview-compose.d.ts +24 -21
- package/dist/preview-compose.d.ts.map +1 -1
- package/dist/preview-compose.js +34 -118
- package/dist/preview-compose.js.map +1 -1
- package/dist/redirect-plan.d.ts +13 -0
- package/dist/redirect-plan.d.ts.map +1 -1
- package/dist/redirect-plan.js +22 -0
- package/dist/redirect-plan.js.map +1 -1
- package/dist/seo.d.ts +21 -0
- package/dist/seo.d.ts.map +1 -1
- package/dist/seo.js +32 -0
- package/dist/seo.js.map +1 -1
- package/dist/source-text-transport.d.ts +43 -0
- package/dist/source-text-transport.d.ts.map +1 -0
- package/dist/source-text-transport.js +79 -0
- package/dist/source-text-transport.js.map +1 -0
- package/dist/template-engine.d.ts +44 -31
- package/dist/template-engine.d.ts.map +1 -1
- package/dist/template-engine.js +75 -174
- package/dist/template-engine.js.map +1 -1
- package/dist/template-sections.d.ts +69 -0
- package/dist/template-sections.d.ts.map +1 -0
- package/dist/template-sections.js +436 -0
- package/dist/template-sections.js.map +1 -0
- package/dist/version.d.ts +2 -2
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +8 -1
- package/src/__tests__/redos-hardening.test.ts +51 -16
- package/src/ai-tools-add-module-modes.test.ts +51 -1
- package/src/ai-tools.test.ts +7 -10
- package/src/ai-tools.ts +90 -180
- package/src/bug-intake.test.ts +1 -1
- package/src/build-page.test.ts +34 -3
- package/src/build-page.ts +34 -11
- package/src/content.test.ts +137 -4
- package/src/content.ts +230 -85
- package/src/css-scope-scan.ts +1 -1
- package/src/css-var-aliases.test.ts +61 -0
- package/src/css-var-aliases.ts +109 -0
- package/src/css-var-scan.ts +9 -0
- package/src/edit-markers.test.ts +37 -21
- package/src/edit-markers.ts +52 -20
- package/src/escaped-line-breaks.ts +221 -0
- package/src/index.ts +4 -1
- package/src/interactions.ts +6 -6
- package/src/link-canonicalise.test.ts +36 -6
- package/src/link-canonicalise.ts +6 -1
- package/src/link-refs.test.ts +67 -42
- package/src/link-refs.ts +3 -3
- package/src/lists/address.ts +75 -0
- package/src/lists/default-types.ts +141 -0
- package/src/lists/fields.ts +286 -0
- package/src/lists/index.ts +16 -0
- package/src/lists/item-attr.test.ts +36 -0
- package/src/lists/item-attr.ts +49 -0
- package/src/lists/items.ts +402 -0
- package/src/lists/list-fixtures.test.ts +308 -0
- package/src/lists/list-type.ts +306 -0
- package/src/lists/lists.test.ts +328 -0
- package/src/lists/model.ts +16 -0
- package/src/lists/page-type.ts +71 -0
- package/src/lists/refs.ts +21 -0
- package/src/lists/render-data.ts +134 -0
- package/src/lists/render-deps.test.ts +132 -0
- package/src/lists/render-deps.ts +147 -0
- package/src/lists/resolve-values.ts +224 -0
- package/src/lists/resolve.test.ts +472 -0
- package/src/lists/resolve.ts +1246 -0
- package/src/lists/scope.ts +69 -0
- package/src/lists-compose-parity.test.ts +262 -0
- package/src/markup-structure.ts +10 -0
- package/src/nested-module-render.test.ts +147 -74
- package/src/nested-module-render.ts +120 -48
- package/src/preview-compose.test.ts +55 -19
- package/src/preview-compose.ts +59 -154
- package/src/redirect-plan.test.ts +25 -0
- package/src/redirect-plan.ts +24 -0
- package/src/seo.test.ts +58 -0
- package/src/seo.ts +49 -0
- package/src/source-text-transport.test.ts +158 -0
- package/src/source-text-transport.ts +81 -0
- package/src/template-engine-lists.test.ts +608 -0
- package/src/template-engine.test.ts +62 -80
- package/src/template-engine.ts +102 -245
- package/src/template-sections.ts +514 -0
- package/src/version.ts +1 -1
- package/dist/structured-sets.d.ts +0 -70
- package/dist/structured-sets.d.ts.map +0 -1
- package/dist/structured-sets.js +0 -92
- package/dist/structured-sets.js.map +0 -1
- package/src/structured-sets.ts +0 -114
- package/src/template-engine-data-lists.test.ts +0 -90
package/dist/content.js
CHANGED
|
@@ -9,6 +9,10 @@
|
|
|
9
9
|
* trying to set `html` on a page fails Zod parse before any handler runs.
|
|
10
10
|
*/
|
|
11
11
|
import { z } from "zod";
|
|
12
|
+
import { hasEscapedLineBreaks } from "./escaped-line-breaks.js";
|
|
13
|
+
import { listItemInputSchema } from "./lists/items.js";
|
|
14
|
+
import { LIST_MAX_ITEMS, sourceDefSchema } from "./lists/list-type.js";
|
|
15
|
+
import { LIST_REF_RE } from "./lists/refs.js";
|
|
12
16
|
/** Lowercase slug, hyphenated, 1–64 chars, no leading/trailing hyphen. */
|
|
13
17
|
export const slugSchema = z
|
|
14
18
|
.string()
|
|
@@ -74,7 +78,72 @@ export const MODULE_CSS_MAX = 128 * 1024;
|
|
|
74
78
|
export const MODULE_JS_MAX = 256 * 1024;
|
|
75
79
|
export const TEMPLATE_HTML_MAX = 512 * 1024;
|
|
76
80
|
export const TEMPLATE_CSS_MAX = 128 * 1024;
|
|
77
|
-
|
|
81
|
+
/**
|
|
82
|
+
* Code payloads a model sometimes corrupts before they reach us, both seen
|
|
83
|
+
* in PR #1121's real-AI runs and stored verbatim before this guard:
|
|
84
|
+
* - JSON-encoded: the whole value wrapped in quotes with `\"` escapes
|
|
85
|
+
* (`"<footer class=\"x\">…"`) — the page showed literal quotes;
|
|
86
|
+
* - HTML-escaped markup: `<div><caelo-slot …` with no real tag
|
|
87
|
+
* — a template without a single slot, so it had no blocks at all.
|
|
88
|
+
* Refusing at the write boundary with the fix turns a broken render the
|
|
89
|
+
* AI only notices from a screenshot into one corrected call (CLAUDE.md
|
|
90
|
+
* §2, §11; same reasoning as the CDATA guard below). AI tool arguments
|
|
91
|
+
* never reach this in that shape: `sourceTextArg` decodes both encodings
|
|
92
|
+
* first (`source-text-transport.ts`); this guards every other writer.
|
|
93
|
+
*/
|
|
94
|
+
export function jsonEncodedCodeMessage(field, value) {
|
|
95
|
+
const t = value.trim();
|
|
96
|
+
if (t.length < 2 || !t.startsWith('"') || !t.endsWith('"'))
|
|
97
|
+
return null;
|
|
98
|
+
try {
|
|
99
|
+
if (typeof JSON.parse(t) !== "string")
|
|
100
|
+
return null;
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
return null;
|
|
104
|
+
}
|
|
105
|
+
return `${field} is JSON-encoded (wrapped in quotes with \\" escapes) — send the raw ${field} itself, not a JSON string of it.`;
|
|
106
|
+
}
|
|
107
|
+
/** See {@link jsonEncodedCodeMessage}: markup sent HTML-escaped. */
|
|
108
|
+
export function htmlEscapedMarkupMessage(field, value) {
|
|
109
|
+
if (value.includes("<") || !/<\/?[a-zA-Z]/.test(value))
|
|
110
|
+
return null;
|
|
111
|
+
return `${field} is HTML-escaped (<…> instead of <…>) — send the markup itself, unescaped.`;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* See {@link jsonEncodedCodeMessage}: source whose line breaks arrived as
|
|
115
|
+
* literal `\n` sequences (`hasEscapedLineBreaks`) — the page shows the
|
|
116
|
+
* `\n` text and the CSS rules after it break. AI tool arguments are decoded
|
|
117
|
+
* first (`decodeEscapedLineBreaks`); this guards every other writer. Module
|
|
118
|
+
* js is checked by parsing it (admin-core `module-js-syntax.ts`), which
|
|
119
|
+
* catches this and every other syntax error.
|
|
120
|
+
*/
|
|
121
|
+
export function escapedLineBreaksMessage(field, value) {
|
|
122
|
+
if (!hasEscapedLineBreaks(value, field))
|
|
123
|
+
return null;
|
|
124
|
+
return `${field} has its line breaks escaped (literal \\n sequences, no real line break) — send the ${field} with real line breaks.`;
|
|
125
|
+
}
|
|
126
|
+
const noCorruptMarkup = (field) => (value, ctx) => {
|
|
127
|
+
const message = jsonEncodedCodeMessage(field, value) ??
|
|
128
|
+
htmlEscapedMarkupMessage(field, value) ??
|
|
129
|
+
escapedLineBreaksMessage(field, value);
|
|
130
|
+
if (message)
|
|
131
|
+
ctx.addIssue({ code: "custom", message });
|
|
132
|
+
};
|
|
133
|
+
const noJsonEncodedCode = (field) => (value, ctx) => {
|
|
134
|
+
const message = jsonEncodedCodeMessage(field, value);
|
|
135
|
+
if (message)
|
|
136
|
+
ctx.addIssue({ code: "custom", message });
|
|
137
|
+
};
|
|
138
|
+
const noCorruptCss = (value, ctx) => {
|
|
139
|
+
const message = jsonEncodedCodeMessage("css", value) ?? escapedLineBreaksMessage("css", value);
|
|
140
|
+
if (message)
|
|
141
|
+
ctx.addIssue({ code: "custom", message });
|
|
142
|
+
};
|
|
143
|
+
const moduleHtml = z
|
|
144
|
+
.string()
|
|
145
|
+
.max(MODULE_HTML_MAX, `html exceeds ${MODULE_HTML_MAX} bytes`)
|
|
146
|
+
.superRefine(noCorruptMarkup("html"));
|
|
78
147
|
/**
|
|
79
148
|
* issue #432 root-cause guard — reject XML CDATA wrappers in module css/js.
|
|
80
149
|
*
|
|
@@ -100,11 +169,13 @@ const cdataMessage = (field) => `${field} contains an XML CDATA marker (${CDATA_
|
|
|
100
169
|
const moduleCss = z
|
|
101
170
|
.string()
|
|
102
171
|
.max(MODULE_CSS_MAX, `css exceeds ${MODULE_CSS_MAX} bytes`)
|
|
103
|
-
.refine(noCdata, cdataMessage("css"))
|
|
172
|
+
.refine(noCdata, cdataMessage("css"))
|
|
173
|
+
.superRefine(noCorruptCss);
|
|
104
174
|
const moduleJs = z
|
|
105
175
|
.string()
|
|
106
176
|
.max(MODULE_JS_MAX, `js exceeds ${MODULE_JS_MAX} bytes`)
|
|
107
|
-
.refine(noCdata, cdataMessage("js"))
|
|
177
|
+
.refine(noCdata, cdataMessage("js"))
|
|
178
|
+
.superRefine(noJsonEncodedCode("js"));
|
|
108
179
|
/**
|
|
109
180
|
* v0.4.0 — module field schema. Each field declares one substitution slot in
|
|
110
181
|
* the module's templated HTML (`{{fieldName}}`) and the kind of content it
|
|
@@ -137,27 +208,27 @@ export const MODULE_FIELD_PRIMITIVE_KINDS = [
|
|
|
137
208
|
"link",
|
|
138
209
|
];
|
|
139
210
|
/**
|
|
140
|
-
*
|
|
141
|
-
*
|
|
142
|
-
*
|
|
143
|
-
*
|
|
144
|
-
*
|
|
145
|
-
* Use `text-list` for "list of strings" — menu labels, tag chips,
|
|
146
|
-
* bullet points where each item is just text. Inner template
|
|
147
|
-
* references `{{.}}` (Mustache convention) or `{{item}}` to mean
|
|
148
|
-
* the current element.
|
|
211
|
+
* Epic #1107 — the data-list field kind (`docs/lists.md` §7). One kind
|
|
212
|
+
* for every repeated piece of data: feature bullets, a footer link group,
|
|
213
|
+
* a three-level menu, a mega dropdown, a "latest news" block. The entry
|
|
214
|
+
* shape comes from a LIST TYPE (`listType`, a slug); the entries come from
|
|
215
|
+
* the field's binding:
|
|
149
216
|
*
|
|
150
|
-
*
|
|
151
|
-
*
|
|
152
|
-
*
|
|
217
|
+
* - `local` (default) — entries stored in the placement's value
|
|
218
|
+
* (`ListItem[]`), only this module shows them;
|
|
219
|
+
* - `shared` — a `caelo:list/<id>` list, fixed on the field (`list`) or
|
|
220
|
+
* chosen per placement; navigation and anything needed in
|
|
221
|
+
* more than one place;
|
|
222
|
+
* - `source` — entries generated per page from `source` (a page query,
|
|
223
|
+
* a system source like breadcrumbs, a plugin source).
|
|
153
224
|
*
|
|
154
|
-
*
|
|
155
|
-
*
|
|
156
|
-
*
|
|
225
|
+
* The template iterates `{{#field}}…{{/field}}` the same way for every
|
|
226
|
+
* binding. `module-list` stays: it composes modules, lists carry data.
|
|
227
|
+
* Replaces the `text-list` / `link-list` kinds.
|
|
157
228
|
*/
|
|
158
|
-
export const MODULE_FIELD_LIST_KINDS = ["
|
|
229
|
+
export const MODULE_FIELD_LIST_KINDS = ["list"];
|
|
159
230
|
export const MODULE_FIELD_NESTED_KINDS = ["module", "module-list"];
|
|
160
|
-
/**
|
|
231
|
+
/** Every module field kind. */
|
|
161
232
|
export const MODULE_FIELD_KINDS = [
|
|
162
233
|
...MODULE_FIELD_PRIMITIVE_KINDS,
|
|
163
234
|
...MODULE_FIELD_LIST_KINDS,
|
|
@@ -165,10 +236,9 @@ export const MODULE_FIELD_KINDS = [
|
|
|
165
236
|
];
|
|
166
237
|
/**
|
|
167
238
|
* Field kinds the shared template engine iterates via the
|
|
168
|
-
* `{{#name}}…{{/name}}` Mustache-section operator
|
|
169
|
-
* list
|
|
170
|
-
*
|
|
171
|
-
* keys off it (`packages/shared/src/template-engine.ts`).
|
|
239
|
+
* `{{#name}}…{{/name}}` Mustache-section operator (`list` and
|
|
240
|
+
* `module-list`); the engine's section-dispatch keys off it
|
|
241
|
+
* (`packages/shared/src/template-engine.ts`).
|
|
172
242
|
*/
|
|
173
243
|
export const MODULE_FIELD_SECTION_KINDS = [...MODULE_FIELD_LIST_KINDS, "module-list"];
|
|
174
244
|
const moduleFieldName = z.string().regex(/^[a-z][a-z0-9_]{0,63}$/, "name must be snake_case");
|
|
@@ -192,7 +262,7 @@ const moduleFieldModuleSchema = z
|
|
|
192
262
|
* stable `modules.type` class, e.g. `button` — NOT the unique
|
|
193
263
|
* `modules.slug` like `button-mpqxq3ch`). When absent, any module is
|
|
194
264
|
* permitted. The op-layer validator enforces the whitelist against
|
|
195
|
-
* the referenced module's `type` at `
|
|
265
|
+
* the referenced module's `type` at `content_instances.set_values`
|
|
196
266
|
* time. v0.12.3 (issue #106) renamed this from `allowedModuleSlugs`:
|
|
197
267
|
* an exact-slug whitelist could never match an AI-minted module
|
|
198
268
|
* because every minted slug carries a uniqueness suffix.
|
|
@@ -215,41 +285,72 @@ const moduleFieldModuleListSchema = z
|
|
|
215
285
|
})
|
|
216
286
|
.strict();
|
|
217
287
|
/**
|
|
218
|
-
*
|
|
219
|
-
* the
|
|
220
|
-
* is
|
|
221
|
-
*
|
|
288
|
+
* Epic #1107 — a `list` field (`docs/lists.md` §7). The static schema
|
|
289
|
+
* checks the SHAPE: the binding's parts fit together and a local default
|
|
290
|
+
* is well-formed entries. Whether those entries fit the named list type
|
|
291
|
+
* (nodes, fields, depth) needs the type, which is stored data — the op
|
|
292
|
+
* layer validates that with `validateListItems` when the module is
|
|
293
|
+
* written, and the renderer reports `list-type-missing:<slug>` for a type
|
|
294
|
+
* that is gone.
|
|
222
295
|
*/
|
|
223
|
-
const
|
|
296
|
+
const moduleFieldListSchema = z
|
|
224
297
|
.object({
|
|
225
298
|
name: moduleFieldName,
|
|
226
|
-
kind: z.literal("
|
|
299
|
+
kind: z.literal("list"),
|
|
227
300
|
label: moduleFieldLabel,
|
|
301
|
+
/** Slug of the list type that defines the entries. */
|
|
302
|
+
listType: slugSchema,
|
|
303
|
+
bind: z.enum(["local", "shared", "source"]).optional(),
|
|
304
|
+
/** `bind: "shared"` — fix the list for every placement (`caelo:list/<id>`). */
|
|
305
|
+
list: z.string().regex(LIST_REF_RE, "list must be caelo:list/<id>").optional(),
|
|
306
|
+
/** `bind: "source"` — where generated entries come from. */
|
|
307
|
+
source: sourceDefSchema.optional(),
|
|
228
308
|
min: z.number().int().nonnegative().optional(),
|
|
229
|
-
max: z.number().int().positive().max(
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
* forcing a sub-module per link.
|
|
238
|
-
*/
|
|
239
|
-
const moduleFieldLinkListSchema = z
|
|
240
|
-
.object({
|
|
241
|
-
name: moduleFieldName,
|
|
242
|
-
kind: z.literal("link-list"),
|
|
243
|
-
label: moduleFieldLabel,
|
|
244
|
-
min: z.number().int().nonnegative().optional(),
|
|
245
|
-
max: z.number().int().positive().max(256).optional(),
|
|
246
|
-
default: z.array(z.object({ label: z.string(), href: z.string() }).strict()).optional(),
|
|
309
|
+
max: z.number().int().positive().max(LIST_MAX_ITEMS).optional(),
|
|
310
|
+
/** `local`: entries; `shared`: `caelo:list/<id>`. */
|
|
311
|
+
default: z
|
|
312
|
+
.union([
|
|
313
|
+
z.array(listItemInputSchema),
|
|
314
|
+
z.string().regex(LIST_REF_RE, "a shared default must be caelo:list/<id>"),
|
|
315
|
+
])
|
|
316
|
+
.optional(),
|
|
247
317
|
})
|
|
248
318
|
.strict();
|
|
319
|
+
/** Binding consistency of one `list` field; every problem, AI-actionable. */
|
|
320
|
+
function listFieldIssues(f) {
|
|
321
|
+
const bind = f.bind ?? "local";
|
|
322
|
+
const issues = [];
|
|
323
|
+
if (bind === "source" && f.source === undefined) {
|
|
324
|
+
issues.push(`list field "${f.name}": bind "source" needs a source (query, system or plugin).`);
|
|
325
|
+
}
|
|
326
|
+
if (bind !== "source" && f.source !== undefined) {
|
|
327
|
+
issues.push(`list field "${f.name}": source is only allowed with bind "source".`);
|
|
328
|
+
}
|
|
329
|
+
if (bind === "local" && f.list !== undefined) {
|
|
330
|
+
issues.push(`list field "${f.name}": list is only allowed with bind "shared" — a local list stores its entries in the placement.`);
|
|
331
|
+
}
|
|
332
|
+
if (bind === "source" && f.list !== undefined && f.source?.kind !== "system") {
|
|
333
|
+
issues.push(`list field "${f.name}": list on a source field names the vocabulary of a page_terms source only.`);
|
|
334
|
+
}
|
|
335
|
+
if (f.default !== undefined) {
|
|
336
|
+
if (bind === "local" && typeof f.default === "string") {
|
|
337
|
+
issues.push(`list field "${f.name}": a local default is an array of entries, not a list reference.`);
|
|
338
|
+
}
|
|
339
|
+
if (bind === "shared" && Array.isArray(f.default)) {
|
|
340
|
+
issues.push(`list field "${f.name}": a shared default is caelo:list/<id> — create the list with upsert_lists_many first.`);
|
|
341
|
+
}
|
|
342
|
+
if (bind === "source") {
|
|
343
|
+
issues.push(`list field "${f.name}": a source field has no default; its entries are generated.`);
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
if (f.min !== undefined && f.max !== undefined && f.min > f.max) {
|
|
347
|
+
issues.push(`list field "${f.name}": min is greater than max.`);
|
|
348
|
+
}
|
|
349
|
+
return issues;
|
|
350
|
+
}
|
|
249
351
|
export const moduleFieldSchema = z.discriminatedUnion("kind", [
|
|
250
352
|
moduleFieldPrimitiveSchema,
|
|
251
|
-
|
|
252
|
-
moduleFieldLinkListSchema,
|
|
353
|
+
moduleFieldListSchema,
|
|
253
354
|
moduleFieldModuleSchema,
|
|
254
355
|
moduleFieldModuleListSchema,
|
|
255
356
|
]);
|
|
@@ -322,14 +423,20 @@ const moduleFieldsArray = z
|
|
|
322
423
|
return;
|
|
323
424
|
}
|
|
324
425
|
seen.add(f.name);
|
|
426
|
+
if (f.kind === "list") {
|
|
427
|
+
for (const message of listFieldIssues(f)) {
|
|
428
|
+
ctx.addIssue({ code: z.ZodIssueCode.custom, message });
|
|
429
|
+
}
|
|
430
|
+
}
|
|
325
431
|
}
|
|
326
432
|
for (const run of findNumberedScalarFanoutRuns(arr)) {
|
|
327
433
|
ctx.addIssue({
|
|
328
434
|
code: z.ZodIssueCode.custom,
|
|
329
435
|
message: `numbered-scalar fanout: ${run.map((n) => `"${n}"`).join(", ")} repeat one role as ` +
|
|
330
436
|
"numbered scalar fields — repeating content is ONE list field, never numbered scalars " +
|
|
331
|
-
'(CLAUDE.md §1A). Replace the run with a single field: kind "
|
|
332
|
-
'strings
|
|
437
|
+
'(CLAUDE.md §1A). Replace the run with a single field: kind "list" with a list type ' +
|
|
438
|
+
'(listType "texts" for plain strings — the template iterates {{#f}}{{text}}{{/f}}; ' +
|
|
439
|
+
'"links" for label + link — {{#f}}<a href="{{link}}">{{label}}</a>{{/f}}), or ' +
|
|
333
440
|
'"module-list" (rich per-item structure: mint a card sub-module and reference it per ' +
|
|
334
441
|
"item — in build_page, author the card detached with `ref` and pass " +
|
|
335
442
|
'[{"$ref": "<ref>"}, …] as the field value). A two-field split like col1/col2 is fine; ' +
|
|
@@ -348,7 +455,7 @@ export const moduleKindSchema = z.enum(MODULE_KINDS);
|
|
|
348
455
|
/**
|
|
349
456
|
* v0.12.0 — description is `.default("")` at the Zod boundary so the
|
|
350
457
|
* 82+ legacy callers in tests/seed scripts keep working unchanged.
|
|
351
|
-
* AI tool descriptions (
|
|
458
|
+
* AI tool descriptions (add_module / build_page / update_modules_many) require the AI
|
|
352
459
|
* to supply a real description explicitly — see CLAUDE.md §1A.
|
|
353
460
|
*/
|
|
354
461
|
const moduleDescription = z.string().max(1000);
|
|
@@ -387,29 +494,25 @@ export const moduleUpdateSchema = z
|
|
|
387
494
|
fields: moduleFieldsArray.optional(),
|
|
388
495
|
})
|
|
389
496
|
.strict();
|
|
390
|
-
/**
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
* product-pages as a pattern. See CLAUDE.md §1A.
|
|
395
|
-
*/
|
|
396
|
-
export const TEMPLATE_KINDS = [
|
|
397
|
-
"home",
|
|
398
|
-
"landing",
|
|
399
|
-
"product",
|
|
400
|
-
"blog",
|
|
401
|
-
"doc",
|
|
402
|
-
"content",
|
|
403
|
-
"utility",
|
|
404
|
-
];
|
|
405
|
-
export const templateKindSchema = z.enum(TEMPLATE_KINDS);
|
|
497
|
+
/** A page type slug (epic #1107, docs/lists.md §5). */
|
|
498
|
+
export const pageTypeSlugSchema = z
|
|
499
|
+
.string()
|
|
500
|
+
.regex(/^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$/, "page type slug: lowercase letters, digits, hyphens");
|
|
406
501
|
export const templateCreateSchema = z
|
|
407
502
|
.object({
|
|
408
503
|
slug: slugSchema,
|
|
409
504
|
displayName: displayNameSchema,
|
|
410
|
-
/**
|
|
411
|
-
|
|
412
|
-
|
|
505
|
+
/**
|
|
506
|
+
* Epic #1107 — the page type (slug) this template serves; the template
|
|
507
|
+
* is appended to that type's `templates`. Omit for the site's default
|
|
508
|
+
* page type (`site_defaults.default_page_type_id`, stored data — not a
|
|
509
|
+
* render-time fallback).
|
|
510
|
+
*/
|
|
511
|
+
pageType: pageTypeSlugSchema.optional(),
|
|
512
|
+
html: z
|
|
513
|
+
.string()
|
|
514
|
+
.max(TEMPLATE_HTML_MAX, `html exceeds ${TEMPLATE_HTML_MAX} bytes`)
|
|
515
|
+
.superRefine(noCorruptMarkup("html")),
|
|
413
516
|
css: z.string().max(TEMPLATE_CSS_MAX, `css exceeds ${TEMPLATE_CSS_MAX} bytes`).default(""),
|
|
414
517
|
/**
|
|
415
518
|
* P6.7.6 — every template binds to one layout. When omitted, the
|
|
@@ -446,9 +549,9 @@ export const templateUpdateSchema = z
|
|
|
446
549
|
.object({
|
|
447
550
|
templateId: z.string().uuid(),
|
|
448
551
|
displayName: displayNameSchema.optional(),
|
|
449
|
-
/**
|
|
450
|
-
|
|
451
|
-
html: z.string().max(TEMPLATE_HTML_MAX).optional(),
|
|
552
|
+
/** Epic #1107 — also allow this template for the page type (slug); appended to its `templates`. */
|
|
553
|
+
pageType: pageTypeSlugSchema.optional(),
|
|
554
|
+
html: z.string().max(TEMPLATE_HTML_MAX).superRefine(noCorruptMarkup("html")).optional(),
|
|
452
555
|
css: z.string().max(TEMPLATE_CSS_MAX).optional(),
|
|
453
556
|
/** P6.7.6 — re-point the template to a different layout. */
|
|
454
557
|
layoutId: z.string().uuid().optional(),
|
|
@@ -474,6 +577,14 @@ export const templateBlocksSetSchema = z
|
|
|
474
577
|
})
|
|
475
578
|
.strict();
|
|
476
579
|
export const pageStatusSchema = z.enum(["draft", "published"]);
|
|
580
|
+
/** `pages.short_title` (#1142): a crumb-sized public label, never blank. */
|
|
581
|
+
export const pageShortTitleSchema = z
|
|
582
|
+
.string()
|
|
583
|
+
.trim()
|
|
584
|
+
.min(1, "the short title is the page's breadcrumb label and cannot be blank")
|
|
585
|
+
// Same bound as the title it is backfilled and defaulted from, so every
|
|
586
|
+
// stored page stays editable; keeping it crumb-sized is guidance.
|
|
587
|
+
.max(256);
|
|
477
588
|
/**
|
|
478
589
|
* Page payloads are `.strict()` — passing an `html` field is rejected by Zod
|
|
479
590
|
* before the handler runs. This is the §3.1 "no raw HTML on pages" invariant
|
|
@@ -483,9 +594,13 @@ export const pageStatusSchema = z.enum(["draft", "published"]);
|
|
|
483
594
|
export const pageCreateSchema = z
|
|
484
595
|
.object({
|
|
485
596
|
slug: slugSchema,
|
|
486
|
-
/** P6.7.5 — internal editor label. Defaults to title if omitted. */
|
|
487
|
-
name: z.string().min(1).max(256).optional(),
|
|
488
597
|
title: z.string().min(1).max(256),
|
|
598
|
+
/**
|
|
599
|
+
* #1142 — the page's public label in breadcrumbs, navigation and the
|
|
600
|
+
* page picker ("Pricing" for "Pricing for teams of every size").
|
|
601
|
+
* Omitted = the create-time resolver stores `title` (stored data).
|
|
602
|
+
*/
|
|
603
|
+
shortTitle: pageShortTitleSchema.optional(),
|
|
489
604
|
/**
|
|
490
605
|
* P6.7.6 — optional. When omitted, the handler resolves to
|
|
491
606
|
* `site_defaults.default_template_id` at create time. Stored data,
|
|
@@ -506,6 +621,16 @@ export const pageCreateSchema = z
|
|
|
506
621
|
* becomes "<parent's path>/<slug>". Omit (or null) for a top-level page.
|
|
507
622
|
*/
|
|
508
623
|
parentPageId: z.string().uuid().nullable().optional(),
|
|
624
|
+
/**
|
|
625
|
+
* Epic #1107 — what the page IS (page type slug). Omit to take the type
|
|
626
|
+
* whose `templates` contain the template; with neither `pageType` nor
|
|
627
|
+
* `templateId`, the site's default page type and its default template.
|
|
628
|
+
*/
|
|
629
|
+
pageType: pageTypeSlugSchema.optional(),
|
|
630
|
+
/** Property values, validated against the page type. */
|
|
631
|
+
properties: z.record(z.string(), z.unknown()).optional(),
|
|
632
|
+
/** Terms (`caelo:term/<listId>/<itemId>`) from the page type's vocabularies. */
|
|
633
|
+
terms: z.array(z.string().max(120)).max(100).optional(),
|
|
509
634
|
})
|
|
510
635
|
.strict();
|
|
511
636
|
/**
|
|
@@ -537,9 +662,9 @@ export const pageUpdateSchema = z
|
|
|
537
662
|
* Routes that load the page first should always pass it back.
|
|
538
663
|
*/
|
|
539
664
|
expectedVersion: z.number().int().nonnegative().optional(),
|
|
540
|
-
/** P6.7.5 — three independently-editable identifiers. */
|
|
541
|
-
name: z.string().min(1).max(256).optional(),
|
|
542
665
|
title: z.string().min(1).max(256).optional(),
|
|
666
|
+
/** #1142 — the breadcrumb / navigation label; see {@link pageCreateSchema}. */
|
|
667
|
+
shortTitle: pageShortTitleSchema.optional(),
|
|
543
668
|
slug: slugSchema.optional(),
|
|
544
669
|
templateId: z.string().uuid().optional(),
|
|
545
670
|
status: pageStatusSchema.optional(),
|
|
@@ -555,6 +680,16 @@ export const pageUpdateSchema = z
|
|
|
555
680
|
* every inbound link, which is never a safe default (CLAUDE.md §2).
|
|
556
681
|
*/
|
|
557
682
|
redirectFromOld: z.enum(["auto", "skip"]).optional(),
|
|
683
|
+
/**
|
|
684
|
+
* Epic #1107 — switch the page type (slug). The template must be one of
|
|
685
|
+
* the type's templates (pass `templateId` too when it is not), and the
|
|
686
|
+
* page's properties and terms must fit the new type.
|
|
687
|
+
*/
|
|
688
|
+
pageType: pageTypeSlugSchema.optional(),
|
|
689
|
+
/** Merged into the page's properties; `null` removes a property. */
|
|
690
|
+
properties: z.record(z.string(), z.unknown()).optional(),
|
|
691
|
+
/** Replaces the page's terms (`caelo:term/<listId>/<itemId>`). */
|
|
692
|
+
terms: z.array(z.string().max(120)).max(100).optional(),
|
|
558
693
|
})
|
|
559
694
|
.strict();
|
|
560
695
|
export const pageSetModulesSchema = z
|
|
@@ -587,10 +722,10 @@ export const syncModeSchema = z.enum(["synced", "unsynced"]);
|
|
|
587
722
|
const contentValuesSchema = z.record(z.string(), z.unknown());
|
|
588
723
|
/**
|
|
589
724
|
* v0.12.0 — why this row exists as a shared/reusable instance.
|
|
590
|
-
*
|
|
591
|
-
*
|
|
592
|
-
*
|
|
593
|
-
*
|
|
725
|
+
* Shown by the AI's list_content_instances tool so the AI can decide
|
|
726
|
+
* *reuse the synced row* vs *fork to unsynced* vs *mint new* without
|
|
727
|
+
* asking the operator. Required by the AI's
|
|
728
|
+
* create_content_instances tool description; legacy callers may pass
|
|
594
729
|
* null (the migration-0093 unsynced rows have purpose=NULL).
|
|
595
730
|
* See CLAUDE.md §1A.
|
|
596
731
|
*/
|
package/dist/content.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content.js","sourceRoot":"","sources":["../src/content.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"content.js","sourceRoot":"","sources":["../src/content.ts"],"names":[],"mappings":"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"}
|
package/dist/css-scope-scan.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* that is not tied to the module bleeds into every other module on the
|
|
7
7
|
* page: an `h1 {}` in the hero restyles the pricing table's heading, a
|
|
8
8
|
* `.card {}` in one module restyles another module's cards. The
|
|
9
|
-
* convention (
|
|
9
|
+
* convention (update_modules_many description, design-quality skill) is to nest
|
|
10
10
|
* module CSS under the module's own root class; this scanner is the
|
|
11
11
|
* mechanical write-time check that rides the authoring tool's result,
|
|
12
12
|
* so the AI fixes the selector in the same turn. A warning, not a gate:
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** The theme var an unknown name stands for, or null. */
|
|
2
|
+
export declare function themeVarForAlias(name: string, knownVars: ReadonlySet<string>): string | null;
|
|
3
|
+
/** One renamed reference. */
|
|
4
|
+
export interface CssVarRename {
|
|
5
|
+
readonly from: string;
|
|
6
|
+
readonly to: string;
|
|
7
|
+
readonly count: number;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Rename `var(--alias…)` references to the theme's name for that role.
|
|
11
|
+
* A name the CSS itself defines (`--surface: …`) is the author's own
|
|
12
|
+
* property and stays.
|
|
13
|
+
*/
|
|
14
|
+
export declare function renameCssVarAliases(css: string, knownVars: readonly string[], definedInCss: ReadonlySet<string>): {
|
|
15
|
+
css: string;
|
|
16
|
+
renames: CssVarRename[];
|
|
17
|
+
};
|
|
18
|
+
/** Tool-result sentence for the renames, or null. */
|
|
19
|
+
export declare function formatCssVarRenameReport(renames: readonly CssVarRename[]): string | null;
|
|
20
|
+
//# sourceMappingURL=css-var-aliases.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css-var-aliases.d.ts","sourceRoot":"","sources":["../src/css-var-aliases.ts"],"names":[],"mappings":"AA+CA,yDAAyD;AACzD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,IAAI,CAM5F;AAKD,6BAA6B;AAC7B,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,GAChC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,CAuB1C;AAED,qDAAqD;AACrD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,MAAM,GAAG,IAAI,CAOxF"}
|