V4
[4.42.1] - 2025-09-08
Fixed
An edge-case when some 3D Models were not loading, preventing the map from loading.
[4.42.0] - 2025-09-02
Added
Possibility to set and get Mapbox v3 map style.
[4.41.3] - 2025-08-07
Fixed
Improved detection of context switches in route legs.
Changed
Updated
VenuesServiceto consistently return instances ofBuildingandVenueclasses fromgetVenues(),getVenue(id),getBuildings(), andgetBuilding(id)methods, improving type consistency and enabling object-oriented interactions.Improved performance when calculating directions and routes by updating the API endpoint for fetching entry points. This change utilizes a more efficient, dedicated endpoint, which reduces the amount of data transferred and leads to faster loading of directional information.
Added
Added
getFieldForKeymethod to theVenueclass, allowing case-insensitive retrieval of custom properties fromvenueInfo.fields.Added
getFieldForKeymethod to theBuildingclass, allowing case-insensitive retrieval of custom properties frombuildingInfo.fields.
[4.41.2] - 2025-07-21
Added
Added a
showMapMarkersoption to theGoogleMapsViewconstructor, allowing control over the visibility of Google Maps' Points of Interest markers.
Fixed
Resolved an issue where API requests would fail by ensuring the API key is correctly appended to API host URLs.
Improved floor plan display reliability when the floor index isn't properly set.
Fixed an issue where 2D models would appear to float when 3D extrusions were disabled.
[4.41.1] - 2025-06-23
Fixed
Resolved an issue where active location filtering was inconsistent due to mixed date formats (milliseconds vs. seconds). All date calculations for active location filtering are now consistently handled in seconds.
Fixed an issue where changing the Mapbox map style at runtime could cause errors because the Blue Dot and accuracy circle layers were not re-initialized for the new style.
Changed
Improved the type definition for the
maneuverproperty within theDirectionsResultinterface to provide a more precise and accurate representation of its possible values.Updated documentation and type annotations for various interfaces, classes, and methods, including
Location,DistanceMatrixService,LocationsService,BookingService,AppConfigService,MapboxV3View,GoogleMapsView,Building,AppConfig, andMapsIndoorsto enhance clarity and consistency.
[4.41.0] - 2025-05-27
Added
Added
setLocationSettingsmethod to theMapsIndoorsclass for setting LocationSettings on individual locations or location types.
Changed
Improved feature prioritization on hover for Google Maps and Mapbox views, ensuring hovered features are rendered above others, and isn't hidden due to collisions.
Fixed
Corrected clipping mask initialization logic to properly wait for a map view to be set before attempting to apply the mask, resolving an issue where the mask might not be applied if called too early.
Elevated 2D models are now correctly placed on the ground when 3D extrusions are disabled.
[4.40.2] - 2025-05-14
Fixed
Fixed an issue where the clipping mask might not be applied correctly if set before the map view or necessary modules were fully ready.
Improved map rendering performance by optimizing feature processing and caching.
Implemented caching for badge rendering results to improve performance.
Improved performance of internal data lookups within the SDK.
[4.40.1] - 2025-05-01
Fixed
Fixed a timing issue that could prevent the clipping mask from being applied correctly during initialization or venue changes, potentially causing errors.
[4.40.0] - 2025-04-29
Added
Introduced support for icons to dynamically scale down to avoid overlapping each other, improving map readability in dense areas. This feature is active when the
Dynamic Icon Scalingmodule is enabled for the solution. Selected, highlighted, or hovered icons are exempt from this scaling.Introduced support for labels to dynamically adjust their position relative to their associated icon (choosing from top, bottom, left, or right) to minimize collisions and improve visibility when the
Dynamic Label Positioningmodule is enabled for the solution.Introduced support for displaying 2D models at elevations corresponding to associated extruded geometry in the Mapbox view.
Introduced support for clipping mask functionality that removes Mapbox 3D models, e.g., trees, within a venue's geometry on Mapbox v3. This is controlled by the "Clip layer (Mapbox v3)" module in the CMS.
Fixed
Improved the handling of Mapbox map style changes to guarantee the consistent rendering of all map features, including 2D overlays, 3D models, and displayed directions. This ensures a seamless visual experience when switching between map styles.
[4.39.4] - 2025-04-07
Fixed
Fixed an issue where setting the
clickableproperty of aDisplayRuletofalsewould have no effect.Building outlines are now always displayed above other outlines. Routes are still displayed above the building outlines.
Fixed an issue preventing 3D models from being clickable in
MapboxV3View.
[4.39.3] - 2025-04-03
Changed
Improving the performance of the MapsIndoors SDK by optimizing the map rendering process.
Updated reference documentation for
LocationSettings,AdditionalDetails, andRouteAnimationOptions.
[4.39.2] - 2025-03-25
Fixed
Refactored
AppConfigServiceto use an internal cache instead ofSessionStorageto ensureAppConfigreloads on window refresh.
[4.39.1] - 2025-03-12
Fixed
Fixed a bug that prevented the
synchronizeContentfunction from updating the MapsIndoors data.
[4.39.0] - 2025-03-05
Added
fitVenuemethod now accepts an optionaloptionsobject withpaddingandmaxZoomparameters.fitBuildingmethod now accepts an optionaloptionsobject withpaddingandmaxZoomparameters.
Fixed
Fixed an issue where calling
fitBuildingon a MapsIndoors instance would throw anUncaught (in promise) Error: Invalid GeoJSON object!error.Fixed an issue where 2D models in some cases weren't clickable.
[4.38.7] - 2025-02-27
Fixed
Fixed an edge case in which locations placed far from the venue could cause performance issues or crash the SDK.
Fixed URL encoding for the
getLocationsfunction inLocationsServiceand other API request functions, resolving potential issues with special characters in query parameters.
[4.38.6] - 2025-01-27
Fixed
Fixed an issue where inactive
Locationswould show up on the map.Fixed an issue where the
DirectionsServicecould crash when no route could be found between two points.Fixed the click handling for
Flat LabelsonMapboxViewandMapboxV3View.Fixed an issue where
GoogleMapsViewwould throw anUncaught TypeError: a.url.substr is not a functionerror in the console, related toGraphic Labels.
[4.38.5] - 2025-01-21
Fixed
Fixed an issue that sometimes caused the 3D buildings on
MapboxV3Viewto block the MapsIndoors data.
[4.38.4] - 2025-01-13
Fixed
Fixed an issue that caused the
DirectionsRendererto throw an unexpected error.Fixed an issue where setting a different Mapbox style on the
MapboxV3Viewwould cause the SDK to throw an error.Fixed an issue where 2D models on Google Maps wouldn't get removed from the map when changing floors.
[4.38.3] - 2025-01-07
Fixed
Fixed missing labels for Google Maps. A misconfiguration in the label rendering logic caused this issue.
Fixed an issue where calling
fitVenue()on a MapsIndoors instance would throw anUncaught (in promise) Error: Invalid GeoJSON object!error.Fixed the
getFloormethod to ensure it returns a string value.
[4.38.2] - 2024-12-18
Fixed
Fixed an issue where the
floorNamesproperty onVenueobjects could be null. This ensures venue objects always have valid floor names, preventing potential errors when accessing floor information.Fixed an issue where the
DirectionsRendererwould throw anUncaught (in promise) Error: Invalid GeoJSON object!error.Fixed an issue where setting the
venueparameter forLocationsService.getLocations()would return an empty result.
[4.38.1] - 2024-12-12
Fixed
Fixed an issue where calling
goTowould reset the map's pitch/tilt. The map now retains the same pitch/tilt as it had before callinggoTo. This was fixed in thefitBoundsmethod on bothMapboxViewandMapboxV3View.
[4.38.0] - 2024-12-10
Added
Added optional
automatedZoomLimitproperty toSolutionConfig. TheautomatedZoomLimitcontrols how far the SDK automatically zooms in, e.g., when fitting to a venue, building, or location.Added the
goTomethod in the MapsIndoors class to improve the map navigation. This method fits the map view to a given feature with optional padding and a maximum zoom level. If the maximum zoom is not set when callinggoTo, it will fall back to theautomatedZoomLimitin theSolutionConfig. If neither is set, it will use the map's maximum supported zoom level.
Changed
To improve performance, the strategy for loading data is changed from eager to lazy. This means the initial data load is much faster because the SDK only loads the data needed to render the initial map view. Then, when the map changes, more data is loaded as needed, e.g., if the floor is changed. This is an internal change and has been implemented without any changes to the SDK's public interface.
[4.37.1] - 2024-11-26
Fixed
Fixed a potential
TypeError: Cannot read properties of undefined.Fixed typo in internal variable name that could cause unexpected behavior.
[4.37.0] - 2024-11-25
Added
Support for Label Positioning for Floating Labels. (Mapbox only)
New section to Label Style Display Rules:
labelStylePosition: sets the position of the label, relative to the Locations' anchor point. It can be set to: 'top', 'right', 'bottom', or 'left'.
[4.36.3] - 2024-10-10
Fixed
The SDK will no longer throw an error if the
venue.stylesproperty is undefined. This fixes a potential issue where the application might crash if the venue data was missing the styles property.
[4.36.2] - 2024-08-29
Fixed
showMapMarkersboolean also shows/hides Mapbox’s transit icons.Fix issue with 2D geometry not always being shown.
[4.36.1] - 2024-07-22
Fixed
getVenue()andgetBuilding()on the MapsIndoors instance wouldn't return the correct translation after callingsetLanguage().
[4.36.0] - 2024-06-27
Added
Multi-Stop Navigation:
The
mapsindoors.services.DirectionsService.getRoutenow supports multi-stop routes with:stopsparameter (array ofLatLngLiteral): Defines stop locations, including optional floor.optimizeparameter (boolean, defaults tofalse): Optimizes the route for the shortest travel time.
The
mapsindoors.directions.DirectionsRendererhas a new constructor parameter:defaultRouteStopIconProvider: Sets the default route stop icon provider. Setting this parameter tonulldisables the rendering of default stop icons.
The
mapsindoors.directions.DirectionsRenderer.setRoutenow takes an extra parameter:stopConfigs: A map ofRouteStopConfigobjects. The key is the stop index, and the value is theRouteStopConfigobject.
RouteStopConfig: An interface describing two properties,labelandiconProvider.{ label: string, iconProvider: RouteStopIconProvider }.RouteStopIconProvider: An interface containing thegetImage(stop_number: number)method. Implemented by themapsindoors.directions.DefaultRouteStopIconProviderclass.
Fixed
Fixed an issue with the
mapsindoors.BadgeRendererand thescaleparameter.
[4.35.0] - 2024-06-12
Changed
Only selectable locations can be hoverable.
Added
Missing live data domain types to JSDocs.
[4.34.0] - 2024-06-05
Added
Extended Mapbox v3 functionalities:
The fade effect for extruded buildings now uses numeric values between 0 and 1.
New constructor parameter on the MapboxV3View:
showRoadNameLabels: A boolean parameter that dictates whether Mapbox road names should be shown. By default, Mapbox road names are hidden when MapsIndoors data is shown.
The
MapboxFeaturesgetter is deprecated. Use the similarFeatureTypegetter instead to show or hide specific Mapbox features.
Fixed
Fixed an issue where an empty tileUrl on a Venue would break directions functionality.
[4.33.0] - 2024-04-29
Fixed
Fixed an issue with polygons that were clickable even though they were not visible.
Added
Extended Mapbox v3 handles:
Added two new functions:
setSlot()andgetSlot(). It is now possible to set a different value forslotproperty on a specific layer.
[4.32.0] - 2024-04-16
Fixed
Fixed an issue where labels were not visible in the Safari browser for Google Maps.
Fixed an issue where the direction polyline was rendered in the wrong order for Mapbox v3.
Added
Extended Label Style:
Added new
labelTypecalled Graphic Label.Graphic Label: Only visible when Graphic Label type is selected. Opens Media Library with prefiltered MapsIndoors Labels. Controls what image is used as background image of a Graphic Label.
[4.31.0] - 2024-03-25
Fixed
Fixed selection issue when selection pin was not elevated on top of extrusions for Mapbox v3.
Fixed an issue with
labelStyle.haloWidth,labelStyle.haloBlurandlabelStyle.textOpacitynot respecting value 0.Fixed an issue when Mapbox v3 map markers were visible even when they were disabled.
Fixed an issue with setting solution API Key not working after the map was initialized.
Added
Exposed three new methods for Mapbox v3 map view:
hideFeatures(): sets visibility of passed array of MapboxFeatures to none.MapboxFeatures: gets MapboxFeatures that visibility can be set to none.getHiddenFeatures(): gets currently hidden features.
[4.30.0] - 2024-02-15
Changed
Upgraded MICommon to v3.6.1 to accommodate more strict CSP headers.
Fixed
Fixed the
TypeError: this.getMapView(...).setFloorPlan is not a functionerror.Fixed an issue where using fractional zoom levels in DisplayRules caused rendering issues.
Added
Support for setting Locations as selectable or non-selectable.
[4.29.3] - 2024-02-06
Fixed
Fixed an issue with the
setDisplayRule()method that prevented the set DisplayRule from being applied.
[4.29.2] - 2024-02-05
Fixed
Fix Flat Label interpolation on zoom levels above 22.
[4.29.1] - 2024-01-30
Fixed
Issue when Mapbox' extruded buildings were visible after the page reload.
[4.29.0] - 2024-01-24
Added
Support for two new types of labels: Text and Flat.
New section to Display Rules called Label Style where you can style:
labelType: Label type displayed on the map, either Text or Flat.textSize: Controls the size of the label.textColor: Controls the color of the label.textOpacity: Controls the opacity of the label.haloColor: Controls the color of the halo effect around the label.haloWidth: Width of the halo effect around the label.haloBlur: Controls the blur effect of the halo effect.bearing: Only visible when Flat Label type is selected. Controls bearing of the Flat Label.
[4.28.0] - 2024-01-23
Added
Support for 2D Walls (floor plans).
Constructor parameter:
buildingSelectionModefor specifying the building selection mode (manualorautomatic). Defaults toautomatic.Constructor parameter:
floorSelectionModefor specifying the floor selection mode (manualorautomatic). Defaults toautomatic.setBuildingSelectionMode(mode): Sets the building selection mode to eithermanualorautomatic.getBuildingSelectionMode(): Returns the current building selection mode.setFloorSelectionMode(mode): Sets the floor selection mode to eithermanualorautomatic.getFloorSelectionMode(): Returns the current floor selection mode.avoidHighwayTypesandexcludeHighwayTypesparameters toDistanceMatrixService.getDistanceMatrix():Both parameters are optional string arrays of highway types to avoid or exclude when calculating a distance matrix.
Both parameters take precedence over the
avoidStairsparameter.
avoidHighwayTypesandexcludeHighwayTypesparameters toDirectionsService.getRoute():Both parameters are optional string arrays of highway types to avoid or exclude when calculating a route.
Both parameters take precedence over the
avoidStairsparameter.
Supported highway types for
avoidHighwayTypesandexcludeHighwayTypesparameters:'ramp','stairs','ladder','escalator','travelator','elevator','unclassified','residential','footway','wheelchairramp','wheelchairlift'
Fixed
Live data badges is now also visible when the POI is highlighted or selected.
[4.27.0] - 2024-01-16
Added
New MapView:
MapboxV3View.Support for Mapbox GL JS v3.
Exposed map view constructor parameters:
mapsIndoorsTransitionLevel: controls transition between Mapbox and MapsIndoors data.showMapMarkers: boolean parameter that dictates if Mapbox map markers should be shown or not. By default Mapbox markers will be hidden when MapsIndoors data is shown.lightPreset: sets global light. Can be set to: 'day', 'dawn', 'dusk' or 'night'.
[4.26.5] - 2023-12-11
Fixed
A Mapbox-related issue where highlighted
Locationswere hidden due to collisions with otherLocations.
[4.26.4] - 2023-12-07
Fixed
To avoid rendering issues, the ViewState is not updated before a floor has been set.
Google Maps DirectionsService now uses the set language.
[4.26.3] - 2023-11-29
Fixed
Resolved issue where Mapbox DistanceMatrix calls failed if only one origin and one destination were specified.
[4.26.2] - 2023-11-28
Fixed
Fixed default
badgePositionfor thehoverHighlightstate.
[4.26.1] - 2023-11-24
Fixed
Fixed an issue with DisplayRules where the
iconPlacementproperty would not be respected.Fixed an issue with DisplayRules where the
badgePositionproperty would not be respected.
[4.26.0] - 2023-11-23
Added
Highlight locations: Introduced a new
highlight()method to visually emphasize specific locations on the map. This method takes an array of location IDs as its argument. It shares the same functionality and arguments as thefilter()method, providing an alternative way to filter locations based on their IDs. ThegetHighlight()method returns an array containing the IDs of all currently highlighted locations.Select a location: Added new methods
selectLocation()anddeselectLocation()to control the selection of specific locations on the map. UseselectLocation()to select a location anddeselectLocation()to clear the current selection. ThegetSelectedLocation()method returns the currently selected location object.Hover a location: Introduced methods
hoverLocation()andunhoverLocation()to manage the hovered location. UsehoverLocation()to set a location as hovered andunhoverLocation()to remove the hovered state. ThegetHoveredLocation()method returns the currently hovered location object.State DisplayRules: Added
stateDisplayRulesto the Solution Config, allowing users to specify which states should be displayed for locations on the map. Available states includehover,highlight,selection,hoverHighlight, andhoverSelection.
[4.25.0] - 2023-10-30
Added
Added new
tilt(pitch: number)androtate(bearing: number)methods to the MapboxView class to align the interface between theGoogleMapsViewandMapboxViewclasses.Added a common set of
getBearing()andgetPitch()methods to bothGoogleMapsViewandMapboxViewclasses.
[4.24.7] - 2023-08-28
Added
Added support for zoom levels 23, 24, 25 and 999 (acting as "max zoom"). These are only rendered when using Mapbox map.
[4.24.6] - 2023-08-22
Fixed
For 3D models, the Z and Y axis have been swapped to align with the glTF specification (See https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#coordinate-system-and-units)
[4.24.4] - 2023-08-03
Fixed
Labels for Venues and Building were set not to be visible by default.
[4.24.3] - 2023-07-26
Fixed
Clicking on a 3D model would under some circumstances emit the wrong Location in the click event.
mouseenterandmouseleaveevents now also trigger for polygons with an opacity of 0.mouseenterandmouseleaveevents now also trigger when Locations appear or disappear when zooming in or out (due to Display Rule zoom levels).
[4.24.2] - 2023-07-12
Fixed
Only sync derived geometries if the 3D module is enabled.
[4.24.1] - 2023-07-11
Fixed
The rendering of 2D models on iOS devices.
[4.24.0] - 2023-07-06
Added
Support for an upcoming position control Web Component.
[4.23.1] - 2023-06-29
Fixed
Directions on Google Maps rendering below polygons with a fill color.
Polygon styling from the main display rule would show on venue, building, and floor polygons.
Setting the polygon stroke width to 0 would render a 2px width stroke around it.
The PositionControl button would under some circumstances not be visible.
In some cases, Mapbox wouldn’t show tiles when zoomed to the max zoom level.
[4.23.0] - 2023-06-23
Added
mapsindoors.MapsIndoors.addVenuesToSync(venueIds: string[])- Adds one or more venue IDs to the list of venues to synchronize data for.mapsindoors.MapsIndoors.removeVenuesToSync(venueIds: string[])- Removes one or more venue IDs from the list of venues to synchronize data for.
Fixed
The SDK usage logging is now correctly sent before the page unloads.
Changed
The rendering of 2D models on Mapbox now uses WebGL and three.js to improve performance.
[4.22.0] - 2023-06-14
Added
The MapsIndoors class will now emit a
mouseenterevent when the cursor of a pointing device is moved so it is within the bounds of a Location.The MapsIndoors class will now emit a
mouseleaveevent when the cursor of a pointing device is moved so it leaves the bounds of a Location.
[4.21.6] - 2023-05-31
Fixed
Rare timing issue causing the Mapbox map to crash.
[4.21.5] - 2023-04-25
Fixed
A leftover console message was removed.
[4.21.4] - 2023-02-22
Changed
The light setup for 3D models for a more accurate color representation.
Fixed
The issue that caused the 3D models to blink when panning the map.
[4.21.3] - 2023-02-22
Added
Support for Solution Config
Support for Settings 3D
Changed
Updated the MapsPeople logo
Fixed
Fixed a bug occurring when using deallocate with the map
Aligned 3D rotation across platforms
Fixed timing issue for 2D and 3D layers on Mapbox.
[4.21.2] - 2023-02-22
Fixed
Fix slow animation in Mapbox when fitting to new map bounds.
[4.21.1] - 2022-12-13
Fixed
Fix a bug where wrong or flickering MapsIndoors tiles were sometimes shown on a Google Maps map.
MapsIndoors tiles will now be correctly changed when changing the MapsIndoors API key.
[4.21.0] - 2022-10-27
Added
Support for getting locations by external ID.
[4.20.2] - 2022-10-25
Fixed
Fix bug where a runtime 3D model URL change would not render the new model.
[4.20.1] - 2022-10-11
Fixed
Fix a bug where the wrong floor was sometimes shown.
[4.20.0] - 2022-10-06
Added
Support for 2D models on Mapbox maps.
[4.19.0] - 2022-09-29
Added
Support for 2D models on Google maps.
Changed
MICommon has been updated to the latest version.
[4.18.1] - 2022-09-07
Fixed
Labels are now centered when the icon is not visible.
[4.18.0] - 2022-08-31
Added
Support for wall extrusions, room extrusions, and 3D models on Mapbox maps.
[4.17.7] - 2022-07-12
Fixed
Device position dot and circle are now always shown no matter how
PositionControl.watchPositionis invoked.
[4.17.6] - 2022-04-22
Fixed
Fix bug where Live Data badges on locations were not always removed when disabling a Live Data Domain.
[4.17.5] - 2022-04-13
Fixed
Creating MPBooking objects now works again.
[4.17.4] - 2022-04-11
Fixed
Animated directions will now always start when rendering a route, and will also render on a per-leg level.
[4.17.3] - 2022-04-05
Fixed
Renamed the
labelTemplateproperty on theDefaultDisplayRuletolabelto match with theDisplayRuleinterface.Fix bug where directions line on a Mapbox map in some instances would not be rendered.
Add missing documentation of required parameter in the
mapsindoors.directions.MapboxProvider.Fix bug where the set language was not used when requesting Mapbox directions.
[4.17.2] - 2022-02-03
Fixed
Locations receiving Live Data
positionupdates will no longer disappear when panning the map.Live Data is now correctly resumed with the most recent updates when changing user role.
Floor Selector styles are no longer missing.
[4.17.1] - 2022-01-13
Fixed
In some cases, the MapsPeople logo would not be visible.
All icons are now added to MapBox, to prevent the "Image ... could not be loaded." warning in the console.
strokeFill,strokeColor, andstrokeWeightis now correctly applied when usingsetBuildingOutlineOptions().
[4.17.0] - 2021-12-21
Added
User authenticated booking.
Fixed
Label and icon can now be visible at different zoom level ranges.
[4.16.0] - 2021-12-07
Added
Disabling Live Data will now remove badges from icons when using the default callback.
Fixed
In some cases, when adding the MapsPeople logo to the map, the SDK would throw an error.
Live Data now sends correct Http headers.
LiveDataInfo.activeDomainTypes()now always returns a promise.
[4.15.0] - 2021-11-18
Added
Labels on Google Maps now support line breaks. A label containing will now be broken into two lines.
labelMaxWidthonDisplayRulesets the max-width in px for a label. Longer labels will be wrapped over multiple lines.
[4.14.1] - 2021-11-03
Fixed
AppUserRolesset viaMapsIndoors.setUserRolesis now applied when callingDirectionsService.getRoute
[4.14.0] - 2021-09-13
Changed
Updated the JSDOC template used for the reference guide.
Added
The
LocationsServicenow supports filtering byLocationtype. (mapsindoors.services.LocationsService.getLocations({types: ['Staris']})).synchronizeContent()has been added to MapsIndoors as a static member. It will synchronize the MapsIndoors data from the backend to the client when called.
[4.13.0] - 2021-08-17
Added
Animated directions for MapBox
Fixed
The "Uncaught (in promise) TypeError: Cannot read property 'flush' of undefined" error.
[4.12.1] - 2021-06-24
Fixed
Location icons are now internally requested with size parameters instead of scale.
[4.12.0] - 2021-06-17
Added
Support for (and default rendering of) Live Data Domain Types
co2andhumidity.The Location id is now added to the request when deleting a booking.
Fixed
Reduce icon flicker when applying Live Data badges.
Default badge rendering of unknown Live Data Occupancy can now handle unknown number of people.
In some cases setting the stroke- and fill-opacity for a Location Type would fail.
[4.11.2] - 2021-06-03
Fixed
Calling
mapsindoors.MapsIndoors.setLanguage()will now trigger a refresh of the cached Locations.Reduces the amount of HTTP requests when using Live Data.
[4.11.1] - 2021-05-27
Fixed
The
radiuscombined with thenearparameter will now reduce the number of Locations returned byLocationsService.getLocations()to those within that radius from the location (MapsIndoors Location or latitude/longitude) specified bynear.The
LocationsServicewill now log usage statistics.
[4.11.0] - 2021-05-20
Added
Support for (and default rendering of) Live Data Domain Types
temperatureandcount.
Fixed
The default Live Data badge rendering is now based on Domain Type hierarchy:
availability+occupancy>availability>occupancy>temperature>count.The default label styling has been refreshed and is now aligned with out showcase web app.
[4.10.0] - 2021-05-18
Added
Animated directions for Google Maps.
Fixed
A bug that caused the outdoor parts of the directions polyline to not be shown if the current Floor Index wasn't 0.
[4.9.1] - 2021-05-05
Fixed
A bug that caused icons with Live Data badges to look unsharp/fuzzy.
A timing issue that could cause a
TypeError: Cannot read property 'toString' of undefinederror in the console.
[4.9.0] - 2021-04-28
Added
deallocatemethod on MapsIndoors class that will clean up and release resources associated with the MapsIndoors instance.
[4.8.1] - 2021-04-28
Fixed
A bug in the DirectionsService that would cause routes between Venues to fail.
A bug in the styling of labels that prevented the ShadowBlur from being changed.
A bug in the styling of labels where strokeStyle would not be applied for labels on Google Maps.
[4.8.0] - 2021-04-19
Added
SDK Event logging.
Fixed
Labels are now clickable on Google Maps.
The directions steps are now aligned across the different directions providers.
[4.7.0] - 2021-04-12
Added
Live Data icon badges can now show badges that combine info from both the Occupancy and Availability Domains.
The LocationsService will now emit a
update_completedevent when data has been synchronized with the backend.
Fixed
Fixed a bug in DirectionsRenderer, that could cause a route polyline not to be shown on the map.
Fixed label placement for Mapbox, so they are placed in the same location as labels on Google Maps.
Fixed a bug in the processing of display rules, that caused room polygons not to be clickable.
Fixed maxZoom offset for MapBoxView.
[4.6.2] - 2021-03-15
Fixed
A bug in the processing of display rules caused some locations to be missing from the map.
[4.6.1] - 2021-03-11
Fixed
Fixing an issue where the Location Service in some circumstances wouldn't return Locations
Fixed bug where Live Data was not shown
[4.6.0] - 2021-03-01
Added
Areas - It's now possible to render Areas on the map using Display Rules.
[4.5.2] - 2021-02-23
Fixed
MICommon updated to 2.1.0 with improved distance/text ranking correlation.
[4.5.1] - 2021-02-16
Fixed
A bug in the directions renderer where directions going from a POI not on the ground floor to an external address would not render correctly on the map.
[4.5.0] - 2021-02-01
Added
Booking service - Adds support for booking of Locations. It requires integration to a calendar provider e.g. Google Calendar for this to work. For more information about our Booking service and how to get started, please contact our sales team.
Fixed
Prevent crash in case of nonexisting venue on location
Prevent crash in case of rendering badge on nonexisting icon
Improved distance/text ranking correlation (micommon)
In some cases the route step would have a wrong travel mode when routing from one venue to another.
[4.4.0] - 2021-01-11
Added
fitBoundsPaddinghas been added as an optional parameter to theDirectionsRendererconstructor. It can be used to add a padding around the route when the map is fitted to a route leg or route step.Step switching has been added to the
DirectionsRenderer. It is now possible to callnextStep()orpreviousStep()to navigate between each step of the route.setStepIndex(stepIndex, legIndex)can be used to set the renderer to a specific step on a specific leg. If thelegIndexis not specified then the currentlegIndexis used.
Fixed
External IDs are now searchable.
Updated the documentation for the
BuildingOutlineOptions.getBuildingOutlineOptions()no longer returns undefined.The optional parameters for
DirectionsRendererwill now have an effect when set in the constructor.Updated the documentation for
LabelOptions. Added missingfontWeightproperty. Do note thatfontWeightis not supported by MapBox.
[4.3.1] - 2021-01-06
Fixed
Fixed wrong icon scale calculation.
[4.3.0] - 2021-01-04
Added
LiveDataInfo class for checking if live data domain type is available on the loaded solution.
Changed
LiveDataManager
enableLiveData()andsubscribe()will no longer attempt to make subscription if the live data domain type is not available on the solution.
Fixed
Prevent faulty travel modes when getting directions inside MapsIndoors venues.
[4.2.1] - 2020-12-17
Fixed
The Directions Service would in some cases not return the most optimal route.
[4.2.0] - 2020-12-16
Added
Support for Live Data via a new
mapsindoors.LiveDataManagerclass. For more information about Live Data and how to get started, please contact our sales team.mapsindoors.BadgeRendererhelper class to apply a badge onto an image.Support for overriding a display rule and removing the override again (
overrideDisplayRule(),revertDisplayRule()).Optional
ignoreOverridesparameter ongetDisplayRule(defaults tofalse).
[4.1.5] - 2020-12-17
Fixed
The Directions Service would in some cases not return the most optimal route.
[4.1.4] - 2020-12-16
Fixed
Google Maps will enable zoom level 22 by default if the
maxZoomis not specified. The SDK will now setmaxZoomto 21 ifmaxZoomhasn't been specified when creating the MapView.
[4.1.3] - 2020-12-15
Fixed
An issue where the default styling of labels would render almost unreadable labels.
An issue where the My Position icon didn't follow the users' movement.
Improved internal caching of the services to reduce network traffic.
Improved performance of the ViewState.
Changed
The SDK will now check if the 'z22' module is enabled and set the max zoom on the MapView to 22 unless the MapView is initialized with max zoom specified. (Contact our sales team to hear more about this feature).
The default color of the building outlines to
#EF6CCE.The default color for the Directions Renderer to
#3071D9.MICommon has been updated to the latest version.
[4.1.2] - 2020-12-03
Fixed
An issue where directions between two venues would cause an error.
Changed
Minor updates of the documentation.
[4.1.1] - 2020-11-20
Fixed
An issue where the Directions polyline would visible on all floors.
[4.1.0] - 2020-11-12
Added
Added static functions setUserRoles and getUserRoles to the MapsIndoors object.
mapsindoors.MapsIndoors.setUserRoles()andmapsindoors.MapsIndoors.getUserRoles().Added start_context and end_context properties to MapsIndoors directions steps. The properties contain references to the venue, building, and floor for a given start or end location for a given step.
Changed
The MapsIndoors Directions Provider now uses the globaly set userRoles. The userRoles parameter on the Directions service if set will override this.
MICommon have been updated to the latest version.
Fixed
The Google Map is now properly shown even though map center is not set.
An issue when the user clicked a room on a Google Map the click event would return
nullas the location property.An issue where settting floor early would cause wrong map tiles to be shown.
[4.0.0] - 2020-10-29
The MapsIndoors JavaScript SDK V4 can now be used with Google Maps and Mapbox GL JS. It introduces several breaking changes, so read this carefully.
Added
Classes
mapView classes that acts as map library adapters (map creation and common interface) to MapsIndoors:
mapsindoors.mapView.GoogleMapsView: mapView for Google Maps.mapsindoors.mapView.MapboxView: mapView for Mapbox GL JS.
Methods
mapsIndoors.getFilter()returns the array of locations ids that the locations on the map are currently filtered by.
Events
venue_changedevent on MapsIndoors that fires if the venue changes after callingmapsIndoors.setVenue().
Changed
MapsIndoors class
Instantiation:
Create an instance of a mapView, either
mapsindoors.mapView.GoogleMapsViewormapsindoors.mapView.MapboxView.Then create an instance of MapsIndoors like this:
const mapsIndoors = new mapsindoors.MapsIndoors({mapView: mapViewInstance});.
Methods:
setApiKey()is renamed tosetMapsIndoorsApiKey().getMapStyle()is renamed togetMapIndoorsStyle().getMapStyles()is renamed togetMapIndoorsStyles().
Services
All services (DistanceMatrixService, GeoCodeService, LocationsService, AppConfigService, DirectionsService, ShareService, SolutionsService, VenuesService) must now be accessed by the
mapsindoors.servicesnamespace, eg.mapsindoors.services.AppConfigService.
DirectionsService
The class must now be instantiated and given an instance of en external directions provider, either
mapsindoors.directions.GoogleMapsProviderormapsindoors.directions.MapboxProvider.A route
Legnow encompasses a part of a route until a change in floor level, no matter the travel mode.Step.abuttersis changed toStep.route_context, and the valueOutsideOnVenueis now alwaysOutside.All steps from an external directions provider will have
routeContextset toOutside.The route results (and the legs) now includes a
geometryobject that contains a GeoJSON LineString for the route or leg.
Directions renderer
DirectionsRenderer class must now be accessed under the directions namespace, i.e.
mapsindoors.directions.DirectionsRenderer.DirectionsRenderer no longer requires the map as a constructor parameter.
Removed
MapsIndoors.setMap()is removed.DirectionsRenderer.getMap()is removed.\
Last updated
Was this helpful?