Skip to content

Documentation / @gebeta/react

@gebeta/react

Classes

BrowserLocationProvider

Implements

  • ILocationProvider

Methods

start()
ts
start(onLocation): void
Parameters
ParameterType
onLocation(location) => void
Returns

void

Implementation of

ILocationProvider.start

Defined in

node_modules/@gebeta/js/dist/adapters/LocationProvider.d.ts:12

stop()
ts
stop(): void
Returns

void

Implementation of

ILocationProvider.stop

Defined in

node_modules/@gebeta/js/dist/adapters/LocationProvider.d.ts:13

getInstance()
ts
static getInstance(options?): BrowserLocationProvider
Parameters
ParameterType
options?LocationProviderOptions
Returns

BrowserLocationProvider

Defined in

node_modules/@gebeta/js/dist/adapters/LocationProvider.d.ts:11


ClusteringManager

Manages marker clustering on a MapLibre map.

Groups nearby markers into clusters at lower zoom levels and renders individual markers when zoomed in. Cluster markers automatically expand on click unless a custom clusterOnClick handler is provided.

Enable via the constructor: new GebetaMaps({ clustering: { enabled: true } }), then access via sdk.clustering.

Constructors

new ClusteringManager()
ts
new ClusteringManager(
   mapAdapter, 
   markerFactory, 
   popupFactory, 
   options?): ClusteringManager
Parameters
ParameterType
mapAdapterIMapAdapter
markerFactoryIMarkerFactory
popupFactoryIPopupFactory
options?ClusteringOptions
Returns

ClusteringManager

Defined in

node_modules/@gebeta/js/dist/Clustering/ClusteringManager.d.ts:24

Methods

addMarker()
ts
addMarker(marker): void

Add a marker to clustering.

Parameters
ParameterTypeDescription
markerMarkerDataMarker data to add
Returns

void

Defined in

node_modules/@gebeta/js/dist/Clustering/ClusteringManager.d.ts:29

clearMarkers()
ts
clearMarkers(): void

Clear all markers.

Returns

void

Defined in

node_modules/@gebeta/js/dist/Clustering/ClusteringManager.d.ts:39

getMarker()
ts
getMarker(markerId): undefined | MarkerData

Get marker by ID.

Parameters
ParameterTypeDescription
markerIdstringID of marker to find
Returns

undefined | MarkerData

Marker data or undefined if not found

Defined in

node_modules/@gebeta/js/dist/Clustering/ClusteringManager.d.ts:50

getMarkers()
ts
getMarkers(): MarkerData[]

Get all markers.

Returns

MarkerData[]

Array of all markers

Defined in

node_modules/@gebeta/js/dist/Clustering/ClusteringManager.d.ts:44

getOptions()
ts
getOptions(): any

Get clustering options.

Returns

any

Current clustering options

Defined in

node_modules/@gebeta/js/dist/Clustering/ClusteringManager.d.ts:60

removeMarker()
ts
removeMarker(markerId): boolean

Remove a marker by ID.

Parameters
ParameterTypeDescription
markerIdstringID of marker to remove
Returns

boolean

True if marker was removed, false if not found

Defined in

node_modules/@gebeta/js/dist/Clustering/ClusteringManager.d.ts:35

updateOptions()
ts
updateOptions(options): void

Update clustering options.

Parameters
ParameterTypeDescription
optionsPartial<ClusteringOptions>Partial options to update
Returns

void

Defined in

node_modules/@gebeta/js/dist/Clustering/ClusteringManager.d.ts:55


DirectionsManager

Manages route display on the map.

Wraps the core DirectionsManager and adds MapLibre GL rendering: draws the route line and places origin/destination/waypoint markers.

Use via sdk.getDirections() and sdk.displayRoute(), or access directly for advanced use cases.

Constructors

new DirectionsManager()
ts
new DirectionsManager(
   mapAdapter, 
   markerFactory, 
   auth, 
   clientId?): DirectionsManager
Parameters
ParameterType
mapAdapterIMapAdapter
markerFactoryIMarkerFactory
authResolvedAuth
clientId?string
Returns

DirectionsManager

Defined in

node_modules/@gebeta/js/dist/Directions/DirectionsManager.d.ts:25

Methods

clearRoute()
ts
clearRoute(): void
Returns

void

Defined in

