GuideComposantsHooksFonctionsTypesTokensCode source sur GitHub
Apparence
Langue
Pages
Les emplacements

afterSignIn

Une étape que le plugin dessine juste après la connexion, avant Qui lit ? et avant l'app. Elle sert à demander une chose avant d'entrer : choisir un foyer, accepter de nouvelles conditions…

Où dans Hodi

Juste après la connexion d'une personne, avant l'écran Qui lit ? et avant l'app. La personne ne voit cette étape qu'une fois par connexion.

Si plusieurs plugins donnent un afterSignIn, Hodi affiche celui du premier. L'admin du serveur qui n'a pas de foyer ne voit jamais cette étape : il arrive directement dans l'espace Serveur.

Exemple

Cette étape liste les foyers de la personne. Un clic sur un foyer appelle une route du plugin, puis done() laisse la personne entrer dans l'app.

web/public.tsx
import { Button, StepPage, definePlugin, usePluginPublicApi } from 'hodi:sdk'

const WhichHousehold = ({ done }) => {
  const publicApi = usePluginPublicApi()
  const pick = async (id) => {
    await publicApi('/household', { method: 'POST', body: JSON.stringify({ id }) })
    done()
  }
  return (
    <StepPage title="Quel foyer ?">
      <Button onClick={() => pick('dupont')}>Famille Dupont</Button>
    </StepPage>
  )
}

definePlugin({ afterSignIn: WhichHousehold })

Les props

Props? : facultatif
layout'desktop' | 'phone'

La taille de l'écran.

done() => void

Termine l'étape : la personne entre dans l'app.

À savoir

  • Si l'étape du plugin plante : Hodi propose d'entrer quand même, la personne n'est jamais bloquée.
  • Un rechargement de la page : la personne revient sur l'étape, tant que done() n'a pas été appelé.