@disy/cadenza.js 10.2.13 → 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 (56) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/apidoc/assets/navigation.js +1 -1
  3. package/apidoc/assets/search.js +1 -1
  4. package/apidoc/classes/AbortError.html +3 -3
  5. package/apidoc/classes/CadenzaClient.html +32 -27
  6. package/apidoc/classes/CadenzaError.html +5 -5
  7. package/apidoc/functions/cadenza.html +4 -4
  8. package/apidoc/index.html +193 -165
  9. package/apidoc/interfaces/CadenzaClientOptions.html +5 -5
  10. package/apidoc/interfaces/CadenzaEvent.html +4 -4
  11. package/apidoc/interfaces/Distance.html +2 -2
  12. package/apidoc/interfaces/ExternalLinkKey.html +4 -4
  13. package/apidoc/interfaces/Feature.html +9 -9
  14. package/apidoc/interfaces/FeatureCollection.html +4 -4
  15. package/apidoc/interfaces/Geometry.html +4 -4
  16. package/apidoc/interfaces/GeometryExtentStrategy.html +4 -4
  17. package/apidoc/interfaces/LayerDataExtentStrategy.html +4 -4
  18. package/apidoc/interfaces/LayerDefinition.html +4 -4
  19. package/apidoc/interfaces/LocationFinderExtentStrategy.html +4 -4
  20. package/apidoc/interfaces/PageSource.html +3 -3
  21. package/apidoc/interfaces/SnappingOptions.html +3 -3
  22. package/apidoc/interfaces/StaticExtentStrategy.html +4 -4
  23. package/apidoc/modules.html +1 -1
  24. package/apidoc/types/CadenzaActionEvent.html +2 -2
  25. package/apidoc/types/CadenzaChangeSelectionEvent.html +2 -2
  26. package/apidoc/types/CadenzaDrillThroughEvent.html +2 -2
  27. package/apidoc/types/CadenzaEditGeometryCancelEvent.html +2 -2
  28. package/apidoc/types/CadenzaEditGeometryOkEvent.html +2 -2
  29. package/apidoc/types/CadenzaEditGeometryUpdateEvent.html +2 -2
  30. package/apidoc/types/CadenzaErrorEvent.html +2 -2
  31. package/apidoc/types/CadenzaEventByType.html +1 -1
  32. package/apidoc/types/CadenzaEventType.html +2 -2
  33. package/apidoc/types/CadenzaObjectInfoEvent.html +2 -2
  34. package/apidoc/types/CadenzaReloadEvent.html +2 -2
  35. package/apidoc/types/CadenzaSelectObjectsCancelEvent.html +2 -2
  36. package/apidoc/types/CadenzaSelectObjectsOkEvent.html +2 -2
  37. package/apidoc/types/Coordinate.html +2 -2
  38. package/apidoc/types/CustomValidityType.html +2 -2
  39. package/apidoc/types/DataType.html +2 -2
  40. package/apidoc/types/EmbeddingTargetId.html +2 -2
  41. package/apidoc/types/Extent.html +2 -2
  42. package/apidoc/types/ExtentStrategy.html +2 -2
  43. package/apidoc/types/FilterVariables.html +2 -2
  44. package/apidoc/types/GeometryType.html +2 -2
  45. package/apidoc/types/GlobalId.html +2 -2
  46. package/apidoc/types/Layout.html +6 -0
  47. package/apidoc/types/LengthUnit.html +1 -1
  48. package/apidoc/types/OpaqueString.html +2 -2
  49. package/apidoc/types/OperationMode.html +2 -2
  50. package/apidoc/types/TablePart.html +2 -2
  51. package/apidoc/types/UiFeature.html +2 -2
  52. package/apidoc/types/WorkbookLayerPath.html +2 -2
  53. package/cadenza.d.ts +22 -9
  54. package/cadenza.js +31 -11
  55. package/package.json +3 -3
  56. package/sandbox.html +10 -0
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.13</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.13</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.13</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>
@@ -133,10 +133,11 @@ canvas.drawImage(await createImageBitmap(data), 0, 0);
133
133
  <p><em>Note:</em> Under the hood, creating a geometry is similar to editing a geometry.
