Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

steerpath-smart-sdk

Package Overview
Dependencies
Maintainers
1
Versions
86
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

steerpath-smart-sdk

Welcome to Steerpath Smart SDK documentation. Here you can find how to make best use of our Smart SDK for your web application. Steerpath Smart SDK contains ready-made features and solutions such as search, selection and navigation. The API has been desgi

  • 1.5.10
  • npm
  • Socket score

Version published
Weekly downloads
85
decreased by-22.02%
Maintainers
1
Weekly downloads
 
Created
Source

Steerpath Smart SDK for Web

Welcome to Steerpath Smart SDK documentation. Here you can find how to make best use of our Smart SDK for your web application. Steerpath Smart SDK contains ready-made features and solutions such as search, selection and navigation. The API has been desgined to be same in all three platforms iOS, Android and Web.

Smart SDK uses a configuration object to set the map view properties, search suggestions and other services. To see an example of Smart SDK configuration object see the default config in:

window.steerpath.defaultConfig

If you need further customisation to your configuration contact our support team.

To start building your own web applications and websites showcasing your venue maps please contact us at http://www.steerpath.com/

Quickstart

To get started with Steerpath maps in your web application or website check out this example map of our office.

You can also download the Smart SDK as npm package. https://www.npmjs.com/package/steerpath-smart-sdk

<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <title>
        Steerpath Maps
    </title>

    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <script src="https://s3-eu-west-1.amazonaws.com/steerpath-web-sdk/releases/smart/1.5.10/steerpath-smart.min.js"></script>
    <link href="https://steerpath-web-sdk.s3-eu-west-1.amazonaws.com/releases/smart/1.5.10/steerpath-smart.css" rel="stylesheet">

    <style>
        #map_container_id {
            position:absolute; width:100%; height: 100%
        }
        
        body {
            margin: 0;
            padding: 0;
            font-family: Arial, Helvetica, sans-serif;
        }
    
    </style>

</head>

<body>

    <div id="map_container_id"></div>

    <script>
        var containerId = "map_container_id"

        var apiKey = 
        "eyJhbGciOiJSUzI1NiJ9.eyJpYXQ6IjoxNTY4MDI5MTc0LCJqdGkiOiJiYTlhYjA1NC1hODNjLTQwNWYtYmI0Mi0wZDE4MmMwYzAwYWEiLCJzY29wZXMiOiJ2Mi0zYWU0MTdiYS0wMzg3LTRlNzktYTUxOS03ZWU5MjE3NmRjNjgtcHVibGlzaGVkOnIiLCJzdWIiOiJ2Mi0zYWU0MTdiYS0wMzg3LTRlNzktYTUxOS03ZWU5MjE3NmRjNjgifQ.PpVIhgyZvSU00uz0IG42ii59_FNIZkkPDfCdHNbPUDFcSEvU9wRh0UPIax-fzMuoG7rYmJ4rMBn7v2TN3-dvb25lmfaUkQ53cWU_Fir8w1ljEL_1PnmtgtqDOO9KTWKXB4dwZjdUtMG8sJBD3WLanJJ94cS2Uk2J3_7fSgSr2gZU3JRBvrZVtWnriOItgM0sX08wJEN92iWNvpEQLDDTC32SEIt2GHQvBEuPex6QmUux3FALdN_NL73XTDsBqE11ZGFc2Cj6MVI70BX8peHeeT-0hPHg_02JrHOW4y7SXvX6buqzmyT8Kk1ikol7bWgewKIc5ZlOD1CNOqb77Da5qQ"

        var smartSDK = new steerpath.SmartSDK()
        smartSDK.start(apiKey)
        var smartMapView = new steerpath.SmartMapView(containerId, smartSDK)

    </script>

</body>

</html>

Change Log

Version number (1.5.10)

  • Move settings-button on top of the bottom sheet if screen size becomes too small

Version number (1.5.9)

  • Only if Choose Location view is visible use the GPS location for routing
  • ChooseLocationView get the chooseLocationModes from the config.
