Published April 21, 2026 | Version v2.9.0
Software Open

geonetwork/geonetwork-ui: v2.9.0

Description

Welcome to the 2.9.0 release of GeoNetwork-UI!

This release takes DataHub deployments to the next level by offering the entire application as a webcomponent, allowing for seamless integration into any website. We've strengthened DataHub's ecosystem integration: you can now launch datasets in MapStore with transparency preserved or jump directly into the Metadata-Editor for quick updates. We've also updated the UI to ensure all thumbnails now maintain a consistent square aspect ratio. The search experience has also been enhanced, now defaulting to relevancy-based sorting whenever a user enters a query.

Our main contributors on this release are Géo2France, Métropole Européenne de Lille, INRAE, Département de l'Isère and DataGrandEst.

What's Changed

New features

Datahub

  • [Datahub] Add WMS style selector in map preview by @ronitjadhav in https://github.com/geonetwork/geonetwork-ui/pull/1497
  • [Datahub]: open editor from template url by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1529

Webcomponent

  • Introduce a Datahub webcomponent by @jahow in https://github.com/geonetwork/geonetwork-ui/pull/1511
  • Fix to the API path used in the gn-datahub web component by @jahow in https://github.com/geonetwork/geonetwork-ui/pull/1539
  • [Webcomponents] Correctly initialize UI language used in gn-datahub by @jahow in https://github.com/geonetwork/geonetwork-ui/pull/1542

Fixes and improvements

  • [Package]: export records repository interface by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1455
  • Sort by relevancy on user query input by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1495
  • Better limits on OGC API Features URLs - get dataset by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1510
  • Update Thumbnail Sizes and Positions by @ronitjadhav in https://github.com/geonetwork/geonetwork-ui/pull/1521
  • Don't reject on first error when getting feature types by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1527
  • Better limits on OGC API Features URLs - download links by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1528
  • Export common domain model - GPF API DL BREAKING CHANGE by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1550

Datahub

  • [Datahub]: add presentation form to autocomplete payload by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1454
  • [Datahub]: Search only once in fuzzy autocomplete by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1461
  • [Datahub]: reuse and website icon alignment by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1470
  • [DataHub]: Support search by reuse without cl_presentationForm by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1465
  • [Datahub]: Show STAC tab only if items link by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1472
  • [Datahub]: get first json format for ogc features download by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1474
  • [Datahub]: Reformat html to keep only one space in header date by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1482
  • translations - CORS error message made clearer by @fvanderbiest in https://github.com/geonetwork/geonetwork-ui/pull/1453
  • [Datahub]: use contactsForResource on reuse too by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1493
  • [Datahub] Add ability to disable default search presets by @ronitjadhav in https://github.com/geonetwork/geonetwork-ui/pull/1509
  • [Datahub] Keep Y-axis dropdown visible but disabled when aggregation is "count" by @ronitjadhav in https://github.com/geonetwork/geonetwork-ui/pull/1514
  • [Datahub] WMS transparency support via ${mime_type} in external viewer URL template and format support in internal map viewer by @ronitjadhav in https://github.com/geonetwork/geonetwork-ui/pull/1505
  • [Datahub] Disable aggregation field when no numeric columns and fix Y axis alignment by @ronitjadhav in https://github.com/geonetwork/geonetwork-ui/pull/1538
  • [Datahub] Preserve direct download files with same name but different URLs by @ronitjadhav in https://github.com/geonetwork/geonetwork-ui/pull/1535

Metadata-Editor

  • [Editor]: set configuration from facade by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1483
  • [Metadata-Editor]: title update on change by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1496
  • Remove static favicon to let config default.toml set it by @jeanmi151 in https://github.com/geonetwork/geonetwork-ui/pull/1513

Webcomponents

  • Filter results in search and results wc by @maxcollombin in https://github.com/geonetwork/geonetwork-ui/pull/1458
  • Fix search and results wc records catalog redirection by @maxcollombin in https://github.com/geonetwork/geonetwork-ui/pull/1433
  • [Webcomponent]: correctly build link from npm dev version by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1494