node_modules/@gebeta/js/dist/Directions/DirectionsManager.d.ts:30

displayRoute()
ts
displayRoute(routeData, options?): void
Parameters
ParameterType
routeDataRouteData
options?DisplayRouteOptions & object
Returns

void

Defined in

node_modules/@gebeta/js/dist/Directions/DirectionsManager.d.ts:27

getCurrentRoute()
ts
getCurrentRoute(): null | RouteData
Returns

null | RouteData

Defined in

node_modules/@gebeta/js/dist/Directions/DirectionsManager.d.ts:31

getDirections()
ts
getDirections(
   origin, 
   destination, 
options?): Promise<RouteData>
Parameters
ParameterType
originLngLat
destinationLngLat
options?DirectionsOptions
Returns

Promise<RouteData>

Defined in

node_modules/@gebeta/js/dist/Directions/DirectionsManager.d.ts:26

getRouteSummary()
ts
getRouteSummary(): null | object
Returns

null | object

Defined in

node_modules/@gebeta/js/dist/Directions/DirectionsManager.d.ts:32

updateRouteStyle()
ts
updateRouteStyle(style): void
Parameters
ParameterType
styleRouteStyleOptions
Returns

void

Defined in

node_modules/@gebeta/js/dist/Directions/DirectionsManager.d.ts:39


FenceManager

Manages geofences (polygons) on the map.

Supports interactive fence drawing, rendering pre-defined fences, and attaching overlays (HTML labels) at fence centroids.

Access via sdk.fencing after calling sdk.init().

Constructors

new FenceManager()
ts
new FenceManager(
   mapAdapter, 
   markerFactory, 
   popupFactory, 
   options?): FenceManager
Parameters
ParameterType
mapAdapterIMapAdapter
markerFactoryIMarkerFactory
popupFactoryIPopupFactory
options?FenceManagerOptions
Returns

FenceManager

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:39

Methods

addPoint()
ts
addPoint(point, options?): void

Add a point to the current fence.

Parameters
ParameterTypeDescription
pointLngLatLikePoint to add
options?FencePointOptions & objectOptional point options
Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:54

canCloseFence()
ts
canCloseFence(): boolean

Check if current fence can be closed (has at least 3 points).

Returns

boolean

True if fence can be closed

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:143

clearAllFences()
ts
clearAllFences(): void

Clear all stored fences.

Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:98

clearCurrentFence()
ts
clearCurrentFence(): void

Clear the current fence being drawn.

Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:65

closeFence()
ts
closeFence(): null | FenceDefinition

Close the current fence.

Returns

null | FenceDefinition

Fence definition if closed successfully, null otherwise

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:61

getCurrentFencePoints()
ts
getCurrentFencePoints(): LngLatLike[]

Get the current fence points.

Returns

LngLatLike[]

Array of points or empty array if not drawing

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:138

getCurrentStyle()
ts
getCurrentStyle(): FenceStyleOptions

Get current fence style (if drawing).

Returns

FenceStyleOptions

Current fence style or default style

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:118

getDefaultStyle()
ts
getDefaultStyle(): FenceStyleOptions

Get current default style.

Returns

FenceStyleOptions

Copy of default style

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:113

getFence()
ts
getFence(fenceId): undefined | FenceDefinition

Get a fence by ID.

Parameters
ParameterTypeDescription
fenceIdstring | numberFence ID
Returns

undefined | FenceDefinition

Fence definition or undefined if not found

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:76

getFenceByName()
ts
getFenceByName(name): undefined | FenceDefinition

Get a fence by name.

Parameters
ParameterTypeDescription
namestringFence name
Returns

undefined | FenceDefinition

Fence definition or undefined if not found

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:82

getFenceCentroid()
ts
getFenceCentroid(fence): LngLat

Get fence centroid.

Parameters
ParameterTypeDescription
fencestring | number | FenceDefinitionFence definition or fence ID
Returns

LngLat

Centroid coordinates

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:149

getFences()
ts
getFences(): FenceDefinition[]

Get all stored fences.

Returns

FenceDefinition[]

Array of fence definitions

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:70

getProximityThreshold()
ts
getProximityThreshold(): number

Get proximity threshold.

Returns

number

Threshold in meters

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:128

isDrawingFence()
ts
isDrawingFence(): boolean

Check if currently drawing a fence.

Returns

boolean

True if drawing is active

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:133

