Control Package

This package contains controls that can be used on the map.

Class: MMapGeolocationControl

Display geolocation control on a map.

Example

const controls = new MMapControls({position: 'right'});
const geolocationControl = new MMapGeolocationControl();
controls.addChild(geolocationControl);
map.addChild(controls);

Constructors

constructor

new MMapGeolocationControl(props)

Parameters
Name Type
props MMapGeolocationControlProps
Overrides

MMapGroupEntity.constructor

Properties

children

readonly children: readonly MMapEntity<unknown, {}>[]
Inherited from

MMapGroupEntity.children


[optionsKeyVuefy]

static [optionsKeyVuefy]: CustomVuefyOptions<MMapGeolocationControl>

defaultProps

static defaultProps: Readonly<{
	duration: 500 
}>

Accessors

parent

get parent(): null | MMapComplexEntity<unknown, {}>

Get parent entity.

Returns

null | MMapComplexEntity<unknown, {}>

Inherited from

mappable.MMapGroupEntity.parent


root

get root(): null | MMap

Get root entity.

Returns

null | MMap

Inherited from

mappable.MMapGroupEntity.root

Methods

addChild

addChild(child, index?): MMapGeolocationControl

Parameters
Name Type
child MMapEntity<unknown, {}>
index? number
Returns

MMapGeolocationControl

Inherited from

MMapGroupEntity.addChild


removeChild

removeChild(child): MMapGeolocationControl

Parameters
Name Type
child MMapEntity<unknown, {}>
Returns

MMapGeolocationControl

Inherited from

MMapGroupEntity.removeChild


update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<MMapGeolocationControlProps> New props values.
Returns

void

Inherited from

MMapGroupEntity.update

Class: MMapZoomControl

Display zoom control on a map.

Example

const controls = new MMapControls({position: 'right'});
const {MMapZoomControl} = await mappable.import('@mappable-world/mappable-controls@0.0.1');
const zoomControl = new MMapZoomControl();
controls.addChild(zoomControl);
map.addChild(controls);

Constructors

constructor

new MMapZoomControl(props)

Parameters
Name Type
props MMapZoomControlProps
Overrides

MMapGroupEntity.constructor

Properties

children

readonly children: readonly MMapEntity<unknown, {}>[]
Inherited from

MMapGroupEntity.children


[optionsKeyVuefy]

static [optionsKeyVuefy]: CustomVuefyOptions<MMapZoomControl>

defaultProps

static defaultProps: Readonly<{
	duration: 200 
}>

Accessors

parent

get parent(): null | MMapComplexEntity<unknown, {}>

Get parent entity.

Returns

null | MMapComplexEntity<unknown, {}>

Inherited from

mappable.MMapGroupEntity.parent


root

get root(): null | MMap

Get root entity.

Returns

null | MMap

Inherited from

mappable.MMapGroupEntity.root

Methods

addChild

addChild(child, index?): MMapZoomControl

Parameters
Name Type
child MMapEntity<unknown, {}>
index? number
Returns

MMapZoomControl

Inherited from

MMapGroupEntity.addChild


removeChild

removeChild(child): MMapZoomControl

Parameters
Name Type
child MMapEntity<unknown, {}>
Returns

MMapZoomControl

Inherited from

MMapGroupEntity.removeChild


update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<MMapZoomControlProps> New props values.
Returns

void

Inherited from

MMapGroupEntity.update

Class: Config

Constructors

constructor

new Config()

Properties

description

readonly description: string

Methods

setApikeys

setApikeys(apikeys): void

Parameters
Name Type
apikeys Apikeys
Returns

void


setExperiments

setExperiments(experiments): void

Parameters
Name Type
experiments Record<string, boolean>
Returns

void

Class: Context<_T>

Type parameters

Name
_T

Constructors

constructor

new Context<_T>(name)

Type parameters
Name
_T
Parameters
Name Type
name string

Properties

name

readonly name: string

Class: GenericComplexEntity<Props, DefaultProps, Root>

Entity that aggregates multiple Entities but looks basic from the outside.

Example

type MMapSomeComplexEntityProps = {
 name?: string;
};
const defaultProps = {
 name: 'entity'
};
class MMapSomeComplexEntity extends GenericComplexEntity<MMapSomeComplexEntityProps, typeof defaultProps> {
 private _someEntity?: MMapSomeEntity; // MMapSomeEntity extends GenericEntity
 protected _onAttach(): void {
     this._someEntity = new MMapSomeEntity();
     this.addChild(this._someEntity); // add someEntity as children
     // ...
 }
 // ...
}

Type parameters

Name Type Description
Props Props Type of input props of the Entity.
DefaultProps extends Object = {} Type of default input props of the Entity.
Root extends GenericRootEntity<unknown> = GenericRootEntity<unknown> Root Entity Class.

Constructors

constructor

new GenericComplexEntity<Props, DefaultProps, Root>(props, options?)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Root extends GenericRootEntity<unknown, {}, Root> = GenericRootEntity<unknown, {}>
Parameters
Name Type Description
props Props The value of input props.
options? ComplexOptions<Root> Optional options object.
Overrides

GenericEntity.constructor

new GenericComplexEntity<Props, DefaultProps, Root>(props, children?, options?)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Root extends GenericRootEntity<unknown, {}, Root> = GenericRootEntity<unknown, {}>
Parameters
Name Type
props Props
children? GenericEntity<unknown, {}, Root>[]
options? Omit<ComplexOptions<Root>, "children">
Overrides

GenericEntity<Props, DefaultProps, Root&gt;.constructor

Accessors

parent

get parent(): null | GenericComplexEntity<unknown, {}, GenericRootEntity<unknown, {}>>

Get parent entity.

Returns

null | GenericComplexEntity<unknown, {}, GenericRootEntity<unknown, {}>>

Inherited from

GenericEntity.parent


root

get root(): null | Root

Get root entity.

Returns

null | Root

Inherited from

GenericEntity.root

Methods

update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<Props> New props values.
Returns

void

Inherited from

GenericEntity.update

Class: GenericEntity<Props, DefaultProps, Root>

Entity Base Class. It has event handlers for attaching, detaching and updating props. Has a method for providing and using context.

Example

type MMapSomeEntityProps = {
 name?: string;
};
const defaultProps = {
 name: 'entity'
};
class MMapSomeEntity extends GenericEntity<MMapSomeEntityProps, typeof defaultProps> {
 public isAttached: boolean;
 constructor(props: MMapSomeEntityProps) {
     super(props);
     this.isAttached = false
     // Additional actions can be taken in the constructor of a class.
 }
 protected _onAttach(): void {
     this.isAttached = true;
     // Additional actions can be taken when an Entity is attached.
 }
 // ...
}

Type parameters

Name Type Description
Props Props Type of input props of the Entity.
DefaultProps extends Object = {} Type of default input props of the Entity.
Root extends GenericRootEntity<unknown> = GenericRootEntity<unknown> Root Entity Class.

Constructors

constructor

