mirror of
https://github.com/spliit-app/spliit.git
synced 2025-12-06 01:19:29 +01:00
* I18n with next-intl * package-lock * Finnish translations * Development fix * Use locale for positioning currency symbol * Translations: Expenses.ActiveUserModal * Translations: group 404 * Better translation for ExpenseCard * Apply translations in CategorySelect search * Fix for Finnish translation * Translations for ExpenseDocumentsInput * Translations for CreateFromReceipt * Fix for Finnish translation * Translations for schema errors * Fix for Finnish translation * Fixes for Finnish translations * Prettier --------- Co-authored-by: Sebastien Castiel <sebastien@castiel.me>
375 lines
12 KiB
JSON
375 lines
12 KiB
JSON
{
|
||
"Header": {
|
||
"groups": "Groups"
|
||
},
|
||
"Footer": {
|
||
"madeIn": "Made in Montréal, Québec 🇨🇦",
|
||
"builtBy": "Built by <author>Sebastien Castiel</author> and <source>contributors</source>"
|
||
},
|
||
"Expenses": {
|
||
"title": "Expenses",
|
||
"description": "Here are the expenses that you created for your group.",
|
||
"create": "Create expense",
|
||
"createFirst": "Create the first one",
|
||
"noExpenses": "Your group doesn’t contain any expense yet.",
|
||
"exportJson": "Export to JSON",
|
||
"searchPlaceholder": "Search for an expense…",
|
||
"ActiveUserModal": {
|
||
"title": "Who are you?",
|
||
"description": "Tell us which participant you are to let us customize how the information is displayed.",
|
||
"nobody": "I don’t want to select anyone",
|
||
"save": "Save changes",
|
||
"footer": "This setting can be changed later in the group settings."
|
||
},
|
||
"Groups": {
|
||
"upcoming": "Upcoming",
|
||
"thisWeek": "This week",
|
||
"earlierThisMonth": "Earlier this month",
|
||
"lastMonth": "Last month",
|
||
"earlierThisYear": "Earlier this year",
|
||
"lastYera": "Last year",
|
||
"older": "Older"
|
||
}
|
||
},
|
||
"ExpenseCard": {
|
||
"paidBy": "Paid by <strong>{paidBy}</strong> for <paidFor></paidFor>",
|
||
"receivedBy": "Received by <strong>{paidBy}</strong> for <paidFor></paidFor>",
|
||
"yourBalance": "Your balance:"
|
||
},
|
||
"Groups": {
|
||
"myGroups": "My groups",
|
||
"create": "Create",
|
||
"loadingRecent": "Loading recent groups…",
|
||
"NoRecent": {
|
||
"description": "You have not visited any group recently.",
|
||
"create": "Create one",
|
||
"orAsk": "or ask a friend to send you the link to an existing one."
|
||
},
|
||
"recent": "Recent groups",
|
||
"starred": "Starred groups",
|
||
"archived": "Archived groups",
|
||
"archive": "Archive group",
|
||
"unarchive": "Unarchive group",
|
||
"removeRecent": "Remove from recent groups",
|
||
"RecentRemovedToast": {
|
||
"title": "Group has been removed",
|
||
"description": "The group was removed from your recent groups list.",
|
||
"undoAlt": "Undo group removal",
|
||
"undo": "Undo"
|
||
},
|
||
"AddByURL": {
|
||
"button": "Add by URL",
|
||
"title": "Add a group by URL",
|
||
"description": "If a group was shared with you, you can paste its URL here to add it to your list.",
|
||
"error": "Oops, we are not able to find the group from the URL you provided…"
|
||
},
|
||
"NotFound": {
|
||
"text": "This group does not exist.",
|
||
"link": "Go to recently visited groups"
|
||
}
|
||
},
|
||
"GroupForm": {
|
||
"title": "Group information",
|
||
"NameField": {
|
||
"label": "Group name",
|
||
"placeholder": "Summer vacations",
|
||
"description": "Enter a name for your group."
|
||
},
|
||
"CurrencyField": {
|
||
"label": "Currency symbol",
|
||
"placeholder": "$, €, £…",
|
||
"description": "We’ll use it to display amounts."
|
||
},
|
||
"Participants": {
|
||
"title": "Participants",
|
||
"description": "Enter the name for each participant.",
|
||
"protectedParticipant": "This participant is part of expenses, and can not be removed.",
|
||
"new": "New",
|
||
"add": "Add participant",
|
||
"John": "John",
|
||
"Jane": "Jane",
|
||
"Jack": "Jack"
|
||
},
|
||
"Settings": {
|
||
"title": "Local settings",
|
||
"description": "These settings are set per-device, and are used to customize your experience.",
|
||
"ActiveUserField": {
|
||
"label": "Active user",
|
||
"placeholder": "Select a participant",
|
||
"none": "None",
|
||
"description": "User used as default for paying expenses."
|
||
},
|
||
"save": "Save",
|
||
"saving": "Saving…",
|
||
"create": "Create",
|
||
"creating": "Creating…",
|
||
"cancel": "Cancel"
|
||
}
|
||
},
|
||
"ExpenseForm": {
|
||
"Income": {
|
||
"create": "Create income",
|
||
"edit": "Edit income",
|
||
"TitleField": {
|
||
"label": "Income title",
|
||
"placeholder": "Monday evening restaurant",
|
||
"description": "Enter a description for the income."
|
||
},
|
||
"DateField": {
|
||
"label": "Income date",
|
||
"description": "Enter the date the income was received."
|
||
},
|
||
"categoryFieldDescription": "Select the income category.",
|
||
"paidByField": {
|
||
"label": "Received by",
|
||
"description": "Select the participant who received the income."
|
||
},
|
||
"paidFor": {
|
||
"title": "Received for",
|
||
"description": "Select who the income was received for."
|
||
},
|
||
"splitModeDescription": "Select how to split the income.",
|
||
"attachDescription": "See and attach receipts to the income."
|
||
},
|
||
"Expense": {
|
||
"create": "Create expense",
|
||
"edit": "Edit expense",
|
||
"TitleField": {
|
||
"label": "Expense title",
|
||
"placeholder": "Monday evening restaurant",
|
||
"description": "Enter a description for the expense."
|
||
},
|
||
"DateField": {
|
||
"label": "Expense date",
|
||
"description": "Enter the date the expense was paid."
|
||
},
|
||
"categoryFieldDescription": "Select the expense category.",
|
||
"paidByField": {
|
||
"label": "Paid by",
|
||
"description": "Select the participant who paid the expense."
|
||
},
|
||
"paidFor": {
|
||
"title": "Paid for",
|
||
"description": "Select who the expense was paid for."
|
||
},
|
||
"splitModeDescription": "Select how to split the expense.",
|
||
"attachDescription": "See and attach receipts to the expense."
|
||
},
|
||
"amountField": {
|
||
"label": "Amount"
|
||
},
|
||
"isReimbursementField": {
|
||
"label": "This is a reimbursement"
|
||
},
|
||
"categoryField": {
|
||
"label": "Category"
|
||
},
|
||
"notesField": {
|
||
"label": "Notes"
|
||
},
|
||
"selectNone": "Select none",
|
||
"selectAll": "Select all",
|
||
"shares": "share(s)",
|
||
"advancedOptions": "Advanced splitting options…",
|
||
"SplitModeField": {
|
||
"label": "Split mode",
|
||
"evenly": "Evenly",
|
||
"byShares": "Unevenly – By shares",
|
||
"byPercentage": "Unevenly – By percentage",
|
||
"byAmount": "Unevenly – By amount",
|
||
"saveAsDefault": "Save as default splitting options"
|
||
},
|
||
"DeletePopup": {
|
||
"label": "Delete",
|
||
"title": "Delete this expense?",
|
||
"description": "Do you really want to delete this expense? This action is irreversible.",
|
||
"yes": "Yes",
|
||
"cancel": "Cancel"
|
||
},
|
||
"attachDocuments": "Attach documents",
|
||
"create": "Create",
|
||
"creating": "Creating…",
|
||
"save": "Save",
|
||
"saving": "Saving…",
|
||
"cancel": "Cancel"
|
||
},
|
||
"ExpenseDocumentsInput": {
|
||
"TooBigToast": {
|
||
"title": "The file is too big",
|
||
"description": "The maximum file size you can upload is {maxSize}. Yours is ${size}."
|
||
},
|
||
"ErrorToast": {
|
||
"title": "Error while uploading document",
|
||
"description": "Something wrong happened when uploading the document. Please retry later or select a different file.",
|
||
"retry": "Retry"
|
||
}
|
||
},
|
||
"CreateFromReceipt": {
|
||
"Dialog": {
|
||
"triggerTitle": "Create expense from receipt",
|
||
"title": "Create from receipt",
|
||
"description": "Extract the expense information from a receipt photo.",
|
||
"body": "Upload the photo of a receipt, and we’ll scan it to extract the expense information if we can.",
|
||
"selectImage": "Select image…",
|
||
"titleLabel": "Title:",
|
||
"categoryLabel": "Category:",
|
||
"amountLabel": "Amount:",
|
||
"dateLabel": "Date:",
|
||
"editNext": "You’ll be able to edit the expense information next.",
|
||
"continue": "Continue"
|
||
},
|
||
"unknown": "Unknown",
|
||
"TooBigToast": {
|
||
"title": "The file is too big",
|
||
"description": "The maximum file size you can upload is {maxSize}. Yours is ${size}."
|
||
},
|
||
"ErrorToast": {
|
||
"title": "Error while uploading document",
|
||
"description": "Something wrong happened when uploading the document. Please retry later or select a different file.",
|
||
"retry": "Retry"
|
||
}
|
||
},
|
||
"Balances": {
|
||
"title": "Balances",
|
||
"description": "This is the amount that each participant paid or was paid for.",
|
||
"Reimbursements": {
|
||
"title": "Suggested reimbursements",
|
||
"description": "Here are suggestions for optimized reimbursements between participants.",
|
||
"noImbursements": "It looks like your group doesn’t need any reimbursement 😁",
|
||
"owes": "<strong>{from}</strong> owes <strong>{to}</strong>",
|
||
"markAsPaid": "Mark as paid"
|
||
}
|
||
},
|
||
"Stats": {
|
||
"title": "Stats",
|
||
"Totals": {
|
||
"title": "Totals",
|
||
"description": "Spending summary of the entire group.",
|
||
"groupSpendings": "Total group spendings",
|
||
"groupEarnings": "Total group earnings",
|
||
"yourSpendings": "Your total spendings",
|
||
"yourEarnings": "Your total earnings",
|
||
"yourShare": "Your total share"
|
||
}
|
||
},
|
||
"Activity": {
|
||
"title": "Activity",
|
||
"description": "Overview of all activity in this group.",
|
||
"noActivity": "There is not yet any activity in your group.",
|
||
"someone": "Someone",
|
||
"settingsModified": "Group settings were modified by <strong>{participant}</strong>.",
|
||
"expenseCreated": "Expense <em>{expense}</em> created by <strong>{participant}</strong>.",
|
||
"expenseUpdated": "Expense <em>{expense}</em> updated by <strong>{participant}</strong>.",
|
||
"expenseDeleted": "Expense <em>{expense}</em> deleted by <strong>{participant}</strong>.",
|
||
"Groups": {
|
||
"today": "Today",
|
||
"yesterday": "Yesterday",
|
||
"earlierThisWeek": "Earlier this week",
|
||
"lastWeek": "Last week",
|
||
"earlierThisMonth": "Earlier this month",
|
||
"lastMonth": "Last month",
|
||
"earlierThisYear": "Earlier this year",
|
||
"lastYear": "Last year",
|
||
"older": "Older"
|
||
}
|
||
},
|
||
"Settings": {
|
||
"title": "Settings"
|
||
},
|
||
"Locale": {
|
||
"en-US": "English (US)",
|
||
"fi": "Suomi"
|
||
},
|
||
"Share": {
|
||
"title": "Share",
|
||
"description": "For other participants to see the group and add expenses, share its URL with them.",
|
||
"warning": "Warning!",
|
||
"warningHelp": "Every person with the group URL will be able to see and edit expenses. Share with caution!"
|
||
},
|
||
"SchemaErrors": {
|
||
"min1": "Enter at least one character.",
|
||
"min2": "Enter at least two characters.",
|
||
"max5": "Enter at most five characters.",
|
||
"max50": "Enter at most 50 characters.",
|
||
"duplicateParticipantName": "Another participant already has this name.",
|
||
"titleRequired": "Please enter a title.",
|
||
"invalidNumber": "Invalid number.",
|
||
"amountRequired": "You must enter an amount.",
|
||
"amountNotZero": "The amount must not be zero.",
|
||
"amountTenMillion": "The amount must be lower than 10,000,000.",
|
||
"paidByRequired": "You must select a participant.",
|
||
"paidForMin1": "The expense must be paid for at least one participant.",
|
||
"noZeroShares": "All shares must be higher than 0.",
|
||
"amountSum": "Sum of amounts must equal the expense amount.",
|
||
"percentageSum": "Sum of percentages must equal 100."
|
||
},
|
||
"Categories": {
|
||
"search": "Search category...",
|
||
"noCategory": "No category found.",
|
||
"Uncategorized": {
|
||
"heading": "Uncategorized",
|
||
"General": "General",
|
||
"Payment": "Payment"
|
||
},
|
||
"Entertainment": {
|
||
"heading": "Entertainment",
|
||
"Entertainment": "Entertainment",
|
||
"Games": "Games",
|
||
"Movies": "Movies",
|
||
"Music": "Music",
|
||
"Sports": "Sports"
|
||
},
|
||
"Food and Drink": {
|
||
"heading": "Food and Drink",
|
||
"Food and Drink": "Food and Drink",
|
||
"Dining Out": "Dining Out",
|
||
"Groceries": "Groceries",
|
||
"Liquor": "Liquor"
|
||
},
|
||
"Home": {
|
||
"heading": "Home",
|
||
"Home": "Home",
|
||
"Electronics": "Electronics",
|
||
"Furniture": "Furniture",
|
||
"Household Supplies": "Household Supplies",
|
||
"Maintenance": "Maintenance",
|
||
"Mortgage": "Mortgage",
|
||
"Pets": "Pets",
|
||
"Rent": "Rent",
|
||
"Services": "Services"
|
||
},
|
||
"Life": {
|
||
"heading": "Life",
|
||
"Childcare": "Childcare",
|
||
"Clothing": "Clothing",
|
||
"Education": "Education",
|
||
"Gifts": "Gifts",
|
||
"Insurance": "Insurance",
|
||
"Medical Expenses": "Medical Expenses",
|
||
"Taxes": "Taxes"
|
||
},
|
||
"Transportation": {
|
||
"heading": "Transportation",
|
||
"Transportation": "Transportation",
|
||
"Bicycle": "Bicycle",
|
||
"Bus/Train": "Bus/Train",
|
||
"Car": "Car",
|
||
"Gas/Fuel": "Gas/Fuel",
|
||
"Hotel": "Hotel",
|
||
"Parking": "Parking",
|
||
"Plane": "Plane",
|
||
"Taxi": "Taxi"
|
||
},
|
||
"Utilities": {
|
||
"heading": "Utilities",
|
||
"Utilities": "Utilities",
|
||
"Cleaning": "Cleaning",
|
||
"Electricity": "Electricity",
|
||
"Heat/Gas": "Heat/Gas",
|
||
"Trash": "Trash",
|
||
"TV/Phone/Internet": "TV/Phone/Internet",
|
||
"Water": "Water"
|
||
}
|
||
}
|
||
}
|