@vcmap/ui 6.2.0-rc.1 → 6.2.0-rc.3

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 (193) hide show
  1. package/build/build.js +52 -7
  2. package/build/postInstall.js +32 -0
  3. package/config/dev.config.json +40 -0
  4. package/config/pano.config.json +420 -0
  5. package/config/projects.config.json +5 -0
  6. package/dist/assets/cesium/Workers/{chunk-P6TRGU3S.js → chunk-2PFJ45KC.js} +2 -2
  7. package/dist/assets/cesium/Workers/{chunk-7ZZ5LMZY.js → chunk-35ALNMG5.js} +15 -15
  8. package/dist/assets/cesium/Workers/{chunk-7YIOHQWH.js → chunk-35EJBV7X.js} +13 -13
  9. package/dist/assets/cesium/Workers/{chunk-EJVGYGLF.js → chunk-3E3OH65K.js} +7 -7
  10. package/dist/assets/cesium/Workers/{chunk-JBSKHTNX.js → chunk-4FHUY275.js} +4 -4
  11. package/dist/assets/cesium/Workers/{chunk-Z2QP3CXW.js → chunk-565T3GIE.js} +2 -2
  12. package/dist/assets/cesium/Workers/{chunk-IZGUQO6Q.js → chunk-5LGDCKCZ.js} +13 -13
  13. package/dist/assets/cesium/Workers/{chunk-3IFRSGEY.js → chunk-6JXJYBWN.js} +9 -9
  14. package/dist/assets/cesium/Workers/{chunk-WGDFYAGC.js → chunk-6RAEC3AW.js} +4 -4
  15. package/dist/assets/cesium/Workers/{chunk-44QAAS4P.js → chunk-6Z67VIOY.js} +7 -7
  16. package/dist/assets/cesium/Workers/{chunk-NGZJIN5Z.js → chunk-ADDGROZ6.js} +4 -4
  17. package/dist/assets/cesium/Workers/{chunk-GBT7MJ6X.js → chunk-ASYGMBRG.js} +1 -1
  18. package/dist/assets/cesium/Workers/{chunk-C4WPMOKT.js → chunk-BABDQOWA.js} +5 -5
  19. package/dist/assets/cesium/Workers/{chunk-IBRIWOCM.js → chunk-BQHHGIFB.js} +13 -13
  20. package/dist/assets/cesium/Workers/{chunk-LLAF3CPH.js → chunk-C33B4KHN.js} +2 -2
  21. package/dist/assets/cesium/Workers/{chunk-JXVLNVXC.js → chunk-CMCR2ZK4.js} +7 -7
  22. package/dist/assets/cesium/Workers/{chunk-3HQMMUPU.js → chunk-EGGJIATZ.js} +1 -1
  23. package/dist/assets/cesium/Workers/{chunk-RJM36CNY.js → chunk-EWS5LXAB.js} +6 -6
  24. package/dist/assets/cesium/Workers/{chunk-OPP2SKMA.js → chunk-FDXPBTSX.js} +12 -12
  25. package/dist/assets/cesium/Workers/{chunk-QN6TBED4.js → chunk-FIFQP4YX.js} +11 -11
  26. package/dist/assets/cesium/Workers/{chunk-JISPSEF3.js → chunk-HOGDZ2EB.js} +4 -4
  27. package/dist/assets/cesium/Workers/{chunk-2PTKXHJB.js → chunk-I4NB77NH.js} +10 -10
  28. package/dist/assets/cesium/Workers/{chunk-QQOZO7KO.js → chunk-JX4A2BCF.js} +7 -7
  29. package/dist/assets/cesium/Workers/{chunk-XIUSRWL6.js → chunk-K6PDUSH6.js} +5 -5
  30. package/dist/assets/cesium/Workers/{chunk-KHZNBFOH.js → chunk-KFHZFU5O.js} +7 -7
  31. package/dist/assets/cesium/Workers/{chunk-U5HSOKPQ.js → chunk-KYGXRFA6.js} +1 -1
  32. package/dist/assets/cesium/Workers/{chunk-56EDBCGT.js → chunk-LNWNAP2C.js} +10 -10
  33. package/dist/assets/cesium/Workers/{chunk-YCDZX5LS.js → chunk-LWN2B3KW.js} +1 -1
  34. package/dist/assets/cesium/Workers/{chunk-TI3TRKIC.js → chunk-LXLABO2L.js} +10 -10
  35. package/dist/assets/cesium/Workers/{chunk-C3EQ27WF.js → chunk-MB6B2UUL.js} +6 -6
  36. package/dist/assets/cesium/Workers/{chunk-57H6I3SV.js → chunk-MZSRINXK.js} +5 -5
  37. package/dist/assets/cesium/Workers/{chunk-ZVUUPJEM.js → chunk-NBI3GZSK.js} +17 -17
  38. package/dist/assets/cesium/Workers/{chunk-O72GZTSE.js → chunk-NUAXNUP5.js} +2 -2
  39. package/dist/assets/cesium/Workers/{chunk-M24KHENR.js → chunk-PNZR4RLL.js} +2 -2
  40. package/dist/assets/cesium/Workers/{chunk-HJMNR3GC.js → chunk-Q4K22DSJ.js} +11 -11
  41. package/dist/assets/cesium/Workers/{chunk-2LOWCAMW.js → chunk-Q4OS4EFN.js} +13 -13
  42. package/dist/assets/cesium/Workers/{chunk-TK5IIG2F.js → chunk-QLIMO7TQ.js} +4 -4
  43. package/dist/assets/cesium/Workers/{chunk-EDLRS3AW.js → chunk-RQ4F6YFU.js} +6 -6
  44. package/dist/assets/cesium/Workers/{chunk-JSQJDZI4.js → chunk-SB67D3JL.js} +6 -6
  45. package/dist/assets/cesium/Workers/{chunk-RTJKHZWU.js → chunk-SS6WRJ5J.js} +6 -6
  46. package/dist/assets/cesium/Workers/{chunk-L5GODJAR.js → chunk-TC4NTWIJ.js} +14 -14
  47. package/dist/assets/cesium/Workers/{chunk-IZJ42N4W.js → chunk-TKNA6WSZ.js} +17 -17
  48. package/dist/assets/cesium/Workers/{chunk-HP5XLODI.js → chunk-VQYEP77L.js} +6 -6
  49. package/dist/assets/cesium/Workers/{chunk-YSIJTJ7N.js → chunk-WKS5H3VW.js} +5 -5
  50. package/dist/assets/cesium/Workers/{chunk-XWOUPGUF.js → chunk-WPGX7DEA.js} +1 -1
  51. package/dist/assets/cesium/Workers/{chunk-6SQMLVGV.js → chunk-X3EPFVG3.js} +7 -7
  52. package/dist/assets/cesium/Workers/{chunk-NDDI2LWR.js → chunk-XH7MSR3A.js} +6 -6
  53. package/dist/assets/cesium/Workers/{chunk-FFLMY4TE.js → chunk-YDEBBUNQ.js} +5 -5
  54. package/dist/assets/cesium/Workers/{chunk-YK3QIKY7.js → chunk-YSVI7YNN.js} +9 -9
  55. package/dist/assets/cesium/Workers/{chunk-BVKITG4N.js → chunk-YVAS5WPH.js} +7 -7
  56. package/dist/assets/cesium/Workers/{chunk-X7IQYYHF.js → chunk-Z4QVAZM6.js} +2 -2
  57. package/dist/assets/cesium/Workers/{chunk-LJ2JQHJT.js → chunk-ZXOK77EW.js} +7 -7
  58. package/dist/assets/cesium/Workers/combineGeometry.js +22 -22
  59. package/dist/assets/cesium/Workers/createBoxGeometry.js +16 -16
  60. package/dist/assets/cesium/Workers/createBoxOutlineGeometry.js +14 -14
  61. package/dist/assets/cesium/Workers/createCircleGeometry.js +24 -24
  62. package/dist/assets/cesium/Workers/createCircleOutlineGeometry.js +17 -17
  63. package/dist/assets/cesium/Workers/createCoplanarPolygonGeometry.js +31 -31
  64. package/dist/assets/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +29 -29
  65. package/dist/assets/cesium/Workers/createCorridorGeometry.js +27 -27
  66. package/dist/assets/cesium/Workers/createCorridorOutlineGeometry.js +26 -26
  67. package/dist/assets/cesium/Workers/createCylinderGeometry.js +18 -18
  68. package/dist/assets/cesium/Workers/createCylinderOutlineGeometry.js +16 -16
  69. package/dist/assets/cesium/Workers/createEllipseGeometry.js +24 -24
  70. package/dist/assets/cesium/Workers/createEllipseOutlineGeometry.js +17 -17
  71. package/dist/assets/cesium/Workers/createEllipsoidGeometry.js +17 -17
  72. package/dist/assets/cesium/Workers/createEllipsoidOutlineGeometry.js +16 -16
  73. package/dist/assets/cesium/Workers/createFrustumGeometry.js +16 -16
  74. package/dist/assets/cesium/Workers/createFrustumOutlineGeometry.js +16 -16
  75. package/dist/assets/cesium/Workers/createGeometry.js +22 -22
  76. package/dist/assets/cesium/Workers/createGroundPolylineGeometry.js +20 -20
  77. package/dist/assets/cesium/Workers/createPlaneGeometry.js +14 -14
  78. package/dist/assets/cesium/Workers/createPlaneOutlineGeometry.js +13 -13
  79. package/dist/assets/cesium/Workers/createPolygonGeometry.js +30 -30
  80. package/dist/assets/cesium/Workers/createPolygonOutlineGeometry.js +28 -28
  81. package/dist/assets/cesium/Workers/createPolylineGeometry.js +23 -23
  82. package/dist/assets/cesium/Workers/createPolylineVolumeGeometry.js +29 -29
  83. package/dist/assets/cesium/Workers/createPolylineVolumeOutlineGeometry.js +25 -25
  84. package/dist/assets/cesium/Workers/createRectangleGeometry.js +25 -25
  85. package/dist/assets/cesium/Workers/createRectangleOutlineGeometry.js +18 -18
  86. package/dist/assets/cesium/Workers/createSimplePolylineGeometry.js +21 -21
  87. package/dist/assets/cesium/Workers/createSphereGeometry.js +17 -17
  88. package/dist/assets/cesium/Workers/createSphereOutlineGeometry.js +16 -16
  89. package/dist/assets/cesium/Workers/createTaskProcessorWorker.js +3 -3
  90. package/dist/assets/cesium/Workers/createVectorTileClampedPolylines.js +13 -13
  91. package/dist/assets/cesium/Workers/createVectorTileGeometries.js +22 -22
  92. package/dist/assets/cesium/Workers/createVectorTilePoints.js +12 -12
  93. package/dist/assets/cesium/Workers/createVectorTilePolygons.js +20 -20
  94. package/dist/assets/cesium/Workers/createVectorTilePolylines.js +13 -13
  95. package/dist/assets/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +20 -20
  96. package/dist/assets/cesium/Workers/createVerticesFromHeightmap.js +20 -20
  97. package/dist/assets/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +17 -17
  98. package/dist/assets/cesium/Workers/createWallGeometry.js +22 -22
  99. package/dist/assets/cesium/Workers/createWallOutlineGeometry.js +21 -21
  100. package/dist/assets/cesium/Workers/decodeDraco.js +11 -11
  101. package/dist/assets/cesium/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
  102. package/dist/assets/cesium/Workers/decodeI3S.js +10 -10
  103. package/dist/assets/cesium/Workers/transcodeKTX2.js +7 -7
  104. package/dist/assets/cesium/Workers/transferTypedArrayTest.js +1 -1
  105. package/dist/assets/cesium/Workers/upsampleQuantizedTerrainMesh.js +20 -20
  106. package/dist/assets/{cesium-ac6c193a.js → cesium-7d4ab914.js} +44609 -44606
  107. package/dist/assets/cesium.js +1 -1
  108. package/dist/assets/core-deeb2b8d.js +34569 -0
  109. package/dist/assets/core-workers/panoramaImageWorker.js +1 -0
  110. package/dist/assets/core-workers/panoramaImageWorker.js-f8148bc6.js +34 -0
  111. package/dist/assets/core.js +1 -1
  112. package/dist/assets/{ol-94c57f2e.js → ol-8db5c824.js} +1 -1
  113. package/dist/assets/ol.js +1 -1
  114. package/dist/assets/start.js +3 -1
  115. package/dist/assets/ui-62439099.css +1 -0
  116. package/dist/assets/{ui-4f308e45.js → ui-62439099.js} +9581 -8853
  117. package/dist/assets/ui.js +1 -1
  118. package/dist/assets/vue.js +1 -1
  119. package/dist/assets/{vuetify-99195777.js → vuetify-439ba6d5.js} +1 -1
  120. package/dist/assets/vuetify.js +1 -1
  121. package/index.d.ts +14 -4
  122. package/index.js +8 -6
  123. package/package.json +5 -4
  124. package/plugins/@vcmap-show-case/panorama-inspector/package.json +10 -0
  125. package/plugins/@vcmap-show-case/panorama-inspector/src/PanoramaDebugInfo.vue +86 -0
  126. package/plugins/@vcmap-show-case/panorama-inspector/src/PanoramaDebugTools.vue +259 -0
  127. package/plugins/@vcmap-show-case/panorama-inspector/src/PanoramaInspector.vue +31 -0
  128. package/plugins/@vcmap-show-case/panorama-inspector/src/api.js +161 -0
  129. package/plugins/@vcmap-show-case/panorama-inspector/src/index.js +57 -0
  130. package/plugins/@vcmap-show-case/panorama-inspector/src/showClickInteraction.js +20 -0
  131. package/plugins/package.json +1 -1
  132. package/src/actions/actionHelper.d.ts +16 -11
  133. package/src/actions/actionHelper.js +190 -87
  134. package/src/actions/flightActions.d.ts +10 -0
  135. package/src/actions/flightActions.js +109 -13
  136. package/src/application/VcsApp.vue +11 -0
  137. package/src/application/VcsApp.vue.d.ts +4 -0
  138. package/src/application/VcsContainer.vue.d.ts +4 -0
  139. package/src/application/VcsMainMap.vue +40 -2
  140. package/src/application/VcsMainMap.vue.d.ts +4 -0
  141. package/src/application/VcsMap.vue +0 -9
  142. package/src/application/VcsNavbar.vue +2 -1
  143. package/src/callback/activateMapCallback.d.ts +30 -0
  144. package/src/callback/activateMapCallback.js +63 -0
  145. package/src/callback/activateOverviewMapCallback.d.ts +7 -0
  146. package/src/callback/activateOverviewMapCallback.js +26 -0
  147. package/src/callback/deactivateOverviewMapCallback.d.ts +7 -0
  148. package/src/callback/deactivateOverviewMapCallback.js +20 -0
  149. package/src/components/flight/VcsFlightAnchorsComponent.vue +1 -0
  150. package/src/components/flight/VcsFlightPlayer.vue +31 -17
  151. package/src/components/flight/VcsFlightPlayer.vue.d.ts +1 -0
  152. package/src/components/lists/VcsGroupedList.vue +10 -2
  153. package/src/components/lists/VcsTreeNode.vue +3 -0
  154. package/src/components/plugins/VcsLoadingOverlay.vue +138 -0
  155. package/src/components/plugins/VcsLoadingOverlay.vue.d.ts +2 -0
  156. package/src/components/plugins/VcsWorkspaceWrapper.vue +104 -0
  157. package/src/components/plugins/VcsWorkspaceWrapper.vue.d.ts +82 -0
  158. package/src/components/section/VcsExpansionPanel.vue +13 -3
  159. package/src/components/vector-properties/VcsFeatureEditingWindow.vue +20 -1
  160. package/src/components/vector-properties/VcsFeatureEditingWindow.vue.d.ts +11 -0
  161. package/src/components/vector-properties/VcsFeatureInputEditor.vue +166 -0
  162. package/src/components/vector-properties/VcsFeatureInputEditor.vue.d.ts +17 -0
  163. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue.d.ts +1 -1
  164. package/src/contentTree/LayerSwap.vue +15 -6
  165. package/src/contentTree/contentTreeCollection.js +2 -2
  166. package/src/contentTree/contentTreeItem.d.ts +2 -2
  167. package/src/contentTree/wmsGroupContentTreeItem.js +10 -3
  168. package/src/featureInfo/featureInfo.js +6 -25
  169. package/src/featureInfo/iframeWmsFeatureInfoView.d.ts +10 -0
  170. package/src/featureInfo/iframeWmsFeatureInfoView.js +42 -0
  171. package/src/i18n/de.d.ts +25 -7
  172. package/src/i18n/de.js +14 -0
  173. package/src/i18n/en.d.ts +25 -7
  174. package/src/i18n/en.js +14 -0
  175. package/src/legend/VcsLegend.vue +5 -1
  176. package/src/navigation/MapNavigation.vue +82 -45
  177. package/src/navigation/MapNavigation.vue.d.ts +3 -34
  178. package/src/navigation/TiltSlider.vue +10 -2
  179. package/src/navigation/TiltSlider.vue.d.ts +20 -0
  180. package/src/navigation/VcsCompass.vue +3 -1
  181. package/src/navigation/overviewMap.d.ts +23 -8
  182. package/src/navigation/overviewMap.js +82 -60
  183. package/src/search/ResultsComponent.vue +8 -1
  184. package/src/search/SearchComponent.vue +3 -17
  185. package/src/search/SearchComponent.vue.d.ts +1 -2
  186. package/src/search/search.d.ts +13 -0
  187. package/src/search/search.js +21 -1
  188. package/src/uiConfig.d.ts +9 -0
  189. package/src/uiConfig.js +1 -0
  190. package/dist/assets/core-de8e51b5.js +0 -26236
  191. package/dist/assets/ui-4f308e45.css +0 -1
  192. /package/dist/assets/{vue-62303c82.js → vue-1b861f55.js} +0 -0
  193. /package/dist/assets/{vuetify-99195777.css → vuetify-439ba6d5.css} +0 -0
