GeoLeaf Core API - v3.0.0
    Preparing search index...

    Descriptor for a single field to display in tooltip / popup / side-panel.

    interface FeatureInfoFieldConfig {
        field: string;
        label?: string;
        type?: AttributeWidget;
        style?: AttributeEmphasis;
        variant?: "title" | "hero" | "multiline";
        hidden?: boolean;
        actionId?: string;
        accordion?: boolean;
        defaultOpen?: boolean;
    }
    Index

    Properties

    field: string

    Property key to read. Accepts a dotted path resolved against the normalized { properties, attributes } feature model — e.g. "properties.Name", "attributes.photo" (see resolve.ts).

    label?: string

    Human-readable label. Defaults to the raw field key when omitted.

    Which widget renders the value. Defaults to "text".

    ⚠️ Typed by the CONTRACT rather than by a local union. FieldType lived here and declared 17 members against the 24 the engine renders — one of the five parallel type vocabularies the pre-flight found, and the one that made date, url and email "declared but rendered nowhere". A single list cannot diverge from itself.

    Visual emphasis.

    ⚠️ Typed by the CONTRACT. The local FieldStyle declared 29 values of which 3 were branched, and the other 26 produced neither a branch nor a CSS class — measured, twice, a week apart.

    variant?: "title" | "hero" | "multiline"

    Pre-type presentation hint carried verbatim from the authored config; normalized by the render engine (legacy parity): hero (image → hero), title (text → title emphasis), multiline (text → longtext).

    hidden?: boolean

    When true, the field is never rendered.

    actionId?: string

    Identifier dispatched with geoleaf:popup:action for type: "action".

    accordion?: boolean

    Side-panel only: wrap this field in a collapsible <details> section.

    defaultOpen?: boolean

    Side-panel only: when accordion, render the section expanded initially.