Configuration Fields

Field Type Default Description
version string Required MUST be '1.3.x' where x can be any positive integer.
Services
servers Server[] Required* A list of servers to be used to find and load the datasets.
* This can be omitted when using the deprecated serviceHost and dataServers fields.
shortenerForURL URLShortenerCreator Optional If provided, will be called to know how to shorten a given URL. Used, for example, when user clicks on the "Share" button. For more info see URL Shortener.
Map
projection string Required A string identifying the Well Known Identifier for the projection. Specifies the projection of the map.
maxExtent number[4] Required The maximum extent of the map defined as [left, bottom, right, top] all in the projection projection.
restrictedExtent number[4] maxExtent The maximum navigable extent of the map defined as [left, bottom, right, top] all in the projection projection. If set to null, map navigation will be unrestricted.
zoomOffset integer >= 0 0 Some map providers (e.g. Bing maps) skip some zoom levels (i.e. Bing maps considers the zoom level 0 as level 1), if it's the case you can use this field to set the offset (i.e. set it to 1).
defaultZoom integer >= 0 Optional If provided, will be used to set the zoom level of the map by default (if the extent or zoom are not set in the URL of the page).
baseLayers Layer[] Required A list of layers. It MUST contain at least one layer. One of these layers (by default the first one) will be used as the background layer of the map. These layers will be displayed in a list which can be toggled using the globe button in the top bar of Syntool allowing the user to switch between them.
additionalLayers Layer[] [] A list of layers that are always visible and placed above or below all products. For more info see Additional Layers.
Timeline
colocActive boolean true The default state of the coloc active toggle.
currentDate Date Optional The default current datetime of the portal. If not given it will be set to the client's local date and time and then a find nearest will be executed. E.g. for 01/06/2006 12:00 use new Date(Date.UTC(2006, 5, 1, 12)), for more info see MDN's Date.UTC.
animationSpeed number > 0 2.5 hours / s The base speed of the animations in milliseconds of virtual time per second of real time.
timeRanges TimeRange[] see below1 A list of predefined timespans that the users can select.
yearsRange integer[2] > 1969 see below2 Timeline years range from January 1st to January 1st (which means the upper bound will not appear in the timeline)
Misc
storageId string Required Portals that have the same storageId and the same domain will share the same local storage (local hotspots and user shapes).
changelogURL URL Optional The URL of a GitHub Flavored Markdown file containing the change log.
importPolicyForURL ImportPolicyFn Optional The function that will be called for each URL that needs to be imported automatically to determine if that operation should be allowed, denied, or otherwise the user should be asked with a prompt (the default).
maxDatasetsWeight number >= 0 100 The maximum cumulated weight of datasets rendered at the same time. For more info see Pagination.
markerSymbols MarkerSymbols {} A hash map of polygons to be referenced in the graphicName of a PolygonMarkerStyle.
groupProductsBy false or string false If set to a string, will be used to choose the tags to group the products by. Otherwise the products will not be grouped.
defaultGroupLabel string Optional If provided, will be used as label to the default group.
collapsibleGroups boolean false If set to true, clicking on a group label will show/hide its contents in the products panel. Only applicable when grouping products. (See showGroups and groupProductsBy)
sortGroups SortGroupsFn Optional If provided, gets called before displaying the groups in the products list in order to sort them.
Predefined Data
messages Message[] [] A list of predefined ordered messages.
hotspots Hotspot[] [] A list of predefined ordered hotspots.
drawableShapes DrawableShape[] [] A list of predefined drawable shapes that the users can use to draw user shapes. (Some shapes are defined in Syntool and can't be removed like: polygon, polyline, and point).
products Product[] [] An ordered list of available products.

Notes

Deprecated fields
Field Type Description
serviceHost URL Deprecated: Use servers instead.
The URL to the server running a Syntool services server (or a compatible one).
dataServers URL[] Deprecated: Use servers instead.
A list of URLs to use for requesting data (tiles, GeoJSON, ...). All URLs MUST be equivalent, a list is given in order to circumvent the browser's limitation on the number of simultaneous requests to one domain.
showGroups boolean Deprecated: Use groupProductsBy instead.
If set to true, the products will be grouped in the products panel, if possible.
groups Group[] Deprecated: Use product's tags and groupProductsBy instead.
An ordered list of groups.

Note: If groups are defined, All products MUST be in at least one group.

Additional Layers

Additional layers are Layers with an optional additional custom option syntoolIsOverlay. syntoolIsOverlay defaults to false and when set to true the layer is displayed above all products. Otherwise it's displayed under all products.

The order of the layer specifies the order in which they get rendered:

  1. timeRanges default value

    [
      ['6-Hour', '6h'],
      ['Daily', '1d', true],
      ['3-Day', '3d'],
      ['Weekly', '1w'],
      ['Bi-weekly', '2w'],
    ]
  2. yearsRange default value

    The default value for the yearsRange property is dynamically generated so that the timeline displays the last 15 years and the current year (16 years in total).