@@ -75,13 +75,13 @@ class ContentTreeCollection extends IndexedCollection {
75
75
  'contentTreeActiveOnStartup',
76
76
  );
77
77
  if (
78
- contentTreeActiveOnStartup?.value &&
78
+ contentTreeActiveOnStartup?.value != null &&
79
79
  contentTreeActiveOnStartup[moduleIdSymbol] !== this._app.dynamicModuleId
80
80
  ) {
81
81
  const action = this._app.navbarManager.get(
82
82
  defaultContentTreeComponentId,
83
83
  )?.action;
84
- if (action && !action.active) {
84
+ if (action && action.active !== contentTreeActiveOnStartup.value) {
85
85
  action.callback();
86
86
  }
87
87
  }
@@ -272,11 +272,11 @@ declare class ContentTreeItem {
272
272
  /**
273
273
  * @param {(string|HTMLCanvasElement|HTMLImageElement)=} icon
274
274
  */
275
- set icon(icon: string | HTMLImageElement | HTMLCanvasElement | undefined);
275
+ set icon(icon: string | HTMLCanvasElement | HTMLImageElement | undefined);
276
276
  /**
277
277
  * @type {string|HTMLCanvasElement|HTMLImageElement|undefined}
278
278
  */
279
- get icon(): string | HTMLImageElement | HTMLCanvasElement | undefined;
279
+ get icon(): string | HTMLCanvasElement | HTMLImageElement | undefined;
280
280
  /**
281
281
  * @param {number} weight
282
282
  */
@@ -522,6 +522,10 @@ class WMSGroupContentTreeItem extends VcsObjectContentTreeItem {
522
522
  this._layer.url,
523
523
  this._layer.parameters,
524
524
  );
525
+ // check if the layer still exists, it can happen that the layer was removed while fetching the capabilities.
526
+ if (!this._layer) {
527
+ return;
528
+ }
525
529
  this._availableWMSEntries = availableWMSEntries.filter((wmsEntry) => {
526
530
  return this._allowedWMSLayers
527
531
  ? this._allowedWMSLayers.includes(wmsEntry.name)
@@ -558,9 +562,12 @@ class WMSGroupContentTreeItem extends VcsObjectContentTreeItem {
558
562
  this._setState();
559
563
  this._setLegend();
560
564
  } catch (e) {
561
- this._layer.deactivate();
562
- this.visible = false;
563
- this._invalid = true;
565
+ // if the layer is not there it has been removed while fetching the capabilities.
566
+ if (this._layer) {
567
+ this._layer.deactivate();
568
+ this.visible = false;
569
+ this._invalid = true;
570
+ }
564
571
  getLogger(this.className).error(
565
572
  `An error occured while fetching the ${this._layerName} capabilities:`,
566
573
  e,
@@ -229,10 +229,7 @@ export function getGroupedFeatureList(app, features, position = undefined) {
229
229
  if (layerName) {
230
230
  if (!groups[layerName]) {
231
231
  const title = app.layers.getByKey(layerName)?.properties?.title;
232
- groups[layerName] = {
233
- name: layerName,
234
- title: title || layerName,
235
- };
232
+ groups[layerName] = { name: layerName, title: title || layerName };
236
233
  }
237
234
  listItem.group = layerName;
238
235
  }
@@ -265,10 +262,7 @@ export function createFeatureInfoSession(app) {
265
262
  stopped.destroy();
266
263
  };
267
264
 
268
- return {
269
- stopped,
270
- stop,
271
- };
265
+ return { stopped, stop };
272
266
  }
273
267
 
274
268
  /**
@@ -307,11 +301,7 @@ function setupFeatureInfoTool(app) {
307
301
  }
308
302
  if (!app.toolboxManager.has('featureInfo')) {
309
303
  app.toolboxManager.add(
310
- {
311
- id: 'featureInfo',
312
- type: ToolboxType.SINGLE,
313
- action,
314
- },
304
+ { id: 'featureInfo', type: ToolboxType.SINGLE, action },
315
305
  vcsAppSymbol,
316
306
  { desktop: true, tablet: true, mobile: true },
317
307
  );
@@ -743,11 +733,7 @@ class FeatureInfo extends Collection {
743
733
  }
744
734
  }
745
735
  this._app.windowManager.add(
746
- {
747
- id: this._windowId,
748
- ...windowComponentOptions,
749
- props,
750
- },
736
+ { id: this._windowId, ...windowComponentOptions, props },
751
737
  vcsAppSymbol,
752
738
  );
753
739
 
@@ -821,13 +807,8 @@ class FeatureInfo extends Collection {
821
807
  {
822
808
  id,
823
809
  component: ClusterFeatureComponent,
824
- props: reactive({
825
- items,
826
- groups,
827
- }),
828
- state: {
829
- headerTitle: 'featureInfo.cluster.headerTitle',
830
- },
810
+ props: reactive({ items, groups }),
811
+ state: { headerTitle: 'featureInfo.cluster.headerTitle' },
831
812
  slot: WindowSlot.DYNAMIC_LEFT,
832
813
  },
833
814
  vcsAppSymbol,
@@ -7,6 +7,8 @@ export type IframeWmsFeatureInfoViewOptions = import("./abstractFeatureInfoView.
7
7
  * @typedef {import("./abstractFeatureInfoView.js").FeatureInfoViewOptions & { infoFormat: string, title?: string }} IframeWmsFeatureInfoViewOptions
8
8
  * @property {string} infoFormat - Specifies the response format of WMS GetFeatureInfo
9
9
  * @property {string} [title] - optional title for the <iframe>
10
+ * @property {string} [sandbox] - optional sandbox attribute for the <iframe>
11
+ * @property {boolean} [disableSandbox] - optional flag to disable the sandbox attribute for the <iframe>
10
12
  */
11
13
  /**
12
14
  * @class
@@ -26,6 +28,14 @@ declare class IframeWmsFeatureInfoView extends AbstractFeatureInfoView {
26
28
  * @type {string|undefined}
27
29
  */
28
30
  title: string | undefined;
31
+ /**
32
+ * @type {string}
33
+ */
34
+ sandbox: string;
35
+ /**
36
+ * @type {boolean}
37
+ */
38
+ disableSandbox: boolean;
29
39
  /**
30
40
  * Gets feature info from WMS GetFeatureInfo in html/text format
31
41
  * @param {import("./featureInfo.js").FeatureInfoEvent} featureInfo
@@ -6,6 +6,8 @@ import IframeComponent from './IframeComponent.vue';
6
6
  * @typedef {import("./abstractFeatureInfoView.js").FeatureInfoViewOptions & { infoFormat: string, title?: string }} IframeWmsFeatureInfoViewOptions
7
7
  * @property {string} infoFormat - Specifies the response format of WMS GetFeatureInfo
8
8
  * @property {string} [title] - optional title for the <iframe>
9
+ * @property {string} [sandbox] - optional sandbox attribute for the <iframe>
10
+ * @property {boolean} [disableSandbox] - optional flag to disable the sandbox attribute for the <iframe>
9
11
  */
10
12
 
11
13
  /**
@@ -35,6 +37,39 @@ class IframeWmsFeatureInfoView extends AbstractFeatureInfoView {
35
37
  * @type {string|undefined}
36
38
  */
37
39
  this.title = options.title || undefined;
40
+ /**
41
+ * @type {string}
42
+ */
43
+ this.sandbox = options.sandbox || '';
44
+ /**
45
+ * @type {boolean}
46
+ */
47
+ this.disableSandbox = options.disableSandbox || false;
48
+ }
49
+
50
+ /**
51
+ * @param {import("../vcsUiApp.js").default} app
52
+ * @param {import("./featureInfo.js").FeatureInfoEvent} featureInfo
53
+ * @param {import("@vcmap/core").Layer} layer
54
+ * @returns {import("../manager/window/windowManager.js").WindowComponentOptions}
55
+ */
56
+ getWindowComponentOptions(app, featureInfo, layer) {
57
+ const componentOptions = super.getWindowComponentOptions(
58
+ app,
59
+ featureInfo,
60
+ layer,
61
+ );
62
+ const resolution = app.maps.activeMap.getCurrentResolution(
63
+ featureInfo.position,
64
+ );
65
+ componentOptions.props.src =
66
+ layer.featureProvider.wmsSource.getFeatureInfoUrl(
67
+ featureInfo.position,
68
+ resolution,
69
+ getOlProj('EPSG:3857'),
70
+ { INFO_FORMAT: this.infoFormat },
71
+ );
72
+ return componentOptions;
38
73
  }
39
74
 
40
75
  /**
@@ -52,6 +87,7 @@ class IframeWmsFeatureInfoView extends AbstractFeatureInfoView {
52
87
  { INFO_FORMAT: this.infoFormat },
53
88
  ),
54
89
  title: this.title,
90
+ ...(!this.disableSandbox && { sandbox: this.sandbox }),
55
91
  };
56
92
  }
57
93
 
@@ -66,6 +102,12 @@ class IframeWmsFeatureInfoView extends AbstractFeatureInfoView {
66
102
  if (this.title) {
67
103
  config.title = this.title;
68
104
  }
105
+ if (this.sandbox) {
106
+ config.sandbox = this.sandbox;
107
+ }
108
+ if (this.disableSandbox) {
109
+ config.disableSandbox = this.disableSandbox;
110
+ }
69
111
  return config;
70
112
  }
71
113
  }
package/src/i18n/de.d.ts CHANGED
@@ -114,6 +114,7 @@ declare namespace messages {
114
114
  let CesiumMap: string;
115
115
  let OpenlayersMap: string;
116
116
  let ObliqueMap: string;
117
+ let PanoramaMap: string;
117
118
  }
118
119
  namespace menu {
119
120
  let tooltip: string;
@@ -205,8 +206,11 @@ declare namespace messages {
205
206
  export let pin: string;
206
207
  export let close: string;
207
208
  export let add: string;
209
+ let _new: string;
210
+ export { _new as new };
208
211
  export let apply: string;
209
212
  export let cancel: string;
213
+ export let addToMyWorkspace: string;
210
214
  export namespace _import {
211
215
  let submit: string;
212
216
  let fileDrop: string;
@@ -289,6 +293,12 @@ declare namespace messages {
289
293
  let _export: string;
290
294
  export { _export as export };
291
295
  export let exportPath: string;
296
+ export namespace record {
297
+ let standard: string;
298
+ let high: string;
299
+ let inProgress: string;
300
+ let success: string;
301
+ }
292
302
  }
293
303
  export namespace splashScreen {
294
304
  let name_3: string;
@@ -374,6 +384,12 @@ declare namespace messages {
374
384
  export let modifyHeader: string;
375
385
  export let modifyInfo: string;
376
386
  export let styleHeader: string;
387
+ export namespace position {
388
+ let x_1: string;
389
+ export { x_1 as x };
390
+ export let y: string;
391
+ export let z: string;
392
+ }
377
393
  export namespace snapping {
378
394
  let title_14: string;
379
395
  export { title_14 as title };
@@ -453,9 +469,10 @@ declare namespace messages {
453
469
  let title_16: string;
454
470
  export { title_16 as title };
455
471
  export namespace level {
456
- let low: string;
457
- let medium: string;
458
- let high: string;
472
+ export let low: string;
473
+ export let medium: string;
474
+ let high_1: string;
475
+ export { high_1 as high };
459
476
  }
460
477
  }
461
478
  export namespace theme {
@@ -561,10 +578,11 @@ declare namespace messages {
561
578
  }
562
579
  }
563
580
  export namespace notification {
564
- let error: string;
565
- let warning: string;
566
- let information: string;
567
- let success: string;
581
+ export let error: string;
582
+ export let warning: string;
583
+ export let information: string;
584
+ let success_1: string;
585
+ export { success_1 as success };
568
586
  }
569
587
  export namespace datePicker {
570
588
  let today: string;
package/src/i18n/de.js CHANGED
@@ -14,6 +14,7 @@ const messages = {
14
14
  CesiumMap: '3D-Karte',
15
15
  OpenlayersMap: '2D-Karte',
16
16
  ObliqueMap: 'Schrägluftbildkarte',
17
+ PanoramaMap: 'Panoramabildkarte',
17
18
  },
18
19
  menu: {
19
20
  tooltip: 'Menü',
@@ -93,8 +94,10 @@ const messages = {
93
94
  pin: 'Fenster andocken',
94
95
  close: 'Fenster schließen',
95
96
  add: 'Hinzufügen',
97
+ new: 'Neu',
96
98
  apply: 'Anwenden',
97
99
  cancel: 'Abbrechen',
100
+ addToMyWorkspace: 'Zu Mein Arbeitsbereich hinzufügen',
98
101
  import: {
99
102
  submit: 'Importieren',
100
103
  fileDrop: 'Dateien hierher ziehen',
@@ -172,6 +175,12 @@ const messages = {
172
175
  zoom: 'Auf Ausdehnung zoomen',
173
176
  export: 'Flug exportieren',
174
177
  exportPath: 'Flugpfad exportieren',
178
+ record: {
179
+ standard: 'Flug mit Standardauflösung aufzeichnen',
180
+ high: 'Flug mit hoher Auflösung aufzeichnen',
181
+ inProgress: 'Aufzeichnung läuft',
182
+ success: 'Aufzeichnung erfolgreich, der Download startet in Kürze',
183
+ },
175
184
  },
176
185
  splashScreen: {
177
186
  name: 'Splash Screen',
@@ -245,6 +254,11 @@ const messages = {
245
254
  modifyInfo:
246
255
  'Klicke die Symbole in der Überschrift um die selektierten Geometrien zu editieren.',
247
256
  styleHeader: 'Stil',
257
+ position: {
258
+ x: 'Position X',
259
+ y: 'Position Y',
260
+ z: 'Position Z',
261
+ },
248
262
  snapping: {
249
263
  title: 'Fang',
250
264
  help: 'Durch STRG gedrückt halten lässt sich der Fang temporär unterdrücken.',
package/src/i18n/en.d.ts CHANGED
@@ -114,6 +114,7 @@ declare namespace messages {
114
114
  let CesiumMap: string;
115
115
  let OpenlayersMap: string;
116
116
  let ObliqueMap: string;
117
+ let PanoramaMap: string;
117
118
  }
118
119
  namespace menu {
119
120
  let tooltip: string;
@@ -205,8 +206,11 @@ declare namespace messages {
205
206
  export let pin: string;
206
207
  export let close: string;
207
208
  export let add: string;
209
+ let _new: string;
210
+ export { _new as new };
208
211
  export let apply: string;
209
212
  export let cancel: string;
213
+ export let addToMyWorkspace: string;
210
214
  export namespace _import {
211
215
  let submit: string;
212
216
  let fileDrop: string;
@@ -289,6 +293,12 @@ declare namespace messages {
289
293
  let _export: string;
290
294
  export { _export as export };
291
295
  export let exportPath: string;
296
+ export namespace record {
297
+ let standard: string;
298
+ let high: string;
299
+ let inProgress: string;
300
+ let success: string;
301
+ }
292
302
  }
293
303
  export namespace splashScreen {
294
304
  let name_3: string;
@@ -374,6 +384,12 @@ declare namespace messages {
374
384
  export let modifyHeader: string;
375
385
  export let modifyInfo: string;
376
386
  export let styleHeader: string;
387
+ export namespace position {
388
+ let x_1: string;
389
+ export { x_1 as x };
390
+ export let y: string;
391
+ export let z: string;
392
+ }
377
393
  export namespace snapping {
378
394
  let title_14: string;
379
395
  export { title_14 as title };
@@ -453,9 +469,10 @@ declare namespace messages {
453
469
  let title_16: string;
454
470
  export { title_16 as title };
455
471
  export namespace level {
456
- let low: string;
457
- let medium: string;
458
- let high: string;
472
+ export let low: string;
473
+ export let medium: string;
474
+ let high_1: string;
475
+ export { high_1 as high };
459
476
  }
460
477
  }
461
478
  export namespace theme {
@@ -561,10 +578,11 @@ declare namespace messages {
561
578
  }
562
579
  }
563
580
  export namespace notification {
564
- let error: string;
565
- let warning: string;
566
- let information: string;
567
- let success: string;
581
+ export let error: string;
582
+ export let warning: string;
583
+ export let information: string;
584
+ let success_1: string;
585
+ export { success_1 as success };
568
586
  }
569
587
  export namespace datePicker {
570
588
  let today: string;
package/src/i18n/en.js CHANGED
@@ -14,6 +14,7 @@ const messages = {
14
14
  CesiumMap: '3D map',
15
15
  OpenlayersMap: '2D map',
16
16
  ObliqueMap: 'Oblique imagery map',
17
+ PanoramaMap: 'Panorama imagery map',
17
18
  },
18
19
  menu: {
19
20
  tooltip: 'Menu',
@@ -93,8 +94,10 @@ const messages = {
93
94
  pin: 'Dock window',
94
95
  close: 'Close window',
95
96
  add: 'Add',
97
+ new: 'New',
96
98
  apply: 'Apply',
97
99
  cancel: 'Cancel',
100
+ addToMyWorkspace: 'Add to My Workspace',
98
101
  import: {
99
102
  submit: 'Import',
100
103
  fileDrop: 'Drop files here',
@@ -172,6 +175,12 @@ const messages = {
172
175
  zoom: 'Zoom to extent',
173
176
  export: 'Export flight',
174
177
  exportPath: 'Export flight path',
178
+ record: {
179
+ standard: 'Record standard resolution flight',
180
+ high: 'Record high resolution flight',
181
+ inProgress: 'Recording in progress',
182
+ success: 'Recording successful, the download will start shortly',
183
+ },
175
184
  },
176
185
  splashScreen: {
177
186
  name: 'Splash Screen',
@@ -245,6 +254,11 @@ const messages = {
245
254
  modifyInfo:
246
255
  'For modifying the selected feature(s), click on one of the icons in the header above.',
247
256
  styleHeader: 'Style',
257
+ position: {
258
+ x: 'Position X',
259
+ y: 'Position Y',
260
+ z: 'Position Z',
261
+ },
248
262
  snapping: {
249
263
  title: 'Snapping',
250
264
  help: 'Snapping can be temporarily disabled by holding the CTRL key.',
@@ -2,10 +2,11 @@
2
2
  <v-sheet class="overflow-y-auto vcs-legend">
3
3
  <v-expansion-panels
4
4
  variant="accordion"
5
+ flat
5
6
  multiple
6
7
  v-if="entries.length > 0"
7
8
  v-model="panels"
8
- class="rounded-0"
9
+ class="rounded-0 legend-panels"
9
10
  >
10
11
  <vcs-expansion-panel
11
12
  v-for="(entry, i) in entries"
@@ -142,4 +143,7 @@
142
143
  background-color: rgb(var(--v-theme-base-lighten-2));
143
144
  z-index: 1;
144
145
  }
146
+ .legend-panels .vcs-expansion-panel:not(:last-child) {
147
+ border-bottom: 1px solid rgb(var(--v-theme-base-lighten-2));
148
+ }
145
149
  </style>