a8f91ee6ea
- :core:model model/Cards.kt per SPEC §14.2.4 "Changes in v0.35"; ContractTest covers the card wire values. - :domain matchCardPurchase (§14.5.8), passing match_card_purchase.json (17 cases) in VectorTest. - :data Room version 2 (card_connections, card_purchases, card_sync_state, MIGRATION_1_2 with its test, 2.json exported); DTOs for E-36 to E-44 round-tripping K1's examples; the card cycle (E-44 push of pending link changes, E-40 pull) after each household cycle and after refresh; CardRepositoryImpl with CP-9 prefill, CP-10 matches, offline-first link/unlink/ignore; a local expense delete unlinks. - :core:fakes FakeCardRepository and fakes/cards scenarios for every state of S-23 to S-27. - :feature:cards S-23 (sheet and "Välj en annan utgift"), S-24, S-25 (Custom Tab, E-38 every 2 s while resumed, return link), S-26 (disconnect dialog), S-27, CardArt with the SJ Prio picture and the drawn fallback; 135 goldens and state-holder tests. - :feature:expense S-7 cardPurchaseId prefill and link on save, S-8 "Från kortköp" line; :feature:account S-5 "Från kortköp"; :feature:settings S-13 "Anslut kort". - :core:design KvittDestination.Cards with credit_card and nav_cards (four destinations, D-172); the bar's labels shrink to fit at large font scales. :app routes, kvitt://cards/connected, bindings. - docs/ux/strings.csv: the card keys of §13.3 plus K2's additions. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TQd3pEP9UeN2uifbHknQ7B
192 lines
12 KiB
XML
192 lines
12 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!-- Strings of :feature:settings, keys from docs/ux/strings.csv (module=settings). Generated; change the CSV
|
||
first. -->
|
||
<resources>
|
||
<string name="settings_profile_offline_banner">Needs connection. Your profile can only be changed online.</string>
|
||
<string name="settings_title">Settings</string>
|
||
<!-- S-13 own row when the viewer is the admin -->
|
||
<string name="settings_role_admin">You · Admin</string>
|
||
<!-- S-13 own row when the viewer is the member -->
|
||
<string name="settings_role_member">You</string>
|
||
<!-- S-13 the admin's row seen by the member; the member's row seen by the admin is common_partner -->
|
||
<string name="settings_role_admin_other">Admin</string>
|
||
<string name="settings_profile">Profile</string>
|
||
<!-- S-13 row subtitle -->
|
||
<string name="settings_profile_summary">Name and picture</string>
|
||
<!-- S-14; %1$s partner -->
|
||
<string name="settings_profile_hint">This is how %1$s sees you in Kvitt.</string>
|
||
<string name="settings_categories">Categories</string>
|
||
<!-- plural one; S-13 row subtitle -->
|
||
<plurals name="settings_categories_summary">
|
||
<item quantity="one">%d active</item>
|
||
<item quantity="other">%d active</item>
|
||
</plurals>
|
||
<string name="settings_recurring">Recurring expenses</string>
|
||
<!-- plural one; S-13 row subtitle, joined with common_separator_comma -->
|
||
<plurals name="settings_recurring_summary_active">
|
||
<item quantity="one">%d active</item>
|
||
<item quantity="other">%d active</item>
|
||
</plurals>
|
||
<!-- plural one; shown when > 0 -->
|
||
<plurals name="settings_recurring_summary_paused">
|
||
<item quantity="one">%d paused</item>
|
||
<item quantity="other">%d paused</item>
|
||
</plurals>
|
||
<string name="settings_devices">Devices</string>
|
||
<!-- plural one; S-13 row subtitle -->
|
||
<string name="settings_pair_device">Pair a device</string>
|
||
<string name="settings_sync_status">Sync status</string>
|
||
<string name="settings_about">About Kvitt</string>
|
||
<!-- S-13 row subtitle; version name -->
|
||
<string name="settings_about_summary">Version %1$s</string>
|
||
<string name="settings_update_badge">Update available</string>
|
||
<string name="settings_categories_title">Categories</string>
|
||
<string name="settings_categories_new">New category</string>
|
||
<string name="settings_categories_archived">Archived (%d)</string>
|
||
<string name="settings_categories_reorder_offline">Needs connection to change</string>
|
||
<!-- TalkBack custom action -->
|
||
<string name="settings_categories_move_up">Move up</string>
|
||
<!-- TalkBack custom action -->
|
||
<string name="settings_categories_move_down">Move down</string>
|
||
<!-- TalkBack of the drag handle -->
|
||
<string name="settings_categories_drag_handle">Move %1$s</string>
|
||
<string name="settings_category_editor_new">New category</string>
|
||
<string name="settings_category_editor_edit">Edit category</string>
|
||
<!-- badge in the editor of an archived category -->
|
||
<string name="settings_category_archived_badge">Archived</string>
|
||
<!-- AC-7.4 -->
|
||
<string name="settings_category_editor_reset_name">Reset name</string>
|
||
<!-- AC-7.4 -->
|
||
<string name="settings_category_editor_default_name">Default name: %1$s</string>
|
||
<string name="settings_category_editor_icon">Icon</string>
|
||
<string name="settings_category_editor_color">Colour</string>
|
||
<string name="settings_category_editor_archive">Archive</string>
|
||
<string name="settings_category_editor_unarchive">Restore from archive</string>
|
||
<string name="settings_category_editor_delete">Delete category</string>
|
||
<!-- confirmation dialog; %1$s category name -->
|
||
<string name="settings_category_delete_title">Delete the category %1$s?</string>
|
||
<!-- confirmation dialog body -->
|
||
<string name="settings_category_delete_body">It disappears from the list for both of you. This cannot be undone.</string>
|
||
<!-- category_is_default -->
|
||
<string name="settings_category_delete_blocked_default">Default categories cannot be deleted, only archived</string>
|
||
<!-- inline reason under the disabled delete -->
|
||
<string name="settings_category_delete_blocked_default_short">Cannot be deleted: default category</string>
|
||
<!-- category_in_use -->
|
||
<string name="settings_category_delete_blocked_in_use">The category is used by expenses or recurring expenses. Archive it instead.</string>
|
||
<!-- category_in_use, shown for an archived category -->
|
||
<string name="settings_category_delete_blocked_in_use_archived">The category is used by expenses or recurring expenses and cannot be deleted.</string>
|
||
<string name="settings_about_up_to_date">You have the latest version</string>
|
||
<string name="settings_about_check_update">Check for update</string>
|
||
<string name="settings_recurring_title">Recurring expenses</string>
|
||
<!-- S-19 FAB -->
|
||
<string name="settings_recurring_new">New recurring</string>
|
||
<!-- %1$s = settings_recurring_day_ordinal_a or _e -->
|
||
<string name="settings_recurring_every_month_on">Every month on day %1$s</string>
|
||
<!-- sv ordinal for every day not covered by _a -->
|
||
<string name="settings_recurring_day_ordinal_e">%1$d</string>
|
||
<!-- sv ordinal for days 1, 2, 21, 22, 31 -->
|
||
<string name="settings_recurring_day_ordinal_a">%1$d</string>
|
||
<!-- %1$s list date -->
|
||
<string name="settings_recurring_next">Next %1$s</string>
|
||
<!-- list row; %1$s account name -->
|
||
<string name="settings_recurring_row_you_pay">%1$s · You pay</string>
|
||
<!-- list row; %1$s account, %2$s partner -->
|
||
<string name="settings_recurring_row_partner_pays">%1$s · %2$s pays</string>
|
||
<string name="settings_recurring_paused">Paused</string>
|
||
<string name="settings_recurring_empty_title">No recurring expenses</string>
|
||
<string name="settings_recurring_empty_body">Rent, electricity and streaming can be added automatically every month.</string>
|
||
<string name="settings_recurring_empty_action">New recurring expense</string>
|
||
<string name="settings_recurring_editor_new">New recurring expense</string>
|
||
<!-- S-19 editor title when editing -->
|
||
<string name="settings_recurring_editor_edit">Recurring expense</string>
|
||
<!-- editor section title -->
|
||
<string name="settings_recurring_schedule">Schedule</string>
|
||
<string name="settings_recurring_day_of_month">Day of month</string>
|
||
<!-- days 29–31 -->
|
||
<string name="settings_recurring_day_clamp_hint">In shorter months the last day is used</string>
|
||
<string name="settings_recurring_first_month">First month</string>
|
||
<string name="settings_recurring_last_month">Last month (optional)</string>
|
||
<!-- placeholder of the last-month field -->
|
||
<string name="settings_recurring_no_end">No last month</string>
|
||
<string name="settings_recurring_paused_switch">Paused</string>
|
||
<!-- §9.5; %1$s = settings_recurring_day_ordinal_a or _e -->
|
||
<string name="settings_recurring_created_at">Created at 06:00 on day %1$s every month</string>
|
||
<!-- §9.5 -->
|
||
<string name="settings_recurring_resume_hint">Months that passed while paused are not created afterwards.</string>
|
||
<!-- AC-9.4 -->
|
||
<string name="settings_recurring_edit_hint">The change applies to upcoming expenses.</string>
|
||
<string name="settings_recurring_delete_title">Delete %1$s?</string>
|
||
<string name="settings_recurring_delete_body">Expenses already created stay.</string>
|
||
<string name="settings_recurring_offline_banner">Needs connection. Recurring expenses can only be changed online.</string>
|
||
<string name="settings_recurring_error_end_before_start">The last month cannot be before the first</string>
|
||
<string name="settings_recurring_error_start_too_early">At most 12 months back</string>
|
||
<string name="settings_devices_title">Devices</string>
|
||
<string name="settings_devices_paired">Paired %1$s</string>
|
||
<string name="settings_devices_last_seen">Last seen %1$s</string>
|
||
<string name="settings_devices_app_version">Kvitt %1$s</string>
|
||
<!-- AC-3.1 -->
|
||
<string name="settings_devices_this_device">This device</string>
|
||
<!-- row button and confirm button (AC-3.2) -->
|
||
<string name="settings_devices_revoke">Remove access</string>
|
||
<!-- AC-3.2 -->
|
||
<string name="settings_devices_cannot_revoke_current">You cannot remove access for the phone you are using right now.</string>
|
||
<!-- %1$s device name -->
|
||
<string name="settings_devices_revoke_title">Remove access for %1$s?</string>
|
||
<!-- one of the viewer's own other devices -->
|
||
<string name="settings_devices_revoke_body_own">The phone is signed out and all Kvitt data on it is deleted. You can pair it again with a new invite code.</string>
|
||
<!-- admin revoking the partner's device; sv genitive as onboarding_profile_joining -->
|
||
<string name="settings_devices_revoke_body_partner">%1$s\'s phone is signed out and all Kvitt data on it is deleted. %1$s can pair it again with a new invite code.</string>
|
||
<string name="settings_devices_offline">Needs connection to show devices</string>
|
||
<string name="settings_devices_loading">Loading devices…</string>
|
||
<string name="settings_invites_title_device">Pair a device</string>
|
||
<!-- created invite card title -->
|
||
<string name="settings_invites_new_device_for">New device for %1$s</string>
|
||
<!-- created partner invite card title -->
|
||
<string name="settings_invites_new_partner">Invite for your partner</string>
|
||
<!-- S-21 create card -->
|
||
<string name="settings_invites_create_body">Create a one-time code to pair another phone. The code is valid for 72 hours.</string>
|
||
<string name="settings_invites_for_me">For me</string>
|
||
<string name="settings_invites_for_partner">For %1$s</string>
|
||
<string name="settings_invites_valid_until">Valid until %1$s</string>
|
||
<string name="settings_invites_share">Share</string>
|
||
<string name="settings_invites_copy_code">Copy code</string>
|
||
<string name="settings_invites_code_copied">Code copied</string>
|
||
<string name="settings_invites_instructions">Open the link on the new phone, or enter the code in Kvitt. The code works once.</string>
|
||
<string name="settings_invites_share_message">Join our household in Kvitt: %1$s The code is %2$s.</string>
|
||
<string name="settings_invites_pending">Pending invites</string>
|
||
<string name="settings_invites_none">No pending invites</string>
|
||
<!-- §9.9 -->
|
||
<string name="settings_invites_offline_banner">Needs connection. Invites can only be created and shown online.</string>
|
||
<string name="settings_invites_kind_partner">Partner</string>
|
||
<!-- pending invite row; %1$s the user the device is for -->
|
||
<string name="settings_invites_kind_device">Device · %1$s</string>
|
||
<!-- %1$s time_today_at or list date and time -->
|
||
<string name="settings_invites_created">Created %1$s</string>
|
||
<string name="settings_invites_code_hidden">The code is only shown when it is created</string>
|
||
<!-- TalkBack of the Avbryt (common_cancel) button on a pending invite row -->
|
||
<string name="settings_invites_cancel">Cancel invite</string>
|
||
<string name="settings_invites_cancel_title">Cancel the invite?</string>
|
||
<string name="settings_about_title">About Kvitt</string>
|
||
<!-- version name and code -->
|
||
<string name="settings_about_version">Kvitt %1$s (%2$d)</string>
|
||
<string name="settings_about_server">Server</string>
|
||
<!-- label; value from /health -->
|
||
<string name="settings_about_server_version">Server version</string>
|
||
<string name="settings_about_server_version_unknown">Unknown</string>
|
||
<string name="settings_about_server_version_schema">%1$s (schema %2$d)</string>
|
||
<string name="settings_category_archived_snackbar">%1$s was archived</string>
|
||
<string name="settings_category_unarchived_snackbar">%1$s was restored</string>
|
||
<string name="settings_recurring_summary_none">None</string>
|
||
<string name="settings_expanded">expanded</string>
|
||
<string name="settings_collapsed">collapsed</string>
|
||
<string name="settings_partner_missing">Partner has not joined</string>
|
||
<!-- S-13 row (D-172), opens S-24 -->
|
||
<string name="settings_cards">Connect card</string>
|
||
<!-- S-13 row subtitle; %1$s the consent\'s end date (§9.8 list form) -->
|
||
<string name="settings_cards_connected">Connected · valid until %1$s</string>
|
||
<!-- S-13 row subtitle without a connection -->
|
||
<string name="settings_cards_none">Read your card purchases</string>
|
||
<!-- S-13 row subtitle of an expired connection (CP-6); K2 addition -->
|
||
<string name="settings_cards_expired">Ended</string>
|
||
</resources>
|