off()
ts
off(event, callback): void

Remove event listener for fence events.

Parameters
ParameterTypeDescription
event"fenceCompleted"Event name
callback(event) => voidCallback function to remove
Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:170

on()
ts
on(event, callback): void

Add event listener for fence events.

Parameters
ParameterTypeDescription
event"fenceCompleted"Event name
callback(event) => voidCallback function
Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:164

removeFence()
ts
removeFence(fenceId): boolean

Remove a fence by ID.

Parameters
ParameterTypeDescription
fenceIdstring | numberFence ID
Returns

boolean

True if fence was removed

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:88

removeFenceByName()
ts
removeFenceByName(name): boolean

Remove a fence by name.

Parameters
ParameterTypeDescription
namestringFence name
Returns

boolean

True if fence was removed

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:94

renderFences()
ts
renderFences(fences, options?): void

Render multiple fences from an array of definitions.

Parameters
ParameterTypeDescription
fencesFenceDefinition[]Array of fence definitions
options?objectRender options
options.clearExisting?boolean-
options.persistent?boolean-
Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:155

setDefaultStyle()
ts
setDefaultStyle(style): void

Set default fence style for future fences.

Parameters
ParameterTypeDescription
styleFenceStyleOptionsStyle options
Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:108

setProximityThreshold()
ts
setProximityThreshold(meters): void

Set proximity threshold for auto-closing fences.

Parameters
ParameterTypeDescription
metersnumberThreshold distance in meters
Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:123

startDrawing()
ts
startDrawing(style?): void

Start drawing a new fence.

Parameters
ParameterTypeDescription
style?FenceStyleOptionsOptional style options for this fence
Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:44

stopDrawing()
ts
stopDrawing(): void

Stop drawing the current fence.

Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:48

updateCurrentFenceStyle()
ts
updateCurrentFenceStyle(style): void

Update the style for the current fence being drawn.

Parameters
ParameterTypeDescription
stylePartial<FenceStyleOptions>Style options to update
Returns

void

Defined in

node_modules/@gebeta/js/dist/Fencing/FenceManager.d.ts:103


GebetaMaps

Main entry point for the Gebeta Maps JavaScript SDK.

Example

ts
// Service account auth (recommended)
const sdk = new GebetaMaps({
  auth: { accessToken: '...', refreshToken: '...' }
});
const map = sdk.init({ container: '#map', center: [38.74, 9.02], zoom: 12 });

// Legacy API key (deprecated)
const sdk = new GebetaMaps({ apiKey: 'your-api-key' });

Constructors

new GebetaMaps()
ts
new GebetaMaps(options): GebetaMaps

Creates a new GebetaMaps instance.

Provide either apiKey (deprecated) or auth (service account) — not both.

Parameters
ParameterTypeDescription
optionsGebetaMapsConstructorOptions & objectConstructor options
Returns

GebetaMaps

Throws

If neither apiKey nor auth is provided, or if both are provided.

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:51

Accessors

clustering
Get Signature
ts
get clustering(): null | ClusteringManager

Access clustering functionality for grouping nearby markers. Returns null if clustering was not enabled in the constructor options.

Returns

null | ClusteringManager

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:135

fencing
Get Signature
ts
get fencing(): FenceManager

Access geofencing functionality for drawing and managing polygon fences.

Throws

If called before init() completes map style loading.

Returns

FenceManager

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:140

geocodingManager
Get Signature
ts
get geocodingManager(): GeocodingManager

Access geocoding functionality (forward and reverse).

Throws

If called before init() completes map style loading.

Returns

GeocodingManager

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:38

Get Signature
ts
get navigation(): NavigationManager

Access turn-by-turn navigation with real-time tracking.

Throws

If called before init() completes map style loading.

Returns

NavigationManager

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:147

Methods

addNavigationControls()
ts
addNavigationControls(position?): void

Add zoom +/- navigation controls to the map. Alternatively, pass navigationControl: true in init() options.

Parameters
ParameterTypeDescription
position?stringCorner position (default: 'top-right')
Returns

void

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:84

clearRoute()
ts
clearRoute(): void

Remove the currently displayed route line and markers from the map.

Returns

void

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:115

displayRoute()
ts
displayRoute(routeData, options?): void

Render a route on the map as a colored line with optional origin/destination markers.

