Configuration requise
Configuration Auth0 requise – Assurez-vous que votre locataire est configuré avec l’
API My Organization. Afficher le guide de configuration
→
Installation
L’exécution de la commande shadcn installe également la dépendance @auth0/universal-components-core
pour les utilitaires partagés et l’intégration Auth0..
Démarrage rapide
Exemple d’intégration complète
Exemple d’intégration complète
Bien que cet exemple utilise une application à page unique React, les configurations des propriétés (schéma, customMessages, style, etc.) s’appliquent également aux configurations Next.js et shadcn.
Propriétés
Propriétés d’affichage
Les propriétés d’affichage contrôlent la manière dont le composant s’affiche sans altérer son comportement. Veuillez les utiliser pour masquer des sections ou activer le mode lecture seule.| Propriété | Type | Description |
|---|---|---|
readOnly | boolean | Désactiver toutes les opérations du domaine. Valeur par défaut : false |
hideHeader | boolean | Masquer la section d’en-tête. Valeur par défaut : false |
Propriétés d’action
Les accessoires d’action gèrent les interactions des utilisateurs et définissent ce qui se produit lorsque les utilisateurs effectuent des opérations liées au domaine. Veuillez utiliser les hooks de cycle de vie (onBefore, onAfter) pour intégrer le routage et l’analyse de votre application.
| Propriété | Type | Description |
|---|---|---|
createAction | ComponentAction<Domain> | Créer une action de domaine. Détails |
verifyAction | ComponentAction<Domain> | Vérifier l’action du domaine. Détails |
deleteAction | ComponentAction<Domain> | Supprimer l’action du domaine. Détails |
associateToProviderAction | ComponentAction<Domain, IdentityProvider> | Associer un domaine à un fournisseur. Détails |
deleteFromProviderAction | ComponentAction<Domain, IdentityProvider> | Supprimer le domaine du fournisseur. Détails |
onOpenProvider | (provider: IdentityProvider) => void | Rendez-vous au fournisseur depuis le modal de configuration. Détails |
onCreateProvider | () => void | Rendez-vous à Créer un flux de fournisseur. Détails |
createAction
Type :ComponentAction<Domain>
Contrôle le flux de création de domaines. Utilisez onAfter pour suivre l’ajout de nouveaux domaines.
Propriétés :
disabled– Désactiver le bouton « Ajouter un domaine »onBefore(domain)– S’exécute avant la création du domaine. Renvoiefalsepour empêcher la création (p. ex., si le format du domaine n’est pas valide).onAfter(domain)– S’exécute une fois le domaine créé avec succès. À utiliser pour afficher une notification ou suivre l’événement.
verifyAction
Type :ComponentAction<Domain>
Contrôle le flux de vérification du domaine. La vérification du domaine prouve la propriété via l’enregistrement DNS TXT.
Propriétés :
disabled– Désactiver le bouton de vérificationonBefore(domain)– S’exécute avant la tentative de vérification. Renvoiefalsepour empêcher la vérification (p. ex., pour confirmer que le DNS est configuré).onAfter(domain)– S’exécute une fois le domaine vérifié avec succès. À utiliser pour afficher une notification de réussite.
deleteAction
Type :ComponentAction<Domain>
Contrôle la suppression du domaine. Il est recommandé d’utiliser onBefore pour la confirmation, car cette opération est irréversible.
Propriétés :
disabled– Désactiver le bouton de suppressiononBefore(domain)– S’exécute avant la suppression. Renvoiefalsepour empêcher la suppression (recommandé pour les fenêtres de confirmation).onAfter(domain)– S’exécute une fois le domaine supprimé avec succès. À utiliser pour suivre l’événement ou afficher une notification.
associateToProviderAction
Type :ComponentAction<Domain, IdentityProvider>
Contrôles associant un domaine vérifié à un fournisseur SSO. Seuls les domaines vérifiés peuvent être associés.
Propriétés :
disabled– Désactiver l’action associéeonBefore(domain, provider)– S’exécute avant l’association. Renvoiefalsepour empêcher l’association.onAfter(domain, provider)– S’exécute une fois que le domaine a été associé avec succès au fournisseur.
deleteFromProviderAction
Type :ComponentAction<Domain, IdentityProvider>
Contrôles permettant de supprimer l’association d’un domaine avec un fournisseur SSO.
Propriétés :
disabled– Désactiver l’action de dissociationonBefore(domain, provider)– S’exécute avant la suppression. Renvoiefalsepour empêcher la suppression.onAfter(domain, provider)– S’exécute une fois que le domaine a été supprimé avec succès du fournisseur.
onOpenProvider / onCreateProvider
Type :(provider: IdentityProvider) => void / () => void
Gestionnaires de navigation pour le modal de configuration du domaine. Lorsque les utilisateurs configurent les associations de fournisseurs d’un domaine :
onOpenProvider– Appelé lorsque l’utilisateur clique sur un fournisseur existant pour l’afficher ou le modifier.onCreateProvider– Appelé lorsque l’utilisateur clique pour créer un nouveau fournisseur
Propriétés de personnalisation
Les propriétés de personnalisation vous permettent d’adapter le composant à votre marque, à votre région et à vos exigences de validation sans modifier le code source.schéma
Définir des règles de validation personnalisées pour la saisie d’URL de domaine.Champs de schéma disponibles
Champs de schéma disponibles
create.domainUrl – Validation de l’URL du domaine –
regex – Modèle de regex personnalisé
– errorMessage – Message d’erreur personnalisécustomMessages
Personaliser tous les textes et toutes les traductions. Tous les champs sont facultatifs et utilisent les valeurs par défaut s’ils ne sont pas renseignés.Messages disponibles
Messages disponibles
en-tête – En-tête de composant
–
title, description, create_button_texttableau – Affichage du tableau– empty_message
– columns.domain, columns.status
– actions.configure_button_text, actions.verify_button_text, actions.delete_button_textcreate.modal – Créer un modal de domaine– title
– field.label, field.placeholder, field.error
– actions.cancel_button_text, actions.create_button_textverify.modal – Vérifier le modal du domaine– title
– txt_record_name.label, txt_record_content.label, verification_status.label
– actions.verify_button_text, actions.done_button_textdelete.modal – Confirmation de suppression– title
– description.pending, description.verified
– actions.cancel_button_text, actions.create_button_textconfigure.modal – Configuration du fournisseur– title, description
– table.empty_message, table.columns.name
– actions.close_button_textnotifications – Réponses API– domain_create_success, domain_create_error
– domain_verify_success, domain_delete_successstyle
Personnaliser l’apparence à l’aide de variables CSS et de remplacements de classe. Prend en charge les styles adaptés aux thèmes.Options de styles disponibles
Options de styles disponibles
Variables – Propriétés personnalisées CSS
–
common – Appliqué à tous les thèmes
– light – Thème clair uniquement
– dark – Thème sombre uniquementClasses – Remplacements de classes des composants– DomainTable-header
– DomainTable-table
– DomainTable-createModal
– DomainTable-configureModal
– DomainTable-deleteModalPersonnalisation avancée
Le composantDomainTable est composé de sous-composants et de hooks plus petits. Vous pouvez les importer individuellement pour créer des flux de production de domaine personnalisés si vous utilisez shadcn.
Sous-composants disponibles
Pour les cas d’utilisation avancés, il est possible d’importer des sous-composants individuels afin de créer des interfaces de gestion de domaine personnalisées. Cela est utile lorsque vous devez intégrer des modaux particuliers dans différents contextes ou personnaliser la mise en page du tableau au-delà de ce que permettent les propriétés.| Composant | Description |
|---|---|
DomainCreateModal | Modal pour créer un domaine |
DomainVerifyModal | Modal pour flux de vérification |
DomainDeleteModal | Modal de confirmation de suppression |
DomainConfigureProvidersModal | Gérer les associations de fournisseurs |
DomainTableActionsColumn | Boutons d’action pour chaque ligne de domaine |
Hooks disponibles
Ces hooks fournissent la logique sous-jacente sans aucune interface utilisateur. Veuillez les utiliser pour créer des interfaces entièrement personnalisées tout en tirant parti de l’intégration de l’API Auth0.| Hook | Description |
|---|---|
useDomainTable | Couche de données et d’API (récupération, création, vérification, suppression, association) |
useDomainTableLogic | État d’interaction de l’interface utilisateur et gestionnaires (modaux, notifications) |