Funktionen
- Lizenzschlüssel-Validierung: Validiert Lizenzschlüssel gegen die Dodo Payments API.
- Lizenzschlüssel-Aktivierung: Aktiviert Lizenzschlüssel mit einem Instanznamen für Schlüssel mit einem Aktivierungslimit.
- Umgebungsunterstützung: Konfigurierbar für den Testmodus und den Live-Modus.
- TypeScript-Unterstützung: Vollständig typisierte Implementierung mit Fehlerbehandlung.
Erste Schritte
Bevor Sie beginnen, benötigen Sie die Figma-Desktop-App und ein Dodo Payments-Produkt, das Lizenzschlüssel ausstellt.1
Create Base Plugin
Erstellen Sie Ihr eigenes Figma-Plugin-Projekt mit Figma’s plugin quickstart guide. Figma generiert ein Gerüst mit einer
manifest.json-Datei.2
Clone the Example Implementation
Klonen Sie das dodopayments-figma-Repository:Ersetzen Sie in der geklonten
manifest.json name und id durch die Werte aus der manifest.json Ihres generierten Plugins. Dieses Beispiel ist Ihr Ausgangspunkt für die Integration.3
Install Dependencies
Führen Sie im Projektstamm Folgendes aus:
4
Configure Environment
Legen Sie
API_MODE in src/ui/api.ts fest:API_MODE wählt den API-Host aus: https://test.dodopayments.com für test_mode oder https://live.dodopayments.com für live_mode.5
Customize Components
Passen Sie die Plugin-Komponenten in
src/ui/components/ an Ihre Anforderungen an:- Aktualisieren Sie
Authenticated.tsx, um Benutzern mit gültigen Lizenzschlüsseln Funktionen bereitzustellen. - Passen Sie
LicenseKeyInput.tsxan Ihr Design an.
Authenticated.tsx ist der Bereich, in dem Sie die Premium-Funktionen Ihres Plugins hinzufügen. Das Plugin zeigt sie erst an, nachdem ein Lizenzschlüssel validiert oder aktiviert wurde.Konfiguration
1
Configure Network Access
Das Beispiel sendet jede Lizenzschlüssel-Anfrage über einen CORS-Proxy unter Ersetze in
https://dodo-payments-proxy.aagarwal9782.workers.dev, und sein manifest.json erlaubt den Netzwerkzugriff nur auf diesen Proxy. Der Proxy ist nicht verfügbar, daher solltest du die Dodo Payments API direkt aufrufen. Die API akzeptiert Cross-Origin-Anfragen von jedem Origin, einschließlich des null-Origin der Plugin-Benutzeroberfläche.Ersetze in deinem manifest.json die Proxy-Domain durch die Hosts der Dodo Payments API:src/ui/api.ts fetch(proxyReq) durch fetch(req) in validateLicenseKey und activateLicenseKey, damit jede Anfrage direkt an die API gesendet wird.Dadurch kann das Plugin Lizenzschlüssel mit der Dodo Payments API validieren und aktivieren.2
Configure API Mode
Konfiguriere in
src/ui/api.ts den API-Modus:Entwicklung
1
Import Plugin
Importiere das Plugin in die Figma-Desktop-App:
- Öffne eine Designdatei.
- Öffne das Figma-Menü und wähle Plugins aus.
- Wähle unter Entwicklung die Option Import new plugin from manifest… aus und wähle anschließend die
manifest.json-Datei im Projektstammverzeichnis aus.
dist/. Starte daher den Entwicklungsserver oder führe npm run build aus, bevor du das Plugin startest.Du benötigst die Figma-Desktop-App, um Plugins lokal zu entwickeln und zu testen, da Figma den Plugin-Code aus lokalen Dateien liest.
2
Start Development Server
Dein Plugin wird automatisch neu erstellt, wenn du den Quellcode änderst.
Build-Befehle
Das Projekt enthält die folgenden npm-Skripte:Integration von Lizenzschlüsseln
Die Beispielimplementierung prüft einen Lizenzschlüssel, bevor sie das Plugin freischaltet. Du kannst jeden Schritt anpassen:- Benutzereingabe: Benutzer geben ihren Lizenzschlüssel in der Plugin-Benutzeroberfläche ein.
- Validierung: Standardmäßig validiert das Plugin den Schlüssel mit Validate License (
POST /licenses/validate). - Aktivierung: Wenn deine Lizenzschlüssel ein Aktivierungslimit haben, setze
needsActivationinsrc/ui/components/Unauthenticated.tsxauftrue. Das Plugin aktiviert den Schlüssel anschließend mit Activate License (POST /licenses/activate), anstatt ihn zu validieren, und benennt die InstanzFigma Plugin. - Zugriffskontrolle: Bei einem gültigen Schlüssel speichert das Plugin den Schlüssel mit
figma.clientStorageund zeigtAuthenticated.tsxan. Beim nächsten Öffnen des Plugins wird der gespeicherte Schlüssel erneut validiert.
Veröffentlichung
Wenn dein Plugin bereit ist:- Für die Produktion erstellen:
npm run build - Sowohl im Testmodus als auch im Live-Modus gründlich testen.
- Befolge Figma’s Richtlinien zur Veröffentlichung von Plugins.
- Reiche das Plugin über die Figma Community zur Überprüfung ein.