"chooseLocationModes": {
    "search": true,
    "click": false,
    "chooseLocationOnMap": true,
    "useGPSLocation": false
} 
  • Slow down the bluedot movement in routing
  • In smaller screens hide "more"-text button if there’s only 4 search categories
  • Draw settings button on-top-of the Bbottom sheet
  • Make floor switcher smaller

Version number (1.5.8)

  • In the onSearchCategorySelected-event return the searchResults as SmartMapObject

Version number (1.5.7)

  • Update the event payload of steerpathLayerIndexChanged

Version number (1.5.6)

  • Check if smart map object is empty or not before drawing detail card

Version number (1.5.3)

  • Fix a bug when showing card details

Version number (1.5.2)

  • When setting map mode either mapOnly or static reset search view status

Version number (1.5.1)

  • Better error handling when route data couldnt be loaded

Version number (1.5.0)

  • Sync translations from steerpath-common-resources
  • ChooseLocationUserTask which allows setting location from search, map click, dragging or panning map or using gps. The location will be used in routing
  • Open the ChooseLocationUserTask when trying to route to destination and there's no origin set
  • Start routing automatically after the origin is being set
  • Use the marker style found in the default style
  • Fix a bug where the map style wasn't initialised correctly if the the default language and theme were set in the config
  • Allow selecting live users from search
  • Update css of Smart SDK
  • When the static location is set allow that to be used in routing

Version number (1.4.3)

  • When flying to building search result use the default layer index.

Version number (1.4.2)

  • Make sure tile url exist before replacing it in floor switching

Version number (1.4.1)

  • In floor switching only if new source tile url is different from the current url do the map source change. This is to avoid map blinking.
  • Switch from rem to em in font sizes. This allows you to set the "font-size" style to steerpath map container and the elements inside the container will be set according to it.

Version number (1.4.0)

  • Added support for new Smart SDK API setGeoJson(sourceId, geoJson, callback). See function documentation for more details.
  • Clean css of the smart sdk

Version number (1.3.2)

  • Use https://static.steerpath.net instead of .com when downloading rtl-text plugin
  • improve the logic how floor switching is triggered and latest active building is tracked

Version number (1.3.1)

Bug fixes
  • Translated tags should be used as a fallback if a POI doesn't have keyword data
  • Make the setWidgetPadding() to set padding around components inside map view instead of setting padding to camera methods

Version number (1.3.0)

New Features
  • added support for keyword search and trasnlated tag search
  • added support for disabling positioing in the config

Version number (1.2.5)

New Features
  • Skip actual style filtering in changeLayerIndex() if it's called with the same parameters as the current map view has. (same building and same floor)
Bug fixes
  • Fix incosistent camera behaviour when setting camera based on search results and when floor should be switched

Version number (1.2.4)

Bug fixes
  • In onSearchResultSelected event wrap the mapObject into the payload object to make the API similar to native platform

Version number (1.2.3)

Bug fixes
  • Fix a bug in collapsed state of search bottom sheet

Version number (1.2.2)

New Features
  • Set the map widget padding with smartMapView.setWidgetPadding(left, top, right, bottom) method. This will add padding to camera methods. Do note that when showing search results on the map SmartMapView automatically calculates the bottom padding based on the bottom sheet height. If a new widgetPadding is set it will be added to the automatic bottom padding when showing search results. Use the getWidgetPadding() to get the current widget padding.

Version number (1.2.1)

Bug fixes
  • When the "initialSearchBottomSheetState" is collapsed make the search suggestion row appear when input bar gets focus.

Version number (1.2.0)

New Features
  • Added an option "initialSearchBottomSheetState" ("halfExpanded") to the default config. Having it "collapsed" in the config file hides the search suggestion row.
Bug Fixes
  • When showing beacon health time stamp use toLocaleString()* Snimate live asset devices also in Steerpath Live
  • Added max line number to Card View where too long decriptions caused card height to expand
  • Minor css fixes
  • Animate live asset devices also in steerpath live

Version number (1.1.13)

Bug Fixes
  • Updated default config
  • When selecting a search result set the zoom levels based on the type of the result.