new GenericEntity<Props, DefaultProps, Root>(props)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Root extends GenericRootEntity<unknown, {}, Root> = GenericRootEntity<unknown, {}>
Parameters
Name Type Description
props Props The value of input props.

Accessors

parent

get parent(): null | GenericComplexEntity<unknown, {}, GenericRootEntity<unknown, {}>>

Get parent entity.

Returns

null | GenericComplexEntity<unknown, {}, GenericRootEntity<unknown, {}>>


root

get root(): null | Root

Get root entity.

Returns

null | Root

Methods

update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<Props> New props values.
Returns

void

Class: GenericGroupEntity<Props, DefaultProps, Root>

Entity that aggregates multiple Entities, and allows you to publicly add and remove entities to a subtree.

Example

type MMapSomeGroupEntityProps = {
 name?: string;
};
const defaultProps = {
 name: 'entity'
};
class MMapSomeGroupEntity extends GenericGroupEntity<MMapSomeGroupEntityProps, typeof defaultProps> {
 // ...
}
const groupEntity = new MMapSomeGroupEntity()
const someEntity = new MMapSomeEntity(); // MMapSomeEntity extends GenericEntity
groupEntity.addChild(someEntity); // add someEntity in MMapSomeGroupEntity object
groupEntity.removeChild(someEntity); // remove someEntity from MMapSomeGroupEntity object

Type parameters

Name Type Description
Props Props Type of input props of the Entity.
DefaultProps extends Object = {} Type of default input props of the Entity.
Root extends GenericRootEntity<unknown> = GenericRootEntity<unknown> Root Entity Class.

Constructors

constructor

new GenericGroupEntity<Props, DefaultProps, Root>(props, options?)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Root extends GenericRootEntity<unknown, {}, Root> = GenericRootEntity<unknown, {}>
Parameters
Name Type Description
props Props The value of input props.
options? ComplexOptions<Root> Optional options object.
Inherited from

GenericComplexEntity.constructor

new GenericGroupEntity<Props, DefaultProps, Root>(props, children?, options?)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Root extends GenericRootEntity<unknown, {}, Root> = GenericRootEntity<unknown, {}>
Parameters
Name Type
props Props
children? GenericEntity<unknown, {}, Root>[]
options? Omit<ComplexOptions<Root>, "children">
Inherited from

GenericComplexEntity.constructor

Properties

children

readonly children: readonly GenericEntity<unknown, {}, Root>[]
Overrides

GenericComplexEntity.children

Accessors

parent

get parent(): null | GenericComplexEntity<unknown, {}, GenericRootEntity<unknown, {}>>

Get parent entity.

Returns

null | GenericComplexEntity<unknown, {}, GenericRootEntity<unknown, {}>>

Inherited from

GenericComplexEntity.parent


root

get root(): null | Root

Get root entity.

Returns

null | Root

Inherited from

GenericComplexEntity.root

Methods

addChild

addChild(child, index?): GenericGroupEntity<Props, DefaultProps, Root>

Parameters
Name Type
child GenericEntity<unknown, {}, Root>
index? number
Returns

GenericGroupEntity<Props, DefaultProps, Root>

Overrides

GenericComplexEntity.addChild


removeChild

removeChild(child): GenericGroupEntity<Props, DefaultProps, Root>

Parameters
Name Type
child GenericEntity<unknown, {}, Root>
Returns

GenericGroupEntity<Props, DefaultProps, Root>

Overrides

GenericComplexEntity.removeChild


update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<Props> New props values.
Returns

void

Inherited from

GenericComplexEntity.update

Class: GenericRootEntity<Props, DefaultProps>

Entity that is root and cannot be added anywhere

Example

type MMapProps = {
 name?: string;
};
class MMap extends GenericRootEntity<MMapProps, typeof defaultProps> {
 // ...
}
// Now we can specify their root element for the Entity
class MMapSomeEntity extends GenericEntity<MMapSomeEntityProps, typeof defaultProps, MMap> {
 // ...
}

Type parameters

Name Type Description
Props Props Type of input props of the Entity.
DefaultProps extends Object = {} Type of default input props of the Entity.

Constructors

constructor

new GenericRootEntity<Props, DefaultProps>(props, options?)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Parameters
Name Type Description
props Props The value of input props.
options? ComplexOptions<GenericRootEntity<unknown, {}>> Optional options object.
Inherited from

GenericGroupEntity.constructor

new GenericRootEntity<Props, DefaultProps>(props, children?, options?)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Parameters
Name Type
props Props
children? GenericEntity<unknown, {}, GenericRootEntity<unknown, {}>>[]
options? Omit<ComplexOptions<GenericRootEntity<unknown, {}>>, "children">
Inherited from

GenericGroupEntity.constructor

Properties

children

readonly children: readonly GenericEntity<unknown, {}, GenericRootEntity<unknown, {}>>[]
Inherited from

GenericGroupEntity.children

Accessors

parent

get parent(): null | GenericComplexEntity<unknown, {}, GenericRootEntity<unknown, {}>>

Get parent entity.

Returns

null | GenericComplexEntity<unknown, {}, GenericRootEntity<unknown, {}>>

Inherited from

GenericGroupEntity.parent


root

get root(): this

Get root entity.

Returns

this

Overrides

GenericGroupEntity.root

Methods

addChild

addChild(child, index?): GenericRootEntity<Props, DefaultProps>

Parameters
Name Type
child GenericEntity<unknown, {}, GenericRootEntity<unknown, {}>>
index? number
Returns

GenericRootEntity<Props, DefaultProps>

Inherited from

GenericGroupEntity.addChild


destroy

Abstract destroy(): void

Completely destroys the entity tree including the current entity

Returns

void


removeChild

removeChild(child): GenericRootEntity<Props, DefaultProps>

Parameters
Name Type
child GenericEntity<unknown, {}, GenericRootEntity<unknown, {}>>
Returns

GenericRootEntity<Props, DefaultProps>

Inherited from

GenericGroupEntity.removeChild


update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<Props> New props values.
Returns

void

Inherited from

GenericGroupEntity.update

Class: MMap

Main API class. Create a map container.

Example

const map = new MMap(
    document.getElementById('map-root'),
    {location: {center: [55.44222, 25.24680], zoom: 10}}
);
// add default Mappable scheme layer
map.addChild(new MMapDefaultSchemeLayer());
// relocate map to another point with animation in 200 milliseconds
map.setLocation({center: [48.707067, 44.516975], duration: 200});
// change mode from default `auto` to `raster`
map.setMode('raster');
// get map zoom for some calculations
const zoom = map.zoom;

Constructors

constructor

new MMap(rootContainer, props, children?)

Parameters
Name Type
rootContainer HTMLElement
props MMapProps
children? MMapEntity<unknown, {}>[]
Overrides

GenericRootEntity.constructor

Properties

children

readonly children: MMapEntity<unknown, {}>[]
Overrides

GenericRootEntity.children


[overrideKeyReactify]

