CoverageMap
Panoramax.components.core.CoverageMap ⇐ Basic
Kind: static class of Panoramax.components.core
Extends: Basic
Emits: select, ready, broken
Element: pnx-coverage-map
Properties
| Name | Type | Description |
|---|---|---|
| loader | Loader |
The loader screen |
| api | API |
The API manager |
| map | Map |
The MapLibre GL map itself |
- .CoverageMap ⇐
Basic- new CoverageMap()
- .properties :
Object - .onceReady() ⇒
Promise - .onceAPIReady() ⇒
Promise - .getClassName() ⇒
string - .select([seqId], [picId], [force])
- .isWidthSmall() ⇒
boolean - .isHeightSmall() ⇒
boolean - .getSubComponentsNames() ⇒
Array.<string> - .addEventListener(type, listener, [options])
- "menu-opened"
- "select"
- "ready"
- "broken"
new CoverageMap()
Coverage Map is a basic map showing Panoramax coverage.
Make sure to set width/height through CSS for proper display.
Example
<pnx-coverage-map
endpoint="https://panoramax.openstreetmap.fr/"
map-options='{"bounds": [[-73.9876, 40.7661], [-73.9397, 40.8002]]}'
style="width: 300px; height: 250px"
/>
coverageMap.properties : Object
Component properties.
Kind: instance property of CoverageMap
Mixes: properties
Overrides: properties
Properties
| Name | Type | Default | Description |
|---|---|---|---|
| endpoint | string |
URL to API to use (must be a STAC API) | |
| [picture] | string |
The picture ID to display | |
| [sequence] | string |
The sequence ID of the picture displayed | |
| [fetch-options] | object |
Set custom options for fetch calls made against API (same syntax as fetch options parameter) | |
| [users] | Array.<string> |
[geovisio] |
List of users IDs to use for map display (defaults to general map, identified as "geovisio") |
| [map-style] | string | object |
The map's MapLibre style. This can be an a JSON object conforming to the schema described in the MapLibre Style Specification, or a URL string pointing to one. Defaults to OSM vector tiles. | |
| [lang] | string |
To override language used for labels. Defaults to using user's preferred languages. | |
| [map-options] | object |
Any map option available in Map class. Example: map-options='{"bounds": [[-73.9876, 40.7661], [-73.9397, 40.8002]]}' |
coverageMap.onceReady() ⇒ Promise
Waits for component to have its first loading done.
Each inheriting class must override this method.
Kind: instance method of CoverageMap
Fulfil: null When initialization is complete.
Reject: string Error message
coverageMap.onceAPIReady() ⇒ Promise
Waits for initial API setup.
Kind: instance method of CoverageMap
Fulfil: null When API is ready.
Reject: string Error message
coverageMap.getClassName() ⇒ string
This allows to retrieve an always correct class name. This is crap, but avoids issues with Webpack & so on.
Each inheriting class must override this method.
Kind: instance method of CoverageMap
Returns: string - The class name (for example "Basic")
coverageMap.select([seqId], [picId], [force])
Change the currently picture and/or sequence. Calling the method without parameters unselects.
Kind: instance method of CoverageMap
| Param | Type | Default | Description |
|---|---|---|---|
| [seqId] | string |
null |
The sequence UUID |
| [picId] | string |
null |
The picture UUID |
| [force] | boolean |
false |
Force select even if already selected |
coverageMap.isWidthSmall() ⇒ boolean
Is the view running in a small container (small embed or smartphone)
Kind: instance method of CoverageMap
Returns: boolean - True if container is small
coverageMap.isHeightSmall() ⇒ boolean
Is the view running in a small-height container (small embed or smartphone)
Kind: instance method of CoverageMap
Returns: boolean - True if container height is small
coverageMap.getSubComponentsNames() ⇒ Array.<string>
List names of sub-components (like loader, api, map, psv) available in this component.
Kind: instance method of CoverageMap
Returns: Array.<string> - Sub-components names.
coverageMap.addEventListener(type, listener, [options])
Listen to events from this components or one of its sub-components.
For example, you can listen to map events using prefix map:.
Kind: instance method of CoverageMap
| Param | Type | Description |
|---|---|---|
| type | string |
The event type to listen for |
| listener | function |
The event handler |
| [options] | object |
Any original addEventListener available options |
"menu-opened"
Event for overlaying menu opening
Kind: event emitted by CoverageMap
Properties
| Name | Type | Description |
|---|---|---|
| detail.menu | Element |
The opened menu |
"select"
Event for sequence/picture selection
Kind: event emitted by CoverageMap
Properties
| Name | Type | Description |
|---|---|---|
| detail.seqId | string |
The selected sequence ID |
| detail.picId | string |
The selected picture ID (or null if not a precise picture clicked) |
| [detail.prevSeqId] | string |
The previously selected sequence ID (or null if none) |
| [detail.prevPicId] | string |
The previously selected picture ID (or null if none) |
"ready"
Event when component is ready to use. This happens when loader screen disappear, with picture and map loaded.
To follow more precisely loading steps, you can also watch for sub-components ready events.
// Watch API-readiness
viewer.addEventListener("api:ready", ...); // From parent
viewer.api.addEventListener("ready", ...); // Or on sub-component
Kind: event emitted by CoverageMap
"broken"
Event for viewer failing to initially load.
To follow more precisely loading failures, you can also watch for sub-components broken events.
// Watch API breaks
viewer.addEventListener("api:broken", ...); // From parent
viewer.api.addEventListener("broken", ...); // Or on sub-component
Kind: event emitted by CoverageMap
Properties
| Name | Type | Description |
|---|---|---|
| detail.error | string |
The user-friendly error message to display |