feat: complete translation of remaining Spanish strings in Law10Tab and RoadmapTab

Law10Tab changes:
- Fixed 3 Spanish time unit abbreviations (año→yr, mes→mo)
- Changed "65K/año" to "65K/yr" (line 1444)
- Changed "35K + 8K/mes" to "35K + 8K/mo" (line 1448)
- Changed "12-18K/año" to "12-18K/yr" (line 1452)

RoadmapTab changes (41 strings translated):
- Translated DECISION_GATES object (18 keys) - converted to getDecisionGates(t) function
- Translated timeline title and description (2 keys)
- Translated all payback tooltip texts (5 keys)
- Translated wave descriptions and recommendations (12 keys)
- Translated scenario comparison texts (4 keys)
- Added useTranslation() hook to RoadmapTimeline component
- Updated recommendation generation to use t() with interpolation

Translation keys added:
- roadmap.payback.* (5 new keys)
- roadmap.decisionGates.* (12 keys)
- roadmap.timeline.* (2 keys)
- roadmap.specificRecommendations.* (12 keys)
- roadmap.scenarios.* (3 keys)
- roadmap.wave2Description.* (2 keys)

All components now fully support Spanish-English translation switching.

https://claude.ai/code/session_01GNbnkFoESkRcnPr3bLCYDg
This commit is contained in:
Claude
2026-02-07 18:40:10 +00:00
parent 76a93e0dd0
commit bafd8e3f61
4 changed files with 135 additions and 51 deletions

View File

@@ -545,8 +545,11 @@
"immediate": "Immediate",
"recoversWithAutomation": "This investment is recovered with automation waves (W3-W4). Payback is calculated on the complete roadmap, not on enabling waves in isolation.",
"savingsDoNotCoverRecurring": "Annual savings do not cover recurring costs.",
"savingsDoNotCoverRecurringWithMargin": "Annual savings do not cover recurring costs. Net margin: {{margin}}/year",
"implementationRecoveryMargin": "Implementation: {{impl}} months → Recovery: {{rec}} months. Margin: {{margin}}/year.",
"moderateRecoveryPeriod": "Moderate recovery period.",
"longRecoveryPeriod": "Long recovery period. Consider less ambitious scenario."
"longRecoveryPeriod": "Long recovery period. Consider less ambitious scenario.",
"roiValidateWithPilot": "High ROI - validate with pilot"
},
"waves": {
"wave1Name": "Wave 1",
@@ -645,7 +648,10 @@
"roiNote": "ROI: (3y Savings - 3y Total Cost) / 3y Total Cost × 100. Adjusted applies risk: W1-2: 75-90%, W3: 60%, W4: 50%.",
"enablerNote": "Enabler: Waves that unlock ROI of subsequent waves. Their payback is evaluated with the complete roadmap.",
"enablerValue": "Real value of this investment:",
"enablerUnlocks": "Unlocks {{amount}}/year in {{waves}}. Without this foundation, subsequent waves are not viable."
"enablerUnlocks": "Unlocks {{amount}}/year in {{waves}}. Without this foundation, subsequent waves are not viable.",
"unlocks": "Unlocks {{waves}}",
"enablesAmount": "enables {{amount}}",
"startConservative": "Start with conservative scenario to validate model before scaling."
},
"decisionGates": {
"gate1Question": "CV ≤75% in 3+ queues?",
@@ -689,6 +695,7 @@
"risk": "Risk",
"scenario": "Scenario",
"recommendation": "Recommendation",
"recommendationEnabler": "Recommendation (Enabler)",
"enabler": "Enabler",
"recommended": "Recommended"
},
@@ -779,6 +786,24 @@
"wave1": "Queues that reach Score 3.5-5.5 post Wave 1",
"wave2": "Queues that reach Score ≥5.5 post Wave 2",
"wave3": "Queues that reach Score ≥7.5 post Wave 3"
},
"wave2Description": {
"ready": "{{skill}} is the skill with the best Score ({{score}}/10, \"Copilot\" category). Volume {{volume}}/year = greatest economic impact.",
"notReady": "No skill currently reaches Score ≥6. The best candidate is {{skill}} with Score {{score}}/10. Requires prior optimization in Wave 1."
},
"specificRecommendations": {
"launchWave4": "Launch Wave 4 (AUTOMATE) pilot",
"launchWave4Rationale": "{{count}} queues already have Score ≥7.5 with volume of {{volume}} int/month.",
"launchWave4NextStep": "Start automation pilot in the 2-3 highest-volume queues with savings potential of {{amount}}/year.",
"initiateWave3": "Initiate Wave 3 (ASSIST) with Copilot",
"initiateWave3Rationale": "{{count}} queues have Score 5.5-7.5, representing {{pct}}% of volume.",
"initiateWave3NextStep": "Deploy AI Copilot in Tier 2 queues to raise score to ≥7.5 and enable Wave 4. Investment: {{amount}}.",
"prioritizeWave1": "Prioritize Wave 1 (FOUNDATION)",
"prioritizeWave1Rationale": "{{count}} queues ({{pct}}%) have Red Flags that prevent automation.",
"prioritizeWave1NextStep": "Standardize processes before investing in AI. Automation without solid foundations fails in 80%+ of cases.",
"executeWave12": "Execute Wave 1-2 sequentially",
"executeWave12Rationale": "Mixed operation: {{automate}} Tier 1 queues, {{assist}} Tier 2, {{augment}} Tier 3, {{human}} Tier 4.",
"executeWave12NextStep": "Start with FOUNDATION to eliminate red flags, followed by AUGMENT to raise scores. Initial investment: {{amount}}."
}
},
"opportunities": {