feat: license UI card in settings #47

Closed
opened 2026-04-09 01:53:15 +00:00 by maximus · 1 comment
Owner

Contexte

Afficher l'édition courante et permettre l'entrée d'une clé de licence dans les paramètres.
Ref: spec-monetisation.md — Phase 1, Issue 2
Depends on #46

Tâches

  • Créer src/hooks/useLicense.ts — hook useReducer (pattern du projet, comme useUpdater.ts) avec états : idle, validating, valid, invalid, error
  • Créer src/services/licenseService.ts — wrapper des commandes Tauri license_*
  • Créer src/components/settings/LicenseCard.tsx — affiche édition, champ clé, feedback validation
  • Intégrer LicenseCard dans SettingsPage.tsx (avant le card About)
  • Bouton "Acheter" → ouvre le navigateur vers la page d'achat (tauri-plugin-opener)
  • Ajouter clés i18n license.* dans fr.json et en.json
  • Le hook expose aussi checkEntitlement(feature) pour usage par d'autres composants

Notes de révision

  • Hook useLicense obligatoire pour respecter le pattern architecture du projet (review architecture)
## Contexte Afficher l'édition courante et permettre l'entrée d'une clé de licence dans les paramètres. Ref: `spec-monetisation.md` — Phase 1, Issue 2 Depends on #46 ## Tâches - [ ] Créer `src/hooks/useLicense.ts` — hook useReducer (pattern du projet, comme `useUpdater.ts`) avec états : idle, validating, valid, invalid, error - [ ] Créer `src/services/licenseService.ts` — wrapper des commandes Tauri license_* - [ ] Créer `src/components/settings/LicenseCard.tsx` — affiche édition, champ clé, feedback validation - [ ] Intégrer LicenseCard dans `SettingsPage.tsx` (avant le card About) - [ ] Bouton "Acheter" → ouvre le navigateur vers la page d'achat (tauri-plugin-opener) - [ ] Ajouter clés i18n `license.*` dans `fr.json` et `en.json` - [ ] Le hook expose aussi `checkEntitlement(feature)` pour usage par d'autres composants ## Notes de révision - Hook `useLicense` obligatoire pour respecter le pattern architecture du projet (review architecture)
maximus added this to the spec-monetisation milestone 2026-04-09 01:53:15 +00:00
maximus added the
status:ready
type:feature
source:human
labels 2026-04-09 01:53:15 +00:00
maximus added
status:approved
and removed
status:ready
labels 2026-04-09 12:55:43 +00:00
Author
Owner

Fermé par PR #57 (mergée). Carte de licence ajoutée dans les paramètres avec affichage du statut, entitlements et actions activation/suppression.

Fermé par PR #57 (mergée). Carte de licence ajoutée dans les paramètres avec affichage du statut, entitlements et actions activation/suppression.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: maximus/Simpl-Resultat#47
No description provided.