sharemap_maplib_flutter library

Classes

Annotation
Base interface for all data-driven map annotations drawn via style layers (symbols, lines, fills, circles, etc.).
AnnotationManager<T extends Annotation>
Manages a homogeneous set of Annotations (e.g. symbols, lines, fills) by owning their backing style source(s)/layer(s) and performing efficient batched updates.
ArgumentCallbacks<T>
Mutable collection of ArgumentCallback instances, itself an ArgumentCallback.
CameraPosition
The position of the map "camera", the view point from which the world is shown in the map view. Aggregates the camera's target geographical location, its zoom level, tilt angle, and bearing.
CameraTargetBounds
Bounds for the map camera target. Used with MapLibreMapOptions to wrap a LatLngBounds value. This allows distinguishing between specifying an unbounded target (null LatLngBounds) from not specifying anything (null CameraTargetBounds).
CameraUpdate
Defines a camera move, supporting absolute moves as well as moves relative the current position.
Circle
CircleLayerProperties
CircleManager
CircleOptions
Configuration options for Circle instances.
DownloadRegionStatus
Error
Expressions
Fill
FillExtrusionLayerProperties
FillLayerProperties
FillManager
FillOptions
Configuration options for Fill instances.
GeofencingCircle
Lightweight data class for geofencing circles. Replaces google_maps_flutter Circle with a plain data holder that works with MapLibre's LatLng.
GeojsonSourceProperties
HeatmapLayerProperties
HillshadeLayerProperties
ImageSourceProperties
InProgress
LatLng
A pair of latitude and longitude coordinates, stored as degrees.
LatLngBounds
A latitude/longitude aligned rectangle.
LatLngQuad
A geographical area representing a non-aligned quadrilateral This class does not wrap values to the world bounds
LayerProperties
Line
LineLayerProperties
LineManager
LineOptions
Configuration options for Line instances.
LocationEnginePlatforms
Location engine properties that apply across all platforms.
MapLibreMap
Shows a MapLibre map. Also refer to the documentation of maplibre_gl and MapLibreMapController.
MapLibreMapController
Controller for a single MapLibreMap instance running on the host platform.
MapLibreMapOptions
Configuration options for the MapLibreMap user interface.
MapLibreMethodChannel
MapLibrePlatform
MapLibreStyles
MapLibre styles used mostly for demonstration.
MinMaxZoomPreference
Preferred bounds for map camera zoom level. Used with MapLibreMapOptions to wrap min and max zoom. This allows distinguishing between specifying unbounded zooming (null minZoom and maxZoom) from not specifying anything (null MinMaxZoomPreference).
OfflineRegion
Description of a downloaded region including its identifier.
OfflineRegionDefinition
Description of region to be downloaded. Identifier will be generated when the download is initiated.
OfflineRegionStatus
Status of an offline region's download.
PolygonData
Lightweight data class for polygons. Replaces google_maps_flutter Polygon with a plain data holder.
PolylineData
Lightweight data class for polylines / routes. Replaces google_maps_flutter Polyline with a plain data holder.
RasterDemSourceProperties
RasterLayerProperties
RasterSourceProperties
ShareMapLayerIds
Pre-defined layer IDs built into the ShareMap style JSON. Use these constants to dynamically show, hide, or restyle layers on the map using controller.setLayerVisibility(layerId, 'visible' | 'none') or raw paint/layout operations.
ShareMapLibre
A premium map widget that extends MapLibreMap directly to inherit all fields. On runtime, it overrides createState to return _ShareMapLibreInternalState which asynchronously resolves the authenticated style JSON before instantiating a raw MapLibreMap.
SourceProperties
StyleLoader
Helper utility to dynamically load map styles and inject authorization.
Success
Symbol
SymbolLayerProperties
SymbolManager
SymbolOptions
Configuration options for Symbol instances.
UserHeading
Type represents a geomagnetic value, measured in microteslas, relative to a device axis in three dimensional space.
UserLocation
User's observed location
VectorSourceProperties
VideoSourceProperties

Enums

