Résoudre la première vue
Vue d'ensemble
Nous avons vu dans le chapitre précédent comment résoudre l’entité Project associée au contexte client lors du décrochage sur l’OAV. La résolution de la première vue du parcours correspond à la mécanique suivante, qui est exécutée par le moteur OIP pendant la phase de décrochage.
La fonction de rappel process.resolveFirstView, transmise en paramètre de la fonction start dans le fichier server/index.mjs de votre projet, permet de déterminer la première vue du parcours à afficher lors de l’initialisation ou de la reprise de la navigation.
Fonction process.resolveFirstView
Rôle
La fonction de rappel resolveFirstView :
- reçoit un objet contenant les informations nécessaires pour déterminer la vue initiale ;
- doit retourner l'identifiant de la vue souhaitée.
Paramètres reçus
Propriété | Description |
|---|---|
projectId | Identifiant de l’entité Project associée au décrochage |
viewId | Identifiant de la dernière vue active du parcours — présent uniquement si une session de navigation précédente existe |
metadata | Metadata associées à la dernière vue active, si disponibles |
Ces informations permettent d’implémenter une logique conditionnelle, par exemple pour :
- reprendre la navigation à la dernière vue connue ;
- décider de la première vue selon l'état du projet associé ;
- naviguer vers une vue alternative selon des règles métier.
Valeur de retour
La fonction doit toujours retourner l’identifiant d’une vue.
Cette vue deviendra la première vue du parcours pour la nouvelle session de navigation.
Exemple complet d’intégration
import { start } from '@fasstech/oip-starter-utils/server';
import { resolveFirstView } from './resolve-first-view.mjs'
const serverCfg = {
process: {
resolveFirstView,
},
// ...
};
const { app } = await start(serverCfg);Dans cet exemple :
- la première vue du parcours est résolue grâce à la fonction de rappel resolveFirstView ;
- viewId est retourné (s'il existe) pour gérer la reprise de navigation ;
- il est possible de consommer les paramètres projectId et metadata pour déterminer dynamiquement la première vue à afficher.
Résumé
Lors du décrochage, après la résolution du projet :
- process.resolveFirstView détermine la première vue du parcours ;
- La fonction reçoit { projectId, viewId, metadata } en paramètre ;
- Un identifiant de vue valide est attendu en retour ;
- resolveFirstView permet d’implémenter des règles métier conditionnelles (reprise, état du projet, etc.).
La fonction de rappel resolveFirstView doit être définie dans la configuration du serveur passée à la fonction start dans server/index.mjs.