let zoom = 19;
if (feature.properties.subType === "building") {
    zoom = 16
} else if (
    feature.properties.css_class === "wing" ||
    feature.properties.css_class === "infrastructure_wing") {
    zoom = 17
} else if (
    feature.properties.css_class === "department" ||
    feature.properties.css_class === "infrastructure_department" ||
    feature.properties.css_class === "infrastructure_department_sticky" ||
    feature.properties.css_class === "department_sticky") {
    zoom = 18
}

Version number (1.1.12)

Bug Fixes
  • Use the POI data found from the URL service request instead of making internal queries based on the localRef

Version number (1.1.11)

Bug Fixes
  • Support for configs where theme and language is not set
  • Make floor switcher stretch based on screen size
  • Fine tune zoom level when selecting search result
New Features
  • Migrated steerpath.com to steerpath.net in default config
  • When setting your location render the marker on map move instead of move end

Version number (1.1.10)

New feature
  • Automatically enable 3D antialiasing on low DPI screens (<= 72)
  • Option to override 3D elements on the map in the config with "enableExtrusion" and "enableExtrusionAntialiasing"
  • Settings can now have options to toggle 3D layers.
  • Option to override routeDataPath in the config
  • Updated Mapbox Gl Js version from 1.6.1 to 1.10.0

Version number (1.1.9)

Bug Fixes
  • Line breaks in swedish translations

Version number (1.1.8)

New features
  • Support for role-based maps and map data (i.e "visitor" and "staff")
  • Support for nonSelectableTags on map click events
  • Support for whiteListedTags which are used when there's a tag hidden in search result
  • Route costs from config

Version number (1.1.7)

Bug Fixes
  • Link copying support for mobile

Version number (1.1.6)

New feature
  • Support searching geofences ("show_geofences_with_tags")
  • Swedish language support (sv-SE)
Bug Fixes
  • Link copying

Version number (1.1.5)

New features
  • Include the original click event in the "onMapClick" event
  • Fixed a bug when map was removed.
  • Switched URL for rtl-text-plugin
  • Improve UI of QR code sharing

Version number (1.1.4)

New features
  • On the CameraManager check the floor switching and optimise it so that it is not called unless necessary
  • Added events to setTheme and setLanguage. More documentation on the events in the MapEventListener
Bug Fixes
  • Decrease padding in CardView

Version number (1.1.3)

New Features
  • SmartSDK now has setTheme() API which will switch map's and bottomsheets theme. Supported themes at the moment are "default" and "dark" See the documentation of SmartSDK for more details. Selected theme and language can be checked from the window.steerpath.selectedLanguage and window.steerpath.selectedTheme
Bug Fixes
  • In SmartMapMarker check if there's selected language before modifying the tex-field rule.
  • Remove reset-css from SmartMap style
  • POISelectionUserTask events were not handled correctly

Version number (1.1.2)

New Features
  • Include "geofencing" in the default config
  • Bug fixes regarding language switching

Version number (1.1.1)

New Features
  • Smart SDK generates a language switcher if there's supportedLanguages

Version number (1.1.0)

Bug Fixes
  • Fixed a bug where scrollbar was visible on floor switcher on Edge browser
  • Better default configs for "nonSearchableCssClasses" and "nonSelectableCssClasses"
New Features
  • Smart SDK support config to be either JSON object or stringified JSON object
  • Hide scroll bar on floor switcher on different browsers
  • Better layerIndex selection when search results are from different floors
  • Support for mapbox-gl-rtl-text plugin. Init the plugin by calling window.steerpath.loadRTLTextPlugin() before creating the map
  • Small bounding box around click / touch location. Will make it easier to click POIs
  • Init mapbox-gl-rtl-text plugin automatically
  • Configuration file now takes "supportedLanguages" and "defaultLanguage" values. setLanguage() sets the style as well if there exists a style with selected language.
  • Smart SDK prefers to use floor based style default_v2.json
"defaultLanguage": "en-GB",
"supportedLanguages": [
    "fi-FI",
    "ar-SA",
    "en-GB"
],
"useFloorBasedStyle": true,
  • On bottom sheet show localised title and/or descriotion based on the selected language