AnnotationType
AttributionButtonPosition
Attribution Button Position
CameraAnimationInterpolation
Easing curve for MapLibreMapController.easeCamera animations.
CompassViewPosition
Compass View Position
DragEventType
HoverEventType
LocationPriority
An enum representing the priority for location accuracy and power usage. (Android only)
LogoViewPosition
Logo View Position
MyLocationRenderMode
Specifies if and how the user's heading/bearing is rendered in the user location indicator.
MyLocationTrackingMode
The camera mode, which determines how the map camera will track the rendered location.
ScaleControlPosition
Scale Control Position
ScaleControlUnit
Scale Control Unit
ShareMapMode
Environment mode for ShareMap, controlling logging and URL endpoints.
ShareMapStyle
Available map styles for ShareMap.

Extensions

MapLibreColorConversion on Color
ShareMapStyleExtension on ShareMapStyle
Extension on ShareMapStyle to retrieve the configuration values.

Functions

buildFeatureCollection(List<Map<String, dynamic>> features) Map<String, dynamic>
clearAmbientCache() Future<void>
Removes all tiles from the shared ambient cache that are not associated with any offline region. Call this after deleteOfflineRegion to fully evict tiles that would otherwise be reused by a future download of the same area.
deleteOfflineRegion(int id) Future
downloadOfflineRegion(OfflineRegionDefinition definition, {Map<String, dynamic> metadata = const {}, dynamic onEvent(DownloadRegionStatus event)?}) Future<OfflineRegion>
getListOfRegions() Future<List<OfflineRegion>>
getOfflineRegionStatus(int id) Future<OfflineRegionStatus>
Gets the current download status of an offline region.
getRandomString([int length = 10]) String
installOfflineMapTiles(String tilesDb) Future<void>
Copy tiles db file passed in to the tiles cache directory (sideloaded) to make tiles available offline.
mergeOfflineRegions(String path) Future<List<OfflineRegion>>
pauseOfflineRegionDownload(int id) Future<void>
Pauses an in-progress offline region download.
resetOfflineDatabase() Future<void>
Resets the entire offline database: deletes every offline region and clears the ambient cache. Use with care — offline regions cannot be recovered afterwards.
resumeOfflineRegionDownload(int id) Future<void>
Resumes a paused offline region download.
setHttpHeaders(Map<String, String> headers) Future<void>
Sets HTTP headers that are injected into every network request MapLibre makes (tile fetches, style JSON, sprites, glyphs).
setOffline(bool offline) Future
setOfflineMaxConcurrentRequests({int? maxRequests, int? maxRequestsPerHost}) Future<void>
Sets the maximum number of concurrent HTTP requests for tile downloads.
setOfflineTileCountLimit(int limit) Future
updateOfflineRegionMetadata(int id, Map<String, dynamic> metadata) Future<OfflineRegion>

Typedefs

MapCreatedCallback = void Function(MapLibreMapController controller)
OnCameraIdleCallback = void Function()
OnCameraMoveCallback = void Function(CameraPosition cameraPosition)
OnCameraTrackingChangedCallback = void Function(MyLocationTrackingMode mode)
OnCameraTrackingDismissedCallback = void Function()
OnFeatureDragCallback = void Function(Point<double> point, LatLng origin, LatLng current, LatLng delta, String id, Annotation? annotation, DragEventType eventType)
OnFeatureHoverCallback = void Function(Point<double> point, LatLng coordinates, String id, Annotation? annotation, HoverEventType eventType)
OnFeatureInteractionCallback = void Function(Point<double> point, LatLng coordinates, String id, String layerId, Annotation? annotation)
OnMapClickCallback = void Function(Point<double> point, LatLng coordinates)
OnMapIdleCallback = void Function()
OnMapLongClickCallback = void Function(Point<double> point, LatLng coordinates)
OnMapMouseMoveCallback = void Function(Point<double> point, LatLng coordinates)
OnPlatformViewCreatedCallback = void Function(int)
The default instance of MapLibrePlatform to use.
OnStyleLoadedCallback = void Function()
OnUserLocationUpdated = void Function(UserLocation location)