134
134
  That's why the events use the <code>editGeometry</code> prefix.</p>
135
135
  <a id="additional-background-layers" class="tsd-anchor"></a><h4 class="tsd-anchor-link">Additional Background Layers<a href="#additional-background-layers" 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>Create a GeoJSON polygon geometry with a workbook map view and some additional background layers.</p>
136
+ <p>IMPORTANT: The Cadenza referenced with <code>cadenzaClient</code> must be configured to support the import of GeoJSON, and the (system) privileges of the corresponding user must also be set in such a way that the import of GeoJSON is possible.</p>
136
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>
137
138
  </code><button type="button">Copy</button></pre>
138
139
 
139
- <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>
140
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>
141
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>
142
143
  </code><button type="button">Copy</button></pre>
@@ -144,7 +145,7 @@ That's why the events use the <code>editGeometry</code> prefix.</p>
144
145
  <!--
145
146
  #### _Programmatically_ Set the Selection in the Currently Shown Workbook Map View
146
147
 
147
- <small>API: [CadenzaClient#setSelection](./classes/CadenzaClient.html#setSelection)</small>
148
+ <small>API: [CadenzaClient#setSelection](./classes/CadenzaClient.html#setselection)</small>
148
149
 
149
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.
150
151
 
@@ -156,171 +157,198 @@ cadenzaClient.setSelection(
156
157
  ```
157
158
 
158
159
  You can also add to or remove from the current selection:
159
- * <small>API: [CadenzaClient#addSelection](./classes/CadenzaClient.html#addSelection)</small>
160
- * <small>API: [CadenzaClient#removeSelection](./classes/CadenzaClient.html#removeSelection)</small>
161
- -->
162
- <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>
163
- <p>Show an embedding target in an iframe and highlight an item in the navigator. Additionally, expand the navigator tree.</p>
164
- <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>
165
- </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>
166
162
 
167
- <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>
168
- <p>Show Cadenza's welcome page in an iframe and highlight an item in the navigator.</p>
169
- <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>
170
- </code><button type="button">Copy</button></pre>
163
+ ### Highlight an Item in the Navigator
171
164
 
172
- <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>
173
- <p>Expand the navigator.</p>
174
- <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>
175
- </code><button type="button">Copy</button></pre>
165
+ <small>API: [CadenzaClient#show](./classes/CadenzaClient.html#show)</small>
176
166
 
177
- <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>
178
- <p>Fetch data from a workbook view in CSV format.</p>
179
- <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>
180
- </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.
181
168
 
182
- <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>
183
- <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>
184
- </code><button type="button">Copy</button></pre>
169
+ ```javascript
170
+ cadenzaClient.show('<embeddingTargetId>', {expandNavigator: true, highlightGlobalId: 'ROOT.MyFolder'});
171
+ ```
185
172
 
186
- <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>
187
- <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>
188
- <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>
189
- </code><button type="button">Copy</button></pre>
173
+ #### Highlight an Item in the Navigator on the Welcome Page
190
174
 
191
- <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>
192
- <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>
193
- <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>
194
- </code><button type="button">Copy</button></pre>
175
+ <small>API: [CadenzaClient#show](./classes/CadenzaClient.html#show)</small>
195
176
 
196
- <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>
197
- <p>Download data from a workbook view in Excel format. This triggers the browser's download dialog.</p>
198
- <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>
199
- </code><button type="button">Copy</button></pre>
177
+ Show Cadenza's welcome page in an iframe and highlight an item in the navigator.
200
178
 
201
- <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>
202
- <p>To reload a worksheet:</p>
203
- <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>
204
- </code><button type="button">Copy</button></pre>
179
+ ```javascript
180
+ cadenzaClient.show({page: 'welcome'}, {highlightGlobalId: 'ROOT.MyFolder'});
181
+ ```
205
182
 
206
- <p>To invalidate caches and reload:</p>
207
- <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>
208
- </code><button type="button">Copy</button></pre>
183
+ #### Expand the Navigator
209
184
 
210
- <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>
211
- <p>Sends a message to parent Cadenza window to close the window containing this application.</p>
212
- <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>
213
- </code><button type="button">Copy</button></pre>
185
+ <small>API: [CadenzaClient#expandNavigator](./classes/CadenzaClient.html#expandnavigator)</small>
214
186
 
215
- <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>
216
- <ul>
217
- <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>
218
- <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>
219
- </ul>
220
- <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>
221
- <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>
222
- <p>To run it ...</p>
223
- <ul>
224
- <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>
225
- <li>In <code>node_modules/@disy/cadenza.js</code> run <code>npm run sandbox</code> to start the sandbox.</li>
226
- </ul>
227
- <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>
228
- <p>Alternatively ...</p>
229
- <ul>
230
- <li>Set the system variable <code>&quot;net.disy.cadenza.sandbox&quot;</code> in Cadenza to enable the sandbox.</li>
231
- <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>
232
- </ul>
233
- <p><code>cadenza.js</code> is automatically served when Cadenza starts.</p>
234
- <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>
235
- <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>
236
- <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>
237
- <ul>
238
- <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>
239
- </code><button type="button">Copy</button></pre>
187
+ Expand the navigator.
240
188
 
241
- </li>
242
- <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>
243
- </code><button type="button">Copy</button></pre>
189
+ ```javascript
190
+ cadenzaClient.expandNavigator();
191
+ ```
244
192
 
245
- </li>
246
- </ul>
247
- <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>
248
- <table>
249
- <thead>
250
- <tr>
251
- <th>Cadenza Attribute Type</th>
252
- <th>JSON Type</th>
253
- <th>JSON Example Value</th>
254
- <th>Notes</th>
255
- </tr>
256
- </thead>
257
- <tbody>
258
- <tr>
259
- <td>Text (String)</td>
260
- <td>string</td>
261
- <td><code>&quot;Text&quot;</code></td>
262
- <td></td>
263
- </tr>
264
- <tr>
265
- <td>Number (Integer)</td>
266
- <td>number</td>
267
- <td><code>1</code></td>
268
- <td></td>
269
- </tr>
270
- <tr>
271
- <td>Number (Long)</td>
272
- <td>string</td>
273
- <td><code>&quot;1&quot;</code></td>
274
- <td>The long value range exceeds the range of the JSON number type. So it's represented as a string.</td>
275
- </tr>
276
- <tr>
277
- <td>Floating point number (Double)</td>
278
- <td>number</td>
279
- <td><code>1.23</code></td>
280
- <td></td>
281
- </tr>
282
- <tr>
283
- <td>Floating point number (Big decimal)</td>
284
- <td>string</td>
285
- <td><code>&quot;1.23&quot;</code></td>
286
- <td>The big decimal value range exceeds the range of the JSON number type. So it's represented as a string.</td>
287
- </tr>
288
- <tr>
289
- <td>Date</td>
290
- <td>string</td>
291
- <td><code>&quot;1999-12-31T23:00:00Z&quot;</code></td>
292
- <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>
293
- </tr>
294
- <tr>
295
- <td>Duration</td>
296
- <td>number</td>
297
- <td><code>1</code></td>
298
- <td>A duration is represented by its numeric value.</td>
299
- </tr>
300
- <tr>
301
- <td>Geometry</td>
302
- <td>object</td>
303
- <td><pre lang="json">{<br> &quot;type&quot;: &quot;Point&quot;<br> &quot;coordinates&quot;: [125.6, 10.1]<br>}</pre></td>
304
- <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>
305
- </tr>
306
- <tr>
307
- <td>IP address</td>
308
- <td>string</td>
309
- <td><code>&quot;127.0.0.1&quot;</code></td>
310
- <td></td>
311
- </tr>
312
- <tr>
313
- <td>URL</td>
314
- <td>string</td>
315
- <td><code>&quot;http://example.com&quot;</code></td>
316
- <td></td>
317
- </tr>
318
- <tr>
319
- <td>LOB</td>
320
- <td>string</td>
321
- <td></td>
322
- <td></td>
323
- </tr>
324
- </tbody>
325
- </table>
326
- <!-- 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.13</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>