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

    The object mounted on GeoLeaf.Layers. Reads promote the per-layer GeoJSONCore store; the base-dataset writes, unit mutations, visible-subset, reactive paint and merge are the seam's own surface.

    interface LayerDataApi {
        getFeatures(layerId: string): Feature<Geometry, GeoJsonProperties>[];
        getFeatureById(
            layerId: string,
            id: string | number,
        ): Feature<Geometry, GeoJsonProperties> | null;
        getFeatureCount(layerId: string): number;
        listLayerIds(): string[];
        hasLayer(layerId: string): boolean;
        setData(
            layerId: string,
            features: Feature<Geometry, GeoJsonProperties>[],
        ): void;
        clear(layerId: string): void;
        addFeature(layerId: string, feature: Feature): void;
        removeFeature(layerId: string, id: string | number): boolean;
        updateFeatureId(
            layerId: string,
            oldId: string | number,
            newId: string | number,
        ): void;
        patchFeature(
            layerId: string,
            id: string | number,
            patch: Record<string, unknown>,
            opts?: { rerender?: boolean },
        ): void;
        setVisibleSubset(layerId: string, predicate: (f: Feature) => boolean): void;
        clearVisibleSubset(layerId: string): void;
        setFeatureState(
            layerId: string,
            id: string | number,
            state: LayerFeatureState,
        ): void;
        mergeFeatures(
            layerId: string,
            features: readonly Feature<Geometry, GeoJsonProperties>[],
        ): void;
    }
    Index

    Methods

    • All features of a layer (empty array when the layer is unknown).

      Parameters

      • layerId: string

      Returns Feature<Geometry, GeoJsonProperties>[]

    • A single feature by its stable id (feature.id or properties.id), or null.

      Parameters

      • layerId: string
      • id: string | number

      Returns Feature<Geometry, GeoJsonProperties> | null

    • Replaces a layer's base features, re-renders the source, and emits.

      Parameters

      • layerId: string
      • features: Feature<Geometry, GeoJsonProperties>[]

      Returns void

    • Appends one feature to the base dataset.

      Parameters

      • layerId: string
      • feature: Feature

      Returns void

    • Removes one feature by id; returns true when a feature was removed.

      Parameters

      • layerId: string
      • id: string | number

      Returns boolean

    • Re-keys a feature (temp id → server id) on both feature.id and properties.id.

      Parameters

      • layerId: string
      • oldId: string | number
      • newId: string | number

      Returns void

    • Merges patch into a feature's properties (baked — persists across source rebuilds). Silent by default (no source rebuild); pass { rerender: true } to re-render immediately.

      Parameters

      • layerId: string
      • id: string | number
      • patch: Record<string, unknown>
      • Optionalopts: { rerender?: boolean }

      Returns void

    • Displays only the features matching predicate, WITHOUT mutating the base dataset — the subset is re-derived from the full base on each apply (GPU setFilter id-match, JS predicate fallback).

      Parameters

      • layerId: string
      • predicate: (f: Feature) => boolean

      Returns void

    • Upserts features into the base dataset, de-duplicated by id.

      Parameters

      • layerId: string
      • features: readonly Feature<Geometry, GeoJsonProperties>[]

      Returns void