@disy/cadenza.js 10.2.14 → 10.2.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/apidoc/classes/AbortError.html +3 -3
  3. package/apidoc/classes/CadenzaClient.html +27 -23
  4. package/apidoc/classes/CadenzaError.html +5 -5
  5. package/apidoc/functions/cadenza.html +4 -4
  6. package/apidoc/index.html +192 -165
  7. package/apidoc/interfaces/CadenzaClientOptions.html +5 -5
  8. package/apidoc/interfaces/CadenzaEvent.html +4 -4
  9. package/apidoc/interfaces/Distance.html +2 -2
  10. package/apidoc/interfaces/ExternalLinkKey.html +4 -4
  11. package/apidoc/interfaces/Feature.html +9 -9
  12. package/apidoc/interfaces/FeatureCollection.html +4 -4
  13. package/apidoc/interfaces/Geometry.html +4 -4
  14. package/apidoc/interfaces/GeometryExtentStrategy.html +4 -4
  15. package/apidoc/interfaces/LayerDataExtentStrategy.html +4 -4
  16. package/apidoc/interfaces/LayerDefinition.html +4 -4
  17. package/apidoc/interfaces/LocationFinderExtentStrategy.html +4 -4
  18. package/apidoc/interfaces/PageSource.html +3 -3
  19. package/apidoc/interfaces/SnappingOptions.html +3 -3
  20. package/apidoc/interfaces/StaticExtentStrategy.html +4 -4
  21. package/apidoc/modules.html +1 -1
  22. package/apidoc/types/CadenzaActionEvent.html +2 -2
  23. package/apidoc/types/CadenzaChangeSelectionEvent.html +2 -2
  24. package/apidoc/types/CadenzaDrillThroughEvent.html +2 -2
  25. package/apidoc/types/CadenzaEditGeometryCancelEvent.html +2 -2
  26. package/apidoc/types/CadenzaEditGeometryOkEvent.html +2 -2
  27. package/apidoc/types/CadenzaEditGeometryUpdateEvent.html +2 -2
  28. package/apidoc/types/CadenzaErrorEvent.html +2 -2
  29. package/apidoc/types/CadenzaEventByType.html +1 -1
  30. package/apidoc/types/CadenzaEventType.html +2 -2
  31. package/apidoc/types/CadenzaObjectInfoEvent.html +2 -2
  32. package/apidoc/types/CadenzaReloadEvent.html +2 -2
  33. package/apidoc/types/CadenzaSelectObjectsCancelEvent.html +2 -2
  34. package/apidoc/types/CadenzaSelectObjectsOkEvent.html +2 -2
  35. package/apidoc/types/Coordinate.html +2 -2
  36. package/apidoc/types/CustomValidityType.html +2 -2
  37. package/apidoc/types/DataType.html +2 -2
  38. package/apidoc/types/EmbeddingTargetId.html +2 -2
  39. package/apidoc/types/Extent.html +2 -2
  40. package/apidoc/types/ExtentStrategy.html +2 -2
  41. package/apidoc/types/FilterVariables.html +2 -2
  42. package/apidoc/types/GeometryType.html +2 -2
  43. package/apidoc/types/GlobalId.html +2 -2
  44. package/apidoc/types/Layout.html +2 -2
  45. package/apidoc/types/LengthUnit.html +1 -1
  46. package/apidoc/types/OpaqueString.html +2 -2
  47. package/apidoc/types/OperationMode.html +2 -2
  48. package/apidoc/types/TablePart.html +2 -2
  49. package/apidoc/types/UiFeature.html +2 -2
  50. package/apidoc/types/WorkbookLayerPath.html +2 -2
  51. package/cadenza.d.ts +10 -5
  52. package/cadenza.js +11 -6
  53. package/package.json +3 -3
package/apidoc/index.html CHANGED
@@ -1,4 +1,4 @@
1
- <!DOCTYPE html><html class="default" lang="en" data-base="."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>Cadenza JS - v10.2.14</title><meta name="description" content="Documentation for Cadenza JS"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"><a href="https://github.com/DisyInformationssysteme/cadenza.js">Cadenza JS on GitHub</a></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="index.html" class="title">Cadenza JS - v10.2.14</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><h1>Cadenza JS - v10.2.14</h1></div><div class="tsd-panel tsd-typography"><!-- prettier-ignore-start -->
1
+ <!DOCTYPE html><html class="default" lang="en" data-base="."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>Cadenza JS - v10.2.15</title><meta name="description" content="Documentation for Cadenza JS"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"><a href="https://github.com/DisyInformationssysteme/cadenza.js">Cadenza JS on GitHub</a></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="index.html" class="title">Cadenza JS - v10.2.15</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><h1>Cadenza JS - v10.2.15</h1></div><div class="tsd-panel tsd-typography"><!-- prettier-ignore-start -->
2
2
  <p>Cadenza JS is a JavaScript library to use the <a href="https://www.disy.net/en/products/disy-cadenza/">disy Cadenza</a> APIs conveniently without having to deal with technical details like parameter encoding or the <code>postMessage()</code> Web API.</p>
3
3
  <ul>
4
4
  <li><a href="#installation">Installation</a></li>
@@ -11,7 +11,7 @@
11
11
  </code><button type="button">Copy</button></pre>
12
12
 
13
13
  <p>The Cadenza main version is reflected in the corresponding major and minor version of Cadenza JS (e.g. 10.2.0 for Cadenza 10.2), while the last version segment is increased for both, bugfixes and functional changes.</p>
14
- <a id="cadenza-101-and-earlier" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Cadenza 10.1 and earlier<a href="#cadenza-101-and-earlier" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p>For Cadenza 10.1 and earlier versions Cadenza JS used did use genuine semantic versioning. Please consult the Cadenza Documentation for the corresponding major and minor version of cadenza.js.</p>
14
+ <a id="cadenza-101-and-earlier" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Cadenza 10.1 and earlier<a href="#cadenza-101-and-earlier" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p>For Cadenza 10.1 and earlier versions Cadenza JS did use genuine semantic versioning. Please consult the Cadenza Documentation for the corresponding major and minor version of cadenza.js.</p>
15
15
  <a id="usage-examples" class="tsd-anchor"></a><h2 class="tsd-anchor-link">Usage Examples<a href="#usage-examples" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>This section features usage examples for Cadenza JS. For detailed usage information, see the &quot;API:&quot; links.</p>
16
16
  <a id="general-usage" class="tsd-anchor"></a><h3 class="tsd-anchor-link">General Usage<a href="#general-usage" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./functions/cadenza.html">cadenza()</a></small></p>
17
17
  <p>There are two ways to use Cadenza JS: As a module and globally.</p>
@@ -71,7 +71,7 @@ work, but <code>show</code>, <code>showMap</code> etc. require an iframe. Using
71
71
  <!--
72
72
  ### Set Filters in the Currently Shown Embedding Target
73
73
 