Documentation

  • Documentation: update custom-app.md by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1468
  • Documentation: ElasticSearch by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1469
  • docs: classification system by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1490
  • Use the Doc website to showcase Web Components & Standalone Search by @jahow in https://github.com/geonetwork/geonetwork-ui/pull/1499
  • Docs: fix <gn-datahub> config file missing by @jahow in https://github.com/geonetwork/geonetwork-ui/pull/1522
  • [Documentation]: search preset updates by @LHBruneton-C2C in https://github.com/geonetwork/geonetwork-ui/pull/1526

Security updates

  • chore(deps): bump immutable from 5.1.4 to 5.1.5 by @dependabot[bot] in https://github.com/geonetwork/geonetwork-ui/pull/1500
  • chore(deps): bump svgo from 3.3.2 to 3.3.3 by @dependabot[bot] in https://github.com/geonetwork/geonetwork-ui/pull/1501
  • chore(deps): bump tar and @angular/cli by @dependabot[bot] in https://github.com/geonetwork/geonetwork-ui/pull/1502
  • chore(deps): bump storybook from 9.1.17 to 9.1.19 by @dependabot[bot] in https://github.com/geonetwork/geonetwork-ui/pull/1492
  • chore(deps-dev): bump basic-ftp from 5.0.5 to 5.2.0 by @dependabot[bot] in https://github.com/geonetwork/geonetwork-ui/pull/1491
  • chore(deps): bump @isaacs/brace-expansion from 5.0.0 to 5.0.1 by @dependabot[bot] in https://github.com/geonetwork/geonetwork-ui/pull/1473
  • chore: remove axios dependency by @jahow in https://github.com/geonetwork/geonetwork-ui/pull/1536

Breaking change

The previously exported TermBucket interface from libs/feature/record/src/lib/gpf-api-dl/gpf-api-dl.component.ts has been renamed to GpfApiDlTermBucket to be more specific and not overlap with the newly exported TermBucket interface from libs/common/domain/src/lib/model/search/aggregation.model.ts.

New configuration keys

# Optional; URL template allowing opening datasets in an editor; if set, applications such as the Datahub will offer a button in the header to open the currently-viewed dataset in an editor.
# The template must include the following placeholders, which allow applications to inject the correct values when generating the final URL:
# ${record_id}: identifier of the record
# Example for an integration with the Metadata-Editor:
# edit_url_template = "/metadata-editor/edit/${record_id}"
# Optional; if true, the default pre-configured searches ("The latest" and "The most popular")
# will not be shown under the main search bar. Defaults to false.
# do_not_use_default_search_preset = false

New ${mime_type} placeholder in external_viewer_url_template

# The template must include the following placeholders, which allow the datahub to inject the correct values when adding a layer to a viewer:
# ${service_url}: URL of the OWS or geojson file
# ${service_type}: Type of the OWS or geojson file; currently supported WMS, WFS, GEOJSON
# ${layer_name}: Name of the layer
# ${mime_type}: Preferred image format for WMS layers; resolves to image/png for WMS layers backed by vector data (WFS), image/jpeg otherwise; empty for non-WMS layers
# Be careful to use englobing single quotes, if your template syntax includes JSON (with double quotes)
# Examples:
# mapfishapp template:
# external_viewer_url_template = 'https://dev.geo2france.fr/mapfishapp/?owsurl=${service_url}&layername=${layer_name}&owstype=${service_type}Layer'
# mapstore template
# external_viewer_url_template = 'https://dev.geo2france.fr/mapstore/#/?actions=[{"type":"CATALOG:ADD_LAYERS_FROM_CATALOGS","layers":["${layer_name}"],"sources":[{"url":"${service_url}","type":"${service_type}"}],"options":[{"format":"${mime_type}"}]}]'

New Contributors

  • @jeanmi151 made their first contribution in https://github.com/geonetwork/geonetwork-ui/pull/1513

Full Changelog: https://github.com/geonetwork/geonetwork-ui/compare/v2.8.0...v2.9.0

Files

geonetwork/geonetwork-ui-v2.9.0.zip

Files (9.6 MB)

Name Size Download all
md5:da305e0b112671e5d9318ebf459f32df
9.6 MB Preview Download

Additional details

Related works