mirror of
https://github.com/webstudio-is/webstudio.git
synced 2026-10-27 15:16:53 +09:00
## What changed - mark published Head Slot descendants with an internal context - portal JSON-LD scripts nested in Head Slot into `document.head` - preserve page-flow rendering for JSON-LD used outside Head Slot - add browser-DOM regression coverage for both placements ## Root cause React hoists `title`, `meta`, and `link` elements rendered by Head Slot, but it does not hoist inline `script type="application/ld+json"` elements. As a result, JSON-LD nested in Head Slot remained under the page body. ## Impact JSON-LD placed in Head Slot now appears in the document head after the published page mounts. JSON-LD intentionally placed outside Head Slot remains in its original page position. ## Validation - `pnpm --filter @webstudio-is/sdk-components-react test` - `pnpm --filter @webstudio-is/sdk-components-react typecheck` - targeted oxlint on changed files - `pnpm --filter @webstudio-is/sdk-components-react build` - `pnpm build`
Webstudio SDK Components
Webstudio SDK is a TypeScript API that lets you use your Webstudio project or some components in your custom codebase or just render a complete Remix Document.
Component Registry Metadata
Webstudio component discovery uses a shadcn-compatible registry item shape with Webstudio-specific metadata stored in meta. The top-level registry fields stay compatible with shadcn conventions, while meta.runtime, meta.authoring, and meta.builder describe Webstudio component ids, props, content models, templates, insertion rules, and Builder/MCP guidance.
This package is not published as an installable shadcn registry yet; the shape is used internally by Builder and MCP discovery.