Skip to content

Commit ba4b531

Browse files
claude[bot]claude
andauthored
docs(ui): react-pages html-tier names are verbatim, not kebab-case (#16258)
The html-tier spelling paragraph in react-pages.mdx told authors that registered block names are "lowercase and kebab-case", but four registered names (record:line_items, record:quick_actions, record:reference_rail, record:related_list) are snake_case after their namespace prefix. The sdui-parser whitelist is an exact Set.has comparison with no case folding or separator normalisation, so a kebab-case respelling of one of those names (record:related-list) is rejected at save time exactly like a PascalCase borrow. Drop the "lowercase and kebab-case" gloss, let the verbatim rule stand on its own, and add a second snake_case example (record:line_items) plus a concrete negative example so the shape is demonstrated rather than described. Claude-Session: https://claude.ai/code/session_01Vbw3RPgdtqesx4azk9SbW8 Co-authored-by: Claude <noreply@anthropic.com>
1 parent 6573af9 commit ba4b531

1 file changed

Lines changed: 6 additions & 3 deletions

File tree

content/docs/ui/react-pages.mdx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,12 @@ tags in the public block manifest are accepted, props are checked against each b
3131
declared inputs, and an unknown tag is a hard error at save time. That is the tier for
3232
author- or AI-generated pages you have not reviewed.
3333

34-
Those tags are the **registered type names, written verbatim** — lowercase and
35-
kebab-case, keeping the namespace prefix where a block has one: `<list-view>`,
36-
`<object-form>`, `<object-chart>`, `<record:related_list>`, `<flex>`. The **PascalCase**
34+
Those tags are the **registered type names, written verbatim** — whatever the registry
35+
spells, character for character, including a `record:` / `page:` / `element:` /
36+
`action:` namespace prefix and any underscore inside the name: `<list-view>`,
37+
`<object-form>`, `<object-chart>`, `<record:related_list>`, `<record:line_items>`,
38+
`<flex>`. A name re-spelled to look uniform is not registered: `<record:related-list>`
39+
is rejected at save time, only `<record:related_list>` exists. The **PascalCase**
3740
spellings further down this page (`<ListView>`, `<ObjectForm>`, `<ObjectChart>`) are the
3841
**react tier's** convention and are not registered names, so an html page that borrows
3942
one is rejected at save time with `<ListView> is not an allowed component`.

0 commit comments

Comments
 (0)