Startseite / Blog / map.apps 4.12 - What's New

map.apps 4.12 - What's New

Dennis Payk 2. September 2021

Mit map.apps 4.12 steht eine neue Version von map.apps zum Download bereit, die viele neue Funktionen und Verbesserungen mit sich bringt. Außerdem enthält dieses Release ein Update der Basis-Technologie. Dieser Artikel gibt eine Übersicht über alle wesentlichen Neuerungen und stellt diese im Detail vor.

Eine neue Suche für map.apps

Mit dieser Version wird eine neue, modernisierte Suchfunktion eingeführt. Sowohl die Benutzeroberfläche als auch die dahinter arbeitende Such-API wurden komplett überarbeitet und werden als neue Bundles bereitgestellt.

Mit der neuen Suche ist es möglich, mehrere Themen gleichzeitig zu durchsuchen, ohne vorher ein Thema festlegen zu müssen. Die Ergebnisse werden nach Themen gruppiert angezeigt. Nutzer müssen sich dadurch nicht mehr vorab entscheiden, in welchem Thema sie suchen möchten, sondern können direkt mit der Eingabe des Suchbegriffs die Suche starten.

Die neue Oberfläche ist zudem besser auf mobilen Geräten nutzbar, da mehr Platz für die Ergebnisdarstellung genutzt wird und Ergebnisse mehrzeilig angezeigt werden können.

Hinweise: Das Bundle omnisearch steht weiterhin zur Verfügung, wir empfehlen jedoch, die neue Suche zu verwenden. Die neue Suche ist voll kompatibel mit den Extensions map.apps Smart Search und map.apps SDI, so dass z.B. eine Suche im BKG-Suchdienst als ein Thema in der Suche eingebunden werden kann. Alle Details zur neuen Suche können Sie der Dokumentation entnehmen.

Intelligenter App-Editor

Die "Manuelle Konfiguration" wird mit dieser Version vom komplett modernisierten, neuen "App-Editor" abgelöst. Der App-Editor erleichtert die Konfiguration von Apps durch Vorschlaglisten, Validierungen und Hinweise.

Fehlerhafte Konfigurationen können so leichter vermieden werden. Außerdem kann zu jedem Bundle nun direkt zur passenden Dokumentation gewechselt werden. Bei Eingabe eines Bundle-Namens erhalten Sie eine Liste mit Vorschlägen der in Ihrer Installation verfügbaren Bundles. Sollte ein Bundle nicht (mehr) in Ihrer Installation verfügbar sein, erhalten Sie dazu eine Warnung. Eine Übersicht aller neuen Funktionen im App-Editor finden Sie auf der Seite App konfigurieren in der Dokumentation.

Domain-Bundles effektiver nutzen

Mit Hilfe von Domain-Bundles können schon seit map.apps 4.4 Fachlichkeiten in Bundles ausgelagert werden. Ein solches Bundle kann in beliebig vielen Apps wiederverwendet werden und stellt die jeweiligen Inhalte (Karten, Suche, Popups etc.) einheitlich in allen Apps dar. Bei Aktualisierungen genügt der Austausch des Bundles an zentraler Stelle und alle Apps sind auf dem neuesten Stand.

Um die Nutzung der Domain-Bundles noch effektiver zu machen, werden in diesem Release zwei neue Optionen eingeführt:

  1. Es kann nun definiert werden, ob die durch ein Domain-Bundle zu einer App hinzugefügten Kartenlayer oberhalb oder unterhalb der in der App definierten Layer eingefügt werden.
  2. Zudem können in einer App Layerkonfigurationen überschrieben werden. Dadurch wird es zum Beispiel möglich, die über ein Domain-Bundle hinzugefügten fachlichen Kartenlayer nur in bestimmten Fach-Apps beim Start der App zu aktivieren und in anderen als nicht initial sichtbar zu ergänzen.

Erweiterter Support für OGC Dienste

API - Features - Part 2

map.apps unterstützt jetzt OGC API - Features - Part 2, wodurch die Nutzung zusätzlicher Raumbezugssysteme ermöglicht wird. Es können nun alle Layer in WGS84 und WebMercator sowie allen anderen vom Dienst unterstützen räumlichen Bezugssystemen genutzt werden.

WFS Layer

Durch einen neuen Layer-Typ ist nun die Nutzung von OGC Web Feature Services (WFS) möglich. Der genutzte Dienst muss in der Version WFS 2.0.0 vorliegen und das Ausgabeformat GeoJSON unterstützen.

Verbesserung der Karteninhaltsteuerung (TOC)

Beim Aktivieren einer Karte in der Karteninhaltsteuerung wird geprüft, ob die übergeordneten Elemente ebenfalls sichtbar geschaltet sind (z.B. Gruppen-Layer). Falls dies nicht der Fall ist, werden sie automatisch aktiviert, damit die eingeschaltete Karte sofort sichtbar ist.

TypeScript

Mit dieser Version werden erstmals in TypeScript geschriebene Bundles ausgeliefert. Unser mittelfristiges Ziel ist die Umstellung der kompletten JavaScript Codebasis auf TypeScript. Der Einsatz von TypeScript erfreut sich unter Entwicklern großer Beliebtheit.

Die Typsicherheit reduziert die Wahrscheinlichkeit von Fehlern im Code und Schnittstellen zur Erweiterung von map.apps (z.B. map-actions oder Stores) können explizit gemacht werden. Ein Entwickler kann so direkt beim Programmieren sehen, ob eine Schnittstelle richtig benutzt wird. Die Programmierung gegen diese Schnittstellen wird dank einer Autovervollständigung produktiver und weniger fehleranfällig. Private Implementierungsdetails können zudem besser versteckt oder als solche gekennzeichnet werden. Dies macht die Entwicklung gegen map.apps einfacher und übersichtlicher. Außerdem können so Fehler vermieden werden, die bei Updates auf neuere Version auftreten könnten, weil gegen interne Schnittstellen programmiert wurde.

Die bereits vorhandenen map.apps Typings können direkt im map.apps 4 Developers Projekt genutzt werden. Ein Blog-Artikel im Developer Network wird die Nutzung und ihre Vorteile demnächst im Detail erläutern.

Weitere Neuerungen für Entwickler sind in den Release Notes beschrieben.

Weitere neue Funktionen und Verbesserungen

  • Die von map.apps als technische Basis genutzte ArcGIS API for JavaScript wird mit diesem Release auf die Version 4.20 aktualisiert. Dies führt zu zahlreichen Verbesserungen und Fehlerbehebungen in der Basistechnologie.

  • Die Editier-Funktionalität bietet nun ein einfaches Snapping (Fangen) auf bestehenden Stützpunkten und Kanten an.

  • Es kann nun ein timeExtent konfiguriert werden. Eine 2D- oder 3D-Ansicht zeigt dann nur die Objekte aus einem Layer an, die in den entsprechenden Zeitraum fallen.

  • Das Voroptimieren einer App kann nun über das map.apps Maven Plugin beim Upload einer App angestoßen werden.

  • Der zoomto Map Action kann nun ein expand Faktor mitgegeben werden, so dass ein größerer Kartenbereich um das Objekt herum dargestellt wird, wenn darauf gezoomt wird.

  • Es kann nun konfiguriert werden, ob Dateianhänge im Default Popup als Liste oder Vorschau angezeigt werden.

  • Die Lade-Anzeige in der Karte wird nun nicht mehr bei clientseitigen Aktionen wie zum Beispiel Sketching oder Editing angezeigt. Sie wird dadurch insgesamt seltener angezeigt.

map.apps Linie 3

Dies ist das letzte Release in dem die Bundles der Linie 3 mit ausgeliefert werden. Ab map.apps 4.13 werden die Bundles der Linie 3 nicht mehr im Auslieferungsverzeichnis enthalten sein. Weitere Details zum Lebenszyklus von map.apps Linie 3 können Sie der Lifecycle Übersicht  entnehmen.

Abschließende Hinweise

Neben den genannten Punkten enthält dieses Release weitere Verbesserungen und Fehlerbehebungen. Eine vollständige Liste aller Änderungen finden Sie wie immer in den Release Notes.