-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tech - Rendre la side window indépendante #3668
Conversation
a0b977f
to
3b203f2
Compare
Soucis actuels :
handleBroadcastChannelMessage: case MessageType.DispatchAction:
if (message.stampedAction) {
if (message.type.includes('monitorfishApi/executeQuery/fulfilled')) {
this.#updateCacheManually(this.#dispatch!, message.stampedAction.meta, message.stampedAction.payload)
return
}
this.#dispatch!(message.stampedAction)
}
// eslint-disable-next-line no-useless-return
return #updateCacheManually(dispatch, args, payload) {
dispatch(monitorfishApi.util.upsertQueryData(args.endpointName, args.meta.arg.endpointName, (draft) => {
Object.assign(draft, payload)
}))
}
|
Après discussion, il est peut-être plus simple de ne pas gérer la synchro des caches RTKQ. Répartition des tâches :
|
987f887
to
5cab2a8
Compare
Quality Gate passedIssues Measures |
Fixed by MTES-MCT/monitor-ui#1382 |
## Linked issues - cherry-pick depuis la PR #3668 ---- - [ ] Tests E2E (Cypress)
Cette PR ajoute une synchronisation du store Redux entre plusieurs onglets navigateur ayant ouvert MonitorFish.
Cela permet d'ouvrir la fenêtre secondaire comme une URL indépendante, qu'elle doit ouvert via
windows.open()
ou via un nouvel onglet, tout en conservation ses interactions avec la fenêtre principale.Caution
Il faut garder en tête que le state des slides est synchronisé mais les states Redux RTK, donc les données provenants de l'API, ne le sont pas.
Dans les quelques cas potentiels où c'est une nécessité, il est important de le prendre en compte :
Je n'ai pas enquêté sur le sujet de savoir comment synchroniser RTK car j'ai peur d'y perdre du temps. Mais il n'est pas impossible qu'il y ait une solution aisée pour régler ce soucis.
Linked issues