MapillaryJS v4.x Migration Guide
This page describes how to migrate from MapillaryJS v3.x to MapillaryJS v4.x.
General
- Github differential - v3.1.0...v4.0.0
- Properties named
key in v3.x have been renamed to id throughout the library in v4.x
Distribution
Renamed Files
v3.x |
v4.x |
mapillary.min.js |
mapillary.js |
mapillary.js |
mapillary.unminified.js |
mapillary.min.css |
mapillary.css |
Module
All namespacing has been removed and the global UMD name has been changed.
Global UMD Name
v3.x |
v4.x |
Mapillary |
mapillary |
Import
v3.x
import * as Mapillary from 'mapillary-js';
const viewer = new Mapillary.Viewer({...});
const marker = new Mapillary.MarkerComponent.SimpleMarker({...});
const popup = new Mapillary.PopupComponent.Popup({...});
v4.x
import { Popup, SimpleMarker, Viewer } from 'mapillary-js';
const viewer = new Viewer({...});
const marker = new SimpleMarker({...});
const popup = new Popup({...});
Destruct
v3.x
const viewer = new Mapillary.Viewer({...});
const marker = new Mapillary.MarkerComponent.SimpleMarker({...});
const popup = new Mapillary.PopupComponent.Popup({...});
v4.x
const { Popup, SimpleMarker, Viewer } = mapillary;
const viewer = new Viewer({...});
const marker = new SimpleMarker({...});
const popup = new Popup({...});
Styles
All style classes have been renamed.
Viewer
Methods
Renamed
v3.x |
v4.x |
Description |
setUserToken |
setAccessToken |
Now accepts a client access token or a user access token |
Options
Added
trackResize - Breaking change: the viewer now tracks browser window resizing by default. Set this option to false if you want to handle viewer resizing with custom logic.
dataProvider - Override the default data provider.
Removed
v3.x |
v4.x |
baseImageSize |
No replacement |
basePanoramaSize |
No replacement |
baseImageSize |
No replacement |
maxImageSize |
No replacement |
apiClient |
Use dataProvider and/or accessToken instead |
Renamed
v3.x |
v4.x |
imageKey |
imageId |
userToken |
accessToken |
Component Options
Removed
v3.x |
v4.x |
background |
No replacement |
debug |
No replacement |
route |
No replacement |
Renamed
v3.x |
v4.x |
imagePlane |
image |
mouse |
pointer |
spatialData |
spatial |
Replaced
v3.x |
v4.x |
image |
Moved to fallback options |
navigation |
Moved to fallback options |
Events
Event names are not provided as static properties on the Viewer class.
v3.x |
v4.x |
viewer.on(Mapillary.Viewer.click, ...); |
viewer.on('click', ...); |
Contracts
All emitted events are now an object with the following properties populated:
type - Event type
target - Instance that emitted the event
Additional properties are provided per event type.
Renamed Event Types
v3.x |
v4.x |
bearingchanged |
bearing |
fovchanged |
fov |
loading |
dataloading |
navigablechanged |
navigable |
nodechanged |
image |
positionchanged |
position |
povchanged |
pov |
removed |
remove |
sequenceedgeschanged |
sequenceedges |
spatialedgeschanged |
spatialedges |
Image
The Node class has been renamed to Image.
Properties
Removed
v3.x |
v4.x |
cameraUuid |
No replacement |
fullPano |
Use cameraType instead |
gpano |
Use cameraType instead |
pano |
Use cameraType instead |
mergeVersion |
No replacement |
projectKey |
No replacement |
Renamed
v3.x |
v4.x |
alt |
computedAltitude |
ca |
compassAngle |
cameraProjectionType |
cameraType |
clusterKey |
clusterId |
computedCA |
computedCompassAngle |
computedLatLon |
computedLngLat |
key |
id |
latLon |
lngLat |
mergeCC |
mergeId |
organizationKey |
ownerId |
orientation |
exifOrientation |
originalAlt |
originalAltitude |
originalCA |
originalCompassAngle |
originalLatLon |
originalLngLat |
sequenceKey |
sequenceId |
userKey |
creatorId |
userName |
creatorName |
Replaced
v3.x |
v4.x |
focal, ck1, ck2 |
cameraParameters |
Types
v3.x |
v4.x |
ILatLon: { lat: number, lon: number } |
LngLat: { lat: number, lng: number } |
ILatLonAlt: { alt: number, lat: number, lon: number } |
LngLatAlt: { alt: number, lat: number, lng: number } |
AbortMapillaryError |
CancelMapillaryError |
Enums
Renamed
v3.x |
v4.x |
EdgeDirection |
NavigationDirection |
Component
Components
Removed
v3.x |
v4.x |
background |
No replacement |
debug |
No replacement |
route |
Use the custom render API or custom HTML elements instead |
Renamed
v3.x |
v4.x |
imageplane |
image |
spatialdata |
spatial |
image |
imagefallback |
navigation |
navigationfallback |
Events
v3.x |
v4.x |
MarkerComponent.dragend |
markerdragend |
MarkerComponent.dragstart |
markerdragstart |
MarkerComponent.changed |
markerposition |
MarkerComponent.hoveredkeychanged |
hover |
SequenceComponent.hoveredkeychanged |
hover |
SequenceComponent.playingchanged |
playing |
TagComponenent.geometrycreated |
geometrycreate |
TagComponenent.creategeometryend |
tagcreateend |
TagComponenent.creategeometrystart |
tagcreatestart |
TagComponenent.modechanged |
tagmode |
TagComponenent.tagschanged |
tags |
Tag.click |
click |
Tag.geometrychanged |
geometry |
Tag.changed |
tag |
Interaction
Removed
v3.x |
v4.x |
MouseComponent#doubleClickZoom |
No replacement |
API
The complete API functionality, including ents, contracts, and providers, has been replaced. See the v4 API reference and examples for info about the new functionality.