Version number (1.0.38)

Breaking Changes
  • onMapCLick-event now returns clicked live objects instead of their POI counter parts
Bug Fixes
  • When UserLocation is set on the 0 floor include it's toggle when floor is switched
  • Fixed a bug in search suggestion click
  • In search improve logic how nonSearchableCssClasses are handled
  • Fixed a bug how umlauts are handled in free type search
New Features
  • New version of Mapbox GL Js
  • Updated Default Config

Version number (1.0.37)

Bug Fixes
  • Fixed a bug in set User location selection where map API key was not handled correctly

Version number (1.0.36)

Breaking Changes
  • SmartMapObject now stores the GPS coordinates in the "latitude" and "longitude" properties instead of "lat" and "lon".
New Features
  • Updated default config.
  • Removed links from Smart SDK Attribution
  • Removed pitch neutralisation
  • Custom header in meta requests when using protected APIkey
  • Include live objects into map click features. SDK will return the representing POI of the clicked live object.
  • Added User location selection button to settings view and enable it by default.

Version number (1.0.35)

Bug Fixes
  • When creating a search view and determing if wide screen or not see if container element exists

Version number (1.0.34)

New features
  • Use map's own default marker as fallback in UI icons. (category_marker.svg)
  • Ignore if API Key has "cfg" property and don't try to fetch it from server

Version number (1.0.33)

New features
  • ShareManager now support multiple search query parameters in the url which is shared either with QR-code or link.
  • Convert umlauts (ä and ö) in free type search.
  • More translations to search suggestions
  • In "onSearchResultSelected"-event remove the wrapping of the returned "mapObject".

Version number (1.0.32)

New features
  • In "onSearchResultSelected" event selected search result is now returned as SmartMapObject.

Version number (1.0.31)

New features
  • Added "onSearchResultSelected" event to MapEventListener.
  • Min value for zoom level based on search results is now 17.

Version number (1.0.30)

Bug fixes
  • Remove MapEventListeners on removeMap().

Version number (1.0.29)

Bug fixes
  • See if mapboxMap exists before removing it in removeMap() API
  • getMapObject() "source" argument will determine whether to return SmartMapObject from MARKER source or STTAIC meta data.
  • In initialisation get style first and then other pois and buildings meta data. Will improve the time map becomes visible
  • Fixed a bug when close button was clicked on route preview and scroll zoom got broken.

Version number (1.0.28)

Breaking changes
  • onMapClick event changed the mapObjectsArray to mapObjects
  • In getMapObjectByProperties() and getMapObject() add properties of the result to SmartMapObject
  • "source" argument no longer needed in getMapObjectByProperties()
  • Removed setTitle() API from SmartMapObject

Version number (1.0.27)

New Features
  • Updated documentation

Version number (1.0.26)

New Features
  • SmartMapView components that add source and layer to mapbox map are added before mapboxMap loads but they initialise theirselves when mapboxMap load event
  • Better handling of floor swticher in camera methods
  • setUserLocation() to update bluedot location on the map. Updating routing origin location now updates the config so that "Show Route" is visible oin details card view
Breaking changes
  • onMapCLick event closer to native platforms. Event "steerpathPoiClick" is now "onMapClick". See the documentation of MapEventListener

Version number (1.0.25)

New Features
  • getMapObjectByProperties()
  • allow client side to prevent steerpath poi click event default behaviour
window.steerpath.MapEventListener.on("steerpathPoiClick", function (e) {
    //prevent SDK's default behaviour when clicking Kitchen POI 
    if (e.clickedPOI.properties.title === "Kitchen") {
         e._preventDefault()
    }
});
Bug Fixes
  • removed minZoom style layer property from user location selection style
  • increase size of floor switcher
  • SmartMapView now stop SteerpathLive monitoring on removeMap() API

Version number (1.0.24)

Bug Fixes
  • Hide scroll bar of floor switcher

Version number (1.0.23)

