feat(roles): add admin store roles page, permission i18n, and menu integration
Some checks failed
Some checks failed
- Add admin store roles page with merchant→store cascading for superadmin and store-only selection for platform admin - Add permission catalog API with translated labels/descriptions (en/fr/de/lb) - Add permission translations to all 15 module locale files (60 files total) - Add info icon tooltips for permission descriptions in role editor - Add store roles menu item and admin menu item in module definition - Fix store-selector.js URL construction bug when apiEndpoint has query params - Add admin store roles API (CRUD + platform scoping) - Add integration tests for admin store roles and permission catalog Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,42 +1,48 @@
|
||||
{
|
||||
"title": "Panier",
|
||||
"description": "Gestion du panier pour les clients",
|
||||
"cart": {
|
||||
"title": "Votre panier",
|
||||
"empty": "Votre panier est vide",
|
||||
"empty_subtitle": "Ajoutez des articles pour commencer vos achats",
|
||||
"continue_shopping": "Continuer mes achats",
|
||||
"proceed_to_checkout": "Passer à la caisse"
|
||||
},
|
||||
"item": {
|
||||
"product": "Produit",
|
||||
"quantity": "Quantité",
|
||||
"price": "Prix",
|
||||
"total": "Total",
|
||||
"remove": "Supprimer",
|
||||
"update": "Mettre à jour"
|
||||
},
|
||||
"summary": {
|
||||
"title": "Récapitulatif de commande",
|
||||
"subtotal": "Sous-total",
|
||||
"shipping": "Livraison",
|
||||
"estimated_shipping": "Calculé à la caisse",
|
||||
"tax": "TVA",
|
||||
"total": "Total"
|
||||
},
|
||||
"validation": {
|
||||
"invalid_quantity": "Quantité invalide",
|
||||
"min_quantity": "Quantité minimum: {min}",
|
||||
"max_quantity": "Quantité maximum: {max}",
|
||||
"insufficient_inventory": "Seulement {available} disponible(s)"
|
||||
},
|
||||
"messages": {
|
||||
"item_added": "Article ajouté au panier",
|
||||
"item_updated": "Panier mis à jour",
|
||||
"item_removed": "Article supprimé du panier",
|
||||
"cart_cleared": "Panier vidé",
|
||||
"product_not_available": "Produit non disponible",
|
||||
"error_adding": "Erreur lors de l'ajout au panier",
|
||||
"error_updating": "Erreur lors de la mise à jour du panier"
|
||||
}
|
||||
"title": "Panier",
|
||||
"description": "Gestion du panier pour les clients",
|
||||
"cart": {
|
||||
"title": "Votre panier",
|
||||
"empty": "Votre panier est vide",
|
||||
"empty_subtitle": "Ajoutez des articles pour commencer vos achats",
|
||||
"continue_shopping": "Continuer mes achats",
|
||||
"proceed_to_checkout": "Passer à la caisse"
|
||||
},
|
||||
"item": {
|
||||
"product": "Produit",
|
||||
"quantity": "Quantité",
|
||||
"price": "Prix",
|
||||
"total": "Total",
|
||||
"remove": "Supprimer",
|
||||
"update": "Mettre à jour"
|
||||
},
|
||||
"summary": {
|
||||
"title": "Récapitulatif de commande",
|
||||
"subtotal": "Sous-total",
|
||||
"shipping": "Livraison",
|
||||
"estimated_shipping": "Calculé à la caisse",
|
||||
"tax": "TVA",
|
||||
"total": "Total"
|
||||
},
|
||||
"validation": {
|
||||
"invalid_quantity": "Quantité invalide",
|
||||
"min_quantity": "Quantité minimum: {min}",
|
||||
"max_quantity": "Quantité maximum: {max}",
|
||||
"insufficient_inventory": "Seulement {available} disponible(s)"
|
||||
},
|
||||
"messages": {
|
||||
"item_added": "Article ajouté au panier",
|
||||
"item_updated": "Panier mis à jour",
|
||||
"item_removed": "Article supprimé du panier",
|
||||
"cart_cleared": "Panier vidé",
|
||||
"product_not_available": "Produit non disponible",
|
||||
"error_adding": "Erreur lors de l'ajout au panier",
|
||||
"error_updating": "Erreur lors de la mise à jour du panier"
|
||||
},
|
||||
"permissions": {
|
||||
"view": "Voir les paniers",
|
||||
"view_desc": "Voir les paniers des clients",
|
||||
"manage": "Gérer les paniers",
|
||||
"manage_desc": "Modifier et gérer les paniers des clients"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user