ConfirmButton
Interaction
Engine\Native\ConfirmButton est l'équivalent natif d'Engine\Dialogs\ConfirmButton : un vrai android.app.AlertDialog avec des boutons Confirmer/Annuler, plutôt qu'un confirm() JavaScript hébergé dans une WebView. En interne, il compose un Button avec l'action fixe dialog:confirm et un meta portant le message, le titre et l'action réelle à exécuter. $action ne remonte à PHP (via le même aller-retour fieldValues+refetch que toute action submit:) que si l'utilisateur tape effectivement sur Confirmer — la même garantie « ne pas appeler le serveur avant confirmation » que phpxDialogs.confirm() côté HTML.
Exemple
<?php
use Engine\Native\ConfirmButton;
$deleteButton = new ConfirmButton(
message: 'Voulez-vous vraiment supprimer ce document ?',
action: 'submit:delete-document',
label: 'Supprimer',
title: 'Confirmation',
);Un bouton rouge « Supprimer » qui ouvre d'abord une boîte de dialogue native ; l'action submit:delete-document ne part vers PHP que si l'utilisateur confirme.
Constructeur
| Paramètre | Type | Défaut | Description |
|---|---|---|---|
| message | string | — | Corps du message affiché dans la boîte de dialogue. |
| action | string | — | Action réelle exécutée seulement si l'utilisateur confirme. |
| label | string | 'Confirmer' | Libellé du bouton déclencheur. |
| title | string | '' | Titre de la boîte de dialogue. |
À savoir. Le bouton généré force un fond de couleur « danger » (via
Tokens::danger()) — il n'y a pas de paramètre pour personnaliser sa couleur, contrairement auButtonbrut.