initial version
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>API_KEY</key>
|
||||
<string>AIzaSyAregLaXQ-WqRQTltTRyjQx3-lfxLl4Cng</string>
|
||||
<key>GCM_SENDER_ID</key>
|
||||
<string>334225114072</string>
|
||||
<key>PLIST_VERSION</key>
|
||||
<string>1</string>
|
||||
<key>BUNDLE_ID</key>
|
||||
<string>com.alexandrevazquez.portfoliojournal</string>
|
||||
<key>PROJECT_ID</key>
|
||||
<string>portfoliojournal-ef2d7</string>
|
||||
<key>STORAGE_BUCKET</key>
|
||||
<string>portfoliojournal-ef2d7.firebasestorage.app</string>
|
||||
<key>IS_ADS_ENABLED</key>
|
||||
<false></false>
|
||||
<key>IS_ANALYTICS_ENABLED</key>
|
||||
<false></false>
|
||||
<key>IS_APPINVITE_ENABLED</key>
|
||||
<true></true>
|
||||
<key>IS_GCM_ENABLED</key>
|
||||
<true></true>
|
||||
<key>IS_SIGNIN_ENABLED</key>
|
||||
<true></true>
|
||||
<key>GOOGLE_APP_ID</key>
|
||||
<string>1:334225114072:ios:81bad412ffe1c6df3d28ad</string>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -0,0 +1,92 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>Portfolio Journal</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleURLTypes</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CFBundleURLName</key>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleURLSchemes</key>
|
||||
<array>
|
||||
<string>portfoliojournal</string>
|
||||
</array>
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>GADApplicationIdentifier</key>
|
||||
<string>ca-app-pub-1549720748100858~9632507420</string>
|
||||
<key>GADDelayAppMeasurementInit</key>
|
||||
<true/>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
<true/>
|
||||
<key>NSAppTransportSecurity</key>
|
||||
<dict>
|
||||
<key>NSAllowsArbitraryLoads</key>
|
||||
<false/>
|
||||
<key>NSAllowsArbitraryLoadsForMedia</key>
|
||||
<false/>
|
||||
<key>NSAllowsArbitraryLoadsInWebContent</key>
|
||||
<false/>
|
||||
</dict>
|
||||
<key>NSCalendarsUsageDescription</key>
|
||||
<string>Used to set investment update reminders.</string>
|
||||
<key>NSFaceIDUsageDescription</key>
|
||||
<string>Use Face ID to unlock your portfolio data.</string>
|
||||
<key>NSUbiquitousContainerIsDocumentScopePublic</key>
|
||||
<true/>
|
||||
<key>NSUserTrackingUsageDescription</key>
|
||||
<string>This app uses tracking to provide personalized ads and improve your experience. Your data is not sold to third parties.</string>
|
||||
<key>UIApplicationSceneManifest</key>
|
||||
<dict>
|
||||
<key>UIApplicationSupportsMultipleScenes</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>UIBackgroundModes</key>
|
||||
<array>
|
||||
<string>remote-notification</string>
|
||||
</array>
|
||||
<key>UILaunchScreen</key>
|
||||
<dict/>
|
||||
<key>UIRequiredDeviceCapabilities</key>
|
||||
<array>
|
||||
<string>armv7</string>
|
||||
</array>
|
||||
<key>UIStatusBarStyle</key>
|
||||
<string>UIStatusBarStyleDefault</string>
|
||||
<key>UISupportedInterfaceOrientations</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
<key>UISupportedInterfaceOrientations~ipad</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||
</array>
|
||||
<key>UISupportsDocumentBrowser</key>
|
||||
<false/>
|
||||
<key>UIViewControllerBasedStatusBarAppearance</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"identifier" : "Default Configuration",
|
||||
"provider" : "appstore",
|
||||
"products" : [
|
||||
{
|
||||
"id" : "com.portfoliojournal.premium",
|
||||
"type" : "Non-Consumable",
|
||||
"referenceName" : "Premium Unlock",
|
||||
"state" : "approved",
|
||||
"price" : {
|
||||
"currency" : "EUR",
|
||||
"value" : 4.69
|
||||
}
|
||||
}
|
||||
],
|
||||
"subscriptionGroups" : [ ],
|
||||
"localizations" : [ ],
|
||||
"files" : [ ]
|
||||
}
|
||||
@@ -0,0 +1,236 @@
|
||||
/*
|
||||
Localizable.strings
|
||||
PortfolioJournal
|
||||
|
||||
English (Base) localization
|
||||
*/
|
||||
|
||||
// MARK: - General
|
||||
"app_name" = "Portfolio Journal";
|
||||
"ok" = "OK";
|
||||
"cancel" = "Cancel";
|
||||
"save" = "Save";
|
||||
"delete" = "Delete";
|
||||
"edit" = "Edit";
|
||||
"add" = "Add";
|
||||
"done" = "Done";
|
||||
"close" = "Close";
|
||||
"continue" = "Continue";
|
||||
"skip" = "Skip";
|
||||
"error" = "Error";
|
||||
"success" = "Success";
|
||||
"loading" = "Loading...";
|
||||
|
||||
// MARK: - Tab Bar
|
||||
"tab_dashboard" = "Home";
|
||||
"tab_sources" = "Sources";
|
||||
"tab_charts" = "Charts";
|
||||
"tab_settings" = "Settings";
|
||||
|
||||
// MARK: - Dashboard
|
||||
"dashboard_title" = "Home";
|
||||
"total_portfolio_value" = "Total Portfolio Value";
|
||||
"today" = "today";
|
||||
"returns" = "Returns";
|
||||
"by_category" = "By Category";
|
||||
"pending_updates" = "Pending Updates";
|
||||
"see_all" = "See All";
|
||||
|
||||
// MARK: - Sources
|
||||
"sources_title" = "Sources";
|
||||
"add_source" = "Add Source";
|
||||
"source_name" = "Source Name";
|
||||
"select_category" = "Select Category";
|
||||
"initial_value" = "Initial Value";
|
||||
"initial_value_optional" = "Initial Value (Optional)";
|
||||
"reminder_frequency" = "Reminder Frequency";
|
||||
"source_limit_warning" = "Source limit reached. Upgrade to Premium for unlimited sources.";
|
||||
"no_sources" = "No Investment Sources";
|
||||
"no_sources_message" = "Add your first investment source to start tracking your portfolio.";
|
||||
|
||||
// MARK: - Snapshots
|
||||
"add_snapshot" = "Add Snapshot";
|
||||
"edit_snapshot" = "Edit Snapshot";
|
||||
"snapshot_date" = "Date";
|
||||
"snapshot_value" = "Value";
|
||||
"snapshot_contribution" = "Contribution";
|
||||
"contribution_optional" = "Contribution (Optional)";
|
||||
"notes" = "Notes";
|
||||
"notes_optional" = "Notes (Optional)";
|
||||
"previous_value" = "Previous: %@";
|
||||
"change_from_previous" = "Change from previous";
|
||||
|
||||
// MARK: - Charts
|
||||
"charts_title" = "Charts";
|
||||
"evolution" = "Evolution";
|
||||
"allocation" = "Allocation";
|
||||
"performance" = "Performance";
|
||||
"drawdown" = "Drawdown";
|
||||
"volatility" = "Volatility";
|
||||
"prediction" = "Prediction";
|
||||
"portfolio_evolution" = "Portfolio Evolution";
|
||||
"asset_allocation" = "Asset Allocation";
|
||||
"performance_by_category" = "Performance by Category";
|
||||
"drawdown_analysis" = "Drawdown Analysis";
|
||||
"prediction_12_month" = "12-Month Prediction";
|
||||
"not_enough_data" = "Not enough data";
|
||||
|
||||
// MARK: - Metrics
|
||||
"cagr" = "CAGR";
|
||||
"twr" = "TWR";
|
||||
"max_drawdown" = "Max Drawdown";
|
||||
"sharpe_ratio" = "Sharpe Ratio";
|
||||
"win_rate" = "Win Rate";
|
||||
"avg_monthly" = "Avg Monthly";
|
||||
"best_month" = "Best Month";
|
||||
"worst_month" = "Worst Month";
|
||||
|
||||
// MARK: - Premium
|
||||
"premium" = "Premium";
|
||||
"upgrade_to_premium" = "Upgrade to Premium";
|
||||
"unlock_full_potential" = "Unlock Full Potential";
|
||||
"one_time_purchase" = "One-time purchase";
|
||||
"includes_family_sharing" = "Includes Family Sharing";
|
||||
"upgrade_now" = "Upgrade Now";
|
||||
"restore_purchases" = "Restore Purchases";
|
||||
"premium_active" = "Premium Active";
|
||||
"premium_feature" = "Premium Feature";
|
||||
"unlock" = "Unlock";
|
||||
|
||||
// Premium Features
|
||||
"feature_unlimited_sources" = "Unlimited Sources";
|
||||
"feature_unlimited_sources_desc" = "Track as many investments as you want";
|
||||
"feature_full_history" = "Full History";
|
||||
"feature_full_history_desc" = "Access your complete investment history";
|
||||
"feature_advanced_charts" = "Advanced Charts";
|
||||
"feature_advanced_charts_desc" = "5 types of detailed analytics charts";
|
||||
"feature_predictions" = "Predictions";
|
||||
"feature_predictions_desc" = "AI-powered 12-month forecasts";
|
||||
"feature_export" = "Export Data";
|
||||
"feature_export_desc" = "Export to CSV and JSON formats";
|
||||
"feature_no_ads" = "No Ads";
|
||||
"feature_no_ads_desc" = "Ad-free experience forever";
|
||||
|
||||
// MARK: - Settings
|
||||
"settings_title" = "Settings";
|
||||
"subscription" = "Subscription";
|
||||
"notifications" = "Notifications";
|
||||
"default_reminder_time" = "Default Reminder Time";
|
||||
"data" = "Data";
|
||||
"export_data" = "Export Data";
|
||||
"total_sources" = "Total Sources";
|
||||
"total_snapshots" = "Total Snapshots";
|
||||
"storage_used" = "Storage Used";
|
||||
"about" = "About";
|
||||
"version" = "Version";
|
||||
"privacy_policy" = "Privacy Policy";
|
||||
"terms_of_service" = "Terms of Service";
|
||||
"support" = "Support";
|
||||
"rate_app" = "Rate App";
|
||||
"danger_zone" = "Danger Zone";
|
||||
"reset_all_data" = "Reset All Data";
|
||||
"reset_confirmation" = "This will permanently delete all your investment data. This action cannot be undone.";
|
||||
|
||||
// MARK: - Notification Frequencies
|
||||
"frequency_monthly" = "Monthly";
|
||||
"frequency_quarterly" = "Quarterly";
|
||||
"frequency_semiannual" = "Semi-Annual";
|
||||
"frequency_annual" = "Annual";
|
||||
"frequency_custom" = "Custom";
|
||||
"frequency_never" = "Never";
|
||||
"every_n_months" = "Every %d month(s)";
|
||||
|
||||
// MARK: - Categories
|
||||
"category_stocks" = "Stocks";
|
||||
"category_bonds" = "Bonds";
|
||||
"category_real_estate" = "Real Estate";
|
||||
"category_crypto" = "Crypto";
|
||||
"category_cash" = "Cash";
|
||||
"category_etfs" = "ETFs";
|
||||
"category_retirement" = "Retirement";
|
||||
"category_other" = "Other";
|
||||
"uncategorized" = "Uncategorized";
|
||||
|
||||
// MARK: - Time Ranges
|
||||
"time_1m" = "1M";
|
||||
"time_3m" = "3M";
|
||||
"time_6m" = "6M";
|
||||
"time_1y" = "1Y";
|
||||
"time_all" = "All";
|
||||
|
||||
// MARK: - Export
|
||||
"export_format" = "Select Format";
|
||||
"export_csv" = "CSV";
|
||||
"export_csv_desc" = "Compatible with Excel, Google Sheets";
|
||||
"export_json" = "JSON";
|
||||
"export_json_desc" = "Full data structure for backup";
|
||||
|
||||
// MARK: - Onboarding
|
||||
"onboarding_track_title" = "Track Your Investments";
|
||||
"onboarding_track_desc" = "Monitor all your investment sources in one place. Stocks, bonds, real estate, crypto, and more.";
|
||||
"onboarding_visualize_title" = "Visualize Your Growth";
|
||||
"onboarding_visualize_desc" = "Beautiful charts show your portfolio evolution, allocation, and performance over time.";
|
||||
"onboarding_reminders_title" = "Never Miss an Update";
|
||||
"onboarding_reminders_desc" = "Set reminders to track your investments regularly. Monthly, quarterly, or custom schedules.";
|
||||
"onboarding_sync_title" = "Sync Everywhere";
|
||||
"onboarding_sync_desc" = "Your data syncs automatically via iCloud across all your Apple devices.";
|
||||
"get_started" = "Get Started";
|
||||
|
||||
// MARK: - Errors
|
||||
"error_generic" = "An error occurred. Please try again.";
|
||||
"error_no_purchases" = "No purchases found to restore";
|
||||
"error_purchase_failed" = "Purchase failed: %@";
|
||||
"error_export_failed" = "Export failed. Please try again.";
|
||||
|
||||
// MARK: - Placeholders
|
||||
"placeholder_source_name" = "e.g., Vanguard 401k";
|
||||
"placeholder_value" = "0.00";
|
||||
"placeholder_notes" = "Add notes...";
|
||||
|
||||
// MARK: - Monthly Check-in Moods
|
||||
"mood_energized_title" = "On Fire";
|
||||
"mood_confident_title" = "Confident";
|
||||
"mood_balanced_title" = "Steady";
|
||||
"mood_cautious_title" = "Cautious";
|
||||
"mood_stressed_title" = "Stressed";
|
||||
"mood_energized_detail" = "Feeling unbeatable";
|
||||
"mood_confident_detail" = "On track and composed";
|
||||
"mood_balanced_detail" = "Calm and patient";
|
||||
"mood_cautious_detail" = "Watching the moves";
|
||||
"mood_stressed_detail" = "Need a reset";
|
||||
|
||||
// MARK: - Monthly Check-in Achievements
|
||||
"achievement_streak_3_title" = "3-Month Streak";
|
||||
"achievement_streak_3_detail" = "Kept your check-ins on time for three months straight.";
|
||||
"achievement_streak_6_title" = "Half-Year Hot Streak";
|
||||
"achievement_streak_6_detail" = "Six consecutive on-time check-ins.";
|
||||
"achievement_streak_12_title" = "Year of Momentum";
|
||||
"achievement_streak_12_detail" = "A full year without missing the deadline.";
|
||||
"achievement_perfect_on_time_title" = "Never Late";
|
||||
"achievement_perfect_on_time_detail" = "Every check-in landed before the deadline.";
|
||||
"achievement_clutch_finish_title" = "Clutch Finish";
|
||||
"achievement_clutch_finish_detail" = "Submitted with hours to spare and still on time.";
|
||||
"achievement_early_bird_title" = "Early Bird";
|
||||
"achievement_early_bird_detail" = "On average you finish with plenty of time left.";
|
||||
"achievements_title" = "Achievements";
|
||||
"achievements_view_all" = "View all achievements";
|
||||
"achievements_nav_title" = "Achievements";
|
||||
"achievements_progress_title" = "Progress";
|
||||
"achievements_unlocked_title" = "Unlocked";
|
||||
"achievements_unlocked_empty" = "Complete check-ins to unlock achievements.";
|
||||
"achievements_locked_title" = "Locked";
|
||||
"achievements_locked_empty" = "All achievements unlocked. Nice work!";
|
||||
|
||||
// MARK: - Accessibility
|
||||
"rating_accessibility" = "Rating %d of 5";
|
||||
"achievements_unlocked_count" = "%d of %d unlocked";
|
||||
"last_check_in" = "Last check-in: %@";
|
||||
"next_check_in" = "Next check-in: %@";
|
||||
"on_time_rate" = "%@ on-time";
|
||||
"on_time_count" = "%d/%d on time";
|
||||
"tightest_finish" = "Tightest finish: %@ before deadline.";
|
||||
"date_today" = "Today";
|
||||
"date_yesterday" = "Yesterday";
|
||||
"date_never" = "Never";
|
||||
"calendar_event_title" = "%@: Monthly Check-in";
|
||||
"calendar_event_notes" = "Open %@ and complete your monthly check-in.";
|
||||
@@ -0,0 +1,123 @@
|
||||
/*
|
||||
Localizable.strings
|
||||
PortfolioJournal
|
||||
|
||||
Spanish (Spain) localization
|
||||
*/
|
||||
|
||||
// MARK: - Journal
|
||||
"Home" = "Inicio";
|
||||
"Sources" = "Fuentes";
|
||||
"Charts" = "Gráficos";
|
||||
"Settings" = "Ajustes";
|
||||
"Journal" = "Diario";
|
||||
"Search monthly notes" = "Buscar notas mensuales";
|
||||
"Monthly Check-ins" = "Chequeos mensuales";
|
||||
"No monthly notes yet." = "Aún no hay notas mensuales.";
|
||||
"No matching notes." = "No hay notas que coincidan.";
|
||||
"Jump to month" = "Ir al mes";
|
||||
"Today" = "Hoy";
|
||||
"Mood not set" = "Estado de ánimo no establecido";
|
||||
"No rating" = "Sin valoración";
|
||||
"No note yet." = "Sin nota todavía.";
|
||||
"Monthly Note" = "Nota mensual";
|
||||
"Open Full Note" = "Ver nota completa";
|
||||
"Duplicate Previous" = "Duplicar anterior";
|
||||
"Save" = "Guardar";
|
||||
|
||||
// MARK: - Monthly Check-in
|
||||
"Monthly Check-in" = "Chequeo mensual";
|
||||
"This Month" = "Este mes";
|
||||
"No check-in yet this month" = "Aún no hay chequeo este mes";
|
||||
"Start your first check-in anytime." = "Empieza tu primer chequeo cuando quieras.";
|
||||
"Mark Check-in Complete" = "Marcar chequeo completado";
|
||||
"Editing stays open. New check-ins unlock after 70% of the month." = "La edición permanece abierta. Los nuevos chequeos se desbloquean tras el 70 % del mes.";
|
||||
"Momentum & Streaks" = "Impulso y rachas";
|
||||
"Log a check-in to start a streak" = "Registra un chequeo para iniciar una racha";
|
||||
"Streak" = "Racha";
|
||||
"On-time in a row" = "A tiempo seguidos";
|
||||
"Best" = "Mejor";
|
||||
"Personal best" = "Mejor personal";
|
||||
"Avg early" = "Media de antelación";
|
||||
"vs deadline" = "vs. fecha límite";
|
||||
"On-time score" = "Puntuación a tiempo";
|
||||
"Achievements" = "Logros";
|
||||
"View all achievements" = "Ver todos los logros";
|
||||
"Monthly Pulse" = "Pulso mensual";
|
||||
"Optional" = "Opcional";
|
||||
"Rate this month" = "Valora este mes";
|
||||
"Skip" = "Omitir";
|
||||
"How did it feel?" = "¿Cómo te sentiste?";
|
||||
"Monthly Summary" = "Resumen mensual";
|
||||
"Starting" = "Inicio";
|
||||
"Ending" = "Final";
|
||||
"Contributions" = "Aportaciones";
|
||||
"Net Performance" = "Rendimiento neto";
|
||||
"Update Sources" = "Actualizar fuentes";
|
||||
"Add sources to start your monthly check-in." = "Añade fuentes para empezar tu chequeo mensual.";
|
||||
"Updated this cycle" = "Actualizado en este ciclo";
|
||||
"Needs update" = "Necesita actualización";
|
||||
"Snapshot Notes" = "Notas de snapshots";
|
||||
"No snapshot notes for this month." = "No hay notas de snapshots este mes.";
|
||||
"Source" = "Fuente";
|
||||
"last_check_in" = "Último chequeo: %@";
|
||||
"next_check_in" = "Próximo chequeo: %@";
|
||||
"on_time_rate" = "%@ a tiempo";
|
||||
"on_time_count" = "%d/%d a tiempo";
|
||||
"tightest_finish" = "Final más ajustado: %@ antes de la fecha límite.";
|
||||
"date_today" = "Hoy";
|
||||
"date_yesterday" = "Ayer";
|
||||
"date_never" = "Nunca";
|
||||
"calendar_event_title" = "%@: Chequeo mensual";
|
||||
"calendar_event_notes" = "Abre %@ y completa tu chequeo mensual.";
|
||||
|
||||
// MARK: - Achievements View
|
||||
"achievements_title" = "Logros";
|
||||
"achievements_view_all" = "Ver todos los logros";
|
||||
"achievements_nav_title" = "Logros";
|
||||
"achievements_progress_title" = "Progreso";
|
||||
"achievements_unlocked_title" = "Desbloqueados";
|
||||
"achievements_unlocked_empty" = "Completa chequeos para desbloquear logros.";
|
||||
"achievements_locked_title" = "Bloqueados";
|
||||
"achievements_locked_empty" = "Todos los logros desbloqueados. ¡Buen trabajo!";
|
||||
|
||||
// MARK: - Monthly Check-in Moods
|
||||
"mood_energized_title" = "En llamas";
|
||||
"mood_confident_title" = "Confiado";
|
||||
"mood_balanced_title" = "Estable";
|
||||
"mood_cautious_title" = "Cauteloso";
|
||||
"mood_stressed_title" = "Estresado";
|
||||
"mood_energized_detail" = "Me siento imparable";
|
||||
"mood_confident_detail" = "En camino y sereno";
|
||||
"mood_balanced_detail" = "Calmado y paciente";
|
||||
"mood_cautious_detail" = "Observando los movimientos";
|
||||
"mood_stressed_detail" = "Necesito un respiro";
|
||||
|
||||
// MARK: - Categories
|
||||
"category_stocks" = "Acciones";
|
||||
"category_bonds" = "Bonos";
|
||||
"category_real_estate" = "Inmobiliario";
|
||||
"category_crypto" = "Cripto";
|
||||
"category_cash" = "Efectivo";
|
||||
"category_etfs" = "ETFs";
|
||||
"category_retirement" = "Jubilación";
|
||||
"category_other" = "Otros";
|
||||
"uncategorized" = "Sin categoría";
|
||||
|
||||
// MARK: - Monthly Check-in Achievements
|
||||
"achievement_streak_3_title" = "Racha de 3 meses";
|
||||
"achievement_streak_3_detail" = "Has mantenido tus chequeos a tiempo durante tres meses seguidos.";
|
||||
"achievement_streak_6_title" = "Racha de medio año";
|
||||
"achievement_streak_6_detail" = "Seis chequeos a tiempo consecutivos.";
|
||||
"achievement_streak_12_title" = "Un año de impulso";
|
||||
"achievement_streak_12_detail" = "Un año completo sin perder la fecha límite.";
|
||||
"achievement_perfect_on_time_title" = "Nunca tarde";
|
||||
"achievement_perfect_on_time_detail" = "Todos los chequeos llegaron antes de la fecha límite.";
|
||||
"achievement_clutch_finish_title" = "Final ajustado";
|
||||
"achievement_clutch_finish_detail" = "Entregado con horas de margen y a tiempo.";
|
||||
"achievement_early_bird_title" = "Madrugador";
|
||||
"achievement_early_bird_detail" = "De media terminas con bastante margen.";
|
||||
|
||||
// MARK: - Accessibility
|
||||
"rating_accessibility" = "Valoración %d de 5";
|
||||
"achievements_unlocked_count" = "%d de %d desbloqueados";
|
||||
Reference in New Issue
Block a user