New Features
  • Added interval option to live configurations By default SDK will poll live server every 4 seconds (4000ms) but it can now be configured from the config.services.live.web.interval

  • New user task "UserLocationSelectionTask" which allows user to set their location on the map. After user location is set the position will appear as bluedot on the map.

let actionButtonText = "Set Location"
let actionTitle = "Set your location"
let actionDescription = "Move map to set your location"
let actionButtonIcon = ""        
let userLocationSelectionTask = new window.steerpath.UserLocationSelectionTask(clientMapApiKey, actionButtonText, actionButtonIcon, actionTitle, actionDescription)
smartMapView.startUserTask(userLocationSelectionTask)

Version number (1.0.22)

New Features
  • Scroll view to floor switcher

Version number (1.0.21)

Bug Fixes
  • Fixed a bug how Smart SDK handles removing internal markers on search results and user tasks.

Version number (1.0.20)

New Features
  • showFloorsWithSameIndex support in the configuration file. services.kiosk.showFloorsWithSameIndex: true/false. By default it is true
  • SmartMapView can now be initialised with either reference to the HTML element or with the HTML element id.
  • SmartMapView startUserTask() which supports POISelectionUserTask at the moment. see the documentation of SmartMapView for more details
Breaking changes
  • SmartSDK has a start() methods that needs to be called after a new instance of the SmartSDK has been created. start() method downloads resource
  • css file no longer contains version number.
Bug Fixes
  • When first downaloading POIs don't sort them as the mapbox API may not be available then
  • In mapOnly mode clicking anywhere on the map will make the internal marker disappear
  • SmartMapObject now has the geometry point in the properties
  • Only clicking X from the bottom sheet will trigger fly animation to the stargin coordinate.

Version number (1.0.16)

New Features
  • Improved documentation.

Version number (1.0.15)

Breaking changes
  • In SmartMapView cameraToDefault() is now called setCameraToDefault()
Bug Fixes
  • when setting camera for search results see if there are search results in current building and focus camera based on their bounds. In search result sorting sort pois inside and outside building
  • in POI click event get the POI data from meta service. This will fix the problem when polygon feature was passed on to the click event and wrong geometry type caused problems in navigation and sharing
  • Fix a bug when showing number of search results in floor switcher
  • In search result and card view show detail chips
  • Remove route details when route view changes
  • added steerpathRouteAnimationPreviewStopped to MapEventListener
New Features
  • bind core SDK events to MapEventListener (SmartMap). You can now listen to the events of the Steerpath Core SDK such as "steerpathRouteAdded" from the MapEventListener
  • improved documentation
  • In default config removed search for category_fun quick search
  • Increased expiry time of shareable links to one year

Version number (1.0.14)

Bug Fixes
  • fix a typo in removeMap() which caused map to to crash

Version number (1.0.13)

New Features
  • Added removeMap() API to SmartMapView to handle map removals. This is useful in React apps when components will unmount you can call smartMapView.removeMap() to get rid off html elements created by the SDK