Parameters
ParameterTypeDescription
routeDataRouteDataRoute returned from getDirections()
options?DisplayRouteOptions & objectDisplay options (showMarkers, originIcon, destinationIcon, routeStyle)
Returns

void

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:111

getCurrentRoute()
ts
getCurrentRoute(): null | RouteData

Returns the currently active route, or null if no route is loaded.

Returns

null | RouteData

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:117

getDirections()
ts
getDirections(
   origin, 
   destination, 
options?): Promise<RouteData>

Calculate a route between two points.

Parameters
ParameterTypeDescription
originLngLatStarting point { lng, lat }
destinationLngLatEnding point { lng, lat }
options?DirectionsOptionsOptional waypoints and average speed
Returns

Promise<RouteData>

RouteData with geometry, instructions, and summary

Throws

If called before init() completes map style loading.

Throws

If origin or destination coordinates are missing.

Throws

If the directions API request fails.

Example
ts
const route = await sdk.getDirections(
  { lng: 38.74, lat: 9.02 },
  { lng: 38.78, lat: 9.05 }
);
sdk.displayRoute(route);
Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:105

getMap()
ts
getMap(): null | Map

Returns the underlying MapLibre GL Map instance, or null before init().

Returns

null | Map

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:142

getPlatform()
ts
getPlatform(): PlatformContext

Returns the platform context (map adapter, marker/popup factories). Useful for advanced use cases that need direct access to the underlying adapters.

Returns

PlatformContext

Throws

If called before init().

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:78

getRouteSummary()
ts
getRouteSummary(): null | object

Returns distance, duration, origin, destination, and waypoints for the current route.

Returns

null | object

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:119

init()
ts
init(options): Map

Initialize the map and mount it to a DOM element.

All SDK managers (geocoding, directions, fencing, clustering, navigation) are created after the map style finishes loading. Do not call manager methods until the map style.load event fires.

Parameters
ParameterTypeDescription
optionsGebetaMapsInitOptionsInitialization options
Returns

Map

The underlying MapLibre GL Map instance

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:72

updateRouteStyle()
ts
updateRouteStyle(style): void

Update the visual style of the displayed route line.

Parameters
ParameterTypeDescription
styleRouteStyleOptionsStyle properties (line-color, line-width, line-opacity, line-dasharray)
Returns

void

Defined in

node_modules/@gebeta/js/dist/GebetaMaps.d.ts:130


GeocodingManager

GeocodingManager handles forward and reverse geocoding operations. Platform-agnostic: uses fetch API which is available in all JS environments.

Constructors

new GeocodingManager()
ts
new GeocodingManager(auth, clientId?): GeocodingManager
Parameters
ParameterType
authResolvedAuth
clientId?string
Returns

GeocodingManager

Defined in

packages/core/dist/Geocoding/GeocodingManager.d.ts:11

Methods

geocode()
ts
geocode(name): Promise<GeocodeResult[]>

Forward geocoding: search by name/address.

Parameters
ParameterTypeDescription
namestringPlace name or address to search for
Returns

Promise<GeocodeResult[]>

Promise resolving to array of geocoding results

Defined in

packages/core/dist/Geocoding/GeocodingManager.d.ts:17

reverseGeocode()
ts
reverseGeocode(latlng): Promise<GeocodeResult[]>

Reverse geocoding: search by coordinates.

Parameters
ParameterType
latlngLngLat
Returns

Promise<GeocodeResult[]>

Promise resolving to array of geocoding results

Defined in

packages/core/dist/Geocoding/GeocodingManager.d.ts:23


Browser navigation manager — wraps the core NavigationManager and adds map rendering: a live location marker and a camera that follows the driver.

Access via sdk.navigation after calling sdk.init().

Example

ts
const route = await sdk.getDirections(origin, destination);
sdk.displayRoute(route);

sdk.navigation.on('progress', e => console.log('remaining:', e.remainingDistance));
sdk.navigation.on('arrive', () => console.log('Arrived!'));

sdk.navigation.start(route, { userId: 'user-123' }, new BrowserLocationProvider());

Constructors

new NavigationManager()
ts
new NavigationManager(
   auth, 
   mapAdapter, 
   markerFactory, 
   options?, 
   clientId?): NavigationManager

Creates a new NavigationManager instance.

