@eeacms/volto-arcgis-block 0.1.256 → 0.1.257

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.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file. Dates are d
4
4
 
5
5
  Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog).
6
6
 
7
+ ### [0.1.257](https://github.com/eea/volto-arcgis-block/compare/0.1.256...0.1.257) - 7 February 2024
8
+
9
+ #### :hammer_and_wrench: Others
10
+
11
+ - Prettier [manuelmartinezbilbomatica - [`00aa2e9`](https://github.com/eea/volto-arcgis-block/commit/00aa2e921b17404b22c848a7bd3d057328555c5e)]
12
+ - [FEAT] Info widget queries hotspot services [manuelmartinezbilbomatica - [`b9354f5`](https://github.com/eea/volto-arcgis-block/commit/b9354f5ba3e2a6ab7ea88e909cc693c0d3a53aee)]
13
+ - Version format issue solved [manuelmartinezbilbomatica - [`7d967cc`](https://github.com/eea/volto-arcgis-block/commit/7d967cc3b8e0f07d6638d0825869db84fc205db0)]
14
+ - Format issue solved by addin if statement with 'application/json'. Why HotStpot capabilities are not read will be solved later [manuelmartinezbilbomatica - [`3471847`](https://github.com/eea/volto-arcgis-block/commit/34718476b5414389d1c85e41cf68566e9765202e)]
7
15
  ### [0.1.256](https://github.com/eea/volto-arcgis-block/compare/0.1.255...0.1.256) - 31 January 2024
8
16
 
9
17
  #### :hammer_and_wrench: Others
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eeacms/volto-arcgis-block",
3
- "version": "0.1.256",
3
+ "version": "0.1.257",
4
4
  "description": "volto-arcgis-block: Volto add-on",
5
5
  "main": "src/index.js",
6
6
  "author": "European Environment Agency: CodeSyntax",
@@ -556,6 +556,19 @@ class AreaWidget extends React.Component {
556
556
  htmlFor="download_area_select_nuts"
557
557
  >
558
558
  <span>By NUTS</span>
559
+ <a
560
+ href={
561
+ 'https://land.copernicus.eu/en/faq/map-viewer/what-are-nuts'
562
+ }
563
+ target="_blank"
564
+ rel="noopener noreferrer"
565
+ onClick={(e) => e.stopPropagation()}
566
+ onKeyDown={(e) => e.stopPropagation()}
567
+ >
568
+ <span className="map-menu-icon nuts-menu-icon">
569
+ <FontAwesomeIcon icon={['fa', 'info-circle']} />
570
+ </span>
571
+ </a>
559
572
  </label>
560
573
  </div>
561
574
  <div className="nuts-form">
@@ -390,8 +390,9 @@ class InfoWidget extends React.Component {
390
390
  let layerId = this.getLayerName(layer);
391
391
  let url = layer.featureInfoUrl ? layer.featureInfoUrl : layer.url;
392
392
  return this.wmsCapabilities(url).then((xml) => {
393
+ // let version = this.parseCapabilities(xml, 'wms_capabilities')[0].attributes['version'];
393
394
  let version = this.parseCapabilities(xml, 'wms_capabilities')[0]
394
- .attributes['version'];
395
+ .attributes['version'].nodeValue;
395
396
  let format = this.parseFormat(xml, layerId);
396
397
  let times = '';
397
398
  let nTimes = 1;
@@ -419,9 +420,10 @@ class InfoWidget extends React.Component {
419
420
  this.props.view.extent.ymax,
420
421
  HEIGHT: this.props.view.height,
421
422
  WIDTH: this.props.view.width,
422
- X: event.screenPoint.x,
423
- Y: event.screenPoint.y,
423
+ X: Math.round(event.screenPoint.x),
424
+ Y: Math.round(event.screenPoint.y),
424
425
  QUERY_LAYERS: layerId,
426
+ LAYERS: layerId,
425
427
  INFO_FORMAT: format,
426
428
  TIME: times ? times[0] + '/' + times[nTimes - 1] : '',
427
429
  FEATURE_COUNT: '' + nTimes,
@@ -463,19 +465,26 @@ class InfoWidget extends React.Component {
463
465
 
464
466
  parseCapabilities(xml, tag) {
465
467
  let result = xml.getElementsByTagName(tag);
468
+
466
469
  return result;
467
470
  }
468
471
 
469
472
  parseFormat(xml) {
470
- let formats = Array.from(
471
- Array.from(this.parseCapabilities(xml, 'getFeatureInfo')).map(
472
- (f) => f.children,
473
- )[0],
474
- ).map((v) => v.textContent);
475
- let format = formats.filter((v) => v.includes('json'))[0];
476
- if (!format) format = formats.filter((v) => v.includes('html'))[0];
477
- if (!format) format = formats.filter((v) => v.includes('text/xml'))[0];
478
- if (!format) format = formats[0];
473
+ // console.log(parseCapabilities(xml, 'getFeatureInfo'));
474
+ let getFeatureInfo_node = this.parseCapabilities(xml, 'getFeatureInfo');
475
+ let format = false;
476
+ if (getFeatureInfo_node.length > 0) {
477
+ let formats = Array.from(
478
+ Array.from(getFeatureInfo_node).map((f) => f.children)[0],
479
+ ).map((v) => v.textContent);
480
+
481
+ format = formats.filter((v) => v.includes('json'))[0];
482
+ if (!format) format = formats.filter((v) => v.includes('html'))[0];
483
+ if (!format) format = formats.filter((v) => v.includes('text/xml'))[0];
484
+ if (!format) format = formats[0];
485
+ } else {
486
+ format = 'application/json';
487
+ }
479
488
  return format;
480
489
  }
481
490
 
@@ -701,6 +701,16 @@ class MenuWidget extends React.Component {
701
701
  }
702
702
  }
703
703
  }
704
+ layers.forEach((layer, index) => {
705
+ let activeLayers = document.querySelectorAll('.active-layer');
706
+ activeLayers.forEach((item) => {
707
+ if (layer === item.getAttribute('layer-id')) {
708
+ item.parentElement.insertBefore(item, activeLayers[index]);
709
+ }
710
+ });
711
+ });
712
+ this.layersReorder();
713
+ this.saveLayerOrder();
704
714
  }
705
715
  });
706
716
  });
@@ -331,16 +331,16 @@ div.esri-popover
331
331
  padding-top: 0.5rem;
332
332
  border-width: 2px;
333
333
  border-style: solid none none none;
334
- border-top: #a0b128;
334
+ border-color: #a0b128;
335
335
  margin-bottom: 1rem;
336
336
  font-weight: bold;
337
337
  }
338
338
 
339
- .ccl-form {
339
+ .area-panel .ccl-form {
340
340
  padding-bottom: 0.5rem !important;
341
341
  border-width: 2px;
342
342
  border-style: none none solid none;
343
- border-bottom: #a0b128;
343
+ border-color: #a0b128;
344
344
  margin-left: 1rem !important;
345
345
  }
346
346
 
@@ -348,6 +348,10 @@ div.esri-popover
348
348
  margin-top: 0.5rem;
349
349
  margin-left: 2rem;
350
350
  }
351
+
352
+ label.ccl-form-radio-label span.nuts-menu-icon {
353
+ margin-left: 9rem;
354
+ }
351
355
  /* Left menu */
352
356
  .map-menu {
353
357
  position: relative;