static [overrideKeyReactify]: CustomReactify<MMap, ForwardRefExoticComponent<{
	behaviors?: BehaviorType[];
	camera?: MMapCameraRequest;
	children?: ReactNode;
	className?: string;
	config?: Config;
	copyrights?: boolean;
	copyrightsPosition?: MMapCopyrightsPosition;
	hotspotsStrategy?: "forViewport" | "forPointerPosition";
	key?: null | Key;
	location: MMapLocationRequest;
	margin?: Margin;
	mode?: MapMode;
	projection?: Projection;
	ref?: Ref<MMap>;
	restrictMapArea?: false | LngLatBounds;
	theme?: MMapTheme;
	worldOptions?: WorldOptions;
	zoomRange?: ZoomRange;
	zoomRounding?: ZoomRounding;
	zoomStrategy?: ZoomStrategy 
}>>

defaultProps

static defaultProps: Readonly<{
	behaviors: string[];
	camera: {
		azimuth: number;
		tilt: number 
	};
	className: "";
	config: Config;
	copyrights: true;
	copyrightsPosition: "bottom right";
	hotspotsStrategy: "forViewport" | "forPointerPosition";
	margin: undefined | Margin;
	mode: "auto";
	projection: Projection;
	restrictMapArea: false;
	theme: "light";
	worldOptions: {
		cycledX: boolean;
		cycledY: boolean 
	};
	zoomRange: ZoomRange;
	zoomRounding: "auto";
	zoomStrategy: "zoomToPointer" 
}>

Accessors

azimuth

get azimuth(): number

Returns

number


behaviors

get behaviors(): readonly BehaviorType[]

getter for MMapProps.behaviors prop

Returns

readonly BehaviorType[]


bounds

get bounds(): LngLatBounds

getter for MMapProps.location.bounds prop

Returns

LngLatBounds


center

get center(): readonly [number, number, undefined | number]

getter for MMapProps.location.center prop

Returns

readonly [number, number, undefined | number]


config

get config(): Readonly<Config>

getter for MMapProps.config prop

Returns

Readonly<Config>


container

get container(): HTMLElement

Main map container

Returns

HTMLElement


parent

get parent(): null | GenericComplexEntity<unknown, {}, GenericRootEntity<unknown, {}>>

Get parent entity.

Returns

null | GenericComplexEntity<unknown, {}, GenericRootEntity<unknown, {}>>

Inherited from

GenericRootEntity.parent


projection

get projection(): Projection

getter for MMapProps.projection prop

Returns

Projection


restrictMapArea

get restrictMapArea(): Readonly<false | LngLatBounds>

getter for MMapProps.restrictMapArea prop

Returns

Readonly<false | LngLatBounds>


root

get root(): this

Get root entity.

Returns

this

Inherited from

GenericRootEntity.root


size

get size(): PixelCoordinates

getter for map size

Returns

PixelCoordinates


theme

get theme(): "dark" | "light"

getter for MMapProps.theme prop

Returns

"dark" | "light"


tilt

get tilt(): number

Returns

number


zoom

get zoom(): number

getter for MMapProps.location.zoom prop

Returns

number


zoomRange

get zoomRange(): Readonly<ZoomRange>

getter for MMapProps.zoomRange prop

Returns

Readonly<ZoomRange>

Methods

addChild

addChild(child, index?): MMap

Parameters
Name Type
child MMapEntity<unknown, {}>
index? number
Returns

MMap

Overrides

GenericRootEntity.addChild


destroy

destroy(): void

Destroy map and remove it from user DOM-element

Returns

void

Overrides

GenericRootEntity.destroy


removeChild

removeChild(child): MMap

Parameters
Name Type
child MMapEntity<unknown, {}>
Returns

MMap

Overrides

GenericRootEntity.removeChild


setBehaviors

setBehaviors(behaviors): void

setter for MMapProps.behaviors prop

Parameters
Name Type
behaviors BehaviorType[]
Returns

void


setConfig

setConfig(config): void

setter for MMapProps.config prop

Parameters
Name Type
config Config
Returns

void


setLocation

setLocation(location): void

setter for MMapProps.location prop

Parameters
Name Type
location MMapLocationRequest
Returns

void


setMargin

setMargin(margin): void

setter for MMapProps.margin prop

Parameters
Name Type
margin Margin
Returns

void


setMode

setMode(mode): void

setter for MMapProps.mode prop

Parameters
Name Type
mode MapMode
Returns

void


setProjection

setProjection(projection): void

setter for MMapProps.projection prop

Parameters
Name Type
projection Projection
Returns

void


setRestrictMapArea

setRestrictMapArea(restrictMapArea): void

setter for MMapProps.config prop

Parameters
Name Type
restrictMapArea LngLatBounds
Returns

void


setZoomRange

setZoomRange(zoomRange): void

setter for MMapProps.zoomRange prop

Parameters
Name Type
zoomRange ZoomRange
Returns

void


setZoomRounding

setZoomRounding(zoomRounding): void

setter for MMapProps.zoomRounding prop

Parameters
Name Type
zoomRounding ZoomRounding
Returns

void


update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<MMapProps> New props values.
Returns

void

Inherited from

GenericRootEntity.update

Class: MMapComplexEntity<Props, DefaultProps>

Entity that aggregates multiple Entities but looks basic from the outside.

Type Param

Root Entity Class.

Example

type MMapSomeComplexEntityProps = {
 name?: string;
};
const defaultProps = {
 name: 'entity'
};
class MMapSomeComplexEntity extends MMapComplexEntity<MMapSomeComplexEntityProps, typeof defaultProps> {
 private _someEntity?: MMapSomeEntity; // MMapSomeEntity extends GenericEntity
 protected _onAttach(): void {
     this._someEntity = new MMapSomeEntity();
     this.addChild(this._someEntity); // add someEntity as children
     // ...
 }
 // ...
}

Type parameters

Name Type Description
Props Props Type of input props of the Entity.
DefaultProps extends Object = {} Type of default input props of the Entity.

Implements

Implemented by

Constructors

constructor

new MMapComplexEntity<Props, DefaultProps>(props, options?)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Parameters
Name Type Description
props Props The value of input props.
options? ComplexOptions<MMap> Optional options object.
Inherited from

GenericComplexEntity.constructor

new MMapComplexEntity<Props, DefaultProps>(props, children?, options?)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Parameters
Name Type
props Props
children? GenericEntity<unknown, {}, MMap>[]
options? Omit<ComplexOptions<MMap>, "children">
Inherited from

GenericComplexEntity.constructor

Accessors

parent

get parent(): null | MMapComplexEntity<unknown, {}>

Get parent entity.

Returns

null | MMapComplexEntity<unknown, {}>

Implementation of

MMapEntity.parent

Overrides

GenericComplexEntity.parent


root

get root(): null | MMap

Get root entity.

Returns

null | MMap

Implementation of

MMapEntity.root

Overrides

GenericComplexEntity.root

Methods

update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<Props> New props values.
Returns

void

Implementation of

MMapEntity.update

Inherited from

GenericComplexEntity.update

Class: MMapControlCommonButton

Default control button.

Constructors

constructor

