<schema-component> — top-level Lit Custom Element for editable
schema-driven UI.
Parity with the React <SchemaComponent> for the rendering path:
Accepts a Zod schema, JSON Schema, or OpenAPI document via the
schema property (NOT attribute — see "Property-only schema/
value/resolver" in lit/README.md).
Walks the schema via normaliseSchema → walk from
core/walker.ts and dispatches every node through a Lit
resolver — by default, the createDefaultLitResolver
resolver that renders the built-in <sc-*> Custom Elements.
Emits a public change Custom Event on every user edit, with
the updated root value in event.detail.value. Cross-framework
wrappers translate this into the host framework's event /
binding primitive (React's onChange, Vue @change, Svelte
on:change).
The element is registered by registerSchemaComponents; tag
name defaults to <schema-component>. Pass a non-empty prefix
(registerSchemaComponents("myapp-")) to namespace the top-level
tag alongside every <sc-*> child.
<schema-component>— top-level Lit Custom Element for editable schema-driven UI.Parity with the React
<SchemaComponent>for the rendering path:schemaproperty (NOT attribute — see "Property-only schema/ value/resolver" inlit/README.md).normaliseSchema→walkfromcore/walker.tsand dispatches every node through a Lit resolver — by default, the createDefaultLitResolver resolver that renders the built-in<sc-*>Custom Elements.changeCustom Event on every user edit, with the updated root value inevent.detail.value. Cross-framework wrappers translate this into the host framework's event / binding primitive (React'sonChange, Vue@change, Svelteon:change).The element is registered by registerSchemaComponents; tag name defaults to
<schema-component>. Pass a non-empty prefix (registerSchemaComponents("myapp-")) to namespace the top-level tag alongside every<sc-*>child.