Bug Fixes
  • Check that BottomSheet buttons exist before adding event listeners to them to avoid crashing
  • Increse size bottom sheet min width
  • In camera methods call setZoom() before calling setCenter() to avoid weird Mapbox bug (https://github.com/mapbox/mapbox-gl-js/issues/5345)

Version number (1.0.12)

Breaking Changes
  • Renamed SmartNavigationView to SmartMapView, EventListener to MapEventListener
New Features
  • Added settings button which opens settings view in the bottomsheet. Settings view has links based on the configuration
  • Update default config to include settings service. added translations to settings view in resources
  • Added selectMapObject()-method. Animates map to the selected object, adds marker, opens BottomSheet with object information.
  • setMapMode() API to SmartMapView. MapMode can search, mapOnly or static.
  • Minor css fixes
  • Updated Mapbox GL Js to version 1.2.0
Bug Fixes
  • Support for wrapped apikeys in smart sdk
  • Fix Bottom Sheet css bug where position was not aligned correctly
  • In long touch event check for touch device to avoid error messages
  • Increase size of ui icons related to map size instead of window size.
  • When setting camera for search result optimise the zoom level based on results and bounds
  • in camera methods fix a bug where arguments were not checked correctly

Version number (1.0.11)

Breaking Changes
  • Reverted back to using internal marker style for the search result marker. You can ignore the Breaking Change in version 1.0.10
Bug Fixes
  • new translations for search categories

Version number (1.0.10)

Breaking Changes
  • this version of SDK requires updated default style which has the marker style fixed
Bug Fixes
  • new translations for search categories
  • set the title of top of search result marker and use one found in the default style
  • minor css fixes

Version number (1.0.9)

  • Steerpath Telemetry to cluster different beacon statuses separately
  • Show distance and time estimate on route view

Version number (1.0.8)

  • Enclose prevent zoom in try catch
  • updated default config to include more non selectable classes

Version number (1.0.7)

  • Set the qrCodeShare if enabled is set to true. Added support for QrCode link configuration
  • more translations to search configurations

Version number (1.0.6)

Bug fixes
  • Make search use its own marker collection internally, as current usage of marker API will screw up customer’s/developers own markers.
  • More translations i.e Accessible Toilets, Stands and Stages
  • Fixed a bug where camera will be set based on search results
  • before flying to search result bounds check if there are buildings in the search results since those will cause weird locations -> prevent flying
  • Fixed typos in configs
  • in free room search allow search to be targeted to specific tags in addition to the occupancy status. First get the 'free' live rooms from the collection then get the matching POI based on parentRef property and then see if allTags or anyTags match to the search configs demands
  • Fixed urls in default confifuration
  • if no url hash parameters or default camera location is found get the default building layerindex from the viewproperties configuration
  • encode url when storing hash values
  • render details view based on kiosk and share configurations
  • updated default config and added more share configs for kiosk configuration: hash, qrCodeShare and copyLinkToClipboard. Each set the behaviour of the url and details view

Version number (1.0.5)

Bug Fixes
  • Free live room search now uses only parentRef property to map the POI search results instead of localRef

Version number (1.0.5)

Bug Fixes
  • Removing route also removes animation and not reset it
  • Fixed a bug where bluedot animation was cancelled if some other animation caused moveend event to happen
  • Added prevent zoom method for the SDK UI elements. pich gestures no longer zoom to the HTML elements
  • Fixed default marker and UI icon behaviour
Breaking Changes
  • SmartSDK is now a mandatory paramater for SmartNavigation view
  • Updated Smart SDK to support new format of search configuration. This also allows SDK to support localisation of the UI strings. Example of new search configuration
{
    "title": "sp_category_room_title",
    "shortTitle": "sp_category_room_title_short",
    "description": "sp_category_room_description",
    "iconName": "category_room",
    "action": {
        "type": "show_pois_with_tags",
        "allTags": [
            "category_room",
            "room"
        ]
    }
},
New Features
  • More responsive UI elements.
  • Calculate padding based on bottom sheet and use it when setting camera for search results
  • Animate location changes on SteerpathLive updates
  • ShareManager which writes latest location parameters to the url hash and possible card view if there was one.
  • Minor css fixes
  • Include Live rooms as assets in the Steerpath Live and allow them to be searched
  • More Events in the event-listener
  • Support for bounds in default camera location in camera manager
  • "Show more" button depending on the screen size. on smaller screens it is like in mobile as a swipe up button on top of bottom sheet
  • Handle resizing of the bottom sheet when screen size changes
  • steerpath.strings to include localisation support and setLanguage() API for SmartSDK
  • in live added a function to see if live server response has movable objects to determine if they should be animated

Version number (1.0.2)

New Features
  • SmartSDK: Starting point of the Steerpath Smart SDK. Downloads all the map resources.
  • SmartNavigationView
  • SmartNavigationView: Navigate to coordinates and map objects
  • SmartNavigationView: Search map data
  • SmartNavigationView: Steerpath Live monitoring
  • SmartMapObject: Data transfer object which creates GeoJSON features based on the given properties.

FAQs

Package last updated on 03 Feb 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc