UrlQuery
UrlQuery
Nom fonctionnel: Paramètres URL
À quoi sert ce widget ?
Lit et applique des paramètres URL pour ouvrir le viewer dans un état prédéfini.
Conseil: un viewer “trop outillé” devient vite bruyant. Activez ce widget uniquement s’il sert un parcours utilisateur clair.
Quand l’activer
- Quand l’utilisateur doit piloter sa vue (zoom, couches, plein écran, repérage).
- Quand vous voulez des contrôles cohérents et immédiatement compréhensibles, quel que soit le moteur cartographique.
- Quand vous cherchez à réduire les frictions (moins de clics, moins d’aller-retour, plus de lisibilité).
En clair
- Côté utilisateur: Le confort d’usage augmente fortement dès la première prise en main.
- Côté intégration: Vérifiez la cohérence entre projection, échelle, coordonnées et basemaps.
Prise en main
Accéder au widget
- Ouvrez le widget depuis la barre d’outils (ou via son bouton dédié).
- Vérifiez son emplacement et sa lisibilité (desktop et mobile).
Le configurer sans se tromper
- Choisissez un conteneur adapté (toolbar, drawer, dialog) pour éviter de masquer la carte.
- Validez les interactions avec les autres widgets (raccourcis, activation simultanée, conflits).
Ce que l’utilisateur voit
- Lecture des paramètres URL au chargement du viewer.
- Application des filtres et états transmis dans l’adresse.
- Support des liens profonds pour ouvrir une vue ciblée.
Parcours utilisateur (le plus courant)
- Construisez une URL avec les paramètres utiles à votre scénario.
- Ouvrez la carte depuis ce lien pour vérifier l’état reconstitué.
- Utilisez ce mécanisme dans vos emails, tickets et portails métier.
Ajouter des services par URL
Pour ouvrir le viewer avec des services déjà ajoutés, utilisez l’ancre #ADD.
Exemples:
#ADD|METADATAID=<uuid>pour ajouter une donnée depuis sa fiche catalogue.#ADD|URL=<url-encodee>|TYPE=ARCGIS_DYNAMIC|LABEL=<label-encode>pour ajouter un service depuis son endpoint.#ADD|METADATAID=<uuid>#ADD|URL=<url-encodee>|TYPE=WMSpour ajouter plusieurs services.
Voir la recette complète: Ajouter des services par URL.
Synchroniser l’emprise dans l’URL
L’ancre BBOX est mise à jour automatiquement après un zoom ou un déplacement de la carte. Cette synchronisation est activée par défaut et permet de rouvrir le viewer au même endroit en copiant son URL.
Le format lu est xmin,xmax,ymin,ymax[,srid]. Sans SRID dans l’URL, la projection configurée dans le widget est utilisée ; elle vaut Lambert 72 (EPSG:31370) par défaut afin de conserver la compatibilité avec les favoris WOM 4.x.
Exemples :
#BBOX=199604,214839,132322,139551est lu en Lambert 72 avec la configuration par défaut.#BBOX=649328,665262,650000,666000,3812est lu dans la projection indiquée par le cinquième nombre.
{ "type": "BBOX", "wkid": 31370, "syncToUrl": true}À l’écriture, le SRID est toujours ajouté. Pour une projection métrique, la partie décimale des coordonnées est supprimée afin de garder une URL compacte :
#BBOX=199604,214839,132322,139551,31370
Utilisez syncToUrl: false pour désactiver ce comportement. Dans une iframe, configurez useParentWindowHash: true pour lire et synchroniser le hash de la fenêtre parente. Si celle-ci est d’une autre origine, le widget utilise automatiquement l’URL de l’iframe.
{ "useParentWindowHash": true}Lire un point depuis l’URL
L’ancre historique est COOR (et non COORD). Elle suit le même principe : x,y[,srid]. Sans troisième nombre, sa projection par défaut est également Lambert 72 et peut être adaptée dans la configuration du widget :
{ "type": "COOR", "queryConfig": { "type": "COORDS", "wkid": 4326 }}Exemples : #COOR=199604,132322 utilise le défaut configuré ; #COOR=4.3675,50.8466,4326 utilise explicitement WGS84. Le widget lit cette ancre mais ne l’écrit pas lors de la navigation.
Exemples concrets
- Accélérer la lecture de carte (moins de clics pour zoomer, afficher/masquer, contextualiser).
- Donner un repère clair à l’utilisateur (échelle, coordonnées, état de la vue).
- Réduire les frictions sur les actions répétitives (plein écran, recentrage, bascule de contexte).
Configuration (aperçu)
| Option | Type | Défaut | Description |
|---|---|---|---|
widgetId | string | - | Identifiant unique de l’instance UrlQuery. |
active | boolean | false | Active l’ouverture du widget au démarrage. |
inToolbar | boolean ou objet ou string | selon widget | Définit si le widget est visible dans une toolbar, et sous quelle forme. |
container | string ou objet | selon widget | Choisit le conteneur de rendu (drawer, dialog, floating, toolbar-tabs, hidden). |
Pour le détail complet (et toujours à jour), utilisez la référence technique et le schéma ci-dessous.
Liens techniques et code
- Référence technique du widget: Référence technique du widget
- Schéma principal:
schemas/urlQueryFullConfig - API technique du widget:
types/UrlQueryFullConfig - Code source (déclaration):
packages/common/src/lib/widgets/url-query/url-query.declaration.ts - Code source (config):
packages/common/src/lib/widgets/url-query/url-query.config.ts
Exemple minimal (copier-coller)
{ "widgetId": "url-query", "widgetClass": "UrlQuery", "active": false, "inToolbar": true, "config": {}}Exemple avancé
{ "widgetId": "url-query-advanced", "widgetClass": "UrlQuery", "active": true, "handleOpenAtStartup": false, "inToolbar": { "type": "button", "toolbarId": "default-toolbar", "order": 10 }, "onActivate": { "deactivate": { "classes": [] } }, "config": {}}Points d’attention
- Un bouton peut être bien configuré mais masqué par le conteneur.
- La géolocalisation dépend des permissions navigateur et du HTTPS.
- Le comportement peut différer légèrement entre moteurs cartographiques.
Dépannage
| Symptôme | Vérification rapide |
|---|---|
| Le bouton est visible mais inactif. | Vérifiez l’état active et les interactions concurrentes. |
| Le recentrage est imprécis. | Contrôlez la projection et les coordonnées utilisées. |
FAQ
Ces widgets sont-ils adaptés au mobile ?
Oui, avec des ajustements d’ergonomie selon la taille écran.
Peut-on les regrouper dans la même toolbar ?
Oui, c’est recommandé pour un parcours simple.
Captures à ajouter
- (Capture à ajouter)
/assets/screenshots/TODO/url-query-01.png: widget ouvert avec configuration standard. - (Capture à ajouter)
/assets/screenshots/TODO/url-query-02.png: interaction principale et résultat attendu.
Liens PDF source
- Aucun PDF de référence détecté automatiquement pour ce widget.