new MMapControlCommonButton(props, options?)

Parameters
Name Type Description
props MMapControlCommonButtonProps The value of input props.
options? ComplexOptions<MMap> Optional options object.
Inherited from

MMapGroupEntity.constructor

new MMapControlCommonButton(props, children?, options?)

Parameters
Name Type
props MMapControlCommonButtonProps
children? GenericEntity<unknown, {}, MMap>[]
options? Omit<ComplexOptions<MMap>, "children">
Inherited from

MMapGroupEntity.constructor

Properties

children

readonly children: readonly MMapEntity<unknown, {}>[]
Inherited from

MMapGroupEntity.children

Accessors

parent

get parent(): null | MMapComplexEntity<unknown, {}>

Get parent entity.

Returns

null | MMapComplexEntity<unknown, {}>

Inherited from

MMapGroupEntity.parent


root

get root(): null | MMap

Get root entity.

Returns

null | MMap

Inherited from

MMapGroupEntity.root

Methods

addChild

addChild(child, index?): MMapControlCommonButton

Parameters
Name Type
child MMapEntity<unknown, {}>
index? number
Returns

MMapControlCommonButton

Inherited from

MMapGroupEntity.addChild


removeChild

removeChild(child): MMapControlCommonButton

Parameters
Name Type
child MMapEntity<unknown, {}>
Returns

MMapControlCommonButton

Inherited from

MMapGroupEntity.removeChild


update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<MMapControlCommonButtonProps> New props values.
Returns

void

Inherited from

MMapGroupEntity.update

Class: MMapEntity<Props, DefaultProps>

Entity Base Class. It has event handlers for attaching, detaching and updating props. Has a method for providing and using context.

Example

type MMapSomeEntityProps = {
 name?: string;
};
const defaultProps = {
 name: 'entity'
};
class MMapSomeEntity extends MMapEntity<MMapSomeEntityProps, typeof defaultProps> {
 public isAttached: boolean;
 constructor(props: MMapSomeEntityProps) {
     super(props);
     this.isAttached = false
     // Additional actions can be taken in the constructor of a class.
 }
 protected _onAttach(): void {
     this.isAttached = true;
     // Additional actions can be taken when an Entity is attached.
 }
 // ...
}

Type parameters

Name Type Description
Props Props Type of input props of the Entity.
DefaultProps extends Object = {} Type of default input props of the Entity.

Implemented by

Constructors

constructor

new MMapEntity<Props, DefaultProps>(props)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Parameters
Name Type Description
props Props The value of input props.
Inherited from

GenericEntity.constructor

Accessors

parent

get parent(): null | MMapComplexEntity<unknown, {}>

Get parent entity.

Returns

null | MMapComplexEntity<unknown, {}>

Overrides

GenericEntity.parent


root

get root(): null | MMap

Get root entity.

Returns

null | MMap

Overrides

GenericEntity.root

Methods

update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<Props> New props values.
Returns

void

Inherited from

GenericEntity.update

Class: MMapFeature

The feature component on the map.

Example

const feature = new MMapFeature({
    geometry: {
        type: 'LineString',
        coordinates: [
            [55.22080, 25.19532],
            [55.42926, 25.07077]
        ]
    },
    style: {
        stroke: [{width: 12, color: 'rgb(14, 194, 219)'}]
    }})
map
    .addChild(new MMapDefaultSchemeLayer())
    .addChild(new MMapDefaultFeaturesLayer())
    .addChild(feature);

Constructors

constructor

new MMapFeature(props)

Parameters
Name Type
props MMapFeatureProps
Overrides

MMapEntity.constructor

Properties

defaultProps

static defaultProps: Readonly<{
	source: "mappable-default-feature" 
}>

Accessors

geometry

get geometry(): GenericGeometry<LngLat>

Returns

GenericGeometry<LngLat>


parent

get parent(): null | MMapComplexEntity<unknown, {}>

Get parent entity.

Returns

null | MMapComplexEntity<unknown, {}>

Inherited from

MMapEntity.parent


properties

get properties(): undefined | Record<string, unknown>

Returns

undefined | Record<string, unknown>


root

get root(): null | MMap

Get root entity.

Returns

null | MMap

Inherited from

MMapEntity.root

Methods

update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<MMapFeatureProps> New props values.
Returns

void

Inherited from

MMapEntity.update

Class: MMapGroupEntity<Props, DefaultProps>

Entity that aggregates multiple Entities, and allows you to publicly add and remove entities to a subtree.

Type Param

Root Entity Class.

Example

type MMapSomeGroupEntityProps = {
 name?: string;
};
const defaultProps = {
 name: 'entity'
};
class MMapSomeGroupEntity extends MMapGroupEntity<MMapSomeGroupEntityProps, typeof defaultProps> {
 // ...
}
const groupEntity = new MMapSomeGroupEntity()
const someEntity = new MMapSomeEntity(); // MMapSomeEntity extends GenericEntity
groupEntity.addChild(someEntity); // add someEntity in MMapSomeGroupEntity object
groupEntity.removeChild(someEntity); // remove someEntity from MMapSomeGroupEntity object

Type parameters

Name Type Description
Props Props Type of input props of the Entity.
DefaultProps extends Object = {} Type of default input props of the Entity.

Implements

Constructors

constructor

new MMapGroupEntity<Props, DefaultProps>(props, options?)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Parameters
Name Type Description
props Props The value of input props.
options? ComplexOptions<MMap> Optional options object.
Inherited from

GenericGroupEntity.constructor

new MMapGroupEntity<Props, DefaultProps>(props, children?, options?)

Type parameters
Name Type
Props Props
DefaultProps extends Object = {}
Parameters
Name Type
props Props
children? GenericEntity<unknown, {}, MMap>[]
options? Omit<ComplexOptions<MMap>, "children">
Inherited from

GenericGroupEntity.constructor

Properties

children

readonly children: readonly MMapEntity<unknown, {}>[]
Implementation of

MMapComplexEntity.children

Overrides

GenericGroupEntity.children

Accessors

parent

get parent(): null | MMapComplexEntity<unknown, {}>

Get parent entity.

Returns

null | MMapComplexEntity<unknown, {}>

Implementation of

MMapComplexEntity.parent

Overrides

GenericGroupEntity.parent


root

get root(): null | MMap

Get root entity.

Returns

null | MMap

Implementation of

MMapComplexEntity.root

Overrides

GenericGroupEntity.root

Methods

addChild

addChild(child, index?): MMapGroupEntity<Props, DefaultProps>

Parameters
Name Type
child MMapEntity<unknown, {}>
index? number
Returns

MMapGroupEntity<Props, DefaultProps>

Implementation of

MMapComplexEntity.addChild

Overrides

GenericGroupEntity.addChild


removeChild

removeChild(child): MMapGroupEntity<Props, DefaultProps>

Parameters
Name Type
child MMapEntity<unknown, {}>
Returns

MMapGroupEntity<Props, DefaultProps>

Implementation of

MMapComplexEntity.removeChild

Overrides

GenericGroupEntity.removeChild


