Skip to content

PresentationPathResult

kind: "presentation"


optional locale?: string | null

The locale this address resolved to — what a root layout sets <html lang> from. Sent for a site with a locale addressing strategy (the address carries the locale, so the server is the one that knows it); absent against an invariant site and against an older server. null when the organization has no locale tree to name one from.


optional localeSlot?: string

The locale slot the path was found in. Usually the locale’s own code, but default when that locale has no materialized slot yet and the page was found by its default path.


nodeId: string


path: string


presentation: PresentationEnvelope


optional title?: string

The title the CMS computed for this address: the node’s own contextual override where there is one, the bound component’s frozen title otherwise, and the node’s internal editor label as the floor, so a server never sees an empty one. titleSource says which answered.

Optional because the value can genuinely be absent on this side of the wire even though a current server always sends one: against an older server, and on a result constructed locally rather than fetched (a live-preview draft has no frozen title). Write result.title ?? 'Your fallback'.


optional titleSource?: "name" | "content"

content = from the bound content, whether the address overrode it or not; name = the node’s internal label, meaning no Contract in the chain declares a title field.