feat(billing): implement robust in-app subscription cancellation & fix CI/CD socket port typo

This commit is contained in:
Antigravity
2026-05-28 20:50:11 +00:00
parent f5608372dc
commit 457c6fa626
22 changed files with 656 additions and 460 deletions

View File

@@ -3359,7 +3359,7 @@
"turnInto_taskList": "Liste de tâches",
"turnInto_blockquote": "Citation",
"turnInto_codeBlock": "Bloc de code",
"turnInto_database": "Base de données",
"turnInto_database": "Base de données inline",
"copyRef": "Copier la référence du bloc",
"copied": "Référence copiée !",
"copyRefFailed": "Impossible de copier la référence du bloc",
@@ -3418,6 +3418,52 @@
"analyticsNoData": "Aucune donnée d'analyse disponible.",
"analyticsCompletion": "Taux de complétion",
"analyticsDistribution": "Répartition",
"analyticsTotalRows": "Total des lignes"
"analyticsTotalRows": "Total des lignes",
"analyticsShort": "Analyses",
"turnIntoLabel": "Base de données inline",
"columnAdded": "Colonne ajoutée !",
"columnRemoved": "Colonne supprimée",
"propertyName": "Propriété {{index}}",
"convertNotebookNameRequired": "Veuillez entrer un nom pour le carnet.",
"convertNotebookError": "Erreur lors de la création du carnet.",
"convertSchemaError": "Erreur lors de l'activation de la structure.",
"convertPropertyError": "Erreur d'ajout de propriété.",
"convertNoteError": "Erreur de création de note.",
"convertSuccess": "Conversion réussie ! Base liée créée.",
"convertGenericError": "Une erreur est survenue.",
"echoNameRequired": "Veuillez d'abord saisir un nom pour cette ligne afin de rechercher des résonances sémantiques.",
"echoSearchError": "Une erreur est survenue lors de la recherche.",
"echoNoMatch": "Aucune note correspondante contenant « {{query}} » n'a été trouvée dans votre espace de travail.",
"convertToNotebook": "Convertir en carnet",
"linkToNotebook": "Lier à un carnet",
"convertModalTitle": "Convertir en carnet structuré",
"convertModalDesc": "Ce tableau local va être converti en carnet réel. Chaque ligne deviendra une note et vos colonnes seront configurées comme propriétés réutilisables.",
"convertNotebookNameLabel": "Nom du nouveau carnet",
"convertNotebookNamePlaceholder": "ex. Mes lectures, Suivi de projets",
"cancel": "Annuler",
"converting": "Conversion…",
"createNotebook": "Créer le carnet",
"deleteColumn": "Supprimer la colonne",
"addColumn": "Ajouter une colonne",
"deleteRow": "Supprimer la ligne",
"semanticEcho": "Résonances sémantiques",
"close": "Fermer",
"insertCitation": "Insérer le lien dans l'éditeur",
"keywordMatch": "Mot-clé",
"emptyTable": "Aucune ligne dans le tableau.",
"addRow": "Ajouter une ligne",
"colTypeText": "Texte",
"colTypeCheckbox": "Case",
"colTypeSelect": "Liste",
"selectOptionsPlaceholder": "Options séparées par des virgules",
"namePlaceholder": "Saisir un nom…",
"or": "ou",
"createLocalDb": "Créer une base locale autonome",
"switchToLocalDb": "Passer en base locale",
"untitled": "Sans titre",
"citationInserted": "Citation insérée dans l'éditeur !",
"notesLoadError": "Erreur de chargement des notes",
"defaultOption1": "Option 1",
"defaultOption2": "Option 2"
}
}