update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<Props> New props values.
Returns

void

Implementation of

MMapComplexEntity.update

Inherited from

GenericGroupEntity.update

Class: MMapHotspot

This is not a real MMapEntity, it cannot be added to the map.
But you can check it by instance of in MMapListener handlers

Constructors

constructor

new MMapHotspot(geometry, properties)

Parameters
Name Type
geometry undefined | GenericGeometry<LngLat>
properties Record<string, unknown>

Properties

geometry

optional readonly geometry: GenericGeometry<LngLat>

properties

readonly properties: Record<string, unknown>

Class: MMapListener

A component for handling events of the map and its child elements. DOM events are also hung through this component.

Example

const clickCallback = () => alert("Clicked!");

const mapListener = new MMapListener({
    layerId: "any",
    onClick: clickCallback,
});

map.addChild(mapListener);

See

More about events

Constructors

constructor

new MMapListener(props)

Parameters
Name Type Description
props MMapListenerProps The value of input props.
Inherited from

MMapEntity.constructor

Accessors

parent

get parent(): null | MMapComplexEntity<unknown, {}>

Get parent entity.

Returns

null | MMapComplexEntity<unknown, {}>

Inherited from

MMapEntity.parent


root

get root(): null | MMap

Get root entity.

Returns

null | MMap

Inherited from

MMapEntity.root

Methods

update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<MMapListenerProps> New props values.
Returns

void

Inherited from

MMapEntity.update

Class: MMapMarker

The marker component on the map. Allows you to insert your own DOM implementation of the marker.

Does not provide a default implementation. See MMapDefaultMarker

Example

const content = document.createElement('div');
content.innerHTML = '<p>Draggable paragraph</p>';
map.addChild(new MMapDefaultFeaturesLayer({zIndex: 1800}))
map.addChild(new MMapMarker({
    coordinates: [54.81971, 24.49359],
    draggable: true
}, content));

Note: to insert a marker on the map, you need a MMapLayer layer with type 'markers'.
The example above uses MMapDefaultFeaturesLayer, which automatically adds the layer and the required datasource.

Constructors

constructor

new MMapMarker(props, element?)

Parameters
Name Type
props MMapMarkerProps
element? HTMLElement
Overrides

MMapGroupEntity.constructor

Properties

children

readonly children: readonly MMapEntity<unknown, {}>[]
Inherited from

MMapGroupEntity.children


element

readonly element: HTMLElement

[overrideKeyReactify]

static [overrideKeyReactify]: CustomReactify<MMapMarker, ForwardRefExoticComponent<{
	blockBehaviors?: boolean;
	blockEvents?: boolean;
	children?: ReactNode;
	coordinates: LngLat;
	disableRoundCoordinates?: boolean;
	draggable?: boolean;
	hideOutsideViewport?: HideOutsideRule;
	id?: string;
	key?: null | Key;
	mapFollowsOnDrag?: boolean | {
	activeZoneMargin?: Margin 
};
	markerElement?: HTMLElement;
	onClick?: (`event`: MouseEvent) => void;
	onDoubleClick?: (`event`: MouseEvent) => void;
	onDragEnd?: MMapMarkerEventHandler;
	onDragMove?: MMapMarkerEventHandler;
	onDragStart?: MMapMarkerEventHandler;
	onFastClick?: (`event`: MouseEvent) => void;
	properties?: Record<string, unknown>;
	ref?: Ref<GenericEntity<{
	coordinates: LngLat;
	disableRoundCoordinates?: boolean;
	hideOutsideViewport?: HideOutsideRule;
	id?: string;
	properties?: Record<string, unknown>;
	source?: string;
	zIndex?: number 
} & DraggableProps<MMapMarkerEventHandler> & FeatureClickEvents & {
	markerElement?: HTMLElement 
}, {}, GenericRootEntity<unknown, {}>>>;
	source?: string;
	zIndex?: number 
}>>

defaultProps

static defaultProps: Readonly<{
	blockBehaviors: false;
	blockEvents: false;
	draggable: false;
	hideOutsideViewport: false;
	mapFollowsOnDrag: false;
	source: "mappable-default-feature";
	zIndex: 0 
}>

Accessors

coordinates

get coordinates(): LngLat

Returns

LngLat


parent

get parent(): null | MMapComplexEntity<unknown, {}>

Get parent entity.

Returns

null | MMapComplexEntity<unknown, {}>

Inherited from

MMapGroupEntity.parent


properties

get properties(): undefined | Record<string, unknown>

Returns

undefined | Record<string, unknown>


root

get root(): null | MMap

Get root entity.

Returns

null | MMap

Inherited from

MMapGroupEntity.root

Methods

_onAttach

_onAttach(): void

Returns

void

Overrides

MMapGroupEntity._onAttach


_onDetach

_onDetach(): void

Returns

void

Overrides

MMapGroupEntity._onDetach


addChild

addChild(child, index?): MMapMarker

Parameters
Name Type
child MMapEntity<unknown, {}>
index? number
Returns

MMapMarker

Inherited from

MMapGroupEntity.addChild


removeChild

removeChild(child): MMapMarker

Parameters
Name Type
child MMapEntity<unknown, {}>
Returns

MMapMarker

Inherited from

MMapGroupEntity.removeChild


update

update(changedProps): void

Method for updating props of Entity.

Parameters
Name Type Description
changedProps Partial<MMapMarkerProps> New props values.
Returns

void

Inherited from

MMapGroupEntity.update

Interface: Apikeys

Properties

router

optional router: string

suggest

optional suggest: string

Interface: ComplexOptions<Root>

Type parameters

Name Type
Root extends GenericRootEntity<unknown> = GenericRootEntity<unknown>

Properties

children

optional children: GenericEntity<unknown, {}, Root>[]

container

optional container: boolean

Interface: DomEvent

Properties

coordinates

coordinates: LngLat

screenCoordinates

screenCoordinates: [number, number]

Interface: DraggableProps<Callback>

Type parameters

Name
Callback

Properties

blockBehaviors

optional blockBehaviors: boolean

Will block maps behaviors on marker


blockEvents

optional blockEvents: boolean

Will block maps events on marker


draggable

optional draggable: boolean

Feature can be draggable


mapFollowsOnDrag

optional mapFollowsOnDrag: boolean | {
	activeZoneMargin?: Margin 
}

Will map center follows marker on drag if marker near the edge of the map


onDragEnd

optional onDragEnd: Callback

Maybe a function which will be called when the user drags and drops the element to a new position in the map.
The arguments to the function will be with new coordinates.
A component using with component should immediately store the new coordinates into its state and then pass
the new coordinates as the marker's props.


onDragMove

optional onDragMove: Callback

Fires on drag move


onDragStart

optional onDragStart: Callback

Fires on drag start

Interface: DrawingStyle

Properties

cursor

optional cursor: string

element

optional element: HTMLElement

fill

optional fill: string

fillOpacity

optional fillOpacity: number

fillRule

optional fillRule: FillRule

icon

optional icon: DrawingStyleIcon

