fix: 5 bugs critiques de l'éditeur (Phase 1 audit)
1. replaceAll (Find & Replace) — une seule transaction ProseMirror au lieu d'un forEach cassé. Tous les matchs sont maintenant remplacés. 2. Link Preview unwrap — deleteNode() au lieu de clearer les attrs qui laissaient un nœud fantôme invisible dans le document. 3. Conversion Markdown → richtext — breaks: true dans marked.parse() Les simple newlines sont maintenant convertis en <br>. + préserve les blocs custom (toggle, callout, math, columns, outline, link-preview) en commentaires HTML lors de l'export MD. 4. emitNoteChange exercices — shape corrigée (type:'created' attend un objet Note, pas noteId/notebookId séparés). 5. Raccourcis clavier sans conflit : Cmd+Shift+C → Cmd+Alt+C (callout, avant: copier) Cmd+Shift+O → Cmd+Alt+O (outline, avant: historique/signets) Cmd+Shift+L → Cmd+Alt+L (colonnes, avant: lock screen macOS)
This commit is contained in:
@@ -1453,6 +1453,7 @@
|
||||
"dashboard": "Dashboard",
|
||||
"users": "Users",
|
||||
"aiManagement": "AI Management",
|
||||
"billing": "Billing & Quotas",
|
||||
"published": "Published pages",
|
||||
"chat": "AI Chat",
|
||||
"lab": "The Lab (Ideas)",
|
||||
@@ -1481,6 +1482,40 @@
|
||||
"testSearch": "Test web search"
|
||||
},
|
||||
"settingsDescription": "Configure application-wide settings",
|
||||
"billing": {
|
||||
"title": "Billing & Quotas",
|
||||
"description": "Manage subscription tiers, AI quotas, and Stripe business settings without redeploying.",
|
||||
"stripeConfigTitle": "Stripe business config",
|
||||
"stripeConfigDescription": "Price IDs and billing toggle. Secret keys stay in server environment only.",
|
||||
"enableBilling": "Enable billing UI and checkout",
|
||||
"STRIPE_PRICE_PRO_MONTHLY": "Pro — monthly price ID",
|
||||
"STRIPE_PRICE_PRO_ANNUAL": "Pro — annual price ID",
|
||||
"STRIPE_PRICE_BUSINESS_MONTHLY": "Business — monthly price ID",
|
||||
"STRIPE_PRICE_BUSINESS_ANNUAL": "Business — annual price ID",
|
||||
"secretsNote": "STRIPE_SECRET_KEY and STRIPE_WEBHOOK_SECRET must remain in Docker/env secrets — never stored here.",
|
||||
"saveConfig": "Save billing config",
|
||||
"configSaved": "Billing configuration saved",
|
||||
"configFailed": "Failed to save billing configuration",
|
||||
"limitsTitle": "Tier quotas",
|
||||
"limitsDescription": "Monthly request limits per feature. Changes apply within ~60 seconds.",
|
||||
"feature": "Feature",
|
||||
"mode": "Access",
|
||||
"monthlyLimit": "Monthly limit",
|
||||
"actions": "Actions",
|
||||
"modeUnavailable": "Not available",
|
||||
"modeLimited": "Limited",
|
||||
"modeUnlimited": "Unlimited",
|
||||
"saveLimit": "Save",
|
||||
"limitSaved": "Quota updated",
|
||||
"limitFailed": "Failed to update quota",
|
||||
"usageTitle": "Usage overview",
|
||||
"usagePeriod": "Period {period}",
|
||||
"lastSync": "Last sync {date}",
|
||||
"notSynced": "Not synced yet (cron /api/cron/sync-usage)",
|
||||
"byFeature": "By feature (PostgreSQL)",
|
||||
"topUsers": "Top users",
|
||||
"noUsageData": "No usage data for this period yet"
|
||||
},
|
||||
"dashboard": {
|
||||
"title": "Dashboard",
|
||||
"description": "Overview of your application metrics",
|
||||
@@ -3072,6 +3107,7 @@
|
||||
},
|
||||
"billing": {
|
||||
"title": "Billing",
|
||||
"disabledByAdmin": "Billing and upgrades are currently disabled. Contact your administrator if you need access.",
|
||||
"currentPlan": "Current Plan",
|
||||
"upgradePlan": "Upgrade Plan",
|
||||
"manageBilling": "Manage Billing",
|
||||
|
||||
Reference in New Issue
Block a user