74
- <small>API: [CadenzaClient#setFilter](./classes/CadenzaClient.html#setFilter)</small>
74
+ <small>API: [CadenzaClient#setFilter](./classes/CadenzaClient.html#setfilter)</small>
75
75
 
76
76
  Set filter variables using a mapping of variable names to values.
77
77
 
@@ -79,7 +79,7 @@ Set filter variables using a mapping of variable names to values.
79
79
  cadenzaClient.setFilter({ '<variableName>': 'value' });
80
80
  ```
81
81
  -->
82
- <a id="show-a-workbook-map-view" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Show a Workbook Map View<a href="#show-a-workbook-map-view" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#showMap">CadenzaClient#showMap</a></small></p>
82
+ <a id="show-a-workbook-map-view" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Show a Workbook Map View<a href="#show-a-workbook-map-view" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#showmap">CadenzaClient#showMap</a></small></p>
83
83
  <p>Show the embedding target of a workbook map view in an iframe and ...</p>
84
84
  <ul>
85
85
  <li>Set the initial map extent.</li>
@@ -95,7 +95,7 @@ cadenzaClient.setFilter({ '<variableName>': 'value' });
95
95
  <!--
96
96
  ### Set the Visibility of a Layer in the Currently Shown Workbook Map View
97
97
 
98
- <small>API: [CadenzaClient#setLayerVisibility](./classes/CadenzaClient.html#setLayerVisibility)</small>
98
+ <small>API: [CadenzaClient#setLayerVisibility](./classes/CadenzaClient.html#setlayervisibility)</small>
99
99
 
100
100
  To set the visibility of a layer in the currently shown map, pass the layer path or print name and the desired visibility.
101
101
 
@@ -106,7 +106,7 @@ cadenzaClient.setLayerVisibility('<layerPrintName>', false);
106
106
  <!--
107
107
  ### Get the Image of the Currently Shown Workbook Map View
108
108
 
109
- <small>API: [CadenzaClient#getData](./classes/CadenzaClient.html#getData)</small>
109
+ <small>API: [CadenzaClient#getData](./classes/CadenzaClient.html#getdata)</small>
110
110
 
111
111
  The method may support multiple data types in the future. Currently, only `"png"` is supported to get the image of a workbook map view.
112
112
 
@@ -116,7 +116,7 @@ const data = await cadenzaClient.getData('png');
116
116
  canvas.drawImage(await createImageBitmap(data), 0, 0);
117
117
  ```
118
118
  -->
119
- <a id="edit-an-existing-geometry" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Edit an Existing Geometry<a href="#edit-an-existing-geometry" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#editGeometry">CadenzaClient#editGeometry</a>, <a href="./classes/CadenzaClient.html#on">CadenzaClient#on</a></small></p>
119
+ <a id="edit-an-existing-geometry" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Edit an Existing Geometry<a href="#edit-an-existing-geometry" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#editgeometry">CadenzaClient#editGeometry</a>, <a href="./classes/CadenzaClient.html#on">CadenzaClient#on</a></small></p>
120
120
  <p>Edit a GeoJSON geometry with a workbook map view in the background. The geometry coordinates are in the map's SRS (<code>useMapSrs: true</code>).</p>
121
121
  <pre><code class="javascript"><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">geometry</span><span class="hl-1"> = {</span><br/><span class="hl-1"> </span><span class="hl-9">type:</span><span class="hl-1"> </span><span class="hl-2">&#39;Point&#39;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">coordinates:</span><span class="hl-1"> [</span><span class="hl-13">328_627.563458</span><span class="hl-1">, </span><span class="hl-13">5_921_296.662223</span><span class="hl-1">],</span><br/><span class="hl-1">};</span><br/><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">editGeometry</span><span class="hl-1">(</span><span class="hl-2">&#39;&lt;embeddingTargetId&gt;&#39;</span><span class="hl-1">, </span><span class="hl-9">geometry</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-9">useMapSrs:</span><span class="hl-1"> </span><span class="hl-10">true</span><span class="hl-1">,</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">on</span><span class="hl-1">(</span><span class="hl-2">&#39;editGeometry:update&#39;</span><span class="hl-1">, (</span><span class="hl-9">event</span><span class="hl-1">) </span><span class="hl-10">=&gt;</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-9">console</span><span class="hl-1">.</span><span class="hl-0">log</span><span class="hl-1">(</span><span class="hl-2">&#39;Geometry was updated&#39;</span><span class="hl-1">, </span><span class="hl-9">event</span><span class="hl-1">.</span><span class="hl-9">detail</span><span class="hl-1">.</span><span class="hl-9">geometry</span><span class="hl-1">);</span><br/><span class="hl-1">});</span><br/><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">on</span><span class="hl-1">(</span><span class="hl-2">&#39;editGeometry:ok&#39;</span><span class="hl-1">, (</span><span class="hl-9">event</span><span class="hl-1">) </span><span class="hl-10">=&gt;</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-9">console</span><span class="hl-1">.</span><span class="hl-0">log</span><span class="hl-1">(</span><span class="hl-2">&#39;Geometry editing was completed&#39;</span><span class="hl-1">, </span><span class="hl-9">event</span><span class="hl-1">.</span><span class="hl-9">detail</span><span class="hl-1">.</span><span class="hl-9">geometry</span><span class="hl-1">);</span><br/><span class="hl-1">});</span><br/><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">on</span><span class="hl-1">(</span><span class="hl-2">&#39;editGeometry:cancel&#39;</span><span class="hl-1">, (</span><span class="hl-9">event</span><span class="hl-1">) </span><span class="hl-10">=&gt;</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-9">console</span><span class="hl-1">.</span><span class="hl-0">log</span><span class="hl-1">(</span><span class="hl-2">&#39;Geometry editing was cancelled&#39;</span><span class="hl-1">);</span><br/><span class="hl-1">});</span>
122
122
  </code><button type="button">Copy</button></pre>
@@ -125,7 +125,7 @@ canvas.drawImage(await createImageBitmap(data), 0, 0);
125
125
  <pre><code class="javascript"><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">unsubscribe</span><span class="hl-1"> = </span><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">on</span><span class="hl-1">(</span><span class="hl-2">&#39;editGeometry:ok&#39;</span><span class="hl-1">, (</span><span class="hl-9">event</span><span class="hl-1">) </span><span class="hl-10">=&gt;</span><span class="hl-1"> ...);</span><br/><span class="hl-1">...</span><br/><span class="hl-0">unsubscribe</span><span class="hl-1">();</span>
126
126
  </code><button type="button">Copy</button></pre>
127
127
 
128
- <a id="create-a-new-geometry" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Create a New Geometry<a href="#create-a-new-geometry" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#createGeometry">CadenzaClient#createGeometry</a></small></p>
128
+ <a id="create-a-new-geometry" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Create a New Geometry<a href="#create-a-new-geometry" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#creategeometry">CadenzaClient#createGeometry</a></small></p>
129
129
  <p>Create a GeoJSON point geometry with a workbook map view in the background. The geometry coordinates are in the map's SRS (<code>useMapSrs: true</code>).</p>
130
130
  <pre><code class="javascript"><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">createGeometry</span><span class="hl-1">(</span><span class="hl-2">&#39;&lt;embeddingTargetId&gt;&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;Point&#39;</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-9">useMapSrs:</span><span class="hl-1"> </span><span class="hl-10">true</span><span class="hl-1">,</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">on</span><span class="hl-1">(</span><span class="hl-2">&#39;editGeometry:ok&#39;</span><span class="hl-1">, (</span><span class="hl-9">event</span><span class="hl-1">) </span><span class="hl-10">=&gt;</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-9">console</span><span class="hl-1">.</span><span class="hl-0">log</span><span class="hl-1">(</span><span class="hl-2">&#39;Geometry creation was completed&#39;</span><span class="hl-1">, </span><span class="hl-9">event</span><span class="hl-1">.</span><span class="hl-9">detail</span><span class="hl-1">.</span><span class="hl-9">geometry</span><span class="hl-1">);</span><br/><span class="hl-1">});</span>
131
131
  </code><button type="button">Copy</button></pre>
@@ -137,7 +137,7 @@ That's why the events use the <code>editGeometry</code> prefix.</p>
137
137
  <pre><code class="javascript"><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">createGeometry</span><span class="hl-1">(</span><span class="hl-2">&#39;&lt;embeddingTargetId&gt;&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;Polygon&#39;</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-9">additionalLayers:</span><span class="hl-1"> [</span><br/><span class="hl-1"> { </span><span class="hl-9">type:</span><span class="hl-1"> </span><span class="hl-2">&#39;geojson&#39;</span><span class="hl-1">, </span><span class="hl-9">name:</span><span class="hl-1"> </span><span class="hl-2">&#39;Example&#39;</span><span class="hl-1">, </span><span class="hl-9">content:</span><span class="hl-1"> </span><span class="hl-4">&lt;</span><span class="hl-14">FeatureCollection</span><span class="hl-4">&gt;</span><span class="hl-1"> },</span><br/><span class="hl-1"> ...</span><br/><span class="hl-1"> ]</span><br/><span class="hl-1">});</span>
138
138
  </code><button type="button">Copy</button></pre>
139
139
 
140
- <a id="select-objects-in-a-workbook-map-view" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Select Objects in a Workbook Map View<a href="#select-objects-in-a-workbook-map-view" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#selectObjects">CadenzaClient#selectObjects</a></small></p>
140
+ <a id="select-objects-in-a-workbook-map-view" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Select Objects in a Workbook Map View<a href="#select-objects-in-a-workbook-map-view" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#selectobjects">CadenzaClient#selectObjects</a></small></p>
141
141
  <p>Ask the user to select objects in a workbook map view. In the example the selection is restricted to specific layers. For layers in groups, pass the layer path.</p>
142
142
  <pre><code class="javascript"><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">selectObjects</span><span class="hl-1">(</span><span class="hl-2">&#39;&lt;embeddingTargetId&gt;&#39;</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-9">layers:</span><span class="hl-1"> [</span><br/><span class="hl-1"> [ </span><span class="hl-2">&#39;&lt;layerGroupPrintName&gt;&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;&lt;layerPrintName&gt;&#39;</span><span class="hl-1"> ],</span><br/><span class="hl-1"> [ </span><span class="hl-2">&#39;&lt;layerPrintName&gt;&#39;</span><span class="hl-1"> ]</span><br/><span class="hl-1"> ]</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">on</span><span class="hl-1">(</span><span class="hl-2">&#39;selectObjects:ok&#39;</span><span class="hl-1">, (</span><span class="hl-9">event</span><span class="hl-1">) </span><span class="hl-10">=&gt;</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-9">console</span><span class="hl-1">.</span><span class="hl-0">log</span><span class="hl-1">(</span><span class="hl-2">&#39;Object selection was completed&#39;</span><span class="hl-1">, </span><span class="hl-9">event</span><span class="hl-1">.</span><span class="hl-9">detail</span><span class="hl-1">.</span><span class="hl-9">selection</span><span class="hl-1">);</span><br/><span class="hl-1">});</span>
143
143
  </code><button type="button">Copy</button></pre>
@@ -145,7 +145,7 @@ That's why the events use the <code>editGeometry</code> prefix.</p>
145
145
  <!--
146
146
  #### _Programmatically_ Set the Selection in the Currently Shown Workbook Map View
147
147
 
148
- <small>API: [CadenzaClient#setSelection](./classes/CadenzaClient.html#setSelection)</small>
148
+ <small>API: [CadenzaClient#setSelection](./classes/CadenzaClient.html#setselection)</small>
149
149
 
150
150
  Set the selection in the currently shown workbook map view using a list of object IDs to select. An empty list clears the selection.
151
151
 
@@ -157,171 +157,198 @@ cadenzaClient.setSelection(
157
157
  ```
158
158
 
159
159
  You can also add to or remove from the current selection:
160
- * <small>API: [CadenzaClient#addSelection](./classes/CadenzaClient.html#addSelection)</small>
161
- * <small>API: [CadenzaClient#removeSelection](./classes/CadenzaClient.html#removeSelection)</small>
162
- -->
163
- <a id="highlight-an-item-in-the-navigator" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Highlight an Item in the Navigator<a href="#highlight-an-item-in-the-navigator" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#show">CadenzaClient#show</a></small></p>
164
- <p>Show an embedding target in an iframe and highlight an item in the navigator. Additionally, expand the navigator tree.</p>
165
- <pre><code class="javascript"><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">show</span><span class="hl-1">(</span><span class="hl-2">&#39;&lt;embeddingTargetId&gt;&#39;</span><span class="hl-1">, {</span><span class="hl-9">expandNavigator:</span><span class="hl-1"> </span><span class="hl-10">true</span><span class="hl-1">, </span><span class="hl-9">highlightGlobalId:</span><span class="hl-1"> </span><span class="hl-2">&#39;ROOT.MyFolder&#39;</span><span class="hl-1">});</span>
166
- </code><button type="button">Copy</button></pre>
160
+ * <small>API: [CadenzaClient#addSelection](./classes/CadenzaClient.html#addselection)</small>
161
+ * <small>API: [CadenzaClient#removeSelection](./classes/CadenzaClient.html#removeselection)</small>
167
162
 
168
- <a id="highlight-an-item-in-the-navigator-on-the-welcome-page" class="tsd-anchor"></a><h4 class="tsd-anchor-link">Highlight an Item in the Navigator on the Welcome Page<a href="#highlight-an-item-in-the-navigator-on-the-welcome-page" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p><small>API: <a href="./classes/CadenzaClient.html#show">CadenzaClient#show</a></small></p>
169
- <p>Show Cadenza's welcome page in an iframe and highlight an item in the navigator.</p>
170
- <pre><code class="javascript"><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">show</span><span class="hl-1">({</span><span class="hl-9">page:</span><span class="hl-1"> </span><span class="hl-2">&#39;welcome&#39;</span><span class="hl-1">}, {</span><span class="hl-9">highlightGlobalId:</span><span class="hl-1"> </span><span class="hl-2">&#39;ROOT.MyFolder&#39;</span><span class="hl-1">});</span>
171
- </code><button type="button">Copy</button></pre>
163
+ ### Highlight an Item in the Navigator
172
164
 
173
- <a id="expand-the-navigator" class="tsd-anchor"></a><h4 class="tsd-anchor-link">Expand the Navigator<a href="#expand-the-navigator" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p><small>API: <a href="./classes/CadenzaClient.html#expandNavigator">CadenzaClient#expandNavigator</a></small></p>
174
- <p>Expand the navigator.</p>
175
- <pre><code class="javascript"><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">expandNavigator</span><span class="hl-1">();</span>
176
- </code><button type="button">Copy</button></pre>
165
+ <small>API: [CadenzaClient#show](./classes/CadenzaClient.html#show)</small>
177
166
 
178
- <a id="fetch-data-from-a-workbook-view" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Fetch Data From a Workbook View<a href="#fetch-data-from-a-workbook-view" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#fetchData">CadenzaClient#fetchData</a></small></p>
179
- <p>Fetch data from a workbook view in CSV format.</p>
180
- <pre><code class="javascript"><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">response</span><span class="hl-1"> = </span><span class="hl-8">await</span><span class="hl-1"> </span><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">fetchData</span><span class="hl-1">(</span><span class="hl-2">&#39;&lt;embeddingTargetId&gt;&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;csv&#39;</span><span class="hl-1">);</span><br/><br/><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">text</span><span class="hl-1"> = </span><span class="hl-8">await</span><span class="hl-1"> </span><span class="hl-9">response</span><span class="hl-1">.</span><span class="hl-0">text</span><span class="hl-1">();</span><br/><span class="hl-1">...</span>
181
- </code><button type="button">Copy</button></pre>
167
+ Show an embedding target in an iframe and highlight an item in the navigator. Additionally, expand the navigator tree.
182
168
 
183
- <a id="control-the-contents-of-the-fetched-table-data" class="tsd-anchor"></a><h4 class="tsd-anchor-link">Control the Contents of the Fetched Table Data<a href="#control-the-contents-of-the-fetched-table-data" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p>Fetch data from a workbook view in JSON format and include only the data values and the aggregation totals. (Do not include the column names.)</p>
184
- <pre><code class="javascript"><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">response</span><span class="hl-1"> = </span><span class="hl-8">await</span><span class="hl-1"> </span><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">fetchData</span><span class="hl-1">(</span><span class="hl-2">&#39;&lt;embeddingTargetId&gt;&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;json&#39;</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-9">parts:</span><span class="hl-1"> [</span><span class="hl-2">&#39;values&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;totals&#39;</span><span class="hl-1">]</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">tableData</span><span class="hl-1"> = </span><span class="hl-8">await</span><span class="hl-1"> </span><span class="hl-9">response</span><span class="hl-1">.</span><span class="hl-0">json</span><span class="hl-1">();</span><br/><span class="hl-1">...</span>
185
- </code><button type="button">Copy</button></pre>
169
+ ```javascript
170
+ cadenzaClient.show('<embeddingTargetId>', {expandNavigator: true, highlightGlobalId: 'ROOT.MyFolder'});
171
+ ```
186
172
 
187
- <a id="fetch-the-object-info-from-a-workbook-map-view" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Fetch the Object Info from a Workbook Map View<a href="#fetch-the-object-info-from-a-workbook-map-view" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: [CadenzaClient#fetchObjectInfo(./classes/CadenzaClient.html#fetchObjectInfo)</small></p>
188
- <p>Fetch the object info from a workbook map view in JSON format. The result contains all information, that is shown in the object info within cadenza.</p>
189
- <pre><code class="javascript"><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">objectInfo</span><span class="hl-1"> = </span><span class="hl-8">await</span><span class="hl-1"> </span><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">fetchObjectInfo</span><span class="hl-1">(</span><span class="hl-2">&#39;embeddingTargetId&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;layerPrintName&#39;</span><span class="hl-1">, [[</span><span class="hl-2">&#39;objectId&#39;</span><span class="hl-1">]], {</span><br/><span class="hl-1"> </span><span class="hl-9">useMapSrs:</span><span class="hl-1"> </span><span class="hl-10">false</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">fullGeometries:</span><span class="hl-1"> </span><span class="hl-10">true</span><br/><span class="hl-1">});</span>
190
- </code><button type="button">Copy</button></pre>
173
+ #### Highlight an Item in the Navigator on the Welcome Page
191
174
 
192
- <a id="fetch-the-area-intersection-from-a-workbook-map-view-layer" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Fetch the area intersection from a Workbook Map View Layer<a href="#fetch-the-area-intersection-from-a-workbook-map-view-layer" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: [CadenzaClient#fetchObjectInfo(./classes/CadenzaClient.html#fetchAreaIntersections)</small></p>
193
- <p>Fetch the intersection area from a workbook map view layer in JSON format for a given area. The result contains all intersecting objects of the layer, their object ID, if defined the object name and a geometry representing the intersection area, with area size and area perimeter.</p>
194
- <pre><code class="javascript"><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">geometry</span><span class="hl-1"> = {</span><br/><span class="hl-1"> </span><span class="hl-9">type:</span><span class="hl-1"> </span><span class="hl-2">&#39;Point&#39;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">coordinates:</span><span class="hl-1"> [</span><span class="hl-13">328_627.563458</span><span class="hl-1">, </span><span class="hl-13">5_921_296.662223</span><span class="hl-1">],</span><br/><span class="hl-1">};</span><br/><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">bufferSize</span><span class="hl-1"> = {</span><br/><span class="hl-1"> </span><span class="hl-9">value:</span><span class="hl-1"> </span><span class="hl-13">100</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">lengthUnit:</span><span class="hl-1"> </span><span class="hl-2">&#39;m&#39;</span><br/><span class="hl-1">}</span><br/><br/><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">featureCollection</span><span class="hl-1"> = </span><span class="hl-8">await</span><span class="hl-1"> </span><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">fetchAreaIntersections</span><span class="hl-1">(</span><span class="hl-2">&#39;embeddingTargetId&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;layerPrintName&#39;</span><span class="hl-1">, </span><span class="hl-9">geometry</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-9">useMapSrs:</span><span class="hl-1"> </span><span class="hl-10">true</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-9">bufferSize:</span><span class="hl-1"> </span><span class="hl-9">bufferSize</span><br/><span class="hl-1">});</span>
195
- </code><button type="button">Copy</button></pre>
175
+ <small>API: [CadenzaClient#show](./classes/CadenzaClient.html#show)</small>
196
176
 
197
- <a id="download-data-from-a-workbook-view" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Download Data From a Workbook View<a href="#download-data-from-a-workbook-view" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#downloadData">CadenzaClient#downloadData</a></small></p>
198
- <p>Download data from a workbook view in Excel format. This triggers the browser's download dialog.</p>
199
- <pre><code class="javascript"><span class="hl-10">const</span><span class="hl-1"> </span><span class="hl-11">button</span><span class="hl-1"> = </span><span class="hl-9">document</span><span class="hl-1">.</span><span class="hl-0">createElement</span><span class="hl-1">(</span><span class="hl-2">&#39;button&#39;</span><span class="hl-1">);</span><br/><span class="hl-9">button</span><span class="hl-1">.</span><span class="hl-9">textContent</span><span class="hl-1"> = </span><span class="hl-2">&#39;Download Excel&#39;</span><span class="hl-1">;</span><br/><span class="hl-9">button</span><span class="hl-1">.</span><span class="hl-0">onclick</span><span class="hl-1"> = () </span><span class="hl-10">=&gt;</span><span class="hl-1"> </span><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">downloadData</span><span class="hl-1">(</span><span class="hl-2">&#39;&lt;embeddingTargetId&gt;&#39;</span><span class="hl-1">, </span><span class="hl-2">&#39;excel&#39;</span><span class="hl-1">);</span>
200
- </code><button type="button">Copy</button></pre>
177
+ Show Cadenza's welcome page in an iframe and highlight an item in the navigator.
201
178
 
202
- <a id="reload-the-views-of-a-worksheet" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Reload the Views of a Worksheet<a href="#reload-the-views-of-a-worksheet" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#reload">CadenzaClient#reload</a></small></p>
203
- <p>To reload a worksheet:</p>
204
- <pre><code class="javascript"><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">reload</span><span class="hl-1">();</span>
205
- </code><button type="button">Copy</button></pre>
179
+ ```javascript
180
+ cadenzaClient.show({page: 'welcome'}, {highlightGlobalId: 'ROOT.MyFolder'});
181
+ ```
206
182
 
207
- <p>To invalidate caches and reload:</p>
208
- <pre><code class="javascript"><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">reload</span><span class="hl-1">({ </span><span class="hl-9">invalidateCaches:</span><span class="hl-1"> </span><span class="hl-10">true</span><span class="hl-1"> });</span>
209
- </code><button type="button">Copy</button></pre>
183
+ #### Expand the Navigator
210
184
 
211
- <a id="close-the-cadenza-dialog-or-window-that-embeds-the-custom-application" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Close the Cadenza Dialog or Window That Embeds the Custom Application<a href="#close-the-cadenza-dialog-or-window-that-embeds-the-custom-application" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><small>API: <a href="./classes/CadenzaClient.html#closeMe">CadenzaClient#closeMe</a></small></p>
212
- <p>Sends a message to parent Cadenza window to close the window containing this application.</p>
213
- <pre><code class="javascript"><span class="hl-9">cadenzaClient</span><span class="hl-1">.</span><span class="hl-0">closeMe</span><span class="hl-1">();</span>
214
- </code><button type="button">Copy</button></pre>
185
+ <small>API: [CadenzaClient#expandNavigator](./classes/CadenzaClient.html#expandnavigator)</small>
215
186
 
216
- <a id="listen-for-cadenza-closing-the-custom-application" class="tsd-anchor"></a><h4 class="tsd-anchor-link">Listen for Cadenza Closing the Custom Application<a href="#listen-for-cadenza-closing-the-custom-application" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h4><p>Cadenza does not send an event when the dialog or window is closed that embeds the custom application. Depending on your use case you might listen to these browser events instead:</p>
217
- <ul>
218
- <li>The <a href="https://developer.mozilla.org/docs/Web/API/Window/unload_event">Window: <code>unload</code> event</a> is dispatched when the window/dialog is closed.</li>
219
- <li>The <a href="https://developer.mozilla.org/docs/Web/API/Document/visibilitychange_event">Document: <code>visibilitychange</code> event</a> is dispatched when the window/dialog is closed <em>or hidden</em> (for example when the user switches to another browser tab).</li>
220
- </ul>
221
- <p><em>Note:</em> If you need to send a request to your server when the window/dialog is closed, you should use the <a href="https://developer.mozilla.org/docs/Web/API/Navigator/sendBeacon">Navigator: <code>sendBeacon()</code> method</a>. It's limited to POST requests, but in contrast to the &quot;normal&quot; XHR or <code>fetch()</code> APIs, it works reliably when the dialog/window is closed.</p>
222
- <a id="the-development-sandbox" class="tsd-anchor"></a><h2 class="tsd-anchor-link">The Development Sandbox<a href="#the-development-sandbox" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>The development sandbox is a simple custom application (in fact a single <code>.html</code> file) for playing with Cadenza JS.</p>
223
- <p>To run it ...</p>
224
- <ul>
225
- <li>You need a Cadenza installation running on <a href="http://localhost:8080/cadenza">http://localhost:8080/cadenza</a>. (See <a href="#customize-the-cadenza-url">Customize the Cadenza URL</a> below)</li>
226
- <li>In <code>node_modules/@disy/cadenza.js</code> run <code>npm run sandbox</code> to start the sandbox.</li>
227
- </ul>
228
- <p>The command starts a proxy server that serves the <code>sandbox.html</code> and <code>cadenza.js</code> files and proxies all other requests to the Cadenza server. Since that way the sandbox and Cadenza run on the same origin, embedding and <code>postMessage</code> communication just work.</p>
229
- <p>Alternatively ...</p>
230
- <ul>
231
- <li>Set the system variable <code>&quot;net.disy.cadenza.sandbox&quot;</code> in Cadenza to enable the sandbox.</li>
232
- <li>Now, <code>sandbox.html</code> is served on <a href="http://localhost:8080/cadenza/sandbox">http://localhost:8080/cadenza/sandbox</a> (replace with custom Cadenza url <code>/sandbox</code> as needed).</li>
233
- </ul>
234
- <p><code>cadenza.js</code> is automatically served when Cadenza starts.</p>
235
- <a id="the-sandbox-ui" class="tsd-anchor"></a><h3 class="tsd-anchor-link">The Sandbox UI<a href="#the-sandbox-ui" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p><code>npm run sandbox</code> also opens the sandbox in a new browser window. Select the Cadenza JS method you want to play with in the select box at the top. For each method there are controls to define the parameters. Hit &quot;Go!&quot; to call the method.</p>
236
- <p>The sandbox uses Cadenza JS with the &quot;debug&quot; option enabled, so you can see what is going on internally in the browser's devtools console. In the &quot;Network&quot; tab of the devtools you can see the requests to the Cadenza server.</p>
237
- <a id="customize-the-cadenza-url" class="tsd-anchor"></a><h3 class="tsd-anchor-link">Customize the Cadenza URL<a href="#customize-the-cadenza-url" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p>By default, the sandbox expects Cadenza to run on <a href="http://localhost:8080/cadenza">http://localhost:8080/cadenza</a>. There are two ways to customize the Cadenza URL:</p>
238
- <ul>
239
- <li>Pass an argument:<pre><code class="bash"><span class="hl-0">npm</span><span class="hl-1"> </span><span class="hl-2">run</span><span class="hl-1"> </span><span class="hl-2">sandbox</span><span class="hl-1"> </span><span class="hl-10">--</span><span class="hl-1"> </span><span class="hl-10">--cadenza-url</span><span class="hl-1"> </span><span class="hl-2">http://localhost:8000/my-cadenza</span>
240
- </code><button type="button">Copy</button></pre>
187
+ Expand the navigator.
241
188
 
242
- </li>
243
- <li>Set an environment variable:<pre><code class="bash"><span class="hl-10">export</span><span class="hl-1"> </span><span class="hl-9">CADENZA_URL</span><span class="hl-1">=</span><span class="hl-9">http</span><span class="hl-1">://</span><span class="hl-9">localhost</span><span class="hl-1">:</span><span class="hl-9">8000</span><span class="hl-1">/</span><span class="hl-9">my-cadenza</span><br/><span class="hl-0">npm</span><span class="hl-1"> </span><span class="hl-2">run</span><span class="hl-1"> </span><span class="hl-2">sandbox</span>
244
- </code><button type="button">Copy</button></pre>
189
+ ```javascript
190
+ cadenzaClient.expandNavigator();
191
+ ```
245
192
 
246
- </li>
247
- </ul>
248
- <a id="json-representation-of-cadenza-object-data" class="tsd-anchor"></a><h2 class="tsd-anchor-link">JSON Representation of Cadenza Object Data<a href="#json-representation-of-cadenza-object-data" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p><a href="https://www.json.org/">JSON</a> is a simple data-interchange format, which is also used in the Cadenza API. It does not support all the attribute types of Cadenza objects, that's why there are some rules for representing Cadenza object data in JSON.</p>
249
- <table>
250
- <thead>
251
- <tr>
252
- <th>Cadenza Attribute Type</th>
253
- <th>JSON Type</th>
254
- <th>JSON Example Value</th>
255
- <th>Notes</th>
256
- </tr>
257
- </thead>
258
- <tbody>
259
- <tr>
260
- <td>Text (String)</td>
261
- <td>string</td>
262
- <td><code>&quot;Text&quot;</code></td>
263
- <td></td>
264
- </tr>
265
- <tr>
266
- <td>Number (Integer)</td>
267
- <td>number</td>
268
- <td><code>1</code></td>
269
- <td></td>
270
- </tr>
271
- <tr>
272
- <td>Number (Long)</td>
273
- <td>string</td>
274
- <td><code>&quot;1&quot;</code></td>
275
- <td>The long value range exceeds the range of the JSON number type. So it's represented as a string.</td>
276
- </tr>
277
- <tr>
278
- <td>Floating point number (Double)</td>
279
- <td>number</td>
280
- <td><code>1.23</code></td>
281
- <td></td>
282
- </tr>
283
- <tr>
284
- <td>Floating point number (Big decimal)</td>
285
- <td>string</td>
286
- <td><code>&quot;1.23&quot;</code></td>
287
- <td>The big decimal value range exceeds the range of the JSON number type. So it's represented as a string.</td>
288
- </tr>
289
- <tr>
290
- <td>Date</td>
291
- <td>string</td>
292
- <td><code>&quot;1999-12-31T23:00:00Z&quot;</code></td>
293
- <td>A date is represented as an <a href="https://en.wikipedia.org/wiki/ISO_8601#Coordinated_Universal_Time_(UTC)">ISO string in universal time</a> (UTC).</td>
294
- </tr>
295
- <tr>
296
- <td>Duration</td>
297
- <td>number</td>
298
- <td><code>1</code></td>
299
- <td>A duration is represented by its numeric value.</td>
300
- </tr>
301
- <tr>
302
- <td>Geometry</td>
303
- <td>object</td>
304
- <td><pre lang="json">{<br> &quot;type&quot;: &quot;Point&quot;<br> &quot;coordinates&quot;: [125.6, 10.1]<br>}</pre></td>
305
- <td>A geometry is represented as a <a href="https://geojson.org/">GeoJSON</a> object.<br><em>Note:</em> By default, coordinates in GeoJSON use the WGS84 projection.</td>
306
- </tr>
307
- <tr>
308
- <td>IP address</td>
309
- <td>string</td>
310
- <td><code>&quot;127.0.0.1&quot;</code></td>
311
- <td></td>
312
- </tr>
313
- <tr>
314
- <td>URL</td>
315
- <td>string</td>
316
- <td><code>&quot;http://example.com&quot;</code></td>
317
- <td></td>
318
- </tr>
319
- <tr>
320
- <td>LOB</td>
321
- <td>string</td>
322
- <td></td>
323
- <td></td>
324
- </tr>
325
- </tbody>
326
- </table>
327
- <!-- prettier-ignore-end --></div></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg>On This Page</h3></summary><div class="tsd-accordion-details"><a href="#installation"><span>Installation</span></a><ul><li><a href="#cadenza-101-and-earlier"><span>Cadenza 10.1 and earlier</span></a></li></ul><a href="#usage-examples"><span>Usage <wbr/>Examples</span></a><ul><li><a href="#general-usage"><span>General <wbr/>Usage</span></a></li><li><ul><li><a href="#as-a-module"><span>As a module</span></a></li><li><a href="#globally"><span>Globally</span></a></li></ul></li><li><a href="#communication-with-parent-cadenza"><span>Communication with parent <wbr/>Cadenza</span></a></li><li><a href="#show-an-embedding-target-in-an-iframe"><span>Show an <wbr/>Embedding <wbr/>Target in an <wbr/>Iframe</span></a></li><li><ul><li><a href="#show-the-generated-pdf-of-a-jasperreports-report-view-directly"><span>Show the <wbr/>Generated PDF of a &quot;<wbr/>Jasper<wbr/>Reports report&quot; <wbr/>View <wbr/>Directly</span></a></li></ul></li><li><a href="#abort-iframe-loading"><span>Abort (<wbr/>Iframe) <wbr/>Loading</span></a></li><li><a href="#show-a-workbook-map-view"><span>Show a <wbr/>Workbook <wbr/>Map <wbr/>View</span></a></li><li><ul><li><a href="#initialize-the-map-extent-by-setting-the-location-finder"><span>Initialize the <wbr/>Map <wbr/>Extent by <wbr/>Setting the <wbr/>Location <wbr/>Finder</span></a></li></ul></li><li><a href="#edit-an-existing-geometry"><span>Edit an <wbr/>Existing <wbr/>Geometry</span></a></li><li><a href="#unsubscribe-from-an-event"><span>Unsubscribe <wbr/>From an <wbr/>Event</span></a></li><li><a href="#create-a-new-geometry"><span>Create a <wbr/>New <wbr/>Geometry</span></a></li><li><ul><li><a href="#additional-background-layers"><span>Additional <wbr/>Background <wbr/>Layers</span></a></li></ul></li><li><a href="#select-objects-in-a-workbook-map-view"><span>Select <wbr/>Objects in a <wbr/>Workbook <wbr/>Map <wbr/>View</span></a></li><li><a href="#highlight-an-item-in-the-navigator"><span>Highlight an <wbr/>Item in the <wbr/>Navigator</span></a></li><li><ul><li><a href="#highlight-an-item-in-the-navigator-on-the-welcome-page"><span>Highlight an <wbr/>Item in the <wbr/>Navigator on the <wbr/>Welcome <wbr/>Page</span></a></li><li><a href="#expand-the-navigator"><span>Expand the <wbr/>Navigator</span></a></li></ul></li><li><a href="#fetch-data-from-a-workbook-view"><span>Fetch <wbr/>Data <wbr/>From a <wbr/>Workbook <wbr/>View</span></a></li><li><ul><li><a href="#control-the-contents-of-the-fetched-table-data"><span>Control the <wbr/>Contents of the <wbr/>Fetched <wbr/>Table <wbr/>Data</span></a></li></ul></li><li><a href="#fetch-the-object-info-from-a-workbook-map-view"><span>Fetch the <wbr/>Object <wbr/>Info from a <wbr/>Workbook <wbr/>Map <wbr/>View</span></a></li><li><a href="#fetch-the-area-intersection-from-a-workbook-map-view-layer"><span>Fetch the area intersection from a <wbr/>Workbook <wbr/>Map <wbr/>View <wbr/>Layer</span></a></li><li><a href="#download-data-from-a-workbook-view"><span>Download <wbr/>Data <wbr/>From a <wbr/>Workbook <wbr/>View</span></a></li><li><a href="#reload-the-views-of-a-worksheet"><span>Reload the <wbr/>Views of a <wbr/>Worksheet</span></a></li><li><a href="#close-the-cadenza-dialog-or-window-that-embeds-the-custom-application"><span>Close the <wbr/>Cadenza <wbr/>Dialog or <wbr/>Window <wbr/>That <wbr/>Embeds the <wbr/>Custom <wbr/>Application</span></a></li><li><ul><li><a href="#listen-for-cadenza-closing-the-custom-application"><span>Listen for <wbr/>Cadenza <wbr/>Closing the <wbr/>Custom <wbr/>Application</span></a></li></ul></li></ul><a href="#the-development-sandbox"><span>The <wbr/>Development <wbr/>Sandbox</span></a><ul><li><a href="#the-sandbox-ui"><span>The <wbr/>Sandbox UI</span></a></li><li><a href="#customize-the-cadenza-url"><span>Customize the <wbr/>Cadenza URL</span></a></li></ul><a href="#json-representation-of-cadenza-object-data"><span>JSON <wbr/>Representation of <wbr/>Cadenza <wbr/>Object <wbr/>Data</span></a></div></details></div><div class="site-menu"><nav id="tsd-sidebar-links" class="tsd-navigation"><a href="https://github.com/DisyInformationssysteme/cadenza.js" class="tsd-nav-link">Cadenza JS on GitHub</a></nav><nav class="tsd-navigation"><a href="modules.html">Cadenza JS - v10.2.14</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
193
+ ### Fetch Data From a Workbook View
194
+
195
+ <small>API: [CadenzaClient#fetchData](./classes/CadenzaClient.html#fetchdata)</small>
196
+
197
+ Fetch data from a workbook view in CSV format.
198
+
199
+ ```javascript
200
+ const response = await cadenzaClient.fetchData('<embeddingTargetId>', 'csv');
201
+
202
+ const text = await response.text();
203
+ ...
204
+ ```
205
+
206
+ #### Control the Contents of the Fetched Table Data
207
+
208
+ Fetch data from a workbook view in JSON format and include only the data values and the aggregation totals. (Do not include the column names.)
209
+
210
+ ```javascript
211
+ const response = await cadenzaClient.fetchData('<embeddingTargetId>', 'json', {
212
+ parts: ['values', 'totals']
213
+ });
214
+
215
+ const tableData = await response.json();
216
+ ...
217
+ ```
218
+
219
+ ### Fetch the Object Info from a Workbook Map View
220
+
221
+ <small>API: [CadenzaClient#fetchObjectInfo(./classes/CadenzaClient.html#fetchobjectinfo)</small>
222
+
223
+ Fetch the object info from a workbook map view in JSON format. The result contains all information, that is shown in the object info within cadenza.
224
+
225
+ ```javascript
226
+ const objectInfo = await cadenzaClient.fetchObjectInfo('embeddingTargetId', 'layerPrintName', [['objectId']], {
227
+ useMapSrs: false,
228
+ fullGeometries: true
229
+ });
230
+ ```
231
+
232
+ ### Fetch the area intersection from a Workbook Map View Layer
233
+
234
+ <small>API: [CadenzaClient#fetchObjectInfo(./classes/CadenzaClient.html#fetchareaintersections)</small>
235
+
236
+ Fetch the intersection area from a workbook map view layer in JSON format for a given area. The result contains all intersecting objects of the layer, their object ID, if defined the object name and a geometry representing the intersection area, with area size and area perimeter.
237
+
238
+ ```javascript
239
+ const geometry = {
240
+ type: 'Point',
241
+ coordinates: [328_627.563458, 5_921_296.662223],
242
+ };
243
+ const bufferSize = {
244
+ value: 100,
245
+ lengthUnit: 'm'
246
+ }
247
+
248
+ const featureCollection = await cadenzaClient.fetchAreaIntersections('embeddingTargetId', 'layerPrintName', geometry, {
249
+ useMapSrs: true,
250
+ bufferSize: bufferSize
251
+ });
252
+ ```
253
+
254
+ ### Download Data From a Workbook View
255
+
256
+ <small>API: [CadenzaClient#downloadData](./classes/CadenzaClient.html#downloaddata)</small>
257
+
258
+ Download data from a workbook view in Excel format. This triggers the browser's download dialog.
259
+
260
+ ```javascript
261
+ const button = document.createElement('button');
262
+ button.textContent = 'Download Excel';
263
+ button.onclick = () => cadenzaClient.downloadData('<embeddingTargetId>', 'excel');
264
+ ```
265
+
266
+ ### Reload the Views of a Worksheet
267
+
268
+ <small>API: [CadenzaClient#reload](./classes/CadenzaClient.html#reload)</small>
269
+
270
+ To reload a worksheet:
271
+ ```javascript
272
+ cadenzaClient.reload();
273
+ ```
274
+
275
+ To invalidate caches and reload:
276
+ ```javascript
277
+ cadenzaClient.reload({ invalidateCaches: true });
278
+ ```
279
+
280
+ ### Close the Cadenza Dialog or Window That Embeds the Custom Application
281
+
282
+ <small>API: [CadenzaClient#closeMe](./classes/CadenzaClient.html#closeme)</small>
283
+
284
+ Sends a message to parent Cadenza window to close the window containing this application.
285
+ ```javascript
286
+ cadenzaClient.closeMe();
287
+ ```
288
+
289
+ #### Listen for Cadenza Closing the Custom Application
290
+
291
+ Cadenza does not send an event when the dialog or window is closed that embeds the custom application. Depending on your use case you might listen to these browser events instead:
292
+ * The [Window: `unload` event](https://developer.mozilla.org/docs/Web/API/Window/unload_event) is dispatched when the window/dialog is closed.
293
+ * The [Document: `visibilitychange` event](https://developer.mozilla.org/docs/Web/API/Document/visibilitychange_event) is dispatched when the window/dialog is closed _or hidden_ (for example when the user switches to another browser tab).
294
+
295
+ _Note:_ If you need to send a request to your server when the window/dialog is closed, you should use the [Navigator: `sendBeacon()` method](https://developer.mozilla.org/docs/Web/API/Navigator/sendBeacon). It's limited to POST requests, but in contrast to the "normal" XHR or `fetch()` APIs, it works reliably when the dialog/window is closed.
296
+
297
+ ## The Development Sandbox
298
+
299
+ The development sandbox is a simple custom application (in fact a single `.html` file) for playing with Cadenza JS.
300
+
301
+ To run it ...
302
+
303
+ * You need a Cadenza installation running on http://localhost:8080/cadenza. (See [Customize the Cadenza URL](#customize-the-cadenza-url) below)
304
+ * In `node_modules/@disy/cadenza.js` run `npm run sandbox` to start the sandbox.
305
+
306
+ The command starts a proxy server that serves the `sandbox.html` and `cadenza.js` files and proxies all other requests to the Cadenza server. Since that way the sandbox and Cadenza run on the same origin, embedding and `postMessage` communication just work.
307
+
308
+ Alternatively ...
309
+
310
+ * Set the system variable `"net.disy.cadenza.sandbox"` in Cadenza to enable the sandbox.
311
+ * Now, `sandbox.html` is served on http://localhost:8080/cadenza/sandbox (replace with custom Cadenza url `/sandbox` as needed).
312
+
313
+ `cadenza.js` is automatically served when Cadenza starts.
314
+
315
+ ### The Sandbox UI
316
+
317
+ `npm run sandbox` also opens the sandbox in a new browser window. Select the Cadenza JS method you want to play with in the select box at the top. For each method there are controls to define the parameters. Hit "Go!" to call the method.
318
+
319
+ The sandbox uses Cadenza JS with the "debug" option enabled, so you can see what is going on internally in the browser's devtools console. In the "Network" tab of the devtools you can see the requests to the Cadenza server.
320
+
321
+ ### Customize the Cadenza URL
322
+
323
+ By default, the sandbox expects Cadenza to run on http://localhost:8080/cadenza. There are two ways to customize the Cadenza URL:
324
+
325
+ * Pass an argument:
326
+ ```bash
327
+ npm run sandbox -- --cadenza-url http://localhost:8000/my-cadenza
328
+ ```
329
+ * Set an environment variable:
330
+ ```bash
331
+ export CADENZA_URL=http://localhost:8000/my-cadenza
332
+ npm run sandbox
333
+ ```
334
+
335
+ ## JSON Representation of Cadenza Object Data
336
+
337
+ [JSON](https://www.json.org/) is a simple data-interchange format, which is also used in the Cadenza API. It does not support all the attribute types of Cadenza objects, that's why there are some rules for representing Cadenza object data in JSON.
338
+
339
+
340
+ | Cadenza Attribute Type | JSON Type | JSON Example Value | Notes |
341
+ |-------------------------------------|-----------|--------------------------|-------|
342
+ | Text (String) | string | `"Text"` | |
343
+ | Number (Integer) | number | `1` | |
344
+ | Number (Long) | string | `"1"` | The long value range exceeds the range of the JSON number type. So it's represented as a string. |
345
+ | Floating point number (Double) | number | `1.23` |
346
+ | Floating point number (Big decimal) | string | `"1.23"` | The big decimal value range exceeds the range of the JSON number type. So it's represented as a string. |
347
+ | Date | string | `"1999-12-31T23:00:00Z"` | A date is represented as an [ISO string in universal time](https://en.wikipedia.org/wiki/ISO_8601#Coordinated_Universal_Time_(UTC)) (UTC). |
348
+ | Duration | number | `1` | A duration is represented by its numeric value. |
349
+ | Geometry | object | <pre lang="json">{<br> "type": "Point"<br> "coordinates": [125.6, 10.1]<br>}</pre> | A geometry is represented as a [GeoJSON](https://geojson.org/) object.<br>_Note:_ By default, coordinates in GeoJSON use the WGS84 projection. |
350
+ | IP address | string | `"127.0.0.1"` | |
351
+ | URL | string | `"http://example.com"` | |
352
+ | LOB | string | | |
353
+
354
+ <!-- prettier-ignore-end --></div></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="assets/icons.svg#icon-chevronDown"></use></svg>On This Page</h3></summary><div class="tsd-accordion-details"><a href="#installation"><span>Installation</span></a><ul><li><a href="#cadenza-101-and-earlier"><span>Cadenza 10.1 and earlier</span></a></li></ul><a href="#usage-examples"><span>Usage <wbr/>Examples</span></a><ul><li><a href="#general-usage"><span>General <wbr/>Usage</span></a></li><li><ul><li><a href="#as-a-module"><span>As a module</span></a></li><li><a href="#globally"><span>Globally</span></a></li></ul></li><li><a href="#communication-with-parent-cadenza"><span>Communication with parent <wbr/>Cadenza</span></a></li><li><a href="#show-an-embedding-target-in-an-iframe"><span>Show an <wbr/>Embedding <wbr/>Target in an <wbr/>Iframe</span></a></li><li><ul><li><a href="#show-the-generated-pdf-of-a-jasperreports-report-view-directly"><span>Show the <wbr/>Generated PDF of a &quot;<wbr/>Jasper<wbr/>Reports report&quot; <wbr/>View <wbr/>Directly</span></a></li></ul></li><li><a href="#abort-iframe-loading"><span>Abort (<wbr/>Iframe) <wbr/>Loading</span></a></li><li><a href="#show-a-workbook-map-view"><span>Show a <wbr/>Workbook <wbr/>Map <wbr/>View</span></a></li><li><ul><li><a href="#initialize-the-map-extent-by-setting-the-location-finder"><span>Initialize the <wbr/>Map <wbr/>Extent by <wbr/>Setting the <wbr/>Location <wbr/>Finder</span></a></li></ul></li><li><a href="#edit-an-existing-geometry"><span>Edit an <wbr/>Existing <wbr/>Geometry</span></a></li><li><a href="#unsubscribe-from-an-event"><span>Unsubscribe <wbr/>From an <wbr/>Event</span></a></li><li><a href="#create-a-new-geometry"><span>Create a <wbr/>New <wbr/>Geometry</span></a></li><li><ul><li><a href="#additional-background-layers"><span>Additional <wbr/>Background <wbr/>Layers</span></a></li></ul></li><li><a href="#select-objects-in-a-workbook-map-view"><span>Select <wbr/>Objects in a <wbr/>Workbook <wbr/>Map <wbr/>View</span></a></li></ul></div></details></div><div class="site-menu"><nav id="tsd-sidebar-links" class="tsd-navigation"><a href="https://github.com/DisyInformationssysteme/cadenza.js" class="tsd-nav-link">Cadenza JS on GitHub</a></nav><nav class="tsd-navigation"><a href="modules.html">Cadenza JS - v10.2.15</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>