interactive

optional interactive: boolean

simplificationRate

optional simplificationRate: number

stroke

optional stroke: Stroke

zIndex

optional zIndex: number

Interface: DrawingStyleIcon

Properties

offset

optional readonly offset: [number, number]

scale

optional readonly scale: number

url

readonly url: string

Interface: FeatureClickEvents

Properties

onClick

optional onClick: (`event`: MouseEvent) => void
Type declaration

(event): void

Click handler

Parameters
Name Type
event MouseEvent
Returns

void


onDoubleClick

optional onDoubleClick: (`event`: MouseEvent) => void
Type declaration

(event): void

Double click handler

Parameters
Name Type
event MouseEvent
Returns

void


onFastClick

optional onFastClick: (`event`: MouseEvent) => void
Type declaration

(event): void

Fast click handler

Parameters
Name Type
event MouseEvent
Returns

void

Interface: GenericLineStringGeometry<TCoordinates>

Type parameters

Name
TCoordinates

Properties

coordinates

coordinates: TCoordinates[]

type

type: "LineString"

Interface: GenericMultiLineStringGeometry<TCoordinates>

Type parameters

Name
TCoordinates

Properties

coordinates

coordinates: TCoordinates[][]

type

type: "MultiLineString"

Interface: GenericMultiPolygonGeometry<TCoordinates>

Type parameters

Name
TCoordinates

Properties

coordinates

coordinates: TCoordinates[][][]

Array of polygons. See GenericPolygonGeometry.


type

type: "MultiPolygon"

Interface: GenericPointGeometry<TCoordinates>

Type parameters

Name
TCoordinates

Properties

coordinates

coordinates: TCoordinates

type

type: "Point"

Interface: GenericPolygonGeometry<TCoordinates>

Type parameters

Name
TCoordinates

Properties

coordinates

coordinates: TCoordinates[][]

Polygon's rings.

Remarks

Inner rings may extend beyond outer ring.
GeoJSON doesn't allow this, but there's a lot of data like this in this JS API.


type

type: "Polygon"

Interface: GenericProjection<TSource>

Type parameters

Name
TSource

Methods

fromWorldCoordinates

fromWorldCoordinates(coordinates): TSource

Parameters
Name Type
coordinates WorldCoordinates
Returns

TSource


toWorldCoordinates

toWorldCoordinates(point): WorldCoordinates

Parameters
Name Type
point TSource
Returns

WorldCoordinates

Interface: MapState

Methods

getLayerState

getLayerState(layerId, type, effectiveMode?): undefined | Record<string, unknown>

Parameters
Name Type
layerId string
type string
effectiveMode? "raster" | "vector"
Returns

undefined | Record<string, unknown>

getLayerState(layerId, type, effectiveMode?): undefined | TileLayerState

Parameters
Name Type
layerId string
type "tile"
effectiveMode? "raster" | "vector"
Returns

undefined | TileLayerState

Interface: PaletteEntry

Properties

color

color: string

count

count: number

Interface: PixelCoordinates

Global pixel coordinates. World size depends on zoom.
Left top is (0; 0).
Right bottom is (2**(zoom + 8); 2**(zoom + 8)).

Properties

type

optional readonly type: "pixel"

x

x: number
Inherited from

Vec2.x


y

y: number
Inherited from

Vec2.y

Interface: ReactParent

Properties

entityRef

entityRef: RefInstance<GenericEntity<unknown, {}, GenericRootEntity<unknown, {}>>>

Methods

positionChild

positionChild(entity): number

Parameters
Name Type
entity RefInstance<GenericEntity<unknown, {}, GenericRootEntity<unknown, {}>>>
Returns

number


requestReposition

requestReposition(): void

Returns

void

Interface: ResizeObject

Properties

mapInAction

mapInAction: boolean

size

size: Readonly<PixelCoordinates>

type

type: "resize"

Interface: StrokeStyle

Properties

color

optional color: string

dash

optional dash: number[]

opacity

optional opacity: number

palette

optional palette: Palette

simplifyPalette

optional simplifyPalette: boolean

width

optional width: number

Interface: TileLayerState

Properties

tilesLoaded

tilesLoaded: number

Number of tiles loaded from the server.


tilesReady

tilesReady: number

Number of tiles ready to be displayed.


tilesTotal

tilesTotal: number

Total number of tiles in the visible area.

Interface: UpdateObject

Properties

camera

camera: MMapCamera

location

location: Required<MMapLocation>

mapInAction

mapInAction: boolean

type

type: "update"

Interface: Vec2

Properties

x

x: number

y

y: number

Interface: WorldCoordinates

Coordinates in [-1 ... +1].
Left bottom is (-1; -1).
Right top is (+1; +1).
Center is (0; 0).

Properties

type

optional readonly type: "world"

x

x: number
Inherited from

Vec2.x


y

y: number
Inherited from

Vec2.y


z

optional z: number

Interface: WorldOptions

Properties

cycledX

readonly cycledX: boolean

Interface: ZoomRange

Properties

max

max: number

min

min: number

Type Aliases

MMapGeolocationControlProps

MMapGeolocationControlProps: Object

MMapGeolocationControl props

Type declaration
Name Type Description
duration? number Map location animate duration
easing? EasingFunctionDescription Easing function for map location animation
onGeolocatePosition? (position: LngLat) => void Geolocation request callback
source? string Data source id for geolocation placemark

MMapZoomControlProps

MMapZoomControlProps: Object

MMapZoomControl props

Type declaration
Name Type Description
duration? number Map location animate duration
easing? EasingFunctionDescription Easing function for map location animation

Module: <internal>

Type Aliases

BehaviorEvents

BehaviorEvents: Object
Type declaration
Name Type
onActionEnd BehaviorMapEventHandler
onActionStart BehaviorMapEventHandler

BehaviorMapEventHandler

BehaviorMapEventHandler: (`object`: {
	camera: MMapCamera;
	location: Location;
	type: BehaviorType 
}) => void
Type declaration

(object): void

Parameters
Name Type
object Object
object.camera MMapCamera
object.location Location
object.type BehaviorType
Returns

void


BehaviorType

BehaviorType: "drag" | "pinchZoom" | "scrollZoom" | "dblClick" | "magnifier" | "oneFingerZoom" | "mouseRotate" | "mouseTilt" | "pinchRotate" | "panTilt"

CustomReactify

CustomReactify<TEntity,
 TResult\>: (`ctor`: EntityConstructor<TEntity>, `params`: {
	React: typeof TReact;
	ReactDOM: typeof TReactDOM;
	ReactParent: typeof ReactParent;
	reactify: {
		context: <TContext>(`context?`: TContext) => TReact.Context<unknown>;
		module: ReactifyModule;
		entity: <T>(...`args`: [ctor: T, displayName?: string]) => T extends Overrided<T, TResult> ? TResult : ForwardRefExoticComponent<PropsWithoutRef<PropsWithChildren<EntityProps<InstanceType<T>>>> & RefAttributes<undefined | InstanceType<T>>> 
	} 
}) => TResult
Type parameters
Name Type
TEntity extends GenericEntity<unknown>
TResult TResult
Type declaration