Parameters
ParameterTypeDescription
authResolvedAuthAPI key or service key authentication input
mapAdapterIMapAdapterMap adapter for camera control
markerFactoryIMarkerFactoryMarker factory for location marker
options?NavigationManagerOptionsConfiguration options for navigation behavior
clientId?string-
Returns

NavigationManager

Throws

If apiKey, mapAdapter, or markerFactory is missing

Defined in

node_modules/@gebeta/js/dist/Navigation/NavigationManager.d.ts:42

Methods

getCurrentRoute()
ts
getCurrentRoute(): null | RouteData

Gets the current route being navigated.

Returns

null | RouteData

Current route data or null if not navigating

Defined in

node_modules/@gebeta/js/dist/Navigation/NavigationManager.d.ts:101

getCurrentStepIndex()
ts
getCurrentStepIndex(): number

Gets the current step index in the route instructions.

Returns

number

Current step index

Defined in

node_modules/@gebeta/js/dist/Navigation/NavigationManager.d.ts:106

isNavigating()
ts
isNavigating(): boolean

Checks if navigation is currently active.

Returns

boolean

True if navigating, false otherwise

Defined in

node_modules/@gebeta/js/dist/Navigation/NavigationManager.d.ts:111

off()
ts
off<K>(event, callback): void
Type Parameters
Type Parameter
K extends keyof NavigationEventMap
Parameters
ParameterType
eventK
callback| (error) => void | (event) => void | (event) => void | (event) => void | (event) => void | (event) => void | (event) => void
Returns

void

Defined in

node_modules/@gebeta/js/dist/Navigation/NavigationManager.d.ts:113

on()
ts
on<K>(event, callback): void
Type Parameters
Type Parameter
K extends keyof NavigationEventMap
Parameters
ParameterType
eventK
callback| (error) => void | (event) => void | (event) => void | (event) => void | (event) => void | (event) => void | (event) => void
Returns

void

Defined in

node_modules/@gebeta/js/dist/Navigation/NavigationManager.d.ts:112

start()
ts
start(
   route, 
   startOptions, 
   locationProvider): void

Starts navigation along the provided route.

Parameters
ParameterTypeDescription
routeRouteDataRoute data containing geometry and instructions
startOptionsNavigationStartOptionsOptions for starting navigation (userId, role, precision)
locationProviderILocationProviderProvider that supplies location data
Returns

void

Defined in

node_modules/@gebeta/js/dist/Navigation/NavigationManager.d.ts:49

stop()
ts
stop(): void

Stops navigation and removes location marker.

Returns

void

Defined in

node_modules/@gebeta/js/dist/Navigation/NavigationManager.d.ts:60

Interfaces

UseClusteringResult

Properties

PropertyTypeDefined in
addMarker(marker: MarkerData) => voidpackages/client/react/src/hooks/useClustering.ts:9
clearMarkers() => voidpackages/client/react/src/hooks/useClustering.ts:11
getMarker(markerId: string) => undefined | MarkerDatapackages/client/react/src/hooks/useClustering.ts:13
getMarkers() => MarkerData[]packages/client/react/src/hooks/useClustering.ts:12
getOptions() => anypackages/client/react/src/hooks/useClustering.ts:15
removeMarker(markerId: string) => booleanpackages/client/react/src/hooks/useClustering.ts:10
updateOptions(options: Partial<ClusteringOptions>) => voidpackages/client/react/src/hooks/useClustering.ts:14

Type Aliases

GebetaMapProps

ts
type GebetaMapProps: GebetaMapProps<GebetaMaps>;

Defined in

packages/client/react/src/GebetaMap.tsx:9


GebetaMapRef

ts
type GebetaMapRef: GebetaMaps;

Defined in

packages/client/react/src/GebetaMap.tsx:10


MarkerData

ts
type MarkerData: MarkerData;

Defined in

packages/client/react/src/hooks/useClustering.ts:6

Functions

GebetaMap()

ts
function GebetaMap(props): ReactNode

Parameters

ParameterType
propsGebetaMapProps & object

Returns

ReactNode

Defined in

packages/client/react/src/GebetaMap.tsx:152


useClustering()

ts
function useClustering(): UseClusteringResult

React hook for managing clustered markers on a Gebeta map.

Must be used inside a GebetaMap component with clustering enabled.

Returns

UseClusteringResult

Throws

If clustering is not enabled on the parent GebetaMap component.

Defined in

packages/client/react/src/hooks/useClustering.ts:25