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

    modules.permalink — URL Permalink / Deep Linking configuration (S13).

    Serializes the current map state (centre, zoom, visible layers, active filter, theme) into the browser URL so the exact view can be restored on reload or shared. In-core capability, opt-out (active unless enabled: false). Migrated from the former ui.permalink block.

    // config/plugins/permalink.json (or omit entirely to keep the defaults):
    { "enabled": true, "mode": "hash" }
    interface PermalinkConfig {
        enabled?: boolean;
        mode?: "hash" | "query" | "compact";
        fields?: (
            | "filter"
            | "layers"
            | "theme"
            | "shownLayers"
            | "categories"
            | "tags"
            | "rating"
        )[];
        share?: { enabled?: boolean };
    }
    Index

    Properties

    enabled?: boolean

    Enable URL permalink synchronisation. Opt-out — default true.

    mode?: "hash" | "query" | "compact"

    URL encoding strategy.

    • "hash" (default): state in window.location.hash — no server request.
    • "query": state in window.location.search — requires server-side pass-through.
    • "compact": base64-encoded state in hash — shorter URL, not human-readable.
    fields?: (
        | "filter"
        | "layers"
        | "theme"
        | "shownLayers"
        | "categories"
        | "tags"
        | "rating"
    )[]

    Optional facets to include in the serialized state. Default: all of them (layers, taxonomy/tag/rating facets, text filter, theme).

    ⚠️ The view state is mandatory and is not listable here: lat / lng / zoom are always written by buildUrl and always required by the parser (a permalink without a view carries nothing to restore). They were part of this union until v2.x but were inert — removing them from the list changed nothing. The whitelist now only holds what it actually gates, and it is enforced on both the verbose and the compact (gl=<base64>) encodings.

    share?: { enabled?: boolean }

    Share-view sub-feature (copy-link modal + QR code). Opt-out — the share button is shown unless enabled: false (S13 F7 — share is a sub-feature of permalink).

    Type Declaration

    • Optionalenabled?: boolean

      Enable the share button + modal. Opt-out — default true.