(ctor, params): TResult

Parameters
Name Type
ctor EntityConstructor<TEntity>
params Object
params.React typeof TReact
params.ReactDOM typeof TReactDOM
params.ReactParent typeof ReactParent
params.reactify Object
params.reactify.context <TContext>(context?: TContext) => TReact.Context<unknown>
params.reactify.module ReactifyModule
params.reactify.entity <T>(...args: [ctor: T, displayName?: string]) => T extends Overrided<T, TResult> ? TResult : ForwardRefExoticComponent<PropsWithoutRef<PropsWithChildren<EntityProps<InstanceType<T>>>> & RefAttributes<undefined | InstanceType<T>>>
Returns

TResult


CustomVuefyOptions

CustomVuefyOptions<TEntity,
 TExternalProps\>: Object
Type parameters
Name Type
TEntity extends DefaultEntity
TExternalProps EntityProps<TEntity>
Type declaration
Name Type
props VuefyPropsObject<TExternalProps> | VuefyPropsArray<TExternalProps>

DefaultEntity

DefaultEntity: GenericEntity<unknown>

DefaultProps

DefaultProps: typeof defaultProps

DefaultProps

DefaultProps: typeof defaultProps

DefaultProps

DefaultProps: typeof defaultProps & {
	id: string 
}

DefaultProps

DefaultProps: typeof defaultProps

DomDetach

DomDetach: () => void
Type declaration

(): void

Returns

void


DomEventHandler

DomEventHandler: (`object`: DomEventHandlerObject, `event`: DomEvent) => void
Type declaration

(object, event): void

Parameters
Name Type
object DomEventHandlerObject
event DomEvent
Returns

void


DomEventHandlerObject

DomEventHandlerObject: HandlerEntity<"feature", MMapFeature> | HandlerEntity<"marker", MMapMarker> | HandlerEntity<"hotspot", MMapHotspot> | undefined

DomEvents

DomEvents: Object
Type declaration
Name Type
onClick DomEventHandler
onContextMenu DomEventHandler
onDblClick DomEventHandler
onFastClick DomEventHandler
onMouseDown DomEventHandler
onMouseEnter DomEventHandler
onMouseLeave DomEventHandler
onMouseMove DomEventHandler
onMouseUp DomEventHandler
onPointerCancel DomEventHandler
onPointerDown DomEventHandler
onPointerMove DomEventHandler
onPointerUp DomEventHandler
onRightDblClick DomEventHandler
onTouchCancel DomEventHandler
onTouchEnd DomEventHandler
onTouchMove DomEventHandler
onTouchStart DomEventHandler

DomEventsProps

DomEventsProps: Partial<DomEvents> & {
	layer?: string 
}

EasingBezierPreset

EasingBezierPreset: Object
Type declaration
Name Type
p1 Vec2
p2 Vec2

EasingFunction

EasingFunction: (`x`: number) => number
Type declaration

(x): number

Parameters
Name Type
x number
Returns

number


EasingFunctionDescription

EasingFunctionDescription: EasingPresetName | EasingBezierPreset | EasingFunction

EasingPresetName

EasingPresetName: "linear" | "ease" | "ease-in" | "ease-out" | "ease-in-out"

EntityConstructor

EntityConstructor<TEntity\>: (...`args`: any[]) => TEntity
Type parameters
Name Type
TEntity extends GenericEntity<unknown>
Type declaration

(...args)

Parameters
Name Type
...args any[]

EntityProps

EntityProps<T\>: T extends GenericEntity<infer P> ? P : never
Type parameters
Name Type
T extends GenericEntity<unknown>

FillRule

FillRule: "evenodd" | "nonzero"

GenericBounds

GenericBounds<T\>: [T, T]

Generic for rectangle bounded by bottom-left and top-right coordinates

Type parameters
Name
T

GenericGeometry

GenericGeometry<TCoordinates\>: GenericPolygonGeometry<TCoordinates> | GenericMultiPolygonGeometry<TCoordinates> | GenericLineStringGeometry<TCoordinates> | GenericMultiLineStringGeometry<TCoordinates> | GenericPointGeometry<TCoordinates>
Type parameters
Name
TCoordinates

Geometry

Geometry: PolygonGeometry | MultiPolygonGeometry | LineStringGeometry | MultiLineStringGeometry | PointGeometry

HandlerEntity

HandlerEntity<TType,
 TEntity\>: Object
Type parameters
Name Type
TType extends string
TEntity TEntity
Type declaration
Name Type
entity TEntity
type TType

HideOutsideRule

HideOutsideRule: {
	extent: number 
} | boolean

LineStringGeometry

LineStringGeometry: GenericLineStringGeometry<LngLat>

LngLat

LngLat: [lon: number, lat: number, alt?: number]

Tuple with geodesic coordinates in longitude latitude order.
GeoJSON also uses this order https://tools.ietf.org/html/rfc7946#appendix-A.1


LngLatBounds

LngLatBounds: GenericBounds<LngLat>

Rectangle bounded by bottom-left and top-right coordinates


Location

Location: Required<MMapLocation>

MMapBoundsLocation

MMapBoundsLocation: Object

Sets map bounds.

Type declaration
Name Type
bounds LngLatBounds

MMapCamera

MMapCamera: Object

Observer camera position

Type declaration
Name Type Description
azimuth? number Map rotation in degrees. Can take values from -180 to 180 degrees
tilt? number Map tilt in radians. Can take values from 0 to 45 degrees (degrees * (Math.PI / 180))

MMapCameraRequest

MMapCameraRequest: MMapCamera & {
	duration?: number;
	easing?: EasingFunctionDescription 
}

MMapCenterLocation

MMapCenterLocation: Object

Sets map center.

Type declaration
Name Type
center LngLat

MMapCenterZoomLocation

MMapCenterZoomLocation: MMapCenterLocation & MMapZoomLocation

Sets map center and zoom. Combination of MMapCenterLocation and MMapZoomLocation


MMapControlCommonButtonProps

MMapControlCommonButtonProps: Object

MMapControlButton props

Type declaration
Name Type Description
background? string Background color
color? string Text color
disabled? boolean Should be disabled
element? HTMLElement HTML element
onClick? () => void On click handler
text? string Text content

MMapCopyrightsPosition

MMapCopyrightsPosition: "top left" | "top right" | "bottom left" | "bottom right"

MMapFeatureEventHandler

MMapFeatureEventHandler: (`coordinates`: Geometry["coordinates"]) => void | false
Type declaration

(coordinates): void | false

Parameters
Name Type
coordinates Geometry["coordinates"]
Returns

void | false


MMapFeatureProps

MMapFeatureProps: {
	disableRoundCoordinates?: boolean;
	geometry: Geometry;
	hideOutsideViewport?: HideOutsideRule;
	id?: string;
	properties?: Record<string, unknown>;
	source?: string;
	style?: DrawingStyle 
} & DraggableProps<MMapFeatureEventHandler> & FeatureClickEvents

