Fonctionnalités
- Validation de clé de licence : valide les clés de licence auprès de l’API Dodo Payments.
- Activation de clé de licence : active les clés de licence avec un nom d’instance, pour les clés ayant une limite d’activations.
- Prise en charge des environnements : configurable pour le test mode et le live mode.
- Prise en charge de TypeScript : implémentation entièrement typée avec gestion des erreurs.
Prise en Main
Avant de commencer, vous avez besoin de l’application de bureau Figma et d’un produit Dodo Payments qui émet des clés de licence.1
Create Base Plugin
Créez votre propre projet de plugin Figma avec le guide de démarrage rapide des plugins de Figma. Figma génère une structure de base avec un fichier
manifest.json.2
Clone the Example Implementation
Clonez le dépôt dodopayments-figma :Dans le
manifest.json cloné, remplacez name et id par les valeurs du fichier manifest.json de votre plugin généré. Cet exemple constitue votre point de départ pour l’intégration.3
Install Dependencies
À la racine du projet, exécutez :
4
Configure Environment
Définissez
API_MODE dans src/ui/api.ts :API_MODE sélectionne l’hôte de l’API : https://test.dodopayments.com pour test_mode, ou https://live.dodopayments.com pour live_mode.5
Customize Components
Personnalisez les composants du plugin dans
src/ui/components/ selon vos besoins :- Mettez à jour
Authenticated.tsxpour exposer des fonctionnalités aux utilisateurs disposant de clés de licence valides. - Personnalisez
LicenseKeyInput.tsxpour l’adapter à votre design.
Authenticated.tsx est l’emplacement où vous ajoutez les fonctionnalités premium de votre plugin. Le plugin ne l’affiche qu’après la validation ou l’activation d’une clé de licence.Configuration
1
Configure Network Access
L’exemple envoie chaque requête de clé de licence via un proxy CORS à Dans
https://dodo-payments-proxy.aagarwal9782.workers.dev, et son manifest.json autorise l’accès réseau uniquement à ce proxy. Le proxy n’est pas disponible ; appelez donc directement l’API Dodo Payments. L’API accepte les requêtes cross-origin depuis n’importe quelle origine, y compris l’origine null de l’interface utilisateur du plugin.Dans votre manifest.json, remplacez le domaine du proxy par les hôtes de l’API Dodo Payments :src/ui/api.ts, remplacez fetch(proxyReq) par fetch(req) dans validateLicenseKey et activateLicenseKey, afin que chaque requête soit envoyée directement à l’API.Cela permet au plugin de valider et d’activer les clés de licence avec l’API Dodo Payments.2
Configure API Mode
Dans
src/ui/api.ts, configurez le mode de l’API :Développement
1
Import Plugin
Importez le plugin dans l’application de bureau Figma :
- Ouvrez un fichier de conception.
- Ouvrez le menu Figma et sélectionnez Plugins.
- Sous Développement, sélectionnez Importer un nouveau plugin depuis le manifeste…, puis sélectionnez le fichier
manifest.jsonà la racine du projet.
dist/. Démarrez donc le serveur de développement ou exécutez npm run build avant de lancer le plugin.Vous avez besoin de l’application de bureau Figma pour développer et tester les plugins localement, car Figma lit le code du plugin depuis les fichiers locaux.
2
Start Development Server
Votre plugin est automatiquement recompilé lorsque vous modifiez le code source.
Commandes de compilation
Le projet inclut les scripts npm suivants :Intégration des clés de licence
L’implémentation d’exemple vérifie une clé de licence avant de déverrouiller le plugin. Vous pouvez personnaliser chaque étape :- Saisie utilisateur : les utilisateurs saisissent leur clé de licence dans l’interface utilisateur du plugin.
- Validation : par défaut, le plugin valide la clé avec Validate License (
POST /licenses/validate). - Activation : si vos clés de licence ont une limite d’activations, définissez
needsActivationsurtruedanssrc/ui/components/Unauthenticated.tsx. Le plugin active alors la clé avec Activate License (POST /licenses/activate) au lieu de la valider, et nomme l’instanceFigma Plugin. - Contrôle d’accès : pour une clé valide, le plugin enregistre la clé avec
figma.clientStorageet afficheAuthenticated.tsx. Lors de la prochaine ouverture du plugin, il valide à nouveau la clé enregistrée.
Publication
Lorsque votre plugin est prêt :- Compilez pour la production :
npm run build - Effectuez des tests approfondis en test mode et en live mode.
- Suivez les directives de publication des plugins de Figma.
- Soumettez le plugin pour examen via la communauté Figma.