Tính năng
- Xác thực License Key: Xác thực license key với Dodo Payments API.
- Kích hoạt License Key: Kích hoạt license key với tên instance dành cho các key có giới hạn kích hoạt.
- Hỗ trợ môi trường: Có thể cấu hình cho cả test mode và live mode.
- Hỗ trợ TypeScript: Triển khai đầy đủ kiểu dữ liệu kèm xử lý lỗi.
Bắt đầu
Trước khi bắt đầu, bạn cần ứng dụng Figma trên máy tính và một sản phẩm Dodo Payments có cấp license key.1
Create Base Plugin
Tạo project plugin Figma riêng bằng hướng dẫn bắt đầu nhanh về plugin của Figma. Figma sẽ tạo một bộ khung có file
manifest.json.2
Clone the Example Implementation
Clone repository dodopayments-figma:Trong
manifest.json đã clone, thay name và id bằng các giá trị từ manifest.json của plugin đã tạo. Ví dụ này là điểm bắt đầu để bạn tích hợp.3
Install Dependencies
Trong thư mục gốc của project, chạy:
4
Configure Environment
Đặt
API_MODE trong src/ui/api.ts:API_MODE chọn API host: https://test.dodopayments.com cho test_mode hoặc https://live.dodopayments.com cho live_mode.5
Customize Components
Tùy chỉnh các component của plugin trong
src/ui/components/ để phù hợp với nhu cầu của bạn:- Cập nhật
Authenticated.tsxđể cung cấp chức năng cho người dùng có license key hợp lệ. - Tùy chỉnh
LicenseKeyInput.tsxđể phù hợp với thiết kế của bạn.
Authenticated.tsx là nơi bạn thêm các tính năng cao cấp của plugin. Plugin chỉ hiển thị phần này sau khi license key được xác thực hoặc kích hoạt.Cấu hình
1
Configure Network Access
Ví dụ gửi mọi yêu cầu license key qua CORS proxy tại Trong
https://dodo-payments-proxy.aagarwal9782.workers.dev và manifest.json chỉ cho phép truy cập mạng đến proxy đó. Proxy không khả dụng, vì vậy hãy gọi trực tiếp Dodo Payments API. API chấp nhận các yêu cầu cross-origin từ mọi origin, bao gồm origin null của plugin UI.Trong manifest.json, hãy thay domain của proxy bằng các host của Dodo Payments API:src/ui/api.ts, hãy thay fetch(proxyReq) bằng fetch(req) trong validateLicenseKey và activateLicenseKey để mỗi yêu cầu được gửi trực tiếp đến API.Điều này cho phép plugin xác thực và kích hoạt license key với Dodo Payments API.2
Configure API Mode
Trong
src/ui/api.ts, hãy cấu hình API mode:Development
1
Import Plugin
Import plugin vào Figma desktop app:
- Mở một design file.
- Mở menu Figma và chọn Plugins.
- Trong Development, chọn Import new plugin from manifest…, sau đó chọn file
manifest.jsontrong project root.
dist/, vì vậy hãy khởi động development server hoặc chạy npm run build trước khi chạy plugin.Bạn cần Figma desktop app để phát triển và kiểm thử plugin local, vì Figma đọc code của plugin từ các file local.
2
Start Development Server
Plugin của bạn sẽ tự động build lại khi bạn thay đổi source code.
Build Commands
Project bao gồm các npm script sau:Tích hợp License Key
Implementation mẫu kiểm tra license key trước khi mở khóa plugin. Bạn có thể tùy chỉnh từng bước:- User Input: Người dùng nhập license key trong plugin UI.
- Validation: Theo mặc định, plugin xác thực key bằng Validate License (
POST /licenses/validate). - Activation: Nếu license key của bạn có giới hạn kích hoạt, hãy đặt
needsActivationthànhtruetrongsrc/ui/components/Unauthenticated.tsx. Sau đó, plugin sẽ kích hoạt key bằng Activate License (POST /licenses/activate) thay vì xác thực key, đồng thời đặt tên instance làFigma Plugin. - Access Control: Với key hợp lệ, plugin lưu key bằng
figma.clientStoragevà hiển thịAuthenticated.tsx. Khi plugin được mở lần tiếp theo, plugin sẽ xác thực lại key đã lưu.
Publishing
Khi plugin của bạn đã sẵn sàng:- Build cho production:
npm run build - Kiểm thử kỹ lưỡng trong cả test mode và live mode.
- Làm theo hướng dẫn publishing plugin của Figma.
- Gửi plugin để review thông qua Figma Community.