MMapFeature props


MMapListenerProps

MMapListenerProps: DomEventsProps | NullablePartial<MapEvents> | NullablePartial<BehaviorEvents>

MMapLocation

MMapLocation: MMapCenterZoomLocation & Partial<MMapBoundsLocation>

Sets map center and zoom or bounds. Combination of

Mixes

MMapZoomLocation and MMapBoundsLocation


MMapLocationRequest

MMapLocationRequest: MMapBoundsLocation | MMapCenterLocation | MMapZoomLocation | MMapCenterZoomLocation & {
	duration?: number;
	easing?: EasingFunctionDescription 
}

Describes how to change current map location. Change can be instantenious or animated if duration property is set.


MMapMarkerEventHandler

MMapMarkerEventHandler: (`coordinates`: LngLat) => void | false
Type declaration

(coordinates): void | false

MMapMarker events handler

Parameters
Name Type
coordinates LngLat
Returns

void | false


MMapMarkerProps

MMapMarkerProps: {
	coordinates: LngLat;
	disableRoundCoordinates?: boolean;
	hideOutsideViewport?: HideOutsideRule;
	id?: string;
	properties?: Record<string, unknown>;
	source?: string;
	zIndex?: number 
} & DraggableProps<MMapMarkerEventHandler> & FeatureClickEvents

MMapMarker props


MMapProps

MMapProps: Object

MMap props

Type declaration
Name Type Description
behaviors? BehaviorType[] Active behaviors
camera? MMapCameraRequest Initial camera or request to change camera with duration
className? string Map container css class name
config? Config Other configs
copyrightsPosition? MMapCopyrightsPosition Position of copyright on the page. Default is 'bottom right'
hotspotsStrategy? "forViewport" | "forPointerPosition" Strategy for fetching hotspots, for whole viewport or for tiles that pointer is hovering at
location MMapLocationRequest Initial location or request to change location with duration
margin? Margin Map margins
mode? MapMode Map mode, 'auto' (default. Show raster tiles while vector tiles are loading), 'raster' or 'vector' (without raster preloading).
projection? Projection Projection used in map
restrictMapArea? LngLatBounds | false Sets the map view area so that the user cannot move outside of this area.
theme? MMapTheme Theme applied to the scheme
worldOptions? WorldOptions Whether to repeat the world in X and Y
zoomRange? ZoomRange Restrict min and max map zoom
zoomRounding? ZoomRounding Set rounding for zoom. If auto is selected, zoom will be snap for raster and smooth for vector MapMode. Default is auto.
zoomStrategy? ZoomStrategy Zoom strategy describes if map center is bound to the zoom point or not

MMapTheme

MMapTheme: "light" | "dark"

Sets map theme


MMapZoomLocation

MMapZoomLocation: Object

Sets map zoom.

Type declaration
Name Type
zoom number

MapEventHandler

MapEventHandler<TObject\>: (`object`: TObject) => void
Type parameters
Name
TObject
Type declaration

(object): void

Parameters
Name Type
object TObject
Returns

void


MapEventReadyStateChangeHandler

MapEventReadyStateChangeHandler: MapEventHandler<MapState>

MapEventResizeHandler

MapEventResizeHandler: MapEventHandler<ResizeObject>

MapEventUpdateHandler

MapEventUpdateHandler: MapEventHandler<UpdateObject>

MapEvents

MapEvents: Object
Type declaration
Name Type
onResize MapEventResizeHandler
onStateChanged MapEventReadyStateChangeHandler
onUpdate MapEventUpdateHandler

MapMode

MapMode: "raster" | "vector" | "auto"

Margin

Margin: [number, number, number, number]

Map margins in pixels. Order is top, right, bottom, left.


MultiLineStringGeometry

MultiLineStringGeometry: GenericMultiLineStringGeometry<LngLat>

MultiPolygonGeometry

MultiPolygonGeometry: GenericMultiPolygonGeometry<LngLat>

NullablePartial

NullablePartial<T\>: { [P in keyof T]?: T[P] \| null }
Type parameters
Name
T

Overrided

Overrided<TCtor,
 TReactResult\>: Object
Type parameters
Name Type
TCtor extends EntityConstructor<GenericEntity<unknown>>
TReactResult TReactResult
Type declaration
Name Type
[overrideKeyReactify] CustomReactify<InstanceType<TCtor>, TReactResult>

Palette

Palette: PaletteEntry[]

PointGeometry

PointGeometry: GenericPointGeometry<LngLat>

PolygonGeometry

PolygonGeometry: GenericPolygonGeometry<LngLat>

Projection

Projection: GenericProjection<LngLat>

RefInstance

RefInstance<TEntity\>: React.MutableRefObject<TEntity | undefined>
Type parameters
Name Type
TEntity extends GenericEntity<unknown>

Stroke

Stroke: StrokeStyle[]

VuefyPropsArray

VuefyPropsArray<RawProps\>: keyof RawProps[]
Type parameters
Name
RawProps

VuefyPropsObject

VuefyPropsObject<RawProps\>: { [K in keyof RawProps]-?: TVue.PropType<RawProps[K]\> \| TVue.Prop<RawProps[K]\> }
Type parameters
Name
RawProps

WithDefaults

WithDefaults<Props,
 DefaultProps\>: Props & { [K in keyof DefaultProps]: K extends keyof Props ? NonNullable<Props[K]\> : never }
Type parameters
Name Type
Props Props
DefaultProps extends Partial<Props>

ZoomRounding

ZoomRounding: "snap" | "smooth" | "auto"

Set rounding for zoom.
If auto is selected, zoom will be snap for raster and smooth for vector MapMode.
Default is auto.


ZoomStrategy

ZoomStrategy: "zoomToCenter" | "zoomToPointer"

Variables

ReactParent

ReactParent: React.Context<[ReactParent] | undefined>

ReactParent

ReactParent: Context<undefined | [ReactParent]>

defaultProps

const defaultProps: Readonly<{
	duration: 500 
}>

defaultProps

const defaultProps: Readonly<{
	behaviors: string[];
	camera: {
		azimuth: number;
		tilt: number 
	};
	className: "";
	config: Config;
	copyrights: true;
	copyrightsPosition: "bottom right";
	hotspotsStrategy: "forViewport" | "forPointerPosition";
	margin: Margin | undefined;
	mode: "auto";
	projection: Projection;
	restrictMapArea: false;
	theme: "light";
	worldOptions: {
		cycledX: boolean;
		cycledY: boolean 
	};
	zoomRange: ZoomRange;
	zoomRounding: "auto";
	zoomStrategy: "zoomToPointer" 
}>

defaultProps

const defaultProps: Readonly<{
	source: "mappable-default-feature" 
}>

defaultProps

const defaultProps: Readonly<{
	blockBehaviors: false;
	blockEvents: false;
	draggable: false;
	hideOutsideViewport: false;
	mapFollowsOnDrag: false;
	source: "mappable-default-feature";
	zIndex: 0 
}>
In this article: